Learn the meaning of common terms in tech like front-end, back-end, and what a tech stack is.
Don't worry too much about the specifics of those right now though. The back end refers to the servers and databases that hold the information. The back end uses technologies such as MySQL, a database language and usually a hosting technology like Amazon S3 for example. The QL in MySQL spelled M-Y-S-Q-L means query language. This is a language we use to ask a database to give us specific information. Amazon S3 is one of the ways that we could rent a server on the internet that houses our data and webpages, and serves the data out to the public.
Okay great, we now have front end and back end down, but you might be wondering, how does the front end get the data? How does the back end know what to send the front end? Well that's where application layer comes in. The application layer refers to the programming that does calculations and communicates between the front end and the back end, ensuring that the right data gets to the right place. The application layer acts as a go between, linking the front end and the back ends. You might think that the application layer code is located in some other place, but the code for the application layer is housed on either the front end or back end, depending on how our particular application is programmed.
Let's say that you go to a site like Amazon and search for a product from lowest to highest price. This application layer reads this search, queries the database for the products you want, and then sorts them into the correct order so that the front end can display the results in your browser. The application layer uses languages like Python, PHP, Ruby, Scala and many others. Now we can figure out what a tech stack is. That's easy, it just means all the programming and technology that makes up an app or website, all the way from the front end to the back end.
Different apps or services will use different languages or technology because each technology or language has advantages over others for certain types of applications. If we make an analogy to buildings, the tech stack would be like describing the materials and building techniques that are used to build them. A skyscraper requires way different materials and techniques than a single family home. The examples I used here relate to a web browser on a laptop or desktop computer, but the ideas are the same for mobile devices. It's just that the technology used is a bit different.
For example, instead of using HTML and CSS like in a web browser, a mobile app would use a language like Swift for iPhones or Java for Android devices. So there we have a quick and easy explanation of these terms that I guarantee you'll hear frequently while working in any technology company. Almost everything you see in technology is comprised of these things, so keeping this in mind is vital to learning more about technology in the future.
Instructor Cole Mercer reviews the fundamental building blocks of modern software applications-from the web that connects all the working parts, to the data, users, and the build tools that developers use every day. He discusses the differences between desktop, web, and mobile development, and reviews the role of version control systems in deployment and release.