Back to blog
October 15, 2024

Learning Node.js: My Journey with Midudev's Course

Key takeaways from completing an intensive Node.js course covering APIs, databases, real-time chat, and authentication

Learning Node.js: My Journey with Midudev's Course

🎓 An Intensive Backend Learning Experience

I recently completed Miguel Ángel Durán García (midudev)'s comprehensive Node.js course, streamed live every Thursday at 18:00 (Spain time) on Twitch. This hands-on course took me from Node.js fundamentals to building production-ready applications.

📚 Course Highlights

Class 01: Introduction to Node.js and Modules

Understanding Node's module system, CommonJS vs ES Modules, and the event loop. This foundation was crucial for everything that followed.

Class 02: Building an API from Scratch

Created my first REST API without frameworks, learning HTTP fundamentals, routing, and request handling at a low level.

Class 03: CORS Solutions and API Development

Tackled cross-origin resource sharing, implemented proper security headers, and refined API architecture. Noone explained me CORS probs as this guy did, awesome!

Class 04: MVC Architecture and API Deployment

Learned to structure applications using Model-View-Controller pattern and deployed to production environments.

Class 05: MySQL Database and Security Best Practices

Created a MySQL database with proper security measures, learned SQL injection prevention, and implemented secure data handling.

Class 05-Extra: Dependency Injection Pattern

I added my own research on Dependency Injection as a design pattern, exploring how it improves testability and code organization in Node.js applications.

Class 06: Real-Time Chat Application

Built a real-time chat using Socket.io, MySQL, HTML, and CSS. This was one of the most exciting projects - seeing messages appear instantly across multiple clients was incredible.

Class 07: Authentication, Sessions, Cookies, and JWT

Implemented complete user authentication systems using sessions, cookies, and JSON Web Tokens. Learned about security best practices, password hashing, and token management... or not. Logging into an app... this class made me realize that I only know that I know nothing. I didn’t understand a single damn thing. The result? I ended up building a full JWT system with refresh tokens, backend and frontend running on different ports, CORS screaming at me every 5 minutes… you know exactly what I’m talking about, right?

🚀 What I Built

Throughout the course, I developed:

  • RESTful APIs with proper architecture
  • Real-time bidirectional communication systems
  • Secure authentication flows
  • Database-driven applications
  • Production-ready Node.js services

💡 Key Takeaways

1. Node.js is More Than Just JavaScript

Understanding the runtime environment, its non-blocking I/O, and event-driven architecture changed how I think about backend development.

2. Security Should Never Be an Afterthought

From SQL injection prevention to JWT best practices, the course emphasized security at every step.

3. Real-Time Features Are Achievable

Socket.io makes WebSocket communication surprisingly straightforward, opening doors to chat apps, notifications, and collaborative tools.

4. Design Patterns Matter

Learning MVC and Dependency Injection taught me that good architecture scales better than clever code.

5. Live Learning Has Unique Value

The live Twitch format allowed for real-time questions, debugging sessions, and community interaction that pre-recorded courses can't match.

🛠️ Applying What I Learned

These skills directly influenced my work on Four-Points, my hotel management system, where I implemented:

  • Express-based REST API architecture
  • JWT authentication for multi-user systems
  • MySQL database with proper security
  • Real-time features for instant updates

🙏 Thanks to the Community

Special thanks to midudev for creating such practical, hands-on content, and to the Twitch community for making learning collaborative and fun.

🎯 For Anyone Considering the Course

If you're looking to level up your backend skills:

  • ✅ It's practical, not just theoretical
  • ✅ You build real projects
  • ✅ Security is prioritized
  • ✅ The community is helpful, go discord, nice ppl helping overall
  • ✅ It's taught in Spanish (great for native speakers)

Node.js opened up a whole new world of possibilities for me. Combined with frontend frameworks like Next.js, you can build complete, production-ready applications from scratch.

Back to blog