How to decide on what tech stack

Hello, I am new to programming finished a python 3 data science course, HTML/CSS and now working through JS. Although I completed a few courses it doesn’t mean I am able to retain all the info, quite the contrary actually. My question is how do you decide what stack to use if you wanted to create a web app for instance? There are so many options its overwhelming. Also, any tips on retention?

The best way to remember stuff is to practice practice practice. So if you want to remember what you learned on how to build full stack, then go build a full stack app. Go through the motions, build something simple.

Now there are tons of ways to go about building a web-site/web-app, almost all of them are able to perform the same thing with the same amount of effort. There is no magical solutions that are vastly better than the other solutions.

Since you already have some knowledge of Python, and are just starting on JS, there are 2 main “paths” you can go that are defined by the back-end.

  1. A Python backed back-end, where you use something like flask (this site also has a number of other alternatives)
  2. A Nodejs backed back-end, where you continue learning JS, but also use it to run your backend.

Nodejs is popular due to the fact you don’t have to juggle 2 different languages in the stack, you can use JavaScript on the front and back-end of the stack. Python is good since its simple, consice and just as (if not more) flexible than Nodejs.

There’s also the question of how you want to “build” the front-end. You could use a front-end Single Page Application framework like React, Angular, or Vuejs. Or you could go a more traditional route with a back-end template framework, where the server “builds” the HTML/CSS to send to the client, with minimal or no JS. SPA frameworks are very popular today, but don’t think of them as the be all end all solution for all problems :wink:

Finally, I recommend just jumping into a small project just to see how you could build a website with a given technology. Just getting your feet wet seeing how stuff can be done is always good :slight_smile:

Good luck! Keep building

Thank you very much!

1 Like