Tuesday, July 28, 2009

webmachine: intriguing

A few days ago, rjbs pointed me at Webmachine, "a REST-based system for building web applications".

Its central concept is a pretty mind-blowing inversion of control compared to I'm used to in Catalyst-Action-REST. Webmachine says that there's only one way to handle a request to a particular resource. That means that you don't write any of the logic to decide what status code to return -- you write a bunch of hooks that let Webmachine decide it for you. Similarly with content type (both request and response), etag, etc. -- here's the full list.

Webmachine's still sinking into my brain, so I haven't gotten my mind around how it might be done in Perl, let alone how it'd fit into something like Catalyst -- Webmachine also has a URL dispatching mechanism, but it seems to be almost entirely separable from the resource dispatching mechanism (the HTTP graph, above). I'm looking forward to playing around with these ideas more, though, because Webmachine seems to solve a few of the architectural problems I was having with C-A-REST.

Friday, July 24, 2009

back in the saddle

Almost exactly a month after being laid off, I've accepted a job with Grant Street Group. Schwern pointed me in their direction when we were both at YAPC, and I'm glad he did; everything I've experienced with them so far has been positive, and I'm excited to be starting with them (on Monday!).

This also means that we'll be moving back to the East Coast, this time to Pittsburgh. I'll be telecommuting, but while our time in Portland has been fun and Portland is a very enjoyable city, the fact is that we've also really missed being able to visit family without spending a thousand dollars and two days in a plane each time.

The next month is going to be crazy -- our goal is to be in Pittsburgh by September 1st, and between moving and starting a new job, I'm not sure how much time I'll have for blogging or hacking on personal projects. I promise I'll try to pick everything back up as soon as possible!

Thursday, July 9, 2009

YAPC wrapup

I know this post is a bit late, but I was busy after YAPC dealing with my unexpected unemployment. Sorry!

YAPC is always great for reconnecting with people who've been just words on a screen for the last year. rjbs and I managed to get a room together, so much hilarity ensued; the first thing he greeted me with when I arrived was "I've been avoiding working on slides by reading Wikipedia articles about Spider-Man's Clone Saga. Let me tell you all about it!" (Since I also needed to avoid working on my own slides, this was a welcome diversion.)

I always feel a little skeptical about the arrival dinner. It's always loud and expensive and the food is often merely adequate. Rik and I showed up, but didn't stick around for very long, since we'd almost exhausted our store of slide-avoidance time.

Monday I gave two talks, about CPAN packaging and deployment and a quick overview of Dist::Zilla and its workings. I wasn't sure how they'd be received, since this was my first time speaking at YAPC, and it's a little more intimidating than talking in front of a local Perl Mongers group. Both went well, though, and it was gratifying to hear people saying "I'm totally going to use that!"

It was between those two talks that I got the call from OpenSourcery: "This is Brian, with Josh and Kris; can you please call me back as soon as possible?" My first thought was, "Well, I don't have a job anymore. I guess I need to call them back to find out why." It's hard to imagine a better time and place to be laid off than the first day of YAPC, though, with all the networking possibilities (and fellow hackers to buy me consolatory beers).

Monday night I felt feverish and lethargic, and Tuesday morning's talk on Moose roles and type constraints was difficult to get through. I ended 10 minutes early, partly because I didn't have the energy to explain all the examples as much as I had expected to. I went straight back to the dorm afterwards and slept for an hour and a half. This helped immensely.

Tuesday evening's auction and dinner was one of the better ones I can remember. First, I happened to sit at a table full of Canadians, several of whom I found I already knew (Adam Prime, Michael Graham), and we had a fun conversation about all sorts of random things the whole evening. Second, unlike many years, the auction did not drag on interminably, so we had plenty of time for said fun conversation without the mental overhead of having to tune out Uri's haranguing voice.

I barely remember Wednesday, except that Karen called me out during her talk for something I said on Twitter (and a followup from Rik), which caught me by surprise for some reason. Maybe I'm not really used to the idea that people actually read the things I write in public places.

Talks I really enjoyed:

Thursday was the Moose Hackathon, which was a great time that I will address in more detail in another post. I think the highlight may have been watching Rob fall off his chair laughing not once but twice.

My summary from twitter, still true:

despite everything going on with my (lack of) work, probably one of my favorite years

Friday, July 3, 2009


Last Monday, I and 6 or 7 others were laid off from OpenSourcery. I'd just given my first talk at YAPC, and I wasn't really expecting to find out that I didn't have a job anymore. Whoops! If anyone wants to hire an experienced Perl programmer, take a look at my resume.

I'm going to try to fill most of my unemployed time with work on Moose and Catalyst. I'd been working on CPANPLUS::Dist::Deb, but that's much less compelling without a work environment to target -- luckily, I think Josh ben Jore is going to pick up a lot of my slack.

Meanwhile, I'm rebooting my blog here. I'll fill in old posts from OpenSourcery and try to get back into the Iron Man challenge.