Select your localized edition:

Close ×

More Ways to Connect

Discover one of our 28 local entrepreneurial communities »

Be the first to know as we launch in new countries and markets around the globe.

Interested in bringing MIT Technology Review to your local market?

MIT Technology ReviewMIT Technology Review - logo

 

Now Available: Innovators Under 35 2013 See The 2013 List »

Credit: Coverity

Seth Hallem, 28

Deconstructing software to find bugs

Coverity

PROBLEM: Programmers, despite their best efforts, make errors, any one of which could cause a system to crash or admit an attacker. Although automated test programs have improved software, major bugs still slip through, costing businesses and governments billions of dollars each year.

SOLUTION: As a graduate student at Stanford, Seth Hallem perfected an improved approach to finding bugs, called static analysis. Where ordinary test software runs a program and hopes to stumble on errors, static analysis breaks it into pieces that perform discrete functions, such as "add the results of lines 42 to 47." The computer determines what each piece does and then simulates how various functions might interact, looking for problematic combinations.

Previous attempts at static analysis were either too simplistic to find important bugs or too comprehensive to ever finish the job. Hallem developed algorithms to weed out redundant analysis and examine only the most important combinations, allowing millions of lines of code to be examined quickly and effectively. He cofounded Coverity in San Francisco to apply the technology commercially. More than 450 customers, including Raytheon and Yahoo, use Coverity's tools to vet their software. --Neil Savage

2008 TR35 Winners

Blaise Agüera y Arcas

Building immersive 3-D environments

Dries Buytaert (video)

Simple, flexible Web publishing

Jenova Chen (video)

Gaming with the flow

Tanzeem Choudhury (video)

Inferring social networks automatically

Jack Dorsey (video)

Personal updates made simple

Stefanus Du Toit (video)

Programming for parallel processors

Seth Hallem

Deconstructing software to find bugs

Xian-Sheng Hua

Enhancing video search

Sundar Iyer

Making memory at Internet speed

Farinaz Koushanfar

Locking microchips to prevent piracy

Johnny Lee (video)

Streamlining human-computer interactions

Meredith Ringel Morris (video)

Searching websites jointly

Andrew Ng

Building household robots

Adam Smith (video)

Making sense of e-mail madness

JB Straubel (video)

Engineering electric sports cars

Eric Wilhelm (video)

Putting DIY projects online

Robert Wood (video)

Building robotic flies

Advertisement

More Innovators Under 35: