開源日報 每天推薦一個 GitHub 優質開源項目和一篇精選英文科技或編程文章原文,堅持閱讀《開源日報》,保持每日學習的好習慣。
今日推薦開源項目:《瞎寫 emojify》
今日推薦英文原文:《Just Keep Coding!》

今日推薦開源項目:《瞎寫 emojify》傳送門:GitHub鏈接
推薦理由:眾所周知,要實現一個效果,可以用無數種方式編寫代碼,當然也包括瞎寫。這個項目可以轉換你的代碼,讓它以一種充滿表情包的新方式實現和原來完全一致的效果。它唯一一個實際點的用途就是對外掩蓋你真實的代碼了——不過你有一百種更好的方法,所以僅把這個用於娛樂比較好,向不會編碼的朋友展現表情包的真實力量吧。
今日推薦英文原文:《Just Keep Coding!》作者:Roberto Hernandez
原文鏈接:https://medium.com/better-programming/just-keep-coding-5070618b330f
推薦理由:熟能生巧,熟練才會帶來力量——這意味著在熟練前會踩很多坑

Just Keep Coding!

A letter to junior developers

Hi Junior Developer,

I decided to write this letter to you. You』re probably just starting out on your dream developer career. I was there at some point and know the feelings of fear and doubt very well.

So I thought why not write a letter to encourage and motivate you to keep coding. There』s plenty of people of the net already talking about the technical stuff. Just remember, no matter how many mistakes you make or if the apps you develop don』t have the quality of outcome as you expected, just stay focused. Stay swimming on this ocean of codes, where you』ll eventually grow your seed through the code you create to make life better and processes easier.

The aim of this is to show you in this stage that despite it being hard right now, there are some valuable and powerful things you can take advantage of. So don』t worry! Even the most seasoned developers have felt and passed the same stage, under the same struggle. And, of course, you』re not alone. Though I am still a beginner at some topics, I am learning and getting better every single day.

The Beginner Stage

Sometimes you probably feel like this stage pushes you forward, and other times it pushes you backward.

For a while, you feel the momentum and say, 「This is living. This is what I want to do with my life!」 But when things are hard to solve or when you face complex concepts and you』re not able to figure them out, you might say, 「Come on! This is not what I want to do for the rest of my life.」 You feel frustrated and need encouragement to move forward. It』s a struggle that lives inside you and is holding you back. I know this feeling very well, too.

At this stage, you make a lot of bad things, and this is given for different reasons: Some of you want to get a job fast. Others just want to survive or need to earn some money, so you』re more likely to accept low-budget projects.

So we』re making bad decisions, making optimistic plans, and building software with poor and low-quality code as well. But this is normal. It』s just the beginning. You』ll find a way to jump to the next level. I can categorically say to you: It is worthwhile — just keep coding!

The power and values of this stage

I would like to spotlight the most important values at this stage: the willpower, the voraciousness, and the ambitions you』ll need in order to learn more, to become better, to have the courage to go beyond your goals, the willingness to give the extra mile, and the ability to be humble and embrace feedback.

Take advantage of these superpowers to progress in your development skills. You and I have dreams and goals, so we must force ourselves until we accomplish them. Add value to this world with your code by helping others. We want to be part of the change by writing quality code and sharing our knowledge, experiences, and lessons. The world will thank you!

Your desire to build a successful developer career

Most of us want to build a successful developer career, right? But let』s first clarify what a successful developer career means.

Successful, in general, means you』re able to accomplish your own metrics or your goals.

For some, the goal may be adding important contributions to an open-source project. Others may want to impact and help others with their knowledge by acting as mentors. Others want to leave footprints with their code. And some just want to work in a fantastic tech startup or at a big tech company, such as Google, Facebook, LinkedIn, etc. The list is endless.

But in general terms, it all comes down to becoming a strong developer — a master on what you do — then deciding how to get your ideas into the world.

Self-motivation, self-discipline, and focus

I truly believe building a solid developer career is not easy, and you won』t accomplish it overnight.

If someone else has told you the opposite, he/she has lied to you. Having said that, building a strong developer career depends on several factors, and all of them play on your side so you have control over them.

From my point of view, the three most important factors are self-motivation, self-discipline, and focus. Without focus, you don』t clearly know where you want to arrive in the short, medium, or long-term. Your sight is a blur — you might not have a clear path or you might even have the wrong path.

The real problem when we start out in this career is that we are expecting to see great results after we finish some video courses, some tutorials, some posts, or after completing some pet projects.

But the software-development field works the same as when you start to go to the gym. If you want to see progress, you should build self-discipline and self-motivation. You』ll see notable results after some weeks and months — as long as you maintain your consistency and discipline. You must train your brain and develop the muscle to gain use cases, becoming better at problem-solving and more creative.

Finally, Some Advice

Finally, I would like to give you a few tips and a piece of advice based on my learned lessons, experiences, mistakes, and failures.

Enjoy the process

I know this stage is hard in terms of how to get, retain, and understand all the information, concepts, paradigms, design patterns, data structures, and algorithms you』re receiving every day.

I encourage you to just keep coding. Enjoy what you』re working on no matter if it』s a small, medium, or big project. Please stop focusing on the results — enjoy and travel with the process instead. The results will come in time.

Plan first — then code

In the beginning, I constantly skipped the planning phase. I just wanted to see real progress and outputs on my UI. I started the task just thinking a little bit about it, without doing proper analysis and planning the best way or approach to solve and complete it. I ended up wasting more time in the end.

Plan and objective, and stay aware of it. But then code. Too much planning it also not a good idea.

To solve a problem, think about the different ways to solve it.

Usually, when we』re in front of a problem, we try to solve it as soon as we can. We decide to go with the first solution that comes to us. We forget to think of the complexity, the use cases, and the buggy potentials.

Just keep coding — it』s the only way to master this field.

Thanks for reading!
下載開源日報APP:https://openingsource.org/2579/
加入我們:https://openingsource.org/about/join/
關注我們:https://openingsource.org/about/love/