52 comments

[ 3.6 ms ] story [ 106 ms ] thread
I'm astonished that this has been up for an hour and no one's mentioned Atwood's Law:

"Any application that can be written in JavaScript, will eventually be written in JavaScript."

http://blog.codinghorror.com/the-principle-of-least-power/

People are even doing hardware design in the browser now. That may or may not directly involve JavaScript on HW part as I don't know how much those apps rely on servers. It's conceivable a basic, EDA tool could be built with Javascript, though.
I assume the whole thing goes down when left-pad or some other trivial dependency can't be resolved.
npm no longer allows packages to be unpublished after 24 hours.
One thing I can't seem to find is, is this a true nodejs-based operating system in that it's all single threaded? single-threaded event loop stuff works well for network servers but an OS? To me it seems like a terrible idea.
I'm going to have to assume it's using some form of Node's clustering support, which will let you run up to X instances where X is the maximum number of supported instances for the number of cores you have. Otherwise, you're right, bad combination.
Why not? Many languages and Operating Systems used to be single threaded. Many still functionally are for a lot of things.

Of course it's still challenging but it's built on top of the Linux kernel so it's also not a pure NodeOS (which would probably be impossible).

It's still based on the linux kernel.
What about something like ChromeOS? Does it need multi-threading?

If each app is running it's own thread, and can spawn new threads, maybe that would work.

Also, though Node.js is currently single-threaded, there is the Nexus project https://github.com/voodooattack/nexusjs which is doing multi-threaded javascript. Maybe this or Node.js will support multiple threads in the future.

Nashorn on the JVM supports threads. So the problem is definitely not a JS issue but a JS engine issue. NodeJS is single threaded because NodeJS V8 is. There was a talk about implementing workers that communicate view text messages though, I don't know the state of workers in NodeJS .
What would be really interesting is Elixir-OS/Erlang-OS where the entire OS can take advantage of a 50 core CPU.
The entire os can in fact take advantage of a 50 core cpu and most of the things that would benefit the most can.
I remember SGI adding code to Linux to to make it work on their NUMA machines with 256 sockets and 2,000-4,000 cores with single system image. They were my favorite but not only one. I'm sure some distro out there can handle 50 by now. :)
Thanks, I was not aware of this :)
Are you saying current OSs dont?!
Current OSes don't include the buzzword "Elixir" so they aren't relevant to Hackers.
Current OSes don't include the buzzword "Elixir" so they aren't relevant to Hackers.
I'm honestly not sure. I was under the impression that it was limited... but thinking back perhaps I was thinking of the software that usually doesn't take advantage of multiple processes. Also half joking :D
Actually, BEAM can somewhat (and probably should be) considered an OS. It's got most everything you'd need baked in and ready to go...

Right now, I'd say the bigger issue isn't he entire OS taking advantage but the applications running within it... in which case, yes, BEAM would be an amazing paradigm shift! :D

But the kernel needs to be in javascript. Since anything written in javascript becomes 2X better. </sarcasm>
I find it sad that before I added </sarcasm> people thought I was being serious and downvoted me. Once I added </sarcasm> I got upvoted.
<< Die heart Node.js fan >>

As much as I love Node.js, I have grown to dislike npm. Git + Github is a much nicer way to publish.

Also the whole left-pad fiasco.

Not going to defend npm here, but how is using Github as registry going to avoid left-pad-gate?
you are right - its not possible to avoid left-pad-gate due to github being a similar company as npm ( in terms of law ).

But using git means its theoretically possible to have multiple registries - etc.

To be quite frank, the fact that the node community hasn't adopted vendoring as a standard practice speaks volumes about that community.
Wow this looks lovely to support
Cooperative multitasking, as found in the Windows 3.1 era!
I have a two-finger salute I typically give to cooperative multitasking especially thanks to the Windows 3.1 era. ;) I still investigate it with better type systems, languages, hardware monitors, whatever. I just think "NOOOOO!!!" is a good default when I see it.
When all you have is a hammer...
(comment deleted)
(comment deleted)
> node-os is the first operating system powered by npm Read More

That's not a very nice tagline to have after the recent left-pad fiasco.

My favourite part is that I clicked it and got a 404. That seems really appropriate.
Now you can left-pad your entire environment instead of just your production build!

Wow!

I love node, but a node REPL in lieu of a shell sounds like the worst thing ever.