Author Archives: Ian Dunn
My normal setup is to plug my Macbook into two external monitors, and leave the clamshell itself closed. and then when I travel I disconnect it and just use the built-in monitor. Lately I’ve been running into a problem when I open up Firefox on the Macbook, after disconnecting from the external monitors. Everything is […]
Video from MVC presentation at WordCamp Columbus 2013
The video from my presentation on the Model-View-Controller pattern at WordCamp Columbus 2013 is now available on WordPress.tv.
Security Reward for new Google Authenticator Plugin
I just released a new plugin into the WordPress.org repository, and am fairly confident that it’s secure, but since it modifies some of the default login behavior, I’d love to get some extra eyeballs on the code. To that end, I’m offering a $150 Amazon.com gift certificate* to anyone who can find a significant vulnerability. By “significant”, […]
Grepping for Terms on Separate Lines but Near Each Other
I wanted a way to search through the ~200 themes we have on WordPress.com to find out which ones registered sidebar areas for the home page, and this is what I came up with: find . -print0 |xargs -0 grep 'register_sidebar' -s -A 2 |grep 'home\|front' |more That’d have to be customized to fit other […]
How to Create Strong Passwords
We just updated the password advice we give to WordPress.com users so that it focuses on modern techniques like password managers and passphrases. It’s aimed at non-technical users, and very little of it is specific to WordPress.com, so it’s a good resource to share with clients or friends who could use a little nudge towards […]
Reusing P2’s ajaxUrl Short-Circuits Other AJAX Requests
I just spent awhile tracking down some odd AJAX behavior that was puzzling me, so I thought I’d share the solution. I was working on a plugin to extend P2 and my AJAX requests were always responding with -1. After a lot of digging and some trial-and-error, I figured out that it was happening because I was […]
Dynamically Adding HTML Elements to a Masonry Container
The official Masonry documentation doesn’t really cover this well, and all the external examples I found seem to be outdated. I got it working in v3.1.2 via trial and error. Basically, you just have to reload all the items before laying them out. Makes sense once you understand it… var mediaItemContainer = $( '#container' ); mediaItemContainer.masonry( […]
WordCamp Columbus 2013 Slides
I’ll be speaking at WordCamp Columbus 2013 this Saturday on implementing the Model-View-Controller pattern in plugins. If you’re attending and would like to follow along, you can check out the slides.
WordCamp Seattle 2013 Slides
I’ll be speaking at WordCamp Seattle 2013 tomorrow on creating object-oriented WordPress plugins. If you’re attending and would like to follow along, you can check out the slides.
Something to Keep in Mind
“Nothing recedes like success.”
– Walter Winchell
They Had This Beautiful Office…
I love this quote about Ani DeFranco from Small Giants: IRS Records wanted to sign Ani, and we went to see them in Los Angeles. They had this beautiful office. I thought, ‘Who’s paying for this?’ I couldn’t see anything they had that we really needed. IRS had a phone; we had a phone. IRS […]
WordPress’ Insularity and Architectural Shortcomings
Even though a huge fan of WordPress and have chosen to develop for it exclusively, there are still some big areas where the underlying architecture is out of step with modern development practices. Mike Toppa just wrote a great response to that “Dire State of WordPress” article that’s been going around, where he defends WordPress […]
How WordPress Saves Lives: Freedom, Hope and Custom Post Types
Paul Clark’s presentation at WordCamp Phoenix 2013 is a must-watch for any developer who’s interested in using technology to advance human rights and social justice. He describes how his team used open-source technologies to help a human-rights organization in Burma manage their information in ways that have a direct impact on their mission and the lives […]
Web Application Attack and Audit Framework
Tony Perez recently wrote about the Web Application Attack and Audit Framework (W3AF), which is a tool you can use to scan a website for various vulnerabilities, like XSS and SQL injection. You can watch a demo to get a feel for what it does. I think it’s a good thing to run during the testing […]
The Social Dynamics of Open-Source Contributions
Diaries of a Core Maintainer #6: A Tale of Two Developers makes some insightful points about different approaches towards contributing to open source projects, and how collaboration and social dynamics can play a big role in whether or not the contributions are accepted. It’s written by a Drupal dev, but I’ve seen the same things […]
Getting Access to Raw, Layered Design Files
Every once in awhile I run into a situation where a graphic designer refuses to share copies of the original layered art they created with others working on the project, or with the client. This has never really made any sense to me, because as a developer, I always give the client the raw source […]
Postpone Update Reboot Nag in Windows 7 Home Premium for 24 Hours
There are several articles out there about disabling the Windows 7 dialog that nags you to reboot after updates are installed, but most are either inaccurate, or rely on using the Group Policy Editor (gpedit.msc), which doesn’t ship with the Home Premium edition. The Group Policy Editor is basically just a front-end for the registry, […]
Negativity and Meanness in Online Communities
Here’s a thoughtful and insightful post by Jen Mylo on negativity and meanness in online communities.
Notices are Errors
One of my big pet peeves with WP plugins and themes is that so many of them trigger PHP notices and warnings by failing to check if array indices exist before referencing them, or checking if a file exists before including it, etc. It may seem trivial, but even if you don’t care about the […]
Using Singletons in WordPress Plugins
Eric Mann and Mika Toppa have been creating a interesting conversation about the use of the Singleton pattern within WordPress plugins. Eric started it with his article in defense of the pattern, and then Mike wrote a thoughtful response. Both make compelling cases for their position, and both avoid the teenage dickery that often accompanies […]