Learn and Understand NodeJS
What you'll learn
- Grasp how NodeJS works under the hood
- Understand the Javascript and technical concepts behind NodeJS
- Structure a Node application in modules
- Understand and use the Event Emitter
- Understand Buffers, Streams, and Pipes
- Build a Web Server in Node and understand how it really works
- Use npm and manage node packages
- Build a web application and API more easily using Express
- Connect to a SQL or Mongo database in Node
- Understand how the MEAN stack works
- Be the coder that explains NodeJS to everyone else because you understand it better than anyone else
Requirements
- Basic Javascript knowledge (variables, loops, and basic functions)
- Basic HTML knowledge
- A text editor
Description
NodeJS is a rapidy growing web server technology, and Node developers are among the highest paid in the industry. Knowing NodeJS well will get you a job or improve your current one by enabling you to build high quality, robust web applications.
In this course you will gain a deep understanding of Node, learn how NodeJS works under the hood, and how that knowledge helps you avoid common pitfalls and drastically improve your ability to debug problems.
In this course we'll look at how the C++ written V8 Javascript engine works and how NodeJS uses it to expand the abilities of Javascript. You'll learn how to structure your code for reuse and to be easier to understand, manage, and expand using modules and understand how modules really work.
You'll learn how asynchronous code works in Node and the Node event loop, as well as how to use the event emitter, streams, buffers, pipes, and work with files. We'll see how that leads to building a web server in Node.
We'll dive into web sites, web apps and APIs with Express and learn how Express can save us time as Node developers.
You'll also gain an understanding of npm, connecting to databases, and the MEAN stack!
During it all you'll gain a deep understanding of the Javascript concepts and other computer science concepts that power Node.
NodeJS doesn't have to be hard to learn. The biggest mistake most coding tutorials make is expecting someone to learn simply by imitating others' code. Real world situations are never exactly like the tutorial.
I believe the best way to learn is to understand how a tool works and what it does for you, look at examples, and then try it yourself. That's how this course is built, with the goal to help you both learn and understand NodeJS.
Note: In this course you'll also get downloadable source code. You will often be provided with 'starter' code, giving you the base for you to start writing your code, and 'finished' code to compare your code to.
Who this course is for:
- Those looking to build a career as a NodeJS developer
- Those desiring to become MEAN stack developers
- Those who don't have server technology experience but wish to gain this skill
- Those coming from other server technologies (like PHP, ASP.NET, or Ruby on Rails) and want to learn Node
- Those who want to only have to write both client and server code in one language: Javascript
- Those who want to grasp Express
Featured review
Instructor
Born and raised in Cleveland Ohio, now married and living in upstate New York, Tony is primarily focused these days on trying to be a good husband. While inexperienced at that, he's quite experienced in all things web.
Tony has been programming since he was 12 years old, and got into web sites and web application development at 16. After graduating with a Computer Science degree from Case Western Reserve University, Tony continued with that interest as a Microsoft certified software application developer and architect, database designer, and user interface designer.
His experience has ranged across technologies such as HTML5, CSS3, ASP .NET MVC, JavaScript, jQuery, KnockoutJS, AngularJS, NodeJS, LESS, Bootstrap, SQL, Entity Framework and more.
He believes strongly that deeply understanding any topic allows you to properly learn it and, even more importantly in a real-world environment, quickly overcome problems.
He also has a deep interest in human nature and behavior, and how that impacts human-computer interaction. This interest translated into extending his career into user experience design and usability research.
Another link in the chain is his 25 years of experience in public speaking and teaching, both in front of large groups and as a one-on-one private instructor.
Putting all these pieces together, he has spent his career listening to a client need, designing a database and software to meet that need, building it, testing it, teaching others how to use it, then improving user experience by watching people actually use it and adjusting accordingly.
Tony loves teaching every aspect of what he does, and even more loves teaching in a way that imparts understanding, as opposed to just examples intended to be parroted. He loves that moment when a student 'gets it', and that's what he wants for you when you take one of his courses.
He has found that those that learn purely by example, and not by understanding, end up much more limited than they need to be.
"Examples need to be built on top of context, and once you have context, you can not only copy the examples you find, but adjust and improve upon them."
He firmly believes that everyone has the ability to develop software, if they are just taught properly. Including you.
"It is my pleasure and privilege to teach you. I hope you'll come away knowing something you didn't before, understanding at a level deeper than before, and feeling positive that you can accomplish what you've set out to accomplish. Thank you!" - Tony Alicea
Ask Tony a question, read a post, or follow him around internet.