Feeds

Student books Vegas trip with Twitter mood detection app

PHP on Azure prize winner

The Power of One eBook: Top reasons to choose HP BladeSystem

Ben Waine, a self described "student ninja” who scooped first prize at the PHP Benelux Azure coding contest on May 21, has announced his victory on Twitter in a fittingly dignified and restrained manner:

“Vegas baby yeeeeeeeaaaaaahhhhh!!!! Thanks to the @PHPAzureContest team who gave advice and support. #dpc11”

But before we head to Sin City to celebrate Waine’s win, let’s back up a step or two.

The brief was straightforward: “Build or migrate an application (that application you always wanted to build) using PHP running on Windows Azure. PHP Benelux proposes you work on a social networking or CMS application but you are free to go as wild as you wish.”

Rather charmingly, participants are also reminded that plagiarism is not allowed.

This is no Facebook-Hackathon-style sprint for a finish line. This is a coding endurance race: registration for the contest closed back in February, and coders were asked to keep a blog, tracking their project’s development.

In keeping with PHP’s free-as-in-speech roots, the winning project is also to be released under a creative commons licence “for the benefit of the community”.

Twitter in the mood

Waine’s app allows users to track not just which topics are trending on twitter, but also the mood associated with the trend.

“There is a clear commercial rationale for this product for companies who wish to answer the question “How are we perceived right now?” Answering this question would help companies quickly respond to emerging trends on this fast paced and influential social network,” he explains on his blog.

For example, Waine’s app could allow marketers to spot it very quickly when Twitter hijacks a marketing hashtag, as happened with Vodafone’s #mademesmile campaign last year.

The campaign coincided with news that the company had been given a generous discount on its tax bill and Twitterers quickly used the hashtag to register their displeasure. The phone company was widely criticised for its naivety; left with egg on its face and negative tweets all over its home page.

Waine explains the app “first assembles a training sample of Tweets using the Twitter Search API and then monitors the search terms using the Twitter Streams API”.

Users enter their search term and let the app gather data, which is plotted as positivity over time.

Line graph tracking twitter sentiment

He explains that in the end, he put more work into the guts of the app rather than the user interface, which is somewhat sparse. Clearly the decision paid off: function over form, every time.

Judges were looking for something that exploited the possibilities of the Azure platform as fully as possible. Before the final, Judge Stefan Koopmanschap told us: “Obviously the more aspects of Windows Azure are used by the application, the better it is in the judging. Judges will also look at originality, code quality and other development best practices.”

Built for Azure

Judges were asked to look for four things:

1. Functional: does the application work and is it scalable on Windows Azure.
2. Technical: is the solution a custom development, difficulty, completeness of the technical solution
3. Challenge level: does the solution include other features of the Windows Azure platform like SQL Azure or Windows Azure Storage 4. Creativity and originality

Koopmanschap told us Waine’s application particularly impressed because it was “not just hosted on Azure but it was built for it”:

“What we liked about Ben's app was that he had written an application that used a big variety of Azure services. Additionally, Ben really documented his path towards getting his application to run by blogging on a regular basis. This was the basis for us deciding Ben was to be the winner of the contest,” he told us, in recovery mode after the conference.

Waine has posted a comprehensive account of his application, and the experience of working on Azure here. He notes SQL Azure was “pretty fantastic” as was the MS support for PHP on Azure. But working on such a new platform had its drawbacks, especially in documentation, which was sometimes thin on the ground.

Go, read. It has graphs and stuff.

And there is more to come. Waine plans to rebuild the fulfilment API into a queue-based-architecture. This would speed things up, he says, as well as creating only one point of contact with Twitter, making the app more scalable. ®

Reducing security risks from open source software

More from The Register

next story
NO MORE ALL CAPS and other pleasures of Visual Studio 14
Unpicking a packed preview that breaks down ASP.NET
Cheer up, Nokia fans. It can start making mobes again in 18 months
The real winner of the Nokia sale is *drumroll* ... Nokia
Mozilla fixes CRITICAL security holes in Firefox, urges v31 upgrade
Misc memory hazards 'could be exploited' - and guess what, one's a Javascript vuln
Put down that Oracle database patch: It could cost $23,000 per CPU
On-by-default INMEMORY tech a boon for developers ... as long as they can afford it
Google shows off new Chrome OS look
Athena springs full-grown from Chromium project's head
Apple: We'll unleash OS X Yosemite beta on the MASSES on 24 July
Starting today, regular fanbois will be guinea pigs, it tells Reg
HIDDEN packet sniffer spy tech in MILLIONS of iPhones, iPads – expert
Don't panic though – Apple's backdoor is not wide open to all, guru tells us
prev story

Whitepapers

Top three mobile application threats
Prevent sensitive data leakage over insecure channels or stolen mobile devices.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
Build a business case: developing custom apps
Learn how to maximize the value of custom applications by accelerating and simplifying their development.