Bench Press

The Crossroads of Science and Tech

Making Coding Fun Again

without comments

frustratedIf you’re like me, and you’ve spent endless hours programming in front of your compute , you’d agree with me that sometimes it’s not the funnest thing to do. While the finished product might be really cool, getting there is oftentimes tedious, frustrating, and hair-splitting. What usually causes these problems is that coders get bogged down with the details due to the fact that certain blocks of code require unavoidably intricate and detailed logic. However, with the new EU-funded research project, ReDSeeDS, Michal Smialek and his team of researchers hope to lighten the burden for all coders and make coding enjoyable again.

What Smialek and his team discovered was that since most coders start from scratch when beginning a project, these programmers often need to code entire programs from the ground up despite the fact that other people have probably previously coded programs which accomplished similar tasks. As a result, programmers often re-write code simply because working on a project usually means starting from a blank screen. In order to avoid this, Smialek aims to create a repository which will house previously written code stored with a list of the program’s aims and requirements. Thus, when a user searches this database with a query of requirements, the database will return previously written code that is expected to produce similar outputs. These functionally equivalent snippets of code are called “artefacts,” and Smialek’s database is essentially a library of artefacts.

In a project, you may produce several artefacts which are design blueprints and then an artefact which is the code that tells the system how to work. The final program is also an artefact which is served by the other artefacts – that is the design and the code.

While most programs obviously will not completely overlap in terms of requirements, the fact that most programmers will not need to “re-invent the wheel” will greatly enhance productivity and allow them to not get so bogged down with the details. Not only does this allow for a more rapid rate of software releases, it vastly decreases the amount of time needed to fix problems within the code simply because the code within the database will be (we’d like to hope) error-free. Smialek notes that:

What it will do as a commercial product is to reduce considerably the amount of work required to develop a new software application, and that means the ability to develop more and larger systems using the same human resources.

(Image Credit)

Written by Kevin

December 7th, 2009 at 7:00 am

Posted in Uncategorized