My semi-lucid ramblings which get shouted into the void (ie. a somewhat monthly journal).
But Why?#
Well… why not?
The less sarcastic answer is that I’m human, and have a tendency to forget things that happen to me.
I want to create a memory palace so that I have something to look back on once I’m older. These writings serve that purpose.
These journal entries also serve the dual purpose of letting me document longer running projects of mine. Hopefully, having an imminent deadline of writing a substantial monthly post motivates me to stop procrastinating.
This was a slow month.
I was overly ambitious in how quickly I could read Baumann’s Cosmology. Luckily, there is no rush; I’ll try and finish it before the semester ends. I’ll also try and finish Preskill’s notes, but this is less urgent.
I tried bumping up the resolution of the camera experiment by storing the raw pixel data in some off-chip DRAM via a gearbox FIFO system. I need to write a testbench, since it’s buggy on the fabric....
I’m writing this 10 minutes before midnight since it slipped my mind during the day. Such is life.
I finally finished “Understanding Digital Signal Processing”. Overall, good textbook. The author spent a lot of time working through numerical examples of some of the more complicated algorithms, which might not be everyone’s cup of tea, but it was ocassionally helpful to me. The book dragged on at the end, since a lot of the DSP tricks are very similar in nature (re: exploit some symmetry in the FIR coefficients to do the same computation with fewer/ more efficient operations)....
I’m sweating bullets as I write this, and I sprained my fingers during sparring, but I’m still going to bloody write this thing.
I’m almost done with “Understanding Digital Signal Processing”. I just have the last chapter to trudge through (the last chapter happens to be 200 pages of very niche DSP techniques, but I should be done by mid-July). I got through IIR filters, which involved brushing off my complex analysis knowledge to understand stability conditions....
The semester has finally ended, and I didn’t fail any of my classes. I consider that a success!
Immediately after finals, I once again picked up “Understanding Digital Signal Processing” by Richard Lyons; I plan on slowly working through all of the chapters in the book. I’ve just finished the discrete Fourier Transform section and learned a lot about leakage, the Nyquist criterion, windowing and a whole bunch of other weird digitization effects....
Almost done with the semester. Since finals are approaching, here’s a quick update:
I’ve kept punting the camera module debugging. I tried ordering another module to see if it was a hardware issue, but it seems to have gotten lost in the mail? With regards to the GameTank verilog port, I’ve started porting over a 6502 CPU core into system verilog. The reasoning behind this is twofold: to get a better understanding of the 6502, and also to add a global enable to the module....
So I got checked out by my doctor, and it seems like the back pain that I experienced was just a very severe muscle spasm. I don’t show any signs of having a herniated disk, and I seems to have maintained full mobility and flexibility in my spine. I can even touch my toes again! Going forward, I’m going to need to be more cautious when doing stand-up, but other than that, I got off easy....
I managed to injure my lower back like an idiot this week. The day immediately after, I had difficulty walking and sitting without grimacing. Considering that I need to sit down for extended periods of time during the day, this was troubling. As a result, I fell down a spiral of Youtube videos and WebMD posts (not the best idea in hindsight…) to try and fix my problem.
I managed to find some stretches (things like piriformis muscle stretch, child’s pose etc....
I spent most of January just relaxing. For me, “relaxing” involved writing a chess engine, trudging my way through an online FPGA course, and video games (what a strange definition).
The chess engine went pretty well: I managed to get a working prototype in Typescript up and running. It’s butt-ugly and has a terrible UI, but it works. I made a half-hearted attempt to train a neural-net to act as the evaluation function during the tree search, but ran into issues with convergence....
Happy New Year!
The semester is over, and I passed all my classes, and that’s all that matters!
First, I finished integrating my POVFan, and it works! (see below)
It doesn’t look like a continuous image, since the frame rate of my camera is much higher than the angular frequency of the motor. But in person, you see a continuous image (the “framerate” of your eyes can’t keep up with the rotation speed of the blade)....
The bad news:
It’s midterm season ATM, so life could be better. I got my first roach. Don’t know how I haven’t encountered one in the 5 years I’ve been in New York, but here we are. Dealt with it immediately though. The good news:
With regards to the Lox Rust compiler, I managed to implement functions and closure (closures are such a pain…). I’m now starting down the barrel of writing a garbage collector for the VM, which would require a fundamental restructuring of the codebase....