In this section we will gather some more advanced ideas besides the basic features described at how the website works.
Ciro is looking for:
The initial incentive for the creators is to make them famous and allow them to get more fulfilling jobs more easily, although Ciro also wants to add money transfer mechanisms to it later on.
We can't rely on teachers writing materials, because they simply don't have enough incentive: publication count is all that matters to their careers. The students however, are desperate to prove themselves to the world, and becoming famous for amazing educational content is something that some of them might want to spend their times on, besides grinding for useless grade.
In this project Ciro Santilli extracted (almost) all Git commit emails from GitHub with Google BigQuery! The repo was later taken down by GitHub. Newbs, censoring publicly available data!
Ciro also created a beautifully named variant with one email per commit: github.com/cirosantilli/imagine-all-the-people. True art. It also had the effect of breaking this "what's my first commit tracker": twitter.com/NachoSoto/status/1761873362706698469
Figure 1.
GitHub Archive query showing hashed emails
. It was Ciro Santilli that made them hash the emails. They weren't hashed before he published the emails publicly.
Figure 2.
All GitHub Commit Emails repo before takedown
. Screenshot from archive.is.
In 2016 Ciro made a script downloaded Facebook profile pictures.
This was possible at the time without any login by using a 2010 profile ID dump from originally announced at: blog.skullsecurity.org/2010/return-of-the-facebook-snatchers since profile picture access was not authenticated.
The profile ID dump was downloadable through a BitTorrent named fbdata.torrent of about 2.8GB, mostly compressed. Doing:
find . -type f | xargs sha256sum | sha256sum
on Ubuntu 20.04 gives:
2c9a739c9c5495e38ebab81fc67411b7c6562f139dcb8619901a3f01230efdd5
This dump widely reported e.g. on Hacker News at: news.ycombinator.com/item?id=1554558.
At some point however, Facebook finally started to require tokens to view public profile pictures, thus making such further collection impossible, e.g. as of 2021: developers.facebook.com/docs/graph-api/reference/v9.0/user/picture mentions:
Querying a User ID (UID) now requires an access token.
This is also mentioned e.g. at: stackoverflow.com/questions/11442442/get-user-profile-picture-by-id. This major privacy flaw was therefore finally addressed at some point, making it impossible to reproduce this project.
Ciro downloaded 10 thousand of those pictures, and did facial extraction with: stackoverflow.com/questions/13211745/detect-face-then-autocrop-pictures/37501314#37501314
He then created single a video by joining 10 thousand of those cropped faces which can be uploaded e.g. to YouTube. Ciro later decided it was better to make those videos private however, as sooner later he'd lose his account for it.
Companies like YouTube blocking this kind of content is the type of thing that makes companies take longer to fix such gaping privacy issues, and is a bit like security through obscurity. A video makes it clear to everyone that there is a privacy issue very effectively. But people prefer to hide and look away, and then 99% of people who know nothing about tech get their privacy busted by actual criminals/government spies and never learn about it.
But now that Facebook finally fixed it, it's fine, no need for the video anymore.
The problem with virtually all sleeping masks on the market is that they leave a lot of room near your nose for light to come in.
Ciro Santilli discovered a useful workaround for that: make the mask tighter with a swimming goggles!
Just make the goggles as loose as possible to not put pressure on your eyes, and then strap them over the sleeping mask.
If you are a back sleeper, put the googles forward as normal. If you are a stomach sleeper, put the googles on the back of your head, and the straps over the mask. This way you wont get your head squished by the goggles and the bed.
Once Ciro understood the idea, Googling "swimming googles sleeping mask" led to: mantasleep.uk/ might be a good option.
Another good Google is "sleeping mask blackout".
Tell students to:
  • make suggestions to the course material themselves, since you have used text and published your source.Review their suggestions, and accept the best ones.
  • answer the questions of other students on your online forum. Let them work instead of you.
Praise those that do this very highly, and give them better grades if you have that superpower.
This is part of a larger concept Ciro Santilli holds dear: don't just consume, but also produce.
Whatever you do, even if it is playing video games: if you manage to produce related content that will interest other people, and possibly allow you to get paid, it will much much fun to do that thing.
Search a lot first, and only create your own when you can't find something that suits you.
Someone else has already written everything you can come up with.
And if you do find something useful that you want to modify, propose your modifications to the author: they can also be useful to them and others.
Once you have crated something awesome, you have to advertise it, otherwise no one will ever find it.
This means:
  • whenever you walk into a classroom, give students a link to the material
    Then ask them if they want to talk about anything.
    Then leave the classroom and go produce more good material instead of wasting your time there :-)
  • whenever someone asks as question on an online forum, answer it, and link to the section of your material that also answers that question.
    The material will answer many of their future questions.
  • after you've done something awesome, Google possible relevant keywords that should hit it.
    This will lead you to other websites that talk about the same content.
    Then, leave comments on those pages linking to your stuff, or email the authors of those pages.
    It is borderline spam, but if the subject is closely related, it is a win for everyone.
Eventually, people will find you on the front page of Google searches, and then you will know that you've truly made something useful.
Then, if people find errors, or have questions, they will write a comment near the content itself.
Then, next person that comes along and has the same problem, will also find that comment, and your answer will solve their problems too.
The perfect way to do this is to use GitHub issues
Numeric function by Ciro Santilli 40 Updated 2025-07-16
This section is about functions that operate on numbers such as the integers or real numbers.
For example, if you write LaTeX files for you PDFs, give both PDFs and the LaTeX.
This allows other people to:
  • modify and reuse your material
  • make improvement suggestions that you can accept by clicking a button
    The perfect way to do this is to use GitHub pull requests
Whenever you make a change to your material, people should still be able to access the previous version.
Maybe there was something in the previous version that they needed, and you just removed.
Git + GitHub is the perfect way to do versioning.
When you do get face to face time with students, don't teach a large group.
Everything you want to teach is already online.
The only goal of meeting students is talking to them individually or in small groups to:
  • understand what they feel
  • transmit your passion for the subject
and letting them do the same amongst themselves.
If you talk to a large group, you will only reach / understand a very small percentage of the group, so your time is wasted.
It is better to deeply understand what 25% of the students feel and adapt the course material, than to talk to everyone at once, and have only 5% understand anything.
There is only one thing that can truly motivate you to make good materials: becoming famous.
Strive for that. Make good materials. Publish them. Get good reviews. Loop.
This generates a virtuous loop, which makes you produce better and better material.

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