My journey to craftsmanship - Freelancing and start-upping

23 July 2021

The first gigs

My first child was born in April 2008, and I started freelancing in the fall.

A snippet of wisdom about starting freelancing is that you should have a financial cushion of about six months if things don't turn out well (it's hard to develop software from under a bridge). I had a bit more, although, for total transparency, I wouldn't have ended up on the street no matter what.

I received my first real-life lesson in freelancing in the summer. I was still working at Blogads but expected to take on a freelancing side-project in Rails I was "drafted for." The project never took off, but that wasn't a catastrophe: I was lucky to learn early in my career that I can only count on a gig if the contract is signed and the work has begun.

Conferencia Rails

Keeping contact with my Spanish freelancing peeps, I learned about a Rails conference ("Conferencia Rails") in the early fall. I met Aitor and Alberto there, who had a small company called LinkingPaths. Rails was becoming hugely popular, and they were developing apps both for clients and an open-source platform in-house. They became my first client, and I couldn't be happier.

Living on the edge of Budapest, the time I spent traveling to the office and back home went from 2.5 hours to 10 seconds so I could spend way more time with my baby daughter. The guys at LinkingPaths were great dudes, and we had a great time working together.

I wasn't always that lucky with clients, though. I won't name names, but one of them disappeared from the radar when he should've paid for a large amount of work. He didn't answer any of my emails, messages, or phone calls. Weighing my options and still having access to the site I'd been building for him, I replaced the content of the home page with a single message: "Jake, the work is done. Pay up." (His real name is not Jake.) My phone rang two minutes later, and he promptly transferred the sum.

Except for the occasional nuisances, I had a happy life freelancing. I kept going to Ruby/Rails conferences, and I was a master of my time and professional development. I didn't mind having to deal with finding clients, negotiating contracts, and other necessary activities I hadn't had to do as an employee. I didn't particularly like some of them, either, but it was well worth the freedom it gave me.

Then, in the spring of 2010, a friend we worked with on a few projects convinced me to join a startup.

Startup life

I've never worked in a startup before. However, it was very much like I imagined: very few and very motivated people, a ton of energy, and willingness to change the world - even if only by making the online shopping experience of clothing better. I was imbued with enthusiasm and was even willing to work on some Saturdays, though less enthusiastically so.

My second child, a boy, was born in the fall of the same year. The importance of spending time with my family, the grueling commute to and from the office, and the fact that I haven't felt the same office vibe as at the start made me gradually lose my enthusiasm.

I was rushing to the bus, from bus to tram, from the tram to subway, to sit in a place where I didn't feel that well became a chore. That probably showed in my work, and they let me go towards the end of 2012 before making the same decision myself.

Hugely relieved, I made the hour-long commute home with a smile on my face and knew the following day I'd be back to freelancing.

Switching tracks

I've been following Rob Walling, a serial "micropreneur" who had a blog, a book, and a podcast about launching tiny businesses alone or with a single partner. I contracted the bug of wanting to have a product that makes money while sleeping from my startup years. Having a profitable idea and being able to implement it is huge. Though I'd been vaguely aware of it, Rob's book hammered home the point that it takes way more to sell a product than coding it up.

I followed the steps described in Rob's excellent book, "Start small, stay small," to validate a few product ideas, and none of them seemed worthwhile to pursue. At the same time, I was running low on money, so I abandoned my idea of becoming a solopreneur and started doing two things: looking for freelancing gigs and checking what's hot in web development to acquire new skills.

Start Small, Stay Small book

That was in the winter of 2013. Web apps were becoming more interactive, and for the more serious ones, "sprinkling JavaScript" here and there to improve user experience wasn't tenable. The first client-side frameworks appeared, and one of the few at the time, Ember.js, caught my attention. One of the architects behind the project was Yehuda Katz, the same guy who'd previously hugely improved the modularity of Rails. It was early days for client-side frameworks, but I trusted that whatever Yehuda is involved in must be good stuff.

Ember.js

Luckily for me, shortly after I started playing around with Ember, I've found a paying project that involved Rails and Ember.js, with an emphasis on the latter. The project took about six months, and I went from knowing very little about the framework to being quite proficient in it.

Not only that, but I've developed a fondness for Ember. It certainly had a steep learning curve (not least because of a lack of up-to-date learning materials at the time), but it was beautiful, and I wanted to have others feel the same a-ha moments I went through.

I attended the first European Ember.js conference, EmberFest, with a couple of friends in Munich in August 2013. I came away enthusiastic, and shortly after, a new idea was born.

Share on Twitter