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, specialized 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 than ever since then. The idea of studying computer science and engineering at the graduate level has been a wish for me for a few years, and Rudi helped me to materialize this by writing a recommendation letter for me, helped me choose a school, reminded me of important events, and helped me financially. In September 2025, I will go study an MSc in Computer Science in Finland, and it’s impossible without Rudi, and I’m super grateful to what he’s done for me.
I am curious about everything around and 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 places 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.