Ciro Santilli $$ Sponsor Ciro $$ 中国独裁统治 China Dictatorship 新疆改造中心、六四事件、法轮功、郝海东、709大抓捕、2015巴拿马文件 邓家贵、低端人口、西藏骚乱
Ciro Santilli's website is a dump of his brain, see also: braindumping.
However it won't remain like that for long, because it will be migrated to OurBigBook.com, and therefore become a brain dump of society itself.
Video 1. Who Wants To Live Forever by Queen (1986) Source.
It is interesting to see how your own ideas shift with time, and Ciro Santilli doesn't think the following are very important anymore, so he was lazy to migrate them.
When he did the original website Ciro was in a "I must show off my skills to get a job mindset", but then after he landed a few jobs he moved to a "CV websites are useless, just do amazing projects and showcase them on your website to help them succeed" mindset.
As Ciro started getting a lot of comments on his home page about China, he decided that Disqus does not scale, and that it would be more productive long term to remove it and point people to GitHub issues instead.
Upsides of removal:
  • Disqus discoverability is bad:
    • there is no decent way to search existing issues, you have to do JavaScript infinite loading + Ctrl + F. So every reply that he wrote is a waste of time, as it will never be seen again.
    • comments don't have: decent URLs, titles, metadata like tags or open / close
  • Disqus archival is bad: http://web.archive.org/ does not work, and no one knows how to export the issues: https://www.archiveteam.org/index.php?title=Disqus
  • before, there were two places where people could comment, Disqus and GitHub issues. Now there is just one.
  • Disqus has ads if you ever reach enough traffic, which unacceptable, especially if the website owner don't get paid for them! It also makes page loads slower, although that likely does not matter much.
Downsides:
  • people are more likely to comment on Disqus than to create an issue on GitHub, especially because most people use GitHub professionally. But this has the upside that there will be less shitposts as well.
  • with Disqus you can see all issues attached to a page automatically, which is nice. But for as long as Ciro is alive, he intends to just solve the issues, cross link between content and issues and tag things appropriately.
Ciro's stance towards China hasn't changed, and China comments and corrections about his website are still welcome as always.
AKA how this GitHub page gets served under the domain: https://cirosantilli.com
Ciro only touches this very rarely, and always forgets and go into great pain whenever a change needs to done, so it is important to document it.
The last change was of 2019-07-07, when Ciro moved from the www subdomain https://www.cirosantilli.com to the APEX https://cirosantilli.com. A redirect is setup from the www subdomain to APEX.
GoDaddy DNS entries:
Type    Name    Value                   TTL
A       @       185.199.108.153         1 Hour
A       @       185.199.109.153         1 Hour
A       @       185.199.110.153         1 Hour
A       @       185.199.111.153         1 Hour
CNAME   www     cirosantilli.github.io  1 Hour
Moved cirosantilli.com to Porkbun 2022-02, unfortunatly records were not automatically updated and domain went down for a bit, upadded to new entries for IPv6 as well which are not documented by GitHub:
TYPE 	HOST	ANSWER	TTL	PRIORITY	OPTIONS
A	cirosantilli.com	185.199.108.153	600
A	cirosantilli.com	185.199.109.153	600
A	cirosantilli.com	185.199.110.153	600
A	cirosantilli.com	185.199.111.153	600
AAAA	cirosantilli.com	2606:50c0:8000::153	600
AAAA	cirosantilli.com	2606:50c0:8001::153	600
AAAA	cirosantilli.com	2606:50c0:8002::153	600
AAAA	cirosantilli.com	2606:50c0:8003::153	600
CNAME	www.cirosantilli.com	cirosantilli.github.io	600
  • Custom domain: cirosantilli.com
  • Enforce HTTPS: checked
And the CNAME file is tracked in this repository: CNAME.
That which does not exist, cannot be broken.
True art cannot be consumed in mobile format.
KaTeX is automatically used in OurBigBook Markup.
It is true that one image is worth a thousand words, but unfortunately it is also true that one image takes up at least as much bytes as a thousand words!
Having one single page to rule them all is of course the ideal setup for a website, as you can Ctrl + F one ToC and quickly find what you want.
And, with Linux Kernel Module Cheat Ciro noticed that it is very hard to write so much intelligent prose that becomes larger than reasonable to load on a single webpage.
He then started using this technique for everything he writes, including this page and Chinese government.
However, if there are too many images on the page, the loading of the last images would take forever in case users want to view the last sections.
There are two solutions to that:
Ciro is still deciding between those two. The traditional approach works for sure but loses the one page to rule them all benefits.
The innovative approach will work for interactive viewing, but archive.org will fail to load the images for example, and there may be other unforseen consequences.
Wikimedia Commons is awesome and automatically converts and serves smaller versions of images, so always choose the smallest images size needed by the output document. Readers can then find the higher resolution versions by following the page source.
This also comes to mind: https://motherfuckingwebsite.com
https://zettelkasten.de/posts/overview/ from zettelkasten:
How many Zettelkästen should I have? The answer is, most likely, only one for the duration of your life. But there are exceptions to this rule.
Since images are large, they bring the following challenges:
  • keeping images in the main Git repository with text content makes the repository huge and slow to clone, and should not be done
  • storing and serving images could cost us, which we want to avoid
