If you have an Oculus Rift, you owe it to yourself to buy Edge of Nowhere. It’s an incredibly atmospheric game, and well worth the purchase.

Oculus Rift: A Bug with Windows Power Plan Configuration

I pre-ordered the Oculus Rift, a virtual reality headset, on January 6th of this year. After following the Rift from its Kickstarter campaign to trying it in person at PAX 2014, I’ve been waiting for the promise of virtual reality for years. Last week, my dream finally came true– I received one of the very first Oculus Rift “CV1” headsets. After plugging it in and launching demos that cannot be explained with words, I noticed something wrong with my PC. The CPU fan was going crazy, and the sensors were reporting abnormally high temperatures.

Read More

Predicting Disney World Wait Times with Neural Networks

Machine learning is an extremely important topic in computer science. We’ve come to the point where there’s some problems that just cannot be solved with algorithms and code, and machine learning is the solution.

I haven’t had a ton of experience with machine learning beyond Andrew Ng’s amazing Machine Learning course and I recently set out to change that.

Read More

The Oculus Rift is finally available for pre-order and many are having sticker shock with the $599 price tag. With tax and shipping costs (really? shipping costs on a $599 device? I suppose I might be spoiled by Amazon), it can come out to almost $700 in the United States. However, this is pretty close to the price of a high-end monitor (such as the curved 34-37 inch models), and you get a decent amount of hardware included: motion tracking, the tracking camera, Xbox controller, Oculus Remote, etc.

Needlepoint 1.0.5

For more information on Needlepoint– my JavaScript dependency injection system–you can take a look at my introductory blog post or the README file on GitHub.

I have updated Needlepoint to version 1.0.5 in NPM. There’s a couple changes, none of which should break if you use an older version and upgrade to this version.

Read More

Though I am an Angular JS type of person, I regularly follow other JavaScript frameworks to keep up with the rest of the world. React, along with the Flux design pattern, is a relatively popular alternative to the Angular ecosystem. However, React+Flux is extremely different from other frameworks– for starters, React isn’t actually a full JavaScript framework by itself, and Flux isn’t actually a thing: it’s a type of architecture. Tero Parviainen wrote an amazing introduction to the Redux+React ecosystem with an overview of how not only the two libraries themselves work, but conceptually how they fit together and why the Flux architecture and immutability makes sense in a web application.

Dependency Injection for Modern Javascript Using ES6 Classes and ES7 Decorators

In the past, I’ve done a lot of work with PHP and the Laravel framework. One of the coolest features about Laravel is its Inversion of Control system, which dynamically injects dependencies into your application at runtime.

This is beneficial for many reasons, including modularity, readability, and testability. With a dependency injected system, you can simply request that your application receives an instance of an object, and the DI container will do all of the work to initialize the object and all of its dependencies.

Read More

Getting Started with Rancher, a self-hosted Docker PaaS

Docker is fantastic for building a scalable infrastructure. Not only does it force you to isolate your application into reasonable chunks, but it also encourages you to build these pieces as stateless services. This is fantastic for high availability and scalability, but actually scaling out a pure Docker-based infrastructure is difficult if done manually.

Docker Swarm and Compose are the “official” solutions to this problem– they allow for you to build a giant, elastic Docker cluster that appears as a single machine to your client. Additionally, Compose allows you to scale your application easily to multiple instances.

Despite this, these two components are lacking a couple critical features– cross-machine service discovery, as well as a built-in load balancer that distributes traffic to your scaled Docker infrastructure.

Tutum is a service that adds these remaining components, and to great success. Though you can use your own nodes with Tutum, sometimes it’s desirable to use your own, self-hosted service.

Rancher is an open source Docker PaaS that includes features like service discovery and DNS, load balancing, multi-node support, cross-host networking, health checks, multi-tenancy, and more. Essentially, Rancher takes all the features of Tutum and packs it into a single Docker container that is hosted on your own nodes so that you have complete control.

Even better, Rancher is extremely easy to install in a matter of minutes.

To find out how, check out my new mini-course that I will be expanding over the next several weeks to cover new features in Rancher, as well as expand it to cover how to use advanced features such as service discovery. It’s completely free, and I hope you find it useful!

Northwestern – A WordPress Theme Inspired by the Pacific Northwest

I just launched a brand new, responsive, and completely free WordPress theme. Inspired by my home– the Pacific Northwest (of the United States)– Northwestern is a minimalistic WordPress theme for independent bloggers.

The theme’s look can also be customized to fit your personality, with the primary colors and hero image changeable. Northwestern also supports several of the WordPress post formats, including “aside”, links, and quotes.

Go ahead and grab it for free from my website, and feel free to use it for both personal and commercial websites. More information on the license can be found on the store page.

CI/CD with Docker Containers

I’ve been experimenting with Docker for a while, but in the last year or so there has been an influx in the number of tools that help put Docker containers into production easily. Some of these are from third party companies, such as CoreOS, and some from Docker itself (such as the new Docker Swarm, Docker Machine, and Docker Compose. However, I’ve recently been testing a new Docker workflow that allows me to push code, have it tested, built, and deployed into a production server cluster running Docker.

Read More