Live data from Hacker News

Software Disenchantment (2018)

tonsky.me

111–120 of 504 posts

Re: Software Disenchantment (2018)

#111
post #95
post #67

Earlier quoted context omitted.

Combining these two is only a non-issue with unlimited resources. Otherwise it's a tradeoff if you add constraints like cost, effort, time to market, and so on...

Windows does it. And despite that, versions like win 7 were pretty fast

I'd argue that of any software project on the planet, Windows is the closest to having unlimited resources; especially when you consider the number of Windows customers for whom backwards compatibility is the #1 feature on the box.

And speed isn't the only metric that matters; having both the 32-bit and 64-bit versions of DLLs uses a non-trivial (to some people) amount of disk space, bandwidth, complexity, etc.

Re: Software Disenchantment (2018)

#112
Well complaining about it does not change anything. Support the projects that you believe will help with these problems with $ and things might actually change.

Re: Software Disenchantment (2018)

#113

When I was in school and first leaning about programming I assumed that code written in C or Java would eventually be ported to hand tuned assembler once enough people were using it. Then I got in to the industry and realized that we just keep adding layer after layer until we end up at the point this article talks about. I remember once reading that IBM was going to implement an XML parser in assembler and people we…

> I'm thinking why not train a LSTM to take in http requests and generate the http response?

Why? With responses generated according to what? Are you really just suggesting using neural networks in the compiler's optimiser?

> Then try using a smaller network until something like your registration flow, or a simple content management system was just a bunch of floating point numbers in some matrices saved off to disk.

Why? What's the advantage over just building software?

Re: Software Disenchantment (2018)

#114
post #20

> Would you buy a car if it eats 100 liters per 100 kilometers? How about 1000 liters? I think the analogy here is backwards. The better question is "how much would you prioritize a car that used only 0.05 liters per 100km over one that used 0.5? What about one that used only 0.005L?". I'd say that at that point, other factors like comfort, performance, base price, etc. become (relatively) much more important. If bas…

"Most users," yeah, perhaps.

A UI where each interaction takes several seconds is poor UI design. I do lose most of my time and patience to poor UI design, including needless "improvements" every few iterations that break my workflow and have me relearn the UI.

I find the general state of interaction with the software I use on a daily basis to be piss poor, and over the last 20 or so years I have at best seen zero improvement on average, though if I was less charitable I'd say it has only gone downhill. Applications around the turn of the century were generally responsive, as far as I can remember.

Re: Software Disenchantment (2018)

#115
post #87
post #20

> Would you buy a car if it eats 100 liters per 100 kilometers? How about 1000 liters? I think the analogy here is backwards. The better question is "how much would you prioritize a car that used only 0.05 liters per 100km over one that used 0.5? What about one that used only 0.005L?". I'd say that at that point, other factors like comfort, performance, base price, etc. become (relatively) much more important. If bas…

I dont know, that just feels wrong. If anything, the rise of mobile means there should be more emphasis on speed. All the bloat is because of misguided aesthetics (which all look the same, as if designers move between companies every year, which they do) and fanciness. Can you point to a newish app that is clearly better that its predecessor?

> All the bloat is because of misguided aesthetics (which all look the same, as if designers move between companies every year, which they do) and fanciness

That's not really true. Slack could be just as pretty and a fraction of the weight, if they hadn't used Electron.

Re: Software Disenchantment (2018)

#116
post #10

Everyone is so angry. Isn't this the the world of ubiquitous code and unlimited resources we wanted? Not everything needs to be super efficient. Most things are tuned for production cost and time. Efficient code isn't going anywhere. Relax guys.

> Isn't this the the world of ubiquitous code and unlimited resources we wanted?

I don't really know what this is supposed to mean, it sounds rather poetic and abstract, but I'm quite certain few if any people ever asked for a world where it takes 10+ seconds to open a simple email.

Re: Software Disenchantment (2018)

#117
post #43

I was in Rome recently, and google maps were basically unusable on EDGE (dsepite pre-downloading the area before the trip). We'd wait a minute (or more) for a timetable of a bus stop and a route of the bus to be show on the map. Try planning a route in an unfamiliar area with this slow an UI when you are standing outside and there's no place to sit and rest, and you need to click around on a bunch of stops just to se…

Why were you using EDGE if there’s dense 4G coverage in Rome ?

(not gp) I have T-Mobile service in the USA, and my plan includes free international phone and data, but only at EDGE speeds. I could get a local SIM, but it's rarely worth it if I'm traveling to multiple countries.

Re: Software Disenchantment (2018)

#118
post #72

> Modern text editors have higher latency than 42-year-old Emacs. Text editors! What can be simpler? On each keystroke, all you have to do is update a tiny rectangular region and modern text editors can’t do that in 16ms. It’s a lot of time. A LOT. A 3D game can fill the whole screen with hundreds of thousands (!!!) of polygons in the same 16ms and also process input, recalculate the world and dynamically load/unload…

Gvim and Sublime do this quite well. I haven't looked at the Xi editor mentioned in the article but I would assume it does a decent job or it wouldn't have been mentioned. VScode actually isn't even that bad considering it's Electron based but doesn't quite meet the mark.

Also you're conflating syntax highlighting/auto-competition with time to render an update to an input. You don't need the popout letting you know that 17 source files and 50k lines over it found "TextComplete()" is a valid auto-complete and should be turned blue in order to draw an "x" to the screen in response to a keystroke.

Re: Software Disenchantment (2018)

#119

When I was in school and first leaning about programming I assumed that code written in C or Java would eventually be ported to hand tuned assembler once enough people were using it. Then I got in to the industry and realized that we just keep adding layer after layer until we end up at the point this article talks about. I remember once reading that IBM was going to implement an XML parser in assembler and people we…

> I'm thinking why not train a LSTM to take in http requests and generate the http response? Why? With responses generated according to what? Are you really just suggesting using neural networks in the compiler's optimiser? > Then try using a smaller network until something like your registration flow, or a simple content management system was just a bunch of floating point numbers in some matrices saved off to disk.…

I'm suggesting that you take an existing system and build up a corpus of request/response pairs. Then you use the LSTM to build a prediction model so that given a request it will tell you that the current production system will produce the following sql statement and this http response. Once the LSTM's output is indistinguishable from your current production system , for all use cases, then you replace the production system with the LSTM and a thin layer that can listen on the port, encode/decode the data, and issue sql queries.

Why would I want to do this? I'm not 100% sure ... I think it would be super fast once you got it working. I think it would avoid many security bugs. You wouldn't have to read that "oh drupal 3.x has 20 new security bugs" better go patch our code. I think when I had this idea I was thinking about it terms of a parallel system that could catch hacking by noting when actual http responses diverged too much from the predicted response. The main idea being that for a given input the output really is 100% predictable, assuming your app doesn't use random numbers like in a game or something.

To link this idea to the article, I think things like XML parsers could be written this way .... I can't prove it but I suspect that they would be very fast and not come with all the baggage that the article complains about.

I started thinking along these lines after reading stuff like this https://medium.com/@karpathy/software-2-0-a64152b37c35

Post reply on HN