Landscape of What to Learn in Web Development

Posted in Articles

Tweet This Share on Facebook Bookmark on Delicious Digg this Submit to Reddit

Learncode.Academy on YouTube did a great video covering the landscape of what skills to learn if you want to get into web development.

The landscape of web development changes all the time and sometime changes quite quickly.  The video is dated 2015.

Most developers will agree that if you want to be a web developer, the first three must skills to learn is HTML, CSS, and Javascript.  I would also add on to that jQuery.  It is a Javascript library that makes writing jQuery so much easier that a majority of the applications uses it.

However, no-a-days just knowing HTML, CSS, Javascript, and jQuery is not going to be enough to get a job.  It may be enough to build a static informational personal website.  But it won’t build the modern web apps that we have today.  You need to now pick a route as mentioned in the video — either go front-end or back-end.

I know that many developer advertise themselves as a “full-stack” or an “end-to-end” developer, which implies that they know both the front-end and the back-end.  But if you look at all the stuff that there is on the front-end and all the stuff there is on the back-end.  No one developer can know all of it well.  They are always either stronger on the front-end or the back-end.

Traditionally, PHP would be the backend language.  And with that, you can now build WordPress, Drupal, Joomla sites and other similar content management system.   They all uses by default the MySQL database, which is the most popular open source database out there as of this writing.  They all can run on Linux with Apache web server.  So if you want to get deeper, that will probably be what you need to learn next.  Once you’ve learn that, you can call yourself a “LAMP stack” developer — Linux Apache MySQL PHP.

A website is no good sitting on your machine, it needs to be deployed to the server to put out on the world wide web.  To do this, you need to learn SFTP (note this is Secure SFTP, no one should be using plain FTP anymore) and how to put sites up on traditional shared web hosts such as Blue Host, Hostmonster, HostGator, etc.  Once you get comfortable with that learn SSH, so that you can run command line commands on those hosts.

Many company uses “source control” and Git right now is the most popular.   So if you are applying for a job, you should at least know Git and GitHub.  The more advanced webhost uses Git to have you push files to their servers.  This is especially true of cloud hosts such as Heroku, etc.  Cloud host are gaining popularity where you pay by the amount of processing power your site uses.  So getting familiar with such host is a plus.

Going beyond the LAMP stack, there is the Nginx server that replaces Apache.  Some people like Nginx better than Apache because it is “non-blocking” and may be faster in that sense.

A new development stack known as the MEAN stack is gaining popularity.  It is MongoDB, Express, AngularJS, and Node (all in the Javascript langage).   MongoDB will replace MySQL database as a No-SQL document store database more suitable for modern web apps.  Express framework for the backend instead of PHP.  AngularJS on the front-end.  And server will run Node.js instead of Apache or Nginx.

So if you know that LAMP stack, the MEAN stack is a good one to learn if you want to go that route.  And if you are a new student, you might just want to learn the MEAN stack from the start instead of learning the older technology of LAMP.

Because the MEAN stack is all Javascript, it is good to know Javascript in depth (not just knowing loops and branches, but also about closures, promises, callbacks, etc)

 

 

 

 


Related Posts

Tags

Share This