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

When I work on a large piece of software I use techniques like this to build a model of the software in my mind. The various layers seem like physical objects or places in my mind. It is a hard point for me to articulate but when I know a software code base really well I am able to immediately answer question about whether certain things are or are not possible. I always thought of this as the "topology" of the solution. I know that is why I have a preference for certain design decisions. Some software seems like a well designed house with layers that do one thing really well and can offer strict guarantees about the state of the system.

Sometimes I am asked to do things to the software that conjure up images of mobius strips or klein bottles and I cringe. Only because of what it is doing to my mental model.



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

Search: