Software and research: the Institute's Blog

What makes good code good? A digital social research view

Latest version published on 7 October, 2016.

By Mike Jackson.

Last week, we ran a sustainability training workshop for Digital Social Research, where we asked "what makes good code good?". The attendees, who were research programmers and software developers, put together a list of necessary qualities, which we've copied here.

Good code should... Correct. Code must be correct and it should also be possible to demonstrate that it's correct, e.g. through provision of associated tests or mathematical models of requirements.   Well-designed. Code should be modular with well-defined interfaces, inputs and…

How BIG is big data?

Latest version published on 7 October, 2016.

By Chris Morris, STFC.

GenBank now contains 100000000000 base pairs. That's big, in the sense each similarity search visits every record, and there are millions of searches a day. But it's not BIG, in the sense that it fits on one disk, and only takes 200s to transfer at 1Gb/s.

An electron microscope tomography image may contain 8 billion pixels. That's big, in the sense that the noise reduction algorithms take polynomial time in image size. But it fits on a USB stick. The data stream from LHC is big; but most of it is of no significance. But it can be reduced to a one-…

Ask Steve! - Testing questions about testing

Latest version published on 30 September, 2016.

Today’s post comes courtesy of Mike Jackson, also from the Software Sustainability Institute. If the Institute was the Dukes of Hazzard television show, with Steve as Bo Duke, then Mike Jackson would surely be Luke Duke.  In this post, Mike answers a testing question about testing frameworks in Python.

Software testing is a vital part of software development. It not only allows us to demonstrate that our software satisfies…

I am not a light bulb!

Latest version published on 6 October, 2016.

By Simon Hettrick.

Most people turn apoplectic when faced with someone who “thinks outside the box” or attempts to harvest “low hanging fruit”. And rightfully so. We’ve learned to vilify management speak, because it’s wasteful and verbose, but what about its visual equivalent? It’s time that we start saying “NO!” to meaningless images.

The world of software is a grim place if you need an image for a website. This is down to a fundamental problem: you can’t see software. This leads a lot of people to think “you can see computers!”. But there’s only so many times that you can…

How to successfully attract equity investment

Latest version published on 7 October, 2016.

By Anthony Clarke, Director, Angel Capital Group and member of ACCESS-ICT.

Out of the vast range of R&D projects supported by the EU, only a small number successfully attract external finance to commercialise their results and capitalise on the original EU investment. This means that many potentially very exciting, new technologies never get to the market place - and never get to the equity community. On behalf of the European Investment community, I am delighted to present a new guide that will enable entrepreneurs and research teams to become investment ready.

A…

Celery - not to be sniffed at!

Latest version published on 7 October, 2016.

By Mike Jackson.

As part of our work with the particle physicists of the MAUS project, I was tasked with extending their data analysis software to use a distributed task queue. The intent is that data analysis tasks be farmed off to worker nodes to be executed in parallel. MAUS recommended using Celery - an asynchronous task queue based on distributed message passing and implemented in Python. I set about my task with some trepidation, and dreading battles with Linux RPMs and building open-source projects from their source code (which…

Is Open Government Data ROARing into life?

Latest version published on 7 October, 2016.

By Ramine Tinati, Web and Internet Science, University of Southampton

Software sustainability is, more often than not, seen to be limited to the development and maintenance of platforms, software systems and applications. But sustainability can encompass much more, especially when dealing with new and developing activities on the Web. In the WAIS group, we are using a new platform, called ROAR, to examine the sustainability of Open Government Data. We have shown that some governments are champions of open data, while others show less of an interest.

Over recent years,…

GeoTOD-II at All Hands 2011 and Semantic Web 2011

Latest version published on 7 October, 2016.

The GeoTOD-II project developed a customisable, open-source framework to support linked data interfaces to relational, web service and linked location data resources. The linked data interfaces implement UK Government guidelines on URIs for location data. GeoTOD-II was developed by STFC e-Science under funding by OMII-UK and the Software Sustainability Institute provided consultancy on their use of the OGSA-DAI data management framework.

Two presentations on GeoTOD-II have been given at major UK and international conferences - the UK e-Science All Hands Meeting 2011 (AHM) and…

Body scanning and patterned socks

Latest version published on 7 October, 2016.

By Simon Choppin, a Software Sustainability Agent, (seen here having his feet scanned with the aid of patterned socks).

The Swiss city of Lugano borders Italy, lies on the shores of a crystal clear Lake of the same name and is surrounded by spectacular mountains. The high quality of life, low taxes and agreeable weather has convinced international celebrities and world class athletes to relocate to this Alpine idyll. On the 25-26 of October I briefly joined them, but it wasn’t the weather, lifestyle or even interesting cheeses which attracted me, but the 2nd International…

Ten hints for testing Eclipse plug-ins

Latest version published on 7 October, 2016.

By Adrian Mouat, EPCC.

Testing Eclipse plug-ins isn’t the straightforward walk-in-the-park you might be hoping for. For me, it’s been a marathon in a maze full of dead-ends. In the hope that I can spare you some of my pain, here are ten hints for anyone embarking on a similar journey:

As you probably know, you can use Run As to run code as a JUnit Plug-in Test. This creates a new workbench instance for running the tests, which means you can use the Eclipse Platform API within your tests. You have a large degree of control over the launched workbench,…