To solve those problems, the following alternatives appear to be stable enough and should be used decreasing preference:
  • for all images, use the separate GitHub repository: https://github.com/cirosantilli/media
    This way, the entire website is relies on a single third party: GitHub, so we have a simple single point of failure.
    We are at the mercy of GitHub's 1GB size policy: https://help.github.com/en/articles/what-is-my-disk-quota, but it will take a while to hit that.
    GitLab however has a 10Gb maximum size: https://about.gitlab.com/2015/04/08/gitlab-dot-com-storage-limit-raised-to-10gb-per-repo/ so we could move there is we ever blow up 1Gb on GitHub.
    Both GitLab and GitHub allow uploading files through the web UI, so downloading a large repo is never needed to contribute.
    GitHub does not serve videos like it does images however as of 2019.
  • Wikimedia Commons for videos if the following conditions are met:
    • in scope: "educational material in a broad sense", but not e.g. "Private image collections, e.g. private party photos, photos of yourself and your friends, your collection of holiday snaps and so on.". I don't think they will be too picky even with low quality photos.
    • allowed format, e.g. images or videos, but not ZIPs
    • allowed license: CC BY SA, but no fair use
    Since Wikimedia Commons has a higher level of curation and is an educational not-for-profit, it is the method most likely to remain available for the longest time.
    For this reason, we highly recommend uploading any acceptable files there as well as an additional backup.
    The downside is that its tooling is not as good, e.g. there are a bunch of messy unofficial tools for batch operations, and upload takes more effort.
    Another downside of Wikimedia Commons is that while we can choose the basename of files, it also adds some extra SHA crap to the beginning of URLs, making them harder to predict.
    Another serious downside is that they randomly rename images without redirects... e.g. they renamed https://upload.wikimedia.org/wikipedia/en/0/03/STJ_SVG_file.svg to https://upload.wikimedia.org/wikipedia/commons/8/81/Superconducting_tunnel_junction.svg
    Another "downside" is that they are extremely strict about copyright compliance. This is good because you can be pretty sure that they are correct in general, but it also means that they are very conservative, and delete things where fair use would be OK. And if those fair uses have no Wikipedia page, they won't show up anywhere.
  • https://archive.org for anything else, e.g. videos that Wikimedia commons does not accept.
    All content will be tracked under the cirosantilli collection: https://archive.org/details/cirosantilli
    archive.org has a very convenient upload and lax requirements. The generated URLs are predictable (single SHA prefix for the entire collection).
    Never trust a website that is not on GitHub Pages, for-profit companies will take down everything immediately as soon as it stops making them money.
    Every external link to non-GitHub pages must be archived. And GitHub links must be forked.
    We should also backup images that Wikimedia Commons does not accept here in addition to the https://github.com/cirosantilli/media repository.
The following do have direct links:
First install NVM/NPM as shown at and then:
git clone https://github.com/cirosantilli/cirosantilli.github.io
cd cirosantilli.github.io
npm install
ourbigbook .
xdg-open index.html
Because when this gets converted to a OurBigBook.com page, it will be easier for people to copy paragraphs/fork and write a canonical page about Ciro.
What do you do when creating a pull request? Do you say "I", which is not true because Ciro did not say that, or do you say "John Doe thinks" bla bla?
And because his name is awesome! :-) Just kidding.
This became a micro-meme in 4chan:
Correction: cirosantilli.com is not Ciro Santili's resume. It is your life.
The website moved from AsciiDoctor to OurBigBook Markup in 2020, making this section mostly useless. But hey, history!
Ciro's website is powered by GitHub Pages and Jekyll Asciidoc.
Build locally, watch for changes and rebuild automatically, and start a local server with:
git clone --recursive https://github.com/cirosantilli/cirosantilli.github.io
cd cirosantilli.github.io
bundle install
npm install
./run
Source: ./run.
The website will be visible at: http://localhost:4000.
Tested on the latest Ubuntu.
Publish changes to GitHub Pages:
git add -u
git commit -m 'make yourself look sillier'
./publish
Source: ./publish.
GitHub forces us to use the master branch for the build output... so the actual source is in the branch dev.
Update the gems with:
bundle update
git add Gemfile.lock
git commit -m 'update gems'
His website was originally written in markdown, however those were deprecated in favour of AsciiDoctor when Ciro saw the light, rationale shown at: markdown-style-guide#use-asciidoc
This website is written for aliens, not humans.

Ancestors