eklitzke.org

Welcome to Evan Klitzke’s blog.

DateArticle
Blog Rewrite In Go
Efficient File Copying On Linux
The Cult of DD
Unix System Call Timeouts
How To Play Pool At A Bar
Neoliberalism
An Introduction to Valgrind Memcheck
All About Linkers
In Defense of C++
Unexpected Places You Can And Can’t Use Null Bytes
How TCP Sockets Work
Blocking I/O, Nonblocking I/O, And Epoll
Goroutines, Nonblocking I/O, And Memory Usage
Hanging A Process With Select
Stopping A Process
Stdout Buffering
How To Nice A Bash Function
Crosh/SSH and ChromeOS
x86 Register Encoding
Pyflame Dual Interpreter Mode
Call Stacks and Link Registers
Towers of Hanoi in x86 Assembly
Go Compiles Infinite Loops Very Efficiently
Declare Your Bash Variables
Localhost
Gocd
Using ssh-agent and ED25519 Keys on GNOME
Systemd Socket Activation
Esc is Ctrl-[
F-Market Line Considered Harmful
Sponge
5-HTP Contraindications
Documenting Code
Fedora, QEMU, and 9p Filesystem Passthrough
Inline C/Assembly In Bash
A Funny Thing About C and C++
CRCs vs Hash Functions
GitHub Private Repos
Memory Protection and ASLR on Linux
C++ and Thoughts On Java, Go, and Rust
The Curious Case of Position Independent Executables
GNOME Terminal Server
The x86-64 Red Zone
Free Medical Data
Ptrace, Syscall, and Python
How GCC LTO Works
Generator Comprehensions / Using any() and all() in Python
Autofs
The 64-bit Extensions to x86 Are a Mess
Configuring GNOME
GCC Generates Strange Code
How To Use Autotools
GPL Licensing
Parsing ELF symbol tables
A Ptrace Idiosyncrasy
Demangling C++ Symbols
C Functions Without Arguments
Ptrace (continued)
Using Ptrace For Fun And Profit
SSH Again
Effectively Using .bash_profile
Self-Balancing Trees
LD_PRELOAD Hacks
Linux Swappiness
Misunderstanding mlock(2) and mlockall(2)
Bash If/Equals
Some Minor Site Changes
The SF Housing Crisis
Spacemacs
Environment Variables
The Halting Problem
Binding On Port 0
Color and TTYs
Cornering At Low Speeds
Impressions From Running a Full Bitcoin Node
The Caveats of TCP_NODELAY
The Hate Is Real
Rdio
Uninterruptible Sleep
Facebook
Strace
eCryptfs on Fedora
New Bike Day
Envoy and Ed25519
Running A Full Bitcoin Node
Platinum Tunnels
Android Developer Options & ADB
Testing Code
Slack IRC Gateway
If I Ever Start A Tech Company
BitlBee Accounts
Large Data Files
Shoes
The Thrill Of Riding
BitlBee & HipChat
Mission Bicycle w/ SRAM Automatix Hub
The Commodification of Databases
Whoops
Rendering Videos From OpenGL Is Hard
Linear Algebra; or, The Folly of Youth
Surprising Things Found While Exploring Bash
Cars And Turn Restrictions On Market St In San Francisco
Being Self-Taught
Resource Management in Garbage Collected Languages
My Philosophy on “Dot Files”
LaRouche PAC
An Important Difference Between mysql(1) and MySQLdb
How To Be An Urban Cyclist—Part 1
On Not Having A LinkedIn Account
Final Conflict—Ashes To Ashes
RSS
Cloud Nothings—Attack On Memory
Deafheaven—Sunbather
Hello World