<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/best-of/2021/09" -->

---
title: Best developer posts — September 2021 | daily.dev
description: The most upvoted daily.dev posts from September 2021, curated by the daily.dev community.
canonical: https://daily.dev/posts/best-of/2021/09
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:url: https://daily.dev/posts/best-of/2021/09
og:type: website
og:site_name: daily.dev
og:title: Best developer posts — September 2021 | daily.dev
og:description: The most upvoted daily.dev posts from September 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 daily.dev — September 2021

1. 1  
[](https://daily.dev/posts/17-killer-websites-for-web-developers-wlofd5xb7 "17 Killer Websites for Web Developers")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
17 Killer Websites for Web Developers  
The Unsplash API is a modern JSON API that surfaces all of the info you’ll need to build any experience for your users. Embeddable Widget Apps for Notion is a tool to add 3rd party apps to your Notion Document. Smart Mockup is the fastest web-based mockup tool.  
635  
36
2. 2  
[](https://daily.dev/posts/clean-architecture-on-frontend-sew4z9pjr "Clean Architecture on Frontend")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 5y  
Clean Architecture on Frontend  
The Clean Architecture is a way of separating responsibilities and parts of functionality according to their proximity to the application domain. It is often referred to as a three-layer architecture, because the functionality in it is divided into layers. In this post we'll talk about what the clean architecture is in general and get familiar with such concepts as domain, use case and application layers. Then we'll discuss how this applies to the frontend and whether it's worth it at all.  
369  
25
3. 3  
[](https://daily.dev/posts/10-projects-you-can-do-to-become-a-frontend-master-mh-6nunzd "10+ Projects You Can Do to Become a Frontend Master")  
Article  
![Avatar of devdojo](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/e258fd9dff884055b7b59df7fd1d7bd7)DevDojo · 5y  
10+ Projects You Can Do to Become a Frontend Master  
Learn about firebase, authentication, real-time database and etc. by building a chat app. Build a blog and share content regularly to increase your online presence. Learn about styled-components, routing in Next JS, implementing MDX, and using dynamic routes. Use Spotify 2.0, your own Spotify version.  
281  
23
4. 4  
[](https://daily.dev/posts/es6-handbook-the-complete-guide-dsyovcz-z "ES6 Handbook: The Complete Guide")  
Article  
![Avatar of devdojo](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/e258fd9dff884055b7b59df7fd1d7bd7)DevDojo · 5y  
ES6 Handbook: The Complete Guide  
This blog is all about ES6\. It includes all the topics related with examples. Before reading further, I want to specify that this was not a blog post initially. These are just my personal notes that I use as a reference guide, so I apologize for any misspells here :)  
278  
11
5. 5  
[](https://daily.dev/posts/7-useful-html-attributes-you-may-not-know-yjelg5jdx "7 useful HTML attributes you may not know")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 5y  
7 useful HTML attributes you may not know  
This is a list of HTML attributes that many beginners don't know, but that can be helpful. The multiple attribute allows the user to enter multiple values on an <input> element. The spellcheck attribute is another global attribute that you can use to check spelling and grammar on HTML elements such as input fields.  
251  
18
6. 6  
[](https://daily.dev/posts/my-room-in-3d-w76bme08k "My Room in 3D")  
Article  
![Avatar of hn](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn)Hacker News · 5y  
My Room in 3D  
My Room in 3D by Bruno Simon is out now on Blu-ray and DVD. The film is based on the book by the same name by Simon Simon. Click here for more information about the film. The book is published by Simon & Schuster, which also published the film in North America.  
217  
25
7. 7  
[](https://daily.dev/posts/visual-studio-code-shortcuts-a-programmer-s-guide-w0p7kecqd "Visual Studio Code Shortcuts: A Programmer’s Guide")  
Article  
![Avatar of sitepoint](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/sitepoint)SitePoint · 5y  
Visual Studio Code Shortcuts: A Programmer’s Guide  
This article covers default keyboard shortcuts for Windows, Linux and macOS. Visual Studio Code is one of the most popular and most used code editors. It’s open source and free to use. It provides support for many languages and frameworks, whether through built-in features or the extensive list of extensions available for the editor.  
183  
6
8. 8  
[](https://daily.dev/posts/how-to-set-up-your-programming-linkedin-profile-pbqxa8ny4 "How to Set Up Your Programming LinkedIn Profile")  
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 Set Up Your Programming LinkedIn Profile  
If you want to get hired as a web-developer, you need a LinkedIn profile. According to research, 87% of recruiters use LinkedIn regularly. LinkedIn uses keywords in various areas of your profile to determine if you’re a relevant result when a potential employer/recruiter is searching.  
176  
9
9. 9  
[](https://daily.dev/posts/stop-abusing-map--vm26ueudb "Stop abusing .map()!")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 5y  
Stop abusing .map()!  
Code snippets that use .map() should be used with .forEach() instead. . map() returns a new array - always - and if we don't need that array, we shouldn't use it in the first place. In this particular example there are only three items in the array so creating another three-element array won't bring any serious consequences.  
158  
11
10. 10  
[](https://daily.dev/posts/i-wrote-a-fully-functioning-file-explorer-using-typescript--0mdtfs6oh "I wrote a fully-functioning File Explorer, using TypeScript.")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 5y  
I wrote a fully-functioning File Explorer, using TypeScript.  
Xplorer is not written on traditional language like C, C++ or C#. It is written on TypeScript, HTML and SCSS, using the Electron framework. There are four available default themes for now. Xplorer helps you organize your files easier by supporting multiple tabs.  
158  
11
11. 11  
[](https://daily.dev/posts/15-useful-vs-code-shortcuts-to-boost-your-productivity-wwtegtfzc "15 Useful VS Code Shortcuts to Boost Your Productivity")  
Article  
![Avatar of btrprog](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/d957a1c828884dbb9543ba3e0beb6bc7)Better Programming · 5y  
15 Useful VS Code Shortcuts to Boost Your Productivity  
VS Code is one of the most popular editors for web development. Having hands-on keyboard shortcuts can help improve your coding speed by a lot. Here is a list of some shortcuts that I have been using for a while and found to be really useful. 15 Useful VS Code Shortcuts to Boost Your Productivity.  
152  
10
12. 12  
[](https://daily.dev/posts/25-hand-picked-react-libraries-you-probably-didn-t-know-existed-4x51df9ef "25 Hand-Picked React Libraries You Probably Didn’t Know Existed")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
25 Hand-Picked React Libraries You Probably Didn’t Know Existed  
React is a JavaScript library built on top of Facebook’s React library. It aims to bring a native desktop experience to the web, featuring many macOS Sierra and Windows 10 components. Here are some libraries you can use in 2021 to level up your web application.  
149  
6
13. 13  
[](https://daily.dev/posts/15-developer-tools-to-make-you-super-productive--qabv9nzf "15 Developer Tools to Make You Super Productive")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 5y  
15 Developer Tools to Make You Super Productive  
Pairing with experienced developers leaves you with many tips, tricks, shortcuts, and tools that help them focus on a product’s business logic. The best software developers arm themselves with superior knowledge of specific tools that get the job done. Today, I’ll show you 15 developer tools that’d improve your productivity immensely.  
148  
6
14. 14  
[](https://daily.dev/posts/git-for-professionals-xvxbfhpnv "Git for Professionals")  
Article  
![Avatar of freecodecamp](https://media.daily.dev/image/upload/t_logo,f_auto/v1628412854/logos/freecodecamp)freeCodeCamp · 5y  
Git for Professionals  
Git for Professionals – Free Version Control Course by Beau Carnes. Beau Carnes is the author of the book Git: A Handbook for the Professionals. See www.git-for-prosperity.org for more information on Git for professionals.  
145  
5
15. 15  
[](https://daily.dev/posts/javascript-worst-practice-bad-coding-habits-you-need-to-stop--smtlr6-en "Javascript Worst Practice. Bad coding habits you need to stop…")  
Article  
![Avatar of bit](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/bit)Bits and Pieces · 5y  
Javascript Worst Practice. Bad coding habits you need to stop…  
Fernando Doglio takes a look at 5 of the worst things you can do to your code while writing JavaScript. Not everyone is fully aware that 2 + '2' is not going to be 4\. And that the type of \[\] + 1 is neither Number nor Array. Build independent components for speed and scale.  
139  
6
16. 16  
[](https://daily.dev/posts/clean-architecture---making-node-js-api-shine--68snzpjb3 "Clean architecture - making Node.js API shine!")  
Article  
![Avatar of itnext](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/itnext2)ITNEXT · 5y  
Clean architecture - making Node.js API shine!  
Clean architecture is a software design philosophy that advocates for the separation of layers of code. The separation of elements lends itself to easier testing, where we can test each module independently of others. In order to be flexible with project dependencies, use dependency injection mechanisms. Code on the inner layers can only move from the outer layers.  
136  
1
17. 17  
[](https://daily.dev/posts/how-i-use-notion-while-learning-programming-pidzhpdgm "How I use Notion while learning programming")  
Article  
![Avatar of hashnode](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/4a287b2e7cb5499bae863f8e7137cdb4)Hashnode · 5y  
How I use Notion while learning programming  
Notion is an application that provides components, such as notes, databases, kanban boards, wikis, calendars and reminders. It has almost anything that you need for project management, note taking (except a scribble feature that I wish there was one) and writing blog posts. I use Notion while learning how to code in various ways.  
121  
11
18. 18  
[](https://daily.dev/posts/5-html-and-css-good-practices-tl7ikiwcl "5 HTML and CSS Good Practices")  
Article  
![Avatar of dz](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/dz)DZone · 5y  
5 HTML and CSS Good Practices  
It is quite easy to find good practices for any technology, but unfortunately, the same cannot be said about HTML and CSS. I've made my list of 5 cases when you can create a user-friendly, or clumsy, interface using only HTML andCSS. The alt attribute is quite useful, but many developers don’t use it efficiently.  
118  
4
19. 19  
[](https://daily.dev/posts/bye-youtube-hello-peertube-no-ads-decentralised-privacy-friendly----diode-zone--fn56cyqor "Bye YouTube, Hello PeerTube 📺 (no ads, decentralised, privacy-friendly! -- Diode Zone)")  
Article  
![Avatar of hn](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn)Hacker News · 5y  
Bye YouTube, Hello PeerTube 📺 (no ads, decentralised, privacy-friendly! -- Diode Zone)  
PeerTube needs JavaScript to work. If you are concerned about the security and privacy (or lack thereof) of JavaScript web applications, you might want to review the source code of the instance you are trying to access, or look for security audits. We totally get that. However, this page will not work without it.  
109  
10
20. 20  
[](https://daily.dev/posts/top-10-programming-practices-to-code-like-a-pro-1t8ekeqcf "Top 10 Programming Practices to Code like a Pro")  
Article  
![Avatar of hashnode](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/4a287b2e7cb5499bae863f8e7137cdb4)Hashnode · 5y  
Top 10 Programming Practices to Code like a Pro  
Good coding practices will save you time, effort, resources, and a hell lot of headaches. Back up and save your work people!!! If you lose your work just because of a minor issue, then all your hard work, all-nighters and headaches are gonna be for nothing. Write readable and efficient code.  
105  
9
21. 21  
[](https://daily.dev/posts/9-best-practices-for-optimizing-frontend-performance-7qg2-k1px "9 Best Practices for Optimizing Frontend Performance")  
Article  
![Avatar of bit](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/bit)Bits and Pieces · 5y  
9 Best Practices for Optimizing Frontend Performance  
Most of the websites fail to deliver a satisfactory user experience due to poorly optimized frontends. Minification of HTML, CSS, and JavaScript will speeds up the frontend load times as it reduces the amount of code that needs to be requested from the server. Using CSS Sprites is one of the easiest ways to reduce the number of server calls.  
102  
2
22. 22  
[](https://daily.dev/posts/how-i-make-css-art-4sbcf6-c8 "How I make CSS Art")  
Article  
![Avatar of hashnode](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/4a287b2e7cb5499bae863f8e7137cdb4)Hashnode · 5y  
How I make CSS Art  
On the third of June 2021, I created my very first CSS art. I decided to write this blog post to illustrate my thought process from the very beginning up until publishing the art on codepen. Hopefully, this will attract more people into creating CSS art and have fun with it.  
101  
16
23. 23  
[](https://daily.dev/posts/mistakes-to-avoid-as-a-junior-developer-z3ivpmifg "Mistakes to Avoid As a Junior Developer")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 5y  
Mistakes to Avoid As a Junior Developer  
As a junior developer with a fresh mind in the software development field, be patient and calm. Don’t write complex codes because you think it’s the best time to show off. Upgrade your skills daily in the programming language you are using. Expand your toolbox with new technologies. As you grow, you will find better programmers than you.  
97  
5
24. 24  
[](https://daily.dev/posts/what-is-better-for-http-requests-fetch-or-axios-comparison-wpdquozbf "What is better for HTTP Requests: Fetch or Axios Comparison")  
Article  
![Avatar of towardsdev](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/2c710db2750a4a70835862534cb7c9d4)Towards Dev · 5y  
What is better for HTTP Requests: Fetch or Axios Comparison  
Fetch() is part of a JavaScript window-object method within the Fetch API. It is built-in, so users don’t have to install it. Fetch() allows us to get data from the API asynchronously. Axios is a Javascript library used to make HTTP requests from the browser. It supports the Promise API that is native to JS ES6.  
96  
5
25. 25  
[](https://daily.dev/posts/creating-the-perfect-commit-in-git-unoqikl74 "Creating the Perfect Commit in Git")  
Article  
![Avatar of css_tricks](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/css_tricks)CSS-Tricks · 5y  
Creating the Perfect Commit in Git  
This article is part of our “Advanced Git’ series. Part 2: Branching Strategies in Git Part 3: Better Collaboration With Pull Requests Part 4: Rebase vs. Merge (Coming soon!) Part 6: Interactive Rebase Part 7: Using the Reflog to Restore Lost Commits.  
92  
1

[See all daily.dev archives](/posts/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/posts/best-of/2021/09#page","url":"https://daily.dev/posts/best-of/2021/09","name":"Best Developer Posts — September 2021","description":"The most upvoted daily.dev posts from September 2021, curated by the daily.dev community.","isPartOf":{"@type":"WebSite","url":"https://daily.dev"}},{"@type":"ItemList","@id":"https://daily.dev/posts/best-of/2021/09#items","numberOfItems":25,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://daily.dev/posts/17-killer-websites-for-web-developers-wlofd5xb7","name":"17 Killer Websites for Web Developers"},{"@type":"ListItem","position":2,"url":"https://daily.dev/posts/clean-architecture-on-frontend-sew4z9pjr","name":"Clean Architecture on Frontend"},{"@type":"ListItem","position":3,"url":"https://daily.dev/posts/10-projects-you-can-do-to-become-a-frontend-master-mh-6nunzd","name":"10+ Projects You Can Do to Become a Frontend Master"},{"@type":"ListItem","position":4,"url":"https://daily.dev/posts/es6-handbook-the-complete-guide-dsyovcz-z","name":"ES6 Handbook: The Complete Guide"},{"@type":"ListItem","position":5,"url":"https://daily.dev/posts/7-useful-html-attributes-you-may-not-know-yjelg5jdx","name":"7 useful HTML attributes you may not know"},{"@type":"ListItem","position":6,"url":"https://daily.dev/posts/my-room-in-3d-w76bme08k","name":"My Room in 3D"},{"@type":"ListItem","position":7,"url":"https://daily.dev/posts/visual-studio-code-shortcuts-a-programmer-s-guide-w0p7kecqd","name":"Visual Studio Code Shortcuts: A Programmer’s Guide"},{"@type":"ListItem","position":8,"url":"https://daily.dev/posts/how-to-set-up-your-programming-linkedin-profile-pbqxa8ny4","name":"How to Set Up Your Programming LinkedIn Profile"},{"@type":"ListItem","position":9,"url":"https://daily.dev/posts/stop-abusing-map--vm26ueudb","name":"Stop abusing .map()!"},{"@type":"ListItem","position":10,"url":"https://daily.dev/posts/i-wrote-a-fully-functioning-file-explorer-using-typescript--0mdtfs6oh","name":"I wrote a fully-functioning File Explorer, using TypeScript."},{"@type":"ListItem","position":11,"url":"https://daily.dev/posts/15-useful-vs-code-shortcuts-to-boost-your-productivity-wwtegtfzc","name":"15 Useful VS Code Shortcuts to Boost Your Productivity"},{"@type":"ListItem","position":12,"url":"https://daily.dev/posts/25-hand-picked-react-libraries-you-probably-didn-t-know-existed-4x51df9ef","name":"25 Hand-Picked React Libraries You Probably Didn’t Know Existed"},{"@type":"ListItem","position":13,"url":"https://daily.dev/posts/15-developer-tools-to-make-you-super-productive--qabv9nzf","name":"15 Developer Tools to Make You Super Productive"},{"@type":"ListItem","position":14,"url":"https://daily.dev/posts/git-for-professionals-xvxbfhpnv","name":"Git for Professionals"},{"@type":"ListItem","position":15,"url":"https://daily.dev/posts/javascript-worst-practice-bad-coding-habits-you-need-to-stop--smtlr6-en","name":"Javascript Worst Practice. Bad coding habits you need to stop…"},{"@type":"ListItem","position":16,"url":"https://daily.dev/posts/clean-architecture---making-node-js-api-shine--68snzpjb3","name":"Clean architecture - making Node.js API shine!"},{"@type":"ListItem","position":17,"url":"https://daily.dev/posts/how-i-use-notion-while-learning-programming-pidzhpdgm","name":"How I use Notion while learning programming"},{"@type":"ListItem","position":18,"url":"https://daily.dev/posts/5-html-and-css-good-practices-tl7ikiwcl","name":"5 HTML and CSS Good Practices"},{"@type":"ListItem","position":19,"url":"https://daily.dev/posts/bye-youtube-hello-peertube-no-ads-decentralised-privacy-friendly----diode-zone--fn56cyqor","name":"Bye YouTube, Hello PeerTube 📺 (no ads, decentralised, privacy-friendly! -- Diode Zone)"},{"@type":"ListItem","position":20,"url":"https://daily.dev/posts/top-10-programming-practices-to-code-like-a-pro-1t8ekeqcf","name":"Top 10 Programming Practices to Code like a Pro"},{"@type":"ListItem","position":21,"url":"https://daily.dev/posts/9-best-practices-for-optimizing-frontend-performance-7qg2-k1px","name":"9 Best Practices for Optimizing Frontend Performance"},{"@type":"ListItem","position":22,"url":"https://daily.dev/posts/how-i-make-css-art-4sbcf6-c8","name":"How I make CSS Art"},{"@type":"ListItem","position":23,"url":"https://daily.dev/posts/mistakes-to-avoid-as-a-junior-developer-z3ivpmifg","name":"Mistakes to Avoid As a Junior Developer"},{"@type":"ListItem","position":24,"url":"https://daily.dev/posts/what-is-better-for-http-requests-fetch-or-axios-comparison-wpdquozbf","name":"What is better for HTTP Requests: Fetch or Axios Comparison"},{"@type":"ListItem","position":25,"url":"https://daily.dev/posts/creating-the-perfect-commit-in-git-unoqikl74","name":"Creating the Perfect Commit in Git"}]},{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Explore","item":"https://daily.dev/posts"},{"@type":"ListItem","position":3,"name":"Best of","item":"https://daily.dev/posts/best-of"},{"@type":"ListItem","position":4,"name":"September 2021"}]}]}
```

