Last updated: May 20th, 2022
(Approximate) photos of me.
Hi, I’m some guy! I graduated from UC Berkeley in 2021 where I studied Computer Science and Data Science, and currently work at Anyscale.
In my freetime I enjoy doodling with my fancy printer, reading (I recommend Vonnegut, Ted Chiang, and Terry Pratchett), and playing competitive Pokemon.
If you have any questions/critiques/feedback for me, feel free to contact me!
100% Bot Proof Contact Info
FAQs
What is our purpose?
What’s with the background image for this site?
Class recommendations?
Can machines think?
How did you get into programming?
I got a 404 error. Who is this “Debug Dog”?
What’s Berkeley CS like/should I apply?
What does your middle initial stand for?
What is our purpose?
During my stint at Berkeley’s Neuroecon lab, one of the other undergrads asked me this in the sense of “wait what are we supposed to be doing this week?” At the time, I too had no idea what we were supposed to be doing that week.
In the broader sense though, I like to adhere to this philosophy:
“A purpose of human life, no matter who is controlling it, is to love whoever is around to be loved.”
― Kurt Vonnegut, The Sirens of Titan
Or alternatively:
“Love while you’ve got love to give.
Live while you’ve got life to live.”
― Piet Hein, Grooks
And occasionally:
“I tell you, we are here on Earth to fart around, and don’t let anybody tell you different.”
― Also Kurt Vonnegut, A Man Without a Country
What’s with the background image for this site?
That’s a picture of Berkeley’s Campanile, with a few rounds of primitive run on top of it to try to approximate it using geometric primitives. I personally really like the aesthetic, though I’ll admit without looking closely it kind of seems like a blown-up low fidelity JPEG.
Class recommendations?
I came into Berkeley with above average programming maturity and average math maturity and I’m personally biased towards classes with heavy emphasis on programming, so take this list with a grain of salt
Definitely take:
- CS162 - Operating Systems
- Requires: CS61ABC, I recommend taking 161 prior as well
- CS170 - Algorithms
- Requires: CS70
- CS194 - Linux System Administration DeCal
- Requires: Enrollment Luck
- This is a DeCal run by the awesome students down in the OCF! Enrollment is usually really tight though, but the members of the OCF are generally enthusiastic enough to help you out with Linux stuff if you show up during regular hours
If you like programming:
- CS161 - Computer Security
- Requires: CS61C, high acronym tolerance
- CS186 - Databases
- Requires: CS61BC, strong emotions about disk latency
If you’re interested or think you’re interested in two letter hypeisms:
- CS188 - Artificial Intelligence
- Requires: CS61AB
- CS189 - Machine Learning
- Requires: EE126*, EE127*, Any STAT upperdiv*, MATH54, MATH53,
- I really recommend taking at least one of the asterisked things before this class
- EECS127 - Optimization Models in Engineering
- Requires: Math54
- I think this technically requires the EE16 series but I didn’t take them when I took this class and it was mostly fine
- CS182 - Neural Networks
- Requires: Math53, Math54 (127 also works), CS70
- By the time I took this class my interest had almost vanished, but its an interesting survey of architectures, intuition behind why some are effective, lots of linalg and lots and lots of little hacks to get things working
Can machines think?
“Can submarines swim?”
― Dijkstra
How did you into programming?
In high school I was relatively clueless about what I wanted to do in terms of career. I knew I wanted to some sort of STEM-related field, but I wasn’t sure which one. My junior year I took the AP courses for CS and Chemistry, and actually really loved both of them! Unfortunately for chem, it was a lot easier to tinker with programming than it was with mass spectometry on my own time, and so I ended up leaning towards computer science.
Admittedly, APCS is kind of useless in terms of preparation of Berkeley (and I imagine many other school’s) CS curriculum. I hate to say it but a lot of CS courses “handhold” a bit too excessively. The most educational periods of my time during high school were spent trying get to simple graphical games to display and run at 30 FPS relying solely on StackOverflow, compiler vitriol, and Java’s standard library documentation. This is the kind of suffering that the department of education and parts of the constitution tend to forbid, but I suspect that that kind of struggle working on a personal project builds a level of independence that many undergraduate or high school courses aren’t able to provide.
I also had some background in competition math, which teaches a lot of intuition and practical problem solving skills that you really won’t get in a classroom.
This in particular really hits home for me:
See the third quote in the “What is our purpose?” section for more on this.
I got a 404 error. Who is this “Debug Dog”?
Debug Dog is my dog-in-law who came with me to Berkeley to study CS. In general I do my best to explain code to line-to-line to him during debugging sessions while he stares back at me in judgemental silence. Thanks to the power of Berkeley’s recorded lectures he has approximately the same level of CS knowledge and programming maturity as me, but severely lacks in communication skills (presumably because he doesn’t have a mouth).
What’s Berkeley CS like/should I apply?
Yes, you should apply (if it’s within your financial capacity). I really don’t have a universal answer to this, any curriculum will really have a completely different effect for different people. There are a few things that I do think stand out:
- There is a hill you have to get over. Although advertised as no prior experience required, the intro CS course CS61A has been accused of being a weeder course along with CS61B (Data Structures) and CS70 (Discrete Math). The requirement to declare the computer science major is a 3.3 GPA in these classes, i.e. 2 A’s and B, or 3 B+’s, etc… This is, as far as I know, the highest GPA cutoff at Berkeley, and it’s been trending upwards (though I doubt, knock on wood, that it will get any higher). I know that roughly 25% students a semester are barred from the major by this cutoff, and I would bet that even more are diverted away before even getting through all three courses by performance in the first ones they take.
- The bar is high because the staff believes in you. Since our CS department has grown a bit slower than Moore’s law in the past few years it might seem like resources are getting spread thin. That’s not really the whole story though. Many undergraduates TA, tutor, and mentor other undergraduates. This is often times equally if not more effective than help from graduate student instructors and professors, since many profs and grads tend to be a bit too experienced to empathize with a lower-div undergrad. I implore you to take advantage of your peers both enrolled in the class and acting as course staff.
- Classes tend to get easier in upper div! The curves are kinder, class sizes are smaller, and the professors tend to have genuine interest in the material. Since you’ve made it through lower-divs by this point, the projects get a lot more interesting as well since you should have decent programming/problem-solving maturity
- Check out the coursework tab of my portfolio for cool classes and associated projects I’ve had the chance to take
People will of course give you impassioned reasons for why you shouldn’t come to Berkeley, usually regarding difficulty and class sizes. I think you should take their words in to consideration as well.
What does your middle initial stand for?
Potassium.