Category Archives: Personal


My wife and I cutting our wedding cake

On Saturday I got married :). The past couple of months have been a little hectic, though probably not as much for me as for my wife. I’ve had a lot of stuff going on and I do feel a little bad that this site has been put on hold a little bit. However, weddings are crazy and I had no idea how much energy goes into them (including this wedding, I’ve only ever been to 5 weddings – 4 of them have been in the past year and a half). Our wedding was held at the Engineer’s Club in Baltimore and there were 130-something attendees.

Since the wedding is now over, activity on this site will probably pick up some. I’ve been reading a lot of books in my spare time so I may do a few book reviews, however, I don’t want to turn this page into a book review site, so if I do go that route I’ll space them out somewhat.

Super Mario Bros Groom's Cake

Also, before I forget, my advice to anyone getting married soon would be this:

  • Wear comfortable shoes. My feet were killing me at the end of the night.
  • Dance lessons were well worth it. Take them!
  • Try to talk to everyone during dinner and don’t get stuck at one table.
  • If there’s some food you want, have someone get you some or have it set aside (I missed out on the delicious strawberry layer of our cake – and on the delicious pigs in a blanket finger food).
  • The day will be a lot of fun, don’t sweat it!

Lastly, the cake to the right was a groom’s cake that my bride had made for me :). She gave them some pics of other Mario wedding cakes so it’s similar to them, but toned down since it was just for a rehearsal diner. Mario and Peach were a little pudgy, but I thought it was a really, really cool cake. At the time of its making I was kind of obsessed with the New Super Mario Bros game for the Wii, which is why she had it done.


Monk-E-God, one of the most prominent figures from the AOL add-on programming scene of the late 90’s, has died.

Initially someone emailed me about “Tom” dying and I had no idea who they were talking about. I’m really bad with names so I always feel a little bad when someone from that era emails me. However, I remembered the “moorpark” location they mentioned and a discussion about it at – and that’s when it hit me that they were talking about Monk-E-God. I remember talking with him at what I think was knk’s old forums (and possibly later GPX’s forums, though I can’t remember if he was a member of that forum) and checking out his work at knk’s website.

I wasn’t really close to the guy, but I remember him as being one of the best programmers from those days. He was one of those people who’s reputation preceded them, it’s really sad to hear he’s gone. Thinking about that era brings back a lot of memories. If it wasn’t for that community and those days on AOL, I wouldn’t have become the programmer I am today.

There’s some more information about him at the forums, including a neat story about him meeting the Olsen Twins.

Merry Christmas and Happy Holidays!

I’ve been bad about updating the past couple of months, I should have some interesting stories for next year though.

It’s been a pretty amazing year. I got engaged, bought a house, wrote a couple of new web apps, learned a lot about Tcl and JavaScript, visited Northern California (and then got stranded in Phoenix on my way back – due to the blizzard going on in Maryland), worked over 180 hours of overtime, and gained a lot of weight (the last one’s not a good thing, but it’ll give me a goal of losing weight for the new year).

I looked up my resolutions for this past year and I think I did ok. Here’s the list:

  • Get good at JavaScript: I feel like I’ve accomplished this one. There’s more for me to know, but I feel like I really know my way around the language.
  • Learn jQuery: Didn’t even look at it this year. There are a lot of cool JavaScript frameworks out there though. I’ll probably get around to learning jQuery at some point, but I don’t think knowing it is as important as I used to.
  • Develop More Web Apps: The Typing Speed Test, the HTML Canvas game, the Blog Stylometry Tool, and lots of updates to the Keyboard Layout Analyzer. I was sort of quiet near the end of the year, but I expect for things to pick up again here soon.
  • Read At Least 4 Programming Books: Learning Dojo, Learning ExtJS, JavaScript: The Good Parts, and Code: The Hidden Language of Computer Hardware and Software. JavaScript: The Good Parts and Learning ExtJS were the best of that group, and after thinking more about it, probably the only two I’d recommend from the list.
  • Join A Programming Community: I did not do this, unless you count my subscription to the Programming Sub-Reddit at I’ll give myself half credit here.
  • Write A WordPress Plug-In: I had a couple of ideas, but I lost interest.
  • Release Some Programming Examples: I still want to do this.

So I achieved 3.5 of my 7. Not too shabby, I feel like I accomplished what was important to me, and that’s probably better than meeting the goals I think up at the beginning of the year.

This probably wont be my last post of the year (I’ve got a book review coming), but I hope everyone out there has a great holiday and a happy new year!

Dogs Days of Summer and Web App Versioning

Rising Sun

Rising Sun

