Surjective function by Ciro Santilli 40 Updated 2025-07-16
Mnemonic: sur means over. So we are going over the codomain, and covering it entirely.
Gwern Branwen by Ciro Santilli 40 Updated 2025-07-16
Ciro Santilli envies this guy a bit. He dumps his brain more or less full time on his highly customized static website partly due to early Bitcoin investments gwern.net/me says:
I am a freelance American writer & researcher. (To make ends meet, I have a Patreon, benefit from Bitcoin appreciation thanks to some old coins, and live frugally.)
Also unsurprisingly he likes Haskell:
I mostly contribute to projects in Haskell, my favorite language
Ciro Santilli considers Gwern Ciro Santilli's e-soulmates due to his interest in "dark web things" like Bitcoin and Silk Road, his immense writing output in encyclopedic book-sized articles on a static website, and his desire to live frugally and just research and write all day. Ah, if only Ciro had some old coins!!!
This is likely a pseudonym, his real name not being publicly unknown, e.g. at news.ycombinator.com/item?id=5659278:
Why do you choose relative anonymity?
For the reasons I've said in the past. To which I can add personal safety: my Silk Road page is a bit questionable legally, and we all know that there are ways to exploit knowledge of one's True Name and address (even if, as far as I know, I have no enemies willing to resort to, say, 'swatting' me) - one group of stalkers called up a college they thought I worked at to see if they could get me fired or otherwise ruin my day.
Sandy Maguire by Ciro Santilli 40 Updated 2025-07-16
Lots of similar ideologies to Ciro Santilli, love it:
Other interesting points:
He's a Haskell person.
Microsoft by Ciro Santilli 40 Updated 2025-07-16
And also their monopolistic practices: United States v. Microsoft Corp.
However, like all big tech companies with infinite money, they do end up doing some cool things in their research department, Microsoft Research, notably for Ciro Santilli being:
gnuplot by Ciro Santilli 40 Updated 2025-07-16
Tends to be Ciro Santilli's first attempt for quick and dirty graphing: github.com/cirosantilli/gnuplot-cheat.
domain-specific language. When it get the jobs done, it is in 3 lines and it feels great.
When it doesn't, you Google for an hours, and then you give up in frustration, and fall back to Matplotlib.
Natural science by Ciro Santilli 40 Updated 2025-07-16
Ciro Santilli often wonders to himself, how much of the natural sciences can one learn in a lifetime? Certainly, a very strong basis, with concrete experimental and physics, chemistry and biology should be attainable to all? How much Ciro manages to learning and teach in those areas is a kind of success metric of Ciro's life.
Let's start with the one dimensional case. Let the and a Functional defined by a function of three variables :
Then, the Euler-Lagrange equation gives the maxima and minima of the that type of functional. Note that this type of functional is just one very specific type of functional amongst all possible functionals that one might come up with. However, it turns out to be enough to do most of physics, so we are happy with with it.
Given , the Euler-Lagrange equations are a system of ordinary differential equations constructed from that such that the solutions to that system are the maxima/minima.
In the one dimensional case, the system has a single ordinary differential equation:
By and we simply mean "the partial derivative of with respect to its second and third arguments". The notation is a bit confusing at first, but that's all it means.
Therefore, that expression ends up being at most a second order ordinary differential equation where is the unknown, since:
  • the term is a function of
  • the term is a function of . And so it's derivative with respect to time will contain only up to
Now let's think about the multi-dimensional case. Instead of having , we now have . Think about the Lagrangian mechanics motivation of a double pendulum where for a given time we have two angles.
Let's do the 2-dimensional case then. In that case, is going to be a function of 5 variables rather than 3 as in the one dimensional case, and the functional looks like:
This time, the Euler-Lagrange equations are going to be a system of two ordinary differential equations on two unknown functions and of order up to 2 in both variables:
At this point, notation is getting a bit clunky, so people will often condense the vector
or just omit the arguments of entirely:
Video 1.
Calculus of Variations ft. Flammable Maths by vcubingx (2020)
Source.
If your kids are about to starve, fine, do it.
But otherwise, Ciro Santilli will not, ever, spend his time drilling programmer competition problems to join a company, life is too short for that.
Life is too short for that. Companies must either notice that you can make amazing open source software projects or contributions, and hire you for that, or they must fuck off.
Companies must either notice that you can make amazing projects or contributions, and hire you for that, or they must fuck off.

Pinned article: Introduction to the OurBigBook Project

Welcome to the OurBigBook Project! Our goal is to create the perfect publishing platform for STEM subjects, and get university-level students to write the best free STEM tutorials ever.
Everyone is welcome to create an account and play with the site: ourbigbook.com/go/register. We belive that students themselves can write amazing tutorials, but teachers are welcome too. You can write about anything you want, it doesn't have to be STEM or even educational. Silly test content is very welcome and you won't be penalized in any way. Just keep it legal!
We have two killer features:
  1. topics: topics group articles by different users with the same title, e.g. here is the topic for the "Fundamental Theorem of Calculus" ourbigbook.com/go/topic/fundamental-theorem-of-calculus
    Articles of different users are sorted by upvote within each article page. This feature is a bit like:
    • a Wikipedia where each user can have their own version of each article
    • a Q&A website like Stack Overflow, where multiple people can give their views on a given topic, and the best ones are sorted by upvote. Except you don't need to wait for someone to ask first, and any topic goes, no matter how narrow or broad
    This feature makes it possible for readers to find better explanations of any topic created by other writers. And it allows writers to create an explanation in a place that readers might actually find it.
    Figure 1.
    Screenshot of the "Derivative" topic page
    . View it live at: ourbigbook.com/go/topic/derivative
  2. local editing: you can store all your personal knowledge base content locally in a plaintext markup format that can be edited locally and published either:
    This way you can be sure that even if OurBigBook.com were to go down one day (which we have no plans to do as it is quite cheap to host!), your content will still be perfectly readable as a static site.
    Figure 2.
    You can publish local OurBigBook lightweight markup files to either https://OurBigBook.com or as a static website
    .
    Figure 3.
    Visual Studio Code extension installation
    .
    Figure 4.
    Visual Studio Code extension tree navigation
    .
    Figure 5.
    Web editor
    . You can also edit articles on the Web editor without installing anything locally.
    Video 3.
    Edit locally and publish demo
    . Source. This shows editing OurBigBook Markup and publishing it using the Visual Studio Code extension.
    Video 4.
    OurBigBook Visual Studio Code extension editing and navigation demo
    . Source.
  3. https://raw.githubusercontent.com/ourbigbook/ourbigbook-media/master/feature/x/hilbert-space-arrow.png
  4. Infinitely deep tables of contents:
    Figure 6.
    Dynamic article tree with infinitely deep table of contents
    .
    Descendant pages can also show up as toplevel e.g.: ourbigbook.com/cirosantilli/chordate-subclade
All our software is open source and hosted at: github.com/ourbigbook/ourbigbook
Further documentation can be found at: docs.ourbigbook.com
Feel free to reach our to us for any help or suggestions: docs.ourbigbook.com/#contact