It's that time of year when people see the big number roll over and decide to reminisce over good times and bad, and talk of where they plan to go until the big number rolls again. This blog post will be no exception.

On the Personal Front

It's interesting to look at last years pontificating. In some ways, things haven't changed.

I am getting better at managing my time but in a weird sort of way. I still often stay up until 3 or 4 in the morning but I've offset things by allowing myself more leisure time throughout the day, whether it be going out to lunch with friends or just playing a game or two at home. On my to-do list for 2009, I'm hoping to expand my hobbies by learning to draw or paint, or maybe learn to play guitar or piano. My hobby right now is building web applications and even then, I spend more time on sites like and Reddit than I do working on my own projects. That's definitely something I want to change.

I still want to get more exercise but haven't made any steps to accomplish that goal. Maybe this is the year I get it done.

On the Freelancing Front

Last year, I hinted that I wanted a change but hadn't really decided what that meant. That feeling has settled a bit as I've come to accept my life as a freelancer. I've learned a lot about who I am, what my strengths and weaknesses are, and how I can manage that.

I wanted to jump back into full-time employment and interviewed at 76design here in Ottawa and flew out to interview at Yahoo!, specifically to join the YUI team. In the case of 76design, it just wasn't what I was looking for. In the case of Yahoo, it was actually a great opportunity and I would've accepted but the tide turned. They went into a hiring freeze (along with subsequent layoffs) and so, here I am, still freelancing.

Through this process, though, I've come to learn what it is that I want: I want to work from home, to have the freedom to work under my own schedule, to be able to travel whenever I want. I've got that in what I do now.

Growing the Company

One of the other important things that I've learned is that I'm not a manager. I don't want employees. I've skirted the possibility a number of times but I don't want a big company with people that rely on me. I'm too unreliable and I just don't have the confidence to pull that off.

I'll definitely be re-evaluating the "corporation" and whether it's necessary. It's cool to have a business name to operate under but definitely not necessary.

New Projects

A primary goal in 2008 was to get some commercial projects launched and... that never happened. As always, I've put client work before personal work and my personal projects languished.


SidebarAds is the only project that got off the ground, and it wasn't even conceived at the beginning of the year. Things have been going well, albeit not as well as originally planned. We've had to change things up internally a couple times already and brought on Matthew Oliphant to manage the network to free up my time to work on other things.

I've very proud of the attention it has gotten and I'm looking forward to seeing this grow and expand over 2009.


Haylia is the one project I wanted to get done, but never did. Now I want to scrap the whole thing and start from scratch. Either way, 2009 better be the year I get it done.

PHP Framework

I haven't decided whether I'm serious about this or not. I jokingly commented on Twitter that I wanted to build my own PHP framework, something that would be a blend of all the frameworks out there currently (hopefully the best of all of them). However, it's an immense level of work, well beyond what I could really accomplish on my own.

My vision for this is to go with PHP 5.2+ support, take the routing of CakePHP (and make prefix routing easier), create a blend of the Symfony and CakePHP data modeling, and really think through the relationship between routing, controllers, views, and models to simplify things where I can.

Then again, maybe I'm barking up the wrong tree. Anyways, don't be surprised if by the time my 2009 retrospective rolls around and this is no further ahead.


Finally, this is a project I've been mulling for awhile now. I really like the idea and have chatted about it with a few people. Right now, it's a repository for prebuilt sIFR fonts but the time and energy to maintain was too high. As a result, it's sat there undisturbed for quite some time (and as I look at it now, it doesn't even seem to be rendering the sIFR fonts correctly; how sad).

I describe my intended revamp, "Flickr meets fonts." Now, I hate it when people come to me with project ideas and describe it as "Facebook meets Twitter meets Flickr meets every cool web site you've seen out there" but it's the closest I've come to be able to summarize what I'm looking to accomplish.

I'll leave it at that and, if this moves forward, I'll be sure to talk more about it.

Travel, Conferences and Speaking

2008 was a good year for me, travel-wise.

I got to go to London, England for the first time — and brought my wife along for the trip. She got to see me speaking in action at @media, which was nice.

