Bloc WDT Module 1 — Fronted Fundamentals in the Rear View

Koop
Koop Codes
Published in
5 min readApr 26, 2018

When I started this blog to chronicle my Journey on the Road to Code I set a goal to post twice a week but only managed one post last week and it’s going to be Thursday already by the time I’ve added links and pics and published and anyone reads this. But I’ve committed to doing this so for the sake of quantity over quality here follows a stream of consciousness regarding my Bloc Fullstack Web Developer Track experience 6 weeks in:

I finished my final assessment for Module 1 — Frontend Fundamentals two weeks ago and scored 9.5 out of a possible 10. My assessor was a Bloc mentor other than my personal mentor and the interview was conducted via video conference and screen sharing. The assessment was closed book, no Googling or referring to notes, and was about half oral exam and half me coding while my assessor watched. The oral portion consisted of questions regarding the functions of various HTML tags, CSS combinators, git workflow, and showing me blocks of code to either identify the errors or predict the output. The observed coding portion of the assessment consisted of three problems where I was given the rules and desired output for each and obviously was then asked to code a solution while my assessor watched but in a twist I was not allowed use of the console to see if my code was working as I wrote it or even afterwards. There was a brief pause after I finished while my assessor computed my score using a standardized rubric, then I was informed immediately of my performance and within minutes Module 2 — Frontend Frameworks (React) had been unlocked.

Brief comments on Module 1: In my opinion it felt like I spent too much time reading about code, looking at code, writing long answers to long questions asked about code, and not enough time actually coding or at least not as much time as I felt I needed to be confident in my ability to sit down at a keyboard and tap it out. But apparently that’s by design. The curriculum was very much focused on theory and reasons and how things work, and the deficiency in actual coding time is easily made up by a variety of free online resources suggested during Orientation by Bloc themselves for this very reason. I tried Coderbyte, and HackerRank but for whatever weird reason I settled on Codewars and go there almost everyday working through the series of basic JavaScript kata put together by myjinxin2015. Sluggish website performance and some eminently forgivable English as a second language challenges aside, I find the exercises are thorough and the problems are interesting and a good test of the material covered. After going through the free Udacity Intro to JS first then Bloc’s Intro to JavaScript programming course I would say myjinxin2015’s Training JS series — for javascript beginner — myjinxin2015 has been the most valuable for me when it comes to actually sitting down and typing out and using the various data types, properties, and methods. One glaring omission (IMHO) in Bloc’s Intro to JavaScript Programming section, especially considering its emphasis on abstraction, there was no mention of `this` anywhere.

So it’s been 2 weeks and I’m just now finishing the initial Intro to React section of Module 2 and of course I’m seeing `this` EVERYWHERE! I could have probably blown through the checkpoints in 4 days as all of them except for the last were pretty simple cut-and-paste follow-along tutorial type exercises, but the lessons were loaded with links to external materials that helped me really understand how to “think in React”. Which came in handy because, as I have already alluded, the final exercise did not stay on the gentle learning curve of the preceding lessons, instead going from “copy this and paste there” tutorial stuff to “Implement this feature with these requirements. Go”. I have found that thinking things out ahead of time really pays off in React and it certainly did here as the exercise went from daunting to done in a day, and I was able to do it without having to explicitly bind `this` through the proper use of ES6 arrow functions. Pass a function as a prop from parent component, set an event listener in the child, call the function, update state, render changes. Seems so easy now, and in the grand scheme of what I hope to accomplish as a programmer the code I wrote today is simple and unremarkable and will probably make most professionals laugh, but I will always remember it because for the first time I really felt like a real programmer. Not the best, or the fastest, not yet anyway!, but a real coder capable of solving real problems. I can do this! Maybe with a little less `this` though 😉

Another reason it took me two weeks to get through the react intro section was because I got sidetracked becoming reacquainted with Linux systems Administration. I setup Ubuntu 16.04 on a virtual private server, specifically a droplet at DigitalOcean, and have been using the command line only to compile and configure node and an nginx web server, then hand coded a basic web page using nano that will eventually become my professional portfolio, but for now I’m just calling it my HTML CSS JavaScript Laboratory. The hardest part of setting things up was configuring nginx to use my SSL certificate so I can serve over HTTPS. It was pretty fun! God I’m such a geek.

Having finished the react intro I’m moving on to the next section where I will use react to build a Spotify music player clone. Stay tuned!

--

--