Web Developer Study Guide
This wiki page is a collaborative brainstorm that attempts to answer the question: "what do I need to know to become a web developer?". See the related forum discussion.
Feel free to edit this page. If you want a wiki-editing account, email your desired username to firstname.lastname@example.org.
Some really quality blog posts on this internet site , saved to fav. eedgbkeddgecdedk
The Basics of Web Development
Great video overview of what it takes to build modern websites: http://blog.ilovecoding.org/roadmap/
Web development involves two main issues: front-end and back-end. Combined together this is known as "full-stack".
- Front-end is the user-interface: what the user sees in the browser
- Back-end is the code that runs on the website's server. This is where info to be displayed is retrieved, and info from the user is stored (typically in a database)
- Full-stack is all the technologies used to build a complete website.
These are the technologies used by every browser, so you have to know all three of these.
- Learn HTML [FreeCodeCamp]
- Learn CSS
There are lots of competing technologies used for the back-end. Choosing one to start studying is a challenge.
Languages (choose one to start):
Databases (choose one to start): You probably need to learn SQL - the common language of most databases
- MySQL (or MariaDB)
- SQL Server (Microsoft)
- LAMP (Linux, Apache, MySQL, PHP) complete server back-end stack
- MEAN (MongoDB, Express.js, Angular, Node.js) full-stack, code on both server and browser
Instead of building everything from scratch using a language, most developers of non-trivial websites start with a framework. A framework is a software system that handles many of the typical tasks needed to develop a website. A developer then customizes the framework to create their own website. Some frameworks are basic, they only provide infrastructure for coding. Other frameworks are known as CMS (Content Management System) that are already a functional website that you can customize - in some cases with little or no coding.
Example full-stack frameworks:
- Rails (ruby language)
- Flask (Python)
- Django (Python)
- Symphony (PHP)
- Laravel (PHP)
- WordPress (PHP CMS)
- Joomla (PHP CMS)
- Drupal (PHP CMS)
Example front-end frameworks
Example back-end frameworks
- ASP.net (microsoft)
You also need to learn to use some tools to help look inside what's going on and to organize your code.
- Google Chrome Developer tools
- TODO -- add more ideas for exercises