Stop me if this sounds familiar:
You get excited about a cool new tech
You go thru the hello world documentation
You watch a tutorial on Youtube
You think to yourself: “I got this, this is easy”
You sit down to write your an app and…
you hit writer’s block. You know the syntax, you have the motivation but you just can’t think of what to actually build. This is a super common funk for developers, something I refer to as: the post tutorial blues. I have faced this issue many times myself, but thankfully I have also solved this many times as well. Here is my step by step approach to scaling the wall and going from hello world to a real app.
Don’t reinvent the wheel
Whether you want to get better with React, deploy your first lambda function or learn some Python keep in mind you’re trying to improve your skills. You’re not looking to make a million dollars. Pick something that exists and copy it. There is no shame in that, you’re just trying to learn. You can even credit the original app as your source of inspiration. You can build your own scoped down version of Netflix or Spotify or Reddit. If that is too daunting, the single best place to get inspired on what to build is the Shopify App Store. The Shopify app eco system has a collection of tightly scoped apps that you can pick and choose from. Pick one, replicate it and then try and ship it. You can go ahead and try to replicate my own app for practice: Sell with Batch, and if you have any questions on how to proceed you can hit me up on twitter @mlevkov.
Use the bumper rail model
The reason I suggested building a Shopify app is because it will force you to practice your new skills within a controlled ecosystem. You will have tutorials and guidelines to follow as well as community support. You won’t feel alone while developing your product and will have a system of support. This will also teach you things that “hello world” youtube tutorials won’t. You will learn how to read technical documentation, how to debug within a specific scope of problems and more importantly, resilience and creativity when you can’t find the solution you’re looking for. Basically, you can do and build whatever you want, within a set limit.
Ship it
Getting your app to production will unlock a whole new set of tools and knowledge for you. By shipping and deploying your code you will learn the difference between setting up a local environment, a QA environment and a production one. You will learn about CI/CD, creating releases, debugging and monitoring your application once it’s out in the wild. You will learn about containerization, secret management and infrastructure. There is a myriad of tools to deploy your code, from AWS to Vercel to Digital Ocean, the choices are wide and varied. If you are feeling overwhelmed by this, I wrote an article about minimizing time to ship which should be of some help.
Join the community
As you build, write what you are doing. You can tweet, write a medium post, a dev.to article or even post here on Substack. The goal is to engage with other developers, learn from their experience and teach them something from your own. This will also re-enforce the knowledge you’re building. As your content gets shared you will want to join developer communities. For Shopify developers there are plenty, from facebook groups to slack channels the variety is wide. There are publications on medium you will discover and authors whose content will inspire you.
Going from localhost to a live app involves a lot more than you think. It’s completely normal to feel paralysis by analysis. Where do you start? How do you finish? How do you get there? Hopefully this article will give you a fresh perspective on how to break through that barrier. If you have any questions or comments feel free to hit me up on twitter: @mlevkov. I’d love to know what you’re building.