A 2015 study estimated that .5% of the global population knew how to code. Although investments in STEM and computer science education have ramped up in the last few years and the younger generation is starting to experiment with programming at an earlier age, the total amount of programmers is still shockingly low, given the amount of demand there is in the job market.
The average American spends nearly 24 hours online per week, yet very few understand how the internet works or what powers all of the software applications that we have all grown to love. Here I will break down some of the five most basic, but important aspects and concepts of web development.
The part of the website or application that we can see and interact with. The images, design, text, buttons, animations. Users interact with the front end (clicking a link for example) and this information is sent to the back-end, which processes this request and then updates the front-end (showing you whatever the link you clicked was).
The hidden, behind the scenes part of the website or app. The backend stores and processes information which is then sent back to the users browser (front-end). Things like user data and passwords are stored in the back-end. All of this back-end data is stored in a database (think giant excel sheet) which lives on a giant supercomputer, also known as a server.
Let's say you are typing your email address into a form to subscribe to my newsletter. You type out your email address in the form on the front end. Once you click the “Subscribe” button, your browser makes an information request to the server, the server stores and processes your data in the database, and returns the information you requested in the form of a confirmation message on the front-end.
A type of design that focuses on visual aesthetic. Images, styling of buttons, fonts, animation, layout etc.
A type of design that focuses on making the app seamless and easy to use. Utilizes consumer behavior and psychology to adjust how the webpage is arranged.
A way for apps to communicate information between each other or a way to get an app to do something without coding it yourself. All of your favorite apps probably use APIs without you even knowing. Uber uses Google Maps API for their maps and location services. Ever log into a site using Facebook? That site is using the Facebook Log In API.
This language is used to write the front-end of web pages, letting the user create headers, links, buttons, images and other elements. These elements are written as <header>, <button>, <img>, and are often referred to as tags. Technically, it is not considered a programming language, as it doesn’t contain any real programming logic. If you’re ever in the mood to ruffle a programmer’s feathers, just call HMTL a programming language. Trust me, I learned this the hard way.
Fun fact: Snapchat Minis are built using HTML5.
CSS works hand-in-hand with HTML, as it is used to make your website aesthetically appealing. CSS lets you change the font and font color, background color, layout, spacing and more. Let’s say we are building a house. HTML is the structure of the house itself (the foundation, wood, beams etc). The CSS is the interior and exterior decoration. This is also not considered a programming language.
Python is often recommended as the introductory language to learn, as it is fairly easy to pick up can be used in a bunch of different settings. It is primarily used for data science, machine learning, and writing web servers.
A popular language used for building the back-end of web apps. It is often paired with Ruby on Rails which is a web development framework that runs using the Ruby language.