The Problem With Software

Why Smart Engineers Write Bad Code

Nonfiction, Computers, Programming, Software Development, General Computing, Science & Nature, Technology
Cover of the book The Problem With Software by Adam Barr, The MIT Press
View on Amazon View on AbeBooks View on Kobo View on B.Depository View on eBay View on Walmart
Author: Adam Barr ISBN: 9780262348218
Publisher: The MIT Press Publication: September 28, 2018
Imprint: The MIT Press Language: English
Author: Adam Barr
ISBN: 9780262348218
Publisher: The MIT Press
Publication: September 28, 2018
Imprint: The MIT Press
Language: English

An industry insider explains why there is so much bad software—and why academia doesn't teach programmers what industry wants them to know.

Why is software so prone to bugs? So vulnerable to viruses? Why are software products so often delayed, or even canceled? Is software development really hard, or are software developers just not that good at it? In The Problem with Software, Adam Barr examines the proliferation of bad software, explains what causes it, and offers some suggestions on how to improve the situation.

For one thing, Barr points out, academia doesn't teach programmers what they actually need to know to do their jobs: how to work in a team to create code that works reliably and can be maintained by somebody other than the original authors. As the size and complexity of commercial software have grown, the gap between academic computer science and industry has widened. It's an open secret that there is little engineering in software engineering, which continues to rely not on codified scientific knowledge but on intuition and experience.

Barr, who worked as a programmer for more than twenty years, describes how the industry has evolved, from the era of mainframes and Fortran to today's embrace of the cloud. He explains bugs and why software has so many of them, and why today's interconnected computers offer fertile ground for viruses and worms. The difference between good and bad software can be a single line of code, and Barr includes code to illustrate the consequences of seemingly inconsequential choices by programmers. Looking to the future, Barr writes that the best prospect for improving software engineering is the move to the cloud. When software is a service and not a product, companies will have more incentive to make it good rather than “good enough to ship."

View on Amazon View on AbeBooks View on Kobo View on B.Depository View on eBay View on Walmart

An industry insider explains why there is so much bad software—and why academia doesn't teach programmers what industry wants them to know.

Why is software so prone to bugs? So vulnerable to viruses? Why are software products so often delayed, or even canceled? Is software development really hard, or are software developers just not that good at it? In The Problem with Software, Adam Barr examines the proliferation of bad software, explains what causes it, and offers some suggestions on how to improve the situation.

For one thing, Barr points out, academia doesn't teach programmers what they actually need to know to do their jobs: how to work in a team to create code that works reliably and can be maintained by somebody other than the original authors. As the size and complexity of commercial software have grown, the gap between academic computer science and industry has widened. It's an open secret that there is little engineering in software engineering, which continues to rely not on codified scientific knowledge but on intuition and experience.

Barr, who worked as a programmer for more than twenty years, describes how the industry has evolved, from the era of mainframes and Fortran to today's embrace of the cloud. He explains bugs and why software has so many of them, and why today's interconnected computers offer fertile ground for viruses and worms. The difference between good and bad software can be a single line of code, and Barr includes code to illustrate the consequences of seemingly inconsequential choices by programmers. Looking to the future, Barr writes that the best prospect for improving software engineering is the move to the cloud. When software is a service and not a product, companies will have more incentive to make it good rather than “good enough to ship."

More books from The MIT Press

Cover of the book The Body Populace by Adam Barr
Cover of the book Transit-Oriented Displacement or Community Dividends? by Adam Barr
Cover of the book Changing Minds Changing Tools by Adam Barr
Cover of the book Why We Cooperate by Adam Barr
Cover of the book Panpsychism in the West by Adam Barr
Cover of the book Divine Games by Adam Barr
Cover of the book Taken for Grantedness by Adam Barr
Cover of the book Artificial Unintelligence by Adam Barr
Cover of the book Hume's Problem Solved by Adam Barr
Cover of the book The Heart of the Brain by Adam Barr
Cover of the book Stuck in the Shallow End by Adam Barr
Cover of the book Humanity Enhanced by Adam Barr
Cover of the book The Evolving Animal Orchestra by Adam Barr
Cover of the book Why Nuclear Disarmament Matters by Adam Barr
Cover of the book Laws, Outlaws, and Terrorists by Adam Barr
We use our own "cookies" and third party cookies to improve services and to see statistical information. By using this website, you agree to our Privacy Policy