My SDBA Coding Bootcamp: Episode 7

Shelby Elzinga
Geek Culture
Published in
3 min readAug 17, 2021

--

Sorry for the delay to the 60 people who have glance at these, according to Medium.

Photo by Susan Holt Simpson on Unsplash

So during some nights when my digestive issues and/or headaches are so bad I can’t do anything productive, but also can’t fall asleep. There is a show I have been watching those nights. I am not going to reveal it though, as what I will talk about will spoil it. The show is actually intended for people way younger than me, but I am glad I am watching as a newly 26 year old.

There are two characters, let’s call them Barbara and Brenda. Barbara likes to follow the rules, do what she’s told, and learn via flashcards. Brenda wants to experiment and innovate immediately when she learns something. Both have gotten rewarded and punished in the past for their ways of being. This is very familiar to me, coming from traditional schooling but then leveraging SDE/Unschooling to learn my IT skills. Barbara gently presses Brenda to learn the basics of something first. After Brenda about gets herself killed and Barbara has to come save her, then Brenda decides to figure out the basics.

But I think the problem I have had with Node is that I was Brenda-ing too much. I actually have done stuff in Node before for a gig (tbf, I was more responsible for configuring Strapi than Node), but that was me skipping to “innovation and experimentation” too fast. Needless to say, I didn’t do too well during that gig. I learned a lot, but I wish I had started with this Node course earlier.

So I admit I am having to take a break from actually writing these entries while I just hunker down and learn Node. Thankfully I can report some interesting things that can still make this article worth your while:

A common confusion I and others have had is that you will have Node having server abilities, Express having server abilities, and then Nginx being a server. So a legitimate question is: do you need all of them? Obviously the answer is yes, otherwise it would have been weird to bring them up. It has to do with the fact that they all can handle REST. The should is different. I actually am familiar with this because python applications have an equivalent to Express (e.g. gunicorn). I don’t remember though if Flask or Django have REST capabilities though — though I am sure you could force them in through python code somehow….Anyway, you can sit there and code the REST stuff yourself, but the result is nauseating (Not a dunk at all on the article I just linked; maybe there is some reason somewhere to do it, but not for me!). Express handles the main REST stuff is my point.

So what does Nginx do? Reverse proxying, mainly. To be honest, I still don’t really understand why it is called reverse, but it basically is just ferrying requests and responses in and out of the server. It actually serves more of a security purpose than anything, if I understand it correctly. For example, it is in Nginx you configure the “S” part of HTTPS. BTW, there is no shame in googling what the difference between HTTP and REST are (again, the learning the basics thing):

“While many people continue to use the terms REST and HTTP interchangeably, the truth is that they are different things. REST refers to a set of attributes of a particular architectural style, while HTTP is a well-defined protocol that happens to exhibit many features of a RESTful system.”

-Baeldung

Thanks Baeldung! I also learned it was very satisfying reading the Joi API documentation and actually understanding wtf it is talking about. I think that motivates as much as the money that could come from being a fullstack madlass. Even a year ago, I would have had no idea what I was looking at, though I probably would have thought I did.

The things:

https://twitter.com/@Sc00tr_Grrl

--

--

Shelby Elzinga
Geek Culture

THE scooter girl. Jill of all trades. Mostly best at failing at tech. Needs to get better at writing bios.