Blogs / Personal blogs

John D. Cook

johndcook.com

Companies come to us for help data analysis and data privacy. Clients have included Amazon, Google, Microsoft, law firms, start-ups, and smaller businesses.

Popular posts
79
Total points
14,487
HN comments
7,259
Rank
#49 personal

Visit johndcook.com → RSS feedOn Hacker News Jan 2010 – Sep 2026

Math & Algorithms 44Software Engineering 24Life, Learning & Writing 11Career & Management 11Science & Space 9Programming Languages 6

7

The hard part in becoming a command line wizard

I've long been impressed by shell one-liners. They seem like magical incantations. Pipe a few terse commands together, et voilà! Out pops the solution to a problem that would seem to require pages of code. Are these one-liners real or mythology? To some extent, they're both. Below I'll give a famous real example. Then…

9

Surprises from numerical linear algebra (2010)

Here are ten things about numerical linear algebra that you may find surprising if you're not familiar with the field. Numerical linear algebra applies very advanced mathematics to solve problems that can be stated with high school mathematics. Practical applications often require solving enormous systems of…

15

Don’t invert that matrix (2010)

There is hardly ever a good reason to invert a matrix. What do you do if you need to solve Ax = b where A is an n x n matrix? Isn't the solution A−1 b? Yes, theoretically. But that doesn't mean you need to actually find A−1. Solving the equation Ax = b is

17

The plumber programmer

I called someone a plumber programmer the other day. The person I was speaking to didn't realize that "plumber programmer" is a term of great respect. The plumber is often the most experienced programmer on a team. As with literal plumbing, software plumbing connects things together. It deals with things other people…

19

Python for Data Analysis

I recommend using Python for data analysis, and I recommend Wes McKinney's book Python for Data Analysis. I prefer Python to R for mathematical computing because mathematical computing doesn't exist in a vacuum; there's always other stuff to do. I find doing mathematical programming in a general-purpose language is…

20

The myth of the Lisp genius

I'm fascinated by the myth of the Lisp genius, the eccentric programmer who accomplishes super-human feats writing Lisp. I'm not saying that such geniuses don't exist; they do. Here I'm using "myth" in the sense of a story with archetypical characters that fuels the imagination. I'm thinking myth in the sense of…

24

Why do C++ folks make things so complicated?

This morning Miroslav Bajtoš asked "Why do C++ folks make things so complicated?" in response to my article on regular expressions in C++. Other people asked similar questions yesterday. My response has two parts: Why I believe C++ libraries are often complicated. Why I don't think it has to be that way. Why would…