Technology

  • The Anatomy of an Exploit

    ·

    I’m a huge fan of security. I spend many a weekend experimenting with new encryption techniques, hash algorithms, and security protocols. As a result, I also come across several different server exploits in the wild. PHP hacks, [cci].htaccess[/cci] hacks, JavaScript injection, etc. I once even saw a server hacked through a corrupt PNG image that

    Read More

  • Self-Confidence

    ·

    Lacking self-confidence is dangerous, and over-confidence can cost your life. Both rock climbers and programmers should know their limits.

    Read More

  • Doing it Wrong the Right Way

    ·

    Telling someone there’s a right way to include a plugin in a theme is like telling someone there’s a right way to cheer for the Beavers during the Oregon Civil War. There is no right way. However, there are still ways to do it if you absolutely need to. Let’s admit it. As developers, we’re lazy.

    Read More

  • Universal User Support

    ·

    Yesterday, my news feed included an article about a particular retailer’s proposed tax on IE7 users. The first article made it sound like a good idea – users checking using an older browser faced an added 6.8% “tax” meant to address the additional effort required to support the older system. I was constantly on the

    Read More

  • Merging WordPress Multisite

    ·

    When I first set up my personal website network, I got a bit carried away.  Once I had the first two sites in a multisite network, I started splitting out every category of my blog into its own site – each with its own domain. At the peak, I had: One site for my personal

    Read More

  • How to Contribute to WordPress Core

    ·

    My first ever contribution to WordPress was trimming whitespace from keys stored in the WordPress options table. Basically, I removed a space. But since then, I’ve contributed quite a few other patches to the project I love.  Eleven of them have actually made it in to the core codebase! At the Portland WordPress User Group

    Read More

  • Classy Plugins

    ·

    I was asked a few weeks ago why I structured my WordPress plugins the way I do. Anyone who has spent any time looking at my code knows that I like to keep my main functions in a class and wire up action hooks and filters in the root of the plugin.  But few people

    Read More

  • Start with a Unit Test

    ·

    Not everyone is a fan of test-driven development. Writing unit tests for your code can be a laborious task, and it has no immediate benefit to your customers.  So why waste any time writing the tests, right? This past week, a colleague of mine summed up the problem pretty well: I’ve finished writing the code for that

    Read More

  • Dependency Injection and Abstract Interfaces in C#

    ·

    If you’ve ever written code, you’ve probably written a unit test.  If you haven’t written unit tests, you should start. Now. Really. Unit tests let you quickly verify that your code is operating in a predictable fashion.  When you make changes down the road, you re-run the same unit tests to make sure nothing broke.

    Read More

  • URLs and UX

    ·

    I despise broken links. Most of the sites I read on a daily basis are littered with links to this site or that site.  Many of them are written quickly to get news stories out promptly and, as a result, are published with typos. It’s one thing when I catch a typo in body content

    Read More