Category: Geekery

  • WordPress Coleman

    I’ve spent a lot of time since WordCamp San Francisco thinking about Matt’s expressed desire for faster, Chrome-like automatic patching in his State of the Word. Mainly, I got caught up in the “how” of it. Like how could they balance development on the trunk alongside rapid-fire, stable core releases?

    Then I read about the move to develop.svn.wordpress.org & Grunt for WordPress core development this morning and realized that it’s only a matter of time before WordPress has its own Canary build.

    For the uninitiated, Chrome Canary is a version of Google’s Chrome browser that has the most cutting edge stuff crammed into it. The stuff that’s not quite ready for the general public, but still needs testing. Firefox is doing something similar thing with Aurora.

    But WordPress can’t just go and call their cutting edge test branch Canary, can they? So, after combining the list of jazz greats in the version history along with my middling knowledge of the genre, I propose the early-adopter build be named after an innovator who was notorious for shaking things up: Ornette Coleman.

    Think about it. WordPress Coleman has a pretty nice ring to it, right?

    Anyway, now that I’ve given the project a name, I’ll just be hanging around waiting for an auto-updating build. Don’t worry though, I can be patient…

    Addendum: As my buddy Mike Schroder pointed out in IRC, you could totally do something like this right now with the Beta Tester plugin and the bleeding edge nightly builds. But I’m thinking about something that’s a little less likely to break things as trunk development progresses.

    Addendum 2: The Legend of Curly’s Gold: Yes, I realize that WordPress 4.5 used “Coleman” as its release name. This post was written 3 years before that release dropped. Nobody likes a pedant.

  • Vagrant, Casked

    While following the directions on how to set up 10up’s wonderful dev environment for WordPress, I noticed that Vagrant was using a .pkg installer.

    Now there’s nothing wrong with installing software that way. Hell, doing things via a graphical installer is easier for most end users. But Vagrant isn’t really something that was made for “end users”. It’s a command line utility to create and manage development environments.

    So I did a quick check to see if I could install Vagrant via my favorite package manager, Homebrew. And while there’s nothing in the vanilla install of Homebrew, I stumbled onto an independently maintained add-on called brew-cask that allows you to install Mac applications on your computer via the command line.

    Using it is as easy as loading up your terminal and typing:

    brew tap phinze/homebrew-cask && brew install brew-cask

    Then, to get Vagrant installed, just run this command:

    brew cask install vagrant

    Hell, you can even install VirtualBox if you’d like:

    brew cask install virtualbox

    Pretty nice, right?

    Oh, and if you’ve been holding out on using Vagrant in your dev environment, consider giving it a try. It’s way more flexible than MAMP and nowhere near as quirky.

  • Instant Scanner

    Have you guys heard about Instant Server? It’s pretty rad. Basically, you push a button, wait a few seconds and they give you 35 minutes of usage on an SSH-able server. Once the 35 minutes is up, you can either pay to keep it running or they trash the server instance.

    Anyhow, after trying to figure out some of the fun things I could do with it, I’ve come up something that security minded WordPress folks might find useful.

    There’s this command line security scanner called WPScan that performs a bunch of non-intrusive checks against WordPress installs. Folks with Linux based systems can install and run it easily. It’s also a fairly trivial install for folks who’ve set up Homebrew on their Macs. But if you don’t want to mess with installing Xcode on your MacBook or you have a (gag) Windows machine, try this out…

    1. Spin up an Instant Server instance.
    2. Log in via SSH.
    3. Run the following command:
      sudo apt-get install libcurl4-gnutls-dev libopenssl-ruby libxml2 libxml2-dev libxslt1-dev ruby-dev git make && git clone https://github.com/wpscanteam/wpscan.git && cd wpscan && sudo gem install bundler && bundle install --without test development
    4. After that finishes running, you should have roughly 30 minutes left on the server.
    5. Run this command:
      ruby wpscan.rb --url example.com --enumerate
      (Make sure to replace example.com with your own domain.)
    6. Sit back and let WPScan tell you about any security issues you might need to address.

    If you stay on top of core, plugin & theme updates, you shouldn’t really see anything surprising. But it’s always better to know your threats and limit your exposure, right?

  • The Theme of Tomorrow, Today!

    The WordPress team just dropped what they’re calling their “first draft” of Twenty Thirteen into the wild. And while I know that it’s not a finished product yet, I like it so much that I’ve decided to use it here. At least for a little bit.

    Can you blame me? I mean, just look at it…

    Twenty Thirteen

    Sexy, right?

    But how did I get my grubby little hands on a copy of the theme before it was even released? Well, if you’ve got Subversion installed on a Mac, it’s as simple as opening your favorite terminal application and running this command:

    cd ~/Downloads/ && svn co https://wpcom-themes.svn.automattic.com/twentythirteen/ && zip -rv twentythirteen twentythirteen && rm -rf twentythirteen/

    What does that command do? Allow me to give you the step-by-step rundown…

    1. Changes the working directory to your user’s “Downloads” folder.
    2. Performs a SVN checkout of the Twenty Thirteen theme from Automattic’s WordPress.com theme repository.
    3. Creates a zip file called “twentythirteen.zip” in your Downloads folder.
    4. Deletes the “twentythirteen” folder.

    Once the command finishes running, log into your WordPress dashboard, go to “Appearance > Themes”, select the “Install Themes” tab and click “Upload”.

    All you have to do then is upload the theme from your computer and activate it. Simple!

    And by “simple” I mean you have to be comfortable with the command line and hope to God that you have Subversion installed.

    Should you not have the SVN binary on your Mac, perhaps the exciting world of pre-release themes isn’t for you. Don’t fret though, I’m sure Twenty Thirteen will find its way to the official theme repository soon enough.

    P.S. Since Twenty Thirteen isn’t exactly finished yet, I wouldn’t suggest installing this on your production site. But if you’re borderline crazy — like me — feel free to join me in saying “fuck it”.

    Just don’t come crying to me if something goes wrong, okay?

  • The Standards Manual

    I’ve always had a very large soft spot for subway maps. Especially the one Massimo Vignelli did for New York City back in the 70’s. So when this NYCTA Graphics Standards Manual surfaced earlier this week I was thrilled.

    Hopefully I can get a little time to obsessively study it this weekend.

  • Clean Old WordPress Core Files

    For the folks who haven’t committed to cleaning the unused core files out of their WordPress install, the Old Core Files plugin for WordPress looks like it should be useful. I only say “looks like” and “should” because I’m already tidying my site’s files on the regular. But this’ll definitely save me from having to do my future sweeps manually.

  • Smush.it Alternatives for WordPress

    While helping a client come up with an alternative for the somewhat spotty Smush.it plugin for WordPress, I thought I’d do an extremely unscientific test to see what performed better. So I grabbed an image from Kanye Wes Anderson and got to compressing…

    Let’s start with the original 221549 byte image. Feel free to grab it (just click on the image) if you want to play along at home.

    Fish Fillet, Original

    To start, I tried uploading the file to PunyPNG. But I quickly realized that they cap their free compression tool at 150 KB. And since I didn’t feel like paying to run a one-off test, I gave Kraken a go instead.

    Kraken losslessly compresses the image to 214233 bytes. Which gives a 3.3% savings in total size. In a later test, the OS X utility ImageOptim gave the exact same results. That’s not to say that’ll always be the case, but it was definitely interesting to see. Especially when you consider that the command line (see: Linux friendly) alternative image_optim only managed to compress the image to 214746 bytes.

    Even though image_optim gave a respectable savings of 3.1%, I was surprised to see that otherwise insignificant variation. At least until the Smush.it web interface returned the “same” 214746 byte file.

    So all of them do a respectable job, but it seems as if Kraken & ImageOptim’s lossless compression methods are slightly more aggressive. Since Kraken has an API, it’d be wonderful if someone could whip up a WordPress plugin to leverage it. But until they do, all of this crap needs to be done before the images are uploaded to your site. Which is a total bummer. It’s still better than relying on the really spotty and ridiculously laggy Smush.it API though.

    Anyhow, I hope this was helpful to someone.

    Oh! And if you want to see the images that each program outputted, feel free to grab them from here.

  • Infinite Scroll

    Otto‘s done a great tutorial on implementing one of the more glossed over parts of Jetpack 2.0: Infinite Scroll.

  • Shumway

    I’m all for Mozilla’s open SWF runtime project Shumway, but I really hope its main use is to support legacy Flash content. Because the last thing we should be doing at this point is encouraging people to use Flash instead of HTML5.

  • Incidentals

    Sweet! Cabel Sasser finally released the long-awaited soundtrack for The Incident! And it’s got a ton of bonus material to boot! So go grab it! Or else I’ll keep using exclamation points to end every sentence! FOREVER!