9 laws of making software for business people

These seem to be obvious, but if so - why do I every now and then meet people who seem capable but ignore them happily?

  1. There’s a difference between software create by student who just did 3 days-long training and professional developer that has already created several applications using given technology. Significant difference. Humongous one - usually like between cardboard box under a bridge and a new villa.
  2. Creating crapware and then investing money to raise it to acceptable  quality level by applying test->fix cycle is dumb like a jar of nails.
  3. Time-boxing mixed with increasing scope will ALWAYS result in decreased quality.
  4. Temporary solutions are the ones to last the longest.
  5. If you re-assign Java developer to COBOL work, his productivity won’t really sustain (unless he’s fully capable in antiques). And you may end with a knife in a liver.
  6. Eskimos have 12 different words to name snow. Developers have 12 meanings for 1 single word "done".
  7. Business people are not the ones to design software. They are to say "what" has to be achieved, not "how" it will be achieved.
  8. There’s a significant difference between Analyst and Chronicler - the first one is supposed to think and abstract models. The latter is the one obliged to depict the reality directly. Hint: chroniclers shouldn’t participate in software development.
  9. Security and authorization models are so annoying because they are  meant to protect you from yourself.
Sebastian Gebski

About Sebastian Gebski

Geek, agilista, blogger, codefella, serial reader. In the daylight - I lead software delivery. #lean #dotnet #webdev #elixir. I speak here for myself only.