We took the family on a Disney Cruise through the Caribbean — a nice break from work (I didn't bring my laptop). We're already booked for another cruise for the fall of 2009. It helps when a friend is a travel agent who plys us with great deals (we're also tentatively booked another cruise in 2010).

I hit up SXSW for the third year, but didn't speak, just partied. I'll likely do the same in 2009!

I managed to squeak in a trip to Boston for The Ajax Experience (TAE). I spoke at the jQueryCamp the day before TAE but didn't speak at TAE itself. The couple days I was able to spend in Boston were great fun and met and hung out with a great bunch of smart folks. I'd like to add this to my yearly routine as it was plenty fun and the sessions offered up plenty of opportunity to learn outside my normal comfort zone.

I hit up Adobe MAX in San Francisco and even squeezed in a little personal time to meet up with some fine folks while I was there. My session there went well.

Sidebar Workshops kicked off its first session to great success. We're working on putting together a few sessions for 2009, which I'm really looking forward to.

The family vacation actually put a dent on speaking engagements and I had to decline a few happening at the same time, and even dropped out of An Event Apart when my brother, who I hadn't seen in about 10 years, decided to make the trip down for Thanksgiving (we Canadians celebrate it in October). Thankfully, I've been asked back to AEA for 2009.

Also slated for 2009 is a conference I'll be speaking at that I hadn't heard about before being asked: the Atlantic Internet Marketing conference in the great city of Halifax. I'm looking forward to this as it's Canadian and it's been awhile since I've been to Halifax. (Ooh, and I get to hang with Daniel Burka and Molly again.)

Overall, I'm keeping the speaking engagements to a minimum this year. I haven't been going out of my way to line up events as I've tried to do in previous years. I'm simply waiting for the opportunities to come to me. I'm on the fence as to whether I want to continue going after speaking engagements or whether I want to shift into doing workshops. I love to travel and meet lots of smart, like-minded people but I also need to focus on a specific type of presentation and hone it, which is something we're doing with Sidebar Workshops.

Writing and the Blog

It's been a quieter year for writing. I did manage to get a couple things in .net magazine, which was fun. As great as writing for online magazines can be, there's still something about seeing your words in print. I also did an article for Sitepoint (and had my chapter from the Art & Science book republished online).

I had originally intended to participate in writing another book: Professional JavaScript Frameworks where I was going to cover Prototype. Instead, my summer filled up with client projects and I never got anywhere with it. As a result, I dropped out.

Another Book?

I do have a couple things I'm contemplating on for 2009. One is another JavaScript book that, I think, will be quite practical. It's still in the planning stages and we'll see if I find time to work on this one (although I already feel some excitement to work on it, which is half the battle).


The other project I've been thinking of putting together is a series of mini e-books on CSS, starting from intro and working up to advanced techniques. The idea being, upon completion of all the e-books in the series, it can be bundled up into one large book that can be published in print. This is more of a long-term idea and one I'll need some collaboration on with someone print-minded.

Posting Pace

Of course, the blog continues on. I've been happy with the year, having been fairly consistent in posting, albeit not at the same pace as previous years. Taking a quick look at post counts, it was actually the slowest year since I started actively blogging in 2003. As an FYI, 2003: 47 posts, 2004: 94 posts, 2005: 131 posts, 2006: 203 posts, 2007: 117 posts, and 2008: only 62 posts. That's still at least one post a week, though!

The last post of 2008 ended up being a screencast and it's something I plan to do more of, especially quick things since they're easier to put together and easier for others to digest. I keep contemplating a podcast but that hasn't come to be, either.

Happy 2009

With the financial meltdown of 2008, the fact is, things have been pretty good in my world and I only see things getting better. I live a great life with a roof over my head, lots of food in the fridge, a great family that makes me so proud, and I get to travel the world. I get to meet new friends and learn new things. I'm a very lucky man. Here's to 2009!

Published January 01, 2009
Categorized as Personal
Short URL:


17 Comments · RSS feed
Chris W. said on January 01, 2009

I think screencasts would be a great addition to your blog. It's always great to see other developers' processes and tools. Looking forward to 2009! I think it will be a great year.

Aaron McCall said on January 01, 2009


I look forward to following your progress through the year. Here's to a 2009 that is both productive and fulfilling.


Mark Bowen said on January 01, 2009

I can whole-heartedly recommend taking up the Piano. I have been playing since I was 4 (quite a while now!! ;-) ) and it is a great thing to do.

I really need to get more practice in this year though!

Nice read this one so thanks for that.

Best wishes,


Mike Taylor said on January 01, 2009

I really like the idea of mini e-books. Heck, I'd be glad to pay four or five bucks for a mini-ebook--like picking and choosing chapters out of a book.

Pete said on January 02, 2009

New year and the new year's resolutions but are we consistent enough to make them work?
I have been catching myself doing things other than work recently too ;)
These mini-ebooks idea sounds tempting.

