Software is like cake

A completed software solution is like a cake, it has many layers. Rich spongey layers of relational schema and business logic and topped with oh so sweet GUI icing, yum :)

Unfortunately, because software is so much like cake, it is tempting to try and make it like a cake. First Ill design my schema, then Ill do all the business logic stuff then, last of all, Ill build the GUI. Although this approach seems logical, it has a fatal flaw….

Nobody will know what your cake tastes like until it’s finished!

This is clearly hopeless, what if it tastes horrible? what if the business rules are wrong, what if the schema doesn’t handle your projected volume? you have to mess around, trying to fix a completed cake or worse still throw the whole thing away and start again.

Make your cake a slice at a time

Take some subset of the features and build the schema, the business logic AND the GUI. Everybody can then get an idea of how the solution will work and if its wrong, you only have to fix that portion, not the whole solution.

Happy Baking :)


Michael Dausmann

Full stack developer. Agile, Data science and Machine Learning. Love learning, speaking and dad jokes. Tweets are my own.