Cryptography

Link to white paper on post-quantum cryptography (co-authored by me at cnlab).
2025 • ~1 min read
An explanation of hash functions, their mathematical properties, and their role in cryptography.
2022 • ~4 min read
An explanation of stream ciphers, pseudorandom functions (PRFs), and block ciphers, and how they implement pseudorandomness in practical cryptographic systems.
2025 • ~14 min read
An explanation of pseudorandomness and pseudorandom generators, their construction and their role in cryptography.
2024 • ~19 min read
An accessible introduction to blockchain technology, explaining its decentralized architecture, consensus mechanisms like Proof of Work and Proof of Stake, the role of cryptography, and some applications.
2024 • ~12 min read
An exploration of the functional principles and security challenges of blockchain systems and smart contracts, including their architecture, consensus mechanisms, and common attack vectors.
2024 • ~1 min read
An explanation of the Logjam attack on TLS, which exploits Diffie-Hellman parameter downgrades.
2023 • ~14 min read

Systems, Applications, Security

An exploration of how code is translated from high-level languages into machine-readable instructions through compilation, assembly, and linking.
2025 • ~18 min read
A breakdown of the hierarchy of programming languages, and of the roles of source code, bytecode, assembly, object files, and executables.
2024 • ~18 min read
A study of how computers store and access information, exploring the types and hierarchy of memory systems.
2024 • ~18 min read
An low-level summary of the physical components that make computing possible.
2024 • ~14 min read

AI and Machine Learning

A reflection on Large Language Models as a new paradigm in human-computer interaction—one that replaces rigid syntax with adaptive, intuitive dialogue—while examining their promise, limitations, and role as collaborative instruments in the evolving digital landscape.
2025 • ~10 min read
An empirical exploration of DCGAN architectures, covering architectural modifications, mode collapse, label smoothing, grayscale inputs, and hyperparameter tuning.
2025 • ~8 min read
An implementation-focused walkthrough of the Perceptron and Pocket Learning Algorithms in R, using synthetic 2D data to explore linear classification, weight updates, and performance evaluation.
2023 • ~10 min read
Link to white paper for a deep learning-based vehicular counting model developed at Hashbrown Systems.
2019 • ~1 min read

Theoretical Computer Science

A beginner’s attempt at understanding code compilation, interpretation, and typing.
2025 • ~8 min read
An introduction to decision problems, algorithmic solvability, and complexity theory, with a focus on decidability, verifiability, and the P vs NP landscape.
2025 • ~11 min read
An introduction to Rice’s Theorem and its implications for undecidability in program behavior analysis.
2024 • ~4 min read

Mathematics

A gentle introduction to abstract group theory and some applications.
2020 • ~17 min read
A short note exploring Euclidean decompositions of integers that minimize the sum of their components.
2019 • ~1 min read