Is node.js "dying"?



  • One of my club's members that has a lot more technical know-how than I do just emailed me regarding my plan to use nodebb (more so the node.js platform) as our replacement forum engine. Below is what he said. Please be aware that I do not know what most of it means, only that it sounds very negative towards node.js.

    Does he know what he's talking about? Here goes...

    Migrating from vBulletin5 the posts will be a nightmare from hell, if it's possible at all. Probably not since node.bb doesn't even use a relational DB so that means if exporters/importers aren't available we can't even use SQL scripts to move the stuff over (since those node loving dummies did away with the database, durr).

    • the old forum already has working mechanisms by which we can take memberships in PayPal and translate that into membership. This is all custom plumbing you'd have to recreate with the new system

    • node.js is insecure crap written by children with no clue how the world works, I simply cannot dissuade you enough from running any of it in production. I base this on 25+ yrs experience in internet programming and hosting, I'm not just being a grouchy old prick (but it's true I am also a grouchy old prick). The inventor of node (Ryan Dahl) is literally a moron, he spouted off loudly about how it was the greatest most efficient thing ever to his legions of javascript fanbois, only thing is he has no clue about computer science really and he was soundly debunked, but too stupid to even accept it or realize it. Then their poor choices fucked it up so badly none of the Linux distros would even allow it in their packages... they made it so horrendously insecure (with statically linked dependencies like OpenSSL and the V8 javascript library) that he had to "resign" (after < 5 years! nice job Einstein, LOL!) Finally joyent has managed to have a team of less stupid people make it unsketchy enough that the distros allow it again in their package managers... But it's a hell of a long way from "good" or something I'd sanely run in production. I pretty much (along with most experienced programmers and admins) feel this way about it, what the little cartoon guy said: https://www.youtube.com/watch?v=bzkRVzciAZg
      It would be the easiest thing int he world to DoS a node.js powered forum, despite the hipsters spouting words like "scalable" (a subject they don't know much about or they wouldn't be replacing perfectly good relational DB's with object stores). But I digress.....

    • as for the nodebb itself, While some more modern features like a responsive theme would be nice, we should investigate if we can get that from the existing vBulletin software? Changing the forum platform now is something we'll be stuck with forever... anything written in node.js is unlikely to last that well over time, the node ecosystem is alread one of crumbling infrastructure and it's not even 10 years old yet. Not encouraging is fact the DB doesn't use MySQL but uses an object cache (redis).. major red flag. IT's a forum, that's the very definition of a relational database. What kind of idiot would implement that without SQL? Oh right, a node.js person! Ah I could kick node.js puppies all day, they are just that deserving of it.

    So yeah, I mean you could do all that stuff, it will likely take a while to get everything right, you have to deal wit migration (likely impossible thanks to them not using a database), you'll have to deal with the membership and payment stuff (ecommerce is always a pain and the club is large enough that you want to be doing as little manual babysitting of the paying -> forum membership process as possible,

    As for the hosting, if you're hellbent on hosting it yourself, you're going to want to at least proxy the node.js stuff via Apache or nginx or some other reverse proxy webserver, but that still won't stop it from being easily DoS'ed because node isn't actually scalable to the moon like its lamer creators claim, it's super inefficient and will take down the droplet in no time flat if you beat on it at all. I run some custom hippy activist node.js stuff for ForestEthics out of san fran and even the simplest service written in node.js+redis eats as much resources on the server as 10 busy websites, and the thing ticks over and does nothing for the most part. It's appallingly bad. DigitalOcean doesn't provide swap so bad things happen if it overloads on RAM, ie. the kernel will kill something using lots of memory (probably redis, or your mysql server if you're also hosting wordpress on there).


  • Admin

    Re: the actual questions regarding migration -- we have a vBulletin migrator, although it likely isn't compatible with vBulletin 5, as a majority of vBulletin users are on the older vBulletin 4.

    The custom "plumbing" between your paypal membership and your forum membership is something you'd/we'd have to build, although this would be the case no matter what software you decided to migrate to, so that's not really a NodeBB specific problem.

    As for your colleague's comments about Node.js, his arguments are some very vocal and popular opinions against Node.js, although they are not novel by any stretch. Those same opinions have been around since Node.js and MongoDB came about years ago, and they're about as relevant as any similar opinion would be after several years.

    Node.js run side by side against (let's say) a C program or Python script will of course be comparable (some are faster, some are slower, as with all languages), although the speed increase from using Node.js comes from its event loop architecture, allowing multiple "thread-like" behaviours even though there is only one server running. Just as a single php script is executed multiple times in parallel and handled by a proxy server like Apache, Node.js scripts can also be parallelised.

    Change is always a difficult pill to swallow, and whenever something like Node.js comes along, which is pretty much tantamount to a paradigm shift in programming/operations, of course the natural reaction would be to dismiss it as a toy language or poke fun at it through dubiously researched arguments. Your colleague and the community here could probably argue back and forth for days over the merits and pitfalls of Node.js, but the real mistake is claiming that one language is "perfect" while the others are "stupid" or "useless". Languages each have their own use cases, and we've chosen to use Node.js to build this forum.


  • Admin

    Also, PayPal and WalMart happen to be using Node.js quite extensively, so I feel that's a pretty good indicator of its reliability.

    Last black friday After Black Friday/Cyber Monday in 2013, WalMart was so confident in their Node.js stack, they even decided to deploy a release during the holiday.

    WalMart Labs had a bumper launch with Node.js in 2013, where they put all of their Mobile traffic through Node.js on black-friday, the busiest shopping period of the year.
    The team at WalMart Labs live tweeted against #nodebf tag showing the performance of the Node.js application.

    On Black Friday the WalMart servers didn’t go over 1% CPU utilisation and the team did a deploy with 200,000,000 users online.
    -- http://www.nearform.com/nodecrunch/node-js-becoming-go-technology-enterprise/


    Of course, I cherry-picked that article and data point in my favour, and your colleage likely did as much, so in the end it is up to you to decide whether you want to use Node.js or not :)


  • Anime Lovers

    Both of my forums (Mybb and NodeJS) run about the same speed on the same server. I haven't run actual benchmarks, but neither has appeared too slow to use. The Mybb forum has been around longer, so it has more posts and users. There was once I was I got DDOSed on the MyBB forum, and it didn't take much to take me out. The NodeBB forum has never had issues, and is a public forum and not closed off like the mybb forum.

    The real advantage of NodeJS comes with it's ease of use of sockets. If you want instant updates, I see people building Node servers and connecting php to them for their instant updates. I don't see the reason for that, it seems ridiculous to have to use so many different technologies for your website. I was dead set on using Flarum once it came into being, until I saw this topic. http://discuss.flarum.org/d/534-community-chat-on-webpage-with-forum-usernames/5

    It made me realize that PHP couldn't compete without using outside technologies with some of the instant functionality. I wanted that instant functionality, so I ran straight back to NodeBB. If you don't care about the instant live updating functionality, i'd say either technology is just fine.


  • Community Rep

    @ron_jeremy No. NodeJS is not dying.

    That guy sounds like a lot of fun to work with, yeesh. Despite his "25+ years of programming" (in PHP, I'd be willing to bet. PHP is a god-awful language), saying things like it's impossible to migrate without an importer / exporter is true, but citing the reason as because of NodeBB using a non-relational DB is just an uneducated stab at new technologies.

    I would be cautious to heed words from someone who talks like this, most of it is unfounded opinion spun as fact.

    NodeJS, compared to a lot of languages, is still young, so there are some rough spots, but it's not going away.



  • Whether he is right or wrong, that anti-node.js rant really made me chuckle. My background is PHP, but I'm keen on trying anything new that might improve on the existing way of doing things. If we didn't embrace new technology, we'd still be using punch cards.


  • Plugin & Theme Dev

    Just started to read, and have stopped, on this:

    The inventor of node (Ryan Dahl) is literally a moron

    Instantly imagined such type of nerd/geek:

    ooops

    Dunno why ;) I imagine, how this guy will start rant when you will go with NodeBB. It will be so much food for him (you know, NodeBB still is under major zero version ;) ) Hm, I think, I'm in danger now, when he will read this.

    If you'll migrate to NodeBB, don't forget to ask @administrators to delete this topic 😆


  • Translator

    @henrywright Imagine a world without Kanban boards or Agile workflows 😕


  • Global Moderator

    node.js is insecure crap written by children with no clue how the world works

    And vBulletin, written in PHP, must be a military-grade secure platform.

    I like almost everything he says is wayyyy more applicable to PHP than it is to Node.


  • Global Moderator

    @BDHarrington7 You linked to the wrong article, here you go:

    PHP is a Fractal of Bad Design



  • Total nonsense what your friend wrote.
    Around 4 months ago I was a myBB user and that for almost 2 years. But due to beef with a tech giant in the Asian market our site was compromised. Databases were almost completely deleted, templates were destroyed and so on. Not that I did not secured the server enough - I did what was always said. "Change your SSH port." "Disable root login!" But it did not helped at all.

    Now here I was - a website with 150.000 visitors a month without a "home". I heard from NodeBB already somewhile ago, but I thought it was bullshit (I hope I do not have to censor words here). Yet I gave it a try in my desperation. phpBB was too difficuilt (and me too lazy), myBB is - no words, SMF same as myBB and paid software?

    No go.

    And to be honest I was quite surprised. The Admin CP was (0.7.x) pretty sorted compared to all other boards. It even made IPB and vB looking old.
    I soon started to feel very comfortable with the whole setup and so my users also did.

    Thanks to some hard work the site was online in not even 5h again and performing better than ever before.

    Till today users like the board and its function - not to mention there are more than 5000 of them nowdays. Back then I imported the myBB database with almost 22.000 posts and 3.500 users.

    So I definitely did some growth.

    Besides that the beef started to increase our visitors numbers, which exceed 1.25m last month.
    While our server is facing a load of 0,1% CPU and 800MB RAM. A joke if you ask me.

    I even was so happy with the result that I moved my front page to Ghost and still do not regret it.

    But I will be honest and also admit that there also are negative sides of NodeBB in specific:

    • Almost no themes (I am lazy as well)
    • Missing mobile apps like Tapatalk (made my own)
    • Implementation of Google AdSense

    Actually I found solutions for all these "issues", except the theming one.

    All in all I can say is that you should always be open for something new as it can never hurt.
    I am a big fan of NodeJS now, even though I have no relation to that language.


  • Swedes

    I my opinion Nodejs and Nodebb is the best thing that has happened for a long time!

    I myself have the LAMP skills and i feel that everything i know is a temporary waste, but i feel the need to evolve and learn something new and better. At the moment i use Nodebb and PHPBB as forum software and if it weren't for the migration hassle i would migrate all my forums to NodeBB. (I use phpbb 3.1)

    I feel that NodeBB is in the baby stage ie 0.x.x and not even a 1.0. yet. But i really like it and it has a lot of promise in my mind. My project at the moment is to build a "package" that i can use for all my customer instead of Wordpress (BTW Wordpress sucks but i dont have time to setup systems fast when writing everything from scratch for customers)

    Here is my temporary dev: http://dev.web.nodebb.se/ (As you can see, it works great for webpage usage)

    What I looking for is

    • Fast to setup
    • Fast to render
    • Blog support
    • Discussion support in both chat and forum
    • Custom pages inc custom startpage
    • Smtp mail support and forms
    • other misc stuff that makes this awesome project work as a webpage maker
       

    At the moment I have everything that i need except the smtp and mail stuff and maybe the question on stability for production use ;)

    I just want to say, thanks to all the people making this possible :)


  • Community Rep

    @pitaj thanks! Yes that was the glorious piece of writing I intended to post :)


  • Admin

    @pitaj said:

    @BDHarrington7 You linked to the wrong article, here you go:

    PHP is a Fractal of Bad Design

    👍 this is a good read, another one is http://www.phpwtf.org/

    The nbb team have worked with php for years, we did a few cool things in our history together like Facebook games (flash & mobile with php backend) that reached millions MAU

    Now that we've experienced scaling NodeBB for clients that have had millions of pageviews per month, my personal perspective is that I feel a lot more comfortable working with node.js, from both scaling and security aspects


  • Translator

    @psychobunny Another reason to not learn PHP kids :P



  • My first post here. I came here because of....yes, node.js!

    IBM just entered node.js through StrongLoop last month. Node.js is coming to the enterprise whether you like it or not. Those who will not adapt will be left behind.



  • I think (and I'm a relative newbie to node) that the guy has a specific set of skills and feels threatened by "rival" technologies. I learned ASP at college and mentioned in class I'd like to teach myself PHP (which I did). One guy who was pretty clued up on ASP already looked at me as if I'd stabbed his cat, whining about how much better this was.

    To me it didn't matter, him though it was not dissimilar to seeing a particularly "loyal" PS4 owner shoot down anyone suggesting they might enjoy the new Halo game. Pure petty fanboyism. Then, he did say css wouldn't become anything more than a gimmick forced upon designers. And he liked IE7.

    I know PHP has its flaws, as does SQL (hence non-sql databases have long been gaining in popularity) and I'm sure NodeJS probably does too (I'm no expert on it), but his opinion lacks any objective comparison. It's worth taking time to read opinion on the matter but you won't ever satisfy this guy if you make the switch, ever, even if everything is better tenfold.



  • @Danny-McWilliams said:

    I know PHP has its flaws, as does SQL (hence non-sql databases have long been gaining in popularity) and I'm sure NodeJS probably does too (I'm no expert on it), but his opinion lacks any objective comparison. It's worth taking time to read opinion on the matter but you won't ever satisfy this guy if you make the switch, ever, even if everything is better tenfold.

    I wouldn't group PHP and SQL together like that. PHP is a clusterfuck. I code it professionally from time to time and I dislike it a lot. I have coded some 20+ languages and while Perl can give you a proper headache, it's not as broken as PHP. SQL is a language and for what it aim to do, it's perfectly fine. It's RDBMS that are going out of style, not SQL per se. Relational databases do some things great and quite a few things not so great. RDBMS' have also dominated the industry for years. Thankfully the industry is now churning out products that do a task properly instead of trying to shoehorn any task into a specific product (I'm looking at you, Oracle!).

    If you want to look up a cool database, check out http://neo4j.com/ I really want to convert a RDBMS based system to Neo4j to test it out. I should really test Mongo as well.


  • GNU/Linux

    -1 for videos with robot voice, btw.



  • @ron_jeremy said:

    • node.js is insecure crap written by children with no clue how the world works, I simply cannot dissuade you enough from running any of it in production. I base this on 25+ yrs experience in internet programming and hosting, I'm not just being a grouchy old prick (but it's true I am also a grouchy old prick). The inventor of node (Ryan Dahl) is literally a moron, he spouted off loudly about how it was the greatest most efficient thing ever to his legions of javascript fanbois, only thing is he has no clue about computer science really and he was soundly debunked, but too stupid to even accept it or realize it. Then their poor choices fucked it up so badly none of the Linux distros would even allow it in their packages... they made it so horrendously insecure (with statically linked dependencies like OpenSSL and the V8 javascript library) that he had to "resign" (after < 5 years! nice job Einstein, LOL!) Finally joyent has managed to have a team of less stupid people make it unsketchy enough that the distros allow it again in their package managers... But it's a hell of a long way from "good" or something I'd sanely run in production. I pretty much (along with most experienced programmers and admins) feel this way about it,

    I've got 26+ years in software engineering and IT. What "internet programming" does he mean from the 1980s? I'm serious. That's not even a realistic number to through out for that. What exactly does he claim to have been writing?

    This is a rant so unprofessional that the rant alone should have told you that he was grasping at straws to try to make a point he can't make technically.


Log in to reply
 


Looks like your connection to NodeBB was lost, please wait while we try to reconnect.