My problem though, as always when I try to learn a language, is too much reading and not enough coding!

In what seems to have become a cliché, I'm now watching the famous SICP lectures and going through part of the book. I'm hoping I will do some of the exercices 8) I'm using PLT Scheme with the SICP support.

Anyway, watching the lectures, I was suddenly hit by something: "I'm such a nerd to be enjoying this so much!"

I'm a professional programmer, but I'm beginning to think I'm really a hobbyist programmer at heart. I learned to program reading a introductory column in a newspaper using pen and paper. Later my parents got me a Commodore 64 and I was hooked. I predictably graduated in computer science. I had a course given with the first edition of the SICP book. Unfortunately back then, I really did not appreciate it or Lisp.

So here I am, 15 years down the road, and I'm revisiting my computer roots to see what I missed the first time around.

Just came across your blog due to common interest in Clojure, Nu and Scheme. I was curious about your comment about not appreciating LISP first time when you learned it. This is a question that really concerns me. Is it only possible to appreciate LISP once you have done programming for a number of years, or can one appreciate the beauty of LISP even if it is the first language?

I wouldn't know because I started with C, Assembly and Basic. Did C++ for very many years and only discovered LISP very late but found it totally awesome in an almost childish way.

It seems like I encounter lots of people who learned LISP at Uni but it didn't make a big impression on them. Usually it seems to make a big impression on people like my who have been slaving away for years in C++ and its like ;-)

I had already been programming for a few years when I encountered Lisp at school and I still had a knee jerk reaction to it.

It seems that non-technical people learning Lisp as a first language have a better reaction to it than people following a computer science curriculum. I think a lot of it might be simple prejudice. It is often considered as an impractical languages for "modern tasks" like web applications. I've heard the classical (and wrong!) remark: "It's only useful to do artificial intelligence."

I think mature dynamic languages like Lisp and Smalltalk are due for a comeback. I would not bet on mainstream use like Java and C#, but I do think there will be more start-ups and hobbyists using them.