My Apple Metal article series has been revised, corrected, expanded, and reorganized into a complete book. It takes you from Metal fundamentals to practical rendering, compute, tooling, diagnostics, profiling, and GPU debugging workflows, with a stronger focus on structure, clarity, and long-term updates.
This series of introductory articles on Apple Metal introduces a set of tools for convenient Metal development. You'll gain an understanding of the necessary tools, from basic diagnostics to deep profiling and GPU debugging. This will improve not only your code performance but your development performance as well. As with the previous series, it focuses on principles and understanding.
This series of introductory articles on Apple Metal takes you from the very basics to modern APIs like MPS. Instead of focusing only on code snippets, the articles emphasize core principles, helping you build a strong conceptual understanding of how Metal works. They are designed for beginners, offering an accessible path to explore graphics and compute programming on Apple platforms, and providing a solid foundation for more advanced projects.
This article introduces cellular automata, explaining them as simple mathematical models consisting of cells that change states based on their neighbors’ states. Through examples like Conway’s “Game of Life” and more complex models like Larger than Life and Lenia, it highlights the surprising complexity and real-world applications of cellular automata in various fields.
In this article, we'll create a locally hosted tool for App Store optimization. This project incorporates PostgreSQL for the database, Grafana for visualization, a few Python scripts for scraping App Store search data and managing tasks, and Docker Compose to integrate all these components seamlessly. Additionally, we'll integrate Amplitude for enhanced data and deeper insights.
A quiet colour-by-number game built around hand-made pixel art.
About
Engineering visual systems from the mathematical model to the shipped product
I work where low-level graphics, image processing and product design meet: rendering pipelines, computational geometry, creative tooling and spatial interaction.