11 September 2013

Ad hoc programming

Does everyone need to learn programming?

Obviously, not all program development time is measured in man-years. One could no doubt write a program for generating anagrams in a couple of days, [...]

This is intentionally a trivial example, but it is practical tasks of this scale that are exactly why you should learn to program.

It isn’t because computers are becoming increasingly ubiquitous. Most people aren’t going to write the software for appliances that happen to have computers in them. Most people aren’t going to write application software for general-purpose computers.

It’s the small tasks that are never going to be a bullet-point feature of an appliance or application where most people can benefit from learning to program.

If you’ve ever written formulas in a spreadsheet application, you’ve already done some programming. And while spreadsheets are appropriate for some tasks, there are better ways to program that aren’t really any more difficult that are more appropriate to a much wider array of tasks.

[...] though it would take the average neophyte the same couple of days merely to type in the 75 to 100 lines of code required. Not only can a single misplaced colon or parenthesis mark foul up the works, but it often takes an enormous amount of time to discover such a seemingly minor error.

Programming is, indeed, sometimes like this. But with good tools and experience, it is the exception rather than the rule.

That said, programming is not for everyone. If you like math, you will probably enjoy programming. If you don’t like math, you probably won’t. So, the benefits may not be worth the costs for everyone.

No comments: