(!(REST in this.place))

7/5/17

I started to write a post last week but I don’t know what happened. Got distracted and never published it I guess. I’m barely keeping my head above this crazy torrent of server-side life that I’ve been immersed in. I’m stressed out but I’m still going! It seems like when I learn about one new thing, it reveals five more things that I need to learn. Each of those five new things introduce me to five more things I need to know about.

I frequently worry that I’m forgetting things I learned a few weeks ago because I’m not using all of it. I’m too busy learning new material. Of course, some of the new material builds on top of previous lessons, so I’m good there. But I am backtracking to refresh myself. So I am having to balance new and old to keep up with the curriculum.

“Sometimes we don’t know what we have learned until we’re tested.”

I don’t remember when or how I acquired that quote– or maybe I made it up– but it’s been with me for a very long time. I can remember telling it to friends in High School. I think it is totally true, and I am trying to keep it in mind when I’m stressing about possibly forgetting things I recently learned about.

Well anyways, here are some of the topics I’ve been studying over the last couple weeks:

  • Node – the server-side runtime environment, via Google’s V8 JavaScript engine, for running JavaScript locally on a server.
  • Express – a JS framework for working with Node. Kind of like jQuery does for plain JS. Without Express, coding straight Node would be cumbersome. Express allows us to code quicker and more concise.
  • REST APIs – REpresentational State Transfer (REST), an architectural style and standard for designing APIs. The HTTP protocol and it’s methods are used for communications.
  • CRUD – Create Read (or Retrieve) Update and Delete. These are the four core operations used for interacting with REST APIs.
  • Routing – URL endpoints used for REST APIs.
  • NPM – Node Package Manager. Used for … managing Node packages. A handy command line utility for installing packages from Node.
  • Nodemon – a very useful Node package that listens for changes made to our project files and will then restart the Node server.
  • Heroku.com – a PaaS for deploying server-side projects.

and more… such as importing and using Node modules, handling request and response objects, error handling, and middleware. Middleware seems to be at the core of Express applications. It’s a chain of functions used for handling requests and responses. Or it could be one function. But it helps keep the app code organized. Middleware can be third-party, built-in, or custom.

There is probably more that I can’t think of right now, but as you can see I’ve been super busy. Still enjoying it but definitely taking a ride on the stresscoaster that never seems to stop. Its like 18 loop-the-loops followed by a Splash Mountain waterfall. It’s a fun ride but it’s intense.

Advertisements

Hello, Stranger.

6/23/17

Well, it’s been over a month since my last post. I have been up to my eyeballs in learning things. New information has been flying at me from all angles. For example, just tonight, just an hour ago, I learned Markdown. A basic, simple, method for creating XHTML documents. Some people might call it a language, but it’s actually a tool, written in Perl. It is commonly used for readme files on GitHub, which is exactly the reason I learned how to use it tonight. From the time I was first introduced to it, to the time it took me to finish my readme file was about 30 minutes. So that shows how basic the “language” is.

The coding bootcamp got intense and I felt like I was barely keeping my head above water. Then the first section, the Front-End portion, came to an end and I had to create a final project. That took me about three weeks I think, maybe a little more. I just wrapped that up this past weekend. I still have some code cleanup to do, but as far as functionality and UI goes its complete. I had some friends tell me it breaks in Safari though. I will need to re-visit that another time. I need to put this one behind me for now and move on to the next section of the course.

The next section of the bootcamp course takes me through backend JavaScript, using Node.js. I’m really excited to learn Node! I had fun learning Front-End development, but I think I might enjoy backend more. We’ll see though. This will be my first exposure to any backend language.

Ok, onwards and upwards! I’ll try to post again soon. Here are a few links…

Online Course Dump

5/16/17

In no particular order, but some loose grouping, here is a list of online coding courses…
https://www.codeschool.com/learn/
https://www.codecademy.com/learn/all/
https://www.coursera.org/
https://www.theodinproject.com/courses/
https://www.freecodecamp.com/map/
https://www.sololearn.com/
https://www.udemy.com/
https://www.udacity.com/
https://egghead.io/technologies/
https://thenewboston.com/videos.php?cat=10
http://www.htmldog.com/
https://www.sitepoint.com/premium/topics/all/
https://www.edx.org/professional-certificate/front-end-web-developer-9

JavaScript oriented…
http://eloquentjavascript.net/
https://www.learn-js.org/

Boot camps…
https://www.thinkful.com/
http://www.codingdojo.com/
https://www.bloc.io/
https://generalassemb.ly/
https://www.galvanize.com/
https://teamtreehouse.com/
https://flatironschool.com//
https://www.fullstackacademy.com/
http://www.hackreactor.com/
http://www.skilledup.com/
https://skillcrush.com/skillcrush-blueprints/
https://www.thefirehoseproject.com/
https://devbootcamp.com/

