USER: ARU LOC: CDMX 26/06/2026 ● LIVE

Four months studying Computational Geometry

>> one of the best decisions I've ever made


During my last semester, I took an elective course called Análisis de Algoritmos II (Algorithm Analysis II, which I’m going to abbreviate as AA), but it was mainly focused on computational geometry. At first blush, I didn’t know whether it was worth it because—as you, a very clever reader who can infer things from a simple name without any kind of help, can tell—I’d already taken AA before. So it was like, “do I really want this for 4 months?!” Well… It was one of the best decisions I’ve ever made!

I could list a bunch of reasons, but two of them are essential.

The first one is that it helped me realize how simple algorithms like binary search or any sorting algorithm are SO useful. Don’t get me wrong, I knew their importance, but I never thought they were the ones you apply to start solving a problem—for example, calculating the convex hull of a set of points. I know… I know… Maybe you’re thinking, “did I really just read that this 1.65-ish minion is showing off that he ‘discovered’ the importance of two of the most fundamental algos in CS??” Kinda, but what I meant was that we often try to apply some “stronger” and “modern” approaches, when the solution is as simple as “sort the array and return the ln(detJmesh)F2(abclog(m/e))0.33\lfloor \ln(\det \mathbf{J}_{\text{mesh}}) \cdot \Vert \nabla \mathbf{F} \Vert_2 \cdot (a \cdot b \cdot c^{-|\log(m/e)|})^{0.33} \rfloor-th element!” I was told, “study this algo, memorize it, implement it in C, do not use external libraries, DO NOT USE JAVASCRIPT, and most importantly, DO NOT PLAY LOL,” but I’d never seen how we can really apply them (copy-pasting a JS calculator from YT didn’t help (っ˃̣̣̥ -˂̣̣̥ς)).

The second one: to pass the course, we needed to choose a paper from a pre-selected list, prepare a presentation (with slides), and present it in class. Not only was it the perfect time to improve my speaking skills (especially the “correct” way to explain something that would be relevant later), but it was also the most realistic way to dive into a modern topic. I realized that when I found not a single video on YT about a painless Farthest-point Voronoi diagram.

Was it difficult? Sorta. Did I have to wake up early to use every single second of the day? Yup. Was it worth it? Absolutely!

We had two presentations during the course. My plan is to write about them in the coming days to share my thoughts (nobody’s gonna read this, but it is a good way to get better at English). But if you can’t wait to read what made me love this field, here you go:

The first one: Dynamic minimum bichromatic separating circle

The second one: A time–space trade-off for computing the k-visibility region of a point in a polygon.

When I write the respective blog entries for each of them, I’ll update this post 𐔌՞ ܸ.ˬ.ܸ՞𐦯.