Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    M

    Making Good Software

    makinggoodsoftware.com · Personal blog · on HN since 2009

    A programmer's blog offering advice on code quality, unit testing, team decisions, and non-technical skills for software developers.

    Visit blogHN submissions
    ProgrammingCareer & Work
    What HN says

    HN commenters link it in debates over TDD and code comments, including its post arguing that comments are evil.

    Stats for nerds
    17HN people shared it
    80linked in comments
    471story points
    Nov 2015last shared
    2009people per year2015

    Top posts on HN

    1. 1
      The evil unit test.
      2 people · 77 points · first shared 2012 · 52 comments on HN
    2. 2
      Non-technical mistakes made by programmers
      1 person · 39 points · first shared 2009 · 13 comments on HN
    3. 3
      The best bug tracking system. Don’t raise bugs, write an automated test
      1 person · 37 points · first shared 2010 · 41 comments on HN
    4. 4
      Things they never teach in college about programming.
      1 person · 34 points · first shared 2010 · 22 comments on HN
    5. 5
      The four golden rules to be a better software developer.
      2 people · 31 points · first shared 2009 · 8 comments on HN
    6. 6
      How to write readable code? 5 Tips to improve your code readability.
      1 person · 27 points · first shared 2009 · 17 comments on HN
    7. 7
      How to judge the candidate you are interviewing
      1 person · 24 points · first shared 2009 · 33 comments on HN
    8. 8
      Demystifying agile, top 7 myths.
      1 person · 19 points · first shared 2010 · 16 comments on HN
    9. 9
      Tips for naming variables
      1 person · 11 points · first shared 2009 · 22 comments on HN
    10. 10
      How to write efficient unit tests. 5 principles for unit testing.
      1 person · 10 points · first shared 2011 · Discussion on HN

    What HN people wrote when they linked it

    • struppiNov 2015

      My point is: If TDD leads you to bad design you're doing it wrong. You are probably not listening to your tests and you are probably not taking care to refactor towards a better design. Maybe you are even writing bad unit tests [1].

      BTW, if any technique in software development leads you to bad design, and you don't stop and try to improve something, you're doing software development wrong. If a technique does not help you, you have two possibilities: Trying to do it better (maybe with outside help), or trying something different.

      [1] http://www.makinggoodsoftware.com/2012/01/27/the-evil-unit-test/

    • mattybJul 2009

      #1: Definitely agree, I'm surprised I don't hear this more often.

      #2: ...Make him code using the same tools he would use in the position he is applying for....

      What sort of tools is he referring to? I've always been given free reign on my work box, and I put what I want on it. It has to be interoperable, of course.

      #3: Good idea, but why leave and come back? Why not just have them talk you through it? I much prefer interactive interviews.

      #4: Make sure their personal website doesn't have a link to their Google Apps verification page.

      http://www.makinggoodsoftware.com/google50f905a7cdbdd588html/

    • albertoGJun 2009

      Please read this other post for details in what I mean when I say that "comments are evil" http://makinggoodsoftware.com/2009/06/06/comments-are-evil/

    Related

    Toolbox Blogsit.toolbox.com48 people

    Why PostgreSQL doesn't have query hints

    Toolbox Blogs
    Publication · last shared 2020
    Better Programmingbetterprogramming.pub319 people

    Three programmers got fired, including me, due to a single app crash

    Better Programming
    Publication · last shared 2025
    Rachel Krollrachelbythebay.com493 people

    fork() can fail

    Rachel Kroll
    Personal · last shared 2026
    Google Testing Blogtesting.googleblog.com108 people

    Don't DRY Your Code Prematurely

    Google Testing Blog
    Company · last shared 2026
    Refactoring Englishrefactoringenglish.com31 people

    How to write blog posts that developers read

    Refactoring English
    Personal · last shared 2026
    Terrible Softwareterriblesoftware.org27 people

    Don't avoid workplace politics

    Terrible Software
    Personal · last shared 2026
    programming is terribleprogrammingisterrible.com124 people

    Write code that is easy to delete, not easy to extend

    programming is terrible
    Personal · last shared 2026
    Dan Luudanluu.com1.2k people

    We only hire the trendiest

    Dan Luu
    Personal · last shared 2026