7 comments

[ 3.1 ms ] story [ 30.2 ms ] thread
Already the second stuck as either misunderstood or off my experience: > Moral: Structure data late in the programming process

I value Fred Brooks statement "Show me your flowcharts and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won’t usually need your flowcharts; they’ll be obvious."

Defining your data structures well upfront can avoid a lot of mess downstream the project.

(comment deleted)
> 11. If you have a procedure with 10 parameters, you probably missed some.

I don't understand this, can someone elaborate?

If your procedure have 10 parameters already, it's because what it does is very variable so in the future you will likely keep adding more and more parameters, those are that you are missing now.
Functions with a large number of parameters means your code is over-complicated under-designed and hard to maintain. If you are producing a function with 10 parameters, your code is probably so complex you missed the 11th.
Adapting old programs to fit new machines usually means adapting new machines to behave like old ones.

How much money and blunting of innovation has this truth cost over the years?

This reminds me of something written on an old mug: "If builders built buildings the way programmers program programs, the first woodpecker to come along would destroy civilization."