2006-02-02

Don't say "no"!

Lisp is for the mediocre programmer, too.

(Based on my posting <2T2radg3IosmNv8%stesch@parsec.no-spoon.de>)

Every now and then I read a Usenet posting or blog entry about the somewhat frightening question from management: "Will someone else be able to work on your Common Lisp code?"

Then most people explain why they had to say "no".

You all know the reasons why they think they have to give this answer. But are the reasons really valid?

I don't think so. It is the job of a programmer to work with different tools. Programming languages are such tools, among others. It is expected that a Java programmer can learn the Eclipse IDE within a few days even if he was a long time user of Netbeans. A programmer has to use many tools he wouldn't choose by himself. Do you think most of them really like writing their e-mails at work with Outlook? :-)


Common Lisp is one of the tools that are available. If you think it fits the task at hand then use it. Chances are good you are no wizard, guru, demi-god. Just a person who does his job. You were able to learn Common Lisp and so should be someone who doesn't have to go through the initial phase of a project in a new language. Everyone following you has better and more books, more libraries, a bigger community — Common Lisp has gained a nice momentum and more and more people use it just for fun and for work. Everyone following you can rely on your code. It is very easy to test and fool around with single functions of your program.


Common Lisp is for the mediocre programmer, too. A programmer bitching about the parentheses and refusing to learn something new or different, isn't a mediocre programmer. He is a bad programmer and a very bad employee. Who wants to employ someone who doesn't want to learn for and on the job? The manager/boss who asks you if someone can pick up or support your work when you choose Common Lisp is the same one who expects his staff to be flexible.


"No, I don't think anybody can be as good and flexible as me." is the answer you give when you say "no".


You all know the essays and rantings of Common Lisp users about how wonderful the language is and that you must one of the top programmers choosing it. They are wrong. All it takes is to be a programmer. Even if you are just mediocre.


OK, some programmers who just do their job don't learn programming languages just for fun. They don't have to be bad ones. Just the typical worker who doesn't want to be bothered with work related stuff after a day's work. It's sad but there are such people in every profession. But it's no reason to believe these people aren't able to learn Common Lisp just because they haven't thought of it themselves.

Labels:

10 Comments:

Anonymous mark said...

Funny how some people would complain about the parens yet not have any problem with all the brackets in XML. I worked at a company that wouldn't touch Lisp with a 10-foot-pole, but wanted to write all their test cases in XML using Jelly.
I think the unfortunate reason that you might have to answer "no" is because when the manager needs to find someone else to work on your Lisp code, he or she is going to ask a recruiter or an HR person. That person will use some equivalent of grep to find suitable resumes, ignoring, for example, someone who knows C, Java, Perl, Python, Smalltalk, Ruby and OCaml. For that matter, they'd probably ignore someone who knew Scheme.

February 2, 2006 10:45 PM  
Anonymous Adam Fabian said...

What's wrong with not wanting to be bothered with work related stuff after work?

February 2, 2006 11:48 PM  
Anonymous jlr said...

If you have to ask why it's a bad thing to want to leave work at work, you'll never know.
I usually ask, "what sort of person wants to do the same job the same way, day after day?"
Worse yet, it means you are not doing what you love. While this might be unavoidable for some people, creative folks like engineers and programmers have a choice.
Everyone's different, but I want a job where I laugh at them for paying me.

February 3, 2006 12:30 AM  
Anonymous andermander said...

there is 10 types of people: those who understand binary and those who dont.

February 3, 2006 7:01 AM  
Anonymous Daniel Barlow said...

Worse yet, it means you are not doing what you love
If you thought the job market for Lisp programmers was fairly sparse, you've clearly never tried a career as a professional inline skater. I'm quite happy to leave work at work.

February 3, 2006 11:31 AM  
Anonymous Nick D said...

I think one problem with Lisp is its like giving a 16-yr-old the keys to a Ferrari. They can do a lot of damage with it. You can write some seriously messed-up unmaintainable code in Lisp. Someone who can't even write maintainable Java is gonna be very scary indeed whe they're using macros. ;-)

February 3, 2006 11:49 AM  
Anonymous Steve said...

" Funny how some people would complain about the parens yet not have any problem with all the brackets in XML."
I've heard this before and I'm confused. There is a huge difference between 'brackets' in XML and parens in lisp. The difficulty with parens is paring them together. With XML the tags have names which is much more readable.

February 3, 2006 3:34 PM  
Anonymous mark said...

That XML is "more readable" is a matter of opinion. Lisp is very easy to read if you indent it well, just as XML is much harder to read if you don't indent it well. You still have to match up closing tags with their opening tags, and I think that's more of a pain that matching parens. I guess I'm not really equating parens with the brackets in XML as much as I am the opening and closing tags. Plus all those pointy brackets scratch your monitor.

February 3, 2006 5:34 PM  
Anonymous Steve said...

"Plus all those pointy brackets scratch your monitor."
LOL
True

February 3, 2006 9:39 PM  
Anonymous mladen said...

Now I know I'm not the strange one.All of my friends make fun of me learning Lisp during a summer break.Now I'm even more convinced that it is going to be usefull in my future career.

February 4, 2006 5:41 PM  

Post a Comment

<< Home