A Day in the Life of a Bloc Web Dev Student

Koop
Koop Codes
Published in
6 min readApr 12, 2018

All the Cool Stuff I Learned and Did Yesterday

06:50 I rise but don’t shine. I just don’t shine first thing in the morning

07:00 Bloc group session. Responsive Portfolio Design with c2 (c2 = Chris Courtney, Director of the Bloc Designer Track and CSS wizard). Only 3 other student so lots of personal interaction with Chris this morning who was discussing using grid layouts in with combination with Flexbox

Me and my dogs heading out

08:00 Do 2 miles with my dogs, then shower, shave, and shine (finally)

09:00 Wait for the bank to open to conduct business I can not do online (something I could not have done if I was in an all-day everyday immersive boot camp)

10:00 Another Bloc group session. Study Hall: Git and Github with Henry Bao-Viet Nguyen. Another small group so lots of interaction with both Henry and among the students. Pulling from and pushing to different remote repos, pull vs. fetch + merge, resolving conflicts. Remember: Friends don’t let friend work in Master!

11:00 Reviewed a code challenge from my personal mentor Shannon Bertucci. It went a little faster than we both thought it would so we spent some time on a feature of JS6/ECMAScript 2015: deconstructing objects

//Using the JavaScript language, have the function NumberStream(str) take the str parameter being passed which will contain the numbers 2 through 9, and determine if there is a consecutive stream of digits of at least N length where N is the actual digit value. If so, return the string true, otherwise return the string false. For example: if str is "6539923335" then your program should return the string true because there is a consecutive stream of 3's of length 3. The input string will always contain at least one digit.// Sample Test Cases
// Input:"5556293383563665"
// Output:"false"
// Input:"5788888888882339999"
// Output:"true"
const NumberStream = str => {
let currentMatchingDigit = null;
let currentCountOfDigit = 1;
for (let i = 1; i <= str.length; i++) {
if (str[i] === str[i - 1]) {
currentMatchingDigit = str[i];
currentCountOfDigit += 1;
} else {
currentMatchingDigit = null;
currentCountOfDigit = 1;
}
if (parseInt(currentCountOfDigit) === parseInt(currentMatchingDigit)) {
return true;
}
}
return false;
};
console.log(NumberStream('5556293383563665'), false);
console.log(NumberStream('5788888888882339999'), true);
console.log(NumberStream('6539923335'), true);
console.log(NumberStream('653992335'), false);
console.log(NumberStream('65399233335'), true);
console.log(NumberStream('653992333'), true);
console.log(NumberStream('22'), true);
//Object Deconstructionconst obj = {
foo: 'bar',
baz: 'bam',
color: 'blue',
};
const whatColor = ({ color: favorite }) => {
return 'My Color ' + favorite;
};
whatColor(obj);

12:00 Lunch with my Dad. Again, not possible if I was in an immersive in-person boot camp.

13:00 Another Bloc group session. Consuming APIs, again with Henry. Big group of almost 30 students. Holy moly you can do a lot more with APIs than I knew!

14:00 Finally putting in some time on my actual coursework. Right now it’s Module 2: Frontend Frameworks, Section: React, Checkpoint 2 — Intro to React. Imperative vs. Declarative programming, Understanding the Virtual DOM, Two-way data binding vs. Unidirectional data flows and Immutability. JSX. Finish and post for review by a grading mentor, written feedback with any requested revisions within 24 hours.

15:00 Spent some time on LinkedIn, Twitter, and Facebook building my network. Came across and watched this awesome talk by Phillip Roberts that does a **great** job explaining the javaScript event loop and how JS achieves its performance despite being single threaded through use of async calls

16:00 Break for early dinner because I will be busy later, and took some time for an Archer rerun

17:00 Another Bloc group session. Javascript In Depth: ES6 with Rick Lopez. `const`, `let`, and how they don’t hoist like `var`. Arrow function syntax and again how they don’t hoist like `function`. How use of `const`, `let`, and arrow functions affects scoping (block /vs. function)

18:00 Another Bloc group session. Understanding Javascript and Browser, also with Rick. Creation Phase/Execution Phase, Global Execution Context, browser window object, `this`, subsequent Functional execution contexts on the stack, callbacks and events in the queue

//EC - global
//window
//this
// x = "Hey";
// y = "Hey x";
// z = "Hey z";
// 1. Creation(var, function)
// 2. Execution
// console.log(x);
// //Let & Const
// var x = "Hey";
// console.log(x);
// let y = "Hey x";
// console.log(y);
// y = "hey";
// console.log(y);
// const z = [" Hey z"];
// z.push("Now z");
// console.log(z);
// var someArr = [];// for (var i = 0; i < 4; i++){
// someArr.push(function(){return i;});
// }
// console.log(someArr[1]());// var someArr2 = [];// for (let i = 0; i < 4; i++){
// someArr2.push(function(){return i;});
// }
// console.log(someArr2[1]());//*********************************Arrow functions
let a = () => {
return 'Hey';
};
// let a = function (){return "Hey";}
console.log(typeof a);
console.log(a);
console.log(a());
let b = () => 'Hey';// let a = function (){return "Hey";}
console.log(typeof b);
console.log(b);
console.log(b());
let c = (a, b) => {
var one = a;
var two = b;
return one + two;
};
// let a = function (){return "Hey";}
console.log(typeof c);
console.log(c);
console.log(c(1, 1));

19:00 Another dog walk because huskies are high energy dogs that will use that energy…if not walking then digging, chewing, escaping, or otherwise getting your attention in mischievous ways.

20:00 Some more assigned coursework, React Components. Not going to finish this tonight but I’ve started building my first component! The assignment calls for me to push to GitHub when I’m done.

22:00 Start winding down. Read my colleague’s post on LinkedIn. My daughter is a teenager but I’m fading so I’ll comment tomorrow. Added new connections! Watched some of the Tyler McGinnis free React.js Boot Camp I missed earlier for my group sessions.

23:30 Lights out, fall asleep to Big Bang Theory reruns sometime before midnight

Disclaimers: 1) Yesterday was not exactly a normal day because I usually spend more time on the actual curriculum and don’t have so many group sessions, if any. The group sessions are all totally optional BTW but so awesome I can’t not take advantage of asking questions live with an experienced professional, plus the back and forth among students is great. Like today I only had Node Basics, and tonight is Career Prep: The STAR Method, and tomorrow none so I can focus on my coursework. 2) I spend more on time this per day than most Bloc students because I am lucky enough to be able to devote myself full-time to this for a short while. Many students are part-time which can be a huge challenge but Bloc tries very hard to keep students engaged with regular meetings with your personal mentor and by recommending at least 5 hours a day/25 hours a week with no more than 2 days off without coding if it can be helped. How fast you progress is up to you, and with the monthly subscription payment option the faster you go through the less it will cost. As a point of reference I am near the start of Module 2, so just over a quarter of the way through in about 5 weeks but doing lots of extra group sessions and code challenges. YMMV!

--

--