I skimmed Automate Your Busywork the other day and realized I already have automated most of my busywork. I don’t have a lot of repetitive tasks to do, and I’ve written scripts to streamline most of the repetitive tasks I do have. The scripts that have been most useful are …
A couple days ago I wrote a post about a probability problem that involved calculating Stirling numbers. There are two kinds of Stirling numbers, creatively called “Stirling numbers of the first kind” and “Stirling numbers of the second kind.” The second kind come up more often in application, and so …
I have a little script that will print the frequency of the most common characters in a file and the number of lines. All numbers are displayed along with their factorizations. It also prints the number of non-ASCII characters. CSV files These simple statistics are surprisingly useful. For example, when …
In the vast and ever-expanding landscape of computing, where data flows ceaselessly and digital demands soar to new heights, there emerges a transformative force known as utility computing. Like a masterful conductor orchestrating a symphony of technological resources, utility computing presents itself as the maestro of efficiency, the virtuoso of …
AI computers are real now, and they are rapidly changing the world around us and already being used in a wide range of applications in various sectors. The capacity of computers to think, learn, make decisions, and be creative are all examples of what we mean when we talk about …
April 27, 2023, 3:24 p.m.
Suppose you have a database of personally identifiable information (PII) and you want to allow someone else to query the data while protecting the privacy of the individuals represented by the data. There are two approaches: Deidentify, then query Query, then deidentify The first approach is to do whatever is …
April 24, 2023, 4:32 p.m.
Digit-computers have become an inseparable part of our lives. From the moment we wake up to the moment we go to bed, digit-computers are all around us, enabling us to communicate, work, learn, and play in ways that were once unimaginable. They are the backbone of modern technology and the …
April 20, 2023, 7:44 a.m.
Digit-computers have become an inseparable part of our lives. From the moment we wake up to the moment we go to bed, digit-computers are all around us, enabling us to communicate, work, learn, and play in ways that were once unimaginable. They are the backbone of modern technology and the …
April 20, 2023, 7:44 a.m.
What is parallel processing? Have you ever wondered how your computer can perform multiple tasks at lightning-fast speeds, even when you’re running multiple applications simultaneously? The answer lies in the power of parallel processing – a technology that enables computers to divide complex tasks into smaller, more manageable parts and …
April 18, 2023, 11:38 a.m.
Like the previous post, this post riffs on a photo [1] I stumbled on while looking for something else. Would it be easier to identify the man in this photo or the man whose photo appeared in the previous post, copied below. I think it would be easier for a …
April 1, 2023, 11:14 p.m.
When I left academia [1] my first job was working as a programmer. I was very impressed by a new programmer we hired who hit the ground running. His first week he looked at some problem we were working on and said “Oh, you need a topological sort.” I’d never …
March 28, 2023, 1:01 a.m.
The Playfair cipher was the first encryption technique to encrypt text two letters at a time. Instead of substituting one letter for another, it substitutes one pair of letters for another pair. This makes the method more secure than a simple substitution cipher, but hardly secure by modern standards. The …
Simple substitution ciphers replace one letter with another. Maybe A goes to W, B goes to G, C goes to A, etc. These ciphers are famously easy to break, so easy that they’re common in puzzle books. Here’s one I made [1] for this post in case you’d like to …
Feb. 27, 2023, 12:07 a.m.
Saving keystrokes is overrated, but maintaining concentration is underrated. This post is going to look at automating small tasks in order to maintain concentration, not to save time. If a script lets you easily carry out some ancillary task without taking your concentration off your main task, that’s a big …
When I think of bit twiddling, I think of C. So I was surprised to read Paul Khuong saying he thinks of Common Lisp (“CL”). As always when working with bits, I first doodled in SLIME/SBCL: CL’s bit manipulation functions are more expressive than C’s, and a REPL helps exploration. …
Suppose you hire me to solve an optimization problem for you. You want me to find the value of x that minimizes f(x). I go off and work on finding the best value of x. I report back what I found, and you might say “Thanks, That’s a good value …
The electricity went out for a few hours recently, and because the power was out, the internet was out. I was trying to do a little work on my laptop, but I couldn’t do what I intended to do because I needed a network connection to access some documentation. I …
The previous post implicitly asserted that J = 8675309 is a prime number. Suppose you wanted proof that this number is prime. You could get some evidence that J is probably prime by demonstrating that 2J-1 = 1 mod J. You could do this in Python by running the following …