This is an interesting project. It appears to me, based on the README and the name, that it was primarily intended to profile backend services in a web app.
I have a question for hacker news. Does Python still have a lot of momentum in this area? I love Python and use it whenever I can, but I find these days that most web frameworks assume right off the bat that you are using Node. The frontend landscape is so heavily tilted towards using js (and tools such as npm, etc) on the backend that fitting it into a Python flow is difficult, especially for beginners. In addition, we have the relatively fresh trend of using isomorphic code on both Node and the client. It seems like my beloved Python is being pushed to the background. Is there any truth to this? I would very much like to keep investing my energy into what I know, but if it is wasted effort, I will stop.
Python is huge on the backend, from startups to large companies.
While I've used Node, and I think it has its place in certain kinds of application, I would never pick it for the main backend language. Adding a chat service to an existing larger codebase, maybe, but JS isn't particularly well suited to larger applications (yet, it's improving) and the frameworks are still less mature than things like Django and Rails.
The front end might very well be heavily node influenced right now with React et al but I'm personally still seeing a lot of backend development being done in Python or Go. No doubt there's been a huge surge in demand due to React in particular but in many of the postings I've seen they seem to be talking to backends in Python/Java/C#. The contracting/getting paid for it landscape is still looking very bright for a lot of tech that doesn't have the buzz of node*.
IMO having some Node.js experience and React experience are very helpful to get hired into any position that is remotely near the web these days. I have seen several of my clients introduce Node.js and of course everyone is introducing SPAs in some form or another, mostly React. Mozilla is even integrating React into Firefox's UI.
I am personally skeptical of these trends, but my skepticism doesn't change the shift of the industry. My advice would be to get some Node and React experience under your belt so that you can at least discuss it intelligently, and it shouldn't be too much of an impediment moving forward.
Python is in a tough spot for growth, IMO. The new generation of languages have internalized much of what made Python great, while leaving behind a lot of the inadequacies and cruft attached to CPython.
Like you, I will always have a soft spot for Python, but it's getting increasingly difficult to continue to see it as the default choice for new projects (outside of a few specific niches).
Bolting React onto an existing codebase is probably best because it is more similar to what you'd see in the real world. Most people don't start a React/Node thing at the same time; they'll start integrating React into their frontend early because they can get little React-compatible widgets plugged in more easily than they can introduce backend changes like finding opportunities for Node.
React and Node are not really related other than they're both JavaScript-based, so the skills aren't really co-dependent. Node is used to execute JavaScript locally (in build tools like Webpack, for example), but beyond a small amount of local scripting for builds, they don't really touch (afaik; I have not yet completed a major project with either of them, just used them here and there).
Sure, this is possible, but I'm not basing my concerns on headlines so much, but rather what I'm seeing out there when I try to educate myself on what is going on in the frontend world. Once you get past basic JS and JQuery, everything seems to just take for granted you are using a toolchain that doesn't leave much room for Python.
All of the skeletons/starting points out there pretty much ignore the fact that backends exist in general (by making demos just github stargazing or whatever, or using firebase/<insert graphqlaas> and such). It's definitely not the case that you need explicit nodejs on the backend, and that's not the common case for a lot of large companies. There are tons of options.
Render services [1], Sidecar processes [2], not-doing-universal-rendering, or just running a simple universal nodejs server with an entirely separate API backend.
Integration is not typically that difficult. It takes a day or two of sitting down with docs and intentional effort, sure.
Worrying about wasted effort is silly though. The amount of choice these days is crazy, and web development lately is mostly hype-driven, though it doesn't really need to be. We end up solving the same problems over and over again with a slightly different set of technologies (which has it's good notes and it's bad notes).
For many companies the backend is several orders of magnitude larger than the frontend (hundreds of separate backend services/daemons/etc in any variety of languages), so optimizing the whole stack for the sake of the frontend would be nuts
I think the languages people encounter are highly influenced by their interests. I see a ton of projects being rejected because they are Node based an no one wants to deal with Node, npm and Javascript if a Python, Perl or Bash alternative is available. Still Node is hugely popular, just not in the areas I work in.
I have a question for hacker news. Does Python still have a lot of momentum in this area? I love Python and use it whenever I can, but I find these days that most web frameworks assume right off the bat that you are using Node. The frontend landscape is so heavily tilted towards using js (and tools such as npm, etc) on the backend that fitting it into a Python flow is difficult, especially for beginners. In addition, we have the relatively fresh trend of using isomorphic code on both Node and the client. It seems like my beloved Python is being pushed to the background. Is there any truth to this? I would very much like to keep investing my energy into what I know, but if it is wasted effort, I will stop.