Sharing JavaScript Between the Front and Back End

There are a lot of advantages to running Nodejs, but one that's not taken advantage of as much as it could be is sharing code between the front and back ends. You're running the same language on both sides of the stack, so why rewrite code that's run on both? You can get pretty fancy with this. If you're familiar with Meteor, you know how easy this platform makes it to forget the distinction between frontend and backend altogether.

Write Your Commit Message First and Code Second

It hit me the other day at work. I've been using git wrong all along. The workflow for using version control shouldn't be to write a hacked together summary of all the code changes I just made every time I get the project in a sane state. It should be to write a contract with myself describing the state of the project after some incremental improvement, and then to write that improvement.

Building a Requirejs Project to a Single, Reusable File

Requirejs is great for breaking up JavaScript projects into multiple files, but what happens when you want to use your Requirejs code in another project? Ideally, no one should have to individually import your modules, or even use Requirejs at all. Luckily this is all part of the plan for Requirejs projects, and with a bit of tweaking with the finicky r.js tool, you'll be able to build to a single file with no dependencies.

A Tutorial for Getting Started with Gulp

Awhile back I wrote a tutorial covering the basics of Grunt. Now that a new frontend build tool has entered the scene, I thought I'd take a look and see if I could write a simple guide for Gulp at the same level. This guide will take you from installation and getting set up through examples of real world build processes while laying out all of the tools out there to help you on the way.

Announcing Mathpx

Ever since I worked for a startup building educational kids apps in China, I've been tossing around a few ideas about writing one of my own. I may be biased as an engineer, but one of the main areas I perceive to be lacking both in the classroom and the app store is our ability to teach math. Mathpx is my new experiment to rethink the way we teach the very fundamentals of arithmetic.

The Next Step for Crowd Funding

Crowd funding has already worked wonders. Inventors, artists, and companies with radical new ideas have all brought projects to life that never would have been possible a few years ago. Sites like Kickstarter and Indiegogo have been hugely successful and even spun off several equity based crowd funding sites like Crowdfunder. Despite all this success, I believe that crowd funding has yet to reach its full potential. Civic Crowd Funding Crowd funding is a community coming together to fund a project, so logically it makes sense as a fit for public projects that are for the community.

JavaScript's function.bind and Why You Should Know it Exists

I was getting really carried away with fancy JavaScript objects while working on a side project recently, and I ran into a difficult problem. I needed an object to produce instances of any given object with any initial parameters. I hit a few obvious dead ends before discovering something I was surprised I hadn't used before: function.bind. The dead ends My first thought was to pass an initial object in and create deep copies of it.

Indie Speed Ran - Lessons Learned from My First Game Jams

I've finished my entry to Indie Speed Run 2013, it's called Going Up and it's on The Escapist right now! (And here's a version I'm hosting myself since the Escapist site is causing the game to have problems) This time around, after learning quite a bit from my entry into Ludum Dare a few weeks ago, I made many improvements to my development process. However, I was still plagued by bugs, an incomplete implementation, and worst of all some compatibility problems with the iframe display format on The Escapist.

Indie Speed Run Midpoint

I'm just past the halfway point of my 48 hours for Indie Speed Run. While I'm definitely still as frantically behind as usual for a game jam, I feel so much more comfortable than my previous experiences with Ludum Dare. Right now I've got a decent amount of artwork done, a pretty solid platform for the game thanks to Crafty, and even some sound effects I recorded. That's way more than I could have said this far into Ludum Dare, but I've still got way more to do than I have time for.

Starting Indie Speed Run

I'll be competing in Indie Speed Run for the next 48 hours, so I wanted to keep track of my progress here on my blog. After a very fun but very rookie time at Ludum Dare just a few weeks ago, I'm really hooked on building small games and hope to put something even cooler together this time. You can view my profile on the Indie Speed Run site, but I'll be posting all my updates right here over the next 48 hours.