41 Quotes by Bjarne Stroustrup

Bjarne Stroustrup, a Danish computer scientist, is renowned for his creation of the C++ programming language, which has had a profound impact on the field of computer programming. C++ is widely regarded as one of the most powerful and versatile programming languages, offering a combination of low-level control and high-level abstractions. Stroustrup's development of C++ revolutionized the way software is developed, providing programmers with a language that allows for efficient and flexible coding across a wide range of applications. His work has been instrumental in advancing computer science and has paved the way for the development of modern software systems. Beyond his contributions to programming languages, Stroustrup has also made significant contributions to the field of object-oriented programming, writing influential books and serving as a respected academic and researcher. Stroustrup's dedication to creating elegant, efficient, and user-friendly programming tools has had a lasting impact on the software industry, making him a highly respected figure in the field of computer science.

Bjarne Stroustrup Quotes


C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off.

ELEVATE
Free Resource: A step-by-step blueprint to realize your dreams

C++ is designed to allow you to express ideas, but if you don't have ideas or don't have any clue about how to express them, C++ doesn't offer much help.

First, I'd like to see the basic tools such as compilers, debuggers, profilers, database interfaces, GUI builders, CAD tools, and so forth fully support the ISO standard.

After all, C++ isn't a perfect match for Java's design aims either.

There's an old story about the person who wished his computer were as easy to use as his telephone. That wish has come true, since I no longer know how to use my telephone.

When done well, software is invisible.

The first law of computer science: Every problem is solved by yet another indirection.

C++ is my favorite garbage collected language because it generates so little garbage

It's easy to win forgiveness for being wrong; being right is what gets you into real trouble. (Meaning)

The most important single aspect of software development is to be clear about what you are trying to build.

ELEVATE
Free Resource: Over 1000 smart goal ideas to inspire your life

An organisation that treats its programmers as morons will soon have programmers that are willing and able to act like morons only.

Java isn't platform independent; it is a platform

A program that has not been tested does not work.

To many managers, getting rid of the arrogant, undisciplined, over-paid, technology-obsessed, improperly-dressed etc. programmers would appear to be a significant added benefit

How to test?" is a question that cannot be answered in general. "When to test?" however, does have a general answer: as early and as often as possible.

People who passionately want to believe that the world is basically simple react to this with a fury that goes beyond what I consider appropriate for discussing a programming language.

The most fundamental problem in software development is complexity. There is only one basic way of dealing with complexity: divide and conquer

Anybody who comes to you and says he has a perfect language is either naive or a salesman.

If you think it's simple, then you have misunderstood the problem.

ELEVATE
Free Resource: A step-by-step process for healthier social media use

Nobody should call themselves a professional if they only knew one language.

Our civilization depends critically on software, and we have a dangerously low degree of professionalism in the computer fields

Design and programming are human activities; forget that and all is lost.

This evolution may compromise Java's claim of being simpler than C++, but my guess is that the effort will make Java a better language than it is today.

Certainly not every good program is object-oriented, and not every object-oriented program is good.

There are more useful systems developed in languages deemed awful than in languages praised for being beautiful - many more.

Tom [Cargil]s suggestion with a further idea: Propsers of new [C++] features should be required to donate a kidney. That would - Jim [Waldo] pointed out - make people think hard before proposing, and even people without any sense would propose at most two extensions.

Destructors for virtual base classes are executed in the reverse order of their appearance in a depth-first left-to-right traversal of the directed acyclic graph of base classes.

Proof by analogy is fraud.

More good code has been written in languages denounced as "bad'' than in languages proclaimed "wonderful'' - much more.

The standard library saves programmers from having to reinvent the wheel.

Too many managers and executives try to reduce programming to a low-level assembly-line activity. That's inefficient, wasteful, costly in the long run, and inhumane to programmers.

However, when Java is promoted as the sole programming language, its flaws and limitations become serious.

Always think about how a piece of code should be used: good interfaces are the essence of good code. You can hide all kinds of clever and dirty code behind a good interface if you really need such code.

The connection between the language in which we think/program and the problems and solutions we can imagine is very close. For this reason restricting language features with the intent of eliminating programmer errors is at best dangerous.

Most of the programmers in ten years will be us, and we won't get much smarter.

With the increasing importance of standards for system-level objects such as COM and CORBA, it is particularly important that the C++ bindings to those be clean, well documented, and simple to use.

It is my firm belief that all successful languages are grown and not merely designed from first principles

Defining OO as based on the use of class hierarchies and virtual functions is also practical in that it provides some guidance as to where OO is likely to be successful.

There is no one "root of all evil" in software development. Design is hard in many ways. People tend to underestimate the intellectual and practical difficulties involved in building a significant system involving software. It is not and will not be reduced to a simple mechanical "assembly line" process. Creativity, engineering principles, and evolutionary change are needed to create a satisfactory large system.

It is easy to study the rules of overloading and of templates without noticing that together they are one of the keys to elegant and efficient type-safe containers.

Any verbose and tedious solution is error-prone because programmers get bored.

― Bjarne Stroustrup Quotes

Reading is Smart. Applying is Smarter:  Apply
Subscribe on YouTube to get more wisdom:  

Chief Editor

Tal Gur is an author, founder, and impact-driven entrepreneur at heart. After trading his daily grind for a life of his own daring design, he spent a decade pursuing 100 major life goals around the globe. His journey and most recent book, The Art of Fully Living, has led him to found Elevate Society.

 
Actualize Your Potential
Get my simplified process for realizing dreams (The exact process that enabled me to achieve 100 life goals in 10 years)
GET IT FREE:
Access my Start With WHY workbook for free, designed to guide you toward your purpose and the person you are meant to become
expert_advice
Align With Your Why
Elevate In Your Inbox
Get actionable insights, best practices, and wisdom you can apply — No hype, No fluff. Just practical ideas that might change your life.

Read The Art of Fully Living

There's no going back-once you embark on the journey you're meant to live, it's impossible to settle for anything less than your dreams.

Click here to learn more

Set Better Goals

Learn a better and smarter approach to setting and achieving goals. It's not just about what you want to achieve, but who you must become in the process.

Click here to learn more
Take The Free Test
Discover your areas for growth in just 5 minutes. Take the FREE self-evaluation test and pinpoint where to focus your efforts

Uplevel Your Game

Explore The Roadmaps

Access a self-paced online roadmap that turns big goals into realities, complete with daily study guides, actionable steps, and proven practices from the world's best minds
Reclaim your freedom, escape 9-5, and live the life you were meant to live — A self-paced roadmap with daily study guides, actionable steps, and proven practices

Explore The All-Access

Unlock unlimited, lifetime access to a growing library of actionable knowledge and study guides from the world's top minds.
Join The Accelerator
Join a 10-week, personalized immersion that will accelerate your goal-attainment, elevate you to your next level, and turn your big dreams into reality.
Learn More
Contact
Thanks for reading. It makes a difference. A portion of all proceeds from our endeavors supports entrepreneurs in the developing world. View Impact...