I can’t remember a time when I was so exhausted. I’ve moved into my new townhouse, though it still feels like there’s a ton of stuff to do for it. I also got engaged recently, and even though the date is a year away it seems like there is a lot to do for it. I’ve also been working 50-55 hour weeks at work the past few weeks, usually leaving work around 10pm. That last one isn’t too bad, since I’m getting overtime and I know people who’ve done much worse (I have a friend who told me he once did a 27 hour a day). However, it’s all left me a little worn out. However, I’ve still kept this site in my thoughts.

One behind the scenes thing I decided to look into was web app versioning. Sometimes I want to make a small update a program like Text Ascii Art Generator (TAAG), where I might need to change 3 or 4 files, yet if the user has certain files cached, the mish-mash of certain new and old files could cause the program not to work. There may be some obvious way of doing versioning that I’m just not aware of, but its something that’s bugged me for a while. I had been getting around this issue by naming the files I wanted to update something different (ex: font-settings-v1.htm became font-settings-v2.htm, etc), however, this seemed a rather messy way of doing it.

Recently I decided to put the whole app except for its index.htm file under a directory representing its version, and having the index.htm point to the sub-directories under the latest version. So the apps contents would be placed in a structure like this: – Pages for the app – CSS files – Scripts – Where the index.htm file would go

This is nice because it allows me to go back in time if I screw something up. For example, if I decided I didn’t like version 1.0.1 of the app, I could go back to version 1.0.0 by just changing the index.htm file. This method also prevents any kind of awkward file combination due to cached files. However, it’s down sides are that I have to upload a whole new version of the app every time I update and I need to make sure users aren’t linking to or bookmarking pages underneath the version sub-folder. The app has to be set up so that the version folder is invisible – everything has to happen through the page at the base directory. This is so search engines wont index every single little version of the app.

So far this system seems to work pretty well, however, if anyone has any suggestions let me know.

In the weeks to come…

I imagine my free time to be kind of scarce for a while, but I have some ideas I want to work on, so updates will keep coming, but probably in a more sporadic manner.

Two Years Since The Relaunch…

As of March 21st, it’s officially been two years since I decided to relaunch this website. On the opening day there wasn’t any hype and the site had been down for 2 months – and before that, I think I’d only updated twice in the previous two years. Plus, on this new day, all I had up was a message saying I’d be back. I couldn’t post up anything because my previous host had deleted all of my content and my hard drive had just recently crashed, taking with it everything I had saved. Other than being a lesson in routinely backing up files, this gave me a chance to start fresh.

This site, shortly before being deleted

This site, shortly before being deleted

It’s been two years and I think this site is currently as successful as its ever been. I don’t have a community like I used to, but I do have a decent amount of traffic and links coming in. The site, as a whole, currently gets around 2,700 visitors a day. So I feel good that I’ve been able to come back with something that people (hopefully) find useful and/or entertaining. I suppose it’s just a different site now than it used to be. I’m still steering the ship, and I’m still programming, but I’m using different tools and doing different things.

I think the thing I’ve enjoyed the most over the past two years is seeing the stuff I make or post up actually being used. When working in a big company, sometimes you program something up, hand it in, and then move onto your next assignment. You don’t really get to find out the experiences of the end user or what they thought of the program. You don’t know if they struggled to understand what you did or if they loved it. Well, sometimes you find out, but not always.

The cool thing about the web is that anyone can see the stuff you make. And to get feed back one can just google around or look at their referral logs and see where people are coming from. Sometimes this leads to some interesting info about how people are preciviing and using what you have up. Check out these Stumbleupon reviews I found of my 179 Ways to Annoy People chain letter page:

Annoyed Visitors

Annoyed Visitors

I think a certain number of visitors were thinking it was a real list. I thought it was obviously a joke, but you never really know what people are thinking when they come across your site, so I added in note at the top of the page letting people know it was just a joke list. Though I suppose some of the reviewers might have realized it was a joke and were just plain offended by it, however, calling a joke list “Asshole Training” seems a bit odd. [As a side note: I’m thinking of getting rid of this page entirely, since it doesn’t really go with the rest of the site, though maybe I just wont link to it and let its only source of traffic be 3rd party services like search engines and Stumbleupon]

Another interesting observation I was able to make, this time via my stats, was that a decent number of people were going to my Text Ascii Art Generator program and then just exiting via one of the out going links on the About page. This seemed like a rather strange behavior so I changed the program to automatically display the message “Type Something” once the page was loaded. This ended up causing a big increase in the usage of the program. My guess is that people were visiting the app’s main page and then getting confused as to what they were looking at, so they’d just skim the page and click on one of the out going links. It’s stuff like this, as a developer, that I’d never catch unless I had access to usage stats or user feed back.

Anyway, for those of you who’ve decided to follow this site for whatever reason, I thank you for checking in every so often. It definitely is nice to see stuff I make being used and to get feed back on it.