I am learning C#.
Two years ago I swore a blood oath not to learn anymore programming languages. It’s been obvious for decades that you seldom find any new and important ideas in programming languages. What you typically find are old ideas renamed and wrapped in a new syntax. Virtually all key concepts in programming are over twenty years old and many are far older. My disgust with new languages started with a single word: refactoring!
When I met refactoring it seduced me with its sleek geeky’ness. What could this wonderful word mean and what thrilling concept did it clothe? Well it basically means cleaning up your abhorrent code so that you can make some freaking sense of it! All competent programmers, dating back to Ada Lovelace (1815-1852), have been refactoring all their goddamn coding lives. Refactoring is geek marketing: the same old shit in a glistening new package.
C# is as free of new concepts as I expected but the language has its strengths. C# has managed to inherit most of its predecessors gifts without introducing untested features. C#’s designers restrained themselves and it shows. The language is clean, easy to learn, and integrates elegantly with .Net libraries.
This is all good but what makes it better is that you can steal tons of C# code. Google and Bing are my accomplices. When I want to find out what a DataSet does I just pop a query and dredge up nuggets like: Creating A Data Set From Scratch in C#. In the old days you had to read dense language documents like the J Dictionary and think for yourself.
Thinking for yourself is so 20th century; why code when you can steal!