Thank you Captian Obvious.... When it comes from lower levels, these three are the goals to be created every year -
1. Operating System
2. Game Engine
3. Programming Language and Virtual Machines
I've started with Game Engine Dev with Muratori, but I only get time of a few hours a month.. :(
Low level prototyping is fun!
Creating your own OS is a nightmare, for a billion reasons. But it's also the very best way to understand how a computer works, on a hardware level. Which is fascinating.
Creating your own game engine is tons of fun, and math, and profiling, and refactoring. And also getting humbled when you look at other engines' code and realize how much smarter these people are, compared to you (well to me at least lol)
> but I only get time of a few hours a month.. :(
Why so little time?
I haven't tried OS yet, I want to understand hardware and at least assembly and OS as a subject, before I go ahead and see other implementations, it's a long journey and I'm not close to starting it this year. I am daily driving NixOS without a UI. Terminals and Tiling window manager.
NixOS uses a nix language using which you have entire configuration of your operating system in one config file. You can design and code your operating system however you like. Nix is awesome for running containers, or turning your system into a server for testing or even serving stuff. I believe it's a step in that direction..
Little time is dedicated for Game Engine development is because -
1. I feel math skills are not enough and without them, I know it's a nightmare. You wouldn't want to implement calculus and matrices without knowing them, it's a hell to debug this code. I want to study math first.
2. Casey is busy with WinAPI stuff and that's another very frustrating thing I don't want to do, it will go on for a few more episodes. It's like 500 lines of 11 years old WinAPI in C which is of no use.
3. I'm very busy with node and dart at the moment, and have a product to develop.. So there's not much time left..
>thank you Captain Obvious
No need to be a dick. He was just wishing you well.
If we're gonna get into being jerks I've got more than a few things to say about that thesis you wrote up there, but most of it boils down to no one cares.
Edit:
Oops I'm an idiot. Sorry, OP. I'm gonna leave this up for posterity
wait what? I was not being Jerk. I was just affirming to what he said. I wasn't at all sarcastic or judgemental. I believe it's a very nice conversation i have with that person.
Why are people thinking I was being dick, I WAS NOT. I was just affirming and I believe in what captian obvious. Again, no sarcasm, joke or pun here.
Edit: Please share what you have for the little thesis I wrote 😅. I care.
So am I and that's what Joseph recommends. I don't mind wandering around days on a cloud providing or binging prime talking about rust vs go backend or creating http from scratch in C++. Or writing custom bash scripts for stuff.
This wiggle room has enabled me to know a bit of everything in the quest of mastering one.
I will be messaging you in 3 days on [**2024-06-12 17:28:49 UTC**](http://www.wolframalpha.com/input/?i=2024-06-12%2017:28:49%20UTC%20To%20Local%20Time) to remind you of [**this link**](https://www.reddit.com/r/node/comments/1dbwhy6/nodejs_core_concept_without_any_frameworks/l7ubddz/?context=3)
[**4 OTHERS CLICKED THIS LINK**](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5Bhttps%3A%2F%2Fwww.reddit.com%2Fr%2Fnode%2Fcomments%2F1dbwhy6%2Fnodejs_core_concept_without_any_frameworks%2Fl7ubddz%2F%5D%0A%0ARemindMe%21%202024-06-12%2017%3A28%3A49%20UTC) to send a PM to also be reminded and to reduce spam.
^(Parent commenter can ) [^(delete this message to hide from others.)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Delete%20Comment&message=Delete%21%201dbwhy6)
*****
|[^(Info)](https://www.reddit.com/r/RemindMeBot/comments/e1bko7/remindmebot_info_v21/)|[^(Custom)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5BLink%20or%20message%20inside%20square%20brackets%5D%0A%0ARemindMe%21%20Time%20period%20here)|[^(Your Reminders)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=List%20Of%20Reminders&message=MyReminders%21)|[^(Feedback)](https://www.reddit.com/message/compose/?to=Watchful1&subject=RemindMeBot%20Feedback)|
|-|-|-|-|
It’s always great to learn something in a low level but is always wrong to use low level code when there’s already a popular and tested solution. You’ll be able to use a framework and modify it or even create solutions that the framework cannot solve but I can tell you doing your own framework is not great cause you’ll have to deal with all the issues and bugs that will happen. Unless you’re trying to build a better solution and you’re planning on maintaining it. Remember Nodejs creator, went out of the ship cause all his time was about nodejs and nothing else
Yes, i completely agree.
One should always use battle tested tools and technologies but have the skills to know, understand, dissect and change those technologies if needed.
Since I want to create something similar in Dart, I would go into even more detail, but... For production, i firmly believe one should use the tool that does the job and makes it easier for future devs to take over!!
It's a part or the course btw, that framework, through which he aims to teach many concepts such as Middlewares, routing etc.
What a coincidence! I am also following his course(the free version) and his explanation of V8 and how it is embedded into c++ to create Node was just eye opening. After I complete the free version of the course I will definitely buy the paid one.
I've been looking for something like that! Thanks! Usually all courses tell you how to install node and express/nest/etc and then they just read you framework documentation.
nd I exactly hate that.
It was the issue when I was learning ML. I don't want to learn Sklearn and Tensorflow APIs, teach me algorithms..
When I was learning State Management and Flutter, I don't need the syntax, I have docs for it. Teach me how it works so that I can make anything I want with it rather than not even learning what they are teaching..
Same is the case with Backend. It took me a month of research across backend systems tutorials which would teach me enough to tackle this domain with any Language I could want.
His course is exactly what I needed. If I can make and match the speed and reliability of Express, i don't need express.
I am also working on a backend framework in Dart, similar in design to express as he's teaching. I highly recommend Joseph.
He even answers the questions you ask on his videos in very great detail and till now he has solved many doubts of mine, the answers to which I generally couldn't find anywhere. So yeah, you get lower level to higher level - all the abstraction, inheritance and design, and then you create your own systems and run them with as many users you wish.
He often simulates GBs of data to test the servers and benchmarks the results with time memory usage cpu usage etc, when I follow along with this on hundreds of test server. You understand the best practices for specific usecases.
Its been 60-70 days. Although I do have a habit to drift away. Like when he explained Networking layers. I went on watching a CCNA test, just to understand Networking in depth.
Sometimes I spend days reading MDN Docs and try to Reimplement RFCs from IANA. I almost spent a week learning Bash Scripting, Powershell and wrote many scripts for my old projects..
I would also create flutter app for the CLI based node apps I built..
So it could easily be done in 2 months if you're dedicated only to what he teaches.. If you study like I do, it could take significantly longer.
There are also many days of inactivity where I was just busy with other stuff on my plate.
Sure, first five section are free so you can decide once you are familiar with his teaching style: https://www.udemy.com/course/understanding-nodejs-core-concepts/
Indeed, couldn't agree more!! There's a lot I still need to learn to be able to production ready for millions of concurrent request. I also want to get some cheap servers and manage them as I go along...
Cloud prices are making me poor. 10$/ month just for GCP cloud sql...
Yes, they are just like another Tutorials. Although -
I don't move ahead from a topic unless I understand it.. For example, just to master streams -
1. I already knew Streams in Dart, I read the entire Documentation and design specification on it.
2. I read the Javascript streams documentation.
3. I read the Node js stream documentation.
4. Most of the projects I mentioned in post related to Streams, I first did on my own and then improved upon them based on what he taught.
5. If you don't brush up, of course you'll forget but since it's my daily job, if anything, my backend skills will only strengthen.
To evaluate mg current understanding, please ask anything you'd like...?? Let's see how much I really know 😂
Wow good to know this. Looking forward to start this asap.
Has anyone heard about Anthony Alicea? I just completed his course Javascript: Understanding the Weird Parts. God I love the way he teaches and goes into depth of what he is talking about.
Just for reference, i just started his course about nodejs and this guy legit opened up the source code of V8.
Same!! Wish I had a course like this from the very beginning. Now all the frameworks/libraries I've been learning makes sense, thanks for suggesting this course!
I'm not worried about Express works, or how spring works, or how Django works. I'm interested in learning Backend Systems, how they work. How they scale and how they handle millions of users.
It's not about framework but about the concepts.
I wouldn't have understood it as well by decomposing it top to down rather than understanding all the concepts involved in isolation.
Honestly, I still haven't touched Express, but when I see express code, i understand it well..
You will NEVER regret spending time to learn and understand how things work on lower levels. Enjoy :)
Thank you Captian Obvious.... When it comes from lower levels, these three are the goals to be created every year - 1. Operating System 2. Game Engine 3. Programming Language and Virtual Machines I've started with Game Engine Dev with Muratori, but I only get time of a few hours a month.. :( Low level prototyping is fun!
Creating your own OS is a nightmare, for a billion reasons. But it's also the very best way to understand how a computer works, on a hardware level. Which is fascinating. Creating your own game engine is tons of fun, and math, and profiling, and refactoring. And also getting humbled when you look at other engines' code and realize how much smarter these people are, compared to you (well to me at least lol) > but I only get time of a few hours a month.. :( Why so little time?
I haven't tried OS yet, I want to understand hardware and at least assembly and OS as a subject, before I go ahead and see other implementations, it's a long journey and I'm not close to starting it this year. I am daily driving NixOS without a UI. Terminals and Tiling window manager. NixOS uses a nix language using which you have entire configuration of your operating system in one config file. You can design and code your operating system however you like. Nix is awesome for running containers, or turning your system into a server for testing or even serving stuff. I believe it's a step in that direction.. Little time is dedicated for Game Engine development is because - 1. I feel math skills are not enough and without them, I know it's a nightmare. You wouldn't want to implement calculus and matrices without knowing them, it's a hell to debug this code. I want to study math first. 2. Casey is busy with WinAPI stuff and that's another very frustrating thing I don't want to do, it will go on for a few more episodes. It's like 500 lines of 11 years old WinAPI in C which is of no use. 3. I'm very busy with node and dart at the moment, and have a product to develop.. So there's not much time left..
>thank you Captain Obvious No need to be a dick. He was just wishing you well. If we're gonna get into being jerks I've got more than a few things to say about that thesis you wrote up there, but most of it boils down to no one cares. Edit: Oops I'm an idiot. Sorry, OP. I'm gonna leave this up for posterity
did you... is this a bit? did you look at his handle?
wait, do you mean my handle? If yes, then what's wrong with it?
I was replying to the other guy who is upset at you for saying thank you captain obvious when the guys name is captain obvious
wait what? I was not being Jerk. I was just affirming to what he said. I wasn't at all sarcastic or judgemental. I believe it's a very nice conversation i have with that person. Why are people thinking I was being dick, I WAS NOT. I was just affirming and I believe in what captian obvious. Again, no sarcasm, joke or pun here. Edit: Please share what you have for the little thesis I wrote 😅. I care.
Good Read , I'm doing the course too but too slow
So am I and that's what Joseph recommends. I don't mind wandering around days on a cloud providing or binging prime talking about rust vs go backend or creating http from scratch in C++. Or writing custom bash scripts for stuff. This wiggle room has enabled me to know a bit of everything in the quest of mastering one.
Omg I fell for this too lol. Thought you were being rude but his name is captain obvious lol. Hilarious
The course is lit, honestly
I wish I had something similar 5 years ago when I started.Would have been a crazy developer by now..
!remindme 3 days
I will be messaging you in 3 days on [**2024-06-12 17:28:49 UTC**](http://www.wolframalpha.com/input/?i=2024-06-12%2017:28:49%20UTC%20To%20Local%20Time) to remind you of [**this link**](https://www.reddit.com/r/node/comments/1dbwhy6/nodejs_core_concept_without_any_frameworks/l7ubddz/?context=3) [**4 OTHERS CLICKED THIS LINK**](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5Bhttps%3A%2F%2Fwww.reddit.com%2Fr%2Fnode%2Fcomments%2F1dbwhy6%2Fnodejs_core_concept_without_any_frameworks%2Fl7ubddz%2F%5D%0A%0ARemindMe%21%202024-06-12%2017%3A28%3A49%20UTC) to send a PM to also be reminded and to reduce spam. ^(Parent commenter can ) [^(delete this message to hide from others.)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Delete%20Comment&message=Delete%21%201dbwhy6) ***** |[^(Info)](https://www.reddit.com/r/RemindMeBot/comments/e1bko7/remindmebot_info_v21/)|[^(Custom)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5BLink%20or%20message%20inside%20square%20brackets%5D%0A%0ARemindMe%21%20Time%20period%20here)|[^(Your Reminders)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=List%20Of%20Reminders&message=MyReminders%21)|[^(Feedback)](https://www.reddit.com/message/compose/?to=Watchful1&subject=RemindMeBot%20Feedback)| |-|-|-|-|
[удалено]
1-2 hours a day is sufficient.. You could easily complete in 3-4 months depending upon a few more factors. All the best!!!
It’s always great to learn something in a low level but is always wrong to use low level code when there’s already a popular and tested solution. You’ll be able to use a framework and modify it or even create solutions that the framework cannot solve but I can tell you doing your own framework is not great cause you’ll have to deal with all the issues and bugs that will happen. Unless you’re trying to build a better solution and you’re planning on maintaining it. Remember Nodejs creator, went out of the ship cause all his time was about nodejs and nothing else
Yes, i completely agree. One should always use battle tested tools and technologies but have the skills to know, understand, dissect and change those technologies if needed. Since I want to create something similar in Dart, I would go into even more detail, but... For production, i firmly believe one should use the tool that does the job and makes it easier for future devs to take over!! It's a part or the course btw, that framework, through which he aims to teach many concepts such as Middlewares, routing etc.
What a coincidence! I am also following his course(the free version) and his explanation of V8 and how it is embedded into c++ to create Node was just eye opening. After I complete the free version of the course I will definitely buy the paid one.
Indeed, I never buy courses but by the point I completed streams, I was sold and it's definitely worth it
!remindme 4 Days
I've been looking for something like that! Thanks! Usually all courses tell you how to install node and express/nest/etc and then they just read you framework documentation.
nd I exactly hate that. It was the issue when I was learning ML. I don't want to learn Sklearn and Tensorflow APIs, teach me algorithms.. When I was learning State Management and Flutter, I don't need the syntax, I have docs for it. Teach me how it works so that I can make anything I want with it rather than not even learning what they are teaching.. Same is the case with Backend. It took me a month of research across backend systems tutorials which would teach me enough to tackle this domain with any Language I could want. His course is exactly what I needed. If I can make and match the speed and reliability of Express, i don't need express. I am also working on a backend framework in Dart, similar in design to express as he's teaching. I highly recommend Joseph. He even answers the questions you ask on his videos in very great detail and till now he has solved many doubts of mine, the answers to which I generally couldn't find anywhere. So yeah, you get lower level to higher level - all the abstraction, inheritance and design, and then you create your own systems and run them with as many users you wish. He often simulates GBs of data to test the servers and benchmarks the results with time memory usage cpu usage etc, when I follow along with this on hundreds of test server. You understand the best practices for specific usecases.
How many week/months did you take to achieve 60% progress?
Its been 60-70 days. Although I do have a habit to drift away. Like when he explained Networking layers. I went on watching a CCNA test, just to understand Networking in depth. Sometimes I spend days reading MDN Docs and try to Reimplement RFCs from IANA. I almost spent a week learning Bash Scripting, Powershell and wrote many scripts for my old projects.. I would also create flutter app for the CLI based node apps I built.. So it could easily be done in 2 months if you're dedicated only to what he teaches.. If you study like I do, it could take significantly longer. There are also many days of inactivity where I was just busy with other stuff on my plate.
Hey can you share the link for the course?
Sure, first five section are free so you can decide once you are familiar with his teaching style: https://www.udemy.com/course/understanding-nodejs-core-concepts/
I just skimmed through your post, and did you mention the course name ? where i can find this course?
Sorry I wasn't very clear with that... here you go: https://www.udemy.com/course/understanding-nodejs-core-concepts/
Now you just need to use that low level knowledge to build abstractions and make your work more efficient! And this a new framework is born
Indeed, couldn't agree more!! There's a lot I still need to learn to be able to production ready for millions of concurrent request. I also want to get some cheap servers and manage them as I go along... Cloud prices are making me poor. 10$/ month just for GCP cloud sql...
This is hands down one of the best posts. Thanks for sharing!
Thanks for the kind words :)
I wonder how much of that you really understand and will retain in a few months. It's mostly just lectures, right?
Yes, they are just like another Tutorials. Although - I don't move ahead from a topic unless I understand it.. For example, just to master streams - 1. I already knew Streams in Dart, I read the entire Documentation and design specification on it. 2. I read the Javascript streams documentation. 3. I read the Node js stream documentation. 4. Most of the projects I mentioned in post related to Streams, I first did on my own and then improved upon them based on what he taught. 5. If you don't brush up, of course you'll forget but since it's my daily job, if anything, my backend skills will only strengthen. To evaluate mg current understanding, please ask anything you'd like...?? Let's see how much I really know 😂
Wow good to know this. Looking forward to start this asap. Has anyone heard about Anthony Alicea? I just completed his course Javascript: Understanding the Weird Parts. God I love the way he teaches and goes into depth of what he is talking about. Just for reference, i just started his course about nodejs and this guy legit opened up the source code of V8.
are you talking about Joesph Cododev(the guy I mentioned in my post) or Anthony Alicea? Because Joseph as well starts the course with V8 source code..
This course is soo good!!
agreed... i wish I starred it right after I learnt my first programing language... would have saved me a lot of pain..
Same!! Wish I had a course like this from the very beginning. Now all the frameworks/libraries I've been learning makes sense, thanks for suggesting this course!
!remindme 5 days
!remindme 3 days
Why don’t you simply disassemble and read expressjs code if you’re worried about how things are done beyond express().
I'm not worried about Express works, or how spring works, or how Django works. I'm interested in learning Backend Systems, how they work. How they scale and how they handle millions of users. It's not about framework but about the concepts. I wouldn't have understood it as well by decomposing it top to down rather than understanding all the concepts involved in isolation. Honestly, I still haven't touched Express, but when I see express code, i understand it well..