Miloslav Číž 3 years ago
commit 7128e68bcf

@ -0,0 +1,43 @@
# Chess
Chess is an old board [game](game.md), perhaps most famous and popular among all board games in history. It is a complete information game that simulates a battle of two armies on a 64x64 board with different battle pieces. Chess has a world-wide competitive community and is considered an intellectual sport but is also a topic of active research (chess is unlikely to be ever solved due to its non-trivial rules combined with enormous state space size, Shannon estimated the number of possible games at 10^120) and programming (many chess engines, [AI](ai.md)s and frontends are being actively developed).
**At [LRS](lrs.md) we consider chess to be one of the best games**, if not the very best one, for the following reasons:
- It is just a great, interesting and deep game in which luck plays minimal role, skill is all that matters.
- **It is [suckless](suckless.md)**, the rules are very simple, it can be implemented on simple 8bit computers and doesn't even require a computer to play. Chess masters don't even need a board to play (they can completely visualize it in memory), and in the end can in theory just play against himself in his head, achieving ultimate freedom: the only dependency of the game is one's brain, i.e. it becomes a [brain software](brain_software.md). Chess is extremely inexpensive, doesn't discriminate against poor people and will survive even the most extreme technological [collapse](collapse.md).
- **No one owns chess**, the game is hundrends of years old and many books about it are also already in the [public domain](public_domain.md). It is extremely free.
- It is a basis for other derived games, for example many different chess variants or chess puzzles which can be considered a "singleplayer chess game".
- It is a source of many interesting mathematical and programming challenges.
## Chess in General
Chess evolved from ancient board games in India in about 6th century. Nowadays the game is internationally governed by **FIDE** which has taken the role of defining the rules: FIDE rules are considered to be the standard chess rules. FIDE also organizes tournaments, promotes the game and keeps a list of registered player whose performance it rates with so called Elo system based on the performance it also grants titles such as **Grandmaster** (GM, strongest), **Internation Master** (IM, second strongest) or **Candidate Master** (CM).
**Elo rating** is a mathematical system of numerically rating the performance of players and is used in many sports, not just chess. Given two players with Elo rating it is possible to compute the probability of the game's outcome (e.g. white has 70% chance of winning etc.). The FIDE set the parameters so that the rating is roughly this: < 1000: beginner, 1000-2000: intermediate, 2000-3000: master.
The rules of chess are quite simple and can be found anywhere on the Internet. In short, the game is played on a 64x64 board by two players: one with **white** pieces, one with **black**. Each piece has a way of moving and capturing (eliminating) enemy pieces, for example bishops move diagonally while pawns move one square forward and take diagonally. The goal is to **checkmate** the opponent's king, i.e. make the king attacked by a piece while giving him no way to escape this attack. There are also lesser known rules that noobs often miss and ignore, e.g. so called en-passant or the 50 move rule that declares a draw if there has been no significant move for 50 moves.
At the competitive level **clock** (so called *time control*) is used to give each player a limited time for making moves: with unlimited move time games would be painfully long and more a test of patience than skill. Clock can also nicely help balance unequal opponent by giving the stronger player less time to move. Based on the amount of time to move there exist several formats, most notably **correspondence** (slowest, days for a move), **classical** (slow, hours per game), **rapid** (faster, tens of minutes per game), **blitz** (fast, a few seconds per move) and **bullet** (fastest, units of seconds per move).
Currently the best player in the world is pretty clearly Magnus Carlsen from Norway with Elo rating 2800+.
During covid chess has experienced boom among normies and [YouTube](youtube.md) chess channels have gained considerable popularity.
## Chess and Computers
{[This](https://www.youtube.com/watch?v=DpXy041BIlA) is an absolutely amazing video about weird chess algorithms :) ~drummyfish}
Chess have a very strong relationship with computers, computers help people play chess, train their skills but also analyze positions, create and search game databases and find new play styles. The game also provides a nice framework for machine learning.
There is a great online Wiki focused on programming chess engines: https://www.chessprogramming.org.
Chess programs are usually separated to **chess engines** and **frontends** (or boards). Chess engine is typically a [CLI](cli.md) program capable of playing chess but also doing other things such as evaluating arbitrary position, hinting best moves, saving and loading games etc. Frontends on the other hand are [GUI](gui.md) programs that help people interact with the underlying engine.
For communication between different engines and frontends there exist standards such as XBoard (engine protocol), UCI (another engine protocol), FEN (way of encoding a position as a string) etc.
Computers have already surpassed the best humans in their strength (we can't exactly compute an engine's Elo as it depends on hardware used, but generally the strongest would rate high above 3000). As of 2021 the strongest chess engine is considered to be the [FOSS](foss.md) engine [Stockfish](stockfish.md), with other strong engines being e.g. Leela Chess Zero (also FOSS) or AlphaZero ([proprietary](proprietary.md), by [Google](google.md)). [GNU Chess](gnu_chess.md) is a reasonably strong [free software](free_software.md) engine by [GNU](gnu.md). There are world championships for chess engines such as the *Top Chess Engine Championship* or *World Computer Chess Championship*. [CCRL](https://ccrl.chessdom.com/ccrl/4040/) is a list of chess engines along with their Elo ratings. Despite the immense strength of modern engines, there are still very specific situation in which humans beat the computer (shown e.g. in [this](https://www.youtube.com/watch?v=R9IZWgArWUE) video).
The first chess computer that beat the world champion (at the time Gary Kasparov) was famously [Deep Blue](deep_blue.md) in 1997.
For online chess there exist many servers such as https://chess.com or https://chess24.com, but for us the most important is https://lichess.org which is gratis and uses [FOSS](foss.md). These servers rate players with Elo, allow them to play with each other or against computer, solve puzzles, analyze games, play chess variants, explore opening databases etc.

@ -1,6 +1,8 @@
# Dependency
Dependency is something your program depends on -- dependencies are bad! Unfortunately they are also unavoidable. We at least try to minimize dependencies as much as possible while keeping our program functioning as intended.
Dependency is something your program depends on -- dependencies are [bad](shit.md)! Unfortunately they are also unavoidable. We at least try to minimize dependencies as much as possible while keeping our program functioning as intended, and those we can't avoid we try to abstract in order to be able to quickly drop-in replace them with alternatives.
Having many dependencies is a sign of [bloat](bloat.md) and bad design. Unfortunately this is the reality of mainstream programming. For example at the time of writing this [Chromium](chromium.md) in [Debian](debian.md) requires (recursively) 395 packages LMAO xD And these are just runtime dependencies...
In [software](software.md) development context we usually talk about software dependencies, typically [libraries](library.md) and other software [packages](package.md). However, there are many other types of dependencies we need to consider when striving for the best programs. Let us list just some of the possible types:

@ -11,7 +11,7 @@ Free software was originally defined by [Richard Stallman](rms.md) for his [GNU]
Software is considered free if all its users have the rights to:
0. Use the software for any purpose.
1. Study the software. Fpr this source code of the program has to be available.
1. Study the software. For this source code of the program has to be available.
2. Share the software with anyone.
3. Modify the software. This modified version can also be shared with anyone.
@ -24,4 +24,4 @@ Free software was invented by the great [Richard Stallman](rms.md) in the 1980s.
# See Also
- [open source](open_source.md)
- [free culture](free_culture.md)
- [free culture](free_culture.md)

@ -8,5 +8,6 @@ Fun is a reward in form of a pleasant feeling which you get after doing somethin
- [games](game.md)
- [open consoles](open_console.md)
- [obfuscating C](ioccc.md)
- [Netstalking](netstalking.md)
- hanging around with friends on the [Island](island.md)
- laughing at normies dealing with [bloat](bloat.md)

@ -0,0 +1,11 @@
# Google
Google is one the very top [big tech](big_tech.md) corporations, as well as one of the worst corporations in history (if not THE worst), comparable only to [Microsoft](microsoft.md) and [Facebook](facebook.md). Google is gigantically evil and largely controls the [Internet](internet.md), pushes mass surveillance, data collection, ads, [bloat](bloat.md), [fascism](tranny_software.md) and censorship.
Google's motto used to be **"Don't be evil"**, but in 2018 they ditched it lol xD
Google raised to the top thanks to its [search engine](search_engine.md) launched in the 90s. It soon got a **monopoly on the Internet search** and started pushing ads. Nowadays Google's search engine basically just promotes "content" on Google's own content platforms such as [YouTube](youtube.md) and of course censors sites deemed politically incorrect.
Google has created a malicious [capitalist](capitalist_software.md) mobile [operating system](operating_system.md) called [Android](android.md), which they based on [Linux](linux.md) with which they managed to bypass its [copyleft](copyleft.md) by making Android de-facto dependent on their proprietary *Play Store* and other programs. I.e. they managed to take a [free](free_software.md) project and make a de-facto [proprietary](proprietary.md) [malware](malware.md) out of it -- a system that typically doesn't allow users to modify its internals and turn off its malicious features. With Android they invaded a huge number of devices from cells phones to TVs and have the ability to spy on the users of these devices.
Google also tries to steal the [public domain](public_domain.md): they scan and digitize old books whose [copyright](copyright.md) has expired and put the on the [Internet archive](internet_archive.md), however in these scans they put a condition that the scans should not be used for commercial purposes, i.e. they try to keep exclusive commercial right for public domain works, something they have no right to do at all.

@ -26,4 +26,5 @@ And if you just want something more obscure and fun, check out these:
- [open consoles](open_console.md)
- [brain software](brain_software.md)
- [C obfuscation contest](ioccc.md)
- [Netstalking](netstalking.md)
- [shit](shit.md)

@ -0,0 +1,10 @@
# Netstalking
Netstalking means searching for obscure, hard-to-find and somehow valuable (even if only by its entertaining nature) information buried in the depths of the [Internet](internet.md), for example searching for funny photos on Google Streetview (https://9-eyes.com/), unindexed [deepweb](deepweb.md) sites or secret documents on [FTP](ftp.md) servers. Netstalking is relatively unknown in the English-speaking world but is pretty popular in Russian communities.
Netstalking can be divided into two categories:
- **deli-search** (deliberate search): trying to find a specific information, e.g. a specific video that got lost.
- **net-random**: randomly searching for interesting information in places where it is likely to be found.
Techniques of netstalking include port scanning, randomly generating web domains, using advanced search queries and different [search engines](search_engine.md), searching caches and archives and obscure networks such as [darknet](darknet.md) or [gopher](gopher.md).

@ -0,0 +1,3 @@
# Technology
Technology ("tech") encompasses tools and knowledge of making such tools invented and achieved mainly with the help of [science](science.md) and by long systematic effort. This includes everything from stone tools to space rockets and [artificial intelligence](ai.md). On the Internet, as well as on this Wiki, this term is often used with the focus on [computer](computer.md) technology, i.e. [hardware](hardware.md) and [software](software.md), as this is the kind of technology is being discussed and developed the most in our days. Technology, like fire, should serve us, but can also be dangerous and often gets misused and abused.

@ -1,3 +1,9 @@
# World Wide Web
World Wide Web (www) was a network of [HTML](html.md) documents interconnected via the [Internet](internet.md) (technically it still exists but it's dead now). It has been replaced by toxic mobile "apps" and "web 2.0". Programs called [web browsers](browser.md) wer used to browse the web.
World Wide Web (www or just *the web*) is (or was, if we accept that by 2021 the web is basically dead) a network of interconnected documents on the [Internet](internet.md) (called *websites* or *webpages*). Some people confuse the web with the Internet, but of course those people are retarded: web is just one of many service existing on the Internet (other ones being e.g. [email](email.md) or [torrents](torrent.md)). In order to browse the web you need an Internet connection and a [web browser](browser.md).
The web is perhaps the best, saddest and funniest example of [capitalist](capitalist_software.md) [bloat](bloat.md), the situation with web sites is completely ridiculous and depressive. A nice article about the issue, called *The Website Obesity Crisis*, can be found at https://idlewords.com/talks/website_obesity.htm.
Back in the days (90s and early 2000s) web used to be a place of freedom working more or less in a decentralized manner and on anarchist principles people used to have their own unique websites, censorship was difficult to implement and mostly non-existent and websites used to have a much better design and were safer, as they were pure [HTML](html.md) documents.
As the time went web used to become more and more [shit](shit.md), as is the case with everything touched by [capitalism](capitalist_software.md) the advent of so called **web 2.0** brought about a lot of [complexity](complexity.md), websites started to incorporate runnable scripts ([JavaScript](javascript.md), [Flash](flash.md)) which lead to many negative things such as security vulnerabilities (web pages now have power to run code) and more complexity in web browsers, which leads to even more possible vulnerabilities, [bloat](bloat.md) and to browser monopolies (greater effort is needed to develop a browser, making it a privilege of those who can afford it, and those can subsequently dictate de-facto standards that further strengthen their monopolies). Another disaster came with **[social networks](social_network.md)** in mid 2000s, most notably [Facebook](facebook.md) but also [YouTube](youtube.md) and others, which centralized the web and rid people of control. Out of comfort people stopped creating and hosting own websites and rather created a page on Facebook. This gave the power to corporations and allowed **mass-surveillance**, **mass-censorship** and **propaganda brainwashing**. As the web became more and more popular, corporations and governments started to take more control over it, creating technologies and laws to make it less free. By 2020, the good old web is but a memory, everything is controlled by corporations, infected with billions of unbearable ads, [DRM](drm.md), malware (trackers, [crypto](crypto.md) miners), there exist no good web browsers, web pages now REQUIRE JavaScript even if it's not really needed due to which they are painfully slow and buggy, there are restrictive laws and censorship and de-facto laws (site policies) put in place by corporations controlling the web.
Loading…
Cancel
Save