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.

What HN saysCommenters call his code review guidelines a favorite and cite his posts on Jib and fat jars, checked exceptions, and API pagination.
17HN people shared it
9linked it in comments
11stories submitted
119story points
3 months agolast shared
2019people per year2026

Most-shared posts

  1. 1
    I Moved Back from Gradle to Maven (2022)
    3 people · 3 points · first shared 2019 · discussion on HN
  2. 2
    Code Review Guidelines for Humans
    3 people · 2 points · first shared 2020 · discussion on HN
  3. 3
    Don't Put Fat Jars in Docker Images
    3 people · 1 points · first shared 2019 · discussion on HN
  4. 4
    Checked exceptions are evil
    3 people · first shared 2020
  5. 5
    Best Practices for Testing in Java (2019)
    2 people · 107 points · first shared 2019 · 95 comments on HN
  6. 6
    Kotlin Best Practices
    1 people · 2 points · first shared 2019 · discussion on HN
  7. 7
    Leveling Up in the Management Skill Tree
    1 people · 2 points · first shared 2021 · discussion on HN
  8. 8
  9. 9
  10. 10

What HN people wrote when they linked it

softwarebeware · 2022-06-27
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.
donmcronald · 2022-03-08
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/
ryan29 · 2024-11-17
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/
pestatije · 2023-07-14
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/
pragmatic · 2022-05-28
Continuation Token is a better term than cursor at it avoids confusion with DB cursors. https://phauer.com/2018/web-api-pagination-timestamp-id-continuation-t…
vegai_ · 2022-01-13
Here's some hyperbole to help understand the issue: https://phauer.com/2015/checked-exceptions-are-evil/
hombre_fatal · 2020-02-03
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.
angarg12 · 2022-06-27
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… How to Make Good Code Reviews Better https://stackoverflow.blog/2019/09/30/how-to-make-good-code-reviews-be… Best Practices for Code Review https://smartbear.com/learn/code-review/best-practices-for-peer-code-r… 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-c… 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/

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close