Please note — this is a BRIEF explanation, meant for 2–3 minute interview answers. Please use the resources after the article for a deeper understanding on each topic.

Picture of Ernie and Lucy, the wiener dog
Picture of Ernie and Lucy, the wiener dog
Picture of Ernie and Lucy, the wiener dog

For this lesson we’re going to use Lucy, my childhood wiener dog, in each example! Lucy was a wild dog at first who calmed down with age. She would constantly hunt down birds in our backyard, kill garden snakes, and bark at any dog that passed by! While she may have been ferocious, she was also incredibly gentle and loved us.

Apply/Call/Bind

A quick review of “this” before we dive into Apply/Call/Bind: In Object Oriented JS, everything is an object. It’s here where we learn of “this,” which is used inside a function, and always refers to the object that invokes the function where “this” is used. Sometimes, we want to save a “this” reference, which is where Apply/Call/Bind come in! …

Woven’s Logo
Woven’s Logo
Woven’s Logo

I was going to write a part 3 on JS Interview Help (check out part 1 and part 2 if you’d like) this week. However, after advancing to the next interview round with a company in Chicago, I decided to write about my experience with their coding assessment platform, Woven. This guide will (of course) not give any details about the assessment questions itself, but rather what to expect.

Woven

Woven is a technical assessment platform that goes beyond code. They help companies hire incredible talent through technical assessments. What I really like about them, is that they find “hidden gems.” These are people whose on-paper resumes are on the cusp of being rejected, but off-paper they are a great fit for many roles. …

Please note — this is a BRIEF explanation, meant for 2–3 minute interview answers. Please use the resources after the article for a deeper understanding on each topic.

Hoisting

When a piece of JS code is executed, the JS engine makes a global execution context, which has two phases: creation and execution. In creation, the JS engine moves the variable and function declarations to the top of your code. In other words, it hoists these declarations to the top of your code.

Hoisting is JavaScript’s default behavior of moving declarations to the top. SO, just like my other article on JS interview questions, I’ll use another childhood dog for examples. …

Please note — this is a BRIEF explanation, meant for 2–3 minute interview answers. Please use the resources below for a deeper understanding on each topic.

Prototypes

When a new Object is formed, the JS engine adds a __proto__ property to the new object. This points to the prototype object of the constructor function. All JS objects take in, or inherit, properties and methods from a prototype. For instance, Dog objects inherit from Dog.prototype. String objects inherit from String.prototype.

The JS prototype property lets you add new properties to object constructors. For example, using ES2015 notation:

Image for post
Image for post
Ernie was my childhood dog — this post goes out to you, buddy!

The above prints “Ernie Bade is my name. I am 6 years old and my breed is Golden Retriever,” because we have added a property of about to the Dog prototype. …

Home page for Trail Run Planner App
Home page for Trail Run Planner App
Landing Page for TRP

Phew! This is it — the final project for Flatiron! I can’t believe I’m at the finish line for such an incredible, challenging bootcamp. For my final project, I wanted to create something that is definitely in line with the theme of other projects I’ve made, as well as make something that will be useful for the future. A month ago, my wife and I were hiking Guadalupe Mountain in West Texas, and we did not bring enough water. We really struggled on the final 2 miles of the descent and were so relieved to get to our car. The Trail Run Planner app will help people like us, who forget what to pack for trail runs! This app allows users to view trails in their area and add days to run specific trails to their personal running journal. Within their journal, users can then select what items they need to bring on their run, such as a cell phone, jacket, water, food, etc. Right now, the app sends an alert to the user of the items they need to bring. …

Image for post
Image for post
Photo by Jesse Gardner on Unsplash

Today I officially finished my fourth project for the Flatiron School’s Software Engineering Program, woohoo! The idea for this project came from personal experience of mine. Three weeks ago, my wife and I took a camping trip to the Guadalupe Mountains and Lincoln National Forest, which are both located near the Texas/New Mexico border. As we were planning for our trip, we quickly realized that it’s pretty difficult to plan out food for two vegans, who are staying in these areas (that is, unless you want to eat PB&J sandwiches every day…). We poured over the internet for food ideas, and it took us awhile to find some recipes that are actually sustainable for more than one meal. As soon as we got back, I started brainstorming for this project, and came up with an idea of a Vegan Camping Cookbook Collective. The idea is that users can send in recipes to the site admin, who can then post those recipes to the collective. Users can create their own cookbook by clicking on a fire icon, which represents a “like” option. The project utilized the Ruby on Rails API framework, specifically using PostgreSQL and Ruby in the backend with a vanilla JS, HTML, and CSS frontend. This SPA (Single Page Application) project utilizes JS to make fetch calls to the backend, which renders json on the frontend. …

While completing the Module 4 JavaScript/Rails project (blog link), I also had a wonderful opportunity to create a professional website!

Roughly a week and half ago, my wife and I were hanging out with some friends from our church who own a Roofing business. They’ve been in business for roughly a year or so, and they talked to us about how they wanted a website, but couldn’t afford a professional. Being a Flatiron student with some experience with CSS, HTML, and recently, JavaScript, I told them I could build the site for them! …

Image for post
Image for post
Photo by James Barker on Unsplash

When thinking about what to base this Rails project on, I thought about how Covid-19 has affected so many areas of our lives. For many dog owners, dog parks have officially shut down in most major cities. With this app, users are able to add new Parks, new Playdates, and a Review for each Park. There are several validations with each newly created object, and users can not edit/delete other users’ information. If you would like to see a walk through of this app, click here: Doggo Playdate App. To go to the live site: https://doggo-play-date.herokuapp.com/.

Making a Diagram

The first step to this project involved laying out a diagram of how each Model will relate to each other, and what each Model’s attributes are. For instance, for the Users Model, the following relations were…

No, not that Sinatra…

This was such a fun project, and it was a joy to actually create a web APP! After years of learning basic HTML and CSS, I have crafted web sites, and the idea of creating a dynamic web app terrified me! However, Flatiron helped me out so much, and I feel much more confident in being able to create a dynamic web app, capable of CRUD actions.

For this project, I decided to use one of my new-found interests: running. Since Covid-19 started, I’ve started running, and in June ( for the first time ever), I was able to run over 10 miles! Running is great because of how simple it is: you simply slip on your running shoes and go. Well, what does it take to run? Sure, there are water bottles, headphones, hats, and all kinds of extra things, but everyone needs some form of a decent shoe to get started. …

Image for post
Image for post
Photo by Joshua Reddekopp on Unsplash

Anyone who transitions from one career into another is always asked this question: “Why are you changing careers?” Everyone has a “why”; it’s their reason for closing one chapter and moving onto the next. The “why” is what drives you through tough times and pushes you into something incredible, unfamiliar, new, exciting, stressful, overwhelming, and wonderful. My “why” comes from a long-lost and short-lived passion discovered in a high school classroom in Baton Rouge, Louisiana. My “why” comes from singing semi-professionally in several languages. My “why” comes from teaching, and leading several choir programs throughout Louisiana and Texas. …

About

Michael Bade

Michael Bade is a Full Stack Web Developer, with a passion for making abstract ideas come to life! Find me on LinkedIn to connect and talk code!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store