|
|
bitreich-manifesto.md - bitreich-documents - The repository to track the core bitreich documents. |
|
|
 |
git clone git://bitreich.org/bitreich-documents/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/bitreich-documents/ (git://bitreich.org) |
|
|
 |
Log |
|
|
 |
Files |
|
|
 |
Refs |
|
|
 |
Tags |
|
|
|
--- |
|
|
|
bitreich-manifesto.md (4358B) |
|
|
|
--- |
|
|
|
1 # Bitreich Manifesto |
|
|
|
2 |
|
|
|
3 ## Introduction |
|
|
|
4 |
|
|
|
5 We live surrounded by complex software which receives new versions and |
|
|
|
6 updates day after day. RAM and CPU consumption never reduce, they in‐ |
|
|
|
7 crease. Software still provides the same features from years ago, but |
|
|
|
8 everything looks new. This is called »advance« in the new speak of pro‐ |
|
|
|
9 prietary software development. |
|
|
|
10 |
|
|
|
11 This has to change! |
|
|
|
12 |
|
|
|
13 ## Suckless |
|
|
|
14 |
|
|
|
15 Suckless failed. |
|
|
|
16 |
|
|
|
17 ## Consumerism |
|
|
|
18 |
|
|
|
19 Consumerism is the ability of persons to lose their skill in thinking on |
|
|
|
20 their own, producing things, applying logical and practical ways of be‐ |
|
|
|
21 having. This disease of consumerism is striking the devices and comput‐ |
|
|
|
22 ers we humans produced to make them not scale in the possibilities they |
|
|
|
23 could be used for. Computers can do things consumers cannot want and |
|
|
|
24 imagine before they use the computer for something. The market economy |
|
|
|
25 of demand and supply does simply not work here. |
|
|
|
26 |
|
|
|
27 ## UNIX Principles |
|
|
|
28 |
|
|
|
29 In the beginning of the development of software principles were intro‐ |
|
|
|
30 duced how to create software which can be reused in ways the original |
|
|
|
31 developers never imagined. Small utilities are combined using simple |
|
|
|
32 pipes, speaking to eachother, just doing one task well. |
|
|
|
33 |
|
|
|
34 ## Dawn Of Ugliness |
|
|
|
35 |
|
|
|
36 By not applying this methodology to its extreme, by trying to force new |
|
|
|
37 features of computers into the UNIX principles, binary blobs evolved into |
|
|
|
38 a complexity no young programmer can understand. They are forced into |
|
|
|
39 the industry due to »life events«, where they are degrading to robots |
|
|
|
40 which only apply what they learned at programming school (e.g. life, |
|
|
|
41 university ...). This circle is producing even bigger binary blobs. |
|
|
|
42 Nowadays this evolved into shipping whole operating systems in images |
|
|
|
43 which you run separately. |
|
|
|
44 |
|
|
|
45 This has to end! |
|
|
|
46 |
|
|
|
47 ## Bitreich |
|
|
|
48 |
|
|
|
49 We form a movement to improve our daily software life. Software has to |
|
|
|
50 not misbehave, it has to follow our rules, it has to be reusable, it has |
|
|
|
51 to be easily maintainable, it has to provide its recompilable source and |
|
|
|
52 it has to be easily understandable. |
|
|
|
53 |
|
|
|
54 ### Bitreich Principles |
|
|
|
55 |
|
|
|
56 #### KISP – Keep It Simple Perfect |
|
|
|
57 |
|
|
|
58 Software needs to do one thing well / perfect. |
|
|
|
59 |
|
|
|
60 #### Commandline Interfaces |
|
|
|
61 |
|
|
|
62 Always add a commandline interface to your software. Graphical User In‐ |
|
|
|
63 terfaces are for sissies. Pipes are welcome. |
|
|
|
64 |
|
|
|
65 #### When Possible Use GPLv3 |
|
|
|
66 |
|
|
|
67 The signs of MIT‐appearance in the community is based on the circle of |
|
|
|
68 complexity introduced into the minds of libre software programmers by |
|
|
|
69 their oppressors transferring money to their bank accounts every month. |
|
|
|
70 Your software is used in war machines to kill people and the companies |
|
|
|
71 will never give back. So enforce GPLv3, it’s needed. |
|
|
|
72 |
|
|
|
73 #### Users Are Programmers |
|
|
|
74 |
|
|
|
75 Software should be written for programmers, which means the code is the |
|
|
|
76 documentation, it should be easy readable, low abstraction levels should |
|
|
|
77 be used (OOP sucks most of the times) and a simple Makefile to build ev‐ |
|
|
|
78 erything needs to be present. This is subject-oriented programming. |
|
|
|
79 |
|
|
|
80 #### Bugreports Are Patches |
|
|
|
81 |
|
|
|
82 Bugtrackers are obsolete. Whenever you find a bug, fix it. The other |
|
|
|
83 principles make it possible for you to send a patch instead of a report. |
|
|
|
84 |
|
|
|
85 #### Straightforward Documentation |
|
|
|
86 |
|
|
|
87 There are all kind of tools like javadoc, info etc. which fragment the |
|
|
|
88 way to find useful information. All software should provide manpages. If |
|
|
|
89 you need more features than manpages require, rethink what you are try‐ |
|
|
|
90 ing to document. Manpages have a well defined structure which makes |
|
|
|
91 finding and extracting the required information easier and uniform. |
|
|
|
92 |
|
|
|
93 #### Applications Can Be Done |
|
|
|
94 |
|
|
|
95 When a project solves a problem, keep it done and declare it so. New |
|
|
|
96 problems are solved by different projects. |
|
|
|
97 |
|
|
|
98 #### Freedom Of Language |
|
|
|
99 |
|
|
|
100 The software world is spammed with new revolutionary programming lan‐ |
|
|
|
101 guages every month. Choose whatever you need to solve your problem, but |
|
|
|
102 keep to the above mentioned principles. Most new programming languages |
|
|
|
103 solve a non‐problem the principles of bitreich solve. |
|
|
|
104 |
|
|
|
105 #### Do Not Hate Your Userbase |
|
|
|
106 |
|
|
|
107 Corporations start to hate their users, sell their data, reduce features |
|
|
|
108 to make profit. Projects adhering to the bitreich principles do not |
|
|
|
109 follow this. |
|
|
|
110 |
|
|
|
111 #### Inevitability Of Change |
|
|
|
112 |
|
|
|
113 These principles can change, based on the consent of the bitreich elite. |
|
|
|
114 |
|