Monday, April 30, 2018

'Learn and Understand' NodeJS by @AnthonyPAlicea completed

var myStatus = { 
  courseName: 'Learn and Understand NodeJS',
  author: '@AnthonyPAlicea',
  completed: true,
  satisfied: "very true ++"
}


Don't rely on JavaScript hoisting



Even though the #JavaScript engine pre-loads functions before executing them, that's no excuse to rely on hoisting. I'll declare my variables upfront.

@AnthonyPAlicea's NodeJS Completed


@AnthonyPAlicea's #NodeJS https://www.udemy.com/understand-nodejs gave me a solid grounding in key concepts and included simple, useful code for review and analysis.  I can now, from memory, write a basic web server in NodeJS and understand exactly what it does.  Now for #JavaScript https://www.udemy.com/understand-javascript

Building an API on NodeJS with Mongoose





I spent a couple more pomodoros than expected, but I cleared up a couple of points of misunderstanding about working with MongoDB.  Prima facie, NoSQL makes sense, and certainly seems more attractive than working with a relational database.  I've heard from some people who are more accustomed to working with MySQL and PostgreSQL that MongoDB doesn't scale well, but I don't have enough commercial experience of the two approaches to have an opinion yet.

I find this approach, of writing the code out by hand, is an excellent way of forcing myself to slow down and meditate on the material.  I bear in mind that I save myself time on Stack Overflow in the long run; and at any rate, it makes me more self-reliant and better at RT(F)M.

Saturday, April 28, 2018

JavaScript on both ends



After 4 pomodoros on @AnthonyPAlicea's NodeJS course, Lecture 90, I think I understand how JavaScript code runs on both front and back-end.

Looking at this code, I can see how the array of JavaScript objects is declared on the server (/app.js), then passed on to the view (/views/index.ejs), converted to a JSON string, is made available to the AngularJS controller, which then manipulates the JSON object in the client.

As I go through the code line by line, I ask myself continually:

Where does the program get this from?
Where is the variable declared?
How does this part of the program have access to it?

In this way, I can always see, piece by piece, how it all fits together.

Unless of course I'm using Rails, in which case one must have faith in its sugary magic.

1,050 hours

It took me 13 working days to complete my first 100 "work" pomodoros as a Junior Software Tester at Profectus Group.  Much of ...