Did you take my challenge?
Did you enter a 1,000 line computer program and NOT compile until the end? And did it work the first time? C’mon, don’t count the lines that are pre-compiled in the libraries you used. Count only the lines that you wrote and keyed in yourself.
Honestly, I’d be surprised if you could enter a 100 line program, compile it and then run it without any errors or corrections the first time. I’d be surprised if you could copy at the keyboard just 30 lines of existing code and have it work the first time.
Programming languages provide just too many ways to fail. Maybe some letters got transposed or a variable was capitalized when it shouldn’t have been, or maybe you just forgot to add some punctuation.
And these are just the mechanical failures! There is a seemingly infinite number of logical problems that can cause your program to fail or to provide “unexpected enhancements” to the expected behavior.
If programming languages are so damn terrific, why are there so many ways to fail?
If programming languages are so good, why do computer programs still take so long to develop?
If programming languages really are the best method of creating software, why do they still have bugs waiting to be found after they have been completed and released?
It seems like with programming languages, it’s not “Failure is not an option”. Instead it is, “Failure is the only option”. Followed by, “Repeat the only option until it runs well enough to release.”
With all the really smart people who have developed software over the years, why do we still have a program development methodology that produces such dismal results?
Read the next blog for some preliminary thoughts and an outline of where these blogs are going.