Check out my first novel, midnight's simulacra!
Hack on
hack the planet
This is the wiki of Nick Black (aka dank), located at 33°46′44.4"N, 84°23'2.4"W (33.779, 85.384) in the heart of Midtown Atlanta, GA. Dankwiki's rollin' wit' you, though I make no guarantees of its correctness, relevance, nor timeliness. Track changes using the Recent changes page. I've recently revived my strictly technical DANKBLOG, this wiki and grad school having not satisfied ye olde furor scribendi.
Don't mistake my kindness for weakness. Rien n'est simple, mais tout est facile...
I primarily write to force my own understanding, and remember things (a few entries are actually semi-authoritative). I'm just a disreputable Mariner on your way to the Wedding. If you derive use from this wiki, consider yourself lucky, and please get confirmation before relying on my writeups to perform surgery, design planes, determine whether a graph G is an Aanderaa–Rosenberg scorpion, or feed your pet rhinoceros.
Do not proceed if allergic to Linux, postmodern literature, nuclear physics, or cartoonish supervillainy. ■
projects?
- Still growing! The world's largest(?) collection of computer science eponyms.
- Notcurses, a library for blingful TUIs and character graphics
- The Processor Zoo! My video channel, DANKTECH.
- I created and taught CS4803UWS, "UNIX Weapons School", Summer 2013 at Georgia Tech.
- Hackery! (projects and open source work). The machines. Matrix of large cases.
- The WORDHORDE. Some books I'd like to write. Too many morphisms!
- Grad school and CS GRE prep pages. You can't have grad school without XeLaTeX!
- Elemental naming and good words. Ramblings on DANKBLOG.
- BlackBerry crap. F'n bookshelves.
- What does worldwide TaB® consumption have to do with nuclear weapons?
- My grad school presentations tended to run slightly, just a little, unorthodox...
- enjoy the ghastly background of my masters thesis
- ...yep, still weird (invited lecture for the opening of Freeside Atlanta)
- professionally weird! "Dynamic iSCSI at Scale" for Google (2015 Linux Plumbers' Conference)
- "Miscompiling Programs with 'Benign' Data Races" for Papers We Love Atlanta #9 2018-10-09
- "Efficiently Matching Multiple Regular Expressions" for BetterCloud 2013-12-06
- "Making Terminals do Things Never Intended" for Debian MiniDebConf #2 2020-11-20
- "Notcurses: Blingful TUIs and Character Graphics" for FOSDEM 2021 2021-02-06
- "Proposing a New D-I Disk Preparation Tool" for DebConf21 2021-08-28
- Other people's projects. Other people's programming quotes. ■
unix
- Writing high-performance, scalable UNIX system applications is my greatest passion.
- Linux APIs, FreeBSD APIs, ELF (which is not, in itself, an API).
- Power Management. Sound Software, Using Unicode. Keeping FreeBSD up-to-date. Hacking CUDA on Debian.
- Debian, Xorg hell, Consoles and Framebuffers. Systemd and DBus. Making graphs with dot.
- Notes on editing and running MediaWiki. Core files happen when one dances fandango on core. Notes on subversion.
- Linux on Dells, SMART and SATA, udev, various linux-related hardware detritus (mainly random personal crap). ■
did autistic people design this software? BECAUSE I'M STARTING TO LOVE IT.
remarks regarding computers &c
- glibc, other interesting libraries, working with libraries, some implementing interfaces like pthreads.
- X Macros, ISO C18, rpaths, gcc notes, gmake notes.
- There's Buses and Ports, of course, of course.
- Intel's Sandy Bridge and Nehalem x86 microarchitectures.
- or, if you'd prefer, Transmeta's or Tilera's processors.
- It's dangerous to go alone! Take microcode.
- The cpuid instruction, SMP on x86, Performance Counters, simulators.
- Simulators ought not be confused with the 4,000 Linux VT Solutions!
- Getting into ARM (which is everywhere, including Raspberry Pis).
- Getting into ACPI. Getting into Arduino. Getting into Architecture.
- I want a (PIVT, middle-endian, 27-bit word) MISD machine; until then, there's SIMD.
- Lamport's Hash, Lamport's Clock, Skip Lists, I will put thoughts about automata here, Dijkstran Method.
- ROS seems a pretty good way to write robots, and one day automate luvvvvv
- Flash sucks. Need get a handle on Compiler Design by tomorrow's midterm.
- Now it's Programming Language Theory by tomorrow's final, heh.
- Trees for smoking and computing. lock- and wait-free algorithms. Cache-oblivious algorithms. RCU.
- Allocators get us that free store, son (usually through a DRAM-backed VM)!
- Said VM might implement transactional memory, and almost certainly works on pages.
- Via Grover's Algorithm, we might be able to discover the monster at the end of this quantum book.
- Jefferson's Time Warp algorithm, and while we're at it, timer wheels and even x86 timing.
- Let's get bipartite, bipartite...with bip buffers. I don't much care for writing Gecko Addons (aka FireFox plugins).
- Blum's axioms, and Rice's Theorem are both named after people smarter than me...
- ...as are Chaitin's Constant and Kolmogorov complexity, and lots of other junk. ■
networking
- Please adhere to the various standards (even where mutually contradictory)
- As one judge said to another, 'Be just, and if you can't be just, be arbitrary.'
- Topology Discovery. Online tools for Internet analytics.
- SSHFP and LOC records. DNSSEC. The Sender Policy Framework (SPF). VoIP and telephony, NAPTR records.
- Some TCP notes. Syncookies. Radio of the software-defined kind.
- ARP is no longer used in IPv6, which more fully embraces zero-configuration networking.
- ICAP page. Tunneling (perhaps over VXLAN), SNMP, NFS...
- I don't drive, but when I do, I drive via reverse engineered CAN buses.
- QMI replaces the venerable Hayes command set aka "AT commands" for modems
- Mirror of the BIg-Internet list from ftp://munnari.oz.au
- Van Jacobson Channels get everybody all hooting and hollaring every decade or so. ■
QEMFD! (wikipedia, wolfram) also provides...
- A page for our 2015 hax0r wedding, the event of the century
- Documentation for Notcurses, my poorly-named but always-rockin' console graphics library
- Dirty South Supercomputing, my Tech Square consultancy, launched 2019
- SprezzOS, my now-defunct but forever-beloved Linux distribution ■
Still have any questions? quod erat motherfucking demonstrandum! ■