Becoming a web developer is easy, so they say. What most people feeding you that line neglect to mention is that while almost anyone can be a web developer, not everyone using that title is good at web development.
All of us must make a start somewhere, and if you're just getting started in your web developer career, this article is for you. It is also an article for seasoned web developers who may not have kept up with the latest essential skill sets and want to discover what they are for 2018.
This is the most obvious essential skill that any web developer needs to know. At the least, you'll need to be an expert in HTML5.
HTML is the “language of the web”, and it's what all sites are built in, even sites that aren't built in it. What does that mean? It means sites that are built with another language like PHP are in the end rendered to HTML because this is the language browsers understand.
Basically if there is no HTML, there is no web page.
illustration courtesy of
HTML is like the frame of a building, CSS is like the cladding. The CSS defines how elements in the page will look, and also to some extent how they will function.
Learning CSS was once optional, but now it isn't. You can build a good website without using a single line of CSS, but you'll look like a complete amateur to anyone viewing the source code of the page.
illustration courtesy of
There's another language called ASP that fills a similar role. The difference is that only a minority of websites use ASP (but that's still millions), and so it's much less essential to learn ASP than to learn PHP.
Other server side languages that could be interesting to learn but are not considered essential to learn include:
- Java (also a client side language)
- Python (also a client side language)
- C++ (also a client side language)
There are also a few more obscure languages out there like Lua and Haskell, but you're very unlikely to ever be asked to code anything in those languages, and if you've ever seen them, it's likely you wouldn't want to use them.
The one exception is Go, a programming language developed at Google as a viable alternative for C++. It hasn't really caught on yet, but it actually is quite a good language for doing things that you'd otherwise use C++ for.
Learning any of these alternative languages makes you an interesting programmer, while learning PHP makes you a useful and employable programmer.
illustration courtesy of
There are some things you would want to do that would require reloading the entire page if you handled those things entirely server side. By using AJAX, you can generate server responses that update your page without reloading.
This is one of those things like PHP where it's not the only technology in its class, but it's so widely used that it has basically become the defacto standard, and it would be kind of crazy not to learn it.
MySQL is a free open source database system. It works very well, it doesn't cost anything, it has reasonably good security. These are all reasons why it is so popular.
8. GIMP or PhotoShop
Even as a developer, you will often need to work with images. It's not enough to just be able to use GIMP or PhotoShop, you should be a master of them. Preferably learn to use both.
The big dilemma you'll run into is that for web work, GIMP is the best tool for the job, but around 90 percent of companies prefer you to use PhotoShop as it is ingrained into their culture.
The reason why GIMP is more suitable is that it's actually designed for working in RGB color, while PhotoShop was intended for print design and is based on CMYK. That's just the beginning of the differences though.
If you can do it in GIMP you can do it in PhotoShop, but the reverse is not true.
When you work on corporate and collaborate projects, a robust content versioning system (CVS) is essential, and GIT is popular due to being cross-platform and available anywhere.
Learning GIT is not simple. It is one of the most complicated content versioning systems around. Learning to use it is still essential because it is the most used CVS in existence, and is unlikely to be replaced any time soon.
The things you'll need to be able to do (at a minimum) include:
- Creating repositories
- Pushing (check in) and Pulling (check out) code
- Conflict resolution
- Create project description pages and so on.
GIT is not fun. It doesn't do anything interesting. Nobody will know if you used it or didn't use it. But if you are being hired by an agency, they'll expect you to be thoroughly familiar with it.
It can be important to have at least a basic understanding of SEO, even if it is only to ensure you don't break any of the rules, or that you can advise clients if they're at risk of breaking the rules.
As a developer, you'll rarely be responsible for the actual site content, and often you won't even be responsible for the design. That doesn't give you a free pass to ignore SEO, however, because if the client does slip up and can somehow blame it on you, they will.
New web technologies are always emerging
It's important to get a good grounding in the ten essential technologies listed above, because that will set you up in a good position to cope with the newer technologies that are about to come along. You'll be ready for those changes and confident enough to handle them.
header image courtesy of