Digital Nomad Steph Smith talks learning coding while working full-time

I had a chat with Steph about using the Product Hunt API to win the Inclusion Prize last year and how she has learned coding while being a digital nomad. Steph is a big advocate of remote work and building side projects without quitting your job.

Can you give us a brief introduction about yourself?

Hi! I’m Steph. Three years ago, I left consulting and my 2+ hour commute to redesign my life. I now work remotely, leading the Publications team at Toptal, creating things as an indie maker, and writing about remote work, productivity, and technology on my blog.* Last year, I started learning to code and have since built five projects, one of which went to #1 on Product Hunt and another that won an award for Inclusion. **Since publication, Steph has founded Integral Labs, supporting top tech companies with their products.

How did you get into coding and what methods have you used to learn? Was there anyone that particularly inspired you?

Back in 2016, I was lucky enough to stumble into a role that was integrated with the world of technology. Throughout my first few years in this marketing role, I was able to first-hand how ubiquitous technology was becoming, yet my lack of technical skills was limiting my ability to truly participate. I had seen so many founders and creatives (Pieter Levels, in particular, was a massive inspiration) find a more sustainable and passion-driven life through technology.

I started by taking a full-stack web development course on Udemy and making coding my main goal for that year. I conceptualized a project that I was determined to build and that was my driving force throughout months of ups and downs.

I love your Make Yourself Great Again website! How long did it take to make and how did you go about making it?

Thank you! That particular tool was created alongside Women Make’s 30-day challenge. Initially, I was overwhelmed because it took me several months to build my first project, but I was determined to push myself to launch this one in 30 days.

The website is built with HTML, CSS, and JQuery on the front-end, alongside Node and MongoDB on the back-end. All of the charts are made with Chart.js, which was completely new to me.

I really enjoyed this project as it allowed me to dive into implementing new functionality, including login authentication, live-updating fields and charts, tooltips, and more. It was a significant step up from my last project and I was pretty happy with its response, including the seal of approval from my mom. :)

An important takeaway from this project was that each time you build and launch, you always learn something completely new!  


You made really great use of the Product Hunt API with Femake. Can you tell me what that project involved?

Sure! I was getting more immersed in the maker community and therefore the world of Product Hunt, but I wanted to know how many makers were “like me”. Specifically, I wanted to understand where we stood, because without any tangible numbers, there would be no way to track how things are improving.

After realizing that Product Hunt hadn’t analyzed this themselves, I decided to pull the information on my own. I started by pulling all historical data from the Product Hunt API, including projects, makers, upvotes, and more. I then passed this information through another API called Genderize, which indicated the likelihood that the individual was “female” or “male”. For example, the name Brenden returned {“MALE, Probability: 1, Number:46”}.

I knew that if I was going to report on this data, I wanted it to be as accurate as possible. So, I utilized a formula to identify certain names as most likely correct, by the following logic: if the Genderize probability was >95% and N>3, I trusted the output. Similarly, if the probability was >80% and N>10, I mostly trusted the data. I say mostly because I still ended up manually checking 8000+ names that didn’t parse in Genderize.

From there, I compiled the data across each year and tried to highlight how ratios were changing over time and how these numbers compared to other industries. I also wanted to celebrate the women in the maker community, so I added a few sections featuring top female makers across the years and the impact of communities like Women Make.

You seemed to have learned coding quickly. What advice would you give a newbie?

Thank you! In reality, it seemed quick to the outside world, but it was many months of plugging away before I launched my first application. Below is a summary of some advice:

  1. The technology industry is going to be the most influential industry on our future. We need a diverse group of people to be a part of that future.
  2. Learning to code has undoubtedly been one of the most rewarding choices that I’ve made and something that I believe is completely accessible to anyone, regardless of how technical their prior background is.
  3. There is no such thing as “technical” or “non-technical”, just a curve of technical ability.
  4. There are no shortcuts; learning to code takes a lot of dedication and hard work. In fact, I think it takes approximately 300 hours. Depending on your level of commitment, you can grasp that knowledge throughout a period of a few months to a few years.

5. Identify why you want to learn development. For example, are you looking to become a paid developer, to launch your own products, or to work more effectively with your coworkers? Hint: if it’s to “get rich,” you’ll never make your way through the long and continuous learning process.

6. Make sure that you build and launch things as you’re learning!

7. Track your progress over time. Do this to stay accountable, not to compare yourself with others.

8. Just start. The world is changing quickly and the only way to keep up is to constantly evolve with it. Try not to get overwhelmed with the latest frameworks or stacks. The development world is elaborate and exciting, but there is no need to learn all of it. Pick a starting point and go!

What is your routine for learning coding while working a full-time job?

I try my best to code every day. This doesn’t always happen (in fact, this year I’ve only managed to code ~70 days/200 so far). However, I track this actively and try to improve every time I see this part of my life slipping.

On a more conceptual level, I wrote an entire article about why I choose to continue working full-time while building projects. Some of the key takeaways are:

  • We have the choice to actively invest our time into things that are more beneficial to our success and happiness.
  • Focus on “absolute tasks” versus “meta tasks”, where absolute tasks are things that if continued over time will benefit you through compounding.
  • There is no such thing as overnight success, so it’s important to “fall in love” with the process.

Have you ever done any bootcamps or online courses?

Yes! I started my coding journey with this Udemy course: The Web Developer Bootcamp. It was a great overview course that brought you through all of the fundamentals of full-stack web development, including front-end, back-end, using the command line, Git, APIs, and more. From there, I took a more intermediate Javascript course which helped me understand some more complex topics like object-oriented programming.

Although both of these courses were great, it’s important to emphasize that it really doesn’t matter which course or language you start with, but that you get started and stick to it. For that very reason, I encourage people to focus on daily improvement, which is why I created a tool called Progression Page to help people visualize their progress.

How do you stay productive while nomading? Are you more of a slomad (one place for a few months rather than always moving?)

It’s actually surprisingly difficult to stay accountable while traveling, especially if you’re doing so quickly. For that very reason, I’ve decided to slomad, versus the more rapid travel that I was doing during the first year or two.

In order to stay productive while nomading, I make sure to set explicit personal KPIs and long-term goals. By setting the right “north stars”, both within my “work life” but also my “personal life”, I’m able to balance across the things I care about. This includes removing negative habits like the removal of TV, limiting time on social media, and removing negative relationships from my life.

The most influential change that I made was tracking my daily performance over time, across the key goals I cared about. This ranges from how often I code to how often I floss. Some people think this type of tracking is obsessive, but I would argue it’s essential to keep a pulse on progress-especially while working remotely.

I still take days off and my habits often slip, but this is a mechanism to bring me back to the goals that I’m trying to achieve regardless of where I am in the world.

What are your plans in terms of coding for the future?

The great thing about software development is that there is never really a point where you finish your journey and “become a developer” - it’s a continuous learning process. Although I’m proud of the progress I’ve made, there is still so much that I don’t understand.

More tangibly, I plan to keep learning more intermediate-advanced Javascript and potentially to pick up a framework later this year (Vue or React). For now, I’m having fun learning, but I would love to eventually utilize my new skillset to build a sustainable, bootstrapped business.

Thanks for the interview!

If you enjoyed this article please send it to a friend

Or sign up for the newsletter


Pete Codes

Hey, I'm Pete and the creator of this site. I am a self-taught web developer and I'm based in Edinburgh, Scotland.

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.