Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You've nailed it - I am an inexperienced software engineer but when I lay down the architecture of a particular problem, think about it in excrutiating detail upfront; nothing goes according to the plan. Reality hits you like a brick and new things emerge when actually writing code. Even ambiguity in requirements surface when actually implementing the logic in code. So no matter how good the requirements are, theyll definitely need additional refinement. Software Engineering is really hard I've recently discovered and I value your decades long perspective.


100% - and even the best developer may not understand all of a user's needs until they get their hands on a prototype. We should always expect to learn and pivot as we learn more about users.


I would even rephrase it that way: "even the best user may not understand all of their needs until they get their hands on a prototype."


Exactly. I've never seen a (non-trivial) requirements specification that doesn't contain holes, contradictions, imprecision, or requirements that will be dropped or altered during development.


    Everybody has a plan until they get punched in the mouth…
    
    - Mike Tyson




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: