Is learning to code worth it? “Learn to code” is a phrase so popular that it has become a meme. Everyone from Bill Gates, Obama and even Sheikh Mohammad have extolled the benefits of learning how to code.
What I noticed though is that people that are learning to code are often wasting their time when there are much easier ways to reach their end goal.
Why do you want to learn to code?
It all goes back to why do you want to learn to code in the first place. People generally want to learn to code for one of five reasons:
- You are intellectually curious about the topic
- You want to be able to talk to developers / understand how products are built
- You want to get a job
- You want to build something as part of a team
- You want to build something on your own
I think those are all great reasons to learn to code, except for the last one. Based on what I’ve seen, I would argue that the last reason “You want to build something on your own” is actually not the best reason in most cases. As a beginner, learning to code to build something on your own, could be a bad idea.
It depends on what you’re building
Before I continue, I have to say that of course, it matters what you want to build. If you want to build a complicated project on a bleeding edge technology (Machine Learning, AR/VR, Blockchain, something that involves hardware etc.) then you very well may need to learn to code. However, even if your idea is fairly cutting edge, you probably can build it without having to learn how to code. Keep in mind that the main focus of this article is about how to build a prototype or first version of your product. Once you build it and get customers, you can always iterate and do things in a more robust way.
Your time is limited
What’s your most valuable resource? It isn’t money or knowledge, it’s actually time. When you have an idea for an app that you want to build, you want to get it in front of customers / your end users as soon as possible. Ideally within weeks or months, and not years. So that means that you need (especially in the beginning), to optimize for speed and good enough (80% as good as your ideal vision for your product, is good enough for a first version).
At their base level, most ideas are not unique
When you’re just starting out with an idea, validation is your biggest problem, not the technology you want to build it with (unless you’re inventing a new technology, which is a separate topic).
What are the most commons things that an app could have? A web interface, a database, a shopping cart, some kind of visualization? These are all problems that have already been solved before, so why reinvent the wheel?!
Levels of abstraction
Below are the general levels of abstraction when it comes to building an app or product (of course this is just an overview, and each of them can be expanded upon)
Everyone has to do some abstraction when they’re building an app, otherwise, you would never get anything done. Do you want to build something using binary code? Of course not. The question you need to ask yourself is, how far down the abstraction hole do you want to go?
In the end, you should focus on getting the result (the app) you want, and not care about what level of abstraction you had to go down to reach it, especially if the final result is the same end product and 99.9% of users will never even know the difference (the 0.01% are programmers or people optimizing for fractions of seconds in load time).
Why reinvent the wheel?
If you were building a house, would you choose the material yourself? Maybe if you wanted to have full control over every aspect of how it was built. For most people though, they don’t want to worry about things like the structure of the house and the material. Instead, they focus on what most people care about: the layout of the rooms, the fit-out, the interior, and the general design.
In terms of apps, there are a lot of very common types of apps that have been done literally millions of times! There is no need to reinvent the wheel and start everything from scratch. Instead, you can just focus on customizing it to your liking and focus on the design, branding and actual business you want to build.
To illustrate this point, here are a few of the main website types that account for nearly all of the websites on the internet.
- eCommerce functionality
- Content delivery (blogs, articles)
- Login / Signup feature
- CRUD (Create, Read, Update and Delete) applications (basic API’s)
- Displaying data dynamically
- Connecting to third-party tools (Google maps, Email Automation etc.)
The solution is to focus more on the idea itself than on the technology. That means focusing on the top level: Product Specifications and Features, along with the level underneath it “Visual Programming and Design”. For most ideas, this can be accomplished through “No Code” tools.
What is No Code? No Code are tools and software that let you focus on a higher level of abstraction when it comes to building your application. This means focusing on the flow and “programming” of the app, and focusing less on the “coding” or the building of the product.
What are my options?
Below are some of the tools that we recommend based on what you want to build.
eCommerce: Shopify, Woocommerce and Webflow
Content Delivery: WordPress, Medium
Company Websites: WordPress, Wix, Squarespace and Carrd
Apps (advanced login features, dashboards, working with API’s, and other operations): Bubble
Here is a nice overview of what’s available on the market. It depends on what you want to build, but for most apps, you can easily batch something together using one or more of these.
At AstroLabs, we built a “No Code Bootcamp” to further speed us the app development process for anyone with an idea they want to build.
To show you some real-life examples this, here are some of the apps that our students built in our last bootcamp.
These include apps that solve problems like:
- Finance & Market Tracking
- Inventory Supplier Management
- Educational Oversight
- Property Aggregation
- Writing Management
If you want to learn about how to create advanced No Code software, join our No Code Bootcamp: https://astrolabs.com/academy/no-code-bootcamp/
If you have an app idea that you want to make happen, we hope you can make it!