API Design in Node.js, v4

Wrapping Up

Scott Moss

Scott Moss

Superfilter AI
API Design in Node.js, v4

Check out a free preview of the full API Design in Node.js, v4 course

The "Wrapping Up" Lesson is part of the full, API Design in Node.js, v4 course featured in this preview video. Here's what you'd learn in this lesson:

Scott wraps up the course by sharing some final tips for API design and answering questions on recommended API frameworks.


Transcript from the "Wrapping Up" Lesson

>> Then really, what's left is, just to tell you, congrats for sticking through the course. And asking really good questions. And challenging me to level up while I'm teaching, which I feel like I did, so thank you for that. But also just to let you know that this was just a foundational course of how to build an API with Node and Express.

And there's just still so much more for all of us to learn, even me. People show me stuff or I'll get on GitHub or Hacker News and I'll see something like, what? I didn't even know that was a thing. I didn't know that you can even do that.

That's so amazing. So there's still so much to learn. But now that you have that foundation, you have the context, which for me is super critical to have. Because if you have the context, you can ask the questions, you know what to look for, you know what to ask.

So, what I would say is next time you go reach for a backend as a service like Superbass or Firebase or any backend service that you typically use, don't, challenge yourself and build the API out yourself. Do that until you're so bored with building API's that you wanna go back to using a service, right?

Not because you don't know how to build API, but because you just don't feel like doing it because you've done it so many times. That's when you go back and use those things, right? So I challenge you to do that. There's more to API's. We've just talked about things like JSON and stuff like that, but API's can have image uploads, they can have background jobs, they can do pretty crazy stuff, right?

You can also use different types of design patterns for API's like Graph QL, TRPC, we talked about that one. So challenge yourself, go try those different things. Maybe try Prisma will Mongo next time and see what that looks like. Just go through the flow and work through those problems.

Something that I used to do is I used to go on Dribbble, and I don't if you've ever been on Dribbble before, let me show you Dribbble. So Dribbble with three B's. I just go and Dribbble and I would type in, to do app. And I would just find to do apps that were probably a little outside of my ability, and I would try to make it.

I would literally just, I would click on this, all right, I'm gonna make this. And I would do all the front end work, and then I will do all the backend work to make this work. And I would give myself a week or two just to see how far I can get.

I've probably done 20 of these in my early days, just getting really good at making these apps and building out the APIs for them. It's something that's never gonna scale and need to support thousands of users, but you will go through enough of the parts that you know enough of what to do.

And it does show in interviews and things like that. It gives you the experience, so it was pretty fun too. So that's something that I would do. But yeah, for the most part, you did it, you know Node, you know Express at this point, you have enough context.

So from here on out, you just gotta keep building more and develop that experience, and then also teach other people. When you teach other people, that's when you start to really solidify the things that were a little blurry before, but now you're very sure. Because I can promise you that happened to me over the last two days, I was, okay, now I get it, right?

So trust me, that's definitely what you wanna do and yeah, if there's any questions, now's the time. Yes.
>> Just one general question. Are there any common design architectures that are prevalent with building API's similar to a model view controller architecture?
>> Yeah, I mean, a lot of that stuff is still around.

I mean, I guess Express is its own architecture in a way. If I had to name that it would be called, I don't know, the Connect architecture I guess, if I have to name expresses architecture. Yeah, I mean, so for instance, Nest JS is a very popular, brand new, well not brand new, but relatively new server framework that does MVC.

It's type script, it's MVC. If you ever use Angular, it looks exactly like Angular, but for a server. So I've actually never tried it cuz I'm not into the whole MVC, it's just too heavy for me. But if you're into that, if you come from a Java background or from Angular background, you might like this.

I mean, it's pretty cool. But for the most part, what I've seen it's typically something hardcore MVC like this, or it's just based off Express. It's just like a derivative of Express at least in Node, from my experience. Okay well, if you have any other questions, please feel free to hit me up on Twitter.

I'm usually the most active on there. If you email me, I'm sorry if I haven't gotten back to you. My email is drowning, I don't know how I will get to it. But yeah, hit me up on Twitter, super responsive on there, and yeah, thanks for taking the course.


Learn Straight from the Experts Who Shape the Modern Web

  • In-depth Courses
  • Industry Leading Experts
  • Learning Paths
  • Live Interactive Workshops
Get Unlimited Access Now