>IBM buys Express.js, freezes out all the main contributors to the repository, everybody else flees
This kills Node.js.
Pretty much all Node.js project that serves web sites uses Express.js.
Unless they can quickly organize a fork, Node.js on web backend is fucked with IBM flushing Express.js down the toilet.
Because nodejs enables the worst kind of developers a large say in development methodologies. No science or engineering expertise is involved in bashing out some shitty js tool or library, and thus no real support, documentation, or maintenance takes place.
Server technology is dead simple most of the time: make a shitty crud and call it a day. Multi-user or streaming tech is a little harder, but TCP streams have been around for decades. Websockets is literally the single most retarded way to do socket io, and json is the most retarded way to encode packet data. But lo, look what wonders node has brought us.
It's too bad oracle bought sun. JVM should have won
Some core developers of Express have been working on Koa.js for some time now. And it is superior to Express with its usage of js generators(function*, yield). I think it is already a good alternative for the community.
that's literally it
My take for advantages are:
First class functions, anonymous function literals, good/fair closure semantics, JSON built in, event loop makes aync flow natural(this one is especially good for server architecture).
It's not. He's probably some >muh pure C or >muh LISP fedora wearing NEET who can only do Fizzbuzz, and is frustrated that others are making money and being productive enjoying something else.
>no fucking clue or indication whether that is a man or a butt ugly woman.
>how to read code repo on github
>repo links to youtube video in readme, that is it
All of my keks have been handed out for this morning
>tfw nobody i know does socket programming in C
>that means no one can guide me either
>tutorials on the internet are pretty shit too
>tfw learned socket programming in C ALL by reading man pages
Its was fun as fuck
I honestly would love to use C++11 if there was a way to just use the .cpp files without needing to compile them.
Something like, upload .cpp file via ftp and it just works or the server throws 500 error if it doesn't compile.
Another thing i dislike is needing to read the entire RFC for the protocol you're implementing and handle all possible scenarios.
You want your implementation to be rigorous and stable.
Can somebody please answer this seriously?
I don't listen to them. I actually used all of those myself.
You constantly need to worry about what the variable contains, where the memory is, etc.
It feels like they were designed for clever one-liner fizzbuzz scripts.
Except java. Java is okay i suppose, but it needs a lot of shit running in the background for it to work.
Though i agree. Pure C is a shit language. I don't know how anybody does anything without templates.
>Though i agree. Pure C is a shit language. I don't know how anybody does anything without templates.
Anon embedded work is 90% based on C, its not a shit language, it just gives you too much control over the machine thats not required for most applications but for some
Not much experience with ruby, but i can tell you about python.
I constantly need to check implicit type conversions.
If i'm writing a reusable module, i treat all inputs as something an attacker might want to use.
That means i constantly need to worry about the type of the variable, lengths, if it contains anything else, etc.
Also, you have no private data in python. The code ends up being extremely horrible and unmaintainable as people just use random objects from different modules as temporary storage.
Then these modules start relying on these temporary objects and things just get out of hand.
If your language allows different types to be assigned to the same variable, it makes it a lot harder to write stable code.
What if i actually want to write back-end and front-end for a website?
Do i really need to go asm.js route?
If people are consistent throughout their code, C code can actually be pretty good.
Though people usually aren't, which makes their code a mess.
Yeah, but not yours. Maybe if you want to serve static content you could use one of those. If you want to make your own application, these servers are useless and you'll have to write one yourself.
And if you think your server will be on par with stuff like Nginx or Apache you're completely delusional.
Just use a language with support/great libraries for Web services, instead of reinventing the wheel again and again and again.
>IBM buys a library of Node.JS killing the cancer that is Node.JS
how retarded are you? even if express magically disappeared tomorrow node would still be going strong. it's not the only web framework on node..
go back to your desktop ricing threads and dont spout your meme opinions on things you dont understand
Fucking idiots complaining about node.js
I built a fucking 150 real time networked 3d game from scratch in node.js and sockets.io and it works flawlessly - what the fuck have you ever built in your life?
Nothing , we know it, so no need to answer you fucking idiots.
>I write drivers in bash.
You could have used the time you spent learning node on learning a language that isn't designed for web browsers. Your users hate you and your laggy POS.
Sorry for the sleep, here goes:
It's not that json is a bad format, it's that it's a serialization document. That means a document parser at each end, a moderate overhead to tag each element appropriately, etc. This is not "bad" per se, but one of the better results of computers getting faster.
The problem here is websockets having a ridiculous packet structure. It's got a begin and end word and is forcefully treated as async. You have no control over the internal packet data and you're locked to TCP only. That means the only thing it's suitable for is transmitting web documents like json and xml since trying to encode data would almost trivially run into unexpected instances of 0xffff accidentally ending your packet.
I guess this is useful since webdevs are using it, but it's just not enough.
Webasm and asm.js are both illiterate alternatives to a portable mature and *secure JVM. I hate java as much as the next guy, but the VM is a masterpiece of engineering. Using it as the binary script format would have given developers *good* tools a decade ago. But sun and oracle fucked up and now we pay the consequence. I don't recommend anything because there's no decent alternative.
.net has a few decent websockets libraries, java probably does too. It's a real simple protocol, you could probably build one yourself in your favorite typed language
JEE is pretty great for web stuff. Jaxrs beats the pants off node, jaxws plays nice with all the legacy shit, jsp invalidates php and Ruby safely, and there's a driver for every single database under the sun. The only downside is java, which you don't even have to use.
I've built networked real-time multiplayer games with real time Newtonian physics in C++. I've done this in afternoons before. I'm also probably building your healthcare provider's web presence. Go have fun writing a framework to make deep copies.
Most *new* stuff in Linux these days is drivers and poettering-ware from redhat. Killing off systemd would remove the necessity to rebuild the entire cnc structure for Linux from scratch since it already worked before they started.
Remember: systemd's entire existence is because sysv sucks. Ignore the fact that sysv was outmoded for years before that though with a dozen other init daemons.
>trying to encode data would almost trivially run into unexpected instances of 0xffff accidentally ending your packet.
That would occur whether or not the packet was encoded or not
>I've built networked real-time multiplayer games with real time Newtonian physics in C++. I've done this in afternoons before.
I dont believe you, link pls?
I mean binary encodes. Base64 and serial documents simply don't contain that value ever.
And I don't care if you believe me. Building networked multiplayer isn't hard if you can comprehend synchronisation. Even if I did, I can't link code since it's lost to time.
>Building networked multiplayer isn't hard... lost to time
so it was shit
>I mean binary encodes. Base64 and serial documents simply don't contain that value ever.
You can send binary through websockets, wtf are you talking about?
And you risk breaking your protocol due to the packet framing spec. If you think sending binary through websockets is a good idea, you're a retard.
Then that's brand new becuase link 4 was from April and said the same thing
breaking news - if you look at what nodeJs could do over a long enough time line you too would find it doesn't even exist! weird huh !
>And you risk breaking your protocol due to the packet framing spec.
Give me an example of what "breaking your protocol" means
Interesting image though, I won't argue this point further until I have more info.
Wikipedia says TCP only, but you give a good claim too, so investigation is worthwhile.
I already said: accidentally send a word aligned 0xffff and you break the frame. It might not even need alignment to break.
Thanks for the reply I enjoyed our heated discussion, have a good day
I dunno about server-side impls but I've sent all sorts of binary data over and both Chrome and Firefox seem to handle it just fine
websockets need to understood in the context of what webdevs had before, which was either flash(lol) or long-polling which destroys server cap. At my place of work we recently decommissioned a server that _only_ did long-polling, because when we started doing push events it would completely hog the cpu, and we don't even get that much traffic
afaik you can do udp-like sockets (they're actually srmtp) using webRTC, but the spec is much more complex than websockets so I haven't really had a chance to mess around with it
I don't like jvm or clr, they just happen to be mature technologies vs whatever shitshow is coming and the one that's already here.