Alright now, I’m not a job hopper. Moving to a new job is a risky endeavor for me. I invest a lot of my SELF into my job. And I’m old school. I’m loyal. I believe in toughing it out to the end. I believe in taking a hit for the team.
Perhaps that is a dumb attitude in this day and age, and perhaps my loyalties have kept me from some great opportunities (but I’ll never change that about myself), but one thing I’ve learned through my career is that sometimes pushing yourself out of your comfort zone is the best way to grow.
Comfort zone was what I was in at my last job in San Diego. I was Director of Technology at Red Door Interactive. I had the best team of developers there. They worked together selflessly. They endured the constant interruption and emergencies that is the nature of agency work with style and grace. Great chemistry. Love that team.
Kari and Jeff during a bbq at Mission Bay
Halloween costumes: Kari as Air Force Pilot, Omed as Charlie Chaplin, me as Mud Run Victim, Ronel as Japanese Tourist
So, why did I leave? Well, for one, being so busy, I longed for a place where I could go on a hike in the mountains before work without having to drive 30 minutes to get to and from the trail (and then 30 minutes to and from work). That’s already 2 hours of driving time, which means I have to get up pretty damn early to fit it all in. Not going to happen. Not while working “agency hours”.
Me at the Teva Mountain Games in Vail
I also wanted more of a technical challenge. As I had transitioned to managing people more than writing code and as I saw the ability to be innovative pulled away by the need for projects to come in under budget (again, just the nature of agency work), I knew I could not last.
As scary and uncomfortable as it was, moving to Boulder has so far been an amazing experience. I feel so lucky to have the opportunities I’ve had, met the people I’ve met. I have some amazing possibilities on the horizon and I could not be happier with what I am working on.
So, what about you? What do you really want to be doing in your life? How can you get there? Push yourself…see where it can take you! One more day to apply to http://boulder.me doooo itttttt….!
Or “How I finished my first WordPress plugin without being a total n00b”
One common issue when you are working with a new technology or api for the first time is figuring out the best practices and snags. Sure, once you have been writing code for over 10 years, you can pretty much hang in any language. However, it doesn’t mean what you are going to write is any good. The biggest problem is that engineers tend to re-invent the wheel. My friend Tobias and I were having a conversation about this when he mentioned this book “Dreaming in Code” which illustrates this issue very well.
I recently wrote my first WordPress plugin for Me.dium. It’s not released in the wild yet, but I have it here on my blog (on the right, under the MyBlogLog widget). I pull in an RSS feed of Me.dium’s hot search terms. The feed is cached in order to reduce load on Me.dium’s servers. You can also configure the number of terms to show as well as whether or not to show the descriptions. The plugin itself is very simple, but the value I got was in the process of writing it.
So, how did I write a solid PHP plugin in a room full of Java Engineers who may not even know what WordPress is? I decided to work as collaboratively as possible, even in isolation. I tried to keep to my motto–If you have to force it or it’s too hard, you are doing something wrong.
First I set out to ask some experts. I sent an email out to some WordPress hot shots asking how to approach certain problems from a strategic perspective. How is it best to store settings? What level of configuration is too much to ask for users?
Not everyone answered my email, but Alex King did. He saved me hours of research work by letting me know about the settings table (duh!).
I went on a hike with some buddies, including Alex from Gnip who helped me consider the best time to parse and store my xml. My tunnel vision was so focused on storing the data that I couldn’t see that there was a better way to store it. My original plan for storage seems completely absurd now–what was I thinking? More hours of work saved with a simple conversation.
I also posed my question on seesmic:
Anyway, the point is I had a ton of fun and the process ended up being quite collaborative, even though I was working somewhat in isolation. I am happy to write a more technical blog post as per my usual, but wanted to share this higher level thought process.
ps. Special thanks to Jud for pointing out that there was NOT a for loop bug in my Windows PHP install, but that I was missing a $ in the middle comparator. SRSLY!
Today is officially the first day of my free fall into having my own startup. I got back from a wedding on Orcas Island late last night, with not a lot of time to ponder my next move. I’ve been spending the last few months trying to piece together a prototype on my nights and weekends. As any programmer knows, doing this kind of work in short bursts can be severely inefficient.
In order to carve out more space for myself, and yet still pay my bills, I’ll keep my current job 3 days a week and then have the other days to dedicate to my new startup. It’s somewhat bitter sweet because some really amazing stuff is happening now at current job, but I’ve gotten the bug to go out on my own and it’s been brewing steadily and slowly for a while, waiting for the right time/people/circumstances.
Now, I sit with a whole entire day dedicated to myself and while I certainly know what to do next from a “task list of to-dos” perspective, I’m feeling the shock of having this new space for myself. Space to concentrate, space to create, space to focus, space to try something new, space to challenge myself.
So, even if the landing is hard (remind me I said this, please, when I’m crying and wondering how I thought I could ever do this), now, I jump.