Be the Ronin with your Languages – Original post 2006.08.21

For anyone who has been in the industry more than a few years, and for everyone that really enjoys software and computing systems, odds are you’ve learned more than one language in your travels and studies. If not, I suggest you’ve done yourself a disservice.

The lesscode blog isn’t too active any more, but it has much sage advice, and a good post from last year that’s been referred to many times. “The Philosopher’s Song” is a ranging muse on the efficacy of languages, and the rage of Ruby vs. Python and the sameness of now to history.

At any rate, a Ronin is a samurai without a master. A warrior that seeks a purpose in some ways. When it comes to developing software, do not forge yourself into a single tool. Further, do not sit within the pure OO or pure procedural languages, and further don’t stay within a single family or style of languages. Try LISP, try Smalltalk, try Python, try Ruby, try C#, try Java. Extend into Javascript, and understand assembler on at least one architecture if you can. Touch Perl and a shell script, look into languages fringe and mainstream. But most of all, understand how different families and types of languages approach programming differently. LISP does things in such brevity and simplicity for certain problems that you will wonder why some problems are done in any other way. Ruby yields higher constructs that C# can seem downright tedious for many tasks. All languages have a purpose, and a strength, and a weakness.

Branch, enrich, learn, but do not stay beholden to one language in your skills. When all you have is a hammer….

Currently playing in iTunes: The Ride of the Rohirrim by Howard Shore

Leave a Reply

Your email address will not be published. Required fields are marked *