Hacker News new | past | comments | ask | show | jobs | submit login

I think often people don't put in the extra mile to make things resource efficient or snappy (they may or may not have good reasons not to of course).

It starts with choosing the right algorithms, using an index instead of doing a linear search, minimizing network traffic, ... but sometimes there are just unneccessary sources of slowness.

I was tinkering with a react-native app the other day which shows a map and lets the user click on a building, and then highlights the building and shows some information. There was a noticable delay after clicking which made it not much fun to use. So I spent a couple evenings (hobby time, not company time) to integrate a proper spatial database with a fast spatial index, precache a lot of data, so I didn't have to hit the network. It got snappier, I could query a lot of geometry much faster, but it still felt slow. Then I looked into the source of the libraries, and in some react-native glue code I found that the event handler was waiting after the first tap for a double-tap, and thus would only register the tap after a couple hundred ms. One tiny change and it became blazing fast.

I believe most apps could do most things instantaneously. Google can find any document on the net in a few ms, after all. But of course not everybody has the time and money (or even skills) to polish their apps that much. If the customer will buy your app when it is good enough then why should you put in more work (besides from a personal sense of craftsmanship)?




One day I checked top and noticed that I had a python process was using 60 GB of RAM. Slightly worrying. Turns out I had a jupyter notebook open from a week ago that was casually consuming 60 GB with a huge dict.

So part of the reason may be that developers tend to have access to hardware which isn't representative of a typical user. I probably could've written a more clever algorithm at the time, but why bother for a one-off?


They don't know how, that's the entire problem. Six months in a crappy boot camp doesn't teach you a single thing about computers qua computers. The industry has been suffering with mediocrity for so long, that even today's managers don't know what performant software looks like. But as long as people get paid, nobody cares. It's depressing as all hell.


It is. I'm contracting for a company right now and they have a number of scripts to automate various day to day things. More than once I've taken a look at them and have been able to 100x their speed due to a little common sense. Caching some things, not pulling ALL the data when not needed, precalculate stuff outside of hot loops, etc. Like really basic stuff.

No one cares anymore. I don't get it.


is that app you are playing with for your company? I think it makes perfect sense most people do not want to do free work to make things snappy if the company does not prioritize it on company time




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: