How Learning to Code Changed My Life
You know that feeling you get when you have a few bucks in the bank but you can’t get it out because the ATM doesn’t dispense single dollar bills? It was like that.
I was working at a restaurant in Costa Rica earning about 85 cents an hour. I got paid once a month, and payday was always a long way away. I was surviving off the meals I could eat at work and the very fortunate abundance of delicious tropical fruit. Back home I had intermittently taken classes at various community colleges and stayed afloat through odd jobs painting houses and bussing tables. I’d save a little money, take a semester off and go travel somewhere, then return home and repeat the process. I was living the backpacker dream, but I had a (bad) habit of always getting back to the States with very little money in various forms of non-US currency. Traveling the world is amazing, but being flat out broke is undoubtedly not.
Then one day, in a hammock, in this context, the idea came to me. If I could learn to code, I could work from anywhere. Not only could I work from anywhere, but I could probably build pretty neat stuff and make pretty good money doing it. Maybe one day I could even return right here to Costa Rica and bring my job with me. With this epiphany my path was set. I went back to the States, and a few years later I graduated with a degree in Computer Science from Southern Oregon University in the lovely town of Ashland, Oregon.
Not long after I graduated I packed my things and headed towards San Francisco. After several failed interviews and too many nights sleeping on the couches of gracious friends and family, I finally landed my first “big” job. It was with a small technology startup building energy and sustainability software. It was basically a paid internship, but it was something. It was something great actually. The mission was inspiring. The office was in downtown San Francisco with a view straight down onto Market St. from the 11th floor. The lobby was so fancy, and there was a huge fountain in the plaza just outside the front door. It was both incredibly exciting and incredibly intimidating. I felt like I had to wear slacks and a collar every day, and nice shoes. I sold my old, barely-used guitar to pay for gas and some business socks. Seriously.
It took all of 10 minutes on the job for me to realize I was woefully underprepared. I had no idea where to even start. Not only with the subject matter of the company, but with the subject matter of what I thought I had specialized in during school. I had to google everything. It felt like I had to learn it all from scratch, on the fly, in the moment. It seemed 100 times more complicated than what I had seen before. I dreaded the first few client meetings. During these meetings I kept repeating to myself, “smile and nod, take notes — smile and nod, take notes…” I feared one of them would ask me a question and I would have literally no clue what they were talking about, and no clue how to respond.
For several months I would go home, make dinner, then brew a cup of coffee. I’d keep working well into the night just to feel like I could show up to work the next day having accomplished something meaningful. It wasn’t fun. That said, after a few months I started to get the hang of it and everything started getting easier. I started to get better. I could do things faster, think more creatively, define the goals and roadblocks. I didn’t have the answer to every problem, but I knew how to find it. It was 3 months into the job that I had my first review with the CEO, and she told me that she thought I deserved a raise. Sweet relief. At that point I finally considered myself an actual software engineer.
Since those days I have had the opportunity to work with many innovative companies on an array of fascinating projects. I’ve helped make the world’s largest distributed solar monitoring network more precise and robust. I’ve worked with the world’s largest financial institutions to enhance their fraud detection systems, and their ability to rapidly deploy these systems at massive scale. With a few friends I launched a company where we very seriously tried to create a new way to search the internet. It didn’t take off, but we learned a ton.
I’ve worked in downtown San Francisco and throughout Silicon Valley for the better part of the last decade, but I’ve also been able to take my job just about anywhere I want to go. I have worked from Europe, South America, Southeast Asia, back through Central America, all over the great States and beyond. It’s nothing short of incredible.
It was with a bit of luck that I got the opportunity to start teaching advanced programming topics at my previous job. While working as a Solutions Architect for the company behind Cascading and Driven I was tasked with teaching both publicly available courses as well as private courses inside a number of Fortune 100 & 500 companies. During these training sessions I learned how much I really enjoy teaching and sharing these skills I had learned.
Last spring my wife and I spent a few months in Costa Rica, and I just kept working at my job in San Francisco without missing a beat. I left the office on Friday in San Francisco and showed up for work on Monday (online) in Costa Rica. I could be just as productive, if not more, working remotely than when in the office. I also met plenty of other travelers and locals alike that could just as readily do what I do, but didn’t know where to start.
At that moment I started thinking that everyone, everywhere should have access to these skills. When I look back on how the decision to learn to code has affected my life I am amazed. It has given me economic opportunity, as well as location independence. It has given me the ability to continue traveling the world, while solving exciting engineering problems and generating income from my computer. If it changed my life for the better, it could change others’ lives for the better too.
While continuing to travel over the last year, my wife Kim and I continued meeting more and more people that wanted to learn to code. We knew that with my software/training skills, Kim’s marketing/bizdev skills, and both of our travel chops, we could build something incredible to help people learn valuable skills, and keep exploring.
We got to work, building a curriculum and website while still on the road — renting a house overlooking Lake Atitlan, Guatemala. The traveler’s version of a garage start-up. Now we’re excited to share CodingNomads with the world.
At CodingNomads we specialize in two things — teaching people how to code, and traveling the world. As both of these two things have so positively affected our lives, we are naturally compelled to share them with as many people as possible. Our mission is to help people of all backgrounds improve their skills to improve their lives, and we do this through hosting coding bootcamps abroad. Our first course is this March in Bali, and we couldn’t be more thrilled about the response we’re getting so far.
Both learning to code and world travel have radically altered the course of my life for the better. It’s our goal through CodingNomads to share both. If you interested in learning with us, teaching with us or traveling with us, we’d love to hear from you!