Practical Common Lisp, Cartoons, & Other Wannados

I own the book. I hope to get around to reading and digesting it sometime soon. I know a little Lisp, more Scheme than Common Lisp, and I’d like to know more.

I would also like to learn to do some more cartoon drawing stuff. I’ve been following Drawn, the Illustration Blog and loving all the variety of styles I see there. Watching today’s kids cartoons on cable, like Foster’s Home for Imaginary Friends, the Grim Adventures of Billy and Mandy, Danny Phantom, and others, I’m amazed by how downright cool cartoony art can be. I’d like to explore that.

I’d also like to get around to recording and putting online some more ukulele tunes.

Rails On the Laptop

I was browsing a Ruby On Rails book at B&N and happened across a little note, that you could develop a Rails app entirely on a desktop machine, using a built-in Ruby web server, and deploy it with few changes to a production environment. Hot dang! That is *agile*, as the kids say these days.

I just went through this tutorial and created a working “todo list” web app on my ibook. In a very short time.

I didn’t like the idea of installing MySQL on my laptop just for this, and Rails is claimed to work just fine no matter what database you use it with, and, well, OS X Tiger comes with the SQLite db already plugged in, so I tried using SQLite instead of MySQL. It took me a little while to get to know SQLite well enough to set up a DB — a very little while.

I’m gonna have to get that darn book. Hmm… Birthday’s coming up. Might have to get meself a present.

UPDATE: The little todo program in the tutorial did indeed run just fine when I copied it up to Dreamhost to a rails environment. The only thing that took some time is moving from a sqlite db to MySQL (Dreamhost doesn’t have sqlite.) The app “just worked” in its new home. That’s pretty darn impressive.

Web Apps

Daring Fireball: The Location Field Is the New Command Line is a few months old, but I just got around to reading it.

Web apps are really great for cross-computer compatibility. Now that I work on my linbox during the day and just use my mac for my own computing at home, I appreciate being able to use, say, del.icio.us (or reddit) to move bookmarks back and forth. I have fastmail.fm for my mail, but I mostly use Mail.app or Thunderbird to access it — the magic of imap means I don’t have to use a web app to get cross-computer access to my mail.

I am a bit stymied by my own lack of knowledge of how to program web apps. I’ve dabbled a tiny bit in Ruby On Rails, but I can tell I’m not going to really “get” it till I buy the book. I’ve played a little with what they now call “ajax” — javascript which communicates with the server and modifies a page directly without reloading it — heck, I even helped Topher put something together for a real live page using it — but I haven’t done anything with it for my own sake.

My web design skills, both in terms of presentation and in terms of javascript wizardry, are so sadly lacking. I’d really like to beef them up.

I had a lot of fun recently putting together a shopping cart for a small local web-based business. I was at first trying to adapt an open source cart to their needs, but their needs were very well defined and peculiar, and I was spending more time taking unwanted features *out* of the carts I was looking at than it would have taken me to write a new one, so I trashed it and wrote a new one. Perl/MySQL. Pretty simple. I didn’t touch the frontend at all, I did it all using HTML::Template and handed the templates over to the site owners to customize. It worked out great.

I enjoyed designing that web app, and it’s not that hard. Maybe I’ll try and think of a project I want to work on of my own that I can do some neat stuff with.

Not that John Gruber is Nostradamus, but I think it’s true that there is still a big future in hot web apps, and I’d like to have more skill with that than I have.

Why

One of my favorite programmers with a web presence is the enigmatic Why the Lucky Stiff.

I decided to play with his blog software, Hobix. This is how you install Hobix on a Mac:

~ ed$   ruby -ropen-uri -e 'eval open("http://go.hobix.com/0.2f").read'
# Readying install...
# Beginning gzip transmission.
#

                               () ()
                                () ()
               o --- (--=   _--_ /    \
             o( -- (---=  ~/     / ^ ^/
          o. (___ (_(__-=  //  ///\/\/

              you speedy little goat!!
                you got.. you got..
                  ahee!! hobix!!

# halloo!! ready to install the very latest hobix??
# DON'T BE 'FRAIDY!! nothing scary AT ALL!! (hobix is
# whizzzy cool and /everyone/ is holding your hand.)

+ ready to go + [Y/n] ?

God bless those who don’t take themselves or their software even the slightest bit seriously. Bless them and shower them with chunky bacon.

UPDATE: of course, it crapped out and died trying to create a weblog. Maybe I should have been “fraidy.”

Ruby on Rails

I have been a fan of Ruby for four years, but now suddenly Ruby’s cool because of Ruby On Rails. Course I didn’t know how to use Ruby on Rails. So I went from being ahead of the curve to behind the curve in a few short months. But Dreamhost has it, so I dinked around with it. I didn’t create a buzzworthy new web app in a day or two, but I did throw together a silly little database driven application in about 20 minutes.

Feel free to consult the guru, and add your own wisdom (or delete wisdom you don’t approve of). There’s no security or logins or any of that jive yet.