Harry Potter: The book that taught me Polish…

The title of this post is very misleading... I could already speak Polish at an intermediate-ish level before I started reading Harry Potter. However, this experience has really taught me alot!

What and why?

First, some background. Along with my own evolving ideas about language acquisition I've recently (maybe over the last 6 months?) become interested in the ideas of Stephen Krashen and Steve Kaufmann. They both emphasize "comprehensable input" as the primary means to language acquisition. This means reading and listening.

So, I decided that I wanted to read more in Polish. I had two primary goals:

  • To expand my vocabulary.
  • To read something interesting that I would enjoy.

I chose Harry Potter for the following reasons:

dijit.Dialog: To fork or not to fork!

I've been redesigning the Memorati™ user interface to be based on pages and dialogs. Formerly it consisted of a collection of mutually exclusive pages (meaning no dialogs):

Screen shot of Memorati on Browse Cards page.

  • Browse Cards
  • Add Card
  • View Card
  • Quiz
  • Settings

These pages were all accessible at any time from a menu on the left sidebar.

In the new UI, what was formerly "Browse Cards" will become the "Dashboard" with links/buttons for all other functionality. All the rest except for "Quiz" will become dialogs (although, maybe "Quiz" should be a dialog too? Eh?).

Life Hacking

Yes, you guessed it! I'm interested in life hacking. Just thought I'd let you know in case the name of this blog wasn't a dead give away (ed: this domain was originally intended for a life hacking app). I'm a big fan of David Allen's Getting Things Done, which was also the inspiration of the great life hacker website 43folders.com.

Anyway, I recently added some life hacker blogs to my RSS reader and just read this post. It doesn't have much that I haven't heard before, but its always good to periodically review these types of tips to remind yourself, and think, "Oh, yeah, I should really get around to trying that!"

Ash Wednesday Update!

I haven't posted in awhile, I apologize! Today is Ash Wednesday, the beginning of Lent, however, I didn't make it to mass because we were hit with a massive blizzard. I walked home from work, partly because the buses stopped running and partly because I'm bad-ass. ;-) It was good exercise.

Here are my projects as of late:

  • Released POE::Component::MessageQueue version 0.1.8! I have to give most of the credit to Paul Driver who really did all the work this release. But its still exciting!

New Year’s Resolutions

It might be a little early to think about this, but its already on my mind. At the end of each year, I like to think back on the previous year, about what has happened, what was accomplished, what wasn't accomplished, what was awesome, what wasn't, etc... It helps prevent the years from just sliding away without taking notice.

For most people new year's resolutions are a joke, but I like them. Probably people don't like them because they feel bad when they don't meet their goals and so'd rather not set them. I like setting goals, even if I don't reach them. The attempt is more important.

For 2008:

  • Pay off my debt. This was a resolution last year too! I got close, but still not there.
  • Study Polish for 2 hours a day until I have a language break-through. I'm hoping this will be a 6 month goal, because I plan to study in Lublin again in July.

HOWTO: Dojo Grid, Checkbox Selection

In the next release of Memorati™, I am going to use the new Dojo Grid widget. One of the problems I had, is that the grid does selection the way desktop grids do:

  • Clicking the row selects it.
  • Clicking while holding the shift or ctrl key selects multiple rows.

This is fine! But it isn't what users of web applications expect. They are accustomed to selecting a row by clicking a checkbox in the left-most column, like in Gmail.

In this article, I describe how I got the Dojo Grid to use a checkbox for selection.

For simplicity sake, I am going to build off the example described in the Dojo Grids: Diving Deeper article by Bryan Forbes on the SitePen blog. Let's assume that your grid boiler plate looks like this:

var data = [

Language Learning without Grammar

I just read a post on Steve Kaufmann's blog about language learning and Web 2.0, which included a link to this YouTube video he made on the same topic. As a guy experimenting with creating Web 2.0 language learning applications, I feel like this message is aimed directly at people like myself.

I completely agree with the general message of the video: Focusing on grammar in language learning is detrimental and yields very little in the way of actual proficiency in using the language. But its the specifics I keep getting hung up on.

The HackYourLife.org That Wasn’t

HackYourLife.org is now my blog. I've been slow to join the blog revolution but I'm glad to have finally taken the leap. I've got so many opinions on so many things and I can now express myself without ranting endlessly to my friends!

But when I originally purchased the domain name, I had something totally different in mind. It was going to be its own blog software and community site, like Blogger or LiveJournal, but with a little twist...

It would support not only diary entries but also arbitrary user-created trackers that would allow the user to record data about anything they wanted either to do or not to do. For example, someone who wants to cut down on their smoking habits, could create a "smoking" tracker and record how many cigarettes they have per day. Or it could integrate into other services (mash-up!) and record things like number of Memorati™ cards done per day.

(Aside: I kept a paper record like this for years, writing in the little squares on picture calenders.)

Getting Functional!

I've been thinking a lot about functional programming languages recently. This started for a number of reasons:

  1. At work we recently hired a new programmer who's preferred programming language is Lisp.
  2. F# (a functional programming language for .NET) just came out and so a certain .NET obsessed co-worker got me to listen to this podcast.
  3. I've always been very fond of the functional constructs in my two favorite programming languages: Python and Javascript.

In the works…

I've had a number of language learning software projects in the works for a long time. Unfortunately, given my limited time, I've been struggling to get them "out of the works" in into a place where other people can use them. But until that time, I'd just like to describe what they are - or really what they will be!


Memorati™ is my main focus right now. It is an online flash card system based on spaced-repetition. It is designed to be rich and flexible using modern Web 2.0 techniques and easily embeddable inside of other applications. In fact, when you go to www.Memorati.org, you are actually seeing Memorati (the application) embedded into Memorati (the website).

There are still many features missing from Memorati and at this point should be considered Beta. In the future, I plan to include:

  • Plugins for domain specific cards, ie. geography cards could include maps.
  • Media! With a player for audio and video files.
  • Offline support, so you don't always need an internet connection.
Syndicate content