Archive for the ‘Developer’ Category

Why I couldn’t watch 4oD last night

Tim Wintle - July 22nd, 2010

Last night I went to Channel4’s 4oD service to watch a tv show – but I couldn’t watch any of their content.

Sure, I was presented with a tantalising list of episodes, but there weren’t any play buttons – so I couldn’t make any use of Channel 4’s (very cool) site.

Suddenly it hit me, what if they were drawing the play buttons with javascript. Javascript is single-threaded, so a single script mis-behaving can stop the whole of the rest of the page from working.

Sure enough, looking at the site carefully it turned out they are including Facebook connect. The Facebook servers were responding incredibly slowly, but failing to respond with a server error that would let the rest of the site run.

So in short, the whole of channel 4’s 4oD site was useless to me (and, I assume to a large number of other people) because of Facebook.

Now I don’t know if Channel 4 have any kind of SLA with Facebook (I’m assuming not), but I’d be interested to know if there was a risk analysis done when they added Facebook Connect to the site.

Were Google saved by 4Chan?

Tim Wintle - July 5th, 2010

It may sound strange (especially after 4Chan’s history of attacking YouTube on porn day), but it seems that the message board may have inadvertently saved YouTube from serious harm yesterday.

After one users stumbled upon a serious XSS vulnerability (a type of bug which allows attacker to take control of everything your web browser does on a specific site), things could have got really serious.

A well-planned attack by a well-informed programmer could have run crazy – bombarding a huge number of web users with mallware and other attacks in a very short time, and without YouTube noticing for a significant time if done subtly enough.

Luckly, the news spread via 4Chan – a site who’s average user can hardly be described as well-informed. Within a few minutes the site was over-run with scrolling-marquees and redirects to shock sites – just the kind of thing that’s not going to stay under YouTube’s radar for long.

According to a Google spokesperson, it took under an hour for a temporary fix to be applied, and under two hours for a full fix to be deployed across the whole of youtube.

So thank you 4Chan – your practical jokes have saved a huge number of users from serious attacks. That’s the power of full-disclosure at work.

(Of course you could have just emailed them the vulnerability and saved all the people that did get attacked – YouTube have always responded very quickly when I’ve contacted them with serious issues)

Team Rubber Photo Casebook #151: r4k cake

Andy Parkhouse - June 29th, 2010

We use version control when we’re developing our software. Each time we finish a piece of code we commit it to the version control system. Each commit gets a number. Every 1,000 commits we have cake. Simple, no? :)

This is the cake for commit number 4,000 on Citizen Space. Tasty.

4K Revision Cake4K Revision Cake

Leaders Debate Live Analysis

Tim Wintle - April 22nd, 2010

I’ve just put the finishing touches to a quick tool to give you immediate analysis of the tweeting surrounding the UK leaders debate in Bristol tonight.

You can find it here: http://www.delib.co.uk/leadersdebate/

On a separate note, Google Analytics now provides an official way to insert their tracking code asynchronously, which is really cool.

http://code.google.com/apis/analytics/docs/tracking/asyncTracking.html

My Google AI Tron Bot

Tim Wintle - March 4th, 2010

Over the past few weeks I’ve been spending my free time taking part in the Google AI competition (organised by the university of waterloo).

While I didn’t end up doing so well (I was disqualified for taking just over the 1 second per move permitted in one of my games), I thought I’d post how I went about the problem. Many of the other contestants used similar algorithms, but for those who haven’t been following here’s the full thinking behind it:

(more…)

Delib’s Dialogue App makes debut at GSA webinar

Ben Witnall - February 26th, 2010

We were excited this week to have the opportunity to introduce Delib’s Dialogue App to a whole bunch of US government staff at a GSA webinar. It was slightly strange talking to an audience that you can’t see or hear but I think it went well. We set up a demo especially for the occasion – check it out at http://www.dialogue-app.com/gsa-demo

You can also take a look through our slideshow if you want:

Hopefully, it got people thinking about how they can use the internet to improve their decision-making/policy processes anyway :)

The Dialogue App is another cool thing built in the open source web framework Plone.

Prefer to spell it Dialog App? We’ve got you covered :)

Bath openMIC #4 – Mobile Web, HTML5 and CSS3

Robin Greene - February 12th, 2010

openMIC

Yesterday, I attended the Open Mobile Innovation Camp at the innovation centre in Bath. The event was hosted by Chris Book and had talks from Giles Turnball (Freelance Journalist), Bruce Lawson and Patrick Lauke (both from Opera). The focus of the day revolved around the current trends in mobile app development and the tensions between Native, Web and Widget apps.

The day kicked off with tech writer Giles Turnball talking about how technology has turned the press industry upside down. He recounted tales from the 90s of infra-red modems, Palm Pilots and GoType keyboards, and being one of the first journalists to actively embrace remote reporting and email. Although initially laughed at, remote journalism is now standard and Giles encouraged us not to neglect advancing technologies, but to learn about them and look to integrate them into our businesses and working lives.

Next up was Richard Spence who ‘controversially’ spoke about non-iPhone development. He reminded us that only 8% of the mobile market is iPhone whereas 71% is browser based. Richard didn’t slag of the iPhone, on the contrary, he “thanked Apple from the bottom of his heart” and agreed with Stephen Fry’s eloquent observation:

