Interview with Jonathan Snook

Content

published on October 06, 2008

Jonathan Snook is a pioneer.  He is a well known PHP developer; it should be said that he does much more than that though.  You have probably read one of his blog articles before, maybe this one, or this cool mini-app he developed on his popular website http://snook.ca.  Using his blog he gained some notoriety in the subjects of PHP, CakePHP, JQuery, Adobe Air, CSS, and Design.

He has also co-authored a few books about Javascript and CSS.  Aside from his astute technical skill he also shows business savvy by creating campaign networks, joining great minds of web design and development to create Sidebar Creative, and other streams of alternative revenue.  And the fun part is I haven’t even scratched the surface of everything he’s involved with.

Of all the professionals brains to be picked that could really help you, the student, this is one to pull up a chair and listen to, self made, minimal schooling, and a bright bright guy.

Jonathan lives in Ottawa, Canada where he freelances his little tail off.  Read on and try to absorb as much of his rich goodness as possible.


Give us your back story, how did you fall into this field?

It’s hard to say whether I fell into this field by accident or on purpose. I’ve always had an interest in computers and technology and jumped on the World Wide Web (picture that with a deep voice and serious echo) back in 1995 and usenet forums, gopher, and archie for a few years before that.

What's your educational background?

For formal education, I have a high school degree. I never bothered with university or college as I was quite directionless after high school. The web stuff has been a hobby for so long that I just picked it up as I went along using online tutorials and the odd book. I was on the verge of taking a certification course at the local college to have something more formal on my resume. I wanted to make it easier to get a job but once I landed my first job (by doing a two week project), it really wasn’t necessary anymore. On-the-job learning has been fantastic and I’ve really gotten to enjoy working with some great people while still learning plenty of new technology and learning about the business.

Did you find your education beneficial to your field/current job? How so?

Having learned what working in an agency is like, I’ve definitely been able to take those skills and apply them to what I do now. I don’t think you could just leave school and jump into being an entrepreneur. Sure, you might get lucky but there’s plenty to know about how to deal with clients, plenty to know about the industry and plenty to know about what the best approaches to a problem are. There’s more to design and development than just the work itself. There’s the people aspect and it’s important to learn how to work with people (which is one of the biggest benefits of school).

Tell us about your work, what do you find yourself working on most of your days?

I’ve considered myself a “jack of all trades”, being able to do design and development. This comes from working in an agency where every project is different. When I first went freelance, I tried to carry those skills into the projects I accepted. But by accepting any project thrown at me, I wasn’t realizing any potential benefits. I couldn’t establish a repeatable process that could simplify what I do, maximizing value for the client and maximizing profits for myself. It’s only been in the past year that I’ve really understood what it is that I’m good at (development, if you’re curious). I’ve really tried to narrow that down to PHP and JavaScript since they’re very popular and flexible platforms to develop on. I normally have two to three projects going on at any time and normally focused on building custom content management systems for clients.

So I don't know if you've heard but the students at Damascus High School are studying Web Standards, Accessibility, JavaScript, AJAX, PHP, Databases, and more. What's your take on this?

It’s fantastic that they’re picking up these skills so early. The web industry has been able to mature over the past 10 years and we’re really beginning to understand how to take advantage of the technology. There’s two things I want to mention: diversity and best practices.

On the diversity front, it’s important to have a well-rounded understanding of how everything comes together. You don’t have to be particularly good at everything, just a couple things. You can be a designer, but you should understand how the medium works, understand how interactivity works, and understand how things are processed on the backend. Vice versa, if you’re a backend developer working in PHP and databases like MySQL, understand what’s going on the front-end. How should data best be structured? How is interactivity going to affect the data you’re pulling out?

On best practices, our industry is still fairly young. There’s also some permanence when it comes to the web. There are resources that are simply outdated but they stick around because nobody takes them down. Search engines think they’re important because they’ve been around. It’s like going to the library and finding a book from the 1950s about how to be a good wife. It’s outdated. Understanding web standards, accessibility and current practices with all sorts of technologies will keep you better prepared. More importantly, always be willing to question the status quo. Don’t accept everything at face value. Understand the technique but understand why it’s being done the way it is.

With Web Design/Development being in it's infancy in the occupational field there is a struggling number of quality undergraduate programs and no Masters' or Doctoral programs. What are your suggestions for a high school graduate who has decided to pursue higher education in this field?

As a designer, learn about graphic design in general. Learn about commercial design and print design, and typography, and colour theory. Many of these things can still be applied to the web. Likewise, on the server-side, take computer science. Learn about algorithms and how to program in C. It may not seem applicable but I can’t tell you how many times I’ve said to myself, “I should’ve paid more attention in school!”

If you could only design monochromatically from now on what color would you use and why?

Green (#99CC00, to be precise)! If only because that’s the colour I’ve established for my web site years ago and still use to this day. It’s become part of my personal brand and I try to use it, or a close variation of it, whenever I design something related to me or my site.

If you could only program in one language what would it be and why?

JavaScript. It’s the most flexible language I know. With JavaScript I can program in the browser (including add-ons for Firefox), desktop widgets, Adobe Acrobat, on the server (using JScript or Rhino), Flash, and who knows what else. It’s become a very ubiquitous language.

If you could only read one blog for the rest of your days what would it be and why?

Probably Digital Web Magazine. I’m not sure it qualifies as “a blog” in the web journal sense but I still enjoy the articles that come out of there (and I’m not biased because I’ve written for them before!).

In conclusion, if there was only one nugget you can pass on to high school students (14 through 18 year old) web design related or not, what would it be?

Follow your passion. If the web is your passion, learn what you can. I’ve had a couple job interviews where I’ve gotten the job and when I’ve asked what made me stand out, they said “passion”. Anybody can learn this stuff but only a passionate person will continue to learn, and you need to continue to learn every day, to stay on top of the game. I’m in my mid-30s now but I continue to learn new technologies and new techniques. It’s what I enjoy doing and I’m happy to have a successful career doing what I love.


Jonathan, to you of all people, I know you must have a to do list a mile long so I genuinely appreciate the time you took to answer some questions that will benefit high school students.  Thank you!

What are people saying?

Name:

Email:

Location:

URL:

Remember my personal information

Notify me of follow-up comments?

Submit the word you see below:


Jeff Brown
Montgomery County Public Schools
25921 Ridge Road
Damascus , MD , 20872 USA
(301) 253-7062