Hacker News new | ask | show | jobs
by jimktrains2 1923 days ago
For some reason I find "only have 500megs of RAM" very amusing. Many/most modern laptops only have 8-16 times more RAM than that. I'm genuinely curious what problems you're working where that "limitation" is your bottleneck and not the processor speed (which at 1GHz is still pretty speedy for many/most tasks other than pure computation (e.g. machine learning training and processing large datasets for statistics)). I'm also assuming you're treating it as a dedicated tool, and not doing tasks while running a DE and web browser at the same time.
3 comments

I think if you require users to bring their own computer, you can be insulated enough from hardware costs to not really care about memory usage, and that's mostly fine. I have worked on set top boxes at an ISP. We designed and manufactured the hardware; if we could get away with 512MB of RAM instead of 1GB of RAM, that was basically pure profit for us. So some attention was paid to memory use, because it had a real dollar cost associated with it. (I guess I'll point out that the engineering samples had a gig of RAM, and someone got the idea to write the UI in Dart running inside Chrome instead of the very legacy Java that we had on the previous hardware generation... so the production models did not ship with 512MB of RAM.)

To some extent, being careful about memory usage is not the only way to make the business work -- you could, after all, charge more for the service or make people buy the CPE outright. But, being an ISP mostly involves getting enough people to buy the service to make it worth digging up a neighborhood to run fiber; you don't want to sour the deal by costing more than the competition with less able CPE. Doubling the RAM available to software engineers may improve the user experience by more than 100%, but nobody picks their ISP for the software than runs on their TV box, so it's probably wise to be careful.

My point here is that some programmers do have to care about memory usage. If you include a computer as part of your product, you will someday be looking at the BOM cost of the bundled computer in an attempt to turn cost into profit.

I’ve found that when working on things like this it’s better to make the engineering samples half HALF the RAM instead of double - it encourages minimalism.
Yeah, that's why I mentioned it. It is hard to commit to cost reduction. The hardware engineers don't want to do a bunch of work, just to have their project fail over 512MB of RAM. The software engineers and PMs will always want more features.

I think the devices are still in the field and being issued to new customers 5+ years later, so maybe it was the right decision.

I didn't say that paying attention to memory use wasn't important. I was more just curious about what kind of task 512MB of RAM is limiting for.
Browsing "modern" websites for one
Ram tends to create issues when you're building stuff locally.

I used ram as an off hand example of something which is limited.

I actually did go out and buy a Raspberry Pi 4 8gb since I want to start processing some machine learning, and the 512 on the Zero won't cut it