Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Laya the open source version of Jev(convaiinnovations.com ↗)
    142comments
  2. A graphical desktop for the ZX Spectrum(github.com/mindbox77 ↗)
    50comments
  3. AI-generated posters don’t have to be horrible(john.hartnup.uk ↗)
    459comments
  4. Human brain is two separate organs, Stanford Medicine-led research finds(stanford.edu ↗)
    181comments
  5. Tin: full-text search for Postgres(planetscale.com ↗)
    43comments
  6. Supabase (YC S20) Is Hiring for OrioleDB(supabase.link ↗)
    discuss
  7. Asking Authors About Their Own Papers(medium.com/tmlrorg ↗)
    37comments
  8. “The Secret Life of Circuits” is here(coredump.cx ↗)
    51comments
  9. Black Holes or Black Hole Stars? Astronomers Spar over 'Little Red Dots'(quantamagazine.org ↗)
    14comments
  10. Android 17 is the first since 3.x to add new APIs without releasing to the AOSP(grapheneos.social ↗)
    552comments
  11. I built the fastest PHP webserver in the world(qbixserver.com ↗)
    30comments
  12. San Francisco Onion Futures Company(onionfutures.com ↗)
    117comments
  13. New evidence for hidden chambers beyond Tutankhamun's tomb(nature.com ↗)
    5comments
  14. GPT-6 Astra Solves a WWI German Radio Cipher(prinzai.com ↗)
    132comments
  15. If math is more than proof, we need to better celebrate the rest of it(terrytao.wordpress.com ↗)
    193comments
  16. Agreement between the USA and Denmark (1951,2004) [pdf](state.gov ↗)
    17comments
  17. What Zig felt like, coming from Rust(besok.github.io ↗)
    108comments
  18. Cloudflare Quick Tunnels(cloudflare.com ↗)
    301comments
  19. How to Write with an LLM(sockpuppet.org ↗)
    360comments
  20. You can run Git on object storage if you re-make packfiles(tigrisdata.com ↗)
    24comments
  21. Communication by means of modulated Johnson noise(pnas.org ↗)
    18comments
  22. Saving another 100TB of RAM(cloudflare.com ↗)
    89comments
  23. SDCC – Small Device C Compiler(sourceforge.net ↗)
    23comments
  24. Ray Ozzie and the Optimism of Being Early(reproof.app ↗)
    11comments
  25. Science Is Open Software(jepedersen.dk ↗)
    51comments
  26. Why building a Rust LSP is hard(rust-glancer.github.io ↗)
    44comments
  27. The first new cat species discovered in 100 years(nationalgeographic.com ↗)
    122comments
  28. Ctenophores: Wonders of Biology(quantamagazine.org ↗)
    7comments
  29. OpenJev(openjev.com ↗)
    280comments
  30. From Stonemasons to Carpenters(thelastsoftwareengineer.substack.com ↗)
    4comments

Masterminds of Programming: Conversations with the Creators of Major Programming Languages

43 pointsby 17y agooreilly.com
28 comments
17y agoHN ↗

or Ruby. Some of the smartest hackers now use Ruby.

17y agoHN ↗

And no Scheme (Guy Steel is perhaps the broadest language designer there is).

It's perhaps to do with who had time/was willing to have a conversation.

17y agoHN ↗

I've worked on many interview projects before; it's always about who has time and interest to have a conversation.

17y agoHN ↗

I suspect that success with creating a language depends a lot on the ego and personality of the creator. The network effects, the community, the culture, the shared wealth of libraries and code all have as big an impact on success as technical excellence of the language itself.

I might be downmodded for this, but I suspect that Python is a success in large part because Guido has big cohones! (Especially when it comes to saying no to people smarter than him.)

(Note, this comes from a long time Smalltalker.)

17y agoHN ↗

Agreed. Of course, talking to the creator of Lisp would be tricky.

I wonder why Javascript was not included. It is the native language of the largest and most relevant software platform in the world.

17y agoHN ↗

> Of course, talking to the creator of Lisp would be tricky.

Huh, McCarthy lives according to Wikipedia. Doesn't he give interviews?

17y agoHN ↗

Hint: Some people believe Lisp was a discovery, not an invention.

17y agoHN ↗

Saw this late, but anyway...

You can make a good argument about lambda-notation and Lisp, etc. BUT people talk about creators of types of mathematics. Newton and Leibniz developed calculus, etc. (Maybe sloppy, but a common colloquialism.)

17y agoHN ↗

I saw Grady Booch give a presentation at SIGSCE one year -- actually a very interesting guy and a dynamic speaker. He said a quote that has stuck with me since: "Hardware eventually fails. Software eventually works."

17y agoHN ↗

Theres often more interesting stuff to be said about why something failed than about a language that is mainstream designed by committee and compromise.

17y agoHN ↗

I don't think it's fair to say UML itself failed. We did get to a point where to see a project modeled in UML gives you a strong desire to turn and run (and this is usually the correct thing to do), but it's more to do with abuse and stupid users who don't even make the difference between modeling the behavior and modeling the implementation.

