About

James Golick

James Golick's software experience ranges from artificial intelligence to web front-end and JavaScript development. Most recently, James has fallen back in love with web development thanks to Ruby on Rails.

Since discovering Rails, James has become a prolific contributor to its open source ecosystem. He is the author of several popular plug-ins and gems, and a contributor to countless others, including the framework itself.

James is an advocate for well-written, well-tested code and he blogs regularly about the practice of developing software. He speaks regularly at software development conferences and user groups. James is a partner in Nine Lives, Inc.

Latest Tweets

follow me on Twitter

James on the Web

MoR => open_source_hackfest?

Nov 04 2008

Over the last year or so, I’ve really enjoyed Montreal on Rails. There have been lots of awesome presentations, and general good times had by all.

When Carl asked for feedback on Uservoice, a lot of people seemed interested in more presentations geared towards newbies. While presentations can be really interesting and useful, most of the best programmers I know learned their craft through open source work. There’s no better way to improve your skills (not to mention your profile in the industry).

So, I’ve been thinking about organizing a monthly, open source hackfest.

It would be an informal evening where people could come and work on FLOSS. If you have a project, it would be a great place to get help from some of your local ruby gurus, or just an excuse to work on your project. If not, it’d be a great place to pick up a project and learn from other developers.

At the end of every evening, we could have a few lightning talks (5mins), to give people the opportunity to show off what they’ve been working on. Or not, if nobody wants to speak. Only rule: no preparation allowed. No slides. Nothing.

Think of it sort of like Zed Shaw’s Freehacker’s Union, minus the hazing ritual for new members.

So, what do you think? If we turned MoR in to an open source hack fest for a couple of months, would you miss the presentations? Is this something you’re interested in trying out? Will you be offended if we open it up to all things Ruby, instead of just rails?

Please direct your comments to the post on the MoR blog.


Rails Training w/ James Golick & Other Rails Ninjas

Apr 29 2008

This past December, a friend of mine, Peter, wanted to improve his rails skills. I had been asked by a few people about teaching some rails training sessions, but wanted to give it a beta test first. When I was in Toronto over the holidays, Peter and I gave it a trial run, which went great. Since then, I've been dying to offer ruby / rails training to a wider audience.

How It'll Work

The sessions will be based on the format that I tried out in my beta session with Peter. We'll start by covering some advanced rails fundamentals, with time for questions, and plenty of time to go off on long tangents about whatever you might want to learn (like, how to write a plugin, or how some of the rails internals work). The remainder of the session will be spent coding.

During the coding portion of the sessions, the instructor(s) will pair program with each of the participants in a rotation. Think of it as an opportunity to work extremely closely with a rails expert. We'll be able to apply what we've learned in the earlier portion of the session. We'll work on your real problems; that way, we'll be teaching a custom course that's custom tailored to you, and you'll walk away from the experience with some code, to boot!

Participants will be asked to bring two projects: one in progress (or finished), and one idea.

  • The project in progress serves as a tool for analysis of where you're at, and what kind of coding practices you have in general. We'll work out some possible refactorings for that project, and talk about how you'd make use of advanced rails techniques to improve its readability, maintainability, etc.
  • Next, we'll work on your project idea. The rest of the session will be spent architecting, and actually coding this project. We'll help you pick the right plugin set, model your data, and anything else.

Logistics

  • I'd like to offer the first session some time in early July, most likely over a weekend.
  • The sessions will be held in Montreal, unless there's a compelling reason to offer them somewhere else, like, a group of participants who all live in the same city.
  • Price is still TBD; I've got some potential sponsors (which would offset the price for participants), but nothing confirmed yet. There would certainly be a discount for groups or companies.

Finally, I intend to keep the instructor to participant ratio extremely low to support plenty of one-on-one time. So, if there is sufficient interest, I'll get some of my fellow Montreal rails ninjas in as additional instructors. I've got some awesome people in mind. Who knows — you might even get scouted by one of the local rails shops!

If you're interested, send me an email (top right) for more info.


Montreal on Rails #3

Oct 03 2007

With our new digs, things were better than ever at last night's MoR. It's really great to see so many people sharing their knowledge, and just participating in the Montreal community. Aside from my presentation, Gary, and Francois both gave outstanding talks.

Javascripting for Rails Devs

Gary Haran talked to us about how to use prototype.js to ease some of the pains of writing javascript, and get yourself a beautiful ruby-like API. Since Gary taught me everything I know about Javascript while I was working at ZipLocal, I have been pushing him to share his knowledge with the masses, and he finally did with last night's presentation. Javascript (especially when combined with prototype) is awesome, and I hope this will be the first of many presentations from Gary on how to harness the awesome power in JS with less of the pain.

Piston: Vendor branch management made simple

François Beausoleil, the author of Piston, the excellent vendor branch management gem, was nice enough to come all the way to Montreal, and talk to us about his creation. In a nutshell, Piston aims to solve all of the problems that you get, when you depend on svn:externals to manage plugins in your rails app. Things like a new revision of a plugin breaking all your tests, and blocking deployment of a critical bug fix come to mind. I had heard a lot about Piston before his talk, but I am now fully sold, and will spend some time converting my current apps to use it this afternoon.

After all the talks were over, I had some great conversations with some of the awesome Montrealers who attend these great events. I talked Giraffes with Mat, iPhone(s) with Carl, number puzzles with Daniel, debated test macros with Marc-André, and discussed the latest and greatest in photography world with Alain Pilon. All in all, a great evening. Thanks to Fred and Ben for the space!

For more on last night's event, check out the photos, and my post about my presentation. As I said in my other post, video of last night's presentations will be available very soon.