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
    P

    Philipp Hauer

    phauer.com · Personal blog · on HN since 2019

    Philipp Hauer, a software engineer and team lead, writes about Java and Kotlin practices, code review, Docker, testing, and management.

    Visit blogHN submissions
    ProgrammingManagement
    What HN says

    Commenters call his code review guidelines a favorite and cite his posts on Jib and fat jars, checked exceptions, and API pagination.

    Stats for nerds
    17HN people shared it
    11linked in comments
    119story points
    Nov 2024last shared
    2020people per year2024

    Top posts on HN

    1. 1
      Best Practices for Testing in Java (2019)
      2 people · 107 points · first shared 2019 · 95 comments on HN
    2. 2
      I Moved Back from Gradle to Maven (2022)
      3 people · 3 points · first shared 2019 · Discussion on HN
    3. 3
      Code Review Guidelines for Humans
      3 people · 2 points · first shared 2020 · Discussion on HN
    4. 4
      Leveling Up in the Management Skill Tree
      1 person · 2 points · first shared 2021 · Discussion on HN
    5. 5
      Kotlin Best Practices
      1 person · 2 points · first shared 2019 · Discussion on HN
    6. 6
      Don't Put Fat Jars in Docker Images
      3 people · 1 points · first shared 2019 · Discussion on HN
    7. 7
      Lessons Learned from the Book “Effective Remote Work” (2022)
      1 person · 1 points · first shared 2023 · Discussion on HN
    8. 8
      Leveling Up in Job Interviews for Software Engineers (2022)
      1 person · 1 points · first shared 2023 · Discussion on HN
    9. 9
      Checked exceptions are evil
      3 people · first shared 2020
    10. 10
      Web api pagination timestamp id continuation token
      1 person · first shared 2022

    What HN people wrote when they linked it

    • angarg12Jun 2022

      I keep a running list of articles I found useful over the years. There are many great articles about Code Reviews out there. Consider this a more general answer to your question:

      Feedback Ladders: How We Encode Code Reviews at Net-lify

      https://www.netlify.com/blog/2020/03/05/feedback-ladders-how-we-encode-code-reviews-at-netlify/

      How to Make Good Code Reviews Better

      https://stackoverflow.blog/2019/09/30/how-to-make-good-code-reviews-better/

      Best Practices for Code Review

      https://smartbear.com/learn/code-review/best-practices-for-peer-code-review/

      Code Review Guidelines for Humans

      https://phauer.com/2018/code-review-guidelines/

      Unlearning toxic behaviors in a code review culture

      https://medium.com/@sandya.sankarram/unlearning-toxic-behaviors-in-a-code-review-culture-b7c295452a3c

      How to Do Code Reviews Like a Human

      https://mtlynch.io/human-code-reviews-2/

      Stop Nitpicking in Code Reviews

      https://blog.danlew.net/2021/02/23/stop-nitpicking-in-code-reviews/

    • ryan29Nov 2024

      Yeah, if the commit record acts like an audit log I think there’s a lot of value. I wonder how hard it is to get the exact environment used to build an artifact.

      I’m a big fan of this style [1] of building base containers and think that keeping the container where you’ve stacked 4 layers (up to resources) makes sense. Call it a build container and keep it forever.

      1. https://phauer.com/2019/no-fat-jar-in-docker-image/

    • hombre_fatalFeb 2020

      Checked exceptions deserve all the hate they get. It's not a good solution.

      Here's a random rant online that ends up pitching the more common solution of unchecked exceptions + exception rewrapping: https://phauer.com/2015/checked-exceptions-are-evil/. And of course, in Rust, the rewrapping is basically forced upon you making for a really nice error-handling ecosystem.

    • pestatijeJul 2023

      i do...if i ever get an IOException all i have to do is end the app, no need to deal with it in any way different than an unchecked exception

      https://phauer.com/2015/checked-exceptions-are-evil/

    • donmcronaldMar 2022

      And this is the best explanation of Jib [1], but it’s hard to find via Google. It’s how all builds for every ecosystem should work IMO.

      1. https://phauer.com/2019/no-fat-jar-in-docker-image/

    • softwarebewareJun 2022

      My favorite guide on this is https://phauer.com/2018/code-review-guidelines/

      There are also some great things in the book, Debugging Teams, like the Humility-Respect-Trust (HRT) concept.

    Related

    Dan Lewblog.danlew.net23 people

    Android: I don't need your permission

    Dan Lew
    Personal · last shared 2026
    Jan-Lukas Elsejlelse.blog16 people

    Email is the messenger you should migrate to

    Jan-Lukas Else
    Personal · last shared 2026
    Nicolas Fränkelblog.frankel.ch54 people

    Teeing, a hidden gem in the Java API

    Nicolas Fränkel
    Personal · last shared 2026
    Li Haoyilihaoyi.com141 people

    What's Functional Programming All About?

    Li Haoyi
    Personal · last shared 2026
    Phil Hagelbergtechnomancy.us59 people

    Atreus – kit to build your own mechanical keyboard

    Phil Hagelberg
    Personal · last shared 2025
    Google Testing Blogtesting.googleblog.com108 people

    Don't DRY Your Code Prematurely

    Google Testing Blog
    Company · last shared 2026
    Andreas Klingawesomekling.github.io60 people

    I quit my job to focus on SerenityOS full time

    Andreas Kling
    Personal · last shared 2025
    Kent Beckthreeriversinstitute.org30 people

    "Joel Spolksy is wrong about my work" - Kent Beck

    Kent Beck
    Personal · last shared 2015