• Home
  • Consultancy
  • Contact
  • Barcamp Transparency 2009

    July 27th, 2009 by Marcus Povey

    Yesterday, all the hard work we put in to getting Barcamp Transparency 2009 ready paid off, and I have to admit I am really pleased with how it went!

    Judging by the feedback I’ve been getting throughout the day you guys enjoyed it as well, but please let me know if there’s anything that we could do better next year!

    Of course the event wouldn’t have been possible without our sponsors… Google who were kind enough to cover the cost of the venue (and thanks to the Oxford Club for being so good to us on the day!). Thanks to our other sponsors – 1000 heads, Proactive, Outmap, Moo and TerminateTheRate.org as well.

    Also, thanks to our media sponsors: Global voices, Mashable and JackFM.

    Most of all, thanks to all of you who came!

    There were plenty of interesting conversations had, and we’ve already spawned a couple of interesting projects – do write in and tell me about yours, we’d love to do a followup!

    Check out our flick group, and if you have any photos feel free to upload them to the group pool.

    Anyway, I’ve rambled on…see you next year!

    Friendfeed Activity Widget (bugfix)

    July 24th, 2009 by Marcus Povey

    On this blog, I use the Friendfeed Activity Widget plugin developed by Evan Sims to display my friendfeed (eyes right).

    This plugin appears to have a bug whereby items with thumbnails (flickr, youtube etc) will not display correctly. This may possibly be just on my site as nobody else seems to have reported the issue.

    The issue seems to be a miss-detection of the entity type in the code, incorrectly assigning flickr and youtube types to the default “list” type. I have hacked together a quick patch which seems to be working for me (but crucially doesn’t fix the underlying problem).

    Normally I wouldn’t post this sort of thing here, however it would appear that Evan is no longer maintaining the plugin and has turned off comments. Hopefully, if you are having the same issue as I was, this might be useful to you.

    » friendfeed-activity-widget-mp.zip – My modification of 1.1.3

    Image from Friendfeed.com

    Its the final countdown!

    July 24th, 2009 by Marcus Povey

    I can barely contain my excitement, but we are now only a few hours away from the start of the Barcamp Transparency event weekend!

    The weekend kicks off tonight at 7pm BST (6 GMT) with our virtual eventfind us on Friendfeed!

    Tomorrow, those of you who are coming down the night before are welcome to join us in the Gardener’s Arms from about 7pm for food, beers and a bit of socialising… look out for the group with Barcamp Transparency posters (thanks Ben Werdmuller for designing those!).

    Don’t forget to @mapkyca on Twitter if you get lost!

    Finally, the main Barcamp Transparency event kicks off at 10am on Sunday in the Oxford University Club on Mansfield road. Detailed instructions for getting there can be found on the Barcamp Transparency website!

    See you there!

    Digital Britain Fail

    July 16th, 2009 by Marcus Povey

    Last night I attended Oxford Geek Night, where I gave a quick talk about the Digital Britain report.

    My presentation slides are below, but I thought I’d write a quick blog post to go into a little more detail.

    The Digital Britain report, for those who aren’t already aware, is a report produced by the government. It contains a number of recommendations aimed at improving the UK’s digital infrastructure and boosting the social and economic impact of digital technology.

    “The report provides actions and recommendations to promote and protect talent and innovation in our creative industries, to modernise TV and radio frameworks and support local news, and introduces policies to maximise the social and economic benefits from digital technologies.”

    What I hoped for was that the government would use this report as an opportunity to do something interesting – for example:

    • Opening the wealth of government data – statistics, contract details etc – the government holds to the general public
    • Scrapping the archaic idea of Crown Copyright, which is both unfair and harms our economy. I would like to see a situation where anything which is produced by the state should be released as public domain.
    • Modification of the tax and accountancy laws to make them more startup friendly.
    • Focussing attention and even funds towards direct democracy – building tools to interact with the government.
    • Overhauling the data protection laws to enshrine in law the idea that data about you belongs to you.

    However, what we got was a top down and prescriptive rather than bottom up and inventive. Some vague tax breaks for big companies, ISPs told to police their users, and a tax on all phone lines.

    Some things we could do:

    • Educate your MP – they aren’t experts at this stuff, and it is up to people in the industry to tell the policy makers where the problems are. Open source laws FTW :)
    • Innovate – continue doing what you were doing already, building out those tools and having those creative ideas.
    • Recreate and obsolete – In the short term, things like Crown copyright are not going away. I wonder how much of their data we can recreate in the public domain? OpenStreetmap is doing a good job at recreating google maps
    • Local councils and individual projects can be a lot more receptive than central government.

    In short, you are the government. You’ve got to act like it!

    Image from the Digital Britain report

    Post processing Elgg views – Trac tags example

    July 6th, 2009 by Marcus Povey

    Trac_Logo_512x512There are a number of ways that an Elgg plugin developer can manipulate views via the powerful Elgg views system.

    Most Elgg programmers are by now familiar with extending or replacing existing views, or providing new views for new objects etc.

    But what if you just wanted to make a simple tweak to an existing view – for example to replace all instances of rude words in a feed article, or to turn passive links into active ones?

    Well, fortunately Elgg provides a post processing hook for views which can do just that.

    After every view has been generated, the framework will trigger a plugin hook called “‘display’, ‘view’”. This hook is passed a parameter ‘view’ which contains the name of the view being processed (eg. object/blog).

    The contents of the view are passed in the $returnvalue variable which you can perform any processing on before returning it from the hook.

    I have just uploaded a Trac tags plugin to the Elgg community site which provides a good example of this.

    The Trac tags plugin is a tiny plugin which uses the views post processing hook to turn Trac links (e.g. #xxxxx for tickets and [xxxxx] for changesets) into active links into your repository, and here’s how – first we register the hook:

    function tractags_init()
    {
    ....
    // Register our post processing hook
    register_plugin_hook('display', 'view', 'tractags_rewrite');


    // define views we want to rewrite codes on (means we don't have to process *everything*)
    $CONFIG->tractags_views = array(
    'object/thewire',
    'object/blog'
    );

    ....
    }

    Then in our handler looks something like this:

    function tractags_rewrite($hook, $entity_type, $returnvalue, $params)
    {
    global $CONFIG;

    $view = $params['view'];

    if (($view) && (in_array($view, $CONFIG->tractags_views)))
    {
    // Search and replace ticket numbers
    $returnvalue = preg_replace_callback('/(#)([0-9]+)/i',
    create_function(
    '$matches',
    '
    global $CONFIG;

    return "<a href=\"{$CONFIG->trac_baseurl}ticket/{$matches[2]}\">{$matches[0]}</a>";
    '
    ), $returnvalue);

    // Search and replace changesets
    $returnvalue = preg_replace_callback('/(\[)([0-9]+)(\])/i',
    create_function(
    '$matches',
    '
    global $CONFIG;

    return "<a href=\"{$CONFIG->trac_baseurl}changeset/{$matches[2]}\">{$matches[0]}</a>";
    '
    ), $returnvalue);

    return $returnvalue;
    }
    }

    I’m sure you will be able to come up with some much more interesting uses!

    Image from the Trac project.

    All content is © Copyright Marcus Povey 2008-2010 and released under a Creative Commons licence unless otherwise stated.

    Creative Commons License