/Julia Evans

Examples Of Floating Point Problems tl;dr: Julia wanted specific examples of floating point bugs in real-world programs and asked folks for "examples of how floating point has gone wrong for them in real programs." This post shares 8 examples of such problems. Julia writes programs to highlight the problems and ways to solve them. 

featured in #383


A Debugging Manifesto tl;dr: Julia discusses the attitude and approach to take when debugging, explaining the following: (1) Inspect, don’t squash. (2) Being stuck is temporary. (3) Trust nobody and nothing. (4) It’s probably your code. (5) Don’t go it alone. (6) There’s always a reason. (7) Build your toolkit. (8) It can be an adventure.

featured in #375


Tips For Analyzing Logs tl;dr: 14 useful tips including the following: (1) Search for the request’s ID - often log lines will include a request ID and searching for the request ID of a failed request will show all the log lines for that request. (2) Build a timeline - keeping all of the information straight in your head can get confusing, so keeping a debugging document where I copy and paste bits of information.

featured in #374


Why Do Domain Names Sometimes End With A Dot? tl;dr: "I once (incorrectly) thought the answer to “why is there a dot at the end?” might be “In a DNS request/response, domain names have a “.” at the end, so we put it in to match what actually gets sent/received by your computer”. But that’s not true at all!"

featured in #361


Some Ways To Get Better At Debugging tl;dr: Julia read some papers on debugging and found the following categorization very helpful, elaborating on each of the following categories: (1) Learn the codebase. (2) Learn the system. (3) Learn your tools. (4) Learn strategies. (5) Get experience.

featured in #349


Monitoring Tiny Web Services tl;dr: Julia's goal is to spend approximately 0% of time on ongoing operations for "tiny unimportant websites," writing a program that does 3 things: (1) An uptime checker. (2) An end-to-end healthcheck. (3) Automatically restart if the healthcheck fails.

featured in #343


What Happens When You Press A Key In Your Terminal? tl;dr: "I thought to ask a pretty basic question: when you press a key on your keyboard in a terminal (like Delete, or Escape, or a), which bytes get sent? As usual we’ll answer that question by doing some experiments and seeing what happens."

featured in #336


A List Of New(ish) Command Line Tools tl;dr: "My favourites of these that I use already are entr, ripgrep, git-delta, httpie, plocate, and jq." Julia breaks this list into replacements for standard tools, new inventions, and less-new tools. 

featured in #308


Some Tiny Personal Programs I've Written tl;dr: "Here are a few examples of small personal programming projects I’ve done. I’m not going to talk about “learning projects” where my goal was to learn something specific because I’ve already written a billion blog posts about that. These are more about just doing something fun with no specific learning goal." 

featured in #298


Things That Used To Be Hard And Are Now Easy tl;dr: (1) SSL certificates, with Let’s Encrypt (2) Concurrency, with async/await (in several languages) (3) Centering in CSS, with flexbox / grid. (4) Building fast programs with Go, and many more.

featured in #295