Here are various long-form explanations and logs of my technical explorations for the purpose of learning. I taught myself programming as a teenager with the main purpose of being able to train neural networks to generate art. Then I studied physics in university and got deep into programming physics simulations and designing hardware, mostly printed and integrated electronic and photonic circuit boards. As a hobby then, and now more seriously, I also write various little apps and websites since I didn’t just want to create new technologies but actually make them useful for people.
- 1. Vector-Quantized Variational Autoencoders
- 2. Growing Neural Cellular Automata
- 3. Log & Learn: The Making of Vellbi.com
- 6. Creating a +10,000 Line Python Package
- 10. File Management in Tauri 2.0 with Rust
- 11. OpenGL Shaders
- 20. Neural Network Accelerators (2024)
- 21. Dubins Paths for Waveguide Routing
- 25. Introduction to Deep Learning with PyTorch
- 27. Professional Figures with Matplotlib (2020)
-
Vector-Quantized Variational Autoencoders
VQ-VAEs are the foundation for a lot of advanced generative models. Thus, this post show how to implement a simple VQ-VAE and train it on MNIST. I end things by exploring the influence of the codebook size on the performance of the VQ-VAE.
-
Growing Neural Cellular Automata
A tutorial for implementing self-organizing, growing and regenerative neural cellular automata. After reproducing the results of the original paper, we discuss potential ideas for further research, talk about the field of NCA as well as its potential future impact on AI.
-
Log & Learn: The Making of Vellbi.com
Notes on a web app AI health tracker I created after tracking various aspects of my life like my sleep, body temperature, activities, mood, energy, reaction time and more manually. We can biohack our way towards a happier life. This post explains why my approach was not the best though and what I think should be done in V2.
-
Creating a +10,000 Line Python Package
While working on BEAMZ, my custom EM simulation package, I learned a lot about the numerical optics and photonics but also a ton about software architecture and how to manage larger projects. I want to review and explain some of that here in form a simple overview.
-
File Management in Tauri 2.0 with Rust
If you are just getting started with Tauri 2.0, opening, modifying, and saving files can seem quite a bit tricky. If you choose to use Rust rather than using the API provided by Tauri and struggle to get it working, this post is for you. Let’s make a simple text file editor.
-
OpenGL Shaders
Explaining briefly what shaders are and then moving on to writing two simple ones in GLSL. The first one similar to a lava lamp and the second one a little mountain range under a blue sky with a distance fog. Turns out, shaders are like painting directly with mathematics.
-
Neural Network Accelerators (2024)
A short overview of mostly commercial AI hardware. A rough comparison of ASICs, FPGAs, GPUs, and looking at compute requirements and energy consumption. I end this post with the realization that we need to take a first-principles physics approach to narrow down what future AI accelerator designs will have to look like because the market is complex and largely driven by momentum.
-
Dubins Paths for Waveguide Routing
What does the perfect waveguide routing look like? Dubins paths, already well known in robotics and control theory, turn out to be a simple and highly practical solution. This post notes a few useful recources and explains what the advantages of Dubins paths are compared to other waveguide interconnects that are often used.
GDSFactory Used daily for better, quicker, and easier routing. -
Introduction to Deep Learning with PyTorch
How do neural networks work? What is backpropagation? Computational Graphs? Auto-Differentiation? This post explains the basic concepts of training neural networks.
-
Professional Figures with Matplotlib (2020)
An introduction into the Matplotlib API, how to get started customizing plots, and create professional figures for your scientific work.
+100K views across the internet.