The Daley Devlin header image 4

Immersion is Mandatory

October 02, 2007 · 3 comments

Some time ago I went on a church mission to Brazil for two years. I didn’t know anything about Brazil or Portuguese. We have a Missionary Training Center where I was inundated with non-stop Portuguese lessons for two months. It moved so fast it was hard to remember everything but it was a good preparation. I went from no knowledge of Portuguese to two months later being dropped off in the small town of Maracajú, Mato Grosso do Sul, Brazil. The other missionary working with me was Brazilian leaving me three hours away from anyone who could understand me. I thought I was learning a lot in the classroom but have since found that the pace of learning doesn’t even compare to complete immersion. I don’t like to go hungry. I learned how to speak.

I’ve been in web development for a long time. Since I’m a student in computer science, I have gravitated towards making the “back-end” of web systems. At the same time I think that user experience is the most important aspect of software design. I found that even though I read a lot about it, my javascript fu was not strong enough. I could design cool, useful apps that were fully functional on the backend, but in order to code up the front I would search for javascript scripts and widgets until I found one that was similar to what I was looking for and then just tweaked it. That works for many things, but other times you can’t fall back on those tactics and must flex your own fu.

After all is said and done, more is said than done. —Aesop

Reading and talking about it aren’t enough. You’ve got to do it yourself.

I gave myself a self-imposed immersion project. I wanted something small enough that I could have some quick success (to entice myself to stick with it) but still be big enough to be interesting.

When the term Ajax first started gaining momentum Jamis Buck blogged a piece about his first Ajax app , a simple word game. The back story was that there was a technical discussion at his work about the merits of asynchronous XMLHTTPRequest versus synchronous XMLHTTPRequest. His little word game was a demonstration to his coworkers showing that asynchronous was the way to go, so that it would not lock up the browser. It was a fun little game that both me and my wife enjoyed playing now and again.

For my javascript immersion project I decided that I would try and write the entire game in javascript with no back-end at all. It was just to force myself to get out of my comfort zone.

Here it is, Devlin’s Word Reorder Game.

Some technical notes:

This is implemented using the excellent jQuery library. The tasteful effects courtesy of the Interface library. The dictionary is just all the four letter words contained in the file /usr/share/dict/words on my Mac. I know, a lot of words you think should be in there aren’t (especially the short pluralized ones like tips, huts etc.). If you can get me a better dictionary I’ll glady switch.

I used jQuery and am glad I did. It takes away a lot of pain experienced in my previous forays into javascript and browser incompatibilities.

Tags:··

3 responses so far ↓

  • 1 Dan Olsen // Oct 03, 2007 at 10:08 AM

    Way to go Devlin. I have also discovered some nice libraries such as jQuery. AJAX calls are definitely something where you should reuse code.
  • 2 Adam // Oct 03, 2007 at 12:33 PM

    Devlin, good post. Agreed, sometimes you just have to jump. In fact, Friday is my last day at Deloitte. I'm joining a friend's startup (language training software) and jumping in with both feet. Sometimes there's no other way. btw, the game's fun =), but it is JUST ANOTHER game that my wife is better at than I.
  • 3 Ryan // Oct 04, 2007 at 07:10 AM

    I've never seen nor heard about 90% of those words. Not even on the GRE.

Leave a Comment