master
Miloslav Ciz 1 year ago
parent 43b3543ac6
commit 325284d58c

@ -1,5 +1,7 @@
# 42
42 is an even integer with prime factorization of 2 * 3 * 7. This number was made kind of famous (and later overused in pop culture to the point of completely destroying the joke) by Douglas Adams' book The Hitchhiker's Guide to the Galaxy in which it appears as the answer to the ultimate question of life, the Universe and everything (the point of the joke was that this number was the ultimate answer computed by a giant supercomputer over millions of years, but it was ultimately useless as no one knew the question to which this number was the answer).
*HAHAHAHAHAHAHAHAHAHHHHAAA BAZINGA* --Sheldon fan
42 is an even integer with prime factorization of 2 * 3 * 7. This number was made kind of famous (and later overused in pop culture to the point of completely destroying the [joke](jokes.md)) by Douglas Adams' book The Hitchhiker's Guide to the Galaxy in which it appears as the answer to the ultimate question of life, the Universe and everything (the point of the joke was that this number was the ultimate answer computed by a giant supercomputer over millions of years, but it was ultimately useless as no one knew the question to which this number was the answer).
If you make a 42 reference in front of a TBBT fan, he will shit himself.

@ -10,4 +10,4 @@ The advantage of digital technology is its resilience to noise which prevents de
Of course, digital data may become distorted too, it is just less likely and it's easier to deal with this. It for example happens that space particles (and similar physics phenomena, e.g. some quantum effects) flip bits in computer memory, i.e. there is always a probability of some [bit](bit.md) flipping from 0 to 1 or vice versa. We call this **data [corruption](corruption.md)**. This may also happen due to physical damage to digital media (e.g. scratches on the surface of CDs), imperfections in computer network transmissions (e.g. packet loss over [wifi](wifi.md)) etc. However we can introduce further measures to prevent, detect and correct data corruption, e.g. by keeping [redundant](redundancy.md) copies (2 copies of data allow detecting corruption, 3 copies allow even its correction), keeping [checksums](checksum.md) or [hashes](hash.md) (which allow only detection of corruption but don't take much extra space), employing error correcting codes etc.
Another way in which digital data can degrade similarly to analog data is **reencoding between lossy-[compressed](compression.md) formats** (in the spirit of the famous "needs more jpeg meme"). A typical example is digital movies: as new standard for video encoding are emerging, old movies are being reconverted from old formats to the new ones, however as video is quite heavily lossy-compressed, losses and distortion of information happens between the reencodings. This is best seen in videos and images circulating on the internet that are constantly being ripped and converted between different formats. This way it may happen that digital movies recorded nowadays may only survive into the future in very low quality, just like old analog movies survived until today in degraded quality. This can be prevented by storing the original data only with lossless compression and with each new emerging format create the release of the data from the original.
Another way in which digital data can degrade similarly to analog data is **reencoding between lossy-[compressed](compression.md) formats** (in the spirit of the famous "needs more jpeg" [meme](meme.md)). A typical example is digital movies: as new standard for video encoding are emerging, old movies are being reconverted from old formats to the new ones, however as video is quite heavily lossy-compressed, losses and distortion of information happens between the reencodings. This is best seen in videos and images circulating on the internet that are constantly being ripped and converted between different formats. This way it may happen that digital movies recorded nowadays may only survive into the future in very low quality, just like old analog movies survived until today in degraded quality. This can be prevented by storing the original data only with lossless compression and with each new emerging format create the release of the data from the original.

@ -2,13 +2,13 @@
Graphical user interface (GUI) is a visual [user interface](ui.md) that uses graphics such as images and geometrical shapes. This stands in contrast with [text user interface](tui.md) (TUI) which is also visual but only uses text for communication.
Expert computer users normally frown upon GUI because it is the "noobish", inefficient, limiting, cumbersome, hard to automate way of interacting with computer. GUI brings [complexity](complexity.md) and [bloat](bloat.md), they are slow, inefficient and distracting. We try no to use them and prefer the [command line](cli.md).
Expert computer users normally frown upon GUI because it is the "noobish", inefficient, limiting, cumbersome, hard to automate way of interacting with computer. GUI brings [complexity](complexity.md) and [bloat](bloat.md), they are slow, inefficient and distracting. We try not to use them and prefer the [command line](cli.md).
GUIs mostly use [callback](callback.md)-based programming, which again is more complicated than standard polling non-interactive I/O.
"[Modern](modern.md)" GUIs mostly use [callback](callback.md)-based programming, which again is more complicated than standard polling non-interactive I/O. If you need to do GUI, just use a normal infinite loop FFS.
## When And How To Do GUI
GUI is not forbidden, it has its place, but today it's way too overused -- it should be used only if completely necessary (e.g. in a painting program) or as a completely optional thing build upon a more [suckless](suckless.md) text interface or [API](api.md). So remember: first create a program and/or a [library](library.md) working without GUI and only then consider creating an optional GUI [frontend](frontend.md). GUI must never be tied to whatever functionality can be implemented without it.
GUI is not forbidden, it has its place, but today it's way too overused -- it should be used only if completely necessary (e.g. in a painting program) or as a completely optional thing built upon a more [suckless](suckless.md) text interface or [API](api.md). So remember: first create a program and/or a [library](library.md) working without GUI and only then consider creating an optional GUI [frontend](frontend.md). GUI must never be tied to whatever functionality can be implemented without it.
Still, when making a GUI, you can make it [suckless](suckless.md) and lighthweight. Do your buttons need to have reflections, soft shadows and rounded anti-aliased borders? No. Do your windows need to be transparent with light-refraction simulation? No. Do you need to introduce many MB of dependencies and pain such as [QT](qt.md)? No.

