4 ms·
>Everything in software development has already been invented. People just keep rediscovering it and pretending they invented it. Whatever you think is so cool
by CodeArtisan 8y ago
>Everything in software development has already been invented. People just keep rediscovering it and pretending they invented it. Whatever you think is so cool and new, was copied from Smalltalk, or HAKMEM, or Ivan Sutherland, or Douglas Engelbart, or early IBM, or maybe Bell Labs.
That's like saying programming language theory stopped 20 years ago and all the conferences and papers on the subject since then are fraud.
http://www.sigplan.org/Conferences/ http://www.sigplan.org/Conferences/
- nindalf 8y agoDismissively claiming "meh, all of this is old hat" makes OP sound wise, but it doesn't stand up to closer scrutiny. Of course all new languages owe a great deal of debt to what came before, and that's exactly what you'd expect. The vast majority of ideas that humans come up with owe a great deal to previous ideas. We copy, remix, extract the essence, infuse with some inspiration and voila, new idea! Take Rust for example. It has several cool features, many of which are copied from other languages. Only an idiot would sit on the sidelines and say "oh what's so great about a package manager like cargo, Ruby has had that for a decade". A smarter person would realise that this is exactly how great ideas spread, and what's important is the combination of ideas and features that the language chooses. For Rust it's zero-cost abstractions, a good package manager, no data races, generics and sum types. Maybe this is the exact combination that's perfect for your use case. I'm no Rust fanboy either, I just chose it because it's the newest one I could think of. I'm sure I could make a similarly strong case for many other popular languages.
- mercer 8y agoWhile it's hyperbole, I think the more charitable interpretation is that a lot of 'new stuff' is really just rediscovering 'old stuff', and this should be a impetus to study the old stuff to find some pearls. Obviously there's plenty of new stuff that is properly new, especially in a field as young as CS. But there's also a ton of stuff that just keeps being rediscovered. Looking back instead of stumbling upon the same idea eventually can give a programmer a huge advantage.
- pjmlp 8y agoNo, but there is a certain truth to it. Android JIT and UWP deployments can be traced back to how mainframes work, specially IBM z and IBM i ones. IDEs although quite powerful, still lack several common features from Xerox PARC research. A good example is how Flutter gets sold to developers. What would the audience think if the same examples would be shown using Smalltalk, Common Lisp/Interlisp-D/Dylan instead? LLVM is great development, specially in what it was brought to the table to C and C++. Yet reading the PL/8 research compiler for IBM RISC does sound quite familiar to how LLVM was designed. Everyone is now running containers on their laptops, well so were IBM and Unisys on their mainframes. Now we have the cloud and browser as UIs, when I started working professionally we had MS-DOS terminals with Clipper applications connected to Novell Netware servers. So yes, there is lot of important work being done, but most of the time it does feel we are doing circles.
- munchbunny 8y agoReminds me of the parable of Chesterton's Fence: https://ldsmag.com/the-parable-of-chestertons-fence/ https://ldsmag.com/the-parable-of-chestertons-fence/ Specifically, it's important to remember that, while the new idea may share its fundamental underpinnings with an older idea, the older idea also did/didn't work for specific reasons. Sometimes the "new" idea is actually the "old" idea with the big problems fixed, in which case I'd say there's a good chance the new version makes it further.