Not a complete list. Feel free to put your Google Fu to practice.

$(‘.blog post’).ready()

5/7/17

I think I am about one week into learning jQuery now. From the perspective of a jQuery beginner, what I can glean from it is that the concept is simple yet it’s quite powerful. Basically, from what I have learned so far, I select something and then I manipulate it. Or I “listen” for an event and then do something. That’s about it.

Obviously, there is much more to it, but on the surface that really is about it, again, just from what I have learned in my one week of lessons.

The power comes from all the events and methods available for listening and manipulating! There is a lot of depth to the library and I can see how complex I could make it if I wanted or needed.

My first jQuery project that I worked on is a text analyzer. It grabs some input and then parses it and returns the total word count, unique word count, and the average length of each word. Here’s the GitHub link. Is that my first time sharing my work? I can’t remember. I would have to check my other entries…. but anyways, that was fun and I’m ready for more!

Last week, when I started learning jQuery for my first time I had a couple days where I was feeling extremely discouraged and I had a lot of doubtful thoughts creeping in. I was starting to think “how in the hell am I going to learn enough to actually land a job?” Then I stumbled onto a quote that picked me up:

The truth is we all get tired, we all get weary. In fact, if you never feel like giving up, then your dreams are too small. If you never feel like quitting, then you need to set some larger goals. When that pressure comes to get discouraged and to think about how you can’t take it anymore, that is completely normal. Every person feels that way at times.

— Joel Osteen

That quote made me feel so much better, the instant I read it. I lost a couple of productive days but I bounced back and I’m hitting jQuery hard today.

I’ll end with a couple links:

more.js

4/30/17

It is almost midnight. I’ve been coding all day and my eyes feel strained and heavy. Most of my time today was spent working with JavaScript Objects; which in turn took me back to Arrays. I was also briefly introduced to Regular Expressions.

During a break from practicing, I read a couple of good articles today. I’ll pass those along below. When I wake up tomorrow, I’ll jump into jQuery. It will be my first time ever working with jQuery. If I was more awake I would be jumping for joy. I’m excited to start my journey into JS libraries and frameworks!

 

if (blog) {return reader;}

4/25/17

It’s been all about JavaScript for the past couple weeks since my last post. This is what I’ve been working on:

  • variables- local and global
  • data types
  • working with strings and numbers
  • functions
  • control flow with conditions and logic operators
  • try … catch
  • arrays
  • loops
  • scope (the reason why global vars should be avoided)

The next lesson takes me through Objects. This will be my first time ever working with Objects. I’m getting into uncharted territory now! I’m excited! After I publish this post I’ll get started with that lesson.

The lesson on Objects will actually wrap up the JavaScript stage of my course. Well, kind of. I should say that will wrap up the “pure JavaScript.” Or some people call it “vanilla JavaScript.” The next stage of the course introduces me to jQuery. Wooo! Finally! I can’t wait to start learning some JS libraries and frameworks!

After jQuery comes React- but thats still several months out. There will be many projects in between those two sections.

No links or videos to share this time. I just wanted to get something posted because it had been a while. Ok… back to studying! See ya next time.

Back From Vacation

4/12/17

I just got back from a ten day trip to Asia. My wife and I spent some time in Jakarta with her family and then we went to Bangkok for a few days. I didn’t have access to a computer so I fell behind in my lessons, but I’m getting back into the routine now. I did pick up a book to read before I left though, that kept my mind on coding. It’s called The Self-Taught Programmer. It’s a good read; I recommend it. However, I was expecting less how-to and more about life as a programmer. That’s the impression I got when I ordered it, but a bulk of it is teaching Python. Which is great, and I plan on returning to the book when it is time for me to learn Python, but it’s not something I have time for at the moment. The last couple chapters talk about life as a programmer and what to expect when someone lands their first job as a developer, and it goes into best practice and etiquette and things like that.

Other than reading, I haven’t done anything with code for the past ten days, so there isn’t much to report on.

On a side note, I decided to drop my Coursera.org course for now. I want to focus solely on Thinkful.com. I think it would be best to pore all of my time into one course rather than trying to divide my attention across more than one course. My lessons at Thinkful.com took me through Responsive Design right before I left for vacation. I’m about to dive into JavaScript now. Since I recently had some good exposure to JS from the other course, I think I’ll start out strong. It should all be fairly easy at first, but this course moves at a rapid pace! I should be getting into new territory soon!