Introduction to Web Development (v1)

What Do Web Developers Do?

In short, web developers build and maintain websites.

Web developers often work for clients who are trying to get their product or service onto the web. The work is typically very project focused and involves collaborating with a team that helps to coordinate the client’s needs into the end product. The client could be a tech company, an organization, or a government. The work could involve front-end, back-end, or full-stack web development.

Web development could be a good profession for you if you like solving logical problems, building useful things, and experimenting with new technologies. Web developers are in high demand, generally have a good work/life balance, and command comfortable salaries. Google your specific location to get a better sense of your local web development job opportunities.

For more details, Wikipedia describes the breadth of the web development profession in their entry on web design.

(*Tip: Click Ctrl and click on a link to open it in a new Browser Tab)

IMPORTANT: You should read the article on Wikipedia about Web Design, since you will be tested on the material. Here are the sections of the article that you must absolutely read:

  • Short Description
  • The start of the web and web design
  • Evolution of Web Design
  • Page layout
  • Typography
  • Quality of Code
  • Generated content – Static websites
  • Generated content – Dynamic websites

Types of Web Developers

Earlier, we mentioned that web development work could be in the front end, the back end, or the full stack. What exactly do these terms mean?

The front end is the stuff you see on the website in your browser, including the presentation of content and user interface elements like the navigation bar. Front-end developers use HTML, CSS, JavaScript, and their relevant frameworks to ensure that content is presented effectively and that users have an excellent experience.

The back end refers to the guts of the application, which live on the server. The back end stores and serves program data to ensure that the front end has what it needs. This process can become very complicated when a website has millions of users. Back-end developers use programming languages like Java, Python, and Ruby to work with data.

Full-stack developers are comfortable working with both the front and back ends. In The Odin Project, we focus on teaching you full-stack development, covering all aspects of web development.

For more detail, Udacity has a great blog post on this topic: 3 Web Dev Careers Decoded: Front-End vs Back-End vs Full Stack

Types of Careers

Now that you know about the different types of web developers, let’s cover what we mentioned earlier about the different types of clients and employers you may work with.

Large tech companies, such as Google, Facebook, and Amazon, have very stringent hiring requirements. If you successfully meet these expectations, they offer excellent pay, benefits, and opportunities.

Startups are a bit like the wild west. For a junior developer, it can feel like a trial by fire because of the pace of development. Startups often offer slightly lower salaries and require longer hours, but they may also offer equity in the company and highly unique environments.

As a freelancer, you could command a strong hourly wage and the freedom to schedule and design your own products. However, you would be responsible for getting your own work (which means less coding time), managing billing from clients (who can be difficult), and being solely responsible. Strong people skills are necessary for this path.

As a consultant for a web consultancy, you would give up some of your freelancing wage potential but be able to focus more on the code and less on the hustle. This option also provides a good work/life balance and pay.

Finally, large, older companies still need web developers. These companies offer a good work/life balance, pay, and benefits but often move slower than a company that is highly focused on tech.

Tools of the Trade

These are some of the basic tools you will use regularly. You may not know what they are now, but you most certainly will going forward.

Motivation

Learning to code is incredibly rewarding but can also be difficult and frustrating. The strongest assets you can have as a student are a desire to build, a problem-solving mind, and persistence in the face of setbacks.

The web development industry has a long history of successful developers with varying backgrounds, so people tend to care more about what you’ve actually built than how you got there.

Read this comprehensive blog post from Happy Bear Software about the journey to getting hired as a brief introduction to what you will face ahead.

Why choosing this approach?

The Social Hackers Academy curriculum is heavily based and inspired by the Odin Project.

There are plenty of other online curriculums for beginners, but they are often taught in an extremely isolated and controlled environment and cover only a specific topic.

The approach inspired by the Odin Project takes a realistic view of what you need to know and has you set up and work in your own environment, much like what you’ll be doing when you get a job.

It acknowledges that you need a wide variety of skillsets and languages to reach an employable level.

Conclusion

Hopefully, you’ve gained a better idea of what a web developer actually does and what your life might look like if you decided to take it on as a career. This has only been a teaser into the world of web development.

In this course, "Web Development 101," you’ll take a journey through the entire spectrum of topics that you will eventually need to know. This course jumps around to a variety of topics that you may be totally unfamiliar with, providing you a small taste of each and then moving on.

The following courses will dive deep into these topics. You will build dozens of scripts, projects, and websites to cement those skills that will get you hired.

Getting all the way there is going to be challenging. In fact, you should check out the post "Why Learning to Code is So Damn Hard" so you have a good idea of what the journey ahead is like. But what worthwhile thing is truly easy?

Yes, it’s going to be challenging.

But it’s also going to be fun.

And it might even be life changing, too.

What are you waiting for?

Additional Resources

This section contains helpful links to other content. It isn’t required, so consider it supplemental for if you need to dive deeper into something.

Material based on Erik Trautman | The Odin Project. Photo by Miguel Á. Padriñán from Pexels
LOOKING FOR HELP?

