About Me
Hi, I’m Nam V. Do, I’m a student with a broad interest in computer science, (algorithmic) information, and communication theory, and their applications.
I have worked as a software engineer for over 4 years in different domains. The first year of my career taught me fundamental concepts related to network/media streaming protocols, codecs, containers, and stress testing. Later, I joined a search engine company in Vietnam and worked there for about 2 years, where I learned and implemented crawling, indexing, and searching services.
In August 2024, I was really lucky to meet Rudi Cillibrasi, a computer scientist and a software engineer with 20+ years of experience. I learned so much from him; he gave me the first paid remote job to develop some scientific programming tools using the formula that he researched and developed. During this time, I have learned so many interesting computer science concepts and their applications, such as algorithmic information theory and data compression, first-order logic, and unsupervised machine learning. He also introduced me to his long-time friend Joy Hughes, also a computer scientist and experienced low-level programming engineer, specializing in computational geometry. I have a wonderful time collaborating with Joy as well in her generative photography open-source project, written in C++ with a web interface.
Rudi also inspires me to learn more about science and math, and I’ve been motivated ever since then. The idea of studying computer science and engineering at the graduate level has been a long-held wish of mine for a few years, and Rudi helped me bring it to fruition by writing a recommendation letter on my behalf, assisting me in choosing a school, reminding me of important events, and providing financial support. In September 2025, I will go to Finland to study for an MSc in Computer Science, and it’s impossible without Rudi; I’m super grateful for what he’s done for me.
I am curious about everything around me, from science to technology, and I love to learn theories with their applications. That’s why in this blog I always try to explain the theory that I’ve learned, its applications with real-world impact, and quite often code implementation.
Rudi and I’ve created the CompLearn 2.0 OSS project, which is a scientific programming tool for clustering data objects using data compression and algorithmic information theory, the heart of this tool is the NCD (Normalized Compression Distance) formula, it’s a metric can be used for unsupervised machine learning tasks that are “paramater-free”, “feature-free”, and “alignment-free”.
Joy also gives me a paid remote job to develop her generative photography application, where I can learn about computational geometry, cellular automata, linear algebra, and C++.
- CompLearn 2.0: Implementation of NCD for data clustering software
- Jen: Image Processing, Generative Photography, and Cellular Automata
You can connect with me on other platforms as well:
- Twitter/X: https://x.com/namvdo
- Email: [email protected]
- LinkedIn: https://www.linkedin.com/in/nam-v-do/
- Discord: namvdo
My CV can be found here.