Ciro Santilli's documentation superpowers Updated +Created
Ciro Santilli has the power to document stuff in a way that makes using them awesome, as evidenced by his his Stack Overflow contributions (notably those in the best articles by Ciro Santillis), and other online contributions.
If your project does something awesome, hiring Ciro means that more people will be able to notice that it is actually awesome, and use it.
He likes to do this in parallel to contributing new features, quickly switching between his "developer" and "technical documentor" hats.
This means of course that he will develop new features a bit slower than others, but he feel it is more valuable if end users can actually use your project in the first place.
His technique is to provide upfront extremely interactive and reproducible getting started setups that immediately show the key value of the project to users.
He backs those setups with:
  • scripts that automate the setup much as possible to make things enjoyable and reproducible
  • a detailed description of the environment in which he tested: which OS, version of key software, etc.
  • a detailed description of what is expected to happen when you take an action, including known bugs with links to bug reports
  • theory and rationale on the sections after the initial getting started, but always finely interspersed with concrete examples
  • all docs contained in a Git-tracked repo, with the ability to render to a single HTML with one TOC
  • short sentences and paragraphs, interspersed with many headers, lists and code blocks
A prime example of kind of setup is Ciro's Linux Kernel Module Cheat.
While he create this setup, he inevitably start to notice and fix:
  • bugs
  • annoyances on the public interface of the project
  • the devs were using 50 different local scripts to do similar things, all of them semi-broken and limited. Every new hire was copying one of those local scripts, and hacking it up further.
  • your crappy build / test / version control setup
Exploiting this skill, however, requires you to trust him.
When he tells to managers that he's good at documenting, they always say: great, we need better documentation! But then, one of the following may happen:
  • managers forget that they wanted good documentation and just tell him to code new features as fast as possible
  • they don't let him own the getting started page, but rather and expect him to try and fix the existing crappy unfixable existing getting started, without stepping on anyone's pride in the process >:-)
    This makes him tired, and less likely to do a good job.
    Good documentation requires a large number of small iterative reviews, and detailed review of every line is not always feasible.
    Too many cooks.
Ciro's passion for documentation and tooling has the effect that if you have crappy documentation and tooling and don't want them to be fixed, Ciro will end up trying to fix those tools instead of doing what you tell him to do anyways, which might lead to him quitting because he can't stand the tools, or you firing him because he's not doing the job you think I should be doing. So please, don't bother hiring Ciro if you have crappy documentation and tooling.
Psychological analysis of why Ciro has this gift: How Ciro Santilli manages to write so much.
Ciro often has the following metaphor in his mind:
New discoveries are like very rough trails where you have to cut through heavy bushes (an original research paper).
After a brave explorer goes through this rough path for the first time and charts it, it does become much easier for others to follow it later on, but it still requires a lot of effort to go through them, because there are still a lot of rough bushes and some parts of the map are not very clear (reading and reproducing the research paper to further advance the state of the art).
As enough people start going through, the probability that someone with a bad memory ends up walking it increases, and that person ends up pounding the earth into a beaten track and increasing the trail clearance of the beginning of the trail at least (review paper).
There finally comes a point when even the local government starts to notice this trail is important, and pays someone to add some stone pavement and rails on the most exposed parts of the trail (post and undergrad education).
Ciro's documenation obsession is partly part of his braindumping effort of dumping his brain into text form, which he has been doing through Ciro Santilli's website.
Open source software Updated +Created
What happens when the underdogs get together and try to factor out their efforts to beat some evil dominant power, sometimes victoriously.
Or when startups use the cheapest stuff available and randomly become the next big thing, and decide to keep maintaining the open stuff to get features for free from other companies, or because they are forced by the Holy GPL.
Open source frees employees. When you change jobs, a large part of the specific knowledge you acquired about closed source a project with your blood and tears goes to the trash. When companies get bought, projects get shut down, and closed source code goes to the trash. What sane non desperate person would sell their life energy into such closed source projects that could die at any moment? Working on open source is the single most important non money perk a company can have to attract the best employees.
Open source is worth more than the mere pragmatic financial value of not having to pay for software or the ability to freely add new features.
Its greatest value is perhaps the fact that it allows people study it, to appreciate the beauty of the code, and feel empowered by being able to add the features that they want.
That is why Ciro Santilli thought:
Life is too short for closed source.
But quoting Ciro's colleague S.:
Every software is open source when you read assembly code.
And "can reverse engineer the undocumented GPU hardware APIs", Ciro would add.
While software is the most developed open source technology available in the 2010's, due to the "zero cost" of copying it over the Internet, Ciro also believes that the world would benefit enormously from open source knowledge in all areas on science and engineering, for the same reasons as open source.
Popular science Updated +Created
On one hand, yes, we need knowledge at all levels, and it is fine to start top-to-bottom with an overview.
The problem is, however, that there is a huge knowledge gap between the one liner "this is the truth" and the much more important "this is how we know it, these are the experiments" as mentioned at how to teach and learn physics.
Therefore, if you have that extremely rare knowledge, you should be writing that in addition to the dumbed down version with an open knowledge license. It takes time, but that's what really changes the world.
Ciro Santilli has always felt that there is a huge gap between "the very basic" and "the very advanced", as mentioned at: Section "The missing link between basic and advanced", which existing scientific vulgarization is not doing enough to address. In a sense, filling out this "middle path" is the main goal of OurBigBook.com.
Ciro really enjoyed the description of the "Arindam Kumar Chatterjee" youTube channel:
Theoretical/mathematical physics at the graduate level and above. This is NOT a popular science channel. Here you find real theoretical physicists doing real theoretical physics. We think it is important for people to get a taste of the real deal, and for aspiring theoretical physicists to see what they are working towards, i.e., to provide the public with something beyond the ubiquitous Michio Kaku and Brian Cox.
One thing must be said however: there seems to be an actual bias against researchers tho try to create vulgarization material: How To Get Tenure at a Major Research University by Sean Carroll (2011), and that is terrible.
There is often more value in a tutorial by a beginner who is trying to fully learn and explain a subject, than by an expert who is trying to "dumb it down" too much.
Video 1.
Pop Science And The Limitations Of Infotainment by Coffee Break (2019)
Source.
Reverse engineering Updated +Created
This is what society gets for not using open knowledge: some of its best minds will be bound to waste endless hours reversing some useless technology.
With that said, even when you do have the source code, reading run logs and using debuggers are a sort of reverse engineering at heart.
One of the most jaw dropping reverse engineering projects Ciro has ever seen is the Super Mario 64 reverse engineering project.
Think different Updated +Created
Of course, this only made sense when Apple was more of an underdog to IBM, and Ciro Santilli greatly admires their defiance of the norm.
As of 2020 however, Apple is kind of on the top of the mobile world, and Think different simply makes no sense anymore, notably because it relies on closed source offline software used by millions.
This is a trap every company that prides itself on it's "alternative culture" sets for itself. If they succeed, they could become the norm.
Figure 2.
1976 Think different. 2011 Think mainstream
. Cropped from wallpapersafari.com/w/RqYUEj.
Video 1. Source. This ad suggests that Apple was the new thinker that would destroy IBM, as Steve Jobs said it himself when introducing the ad: www.youtube.com/watch?v=zlQvMp5rB6g. And then Apple became IBM in the 2000's starting with the launch of the iPod and then leading up to the iPhone.