This is the only way to truly understand and appreciate the subject.
Understanding the experiments gets intimately entangled with basically learning the history of physics, which is extremely beneficial as also highlighted by Ron Maimon, related: there is value in tutorials written by early pioneers of the field.
"How we know" is a basically more fundamental point than "what we know" in the natural sciences.
In the Surely You're Joking, Mr. Feynman chapter O Americano, Outra Vez! Richard Feynman describes his experience teaching in Brazil in the early 1950s, and how everything was memorized, without any explanation of the experiments or that the theory has some relationship to the real world!
Although things have improved considerably since in Brazil, Ciro still feels that some areas of physics are still taught without enough experiments described upfront. Notably, ironically, quantum field theory, which is where Feynman himself worked.
Feynman gave huge importance to understanding and explaining experiments, as can also be seen on Richard Feynman Quantum Electrodynamics Lecture at University of Auckland (1979).
Video 1.
'Making' - the best way of learning science and technology by Manish Jain (2018)
Source.
System of units by Ciro Santilli 40 Updated 2025-07-16
The key thing in a good system of units is to define units in a way that depends only on physical properties of nature.
Ideally (or basically necessarily?) the starting point generally has to be discrete phenomena, e.g.
What we don't want is to have macroscopic measurement artifacts, (or even worse, the size of body parts! Inset dick joke) as you can always make a bar slightly more or less wide. And even metals evaporate over time! Though the mad people of the Avogadro project still attempted otherwise well into the 2010s!
Standards of measure that don't depend on artifacts are known as intrinsic standards.
Programming language by Ciro Santilli 40 Updated 2025-07-16
A language that allows you to talk to and command a computer.
There is only space for two languages at most in the world: the compiled one, and the interpreted one.
For 2020 now, when you have a choice, you must go for:
Those two are languages not by any means perfect from a language design point of view, and there are likely already better alternatives, they are only chosen due to a pragmatic tradeoff between ecosystem and familiarity.
Ciro predicts that Python will become like Fortran in the future: a legacy hated by most who have moved to JavaScript long ago (which is slightly inferior, but too similar, and with too much web dominance to be replaced), but with too much dominance in certain applications like machine learning to be worth replacing, like Fortran dominates certain HPC applications. We'll see. Maybe non performance critical scripting languages are easier to replace.
C++ however is decent, and is evolving in very good directions in the 2010's, and will remain relevant in the foreseeable future.
Bash can also be used when you're lazy. But if the project goes on, you will sooner or later regret that choice.
The language syntax in itself does not matter. All that matters is how many useful libraries and tooling it has.
This is how other languages compare:
Great overview of the earlier history of unit standardization.
Gives particular emphasis to the invention of gauge blocks.
Functional programming by Ciro Santilli 40 Updated 2025-07-16
Even if we cannot do everything in functional, we should at least strive to clearly extract functional substes in what we do.
Caesium standard by Ciro Santilli 40 Updated 2025-07-16
Uses the frequency of the hyperfine structure of caesium-133 ground state, i.e spin up vs spin down of its valence electron , to define the second.
International System of Units definition of the second since 1967, because this is what atomic clocks use.
TODO why does this have more energy than the hyperfine split of the hydrogen line given that it is further from the nucleus?
OpenStreetMap by Ciro Santilli 40 Updated 2025-07-16
It is rare to find a project with such a ridiculously high importance over funding ratio.
E.g., as of 2020, their help login help.openstreetmap.org/ shows MyOpenID as an option, which was discontinued in 2014, and not Google OAuth.
They do still seem to have a bit more activity than gis.stackexchange.com/questions/tagged/openstreetmap on Stack Exchange.
Complaints:
All of this is a shame, because they do have some incredible data that you cannot find easily on other maps because people just edited it up.
Interestingly, the very first programming language with an actual implementation was interpreted: Short Code in 1950.
This is not surprising, as interpreters are easier to write than compilers.
And just like modern scripting languages, it reduced execution speed by about 50x.
Natural units by Ciro Santilli 40 Updated 2025-07-16
A series of systems usually derived from the International System of Units that are more convenient for certain applications.

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