Hyperfine structure by Ciro Santilli 37 Updated 2025-07-16
Small splits present in all levels due to interaction between the electron spin and the nuclear spin if it is present, i.e. the nucleus has an even number of nucleons.
As the name suggests, this energy split is very small, since the influence of the nucleus spin on the electron spin is relatively small compared to other fine structure.
TODO confirm: does it need quantum electrodynamics or is the Dirac equation enough?
The most important examples:
Equations of motion by Ciro Santilli 37 Updated 2025-07-16
These are the final equations that you derive from the Lagrangian via the Euler-Lagrange equation which specify how the system evolves with time.
It is non-trivial to determine what is the smallest legal ELF file, or the smaller one that will do something trivial in Linux.
In this example we will consider a saner hello world example that will better capture real life cases.
We will get into more detail later, but it is good to have it in mind now:
  • section: exists before linking, in object files.
    One ore more sections will be put inside a single segment by the linker.
    Major information sections contain for the linker: is this section:
    • raw data to be loaded into memory, e.g. .data, .text, etc.
    • or metadata about other sections, that will be used by the linker, but disappear at runtime e.g. .symtab, .srttab, .rela.text
  • segment: exists after linking, in the executable file.
    Contains information about how each segment should be loaded into memory by the OS, notably location and permissions.
Because DNA replication is a key limiting factor of bacterial replication time, such organisms are therefore strongly incentivized to have very minimal DNAs.
Power, Sex, Suicide by Nick Lane (2006) 7 "Why bacteria are simple" page 169 puts this nicely:
Bacteria replicate at colossal speed. [...] In two days, the mass of exponentially doubling E. coli would be 2664 times larger than the mass of the Earth.
Luckily this does not happen, and the reason is that bacteria are normally half starved. They swiftly consume all available food, whereupon their growth is limited once again by the lack of nutrients. Most bacteria spend most of their lives in stasis, waiting for a meal. Nonetheless, the speed at which bacteria do mobilize themselves to replicate upon feeding illustrates the overwhelming strength of the selection pressures at work.
The Horrible Horrendous Terrible Tremendous Mining Pool inscribed a few cute Coinbase messages during their operation in 2012-2013.
Many of their messages also mention SockThing, which was part of their mining infrastructure:
Starting from their very first ASCII transaction on block 197602 (2012-09-07), there is what seems to be a poem spread across several transactions. Some of the lines are repeated, presumably because they didn't update the current line to a new line and so mined the same thing multiple times:
I am a pretty princess
covered in mud and blood
water with stuff in it
like everything else that wiggles or jiggles
screaming might not be your waY
see no reason to operate otherwise since
came into the world naked, wet and screaming
but silence will never be mine
until I am dead
but the smell will also give that away
gather all my things
load them in a big boat
airlift that to Kansas
and light it on fire
drop it from 7,000 feet
then railgun my corpse straight down
The sentences are not very coherent together, perhaps this is because lines were chosen by different miners one at a time.
TODO didn't manage from source Ubuntu 22.04, their setup bitrotted way too fast... it's shameful even. Until I gave up and went for the magic Docker of + github.com/bbcmicrobit/micropython, and it bloody worked:
git clone https://github.com/bbcmicrobit/micropython
cd micropython
git checkout 7fc33d13b31a915cbe90dc5d515c6337b5fa1660
docker pull ghcr.io/carlosperate/microbit-toolchain:latest
docker run -v $(pwd):/home --rm ghcr.io/carlosperate/microbit-toolchain:latest yt target bbc-microbit-classic-gcc-nosd@https://github.com/lancaster-university/yotta-target-bbc-microbit-classic-gcc-nosd
docker run -v $(pwd):/home --rm ghcr.io/carlosperate/microbit-toolchain:latest make all

# Build one.
tools/makecombinedhex.py build/firmware.hex examples/counter.py -o build/counter.hex
cp build/counter.hex "/media/$USER/MICROBIT/"

# Build all.
for f in examples/*; do b="$(basename "$f")"; echo $b; tools/makecombinedhex.py build/firmware.hex "$f" -o "build/${b%.py}.hex"; done
The pre-Docker attempts:
sudo add-apt-repository -y ppa:team-gcc-arm-embedded
sudo apt update
sudo apt install gcc-arm-embedded
sudo apt install cmake ninja-build srecord libssl-dev

# Rust required for some Yotta component, OMG.
sudo snap install rustup
rustup default 1.64.0

python3 -m pip install yotta
The line:
sudo add-apt-repository -y ppa:team-gcc-arm-embedded
warns:
E: The repository 'https://ppa.launchpadcontent.net/team-gcc-arm-embedded/ppa/ubuntu jammy Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
and then the update/sudo apt-get install gcc-arm-embedded fails, bibliography:
Attempting to install Yotta:
sudo -H pip3 install yotta
or:
python3 -m pip install --user yotta
was failing with:
Exception: Version mismatch: this is the 'cffi' package version 1.15.1, located in '/tmp/pip-build-env-dinhie_9/overlay/local/lib/python3.10/dist-packages/cffi/api.py'.  When we import the top-level '_cffi_backend' extension module, we get version 1.15.0, located in '/usr/lib/python3/dist-packages/_cffi_backend.cpython-310-x86_64-linux-gnu.so'.  The two versions should be equal; check your installation.
Running:
python3 -m pip install --user cffi==1.15.1
did not help. Bibliography:
From a clean virtualenv, it appears to move further, and then fails at:
Building wheel for cmsis-pack-manager (pyproject.toml) ... error
error: [Errno 2] No such file or directory: 'cargo'
So we install Rust and try again, OMG:
sudo snap install rustup
rustup default stable
which at the time of writing was rustc 1.64.0, and then OMG, it worked!! We have the yt command.
However, it is still broken, e.g.:
git clone https://github.com/lancaster-university/microbit-samples
cd microbit-samples
git checkout 285f9acfb54fce2381339164b6fe5c1a7ebd39d5
cp source/examples/invaders/* source
yt clean
yt build
blows up:
annot import name 'soft_unicode' from 'markupsafe'
bibliography:
Jerry Sanders by Ciro Santilli 37 Updated 2025-07-16
Video 1.
AMD Founder Jerry Sanders Interview (2002)
Source. Source: exhibits.stanford.edu/silicongenesis/catalog/hr396zc0393. Fun to watch.

Unlisted articles are being shown, click here to show only listed articles.