15 Dec 2018

Code Companion #11: AJAX

In this tutorial we'll be building off of the previous tutorial updating our form to make our first HTTP request to the PokéAPI.

18 Nov 2018

Reactive Forms in Angular v6

In this tutorial we'll learn the basics of Angular's other approach to forms, reactive forms, by creating a user signup page with the same three fields: name, email, and password.

19 Jul 2018

Code Companion #9: DOM Manipulation

In this tutorial we're going to begin making our programs a bit more web-like. Up until this point we've been writing JavaScript and logging the results of our programs to a terminal or browser console using console.log(). Now we're going to begin working with HTML to add some interactivity to our programs with a UI.

11 Jul 2018

Code Companion #8: Embrace the Suck

Learning a new skill is difficult. It’s easy to give up and it’s easy to beat yourself up. So this week and I want to take a quick break from coding to offer you some words of encouragement. Hopefully this will help you solidify your drive to learn how to program.

04 Jul 2018

Code Companion #7: Automated Testing

In this tutorial we're going to take a look at automated testing. Automated testing is a way for us to automate the testing of our code—something we've been doing manually up until this point. We’ll be taking a test-driven development (TDD) approach meaning we’ll write our tests first. These tests will initially be failing (referred to as red in TDD) because the actual code hasn’t been written yet. Then we’ll write the code, run the test again, and (hopefully) verify that our tests are passing (referred to as green in TDD).

20 Jun 2018

Code Companion #5: Functions

Up until this point we've been calling functions (also referred to as methods) like console.log() and .charAt(). In this tutorial we're going to switch from calling functions to writing them as well.

15 Jun 2018

WTF is Code Companion?

When I first started learning how to program I remember taking a lot of time to research my sources before I started. I would ask myself questions like: Who is this person? Do they have a resume with credible experience and projects? Do other people enjoy this person's tutorials? What is their teaching style? How are they different from other teachers? Are they committed to this project or will these tutorials stop coming in a month? So to help you I'm going to answer these questions for you upfront.

26 May 2018

Code Companion #1: What is Web Development?

I'll never forget the overwhelming feeling when I first started learning web development. There were terms I'd never heard of, multiple programming languages, front-end development, back-end development, and web frameworks. In this tutorial we're going to clarify web development terms such as HTML, CSS, JavaScript, server-side programming, client-side programming, databases, JSON, and so on to give you a grasp of how everything fits together at a high level.

16 Apr 2017

Clearing Forms in Angular v6

I was recently working on an Angular (aka Angular2 aka Angular4 aka Angular 6) application where a user triggers a modal, completes a form within the modal, and submits. Unfortunately, the form wasn’t clearing after a form submission and manually resetting every ngModel seemed extremely tedious. Thankfully the solution to this problem is easy and takes just two lines of real code to get the job done.

24 Oct 2016

How to Start a Podcast

I’ve had some people reach out to me asking how I went about starting my podcast. What equipment do you use? What do I need to get started? How much does it cost? How do I get on iTunes? To help anyone who wants to start a podcast I decided to write a guide on how to get started with the knowledge I’ve acquired over the past 9 months that I’ve been podcasting.

02 Mar 2016

'Hello, Testing!' with Jasmine

In the world of programming a “Hello, world” program allows us to create a very small working program to verify things are working correctly. If you’ve ever written JavaScript and you found yourself wishing there was a “Hello, world” equivalent for testing, this is it!