Getting hooked

January 26, 2007

It’s interesting how sometimes I get hooked to things, maybe not even things but more like actions. It might be something that I don’t understand at first, but after some ‘click’ I start to really-really like it.

First of such things was MUD, which stands for MultiUser Dungeon. It was when I went to technical school and I was about 16-17 years old. Our school had one class with old crappy 386 computers and 128 kbps Internet connection (nowadays homes usually have 8-16x faster connection). There I saw some guys were very addicted to some game, not the graphic games people usually think when you say ‘game’, it was only text. Just pages and pages of text scrolling by. They typed something and even more text scrolled. Sounds interesting, doesn’t it? I thought that I give it a try, after all there had to be something that made this game to addictive. My first hour or two was quite painful – trying to learn commands, understand the system etc. But after I killed first smurf in Smurf Village I was totally hooked. I spent many hours and sometimes even whole days just gaining levels, killing monsters, upgrading levels and equipment, eating, healing, drinking and then killing some more. It was a huge world with its own rules, religions, gangs and much more. When you were strong enough you could go into more dangerous places, sometimes grouping with other people and get yourself more exotic and powerful weapons and protective armor. Constant adrenalin flow.

This 4-5 years of mudding taught me something – I can get addicted quite easily. So after my super videocard burned down on my home computer I wanted to buy new one so weak that I can’t play any newer and interesting games, because I can get addicted again.

Anyway. Another this kind of getting hooked moment was just a few days ago. This time it was to a programming language called lisp (name comes from list-processing, it is second oldest programming language, made in 1958). This addiction is better, because it’s not waste of time. I can actually make something useful out of it. I believe I first wanted to learn lisp, when I read Eric Raymond’s essay called “How to become a hacker“, where he says: “LISP is worth learning for a different reason — the profound enlightenment experience you will have when you finally get it. That experience will make you a better programmer for the rest of your days, even if you never actually use LISP itself a lot.” After that came Paul Graham essays, especially “One hundred-year language” and “Beating the Averages“. OK, so I thought, if that language is so great then I should take a look. I bought a book, started to go through it and doing all the exercises. Well, it wasn’t so bad, but nothing spectacular either. So far my ‘mother language’ has been perl, and in “Higher Order Perl” author says that perl has 6 of 7 seven lisp’s ’special’ features (like higher order functions etc), so I was kind of familiar of these concepts. But. The seventh thing that sets lisp apart from all other languages are macros. Not other language can do it, if it wanted to, then it had to become like lisp. Basically macros give lisp a possibility to transform the language itself. So let’s say that I don’t like the way ‘if’ block works in lisp. No problem, with macro I can extend the language and make ‘my-if’, which behaves just the way I like. No other language can do that.

So far, so good, but what does that all have to do with ‘getting hooked’? Well, it has everything to do with it. It was two days ago that I made my first really useful macro and now I’m hooked! It saved me lots of typing and is just so… cool. To give little context – I program new admin-friendly website for snaps4 and just for learning and practical experience I make it in lisp. In that web I have to protect administrative section with username and password authorization. So instead of 8 sentences I can add authentication just by defining admin functions differently. How cool is that?

Some other things I’m hooked to:

  • wife – after fallng for her
  • emacs – super-powerful text editor and kitchen sink, after discovering some of its features like macro recording
  • Canon cameras – after using EOS 50 (I think), it was just so comfortable
  • Valve amplifiers – after listening side-by-side with ‘usual’ amp and even more when I got working my own tube headphone amp

Entry Filed under: Life, Programming. .

1 Comment Add your own

  • 1. hiie  |  February 14, 2007 at 15:18

    How did you feel after discovering you were hooked to those various things that you described in the blog of yours?

Leave a Comment

hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Trackback this post  |  Subscribe to the comments via RSS Feed


Recent Posts

Archives

1489

Photography