Archive for January, 2007

Getting hooked

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

1 comment January 26, 2007

Status report

So, here it is, year 2007. Should become an interesting year for me in many ways. So many things to do, so many ideas to try out, so much experimenting to do (you can read about some of these ideas from my last post).

From the beginning of year I don’t have anymore this ‘regular’ 8 to 5 job and what a blessing this is, at least right now I think so. I don’t have to get up at certain time and I don’t have to sit my hours at office, no matter if I have anything to do or not, I don’t have to ask permission to take longer breaks or even few days off. I do exactly what, when and how I want and it feels good indeed. Of course it doesn’t mean that I sleep 12 hours and play computer games all day, far from that. It means that I actually have to work out my salary.

Things I’ve done from the list I posted last time:

  • Tube headphone amplifier – still unfinished and has little hum, but I got it working! And the sound is oh so lovely, this is definitely the best sound I’ve ever heard from headphones. And the glow… Wow! Actually this ‘romantic’ tube glow was one of the reasons I wanted to build my own amp (second one was of course the super-good sound this old technology can produce). When I finish this and the next one, for which I already have all parts, then it would be nice to compare them. Tube against tube, tooth against tooth.
  • Biphasic sleeping – currently I’m on my second day trying this out. Basically it means that I sleep at nights 4.5 hours and sometime during day 1.5 hours, total of 6 hours. Because one normal sleep cycle is 1.5 hours, all sleeping periods must by 1.5, 3, 4.5, 6, 7.5 etc in duration. Theory behind this is that when I sleep 2 times I need to sleep less and I’m more rested during day. We’ll see. So far it has worked out nicely – I go to sleep around 02:00 and wake around 06:00, second sleep is from 14:00 to 15:30, or thereabouts.
  • No meat diet – also work in progress. No meat for 9 days and I don’t even miss it. Nice
  • Do something useful in lisp – work in progress. I started to program Snaps4 web in lisp, currently it’s plain static HTML, but more than half of what’s needed to run it from lisp server is already done. I must say that I and lisp get along quite well, tho I have to look up many things from books or web which are natural for me in Perl (no wonder too, I’ve used it for about 5 years almost daily). It’s quite interesting experience to work with language that was born in 1958. In computer world this means very-very ancient!

Anyway, here’s magic tube glow demo for you:

Tube Magic

1 comment January 10, 2007


Recent Posts

Archives

1489

Photography