Workaday Reading

How to Protect Against Slow HTTP Attacks

“Slow HTTP attacks are denial-of-service (DoS) attacks in which the attacker sends HTTP requests in pieces slowly, one at a time to a Web server. If an HTTP request is not complete, or if the transfer rate is very low, the server keeps its resources busy waiting for the rest of the data.”


read »

Workaday Reading

CppCon 2014: Chandler Carruth “Efficiency with Algorithms, Performance with Data Structures”

“Why do you write C++ code? There is a good chance it is in part because of concerns about the performance of your software. Whether they stem from needing to run on every smaller mobile devices, squeezing the last few effects into video game, or because every watt of power in your data center costs too much, C++ programmers throughout the industry have an insatiable desire for writing high performance code.”


read »

Workaday Reading

.bash_profile vs .bashrc

“When working with Linux, Unix, and Mac OS X, I always forget which bash config file to edit when I want to set my PATH and other environmental variables for my shell. Should you edit .bash_profile or .bashrc in your home directory?”


read »

Reading Today

Oregon Office of Economic Analysis

“This morning the Oregon Office of Economic Analysis released the latest quarterly economic and revenue forecast. For the full document, slides and forecast data please see our main website. Below is the forecast’s Executive Summary.”

read full text »

Workaday Reading

Remove/Delete all duplicate lines

“There are a lot of ways to remove duplicate lines, but I want to leave only the unique lines, and delete all duplicated lines. There are thousands of lines I need to remove, and the unique lines are just 10-20 mixed with all those duplicate lines.”


read »

Workaday Reading

Dark Isn’t Just a Mode

“In my last column, I wrote about dark patterns, but this time I want to discuss something that is literally rather than metaphorically dark: inverted polarity–display methods, or dark mode. But, for many UX designers, dark mode is a new thing because operating systems are now supporting it.”


read »

Workaday Reading

The Wrong Abstraction — Sandi Metz

I originally wrote the following for my Chainline Newsletter, but I continue to get tweets about this idea, so I’m re-publishing the article here on my blog. This version has been lightly edited. I’ve been thinking about the consequences of the “wrong abstraction.”


read »

Workaday Reading

The Git Rebase Introduction I Wish I’d Had

“One of the most important (and confusing) git features in my new job was rebasing. Looking back now, the worst part was not finding a clear beginner’s guide. So for the past me, and any future devs like the past me, this intro is for you!”


read »

Workaday Reading

Understanding the Hidden Powers of curl

“curl is exceedingly powerful – unfortunately, much of this power is somewhat hidden in the purposeful non-verbosity and the underlying complexity of its numerous flags, configurations, and options. Once understood, curl boasts a wide range of powerful options.”


read »