Elliot Jay Stocks said on January 02, 2009

Happy New Year, Jonathan!

This was a really interesting read; especially when you said that you don't have any plans to grow the company. This really resonates with my own thoughts on why I'm choosing not to expand, and to be honest, I think we solo freelancers are in a much safer position that business owners with employees in the current financial climate!

Looking forward to having some beers an event or two this year. :)

Kris Jordan said on January 02, 2009

Just wanted to give you a heads up on a PHP framework I've spent the 3 months working on full-time. The Recess Framework is a full-stack, RESTful PHP framework that draws inspiration from a number of sources and is built for 5.2. Routing is one of its interesting features:

A week ago I opened the doors to the public preview release. Thought you might be interested.

Best wishes in the New Years! -Kris

Jonathan Snook said on January 02, 2009

@Kris: I took a look at the routing screencast and your approach is definitely interesting. It's an interesting approach with some definite advantages, such as the fact that routing information for a particular controller method is easily seen in the same place it's called. I look forward to picking apart the code. :)

jeff white said on January 03, 2009

Looking forward to meeting you at the Atlantic Internet Marketing Conference. I was the one that passed your name along to Rob, as I've been following your blog for a long time and think that you will bring an interesting perspective to the conference that we haven't had in years past.

Have a great 2009!

Jonathan Snook said on January 03, 2009

@jeff white: Thank you for the recommendation! I'm really looking forward to it.

Fredrik W said on January 05, 2009

Rolling your own framework sounds fun. Not sure I'd ever do it in PHP though. I've tried doing some relatively simple ORM in php and to be honest, the lack of late evaluation (even though I think it's fixed in 5.2) always forces you to state things explicility that are already defined by the context you're in (CakePHP setting $tableName vs ActiveRecord just deriving it from the class name).

My recommendation to you is to look at Merb (which will basically become Rails 3 in a year or so since both projects has merged), I think you'd like it. Ruby is actually quite easy to learn and a fantastic language packed with meta programmings goodness (great if you're building a frame work) that PHP just seems to lack.

If you're serious about building your own framework reading up on DSLs will probably benefit you greatly as well.

Good luck!

Kris Jordan said on January 05, 2009

@Jonathan - Enjoy picking apart the code, I think the Recess Framework source code is for the most part really solid. But being the author I suppose I've got a tiny bias :)

Andy Gongea said on January 05, 2009

Yahoo! YUI team sounds great.
Good luck in 2009!

Fabian said on January 08, 2009

Great post! It actually got me motivated to get back onto my personal stuff too. Thanks.

Happy new year, back at ya :)

Maikel said on January 13, 2009

I think in a similar way:
- I don't want a big company with people that rely on me.
- My hobby right now is building web applications
- I want to work from home, to have the freedom to work under my own schedule, to be able to travel whenever I want.

Have a great 2009!

brian fidler said on January 26, 2009

you could call it fonyCake. I agree that 2009 will be a great year! keep up the good work and here's to a great 4 more years until the Aztec calendar runs out.

Pat Collins said on January 31, 2009

I think there's a lot of ways to improve upon the dispatching and controller levels of all PHP frameworks out there. I do like Kris' technique of keeping routing in the controller. Really interesting. If you're going to write your own framework, I'd concentrate your energies there and try to make that layer loosely coupled to allow many Model and View solutions to be plugged in.

IMHO, there are plenty of excellent solutions out there for ORM (Doctrine is a great example) and management of views (Smarty, etc.) I'd actually love to see a fully thought through PHP implementation of Django's template rendering engine. PHP 5.2+ would put some power behind that.

Love the blog. Keep up the good writing.

Sorry, comments are closed for this post. If you have any further questions or comments, feel free to send them to me directly.