Thanks to the encouragement of the people who’ve attended both sessions, I’ve decided to try get in the habit of posting the material online for anyone to benefit from. So here’s the first part to my web programming series!
Modern web applications are typically broken down into two separate, but related systems. Here are the different components of each and their responsibilities:
- The structure and content of your website
- The look & feel of your website
- The interactivity & data components of your site
- Web server (Apache, Lighttpd, Nginx, IIS, etc)
- Serves static content like images, files and routes requests to the platform
- Serves up information (data) to your front-end code
- Manages authentication / user accounts (if needed)
- Takes user input from front-end and figures out what to do with it
- Database (MySQL, MongoDB, Neo4j, and many more)
- Stores, indexes and retrieves information you need to keep around
These systems run independently, but work together in tandem to create a full experience. Each component and system can even be built separately by different people/teams of people and made to work together.
Read the rest of the article