Automatic for the programmer

William Scherlis, on the progress in software development.

William Scherlis is a professor of computer science at Carnegie Mellon University and director of the Institute for Software Research there. He specialises in software assurance, software evolution and technology to support software teams. He has a long association with NASA and the US Department of Defense. Scherlis spoke with Techworld's sister publication Computerworld's Gary Anthes about progress in software development.

The performance of hardware - be it microprocessors, storage systems or networks - has increased exponentially over the years. Why has progress in software been so slow?

Sometimes people think we are at a plateau with software. But I'd like to refute that. It's making enormous strides, and on a pretty steady basis.

It's been 50 years since John Backus, the inventor of Fortran, wrote his seminal paper on "automatic programming" to describe the translation from Fortran to machine code. Why "automatic programming"? Because at the time, Fortran seemed so highly descriptive and problem-oriented. Now the old Fortran seems very low-level and mechanistic. This same cycle has happened in the world of information systems and databases - remember the "automatic programming" promise of (fourth-generation programming languages)?

Fortran and 4GLs were enormous advancements, but with these kinds of advances, our ambitions correspondingly increase. So the commoditisation and standardisation never completely take over - the market drives us to create new value, and so we're improving tools, languages and processes at the top end just as quickly as we "routinise" and automate at the low end. The magic of software is that, because there are no limits of physics, we can keep advancing the technology to meet our ambitions. I call this the "endless value spiral."

What are some more recent advances?

Object-oriented programming was a similar leap forward, and that is manifest in C++ and Java and C#. Object- oriented programming has allowed us to do things that previously we couldn't do, and one of the most important is building software frameworks - application servers, e-commerce frameworks like J2EE and .Net, and the ERP frameworks like SAP's NetWeaver. More recently, there has been a parallel development in an area called functional programming and a language at Microsoft called F#. They have built that into their .Net Framework.

There are also giant-scale programming models for high performance. Google and Yahoo both use the "MapReduce" model to handle parallel processing across multiterabyte data sets, rather than SQL, for example.


What are your views on this subject? Use the form below to post a comment on this article up to 500 characters.


Characters remaining: 500

Related Applications news

Microsoft Office 2010 beta available for download

Developers can get hands on software preview

Microsoft reveals Silverlight update plans

Version 4 to beef up out of browser application support

Microsoft beta to shake up directory services

Developers to bake access control into applications

Salesforce launches own social networking app

Chatter could be 'Facebook for the enterprise'.



Email this article to a friend or colleague:


PLEASE NOTE: Your name is used only to let the recipient know who sent the story, and in case of transmission error. Both your name and the recipient's name and address will not be used for any other purpose.

Techworld White Papers

Database security: Preventing enterprise data leaks at the source

IDC discusses the growing internal threats to business information, the impact of government regulations on the protection of data, and how enterprises must adopt database security best practices...

Download Whitepaper

Service-oriented security

SOA has become an integral part of enterprise software by providing a framework to efficiently develop software as services that is easily sharable, reusable, and integrated. No where is the need more apparent than in the Identity Management space. Welcome to the age of Service-Oriented Security (SOS).

Download Whitepaper

Data protection prospective vendor checklist

Organisations need a way to map business needs against all these challenges in procuring a technical solution. To help, SANS has developed the following Prospective Vendor Checklist.

Download Whitepaper

Unlock the power of the mainframe

This whitepaper presents the notion of CICS as an integration hub based on a component-based, service-oriented architecture supporting Web services. Highlights will review the challenges and contrasted support for Web services natively in CICS.

Download Whitepaper

Techworld UK - Technology - Business

COLT White Paper

Are all VoIP services the same?

Questions to ask your service provider to ensure you get the VoIP service you need
With careful choice of partner, your business can have all the advantages of VoIP access - reduced costs, flexibility and simplicity - without the drawbacks.
This white paper is your guide to ensure you get right the VoIP service and details the pitfalls which businesses would do well to avoid.

Download white paper
BMC

Ride the express lane in the journey to speed ITIL adoption

Explore the challenges in making the journey to ITIL and the criteria for selecting consulting services
By following ITIL practices, your IT organisation will become more closely integrated with the business. We recommend making the journey to ITIL in a sequence of six incremental steps, the phases of which are driven through execution of a strategic transformational roadmap.

Download white paper

Webcast: IT Financial Management: Cost Optimisation for Efficiency and Agility.
On Demand Webcast
Join this webcast to learn about the techniques and technologies that can help you prove the value of IT to the business by understanding the true cost of today's IT services and those that will be necessary to deliver future success.

Register Today

Site Map

IDG Network

* *