master
Miloslav Ciz 3 months ago
parent 5117c92dd9
commit a2a9b750ab

@ -6,7 +6,7 @@ C is an [old](old.md) [low level](low_level.md) structured [statically typed](st
{ Look up *The Ten Commandments for C Programmers* by Henry Spencer. Also the *Write in C* song (parody of *Let it Be*). ~drummyfish }
It is usually **not considered an easy language to learn** because of its low level nature: it requires good understanding of how a [computer](computer.md) actually works and doesn't prevent the programmer from shooting himself in the foot. Programmer is given full control (and therefore responsibility). There are things considered "tricky" which one must be aware of, such as undefined behavior of certain operators and raw pointers. This is what can discourage a lot of modern "coding monkeys" from choosing C, but it's also what inevitably allows such great performance -- undefined behavior allows the compiler to choose the most efficient implementation. On the other hand, C as a language is pretty simple without [modern](modern.md) bullshit concepts such as [OOP](oop.md), it is not as much hard to learn but rather hard to master, as any other true art.
It is usually **not considered an easy language to learn** because of its low level nature: it requires good understanding of how a [computer](computer.md) actually works and doesn't prevent the programmer from shooting himself in the foot. Programmer is given full control (and therefore responsibility). There are things considered "tricky" which one must be aware of, such as undefined behavior of certain operators and raw pointers. This is what can discourage a lot of modern "coding monkeys" from choosing C, but it's also what inevitably allows such great performance -- undefined behavior allows the compiler to choose the most efficient implementation. On the other hand, C as a language is pretty simple without [modern](modern.md) bullshit concepts such as [OOP](oop.md), it is not as much hard to learn but rather hard to master, as any other true art. In any case **you have to learn C** even if you don't plan to program in it regularly, it's the most important language in history and lingua franca of programming, you will meet C in many places and have to at least understand it: programmers very often use C instead of [pseudocode](pseudocode.md) to explain algorithms, C is used for optimizing critical parts even in non-C projects, many languages compile to C, it is just all around and you have to understand it like you have to understand [English](english.md).
Some of the typical traits of C include great reliance on and utilization of **[preprocessor](preprocessor.md)** ([macros](macro.md), the underlying C code is infamously littered with "`#ifdefs`" all over the place which modify the code just before compiling -- this is mostly used for compile-time configuration and/or achieving better performance and/or for [portability](portability.md)), **[pointers](pointer.md)** (direct access to memory, used e.g. for memory allocation, this is infamously related to "shooting oneself in the foot", e.g. by getting [memory leaks](memory_leak.md)) and a lot of **[undefined behavior](undefined_behavior.md)** (many things are purposefully left undefined in C to allow compilers to generate greatly efficient code, but this sometimes lead to weird [bugs](bug.md) or a program working on one machine but not another, so C requires some knowledge of its specification). You can also infamously meet complicated type declarations like `void (*float(int,void (*n)(int)))(int)`, these are frequently a subject of [jokes](jokes.md) ("look, C is simple").

@ -2,7 +2,7 @@
*Capitalism is how you enslave a man with his approval.*
Capitali$m is the worst socioeconomic system we've yet seen in [history](history.md),^[source](logic.md) based on pure greed, culture of slavery and artificially sustained conflict between everyone in society (so called [competition](competition.md)), abandoning all morals and putting money and profit (so called [capital](capital.md)) above everything else including preservation of life itself, capitalism fuels the worst in people and forces them to compete and suffer for basic resources, even in a world where abundance of resources is already possible to achieve -- of course, capitalism is a purely [rightist](left_right.md) idea. Capitalism goes against progress (see e.g. [antivirus paradox](antivirus_paradox.md)), [good technology](lrs.md) and freedom, it supports immense waste of resources, wars, abuse of people and animals, destruction of environment, decline of morals, deterioration of [art](art.md), invention of [bullshit](bullshit.md) (bullshit jobs, bullshit laws, ...), utilizing and perfecting methods of [torture](marketing.md), brainwashing, [censorship](censorship.md) and so on. In a sense capitalism can be seen as **slavery 2.0** or *universal slavery*, a more sophisticated form of slavery, one which denies the label by calling itself the polar opposite ("freedom") and manipulates people into them approving and voluntarily parttaking in their own enslavement (capitalist slaves are called wage slaves or *wagies*). However wage and consumption slavery is only a small part of capitalist dystopia -- capitalism brings on destruction basically to every part of civilization. It it also often likened to a [cancer](cancer.md) of society; one that is ever expanding, destroying everything with commercialism, materialism, waste and destruction, growing uncontrollably with the sole goal of just never stop an ever accelerating growth. Nevertheless, it's been truthfully stated that "it is now easier to imagine the end of all life than any substantial change in capitalism." Another famous quote is that "capitalism is the belief that the worst of men driven by the nastiest motives will somehow work for the benefit of everyone", which describes its principle quite well.
Capitali$m is the worst socioeconomic system we've yet seen in [history](history.md),^[source](logic.md) based on pure greed, culture of slavery and artificially sustained conflict between everyone in society (so called [competition](competition.md)), abandoning all morals and putting money and profit (so called [capital](capital.md)) above everything else including preservation of life itself, capitalism fuels the worst in people and forces them to compete and suffer for basic resources, even in a world where abundance of resources is already possible to achieve -- of course, capitalism is a purely [rightist](left_right.md) idea. Capitalism goes against progress (see e.g. [antivirus paradox](antivirus_paradox.md)), [good technology](lrs.md) and freedom, it supports immense waste of resources, wars, abuse of people and animals, destruction of environment, decline of morals, deterioration of [art](art.md), invention of [bullshit](bullshit.md) (bullshit jobs, bullshit laws, ...), utilizing and perfecting methods of [torture](marketing.md), brainwashing, [censorship](censorship.md) and so on. In a sense capitalism can be seen as **slavery 2.0** or *universal slavery*, a more sophisticated form of slavery, one which denies the label by calling itself the polar opposite ("freedom") and manipulates people into them approving and voluntarily partaking in their own enslavement (capitalist slaves are called wage slaves or *wagies*) -- this new form of slavery which enslaves everyone evolved because the old form with strictly separated classes of slaves and masters was becoming unsustainable, with the enslaved majority revolting, causing civil wars etc. This alone already seems to many like a good reason for [suicide](suicide.md), however wage and consumption slavery is still only a small part of capitalist dystopia -- capitalism brings on destruction basically to every part of civilization. It it also often likened to a [cancer](cancer.md) of society; one that is ever expanding, destroying everything with commercialism, materialism, waste and destruction, growing uncontrollably with the sole goal of just never stop an ever accelerating growth. Nevertheless, it's been truthfully stated that "it is now easier to imagine the end of all life than any substantial change in capitalism." Another famous quote is that "capitalism is the belief that the worst of men driven by the nastiest motives will somehow work for the benefit of everyone", which describes its principle quite well.
{ Some web bashing capitalism I just found: http://digdeeper.club/articles/capitalismcancer.xhtml, read only briefly, seems to contain some nice gems capturing the rape of people. ~drummyfish }

@ -18,6 +18,27 @@ PRO TIP: **you should print your own offline Internet** (or maybe we should rath
TODO: https://www.zakon.org/robert/internet/timeline/, https://www.freesoft.org/CIE/Topics/57.htm
## Alternatives To The Internet
Internet overtook the world thanks to having enabled great number of services to be provided very cheaply, at great scales and/or with extremely elevated attributes such as minimal [delay](delay.md) or great [bandwidth](bandwidth.md). This is crucial to many industries who couldn't do without such a network, however to individuals or even smaller organizations Internet is frequently just a tool of comfort -- they could exist without the Internet, just a little less comfortably. As Internet is becoming more and more monitored, controlled, overcrowded, limited and censored, we may start to consider the less comfortable alternatives as [good enough](good_enough.md) ways that actually gain us advantages in some other ways, e.g. more [freedom of expression](free_speech.md), more robust network (independence of the Internet infrastructure), technological independence etc. We have to keep in mind the services allowed by the Internet, such as long distance communication, information searching or playing games still mostly exist even without Internet, just usually separated or somehow suffering a few disadvantages; nevertheless these disadvantages may be bearable and/or made smaller, e.g. by adjusting ourselves to the limitations (if our communication becomes slower, we'll simply write longer messages to which we put more thought and information etc.) or combining these alternative services in a clever way. Additionally we can make use of the lessons learned from the Internet (e.g. cleverly designed [protocols](protocol.md), steganography, broadcasts, [digital](digital.md) data, ...) and apply them to the alternative networks. Let us now list a few alternatives to the Internet:
- **[books](book.md), [encyclopedias](encyclopedia.md), magazines, libraries, printed media, paper, ...**: Paper is an awesome medium, it's cheap and can hold quite a lot of information, both digital and analog, it can be used without a [computer](computer.md) but can still be combined with computers (e.g. [printers](printer.md), scanning and [OCR](ocr.md), ...) and/or lower tech tools like [typewriters](typewriter.md) that may help manually copy books (see e.g. [samizdat](samizdat.md)). Quality paper can be used for reliable [backups](backup.md). Posters can leave information for others to find. Books that have been written throughout history provide enormous amount of data and information, great part of which isn't even accessible through the Internet. Books are generally of much higher quality than websites, older ones are additionally free of modern propaganda and [censorship](censorship.md). Print encyclopedias can here and there be used instead of [Wikipedia](wikipedia.md), and they are extremely cheap (seek second hand book stores, no one wants them anymore). Books also provide entertainment, from traditional fiction, poetry etc. to entertaining reads such as the Guinness World Records book or even interactive [RPG](rpg.md) games (see [gamebooks](gamebook.md)). Making your own small library of quality books isn't expensive at all and can really greatly reduce your dependence on the Internet in many ways.
- **[snail mail](snail_mail.md), avian carriers, arrows, messengers, [USB](usb.md) exchange, messages in bottle, ...**: Physically transforming messages is another historically tested option, travelers will always be around wanting to get from point A to point B and while at it they may also serve as information carriers -- information doesn't weight that much. There even exist volunteer organizations that distribute mail. People used to play correspondence [chess](chess.md) over snail mail, with enough dedication you could probably scale it up to some turn-based [MMORPG](mmorpg.md) game. Owing to the small weight, data can be transferred also by small animals such as pigeons (in some places with very bad Internet this is allegedly still the superior way even nowadays) or even just by "throwing", shooting an arrow with message on it, sending it down the river stream and so on. USB sticks are used by activists to send western propaganda to North Korea (e.g. small helium balloons carrying USB sticks with movies and books over the borders for the inhabitants to find). The disadvantage is high communication delay but even if it's orders of magnitude worse than what Internet offers us, bandwidth can still be excellent, sometimes even beating the Internet! Consider that a truck carrying 1000 1 terabyte harddrives arriving from start to its destination in a week achieves a bandwidth of about 1.6 gigabytes per second. That's pretty solid. Future inhabitans of Mars and other planets will inevitably have to deal with [interplanetary Internet](interplanetary_internet.md) that's doomed by laws of physics to have high delays -- if they can get around the issue, so can we. An interesting concept might be a "slow" network of people who simply meet up once a week and exchange their USB sticks (or SD cards or diskettes or whatever) on which they pass files and messages to others, such as requests for files etc.
- **leaving signs ([rocks](rock.md), sticks, leaves, messages in sand, bulletin boards, ...**: Some forest people communicate by leaving signs for others e.g. by leaving tears on leaves or making shapes from sticks or rocks -- these can carry messages like "beware, dangerous animal around", "today I hunted down a monkey here" or "I have extra food, come take some". When improved, we could communicate whole text messages, numbers and any binary data this way -- imagine e.g. a small ["bulletin board"](bbs.md) on some frequently visited crossroads between villages where people leave latest news, offers, demands, jokes etc.
- **[intranet](intranet.md), [LAN](lan.md), [WAN](wan.md), ...**: Networks using basically the same technology as the Internet ([TCP](tcp.md)/[IP](ip.md), [ethernet](ethernet.md), [wifi](wifi.md), routers, ...), just on smaller scales -- the technology can actually be simpler: simpler routers can be used, no high performance backbone routers are needed, [Ronja](ronja.md) may be used instead of wifi, [DNS](dns.md) may be omitted and so on. There are many such networks, [military](military.md) has its own isolated networks, North Korea has its famous nation-wide isolated intranet ([Kwangmyong](kwangmyong.md)), Cuba has the famous [SNet](snet.md) -- "street net" that's used for pirating and games -- and so on. The advantage is relative simplicity of implementation -- the technology is all there and quite cheap, you can set up your own network in the neighborhood and have complete control over it, government isn't gonna bully you for sharing movies, it won't spy on your communication (at least not so easily) etc.
- **[radio](radio.md), [telegraph](telegraph.md)**: Plain FM/AM radio communication is a serious competition to Internet in terms of delay, bandwidth and distance of reach, while being very simple in comparison -- a skilled individual can construct or repair a radio with just some basic electronic components, which can't be said about digital computer networks that require extremely complex computer chips. Radio can relatively easily transfer analog information such as voice, but it can also send digital information. With [Morse code](morse_code.md) even the most primitive radio communication system can turn into something extremely powerful.
- **[broadcast](broadcast.md)** (see also [world broadcast](world_broadcast.md)): broadcasts (one way communication towards many) can be implemented in many ways: with radio, audio, optically and so on. Broadcast only networks, such as [teletext](teletext.md), TV or radio station broadcast, can be much simpler than a two way communication -- there don't have to be complex protocols, devices can work on low power (as they're only receivers) and the broadcaster can't be overloaded by client requests. These can cover a great range of services such as news, weather forecast, time synchronization, localization, work organization ("now we need you to produce this and this"), some forms of entertainment or providing generally useful data such as maps and books.
- **optical telegraph, smoke signals, lanterns, flag semaphores, kites and other optical communication**: Optical communication is another technique widely used throughout history -- the advantage here is speed as obviously [light](light.md) is the fastest medium you can ever use. Lighting bonfires on hill tops could send a message about incoming enemy at great distances, later on even a more complex information could be sent using optical telegraph -- a chain of towers that forwarded symbols one to another by positioning big arms on their rooftops to form some specific shape, with the next tower copying the symbol and so on. You can leave big symbols in your window to send a few bytes to anyone with a telescope in the line of sight of your house. Basically if you can make someone see something, you can send a message; you can increase the amount of data by utilizing [color](color.md), movement, blinking and so on.
- **audio signals (bells, canon shots, ...)**: These were again used a lot in history, a church bell could tell people many different things by how it was rang, canon shots could warn of incoming enemies and so on, voice can be used too.
- **[pneumatic tube](pneumatic_tube.md)** and similar non-electric networks: A network of tubes using pressured air to transform small capsule containers from one place to another pretty fast, often used in factories -- this can carry written messages but also, unlike the Internet, physical objects! Other mechanism could be explored to construct similar networks, e.g. something based on hydraulics, string pulling, steam engines, gears, simple gravity (sending a marble down some tunnel could be a quite fast message) and so on.
- **phone networks, [phreaking](phreaking.md) etc.**: phone networks (and possibly other networks like the electric network, TV network etc.) can be [hacked](hacking.md) to be used for free or cheap communication -- old time hackers knew how to rape phone boots to let them make free calls. Nowadays many safety measures are in place but you may still e.g. exploit the fact that merely ringing someone's phone is completely free, which can be used to send a few [bits](bit.md) of information. WARNING: It's generally illegal to mess with these networks, trying this shit's always on you :-) Also touching random electric cables can kill you. If you by accident take down some optical cable or something, you'll be fined to death.
- **normal voice communication**: As stupid as it sounds, we can sometimes just talk to other people, even if they live in another village, simply by going there and talking to them. You can use shouting to reach even people who are far away instantly -- some communities even invented things like [whistling languages](whistling_language.md) to communicate simple messages on extreme distances, this was used by hunters in forests etc. We got too much used to using cell phones to communicate with someone who just happens to be in another room, but this is just stupid, this can be just discarded as human degeneracy.
- **petroglyphs ([rock](rock.md) carving), wood carving, glass painting, knot tying, metal tables etc.**: Data can be recorded manually in many materials, e.g. Incas used Quipu, a special knot tying language. Carving to stone is hard but will last for a long time, it is ideal for preserving small amounts of important information for a long time. See also [rok carved binary data](rcbd.md).
- **human memory**: Human memory can be used instead of computer memory, though we have to bear in mind its limitations. In very old times, before books became common and cheap, there existed people who made living by memorizing history in forms of long poems and recited them in public.
- **public fora**: Instead of an Internet discussion forum or chat it's possible to just allocate some public space for people to simply talk -- again, pretty obvious but the new generation may already be forgetting things can be [done simply](kiss.md).
- telepathy? :D
- ...
## See Also
- [JWICS](jwics.md), [SIPRNet](siprnet.md), [NIPRNet](niprnet.md) (secret/military networks)

@ -116,6 +116,7 @@ Here are some of the ideas/movements/ideologies and people whose ideas inspired
- **[Richard Stallman](rms.md), [free software](free_software.md), [free culture](free_culture.md)**: Opposition of "[intellectual property](intellectual_property.md)", focus on ethics, freedom and technology/art serving the people.
- **[Sikhism](sikhism.md)**: Serving free food to all people as part of Langar, example of [selflessness](selflessness.md).
- **vegetarianism, [veganism](vegan.md)**: Choosing to not hurt other living beings, even those that aren't of the same species, even for the cost of making having less comfortable life.
- **[Venus project](venus_project.md)**: Project with very similar goals as ours.
- ...
## See Also

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

@ -2,9 +2,9 @@
This is an autogenerated article holding stats about this wiki.
- number of articles: 560
- number of commits: 708
- total size of all texts in bytes: 3102044
- number of articles: 561
- number of commits: 709
- total size of all texts in bytes: 3104741
longest articles:
@ -24,34 +24,45 @@ longest articles:
latest changes:
```
Date: Sat Feb 24 19:26:17 2024 +0100
random_page.md
wiki_pages.md
wiki_stats.md
Date: Sat Feb 24 16:17:37 2024 +0100
c.md
c_pitfalls.md
cat_v.md
Date: Sun Feb 25 01:09:12 2024 +0100
3d_rendering.md
abstraction.md
ai.md
aliasing.md
analytic_geometry.md
anarchism.md
anpac.md
approximation.md
ascii_art.md
assembly.md
bbs.md
bloat.md
c_tutorial.md
chaos.md
chess.md
coc.md
competition.md
compression.md
computer.md
copyleft.md
cpp.md
demoscene.md
docker.md
dynamic_programming.md
elon_musk.md
encyclopedia.md
free_software.md
history.md
libertarianism.md
race.md
entropy.md
furry.md
gnu.md
gopher.md
jesus.md
lrs_dictionary.md
music.md
programming_style.md
random_page.md
wiki_pages.md
wiki_stats.md
Date: Fri Feb 23 14:18:56 2024 +0100
anarchism.md
ascii_art.md
atheism.md
capitalism.md
geek.md
how_to.md
kiss.md
less_retarded_society.md
open_source.md
random_page.md
rights_culture.md
Date: Sat Feb 24 19:26:17 2024 +0100
```
most wanted pages:

@ -53,6 +53,8 @@ Mainstream web is quite literally unusable nowadays. { 2023 update: whole web is
## History
As with most revolutionary things the web didn't really appear out of nowhere, the ideas it employed were tried before, for example the [NABU](nabu.md) network did something similar even 10 years before the web; similarly [Usenet](usenet.md), the [BBS](bbs.md) networks and so on. However it wasn't until the end of 1980s that all the right ideas would come together under the right circumstances and had a bit of luck to get really popular.
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, 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).
@ -90,6 +92,7 @@ Other programming languages such as [PHP](php.md) can also be used on the web, b
- [Dork Web/Smol Internet](smol_internet.md)
- [teletext](teletext.md)
- [minitel](minitel.md)
- [NABU](nabu.md)
- [WAP](wap.md)
- [Usenet](usenet.md)
- [TOR](tor.md)
@ -101,4 +104,5 @@ Other programming languages such as [PHP](php.md) can also be used on the web, b
- [Internet](internet.md)
- [Kwangmyong](kwangmyong.md)
- [cyberspace](cyberspace.md)
- [SNet](snet.md)
- [how to make a website](how_to.md)
Loading…
Cancel
Save