Does anybody seriously believe that Android, Nokia, Samsung, Palm, BlackBerry and a dozen others would since have produced the product line they have without the 100,000 volt taser shot up the jacksie that the iPhone delivered to the entire market?

Richard went on to give a brief history of mobile development platforms and where they are at now. J2ME, Blackberry and Symbian were all covered and commended for their recent improvements in the light of the ‘iPhone effect‘.

The final talk of the morning was from Bruce Lawson from Opera. Bruce was in jovial mood and was quick to evangelise the latest Opera Beta which claims to be the current fastest Javascript engine. Bruce championed the W3C Mobile Web Best Practices and also highlighted some of the UX and accessibility challenges that await. Bruce emphasized the importance of optimization and minimising HTTP requests. He went on to talk about future advancements in HTML5 and CSS3 and the features that the latest Opera already supports. One particular point of interest for me was the use of Media Queries to change CSS layouts dependent on screen size, without JS sniffing. Bruce finally talked about the potential of Widgets, that Opera are involved with in editing the W3C standard.

After a lunch at the local chinese and heated debate on technology, we broke into smaller groups for our barCamp sessions. The philosophy of barCamp is to create open group dialogues about an agreed topic and to work / explore collaboratively. I attended a discussion on HTML / CSS3 with the guys from Opera, and for my second session W3C Standards for Mobile Web. Both sessions were really insightful and was particularly interesting to hear peoples’ comments from the mobile industry on mobile web.

I also picked up a couple of useful tools:

Native Mobile Development Platforms for Web Developers

Appcelerator Titanium

PhoneGap

W3C Mobile Validator

http://validator.w3.org/mobile/

Perhaps most surprising, coming to the event as a pure Web Developer (with past dabblings in mobile), I certainly didn’t feel like an outsider or feel like the technology was flying over my head. In fact, I came away with an increasing awareness that, whether I like it or not, Web Development is not simply going to be solely about the Desktop. As hopes of an archaic browser death is on the horizon, another friend is also lurking. In our discussions on Mobile Web Standards, we were reminded that the largest mobile usage is not in China, the US, or Europe, but in developing countries. If the days of IE6 support is numbered, then the days of mobile WAP support may be coming back from the dead!

We’re making Opinion Suite join up with Linked Data (through RDFa)

Andy Parkhouse - January 29th, 2010

With so much chat and buzz at the moment (and rightly so) about Tim Berners-Lee et al’s data.gov.uk, I thought it’d be timely to say a bit about how we’ll be doing our bit towards publishing online consultation information as Linked Data (Steph Gray has recently blogged on a similar subject).

We’ve built (and are continuing to iteratively improve) Opinion Suite, an open-source online consultation management and creation system designed primarily for local authorities and other governing bodies.  It’s currently being used by Bristol City Council, Sutton Borough Council and a large partnership led by Cumbria County Council, with more rollouts hopefully coming soon.

Through Opinion Suite, organisations can store, organise and publish details of all their consultations – hopefully, exactly the kind of information that it’d be really useful to be able to access from a variety of sources, to include in apps and to run analyses/queries on.

As you probably know, that’s what Linked Data is designed to facilitate; it’s a way of marking up web pages semantically so that software (like browsers, search spiders etc) can understand more about the content and so that it’s easier for citizens to ‘cut and combine’ the information in ways that are relevant to them.  The Government’s into it in a big way: all central government consultations need to include this markup as of the start of 2010 and DirectGov already uses it to pull consultation details into its listings.

We’re currently making a few changes to the code of Opinion Suite so that all consultation details entered using the system are marked up as Linked Data – using RDFa, to be precise.  This means that all consultations inputted into Opinion Suite will include this additional metadata, making the information therein more readily and widely available.  So, for example, DirectGov could pick up all of a local authority’s consultation details and pull them directly into the ‘local consultations’ part of their site, or someone could make an app to compare consultation activity with other data, such as population or earnings surveys.  That’s a lot of potential added value for something that’s really not that hard to do – and it won’t affect the appearance or user experience of Opinion Suite for end users or administrators as the data will be taken from existing fields.

It might also be worth mentioning that this is in addition to the existing RSS functionality built into Opinion Suite – for example, you can create an RSS feed from any search query in Consultation Finder, meaning you can take the content and embed it into a blog or community website.

Basically, we like sharing and we like making the most of data – so we reckon RDFa’s a good thing all round and an easy win in many ways.

Thought Den’s art of Flash game production

Alex Pitkin - January 15th, 2010

Some really good ‘Rules of Production’ from our compatriots at Thought Den in their The art of flash game production (with some baggage bowling fun thrown in) post.

It was written after the Suitcase Skittles development that we did with them last year for IHG in which we all learnt a lot. But that seems to be the case with most Flash game developments…

Team Rubber Devs Twittering

Anthony George - January 11th, 2010

The Team Rubber developers spend a lot of time, love and craft doing what we do. If you want to know more about what we’re doing and how, follow us on twitter.
http://twitter.com/TeamRubberDevs