welcome to nick-black.com!
This is the home server 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. This wiki is primarily for my personal use, but open to public viewing in case anything generally helpful emerges. Dankwiki's rollin' wit' you. I make no guarantees concerning correctness, relevance, or timeliness of the information contained herein. Track changes using the Recent changes page. I was pondering a strictly technical blog, but this wiki and grad school have satisfied ye olde furor scribendi. Until then, don't mistake my kindness for weakness: rien n'est simple, mais tout est facile...
Seriously: 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. ■
- 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 growing! The world's largest(?) collection of computer science eponyms.
- 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.
- 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...
- ...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
- Other people's projects. Other people's programming quotes. ■
- 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). ■
A few remarks regarding computers etc.
- 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.
- 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)!
- 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...
- Please adhere to the various standards (even where mutually contradictory)
- As one judge said to another, 'Be just, and when 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, 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. ■
Still have any questions?
quod erat demonstrandum!