> eran 6:38 PM
> Over the past few years I have tried many different ways to keep my work on the hapi ecosystem sustainable. I was trying to secure enough funds to keep the lights on but also to innovate and improve the framework. This has worked well for a while but over the past year both commercial licenses and sponsorship dropped to an all time low. At the current funding level I can only address critical issues and keep things stable. It doesn’t allow me to invest in the future of the framework, add meaningful new features, or keep up with community support.After 5 years of working outside of a major company, I have reached the point where I am no longer finding this work rewarding. The resources available do not allow me to spend the kind of quality time needed to have a meaningful engagement with this project. I no longer believe that this can be fixed or reversed. Go through another round of begging people for money in hope of another year or so for project runway is not appealing to me.I don’t know exactly how this will unfold. I plan to communicate this to the wider hapi community over the next few days to start a conversation and see what’s the best way for me to bring this project to an appropriate conclusion. This channel is the beginning of this process. While I am not expecting others to take over the work, I have not ruled that out yet.I want you to know that regardless of how this ends up, I am going to keep supporting the project until the end of the year. After that, I am going to offer some kind of continued commercial support for at least 2 years. I still need to work out the plan for what that support looks like and make sure that it is priced in a way that allows me to offer it.
And exactly why OSS needs to exist - true community projects that are not dependent on sponsors or have any strings attached. I hope we find a way back there.
The single-thread async-by-default execution model that nodejs shines at is brilliant for io bound tasks, like REST APIs.
Go is fine and has it's strengths, but is by no means a nodejs killer. It's another tool in the toolbox.
Reducing one of the most popular and effective modern server-side languages to "react server side rendering" is inaccurate, at best.
It also ignores node's massive use in the embedded space, desktop (electron, nwjs, etc...) and emerging data science space.
When I'm looking for a backend for my next project, it would be very hard to convince me to move backwards to python etc...
Those feel very legacy to me. Slow, apartment threaded model with blocking io, tons of context thrash from thread switching, bad package management, difficult environment configuration, etc...
I'll stick with node until there's another truly innovative technology that comes along.
Sails.js, adonis.js, nest.js meteor etc are all pretty much dead. They try to poorly re-implement everything we love about rails/django. Heck, even modern PHP with type-hints and symphony/laravel is better than full-stack nodejs these days.
If you're so lucky that your django,rails api can't scale your load, you can use Go which is also way better than node.js in every single aspect (standard library, language, tooling, deployment, performance).
That being said though, i'm really excited and curious about graphql servers and prisma.js and how all these tools could eventually introduce a new way to build crud apps but for now i'll stick with proven tech and wait.
In all seriousness: I maintain it every day with a team of 4 other core team members with the help of an incredible community of contributors.
Apollo is a must too both server and client.
GraphQL Subscriptions = WebSockets = Real Time bi-directional channel.
Lots of cool stuff on TypeScript/GraphQL being done. Nothing wrong with one framework fading off
In my current environment (~100 engineers, cross-functional teams, many Node.js services per pod), we have a few recommendations for libraries (Koa, knex, Passport, Boom, etc) but the glue on how to connect those are left to the engineer/pod. We don't feel the need for a stricter framework.
Although I would like to hear other opinions on how that could be bad and if with a framework things would be better.
As Ruby wanes into death, Express takes its place. Not sure about Python and Django/Flask, but I have a feeling they never got any overwhelming foothold in webdev anyways.
The question is whether web developers want to learn strongly typed Go, which is quite a jump from Python, PHP, JS, or Ruby. Go has quite a steep learning curve even coming from TS.
I personally feel like Go is the future, but I wouldn't be surprised if Node became the defacto standard. Year after year, JS is among top 3, if not #1, used language in developer surveys.
Seriously, if you created a new SaaS business, would you choose express.js instead of Rails for your backend? I believe you'd be in a serious disadvantage.
> As Ruby wanes into death, Express takes its place.
Say that to Github, AirBnb, Shopify, Stripe and many more companies.I don't even know ruby or rails but i appreciate what it has done for the web and how much time it's saving people around the world. Express.js basically ignores all these advancements in productivity brought by rails, by requiring you to install so many small packages for small details that you'll probably need at some point anyway.
To be completely honest, probably yes. As far as I know, Ruby has some serious performance and memory leak problems.
> Say that to Github, AirBnb, Shopify, Stripe and many more companies.
Sure... My company has legacy code in Groovy. It's still used, maintained, and productive. That said, I'd never say that my company is a heavy groovy user. Rather, my company didn't want to spend resources to get rid of Groovy.
I don't know Ruby that well, but I'm having hard time seeing cool new cloud-native projects heavily utilizing containerized Ruby.
Adonis just released a new version and the developer is working full-time. Nest.js is only 3 years old! And Meteor is receiving updates everyday.
"I feel that every node.js MVC backend framework or the MERN stack of the 2015 era will become obsolete. "
Don't feel, look for clear facts and think critically, if one framework is down because literally there are 5+ alternatives to it, it doesn't mean all the ecosystem is down.
I say this as someone who took over a good chunk of Eran's world when he left Walmart, and I was more or less forced to have my team, some of whom were spending most of their time working on Hapi.js, work on "real" stuff.