Hosting static sites with Surge

My readers know that I’ve become somewhat of a proponent of static sites lately. As much as I’ve made a career out of building dynamic web apps, I love the simplicity of static files. I can push to a CDN and pretty much not worry about it again. Don’t get me wrong, I know S3, Google Cloud, and their kind can – and probably will – go down. But I’m probably safe in saying that their engineers can get servers back up much quicker than I can. That’s why I was excited to see a new option for hosting static sites launch – Surge.

Continue reading

Brackets Tip: Specifying one linter (the right way)

A few days ago I noticed Brackets was no longer linting JSON files. I had recently updated so I assumed it was a bug with that particular extension. Like a good developer, I checked the console and when I didn’t see anything, I filed a report and moved on. (For folks curious, the extension I was using is called “JSONLint Extension for Brackets” by Ingo Richter. Oh, and for what I used when it was’t working – I used JSONLint.com.) Turns out the issue was a mistake I made in my preferences.

Continue reading

Hosting Node.js apps on Bluemix

One of the biggest issues I had when learning Node.js was how to take an application into production. Luckily theres multiple options to make this easier, including IBM Bluemix, a service I’ve been playing with over the past few weeks. In this post, I’m going to briefly describe what it takes to setup a new Node.js app on Bluemix as well as what it is like to migrate an existing site there.

Continue reading

Sunday OT: Rise of the Runelords

It has been a while since I’ve posted a game review, but it’s also been a while since I’ve been able to play one. Yesterday one of my boys and I played a round of “Rise of the Runelords”, a fairly complex card game by Paizo Publishing. Rise of the Runelords (RoR) is a deck building game which is easily my favorite type of game now. I got into Magic back in college, but couldn’t afford, and simply didn’t want to, spend a lot of money on deck packs. That’s why I really dig games that have a similar experience without requiring a constant stream of purchases. Technically RoR also has purchases, but from what I see they act more like DLC in a video game – adding additional adventures.

Continue reading

Quick Cordova tip – Preventing multiple sounds at once

I’m working on a simple application that acts – a bit – like a sound board. You select an item, click a button, and you hear an MP3. While letting one of my kids play with it, they quickly discovered that if they hit the button multiple times in a row, the sound would play multiple times, overlapping each other. While not the end of the world (this is the kind of bug that would only occur if the user was trying to do exactly that), I thought I should probably prevent this from happening.

Continue reading

Reminder – You don’t need AppCache for PhoneGap/Cordova

I’ve seen this come up a few times recently, and it was mentioned in a presentation I attended yesterday on PhoneGap, but just as a reminder, stop worrying about AppCache and PhoneGap/Cordova. It may not be entirely clear to people new to hybrid mobile development, but your application is on the device itself. AppCache makes no sense in this regard. It is a bit like having an HTML file on your desktop. Whether you are online or not does not matter!

However…

Continue reading

Migrating servers on Google Compute Engine

So, as folks know, I’ve been struggling a bit with my server here. Last night MySQL went down around 10PM, and while normally I’m up there, I had gone to bed early so I didn’t restart it till 6AM this morning. That’s a heck of a long time for it to be down. I decided to reach out again for help as well as start looking seriously at Jekyll. I prefer Harp but after watching Brian Rinaldi’s demo of Jekyll I decided to try it out.

Continue reading