Daniel Sank Updated 2025-07-16
Started at Google Quantum AI in 2014.
Has his LaTeX notes at: github.com/DanielSank/theory. One day he will convert to OurBigBook.com. Interesting to see that he is able to continue his notes despite being at Google.
Sycamore processor Updated 2025-07-16
This is a good read: quantumai.google/hardware/datasheet/weber.pdf May 14, 2021. Their topology is so weird, not just a rectangle, one wonders why! You get different error rates in different qubits, it's mad.
Figure 1.
Google Sycamore Weber quantum computer connectivity graph
. Weber is a specific processor of the Sycamore family. From this we see it clearly that qubits are connected to at most 4 other qubits, and that the full topology is not just a simple rectangle.
Margin Call (2011) Updated 2025-07-16
Video 1.
Peter Sullivan discovers the issue scene from Margin Call
. Source.
Video 2.
Senior partners emergency meeting scene from Margin Call
. Source. God, Jeremy Irons is destroying it!!! And all others too.
Video 3.
Fire Sale of Mortgage Bonds scene from Margin Call
. Source.
Video 4.
Investment Analyst Explains Margin Call by The Plain Bagel
. Source.
The Big Short (2015) Updated 2025-07-16
Video 1.
I'm Jacked to the Tits remix by The Big Short (2021)
Source.
Tachyon Updated 2025-07-16
ELF Hello World Tutorial / STT_FILE Updated 2025-07-16
Entry 1 has ELF64_R_TYPE == STT_FILE. ELF64_R_TYPE is continued inside of st_info.
  • 10 8: st_name = 01000000 = character 1 in the .strtab, which until the following \0 makes hello_world.asm
    This piece of information file may be used by the linker to decide on which segment sections go: e.g. in ld linker script we write:
    segment_name :
    {
        file(section)
    }
    to pick a section from a given file.
    Most of the time however, we will just dump all sections with a given name together with:
    segment_name :
    {
        *(section)
    }
  • 10 12: st_info = 04
    Bits 0-3 = ELF64_R_TYPE = Type = 4 = STT_FILE: the main purpose of this entry is to use st_name to indicate the name of the file which generated this object file.
    Bits 4-7 = ELF64_ST_BIND = Binding = 0 = STB_LOCAL. Required value for STT_FILE.
  • 10 13: st_shndx = Symbol Table Section header Index = f1ff = SHN_ABS. Required for STT_FILE.
  • 20 0: st_value = 8x 00: required for value for STT_FILE
  • 20 8: st_size = 8x 00: no allocated size
Now from the readelf, we interpret the others quickly.
There are two such entries, one pointing to .data and the other to .text (section indexes 1 and 2).
Num:    Value          Size Type    Bind   Vis      Ndx Name
  2: 0000000000000000     0 SECTION LOCAL  DEFAULT    1
  3: 0000000000000000     0 SECTION LOCAL  DEFAULT    2
TODO what is their purpose?
ELF Hello World Tutorial / STT_NOTYPE Updated 2025-07-16
Then come the most important symbols:
Num:    Value          Size Type    Bind   Vis      Ndx Name
  4: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT    1 hello_world
  5: 000000000000000d     0 NOTYPE  LOCAL  DEFAULT  ABS hello_world_len
  6: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT    2 _start
hello_world string is in the .data section (index 1). It's value is 0: it points to the first byte of that section.
_start is marked with GLOBAL visibility since we wrote:
global _start
in NASM. This is necessary since it must be seen as the entry point. Unlike in C, by default NASM labels are local.
By default, NASM places a .symtab on the executable as well.
This is only used for debugging. Without the symbols, we are completely blind, and must reverse engineer everything.
You can strip it with objcopy, and the executable will still run. Such executables are called "stripped executables".
ELF Hello World Tutorial / .rel.text Updated 2025-07-16
Besides sh_type == SHT_RELA, there also exists SHT_REL, which would have section name .text.rel (not present in this object file).
Those represent the same struct, but without the addend, e.g.:
typedef struct {
    Elf64_Addr  r_offset;
    Elf64_Xword r_info;
} Elf64_Rela;
The ELF standard says that in many cases the both can be used, and it is just a matter of convenience.
ELF Hello World Tutorial / PT_INTERP Updated 2025-07-16
Contains the path to the dynamic loader, i.e. /lib64/ld-linux-x86-64.so.2 in Ubuntu 18.10. Explained at: stackoverflow.com/questions/8040631/checking-if-a-binary-compiled-with-static/55664341#55664341

There are unlisted articles, also show them or only show them.