I have started to learn to play the guitar recently, and in order to play freely it’s beneficial to know song texts by heart. Having read about how people on various TV shows manage to remember a huge amount of information in a short time, I decided to try their methods to learn “Hotel California” by the Eagles by heart.

The idea is to remember the text not word by word, but to remember just the key words in each line and build a mental story with these words. The story doesn’t have to be convincing or anything; it’s just a tool to help you remember. Do try this at home! I’ll offer my key words and my mental story for part of this song. I only had time for two stanzas:

(I won’t reproduce the whole text here as it’s probably copyrighted.)

highway
hair
colitas
rising up
distance
shimmering light
head heavy
night

doorway
mission bell
thinking
heaven hell
candle
show way
voices
heard

(refrain)

tiffany
mercedes
pretty
friends
dance
sweet
remember
forget

captain
wine
spirits
1969
voices
night
say

I wrote these words down from memory, about 14 hours after coming up with them in the marshrutka on my way to work. That took me about 15 minutes. Do repeat the text without looking at it after coming up with your words / story. After work I could recall everything. I now have more trouble remembering the 8 accords that you have to play in a stanza than the text :)

The scene (mental story) I imagine for second stanza goes like this: It’s a warm sunny day, some rich women went by car to a street cafe where she sits now. Because she’s rich, pretty guys desire her. She calls them friends, although these guys are only after her money. They dance for her in the courtyard, she finds that sweet and they sweat. It’s summer. Some of the guys dance well (to remember), some not so well (to forget). Then the first-person narrator calls the waiter (the captain is the waiter in my story) to ask him to bring him his wine. Wine contains alcohol — spirits. The waiter tells his story.

I don’t have a story for the last four lines, as they are pretty easy to remember by itself. The words were enough.

I encourage you to try this at home :)

Google Code Search was launched. Let’s listen to a soliloquy:

This is buggy, but I’ll fix it later. It’s also racy, but who cares, I don’t understand why, anyway. Let’s just hope that this will never happen. Or ?!?!

You can also search for buffer overflows.

I read an interesting article about Haskell today, so I tried to learn a little Haskell. It’s a very interesting language. I installed hugs and started. On haskell.org you can read that Haskell means no core dumps. I got a core dump relatively fast. Here’s how:

  • Install hugs
  • Create an empty file foo.hs
  • start hugs
markus@katerina2:~/src/haskell$ touch foo.hs
markus@katerina2:~/src/haskell$ hugs
__   __ __  __  ____   ___      _________________________________________
||   || ||  || ||  || ||__      Hugs 98: Based on the Haskell 98 standard
||___|| ||__|| ||__||  __||     Copyright (c) 1994-2005
||---||         ___||           World Wide Web: http://haskell.org/hugs
||   ||                         Report bugs to: hugs-bugs@haskell.org
||   || Version: 20050308       _________________________________________

Haskell 98 mode: Restart with command line option -98 to enable extensions

Type :? for help
Hugs.Base> :load foo.hs
Main> :edit

:edit calls the editor with the last loaded file – here foo.hs. Put the following in the file:

times 1 x = x
times n x = times (n-1) x ++ x

This defines a function times which takes two arguments: one from which 1 can be subtracted and another one that can be concatenated with itself. Haskell infers this from how you use the parameters in the function. times concatenates its second argument n times with itself.

Main> times 2 [3]
[3,3]
Main> times 2 [42]
[42,42]

Now in order to produce the seg fault (or core dump) in hugs, you have to call times with a nonpositive number of times:

Main> times 0 [42]
Segmentation fault

Nothing earth-shattering, but I find it interesting to have found a possibility to crash Haskell in half an hour after reading about its core dump immunity.

This is meant humoristically, not as a rant. Take it with a grain of salt :)

Update: It seems that this will soon be obsoleted – AOL, mother of ICQ, is adopting Jabber.

Gossip has been my favourite Jabber client for a long time. I like the simplicity and non-intrusiveness of its interface. But at work the standard IM network is ICQ. I’ve been using Gaim to connect to ICQ, but its interface has always bugged me.

The Jabber protocol provides for so-called transports, which enable you to talk to other IM networks while using Jabber on the client side. Gossip doesn’t support transports. But although that sounds like a deal-breaker, it isn’t. Transports work like this: you register on a jabber server and then sign up for a transport, providing your ICQ credentials. Then your ICQ contacts are available through UIN@transport.jabber.example.com, for example. After signing up for the transport using a transport-supporting client, you can use any Jabber client you like, and that includes Gossip. All your ICQ contacts will appear on the new account, and you can add other ICQ accounts using UIN@transport.jabber.example.com.

Now step-by-step for Ubuntu Dapper users:

  1. Shut down Gossip.
  2. Install gajim:
    1. Applications -> Add/Remove Software
    2. check “show applications without tech support”
    3. in the search field enter “gajim”
    4. check gajim and click OK
  3. Start gajim through the Applications menu. It’s in “Internet”.
  4. Add your existing jabber account to gajim.
  5. Add a new account on a server that has a transport for ICQ (or whatever you need). I used jabber.freenet.de. This server has transports for AIM/ICQ, MSN, Yahoo, ICQv2 and IRC. You can see a list of accounts in Edit -> Accounts -> New -> Forward.

    Use the “Discover services” window to find out which transports are offered by a specific server.

    You can have both windows open at the same time.

  6. Close the “Discover services” window and open it with your new jabber account.
  7. Select the transport you want and click “Edit” or “Register”. You’ll be asked to provide the credentials for your ICQ/AIM/whatever account.
  8. Close gajim.
  9. Start gossip and add your account on the new server.

That’s it! All your ICQ contacts appear in Gossip. Add new ICQ contacts using UIN@icq.jabber.freenet.de (replace icq.jabber.freenet.de with the transport server you selected).

Digg this

« Previous PageNext Page »