# Bitreich Manifesto
We live surrounded by complex software which receives new versions and
updates day after day. RAM and CPU consumption never reduce, they in‐
crease. Software still provides the same features from years ago, but
everything looks new. This is called »advance« in the new speak of pro‐
prietary software development.
This has to change!
Consumerism is the ability of persons to lose their skill in thinking on
their own, producing things, applying logical and practical ways of be‐
having. This disease of consumerism is striking the devices and comput‐
ers we humans produced to make them not scale in the possibilities they
could be used for. Computers can do things consumers cannot want and
imagine before they use the computer for something. The market economy
of demand and supply does simply not work here.
## UNIX Principles
In the beginning of the development of software principles were intro‐
duced how to create software which can be reused in ways the original
developers never imagined. Small utilities are combined using simple
pipes, speaking to eachother, just doing one task well.
## Dawn Of Ugliness
By not applying this methodology to its extreme, by trying to force new
features of computers into the UNIX principles, binary blobs evolved into
a complexity no young programmer can understand. They are forced into
the industry due to »life events«, where they are degrading to robots
which only apply what they learned at programming school (e.g. life,
university ...). This circle is producing even bigger binary blobs.
Nowadays this evolved into shipping whole operating systems in images
which you run separately.
This has to end!
We form a movement to improve our daily software life. Software has to
not misbehave, it has to follow our rules, it has to be reusable, it has
to be easily maintainable, it has to provide its recompilable source and
it has to be easily understandable.
### Bitreich Principles
#### KISP – Keep It Simple Perfect
Software needs to do one thing well / perfect.
#### Commandline Interfaces
Always add a commandline interface to your software. Graphical User In‐
terfaces are for sissies. Pipes are welcome.
#### When Possible Use GPLv3
The signs of MIT‐appearance in the community is based on the circle of
complexity introduced into the minds of libre software programmers by
their oppressors transferring money to their bank accounts every month.
Your software is used in war machines to kill people and the companies
will never give back. So enforce GPLv3, it’s needed.
#### Users Are Programmers
Software should be written for programmers, which means the code is the
documentation, it should be easy readable, low abstraction levels should
be used (OOP sucks most of the times) and a simple Makefile to build ev‐
erything needs to be present. This is subject-oriented programming.
#### Bugreports Are Patches
Bugtrackers are obsolete. Whenever you find a bug, fix it. The other
principles make it possible for you to send a patch instead of a report.
#### Straightforward Documentation
There are all kind of tools like javadoc, info etc. which fragment the
way to find useful information. All software should provide manpages. If
you need more features than manpages require, rethink what you are try‐
ing to document. Manpages have a well defined structure which makes
finding and extracting the required information easier and uniform.
#### Applications Can Be Done
When a project solves a problem, keep it done and declare it so. New
problems are solved by different projects.
#### Freedom Of Language
The software world is spammed with new revolutionary programming lan‐
guages every month. Choose whatever you need to solve your problem, but
keep to the above mentioned principles. Most new programming languages
solve a non‐problem the principles of bitreich solve.
#### Inevitability Of Change
These principles can change, based on the consent of the bitreich elite.