From HandWiki - Reading time: 2 min
In computing, lightweight software[1] also called lightweight program and lightweight application, is a computer program that is designed to have a small memory footprint (RAM usage) and low CPU usage, overall a low usage of system resources. To achieve this, the software should avoid software bloat and code bloat and try to find the best algorithm efficiency.[2]

While all software development generally tries to avoid excessive size and including unnecessary code through various best practices and compiler optimization, lightweight software development implies the employment of specific programming techniques and styles designed to produce extremely small and performant software.
A demonstrative example of the extreme end of lightweight software are complex programs developed entirely in assembly language.
Lightweight software for everyday usage is generally focused on applications that are used frequently, have a singular purpose, and are expected to load and execute almost instantly.