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

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

1. 1  
[](https://daily.dev/posts/habits-of-great-software-engineers-2cyrgleyx "Habits of great software engineers")  
Article  
![Avatar of justanothercto](https://media.daily.dev/image/upload/s--la1n-SxE--/f_auto/v1705916459/squads/vadimkravcenko)Just Another CTO · 3y  
Habits of great software engineers  
The article discusses the habits of great software engineers, emphasizing the importance of focusing beyond coding, pursuing efficiency, enjoying tinkering, understanding the 'why' behind the code, thinking in systems, recharging beyond technology, approximating numbers, transferring knowledge to new problems, simplifying complex concepts, playing the long game, and developing a code nose.  
763  
33
2. 2  
[](https://daily.dev/posts/a-programmer-presents-a-mind-blowing-multi-window-adaptive-experience-oklqxunjd "A Programmer Presents a Mind-Blowing Multi-Window Adaptive Experience")  
Article  
![Avatar of 80lv](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/78eebcd76c154e6bbfd565fed7dc4093)80 LEVEL · 3y  
A Programmer Presents a Mind-Blowing Multi-Window Adaptive Experience  
A programmer has developed a setup that allows synchronization of a 3D scene across multiple browser windows. It uses Three.js and localStorage and is designed for developers interested in advanced web graphics and window management techniques.  
655  
46
3. 3  
[](https://daily.dev/posts/css-trick-transition-from-height-0-to-auto--wwxc8nnwz "🧙‍♂️ CSS trick: transition from height 0 to auto!")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
🧙‍♂️ CSS trick: transition from height 0 to auto!  
Learn how to transition from height 0 to auto in CSS using CSS Grid. Avoid fixed heights and use a neat trick with grid-template-rows.  
574  
26
4. 4  
[](https://daily.dev/posts/how-to-build-a-personal-brand-as-a-developer-ry2z6cmck "How to Build a Personal Brand as a Developer")  
Article  
![Avatar of honeypot](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/1cc3a75b98b74698a40f57162b30b841)Honeypot · 3y  
How to Build a Personal Brand as a Developer  
Building a personal brand as a developer can help you stand out, gain credibility, network, and achieve your career goals. To build your personal brand, consider your ambitions and comfort level, embrace your passions and knowledge, create an online presence, build offline buzz, and measure and adapt your strategy.  
565  
29
5. 5  
[](https://daily.dev/posts/what-s-new-in-javascript-in-2023-changes-with-code-examples-m5fgpok7b "What's New in JavaScript in 2023 – Changes with Code Examples")  
Article  
![Avatar of freecodecamp](https://media.daily.dev/image/upload/t_logo,f_auto/v1628412854/logos/freecodecamp)freeCodeCamp · 3y  
What's New in JavaScript in 2023 – Changes with Code Examples  
ECMAScript 2023 introduces changes to JavaScript that make programming easier. The changes include the Object.groupBy method for grouping objects based on a property value, the Array.toSliced(), Array.toSorted(), and Array.toReversed() methods for manipulating arrays without mutating the original array, and the findLast() and findLastIndex() methods for finding the last element or index in an array that satisfies a condition.  
564  
27
6. 6  
[](https://daily.dev/posts/an-interactive-guide-to-css-grid-qaklckagh "An Interactive Guide to CSS Grid")  
Article  
![Avatar of joshwcomeau](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/4a121572d03c40a2bff9e8ed0f0792b5)Josh W Comeau · 3y  
An Interactive Guide to CSS Grid  
Learn about the fundamentals of CSS Grid, including how it works and how it can be used to create complex layouts.  
544  
10
7. 7  
[](https://daily.dev/posts/why-signals-are-better-than-react-hooks-dgesd3rrx "Why Signals Are Better Than React Hooks")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Why Signals Are Better Than React Hooks  
Discover the benefits of using signals over React hooks, including simplified usage, improved performance, and eliminating complex rules. Signals handle dependencies automatically and can be used anywhere in or outside of a component. Performance metrics have shown significant speed improvements with the use of signals.  
515  
32
8. 8  
[](https://daily.dev/posts/how-to-become-a-10x-dev-6z5terkqv "How to Become a 10x Dev")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 3y  
How to Become a 10x Dev  
Learn how to become a 10x developer by automating repetitive tasks, mastering keyboard shortcuts, avoiding over-engineering, utilizing version control workflow, leveraging existing components and libraries, embracing HTML Emmet for rapid prototyping, and utilizing AI assistance and VS Code extensions.  
477  
25
9. 9  
[](https://daily.dev/posts/vite-5-0-is-out--mt2mszfah "Vite 5.0 is out!")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Vite 5.0 is out!  
Vite 5.0 has been released, bringing new features and improvements to the popular JavaScript build tool. It now uses Rollup 4 for improved build performance and introduces server.warmup to improve startup time. Vite no longer supports older versions of Node.js, requiring version 18 or higher. Check out the Migration Guide for a smooth upgrade process.  
476  
22
10. 10  
[](https://daily.dev/posts/career-mistakes-to-avoid-as-a-developer-fywm1vjc9 "Career Mistakes to Avoid as a Developer")  
Article  
![Avatar of freecodecamp](https://media.daily.dev/image/upload/t_logo,f_auto/v1628412854/logos/freecodecamp)freeCodeCamp · 3y  
Career Mistakes to Avoid as a Developer  
Learn about the career mistakes to avoid as a developer, including not setting realistic goals, failing to recognize your potential, and neglecting networking opportunities.  
454  
73
11. 11  
[](https://daily.dev/posts/the-valley-of-code---your-web-development-manual-uobi7zuvr "The Valley of Code - Your web development manual")  
Article  
![Avatar of ph](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/ph)Product Hunt · 3y  
The Valley of Code - Your web development manual  
The Valley of Code is a web development manual with big plans for the future. The author welcomes feedback and suggestions.  
428  
11
12. 12  
[](https://daily.dev/posts/how-to-write-commit-messages-that-project-maintainers-will-appreciate-tb7lvujxn "How to Write Commit Messages that Project Maintainers Will Appreciate")  
Article  
![Avatar of freecodecamp](https://media.daily.dev/image/upload/t_logo,f_auto/v1628412854/logos/freecodecamp)freeCodeCamp · 3y  
How to Write Commit Messages that Project Maintainers Will Appreciate  
Learn how to write effective commit messages that project maintainers will appreciate. Avoid vague messages and instead mention the type of change and summarize the details. Consider adding a description for more clarity and understanding. Writing good commit messages is crucial for communicating contributions.  
370  
25
13. 13  
[](https://daily.dev/posts/how-i-teach-git-2nxqqgdar "How I teach Git")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 3y  
How I teach Git  
The post shares a teacher's approach to teaching Git and provides insights into various Git concepts such as commits, references, branches, tags, and the three states of working with Git. It also covers basic Git operations, working with others using remotes, pushing and fetching from remotes, and best practices for maintaining a clean Git history.  
366  
5
14. 14  
[](https://daily.dev/posts/oop-design-patterns-in-javascript-0scu4khmr "OOP Design Patterns in Javascript")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 3y  
OOP Design Patterns in Javascript  
The Command Pattern turns a request or operation into a standalone object. The Strategy Pattern defines a family of interchangeable algorithms. The Flyweight Pattern reduces memory consumption by sharing common parts of objects. The Observer Pattern establishes a one-to-many dependency between objects.  
358  
9
15. 15  
[](https://daily.dev/posts/weekly-digest-rucnae3lu "Weekly digest")  
Article  
![Avatar of daily_updates](https://media.daily.dev/image/upload/s--COeiQtov--/f_auto/v1704465510/squads/daily_updates)daily.dev Changelog · 3y  
Weekly digest  
Every Wednesday, we'll send you five posts you haven't read. Each post was carefully picked based on topics you love reading about. Let's get to it!  
331  
20
16. 16  
[](https://daily.dev/posts/float-ui-v2---free-tailwind-ui-components-in-html-react-vue-svelte-lubomndvt "Float UI v2 - Free Tailwind UI components in Html, React, Vue, Svelte")  
Article  
![Avatar of ph](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/ph)Product Hunt · 3y  
Float UI v2 - Free Tailwind UI components in Html, React, Vue, Svelte  
Float UI is an open-source and free Tailwind UI library for HTML, React, Vue, and Svelte, with production-ready templates.  
321  
4
17. 17  
[](https://daily.dev/posts/bruno-api-client-a9nzi81bm "Bruno API Client")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Bruno API Client  
Bruno is a new API client that aims to revolutionize the current options like Postman and Insomnia. It uses a plain text markup language to store API requests and values data privacy.  
297  
15
18. 18  
[](https://daily.dev/posts/the-most-upvoted-visual-studio-code-feature-dkdoighky "The Most Upvoted Visual Studio Code Feature")  
Article  
![Avatar of til](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/739e560f0f81492eb54055003476c505)This is Learning · 3y  
The Most Upvoted Visual Studio Code Feature  
A highly upvoted feature has been added to Visual Studio Code, allowing tabs to be released outside of the window. The feature is currently in preview and only available in the Insiders edition of vscode.  
285  
13
19. 19  
[](https://daily.dev/posts/become-a-better-developer-by-improving-your-habits-2udughi1q "Become a better developer by improving your habits")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Become a better developer by improving your habits  
Improve your life by changing your habits. Small changes can lead to great results. Focus on the 'who' instead of the 'what'. Understand the structure of habits. Engineer your environment for positive change. Start with a two-minute action. Track your habits and stay consistent.  
271  
10
20. 20  
[](https://daily.dev/posts/explaining-ssh-to-my-uber-driver-zt5ig5ne7 "Explaining SSH to my Uber Driver")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 3y  
Explaining SSH to my Uber Driver  
SSH is a secure, secret tunnel that allows developers to connect to another computer over the internet and perform various tasks. It is commonly used for deploying code and updating server configurations. SSH's encryption and authorization protocols make it more secure than older communication protocols. By using public-key authentication, SSH protects user information from hackers.  
249  
5
21. 21  
[](https://daily.dev/posts/jsdoc-a-solid-alternative-to-typescript-jjazursrc "JSDoc: a solid alternative to TypeScript")  
Article  
![Avatar of asayer](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/be8d9d38650943c8a1718ba79f23e9ac)asayer · 3y  
JSDoc: a solid alternative to TypeScript  
JSDoc is a solid alternative to TypeScript that provides static typing and scalability for JavaScript code without the need for transpilation. It offers flexibility, code annotation, and no compilation step, while still allowing for improved code maintainability and understanding. JSDoc can be used to add types to values, objects, arrays, functions, and classes, as well as improve code documentation with features like code authors, example usage, versioning, and helpful links. JSDoc files can be converted into documentation websites or TypeScript declaration files (.d.ts) for integration with TypeScript projects.  
248  
21
22. 22  
[](https://daily.dev/posts/my-software-estimation-technique-y6prr62ew "My Software Estimation Technique")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
My Software Estimation Technique  
Learn a software estimation technique that captures both time and uncertainty. The technique involves breaking down work into smaller tasks based on complexity, estimating uncertainty, and refining the estimate as needed. By tracking accuracy over time, you can improve your estimation skills. Other estimation techniques like PERT, evidence-based scheduling, and fruit-salad scrum are also mentioned.  
243  
5
23. 23  
[](https://daily.dev/posts/mastering-docker-a-comprehensive-guide-cfp6aaotm "Mastering Docker: A Comprehensive Guide")  
Article  
![Avatar of awstip](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/aea5725665d4494d8470f6c11612e774)AWS Tip · 3y  
Mastering Docker: A Comprehensive Guide  
Docker is an open platform for developing, shipping, and running applications. It separates applications from infrastructure and allows for quick software delivery. Key Docker terms include images, containers, Dockerfiles, Docker Engine, Docker Hub, Docker registry, and Docker Compose. Virtual machines and containers differ in their approach and use cases, with VMs emulating an entire OS and containers sharing the host OS kernel.  
241  
4
24. 24  
[](https://daily.dev/posts/monaspace-3mnc33tty "Monaspace")  
Article  
![Avatar of hn](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn)Hacker News · 3y  
Monaspace  
Monaspace is a new type system that advances the display of code on screen. It offers a more expressive palette for code, introduces texture healing to even out the density of monospaced type, provides three axes for font customization, and includes code ligatures for various languages.  
227  
15
25. 25  
[](https://daily.dev/posts/do-we-really-need-a-backend-now-can-we-build-applications-without-backend-with-next-js-14--krdsa6jes "Do we really need a backend now? Can we build applications without backend with Next.js 14?")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 3y  
Do we really need a backend now? Can we build applications without backend with Next.js 14?  
The role of the backend in web development has been a critical component for many years. However, with the advent of frameworks like Next.js 14, the question arises whether a backend is still needed. The author presents their opinion that for many applications, a separate backend is not necessary. They discuss the use of third-party APIs, the challenges of syncing data with databases and external APIs, and the scalability issues of deploying a frontend-focused platform. They also highlight the benefits of building applications with a custom backend, such as full control and flexibility. The author recommends their blog for more information on backend technologies.  
221  
37

[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/2023/11#page","url":"https://daily.dev/posts/best-of/2023/11","name":"Best Developer Posts — November 2023","description":"The most upvoted daily.dev posts from November 2023, curated by the daily.dev community.","isPartOf":{"@type":"WebSite","url":"https://daily.dev"}},{"@type":"ItemList","@id":"https://daily.dev/posts/best-of/2023/11#items","numberOfItems":25,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://daily.dev/posts/habits-of-great-software-engineers-2cyrgleyx","name":"Habits of great software engineers"},{"@type":"ListItem","position":2,"url":"https://daily.dev/posts/a-programmer-presents-a-mind-blowing-multi-window-adaptive-experience-oklqxunjd","name":"A Programmer Presents a Mind-Blowing Multi-Window Adaptive Experience"},{"@type":"ListItem","position":3,"url":"https://daily.dev/posts/css-trick-transition-from-height-0-to-auto--wwxc8nnwz","name":"🧙‍♂️ CSS trick: transition from height 0 to auto!"},{"@type":"ListItem","position":4,"url":"https://daily.dev/posts/how-to-build-a-personal-brand-as-a-developer-ry2z6cmck","name":"How to Build a Personal Brand as a Developer"},{"@type":"ListItem","position":5,"url":"https://daily.dev/posts/what-s-new-in-javascript-in-2023-changes-with-code-examples-m5fgpok7b","name":"What's New in JavaScript in 2023 – Changes with Code Examples"},{"@type":"ListItem","position":6,"url":"https://daily.dev/posts/an-interactive-guide-to-css-grid-qaklckagh","name":"An Interactive Guide to CSS Grid"},{"@type":"ListItem","position":7,"url":"https://daily.dev/posts/why-signals-are-better-than-react-hooks-dgesd3rrx","name":"Why Signals Are Better Than React Hooks"},{"@type":"ListItem","position":8,"url":"https://daily.dev/posts/how-to-become-a-10x-dev-6z5terkqv","name":"How to Become a 10x Dev"},{"@type":"ListItem","position":9,"url":"https://daily.dev/posts/vite-5-0-is-out--mt2mszfah","name":"Vite 5.0 is out!"},{"@type":"ListItem","position":10,"url":"https://daily.dev/posts/career-mistakes-to-avoid-as-a-developer-fywm1vjc9","name":"Career Mistakes to Avoid as a Developer"},{"@type":"ListItem","position":11,"url":"https://daily.dev/posts/the-valley-of-code---your-web-development-manual-uobi7zuvr","name":"The Valley of Code - Your web development manual"},{"@type":"ListItem","position":12,"url":"https://daily.dev/posts/how-to-write-commit-messages-that-project-maintainers-will-appreciate-tb7lvujxn","name":"How to Write Commit Messages that Project Maintainers Will Appreciate"},{"@type":"ListItem","position":13,"url":"https://daily.dev/posts/how-i-teach-git-2nxqqgdar","name":"How I teach Git"},{"@type":"ListItem","position":14,"url":"https://daily.dev/posts/oop-design-patterns-in-javascript-0scu4khmr","name":"OOP Design Patterns in Javascript"},{"@type":"ListItem","position":15,"url":"https://daily.dev/posts/weekly-digest-rucnae3lu","name":"Weekly digest"},{"@type":"ListItem","position":16,"url":"https://daily.dev/posts/float-ui-v2---free-tailwind-ui-components-in-html-react-vue-svelte-lubomndvt","name":"Float UI v2 - Free Tailwind UI components in Html, React, Vue, Svelte"},{"@type":"ListItem","position":17,"url":"https://daily.dev/posts/bruno-api-client-a9nzi81bm","name":"Bruno API Client"},{"@type":"ListItem","position":18,"url":"https://daily.dev/posts/the-most-upvoted-visual-studio-code-feature-dkdoighky","name":"The Most Upvoted Visual Studio Code Feature"},{"@type":"ListItem","position":19,"url":"https://daily.dev/posts/become-a-better-developer-by-improving-your-habits-2udughi1q","name":"Become a better developer by improving your habits"},{"@type":"ListItem","position":20,"url":"https://daily.dev/posts/explaining-ssh-to-my-uber-driver-zt5ig5ne7","name":"Explaining SSH to my Uber Driver"},{"@type":"ListItem","position":21,"url":"https://daily.dev/posts/jsdoc-a-solid-alternative-to-typescript-jjazursrc","name":"JSDoc: a solid alternative to TypeScript"},{"@type":"ListItem","position":22,"url":"https://daily.dev/posts/my-software-estimation-technique-y6prr62ew","name":"My Software Estimation Technique"},{"@type":"ListItem","position":23,"url":"https://daily.dev/posts/mastering-docker-a-comprehensive-guide-cfp6aaotm","name":"Mastering Docker: A Comprehensive Guide"},{"@type":"ListItem","position":24,"url":"https://daily.dev/posts/monaspace-3mnc33tty","name":"Monaspace"},{"@type":"ListItem","position":25,"url":"https://daily.dev/posts/do-we-really-need-a-backend-now-can-we-build-applications-without-backend-with-next-js-14--krdsa6jes","name":"Do we really need a backend now? Can we build applications without backend with Next.js 14?"}]},{"@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":"November 2023"}]}]}
```

