10 ms·
Three things for the next 100 years of Computer Science
- 082349872349872 4y agoHow about some interesting new theories of Computer Science, so we have something more than plug-and-chugging cottage-type-systems to do with these theorem provers?
- weakfortress 4y agoIt would be nice to see theoretical computer science pushed forward again. I'm certainly tired of every other paper being some spin on the same old ML nonsense. Make Computer Science Computer Science again.
- AndyMcConachie 4y agoCS like other disciplines will be dominated by the climate change fallout for the next 100 years. One thing I think about is that for the entire history of computing there have always been more programmers this year than the last. The number of programmers on the planet has always been increasing. What happens when that trend reverses? Better yet, what happens when the number of people who are capable of writing software plummets quickly due to a mass extinction event? What kinds of systems will the survivors design and implement? How will the relationship between development and maintenance change in this new world?
- rightbyte 4y agoLess JS then I guess? More static pages? Save the planet with uBlock ome ad at a time. (I am not sarcastic here BTW).
- thesuperbigfrog 4y ago>> What kinds of systems will the survivors design and implement? How will the relationship between development and maintenance change in this new world? https://www.destroyallsoftware.com/talks/the-birth-and-death-of-javascript https://www.destroyallsoftware.com/talks/the-birth-and-death...
- dinkumthinkum 4y agoMass extinction? Being so hyperbolic about climate change doesn’t persuade people to your viewpoint, it encourages the opposite.
- weakfortress 4y agoI found Al Gore's HN account everyone. Climate alarmists have predicted 200 of the last 0 extinction events. I won't hold my breath. The greatest threat to developers is outsourcing not ice ages.
- MontyCarloHall 4y agoThese all sound like things that are plausible within the next 10 years, not 100. In 100 years, I expect programming languages will be mostly obsolete, since computers will be able to translate natural language into machine instructions with 100% effectiveness.
- eterps 4y agoHow would you prevent errors?
- MontyCarloHall 4y agoThe same way an engineering manager prevents errors when telling a very talented individual contributor what to code. If a natural language statement is ambiguous, the computer (AKA talented IC) would ask you to clarify it. Unlike the IC, however, the computer would always be aware of things like time complexity, edge cases, etc. of the code it writes, and could alert the user accordingly.
- AstixAndBelix 4y agoAfter more than 50 years, programmers of all skill levels still make the same mistakes. I wouldn't bet any of this stuff will become mainstream in 10 years. The tech has to mature to a level where it's as easy to create an ironclad function as it is to make something in Scratch.
- 082349872349872 4y agoPeople who think we've made serious qualitative advances in debugging would do well to reread H.H. Goldstine's and J. von Neumann's thoughts on the topic from 1947. What we have done well is to quantitatively scale so that we're applying the classical debugging techniques to Big Balls of Mud, and not just a few lines of assembly. (the record among my colleagues was writing, then fixing, 3 bugs in a single line of assembly)
- ben_w 4y ago
- jll29 4y agoIt took 50 years to be able to print (from dot matrix to laser printers that stopping jamming) and things are still far from perfect. So I don't assume programmers to be redundant anytime soon (just last week, I recommended a student "software engineer or undertaker" as safe jobs from which to choose). It's interesting to make such a list, but the 3 item seem to be a bit arbitrary - what about user interfaces, for example?
- AstixAndBelix 4y agoOf course they're arbitrary, they're just 3 things out of the thousands that will happen. You can share your ideas too!
- netfortius 4y agoNext 100 years? What about fixing this [1] in the next 50? [1] https://news.ycombinator.com/item?id=34146054 https://news.ycombinator.com/item?id=34146054
- tgv 4y agoA nitpick from someone who can't be bothered to write a better UX?
- cokeandpepsi 4y agoi don't know what to tell you don't use a shitty web-browser?
- netfortius 4y agoIt's not only about safari, if you get the thread reference, i.e. the issue is not confined to browser design only. Happens at times/sites with kiwi, FF, brave, chrome, adblock browser & samsung internet.
- khaledh 4y agoComputers were invented in the 1940s. We're only about 80 years out from that period and look where we are now: a worldwide network of computing devices from tiny watches to planet-scale clouds. In 100 years I expect there will be a fundamental shift in how computing is done. I don't know what that will look like, but it will be nothing like what we know today.
- nonethewiser 4y agoWidespread brain implants. Which might entail what is effectively telepathy among other weird shit that seems impossible. I'm not confident that will be the case. But its plausible from a technical standpoint. On a far shorter timeline than 100 years.
- deleted 4y ago[deleted]
- tgv 4y agoNot telepathy: you wouldn't even know how to define it. "Sub"-vocal communication over radio is totally feasible, though.
- Mistletoe 4y agoOutside of neuralink fantasy PR, is it really possible to interface a computer with the brain like that? I feel like we don’t have the slightest clue how the brain works and then I don’t see how we could ever make electronics interface with synapses in a way that makes you see video, audio, etc. It seems I’m not alone and Noam Chomsky feels the same. https://www.inverse.com/article/32395-elon-musk-neuralink-noam-chomsky/ https://www.inverse.com/article/32395-elon-musk-neuralink-no...
- dsr_ 4y agoIt's a gap in understanding, and it may be a gigantic gap. Such gaps sometimes get closed by monumental efforts, sometimes by small groups, and sometimes they take centuries.
- 4y ago
- stephc_int13 4y agoWe might see the limits of Moore's Law in the coming decades. I hope that will translate in hardware standardization and stability, as this is probably the best thing that could happen to software engineering.
- ben_w 4y ago"Might"? Hmm, I guess it depends how you phrase the law. For feature size, either we will hit it within a decade or we go subatomic. For $ cost per transistor or J cost per operation, those may continue significantly longer.
- zozbot234 4y agoMoore's law is still going strong at the trailing edge of fabrication. Leading-edge nodes are getting more and more expensive though, which is the exact opposite to what Moore's Law would predict.
- deleted 4y ago[deleted]
- als0 4y agoIs Ada SPARK a realistic option today or do I need to be an academic? Is the total cost of learning Ada and SPARK greater than learning Rust or Frama-C?
- thesuperbigfrog 4y agoAda SPARK is a realistic option today: https://learn.adacore.com/courses/intro-to-spark/index.html https://learn.adacore.com/courses/intro-to-spark/index.html >> Is the total cost of learning Ada and SPARK greater than learning Rust or Frama-C? It is a comparable amount of effort.
- skrtskrt 4y agoI want non-physical-media HCI, just for my work as an engineer. I have always thought that mouse, keyboard, and screens are quite a tedious and uncomfortable way to interact with a computer, and god knows how many health problems sitting at a computer for decades contributes to. I’d love to be programming laying in a park without being limited by not having a large monitor and quality keyboard/mouse.
- thedorkknight 4y agoConsidering the unintended and unforseen side effects of health that our current interfaces have had on our bodies and minds, I'm way more freaked out by the possibilities of what could go wrong sticking a direct I/O device into my head
- jfzoid 4y agoWhen I was in high school I used to dream about sticking high speed ethernet ports into my skull (because reading on a screen was too slow, plus this was the 80s and we though Neuromancer was really going to happen) Now I realize 1. I don't want buggy hardware in my head 2. I don't want to go to the surgeon ("wetdoc" or whatever the Cyberpunk RPG called it) every time a new model comes out
- luxuryballs 4y agoI always felt the exact same way and thought there will eventually be some interface I can wear on my fingers and “type” anywhere, laying down, standing up, etc. but now I’m thinking it won’t be a hardware change at all but more like a hardware elimination: ie, as long as I can speak and the computer can hear me we will be able to build software anywhere. I will be able to develop software faster as I can start prototyping and testing things while I’m still in the midst of writing them on paper, I can have unit tests churning out automatically while I’m still “white boarding” or whatever it will be called then. I just imagine an AI assistant that can be one step ahead of me and make me able to work so much smarter and more efficiently but also eliminate almost all boilerplate and tedious editing and code organization and greatly reduce code rot as the code base will be “self arranging” and refactors automatic.
- deleted 4y ago[deleted]
- college_physics 4y ago100 years is a lot of time. Will the material substrate of computing still be silicon (e.g., how about quantum computing - overhyped as of today but surely not over the very long term) Another branch that might eventually become something of a science might be massively parallel computing?
- slfnflctd 4y agoThose are both great questions, and there is plenty of other terrific speculation in this thread, but one thing I haven't seen yet is the word "collapse". In 100 years, it's possible the only computing being done will be of the biological sort, by far smaller and more resilient life forms than humanity. Even if we survive, the seemingly inexorable progression of technology may take a back seat to survival, and we could easily be struggling just to maintain functionality of devices we no longer have the ability to manufacture. I suppose I should temper the doom & gloom a bit by mentioning that I think we still have several chances to squeak out a pathway to avoid massive and violent die-offs, but that window is certainly narrowing and we aren't doing nearly enough. Hundreds of millions of climate refugees (or more) are going to disrupt pretty much everything if we don't start planning what to do with them now.
- dinkumthinkum 4y agoClimate change is a very important issue but when we make loose claims or imply the earth will be a hellscape with few or no surviving humans in one generation, it only emboldens those that think the real issues are hyperventilating nonsense.
- college_physics 4y agoIts a 50/50 chance we avoid collapse but there is nothing to do but condition on the positive scenario. We already have plenty of hints how dystopic tech looks like. In the positive scenario tech becomes a significant enabler of sustaibility. I don't think we need major computer science breakthroughs for this to happen though. Its purely a human moral, behavioral, economic and political challenge.
- glitchc 4y agoOptical computing, where the base unit is a photon instead of an electron, is the future of all computing. Once optical computing becomes a reality, we will look fondly upon our quaint silicon devices. Optical computers capable of measuring interactions of single photons will eventually lead to quantum computing in all things. Likely, quantum computing will be a dedicated core/unit in a heterogeneous optical computing architecture, as linear operations are still need to manage I/O, memory and peripherals (displays and what not).
- ta988 4y agoIt is more than likely that the devices will be photonic and electronic at the same time. A lot of things are much more efficient to do with electrons and electrical fields in lower frequency range than the photons ones.
- TechnicolorByte 4y agoAny examples for either case?
- dinkumthinkum 4y agoThis doesn’t sound like quantum computing at all.
- fooker 4y agoThere is a fundamental reason why this might not work out. We might be getting close to information theoretic and thermodynamic limits of computers with modern transistors. For example, photons don’t help if it’s theoretically impossible to dissipate heat any faster.
- pharmakom 4y agoWe make proofs so that we can be confident something is true. But what happens when the proofs get so large that no human can practically check them? What happens when the proofs are also generated by an ANN? I wonder if this stuff around proof languages will seem totally misguided in the long run.
- jwolfe 4y agoIf you're confident about your proof checker being correct, then why would you not be confident about the validity of a proof that your proof checker says is correct?
- fallat 4y agoThey're not even touching that but it's possible. The issue is you can still write proofs that appear correct, but really, they aren't.
- valenterry 4y agoThere were already cases where proofs were considered true and then later flaws where found that rendered them invalid. I think the answer is quite simple: if something happens that contradicts the proof then a lot of resources will be used to doublecheck the proof and ensure its correctness and it will just be accepted that proofs are not always 100% valid.
- fallat 4y agoExactly this. Already we have this issue with typed languages today. Proof languages will be welcomed but we must apply discipline as we do today with type heavy languages.
- nimonian 4y agoIdeally, we would prove the theorem that any proof the software produces must be correct.
- bawolff 4y ago> But what happens when the proofs get so large that no human can practically check them The 4 colour theorem says hello from 1976. Ultimately though proofs are not just about being confident something is true, its usually also about why something is true.
- ugjka 4y agoHopefully the default keyboard layout won't be QWERTY anymore
- pkoird 4y agoIt's fairly easy to learn, already universal, and there is no incentive at all for 99% of people to change it (only a fraction of the population would ever want the super fast typing, rest of us have to think hard and type few). I suspect that it'll stay around unless a new form of input device that directly interfaces with human mind is created.
- defanor 4y ago> only a fraction of the population would ever want the super fast typing I think the primary motivation for using non-qwerty layouts is comfort, not speed. Though perhaps it only really becomes relevant once one actually learns the layout (touch typing, with all the fingers), and AFAICT not a large fraction of people does that, even with qwerty.
- pwinnski 4y agoWhy do you would it ever change, in 100 or 1000 years?
- lesuorac 4y agoI could see it go to ABCDE... just to help people hunt and peck better.
- revskill 4y agoI think you're describing unit test.
- josephd79 4y agoSkynet
- walnutclosefarm 4y agoIn the author's defense, he only says "3 things," not "the most important or significant 3 things." Still, this seems like an agenda for maybe 20 years, not one for 100. To me, if you're really look out even to the end of this century (which would double the amount of time humanity has been seriously evolving digital computing technology), the big change is likely to be that innovation in ideas, technology, and technique will shift from human minds to digital intelligences. I don't think that means a full-on Kurzweillian singularity, but I think we've basically just landed on the near shore of the generative intelligence continent, and there is way more to come. Think about it this way: in 80 years, we've evolved raw computation power in a single installation from 500 or so FLOPS, to the petaFLOP range - a factor of over 10^12. So, let's be modest and scale down our expectations, and try to imagine what generative intelligence that is 100 times (not 1 trillion) as capable as, say, AlphaZero is, might do. I'm sure I can't actually imagine the results, but I do predict it will shift the balance of innovative "thinking" from human minds to digital intelligences.
- walnutclosefarm 4y agoOne very specific thought about the author's three ambitions: I really wonder about homomorphic encryption as a foundation for data science. It seems to me that any really good homomorphic encryption creates a dual space for a data set, so that anything discoverable in the original is equally preserved, and at least in theory, discoverable, from the encrypted dual. If your homomorphic encryption doesn't create a true dual space, then how do we trust the insights it is capable of developing as being either valid, or complete?
- graycat 4y ago100 years? First, how 'bout 100 years ago, i.e., back to 1923? Telephone: By 1915 in the US we had long distance telephone coast to coast. Cars: The cars of 1923 were not so bad -- had tops, doors, glass windows, electric lights, rubber tires filled with air, a rear axle differential, .... https://en.wikipedia.org/wiki/Category:Cars_introduced_in_1923 https://en.wikipedia.org/wiki/Category:Cars_introduced_in_19... Airplanes: The Wright Brothers were at Kitty Hawk in 1915, and airplanes were important in WWI. https://en.wikipedia.org/wiki/Kitty_Hawk https://en.wikipedia.org/wiki/Kitty_Hawk Physics: By 1923 we had explained the photoelectric effect (one of the foundations of quantum mechanics) and both special and general relativity (1915), https://en.wikipedia.org/wiki/General_relativity https://en.wikipedia.org/wiki/General_relativity The Schrödinger equation was on the way, published in 1926, https://en.wikipedia.org/wiki/Schr%C3%B6dinger_equation https://en.wikipedia.org/wiki/Schr%C3%B6dinger_equation From the past, one possible lesson is that progress is enabled or constrained by fundamentals. So for the next 100 years, what are some of the likely important fundamentals?
- GMoromisato 4y agoHere's six things for the next 100 years: 1. A visual programming language. In 2122 you'll be able to use 2D or 3D space for your program, not just a 1D character stream. 2. A natural language programming language. In 2122 you will no longer have to learn to program. 3. A simple parallel programming language. In 2122 a program for 1,000 cores is as easy as a single-threaded program. 4. A universal optimizing compiler. In 2122, all languages will be as fast as machine code. 5. A 1000x lossless compression algorithm. In 2122 diskspace and bandwidth are no longer constraints on anything. 6. A solution to the "Mythical Man Month" problem. In 2122, adding more programmers to a project will actually make it go faster. We've been dreaming about these "breakthroughs" ever since the beginning. They are no more likely to happen in 2122 than perpetual motion or the philosopher's stone.
- zirgs 4y agoVisual programming languages already exist.
- bawolff 4y agoThe breakthrough would be making one that professional programmers actually like.
- captaincaveman 4y agoyeah it could use something like pictorial writing, lets call it hieroglyphics or better still a logogram language where each symbol means a thing like Chinese, hmm or maybe we could create an alphabet of characters where on there own they don't mean anything but with a simple small set we could combine create as many words as we want and we could program with ... half joking I don't really know much about languages, I just don't see how a graphical programming model would be better than a text based one in expressiveness or compactness?
- bawolff 4y agoPeople have tried that with APL actually. But yeah, i tend to doubt as well, but i still think its an interesting direction for programming language research.
- civilized 4y agoHomomorphic encryption is extremely inefficient. Is there any reason to believe this will improve enough for it to be widely used?
- bawolff 4y agoIn 100 years? Yeah there is plenty of reason to think its possible that much of the overhead would be gone. Anything can happen in 100 years, and even in the near term lots of progress is being made (albeit we are still far off from practicality) The more fundamental limit is probably that you can't do lots of the tricks that make normal programs efficient. You can't exit early or have data dependent branches.
- blippage 4y ago"intuitive and feature rich formal verification frameworks for the major programming languages" I doubt that such things are really possible. I see two problems: 1. computers in general don't have domain knowledge, so they can't really say what "correct" means; 2. computers don't have a conceptual model of what it is a human is trying to do, so they can't determine if that way is correct. I thought about this when I was playing with microcontrollers. There are all sorts of bizarre flags and ways and means of configuring and controlling a peripheral. If there was only one correct way of doing things, then it wouldn't make much sense to give such fine-grained control. In one particular case I was writing to a peripheral. Normally one would block processing until the transfer was complete. However, I needed the operation to be done frequently, and blocking would have consumed much-needed computing cycles. My solution was to simply write to the peripheral. I knew that it would be complete by the time I made the next transfer. Well, the thing is, a checker just can't reason in that way. It takes a human to do that. Humans can of course be wrong, and often are, but thems the breaks. Formal checking may be able to establish a few things, but as a general exercise, there is no more chance of some kind of AI proving your program to be right as there is of solving the halting problem.
- jschveibinz 4y agoAll opinion, but worth considering: It is probable, based solely on the rate of technological change, that the concepts of engineering, computing, programming, etc. will be historical by the middle of this century. Electronic engineering was the dominant technology trade in the late 80’s. Within 20 years, computer programming became the dominant technology trade. With AI advances, programming by humans will all but disappear and this field will be replaced by “cognitive architects” that build artificial intelligence systems and solutions. After that, who knows?
- ternaus 4y agoLooking at the slow, but consistent pace of the Generated Imagery I assume and hope that there will be a new step in personalization of the services. Right now Google, YouTube, StackOverflow, PornHub, Netflix perform search in the database. But imagine, that you ask for something on Netflix and a whole movie will be generated for you. We can see glimpses of this in ChatGPT vs Google, and I hope that this direction will grow to the mature phase.
- j2kun 4y ago2122 for Homomorphic Encryption?? I'm working on it right now! I hope it's ready in the next ten years.
- de_keyboard 4y agoWill we care about proofs and type-systems once we have AI systems that reliably answer questions like "does this code do X?" and "under what conditions does this code violate invariant Y?"
- slmjkdbtl 4y agoI hope macos can get rid of .DS_Store in 100 years