When looking for help, try doing so in the following order:

  • Did you try everything you could?
  • Did you read the documentation?
  • Did you Google for it?
  • Did you post your question on Slack/Forum?
  • Did you ask your fellow students for help?
  • Did you ask your Mentors for help?
  • Did you leave a comment on the comments section of this page?
  • Did you ask your Instructor for help?
    • Did you arrange and appointment with your instructor using Calendly? Visit this URL and set up an appointment: https://calendly.com/kostasx
    • Is it urgent? Did you try reaching him on Slack

Introduction to Web Development

Introduction to Web Developers Job

A short answer to this question is that web developers build and maintain websites and web applications in general. Web developers usually work for clients and those clients can be a company, an organization, or even the government that wants their product or service onto the web.

Therefore the web developer needs to collaborate with other people and together as a team to fulfill the client’s needs. The work that needs to be done can involve not only front-end development but also back-end or even full-stack development.

If you are a person that likes to solve logical problems and build useful things then the web development profession is probably a good choice for you. In general, this profession is high in demand and has good salaries.

You can check the link below for more details about web development. The link is from Wikipedia and it talks about the entry on web design.

(*Tip: Click Ctrl and click on a link to open it in a new Browser Tab)

IMPORTANT: You should read the article on Wikipedia about Web Design since you will be tested on the material. Here are the sections of the article that you must absolutely read:

  • Short Description
  • The start of the web and web design
  • Evolution of Web Design
  • Page layout
  • Typography
  • Quality of Code
  • Generated content – Static websites
  • Generated content – Dynamic websites

Types of Web Developers

As stated before a project can involve front-end, back-end, and full-stack web development. Let’s see now what are the differences between those terms.

The front end refers to the stuff you see on the website when you open it in the browser. That involves the content as well as the user interface elements such as the navigation bar. The technologies that front-end developers use are HTML, CSS, and JavaScript. All these technologies are combined together in a more efficient way so as the users to have the best experience possible.

The back end refers to the core of an application. It involves the server and in general, it stores and handles all the data so as the front end has everything that it needs. The back end can be very complicated especially if the application has a lot of users and a lot of data to handle. The technologies that back-end developers use are Java, Python, and Ruby.

The full-stack refers to both front-end and back-end development. In this course, we focus on teaching full-stack development so as the students have a wide knowledge of web development.

If you want to know more about this topic you can visit the following link: 3 Web Dev Careers Decoded: Front-End vs Back-End vs Full Stack

Types of Careers as a Web Developer

Now let’s see the types of careers and their differences. In other words, we will cover the different types of employers or clients you might encounter as a web developer.

To start with, there are large tech companies such as Google and Facebook that offer excellent pay and opportunities but they have very strict hiring requirements and expectations.

On the other hand, startups offer lower salaries and often require long hours but at the same time they also offer equity and they don’t have as much as high requirements as the larger ones. In addition, they also have unique environments and offer good opportunities, especially for Junior developers.

Working as a freelancer can be a little bit challenging since it means that you have to all the work by yourself as well as managing billing from clients. In addition, you must have excellent communication skills. However working as a freelancer has some advantages as well, since you have the freedom to schedule and design your own products.

Another option is to work as a consultant for a company that will give you more time to code and less time worrying about other stuff. Furthermore, this option can provide you with a good balance in life and payments.

There is also the option to work for large old companies. Those companies also need web developers and can pay well although since they are not highly focused on tech things will get much slower.

Useful Tools for Learning

Let’s see now some of the tools that you will definitely use on a regular basis. Some of them you may not have heard before but you are certainly going to.

Motivation is The Key to Success

Learning to code is very rewarding since you can build whatever you like from scratch. However, it can be also difficult and frustrating especially at the beginning of the journey. As a student, you have the desire to build and to solve problems and those characteristics are a really big asset.

Keep in mind that a lot of successful web developers come from different backgrounds, and the important is the outcome, what you have built rather than how you got there.

Conclusion

Up until now, you should have a very good idea of what a web developer does and how your life will look like if you follow this path. This has only been the tip of the iceberg in the world of web development.

In this course, "Web Development 101," you’ll take a journey through all the major topics that you will have to know. These topics will provide you with a small taste of each and then move to other topics. Don’t worry though because in the next courses we will dive deeper into these topics.

You will build many projects, websites, and other applications to strengthen the skills that you have gained throughout this journey. Those skills will get you hired. Keep in mind that getting through all the journey will be challenging.

You should check out the post "Why Learning to Code is So Damn Hard" so as to learn more about this journey.

Additional Resources

In this section, you can find a lot of helpful links to other content. This is supplemental material for you if you want to dive deeper into some concepts.


The archived old version of this post can be found here

LOOKING FOR HELP?

When looking for help, try doing so in the following order:

  • Did you try everything you could?
  • Did you read the documentation?
  • Did you Google for it?
  • Did you post your question on Slack/Forum?
  • Did you ask your fellow students for help?
  • Did you ask your Mentors for help?
  • Did you leave a comment on the comments section of this page?
  • Did you ask your Instructor for help?
    • Did you arrange and appointment with your instructor using Calendly? Visit this URL and set up an appointment: https://calendly.com/kostasx
    • Is it urgent? Did you try reaching him on Slack