A few of my friends recently decided that they wanted to try their hand at web development, and so began the barrage of questions:
- What material do you recommend I read?
- I have a really old computer, do I need a new one?
- Do I need to buy a MacBook?
- Can you help me setup a development environment?
This got me thinking about barriers to entry. One of the reasons I got to be where I am in my career was due to the existence of projects that dramatically lowered the barriers to entry for web development.
How I Started
When I was 12, my brother and I used to play a lot of Age of Empires: The Rise Of Rome. He was much better than me, but because of him, we got accepted into a clan. This clan didn’t have a website, and we sure enough weren’t about to pay someone to create a website, so I took it upon myself to figure it out.
Fortunately for me, this was during the glory days of GeoCities. Anybody could create and host a free website with very few clicks, and this got me hooked. I probably created a website for every clan I joined, even for all the Counter-Strike clans!
Once I got a bit better, I quickly found new and better tools.
- Companies offering free web hosting with direct FTP access, databases and languages pre-installed.
- I got “access” (cough) to tools like Microsoft FrontPage and Macromedia DreamWeaver
- The explosion of PHP because it was free. I almost got into ColdFusion, but good thing it wasn’t free 😉
- My dad worked at a place with access to fancy printers, and printed me a few books. One of them was about setting up an entire e-commerce system with PHP and MySQL.
In today’s age, we are actually at a place where the barrier to entry is probably lower, thanks to the existence of so many options, a lot of which are free for hobby projects or for learning. Unfortunately for people just starting to experiment, they are just drowning in the amount of information available.
Thinking back to how I got hooked into web development, it was the powerful effect of changing one line of what I saw on the screen, saving it, and seeing the result of what I had just done.
My goal with this blog is to try and lower the barrier to entry into web development.
The Odin Project
Recently, my top recommendation for folks who want to experiment with web development has been The Odin Project. They have done an amazing job at putting together a free curriculum 👏. Here is the direct link to course Web Development 101.
From their website, here is a mini description of The Odin Project:
This is the website we wish we had when we were learning on our own. We scour the internet looking for only the best resources to supplement your learning and present them in a logical order.
The introduction of The Odin Project starts off with pre-requisites, specifically around your development environment, and they give you 3 choices:
- Setup a virtual machine on your current computer
- Dual boot windows / linux
- Use Windows 10 WSL (Side note: WSL 2 is awesome!)
For a lot of folks who just wanted to try out web development, those are some daunting steps to go through. They wanted to learn web development, but they are about to spend a few days figuring out whether they can even get past the pre-requisites. There could be many arguments made that this is necessary to go through, as it gets harder from here, but I personally disagree. As I mentioned earlier, what got me hooked into web development was changing a few things in an html file, reloading, and seeing things appear on a screen. How do we get folks into that, with the lowest barrier to entry?
Lowering the barrier to entry
The lowest barrier to entry in my mind is access to a web browser. This allows someone to participate from a library, or if they have access to a computer without admin privileges.
My current answer to this problem is to use AWS Cloud 9, and I have written a blog post about how you can set this up.
Note: I recognize the irony in suggesting AWS in a blog post about lowering the barriers to entry, as you need a credit card to sign up, even for the free tier. When I started, I wouldn’t have been in the position to use this as well, but after doing more research, there is no better way to complete The Odin Project that I have come across. The only way to get a free AWS account today is through their AWS Educate for Students program, which requires you be part of an educational institution. I will be emailing AWS to see if there are alternatives. If you come across something, please reach out!