Best of General Programming — 2024
- 1
- 2
- 3
Tech World With Milan·2y
What is Clean Architecture?
Clean Architecture promotes the idea of modular, testable, and maintainable code. It emphasizes separating concerns and defining clear boundaries between system components. Clean Architecture is suitable for complex or long-lived applications, projects with a central domain model, and teams that prioritize clean code practices.
- 4
DEV·2y
I'm tired of it
AI-generated content is pervasive, often creating bland, inaccurate articles that lack true value. The author criticizes this trend, emphasizing the importance of human-crafted content that showcases effort and unique perspectives. Highlighting examples of pointless AI-generated articles and the inefficiency of email communication due to AI, the appeal is to maintain authenticity and personal touch in writing.
- 5
Community Picks·2y
Ultimate Cheat for Developers
The post provides an extensive list of programming languages, tools, and platforms beneficial for developers such as Python, JavaScript, Docker, Terraform, and more. It includes a variety of software, from code editors and IDEs to productivity tools and game development applications.
- 6
- 7
Javarevisited·1y
S.O.L.I.D Principle Part 1
An introduction to the S.O.L.I.D principles which are fundamental for software design patterns. This part covers the Single Responsibility Principle, Open Closed Principle, and Liskov Substitution Principle, explaining how these principles enhance flexibility, maintainability, and modularity in code. Examples and practical use cases are provided to illustrate these principles.
- 8
daily.dev Changelog·2y
Verified company badge
Introducing a new feature for daily.dev profiles: the Verified Company Badge. This badge showcases your company’s name and logo prominently on your profile, enhancing credibility, visibility, and community connection. With 1 in 50 developers on daily.dev, it's easier to identify colleagues and network with others in the industry.
- 9
DEV·2y
S.O.L.I.D: The 5 Golden Rules to Level Up Your Coding Skills
Learn about the S.O.L.I.D principles, including the Single Responsibility Principle, Open-Closed Principle, Liskov Substitution Principle, Interface Segregation Principle, and Dependency Inversion Principle. These principles help in writing more maintainable, scalable, and flexible code.
- 10
- 11
- 12
DEV·2y
Part 1: What is Clean Architecture?
Clean Architecture, introduced by Robert C. Martin, aims to create systems that are easy to understand, flexible, and maintainable by emphasizing separation of concerns. It organizes code into concentric circles, where dependencies only flow inward, ensuring modularity and testability. The architecture allows for improved testability, flexibility, maintainability, reusability, and scalability by keeping business logic decoupled from external dependencies like frameworks and databases.
- 13
YouTube·1y
7 Design Patterns EVERY Developer Should Know
Forest explains seven key software design patterns, categorized into creational, structural, and behavioral types. He provides practical examples and analogies for Singleton, Builder, Factory, Facade, Adapter, Strategy, and Observer patterns, highlighting their uses, benefits, and drawbacks. The patterns are presented as solutions to common programming problems, with a focus on when and how to use them effectively.
- 14
- 15
Awesome Java Newsletter·2y
DESIGN PATTERNS : A Deep Dive into Common Design Patterns
Design patterns are reusable solutions to common design problems encountered in software development. They offer templates involving classes, interfaces, and relationships between them. Key types of design patterns include Creational, Structural, and Behavioral patterns. Each category provides specific solutions like Singleton, Builder, Factory Method, Adapter, Facade, Iterator, Strategy, and Observer patterns. Examples illustrating how these patterns can be implemented are provided to showcase their practical applications.
- 16
Web Dev Simplified·2y
How To Use Libraries Like A Senior Dev
Learn how to structure your code effectively using adapter and facade patterns to simplify database queries and improve maintainability in large projects. Kyle from Web Dev Simplified compares two project structures, showing the pros and cons of each approach, and highlights the importance of centralizing code and creating abstractions to make refactoring and library changes easier.
- 17
Indently·2y
Learn Python OOP in under 20 Minutes
Learn about classes in Python, including creating and using them, with practical examples such as a microwave manufacturer. Understand key concepts like the class keyword, camel case naming convention, type annotations, initializers, instance creation, self keyword, methods for class functionality, and Dunder methods for defining class operations and representations.
- 18
C/C++ Community·2y
C++ Mastery Roadmap: From Foundations to Advanced Applications
A comprehensive roadmap to learning C++, covering foundational concepts, intermediate features, data structures and algorithms, advanced topics like low-level programming and GUI development with SDL, and best practices including code quality, testing, and deployment.
- 19
- 20
Community Picks·2y
Should We Use ChatGPT as Developers?
Developers should consider using GPT tools like ChatGPT primarily to enhance rather than replace their learning. Early-career developers are advised to avoid using GPT to ensure they gain crucial problem-solving skills through experience. For those with a solid understanding, GPT can be a valuable time-saver for specific, well-defined tasks. The key is to use GPT to augment development skills, not fully depend on it, while being mindful of real-world project complexities and sensitive data handling.
- 21
DEV·2y
Practical Guide to Creating a Design System
Creating a design system involves selecting a suitable UI framework, defining both light and dark themes, and organizing the system into a reusable package. Using tools like Storybook for documentation and ensuring regression UI testing minimizes unexpected issues. Avoid custom CSS and components to reduce complexity and maintenance costs. While initially labor-intensive, this approach significantly reduces the marginal cost of developing new front-end pages.
- 22
- 23
Community Picks·2y
Prompt Engineering For Developers: 11 Concepts and Examples 🎯🧙♂️⚡
Prompt engineering involves refining inputs to AI models like ChatGPT to get optimal responses. Key techniques include making prompts specific, using active voice, giving models time to think, avoiding prompt injections, and utilizing few-shot and zero-shot prompting. It also involves setting constraints, reducing hallucinations, using delimiters, refining prompts iteratively, testing changes systematically, and asking the model to adopt a persona for better context and relevance.
- 24
Web Accidents·2y
Building a SOLID Pokémon Game in React: A Developer’s Adventure!
This post explores how to build a Pokémon game in React by applying SOLID principles. It provides examples of breaking down components for Single Responsibility, using Higher-Order Components for Open/Closed, a base component for Liskov Substitution, and context for Dependency Inversion. The post includes a cheatsheet summarizing each SOLID principle with practical tips.
- 25
DEV·2y
How to review as a Pro
A good code review process can enrich team collaboration and personal development. Avoiding unproductive practices like nitpicking code style and having a considerate attitude are crucial. Focus on reviewing the logic and language usage, and automate mundane tasks using linters. Establish structured processes to manage code reviews efficiently and ensure constructive feedback. Finally, steps to help reviewers include providing clear PR descriptions and avoiding large pull requests.

