開源日報 每天推薦一個 GitHub 優質開源項目和一篇精選英文科技或編程文章原文,堅持閱讀《開源日報》,保持每日學習的好習慣。
今日推薦開源項目:《字體展覽 beautiful-web-type》
今日推薦英文原文:《How You Can Improve Your Programming Skills》

今日推薦開源項目:《字體展覽 beautiful-web-type》傳送門:GitHub鏈接
推薦理由:這個項目收集了許多開源字體並展示它們——用了一種簡單直白的方式。既然要展現一種字體,最好的方法就是寫出來,項目網站上每個字體都用一種風格佔據了頁面的一部分,並且在詳細介紹頁將這種字體在常用的各種用法下的效果都表現了出來,作為介紹字體的頁面可以說相當吸引眼球,而且的確有許多美觀的字體可以使用(儘管沒有中文字體)。
今日推薦英文原文:《How You Can Improve Your Programming Skills》作者:Indrek Lasn
原文鏈接:https://medium.com/better-programming/how-you-can-improve-your-programming-skills-a439d47c26a4
推薦理由:堅持學習總是不會錯的

How You Can Improve Your Programming Skills

Programming is a skill where you can constantly improve and learn new things

Programming is one of those crafts where you can never know everything. It』s literally impossible to know everything across all topics related to programming since there is so much information out there. If you』re struggling to stay sane knowing this, know that it』s probably best to keep your head to for new information and be comfortable with the fact that you can』t possibly know everything, albeit you can definitely improve each day. Here are four ways you can achieve that.

Code Every Day

Coding is a skill like any other. It requires a ton of practice and effort to get good at it. Not a single person woke up one day and suddenly became good at programming. All the good engineers worked countless days and nights to perfect their programming skills. Make it a habit to code each day, no matter the project or the programming language — what matters is you actually do it each day.

Photo by Lee Campbell on Unsplash

Oh, and don』t just write code. Try to read other programmers』 code, talk about code, and try to find experts to review your code. Programming is a skilled craft, and you don』t get good at a craft just by learning the rules. You get good through practice and reflection.

Learn Multiple Programming Languages

There』s a reason why universities and schools introduce multiple programming languages for their curriculums. Coding knowledge transfers over languages. For example, being familiar with Javaclass and object-oriented programming makes you more prone to understanding concepts for the Swift programming language since the same coding concepts apply to both.

Photo by Kobu Agency on Unsplash

Programming started to really click when I learned different concepts from multiple languages. I learned about structs from Swift, functional programming from JavaScript, object-oriented programming from PHP — you get the idea. Combining all the bits and pieces across multiple languages definitely helped me solidify the bigger picture and made me better at programming. Don』t get stuck in a small corner. Try to explore the unknown, and often. It』s okay to feel like you don』t know something. After all, that』s the only way we can learn, by absorbing new information.

Teach and Help Other Programmers

Have you heard about the protégé effect? It』s a fun way to learn by teaching others. The protégé effect is a phenomenon where teaching or preparing to teach information to others helps a person learn that information.

Teaching a subject means you』ve got to take on a different perspective since you』re not familiar with the depth of how much the student knows already. Therefore you have to assume the student doesn』t know much about the topic, which means you have to start teaching from the very fundamentals. The only way you can teach fundamentals is by knowing the fundamentals inside and out.

Photo by stem.T4L on Unsplash

One way of learning by teaching is plastic platypus learning or platypus learning techniques. This technique is based on evidence that shows that teaching an inanimate object improves understanding and knowledge retention of a subject. The advantage of this technique is that the learner does not need the presence of another person in order to teach the subject. Read more about the topic on Wikipedia.

Plastic platypus learning in action — https://en.wikipedia.org/wiki/Learning_by_teaching

You can start small. Pick up a GitHub issue and try to help one person every day. I like to answer one question per day on StackOverflow just to learn and help every day as much as I can.

Conclusion

Programming is fun, albeit hard to master. Ask yourself: If you really want to master programming, are you willing to put the extra effort in? You know the answer by now.

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