Lean code in software aims for efficiency, elegance, clarity of design, following the best principles of software design. It allows for:
- greater performance from given hardware
- lower environmental impact, through lower energy use and less need for upgrading hardware.
- better battery performance of laptops and netbooks:
- longer between recharges
- longer life before failure, by reducing the operating temperature.
This can be achieved through performing exactly the same task in a different way.
It can also be achieved by altering the expectations of users, especially advanced users - if they realize that by doing something in a slightly different way, some users will happily adapt. This can avoid the need for resource hungry GUIs, for example. However, new users need to have tools which are very easy to use, and it is generally unwise to expect them to use the command line, which will make them nervous even where it seems very easy to the experienced user.
Projects aiming at lean code include: