3 ms·
This is how I feel about computers today. They're a mess. The fragmentation of hardware, operating systems, apps, websites, programming languages and frameworks
by miguelrochefort 8y ago
This is how I feel about computers today. They're a mess. The fragmentation of hardware, operating systems, apps, websites, programming languages and frameworks is horrible.
I frequently ask people how they feel about the current state of software. Most people think it's fine, they don't have a problem with it. They can't imagine how else it could be. This drives me mad.
I have 100 apps on my phone. None of them talk to each other. Every new appliance, restaurant and event has its own app. These 100 apps will quickly turn into 1000. Clearly, the application paradigm doesn't scale. Where is it going to end?
We're still emulating the physical world in software. File systems are still trees. Programming is still done with text. Paragraphs are still copy-pasted, rather than dynamically embedded. We barely made any progress since that radio interview. Xanadu is still vaporware.
What will it take for a software revolution to take place?
- sverige 8y agoAI is going to invent that revolutionary software, but unfortunately you and I won't understand it or be able to manipulate it. Be careful what you wish for.
- miguelrochefort 8y agoIs it coming soon? I'm not sure I can wait 5 more years.
- sverige 8y agoOh, well, probably not 5 years. More like 20 years away for human-level AI, according to everyone I've read since the 80s. Fusion power will be coming online right around then, too, so that's good. And the true value of the blockchain will finally be evident in about 20 years, too. Which is really good, because that's around the time we are likely to discover the secrets of immortality.
- calebh 8y agoImo gradient descent is not going to get us to general AI. I'm a programming languages theory person, and I also know a fair bit about machine learning. The current problem with neural networks is that they suck at processing variable length data, and they have problems with remembering the past. Programs can be represented by trees, graphs, or text. Deep learning isn't great at dealing with graphs or trees, and it's not that good at text either. The other issue is that deep learning works great for recognizing common patterns, but it sucks when faced with novel situations. So I don't think that we're going to have programs that program anytime soon. The first applications of AI to programming will probably be with programming assistants or with AI guided proof solvers. Programmer productivity will improve, but we're not going to see everyone losing their jobs.
- nmca 8y agoThe latter of those two points is much more valid than the former. You're comment about generalisation difficulty is pretty accurate, but as for "sucks at variable length data", I think neural machine translation [0] and the fact that schemes including RNNs just won M4 [1] indicate that this is incorrect. Your point about remembering the past is true (it's hard), but people are actively working on it. Unitary neural nets, and the fast/slow weight paradigm are very different angles that seem promising. As for handling trees + graphs, this actually works very well. Thomas Kipf is pushing this area forward, GATs [2] are a nice random example of how dominant differentiable programming (eg NNs) can be in this area. Unfortunately these graph approaches don't parallelise as nicely on GPUs as CNNs. Your predictions (assistants) seem likely to me. [0] https://arxiv.org/abs/1804.09849 https://arxiv.org/abs/1804.09849 [1] https://www.m4.unic.ac.cy https://www.m4.unic.ac.cy [2] https://arxiv.org/abs/1710.10903 https://arxiv.org/abs/1710.10903
- bachbach 8y agoSomething like Urbit probably. Those sorts of ideas sound improbable - it's hard to say whether it takes 10 years or even a different civilization. The Romans never managed to pass land reforms. The Chinese tech sector has gotten around some of it with the assistance of the government - there's glimpses of a different possible future but without full stack revolution it's hard to imagine new types of institutions being created. I'm really not sure Silicon Valley is able to pivot out of the tar pit it has itself created. The closest sign of real progress would be if somebody did something that destroyed a ton of Silicon Valley jobs. I know people think here: AI. I don't think so - as of yet I haven't seen any evidence for autonomous executive complex coordination. It's possible for a machine to do it - that I believe - but it doesn't follow that computers are going to be the machines that do that.
- mrkstu 8y agoOLE embedding and OpenDoc utterly failing has been one of my great frustrations in the computer field. I should be able to have a universal document format with intelligent encapsulated data that I can manipulate in flexible ways. Excel is almost there as a standalone island, but I should be able to embed Excel's intelligence in all my documents.
- rsync 8y ago"OLE embedding and OpenDoc utterly failing has been one of my great frustrations in the computer field. I should be able to have a universal document format with intelligent encapsulated data that I can manipulate in flexible ways." I think we have had this in the form of the UNIX shell environment and various command line primitives like cat/awk/sed/grep/wc/strings. It isn't sexy and it certainly isn't a WIMP[1] paradigm like Windows (which I associate exclusively with OLE) but if you can work with ASCII text (and you should...) then I think you have that environment and those abilities. [1] https://en.wikipedia.org/wiki/WIMP_(computing) https://en.wikipedia.org/wiki/WIMP_(computing)
- perl4ever 8y agoI'm not saying that paradigm isn't useful, but it seems like you're saying 70s technology is still good enough. But shouldn't we have come up with some improvement in the last 40 years? Really, all we've done is regained the abilities of big computers from long ago in modern microcomputers. I was just playing around with Selenium, and it was neat what you could do with it, but it was kind of depressing that it is basically a project to do for one application (or group of applications) what people used to have a vision for doing with all applications back in the 1990s (with AppleScript for instance). We keep redoing things we've done before in slightly different ways, scaling down the grand visions and retrying parts of them.