significant efforts I'd like to share with you

Course Notes --


I’ve been meaning to run through the course on practical deep learning for about a year now, since I first learned of it, and it’s finally time. As usual, I’ll be burning down through this quickly, and thankfully have a pretty deep background in the gnarlier, more mathematical aspects of the field… (I’ve derived and implemented backprop by hand a number of times, and most recently on the professional side, was SVP product for a startup building LLM Inference HW, so I’ve become quite familiar with the underlying theory and architectures).

But now it’s time to roll my sleeves up and learn the hands-on tools.

…read more


Update - 1/04/24

Well, this is a few years out of date. The whole pandemic lasted a lot longer than I think anyone really expected. Especially with the California lockdowns.

I wish I could say that left me with smooth and continuous progress, but it wouldn’t be true. We moved, had a kid, and I encountered a small host of minor, but lengthy, injuries. Along the way, I ended up making some changes to my routine.

For lifting, I switched out of the tactical barbell program (with its focus on 1RM testing), and into a more “bodybuilding” style of lifting. 5 week long phases, with a lot more volume (sets of 10+), and a gradual peaking followed by a recovery week. I started this new routine in mid-December, 2020, and am currently halfway through Phase 19. At 5 nominal weeks / phase, that means I’ve been about 60% efficient with my lifting compared to an ideal schedule.

I’ve also ended up with a better table tennis setup at home. I’ve now got a table, robot, and most importantly, enough room to use it, so drills with that have become a regular part of my routine. I’ll write about my shot accuracy tracking system in a later update.

…read more

I’m back with another round of course notes, this time from Coursera’s Machine Learning, by Andrew Ng, as well as the entire Deep Learning Specialization sequence.

My history with these courses and material was curious. Much of the background mathematics, including calculus, I became extremely familiar with through the course of my physics degree years ago. Then, back around 2011, I went through the first run of Caltech’s Learning From Data online class which was, as is usual for Caltech, a tour de force of even more math, to really drill to the core of some of the most fundamental concepts in the field of machine learning. But at the time, it was obviously missing some of the more recent focus on neural networks, so I put in a mental bookmark to return to the subject and catch up on more recent developments once I had the opportunity.

…read more

Too much blue light at night sucks. That’s why people use software like f.lux on their computers and night modes on their phones, but that doesn’t solve the problem of ambient light. The problem is that for ambient light, you really want to be able to generate a gradual transition of the light color through different color temperatures, and while you can buy standard bulbs designed to mimic particular color temperatures, there are no good solutions for the variable case.

But we’ve got RGB LEDs, right? You’d think that somewhere in all those color combinations we could find something equivalent to any particular color temperature.

Here, the naive approach of googling fails you, as, at best, you land on websites that say things like “here are some example colors and matching RGB values that I eyeballed”, and at worst, “you can’t do it without trial and error, so good luck”.

Well, I’m here to tell you that there’s a better way, and hopefully we’ll learn something about sensory perception and colors along the way.

…read more

Here’s yet another set of course notes, coming at you from UC Berkeley’s CS 162 - Operating Systems course from the fall of 2013.

Curiously, while the direct link above is to the main class homepage from that session, it doesn’t include links to the actual lecture videos themselves. Those, however, can be found on this Youtube playlist.

Once I finished the lectures, it occurred to me that it might be interesting to look at the Youtube viewing statistics for the course. I figured, “hey! maybe we’ll see some dropoff patterns!”.

…read more

Here’s another set of my course notes, this time for MIT’s 6.02 - Digital Communication Systems course on OCW.

If you haven’t seen OCW yet, you should check it out, they’ve got unadulterated courses straight from MIT with not only lecture videos, but also with all of the problem sets and exams.

In these course notes, I dedicate each column to notes on roughly 1 week of lectures, and end the columns with my solutions for the corresponding problem set. In this way, the following .pdf has an entire semester’s worth of notes & work in it; with the exception, that is, of the programming labs. While I enjoyed going through those, it was long enough ago that I don’t particularly feel compelled to go through the trouble of putting them up online, but let me know if you have any questions about them. In particular, the audiocom files for labs 4-6 that are included as part of the OCW download are not complete, and I had to source the correct originals from John Wang’s github repo of MIT class materials.

…read more

I do a lot of independent study of technical courses, and my favorite tool for note-taking is the Concepts App paired with an iPad Pro and Apple Pencil. The combination of an infinite canvas as well as a collection of graphic-design-inspired tools for annotating/sketching/editing is unparalleled, and lets you get an entire set of course notes, problem set solutions, and more, into a single document that’s easy to explore.

When I’ve shown my notes to others in the past, they’ve often told me I should find a way to share them.

Well, now I’ve found a way.

…read more

Personal Github Pages Site

I’ve been meaning to put together a reasonable personal website for ages, but it wasn’t until I encountered a pointer for GitHub Pages in combination with a discussion of Digital Gardens that the stars finally aligned. Here I had a tool that made building a hosting a site extremely simple, while simultaneously giving me extremely detailed control over the content/layout/organization. And I now had a fancy-sounding name to use as an excuse to build out whatever organizational scheme I felt like, with no need to try to fit it into someone else’s ontology. Score!

…read more

How do you learn (Extended) Kalman Filters?

I recently delivered a 3.5 hour lecture on Extended Kalman Filters, discussing the subject from 0-100%, and I’d like to share some of that prep with you all.

First off, a disclaimer: this document will not teach you Kalman Filters. It is not intended to. Instead, it will teach you how to learn Kalman Filters. I will include here all of the resources and guidance that I think will be helpful for first ensuring that you have a solid grasp on the fundamentals you need, so that when you embark on learning Kalman Filters themselves, you’ll be well-armed. I will also include a recommended resources for learning Kalman Filters, as well as notes about the key chapters and concepts to pay attention to in that resource.

…read more