Nothing says Merry Christmas like Project Euler. Here’s a nifty solution to Problem 79 that uses Python and Graphviz. The problem is to identify a user’s password given a bunch of successful logins (taken from some kind of nefarious keylogger–those crafty devils). The çatch is that each login is actually a subset of the actual […]
I just finished writing my first iPhone app. I have a background in Java, C++, Python, and a smattering of other programming languages on Linux and Windows in both embedded and desktop environments, so that hopefully explains my brain damaged context. Here are the pit falls I stumbled upon while climbing up the Cocoa learning […]
It just ocurred to me that I’ve been using Linode as my hosting provider for 7 years this week. I’ve been so happy with their service that I thought I’d offer a review. The top 4 reasons you should consider Linode for your hosting needs (I’m sure there are 6 more reasons, but I’m time […]
There were some fantastic messages this conference (April 2011). I plan on re-listening to all of them. Get the podcast: General Conference Podcast page.
This is a follow-up to my post on code optimization. Today I did some experimenting with hashes and binary-search-trees, specifically playing with QHash and QMap in C++. According to the Qt containers algorithmic complexity documentation, QHash provides “significantly faster lookups” than QMap. Your intuition may confirm this, because you’ve heard that QHash uses a constant-time […]
Disclaimer 1: This post was influenced heavily by my good friend, co-worker, and Haskell hacker Evan. Disclaimer 2: Unless otherwise noted, I am completely making up terms in this article. I pulled them right out of the ether. Don’t expect to find industry conventions that agree with me. Bob is a fictitious developer on my […]
This month, my blog matured to the age of 5 years. That’s like 37 in dog years, and 800 in Internet years. Mom, I hope you’re proud. This is all I’ve got to show for myself.
You’ve been there. You’re sitting in a demo where the lead engineer is presenting a new product to the customer. With laser pointer blazing, he shows off the 300 features of the new Blarney Gadget. He’s going a million miles an hour, switching between PowerPoint and the product on the screen as fast as the […]
In C++, the static keyword has a lot of meanings. Let’s go over all of them: Meaning 1: Private Linkage This one comes from C, and it lets you mark a variable as “file private”. Example: static int i = 42; void doSomething() { cout << i; } In this example, static tells the compiler […]
Communication is everything in software development. Unless you work on a team of one, it’s important that your code communicates easily to your team members. Even if you do work on a team of one, it’s important to communicate to your future self. Yeah, everyone has to read their own code once in a while, […]