- 13 Dec, 2025 *
I was never particularly strong in mathematics.
Fifth and sixth grade are a wasteland where my elementary arithmetic education ought to be, and seventh grade was spent in after-school study skills programs trying to whip myself into enough academic shape to keep up with the "smart" kids. I had a traumatic summer before starting fifth grade, and though I was eventually able to bounce back, it wasn’t quick enough. They’re called formative years for a reason. The things my fifth-grade teacher said to me when I was struggling with long division and not blurting out incorrect answers have faded, but I’m still aware of the fact that I was treated like I had a behavioral issue when I was, in actuality, profoundly mentally ill. I needed to "try harder," was the message …
- 13 Dec, 2025 *
I was never particularly strong in mathematics.
Fifth and sixth grade are a wasteland where my elementary arithmetic education ought to be, and seventh grade was spent in after-school study skills programs trying to whip myself into enough academic shape to keep up with the "smart" kids. I had a traumatic summer before starting fifth grade, and though I was eventually able to bounce back, it wasn’t quick enough. They’re called formative years for a reason. The things my fifth-grade teacher said to me when I was struggling with long division and not blurting out incorrect answers have faded, but I’m still aware of the fact that I was treated like I had a behavioral issue when I was, in actuality, profoundly mentally ill. I needed to "try harder," was the message I got.
I labored through four years of advanced mathematics in high school, my parents refusing to let me take my eighth-grade teacher’s advice to drop back down to the easier tract for reasons I still can’t wrap my head around, and I barely pulled Bs and Cs while the rest of the high honor students earned As. I internalized "I am shit at math" and avoided it as much as I could in undergrad, to the point that the only math-adjacent course I took was Statistics for the Social Sciences.
I didn’t hate math. I hated feeling stupid compared to my peers.
It’s been a long time since I’ve had to think about math, and now I’m diving into it not with joy, necessarily. Maybe without fear. A bit of trepidation, sure. Math isn’t scary. I’m not bad at it. I got pummeled with "You are shit at math and need to try harder" for seven years straight, then spent four years juggling undergrad, work, and eventually partial hospitalization and intensive outpatient therapy.
As an aside: I thought I hated sports, too. The only sports I played were soccer and field hockey. I was a clumsy basketball player and had no interest in baseball. Too small for football. Always tripping over his own feet walking down the hall and getting knocked around by bigger players on the field. You know the type. They stuck me in the goal because I was so uncoordinated when it came to moving on the field, but I could always figure out where the ball was and where it might be going based on the ability to see the entire field. I wasn’t bad at math; I missed a crucial period where I should have been learning to speak the same language as everyone else, so I had to improvise. "Try harder" was the same advice my coach gave me when I couldn’t figure out how to control the ball when I was running.
I don’t hate sports. I lack a competitive spirit.
As I’ve been studying programming (in particular Structure and Interpretation of Computer Programs but also From Mathematics to General Programming) I’m starting to appreciate and actually enjoy reading about math and working through problems. That’s something nobody who knew me twenty years ago would have thought I would ever say.
Then again, I was masking so hard twenty years ago, I can’t say as anyone who knew me then actually knew me. I didn’t know myself until about a year ago when I went Fuck it, mask off.
I like to think ten-year-old Dan would have liked the opportunity to study computers more indepth, without anything else distracting him. I think he would have found coding fun. I wonder what he would think about studying math for fun and not because he was being forced to. I wonder what he would think about what I’m currently doing. Whether knowing he one day gets to study in relative isolation with no pressure from his parents to "get out and be social" would take any of the weight off his shoulders.
Sometimes I wish I could tell my younger self that he doesn’t have to be a joy in class, or try harder, or play a sport, to be worthy of other people’s respect. That he can just be an introverted little weirdo and people will still listen when he decides he has something to say, even if he has to say it in writing in order for it to make sense.
Do I contradict myself?
Very well then I contradict myself,
(I am large, I contain multitudes.)
– Walt Whitman, "Song of Myself, 51"
In other news, today I was able to focus and make use of my free time to work through the second chapter of Spraul’s Think Like a Programmer (highly and repeatedly recommended over in r/learningprograming) where I learned about check digits, what the modulus 10 algorithm is, and how to write a program in C++ to take a number of arbitrary length and determine whether the number is valid.
If I thought the Luhn algorithm would be of any interest to anyone passing by I would talk about it at greater length, because I had no idea how checksums work, and I really should, because I’m a Linux guy.
The Luhn algorithm, by the way, drops the check digit from the number if it’s present, then moves from right to left, doubling every second digit, starting from the last digit. If doubling results in a value equal to or greater than 10, the digits are summed. It then sums all of the digits, including the ones not doubled, and calculates the check digit by (10 - (s mod 10)) mod 10. That gives us the smallest number that must be added to s to make a multiple of ten.
This algorithm is used in credit card numbers, IMEI numbers, and package tracking for the USPS, which I think is pretty neat.
Am I able to implement it myself? Not yet.
What I was able to do was get a Guess the Number game to compile after fixing a bunch of typos. It’s one of the simplest games I could possibly clone, and I challenged myself to do it every single day until I could do it without looking at another source.
Well, I cheated, because I screwed up the do-while loop and had to go check my work from last night.
That’s what the point of the walk down memory lane was. I don’t know how else to get better at something than by doing it again and again and again. Stubbornness will get me far, but it won’t make up for the fact that I cannot memorize for shit. Most devs don’t memorize things, is my understanding. Professionals have to look things up all the time.
So I forgot how nested if statements work inside of a do-while loop. I’m writing it down here so I won’t forget.
do {
if (whatever) {
// condition
break;
} else if (whatever) {
// condition
break;
} else
// condition
break;
} while (whatever);
I look at what I’ve written, and I think about what I would tell a younger version of myself if he were complaining that his memory is terrible and he can’t hold things in his head. Repetition is the point. Same as lifting weights at the gym, or mastering a video game, I have to do things over and over and over in order for it to stick.
Maybe I would tell him that he isn’t doing anything wrong. That having ADHD isn’t a moral failing. I think he would have needed to hear that. Time doesn’t work this way, but for the sake of my own inner healing, I hope he can hear me. I hope he knows that when he grows up, he can handle just about anything life throws at him, and that he one day is able to see the beauty and the elegance of a refactored solution after hours of scratching out possible solutions in a notebook.
Because it is, man. Math is beautiful.