
Node OS - ajones
https://node-os.com/
======
bsimpson
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/](http://blog.codinghorror.com/the-principle-of-least-power/)

~~~
tambourine_man
THE BIRTH & DEATH OF JAVASCRIPT

[https://www.destroyallsoftware.com/talks/the-birth-and-
death...](https://www.destroyallsoftware.com/talks/the-birth-and-death-of-
javascript)

~~~
weitzj
Great Talk to watch

------
58028641
But the kernel needs to be in javascript. Since anything written in javascript
becomes 2X better. </sarcasm>

~~~
agumonkey
Not to forget your bootloader. grub.js

~~~
58028641
What about the firmware?

~~~
montibbalt
nsa_backdoor.bin.js

------
amelius
Cooperative multitasking, as found in the Windows 3.1 era!

~~~
nickpsecurity
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.

------
adambrod
What would be really interesting is Elixir-OS/Erlang-OS where the entire OS
can take advantage of a 50 core CPU.

~~~
alecco
Are you saying current OSs dont?!

~~~
tdeck
Current OSes don't include the buzzword "Elixir" so they aren't relevant to
Hackers.

------
shruubi
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.

~~~
pedalpete
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](https://github.com/voodooattack/nexusjs)
which is doing multi-threaded javascript. Maybe this or Node.js will support
multiple threads in the future.

~~~
spriggan3
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 .

------
gberger
> 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.

~~~
teen
fiasco?

~~~
guessmyname
Let me Google that for you:
[http://lmgtfy.com/?q=npm+fiasco](http://lmgtfy.com/?q=npm+fiasco)

------
jdubs
Wow this looks lovely to support

------
cheez
When all you have is a hammer...

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

------
notduncansmith
"Read More" link 404'd for me.

------
wrong_variable
<< 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.

~~~
sqren
Not going to defend npm here, but how is using Github as registry going to
avoid left-pad-gate?

~~~
wrong_variable
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.

------
shrugger
Now you can left-pad your entire environment instead of just your production
build!

Wow!

------
joesmo
I assume the whole thing goes down when left-pad or some other trivial
dependency can't be resolved.

~~~
AgentME
npm no longer allows packages to be unpublished after 24 hours.

------
alishan-l
It's a brave new world

------
int_handler
It's happening: [https://xkcd.com/1508/](https://xkcd.com/1508/)

~~~
cls59
Also: [https://www.destroyallsoftware.com/talks/the-birth-and-
death...](https://www.destroyallsoftware.com/talks/the-birth-and-death-of-
javascript)

