I am very lucky to talk to junior developers, and one of the things I have been expressing is the need to have a tech stack.
There’s generally a bit of confusion about what a tech stack is. A great article that covers it is here: https://svsg.co/how-to-choose-your-tech-stack/ .It’s great because it summarises the two most important aspects in a few lines:
“A tech stack is a combination of software products and programming languages used to create a web or mobile application. Applications have two software components: client-side and server-side, also known as front-end and back-end.”. GIl Edelman 8 Jan 2017 https://svsg.co/how-to-choose-your-tech-stack/
The second part of the quote is key because it focusses on the simple two tier stack : client and server. Now if we actually represented this visually it would look like:
Client ====== Server
Ok so it doesn’t look a lot like a stack – but it is 🙂
Now, if we think about this is terms of the multi-tier application it might look like the following for the simple 2-tier application:
User Interface ========================== Business Layer + Database
So, lets expand this now to the 3 tier model and see what the it looks like visually:
User Interface ============ Business Layer ============ Database
Now you are probably starting to see a stack appear. Here’s an excellent summary of what a tech stack is (The first 4 points are key). In fact the if you think of Points 1+2 (as the User Interface), Point 3 (as Business Layer) and Point 4 (as database) you are probably really starting to see the the types of tools that make up the application.
Next in this series : As a junior developer do I have stack?