<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/tags/general-programming/best-of/2021/12" -->

---
title: Best General Programming posts — December 2021 | daily.dev
description: The most upvoted General Programming posts from December 2021, curated by the daily.dev community.
canonical: https://daily.dev/tags/general-programming/best-of/2021/12
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:url: https://daily.dev/tags/general-programming/best-of/2021/12
og:type: website
og:site_name: daily.dev
og:title: Best General Programming posts — December 2021 | daily.dev
og:description: The most upvoted General Programming posts from December 2021, curated by the daily.dev community.
og:image: https://media.daily.dev/image/upload/s--VAY5ToZt--/f_auto/v1724209435/public/daily.dev%20-%20open%20graph
---

# Best of General Programming — December 2021

1. 1  
[](/posts/learn-in-1-hour-design-patterns-2n-cekp7u "Learn in 1 Hour: Design Patterns")  
Article  
![Avatar of jetbrains](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/53ecf0c676f34b3896ee109609d91efa)JetBrains · 5y  
Learn in 1 Hour: Design Patterns  
This week's Hour of Code is about design patterns. Design patterns are reusable templates for commonly occurring problems in software design. At JetBrains Academy, you can get an introduction to design patterns and learn five types of the most common creational patterns. Click the links below to open the educational topics that will allow you to not only read a detailed theory about a specific design pattern but also apply your skills straight to practice.  
248  
7
2. 2  
[](/posts/using-notion-to-organise-programming-topics-zatwt0etq "Using Notion to organise programming topics")  
Article  
![Avatar of hashnode](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/4a287b2e7cb5499bae863f8e7137cdb4)Hashnode · 5y  
Using Notion to organise programming topics  
Commonplace books (or commonplaces) are a way to compile knowledge, usually by writing information into books. Commonplaces are used by readers, writers, students, and scholars as an aid for remembering useful concepts or facts. Notion is my preferred tool to implement a commonplace book for code related knowledge.  
229  
21
3. 3  
[](/posts/how-javascript-works-behind-the-scenes--gbwe8g4v6 "How JavaScript Works behind the scenes?")  
Article  
![Avatar of devgenius](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/a79144d7517043e7803ed562e45a99df)Dev Genius · 5y  
How JavaScript Works behind the scenes?  
How JavaScript Works behind the scenes? An overview walk-through of all the core components that are involved in the execution of JavaScript code. The Call Stack Concurrency and Event Loop. What happens when you have function calls in the Call Stack that take a huge amount of time to be processed in the browser.  
180  
22
4. 4  
[](/posts/learn-responsive-web-design-by-building-20-projects-a-major-freecodecamp-curriculum-update-9ot-2xnrh "Learn Responsive Web Design by Building 20 Projects – a Major freeCodeCamp Curriculum Update")  
Article  
![Avatar of freecodecamp](https://media.daily.dev/image/upload/t_logo,f_auto/v1628412854/logos/freecodecamp)freeCodeCamp · 5y  
Learn Responsive Web Design by Building 20 Projects – a Major freeCodeCamp Curriculum Update  
The Responsive Web Design Certification is the first of freeCodeCamp's 10 currently-live certifications. Instead of coding lessons, you'll learn concepts and syntax through a series of 15 practice projects + 5 certification projects. The full certification will take most web development beginners around 300 hours to complete.  
178  
8
5. 5  
[](/posts/markdown-support--shksho0z7 "Markdown support 🌈")  
Article  
![Avatar of daily_updates](https://media.daily.dev/image/upload/s--COeiQtov--/f_auto/v1704465510/squads/daily_updates)daily.dev Changelog · 5y  
Markdown support 🌈  
We are supporting markdown! A new era for daily.dev discussions is just around the corner. We can't wait to see how you unleash your creativity. We got so excited that we made a changelog post in our markdown-supported comments. We're looking forward to hearing from you.  
162  
40
6. 6  
[](/posts/25-must-visit-killer-websites-for-developers--x-vchrud "25 Must-Visit Killer Websites For Developers")  
Article  
![Avatar of hashnode](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/4a287b2e7cb5499bae863f8e7137cdb4)Hashnode · 5y  
25 Must-Visit Killer Websites For Developers  
There are so many websites to make the work of developers easier. In this article, we will see 25 Must-Visit Killer Websites For Developers. DevDocs brings together numerous API documentation in a single, searchable interface. Code Beautify makes your source code more beautiful and easy to read.  
156  
11
7. 7  
[](/posts/how-khan-academy-rewrote-their-backend-rit9boj3k "How Khan Academy Rewrote their Backend")  
Article  
![Avatar of quastor](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/073e935e4893445ba562bf9e1ca38ec1)Quastor Daily · 5y  
How Khan Academy Rewrote their Backend  
Khan Academy recently went through a massive rewrite of their old Python 2 monolith with a services-oriented backend written in Go. We’ll be summarizing the technical choices, execution and results of the rewrite. Plus, a couple awesome tech snippets on How Etsy built their bidding system for Etsy Ads and how Databricks uses Scala at Scale.  
155  
6
8. 8  
[](/posts/top-7-highest-paid-programming-languages-2021-gev3cbrlh "Top 7 Highest Paid Programming Languages 2021")  
Article  
![Avatar of honeypot](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/1cc3a75b98b74698a40f57162b30b841)Honeypot · 5y  
Top 7 Highest Paid Programming Languages 2021  
According to analysts, there are more than 250 different programming languages ​​in the world. You can easily miscalculate and choose an unpopular or impractical programming language. In this short article, I'm going to run through the top 7 programming languages that you can learn for a high-paying job.  
149  
14
9. 9  
[](/posts/8-mistakes-every-amateur-programmers-make-8jlq4awr1 "8 Mistakes Every Amateur Programmers Make")  
Article  
![Avatar of freecodecamp](https://media.daily.dev/image/upload/t_logo,f_auto/v1628412854/logos/freecodecamp)freeCodeCamp · 5y  
8 Mistakes Every Amateur Programmers Make  
As programmers, we will inevitably make mistakes. Even the most accomplished specialists make them. But you'll become a better programmer faster if you don't make the same mistakes over and over. In this article, I'll discuss some of the mistakes you might be making when you're coding day-to-day.  
136  
18
10. 10  
[](/posts/github-wrapped---your-year-in-code-46ohwubgv "GitHub Wrapped - Your year in code")  
Article  
![Avatar of ph](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/ph)Product Hunt · 5y  
GitHub Wrapped - Your year in code  
You coded a lot in 2021 - commits, pull requests, and reviews. Reflect on your year, the projects you contributed to, and the developers you supported. Share on Twitter or add to your personal Readme. Made by the team at Neat. Open source.  
135  
12
11. 11  
[](/posts/using-notion-to-organise-programming-topics-gbpup2kr6 "Using Notion to organise programming topics")  
Article  
![Avatar of devdojo](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/e258fd9dff884055b7b59df7fd1d7bd7)DevDojo · 5y  
Using Notion to organise programming topics  
When it comes to software development, having a commonplace book is one of the best things we can do to keep track of things, and to help not forget concepts. Notion is my preferred tool to implement a commonplace books for code related knowledge. I divide my notes into the following parts:Core topics,Study and practice,App and business ideas, andSimplification. The note will be highlighted, and when I am looking for what I'm looking for I would be able to open it and see.  
132  
8
12. 12  
[](/posts/refactoring-nested-loops-in-js-6o5fot3d9 "Refactoring Nested Loops In JS")  
Article  
![Avatar of towardsdev](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/2c710db2750a4a70835862534cb7c9d4)Towards Dev · 5y  
Refactoring Nested Loops In JS  
Most of the code in JS gets nested because of the various conditions one has to handle for the solution. Ternary operator is the best and most common way to replace your “if…else” statements. Switch case statement is not the best possible way to. replace nested ‘if-else’ statements but these can be used to reduce. duplicate code which is another common mistake ignored by developers.  
124  
4
13. 13  
[](/posts/clean-up-your-code-with-design-patterns-in-javascript-sopfjibx0 "Clean Up Your Code With Design Patterns in Javascript")  
Article  
![Avatar of thisdot](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/6e22565142ee45b386c8bc12bdb3d117)This Dot · 5y  
Clean Up Your Code With Design Patterns in Javascript  
Design patterns are a bit of a controversial topic in the dev community. Some developers believe they are overly complicated, others are dogmatic about using them. Let's unpack a few commonly-used JavaScript design patterns together, and discuss how they can make your code cleaner and easier to maintain.  
111  
2
14. 14  
[](/posts/best-vs-code-extensions-for-web-development-e6xvg9f4f "Best VS code Extensions for Web Development")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 5y  
Best VS code Extensions for Web Development  
VSCode Extension helps you to boost your Productivity in Web Development. This post is for everyone including beginners including frontend and backend developers. We will show you how to use VSCode to improve your productivity on the front end and backend of your website.  
109  
6
15. 15  
[](/posts/the-invisible-javascript-backdoor-sr2jeuwev "The Invisible JavaScript Backdoor")  
Article  
![Avatar of css_tricks](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/css_tricks)CSS-Tricks · 5y  
The Invisible JavaScript Backdoor  
An interesting (scary) trick of an nearly undetectable exploit. Wolfgang Ettlinger: What if a backdoor literally cannot be seen and thus evades detection even from thorough code reviews?I’ll post the screenshot of the exploit from the post with the actual exploit circled.  
104  
7
16. 16  
[](/posts/how-to-get-started-as-a-front-end-web-developer-in-2022-complete-roadmap-with-free-resources--m0ekydcbs "How to Get Started As a Front-end Web Developer in 2022 (Complete Roadmap with Free Resources)")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
How to Get Started As a Front-end Web Developer in 2022 (Complete Roadmap with Free Resources)  
How to Get Started As a Front-end Web Developer in 2022 (Complete Roadmap with Free Resources) A guide on how to become a front-end web developer in 2022\. Salvor Pirenne: There are plenty of amazing free resources you can learn from.  
97  
5
17. 17  
[](/posts/announcing-flutter-2-8-xxmqyobmd "Announcing Flutter 2.8")  
Article  
![Avatar of flutter](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/flutter)Flutter · 5y  
Announcing Flutter 2.8  
Flutter aims to change how apps are built. It unites mobile, web, desktop, and embedded development into a single toolkit. The latest update makes it easier than ever to connect apps to back-end services, such as Firebase and Google Cloud. It adds production-quality support for Google Ads and major upgrades to the camera and embedded web plugins.  
95  
5
18. 18  
[](/posts/node-js-in-go-we-trust-gltvvya7w "Node.js: In Go We Trust")  
Article  
![Avatar of devgenius](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/a79144d7517043e7803ed562e45a99df)Dev Genius · 5y  
Node.js: In Go We Trust  
Node.js is good for I/O intensive tasks but bad for CPU bound tasks. Golang offers a lot of options to handle such tasks (child processes/cluster, worker threads) Other languages (C, C++, Rust, Golang) can be used as separate Services/Microservices or via WebAssembly scripts.  
94  
9
19. 19  
[](/posts/best-node-js-cms-platforms-for-2022-mkqhzn-7x "Best Node.js CMS platforms for 2022")  
Article  
![Avatar of logrocket](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/logrocket)LogRocket · 5y  
Best Node.js CMS platforms for 2022  
CMSs enable people without a strong technical background to publish content. There are different type of CMSs that perform different purposes and come with different features. In this article, we will learn about some of the best Node.js CMSs to use in 2022, and hopefully can serve as a guide to choose the best CMS that fits our requirements.  
94  
6
20. 20  
[](/posts/pico-css-minimal-css-framework-for-semantic-html-tifergt9v "Pico.css • Minimal CSS Framework for semantic HTML")  
Article  
![Avatar of hn](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn)Hacker News · 5y  
Pico.css • Minimal CSS Framework for semantic HTML  
Large and complex CSS file increase memory usage and cause longer style calculations. A great design should be minimal, fast and maintainable. Most popular CSS frameworks are bulky, overkill and hard to customize. Huge stackings of wrappers and CSS classes are unnecessary for semantics elements.  
93  
8
21. 21  
[](/posts/vs-code-extensions-with-a-bright-2022-9usbp86k5 "VS Code Extensions with a Bright 2022")  
Article  
![Avatar of hackernoon](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hackernoon)Hacker Noon · 5y  
VS Code Extensions with a Bright 2022  
93  
6
22. 22  
[](/posts/5-automations-every-developer-should-be-running-xfxienpkr "5 automations every developer should be running")  
Article  
![Avatar of ghblog](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/106cf162b88840808484d4b5429b59b1)GitHub Blog · 5y  
5 automations every developer should be running  
GitHub Actions offers thousands of pre-written, community-built tests and automations that range from code quality to code review to testing. CodeQL finds security advisories across coding languages and packages, and then automatically displays them in your repository’s security tab. Run npm test in your workflows to push the latest and greatest software.  
88  
4
23. 23  
[](/posts/thank-you-angular-twupxii7f "Thank you, Angular")  
Article  
![Avatar of angular](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/angular)Angular · 5y  
Thank you, Angular  
Igor Minar is leaving Google to take up a role with Uber Tech Lead Jeremy Elbourn. He will be transitioning to the role of Lead Tech Lead (TL) for the project. Minar has been working on the project since 2009, when he first met Miško Hevery. He says the project has grown to become much bigger and more influential than he ever imagined.  
83  
3
24. 24  
[](/posts/the-ugly-truth-about-coding-bootcamps-zrrwgrr36 "The Ugly Truth About Coding Bootcamps")  
Article  
![Avatar of honeypot](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/1cc3a75b98b74698a40f57162b30b841)Honeypot · 5y  
The Ugly Truth About Coding Bootcamps  
For all their bad rep, bootcamps actually work. Bootcamps teach how to code and bring that knowledge to the workplace. The median age for bootcamp students is 31, and, according to data, most have a Bachelor’s degree. 79% of bootcamp attendees got a job 180 days after finishing their course.  
83  
19
25. 25  
[](/posts/how-to-use-the-github-repository-ohp3vukie "How to Use the .github Repository")  
Article  
![Avatar of freecodecamp](https://media.daily.dev/image/upload/t_logo,f_auto/v1628412854/logos/freecodecamp)freeCodeCamp · 5y  
How to Use the .github Repository  
GitHub has many special repositories, like the README in your profile. The .github repository acts as a fallback for repositories that don't have these types of community health files. The first file I will add is a bug report issue form. I am also going to create a feature request form.  
79  
12

[See all General Programming archives](/tags/general-programming/best-of)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@graph":[{"@type":"CollectionPage","@id":"https://daily.dev/tags/general-programming/best-of/2021/12#page","url":"https://daily.dev/tags/general-programming/best-of/2021/12","name":"Best General Programming Posts — December 2021","description":"The most upvoted General Programming posts from December 2021, curated by the daily.dev community.","isPartOf":{"@type":"WebSite","url":"https://daily.dev"}},{"@type":"ItemList","@id":"https://daily.dev/tags/general-programming/best-of/2021/12#items","numberOfItems":25,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://daily.dev/posts/learn-in-1-hour-design-patterns-2n-cekp7u","name":"Learn in 1 Hour: Design Patterns"},{"@type":"ListItem","position":2,"url":"https://daily.dev/posts/using-notion-to-organise-programming-topics-zatwt0etq","name":"Using Notion to organise programming topics"},{"@type":"ListItem","position":3,"url":"https://daily.dev/posts/how-javascript-works-behind-the-scenes--gbwe8g4v6","name":"How JavaScript Works behind the scenes?"},{"@type":"ListItem","position":4,"url":"https://daily.dev/posts/learn-responsive-web-design-by-building-20-projects-a-major-freecodecamp-curriculum-update-9ot-2xnrh","name":"Learn Responsive Web Design by Building 20 Projects – a Major freeCodeCamp Curriculum Update"},{"@type":"ListItem","position":5,"url":"https://daily.dev/posts/markdown-support--shksho0z7","name":"Markdown support 🌈"},{"@type":"ListItem","position":6,"url":"https://daily.dev/posts/25-must-visit-killer-websites-for-developers--x-vchrud","name":"25 Must-Visit Killer Websites For Developers"},{"@type":"ListItem","position":7,"url":"https://daily.dev/posts/how-khan-academy-rewrote-their-backend-rit9boj3k","name":"How Khan Academy Rewrote their Backend"},{"@type":"ListItem","position":8,"url":"https://daily.dev/posts/top-7-highest-paid-programming-languages-2021-gev3cbrlh","name":"Top 7 Highest Paid Programming Languages 2021"},{"@type":"ListItem","position":9,"url":"https://daily.dev/posts/8-mistakes-every-amateur-programmers-make-8jlq4awr1","name":"8 Mistakes Every Amateur Programmers Make"},{"@type":"ListItem","position":10,"url":"https://daily.dev/posts/github-wrapped---your-year-in-code-46ohwubgv","name":"GitHub Wrapped - Your year in code"},{"@type":"ListItem","position":11,"url":"https://daily.dev/posts/using-notion-to-organise-programming-topics-gbpup2kr6","name":"Using Notion to organise programming topics"},{"@type":"ListItem","position":12,"url":"https://daily.dev/posts/refactoring-nested-loops-in-js-6o5fot3d9","name":"Refactoring Nested Loops In JS"},{"@type":"ListItem","position":13,"url":"https://daily.dev/posts/clean-up-your-code-with-design-patterns-in-javascript-sopfjibx0","name":"Clean Up Your Code With Design Patterns in Javascript"},{"@type":"ListItem","position":14,"url":"https://daily.dev/posts/best-vs-code-extensions-for-web-development-e6xvg9f4f","name":"Best VS code Extensions for Web Development"},{"@type":"ListItem","position":15,"url":"https://daily.dev/posts/the-invisible-javascript-backdoor-sr2jeuwev","name":"The Invisible JavaScript Backdoor"},{"@type":"ListItem","position":16,"url":"https://daily.dev/posts/how-to-get-started-as-a-front-end-web-developer-in-2022-complete-roadmap-with-free-resources--m0ekydcbs","name":"How to Get Started As a Front-end Web Developer in 2022 (Complete Roadmap with Free Resources)"},{"@type":"ListItem","position":17,"url":"https://daily.dev/posts/announcing-flutter-2-8-xxmqyobmd","name":"Announcing Flutter 2.8"},{"@type":"ListItem","position":18,"url":"https://daily.dev/posts/node-js-in-go-we-trust-gltvvya7w","name":"Node.js: In Go We Trust"},{"@type":"ListItem","position":19,"url":"https://daily.dev/posts/best-node-js-cms-platforms-for-2022-mkqhzn-7x","name":"Best Node.js CMS platforms for 2022"},{"@type":"ListItem","position":20,"url":"https://daily.dev/posts/pico-css-minimal-css-framework-for-semantic-html-tifergt9v","name":"Pico.css • Minimal CSS Framework for semantic HTML"},{"@type":"ListItem","position":21,"url":"https://daily.dev/posts/vs-code-extensions-with-a-bright-2022-9usbp86k5","name":"VS Code Extensions with a Bright 2022"},{"@type":"ListItem","position":22,"url":"https://daily.dev/posts/5-automations-every-developer-should-be-running-xfxienpkr","name":"5 automations every developer should be running"},{"@type":"ListItem","position":23,"url":"https://daily.dev/posts/thank-you-angular-twupxii7f","name":"Thank you, Angular"},{"@type":"ListItem","position":24,"url":"https://daily.dev/posts/the-ugly-truth-about-coding-bootcamps-zrrwgrr36","name":"The Ugly Truth About Coding Bootcamps"},{"@type":"ListItem","position":25,"url":"https://daily.dev/posts/how-to-use-the-github-repository-ohp3vukie","name":"How to Use the .github Repository"}]},{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Tags","item":"https://daily.dev/tags"},{"@type":"ListItem","position":3,"name":"General Programming","item":"https://daily.dev/tags/general-programming"},{"@type":"ListItem","position":4,"name":"Best of","item":"https://daily.dev/tags/general-programming/best-of"},{"@type":"ListItem","position":5,"name":"December 2021"}]}]}
```

