Best of General ProgrammingSeptember 2025

  1. 1
    Article
    Avatar of lobstersLobsters·35w

    If I hear "design pattern" one more time, I'll go mad

    A critical examination of design patterns in software development, arguing that many patterns are overcomplicated names for simple programming concepts. The author contends that patterns like Command (which is just a function) and Strategy (which is just an interface) create unnecessary cognitive overhead and that developers naturally arrive at these solutions through iterative design without needing formal pattern terminology. The piece advocates for focusing on underlying principles rather than memorizing pattern names, suggesting that good architecture emerges from composing language features to solve problems rather than following prescribed patterns.

  2. 2
    Article
    Avatar of hnHacker News·36w

    Just Play

    Kazeta is a specialized operating system designed to recreate the simple console gaming experience of the 1990s on modern PC hardware. It aims to eliminate complexity by providing an insert-and-play interface similar to classic gaming consoles.

  3. 3
    Article
    Avatar of palindromeThe Palindrome·36w

    The Competitive Programmer's Introduction to Graph Theory

    A comprehensive introduction to graph theory fundamentals covering nodes, edges, paths, and cycles. Explains key concepts like connectivity, directed and weighted graphs, trees, node degrees, and graph coloring including bipartite graphs. Includes practical examples with visual illustrations and practice problems to reinforce learning.

  4. 4
    Article
    Avatar of thedailywtfThe Daily WTF·34w

    The Getter Setter Getter

    A Java code example demonstrates poor naming conventions where a getter method calls a setter method, neither of which actually gets or sets values. The real issue is converting a Java DTO object to a Map<String,String>, which indicates discomfort with object-oriented programming and creates unnecessary complexity when Java already provides transparent serialization capabilities.

  5. 5
    Article
    Avatar of watercoolerWatercooler·32w

    A reminder to appreciate all open source maintainers

  6. 6
    Article
    Avatar of rubylaRUBYLAND·32w

    A catalog of coding challenges

    A comprehensive catalog of different types of coding challenges, from LeetCode and algorithm practice to holiday competitions, code golf, and programming games. The author explores various categories including interview prep platforms, language-specific challenges, engineering-oriented problems, and competitive programming. While acknowledging that coding challenges can be fun and educational, the piece argues they may not be the most effective use of time for developers with limited hours or specific career goals. Instead, it suggests publicly sharing work through blog posts, open-source contributions, and community engagement as more valuable alternatives for skill development and networking.

  7. 7
    Article
    Avatar of milanjovanovicMilan Jovanović·34w

    Vertical Slice Architecture Is Easier Than You Think

    Vertical Slice Architecture organizes .NET code by business features instead of technical layers, keeping all related functionality for a feature in one place. This approach reduces the need to navigate across multiple folders when implementing or modifying features, making codebases easier to understand and maintain. The article demonstrates this with a practical example of implementing a user data export feature, showing how everything from validation to business logic can be contained within a single feature slice.

  8. 8
    Article
    Avatar of newstackThe New Stack·32w

    Python Dataclasses: A Complete Guide to Boilerplate‑Free Objects

    Python dataclasses provide a streamlined way to create structured objects with minimal boilerplate code. They automatically generate common methods like __init__, __repr__, and __eq__, support type hints for better code safety, and offer advanced features like immutability, ordering, and memory optimization through slots. Dataclasses are ideal for configuration objects, data transfer objects in APIs, and domain entities where you need multiple instances of structured data with the same fields.

  9. 9
    Article
    Avatar of planetpythonPlanet Python·32w

    TIL: Loading .env files with uv run

    The uv package manager includes built-in support for loading environment variables from .env files using the --env-file flag with uv run, eliminating the need for python-dotenv dependency. This feature allows developers to specify different environment files for various deployment stages and works seamlessly with frameworks like FastAPI.