Archive for 'opensource'
We're proud to announce that Facetious, a plugin we've been working on for quite some time, has now been released in the official WordPress repository. And we'd like to thank the UK taxpayer for his/her assistance in writing it.
We do a lot of work for government departments, and on several recent projects, there's been a requirement for an 'advanced' or 'faceted' search form. This allows you to search by post type, by keyword, by taxonomy, and by month - all together. You can see it on the Government Olympic Communication site, for example, where we let you search its video library (post type) by keyword, and/or theme, department, nation/region, video quality, or month of upload.
We did something similar for the Commission on Devolution in Wales; and it's a key feature of another site due to go live in the next month or so.
We're in good company, by the way: you'll see a very similar search form on GovUK's Inside Government pages, for example.
It became immediately obvious that we could write the code as a plugin, for instant reuse on any WordPress site. We called it Facetious, because it had the word 'facet' in it. And in keeping with our open source principles - not to mention the fact that the development work had been funded by government departments - we decided we would release it publicly in the official WordPress plugin repository.
Out of the box, it provides an enhanced 'search form' widget, which you can drop into any WordPress sidebar. If you want to add a customised form into your own post templates, we've made that easy too: it's all detailed in the plugin's readme file.
Facetious isn't a 'search engine' per se: it's just a simple way to construct complex multi-dimensional queries. The results are gathered using WordPress's built-in search function, which doesn't try to be anything too clever. If you're looking for smarter search results, you'll need a different plugin. (Maybe Relevanssi or something.)
Oh, there's one more thing.
Search URLs in WordPress are the platform's last unpretty 'permalink'. Nobody wants to see
?s=keyword in their address bar; and it isn't possible to cache query-string URLs using something like WP Super Cache. So we've created a new permalink structure for searches as part of Facetious, and your search URL now looks like
/search/keyword/ - or
/search/month/201302/keyword/whatever/category/uncategorized/. This will be applied to any search: not just those submitted via a Facetious form.
If you want to give it a try on your own WordPress site, just go to Plugins in the admin area, and search for it. If you're a developer, and you'd like to help us improve Facetious, it's also on Github. Pull requests welcome.
My thanks to Nick H, Nick S and Sara P for letting us experiment on their sites over the past few months: and to John Blackbourn, for doing such a fantastic job turning my hacky code into a plugin to be proud of.
The Telegraph Media Group began embracing WordPress two and a half years ago: first its blogs were migrated over, then its My Telegraph community. They then began embracing WordPress people, hiring BuddyPress core developer Paul Gibbs, and hosting London WordPress meetups.
Now they've gone a stage further: releasing a WordPress plugin in the company name. Expire User Passwords has obvious applications in a more corporate environment: it's a zero-configuration plugin which you simply install and forget about. Until you reach the 30-day expiry point, when you're prompted to renew your password.
It's available from the WordPress repository, where it's owned by Paul and a new Telegraph user account. Or alternatively, they've just started making use of a Telegraph Github account which they seem to have registered two years ago.
Well done, Team Tele. Great to see a large corporate giving back to the WordPress community. I'd love to know how they got over the inevitable concerns about plugin support, liability and so on.
Following on from March's publication of the new government ICT strategy, the Cabinet Office has published its implementation plan - a long and detailed document, full of specific milestones, risks and nominated Senior Responsible Owner, leading to projected savings of 'around £1.4bn of savings within the next 4 years' (according to the press release).
'Our plans are focused on standardising government ICT,' states the foreword, with a pledge to 'fundamentally change how government incorporates ICT into its everyday business. It will ensure the early factoring of technology considerations into the design of policy, increase digital inclusion, reduce the cost of our operations, and ensure information is shared and transparent where possible and always handled appropriately.' Good news on all fronts, you'd have to say.
The document covers so much ground, it's almost impossible to provide a meaningful summary of it. But to pick out a few highlights, based on the areas of particular interest to this blog and this blogger:
- Open source: a 'toolkit to assist departments in the evaluation and adoption of open source solutions' is due for completion this month, although it will only be accessible by '100% of departments' by next March. By March 2013, '100% of all department software procurement activity includes an open source option analysis'. The Senior Responsible Owner for Open Source is Robin Pape, CIO for the Home Office.
- Open technical standards: the findings from the recent 'crowd sourcing' exercise will be published this month, with 'the first release of a draft suite of mandatory Open Technical Standards' to follow in December. Levels of adoption of these will be reviewed in six months.
- App Store: will launch in March 2012, but rather unambitiously, they're giving it until the following December to reach '50 accredited products'. Sounds like it'll be pretty empty until this time next year.
- Single domain: The launch of a 'Beta version of single government web domain for public testing' is set for February 2012.
- APIs: I'm pleased to see the statement that 'Government will select common standards' - as opposed to defining its own. But despite having apparently completed a review of existing cross-government APIs in March 2011, it's going to take until September 2012 for a list of APIs to be published. Like the single domain work, this stream will be owned by Mike Bracken.
- Consultation: This one looks a bit odd. All departments are to have established a 'digital channel for online consultation' by December 2011... but then in February, the GDS 'online consultation product' will have been delivered, which makes you wonder why they're making departments spend time and money getting something together for December. Said GDS product will be 'integrated' into Single Domain by October 2012.
- Social media: Maybe it's me, but it seems a bit odd that the lead department on departmental access to social media sites should be the Home Office: they'll be producing 'final guidelines' by March next year. Verification of existing government social media accounts 'where appropriate' is to be completed by next month.
It's good to see so many specific dates and people in this document, and I think we can take a lot of encouragement from the plan as a whole. Personally, though, I can't help feeling slightly excluded. I don't see too many specific areas where Puffbox, or someone like us, can offer a contribution.
I seemed to cause a bit of a stir a couple of weeks back, when I challenged the decision to develop a new Government [web publishing] Machine from scratch, rather than basing it on an existing third-party platform. My blog post got quite a few comments; and there were some interesting exchanges on Twitter too. And now, to the Government Digital Service team's great credit, they've written a post on their own blog, responding to the challenge.
James Stewart's piece opens on a rather sour note, choosing to reference the Americans' adoption of Drupal first, before acknowledging the UK's primarily WordPress-based initiatives. The fact is, for once, Britain led the way on this. Perhaps if we'd had a high-profile champion like Tim Berners-Lee or Martha Lane Fox, we might have had greater, wider recognition. Instead, we just got on with it, delivering projects quickly, cheaply and quietly.
The choice of WordPress-based projects to namecheck in that opening paragraph is also a little odd. James is of course correct to observe that it powers 'numerous central government sites'; some traditional blogs, some more complex. But he doesn't mention the four central government departments who are already using WordPress to power their core departmental publishing - Defra, Transport, Health and the Wales Office. Nor is there a mention for the Cabinet Office's use of Drupal. Altogether a slightly odd omission in the context.
James proceeds to list the reasons why they took a bespoke approach, but each time, concedes that yes, they probably could have used WordPress or Drupal.
We’ve got a very strong focus on opening up APIs. While both Drupal and WordPress can be used to offer APIs... adding the range of APIs we’re aspiring to would require significant development work, and to make them perform as we’d like we’d need to work around the overheads introduced by WordPress and Drupal.
[On metrics:] Again, that’s certainly possible with both Drupal and WordPress, but to do it effectively we’d be writing a considerable amount of custom code.
Perhaps most compelling for me is our focus on admin systems... Here too we could customise any open source content management system to do the job, but it’s highly likely we’d either have to make significant changes to core code or develop a parallel admin system at which point much of the advantage of starting with the base system would be lost.
Or if I might paraphrase, somewhat provocatively: they're writing lots of custom code because otherwise, they'd have to write lots of custom code.
So on some level at least, it boils down to a comparison on the basis of cost and complexity. 'We’re choosing to start by assembling components rather than customising a package,' James writes in summary - implying a conclusion that their bespoke approach will work out easier / quicker / cheaper / more sustainable. Maybe it will, maybe it won't. So much of it boils down to the individuals you hire, and their varying levels of experience with various components.
James concludes with a pledge that 'we’ll be contributing code back to the wider community (whether in the form of new components or patches to existing ones) as we go along.' And of course, that's to be welcomed. Reuse of code is good. But this doesn't really tackle the point I tried to make about maximising reuse of the code: a point subsequently made, rather more forcefully, by Matt Jukes.
I think the work happening in GDS will have a real impact on web teams throughout the public sector but it will take a long time for it to leak through to those of us out in the NDPBs and I think I’ll switch to treating the work they are doing there as something as different to my job as that of a Silicon Valley start-up.
Ultimately then, it's a question of trust. Trust our judgement; trust our assessment of the relative levels of effort; trust our staff and project management skills; trust that the (back end) benefits will trickle down eventually. And looking at the CVs of those hired to do the work, there's certainly ample reason to put your trust in them.
Will they succeed where others have failed previously? We'll find out in due course. And genuinely, sincerely, I wish them well. We may disagree on the approach: but we all want to reach the same destination.
Accessibility is the subject of the latest post on the Government Digital Service blog: having had their fingers burned in the 'alphagov' phase of work, by consciously ignoring the subject, it's clear they want to be seen to make it a priority into the beta phase.
Léonie Watson writes:
Tom Loosemore has said: “… we want to make the most easy to use, accessible government website there has ever been”. Those of you who know something about web development on this scale will understand what a challenge that is. Those of you who know me will also recognise it’s a goal I thoroughly believe in. So, what are we doing to achieve that goal? Simply put, we’re planning accessibility in from the outset and documenting the accessibility steps we take throughout the website’s lifetime.
I've posted a comment on her article, which I'll reproduce here for the record. You'll instantly note a common theme with my recent inflammatory post about departmental publishing.
As you’ve noted, accessibility is very hard to get right: you’re conceding that you might not even score a 'perfect 10', even though you’re 'planning [it] in from the outset'. And as [previous commenter] Keith says, for small organisations, it’s prohibitively expensive to even buy the rulebook, before you even begin to implement the rules.
If government is hiring experts, consulting widely with users, and (hopefully) delivering exemplary results, it seems like a tragic waste for the benefits to be locked into a single website.
Wouldn’t it be fantastic if one of the outputs from your work were to be a reusable, customisable front-end theme for an open-source, widely-used publishing platform, like WordPress or Drupal? You could enforce certain ‘must have’ accessibility practices in the page templates, whilst still giving people plenty of scope to make it look and feel like their own site – via a parent/child theme arrangement, or a ‘theme options’ screen.
You could then release that theme publicly – giving web developers everywhere a robust base on which to build their sites. Imagine all those common accessibility headaches being solved, before the first line of custom code is written.
(I’m not suggesting this would solve all problems instantly, of course. And there’s still plenty of scope to cause all sorts of new problems in, say, a child theme’s CSS. But you’d certainly be giving people one heck of a head start.)
The fact is, very few organisations have any real motivation to get accessibility right. But Government has a moral obligation to do so. And you’re spending our taxes to do it… so I’d argue we all have a right to enjoy the fruits of that labour. Central and local government, public and private sector.
Issuing a list of rules seems a very old-fashioned way to encourage / enforce good practice. You have an opportunity here, to do something much smarter than that.
By their own admission, it doesn't unveil any shocking secrets: but I suppose it's worth noting the BBC's attempt to investigate Whitehall's use of open source software, or lack thereof. In truth, it really only highlights that the picture is rather chaotic, with little centralised control. I can also guarantee it's less than comprehensive. But would you expect anything else?
The answers are rather vague; but then again, so was the question. What exactly does it mean, to 'acquire' an open source product?
By way of illustration: the Beeb's list - (initially) published, without a hint of irony, as an Excel file - tells me that there is precisely one copy of Firefox inside DCMS, plus an unspecified number in DH, MOD and DFID... but none, apparently, in DfT. Clearly that's ridiculous. But even if Firefox appeared on everyone's list, what exactly would that tell us? That there's a copy which the web team use for occasional testing? That it's available as an option on every desktop? Or that it's the department's default, or even its exclusive browser?
Puffbox, if you hadn't already spotted it, is very big on open source as a principle. But I've taken a very specific approach to the subject: concentrating on one specific product, for one specific purpose. Why? Because it's much easier to frame the question that way. And because that particular product is a pretty good case study for open source done right.
The plan is, we set a precedent. Prove to people that the open source model can produce first-class results. Show how an open source basis can stimulate smarter and faster innovation. Then it becomes easier to take the next step, and the next, and the next...
In which Simon makes the case for the 'government machine' (in the diagram above), for government departments to publish fairly basic written information about their work, to be built on something which already exists, instead of being built 'from the ground up'. If you haven't already, do read Neil's piece... then Stephen Hale's piece about the Department of Health's new approach... then read on. And do please note the line about 'Seriously, this isn't about WordPress.'
It won't entirely surprise you to learn that, when Neil Williams's blog post about government web publishing in the world of a Single Domain popped up in my feeds, the first thing I did was press control-F, and search for 'wordpress'. And hooray, multiple mentions! Well, yes, but.
Some background, for those who need it: Neil is head of digital comms at BIS, currently 'on loan' to the Government Digital Service team, to lead the work exploring how government departments fit into the grand Lane Fox / Loosemore / Alphagov vision. A 'hidden gem', Tom Loosemore calls him - which seems a bit harsh, as Neil has been quite the trailblazer in his work at BIS, not least with his own web consolidation project. It's hard to think of anyone better placed to take up this role.
With that track record, it's happily predictable to see Neil reserving a specific place for WordPress (and the like). More generally, the vision - as illustrated in the diagram reproduced above - is sound, with the right things in the right places. There's so much to welcome in it. But there's one line, describing an 'irreducible core', which stopped me in my tracks:
a bespoke box of tricks we’ll be building from the ground up to meet the publishing needs most government organisations have in common, and the information needs ‘specialist’ audiences most commonly have of government.
Here's my question for the GDS team: why bespoke? why 'from the ground up'?
It's a decision which requires justification. 'Bespoke' invariably costs more and takes longer. It will increase the risks, and reduce the potential rewards. It would also seem to be directly in breach of the commitment Francis Maude made in June 2010, to build departmental websites 'wherever possible using open source software'. Were all the various open source publishing platforms given due consideration? Was it found to be literally impossible to use any of them, even as a basis for development?
Let's assume WordPress and Drupal, the two most obvious open source candidates, were properly considered, as required by the Minister. Let's assume contributions were sought from people familiar with the products in question, and just as importantly, the well-established communities around them. Both are perfectly capable of delivering the multi-view, multi-post type, common taxonomy-based output described in the 'multistorey' diagram. Both are widely used and widely understood. So why might they have been rejected?
Did the team spot security or performance issues? If so, wouldn't the more responsible, more open-source-minded approach be to fix those issues? Then we'd all see direct benefits - on our own personal or company websites - from the expert insight of those hired by our government. If things are wrong with such widely-used technologies, whether inside or outside government, it's already government's problem.
Or were there particular functions which weren't available 'out of the box'? If so, is it conceivable that someone else might have needed the same functions? Local government, perhaps - for which the GDS team has 'no plans or remit'. We're seeing plenty of take-up of WordPress and Drupal in local government land too. They have very similar needs and obligations as regards news and policy publication, consultations, documents, data, petitions, biographies of elected representatives, cross-cutting themes, and so on. Why not make it easy, and cheap, for them to share in the fruits of your labours?
But I think it goes wider than different tiers of government. Government is under a moral obligation to think about how its spending of our taxes could benefit not just itself, but all of us too.
Even if this project's bespoke code is eventually open-sourced, the level of knowledge required to unpick the useful bits will be well beyond most potential users. Given that it'll probably be in Ruby or Python, whose combined market share is below 1%, it won't be much use 'out of the box' to most websites. A plugin uploaded to the WordPress repository, or a module added to Drupal's library, would be instantly available to millions, and infinitely easier to find, install and maintain. (Well, certainly in the former case anyway.)
Seriously, this isn't about WordPress - although that's unquestionably where the Whitehall web teams' desire path leads. It's not really even about open source software. It's about government's obligation to the citizens and businesses which fund it. It's about engaging with existing communities, instead of trying to create your own. Acknowledging people's right to access and make use of the data - erm, sorry, the code - whose creation they funded. Any of that sound familiar?
There's so much right about the picture Neil paints. And maybe I'm reading too much into a single line. But the idea of building yet another bespoke CMS to meet Whitehall's supposedly-unique requirements seems to be three to five years out of date. And it didn't work too well, three to five years ago. Or three to five years before that. Or...
One area where the LibDems were conspicuously - and perhaps surprisingly - lacking at the last election was technology policy. In fact, it hadn't (formally) updated its thinking on the subject since 2003. But a working group was set up soon after the election, chaired by newly elected Cambridge MP Julian Huppert. A consultation paper was published a year ago; and as per the advertised schedule, a full-on policy paper (pdf) is being put to their annual conference next month. (Thanks to Richard Parsons for the tip-off.)
Under the rather curious title of 'Preparing the Ground', and bearing the somewhat ominous reference number 101, it sets out ideas 'to put IT at the heart of government, to create a liberal and open environment for business, and to secure a better deal for citizens.' And it's well worth reading through its 20-odd pages: there's some genuinely good stuff in there.
The first half concentrates on copyright and intellectual property issues: and as you might expect from a conference paper, there's regular reference to the party's liberal values. The paper restates a general preference in favour of free speech and self-policing, as well as a desire to 'avoid well-intentioned but badly drafted rules' around policing the internet - quite timely, amid talk from their Coalition partners of switching off social networks for a few hours, when we all need to calm down.
There are a few specific proposals, such as the suspension of IR35, repealing large chunks of the Digital Economy Act, and an in-context defence for Twitter Joke Trial scenarios. But it's the underlying tone of the commentary which is most encouraging. Huppert and co clearly get this stuff.
The second half is much more natural territory for this here blog: 'filling in the gaps', particularly as regards the public sector's use of technology. It starts with a rather bold statement:
It is essential that decision-makers and their advisers have a deep understanding of the impact of IT across society and a vision for what it can provide.
The proposal is that 'a specific government office be established, encompassing the work of the current UK Government Chief Information Officer and staffed with experts in the IT field. This new government office would advise all other departments of ways in which IT can improve efficiency and quality of service to the public, and engender a culture of online engagement with the public.' Civil service and local government managers, it suggests, should 'undergo a serious period of initial training in the impact and current implications of IT, [to] be refreshed annually.'
Noting the high levels of mobile phone ownership among the lower social classes, there's a specific recommendation that 'the government make all appropriate public services available online and accessible by an average retail mobile phone. This may mean, in some cases, trimmed down versions of websites with richer content.'
And there's endorsement - as you'd expect from the LibDems - for petitioning at all levels of the political process, 'from parish council to European Parliament'. But whilst there's a broad welcome for the new e-petitions framework, they want to go further:
We believe that the system should also encourage the formation of communities around both supporters and opponents of the proposition. Petitioning should be more than just a signature; it has the potential to foster more genuine involvement in the political process, making it easier for people to express their views effectively.
They go on to suggest:
The government should establish an e-Democracy centre to initiate and encourage the use of tools by individuals, communities and government at all levels, funded by central government on a permanent basis.
There's also an explicit, indeed a ringing endorsement for government use of open source... and more.
It is our considered view that open source development is desirable and should be promoted... The government should ensure that it owns the code that it has paid for, and then share it for free within the public sector in order to avoid different parties paying external firms to develop the same software. We would like to see the public sector embrace collaborative development along the lines of websites such as Github.
One way of promoting open source would be for the government officially to support the use of those open source community websites which perform public services to a similar or better standard than official publicly-funded websites. The government could also consider providing resources to the creators responsible. Formerly it has been known for the government to attempt to replicate the work of such websites.
Nice... but I'd be against a separate 'Github for government', if that's what it's suggesting. Now that we've (more or less) won the argument for using open source for core government business, the next step in the evolutionary process is for government to systematically start sharing its insight, and the fruits of its labours, with everyone. (Or perhaps that's what they meant by 'support' and 'providing resources' for third-party websites.)
There's plenty more commentary over at Richard's edemocracyblog. He summarises it as 'a step forward for eDemocracy', and I'm inclined to agree.
I've long been amazed that the LibDems haven't been more vocal in this space - courting the geek vote, for want of a better description. It should be such natural territory for them. But there's so much good sense in here, that it might be the start of something very interesting.
Liam Maxwell is head of ICT at Eton College, and a Conservative councillor in Windsor & Maidenhead. He co-wrote a 2008 paper for the Tories on 'Open Source, Open Standards: Reforming IT procurement in Government', plus the 2010 paper 'Better for Less' for the Network for the Post-Bureaucratic Age, in which he declares:
British Government IT is too expensive. Worse, it has been designed badly and built to last. IT must work together across government and deliver a meaningful return on investment. Government must stop believing it is special and use commodity IT services much more widely. As we saw with the Open Source policy, the wish is there. However, the one common thread of successive technology leadership in government is a failure to execute policy.
There is at last a ministerial team in place that “gets it”. The austerity measures that all have to face should act as a powerful dynamic for change. Let’s not waste this great opportunity to make British government IT the most effective and least expensive service per head in Western Europe.
And as from September, according to Guardian Government Computing, he'll be taking a sabbatical from his day job, and advising the Efficiency and Reform Group [ie Ian Watmore] and the government chief information officer [Joe Harley] 'on new ideas for the government's use of technology'.
Maxwell was the Windsor & Maidenhead councillor who drove the debate a year or so back, on councils switching to Open Document Format ('OpenOffice' to you and me, although there's more to it than that)... with savings in the tens of millions promised. There's a nice interview with Charles Arthur from last summer, in which he talks through his ideas, with one rather interesting quote in the light of today's news:
[Office software procurement is] a dysfunctional market because it's set by standards which are set at the centre. Only the Cabinet Office can set this standard. It does sound a bit wet [to be waiting for that instead of just doing it in the council] but this is what's actually stopping it happening.
A case of being careful what you wish for, perhaps?
I find it very hard to find much in Maxwell's writing that I disagree with; and indeed, you'll find many similar sentiments through the archives of this very blog, going back several years. It could get very interesting from here.
Update: it turns out this was announced on the Cabinet Office website last week. They've listed the areas he'll be looking at:
- develop new, more flexible ways of delivery in government
- increase the drive towards open standards and open source software
- help SMEs to enter the government marketplace
- maintain a horizon scan of future technologies and methods.
Update 2: Liam is on Twitter, and has just tweeted:
The new appointment means he has to resign his council seat. He's also putting his (admittedly rarely updated) personal blog on hold 'for now'... but with a promise to restart a new blog out of the Cabinet Office.
The new Government ICT Strategy has been published on the Cabinet Office website - and to their great credit, it's been published:
- primarily for web consumption, with the downloadable versions a click deeper; and
- not just in PDF, not just in Word format, but also in OpenOffice format! The quiet symbolism is noted.
Much of the document will seem familiar, as it's been (notionally) in place, or certainly on the cards, for some considerable time. But I'm struck by the relatively strong language it uses, for example: 'The Government will also put an end to the oligopoly of large suppliers that monopolise its ICT provision.'
There's formal endorsement of Agile methodology; 'mandation of specific open standards'; and a commitment that 'Government will not commission new solutions where something similar already exists.' That may sound like common sense... but the impact of such a black-and-white statement could be substantial.
The picture as regards open source specifically is somewhat disappointing, boiling down to little more than a restatement of the same 'level playing field' principle of recent years. Of course, as I've written here many times, that policy should be all that's needed to kickstart a revolution; but it hasn't happened. And I'm just not convinced that the creation of three new committees - an Open Source Implementation Group, a System Integrator Forum and an Open Source Advisory Panel - plus the creation of a 'toolkit for procurers' will do much to advance things... in themselves. But maybe that's just how the Civil Service has to do things.
A couple of other points which jumped out at me:
- there's an apparent endorsement of Directgov as the 'single domain', along the lines proposed by Martha Lane Fox. As I wrote at the time, there are pros and cons to this; and I know there were some efforts to keep services and policy separate.
- an explicit commitment that 'departments will ensure an online channel is included in all government consultations', within six months.
- no going back on the notion of open policy formulation, including a pledge to 'develop practical guidelines on departmental access to the internet and social media channels'.
Coincidentally, Francis Maude is just sitting down in front of the Public Adminstration Select Committee as I type this. I'll be watching, and hope to provide notes later.