TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Bjarne Stroustrup Quotes

172 pointsby asymmetricover 1 year ago

22 comments

chubotover 1 year ago
<i>Language design is a curious mixture of grand ideas and fiddly details</i><p>I hadn&#x27;t heard this last one before, but it&#x27;s SO right ...<p>I always wondered why JS and PHP and Perl got so many details &quot;wrong&quot; (e.g. with Perl, one definition of &quot;wrong&quot; is that Perl 6 &#x2F; Raku didn&#x27;t make the same design choice)<p>Turns out there&#x27;s an avalanche of details, and they interact in many ways!<p>Python did better, but I strongly argue both Python 3 and Python 2 got strings wrong. (Array of code points isn&#x27;t generally useful, and it&#x27;s hard to implement efficiently. See fish shell discussion about wchar_t on the front page now; also see Guile Scheme)<p>OCaml seems to have gotten mutable strings wrong (for some time), and also I think the split between regular sum types and GADTs is awkward. And also most people argue that objects vs. records vs. modules is suboptimal. And a bunch of mistakes with syntactic consistency, apparently.<p>Looks like almost every language had problems with for loops and closures, including C# and Go - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=37575204">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=37575204</a><p>So basically I agree that plowing through all the details -- and really observing their consequences in real programs -- is more important and time-consuming than grand ideas.<p>But if you lack any grand ideas, then the language will probably turn out poorly too. And you probably won&#x27;t have any reason to finish it.
评论 #38430364 未加载
评论 #38425370 未加载
评论 #38425697 未加载
评论 #38430603 未加载
smarksover 1 year ago
“C++ is a language, not a religion.”<p>I swear Stroustrup said this at the beginning of his EE380 (CS Colloquium) talk at Stanford around 1986. At the time we (grad students) were all C programmers and we were sure that C was the best language evar, at least, better than Pascal, which was the language Stanford used for teaching back then. So we all wanted to see this person who had the temerity to claim that he had improved C and who had the audacity to call it “C++” of all things! Skilling Auditorium was packed. When Stroustrup took the stage, a tense hush fell over the crowd. He said the above line fairly quietly, and everyone burst out laughing, breaking the tension. The rest of the talk was a pretty straightforward explanation of C++ 1.0, and I came away fairly impressed.<p>Several years later at another talk I asked him to inscribe my copy of the C++ book with that quote. He claimed not to remember it, but he inscribed the book per my request anyway.<p>I think the quote holds up well.
评论 #38431991 未加载
devjabover 1 year ago
“The problem with many professors is that their previous occupation was student”<p>This one is one of the more impactful on our industry in my opinion. I have a “side gig” as an external examiner, which means that every half year I get to sit through examinations on topics that I know most of the students will never ever have to use. And that’s the best case for much of it, the worst case is all the stuff they’re going to need to unlearn to actually become good programmers in a world where much of the academic programming that is taught today is the same I learned more than 20 years ago. Like a heavy use on technology based architecture, like separating your controllers and your models into two directories… Fine when you have two or three, not so fine when you have 9 million. I’m still impressed with how hard it’s been for domain driven architecture and a focus on actual business logic to make its way into academia when it’s literally always going to be how the students are expected to work in my area of the world. The same goes for much of the OOP principles, like code-share which has been considered an anti-pattern around here for the better part of a decade. Not because the theory is wrong, but because it just never works out well over a period of several years and multiple developers extending and changing the shared code.<p>I’m honestly not sure how we can change it though. Because most of the people who govern the processes are exactly students who’ve become professors, and if I had gone that route myself, I’d probably also be teaching the flawed lessons I was taught those 20+ years ago. Hell, I would’ve still taught them a few years into my career as it wasn’t until I “stuck around” or got to work on long running projects it became apparent just how wrong those theories were in practice. Again, not because the theories are wrong but because they are never applied as intended because the world is so much less perfect than what is required for the theories to actually work. You’re not going to be at your best on a Thursday afternoon after a sleepless week of baby watching and being slightly sick, but you’re still going to write code and someone is going to approve it.
评论 #38430859 未加载
default-kramerover 1 year ago
I don&#x27;t remember the exact quote, but I saw a talk where he said something like &quot;People want big&#x2F;verbose&#x2F;explicit syntax for the languages features they don&#x27;t understand, and small&#x2F;terse&#x2F;implicit syntax for the language features do understand.&quot; It made me realize that many of my language design opinions at that time were a matter of personal preference.
评论 #38434159 未加载
评论 #38429025 未加载
shrubbleover 1 year ago
&quot;The official mascot for C++ is an obese, diseased rat named Keith, whose hind leg is missing because it was blown off. The above image is a contemporary version drawn by Richard Stallman.&quot;<p>I have been unable to determine the provenance of this quote. Source and image: <a href="https:&#x2F;&#x2F;ifunny.co&#x2F;picture&#x2F;history-the-official-mascot-for-c-is-an-obese-diseased-Yy6zDtEU9" rel="nofollow noreferrer">https:&#x2F;&#x2F;ifunny.co&#x2F;picture&#x2F;history-the-official-mascot-for-c-...</a>
评论 #38427016 未加载
jll29over 1 year ago
&quot;We didn&#x27;t have time for that.&quot; (Bjarne Stroustrup, before an invited talk, Cambridge Computer Lab)<p>(in response to my complaint to him that hastables again hadn&#x27;t been included in the most recent standard at the time.)
评论 #38426254 未加载
lmedinasover 1 year ago
&quot;There are only two kinds of languages: the ones people complain about and the ones nobody uses&quot;.<p>He is right on this one. Pretty much in every discussion about Programming Languages people write how good Rust is and complain about how bad C++ is but the reality is, C++ it&#x27;s one of the most used languages in the world.<p>This quote could be a very harsh reply to Rust vs C++.
评论 #38426319 未加载
评论 #38425992 未加载
评论 #38425974 未加载
评论 #38427429 未加载
评论 #38429044 未加载
评论 #38426423 未加载
评论 #38426926 未加载
评论 #38430567 未加载
rramadassover 1 year ago
A few of my favourites;<p>&gt; <i>An organization that treats its programmers as morons will soon have programmers that are willing and able to act like morons only</i>.<p>In a broader sense what it implies is that companies should not make a Programmer&#x27;s job onerous (in any dimension) to the point that the &quot;joy&quot; is gone from the doing of the activity itself. Thus Reports&#x2F;Meetings&#x2F;Processes&#x2F;Testing&#x2F;etc. should all be modulated&#x2F;balanced based on needs&#x2F;project and not because it is the latest fad. Managers should really really heed this.<p>&gt; <i>Far too often, &#x27;software engineering&#x27; is neither engineering nor about software</i><p>This is a follow-on from the above.<p>&gt; <i>Any problem in computer science can be solved with another layer of indirection.</i><p>I have also heard this attributed to Andy Koenig.<p>&gt; <i>My ideal of program design is to represent the concepts of the application domain directly in code. That way, if you understand the application domain, you understand the code and vice versa.</i><p>This is how i learnt the techniques of designing in C++ from the early days i.e. from &quot;Barton and Nackman&#x27;s Scientific and Engineering C++&quot; and &quot;James Coplien&#x27;s Multi-paradigm design for C++&quot;. This is fundamental to problem-solving itself and hence in any job it is of utmost importance to understand the domain i.e. Why and What is being done rather than the How.<p>&gt; <i>Legacy code&#x27; often differs from its suggested alternative by actually working and scaling.</i><p>Very very true. This is why i dismiss people who come in and start saying &quot;everything must be rewritten&quot; without spending time studying and learning about the existing system.
jlaroccoover 1 year ago
Section 10.7 of &quot;The Design and Evolution of C++&quot; has some good ones from the early 90s:<p>&quot;When (not if) garbage collection becomes available, we will have two ways of writing C++ programs.&quot;<p>&quot;I suspect that a garbage collection scheme can be concocted that will work with (almost) every legal C++ program, but work even better when no unsafe operations are used.&quot;<p>&quot;I am under no illusion that building an acceptable garbage collection mechanism for C++ will be easy - I just don&#x27;t think it is impossible. Consequently, given the number of people looking at the problem several solutions will soon emerge.&quot;
评论 #38426217 未加载
评论 #38426115 未加载
mike_hockover 1 year ago
&gt; &quot;When (not if) automatic garbage collection becomes part of C++, it will be optional&quot;<p>Technically, his prediction (the implied inevitability of GC) came true, in practice, it did not.<p>Optional GC was added, never implemented, never used, and removed again.
评论 #38429516 未加载
CSMastermindover 1 year ago
Programming -- Principles and Practice Using C++ is one of the few must-read programming books in my opinion.<p>Even if you&#x27;re a C++ expert, have 20 years in industry, etc. it&#x27;s still an amazing example of beautiful technical writing.
getpostover 1 year ago
I&#x27;ll see you Bjarne Stroustrup, and raise you Alan Kay,<p>&quot;Actually I made up the term &quot;object-oriented&quot;, and I can tell you I did not have C++ in mind.&quot;<p><a href="https:&#x2F;&#x2F;en.wikiquote.org&#x2F;wiki&#x2F;Alan_Kay" rel="nofollow noreferrer">https:&#x2F;&#x2F;en.wikiquote.org&#x2F;wiki&#x2F;Alan_Kay</a>
评论 #38425947 未加载
评论 #38428495 未加载
评论 #38426599 未加载
评论 #38426055 未加载
评论 #38437642 未加载
zabzonkover 1 year ago
C++ is my favourite programming language precisely because one of its main designers is so sensible.
评论 #38425204 未加载
评论 #38425093 未加载
Dudester230602over 1 year ago
Let&#x27;s also not forget this: <a href="https:&#x2F;&#x2F;harmful.cat-v.org&#x2F;software&#x2F;c++&#x2F;I_did_it_for_you_all" rel="nofollow noreferrer">https:&#x2F;&#x2F;harmful.cat-v.org&#x2F;software&#x2F;c++&#x2F;I_did_it_for_you_all</a>
评论 #38425256 未加载
评论 #38425152 未加载
fuzztesterover 1 year ago
Shooting yourself in the foot in various programming languages.<p><a href="http:&#x2F;&#x2F;www.toodarkpark.org&#x2F;computers&#x2F;humor&#x2F;shoot-self-in-foot.html" rel="nofollow noreferrer">http:&#x2F;&#x2F;www.toodarkpark.org&#x2F;computers&#x2F;humor&#x2F;shoot-self-in-foo...</a>
评论 #38429027 未加载
closetkantianover 1 year ago
&quot;Nobody should call themselves a professional if they only know one language&quot;.<p>Presumably he means programming language, but this may apply more generally.
评论 #38430580 未加载
amadeuspagelover 1 year ago
&gt; &quot;There are only two kinds of languages: the ones people complain about and the ones nobody uses&quot;. Yes. Again, I very much doubt that the sentiment is original. Of course, all &quot;there are only two&quot; quotes have to be taken with a grain of salt.<p>True for many things. There are only two kinds of companies: the ones people complain about and the ones with no market power.
rob74over 1 year ago
&gt; &quot;<i>People who think they know everything really annoy those of us who know we don&#x27;t</i>&quot;<p>I have read some of these quotes before, but not this one. Very true, especially for designing programming languages (where many people think they&#x27;re experts), but not only...
actinium226over 1 year ago
&gt; &quot;Java is to JavaScript as ham is to hamster&quot;. No. Never. Nothing even close to that. I try hard not to be rude about other languages.<p>To be fair, it&#x27;s not exactly a rude statement.
bobmaxupover 1 year ago
bjarne stroustrup, underrated hero of many facets of society, imo
uwagarover 1 year ago
kinda reminds me of a page on stallman.org that tells potential hosts what stallman likes and dont likes...if only i could find that link....hmmm..
zubairqover 1 year ago
So many brilliant quotes here, thanks for posting