17y agoHN ↗

Don't get me wrong, UML needs some serious change. However, there is some value in the process and thought that goes into creating the UML diagrams for projects, especially larger, more complex projects. I find that it helps me better visualize what I'm making and spot problem areas before they become real problems.

17y agoHN ↗

Good luck getting the reader to complete the book when you start with C++.

17y agoHN ↗

From a brief examination (my university has a subscription to Safari Books--one of my favorite parts of being a college student), this book seems like it lacks direction.

As much as it's useful to read a detailed account of what Chuck Moore was thinking when he created Forth, or chuckle as Tom Love takes pot shots at Bjarne Stroustrup [1], I really don't see a cohesive message across the whole work. Obviously, this won't be a problem for many people, but really, as many of these stories are already all over the web, I'm not sure how much original value this work is providing.

[1]Tom Love (co-creator of Objective-C): There's the successful direction, and then there's the approach that Bjarne took with C++. In one case, it was a small, simple—dare I say, elegant—programming language that was very crisp and well defined. In the other case it was a pretty ugly, complicated, difficult language that had some really troublesome features. I think those are the distinctions between the two.

17y agoHN ↗

The issues addressed in the table of contents appeal to me; but I expect you're right, that there would only be cohesiveness within each section, not between them.

BTW: I've heard good things about Objective-C. Any idea why it was not successful outside Apple? Was it because of Apple's proprietary approach?

17y agoHN ↗

As far as I can tell (as an amateur mac developer), the major advantage Objective-C has on the mac over other platforms is the extensive support that Cocoa [1], Apple's giant grouping of APIs/Frameworks/etc, lends. It's so helpful, in fact, that many Mac developers refer to programming in Objective-C as "Cocoa Programming" (also, it's the title of the best programming book I've ever read [2]).

[1]http://developer.apple.com/cocoa/

[2]http://www.amazon.com/gp/product/0321503619

17y agoHN ↗

Sounds like it's branded/positioned as "Cocoa"... and possibly support is lacking on other platforms (I guess you mean libraries - they're crucial for language success).

17y agoHN ↗

more so in objective-c which is really a simple language.

the framework is everything.

17y agoHN ↗

Which languages to cover is an interesting question in this day and age. Should a book like this strive for completeness, or should it exclude topics that are well-treated elsewhere? I doubt they got any new stuff out of Bjarne Stroustrop, Guido, or Larry Wall. The images of Java and C# are professionally managed, so talking to their creators seems likely to produce the same old party lines. I'll definitely buy it for the other chapters, though.

17y agoHN ↗

From the interview with Tom Love, co-designer of Objective-C:

"Does productivity depend more on the quality of the programmer or the characteristics of the programming language?

Tom: The effect of individual differences will far outweigh any effect of the programming language. Studies from the 1970s show for programmers with the same educational background and same number of years' experience, the number was 26:1 individual differences. I don't think anybody claims that their programming language is 26 times better than somebody else's."

I wonder what others think of this, especially in light of Lisp vs. blub debates?

17y agoHN ↗

It's mostly true. But it also means programming languages attract certain kinds of programmers, a language that fits their individual differences. The reason I moved to Lisp is simple. I was tired of syntax. I was tired of the language straight jacket. I'm always surprised that these things never bother other programmers. It surprises me even more that programmers tediously compare the features of their language when any non-trivial program means a large API (that is a language on top of another language). Once you realize that, who really cares about language features? What you want is something malleable. You want something that can program the program. You want (as has been said elsewhere) a language for growing languages. Instead of wasting time learning about each language's arcane meta programming facilities- learn how to write macros, and you can have all the meta programming facilities you'll ever need. But this doesn't seem to interest most programmers, I guess that's part of the individual difference thing.

17y agoHN ↗

O'Reilly has come up with some decent books recently, including The Productive Programmer and Beautiful Architecture. They don't seems to have got much attention.

17y agoHN ↗

Interesting claim that "language designer" == "mastermind." Being great at designing notation for algorithms (which is what languages really are) is conceptually distinct from what most people think of as being a good programmer. It so happens that some language designers have found themselves in that place by virtue of being great programmers (the example that jumps to mind is Dennis Ritchie), but the two coincide less and less often as the field matures, and languages become less of a "systems" problem. At least in academia, the programming language people are perhaps the least likely to ever have to write a line of code in anger.

This gap between coming up with neat notation and the resources need for a world-beating implementation of a language is one of the tragedies of the "dictator-for-life" that has arisen for the "developer productivity" languages (perl, python, ruby...) The language equates in practice with the particular implementation that the designer banged out and maintains. The presence of this reference implementation strangles other implementations in the crib, because users know that libraries, .deb's, new language features, etc., will appear first in the dictator's implementation. Thus, we have datacenters full of nice fast CPUs that spend their lives executing Joe's-favorite-language's switch-on-bytecode VM loop, when they could be running a compiled implementation with more sensible resource usage.