Some Thoughts on “Academic Training”
I’ve long said that university education starts to make a lot more sense if you look at it as a precursor to academic training. Historically, there have really been two major types of undergraduate university training, in my opinion: there was the liberal arts type of education, which was meant to turn rich people into cultured members of society (several of whom then went on to pursue academic training and scholarly activities, because they were rich and could afford to do so), and the more specialized type, which is meant to make the student literate enough in the major foundational ideas of the field to pursue additional training at the graduate level.
Quantity Over Quality In Art (and Life)?
I’ve always been a quantity over quality artist, and what I mean by this is that rather than being intentional about what I’m doing or meticulously planning things, I typically make a lot of garbage and hope for the best. This isn’t a particularly efficient way of working, but I personally find it quite effective. There are three main benefits of half-assing my art process that I would like to point out here:
How to Watch a Technical Research Talk (or Workshop, or Tutorial) Recording (and Make the Most of It)
When I’m trying to approach a highly specialized topic for the first time, one of my tactics is to find a recording of a research-geared workshop about it and watch it as my introductory crash course. The benefits of this are as follows:
I am learning about the subject from (hopefully) a credible expert in the field. Workshops and talks usually try to be self-contained, which means basic background info will likely be given and I won’t have to pore through 10 different research papers, searching for an obscure definition, in vain.
Understanding the Python Memory Model
One of my quests during the research project I did last summer was to find a way to simulate pointers in Python, or at the very least, get some sort of named reference-like behaviour from the language. Unfortunately, I quickly learned that this is quasi-impossible, because Python is a language that aims to abstract as many implementation details away from the user as possible, and gives programmers very limited ways in which to interact with the language.
Heuristics, Approximation Algorithms, and Relaxations: An Introduction
While all NP-hard optimization problems are identical in terms of exact solvability, they may differ wildly from the approximative point of view. If the goal is to obtain an answer that is “good enough”, some problems become much easier (such as KNAPSACK), while others (such as CLIQUE) remain extremely hard.