Intro to Web Development

exploring a new potential career

Jeff Escalante
Pragmatic Life

--

So now we all know that you should treat your job like a relationship. But let’s get a little more specific — I’ve had a lot of people ask me about careers in web development. So let’s dive in and explore this specific type of career in a little more depth.

We’ll start with a common comparison: how would you explore a person you are interested in a little more? Easy answer — spend time with them. This should not be a strain, since you are interested in this person you are excited to spend more time with them. If you find it to be a struggle to get yourself to sit down and learn more about technology, drop it. It means you aren’t really interested.

So let’s say you are interested, happy to spend time exploring further. How would you do this with a person? You’d probably start with something simple. Maybe dinner or drinks, and you’d chat about the foundations. What kind of person they are. Their history and background. Their interests. Start building up a foundation upon which you piece together their character in order to better understand and connect with them.

It should be the same way with your exploration of technology. There are programs where you can pay thousands of dollars to take intensive courses, full time. This is roughly equivalent to inviting someone on a week-long exclusive vacation, just the two of you together. This is a huge commitment. You would not do this on a whim. You would not do this after dating someone for a week, or just because they are great-looking and seem like a good bet. You would only do it if you were really serious about that person. Some people make the decision to enroll in an intensive program early, on a whim, for technology jobs. The programs make false claims, advertising a guaranteed job. People feel like once they have learned the skills, they are all set — they will jump into a new high-paying job and instantly be happy. Unfortunately, this is just about as stupid as taking an offer from a romantic vacations company that offers a “guaranteed relationship” for thousands of dollars with someone you have only been on one or two dates with. It’s ridiculous, and there’s a huge risk that you will have wasted all that money. Better to wait until you are much more confident before investing.

Foundations

Many people also start thinking about a career in web development based on an attempt to build a “cool startup idea” that they had. After learning about the high costs of hiring a development firm, self-building seems more attractive. However, actually building a functional web application is not the first step in this career, much like building a mansion from scratch is not the first thing you would attempt when learning to be a carpenter. You have to start simple, with the basic foundational skills, then work your way up to the masterpiece, over time. To build a modern web application, here’s a list of skills you need to know, and understanding each of these skills takes the equivalent of at least a full semester college course of work and time. Most of them significantly more.

  • HTML
  • CSS
  • Basics of Programming
  • Javascript
  • Graphic Design
  • Advanced Programming
  • Python, Ruby, PHP, Node, or another server-side language
  • Databases
  • SQL
  • The Internet & The HTTP Protocol
  • Usability, Analytics, and Statistics

You have to have a solid understanding of each of these skills before you will be able to confidently build a web application. If you lack understanding in any one of them, the application will be incomplete — at best ineffective and at worst non-functional. There are no shortcuts here, it takes years to accumulate all this knowledge. Oh yes, and if at any point in this process, you feel like it’s starting to become a chore, and you have lost interest, time to drop it and move on.

Still feel like you want to do this? Good, it might be the kind of work you really love. Let’s get specific and talk about how you can get started learning how to be a web developer the right way, from scratch.

My desk, where many websites have been built from scratch!

Let’s Make a Website

When a professional developer starts to build a website, they open up a blank document in a text editor. That’s the first step, so let’s do it. Download a good text editor and open it up. Save the blank file, call it “website.html” and put it on your desktop. Now type in the text “hello world” and save the document. On your desktop, double click it, it will open in your browser. Had trouble with any of these steps? You need to build up some basic computer literacy before you start thinking about a career working with computers. Got it to open no problem? Is “hello world” on the screen? Congrats, you just built your first website 🎉

I’m not going to guide you every step of the way, but never forget what you did here. You opened up a new document and created a website from scratch. With any tool that you use to learn something new about web development, you should be able to take your learnings and apply them to a website that you made by opening up a text editor to a blank page and creating it from scratch. If you are using a resource that teaches you things that need extra code you cannot see to work, or where you enter arbitrary code into a magical box with little context then it marks you right or wrong like a math problem (cough codeacademy), you are not learning anything. This would be like if you were learning to be a painter by taking a piece that’s 90% finished by a professional painter and just filling in one section. Ridiculous.

The first step in learning to be a web developer is creating a basic site using just HTML. Learn about HTML, and create a website from scratch using it. Can’t figure out how to learn about HTML? Try google. Not enjoying this process? Call it quits. Being a web developer means frequently not knowing how to do something and using google to figure it out, even when you are a full-time professional. You just have to get good at figuring things out on the internet, and this is not a process you enjoy, web dev would not be a job you would enjoy.

Note: There is one thing I should tell you that won’t be evident at first. If you search for something and a result appears that says “W3 Schools”, do not click it. This website is trash. You can add the word “MDN” to your search query and get the same result from the Mozilla Development Network, a much more reliable source.

Let’s Make it Look Pretty

So you made a website using html. You are probably pretty proud of this. I’m sure you included an image on it, maybe a bulleted list. Probably a headline at least. But this website still looks lame. Where are the colors, the sparkles? The key to these lovely things is called CSS. This stands for “cascading style sheets”, but really that’s not super important.

Your next step in becoming a developer is to learn about CSS. This will take longer than learning about HTML. Why? It’s a bigger language, there is more to learn! Luckily, there are many great resources out there, and you can find them using google. Want to figure out how to change the background color? Try searching “css background color”. Make your page pretty with CSS. Lay it out in the way you want. Then switch it up and lay it out a different way. Horizontal, vertical. Narrow, wide. Look up “CSS media queries” then make your site shift around as the browser window changes size. Look up “CSS animations” and make a little animation. You can go very far with CSS. You can spend weeks, months, learning more about it. Head over to Codepen and take a look at some of the amazing things people have done with it. Are you bored with this? Does it seem like a chore? Quit.

If you are still on the train, loving the process, and you get to a point where you feel like you have mastered HTML and CSS, and you can build a website that looks any way that anyone tells you, then you are well on your way. If you are still enjoying it at this point, working as a web developer might be an awesome job for you. If you got this far, reach out to me, send me your website & code, and I’ll give you personal guidance from here on out. (Note: years later, over 1000 people have read this piece fully, not a single person has reached out still)

Photo is of a company gathering at Carrot, where I work. Web development isn’t all about cranking out code in isolation, it’s about people and culture!

If you liked this post, please “recommend” it by clicking the little heart below and to the left. Thank you!

--

--