Jeremy Harris

This post is very old. Technology, especially open source, moves very fast and it's likely that some of the information could be out of date. Please take that into consideration as you read this post.

Jun 2013

Contemplating CakeFest?

A while ago I answered a question on StackOverflow that asked:

"Can anyone who's actually been to an official CakePHP workshop or knows the format tell me what a non-beginner could reasonably expect to get out of one?"

Even though the question isn't a fit for SO, I wanted to answer it for the sake of the person asking. Since CakeFest is coming up soon, I wanted to give some insight into what it is and how you can benefit from it. This post is more intended for people who haven't gone yet, and who may have to convince their boss of its worth. If you attended before and don't think you got much out of it, read this and come again with a different perspective.

(I have, sadly, only been to a single CakeFest, in 2010. I don't get paid a ton for what I do, which was by choice, so it's hard for me to afford tickets around the globe. This year it's close by so I am definitely making it out there [come meet me!]. Since I've been only to one, that doesn't mean I'm an authority on it. However, the experience stuck with me so well that 3 years later I still think about it and try to convince people to go.)

The workshops

So, should you spring for the workshop ticket or just the conference? If you're a hands-on sort of learner and you're somewhat new to CakePHP, I *highly *recommend shelling out the extra money for the workshops. The workshops I attended taught, from start to finish, how to create a local development environment, bake a project, and develop on it. It also brought some less-than-thought-of features that Cake has to the forefront of my mind (the Set class comes to mind). That's some pretty useful knowledge, especially if you're a self-taught, isolated developer like I am. It also solidified the Cake dispatch process in my mind, which was a nice epiphany.

The workshops are taught by CakePHP core developers. You know, the smart people. If you have questions, they will answer them. Having that kind of access to that sort of smart is worth the few hundred dollars more. The CakePHP book is great, but nothing replaces talking with the person who designed the code.

I've always considered the best way to learn is to surround yourself with people smarter than you. This is an excellent opportunity to do that in a relaxed, hands on environment.

The people

This can be applied to most tech conferences, but the people are awesome. These are some of the smartest individuals I've had a chance to meet. They're full of ideas and have a passion for open source. That's crazy to me - they want to give their intellectual property away. I'm not talking just the core developers. Many an idea were triggered by idle conversation with other developers. Meeting people is invaluable.

Not to mention the connections. If you freelance, this is a great way to build up a network of trusted developers. (Remember that a network doesn't just mean work going out, it means work coming in, too.)

Socially, it's great. I'm not a super social person (surprise, I'm sure) but this is a comfortable environment. Forget about all these issues we've been having with conferences in the industry, and just hang out. Also, if you're intimidated, don't be. I've become less and less intimidated to talk to my heroes because the more I do, the more I realize that they're people too. They surround themselves with smart people, and have heroes, just like you and I.

How amazing is it to hang out with down to earth geniuses? A: very.

The conference

The conference accomplishes three things, as I see it. It teaches you, it catches you up, and it inspires you.

Most of the talks I went to didn't teach with code so much as they taught me standards, practices, and ways to solve problems. Learning new ideas and best practices makes you a better coder. For the self-taught, it's infinitely more precious to know these things, because you are likely the only one holding yourself to them. I remember one talk specifically where Neil Crookes talked about a pattern for designing datasources for APIs (video of talk: http://www.youtube.com/watch?v=vNxePdgdKwE). This talk is what inspired the design I use today for connecting with APIs, for example, my Stripe plugin. This is just one example of a talk teaching me patterns I may not have come up with on my own.

The open source world moves pretty fast. Like, really fast. Even if you only manage a web app or two, chances are that app is using some open source projects. More than you might think. Keeping up on this stuff is hard, and CakeFest usually has a talk or two dedicated to bringing some of the bigger changes to light. Getting an idea of what your upgrade path is going to look like for, say, CakePHP 3.0, is very useful. Learning about all the new features and optimizations is always a ton of fun, too.

The last thing I'd say the conference does well is inspire you. Nothing inspires me more than talking about ideas with other people and learning about all the cool things they're doing with a free product. Just knowingabout the cool new toys people are using and the new additions coming to our favorite framework is enough to give you a nice little boost. That year I came out of CakeFest and launched my first product to the world.

The cost

Is the cost worth it? Absolutely. It may seem high at first glance, but these conferences cost a *lot *of money and a lotof time. Remember that, if you buy the full ticket, you're getting 4 solid days to talk to some very talented people and learn some things that you might have ended up Googling for the next year. Try paying a single professional consultant that for an 8-hour day, and you'd like be laughed at. There's a lot more value in attending CakeFest than the bullet-points you write in your notebook.

I'm still drawing on my experience from 3 years ago. So yeah, the conference has paid for itself many times over, in ways that cannot be purchased.

Just go. If by the end you can honestly say you didn't get anything out of it, hit me up on day 4 and I'll buy you a consolation beer.

Jeremy Harris is a web developer with over 10 years of experience. He's coded in many languages and currently focuses on PHP, both agnostic and framework-based. When he isn't at the keyboard, you can find him walking @riverthepuppy or brewing beer. He only talks in the third person when peer pressure dictates he should, such as on his blog.