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

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

1. 1  
[](https://daily.dev/posts/best-ai-coding-tools-for-developers-in-2024-25uixtruu "Best AI Coding Tools for Developers in 2024")  
Article  
![Avatar of builderio](https://media.daily.dev/image/upload/s--jap1dv3o--/f_auto/v1721914613/squads/builderio)builder.io · 2y  
Best AI Coding Tools for Developers in 2024  
In 2024, AI coding tools are revolutionizing software development by enabling faster, more efficient, and innovative coding processes. Key tools like GitHub Copilot, Amazon CodeWhisperer, and Codeium enhance productivity with advanced code completion, while AI code generators like Claude and ChatGPT create entire functions from natural language descriptions. Design-to-code conversion tools like Visual Copilot streamline the transformation of Figma designs into responsive code. Additionally, tools like Snyk improve code quality and security, and AI-enhanced IDEs like Cursor offer seamless integration of AI capabilities in development environments. The future of coding is increasingly AI-driven, enhancing human creativity and efficiency.

7.4K  
270
2. 2  
[](https://daily.dev/posts/8-frontend-tools-to-become-a-better-developer-4s0egm7lw "8 Frontend Tools to Become a Better Developer")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 2y  
8 Frontend Tools to Become a Better Developer  
Front-end developers can significantly boost their productivity and create high-quality applications by incorporating lesser-known tools into their workflows. Essential tools include Uiverse for UI elements, the Motion plugin for Figma, CSSFX for animations, Frontend Mentor for real-world coding challenges, GSAP for high-performance animations, CodePen for code experimentation, Polypane for multi-device previews, and Can I Use for browser compatibility checks.

5.4K  
134
3. 3  
[](https://daily.dev/posts/github-repositories-every-software-engineer-should-know-cdbxkuyqf "GitHub Repositories Every Software Engineer Should Know")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 2y  
GitHub Repositories Every Software Engineer Should Know  
The post provides a curated list of GitHub repositories valuable for software engineers at any stage of their career. Categories include RoadMaps, Books, Blogs, and Websites, Algorithms, Design Patterns, System Design, Design Resources, Projects, Tutorials, and APIs. Each category offers specific repositories that serve as educational materials and practical resources to improve various aspects of software development skills.

4.5K  
128
4. 4  
[](https://daily.dev/posts/java-roadmap-l0w41bti4 "Java Roadmap")  
Article  
![Avatar of amigoscode](https://media.daily.dev/image/upload/s--gy0uiFwe--/f_auto/v1713292319/squads/3e4ed2e0-535e-4ef9-b98c-e2a694a0da65)Amigoscode · 2y  
Java Roadmap  
A comprehensive guide for Java developers covering essential topics such as Linux, Git, IDE options (IntelliJ, Eclipse, VSCode), core Java concepts (OOP, Arrays, Polymorphism, etc.), Collections, advanced topics (Dependency Injection, Design Patterns, Multi-Threading), Exception Handling, Streams & Functional Programming, Testing, Databases, Clean Code principles, Logging, Build Tools (Maven, Gradle, Bazel), HTTP (Rest API, GraphQL), and Java frameworks (Spring Boot, Play, Quarkus).

3.3K  
80
5. 5  
[](https://daily.dev/posts/15-amazing-things-you-can-do-with-simple-javascript--jozlic1er "15 amazing things you can do with simple JavaScript 🤯")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 2y  
15 amazing things you can do with simple JavaScript 🤯  
Discover the versatile and surprising capabilities of vanilla JavaScript through practical examples. Learn how to find operating system details, prevent page refreshing, redirect users to new pages, validate emails, get the current URL, and detect mobile browsers. Additional features include handling disabled JavaScript, accessing module metadata, getting timezone offsets, setting the cursor to wait, and manipulating console messages with CSS.

3.2K  
115
6. 6  
[](https://daily.dev/posts/100-free-frontend-challenges-rwz8jfjlf "100 FREE Frontend Challenges")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 2y  
100 FREE Frontend Challenges  
The post offers a set of 100 free frontend challenges aimed at improving web development skills, focusing on HTML & CSS, with opportunities to incorporate JavaScript and other frameworks. Each challenge involves recreating a design to build a working website or web app. The goal is to foster a project-based learning approach, encouraging developers to complete all challenges and enhance their chances of landing a web development job.

2.9K  
139
7. 7  
[](https://daily.dev/posts/good-commit-vs-bad-commit-best-practices-for-git-jiamy1vki "Good Commit ✔ VS. Bad Commit ❌: Best Practices for Git")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 2y  
Good Commit ✔ VS. Bad Commit ❌: Best Practices for Git  
Good commits are crucial for maintaining a clean and understandable project history in Git. Characteristics of good commits include being atomic and focused, having descriptive messages, following conventional guidelines, being tested and verified, and being properly scoped. Conversely, bad commits are large and unfocused, have vague or misleading messages, combine unrelated changes, and contain incomplete or untested code. Best practices for good commits involve committing often but meaningfully, writing clear messages, using branches effectively, reviewing and squashing commits, and automating testing.

2.6K  
67
8. 8  
[](https://daily.dev/posts/data-structures-cheat-sheet-l3u6wbi5b "Data Structures Cheat Sheet")  
Article  
![Avatar of hn](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn)Hacker News · 2y  
Data Structures Cheat Sheet  
This guide provides an introduction to data structures and their representation in Memgraph. It explains the basics of graphs, linked lists, queues, stacks, and trees, along with examples and queries to create these data structures using Memgraph. The document also discusses tree traversal algorithms like BFS and DFS and demonstrates how to run these algorithms in Memgraph.

2.6K  
38
9. 9  
[](https://daily.dev/posts/open-source-alternatives-to-tools-you-pay-for-gxwg9u2cf "Open Source alternatives to tools you Pay for")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 2y  
Open Source alternatives to tools you Pay for  
Discover a comprehensive list of 301 open source alternatives to popular paid tools such as Firebase, Docusign, Google Analytics, Calendly, and more. These tools offer similar functionalities without the high costs, empowering developers and businesses to achieve their goals economically and efficiently.  
2K  
60
10. 10  
[](https://daily.dev/posts/50-best-websites-for-web-design-inspiration-and-ideas-6lvwsgxpm "50 Best Websites for Web Design Inspiration and Ideas")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 2y  
50 Best Websites for Web Design Inspiration and Ideas  
Discover a curated list of 50 best websites offering web design inspiration and ideas. These resources cater to various needs, from business and ecommerce to portfolios and landing pages. Sources are categorized into multipurpose, focused, and niched inspirations, including both free and paid options. Special mentions include award galleries and website builder showcases.  
2K  
34
11. 11  
[](https://daily.dev/posts/8-exciting-new-javascript-concepts-you-need-to-know-5uogbl3lh "8 Exciting New JavaScript Concepts You Need to Know")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 2y  
8 Exciting New JavaScript Concepts You Need to Know  
Explore 8 new and exciting JavaScript concepts including Optional Chaining, Nullish Coalescing, BigInt, globalThis, matchAll(), Promise.allSettled(), String.prototype.at(), and Error Cause. These features help in writing modern, efficient, and scalable code. Examples are provided for each concept to demonstrate their usage.

1.8K  
56
12. 12  
[](https://daily.dev/posts/how-to-deploy-a-web-app-drf30xgl3 "How to Deploy a Web App")  
Article  
![Avatar of freecodecamp](https://media.daily.dev/image/upload/t_logo,f_auto/v1628412854/logos/freecodecamp)freeCodeCamp · 2y  
How to Deploy a Web App  
Deploying a web application can be simplified with the right guidance. Kerollos Magdy, a Microsoft software engineer, presents a comprehensive course on the freeCodeCamp.org YouTube channel. The course covers deploying web applications using services like Azure, Render, and MongoDB Atlas. It provides step-by-step instructions, starting with free options and then delving into Azure. It also includes setting up databases, deploying backend services, and integrating frontends, offering a broad understanding of various deployment environments.

1.8K  
30
13. 13  
[](https://daily.dev/posts/cfjwej0ms)  
Article  
![Avatar of nuxtandvue](https://media.daily.dev/image/upload/s--AQhhKEtm--/f_auto/v1735316658/squads/a41f99d2-8439-4100-a646-848ba12512f6)Vuejs&Nuxtjs · 2y

1.8K  
71
14. 14  
[](https://daily.dev/posts/google-smokes-math-olympiads-and-15-crazy-tech-stories-you-missed-in-july-n6ystg80f "Google smokes math Olympiads… and 15 crazy tech stories you missed in July")  
Video  
![Avatar of fireship](https://media.daily.dev/image/upload/s--75ndqrkr--/f_auto,t_logo/v1702882094/logos/fireship.jpg)Fireship · 2y  
Google smokes math Olympiads… and 15 crazy tech stories you missed in July

1.8K  
45
15. 15  
[](https://daily.dev/posts/gsthzyezk)  
Article  
![Avatar of devsquad](https://media.daily.dev/image/upload/s--3BoAETXw--/f_auto/v1717993214/squads/8a09782e-202a-450f-afda-d4dd3ae97589)Dev Squad · 2y

1.7K  
48
16. 16  
[](https://daily.dev/posts/i-built-a-2d-game-in-40-minutes-with-ebiten-gvbwlucb3 "I Built a 2D Game in 40 Minutes with Ebiten")  
Article  
![Avatar of gc](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/gc)gitconnected · 2y  
I Built a 2D Game in 40 Minutes with Ebiten  
A business analyst who has led multiple development teams shares their experience of building a 2D game called 'Scorpions and Ferraris' in 40 minutes using Golang and the Ebiten library. The game, inspired by Frogger, features a scorpion avoiding cars to reach the other side of the screen. The post includes detailed steps for setting up the development environment, creating the game structure, and implementing game logic. Additionally, it discusses the use of Paint.net for modifying graphics.

1.7K  
62
17. 17  
[](https://daily.dev/posts/install-docmost---open-source-notion-clone-snyhuaesv "Install Docmost - Open Source Notion Clone")  
Article  
![Avatar of hn](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn)Hacker News · 2y  
Install Docmost - Open Source Notion Clone  
DocMost is an open-source alternative to Notion, aimed at providing a self-hosted knowledge base tool. The guide walks through setting up DocMost on a server using Docker and Traefik for SSL certificate management. It covers getting a root server, setting up DNS, installing DocMost, configuring Docker Compose, and details essential steps and troubleshooting tips. The setup is basic and intended for testing; for production, additional security steps are recommended.

1.6K  
66
18. 18  
[](https://daily.dev/posts/frontend-libraries-for-your-next-project-fi3cfgwtl "Frontend Libraries for Your Next Project")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 2y  
Frontend Libraries for Your Next Project  
Choosing the right tools in web development can drastically enhance productivity and user experience. Key frontend libraries to consider include AOS for scroll animations, Chart.js for data visualization, Luxon for date and time manipulation, SweetAlert2 for customizable alerts and modals, SortableJS for drag-and-drop sorting, Floating UI for dynamic tooltips and pop-overs, and FullCalendar for comprehensive calendar functionalities.

1.5K  
41
19. 19  
[](https://daily.dev/posts/clean-code-7-tips-to-write-clean-functions-yxi7yixdl "Clean Code: 7 tips to write clean functions")  
Article  
![Avatar of substack](https://media.daily.dev/image/upload/s--KFqxX_OL--/f_auto,t_logo/v1698154293/logos/substack.jpg)Substack · 2y  
Clean Code: 7 tips to write clean functions  
Writing clean functions ensures that your code is readable, maintainable, and less prone to errors. Key tips include keeping functions small and well-named, limiting parameters, reducing nesting by returning early, writing pure functions without side effects, avoiding boolean flags, and using comments sparingly. Good coding is about communication between programmers, so clarity and simplicity are paramount.

1.4K  
43
20. 20  
[](https://daily.dev/posts/learn-linux-for-beginners-from-basics-to-advanced-techniques-full-book--2alahk3od "Learn Linux for Beginners: From Basics to Advanced Techniques [Full Book]")  
Article  
![Avatar of freecodecamp](https://media.daily.dev/image/upload/t_logo,f_auto/v1628412854/logos/freecodecamp)freeCodeCamp · 2y  
Learn Linux for Beginners: From Basics to Advanced Techniques \[Full Book\]  
Learning Linux offers valuable skills in the tech industry, aiding efficiency and career transitions into fields like DevOps, Cybersecurity, and Cloud Computing. This comprehensive handbook covers basics like the Linux command line to advanced topics such as shell scripting and system administration. Examples use Ubuntu 22.04.2 LTS, but the information is broadly applicable across distributions. Key sections include an introduction to Linux, setting up your environment, and managing files, all geared toward empowering new and experienced users alike.

1.4K  
53
21. 21  
[](https://daily.dev/posts/system-design-how-to-scale-a-database-i2uidupks "System Design: How to Scale a Database")  
Article  
![Avatar of substack](https://media.daily.dev/image/upload/s--KFqxX_OL--/f_auto,t_logo/v1698154293/logos/substack.jpg)Substack · 2y  
System Design: How to Scale a Database  
Scaling a database is essential as an application grows to maintain optimal performance. Strategies include: vertical scaling, adding resources to one server; indexing, creating indexes on frequently queried columns; sharding, splitting data across different servers; vertical partitioning, separating columns into smaller tables; caching, storing frequently accessed data in a faster storage layer; replication, creating copies of the database in different regions; materialized views, pre-computing and storing complex query results; and data denormalization, introducing redundancy to optimize reads by combining tables. Each method has trade-offs and can be combined based on application needs.

1.3K  
26
22. 22  
[](https://daily.dev/posts/react-design-patterns-6mzuqvymf "React Design Patterns")  
Article  
![Avatar of community](https://media.daily.dev/image/upload/t_logo,f_auto/v1655817725/logos/community)Community Picks · 2y  
React Design Patterns  
React design patterns are essential for frontend development as they offer solutions to recurring challenges in component design. They promote consistency, modularity, and scalability by simplifying state management, logic, and element composition. Examples include custom hooks, higher-order components, and prop-based rendering techniques. These patterns not only solve technical problems but also enhance code efficiency, readability, and maintainability. This guide provides insights into various patterns like Custom Hook, HOC, Extensible Styles, Compound Components, Render Props, Control Props, Props Getters, State Initializer, and State Reducer, along with their benefits and implementation examples.

1.3K  
25
23. 23  
[](https://daily.dev/posts/css-one-liners-to-improve-almost-every-project-5fgrfpvp1 "CSS One-Liners to Improve (Almost) Every Project")  
Article  
![Avatar of devto](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/devto)DEV · 2y  
CSS One-Liners to Improve (Almost) Every Project  
This guide provides a series of CSS one-liners aimed at enhancing the appearance and readability of web content. Key tips include limiting content width, increasing text size and line height, making images responsive, and improving table readability. Additionally, the guide offers solutions for balanced heading wrapping, matching form control colors to page styles, and reducing animations based on user preferences.

1.2K  
27
24. 24  
[](https://daily.dev/posts/12-things-i-regret-not-knowing-earlier-about-python-lists-x6fhzandu "12+ Things I Regret Not Knowing Earlier About Python Lists")  
Article  
![Avatar of medium_js](https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/medium)Medium · 2y  
12+ Things I Regret Not Knowing Earlier About Python Lists  
Learn various useful techniques to handle Python lists effectively. Discover the power of the \* operator for combining and unpacking lists, the difference between .sort() and sorted(), and advanced methods like list comprehensions, .insert(), and .extend(). Understand the distinct advantages and limitations of tuples compared to lists.

1.2K  
43
25. 25  
[](https://daily.dev/posts/zed-on-linux-is-here--oqcsnj8rs "Zed on Linux is here!")  
Article  
![Avatar of lobsters](https://media.daily.dev/image/upload/s--tl8v_Fku--/f_auto,t_logo/v1698841318/logos/lobste.jpg)Lobsters · 2y  
Zed on Linux is here!  
Run the provided shell script to install Zed on most Linux distributions using the command: curl https://zed.dev/install.sh | sh.

1.2K  
119

[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/2024/07#page","url":"https://daily.dev/posts/best-of/2024/07","name":"Best Developer Posts — July 2024","description":"The most upvoted daily.dev posts from July 2024, curated by the daily.dev community.","isPartOf":{"@type":"WebSite","url":"https://daily.dev"}},{"@type":"ItemList","@id":"https://daily.dev/posts/best-of/2024/07#items","numberOfItems":25,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://daily.dev/posts/best-ai-coding-tools-for-developers-in-2024-25uixtruu","name":"Best AI Coding Tools for Developers in 2024"},{"@type":"ListItem","position":2,"url":"https://daily.dev/posts/8-frontend-tools-to-become-a-better-developer-4s0egm7lw","name":"8 Frontend Tools to Become a Better Developer"},{"@type":"ListItem","position":3,"url":"https://daily.dev/posts/github-repositories-every-software-engineer-should-know-cdbxkuyqf","name":"GitHub Repositories Every Software Engineer Should Know"},{"@type":"ListItem","position":4,"url":"https://daily.dev/posts/java-roadmap-l0w41bti4","name":"Java Roadmap"},{"@type":"ListItem","position":5,"url":"https://daily.dev/posts/15-amazing-things-you-can-do-with-simple-javascript--jozlic1er","name":"15 amazing things you can do with simple JavaScript 🤯"},{"@type":"ListItem","position":6,"url":"https://daily.dev/posts/100-free-frontend-challenges-rwz8jfjlf","name":"100 FREE Frontend Challenges"},{"@type":"ListItem","position":7,"url":"https://daily.dev/posts/good-commit-vs-bad-commit-best-practices-for-git-jiamy1vki","name":"Good Commit ✔ VS. Bad Commit ❌: Best Practices for Git"},{"@type":"ListItem","position":8,"url":"https://daily.dev/posts/data-structures-cheat-sheet-l3u6wbi5b","name":"Data Structures Cheat Sheet"},{"@type":"ListItem","position":9,"url":"https://daily.dev/posts/open-source-alternatives-to-tools-you-pay-for-gxwg9u2cf","name":"Open Source alternatives to tools you Pay for"},{"@type":"ListItem","position":10,"url":"https://daily.dev/posts/50-best-websites-for-web-design-inspiration-and-ideas-6lvwsgxpm","name":"50 Best Websites for Web Design Inspiration and Ideas"},{"@type":"ListItem","position":11,"url":"https://daily.dev/posts/8-exciting-new-javascript-concepts-you-need-to-know-5uogbl3lh","name":"8 Exciting New JavaScript Concepts You Need to Know"},{"@type":"ListItem","position":12,"url":"https://daily.dev/posts/how-to-deploy-a-web-app-drf30xgl3","name":"How to Deploy a Web App"},{"@type":"ListItem","position":13,"url":"https://daily.dev/posts/cfjwej0ms","name":""},{"@type":"ListItem","position":14,"url":"https://daily.dev/posts/google-smokes-math-olympiads-and-15-crazy-tech-stories-you-missed-in-july-n6ystg80f","name":"Google smokes math Olympiads… and 15 crazy tech stories you missed in July"},{"@type":"ListItem","position":15,"url":"https://daily.dev/posts/gsthzyezk","name":""},{"@type":"ListItem","position":16,"url":"https://daily.dev/posts/i-built-a-2d-game-in-40-minutes-with-ebiten-gvbwlucb3","name":"I Built a 2D Game in 40 Minutes with Ebiten"},{"@type":"ListItem","position":17,"url":"https://daily.dev/posts/install-docmost---open-source-notion-clone-snyhuaesv","name":"Install Docmost - Open Source Notion Clone"},{"@type":"ListItem","position":18,"url":"https://daily.dev/posts/frontend-libraries-for-your-next-project-fi3cfgwtl","name":"Frontend Libraries for Your Next Project"},{"@type":"ListItem","position":19,"url":"https://daily.dev/posts/clean-code-7-tips-to-write-clean-functions-yxi7yixdl","name":"Clean Code: 7 tips to write clean functions"},{"@type":"ListItem","position":20,"url":"https://daily.dev/posts/learn-linux-for-beginners-from-basics-to-advanced-techniques-full-book--2alahk3od","name":"Learn Linux for Beginners: From Basics to Advanced Techniques [Full Book]"},{"@type":"ListItem","position":21,"url":"https://daily.dev/posts/system-design-how-to-scale-a-database-i2uidupks","name":"System Design: How to Scale a Database"},{"@type":"ListItem","position":22,"url":"https://daily.dev/posts/react-design-patterns-6mzuqvymf","name":"React Design Patterns"},{"@type":"ListItem","position":23,"url":"https://daily.dev/posts/css-one-liners-to-improve-almost-every-project-5fgrfpvp1","name":"CSS One-Liners to Improve (Almost) Every Project"},{"@type":"ListItem","position":24,"url":"https://daily.dev/posts/12-things-i-regret-not-knowing-earlier-about-python-lists-x6fhzandu","name":"12+ Things I Regret Not Knowing Earlier About Python Lists"},{"@type":"ListItem","position":25,"url":"https://daily.dev/posts/zed-on-linux-is-here--oqcsnj8rs","name":"Zed on Linux is here!"}]},{"@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":"July 2024"}]}]}
```

