Failure is inevitable


Making a Zombie Horde in JavaScript Using ES6 Generators

Zombies are fun. ES2015 is fun. You know what's even more fun? ES2015 and zombies together! In this post, I'll show you how I used ES2015 generators to make an infinite zombie horde. More...

Slides and Code From CodeStock 2017

CodeStock 2017 was awesome! I learned new things, met new people, and had a fantastic time. I'm already looking forward to next year! It's a bit late, but here's the content from my talks. Building Mobile Apps with Visual Studio Tools for Apache Cordova Your web development skills can be used to build more than web apps. You can leverage the skills and tools you are already familiar with to build mobile applications with Visual Studio Tools for Apache Cordova. In this talk, you will learn how to take your existing knowledge of HTML, CSS, and JavaScript, and create mobile applications without leaving the comfort of Visual Studio. You will learn the basics of Visual Studio Tools for Apache Cordova, and you will see how "VS TACO" makes the impossible possible as we connect an iOS device a Windows PC, then deploy, run, and debug that app from within Visual Studio. Slides Code The War is Over, and JavaScript has won: Living Under the JS Regime You fought the good fight. You screamed to the heavens. You held fast and faced the dying of the light. But it's over now: JavaScript has won. No longer confined to web apps, it's on the server. It's on IoT devices. It's on your phone. It's on your desktop. It's everywhere now. But, that doesn't have to be a bad thing! The JavaScript World isn't perfect, but if you can get past "THE SKY IS FALLING!", there's plenty to like about it. In this talk, you will learn about the essential tools and techniques that will make your developer life a happy one in this brave new world. Slides Code Want to see these talks? If you know of an upcoming conference that's looking for speakers, let me know! I'd love to give either of these talks again. I've also thought about recording each talk as standalone YouTube videos, too. If you'd like to see that, let me know in the comments!

Practical Promises in JavaScript - Order Matters

Welcome to another entry in my Practical Promises series! I know I said the next post would be the [More]

Practical Promises in JavaScript - Leveraging Promise Chaining to Achieve Encapsulation

Welcome to part 5 of my Practical Promises series! Today, we're going to use what we've learned to [More]

Practical Promises in JavaScript - Returning New Promises with Chaining Promises

Welcome to part 4 of my Practical Promises series! In part 1, we talked about what promises are an [More]

Practical Promises in JavaScript - The Basics of Promise Chaining

Welcome to part 3 of my Practical Promises series! In part 1, we talked about what promises are and what they can be used for. In part 2, we started looking at how we can create promises. Today, we're going to look at how promises can be chained together. More...

Practical Promises in JavaScript - Making Promises

In part 1 of our series, we covered the basics of promises. We know what they are. We know how to use then to receive the value of a promise once it's available. We know how to use catch to be notified when something goes wrong. But we haven't yet created a promise! In this post, we'll learn how to create promises. More...

Practical Promises in JavaScript - What are they, and how do I use them?

JavaScript promises are a concept that I see developers, both pros and novices, struggle with on a regular basis. For those of us that come from a synchronous-programming background, using them effectively and understanding what's happening can be challenging, especially if you don't have a good grasp on all the ways that promises can be manipulated and used. In this new series of posts, we'll be looking at how to use promises effectively. More...

Turn an Array into Proper-English with an AngularJS Filter

I needed a way to display a nicely-readable list of strings for an app I'm working on. And by that, I mean that I wanted to display, "Mary, John, and Mark" instead of "Mary, John, Mark". A simple ngRepeat would have been too complex for this, so, filters to the rescue! More...

A Reusable, Simple Gulp File

It’s been over a year since my last semi-rant about gulp.  I’ve continued to use gulp as my client-side build tool on countless projects.  I’ve learned a ton.  I finally feel like I’m ready to create a reusable, all-purpose gulp file.  Here’s what I have so far More...