Backend Jungle: So, What's the Stack, Jack?
So, now that we've defined our app's backend in broad strokes, what's our stack going to be? Here we go...
- Python 3; pre Python 3 is OK, but this isn't the stone age anymore
- Flask framework; it's pretty standard for REST endpoints, and easy to learn
- SQL DB, in this case MySQL; yeah, NoSQL is sexy, but SQL is what you'll see mostly in business environments, get used to it
- Various Python 3 packages as needed to facilitate things
- IDE to facilitate writing and testing our code; Eclipse is my personal choice (yeah, I'm old)
- We'll be using Python's virtualenv to set up virtual environments; again, we're professionals, and if you're not already, now's a good time to learn how to be one, and virtualized environments is a professional best practice
- Postman, a free REST testing tool, so we can exercise our endpoints as we develop them; yes, it is possible to test beyond ye olde print type statements for backend code
- Yeah, I'm on a Windows box, so that's what you will be looking at with my examples, but I assure you, I have debugged and helped install this exact same stack on my co-workers' Macs before remotely without even a shell account on their box and just talking them through it on Zoom; it was a snap
In the next step, we'll have a brief digression why the frontend/backend dichotomy still exists in web/app development, and why in fact it's extremely useful.
Previously: The app , and the architecture.