Best of General ProgrammingJune 2024

  1. 1
    Article
    Avatar of devtoDEV·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.

  2. 2
    Article
    Avatar of javarevisitedJavarevisited·2y

    15 LeetCode problems to get better at Linked List

    This post provides a list of 15 LeetCode problems to help improve coding skills related to linked lists. It covers a range of topics and provides descriptions, hints, and solution links for each problem. It also offers tips for solving linked list problems and recommends additional coding interview resources.

  3. 3
    Article
    Avatar of lobstersLobsters·2y

    Don’t Refactor Like Uncle Bob. Please

    An article discussing the flaws in Uncle Bob's approach to refactoring code and his implementation of his own principles. The author suggests that readers should come up with their own refactorings and take Uncle Bob's principles with a grain of salt.

  4. 4
    Article
    Avatar of dailydoseofdsDaily Dose of Data Science | Avi Chawla | Substack·2y

    20 Most Common Magic Methods

    Discover the 20 most common magic methods used in Python OOP, including __new__, __init__, and __str__. Learn how to use these methods and their importance in Python projects.

  5. 5
    Article
    Avatar of communityCommunity Picks·2y

    Profiling and Optimizing Node.js Application Performance

    Learn how to identify and fix performance bottlenecks in your Node.js application. Discover optimization strategies to streamline CPU-intensive tasks, reduce memory footprint, and enhance I/O efficiency.

  6. 6
    Article
    Avatar of communityCommunity Picks·2y

    The Senior Engineer's Guide to Code Reviews

    This post discusses the importance of code reviews, the impact of long review cycles on lead time, and strategies for making code reviews more effective and efficient. It also introduces the DORA metrics and highlights the role of constructive feedback and a positive feedback culture in improving code quality and team morale.

  7. 7
    Article
    Avatar of freecodecampfreeCodeCamp·2y

    How to Become a Technical Writer – A Guide for Developers

    Combining technical knowledge with writing skills, developers can pursue a lucrative career in technical writing. The role involves simplifying complex tech concepts for various audiences through documentation, user manuals, guides, and more. To start, writing on open platforms, building a portfolio, and sharing work on social media are key steps. Engaging with publications, contributing to open-source projects, and finding paid projects can further bolster a technical writing career. Upskilling through relevant courses and paying attention to editorial feedback are also crucial for improvement.

  8. 8
    Article
    Avatar of trunkioTrunk.io·2y

    Why you should embrace tech debt

    Tech debt isn't inherently bad. It can provide leverage to move faster if managed correctly. Not all tech debt needs immediate attention; it should be fixed if it hampers team productivity. Prematurely optimizing for scale is less important than achieving market fit and gaining customers, who typically don't care about the internal technology. Ensure you take on tech debt wisely and have a plan for addressing it later.

  9. 9
    Article
    Avatar of communityCommunity Picks·2y

    Turborepo 2.0

    Turborepo 2.0 enhances the developer experience for JavaScript and TypeScript repositories with a new terminal UI, Watch Mode, and improved documentation. The new terminal UI allows for interactive tasks and clearer logs, while Watch Mode ensures dependency-aware task watching. The release also updates licensing to the MIT license and introduces a Long Term Support policy. Significant breaking changes include updates to `turbo.json` configuration and stricter environment variable handling. Users can upgrade to the latest version using `npx @turbo/codemod migrate`.

  10. 10
    Video
    Avatar of t3dotggTheo - t3․gg·2y

    How React Query Won

    React Query is an async state manager that simplifies data fetching and server state management in React applications. It addresses the problems of repetitive code, data duplication, and lack of predictability in fetching data. With React Query, developers can easily fetch data, manage loading and error states, and sync server state with client state. It eliminates the need for complex state machines and provides a simple, intuitive solution for handling async operations in React.

  11. 11
    Article
    Avatar of communityCommunity Picks·2y

    Not 💩, here's how to write actually good commit messages (hint: It's not just adding commit-lint)

    Good commit messages have serious gains, including easier debugging, code reviews, and better release notes. They also encourage better practices across the team.

  12. 12
    Article
    Avatar of hordeHorde·2y

    🎉 Celebrating 1,000 Web Dev Warriors! 🎉

    OrcDev celebrates reaching 1,000 members in their Web Dev Warriors group, highlighting the importance of community and collective growth. Gratitude is expressed and motivation for future milestones is encouraged.

  13. 13
    Article
    Avatar of trunkioTrunk.io·2y

    The dreaded "Does this scale?" question

    Worrying about whether your application can handle massive scaling is premature if you don't yet have product-market fit, a go-to-market strategy, or a significant user base. Focusing on potential tech debt is not helpful at early stages; instead, concentrate on finding and growing your user base first, and deal with scaling issues if and when they arise.

  14. 14
    Article
    Avatar of communityCommunity Picks·2y

    Blockchain Fundamentals #1: What is a Merkle Tree?

    Learn about Merkle Trees, a data structure used for summarizing and verifying data integrity. Discover how hashing functions work and the advantages of using Merkle Trees in blockchain technology.

  15. 15
    Article
    Avatar of communityCommunity Picks·2y

    You probably don’t need microservices

    Microservices offer benefits like scalability and independent team operations, but also bring added complexity and costs. The post discusses real-world examples where companies faced challenges like high maintenance overhead, performance issues, and complexity in managing numerous services. Before adopting microservices, consider if they are the right fit for your organization, as sometimes simpler architectures like monoliths may be more effective.

  16. 16
    Video
    Avatar of codeheimcodeHeim·2y

    #41 Golang - Master Dependency Injection in Go

    Learn about dependency injection in Go and how it can make code easier to change and test. See how to implement dependency injection using interfaces and structures. Explore a bakery example to understand the concept.

  17. 17
    Article
    Avatar of communityCommunity Picks·2y

    Has UML Died Without Anyone Noticing?

    UML, once a standard for software modeling, has seen a decline in use, particularly due to the rise of Agile methodologies and user stories which favor production-ready code over structured problem analysis. While lightweight modeling techniques like C4 and informal 'masala diagrams' are now commonly used, the discipline of formal business analysis and engineering in software development has diminished, creating a shift towards more flexible but less rigorously defined design practices.

  18. 18
    Article
    Avatar of hnHacker News·2y

    Introduction to the Odin Programming Language

    Introduction to the Odin Programming Language. It aims to be a modern alternative to C, addressing its limitations and providing additional features. It supports compiled, manually managed, statically typed code, making it suitable for systems programming and game development. The article covers topics such as installation, basic syntax, variables, loops, control flow, data structures, manual memory management, and more.

  19. 20
    Article
    Avatar of javarevisitedJavarevisited·2y

    Sealed classes and interfaces in Java

    Sealed classes and interfaces in Java allow developers to control which classes can extend or implement them, providing a more structured and secure approach to class hierarchies.

  20. 21
    Article
    Avatar of graphitedevGraphite.dev·2y

    How Google migrated billions of lines of code from Perforce to Piper

    Google migrated from Perforce to Piper, their custom-built version control system, over four years to handle the immense scale of their codebase. Perforce's single server was struggling with the load, motivating the shift. This migration was complex due to Perforce's deep integration into Google's engineering environment and included production dependencies. The switch to Piper reduced operational risks and paved the way for new systems. The effort reflects not just Google's resources, but its engineering resilience and innovation.

  21. 22
    Article
    Avatar of devtoDEV·2y

    Release Radar · May 2024 Edition: Major updates from the open source community

    Release Radar May 2024 highlights major updates from the open source community, including Angular 18.0, Web Check 1.0, Apache Skywalking 10.0, Grafana 11.0, Tasmota 14.0, croc 10.0, ρμ 4.0, Social Switch 1.0, Simple Icons 12.0, and NetBox 4.0.