Dungeon Mastering
Designing dungeons seems easy at first glance. It did for me. And when you really think about on a room-by-room basis, it is easy. You just need to draw a box...
Thoughts on development, RPGs, and the craft of building things.
Designing dungeons seems easy at first glance. It did for me. And when you really think about on a room-by-room basis, it is easy. You just need to draw a box...
If you have ever tried to hand-place a bunch of stone outlines in a pixel dungeon, you know what happens. You either get weird gaps, shapes that bump into each...
In the depths of console.log statements, wisdom awaits those patient enough to seek it...
Every refactor is a step toward enlightenment, every deprecated method a lesson learned...
A new framework appears on the horizon. Do you choose to learn it?...
As I am writing the game, there are times I want to test something out in the game, but because of the nature of the game, getting to that state naturally will...
Notes on adding a lock-speed buff to support testing and expand gameplay depth.
Or when is “too much” too much? In my head, I had picture guns circling the player, bullets firing from him. Each gun would be unique, and it would look cool...
Shaders are scary. Not really, but they are. Okay, if that sounds confusing, it’s the fact that with simple inputs, you can get some pretty crazy outputs. I am...
The current codename for this game is xenod, Xeno Defense. This is a very early look at the game. There is still a lot to do, but I wanted to share this out to...
> So much to say. I think the core lessons are: be patient, don’t give up, and always be learning. You can turn even the most crappy situation into valuable...
It’s actually fairly simple. In your SSH config file, you add this: Host ServerAliveInterval 240 The after the host can be whatever host you want it to apply...
> So, we looked at JPEG image encoding, which is a very popular image codec. Especially since our image is going to be blurred heavily on the client, and thus...
1. Given what I know of this person’s performance, and if it were my money, I would award this person the highest possible compensation increase and bonus. 2...
1. Practice your talk before speaking. Several times. Record yourself. Watch it. At a conference, people paid $$$ for this. 2. Assume wifi is unavailable for...
Before I started using this method, I always struggled with ways to highlight parts of code I wanted to talk about when giving presentations. This method, I’ve...
All too often on Hacker News, I come across a comment like this: > wouldn’t most of them be able to build something like this for internal use in a single day...
Find out where you are Take a small step towards your goal Adjust your understanding based on what you learned Repeat > When faced with two of more...
Last year I read 37 books. I don’t pretend that this is a high number. I know that there are people that read far more books than that. However, I also know...
You are building something for someone. Whether that someone are other people just like you, people mostly like you, or people completely different from you...
I’ve been thinking a lot about performance this past year. Both on the client side and the server side as well. While it might not come as a surprise, the...
I used to have a problem learning new programming languages. It wasn’t that I found the syntax difficult, or that concepts eluded me. Rather, it was the idea...
Atlassian Summit 2013 Talk
_Originally posted on theMeetMe Engineering Blog._ I enjoy speaking in front of an audience. This doesn’t mean I don’t get nervous. Oh, I get nervous enough...
Since speaking at Atlassian Summit (of which I’ll be writing and sharing more about in the coming weeks), I’ve been following up by reading more and more about...
I’ve been on a Startup Weekend kick this past year. I’ve attended the 3rd Philly Startup Weekend, the first Philly Health Startup Weekend, the 4th Philly...
I’ve never heard this term before, but it’s something I’ve coined here at work. Essentially, it’s when a few people working on the same project pass code...
This is a simple trick. It makes the assumption that you manage your arrays properly, and in this case, you are using an array (or list), and not a dictionary...
With the release of PHP 5.4, Traits were added to our toolbox. And, if I might be so bold, it’s one of the most exciting features I’ve seen come out of PHP in...
> A designer knows that he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away – _Antoine de St-Expurey_...
That time again. I wrote something last year, covering the ideas of march. Last year, bloggers came out and shared their ideas, and I imagine this year will be...
At myYearbook, we pack our JS and CSS files. Much of this is automated now with Jenkins, but we still have legacy code that must be packed by hand. And, at the...
No. How this is considered good, I don’t know. Who wrote the code isn’t important – this is the way the code is supposed to be written. At least, this is the...
I’m a long time user of vi (and I use vi interchangeably for both vi and vim), but it wasn’t until recently that I really started to understand the way vi...
It’s safe to say 2011 was a big year for me. In 2001, I moved to Montreal, Quebec to be wife my now-wife, Piera. I got my first real job programming PHP for an...
Needed to install PEAR on Lion, as my laptop hadn’t yet needed it. Wanted to see fi there was a way within Lion, and discovered the instructions. sudo cp...
> 1. Do one thing. > 2. Do it well. > 3. Keep it concise. > 4. Use only what is given. > Today we continue from Comments and explore how to refactor out code...
I once posted “comments indicate future refactoring.” I want to reaffirm my belief in that, and clearly explain. In order to fully appreciate this, let’s lay...
In August, I moved from Montreal after almost 10 years to the small town of Telford, Pennsylvania, a little less than an hour north of Philadelphia. It’s a...
We’re moving. We are leaving Montreal, and moving to Telford, PA. And it’s happening soon. Very soon. Luckily, we have most everything in order. A place to...
Apple announced on Monday iCloud, Lion, and iOS5. Oh , and one more thing: iTunes Match. A 24.99$ a year service that lets you take your existing pira…. er...
If you don’t know, Forrst is a invite-online developer and designer community started by Kyle Bragger (@kylebragger). It’s a fairly friendly community, with...
ControlMaster and ControlPath are the ssh config options you are looking to use here. You’ll want to add them to your ssh config file, which is located in...
Zach posted to HN about how he wanted to work for a company like Twilio, but wasn’t sure. I am not an example of brevity when I write, so I was quite happy...
_This post used to be called Don’t confuse validation with filtering. This was meant to be about normalising data, but at the time, filtering was at the...
Eric Hogue, a fellow PHP programmer up here in Montreal has written about Profiling a PHP Application. It’s a solid step-by-step setup of XHProf, XHGui, Xdebug...
Just because you use objects doesn’t mean you are programming in an object oriented manner. A function like this defeats the purpose: public function init() {...
4JC.IN is useless for anyone but me, but it’s still useful for me. A simple tool, a weekend project, and a little exploratory on the web design side of things...
FTP in Eclipse? This question gets asked a lot. An FTP plugin for Eclipse that will put your file up onto the server with a save of the file. I don’t use it...
privacy.txt is last weekends project. It’s a simple idea. I’m currently putting together a parser in PHP. I also want to see about implementing browser plugins...