Feeds

Boffins untangle why your software builds fail

Dependency hell by-the-numbers

Providing a secure and efficient Helpdesk

Dependency errors aren't just the bane of Linux users living the configure-make-install life: they also have a significant impact on developer productivity that could be dealt with in the tools developers use.

That's one of the conclusions arising out of a new analysis, carried out by researchers from Hong Kong, the University of Nebraska, and Google (which contributed nine months' of build data from thousands of developers to the study).

With 26 million builds as a dataset, Google is in a better position than most to help work out what lies beneath a failed job, and in this analysis, lead author Hyunmin Seo of the Hong Kong University of Science and Technology and his co-authors conclude that the same dependency hell that any Linux user will know well drives build fails all over the world.

The paper states that in Java builds, dependency errors accounted for about 65 per cent of build failures, and a little over half of C++ builds; type mismatches (“a variable is assigned to an incompatible type or when a function is called with wrong argument types”) caused more than 25 per cent of failed C++ builds and nearly 20 per cent of failed Java builds; with syntax, semantic, and other errors making up the rest of the failed builds.

Most of the time – Vulture South would guess this party depends on a developer's experience – build errors can be resolved fairly quickly, with the paper finding that the median resolution times were 5 minutes (C++) and 12 minutes (Java). However, the resolution time “can vary by an order of magnitude across error kinds”, which has important implications for developer productivity.

Discussing the impact of the kind of error on the fix-time, the authors note: “some compiler errors show a higher median resolution time as they are more difficult to puzzle out (non_virtual_dtor, ovl_no_viable_function_in_init, typecheck_nonviable_condition, or typename_nested_not_found), or else may take time to track down the missing dependency (pp_file_not_found).”

Fixing errors – and improving developer productivity – isn't too steep a demand, the paper finds, since no matter the language, around 10 per cent of error types accounted for 90 per cent of build fails. Hence, “better tools to resolve de-pendency errors have the greatest potential payoff”, the paper states, noting that Google is already briefing its infrastructure organisation on the subject. ®

Secure remote control for conventional and virtual desktops

More from The Register

next story
'Windows 9' LEAK: Microsoft's playing catchup with Linux
Multiple desktops and live tiles in restored Start button star in new vids
Not appy with your Chromebook? Well now it can run Android apps
Google offers beta of tricky OS-inside-OS tech
New 'Cosmos' browser surfs the net by TXT alone
No data plan? No WiFi? No worries ... except sluggish download speed
Greater dev access to iOS 8 will put us AT RISK from HACKERS
Knocking holes in Apple's walled garden could backfire, says securo-chap
NHS grows a NoSQL backbone and rips out its Oracle Spine
Open source? In the government? Ha ha! What, wait ...?
Google extends app refund window to two hours
You now have 120 minutes to finish that game instead of 15
Intel: Hey, enterprises, drop everything and DO HADOOP
Big Data analytics projected to run on more servers than any other app
prev story

Whitepapers

Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.
Saudi Petroleum chooses Tegile storage solution
A storage solution that addresses company growth and performance for business-critical applications of caseware archive and search along with other key operational systems.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.
Providing a secure and efficient Helpdesk
A single remote control platform for user support is be key to providing an efficient helpdesk. Retain full control over the way in which screen and keystroke data is transmitted.