@ -4,11 +4,13 @@
Reactionary software (reactionary meaning *opposing the [modern](modern.md), favoring the old*) is a kind of [software](software.md)/[technology](tech.md) philosophy opposing [modern](modern.md) technology and advocating [simplicity](kiss.md) as a basis of good technology (and possibly whole society); it is similar e.g. to [suckless](suckless.md) and our own [less retarded software](lrs.md), though it's not as "hardcore" [minimalist](minimalism.md) (e.g. it's okay with old versions of [Java](java.md) which we still consider kind of [bloated](bloated.md) and therefore [bad](bad.md)). Just as suckless and LRS, reactionary software notices the unbelievably degenerated state of "[modern](modern.md)" technology (reflecting the degenerate state of whole society) manifested in [bloat](bloat.md), overengineering, overcomplicating, user abuse, ugliness, [DRM](drm.md), [bullshit](bullshit.md) features, planned obsolescence, fragility etc., and advocates for rejecting it, for taking a step back to when technology was still sane (before 2000s). The website of reactionary software is at http://www.reactionary.software (on top it reads *Make software great again!*). There is also a nice forum at http://www.mikraite.org/Reactionary-Software-f1999.html (tho requires JS to register? WTF).
**The biggest difference compared to suckless/LRS is that reactionary software focuses on the simplicity from user's point of view** (as stated on their forums). This is not in conflict with our views, we just additionally see the simplicity of internals as just as important.
The founder of reactionary software is fschmidt and he still seems to be the one who mostly defines it (just like [drummyfish](drummyfish.md) is at the moment basically solo controlling [LRS](lrs.md)), though there is a forum of people who follow him. The philosophy can potentially be extended beyond just software, to other fields of endeavor and potentially whole society -- the discussion of reactionary software revolves around wide context, e.g. things like philosophy, religion and [collapse](collapse.md) of society (fschmidt made a post where he applies Old Testament ideas to programming).
fschmidt seems to be a lot into religion and also has some related side projects with wider scope, e.g. [Arkians](arkians.md) which deals with society and [eugenics](eugenics.md). It seems to be trying to establish a community of "chosen people" (those who pass certain tests) who selective breed to renew good genes in society. { **PLEASE DON'T JUMP TO CONCLUSIONS**, I just quickly skimmed through it -- people will probably freak out and start calling that guy a [Nazi](nazi.md) -- please don't, read his site first. I can't really say more about it as I didn't research it well, but he doesn't seem to be proposing violent solutions. Peace. ~drummyfish }
**What do [we](lrs.md) think about reactionary software?** The vibes are good, it basically seems like "lightweight suckless" -- we agree with what they identify as causes of decline of modern technology, we like that they discuss wide context and the big picture and our solutions are aligned, in the same direction -- theirs are just not as radical, or maybe we just disagree on minor points. We may e.g. disagree on specific cases of software, for example they approve of old [Python](python.md), [Java](java.md) and lightweight [JavaScript](js.md) used on the [web](www.md) -- we see such software as unacceptable, it's too complex, unnecessary and from ground up designed badly. Nevertheless we definitely see it as good this philosophy exists, it contributes to improving technology and it may provide an alternative to people who suffer from modern tech but suckless or LRS is too difficult for them to get into. The fact that more and more smaller communities with ideas similar to LRS come to life indicates the ideas themselves are alive and start to flourish, in a decentralized way -- this is good.
**What do [we](lrs.md) think about reactionary software?** The vibes are good, it basically seems like "lightweight suckless" -- we agree with what they identify as causes of decline of modern technology, we like that they discuss wide context and the big picture and our solutions are aligned, in the same direction -- theirs are just not as radical, or maybe we just disagree on minor points. We may e.g. disagree on specific cases of software, for example they approve of old [Python](python.md), [Java](java.md) and lightweight [JavaScript](js.md) used on the [web](www.md) -- we see such software as unacceptable, it's too complex, unnecessary and from ground up designed badly. { As clarified on the forums, reactionary software focuses on the simplicity from user's perspective, not necessarily the simplicity of internals. ~drummyfish } Nevertheless we definitely see it as good this philosophy exists, it contributes to improving technology and it may provide an alternative to people who suffer from modern tech but suckless or LRS is too difficult for them to get into. The fact that more and more smaller communities with ideas similar to LRS come to life indicates the ideas themselves are alive and start to flourish, in a decentralized way -- this is good.

@ -60,6 +60,7 @@ Here are some [pro](pro.md) tips to git gud, impress your frens and generally ha
- **Unpredictable movement and positioning is key** to avoiding damage: nubs think that when they move fast they won't get hit -- this is only partially true, it is about just as important to move unpredictably and avoid spots that get regularly spammed by enemies. When you move from point A to B on a map and the enemy sees you doing so, you should take a randomly long short pause in doing so, or maybe even switch direction completely, otherwise he can quite accurately predict when and where you'll appear at the destination and kill you with prefire. It's a great advantage if your opponent doesn't know where you are.
- When in fight, **don't be an easy target and don't stand near a wall** (this makes you be easily hit with splash damage). Try to always have a quick escape path.
- **Stay together with your teammates** if you want to win. Fighting alone against multiple enemies is usually a bad idea and a quick death without dealing much damage.
- **Higher ground is usually good**.
- When microcamping (camping for a short time with vortex somewhere), the only direction you can be hit from should be the one you're looking in. Nubs sometimes camp in a spot that can be seen from multiple directions -- that's just asking to be fragged.
## See Also

Loading…
Cancel
Save