Earlier this month, Bjarne Stroustrup, creator of C++, managing director in the technology division of Morgan Stanley, and a visiting professor of computer science at Columbia University in the US sat down with our own David Silver, who leads the C++ Nanodegree Program at Udacity.
The conversation centered on the history and evolution of C++ (celebrating its 40th this year), glimpse into Bjarne’s many published books, and some surprising revelations he shares with the audience.
As a young researcher at Bell Labs, Bjarne wanted to study and build a distributed system. For that, he needed a language that could do low-level things well such as: fast drivers, schedulers, and memory management. And he needed something where he could abstract away from the low-level hardware because he wanted a distributed system. And, he also wanted to use shared memory. Some languages at the time were good at hardware, some were good at abstraction, but there were none
that could do both. So, he built one. And, that is how C++ was born.
“Design and programming are human activities; forget that and all is lost,” reflects Bjarne Stroustrup. “This quote comes from one of the early versions of The C++ Programming Language when I was describing how software is written. Code is written by people and the people are part of organizations. And, if you want good code, you have to organize, educate, and motivate your people in reasonable ways. People have to do good things in good ways so that it actually works.”
Today C++ is widely used by programmers and developers. For example, the signal processing used when recording in phones use C++. A large number of the apps are in C++. Some of the control systems – fuel injection, steering, breaks – could be in C++. Most cameras and communications systems utilize C++. C++ is the language of the self-driving car industry, and an almost mandatory requirement if you want a job working on autonomous vehicles. There are several benefits of using C++ for developing applications and many applications product based developed in this language only because of its features and security.
Without omitting critical details or getting bogged down in technicalities, Stroustrup presents his unique insights into the decisions that shaped C++. Every C++ programmer will benefit from Stroustrup’s explanations of the ‘why’s’ behind the language. You’ll hear first-hand Stroustrup’s resolute philosophy about how a programming language should work and what compromises are necessary to assure its success.