These are chat archives for voodooattack/nexusjs

16th
Sep 2016
LeonineKing1199
@LeonineKing1199
Sep 16 2016 14:51
Oh, it was super awkward.
However, I did enjoy seeing some of the implementation details for Nexus
I'm excited for this
Abdullah A. Hassan
@voodooattack
Sep 16 2016 14:52
Haha
Yeah...
LeonineKing1199
@LeonineKing1199
Sep 16 2016 14:54
You were so nervous, man!
Should've just said, "Node's poopoo. Nexus is not poopoo"
Though you're right, event handling is almost embarrasingly parallel so I'm shocked that Node didn't just do it in the first place.
I think they were scared of shared access to global variables
If Nexus did come out, a lot of code would have to be restructured because, yeah, it does rely on global mutations T_T
* cough * Express * cough *
I think the next talk I'm gonna watch is the one about "If you know map, I can teach you monads!"
That should be good
Abdullah A. Hassan
@voodooattack
Sep 16 2016 14:57
Yeah. Pretty good
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:05
So yeah, I don't know if you're looking for speaking tips but some things that I think would help your talk is to definitely highlight how process-based parallelism is only garbage. Processes are significant overkill for dynamically scaling a single web server and how recycling of threads is actually not garbage.
Nexus also favors idempotent and pure functions as well
It harshly punishes you for accessing globals (which is a good thing) but it should be mentioned.
You certainly won't be using threads like you would in C++ where you're having 4 threads all be part of the same array reduction
But you would be using threads to improve the performance of your web application and utilize system resources better
These are the kinds of things I think other JS developers would like to know
Abdullah A. Hassan
@voodooattack
Sep 16 2016 15:07
Yeah
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:07
And second, don't be nervous. You're a badass for doing this.
Don't be nervous!
Abdullah A. Hassan
@voodooattack
Sep 16 2016 15:07
I'll keep that in mind, thanks.
In my defense, I couldn't access my notes!
That's why I was nervous
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:09
Oh, that's so lame lol
One thing I didn't really understand and I wish was better explained was the I/O stuff
Also, seeing some of the Nexus JS API was really cool!
Those are my notes, that's what I was supposed to say
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:11
Oh, awesome!
I'm going to take a look this weekend
Abdullah A. Hassan
@voodooattack
Sep 16 2016 15:11
Cool :)
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:33
So, this may sound dumb, but assuming that one of my event handlers does access a reference outside of its current scope (so this means it's visible to other threads), Nexus will serialize these accesses, right?
Abdullah A. Hassan
@voodooattack
Sep 16 2016 15:33
Yeah
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:33
Oh, thank God.
Phew
Your notes are really good!
Abdullah A. Hassan
@voodooattack
Sep 16 2016 15:34
Thank you
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:34
You're right, it's a shame you didn't have them on-hand
Abdullah A. Hassan
@voodooattack
Sep 16 2016 15:34
Well, I'm just glad I didn't break down
:D
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:35
:laughing:
Seriously, you're awesome for doing this. I'm very excited for your project. Now, if you wanna figure out how to somehow add some stronger typing to JS... :laughing:
Abdullah A. Hassan
@voodooattack
Sep 16 2016 15:35
lol
There's TypeScript for that
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:36
Ha ha, yeah...
I'm going to try and get my team to switch to it.
Abdullah A. Hassan
@voodooattack
Sep 16 2016 15:36
I'll be adding loaders for transpiling though
LeonineKing1199
@LeonineKing1199
Sep 16 2016 15:36
Ooh, nice
I really like some of technical details.
Lock-free scheduling thread for your threadpool
Intervleaved coroutines
Cool stuff, man
Abdullah A. Hassan
@voodooattack
Sep 16 2016 15:36
Thank you :)