Strace in 60 lines of Go
Liz Rice

Cool! I like seeing it this simple. There are a lot of problems I had to handle when doing this, especially when dealing with older Linux kernels, being able to detach from processes, handle forked children, etc. For example, if you SIGSTOP a traced process, even strace will *freak out* and busy loop on some systems. Take a look at my ghostrace project, which implements quite a bit of error and edge case handling: