Some 2011 numbers and 2012 goals

  1. This blog:
  • WP YouTube Lyte, my WordPress plugin to do “lazy load YouTube embedding”, really took off:
    • 8 minor and 3 major releases (from 0.6.5 to 0.9.4), introducing support for features such as audio-only YouTube, embedding playlists, changing player size on the fly and translations in 6 languages (thanks to those six great contributors).
    • 48260 downloads
    • Main goal for 2012: stabilize and reach the magic 1.0.0 (which will probably include an optimized initialization-mechanism)
  • My WP DoNotTrack plugin is somewhat … younger:
    • 2 releases
    • 336 downloads
    • Goals for 2012:
      • stop more types of tracking (a.o. by including black- or whitelist filtering of the HTML using the output buffer)
      • improve filtering
      • integrate (and possibly automate) tracking-detection using the webpagetest.org API
      • promote the idea of “DoNotTrack” in general and for WordPress and WP plugins & themes in particular (the plugin is just a means, not an end in itself)

    But enough with all the navel-gazing, thanks for b(e)aring with me & have a great 2012 guys & girls!

    Configure WP DoNotTrack to block what you want

    I pushed out a major new version of WP DoNotTrack to the WordPress plugin repository and major in this case means:

    • you can now choose between a blacklist and whitelist-approach (previous version did blacklisting only)
    • define what exactly is in that black- or whitelist (previous version came with a hardcoded blacklist)
    • option to block javascript-initiated tracking code from being added for all your visitors, or just those that explicitly opted out of tracking in their browser (supported in MS IE9 and Firefox 9, not supported in Google Chrome)
    • and off course an option-page under wp-admin to change all these settings

    Because of these new features (4 of them) and because I think the plugin is already at least 50% mature, I decided to bump the version from 0.1.0 to 0.5.0. Never been good at math anyway …
    If you encounter any problems when installing or configuring this plugin, you might find valuable info in the FAQ. But here’s two tips anyway:

    1. In general caching and js-aggregating plugins can interfere, so you might want to disable those while working on your WP DoNotTrack configuration and re-enable (with cleared caches) once you’re satisfied with the result.
    2. If you’re running WP YouTube Lyte with the bonus “donottrack” feature activated, you’ll want to deactivate that before installing/ activating WP DoNotTrack. If you don’t do that, you’ll have to turn to the FAQ …

    Don’t hesitate to contact me or leave a comment beneath this here little blogpost if you run into problems, if have a feature request or if you just want to chat a little. I just love receiving feedback!

    It’s official: you can not track your visitors

    After almost a year of tinkering with my Donottrack-plugin for WordPress, I’ve requested it to be hosted in the WordPress repositories and uploaded version 0.1.0. So if you’re using Donottrack on your blog, or if you activated this “bonus feature” of WP YouTube Lyte, I propose you give WP DoNotTrack a try and let me know what gives here in the comments or via the contact form?
    From the readme:

    WP DoNotTrack stops plugins and themes from adding 3rd party tracking code to your blog to protect your visitor’s privacy. WP DoNotTrack uses (a slightly modified) version of jQuery AOP to catch and inspect elements that are about to be added to the DOM and renders these harmless if the black- or whitelist says so.
    The current version is blacklist-based and stops tracking by media6degrees and quantserve. This can easily be changed in the javascript though. Future versions will include a WordPress admin-page to change these settings.

    WP YouTube Lyte 0.9.0: size matters

    I uploaded a new version of WP YouTube Lyte to the WordPress SVN repository earlier today. The markdown parser seems to be in a bad mood today and the changes in the readme.txt (the changelog, first and foremost) aren’t visible, so here’s what’s new in this release:

    • you can now change player size from the default one (as proposed by Edward Owen); httpv://www.youtube.com/watch?v=_SQkWbRublY#stepSize=-2 or httpv://youtu.be/_SQkWbRublY#stepSize=+1 will change player size to one of the other available sizes in your choosen format (4:3 or 16:9)
    • added a smaller 16:9 size and re-arranged player sizes on the options-screen
    • Bugfix: changed lyte-div ID to force it to be xhtml-compliant (ID’s can’t start with a digit, hat tip: Ruben of ytuquelees.net
    • Bugfix: added version in js-call to avoid caching issues (lyte-min.js?ver=0.8.1) as experienced by some users and reported by Ryan of givemeshred.com
    • Upgrade to the “bonus feature” to fix things (consider this beta though)
    • Languages: added Hebrew (by Sagive SEO) and Catalan (by Ruben of ytuquelees.net) translations and added completed Spanish version (thanks to Paulino Brener from Social Media Travelers)
    • tested succesfully on WordPress 3.3 (beta 2)

    The (slightly smaller) lyte-embedded YouTube video to go with this release: “She wants” by Metronomy (very Japan-esque by the way):

    Metronomy - She Wants (Official Video)

    As always, your feedback is welcome in the comments or via the contact form!

    WP YouTube Lyte 0.8.0 released

    Just a quick note confirming the release of WP YouTube Lyte 0.8.0. As previously described, the main new feature is support for embedding YouTube playlists in a high-performance and accessible kind of way that is typical of this plugin.
    While testing the new feature on different platforms I noticed the playlist-player only comes in Flash, so it does not work on iPads or iPhones. Or “does not work on them yet”, as YouTube’s Jeff Posnick confirmed that support for HTML5 video in the embedded playlist player is on their todo-list.
    The plugin is multi-lingual, with the following languages supported:

    • English
    • Dutch
    • German
    • Slovenian
    • French (only the strings visible for visitors, not those in wp-admin)
    • Spanish (only those strings visible for visitors for now)

    Corrections, extra translations, bug reports and feature requests are all welcome feedback, either in the comments here or via the contact page.
    I hope you enjoy the new version!

    WP YouTube Lyte; support for playlists (almost) included

    Work on the next version of WP YouTube Lyte is almost finished. The main new features you can expect in version 0.8.0 are:

    • support for playlists
    • support for HD video (if size of the embedded player is big enough)
    • updated UI elements & player sizes to match new, dark YouTube player style
    • removed support for legacy YouTube embed code

    Embedding a playlist will be as simple as adding

    httpv://www.youtube.com/playlist?list=<playlist_id>.

    The result will look like this documentary about Arcade Fire (4 video’s in one playlist):

    Playlist: arcade fire documentary
    Watch this playlist on YouTube

    Now off to testing this blogpost with an embedded playlist in all browsers I can get my hands on. Your feedback (off course) is always welcome as well! If all goes as planned I’ll push 0.8.0 to the wordpress svn later this week.

    WP YouTu.be Lyte: a minor release & some meandering thoughts

    Yesterday I pushed WP YouTube Lyte 0.7.3 out the gates. The main trigger for that new release was a bug report about the plugin not behaving as expected when using the youtu.be-links that you get when clicking the “share”-button on YouTube.  Being from that TLD mysself I could not but fix this; the new version recognizes and parses both httpv://youtube.com/watch?v=videoid and httpv://youtu.be/videoid links in posts, pages and widgets. Other features: Slovenian translation (thanks Mitja Mihelič @arnes.si) and a small change to the donottrack-inclusion to make it work over https (hat tip; Chris @ campino2k.de).
    Speaking of donottrack: I’ve finally started rewriting that privacy-enhancing plugin. It might … No, it WILL take some time, but expect a whitelist-based approach where you’ll be able to get a report of all inclusions of external content (images, css, javascript, …) in your site and where you can just tick a checkbox per domain you want to allow. All other current and future domains that rogue plugins try to smuggle in after you configured, will be stopped. Next to document.write’s I hope to be able to catch innerHTML and DOM methods like insertBefore and appendChild. If you’re a javascript DOM magician, I could sure use your help on those!
    Not sure where I’ll be going with WP YouTube Lyte, it feels pretty complete to me. Stuff that might be added at a later stage;

    Do comment below or contact me if you have other feature requests though! And thanks for all the downloads (36.000 and counting)!!
    And as is traditional of WP YouTube Lyte announcements, here’s a small video to celebrate the new release; Intergalactic Lovers, a Belgian band, playing “Delay” live.

    Intergalactic Lovers - Delay - 23-05-2011

    Audio-only YouTube embedding with WP YouTube Lyte 0.7

    Last night I finished version 0.7.0 of WP YouTube Lyte. The bump in version number (0.6.5 to 0.7.0) is because of a new feature: the ability to embed YouTube as audio-only player, as seen on Pitchfork. Because after all, as great a source for music discovery as YouTube can be, you really don’t want to force your visitors to watch yet another clumsy fan-made slideshow while they’re listening to your latest musical crush, do you?
    Embedding YouTube as an audio-only player is dead-simple; add an ‘a’ instead of a ‘v’ to the YouTube link and you’re good to go!
    httpa://www.youtube.com/watch?v=iFjgv1MO724
    becomes this audio-only embedded YouTube with Dorian Concept’s “Her Tears Taste Like Pears”;

    Why your WordPress blog needs DoNotTrack

    So what’s with all that nagging about tracking and that DoNotTrack plugin, you might wonder? Well, it’s pretty simple actually.

    1. Some very popular WordPress plugins include 3rd party tracking, sometimes even without properly disclosing, often without means to disable this behavior
    2. 3rd party tracking has privacy implications: all your visitors are tracked by the 3rd party, in general for behavioral marketing purposes (depending on what data is captured, tracking might even be illegal in some countries)
    3. 3rd party tracking has a performance impact: every visit to your blog will include between 2 and 5 extra requests for the 3rd party tracking to succeed, effectively delaying full page rendering

    It is my conviction that blog owners should be able to install and use WordPress plugins without having to worry about undisclosed tracking and that plugins should provide a way to disable such 3rd party tracking if included.
    As this is not the case yet, we have to resort to (messy) solutions to stop unwanted tracking from happening. And that’s exactly what DoNotTrack does. It’s a small javascript-hack in a WordPress-plugin to stop 3rd party tracking introduced by some of the most popular plugins.
    Some details from the readme.txt:

    • What works:
    • What does not work (yet): Tracking code added using innerHTML or appendChild/insertBefore is not yet intercepted (but I’m working a solution for that)
    • What else might be added:
    • How you can help:
      • Provide me with links to plugins that include browser-based tracking + domain where the tracking is done.
      • Provide me with known opt-out code (javascript) to disable tracking services on a site.
      • Tell plugin writers you’re not happy with 3rd party tracking!
      • Tell your visitors about tracking & privacy, link to e.g. http://www.privacychoice.org/

    And remember: if you host your WordPress blog yourself, you and nobody else should be able to decide who tracks your users!

    Coding for the New Year

    Just a quickie before diving into 2011;

    And this is how I feel about 2011:

    Jon Hopkins - Light Through The Veins (Full 9 Minute HQ Version)

    Have a great New Year!