Why developers question everything - Tim Hårek (/css/styles.ff80970c45906544a05c36c92835e0041ee5ea239e103f7973383016441f64a2.css) (https://github.com/timharek) (https://sr.ht/~timharek) (/public-key.asc) (https://www.printables.com/@timharek) (https://www.openstreetmap.org/user/timharek) (https://codeberg.org/timharek) (mailto:tim@harek.no) Skip to content (/) Home (/blog/) Blog (/about/) About (/more/) More… (/) Home (/blog/) Blog (/blog/why-developers-question-everything/) Why developers question everything (https://timharek.no) Tim Hårek Andreassen (ZgotmplZ) (Photo) (mailto:tim@harek.no) tim@harek.no (https://timharek.no/public-key.asc) PGP key Why developers question everything Published (2025-03-27T00:00:00+00:00) March 27, 2025 2 minutes read As a developer myself, I’ve noticed something about our profession that feels controversial to admit: we question everything, sometimes to the point where we might seem like we’re being difficult. And I’m not here to tell you that this is a problem, per se, it more like an observation. Bathroom renovation vs. a software integration I believe developers have a unique approach compared to other professionals. Let’s consider this comparison: Bathroom renovation Imagine you’re renovating your bathroom. The process typically goes like this: You request a quote, explaining what you want. After some back and forth, you agree on a price. Work begins and the contractor discovers unexpected issues (electrical issues, plumbing etc). They handle it, but inform you it will cost more. You agree because you want the bathroom finished. Work completes, perhaps with some delays and more price adjustments. This example feels normal. We accept that physical work involved unforeseen circumstances, and we generally trust the professionals to handle them. Software integration Now, imagine you need to integrate two systems and sync data between them: You ask a developer if it’s possible. They respond with “it depends” and list various factors. You establish that yes, it’s possible. Then the developer asks: “What’s the minimum you need for this to work?” You explain that you want everything synced. The developer asks: “Why?” (joke) You get frustrated and renovate your bathroom instead. The last question is where developers diverge from other professions. We want to take all the precautions we can to avoid future problems, we don’t just take requirements at face value – we question them, sometimes to the frustration of stakeholders. Why do we do this? It’s not uncommon to feel like you’re being difficult or a “cry-baby” when you’re met with a frustrated client that “just” wants you to do what they ask you. Software isn’t the same as physical work. You don’t need a lot of experience to know that: The cost of change in software can be exponentially higher after the implementation. Unnecessary complexity is a nightmare to maintain and kills projects. Asking a lot of questions sometimes reveals simpler solutions. It’s our responsibility to ask questions. We’re trying to save time, money, and future headaches by challenging assumptions early. The goal isn’t to avoid work – it’s to do the right work for the right reasons. Tagged with (/tags/thoughts/) #thoughts (/tags/programming/) #programming (/tags/communication/) #communication 392 words (mailto:tim@harek.no?subject=RE:%20Why%20developers%20question%20everything) Reply via email ← Previous(/blog/subscribe-via-email/) Subscribe via e-mail Next →(/blog/2025-march-recently/) March 2025 Last deploy: (2025-08-18T20:05:40Z) 2025-08-18 (/stats/) Stats (/privacy/) Privacy (/connect/) Connect (/subscribe/) Subscribe