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

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

1. 1  
[](https://daily.dev/posts/write-the-damn-code-0b6pp0hhs "Write the damn code")  
Article  
![Avatar of antonz](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/29aa129ca24545f1a698d8a206ccc372)Anton Zhiyanov · 50w  
Write the damn code  
Software engineers should avoid endless prompt refinement when working with AI and instead actively write code themselves. Rather than trying to perfect prompts to get AI to generate complete solutions, developers should engage with the code directly by refactoring AI-generated code, writing initial versions for AI review, handling critical parts manually, or creating code outlines for AI to complete. This hands-on approach produces better results than attempting to 'program in English' through prompt iteration.

1.6K  
104
2. 2  
[](https://daily.dev/posts/how-to-not-write-garbage-code-by-linus-torvalds--e7clfjdc7 "How to Not Write "Garbage Code" (by Linus Torvalds)")  
Article  
![Avatar of engineerscodex](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/fbe1aec98f16412b9f299723be70fbfc)Engineer’s Codex · 52w  
How to Not Write "Garbage Code" (by Linus Torvalds)  
Linus Torvalds criticized a Meta engineer's code for creating unnecessary abstractions that increase cognitive load. The piece argues that good code should minimize context switches and mental overhead for both humans and AI systems. Sometimes code duplication is preferable to complex helper functions when it keeps logic self-contained and easier to understand. The principle of "Please Repeat Yourself" can reduce cognitive burden, especially as AI coding tools become more prevalent.  
964  
68
3. 3  
[](https://daily.dev/posts/why-our-website-looks-like-an-operating-system-bbsm1htqb "Why our website looks like an operating system")  
Article  
![Avatar of hn](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn)Hacker News · 52w  
Why our website looks like an operating system  
PostHog redesigned their website to function like an operating system, featuring window management, keyboard shortcuts, and multitasking capabilities. The design addresses the common problem of managing multiple tabs on technical websites by allowing users to open and arrange multiple pages simultaneously within a single browser window. The implementation includes OS-inspired UI elements like file explorers, PowerPoint-style presentations, and spreadsheet layouts, built using TypeScript and Tailwind CSS with a JSON-driven content architecture.  
857  
73
4. 4  
[](https://daily.dev/posts/4c3zqvdn4)  
Article  
![Avatar of g4zjecdkxrch6byvk1iyv](https://media.daily.dev/image/upload/s--ZNKkeUvQ--/f_auto/v1762695887/avatars/avatar_g4ZJecDKXrCh6bYVK1iyV?_a=BAMAK+ZW0)Szymon Omieciński · 52w  
685  
62
5. 5  
[](https://daily.dev/posts/7-best-practices-for-api-design--z9fnjf8wy "7 Best Practices for API Design 🔥")  
Article  
![Avatar of systemdesignnews](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/eec821422ebe4672a738b8fbfa2c0dbd)System Design Newsletter · 1y  
7 Best Practices for API Design 🔥  
Seven essential practices for designing robust APIs: REST fundamentals for organizing data resources, proper error handling with clear status codes, API versioning for backward compatibility, rate limiting to prevent abuse, pagination techniques (offset vs cursor) for large datasets, idempotency to avoid duplicate processing, and filtering/sorting for efficient data retrieval. Each practice includes implementation details and trade-offs to consider.  
675  
19
6. 6  
[](https://daily.dev/posts/nc0wulprf)  
Article  
![Avatar of dev_world](https://media.daily.dev/image/upload/s--qM3M5FZK--/f_auto/v1727083541/squads/81a3df5b-e17a-41f0-ae4f-8035927c6518)Dev World · 51w  
576  
87
7. 7  
[](https://daily.dev/posts/lzs3i4kbi)  
Article  
![Avatar of nestjsdevs](https://media.daily.dev/image/upload/s--yZBul-1e--/f_auto/v1785240186/squads/318617ee-dc50-4f6c-af4d-c1555300f0aa?_a=BAMAMicg0)Nestjs Developers · 50w  
568  
45
8. 8  
[](https://daily.dev/posts/level-up-your-coding-skills-with-this-farming-game-a2ogqbxmi "Level Up Your Coding Skills With This Farming Game")  
Article  
![Avatar of 80lv](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/78eebcd76c154e6bbfd565fed7dc4093)80 LEVEL · 51w  
Level Up Your Coding Skills With This Farming Game  
The Farmer Was Replaced is a farming game that teaches programming through automation. Players use a Python-like language to program drones that handle repetitive farming tasks. The game offers continuous progression rather than isolated levels, making it beginner-friendly while still challenging experienced programmers. It launches October 10 with features like multiple drone support, expanded tech trees, and multilingual support.  
539  
32
9. 9  
[](https://daily.dev/posts/a-great-resource-for-open-source-tools-ek1ouuzec "A Great Resource for Open-Source Tools")  
Article  
![Avatar of su5hqluae4wlrb1nahjtv](https://media.daily.dev/image/upload/s--tTV8hAPq--/f_auto/v1778701721/avatars/avatar_Su5HqluAE4wLRb1naHjtv?_a=BAMAMiWQ0)Serdarcan Buyukdereli · 52w  
A Great Resource for Open-Source Tools  
A curated directory featuring over 200 open-source tools serves as an alternative discovery platform to commercial software. The directory integrates with GitHub to display real-time star counts, helping developers assess community adoption and tool popularity when building new technology stacks or replacing existing solutions.  
517  
23
10. 10  
[](https://daily.dev/posts/being-smart-is-painfull-ojxzh9joy "Being "Smart" Is Painfull")  
Article  
![Avatar of v7balm8y0o32yjz1hhf5a](https://lh3.googleusercontent.com/a/ACg8ocKR6BVy_wn23EoOKq7-BlszlcXcLmASlnb7l-GtS-q1bePnkaJf=s96-c)Fabian Letsch · 50w  
Being "Smart" Is Painfull  
A developer argues against overly clever code patterns, using a TypeScript namespace trick for component props as an example. The post explains why 'smart' code that combines component exports with prop types creates unnecessary complexity, confuses team members, breaks in edge cases, and makes code harder to maintain. The author advocates for writing boring, idiomatic code that prioritizes clarity and maintainability over cleverness.  
478  
42
11. 11  
[](https://daily.dev/posts/mitchivin-xp-yus36rfzu "MitchIvin XP")  
Article  
![Avatar of hn](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn)Hacker News · 1y  
MitchIvin XP  
An interactive portfolio website designed to mimic the Windows XP operating system interface, showcasing design, video, and UI work through a nostalgic desktop simulation built with HTML, CSS, and JavaScript.  
472  
79
12. 12  
[](https://daily.dev/posts/nwdivhrgb)  
Article  
![Avatar of dev_world](https://media.daily.dev/image/upload/s--qM3M5FZK--/f_auto/v1727083541/squads/81a3df5b-e17a-41f0-ae4f-8035927c6518)Dev World · 50w  
404  
37
13. 13  
[](https://daily.dev/posts/i-made-a-tree-visualizer-la3ciulhv "I made a tree visualizer")  
Article  
![Avatar of cassidoo](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/966796fea9ad4a66a968cfb562c59ad7)Cassidy's blog · 51w  
I made a tree visualizer  
A developer created a standalone web application for visualizing tree data structures, originally used for teaching React component hierarchies and concepts like prop drilling and context. The tool features keyboard shortcuts for node manipulation, visual effects like pulsing and drilling arrows, and the ability to save tree diagrams as images for sharing.  
373  
16
14. 14  
[](https://daily.dev/posts/australia-thinks-github-is-as-risky-for-kids-as-tiktok-5fb2xmtjo "Australia thinks GitHub is as risky for kids as TikTok")  
Article  
![Avatar of khokbmumuz4w1vbvtnmld](https://media.daily.dev/image/upload/s--XETtmu2---/f_auto/v1768495176/avatars/avatar_kHOkBMuMUz4W1VBvtNmLd?_a=BAMAMiiu0)Claudette · 49w  
Australia thinks GitHub is as risky for kids as TikTok  
The Australian government is considering age restrictions for GitHub, potentially treating it similarly to TikTok by limiting access for users under 16\. This proposal has generated controversy, with supporters citing online safety concerns while critics argue that GitHub's educational value and coding community benefits outweigh potential risks.  
366  
121
15. 15  
[](https://daily.dev/posts/ko2un0u6a)  
Article  
![Avatar of webcraft](https://media.daily.dev/image/upload/s--ZD_yYQn6--/f_auto/v1741985045/squads/ad378b4e-6140-40ea-b7d8-4c54fc2525a5)WebCraft · 50w  
356  
19
16. 16  
[](https://daily.dev/posts/before-linux-vs-after-linux-9x8sfiv8c "Before Linux Vs After Linux")  
Article  
![Avatar of fozfex577gdyioritmpyr](https://media.daily.dev/image/upload/s--JMr71Q_F--/f_auto/v1736412401/avatars/avatar_fOZFEX577GdyIORiTMpYr)Mitesh Viras · 52w  
Before Linux Vs After Linux  
A humorous take on how Linux transforms users from casual web browsers into system administrators running their own infrastructure, highlighting the learning curve and responsibilities that come with adopting Linux.  
319  
38
17. 17  
[](https://daily.dev/posts/you-don-t-need-animations-74ndqilmh "You Don't Need Animations")  
Article  
![Avatar of lobsters](https://media.daily.dev/image/upload/s--tl8v_Fku--/f_auto,t_logo/v1698841318/logos/lobste.jpg)Lobsters · 1y  
You Don't Need Animations  
Animations should serve a clear purpose rather than being added for decoration. Key considerations include frequency of use (high-frequency interactions should avoid animations), speed (UI animations should stay under 300ms), and user goals. Examples demonstrate how purposeful animations can explain features, provide feedback, or improve perceived performance, while unnecessary animations can slow down workflows and frustrate users.  
287  
16
18. 18  
[](https://daily.dev/posts/apple-has-a-private-css-property-to-add-liquid-glass-effects-to-web-content-f5m5v822c "Apple has a private CSS property to add Liquid Glass effects to web content")  
Article  
![Avatar of hn](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn)Hacker News · 51w  
Apple has a private CSS property to add Liquid Glass effects to web content  
Apple has developed a private CSS property called \`-apple-visual-effect\` that enables Liquid Glass effects in web content within iOS apps. The property supports various system materials including the new glass effects from iOS 26, but requires enabling a private WKPreferences setting called \`useSystemAppearance\`. While this feature can't be used in App Store apps due to its private nature, it suggests Apple is using webviews with native UI integration in their own applications without users realizing it.  
279  
20
19. 19  
[](https://daily.dev/posts/transforming-a-disposable-vape-into-a-functional-web-server-x3azrkosw "Transforming a Disposable Vape into a Functional Web Server")  
Article  
![Avatar of collections](https://media.daily.dev/image/upload/s--fk_6ycEi--/f_auto,q_auto/v1780996001/logos/collections?_a=BAMAMiWQ0)Collections · 51w  
Transforming a Disposable Vape into a Functional Web Server  
A creative hardware project successfully repurposed a disposable vape's PY32F002B microcontroller (24MHz ARM Cortex-M0+, 24KB flash, 3KB RAM) into a functional web server. Using semihosting communication, SLIP protocol for networking, and the uIP TCP/IP stack, the project achieved 20ms ping times and 160ms page load times through careful optimization including ring buffers. This demonstrates the potential of transforming resource-constrained everyday electronics into versatile computing devices.  
278  
27
20. 20  
[](https://daily.dev/posts/the-css-handbook-2025-edition-ffd4nmnx0 "The CSS Handbook, 2025 edition")  
Article  
![Avatar of flaviocopes](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/1f2dbd275797411bbd37bfdaaf0951a9)Flavio Copes · 1y  
The CSS Handbook, 2025 edition  
Flavio Copes has released an updated 2025 edition of his CSS Handbook, covering modern CSS features like container queries, cascade layers, CSS nesting, and new color spaces. The comprehensive guide spans from fundamentals like selectors and the box model to advanced topics including CSS Grid, responsive design, animations, and best practices for maintainable code.  
254  
16
21. 21  
[](https://daily.dev/posts/go-is-2-among-newer-languages-kqlivsg4y "Go is #2 among newer languages")  
Article  
![Avatar of antonz](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/29aa129ca24545f1a698d8a206ccc372)Anton Zhiyanov · 50w  
Go is #2 among newer languages  
Programming language rankings for newer languages (version 1.0 released after 2010) show TypeScript leading, followed by Go in second place, then Rust, Kotlin, Dart, and Swift. The analysis combines data from IEEE, Stack Overflow, and Languish rankings, highlighting TypeScript's dominance and Go's strong position for backend development.  
247  
29
22. 22  
[](https://daily.dev/posts/superfile-is-a-command-line-file-manager-you-ll-enjoy-using-o3hsdaf5h "SuperFile is a Command-Line File Manager You’ll Enjoy Using")  
Article  
![Avatar of omgub](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/79e495adb3c3425785b9be27969a2562)omg! ubuntu! · 1y  
SuperFile is a Command-Line File Manager You’ll Enjoy Using  
SuperFile is a modern terminal file manager written in Go that offers a colorful, icon-rich interface as an alternative to traditional tools like Midnight Commander. It features multiple panels, keyboard-driven navigation, vim-compatible keybindings, and integrates with external editors while maintaining simplicity and usability for command-line file operations.  
252  
8
23. 23  
[](https://daily.dev/posts/996-cgp3bzppf "996")  
Article  
![Avatar of mitsuhiko](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/a7ee3aca0fbd455ea7510f79c0dd61fe)Armin Ronacher · 1y  
996  
A critique of the 996 work culture (9am-9pm, 6 days a week) promoted by some tech companies and founders. The author argues that while intensity and dedication matter, sustainable productivity comes from output rather than hours worked. Excessive work schedules lead to burnout and are particularly problematic when founders impose them on employees who lack the same risks and leverage. True success requires balancing professional commitment with personal life and well-being.  
242  
38
24. 24  
[](https://daily.dev/posts/devops-full-course-build-and-deploy-a-scalable-production-ready-api-xz7rcmo0n "DevOps Full Course | Build and Deploy a Scalable Production Ready API")  
Video  
![Avatar of javascriptmastery](https://media.daily.dev/image/upload/s--i6Ls5Q5_--/f_auto/v1724338715/logos/javascriptmastery)JavaScript Mastery · 52w  
DevOps Full Course | Build and Deploy a Scalable Production Ready API  
A comprehensive DevOps course covering fundamentals through production deployment. Teaches Git version control, CI/CD pipelines with GitHub Actions, Docker containerization, Kubernetes orchestration, and infrastructure as code. Includes hands-on project building a production-ready API with authentication, database integration, monitoring, and security features using modern tools like PostgreSQL, Neon DB, and Arkjet.  
241  
8
25. 25  
[](https://daily.dev/posts/my-first-6-hours-with-rust-74vd3pz4v "My first 6 hours with Rust")  
Article  
![Avatar of shaaf](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/0b296c189bd840d99decdb5078460675)Shaaf · 1y  
My first 6 hours with Rust  
A beginner's exploration of Rust fundamentals after 6 hours of learning, covering key concepts like ownership, borrowing, structs, enums, and memory management. The author compares Rust's unique ownership system to Java's garbage collection, explains how references work with borrowing rules, and demonstrates practical examples of data structures and method implementations. The post highlights Rust's safety guarantees through compile-time checks and its approach to modularity with default privacy.  
239  
13

[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/2025/09#page","url":"https://daily.dev/posts/best-of/2025/09","name":"Best Developer Posts — September 2025","description":"The most upvoted daily.dev posts from September 2025, curated by the daily.dev community.","isPartOf":{"@type":"WebSite","url":"https://daily.dev"}},{"@type":"ItemList","@id":"https://daily.dev/posts/best-of/2025/09#items","numberOfItems":25,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://daily.dev/posts/write-the-damn-code-0b6pp0hhs","name":"Write the damn code"},{"@type":"ListItem","position":2,"url":"https://daily.dev/posts/how-to-not-write-garbage-code-by-linus-torvalds--e7clfjdc7","name":"How to Not Write \"Garbage Code\" (by Linus Torvalds)"},{"@type":"ListItem","position":3,"url":"https://daily.dev/posts/why-our-website-looks-like-an-operating-system-bbsm1htqb","name":"Why our website looks like an operating system"},{"@type":"ListItem","position":4,"url":"https://daily.dev/posts/4c3zqvdn4","name":""},{"@type":"ListItem","position":5,"url":"https://daily.dev/posts/7-best-practices-for-api-design--z9fnjf8wy","name":"7 Best Practices for API Design 🔥"},{"@type":"ListItem","position":6,"url":"https://daily.dev/posts/nc0wulprf","name":""},{"@type":"ListItem","position":7,"url":"https://daily.dev/posts/lzs3i4kbi","name":""},{"@type":"ListItem","position":8,"url":"https://daily.dev/posts/level-up-your-coding-skills-with-this-farming-game-a2ogqbxmi","name":"Level Up Your Coding Skills With This Farming Game"},{"@type":"ListItem","position":9,"url":"https://daily.dev/posts/a-great-resource-for-open-source-tools-ek1ouuzec","name":"A Great Resource for Open-Source Tools"},{"@type":"ListItem","position":10,"url":"https://daily.dev/posts/being-smart-is-painfull-ojxzh9joy","name":"Being \"Smart\" Is Painfull"},{"@type":"ListItem","position":11,"url":"https://daily.dev/posts/mitchivin-xp-yus36rfzu","name":"MitchIvin XP"},{"@type":"ListItem","position":12,"url":"https://daily.dev/posts/nwdivhrgb","name":""},{"@type":"ListItem","position":13,"url":"https://daily.dev/posts/i-made-a-tree-visualizer-la3ciulhv","name":"I made a tree visualizer"},{"@type":"ListItem","position":14,"url":"https://daily.dev/posts/australia-thinks-github-is-as-risky-for-kids-as-tiktok-5fb2xmtjo","name":"Australia thinks GitHub is as risky for kids as TikTok"},{"@type":"ListItem","position":15,"url":"https://daily.dev/posts/ko2un0u6a","name":""},{"@type":"ListItem","position":16,"url":"https://daily.dev/posts/before-linux-vs-after-linux-9x8sfiv8c","name":"Before Linux Vs After Linux"},{"@type":"ListItem","position":17,"url":"https://daily.dev/posts/you-don-t-need-animations-74ndqilmh","name":"You Don't Need Animations"},{"@type":"ListItem","position":18,"url":"https://daily.dev/posts/apple-has-a-private-css-property-to-add-liquid-glass-effects-to-web-content-f5m5v822c","name":"Apple has a private CSS property to add Liquid Glass effects to web content"},{"@type":"ListItem","position":19,"url":"https://daily.dev/posts/transforming-a-disposable-vape-into-a-functional-web-server-x3azrkosw","name":"Transforming a Disposable Vape into a Functional Web Server"},{"@type":"ListItem","position":20,"url":"https://daily.dev/posts/the-css-handbook-2025-edition-ffd4nmnx0","name":"The CSS Handbook, 2025 edition"},{"@type":"ListItem","position":21,"url":"https://daily.dev/posts/go-is-2-among-newer-languages-kqlivsg4y","name":"Go is #2 among newer languages"},{"@type":"ListItem","position":22,"url":"https://daily.dev/posts/superfile-is-a-command-line-file-manager-you-ll-enjoy-using-o3hsdaf5h","name":"SuperFile is a Command-Line File Manager You’ll Enjoy Using"},{"@type":"ListItem","position":23,"url":"https://daily.dev/posts/996-cgp3bzppf","name":"996"},{"@type":"ListItem","position":24,"url":"https://daily.dev/posts/devops-full-course-build-and-deploy-a-scalable-production-ready-api-xz7rcmo0n","name":"DevOps Full Course | Build and Deploy a Scalable Production Ready API"},{"@type":"ListItem","position":25,"url":"https://daily.dev/posts/my-first-6-hours-with-rust-74vd3pz4v","name":"My first 6 hours with Rust"}]},{"@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 2025"}]}]}
```

