Just sharing some of my inconsequential lunch conversations with you... RSS  

Saturday, September 29, 2007

Take a look at my language, she's the only one I've got

Are you old enough to remember Supertramps's "Breakfast in America"? I'm currently in the process of learning a new programming language, BOO, and the song just came to my mind as:

Take a look at my language
She's the only one I got
Not much of a language
Never seem to get a lot

This song somehow reflects the love/hate relationship this industry is discovering with the curly brackets programming languages family. You'll notice I've labeled this post under Social, so I'll keep technology out of here. The problem is mainly about resisting to change.

The thing is: we feel secure within our zone of comfort, as change frights the hell out of us.

I can understand the organization's need to maintain a stable branch of languages over decades, even at the cost of lowering agility. I can to a certain point understand the resistance to change from a 40 year old developer that as the C/C++/C#/java patterns carved in his way to solve computer problems. What comes as a surprise to me is when young people out of high school just with a couple of years of experience in C#/java observe the same resistance pattern.

Naturally this resistance disappears as people use the language (at least young people with open mind) and get acquainted with the advantages. But the first reaction I've been collecting is generally of rejection.

In the case of BOO's fibonacci implementation, I've collected responses like:
  • "it's unreadable!"
  • "how can you debug this? (generators)"
  • "I'll do it just as well in plain C"

My everyday work language is C#. C# is a great language, above all because it's constantly evolving, constantly borrowing concepts from other languages. C# is also great because of it's recently acquired lambda expression and extension capabilities. But this doesn't mean C# is the only language for all of my problems.

Well, enough of techtalk, let's end this post with some kind of conclusion: a programming language is just a tool to solve a problem, and we, developers, tend to elevate it to a religion - I know I've been doing it for ages. A tool is just a tool, we should have the tools we need, no more and no less.

The future developer will probably use more languages than we use today. So get used to it :)

No comments:

Development Catharsis :: Copyright 2006 Mário Romano