May Tech Meetup - Orbited, Acceptance Testing and the AMI Project
In the May Tech Meetup we had talks from Oli Kingshott on Orbited, Paul Wilson on Acceptance Testing and Mike Lincoln on the AMI project.
“The Internet is a Mess”
Oli Kingshott on Orbited - Watch Video
Oli came in to give a talk about real time web interaction and how orbited can help, starting with a brief background into the birth of the internet.
In 1989 Tim Berners Lee invented hypercards which worked over TCP/IP, 2 years later came up with the first HTML tags. While server-side frameworks to publish HTML have developed a lot on the client side not much has changed in 20 years, the web is still primarily links between static content looking very similar to the original hypercards.
People today are using more and more real time interaction on the internet, from forums to twitter and facebook chat, along with collaborative tools and news sites. However the technologies employed to make these work havent yet matured.
Oli went on to explain the different ways in which real time interaction is currently implemented: Plugins(Java Applets, Flash, Activex), or Comet Techniques (invisible iframes, long polling, xmlhttprequest).
Plugins can often have security and cross platform problems, along with being proprietary, while comet techniques support and stability vary wildy across browsers.
W3C have recently announced the web standard for real time communication in the form of WebSockets, WebSockets are a layer on top of TCP which means you cant connect to existing TCP servers, but work in a similiar way, while all browsers should eventually implement this standard, it may take a few years before it is available.
As Oli explained: Orbited allows a pretty clean way of developing real time interactive web application now, it abstracts all the current comet techniques and gracefully degrades depending on your situation, developers can code for the WebSocket protocol now knowing that their code will not need to be rewrittern when it is implemented.
"Show Dont Tell"
Paul Wilson on Acceptance Testing - Watch Video
Paul Wilson started the night giving everyone a quick introduction to acceptance testing.
Acceptance testing is the process of specifying an applications functionality by examples, and then executing tests against the examples. The tests are generated by the customer/client in a domain specific language which is then transformed into an executable test.
As Paul explained acceptance testing does not replace functional testing, system and unit tests will still be required, instead it is a way of allowing the customer specify and document the functionality in their own language, this helps developers understand the problem domain and exactly what the client actually requires.
Paul also introduced Cucumber which is a Ruby framework that has gained traction recently helping highlight the benefits of acceptance testing, he also gave a little history with the FIT library that was commonly used before Cucumber.
Mike Lincoln on the AMI project
Watch Video Mike gave a talk on the AMI(Augmented Multi-Party Interaction) project which is a consortium of universities, research groups and companies that are looking at how technology can aid human to human interactions such as meetings.
He kicked off straight away with a demo of a meeting browser tool they have developed, the tool analyses audio and video recordings of a meeting and produces a browser that can be used to view and search the meeting in several ways once if has finished (for archival purposes, or for someone who was unable to attend).
First shown was the ability to view speakers in a timeline, you can view when each person was talking and for how long. This helps when you only want to find out what certain people have said (such as your boss).
The tool also does voice recognition and produces a searchable transcripts of a meeting so people can search directly for keywords that were discussed and view only those segments without having to watch entire meetings. The transcript tool also automatically generates topic segmentations so you can see how a meeting conversation when from topic to topic and only look at the topics of interest.
Mike then went on to talk about the current work with real time speech recognition they are doing, by analysing speech in real time they can produce a meeting helper that prompts with information from the internet and previous meetings, that are related to what people are currently talking about.
During Q&A people discussed the ability to use this tool against the huge library of online videos, as it gives the ability to perform much more advanced searches to online video than what is currently available. They have some pretty cool technology to show off, it will be interesting to see where it goes.