All the data you need.

Tag: Computing

Productive productivity
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 …
Computing Stirling numbers with limited integers
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 …
Data file character frequencies
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 …
An introduction to utility computing
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 redefining how we think about computing
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 …
Query, then deidentify
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 …
The role of digit-computers in the digital age
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 …
The role of digit-computers in the digital age
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 …
The parallel universe of computing: How multiple tasks happen simultaneously?
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 …
Identifiable to man or machine?
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 …
Topological sort
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 …
Playfair cipher
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 over a gargantuan alphabet
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 …
Small-scale automation
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 …
Number of bits in a particular integer
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. …
Proof of optimization
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 …
Self-documenting software
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 …
Pratt Primality Certificates
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 …