Update
This commit is contained in:
parent
3816e78230
commit
1ed9079ad4
50 changed files with 1892 additions and 1863 deletions
|
@ -233,7 +233,7 @@ Here is a list of some acronyms:
|
|||
- **[MFW](mfw.md)** (my face when)
|
||||
- **[MMO](mmo.md)** (massively multiplayer online)
|
||||
- **[MMX](mmx.md)** (multimedia extension)
|
||||
- **[MMORPG](mmorpg)** (MMO RPG)
|
||||
- **[MMORPG](mmorpg.md)** (MMO RPG)
|
||||
- **[MOSFET](mosfet.md)** (metal oxide semiconductor field effect transistor)
|
||||
- **[MOTD](motd.md)** (message of the day)
|
||||
- **[MPEG](mpeg.md)** (motion pictures experts group)
|
||||
|
@ -242,7 +242,7 @@ Here is a list of some acronyms:
|
|||
- **[MSB](msb.md)** (most significant bit)
|
||||
- **[MSC](msc.md)** (master of science)
|
||||
- **[MSG](msg.md)** (message)
|
||||
- **[MUD](mud.mf)** (multi user dungeon)
|
||||
- **[MUD](mud.md)** (multi user dungeon)
|
||||
- **[NAN](nan.md)** (not a number)
|
||||
- **[NASA](nasa.md)** (national aeronautic and space administration)
|
||||
- **[NAT](nat.md)** (network address translation)
|
||||
|
@ -308,7 +308,7 @@ Here is a list of some acronyms:
|
|||
- **[SAASS](saass.md)** (service as a software substitute)
|
||||
- **[SAF](saf.md)** (smallabstractfish)
|
||||
- **[SBC](sbc.md)** (single board computer)
|
||||
- **[SCL](smallchesslib)** (smallchesslib)
|
||||
- **[SCL](smallchesslib.md)** (smallchesslib)
|
||||
- **[SD](sd.md)** (standard definition, secure digital)
|
||||
- **[SDF](sdf.md)** (signed distance function)
|
||||
- **[SDK](sdk.md)** (software development kit)
|
||||
|
@ -375,7 +375,7 @@ Here is a list of some acronyms:
|
|||
- **[WOW](wow.md)** (World Of Warcraft)
|
||||
- **[WPA](wpa.md)** (WIFI protected access)
|
||||
- **[WTF](wtf.md)** (what the fuck)
|
||||
- **[WTFPL](wtfpl)** (do what the fuck you want to public [license](license.md))
|
||||
- **[WTFPL](wtfpl.md)** (do what the fuck you want to public [license](license.md))
|
||||
- **[WYSIWYG](wysiwyg.md)** (what you see is what you get)
|
||||
- **[WM](wm.md)** (window manager)
|
||||
- **[WWW](www.md)** (world wide web)
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
In the world of intellectual works (such as programs, texts, images etc.) attribution means visibly and properly acknowledging the work of collaborators, i.e. usually mentioning the names or pseudonyms of others that somehow took part in creation of the work. Sometimes we distinguish between merely giving *credit*, i.e. just recording collaborators somewhere, even in a less visible place such as some documentation file, and *proper attribution* which may have further conditions, e.g. mentioning the authors in a visible place (e.g. game's main menu) along with a link to their website and so on. Attribution is something that's often a condition of a [license](license.md), i.e. for example the [Creative Commons Attribution](cc_by.md) (CC BY) license grants everyone rights to the work as long as the original author is properly attributed. However we at [LRS](lrs.md) see such license requirements as [harmful](harmful.md); **forcing attribution with a [license](license.md) is a very bad idea!** Never do it. Please consider the following:
|
||||
|
||||
- Forcing attribution may cause practical problems and make your work unusable. While it's no issue to give proper attribution to one guy who made music for your game, consider also a different scenario: e.g. in development of [LMMS](lmms.), a [FOSS](foss.md) music making program, the authors had to collect hundreds of short sound samples for their virtual instruments -- here they couldn't use CC BY-SA samples because doing so would require anyone who made music with their program to also carry on proper attribution of all the author of every single sample that was used in the music, which is practically almost impossible.
|
||||
- Forcing attribution may cause practical problems and make your work unusable. While it's no issue to give proper attribution to one guy who made music for your game, consider also a different scenario: e.g. in development of [LMMS](lmms.md), a [FOSS](foss.md) music making program, the authors had to collect hundreds of short sound samples for their virtual instruments -- here they couldn't use CC BY-SA samples because doing so would require anyone who made music with their program to also carry on proper attribution of all the author of every single sample that was used in the music, which is practically almost impossible.
|
||||
- Forcing attribution can make you be force signed under things you don't want to be signed under. Consider you make a comics for children and license it CC BY-SA, i.e. require attribution. By free culture principles someone can take the characters from your story and make porn or terrorist supporting videos with them and even if those guys knew you wouldn't want to be signed under this (because you e.g. made it clear on your blog that you hate porn and terrorism) and even if they would be willing to not name you, your license will force them to write your name PROPERLY, i.e. visibly, under the thing they make.
|
||||
- You're still playing the [copyright](copyright.md) game -- even if you relax copyright, you still acknowledge of the idea you keep some basic rights and have to [enforce](fight_culture.md) a "correct use" of your work. Even if the difference between CC0 and CC BY was practically of small importance, your mindset will likely be very different with each of them. There is a pattern of people who use CC0 being completely cool while the "CC BY-SA" people oftentimes changing their mind, trying to make trouble with "moral rights" and so on. Just don't do this.
|
||||
- It is just legal [bloat](bloat.md), it created [friction](friction.md), distract artists. It is unnecessary. Even if it's a small burden, it's still a burden for everyone -- the license has to be longer, it has to define what proper attribution means, what happens if it can't be technically achieved etc. You have to keep one more thing in your working memory, you have to observe if people respect this condition etc.
|
||||
|
|
|
@ -6,7 +6,7 @@ Primitive tools helping the brain compute, such as pen and paper or printed out
|
|||
|
||||
**Brain game** is brain software which is a [game](game.md), i.e. servers to entertain the user. This kind of brain software may be also very important, for example it can make being in prison more bearable and therefore makes an individual less afraid of prison.
|
||||
|
||||
Example of brain software (and brain game) can be the [game](game.html) of [chess](chess.md). A chess master can easily play the game without a physical chess board, only in his head, and he can play games with someone else just by saying the moves out loud. He may even just play games with himself, which makes chess a deep, entertaining game that can be 100% contained in one's brain. Such game can never be taken away from the man, it can't be altered by [corporations](corporation.md), it can't become unplayable on new [hardware](hardware.md) etc., making it free to the greatest extent. Many other board games and pen and pencil games, such as [racetrack](racetrack.md) (pen and pencil racing game suitable for one or many players).
|
||||
Example of brain software (and brain game) can be the [game](game.md) of [chess](chess.md). A chess master can easily play the game without a physical chess board, only in his head, and he can play games with someone else just by saying the moves out loud. He may even just play games with himself, which makes chess a deep, entertaining game that can be 100% contained in one's brain. Such game can never be taken away from the man, it can't be altered by [corporations](corporation.md), it can't become unplayable on new [hardware](hardware.md) etc., making it free to the greatest extent. Many other board games and pen and pencil games, such as [racetrack](racetrack.md) (pen and pencil racing game suitable for one or many players).
|
||||
|
||||
[Math](math.md) is a kind of universal brain game -- when bored, one can simply think about some mathematical problem and try solving it as a challenge, potentially discovering new problems and making new discoveries along the way. It's like an infinite open world exploration game just in your head. Trying to make brain games may itself be an entertaining game.
|
||||
|
||||
|
|
|
@ -51,7 +51,7 @@ General tips/tricks and observations are these:
|
|||
|
||||
## Copyright
|
||||
|
||||
It is not exactly clear whether, how and to what extent [copyright](copyright) can apply to bytebeat: on one hand we have a short formula that's uncopyrightable (just like mathematical formulas), on the other hand we have music, an artistic expression. Many authors of bytebeat "release" their creations under [free](free_culture.md) [licenses](license.md) such as [CC-BY-SA](cc-by-sa.md), but such licenses are of course not applicable if copyright can't even arise.
|
||||
It is not exactly clear whether, how and to what extent [copyright](copyright.md) can apply to bytebeat: on one hand we have a short formula that's uncopyrightable (just like mathematical formulas), on the other hand we have music, an artistic expression. Many authors of bytebeat "release" their creations under [free](free_culture.md) [licenses](license.md) such as [CC-BY-SA](cc-by-sa.md), but such licenses are of course not applicable if copyright can't even arise.
|
||||
|
||||
We believe copyright doesn't and SHOULDN'T apply to bytebeat. To ensure this, it is good to stick [CC0](cc0.md) to any released bytebeat just in case.
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ Potentially supplemental articles to this tutorial are:
|
|||
- Very old, well established and tested by time.
|
||||
- Recommended by us for serious programs.
|
||||
|
||||
If you come from a language like [Python](python.md) or [JavaScript](javascript.md), you may be shocked that C doesn't come with its own [package manager](package_manager.md), [debugger](debugger.md) or [build system](build_system.md), it doesn't have [modules](module.md), [generics](generics.md), [garabage collection](garbage_collection.d), [OOP](oop.md), [hashmaps](hashmap.md), dynamic [lists](list.md), [type inference](type_inference.md) and similar "[modern](modern.md)" features. When you truly get into C, you'll find it's a good thing.
|
||||
If you come from a language like [Python](python.md) or [JavaScript](javascript.md), you may be shocked that C doesn't come with its own [package manager](package_manager.md), [debugger](debugger.md) or [build system](build_system.md), it doesn't have [modules](module.md), [generics](generics.md), [garabage collection](garbage_collection.md), [OOP](oop.md), [hashmaps](hashmap.md), dynamic [lists](list.md), [type inference](type_inference.md) and similar "[modern](modern.md)" features. When you truly get into C, you'll find it's a good thing.
|
||||
|
||||
Programming in C works like this:
|
||||
|
||||
|
@ -1126,7 +1126,7 @@ int main()
|
|||
}
|
||||
```
|
||||
|
||||
`#define ARRAY_SIZE 10` creates a macro that can be seen as a constant named `ARRAY_SIZE` which stands for `10`. From this line on any occurence of `ARRAY_SIZE` that the preprocessor encounters in the code will be replaced with `10`. The reason for doing this is obvious -- we respect the [DRY](dry.md) (don't repeat yourself) principle, if we didn't use a constant for the array size and used the direct numeric value `10` in different parts of the code, it would be difficult to change them all later, especially in a very long code, there's a danger we'd miss some. With a constant it is enough to change one line in the code (e.g. `#define ARRAY_SIZE 10` to `#define ARRAY_SIZE 20`).
|
||||
`#define ARRAY_SIZE 10` creates a macro that can be seen as a constant named `ARRAY_SIZE` which stands for `10`. From this line on any occurrence of `ARRAY_SIZE` that the preprocessor encounters in the code will be replaced with `10`. The reason for doing this is obvious -- we respect the [DRY](dry.md) (don't repeat yourself) principle, if we didn't use a constant for the array size and used the direct numeric value `10` in different parts of the code, it would be difficult to change them all later, especially in a very long code, there's a danger we'd miss some. With a constant it is enough to change one line in the code (e.g. `#define ARRAY_SIZE 10` to `#define ARRAY_SIZE 20`).
|
||||
|
||||
The macro substitution is literally a glorified copy-paste text replacement, there is nothing very complex going on. This means you can create a nickname for almost anything (for example you could do `#define when if` and then also use `when` in place of `if` -- but it's probably not a very good idea). By convention macro names are to be `ALL_UPPER_CASE` (so that whenever you see an all upper case word in the source code, you know it's a macro).
|
||||
|
||||
|
|
|
@ -113,7 +113,7 @@ While the old capitalism was more of a steady slavery and the deterioration of s
|
|||
|
||||
Slowly "startups" evolve to medium sized businesses and a few will become the big [corporations](corporation.md). These are the first higher entities that have an intelligence of their own, they are composed of humans and technology who together work solely for the corporation's further growth and profit. A corporation has a super human intelligence (combined intelligence of its workers) but has no human emotion or conscience (which is suppressed by the corporation's structure), it is basically the rogue [AI](ai.md) we see in sci-fi horror movies. Corporation selects only the worst of humans for the management positions and has further mechanisms to eliminate any effects of human conscience and tendency for ethical behavior; for example it works on the principle of ["I'm just doing my job"](just_doing_my_job.md): everyone is just doing a small part of what the whole company is doing so that no one feels responsible for the whole or sometimes doesn't even know what he's part of. If anyone protests, he's replaced with a new hire. Of course, many know they're doing something bad but they have no choice if they want to feed their families, and [everyone is doing it](everyone_is_doing_it.md).
|
||||
|
||||
Deterioration of society is fast now but people are kept in a false sense of a feeling that "it's just a temporary thing", "it's this individual's fault (not the system's)" and that "it's slowly getting better", mainly with the help of 24/7 almighty media brainwashing. Due to heavy [greenwashing](greenwashing.), [openwashing](openwashing.md) etc. most people are for example naively convinced that corporations are becoming more "environment friendly", "responsible", "open source" ("Microsoft isn't what it used to be", ...) etc., as if a corporation had something akin emotion instead of pure desire for profit which is its only goal by definition. A corporation will repeat ads telling you it is paying black handicapped gays to plant trees but internally no one gives a shit about anything but making more money, a manager's job is just to increase profit, waste is increasing and dumped to oceans when no one is looking, bullshit is being invented to kickstart more bullshit business which leads to more need for energy wasting (unnecessary transportation, upkeep of factories and workplaces, invention of bullshit technology to solve artificial problems arising from artificial bullshit). A lie repeated 1000 times a day will beat even truth that's evident to naked eye, basic logic and common sense. Even when sky is littered with ads, cities are burning and people are working 20 hours a day, a capitalist will keep saying "this is a good society", "we are just in a temporary crisis", "it is getting better" and "I care about the people", and people will take it as truth.
|
||||
Deterioration of society is fast now but people are kept in a false sense of a feeling that "it's just a temporary thing", "it's this individual's fault (not the system's)" and that "it's slowly getting better", mainly with the help of 24/7 almighty media brainwashing. Due to heavy [greenwashing](greenwashing.md), [openwashing](openwashing.md) etc. most people are for example naively convinced that corporations are becoming more "environment friendly", "responsible", "open source" ("Microsoft isn't what it used to be", ...) etc., as if a corporation had something akin emotion instead of pure desire for profit which is its only goal by definition. A corporation will repeat ads telling you it is paying black handicapped gays to plant trees but internally no one gives a shit about anything but making more money, a manager's job is just to increase profit, waste is increasing and dumped to oceans when no one is looking, bullshit is being invented to kickstart more bullshit business which leads to more need for energy wasting (unnecessary transportation, upkeep of factories and workplaces, invention of bullshit technology to solve artificial problems arising from artificial bullshit). A lie repeated 1000 times a day will beat even truth that's evident to naked eye, basic logic and common sense. Even when sky is littered with ads, cities are burning and people are working 20 hours a day, a capitalist will keep saying "this is a good society", "we are just in a temporary crisis", "it is getting better" and "I care about the people", and people will take it as truth.
|
||||
|
||||
Corporations make calculated decisions to eliminate any competition, they devour or kill smaller businesses with unfair practices (see e.g. the [Microsoft's](microsoft.md) infamous [EEE](eee.md)), more marketing and by other means, both legal and illegal. They develop advanced psychological methods and extort extreme pressure such as brainwashing by ads to the population to create an immensely powerful propaganda that bends any natural human thinking. With this corporations no longer need to satisfy the demand, they **create the demand** arbitrarily. They create artificial scarcity, manipulate the market, manipulate the people, manipulate laws (those who make laws are nowadays mostly businessmen who want to strengthen corporations whose shares they hold and if you believe voters can somehow prevent such psychopaths getting this power, just take a look literally at any parliament of any country). At this point they've broken the system, competition no longer works as idealized by theoretical capitalists, corporations can now do practically anything they want.
|
||||
|
||||
|
|
2
cat_v.md
2
cat_v.md
|
@ -2,7 +2,7 @@
|
|||
|
||||
Cat-v.org (accessible at http://cat-v.org) is a [minimalist](minimalism.md) [hacker](hacking.md) website describing itself as a *random contrarian insurgent organization* which promotes [critical thinking](critical_thinking.md), [free speech](free_speech.md), examines [technology](tech.md) from minimalist point of view, opposes [orthodoxy](orthodoxy.md) and talks about wider context of technology such as [politics](politics.md), society and philosophy; the site hosts a few "subsites", e.g. those related to [Plan 9](plan9.md) OS and [Go](golang.md) language, however most famous is its *[encyclopedia](encyclopedia.md) of things considered harmful* (http://harmful.cat-v.org/). The whole site, especially the "harmful" section (which was the first one), revolves around the phrase **"considered [harmful](harmful.md)"** -- this is basically a [computer science](compsci.md) academic [meme](meme.md) that started with a 1968 paper named "Go To Statement Considered Harmful" which was later followed by dozens of similarly named articles; cat-v is taking this to the next level by building a whole website about all things *considered harmful*. The name of the site itself comes from [Rob Pike](rob_pike.md)'s 1983 presentation "UNIX Style, or cat -v Considered Harmful" that criticized the `-v` flag of the [Unix](unix.md) [cat](cat.md) program as such flag, strictly speaking, violates the [Unix philosophy](unix_philosophy.md) (cat should only concatenate files, the flag makes it do something that should rather be done by another program). Though maybe coincidental, the name is also similar to CatB (a short for famous hacker essay/book [Cathedral and Bazaar](bazaar.md)). The site is very nice, made in plain HTML minimalist style, working with HTTP and besides others contains a ton of great quotes on every topic, there is also an [IRC](irc.md), mailing list and a blog.
|
||||
|
||||
The section "considered harmful" contains many things, even quite general ones, probably to provoke thought -- one should likely not see a thing present on the list as something we have to always necessarily get rid of -- though many times we should! -- sometimes we just may think about how to improve the thing or minimize its negative impact; try to think of harmful things like "things that suck"; everything sucks, some things just [suck less](suckless.md). Among things listed under the *harmful* section are besides others all [software](software.md), [OOP](oop.md), [GNU](gnu.md), [Linux](linux.md), [C++](cpp.md), dynamic [linking](linking.md), [Java](java.md), [XML](xml.md), [vim](vim.md), [Emacs](emacs.md), [GPL](gpl.md) (one recommended alternative being [CC0](cc0.md) instead), [Perl](perl.md), [standards](standard.md), Sweden, [gay](gay.md) marriage, marriage, children, words, [intellectual property](intellectual_property.md), [religion](religion.md), [science](soyence.md), minimum wage, the Avatar movie, [Wikileaks](wikileaks.md), [people](people.md), [economics](economics.md), [global warming](global_warming.md) scaremongering, [security](security) theater etc.
|
||||
The section "considered harmful" contains many things, even quite general ones, probably to provoke thought -- one should likely not see a thing present on the list as something we have to always necessarily get rid of -- though many times we should! -- sometimes we just may think about how to improve the thing or minimize its negative impact; try to think of harmful things like "things that suck"; everything sucks, some things just [suck less](suckless.md). Among things listed under the *harmful* section are besides others all [software](software.md), [OOP](oop.md), [GNU](gnu.md), [Linux](linux.md), [C++](cpp.md), dynamic [linking](linking.md), [Java](java.md), [XML](xml.md), [vim](vim.md), [Emacs](emacs.md), [GPL](gpl.md) (one recommended alternative being [CC0](cc0.md) instead), [Perl](perl.md), [standards](standard.md), Sweden, [gay](gay.md) marriage, marriage, children, words, [intellectual property](intellectual_property.md), [religion](religion.md), [science](soyence.md), minimum wage, the Avatar movie, [Wikileaks](wikileaks.md), [people](people.md), [economics](economics.md), [global warming](global_warming.md) scaremongering, [security](security.md) theater etc.
|
||||
|
||||
Cat-v has existed since at least 2005 (according to Internet Archive) and was started by [Uriel M. Pereira](uriel.md), a minimalist hacker who greatly contributed to a lot of [suckless](suckless.md) software and who committed suicide in 2012. Suckless and cat-v seem to be pretty close -- suckless.org has its own section of harmful things called simply "sucks".
|
||||
|
||||
|
|
29
check.sh
Executable file
29
check.sh
Executable file
|
@ -0,0 +1,29 @@
|
|||
#!/bin/sh
|
||||
# Checks for potential errors in articles.
|
||||
|
||||
echo "===== links not ending in .md:"
|
||||
grep -rno "\[[^]]*\]([^)]*\([^.)][^)][^)]\|[^)][^m)][^)]\|[^)][^)][^d)]\))" *.md
|
||||
|
||||
typos="("
|
||||
typos="${typos}pubic|noticabl|occassion|ocassion|occure|occurres|adress"
|
||||
typos="${typos}agressi|aggresi|aparrent|apparrent|concensu|definat|dissapoint|"
|
||||
typos="${typos}dissappoint|disasterous|lmoa|cathegor|comming|commited|comitted"
|
||||
typos="${typos}embarass|embarrasi|excede|harrass|harrase|fullfil|immitat|"
|
||||
typos="${typos}taht|lightening|milleni|milenni|miniscule|mispell|neccessar|"
|
||||
typos="${typos}necces|occasionaly|occurrance|occurence|passtime|posess|"
|
||||
typos="${typos}possese|preceed|priviledge|reccom|refered|succesful|sucessful|"
|
||||
typos="${typos}errorne|erorrne|superced|tommor|vaccu|wierd|wellfare|acknoleg"
|
||||
typos="${typos}aparrent|collegue|deppres"
|
||||
typos="${typos})"
|
||||
|
||||
echo "===== common typos:"
|
||||
grep -rnoEi $typos *.md
|
||||
|
||||
echo "===== bad first headings:"
|
||||
for f in *.md; do
|
||||
secondChar=`grep -m 1 "^#.*" $f | head -c 2 | tail -c 1`
|
||||
|
||||
if [ "$secondChar" = "#" ]; then
|
||||
echo $f
|
||||
fi
|
||||
done
|
2
chess.md
2
chess.md
|
@ -105,7 +105,7 @@ Here are some notable chess engines/computers/entities, as of 2024:
|
|||
- **[Stockfish](stockfish.md)** (SF): FOSS engine (written in [C++](cpp.md)), without any doubt **the strongest chess engine** that's been reliably winning all the computer tournaments for years now; its strength is far beyond any human, even if run on quite a weak device -- it actually caused some trouble because it's extremely easy to just download onto a cellphone and [cheat](cheating.md) even in OTB tournaments. Currently the engine is using a [neural network](neural_network.md) for evaluating positions but still also uses the tree search algorithm (a greatly optimized one so that it searches gigantic numbers of positions per second). Important part of the development is so called *Fishtest*, a distributed framework for testing and improving the engine's performance, it's one of the reasons why it good so strong. Stockfish's current CCRL Elo rating is 3639 (warning: this is incomparable to human Elos).
|
||||
- **Magnus Carlsen**: Human, most likely the strongest player ever, has been quite comfortably winning every tournament he entered including the world championship until he quit, basically because he got "bored". His top FIDE Elo was 2882.
|
||||
- **Komodo Dragon**: [Proprietary](proprietary.md), currently seems to be the second strongest engine, it's main feature is [Monte Carlo] ("randomized") search algorithm. Current CCRL Elo is 3624.
|
||||
- **[Leela Chess Zero](lc0)** (lc0): FOSS engine (written in C++), among top strongest engines (currently top 50 on CCRL), it is interesting mainly for how it works: it is a neural network engine that's **completely self-taught** from the ground up, i.e. it didn't learn chess by watching anyone else play, it was only allowed to learn by playing against itself. Current CCRL Elo is 3441.
|
||||
- **[Leela Chess Zero](lc0.md)** (lc0): FOSS engine (written in C++), among top strongest engines (currently top 50 on CCRL), it is interesting mainly for how it works: it is a neural network engine that's **completely self-taught** from the ground up, i.e. it didn't learn chess by watching anyone else play, it was only allowed to learn by playing against itself. Current CCRL Elo is 3441.
|
||||
- **[Deep Blue](deep_blue.md)**: A historically famous supercomputer, the first one to have beaten the human world chess champion in 1997.
|
||||
- **[GNU chess](gnu_chess.md)** Free engine by [GNU](gnu.md), not among absolute top by strength but still very strong. Current CCRL Elo is 2825.
|
||||
- **Maia**: FOSS engine, or rather neural network, notable by not trying to be the strongest, but rather most human-like, i.e. tries to imitate human play, even with errors. There are several versions, each trained for different strength. It is also notable by using pure neural network, i.e. it doesn't perform any search, it's a pure "pattern recognition"/static engine that still manages to play quite well.
|
||||
|
|
|
@ -79,7 +79,7 @@ Here is a list of notable computers.
|
|||
| Analytical Engine design | 1837 | ~16K RAM, 40 digit numbers | 1st general purpose comp, not realized, by Babbage|
|
||||
| [nomogram](nomogram.md) | 1884 | | graphical/geometrical tools aiding computation |
|
||||
| [Z3](z3.md) | 1941 | 176B RAM, CPU 10Hz 22bit 2600 relays | 1st fully programmable electronic digital computer|
|
||||
| [ENIAC](eniac.md) | 1945 | ~85B RAM, ~5KHz CPU, 18000 vaccum tubes | 1st general purpose computer |
|
||||
| [ENIAC](eniac.md) | 1945 | ~85B RAM, ~5KHz CPU, 18000 vacuum tubes | 1st general purpose computer |
|
||||
| [PDP](pdp.md) 11 | 1970 | 4M RAM, CPU 1.25Mhz 16bit | legendary [mini](minicomputer.md) |
|
||||
| [Apple II](apple_ii.md) | 1977 | 64K RAM, 1MHz CPU 8bit | popular TV-attached home computer by Apple |
|
||||
| [Atari](atari.md) 800 | 1979 | 8K RAM, CPU 1.7MHz 8bit | popular TV-attached home computer by Atari |
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
*"The most beautiful thing in the world is freedom of speech."* --Diogenes
|
||||
|
||||
Diogenes (412 BC - 323 BC) was one of the biggest ancient Greek [philosophers](philosophy.md), the best known proponent of [Cynicism](cynicism.dm) and one of the absolutely most [based](based.md) men in [history](history.md) as by his philosophy he practiced extreme life [minimalism](minimalism.md) (he lived in a barrel), [asceticism](asceticism.md), self-sufficiency, nonconformism, he refused to [work](work.md), [refused all authority](anarchism.md), criticised absolutely everything and was always extremely logically consistent and behaved in accordance to what he taught, which is really what makes all his critics -- mostly just big [hypocrite](hypocrisy.md) pussies -- so greatly pissed; the philosophy of Diogenes is quite close to [our own ideals](less_retarded_society.md). The word "cynic" itself comes from a word for "[dog](dog.md)" and indeed, Diogenes lived as one, he just roamed the streets barefoot with a stick, he wore a robe that at night he used to cover himself (two in one), he didn't give a shit about anything, preached his [wisdom](wisdom.md), he basically didn't own anything as he believed possession only enslaves us and that everything we need is already there in the nature. He didn't seek popularity, approval, wealth or power, he desired [freedom](freedom.md), spiritual and moral purity, he wanted to let go of absolutely all [bullshit](bullshit.md). The man was also pretty funny, reading about him is really on the level of [4chan](4chan.md) humor, more than 2000 years ahead of his time. Diogenes wrote some stuff, most famously his *Republic* describing an ideal society, however none of his writings sadly survived, we now only know what others have written about him (there are possibly some recounts of the works who have read them). Let's remember we shouldn't call him a [hero](hero_culture.md), that would itself contradict both his and our philosophy, but if we are to see anyone as a good inspiration and moral example, Diogenes is among the best (well, at least in most things, it goes without saying we can't absolutely embrace everything someone ever did).
|
||||
Diogenes (412 BC - 323 BC) was one of the biggest ancient Greek [philosophers](philosophy.md), the best known proponent of [Cynicism](cynicism.md) and one of the absolutely most [based](based.md) men in [history](history.md) as by his philosophy he practiced extreme life [minimalism](minimalism.md) (he lived in a barrel), [asceticism](asceticism.md), self-sufficiency, nonconformism, he refused to [work](work.md), [refused all authority](anarchism.md), criticised absolutely everything and was always extremely logically consistent and behaved in accordance to what he taught, which is really what makes all his critics -- mostly just big [hypocrite](hypocrisy.md) pussies -- so greatly pissed; the philosophy of Diogenes is quite close to [our own ideals](less_retarded_society.md). The word "cynic" itself comes from a word for "[dog](dog.md)" and indeed, Diogenes lived as one, he just roamed the streets barefoot with a stick, he wore a robe that at night he used to cover himself (two in one), he didn't give a shit about anything, preached his [wisdom](wisdom.md), he basically didn't own anything as he believed possession only enslaves us and that everything we need is already there in the nature. He didn't seek popularity, approval, wealth or power, he desired [freedom](freedom.md), spiritual and moral purity, he wanted to let go of absolutely all [bullshit](bullshit.md). The man was also pretty funny, reading about him is really on the level of [4chan](4chan.md) humor, more than 2000 years ahead of his time. Diogenes wrote some stuff, most famously his *Republic* describing an ideal society, however none of his writings sadly survived, we now only know what others have written about him (there are possibly some recounts of the works who have read them). Let's remember we shouldn't call him a [hero](hero_culture.md), that would itself contradict both his and our philosophy, but if we are to see anyone as a good inspiration and moral example, Diogenes is among the best (well, at least in most things, it goes without saying we can't absolutely embrace everything someone ever did).
|
||||
|
||||
Some famous and/or [interesting](interesting.md) things he did (or at
|
||||
least is said to have done):
|
||||
|
|
2
doom.md
2
doom.md
|
@ -31,7 +31,7 @@ Some **[interesting](interesting.md) things** about Doom:
|
|||
|
||||
Doom source code is written in [C89](c.md) and is about 36000 [lines of code](loc.md) long. The original system requirements stated roughly a 30 MHz [CPU](cpu.md) and 4 MB [RAM](ram.md) as a minimum. It had 27 levels (9 of which were shareware), 8 weapons and 10 enemy types. The engine wasn't really as flexible in a way "[modern](modern.md)" programmers expect, many things were hard coded, there was no [scripting](script.md) or whatever (see? you don't fucking need it), new games using the engine had to usually modify the engine internals.
|
||||
|
||||
The code itself looks alright, files are nicely organized into groups by their prefix (`g_`: game, `r_`: rendering, `s`: sound etc.). The same goes for the function names. There seems to be tabs mixed with spaces though, sometimes a bit shitty formatting, but overall MUCH better than [duke 3D](duke3D)'s code (well, that doesn't say much though). [Comments](comment.md) are plentiful.
|
||||
The code itself looks alright, files are nicely organized into groups by their prefix (`g_`: game, `r_`: rendering, `s`: sound etc.). The same goes for the function names. There seems to be tabs mixed with spaces though, sometimes a bit shitty formatting, but overall MUCH better than [duke 3D](duke3d.md)'s code (well, that doesn't say much though). [Comments](comment.md) are plentiful.
|
||||
|
||||
The game only used [fixed point](fixed_point.md), no [float](float.md)!
|
||||
|
||||
|
|
|
@ -200,7 +200,7 @@ Bear in mind the main purpose of this quiz is for you to test your understanding
|
|||
93. Please solve the following inequality: *sin(2 * x) / (2 - 2 * sin^2(x)) - log2(1 / 8^(-1/3)) >= 0*, mathematically write exactly which values of *x* will satisfy it. Don't use calculator, ok? But you can look up goniometric formulas etc.
|
||||
94. Given continuous differentiable function *f(x)*, derive the formula for computing the length of the curve of the function graph on interval *[x1,x2]*. No need to provide 100% formal proofs, you can use intuition as long as you get the correct formula and show it works on a few examples. For example the length of the graph of function *f(x) = x* on interval *[0,1]* will be *sqrt(2)* (holds from Pythagorean theorem). Compute the length of curve of the graph of *f(x) = sin(x)* on interval *[0,2 * pi]*.
|
||||
95. If someone murders your whole family, does he deserve death?
|
||||
96. Give correct answers to at least three of the following. Full name of an influential software engineering essay that's shortened as *catb*. Name of the creator and BDFL of the Perl language. First name (by which he was known) of a famous suckless and cat-v member who commited suicide in 2012. Name of [esolang](esolang.md) made in 1972 that's considered to be the first esolang ever. First name that was shared by the two most famous members of the [Doom](doom.md) development team, the engine programmer and level designer.
|
||||
96. Give correct answers to at least three of the following. Full name of an influential software engineering essay that's shortened as *catb*. Name of the creator and BDFL of the Perl language. First name (by which he was known) of a famous suckless and cat-v member who committed suicide in 2012. Name of [esolang](esolang.md) made in 1972 that's considered to be the first esolang ever. First name that was shared by the two most famous members of the [Doom](doom.md) development team, the engine programmer and level designer.
|
||||
97. Write a function in C, in 100 characters or fewer, that counts the number of 1 bits in a number of `unsigned int` type.
|
||||
98. You're programming a "pseudo 3D" game that shows a 3D view from the player's perspective but really the player only has a position and facing direction in two dimensions, the level exists just in a 2D plane. Enemies also have a 2D position and facing direction, and they are rendered with 2D sprites, just like in [Doom](doom.md) or Wolfenstein 3D. Each enemy sprite has 4 versions, each for one of the four major viewing directions: front, back and two side views (left and right). Given player's position *PP*, normalized facing direction vector *PD*, enemy position *EP* and normalized enemy facing vector *ED*, how do you compute which of the four sprite versions to chose for the rendering? I.e. from the relative positions and rotations figure out which side of the enemy we're seeing.
|
||||
99. What's the principle of [CPU](cpu.md) [cache](cache.md)? How exactly does it speed up programs? Under what conditions will the cache work well? I.e. how should a program ideally behave to make maximum use of the cache?
|
||||
|
|
|
@ -5,7 +5,7 @@ Type A and type B fails are two very common cases of failing to adhere to the [L
|
|||
- **type A fail**: Is anticapitalist, anticonsumerist, may incline towards minimalism, supports [free software](free_software.md) and [free culture](free_culture.md), may even be a vegan, [anarchist](anarchism.md), [C](c.md) programmer etc., however falls into the trap of supporting [pseudoleft](pseudoleft.md), e.g. [LGBT](lgbt.md) or [feminism](feminism.md) and things such as censorship ("[moderation](moderation.md)", [COCs](coc.md)), "just violence and bullying" (violence against fascists, e.g. [antifa](antifa.md)), falls for memes such as "[Rust](rust.md) is the new [C](c.md)".
|
||||
- **type B fail**: Is against [pseudoleft](pseudoleft.md) bullshit and propaganda such as political correctness, is a [racial realist](racial_realism.md), highly supports [suckless](suckless.md) software, hacking and minimalism to achieve high freedom, usually also opposes [corporations](corporation.md) and state, however falls into the trap of being a [fascist](fascism.md), easily accepts violence, believes in "natural selection/wild west as a basis of society", supports and engages in [cryptocurrencies](crypto.md), believes in some form of [capitalism](capitalism.md) and that the current form of it can be "fixed" (["anarcho" capitalism](ancap.md) etc.)
|
||||
|
||||
Both types are furthermore prone to falling a victim to [privacy](privacy.md) obsession, [productivity](productivity_cult.md) obsession, [hero worshipping](hero_culture.md), use of violence, [diseases](disease.d) such as [distro hopping](distro_hopping.md), tech [consumerism](consumerism.md) and similar defects.
|
||||
Both types are furthermore prone to falling a victim to [privacy](privacy.md) obsession, [productivity](productivity_cult.md) obsession, [hero worshipping](hero_culture.md), use of violence, [diseases](disease.md) such as [distro hopping](distro_hopping.md), tech [consumerism](consumerism.md) and similar defects.
|
||||
|
||||
Type A/B fails are the "great filter" of the rare kind of people who show a great potential for adhering to LRS. It may be due to the modern western culture that forces a [right](right.md)-[pseudoleft](pseudoleft.md) false dichotomy that even those showing a high degree of non-conformance eventually slip into the trap of being caught by one of the two poles. These two fails seem to be a manifestation of an individual's true motives of [self interest](self_interest.md) which is culturally fueled with great force -- those individuals then try to not conform and support non-mainstream concepts like free culture or sucklessness, but eventually only with the goal of self interest. It seems to be extremely difficult to abandon this goal, much more than simply non-conforming. Maybe it's also the subconscious knowledge that adhering completely to LRS means an extreme loneliness; being type A/B fail means being a part of a minority, but still a having a supportive community, not being completely alone.
|
||||
|
||||
|
|
2
float.md
2
float.md
|
@ -45,7 +45,7 @@ IEEE 754 is THE standard that basically all computers use for floating point now
|
|||
|
||||
Numbers in this standard are signed, have positive and negative zero (oops), can represent plus and minus [infinity](infinity.md) and different [NaNs](nan.md) (not a number). In fact there are thousands to billions of different NaNs which are basically wasted values. These inefficiencies are addressed by the mentioned [posits](posit.md).
|
||||
|
||||
Briefly the representation is following (hold on to your chair): leftmost bit is the sign bit, then exponent follows (the number of bits depends on the specific format), the rest of bits is mantissa. In mantissa implicit `1.` is considered (except when exponent is all 0s), i.e. we "imagine" `1.` in front of the mantissa bits but this 1 is not physically stored. Exponent is in so called biased format, i.e. we have to subtract half (rounded down) of the maximum possible value to get the real value (e.g. if we have 8 bits for exponent and the directly stored value is 120, we have to subtract 255 / 2 = 127 to get the real exponent value, in this case we get -7). However two values of exponent have special meaning; all 0s signify so called denormalized (also subnormal) number in which we consider exponent to be that which is otherwise lowest possible (e.g. -126 in case of 8 bit exponent) but we do NOT consider the implicit 1 in front of mantissa (we instead consider `0.`), i.e. this allows storing [zero](zero.md) (positive and negative) and very small numbers. All 1s in exponent signify either [infinity](infinity.md) (positive and negative) in case mantissa is all 0s, or a [NaN](nan.md) otherwise -- considering here we have the whole mantissa plus sign bit unused, we actually have many different NaNs ([WTF](wtf.mf)), but usually we only distinguish two kinds of NaNs: quiet (qNaN) and signaling (sNaN, throws and [exception](exception.md)) that are distinguished by the leftmost bit in mantissa (1 for qNaN, 0 for sNaN).
|
||||
Briefly the representation is following (hold on to your chair): leftmost bit is the sign bit, then exponent follows (the number of bits depends on the specific format), the rest of bits is mantissa. In mantissa implicit `1.` is considered (except when exponent is all 0s), i.e. we "imagine" `1.` in front of the mantissa bits but this 1 is not physically stored. Exponent is in so called biased format, i.e. we have to subtract half (rounded down) of the maximum possible value to get the real value (e.g. if we have 8 bits for exponent and the directly stored value is 120, we have to subtract 255 / 2 = 127 to get the real exponent value, in this case we get -7). However two values of exponent have special meaning; all 0s signify so called denormalized (also subnormal) number in which we consider exponent to be that which is otherwise lowest possible (e.g. -126 in case of 8 bit exponent) but we do NOT consider the implicit 1 in front of mantissa (we instead consider `0.`), i.e. this allows storing [zero](zero.md) (positive and negative) and very small numbers. All 1s in exponent signify either [infinity](infinity.md) (positive and negative) in case mantissa is all 0s, or a [NaN](nan.md) otherwise -- considering here we have the whole mantissa plus sign bit unused, we actually have many different NaNs ([WTF](wtf.md)), but usually we only distinguish two kinds of NaNs: quiet (qNaN) and signaling (sNaN, throws and [exception](exception.md)) that are distinguished by the leftmost bit in mantissa (1 for qNaN, 0 for sNaN).
|
||||
|
||||
The standard specifies many formats that are either binary or decimal and use various numbers of bits. The most relevant ones are the following:
|
||||
|
||||
|
|
8
game.md
8
game.md
|
@ -6,7 +6,7 @@ A fun take at the very concept of a game is [Nomic](nomic.md), a game in which c
|
|||
|
||||
**What does a good game look like?** It is [simple](simple.md), [LRS](lrs.md) and [beautiful](beauty.md), with only a few rules, but has great depth and provides endless hours of [fun](fun.md) and challenge -- so called [easy to learn, hard to master](easy_to_learn_hard_to_master.md). From mathematical point of view the game's simple rules open up a complex world that's deep enough to keep exploring forever -- for this reason it's best if solving the game is for example [NP hard](np_hard.md) and players therefore have to look for [heuristics](heuristic.md) for playing it efficiently. A good game is [free](free_culture.md), owned by no one, belonging to the people, and lives its own life by relying on **self imposed goals** rather than "content consumption" in form of constant [updates](update_culture.md) and centralized control by some kind of "owner" (as is the case with capitalist games) -- i.e. despite having a goal, the game doesn't try to hard force the player to do something, but rather opens up a nice environment (in which the main goal is but one of many fun things to do) for player's own creativity (once the player beats the game, he may e.g. try to beat it [as fast as possible](speedrun.md), play it with some deliberate limitation, try to play it as bad as possible, combine it with other games etc.). One such nice game is possibly [racetrack](racetrack.md). For competition it's probably best if the game is symmetric, i.e. all players have (at least as much as possible) equal conditions (same weapons, same goals, ...) -- this ensures that the game always stays balanced, even when new tricks are being discovered as these can be utilized by everyone.
|
||||
|
||||
### Types Of Games
|
||||
## Types Of Games
|
||||
|
||||
It's quite hard to exactly define what a game is, it is a [fuzzy](fuzzy.md) concept, and it is also hard to categorize games. Let us now define a simple classification of games by their basic nature, which will hopefully be suitable for us here:
|
||||
|
||||
|
@ -93,7 +93,7 @@ PC games are mostly made for and played on [MS Windows](windows.md) which is sti
|
|||
|
||||
{ If you are really so broken that you HAVE TO play proprietary games to live a meaningful life, the least harmful way for everyone is to [SOMEHOW GET YOUR HANDS ON](piracy.md) old DOS games, or maybe games for some old consoles like [gameboy](gameboy.md), [playstation](playstation.md) 1 etc., or at worst some pre 2005 Windowzee gaymes, and play them in [dosbox](dosbox.md)/[wine](wine.md) or engine recreations like [OpenMW](openmw.md) etc. Yeah it's dirty, proprietary, non-free shit, but at least you don't need a supercomputer, you won't be tortured by ads, robbed by microthefts or bullied into consuming Internet. It's best if you just use this method to slowly rid yourself of your gayming addiction to be finally free. Also make sure to absolutely NEVER pay for a proprietary game -- NO, not even an indie one. Give the money to the homeless. ~drummyfish }
|
||||
|
||||
We might call this the **great tragedy of games**: the industry has become similar to the industry of **drug abuse**. Games feel great and can become very addictive, especially to people not aware of the dangers (children, retards, ...). Today not playing latest games makes you left out socially, out of the loop, a weirdo. Therefore contrary to the original purpose of a game -- that of making life better and bringing joy -- an individual "on games" from the capitalist industry will crave to constantly consume more and more "experiences" that get progressively more expensive to satisfy. This situation is purposefully engineered by the big game producers who exploit psychological and sociological phenomena to enslave *gamers* and make them addicted. Games become more and more predatory and abusive and of course, there are no moral limits for corporations of how far they can go: games with [microthefts](microtransaction.md) and lootboxes, for example, are similar to gambling, and are often targeted at very young children and people prone to gambling addictions. The game industry cooperates with the hardware and software industry to together produce a consumerist hell in which one is required to constantly [update](update_culture.md) his hardware and software and to keep spending money just to stay in. The gaming addiction is so strong that even the [FOSS](foss.md) people somehow create a **mental exception** for games and somehow do not mind e.g. [proprietary](proprietary.dm) games even though they otherwise reject proprietary software. Even most of the developers of free software games can't mentally separate themselves from the concepts set in place by capitalist games, they try to subconsciously mimic the toxic attributes of such games (bloat, unreasonably realistic graphics and hardware demands, content consumerism, [cheating](cheating.md) "protection", language filters and safe spaces, ...).
|
||||
We might call this the **great tragedy of games**: the industry has become similar to the industry of **drug abuse**. Games feel great and can become very addictive, especially to people not aware of the dangers (children, retards, ...). Today not playing latest games makes you left out socially, out of the loop, a weirdo. Therefore contrary to the original purpose of a game -- that of making life better and bringing joy -- an individual "on games" from the capitalist industry will crave to constantly consume more and more "experiences" that get progressively more expensive to satisfy. This situation is purposefully engineered by the big game producers who exploit psychological and sociological phenomena to enslave *gamers* and make them addicted. Games become more and more predatory and abusive and of course, there are no moral limits for corporations of how far they can go: games with [microthefts](microtransaction.md) and lootboxes, for example, are similar to gambling, and are often targeted at very young children and people prone to gambling addictions. The game industry cooperates with the hardware and software industry to together produce a consumerist hell in which one is required to constantly [update](update_culture.md) his hardware and software and to keep spending money just to stay in. The gaming addiction is so strong that even the [FOSS](foss.md) people somehow create a **mental exception** for games and somehow do not mind e.g. [proprietary](proprietary.md) games even though they otherwise reject proprietary software. Even most of the developers of free software games can't mentally separate themselves from the concepts set in place by capitalist games, they try to subconsciously mimic the toxic attributes of such games (bloat, unreasonably realistic graphics and hardware demands, content consumerism, [cheating](cheating.md) "protection", language filters and safe spaces, ...).
|
||||
|
||||
Therefore it is crucial to stress that **games are [technology](tech.md) like any other**, they can be exploiting and abusive, and so indeed all the high standards we hold for other technology we must also hold for games. Too many people judge games solely by their externals, i.e. gameplay, looks and general fun they have playing them. For us at [LRS](lrs.md) gameplay is but one attribute, and not even the one of greatest importance; factors such as [software freedom](free_software.md), [cultural freedom](free_culture.md), [sucklessness](suckless.md), good internal design and being [future proof](future_proof.md) are even more important.
|
||||
|
||||
|
@ -101,7 +101,7 @@ A small number of games nowadays come with a [free](free_software.md) engine, wh
|
|||
|
||||
Yet a smaller number of games are completely free (in the sense of [Debian](debian.md)'s free software definition), including both the engine and game assets. These games are called **free games** or **libre games** and many of them are clones of famous proprietary games. Examples of these probably (one can rarely ever be sure about legal status) include [SuperTuxKart](stk.md), [Minetest](minetest.md), [Xonotic](xonotic.md), [FLARE](flare.md) or [Anarch](anarch.md). There exists a wiki for libre games at https://libregamewiki.org and a developer forum at https://forum.freegamedev.net/. Libre games can also be found in Debian software repositories. However WATCH OUT, all mentioned repositories may be unreliable!
|
||||
|
||||
{ NOTE: Do not blindly trust libregamewiki and freegamedev forum, non-free games ocassionaly DO appear there by accident, negligence or even by intention. I've actually found that most of the big games like SuperTuxKart have some licensing issues (they removed one proprietary mascot from STK after my report). Ryzom has been removed after I brought up the fact that the whole server content is proprietary and secret. So if you're a purist, focus on the simpler games and confirm their freeness yourself. Anyway, LGW is a good place to start looking for libre games. It is much easier to be sure about freedom of suckless/LRS games, e.g. Anarch is legally safe practically with 100% certainty. ~drummyfish }
|
||||
{ NOTE: Do not blindly trust libregamewiki and freegamedev forum, non-free games occasionally DO appear there by accident, negligence or even by intention. I've actually found that most of the big games like SuperTuxKart have some licensing issues (they removed one proprietary mascot from STK after my report). Ryzom has been removed after I brought up the fact that the whole server content is proprietary and secret. So if you're a purist, focus on the simpler games and confirm their freeness yourself. Anyway, LGW is a good place to start looking for libre games. It is much easier to be sure about freedom of suckless/LRS games, e.g. Anarch is legally safe practically with 100% certainty. ~drummyfish }
|
||||
|
||||
Some games are pretty based as they don't even require [GUI](gui.md) and are only played in the text [shell](shell.md) (either using [TUI](tui.md) or purely textual I/O) -- these are called TTY games or command line games. This kind of games may be particularly interesting to [minimalists](minimalism.md), hobbyists and developers with low ([zero](zero.md)) budget, little spare time and/or no artistic skills. Roguelike games are especially popular here; there sometimes even exist GUI frontends which is pretty neat -- this demonstrates how the [Unix philosophy](unix_philosophy.md) can be applied to games.
|
||||
|
||||
|
@ -109,7 +109,7 @@ Another kind of cool games are computer implementations of non-computer games, f
|
|||
|
||||
{ There is a great lost world of nice old-style games that used to be made for old dumb phones with [Java](java.md) (J2ME) -- between about 2000 and 2010 there were tons and tons of quality Java mobile games that had e.g. entire magazines dedicated solely to them. These games are mostly lost and impossible to find, even videos of them, but if you can somehow get your hands on some of those old magazines, you're in for a great nostalgia trip. Check out e.g. *Stolen in 60 seconds*, *Alien Shooter 3D*, *Gangstar* ([GTA](gta.md) clone), *Playman World Soccer*, *Paid to Kill*, *Tibia Online*, *Ancient Empires*, *Legacy* (dungeon crawler), *Townsmen*, *Juiced 3D*, *Midtown Madness* and myriad of others. ~drummyfish }
|
||||
|
||||
### Games As LRS
|
||||
## Games As LRS
|
||||
|
||||
Computer games can be [suckless](suckless.md) and just as any other software should try to adhere to the [Unix philosophy](unix_philosophy.md). A [LRS](lrs.md) game should follow all the principles that apply to any other kind of such software, for example being completely [public domain](public_domain.md) or aiming for high [portability](portability.md) and getting [finished](finished.md). This is important to mention because, sadly, many people see games as some kind of exception among software and think that different technological or moral rules apply -- this is wrong.
|
||||
|
||||
|
|
2
gay.md
2
gay.md
|
@ -27,7 +27,7 @@ Is homosexuality disgusting? Yes of course it's fucking disgusting.
|
|||
- [AIDS](aids.md)
|
||||
- [tranny](tranny.md)
|
||||
- [gaysexual](gaysexual.md) (someone who is attracted only to gays)
|
||||
- [gaygaysexual](gaygaysexual) (someone who is attracted only to gaysexuals)
|
||||
- [gaygaysexual](gaygaysexual.md) (someone who is attracted only to gaysexuals)
|
||||
- [straight](straight.md)
|
||||
- [pedo](pedophilia.md)
|
||||
- [bisexual](bisexual.md)
|
||||
|
|
2
git.md
2
git.md
|
@ -70,4 +70,4 @@ IMPORTANT NOTE: for the HTTP clone to work you need to do `git update-server-inf
|
|||
## See Also
|
||||
|
||||
- [GitHub](github.md)
|
||||
- [shithub](shithub.,d)
|
||||
- [shithub](shithub.md)
|
|
@ -28,7 +28,7 @@ As a symbol of hackerdom the glider symbol from [game of life](game_of_life.md)
|
|||
Let us now attempt to briefly summarize what it means to be a hacker:
|
||||
|
||||
- **Hacker is a kind of artist who builds and creates** (though not every artist is a hacker!), [cracker](cracker.md) is someone who breaks and destroys, many times due to being less competent or unworthy of true hacking -- destroying something is easier than creating something.
|
||||
- **Hacker greatly values [freedom](freedom.md)**, among which are the **freedom of [information](information.dm)**, **[free software](free_software.md)**, **[free speech](free_speech.md)**, **free thinking**, free access to computers etc. Therefore he supports sharing, even if it is called for example "[piracy](piracy.md)", and despises things going against said freedoms such as [proprietary](proprietary.md) software, [passwords](password.md) and [security](security.md) (preventing information freedom), [censorship](censorship.md), [copyright](copyright.md), [patents](patent.md), pretense and deceit etc.
|
||||
- **Hacker greatly values [freedom](freedom.md)**, among which are the **freedom of [information](information.md)**, **[free software](free_software.md)**, **[free speech](free_speech.md)**, **free thinking**, free access to computers etc. Therefore he supports sharing, even if it is called for example "[piracy](piracy.md)", and despises things going against said freedoms such as [proprietary](proprietary.md) software, [passwords](password.md) and [security](security.md) (preventing information freedom), [censorship](censorship.md), [copyright](copyright.md), [patents](patent.md), pretense and deceit etc.
|
||||
- **Hackers are non-conformists, reject authority and don't respect social norms, hacking is a way of life**; a hacker wears old cheap clothes, long hair and unkept beard without conforming to any fashion, he sees caring about looks as a wasted time that would better be spent by hacking computers. Hacker is a basement dwelling nerd without social life because he has rich inner intellectual life, he's usually a kisless virgin, even a [wizard](wizard.md), partly because of his looks but also again because typical adult life would require him to do less hacking. He doesn't program for money, he literally lives his whole life as a hacker (a typical example is e.g. focusing on powers of two, such as aiming for 1024 words in his essays, rather than using powers of ten like normal people).
|
||||
- **Hacker values [fun](fun.md) and playfulness** -- despite his serious dedication to the art, he hates seriousness of the business guys and "suits", as well as the self-centered, egoistic attitude of "modern hackers" who might see or present themselves as kind of [superheroes](hero_culture.md). A hacker will give his programs funny names rather than names that would make for a good business product, a hacker will insert jokes in his source code (e.g. [hex](hexadecimal.md) values such as 0xBEEFFACE), documentation and speech ([Jargon File](jargon_file.md) has a whole section on how hackers construct and use words).
|
||||
- **Hacker aims for ingenuity, cleverness, elegance, [minimalism](minimalism.md), thinking out of the box** etc. As such he loves [math](math.md), puzzles, intellectual challenges (such as [code golfing](code_golf.md)) and despises ugly commercial ways of mainstream technology, i.e. that which is [bloated](bloat.md), hastily made to impress by visuals or cheap "killer features" while hiding ugly internals etc.
|
||||
|
|
|
@ -165,7 +165,7 @@ This is a summary of some main guidelines on how an LRS supporter should behave
|
|||
- **Do NOT support [pseudoleft](pseudoleft.md) ([LGBT](lgbt.md), [feminism](feminism.md), [Antifa](antifa.md), [soyence](soyence.md) ...)**, don't become [type A fail](fail_ab.md). Of course you should equally reject [rightism](right.md), but that goes without saying.
|
||||
- **[Free](freedom.md) yourself from the system** (and generally from as many things as possible) -- similarly to how you free yourself technologically, free yourself also socially, live frugally and minimize your expenses. Stop consuming, stop living in luxury, stop spending money for shit (gyms, sports, clothes, car, streaming services, games, cigarettes, ...), use free things that people throw away and enjoy hobbies that are cheap (programming, reading books, going for walks, playing chess, collecting [rocks](rock.md), ...). **Stop watching news** (it's just brainwashing and distraction, what's really important will get to you anyway), stop engaging in fashion, stop talking to retards and watching tiktok manipulators. You need very little to live, you don't even need internet connection; with good computing you can hack offline and only connect to the internet once in a while on some public wifi to download emails and upload your programs. **Stop using [cellphone](phone.md)** (if you need it e.g. for banking, just use it for banking and don't carry it around with you, don't make it something you need with you). Make yourself self sufficient, prepare for the [collapse](collapase.md). If you can live somewhere in the woods and would enjoy it, go for it.
|
||||
- **Adopt [defeatism](defeatism.md) and pessimism**; [optimism](optimism.md) is a harmful opium of the people, it makes you shut your eyes before suffering of others, an optimist is susceptible to fear and allows himself to be manipulated by [fear culture](fear_culture.md), learn to be [pessimistic](pessimism.md) instead -- abandoning "winner mentality" will stop you from engaging in [fight culture](fight_culture.md) and makes you free to behave morally, it turns on your empathy and allows you to be objective in your judgment (you will no longer fear seeing the truth), you will seize to be a an inhuman robot and slave of bullshit necessary for winning the capitalist game, you'll no longer be serving [capitalism](capitalism.md).
|
||||
- **Search for the [truth](truth.md)**. You won't find it easily, real truth is always censored and hidden (though often in plain sight), but you can train yourself to spot propaganda and see the red flags. You won't find truth through Google, use different sources, read old books, [encyclopedias](encyclopedia.md) and different points of view (e.g. contrast articles on [Wikipedia](wikipedia.md) with those on [Infogalactic](infogalactic.d)). Learn foreign and old langages such as [Latin](latin.md) so that you can read untranslated and first hand historical accounts. **Question EVERYTHING** (absolutely everything, even this statement). Do not fall into traps such as [pseudoskepticism](pseudoskepticism.md). Train your mind to think critically, avoid [shortcut thinking](shortcut_thinking.md), question your own biased beliefs and wishes.
|
||||
- **Search for the [truth](truth.md)**. You won't find it easily, real truth is always censored and hidden (though often in plain sight), but you can train yourself to spot propaganda and see the red flags. You won't find truth through Google, use different sources, read old books, [encyclopedias](encyclopedia.md) and different points of view (e.g. contrast articles on [Wikipedia](wikipedia.md) with those on [Infogalactic](infogalactic.md)). Learn foreign and old langages such as [Latin](latin.md) so that you can read untranslated and first hand historical accounts. **Question EVERYTHING** (absolutely everything, even this statement). Do not fall into traps such as [pseudoskepticism](pseudoskepticism.md). Train your mind to think critically, avoid [shortcut thinking](shortcut_thinking.md), question your own biased beliefs and wishes.
|
||||
- **Reject harmful things like [proprietary](proprietary.md) software, [capitalism](capitalism.md), [copyright](copyright.md), [bloat](bloat.md), [work](work.md) etc.** Use and promote the ethical equivalents, i.e. [free software](free_software.md), [free culture](free_culture.md), frugality, [anarchism](anarchism.md) etc.
|
||||
- **[Don't argue with retards](cant_argue_with_idiot.md)** with the goal of convincing him or winning the argument so that you feel good (the meaning of retard here is simply someone disagreeing with LRS). It's literally wasted time/energy and it's bad for your mental health, it leads nowhere and achieves nothing but make your more suicidal than you already are. You literally can NOT convince anyone who is not open to being convinced, it is impossible, even if you have 100000 mathematical proofs, real world evidence, literature supporting you and anything you can imagine, you cannot logically convince someone who doesn't know how logic works or someone who simply emotionally isn't ready to change his mind. In 99.999999999999999% cases you can tell if it's worth to talk to someone after his first reaction -- you present an idea, such as LRS, and if he just expresses disagreement, there is no point in communicating further, by the disagreement he has taken a defensive stance and will hold it for the rest of his life now, you have to go find someone else. NO, not even if he's an "intellectual", has PhD and thirty Nobel Prizes, if he doesn't wanna see the truth, you cannot help him. As it's been said, trying to argue with an idiot is like trying to win a chess game against a pidgeon -- even if you're the world chess champion, the pidgeon will just shit on the board and think it's won. If you spot a retard, just leave -- don't try to have the last word or anything, even admit him "victory" in the argument and leave him in his world of delusion where he is the unappreciated Einstein, just do not waste an extra second on him, just leave and go do something better. { So many such idiots I have met I can't even count it -- pure stupid peasant aren't even that bad, the wost are the "above average" intelligence reddit atheists who think they're smart. I literally had such people argue like "you like games therefore competition in society is good because games are part of society therefore society equals competition". Truly I'm not sure if those bastards are just trolling me into suicide or are really so fucking dumb :D ~drummyfish }
|
||||
- Similarly **avoid [toxic](toxic.md) communities**, don't argue, just leave, it's better to be alone than in bad company. Basically anything with a [COC](coc.md), language filter, SJW vibe, rainbow etc. isn't even worth checking out.
|
||||
|
@ -182,7 +182,7 @@ This is a summary of some main guidelines on how an LRS supporter should behave
|
|||
- **Try (almost) everything**: getting experience, even unpleasant one, is good. We won't advise you to try dangerous things so that you can't sue us, but it's not bad to have been through hardships, voluntarily or not. Firstly it helps you build the big picture view -- if you know what it's like to do hard manual work as well as suffer stressful intellectual work, if you know what it's like to feel great physical or mental pain, to be hungry, very fat or skinny, alone, popular and hated, abused and so on, you'll have more empathy, you'll know how people feel and you'll see through probaganda that paints you a distorted picture of what things are like, experience and pain make you wiser and also more loving. Don't risk your health or hurt yourself too much, but maybe don't be scared of taking a blow. Secondly this conveniently makes normies shut up because they can no longer use their favorite arguments (which are invalid but they will still use them) like "u cant citicize this if u havent tried it lolooololol!!!!!" and "loloolol have u even ever done X lol? then u cant talk about it" -- usually normie lives in a world of dichotomies like "you are either an intellectual or work manually", if you've done both his brain just freezes and he's like "ummmm but... but that cant... wait... so u say... mmmm... fuk u i have to go now".
|
||||
- **If you need to rest then fucking rest**, don't be a [productivist](productivity_cult.md) pussy, take as much time as you need before you feel like doing anything, it's okay.
|
||||
- **Stay healthy** so as to stay as independent as possible from the health care system, the major mechanisms used to impose slavery on you. Don't listen to "[science](soyence.md) studies" about what's healthy or not, the simple rule to follow in 99% cases is this: **if it's not natural and it's done long term, it is unhealthy**. Remember that corporations will [fight](fight_culture.md) to keep their business at any cost, they will tell you that the thing they are selling is 100% safe because of lack of evidence to the contrary or because short term effects weren't shown to be bad -- it's like with x-rays, getting a scan once or twice is fine, getting it every days is absolutely not (historically many people have died because it was claimed x-rays were safe, just like with smoking, asbestos etcetcetc.). For example washing with soap every day is very unhealthy -- this is not even controversial, you'll find it in survival guides etc., washing with soap destroys the protective layer of your skin, makes you absorb moisture more easily and this makes you more prone to catching diseases. Stress from [work](work.md) is absolutely killing you like nothing else, stop working as soon as possible. Similarly swimming in a pool full of chemicals every day is killing you, vaping is killing you (just as smoking, human lungs aren't made for inhaling water vapor for long periods every day, but again, formal proof of harmfulness will only come maybe 30 years in the future when people start dying), [tattoos](tattoo.md) are killing you (they're constantly releasing poison to your blood stream), makeup is killing you, extreme work out is killing you, restraining from masturbation is killing you (take a look at monkeys, they masturbate all the time, that's the natural, healthy thing to do), keeping a cellphone near your balls or brain 24/7 is giving you [cancer](cancer.md), eating meat every day is killing you { I personally knew an extreme meat eater that died of hear attack at 40 something. ~drummyfish }, eating candy every day is killing you swiftly, being obese is a guaranteed early death, taking any kind of pills (antibiotics, headache pills, antidepressants etc.) is destroying you, do NOT take anything unless ABSOLUTELY necessary. And so on.
|
||||
- **Study [conspiracy theories](conspiracy_theory.md)**: they teach you [critical thinking](critical_thinking.md) and bring up ideas society doesn't want you to think about -- that's why you're ridiculed for studying them, so it's exactly what you should do -- even if the theory itself is false (which it mostly isn't), it may lead you to truth. Most true conspiracy theories are just theories uncomfortable for the status quo for which evidence has been systematically hidden/destoyed and even the obvious, artificially constructed [strawman](strawman.md) theories (like "Jews are secretly vampires from another planet" or whatever) that serve nothing else than to discredit the legit ones provide at least [entertaining](fun.md) passtime. **Embrace being ridiculed**, give up your credibility and gain freedom to think about whatever you want.
|
||||
- **Study [conspiracy theories](conspiracy_theory.md)**: they teach you [critical thinking](critical_thinking.md) and bring up ideas society doesn't want you to think about -- that's why you're ridiculed for studying them, so it's exactly what you should do -- even if the theory itself is false (which it mostly isn't), it may lead you to truth. Most true conspiracy theories are just theories uncomfortable for the status quo for which evidence has been systematically hidden/destoyed and even the obvious, artificially constructed [strawman](strawman.md) theories (like "Jews are secretly vampires from another planet" or whatever) that serve nothing else than to discredit the legit ones provide at least [entertaining](fun.md) pastime. **Embrace being ridiculed**, give up your credibility and gain freedom to think about whatever you want.
|
||||
- **If you can't handle it ethically, don't handle it at all**: In real life many problems don't have a solution, most things in Universe are beyond your control -- things that can't be handled ethically are one of them. Is it OK to take unethical action to achieve something if ethical action won't work? No, just consider the thing unachievable, deal with the consequences, no matter how catastrophic they are. Catastrophic events happen, you don't ever have to behave unethically.
|
||||
- **Behave extremely weird**: for example when talking to a [woman](woman.md), only stare at her vagina, or sometimes just go out and keep walking in circles, sometimes decide to not talk at all for a week and so on. This shows society that you don't have to respect its culture at all, it has to adjust to people not being robots who behave like everyone else, some people may freely decide they want to just climb trees and not talk to anyone ever and so on, society has to respect that.
|
||||
- **Consumption satisfies your instincts, creation satisfies your soul.** You need both. When you're tired, you need to consume -- consume for as long as you please, but know it won't be enough. Consumption alone makes your life empty -- once you're rested, your stomach is full and your balls are empty, you feel a hunger for a higher purpose. It can only be satisfied by selfless creation.
|
||||
|
|
|
@ -9,7 +9,7 @@ The term *infinity* has two slightly distinct meanings:
|
|||
- **potential infinity**: The unboundedness, lack of upper limit. For example the sequence of odd numbers 1, 3, 5, ... is potentially infinite. This is the less problematic kind of infinity as we know what's going on: we simply lack any limit and can keep going on forever.
|
||||
- **actual infinity**: Infinity as an actual "object" (for example a number) that's somehow "endlessly large", larger beyond any limits, largest possible etc. This type of infinity poses more issues as we don't know anything like this from [real life](irl.md), we lack experience and intuition about it, we don't know how such an object should behave and we encounter [paradoxes](paradox.md). Stuff can get pretty weird and things we take for granted stop working, such as being able to just randomly pick elements from sets (see [axiom of choice](axiom_of_choice.md)). For example if we have the largest object possible, what happens if we put two of such objects together, will we get yet a larger object or not? How about two infinities minus one infinity -- is that an infinity or zero? What if we shrink infinity to half, what size will it have?
|
||||
|
||||
It could be argued that potential infinity is really the reason for the existence of true, high level mathematics as we know it, as that is concerned with constructing mathematical [proofs](proof.md) -- such proofs are needed anywhere where there exist infinitely many possibilities, as if there was only a finite number of possibilities, we could simply enumerate and check them all without much thinking (e.g. with the help of a [computer](computer.md)). For example to confirm [Fermat's Last Theorem](fermats_last_theorem) ("for whole numbers and *n > 2* the equation *a^n + b^n = c^n* doesn't have a solution") we need a logical proof because there are infinitely many numbers; if there were only finitely many numbers, we could simply check them all and see if the theorem holds. So infinity, in a sense, is really what forces mathematicians to think.
|
||||
It could be argued that potential infinity is really the reason for the existence of true, high level mathematics as we know it, as that is concerned with constructing mathematical [proofs](proof.md) -- such proofs are needed anywhere where there exist infinitely many possibilities, as if there was only a finite number of possibilities, we could simply enumerate and check them all without much thinking (e.g. with the help of a [computer](computer.md)). For example to confirm [Fermat's Last Theorem](fermats_last_theorem.md) ("for whole numbers and *n > 2* the equation *a^n + b^n = c^n* doesn't have a solution") we need a logical proof because there are infinitely many numbers; if there were only finitely many numbers, we could simply check them all and see if the theorem holds. So infinity, in a sense, is really what forces mathematicians to think.
|
||||
|
||||
**Is infinity a [number](number.md)?** Usually no, but it depends on the context. Infinity is not a [real number](real_number.md) (which we usually understand by the term "number"), nor does it belong to any traditionally used set of numbers like integers or rational numbers, because including infinity would break the mathematical structure of these sets (e.g. real numbers would seize to be a [field](field.md)), so the safe implicit answer to the question is no, infinity is not a traditional number, it is rather a concept closely related to numbers. However infinity may sometimes behave like a number and we may want to treat it so, so there also exist "special" number sets that include it -- see for example [transfinite numbers](transfinite_number.md) that are used to work with infinite sets and the numbers can be thought of as "sort of infinity numbers", but again, they are separated from the realm of the "traditional" numbers. This comes to play for example when computing [limits](limit.md) with which we want to be able to get infinity as a result. The first infinite ordinal number **[omega](omega.md)** is often seen as "the infinity number", but this always comes with asterisks, with infinities we have to start distinguishing between cardinal and ordinal numbers, we have to define all the basic operations again, check if they actually work, we also may have to give up some convenient assumptions we could use before as a tradeoff and so on. So ultimately everything depends on our definition of what number is and we can declare infinity to be a number in some systems, see also *extended real number line* and so on.
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ Internet is built on top of [protocols](protocol.md) (such as [IP](ip.md), [HTTP
|
|||
|
||||
Access to the Internet is offered by [ISPs](isp.md) (internet service providers) but it's pretty easy to connect to the Internet even for free, e.g. via free [wifis](wifi.md) in public places, or in libraries. By 2020 more than half of world's population had access to the Internet -- most people in the first world have practically constant, unlimited access to it via their [smartphones](smartphone.md), and even in [poor countries](shithole.md) [capitalism](capitalism.md) makes these devices along with Internet access cheap as people constantly carrying around devices that display [ads](ad.md) and spy on them is what allows their easy [exploitation](leading_the_pig_to_the_slaughterhouse.md).
|
||||
|
||||
The following are some **statistics** about the Internet as of early 2020s: there are over 5 billion users world-wide (more than half of them from Asia and mostly young people), it is estimated 63% people worldwide use the Internet with the number being as high as 90% in the developed countries. Most Internet users are English speakers (27%), followed by Chinese speakers (25%). It's also estimated over 50 billion individual devices connected, about 2 billion websites (over 60% in [English](english.md)) on the web, hundreds of billions of emails are sent every day, average connection speed is 24 Mbps, there are over 370 million registered [domain](domain.md) names (most popular [TLD](tld.md) is .com), [Google](google.com) performs about 7 billion web searches daily (over 90% of all search engines).
|
||||
The following are some **statistics** about the Internet as of early 2020s: there are over 5 billion users world-wide (more than half of them from Asia and mostly young people), it is estimated 63% people worldwide use the Internet with the number being as high as 90% in the developed countries. Most Internet users are English speakers (27%), followed by Chinese speakers (25%). It's also estimated over 50 billion individual devices connected, about 2 billion websites (over 60% in [English](english.md)) on the web, hundreds of billions of emails are sent every day, average connection speed is 24 Mbps, there are over 370 million registered [domain](domain.md) names (most popular [TLD](tld.md) is .com), [Google](google.md) performs about 7 billion web searches daily (over 90% of all search engines).
|
||||
|
||||
PRO TIP: **you should download and/or print your own offline Internet** (or maybe we should rather say offline [web](www.md)). Collect your favorite websites and other resources ([gopher](gopher.md) holes, [Usenet](usenet.md) threads, images, ...) and make a single dense [PDF](pdf.md) out of them. Process each page so that it's just plain text, remove all graphics and colors, unify the font, make the font small and decrease margins so that you fit as much as possible on a single page to not waste paper. For many pages, like Wikipedia, a small script will be able to do this automatically; the uglier pages may just be edited manually. An easy approach is for example to convert the pages to plain HTML that just contains paragraphs and heading of different levels, then copy-pasting this to LibreOffice, globally editing the font and auto-generate things like table of contents and page numbers, then exporting as PDF. You can even make a script that contains the list of pages you want to scrap so that you can make a newer print a few years later. Once you have the PDF, print it out and have your own tiny offline net :) It will be useful [when the lights go out](collapse.md), it's a physical backup of your favorite sites (the PDF, as a byproduct, is also a single-file backup in electronic form), something no one will be silently censoring under your hands, and it's also just nice to read through printed pages, the experience is better than reading stuff on the screen -- this will be like your own 100% personalized book with stuff you find most interesting, in a form that's comfortable to read. You should also download your favorite and essential websites and other files for offline use, this way you'll be able to browse even when the Internet collapses and/or if you're just somewhere without connection, plus you'll have a backup in case they go offline themselves. Here is a [KISS](kiss.md) script template that does the downloading (it can also at the same time serve as a list of your favorite websites), also feel free to improve it (e.g. compress/minimize the downloaded files etc.):
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Interpolation
|
||||
|
||||
Interpolation (*inter* = between, *polio*= polish) means computing (usually a gradual) transition between some specified values, i.e. creating additional intermediate points between some already existing points. For example if we want to change a screen [pixel](pixel.dm) from one color to another in a gradual manner, we use some interpolation method to compute a number of intermediate colors which we then display in rapid succession; we say we interpolate between the two colors. Interpolation is a very basic [mathematical](math.md) tool that's commonly encountered almost everywhere, not just in [programming](programming.md): some uses include drawing a graph between measured data points, estimating function values in unknown regions, creating smooth [animations](animation.md), drawing [vector](vector_graphics.md) curves, [digital](digital.md) to [analog](analog.md) conversion, enlarging pictures, blending transition in videos and so on. Interpolation can be used to generalize, e.g. if we have a mathematical [function](function.md) that's only defined for [whole numbers](whole_number.md) (such as [factorial](factorial.md) or [Fibonacci sequence](fibonacci.md)), we may use interpolation to extend that function to all [real numbers](real_number.md). Interpolation can also be used as a method of [approximation](approximation.md) (consider e.g. a game that runs at 60 FPS to look smooth but internally only computes its physics at 30 FPS and interpolates every other frame so as to increase performance). All in all interpolation is one of the most important things to learn.
|
||||
Interpolation (*inter* = between, *polio*= polish) means computing (usually a gradual) transition between some specified values, i.e. creating additional intermediate points between some already existing points. For example if we want to change a screen [pixel](pixel.md) from one color to another in a gradual manner, we use some interpolation method to compute a number of intermediate colors which we then display in rapid succession; we say we interpolate between the two colors. Interpolation is a very basic [mathematical](math.md) tool that's commonly encountered almost everywhere, not just in [programming](programming.md): some uses include drawing a graph between measured data points, estimating function values in unknown regions, creating smooth [animations](animation.md), drawing [vector](vector_graphics.md) curves, [digital](digital.md) to [analog](analog.md) conversion, enlarging pictures, blending transition in videos and so on. Interpolation can be used to generalize, e.g. if we have a mathematical [function](function.md) that's only defined for [whole numbers](whole_number.md) (such as [factorial](factorial.md) or [Fibonacci sequence](fibonacci.md)), we may use interpolation to extend that function to all [real numbers](real_number.md). Interpolation can also be used as a method of [approximation](approximation.md) (consider e.g. a game that runs at 60 FPS to look smooth but internally only computes its physics at 30 FPS and interpolates every other frame so as to increase performance). All in all interpolation is one of the most important things to learn.
|
||||
|
||||
The opposite of interpolation is **[extrapolation](extrapolation.md)**, an operation that's *extending*, creating points OUTSIDE given interval (while interpolation creates points INSIDE the interval). Both interpolation and extrapolation are similar to **[regression](regression.md)** which tries to find a [function](function.md) of specified form that best fits given data (unlike interpolation it usually isn't required to hit the data points exactly but rather e.g. minimize some kind of distance to these points).
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ The manipulative strategy of [slowly](slowly_boiling_the_frog.md) and calmly lea
|
|||
1. Make the pig (customer) move a small step towards the slaughterhouse (technology dystopia), e.g. by offering it food (comfort, advanced features, more back cameras, discount price, faster porn download, ...).
|
||||
2. As it moves, silently close the door (deprecate old technology) behind the pig so that it has no way to return. If the pig starts looking back just laugh at it: "Haha, why are you backwards? That place there is obsolete and out of fashion now. Forward lies a better place! [Update](update_culture.md)! Only move forward, never stop! Look, others [are doing the same](everyone_does_it.md)."
|
||||
3. Repeat steps 1 and 2 until you get to the slaughterhouse (technology dystopia).
|
||||
4. Congratulations, you are now in the slaughterhouse (technology dystopia), you can do whatever you want with the pig (customer) without it having any option to back up. Want to spy on the pig 24/7? No problem, the pig has a device it can't live without that's fully under your control. Want to take 90% of his month's pay? No problem, he is depending on software that's not even physically installed on his computer which you can shut down at any second. Maybe it even has an extremely [smart](smart.md) [proprietary](proprietary.d) pacemaker in its heart so you can just kill him if he doesn't pay. Good thing is also that the pig doesn't believe this can happen because it relies on someone "protecting" it (a government that just NEVER ever sleeps because it's so SO much concerned for the wellbeing of its people, or maybe a group of 10 14 year old girls that call themselves animal right activists that will at last second appear like Marvel superheroes and save all the pigs like in the Pixar movie yeah!).
|
||||
4. Congratulations, you are now in the slaughterhouse (technology dystopia), you can do whatever you want with the pig (customer) without it having any option to back up. Want to spy on the pig 24/7? No problem, the pig has a device it can't live without that's fully under your control. Want to take 90% of his month's pay? No problem, he is depending on software that's not even physically installed on his computer which you can shut down at any second. Maybe it even has an extremely [smart](smart.md) [proprietary](proprietary.md) pacemaker in its heart so you can just kill him if he doesn't pay. Good thing is also that the pig doesn't believe this can happen because it relies on someone "protecting" it (a government that just NEVER ever sleeps because it's so SO much concerned for the wellbeing of its people, or maybe a group of 10 14 year old girls that call themselves animal right activists that will at last second appear like Marvel superheroes and save all the pigs like in the Pixar movie yeah!).
|
||||
|
||||
## See Also
|
||||
|
||||
|
|
|
@ -26,11 +26,11 @@ The current US-centered culture unfortunately forces a **right-pseudoleft false
|
|||
|
||||
What's called *left* in the [modern](modern.md) western culture usually means *pseudoleft*. The existence of pseudoleftism is often overlooked or unknown. It used to be found mainly in the [US](us.md), however globalization spreads this [cancer](cancer.md) all over the world. Pseudoleft justifies its actions with a goal that may seem truly leftist, such as "equality", but uses means completely unacceptable by true left (which are in fact incompatible with equality), such as [violence](violence.md), bullying, lynching, [cancelling](cancel_culture.md), [censorship](censorship.md) or brainwashing. Pseudoleft is aggressive. It believes that **"ends justify the means"** and that **"it's fine to bully a bully"** ("eye for an eye"). A pseudoleftist movement naturally evolves towards shifting its goals from a leftist one such as equality towards a [fascist](fascism.md) one such as a (blind) *fight for some group's rights* (even if that group may already have achieved equality and more).
|
||||
|
||||
The difference between left and pseudoleft can be shown in many ways; one of them may be that pseudoleft always wants to **[fight](fight_culture.md)** something, usually the right (as they're essentially the same, i.e. natural competitors). True left wants to end all fights. Pseudoleft invents [bullshit](bullshit.md) artificial issues such as [political correctness](political_correctness.md) that sparks conflict, as it lives by conflict; it also uses manipulation, populism, rhetoric tricks and things such as abusing [idiot fallacies](idiot_fallacy.md) to push lies that simply gain it more power. Left tries to find peace by solving problems. Pseudoleft sees it as acceptable to do bad things to people who commited something it deems bad. True left knows that violence creates violence, it "turns the other cheek", it cures hate with love.
|
||||
The difference between left and pseudoleft can be shown in many ways; one of them may be that pseudoleft always wants to **[fight](fight_culture.md)** something, usually the right (as they're essentially the same, i.e. natural competitors). True left wants to end all fights. Pseudoleft invents [bullshit](bullshit.md) artificial issues such as [political correctness](political_correctness.md) that sparks conflict, as it lives by conflict; it also uses manipulation, populism, rhetoric tricks and things such as abusing [idiot fallacies](idiot_fallacy.md) to push lies that simply gain it more power. Left tries to find peace by solving problems. Pseudoleft sees it as acceptable to do bad things to people who committed something it deems bad. True left knows that violence creates violence, it "turns the other cheek", it cures hate with love.
|
||||
|
||||
Pseudoleft is extra harmful by deceiving the public into thinking what it does really is leftist. Most normal people that don't think too much therefore stand between a choice of a lesser of two evils: the right and pseudoleft. True left, the true good, is not known, it is overshadowed. Let us now compare a few existing movements/ideologies/groups:
|
||||
|
||||
| | [LGBT](lgbt.md) | [Feminism](feminism.md) | [Antifa](antifa.md) | [Nazism](nazi.md) | [MGTOW](mgtow.md) | [BLM](blm.md) | [Marxism](marxism.m) | [LRS](lrs.md) |
|
||||
| | [LGBT](lgbt.md) | [Feminism](feminism.md) | [Antifa](antifa.md) | [Nazism](nazi.md) | [MGTOW](mgtow.md) | [BLM](blm.md) | [Marxism](marxism.md)| [LRS](lrs.md) |
|
||||
| -------------------------- | ----------------- | ----------------------- | ------------------- | ----------------- | ----------------- | ------------------- | -------------------- | ------------- |
|
||||
| class | pseudoleft | pseudoleft | pseudoleft | right | right? | pseudoleft | pseudoleft | true left |
|
||||
| fights for | gay/bi/etc. | women | antifa, pseudoleft | own race/nation | men | black | proletariat | no one |
|
||||
|
|
2
lmao.md
2
lmao.md
|
@ -28,7 +28,7 @@ On this wiki we kind of use LMAO as a synonym to [LULZ](lulz.md) as used on Ency
|
|||
- Some people believe there is a fictional whole number between 6 and 7 called [thrembo](thrembo.md).
|
||||
- Some company was accused of racism when its policies forbid hiring people with criminal history, the accusation was that such policy is discriminatory against [black](black.md) people. This left many [SJW](sjw.md)s scratching their heads in confusion -- are the accusers in fact good because they help black people get jobs or bad because they assume criminals are mostly black? :D
|
||||
- God's miracle caught on stream! On April 5th 2013 a "disabled" twitch streamer ZilianOP who was supposedly paralyzed and couldn't walk forgot for a while during live stream that he was paralyzed, he stood up from the wheelchair and went for something, revealing he was in fact just faking the disability so as be considered an American [hero](hero_culture.md) and get more of those viewers seeking inspirational motivators or something :D I'M DISABLED BUT STILL PLAY VIDEO GAMES, WHAT'S YOUR EXCUSE! He then hilariously tried to cover it up along with his girlfriend, saying shit like "nonono, I fell from the chair" and then switching to "I could walk a bit thanks to therapy but I was keeping it secret because I wanted to surprise my girlfriend", you wouldn't believe to what lengths they went lol. On the other hand if you're white and not a [female](woman.md) with large breasts, being disabled is the only chance to ever get any views, so can we really blame him?
|
||||
- On ocassion [reddit](reddit.md) offered its fair share of quality material as well, for example one TIFU (today I fucked up... might actually even have been the TIL subreddit lol) thread recounted a true story of a guy who grew up well into adulthood thinking that toilet seats were ONLY MEANT TO BE USED BY [WOMEN](woman.md) and that men simply sit on the cold toilet edge when they shit :D Apparently no one ever taught him and he only learned about the fact that men can use the seat too when he was buying a new toilet seat and joked with the salesman by saying something along the lines of "haha, if I didn't have a wife I wouldn't have to be spending money on toilet seats" -- then when the guy just stared in confusion all came to be revealed.
|
||||
- On occasion [reddit](reddit.md) offered its fair share of quality material as well, for example one TIFU (today I fucked up... might actually even have been the TIL subreddit lol) thread recounted a true story of a guy who grew up well into adulthood thinking that toilet seats were ONLY MEANT TO BE USED BY [WOMEN](woman.md) and that men simply sit on the cold toilet edge when they shit :D Apparently no one ever taught him and he only learned about the fact that men can use the seat too when he was buying a new toilet seat and joked with the salesman by saying something along the lines of "haha, if I didn't have a wife I wouldn't have to be spending money on toilet seats" -- then when the guy just stared in confusion all came to be revealed.
|
||||
- In 2024 the twitter account of Greta Thunberg's father, Svante Thunberg, was hijacked by soyjak.party and started posting some funny stuff about [niggas](nigger.md), telling Greta she was adopted, offending journalists in DMs and so on.
|
||||
- ...
|
||||
|
||||
|
|
28
make_html.sh
28
make_html.sh
|
@ -40,22 +40,22 @@ printf "# Wiki Files\n\nThis is an autogenerated page listing all pages.\n\n" >
|
|||
firstFile=true
|
||||
|
||||
for f in *.md; do
|
||||
fname=$(echo "$f" | sed "s/\.md//g")
|
||||
if [ "$firstFile" = true ] ; then
|
||||
firstFile=false
|
||||
else
|
||||
printf " -- " >> $FILELIST.md
|
||||
fi
|
||||
fname=$(echo "$f" | sed "s/\.md//g")
|
||||
if [ "$firstFile" = true ] ; then
|
||||
firstFile=false
|
||||
else
|
||||
printf " -- " >> $FILELIST.md
|
||||
fi
|
||||
|
||||
printf "**[$fname]($f)** ($(cat $f | wc -l))" >> $FILELIST.md
|
||||
printf "**[$fname]($f)** ($(cat $f | wc -l))" >> $FILELIST.md
|
||||
done
|
||||
|
||||
for f in *.md; do
|
||||
fname=$(echo "$f" | sed "s/\.md//g")
|
||||
f2="html/${fname}.html"
|
||||
echo "$HEADER1 $fname $HEADER2" > $f2
|
||||
cmark-gfm -e table $f | sed "s/\.md\"/.html\"/g" >> $f2
|
||||
echo $FOOTER >> $f2
|
||||
fname=$(echo "$f" | sed "s/\.md//g")
|
||||
f2="html/${fname}.html"
|
||||
echo "$HEADER1 $fname $HEADER2" > $f2
|
||||
cmark-gfm -e table $f | sed "s/\.md\"/.html\"/g" >> $f2
|
||||
echo $FOOTER >> $f2
|
||||
done
|
||||
|
||||
# this uses a C program to mark dead links, you can optionally remove this
|
||||
|
@ -64,8 +64,8 @@ cd html
|
|||
cp ../mark_dead_links .
|
||||
|
||||
for f in *.html; do
|
||||
cat $f | ./mark_dead_links > tmp
|
||||
mv tmp $f
|
||||
cat $f | ./mark_dead_links > tmp
|
||||
mv tmp $f
|
||||
done
|
||||
|
||||
rm mark_dead_links
|
||||
|
|
|
@ -22,10 +22,10 @@ cat *.md | wc -l >> $FILE_NAME
|
|||
printf -- "- number of script lines: " >> $FILE_NAME
|
||||
cat *.sh | wc -l >> $FILE_NAME
|
||||
|
||||
printf -- "- occurences of the word \"person\": " >> $FILE_NAME
|
||||
printf -- "- occurrences of the word \"person\": " >> $FILE_NAME
|
||||
grep -o -i "person[s \n\.,]" *.md | wc -l >> $FILE_NAME
|
||||
|
||||
printf -- "- occurences of the word \"nigger\": " >> $FILE_NAME
|
||||
printf -- "- occurrences of the word \"nigger\": " >> $FILE_NAME
|
||||
grep -o -i "[^\[]nigger" *.md | wc -l >> $FILE_NAME
|
||||
|
||||
printf "\nlongest articles:\n\n" >> $FILE_NAME
|
||||
|
|
2
monad.md
2
monad.md
|
@ -2,7 +2,7 @@
|
|||
|
||||
{ This is my poor understanding of a monad. I am not actually sure if it's correct lol :D TODO: get back to this. ~drummyfish }
|
||||
|
||||
Monad is a [mathematical](math.md) concept which has become useful in [functional programming](functional.md) and is one of the very basic [design patterns](design_pattern.md) in this paradigm. A monad basically wraps some [data type](data_type) into an "envelope" type and gives a way to operate with these wrapped data types which greatly simplifies things like error checking or abstracting [input/output](io.md) side effects.
|
||||
Monad is a [mathematical](math.md) concept which has become useful in [functional programming](functional.md) and is one of the very basic [design patterns](design_pattern.md) in this paradigm. A monad basically wraps some [data type](data_type.md) into an "envelope" type and gives a way to operate with these wrapped data types which greatly simplifies things like error checking or abstracting [input/output](io.md) side effects.
|
||||
|
||||
A typical example is a **maybe** monad which wraps a type such as integer to handle exceptions such as division by zero. A maybe monad consists of:
|
||||
|
||||
|
|
2
noise.md
2
noise.md
|
@ -61,7 +61,7 @@ There are different types of noise characterized by their properties such as num
|
|||
- ...
|
||||
- by frequencies:
|
||||
- **[fractal noise](fractal_noise.md)**: Very important type of noise that similarly to [fractals](fractal.md) is composed of differently scaled versions of itself -- this noise looks like (and can be used to simulate) clouds, mountains and other structures found in nature. It is created by taking some basic noise function (e.g. Perlin noise or simplex noise) and overlaying (adding) multiple versions of it that differ by frequency and amplitude (just as e.g. mountains are composed of big and tall hills that have on them progressively smaller and less tall hills up to the microscopic level). These different individual layers are called octaves: *i*th octave has the amplitude *p^i* (where *p* is a constant from 0 to 1 called a persistence) and frequency of *2^i*.
|
||||
- **[white noise](white_noise)**: Noise containing "same amount of all frequencies" -- this is basically the simplest kind of noise we get when we generate a sequence of independent ([uncorrelated](correlation.md)) (pseudo)random numbers with uniform probability distribution.
|
||||
- **[white noise](white_noise.md)**: Noise containing "same amount of all frequencies" -- this is basically the simplest kind of noise we get when we generate a sequence of independent ([uncorrelated](correlation.md)) (pseudo)random numbers with uniform probability distribution.
|
||||
- **[pink noise](pink_noise.md)**: Energy density of frequencies decreases proportionally with 1/frequency, i.e. it basically has strong high frequencies and weak low frequencies.
|
||||
- **[blue noise](blue_noise.md)**
|
||||
- ...
|
||||
|
|
|
@ -20,7 +20,7 @@ Here is a list of people notable in technology or in other ways related to [LRS]
|
|||
- **[Buddha](buddha.md)** (Siddhartha Gautama): started [buddhism](buddhism.md), a religion seeking enlightenment attained by searching for the ultimate truth and so freeing oneself from all desire
|
||||
- **[Charles Moore](charles_moore.md)**: inventor of [Forth](forth.md), advocate of software [minimalism](minimalism.md), oldschool hacker
|
||||
- **David Mondou-Labbe** ("""Devine Lu Linvega"""): some weird narcissist soyboy making minimalist stuff, [100r](100r.md) member, cryptocapitalist, [pseudoleftist](pseudoleft.md) fascist, heavily utilizing [NC](nc.md) licenses
|
||||
- **[Dennis Ritchie](dennis_ritchie)**: creator of [C](c.md) language and co-creator of [Unix](unix.md)
|
||||
- **[Dennis Ritchie](dennis_ritchie.md)**: creator of [C](c.md) language and co-creator of [Unix](unix.md)
|
||||
- **[Diogenes](diogenes.md)**: based Greek philosopher who opposed all authorities in very cool ways
|
||||
- **Dirt Wizard** (Lafe Spietz, Trash Robot): author of [Trash Magic](trash_magic.md)
|
||||
- **[Donald Knuth](knuth.md)**: computer scientist, Turing-award winner, author of the famous [Art of Computer Programming](taocp.md) books and the [TeX](tex.md) typesetting system
|
||||
|
@ -58,7 +58,7 @@ Here is a list of people notable in technology or in other ways related to [LRS]
|
|||
- **[Petr Chelcicky](petr_chelcicky.md)**: old time [anarcho pacifist](anpac.md)
|
||||
- **[Richard Stallman](rmd.md)**: inventor of [free software](free_software.md) and [copyleft](copyleft.md), founder of [GNU](gnu.md) and [FSF](fsf.md), hacker, also created [emacs](emacs.md)
|
||||
- **[Rob Pike](rob_pike.md)**: oldschool hacker strayed from the path of good, involved in [Unix](unix.md), [Plan 9](plan9.md) and [go](golang.md)
|
||||
- **[Roy Schestowitz](roy_schestowitz)**: [PhD](phd.md) journalist, running [Techrights](techrights.md), revealing corruption in technology
|
||||
- **[Roy Schestowitz](roy_schestowitz.md)**: [PhD](phd.md) journalist, running [Techrights](techrights.md), revealing corruption in technology
|
||||
- **[Stephen Gough](gough.md)** (*naked rambler*): based guy who refuses to wear clothes, is bullied by society and kept in prison
|
||||
- **[Steve Jobs](steve_jobs.md)**: founder and CEO of [Apple](apple.md), huge retard and dickhead
|
||||
- **[Ted Kaczynski](ted_kaczynski.md)**: AKA the Unabomber, mathematician, prodigy, primitivist and murderer who pointed out the dangers of modern technology
|
||||
|
|
2
prime.md
2
prime.md
|
@ -22,7 +22,7 @@ When in 1974 the Arecibo radio message was sent to space to carry a message for
|
|||
|
||||
Euklid's [proof](proof.md) shows there are infinitely many primes, it is done by contradiction and goes as follows: suppose there are finitely many primes *p1*, *p2*, ... *pn*. Now let's consider a number *s* = *p1* * *p2* * ... * *pn* + 1. This means *s* - 1 is divisible by each prime *p1*, *p2*, ... *pn*, but *s* itself is not divisible by any of them (as it is just 1 greater than *s* and multiples of some number *q* greater than 1 have to be spaced by *q*, i.e. more than 1). If *s* isn't divisible by any of the considered primes, it itself has to be a prime. However that is in contradiction with the original assumption that *p1*, *p2*, ... *pn* are all existing primes. Therefore a finite list of primes cannot exist, there have to be infinitely many of them.
|
||||
|
||||
**Distribution and occurrence of primes**: the occurrence of primes seems kind of """[random](random.md)""" (kind of like digits of [decimal](decimal.md) representation of [pi](pi.md)), without a simple pattern, however hints of patterns appear such as the [Ulam spiral](ulam_spiral.d) -- if we plot natural numbers in a square spiral and mark the primes, we can visually distinguish dimly appearing 45 degree diagonals as well as horizontal and vertical lines. Furthermore the **density of primes decreases** the further away we go from 0. The *prime number theorem* states that a number randomly chosen between 0 and *N* (for large *N*) has approximately 1/log(N) probability of being a prime. **Prime counting function** is a function which for *N* tells the number of primes smaller or equal to *N*. While there are 25 primes under 100 (25%), there are 9592 under 100000 (~9.5%) and only 50847534 under 1000000000 (~5%).
|
||||
**Distribution and occurrence of primes**: the occurrence of primes seems kind of """[random](random.md)""" (kind of like digits of [decimal](decimal.md) representation of [pi](pi.md)), without a simple pattern, however hints of patterns appear such as the [Ulam spiral](ulam_spiral.md) -- if we plot natural numbers in a square spiral and mark the primes, we can visually distinguish dimly appearing 45 degree diagonals as well as horizontal and vertical lines. Furthermore the **density of primes decreases** the further away we go from 0. The *prime number theorem* states that a number randomly chosen between 0 and *N* (for large *N*) has approximately 1/log(N) probability of being a prime. **Prime counting function** is a function which for *N* tells the number of primes smaller or equal to *N*. While there are 25 primes under 100 (25%), there are 9592 under 100000 (~9.5%) and only 50847534 under 1000000000 (~5%).
|
||||
|
||||
```
|
||||
, , , ', ' ,' , , '
|
||||
|
|
|
@ -40,7 +40,7 @@ Which prints:
|
|||
|
||||
We divide programming languages into different groups. Perhaps the most common divisions is to two groups:
|
||||
|
||||
- **compiled** languages: Meant to be transformed by a [compiler](compiler.md) to a [native](native.md) (directly executable) binary program, i.e. before running the program we have to run it through the process of compilation into runnable form. These languages are typically more efficient but usually more difficult to program in, less flexible and the compiled programs are non-portable (can't just be copy-pasted to another computer with different [architecture](isa.md) and expected to run; note that this doesn't mean compiled languages aren't [portable](portability.md), just that the compiled EXECUTABLE is not). These languages are usually [lower level](low-level), use static and strong [typing](typing.md) and more of manual [memory management](memory_management.md). Examples: [C](c.md), [C++](cpp.md), [go](go.md), [Haskell](haskell.md) or [Pascal](pascal.md).
|
||||
- **compiled** languages: Meant to be transformed by a [compiler](compiler.md) to a [native](native.md) (directly executable) binary program, i.e. before running the program we have to run it through the process of compilation into runnable form. These languages are typically more efficient but usually more difficult to program in, less flexible and the compiled programs are non-portable (can't just be copy-pasted to another computer with different [architecture](isa.md) and expected to run; note that this doesn't mean compiled languages aren't [portable](portability.md), just that the compiled EXECUTABLE is not). These languages are usually [lower level](low_level.md), use static and strong [typing](typing.md) and more of manual [memory management](memory_management.md). Examples: [C](c.md), [C++](cpp.md), [go](go.md), [Haskell](haskell.md) or [Pascal](pascal.md).
|
||||
- **interpreted** languages: Meant to be interpreted by an [interpreter](interpreter.md) "on-the-go", i.e. what we write we can also immediately run; these languages are often used for **[scripting](scripting.md)**. To run such program you need the interpreter of the language installed on your computer and this interpreter reads the [source code](source_code.md) as it is written and performs what it dictates (well, this is actually simplified as the interpreter normally also internally does a kind of quick "lightweight" compilation, but anyway...). These languages are generally less efficient (slower, use more RAM) but also more flexible, easier to program in and [independent of platforms](platform_independent.md). These languages usually [higher-level](high_level.md), use weak and dynamic [typing](typing.md) and automatic [memory management](memory_management.md) ([garbage collection](garbage_collection.md), ...). Examples: [Python](python.md), [Perl](perl.md), [JavaScript](js.md) and [BASH](bash.md).
|
||||
|
||||
Sometimes the distinction here may not be completely clear, for example Python is normally considered an interpreted language but it can also be compiled into [bytecode](bytecode.md) and even native code. [Java](java.md) is considered more of a compiled language but it doesn't compile to native code (it compiles to bytecode). [C](c.md) is traditionally a compiled language but there also exist C interpreters. [Comun](comun.md) is meant to be both compiled and interpreted etc.
|
||||
|
@ -55,7 +55,7 @@ We can divide language in many more ways, for example based on their **[paradigm
|
|||
A computer language consists of two main parts:
|
||||
|
||||
- **[syntax](syntax.md)**: The grammar rules and words, i.e. how the language "looks", what expressions we are allowed to write in it. Syntax says which words can follow other words, if indentation has to follow some rules, how to insert comments in the source code, what format numbers can be written in, what kinds of names variables can have etc. Syntax is the surface part, it's often considered not as important or hard as semantics (e.g. syntax errors aren't really a big deal as the language processor immediately catches them and we correct them easily), but a good design of syntax is nevertheless still very important because that's what the programmer actually deals with a great amount of time.
|
||||
- **[semantics](semantics)**: The meaning of what we write, i.e. semantics says what the syntax actually stands for. E.g. when syntax says it is possible to write `a / b`, semantics says this means the mathematical operation of division and furthermore specifies what *a* and *b* can actually be, what happens if *b* is zero etc. Semantics is the deeper part as firstly it is more difficult to define and secondly it gives the language its [features](feature.md), its power to compute, usability, it can make the language robust or prone to errors, it can make it efficient or slow, easy and hard to compile, optimize etc.
|
||||
- **[semantics](semantics.md)**: The meaning of what we write, i.e. semantics says what the syntax actually stands for. E.g. when syntax says it is possible to write `a / b`, semantics says this means the mathematical operation of division and furthermore specifies what *a* and *b* can actually be, what happens if *b* is zero etc. Semantics is the deeper part as firstly it is more difficult to define and secondly it gives the language its [features](feature.md), its power to compute, usability, it can make the language robust or prone to errors, it can make it efficient or slow, easy and hard to compile, optimize etc.
|
||||
|
||||
We also commonly divide a language to two main parts:
|
||||
|
||||
|
@ -82,7 +82,7 @@ Only the **third generation languages** made the step of adding significant [abs
|
|||
|
||||
During late 60s the term [object oriented programming](oop.md) (OOP) appeared, as well as first languages such as Simula and [Smalltalk](smalltalk.md) that were based on this [paradigm](paradigm.md). Back then it was a rather academic experiment, not really harmful in itself; later on OOP would be seized and raped by capitalists to break computers. In 1964 the language called **[BASIC](basic.md)** appeared that was aimed at making programming easier even for non-professionals -- it would become a very popular language for the home computers. On a similar not in 1970 **[Pascal](pascal.md)** was created to be an educational language -- some hackers already saw this as too much of a retardization of programming languages (see the famous *Real Programmers Don't Use Pascal* essay).
|
||||
|
||||
One of the most notable events in history of programming languages was the invention of the **[C](c.md) language** in 1972 by Dennis Ritchie and Brian Kerninghan who used it as a tool for their [Unix](unix.md) operating system. The early version C was quite different from today's C but the language as a whole is undoubtedly the most important one in history -- it's not the most elegant one but it achieved the exactly correct mixture of features, simplicity and correct design choices such as allowing freedom and flexibility of implementation that would in turn lead to extreme efficiency and adoption by many, to standardization, further leading to many implementations and their high [optimization](optimization.dm) which in turned increased C's popularity yet more and so on. From this point on new languages would typically in one way or another try to iterate on C. Also in 1972 the **first [esoteric programming language](esolang.md)** -- INTERCAL -- was created as kind of parody language. This would create a dedicated community of people creating similar "funny" language, which is highly active even today.
|
||||
One of the most notable events in history of programming languages was the invention of the **[C](c.md) language** in 1972 by Dennis Ritchie and Brian Kerninghan who used it as a tool for their [Unix](unix.md) operating system. The early version C was quite different from today's C but the language as a whole is undoubtedly the most important one in history -- it's not the most elegant one but it achieved the exactly correct mixture of features, simplicity and correct design choices such as allowing freedom and flexibility of implementation that would in turn lead to extreme efficiency and adoption by many, to standardization, further leading to many implementations and their high [optimization](optimization.md) which in turned increased C's popularity yet more and so on. From this point on new languages would typically in one way or another try to iterate on C. Also in 1972 the **first [esoteric programming language](esolang.md)** -- INTERCAL -- was created as kind of parody language. This would create a dedicated community of people creating similar "funny" language, which is highly active even today.
|
||||
|
||||
In 1978 the Intel 8086 [CPU](cpu.md) was released, giving rise to the **[x86](x86.md) assembly** language -- the assembly that would become perhaps the most widely used ones, owing to the popularity of Intel CPUs. In 1979 Bjarne Stroustrup sadly started to work on **[C++](cpp.md)**, a language that would rape the concept of [object oriented programming](oop.md) introduced by languages like Simula and Smalltalk in a highly twisted, [capitalist way](capitalist_software.md), starting the trend of creating ugly, [bloated](bloat.md) languages focused on profit making.
|
||||
|
||||
|
|
3478
random_page.md
3478
random_page.md
File diff suppressed because it is too large
Load diff
|
@ -1,4 +1,4 @@
|
|||
## Raylib
|
||||
# Raylib
|
||||
|
||||
Raylib is a [free](free_software.md), relatively [KISS](kiss.md), [portable](portability.md) [C](c.md) (C99) [library](library.md) intended mainly for [game](game.md) development, offering [IO](io.md) handling, [2D](2d.md) and [3D](3d.md) graphics, audio, loading of different image and 3D formats etc., while restraining from a lot of [bullshit](bullshit.md) of "[modern](modern.md)" [bloated](bloat.md) engines/[frameworks](framework.md) such as having tons of [dependencies](dependency.md) and targeting only very fast computing platforms. Raylib is pretty cool and employs many of the [LRS](lrs.md)/[suckless](suckless.md) ideas, even though from our strict point of view it is still a bit more complex than it really needs to be, e.g. by using [floating point](float.md) and relying on [GPU](gpu.md) accelerated 3D graphics. In terms of [bloat](bloat.md) it can be seen as a mid way between the mainstream (e.g. [Godot](godot.md)) and [LRS](lrs.md)/[suckless](suckless.md) (e.g. [small3dlib](small3dlib.md)).
|
||||
|
||||
|
@ -18,6 +18,6 @@ The following are some features of raylib as of writing this. The good and neutr
|
|||
And some of the bad features are:
|
||||
|
||||
- 150000+ [lines of code](loc.md)
|
||||
- not a [header only](header_only) library, requires building ([makefile](make.md), optionally with [cmake](cmake.md))
|
||||
- not a [header only](header_only.md) library, requires building ([makefile](make.md), optionally with [cmake](cmake.md))
|
||||
- using [floating point](float.md) and [OpenGL](opengl.md) creates complex dependencies and sends a fuck you to small [embedded](embedded.md) computers
|
||||
- even though abstracted, some software dependencies are still needed depending on the platform, e.g. on GNU/Linux you need to install [ALSA](alsa.md), [Mesa](mesa.md) and [X11](x11.md)
|
||||
- even though abstracted, some software dependencies are still needed depending on the platform, e.g. on GNU/Linux you need to install [ALSA](alsa.md), [Mesa](mesa.md) and [X11](x11.md)
|
||||
|
|
|
@ -14,7 +14,7 @@ fschmidt seems to be a lot into religion and also has some related side projects
|
|||
|
||||
Examples of reactionary software include (examples from the site itself):
|
||||
|
||||
- **[bash](bash.md)**: Possibly the most popular [Unix](unix.md) shell. In hardocore minimalist circles bash is still considered bloated and/or [harmful](harmful.dm) due to its extensions over standard [Posix](posix.md) shell, but indeed compared to mainstream software bash is pretty KISS.
|
||||
- **[bash](bash.md)**: Possibly the most popular [Unix](unix.md) shell. In hardocore minimalist circles bash is still considered bloated and/or [harmful](harmful.md) due to its extensions over standard [Posix](posix.md) shell, but indeed compared to mainstream software bash is pretty KISS.
|
||||
- **old versions of languages such as [Java](java.md) and [Python](python.md)**: TBH these are seriously [bloated](bloat.md) -- the older versions maybe not THAT much but still. Even if these language may appear minimal to the programmer (e.g. by syntax or concepts), they are necessarily extremely complicated on the inside (see [pseudominimalism](pseudominimalism.md)), even if just for their HUGE standard libraries.
|
||||
- **[Mercurial](mercurial.md)**: OK, here the guy just bashes and shits on [git](git.md) for being extremely bloated and unusable -- of course, git is a bit bloated, but definitely not more than Java or Python. Not sure Mercurial is really so much better. { I have literally never touched Mercurial so I don't know, I just know that Git is a bit complex but still usable (just commit, push and pull) AND it doesn't even matter that much as my project do not depend on git, git is basically just a way for me to put my code on the internet and sync in between my machines. If git stops existing I can literally just use FTP or something. ~drummyfish }
|
||||
- **[Luan](luan.md)**: Their own programming language. TODO: research it :)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Reddit
|
||||
|
||||
Reddit, established in 2005, marketing itself as the "frontpage of the [Internet](internet.md)", was an extremely successful, popular and a quite nice website for sharing links, ideas and leading discussions about them, before it got absolutely destroyed by [capitalists](capitalism.md) right before they year 2020. It used to be a forum with great amount of [free speech](free_speech.md) (see e.g. [beatingWomen subreddit](https://web.archive.org/web/20110429073233/reddit.com/r/beatingwomen)) and with quite enjoyable, plain user interface; in a swift turn of events however it flipped completely over and is now among the worst, most [censored](censorship.dm) sites on the whole [web](www.md), a place [toxic](toxic.md) with [SJW](sjw.md) fumes and its site is literally unusable for the amount of [bloat](bloat.md) and [ads](marketing.md) it employs. Never visit the site if you don't have to.
|
||||
Reddit, established in 2005, marketing itself as the "frontpage of the [Internet](internet.md)", was an extremely successful, popular and a quite nice website for sharing links, ideas and leading discussions about them, before it got absolutely destroyed by [capitalists](capitalism.md) right before they year 2020. It used to be a forum with great amount of [free speech](free_speech.md) (see e.g. [beatingWomen subreddit](https://web.archive.org/web/20110429073233/reddit.com/r/beatingwomen)) and with quite enjoyable, plain user interface; in a swift turn of events however it flipped completely over and is now among the worst, most [censored](censorship.md) sites on the whole [web](www.md), a place [toxic](toxic.md) with [SJW](sjw.md) fumes and its site is literally unusable for the amount of [bloat](bloat.md) and [ads](marketing.md) it employs. Never visit the site if you don't have to.
|
||||
|
||||
Reddit users are the kind of "moderate rebels", the sort of absolutely insignificant people who think they're doing heroic acts by changing a profile picture or sharing a mildly unpopular opinion on [Facebook](facebook.md), like "I actually think [piracy](piracy.md) is not bad! Take this [corporations](corporation.md)!". [Nowadays](21st_century.md) the users are exclusively [SJWs](sjw.md), all the popular post are attempts at [virtue signaling](virtue_signaling.md) and circlejerking, you'll find annoying propaganda inserted into absolutely unrelated subreddits, e.g. in a subreddit for sharing interesting pictures the all time top post will be something like a motivational tweet by Zelenski or some other [gay](gay.md) (of course there are now annoying sponsored posts inserted in too, literally makes you wanna [kill yourself](kys.md)). Very infamous are for example reddit [atheists](atheism.md) who are very enlightened by Neil De Grass documentaries, they don't understand how a medieval peasant could believe in irrational things, conform to orthodox preaching and participate in witch hunts, but if you suggest [removing the age of consent](pedophilia.md) or opposing [feminism](feminism.md) they pick up the torches and go full angry mob yelling "Stone that heretic to death!" That's because they're just trained to react to [key words](shortcut_thinking.md), they can't do much more.
|
||||
|
||||
|
|
2
regex.md
2
regex.md
|
@ -50,7 +50,7 @@ Here we'll demonstrate some practical uses of regular expressions. Most common [
|
|||
|
||||
The most basic use case is you just wanting to **search** for some pattern in a file, i.e. for example you are looking for all [IP addresses](ip_address.md) in a file, for a certain exact word inside source code comment etc.
|
||||
|
||||
The following uses grep to find and count all occurences of the word `capitalism` or `capitalist` (disregarding case with the `-i` flag) in a plain text version of [this wiki](lrs_wiki.md) and passes them to be counted with *wc*.
|
||||
The following uses grep to find and count all occurrences of the word `capitalism` or `capitalist` (disregarding case with the `-i` flag) in a plain text version of [this wiki](lrs_wiki.md) and passes them to be counted with *wc*.
|
||||
|
||||
`grep -i -o "capitalis[mt]" ~/Downloads/lrs_wiki.txt | wc -l`
|
||||
|
||||
|
|
2
ronja.md
2
ronja.md
|
@ -4,7 +4,7 @@
|
|||
|
||||
Ronja (reasonable optical near joint access) is a [free/open](foss.md) [KISS](kiss.md) device for wireless connection of two devices using light (i.e. optical communication) and the [ethernet](ethernet.md) protocol; it can be [made at home](diy.md) (for about $100), doesn't require any [MCUs](mcu.md) and as such can be considered a [LRS](lrs.md)/[suckless](suckless.md) alternative to traditional [WiFi](wifi.md) [routers](router.md) that are de-facto owned and controlled by [corporations](corporation.md). It works full [duplex](duplex.md) up to the distance of 1400 meters with a speed of 10 Mbps, which is pretty amazing. One can also imagine Ronja as a kind of ethernet cable, just implemented with light instead of electricity. The design is released under [GFDL](gfdl.md). The project website is at http://ronja.twibright.com/.
|
||||
|
||||
There are many advantages in Ronja -- besides the mentioned KISS design and all its implications (freedom, repairability, cheap price, compatibility, ...), Ronja doesn't use radio so there are no bullshit issues with legal bands etc., it also works with just an ethernet card, offers a stable and constant transmission speed with very low latency, can be potentially harder to block with jammers and to spy on: besides visible light the transmission can also use infrared spectrum and narrow direction of transmission, as opposed to radiating to all directions like wi-fis, also the fast flickering of the LED is unnoticable by human or even normal cameras, therefore Ronja transmission is expensive to detect. Also note that some kind of protocol-level [encryption](encryption.md) can be used above Ronja, if one so desires. This makes it a nice communication tool for people under oppresive regimes like those in China or [USA](usa.md).
|
||||
There are many advantages in Ronja -- besides the mentioned KISS design and all its implications (freedom, repairability, cheap price, compatibility, ...), Ronja doesn't use radio so there are no bullshit issues with legal bands etc., it also works with just an ethernet card, offers a stable and constant transmission speed with very low latency, can be potentially harder to block with jammers and to spy on: besides visible light the transmission can also use infrared spectrum and narrow direction of transmission, as opposed to radiating to all directions like wi-fis, also the fast flickering of the LED is unnoticeable by human or even normal cameras, therefore Ronja transmission is expensive to detect. Also note that some kind of protocol-level [encryption](encryption.md) can be used above Ronja, if one so desires. This makes it a nice communication tool for people under oppresive regimes like those in China or [USA](usa.md).
|
||||
|
||||
## See Also
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
Soyence (also spelled soyience) is [business](business.md), [propaganda](propaganda.md) and [politics](politics.md) trying to pass as [science](science.md), nowadays promoted typically by [pseudoleftists](pseudoleft.md), [pseudoskeptics](pseudoskepticism.md), [capitalists](capitalism.md) and [corporations](corporation.md). It is what in the [21st century](21st_century.md) has taken on the role that's historically been played by the church: that of establishing and maintaining orthodoxy for the control of mass population -- this time it is so called "science" or "rationality" that's used as the tool instead of [God](god.md) and religion, however the results are the same. Soyence is not about listening to what science says, it is about listetning to what *"reputable scientists"* say, and of course not questioning them; soyence is what the typical reddit [atheist](atheism.md) or [tiktok](tiktok.md) [feminist](feminism.md) believes science is or what Neil De Grass Tyson tells you science is. While science is about collecting facts and drawing conclusions, soyence is about setting conclusions and finding or fabricating facts that support them. One red flag to watch out in relation to soyence is a great weight put on **reputation** -- in true science reputation plays no role, only results do; reputation and its great value for one's acceptance is rather part of [politics](politics.md) (and maybe show business). Notice for example how in the past it was more common to hear "science has found X" (as in "logic itself shows this fact") rather than "scientists have found X", which is more common nowadays -- mentally we have shifted to separate people to "scientists", those who "know" and dictate what's true, and non-scientists, those who don't know and must just listen. Soyence calls itself the one and only science^TM and [gatekeeps](gatekeeping.md) the term by calling unpopular science (such as that regarding human [race](race.md), questioning official versions of [historical](history.md) events or safety of big pharma [vaccines](vaccine.md)) "[pseudoscience](pseudoscience.md)" and "[conspiracy theories](conspiracy_theory.md)". Soyence itself is pseudoscience but it has an official status, approval of [state](state.md), strong connection to [politics](politics.md), it is mainstream, popular, controlled by those in power, [censored](censorship.md) ("moderated") and intentionally misleading. Soyence can be encountered in much of [academia](academia.md), on [Wikipedia](wikipedia.md) and in other popular/mainstream media such as TV "documentaries" and [YouTube](youtube.md). A soyence supporter wrongfully believes that reason wouldn't allow such a large scale mass population manipulation (despite this happening over and over throughout history) -- people at large aren't reasonable and reason [cannot](yes_they_can.md) beat [propaganda](propaganda.md); only the highest naivety could make you believe that politics will follow science -- it's the other way around, and always has been.
|
||||
|
||||
Compared to good old [fun](fun.mf) pseudosciences such as [astrology](astrology.md) and [flat Earth](flat_earth.md), soyence is extra sneaky by purposefully trying to blend in with real science, i.e. within a certain truly scientific field, such as biology, there is a soyentific [cancer](cancer.md) mixed in by activists, corporations and state, that may be hard to separate for common folk and many times even for pros. This is extremely [harmful](harmful.md) as in the eyes of retarded people (basically everyone) the neighboring legit science gives credibility to propaganda bullshit. There is a tendency to think we somehow magically live in a time that's fundamentally different from other times in history in which it is now a pretty clear and uncontroversial fact that the name of science was abused hard by propaganda, almost everyone easily accepts that historically politically constructed lies were presented as confirmed by science, but somehow people refuse to believe it could be the case nowadays. In times of Nazism there was no doubt about race being a completely scientific term and that Jews were scientifically confirmed to be the inferior race -- nowadays in times when anti Nazis have won and politics is based on denying existence of race somehow scientists start to magically find evidence that no such thing as race has ever existed -- how convenient! And just in case you wanted to check if it's actually true, you'll be labeled a racist and you won't find job ever again.
|
||||
Compared to good old [fun](fun.md) pseudosciences such as [astrology](astrology.md) and [flat Earth](flat_earth.md), soyence is extra sneaky by purposefully trying to blend in with real science, i.e. within a certain truly scientific field, such as biology, there is a soyentific [cancer](cancer.md) mixed in by activists, corporations and state, that may be hard to separate for common folk and many times even for pros. This is extremely [harmful](harmful.md) as in the eyes of retarded people (basically everyone) the neighboring legit science gives credibility to propaganda bullshit. There is a tendency to think we somehow magically live in a time that's fundamentally different from other times in history in which it is now a pretty clear and uncontroversial fact that the name of science was abused hard by propaganda, almost everyone easily accepts that historically politically constructed lies were presented as confirmed by science, but somehow people refuse to believe it could be the case nowadays. In times of Nazism there was no doubt about race being a completely scientific term and that Jews were scientifically confirmed to be the inferior race -- nowadays in times when anti Nazis have won and politics is based on denying existence of race somehow scientists start to magically find evidence that no such thing as race has ever existed -- how convenient! And just in case you wanted to check if it's actually true, you'll be labeled a racist and you won't find job ever again.
|
||||
|
||||
Soyence uses all the cheap tricks of politics (also not dissimilar to those of [greenwashing](greenwashing.md), [openwashing](openwashing.md) etc.) to win stupid people, it builds on the cult of bullying religion and creating a [war mentality](fight_culture.md), overuse of twisted "rationality" ([pseudoskepticism](pseudoskepticism.md)), creating science [bloat](bloat.md) and bullshit "scientific" fields to obscure lies, punishment of the correct use of rationality, building cults of personality ("science educators", the [gatekeepers](gatekeeping.md) of "science") and appealing to egoism and naivity of wannabe smartasses while at the same time not even holding up to principles of science such as genuine objectivity. A soyence kid will for example keep preaching about how everything should be proven by reproducible experiments while at the same time accepting [de facto](de_facto.md) irreproducible results, e.g. those obtained with billion dollar worth research performed at [CERN](cern.md) which can NOT be reproduced anywhere else than at CERN with thousands of top scientist putting in years of work. Such results are not reproducible in practice, they are accepted on the basis of pure faith in those presenting it, just as religious people accept the words of preachers. The kid will argue that in theory someone else can build another CERN and reproduce the results, but that won't happen in practice, it's just a purely theoretical unrealistic scenario so his version of what "science" is is really based on reproducibility that only works in a dreamed up world, this kind of reproducibility doesn't at all fulfill its original purpose of allowing others to check, confirm or refute the results of experiments. This starts to play a bigger role when for example vaccines start to get promoted by the government as "proven safe by science" (read "claimed safe by a corporation who makes money off of people being sick"), the soyence kid will gladly accept the vaccine and [fight](fight_culture.md) for their acceptance just thanks to this label, not based on any truly scientific facts but out of pure faith in self proclaimed science authorities -- here the soyentist is relying purely on faith, a concept he would like to think he hates with his soul.
|
||||
|
||||
|
|
|
@ -90,12 +90,12 @@ Some stereotypes are:
|
|||
- men act feminine, are good at art and women jobs
|
||||
- women (lesbian) are masculine, ugly with short pink hair
|
||||
- Germans:
|
||||
- no sense of [humor](fun.mf), being kind of robots
|
||||
- no sense of [humor](fun.md), being kind of robots
|
||||
- precise, efficient, organized, great technology
|
||||
- love beer and sausage
|
||||
- ugly women
|
||||
- gypsies:
|
||||
- don't work, steal stuff, wellfare leeches, make a lot of children
|
||||
- don't work, steal stuff, welfare leeches, make a lot of children
|
||||
- children don't go to school, uneducated, can hardly read
|
||||
- passionate, emotional, friendly
|
||||
- talent for music
|
||||
|
|
|
@ -22,7 +22,7 @@ Some SW renderers make use of specialized CPU instructions such as [MMX](mmx.md)
|
|||
|
||||
{ In case [small3dlib](small3dlib.md) is somehow not enough for you :) ~drummyfish }
|
||||
|
||||
Difficulty of this task depends on features you want -- a super simple [flat shaded](flat_shading.md) (no textures, no smooth [shading](shading.md)) renderer is relatively easy to make, especially if you don't need movable camera, can afford to use [floating point](float.md) etc. See the details of [3D rendering](3d_rendering.md), especially how the GPU pipelines work, and try to imitate them in software. The core of these renderers is the **[triangle](triangle.md) [rasterization](rasterization.md)** algorithm which, if you want, can be very simple -- even a naive one will give workable results -- or pretty complex and advanced, using various optimizations and things such as the [top-left rule](top_left_rule.md) to guarantee no holes and overlaps of triangles. Remember this function will likely be the performance [bottleneck](bottleneck.md) of your renderer so you want to put effort into [optimizing](optimization.md) it to achieve good [FPS](fps.md). Once you have triangle rasterization, you can draw 3D models which consist of vertices (points in 3D space) and triangles between these vertices (it's very simple to load simple 3D models e.g. from the [obj](obj.md) format) -- you simply project (using [perspective](perspective.md)) 3D position of each vertex to screen coordinates and draw triangles between these pixels with the rasterization algorithm. Here you need to also solve [visibility](visibility.md), i.e. possible overlap of triangles on the screen and correctly drawing those nearer the view in front of those that are further away -- a very simple solution is a [z buffer](z_buffer.md), but to save memory you can also e.g. [sort](sorting.md) the triangles by distance and draw them back-to-front ([painter's algorithm](painters_algorithm.md)). You may add a [scene](scene.md) data structure that can hold multiple models to be rendered. If you additionally want to have movable camera and models that can be transformed (moved, rotated, scaled, ...), you will additionally need to look into some [linear algebra](linear_algebra.md) and [transform matrices](transform_matrix.md) that allow to efficiently compute positions of vertices of a transformed model against a transformed camera -- you do this the same way as basically all other 3D engines (look up e.g. some [OpenGL](opengl.md) tutorials, see model/view/projection [matrices](matrix.md) etc.). If you also want texturing, the matters get again a bit more complicated, you need to compute [barycentric](barycentric.md) coordinates (special coordinates within a triangle) as you're rasterizing the triangle, and possibly apply [perspective correction](perspective_correction.md) (otherwise you'll be seeing distortions). You then map the barycentrics of each rasterized pixel to [UV](uv.md) (texturing) coordinates which you use to retrieve specific pixels from a texture. On top of all this you may start adding all the advanced features of typical engines such as [acceleration structures](acceleration_structure.md) that for example discard models that are completely out of view, [LOD](lod.mf), instancing, [MIP maps](mip_map.md) and so on.
|
||||
Difficulty of this task depends on features you want -- a super simple [flat shaded](flat_shading.md) (no textures, no smooth [shading](shading.md)) renderer is relatively easy to make, especially if you don't need movable camera, can afford to use [floating point](float.md) etc. See the details of [3D rendering](3d_rendering.md), especially how the GPU pipelines work, and try to imitate them in software. The core of these renderers is the **[triangle](triangle.md) [rasterization](rasterization.md)** algorithm which, if you want, can be very simple -- even a naive one will give workable results -- or pretty complex and advanced, using various optimizations and things such as the [top-left rule](top_left_rule.md) to guarantee no holes and overlaps of triangles. Remember this function will likely be the performance [bottleneck](bottleneck.md) of your renderer so you want to put effort into [optimizing](optimization.md) it to achieve good [FPS](fps.md). Once you have triangle rasterization, you can draw 3D models which consist of vertices (points in 3D space) and triangles between these vertices (it's very simple to load simple 3D models e.g. from the [obj](obj.md) format) -- you simply project (using [perspective](perspective.md)) 3D position of each vertex to screen coordinates and draw triangles between these pixels with the rasterization algorithm. Here you need to also solve [visibility](visibility.md), i.e. possible overlap of triangles on the screen and correctly drawing those nearer the view in front of those that are further away -- a very simple solution is a [z buffer](z_buffer.md), but to save memory you can also e.g. [sort](sorting.md) the triangles by distance and draw them back-to-front ([painter's algorithm](painters_algorithm.md)). You may add a [scene](scene.md) data structure that can hold multiple models to be rendered. If you additionally want to have movable camera and models that can be transformed (moved, rotated, scaled, ...), you will additionally need to look into some [linear algebra](linear_algebra.md) and [transform matrices](transform_matrix.md) that allow to efficiently compute positions of vertices of a transformed model against a transformed camera -- you do this the same way as basically all other 3D engines (look up e.g. some [OpenGL](opengl.md) tutorials, see model/view/projection [matrices](matrix.md) etc.). If you also want texturing, the matters get again a bit more complicated, you need to compute [barycentric](barycentric.md) coordinates (special coordinates within a triangle) as you're rasterizing the triangle, and possibly apply [perspective correction](perspective_correction.md) (otherwise you'll be seeing distortions). You then map the barycentrics of each rasterized pixel to [UV](uv.md) (texturing) coordinates which you use to retrieve specific pixels from a texture. On top of all this you may start adding all the advanced features of typical engines such as [acceleration structures](acceleration_structure.md) that for example discard models that are completely out of view, [LOD](lod.md), instancing, [MIP maps](mip_map.md) and so on.
|
||||
|
||||
Possible tricks, cheats and [optimizations](optimization.md) you may utilize include:
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
*"An idiot admires complexity, a genius admires simplicity."* --Terry Davis
|
||||
|
||||
Terry A. Davis, aka the *divine intellect*, born 1969 in Wisconsin, was a genius+[schizophrenic](schizo.md) [programmer](programming.md) that singlehandedly created [TempleOS](temple_os.md) in his own [programming language](programming_language.md) called [HolyC](holyc.md), and greatly entertained and enlightened an audience of followers until his tragic untimely death. For his programming skills and quality videos he became a legend and a [meme](meme.md) in the tech circles, especially on [4chan](4chan.org) which additionally valued his [autistic](autism.md) and [politically incorrect](political_correctness.md) behavior.
|
||||
Terry A. Davis, aka the *divine intellect*, born 1969 in Wisconsin, was a genius+[schizophrenic](schizo.md) [programmer](programming.md) that singlehandedly created [TempleOS](temple_os.md) in his own [programming language](programming_language.md) called [HolyC](holyc.md), and greatly entertained and enlightened an audience of followers until his tragic untimely death. For his programming skills and quality videos he became a legend and a [meme](meme.md) in the tech circles, especially on [4chan](4chan.md) which additionally valued his [autistic](autism.md) and [politically incorrect](political_correctness.md) behavior.
|
||||
|
||||
He was convinced he could talk to [God](god.md) and that God commanded him to make an operating system with certain parameters such as 640x480 resolution, also known as the God resolution. According to himself he was gifted a *divine intellect* and was, in his own words, the "best programmer that ever lived". Terry was making [YouTube](youtube.md) talking/programming videos in which God was an often discussed topic, alongside valuable programming advice and a bit of good old [racism](racism.md). He was also convinced that the government was after him and often delved into the conspiracies against him, famously proclaiming that **"CIA [niggers](nigger.md) glow in the dark"** ("glowing in dark" subsequently caught on as a phrase used for anything [suspicious](sus.md)). He was in mental hospital several times and later became homeless, but continued to post videos from his van. An entertaining fact is also that he fell in love with a famous female physics YouTuber Dianna Cowern which he stalked online. In 2018 he was killed by a train (officially a [suicide](suicide.md) but word has it CIA was involved) but he left behind tons of videos full of endless entertainment, and sometimes even genuine [wisdom](wisdom.md).
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ Update culture is a malicious mindset emerging in a [capitalist](capitalism.md)
|
|||
|
||||
*"Your software is too old, please update to the latest version."*
|
||||
|
||||
In software this process is a lot of times automatized and known as [autoupdates](autoupdate.md), but update culture encompasses more than this, it's the whole mentality of having to constantly keep up, update one's software, hardware and other products, it is part of [fear culture](fear_culture), [bullshit](bullshit.md) and [consumerism](consumerism.md). Normies get all neurotic when they haven't received their weekly updates that give them new content or fake sense of "[security](security.md)". The truth is updates break more things that they fix and make software progressively [shittier](modern.md). STOP FUCKING UPDATING EVERYTHING EVERY 3 SECONDS YOU IDIOTS. [Good software](lrs.md) is written once and works for hundreds of years without [maintenance](maintenance.md).
|
||||
In software this process is a lot of times automatized and known as [autoupdates](autoupdate.md), but update culture encompasses more than this, it's the whole mentality of having to constantly keep up, update one's software, hardware and other products, it is part of [fear culture](fear_culture.md), [bullshit](bullshit.md) and [consumerism](consumerism.md). Normies get all neurotic when they haven't received their weekly updates that give them new content or fake sense of "[security](security.md)". The truth is updates break more things that they fix and make software progressively [shittier](modern.md). STOP FUCKING UPDATING EVERYTHING EVERY 3 SECONDS YOU IDIOTS. [Good software](lrs.md) is written once and works for hundreds of years without [maintenance](maintenance.md).
|
||||
|
||||
A typical example falling under update culture are [web browsers](browser.md) or proprietary [operating systems](operating_system.md) that strive for [bloat monopoly](bloat_monopoly.md). Normalizing the practice of having to consume updates leads to the convenient opportunity for abuse of users: with the stuff you need you may be fed stuff you don't want.
|
||||
|
||||
|
|
2
vim.md
2
vim.md
|
@ -72,7 +72,7 @@ syntax on
|
|||
|
||||
Of course there are alternatives to Vim that are based on different paradigms, such as [Emacs](emacs.md) (or possibly more "minimal" clones of it such as [Zile](zile.md)), its biggest rival, or plan9 editors such as [acme](acme.md) (or maybe even [ed](ed.md)). In this regard any [text editor](text_editor.md) is a potential alternative. Nevertheless people looking for Vim alternatives are usually looking for other vi-like editors. These are for example:
|
||||
|
||||
- **[vi](vi.md)**: While you probably won't use the original ancient vi program but rather something like [nvi](nvi.md), vi is a [POSIX](posix.md) standard for a text editor that's much simpler and universal than Vim. It lacks many features one may be used to from Vim such as tabs, [autocompletion](autocomplete.md), [syntax highligh](syntax_highlight.md) or multiple [undos](undo.mf). But limiting yourself to only using the features specified by the standard makes you more likely to be able to operate any vi-like text editor you encounter. (List of features added by Vim to vi can be found in `runtime/doc/vi_diff.txt` in Vim source tree.)
|
||||
- **[vi](vi.md)**: While you probably won't use the original ancient vi program but rather something like [nvi](nvi.md), vi is a [POSIX](posix.md) standard for a text editor that's much simpler and universal than Vim. It lacks many features one may be used to from Vim such as tabs, [autocompletion](autocomplete.md), [syntax highligh](syntax_highlight.md) or multiple [undos](undo.md). But limiting yourself to only using the features specified by the standard makes you more likely to be able to operate any vi-like text editor you encounter. (List of features added by Vim to vi can be found in `runtime/doc/vi_diff.txt` in Vim source tree.)
|
||||
- **[neovim](neovim.md)**: Tries to be the "[modernized](modern.md)" ([refactored](refactoring.md)) fork of Vim, it removes some code, adds a new plugin system but also [bloat](bloat.md) like [CMake](cmake.md). One of its self-stated goals is to be more "community driven". It is also written in C99 (while Vim is in C89, more portable). { At least I think. ~drummyfish }
|
||||
- **[vis](vis.md)**: Inspired by Vim and [Sam](sam.md), written in C99, seems to have only a few dependencies. Has no tabs. { At least I didn't find them. ~drummyfish }
|
||||
- **[nvi](nvi.md)** (new vi): Vi implementation originally made for [BSD](bsd.md), much simpler than Vim (see vi above).
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -3,9 +3,9 @@
|
|||
This is an autogenerated article holding stats about this wiki.
|
||||
|
||||
- number of articles: 591
|
||||
- number of commits: 869
|
||||
- total size of all texts in bytes: 4264925
|
||||
- total number of lines of article texts: 32533
|
||||
- number of commits: 870
|
||||
- total size of all texts in bytes: 4266744
|
||||
- total number of lines of article texts: 32536
|
||||
- number of script lines: 262
|
||||
- occurences of the word "person": 7
|
||||
- occurences of the word "nigger": 91
|
||||
|
@ -35,50 +35,50 @@ longest articles:
|
|||
|
||||
top 50 5+ letter words:
|
||||
|
||||
- which (2409)
|
||||
- there (1848)
|
||||
- which (2408)
|
||||
- there (1847)
|
||||
- people (1642)
|
||||
- example (1432)
|
||||
- example (1433)
|
||||
- other (1310)
|
||||
- number (1229)
|
||||
- about (1147)
|
||||
- number (1230)
|
||||
- about (1148)
|
||||
- software (1144)
|
||||
- program (968)
|
||||
- because (895)
|
||||
- program (971)
|
||||
- because (896)
|
||||
- their (885)
|
||||
- would (881)
|
||||
- called (824)
|
||||
- language (822)
|
||||
- language (820)
|
||||
- being (806)
|
||||
- things (802)
|
||||
- something (802)
|
||||
- numbers (796)
|
||||
- simple (764)
|
||||
- computer (750)
|
||||
- simple (765)
|
||||
- computer (751)
|
||||
- without (714)
|
||||
- programming (712)
|
||||
- programming (710)
|
||||
- function (701)
|
||||
- these (683)
|
||||
- different (672)
|
||||
- however (663)
|
||||
- system (639)
|
||||
- world (619)
|
||||
- doesn (614)
|
||||
- world (620)
|
||||
- doesn (615)
|
||||
- should (612)
|
||||
- while (591)
|
||||
- point (587)
|
||||
- society (579)
|
||||
- games (578)
|
||||
- simply (556)
|
||||
- drummyfish (554)
|
||||
- drummyfish (555)
|
||||
- using (549)
|
||||
- though (548)
|
||||
- though (547)
|
||||
- still (543)
|
||||
- possible (534)
|
||||
- possible (536)
|
||||
- memory (522)
|
||||
- similar (520)
|
||||
- similar (519)
|
||||
- https (510)
|
||||
- course (505)
|
||||
- course (504)
|
||||
- value (503)
|
||||
- technology (496)
|
||||
- always (488)
|
||||
|
@ -89,6 +89,26 @@ top 50 5+ letter words:
|
|||
latest changes:
|
||||
|
||||
```
|
||||
Date: Tue Aug 27 17:09:58 2024 +0200
|
||||
capitalism.md
|
||||
comun.md
|
||||
culture.md
|
||||
digital.md
|
||||
distance.md
|
||||
io.md
|
||||
jargon_file.md
|
||||
jokes.md
|
||||
lambda_calculus.md
|
||||
langtons_ant.md
|
||||
lrs_dictionary.md
|
||||
pi.md
|
||||
pride.md
|
||||
python.md
|
||||
random_page.md
|
||||
viznut.md
|
||||
wiki_pages.md
|
||||
wiki_stats.md
|
||||
work.md
|
||||
Date: Mon Aug 26 15:22:39 2024 +0200
|
||||
ai.md
|
||||
c.md
|
||||
|
@ -102,26 +122,6 @@ Date: Mon Aug 26 15:22:39 2024 +0200
|
|||
wiki_stats.md
|
||||
work.md
|
||||
Date: Mon Aug 26 12:26:56 2024 +0200
|
||||
cc0.md
|
||||
future_proof.md
|
||||
kiss.md
|
||||
license.md
|
||||
main.md
|
||||
random_page.md
|
||||
wiki_pages.md
|
||||
wiki_stats.md
|
||||
Date: Sun Aug 25 01:56:24 2024 +0200
|
||||
ancap.md
|
||||
attribution.md
|
||||
bbs.md
|
||||
bilinear.md
|
||||
bootstrap.md
|
||||
brainfuck.md
|
||||
exercises.md
|
||||
free_hardware.md
|
||||
gay.md
|
||||
gui.md
|
||||
jokes.md
|
||||
```
|
||||
|
||||
most wanted pages:
|
||||
|
@ -150,15 +150,15 @@ most wanted pages:
|
|||
most popular and lonely pages:
|
||||
|
||||
- [lrs](lrs.md) (296)
|
||||
- [capitalism](capitalism.md) (241)
|
||||
- [capitalism](capitalism.md) (242)
|
||||
- [c](c.md) (221)
|
||||
- [bloat](bloat.md) (214)
|
||||
- [free_software](free_software.md) (177)
|
||||
- [game](game.md) (141)
|
||||
- [suckless](suckless.md) (140)
|
||||
- [proprietary](proprietary.md) (123)
|
||||
- [minimalism](minimalism.md) (99)
|
||||
- [computer](computer.md) (98)
|
||||
- [minimalism](minimalism.md) (97)
|
||||
- [kiss](kiss.md) (97)
|
||||
- [modern](modern.md) (95)
|
||||
- [linux](linux.md) (92)
|
||||
|
@ -173,11 +173,11 @@ most popular and lonely pages:
|
|||
- [bullshit](bullshit.md) (81)
|
||||
- [hacking](hacking.md) (80)
|
||||
- [art](art.md) (78)
|
||||
- [shit](shit.md) (76)
|
||||
- [shit](shit.md) (77)
|
||||
- [public_domain](public_domain.md) (76)
|
||||
- [programming_language](programming_language.md) (75)
|
||||
- [foss](foss.md) (75)
|
||||
- [corporation](corporation.md) (73)
|
||||
- [corporation](corporation.md) (74)
|
||||
- [chess](chess.md) (72)
|
||||
- ...
|
||||
- [anal_bead](anal_bead.md) (5)
|
||||
|
|
|
@ -18,7 +18,7 @@ Information about hardware and software used by Wikimedia Foundation can be foun
|
|||
|
||||
Wikipedia was created by [Jimmy Wales](jimmy_wales.md) and [Larry Sanger](larry_sanger.md) and was launched on 15 January 2001. The basic idea actually came from Ben Kovitz, a user of [wikiwikiweb](wikiwikiweb.md), who proposed it to Sanger. Wikipedia was made as a complementary project alongside [Nupedia](nupedia.md), an earlier encyclopedia by Wales and Sanger to which only verified experts could contribute. Wikipedia of course has shown to be a much more successful project.
|
||||
|
||||
There exist [forks](fork.md) and alternatives to Wikipedia. Simple English Wikipedia can offer a simpler alternative to sometimes overly complicated articles on the main English Wikipedia. [Citizendium](citizendium.md) is a similar online encyclopedia co-founded by [Larry Sanger](larry_sanger.md), a co-founder of Wikipedia itself, which is however [proprietary](proprietary.md) ([NC](nc.md) license). Citizendium's goal is to improve on some weak points of Wikipedia such as its reliability or quality of writing. GNU Collaborative International Dictionary of English ([GCIDE](gcide.md)) is a large dictionary made by the [GNU](gnu.md) project (forked from old Webster's dictionary with new terms added). [Justapedia](justapedia.md) is a recently spawned Wikipedia fork. [Metapedia](metapedia.md) and [Infogalactic](infogalactic.md) are a Wikipedia forks that are written from a more [rightist](left_right.md)/neutral point of view. [Infogalactic](infogalactic) is also a Wikipedia fork that tries to remove the [pseudoleftist](pseudoleft.md) bullshit etc. Encyclopedia Britannica can also be used as a nice resource: its older versions are already [public domain](public_domain.md) and can be found e.g. at [Project Gutenberg](gutenberg.md), and there is also a modern online version of Britannica which is [proprietary](proprietary.md) (and littered with ads) but has pretty good articles even on modern topics (of course facts you find there are in the public domain). Practically for any specialized topic it is nowadays possible to find its own wiki on the Internet.
|
||||
There exist [forks](fork.md) and alternatives to Wikipedia. Simple English Wikipedia can offer a simpler alternative to sometimes overly complicated articles on the main English Wikipedia. [Citizendium](citizendium.md) is a similar online encyclopedia co-founded by [Larry Sanger](larry_sanger.md), a co-founder of Wikipedia itself, which is however [proprietary](proprietary.md) ([NC](nc.md) license). Citizendium's goal is to improve on some weak points of Wikipedia such as its reliability or quality of writing. GNU Collaborative International Dictionary of English ([GCIDE](gcide.md)) is a large dictionary made by the [GNU](gnu.md) project (forked from old Webster's dictionary with new terms added). [Justapedia](justapedia.md) is a recently spawned Wikipedia fork. [Metapedia](metapedia.md) and [Infogalactic](infogalactic.md) are a Wikipedia forks that are written from a more [rightist](left_right.md)/neutral point of view. [Infogalactic](infogalactic.md) is also a Wikipedia fork that tries to remove the [pseudoleftist](pseudoleft.md) bullshit etc. Encyclopedia Britannica can also be used as a nice resource: its older versions are already [public domain](public_domain.md) and can be found e.g. at [Project Gutenberg](gutenberg.md), and there is also a modern online version of Britannica which is [proprietary](proprietary.md) (and littered with ads) but has pretty good articles even on modern topics (of course facts you find there are in the public domain). Practically for any specialized topic it is nowadays possible to find its own wiki on the Internet.
|
||||
|
||||
Important thing to realize is that, like most mainstream projects do, Wikipedia is not merely an [encyclopedia](encyclopedia.md) -- no, it's also a self-proclaimed child protector, Internet state, a center for [fighting](fight_culture.md) for women rights, [language police](political_correctness.md), a community, an organization for empowering black disabled lesbians and delivering [justice](justice.md). Did you ever wish your encyclopedia was your own private cop that told you which books are approved and prevented you from reading the bad ones? That with a book in your pocket you'd be actually constantly carrying around a community of diverse black fat trans editors ready to rewrite your book according to latest trends? That it would protect you from bad opinions, snapped your fingers and yelled `<CHILD PROTECT>` whenever you looked at a child picture for too long? Like your toothbrush is actually a subscription software with internet browser and remote camera, Wikipedia is a living, breathing entity that will decide what's best for you, without you having to think. Books that just provide information are so 20th century bro.
|
||||
|
||||
|
|
6
woman.md
6
woman.md
|
@ -89,7 +89,7 @@ Jerking off is the easiest solution to satisfying needs connected to fucking wom
|
|||
|
||||
## Notable Women In History
|
||||
|
||||
Finding famous women capable in technology is almost a futile task. One of the most famous women of [modern](modern.md) tech, even though more an entrepreneur than engineer, was [Elizabeth Holmes](elizabeth_holmes.md) who, to the feminists' dismay, turned out to be a complete fraud and is now facing criminal charges. [Grace Hopper](grace_hopper) (not "grass hopper" lol) is a woman actually worth mentioning for her contribution to programming languages, though the contribution is pretty weak. [Ada Lovelace](ada_lovelace.md) cited by the feminist propaganda as the "first programmer" also didn't actually do anything besides scribbling a note about a computer completely designed by a man. This just shows how desperate the feminist attempts at finding capable women in tech are. Then there are also some individuals who just contributed to the downfall of the technology who are, in terms of gender, at least partially on the woman side, but their actual classification is actually pretty debatable -- these are monstrosities with pink hair who invented such [cancer](cancer.md) as [COCs](coc.md) and are not even worth mentioning.
|
||||
Finding famous women capable in technology is almost a futile task. One of the most famous women of [modern](modern.md) tech, even though more an entrepreneur than engineer, was [Elizabeth Holmes](elizabeth_holmes.md) who, to the feminists' dismay, turned out to be a complete fraud and is now facing criminal charges. [Grace Hopper](grace_hopper.md) (not "grass hopper" lol) is a woman actually worth mentioning for her contribution to programming languages, though the contribution is pretty weak. [Ada Lovelace](ada_lovelace.md) cited by the feminist propaganda as the "first programmer" also didn't actually do anything besides scribbling a note about a computer completely designed by a man. This just shows how desperate the feminist attempts at finding capable women in tech are. Then there are also some individuals who just contributed to the downfall of the technology who are, in terms of gender, at least partially on the woman side, but their actual classification is actually pretty debatable -- these are monstrosities with pink hair who invented such [cancer](cancer.md) as [COCs](coc.md) and are not even worth mentioning.
|
||||
|
||||
In the related field of [free culture](free_culture.md) there is a notable woman, [Nina Paley](nina_paley.md), that has actually done some nice things for the promotion of free culture and also standing against the [pseudoleftist](pseudoleft.md) fascism by publishing a series of comics with a character named Jenndra Identitty, a parody of fascist trannies. Some rare specimen of women openly oppose feminism -- **these are the truly based women**.
|
||||
|
||||
|
@ -97,12 +97,12 @@ In the related field of [free culture](free_culture.md) there is a notable woman
|
|||
|
||||
Here is a list of almost all historically notable women (this is NOT cherrypicked, it's randomly sampled):
|
||||
|
||||
- **[Ada Lovelace](ada_lovelace)**: female nobleman who didn't have to work, once scribbled a note to a notebook about a computer made by a man. For this she enjoys endless glory among [feminists](feminism.md).
|
||||
- **[Ada Lovelace](ada_lovelace.md)**: female nobleman who didn't have to work, once scribbled a note to a notebook about a computer made by a man. For this she enjoys endless glory among [feminists](feminism.md).
|
||||
- **Agatha Christie**: one of the most famous UK writers, wrote books such as *Ten Little Niggers*, one day went nuts and ran somewhere into woods.
|
||||
- **Beth Harmon**: female who was as good at chess as men, also a completely fictional character who never existed.
|
||||
- **Elizabeth II**: queen of [England](uk.md), managed to stay alive for a long time.
|
||||
- **[Elizabeth Holmes](elizabeth_holmes.md)**: cringe and creepy psychopath who obsessively tried to imitate [Steve Jobs](steve_jobs.md), started a huge [corporation](corporation.md) and manipulated uncountable people into a huge fraud, sentenced to 11 years in jail.
|
||||
- **[Girlvinyl](girlvinyl)**: started [Encyclopedia Dramatica](dramatica.md), then went 180 degrees, tried to kill it, failed.
|
||||
- **[Girlvinyl](girlvinyl.md)**: started [Encyclopedia Dramatica](dramatica.md), then went 180 degrees, tried to kill it, failed.
|
||||
- **Emily Wilding Davison**: injured an innocent horse by jumping under it in a protest.
|
||||
- **Eve of the Bible**: achieved probably the biggest fuck up in [history](history.md), she did the single one thing she was forbidden from doing without even gaining much benefit from it, she ate some kind of [God](god.md) forbidden fruit, enraged God and doomed all people who will ever live to be banished from paradise :D
|
||||
- **Helen of Troy**: caused the Troy war.
|
||||
|
|
4
www.md
4
www.md
|
@ -12,7 +12,7 @@ Mainstream web is now EXTREMELY [bloated](bloat.md), unusable and beyond saving,
|
|||
|
||||
Prior to the tragedy of [mainstreamization](mainstream.md) the web used to be perhaps the greatest and most spectacular part of the whole Internet, the service that made Internet widespread, however it soon deteriorated by [capitalist](capitalism.md) interests, commercialization and subsequent invasion of idiots from real world; by this date, in 2020s, it is one of the most illustrative, depressing and also hilarious examples of [capitalist](capitalist_software.md) [bloat](bloat.md). A good article about the issue, called *The Website Obesity Crisis*, can be found at https://idlewords.com/talks/website_obesity.htm. There is a tool for measuring website bloat at https://www.webbloatscore.com/: it computes the ratio of the page size to the size of its screenshot (e.g. [YouTube](youtube.md) currently scores 35.7).
|
||||
|
||||
Currently a "vision" hangs in the air of so called **"[web 3](web3.md)"** which is supposed to be the "next iteration" of the web with new "[paradigms](paradigm.md)", making use of "[modern](modern.md)" (i.e. probably shitty) technology such as [bloackchain](blockchain.mg); they say web 3 wants to use [decentralization](decentralization.md) to prevent central control and possibly things like [censorship](censorship.md), however [we](lrs.md) can almost certainly guarantee web 3 will be yet exponentially amplified pile of [bloat](bloat.md), garbage and a worse dystopia than our nightmares were able to come up with so far, we simply have to leave this ship sink. If web 3 is what web 2.0 was to web 1.0, then indeed we are [doomed](doom.md). Our prediction is that web will simply lose its status of the biggest Internet service just as [Usenet](usenet.md) did, or like TV lost its status of the main audiovisual media; web will be replaced by something like akin "islands of franchised social media accessed through apps"; it will still be around but will be just a huge ad-littered swamp inferior to [teletext](teletext.md) where the elderly go to share pictures no one wants to see and where guys go to masturbate.
|
||||
Currently a "vision" hangs in the air of so called **"[web 3](web3.md)"** which is supposed to be the "next iteration" of the web with new "[paradigms](paradigm.md)", making use of "[modern](modern.md)" (i.e. probably shitty) technology such as [bloackchain](blockchain.md); they say web 3 wants to use [decentralization](decentralization.md) to prevent central control and possibly things like [censorship](censorship.md), however [we](lrs.md) can almost certainly guarantee web 3 will be yet exponentially amplified pile of [bloat](bloat.md), garbage and a worse dystopia than our nightmares were able to come up with so far, we simply have to leave this ship sink. If web 3 is what web 2.0 was to web 1.0, then indeed we are [doomed](doom.md). Our prediction is that web will simply lose its status of the biggest Internet service just as [Usenet](usenet.md) did, or like TV lost its status of the main audiovisual media; web will be replaced by something like akin "islands of franchised social media accessed through apps"; it will still be around but will be just a huge ad-littered swamp inferior to [teletext](teletext.md) where the elderly go to share pictures no one wants to see and where guys go to masturbate.
|
||||
|
||||
## How It Went To Shit
|
||||
|
||||
|
@ -62,7 +62,7 @@ As with most groundbreaking inventions the web didn't appear out of nowhere, as
|
|||
|
||||
World Wide Web was invented by an English computer scientist [Tim Berners-Lee](berners_lee.md). In 1980 he employed [hyperlinks](hyperlink.md) in a notebook program called ENQUIRE and he saw the idea was good. On March 12 1989 he was working at [CERN](cern.md) where he proposed a system called "web" that would use [hypertext](hypertext.md) to link documents (the term hypertext was already around). He also considered the name *Mesh* but settled on *World Wide Web* eventually. He started to implement the system with a few other people. At the end of 1990 they already had implemented the [HTTP](http.md) protocol for client-server communication, the [HTML](html.md), language for writing websites, the first web server and the first [web browser](browser.md) called *WorldWideWeb*. They set up the first website http://info.cern.ch that contained information about the project (still accessible as of writing this).
|
||||
|
||||
In 1993 CERN made the web [public domain](public_domain.md), free for anyone without any licensing requirements. The main reason was to gain advantage over competing systems such as [Gopher](gopher.md) that were [proprietary](proprietary.md). By 1994 there were over 500 web servers around the world. WWW Consortium ([W3M](w3m.md)) was established to maintain standards for the web. A number of new browsers were written such as the text-only [Lynx](lynx.md), but the [proprietary](proprietary.md) [Netscape Navigator](netscape_navigator.md) would go to become the most popular one until [Micro$oft](microsoft)'s [Internet Explorer](internet_explorer.md) (see [browser wars](browser_wars.md)). In 1997 [Google](google.md) search engine appeared, as well as [CSS](css.md). There was a economic bubble connected to the explosion of the Web called the [dot-comm boom](dot_com_boom.md).
|
||||
In 1993 CERN made the web [public domain](public_domain.md), free for anyone without any licensing requirements. The main reason was to gain advantage over competing systems such as [Gopher](gopher.md) that were [proprietary](proprietary.md). By 1994 there were over 500 web servers around the world. WWW Consortium ([W3M](w3m.md)) was established to maintain standards for the web. A number of new browsers were written such as the text-only [Lynx](lynx.md), but the [proprietary](proprietary.md) [Netscape Navigator](netscape_navigator.md) would go to become the most popular one until [Micro$oft](microsoft.md)'s [Internet Explorer](internet_explorer.md) (see [browser wars](browser_wars.md)). In 1997 [Google](google.md) search engine appeared, as well as [CSS](css.md). There was a economic bubble connected to the explosion of the Web called the [dot-comm boom](dot_com_boom.md).
|
||||
|
||||
Interesting between 2000 and 2010 a mobile alternative to the web, called [WAP](wap.md), briefly came to the scene. Back then mobile phones were significantly weaker than PCs so the whole protocol was simplified, e.g. it had a special markup language called [WML](wml.md) instead of [HTML](html.md). But as the phones got more powerful they simply started to support normal web and WAP had to say goodbye.
|
||||
|
||||
|
|
Loading…
Reference in a new issue