Some people hate it. Because, historically, it was pure and simple rubbish. Developed in 10 days.
Of course the language has evolved and is today a viable programming language. I believe Netflix uses that for its back-end. Some people absolutely adore it. But there are still quirks to the language that are there and that just plain and simply don’t make sense (don’t have the list on top of my head, and I’ve stopped caring if I’m honest). It’s also a matter of preference. You like it or you don’t, I suppose. Similar criticism is often thrown at PHP, some of it being true, some not. But I love PHP, for example. Matter of preference, I guess? At the end of the day, though, absolutely no language is perfect. They’re merely just tools we use to create cool stuff. Isn’t that what it’s all about anyway (or should be)? I don’t like JS, but I’ve used it to make user interfaces more convenient and interactive. And, yes, it was fun.
We shouldn’t care too much, or get too attached to these things. But we’re only human, so…
But, yes, if you want to build a cool web app, learn JS. Besides, you never know! You might come back to this thread later and tell me I was wrong, and that JS is in fact awesome!
HTML, CSS, JS – you simply can’t go wrong. Use a JS library or framework, up to you!
Flask back-end. I think so? I don’t see why not. I’m not too familiar with Python frameworks because I have very little interest in Python. But I know some users on here use that, and Codecademy has a course for Flask – if it was bad, I don’t think people would be teaching or using it.
I’d advise against contemplating whether you have chosen the right languages, frameworks, etc. At least avoid spending too much time thinking about it, because you’ll just waste time reading up posts and articles from people having very different opinions and tastes.
For example, I like neither JS nor Python, but why should I tell you not to use that – or anyone else, for that matter. See what I mean? It doesn’t matter. What I can give you is hard facts:
- Instagram uses Python
- Google (Youtube)
- many others…
and that’s (more than) good enough for me. You’re future-proof with Python, at least for the foreseeable future. And Flask, I believe, is a good first choice. Django might be more popular in enterprise, mind. But should you transfer your skills to another framework (or even language) later, I don’t think you’d have much trouble learning the new stuff. Besides, it’s good to keep up and keep evolving with the times.
Don’t bother with those. Which religion is the best, and which should you pick? Endless debate. Same goes for the programming world and its endless list of languages and frameworks.
If you enjoy your current set-up, stick with it