There are text editors now that take up 10-20MB just sitting idle with nothing open. That's inexcusable. It's not even that nobody hand-optimizes software anymore, hardly anybody even designs for efficiency on any level these days.
You think it's inexcusable, but you have a rather extreme point of view.
If you work in software development and aren't lucky enough to work for a billionaire that is as obsessed with efficiency as you are then you'll end up having to make tough choices.
After you follow these choices here:
[URL]http://en.wikipedia.org/wiki/Project_management_triangle[/COLOR][/URL]
"You are given the options of
Fast,
Good and
Cheap, and told to pick any two. Here
Fast refers to the time required to deliver the product,
Good is the quality of the final product, and
Cheap refers to the total cost of designing and building the product. This triangle reflects the fact that the three properties of a project are interrelated, and it is not possible to optimize all three – one will always suffer. In other words you have three options:
- Design something quickly and to a high standard, but then it will not be cheap.
- Design something quickly and cheaply, but it will not be of high quality.
- Design something with high quality and cheaply, but it will take a long time."
Which compromise would you make?
If you pick throwing money at it, then there is no guarantee that your product will ever recoup the money. Plus you run into Brook's law (
http://en.wikipedia.org/wiki/Brooks's_law).
So you could decide to take longer but then as your project rolls on not making money, ram is actually getting cheaper & cheaper all the time. You're going to have to charge more and users will ask you to justify it. The software runs in 100mb you'll say, they will answer: but my phone has 100gb of ram in it & I've been running your competitors cheaper software that uses 1gb of ram for the last year.
Good is something you'll have to compromise on. Unfortuntaly design decisions made at the start of the project are often unfixable by the end. This is usually worse on software you've tried to optimise, object oriented code is often easier to change but it comes with a higher performance penalty to start with. I've worked on a project that moved from C to C++ and while some things got slower there was also alot of things that became faster.
Some people go the open source route as without a boss you can spend as much time as you like writing the software. But this is only a short term fix. It will only work while there are people that grew up with being obsessed about efficiency spending their free time to write the software. They need a job to pay the bills & open source software doesn't generate money for software developers. The only money is in web sites and scripting, which isn't the type of job that an optimisation junky will go for.
Either use what makes you happy or become happy about what you use, or you'll end up making yourself ill.