Omar Shehata


I love writing technical tutorials about graphics, games & the web.

You can find most of my technical tutorials on Tuts+ and other writing on Medium and

I maintain this page to collect articles I've published elsewhere and to point out some highlights.

Technical Articles

How to Fix Gimbal Lock in N-Dimensions

Gimbal lock is a common issue that arises in rotation systems. Almost every explanation of why it happens/how to avoid on the internet is misleading.

This is my attempt at explaining why it happens and how to avoid it in a clear and concise way. See tweet thread with extra commentary.

A Geometric Intuition for Linear Discriminant Analysis

This is an interactive article about visualizing high dimensional data by projecting it down into lower dimensions.

Designed to empower students to ask and answer their own questions or teachers to illustrate concepts on the spot.

Unraveling the JPEG

An interactive guided exploration of JPEG image compression. This tweet thread is a good summary.

Also FastCompany wrote an article about it!

The Case of the Corrupted MIDI File

Or Binary data in the browser: Untangling an encoding mess with JavaScript Typed Arrays.

This was a guest post written for LogRocket. It's a fun retelling of an encoding bug.

A Beginner's Guide to Graphics Shaders

Definitely one of my most popular tutorials. It was written in 2015 and has since been translated to 5 languages and remains a useful reference.

I'm pretty sure it's the first result on Google for "graphics shader tutorial".


7 Second Surveys

A hobby project to connect people through the mundane minutiae of our lives.

Alexandria's Armless Calligrapher

Guest news article about a story I found incredibly inspiring.

How Ice Boy Taught me to Value Work Ethic over Skill

A reflective piece on what it takes to win a game jam.


!!Con - How to Look at a 4D Cube

My talk at !!Con 2019 in New York City, about what it means to look at a 4-dimensional cube.

Computer Graphics & Faith

I gave a chapel talk about how I see learning computer graphics as a form of worship in Islam, in that it encourages this deep appreciation of the awe-inspiring beauty & complexity of our world.