Home ยป Transitioning from Skew to TypeScript: Figma’s Paradigm Shift

Transitioning from Skew to TypeScript: Figma’s Paradigm Shift

Figma reports on its own code migration process, transitioning from using Skew language that has been in use since the company’s inception (releasing the initial versions in 2016) with a key condition being the ability to compile code for both web and mobile phone usage. At that time, TypeScript language did not offer much support, leading to continued use of Skew, but ultimately encountering difficulties in using external tools and code, as well as wasting time training new employees.

Figma states that the reason for the delayed switch to TypeScript was because Skew itself had an inefficient optimization process. Previously, when testing TypeScript as a replacement for Skew, performance in Safari significantly decreased, which was unacceptable as iOS only supports Safari.

The current conditions have changed as various browsers now support WebAssembly more, allowing for efficient optimization parts to be written in C++ and compiled into WebAssembly, while the remaining code can be written in TypeScript without compromising overall performance significantly.

The code migration process relies on creating a transpiler to convert the original Skew code to TypeScript first, then building from both Skew and TypeScript sides together, gradually transitioning users to the Skew side and ultimately reaching a point where programmers will stop writing Skew and focus on correcting the transpiled TypeScript.

Source – Figma

TLDR: Figma shifted from Skew to TypeScript due to Skew’s optimization issues, finding more efficient solutions with WebAssembly support. The code migration process involved creating a transpiler to convert Skew code to TypeScript, gradually transitioning users to TypeScript.

More Reading

Post navigation

Leave a Comment

Leave a Reply

Your email address will not be published. Required fields are marked *

WinterJS Unveiled: A Revolutionary Real-Time Service Worker Runtime Initiative, Spearheaded by Wasmer

Enhanced Python Support in Cloudflare Workers with FastAPI and Langchain Integration

Conversing with the CEO: Figma’s Impact on Design Industry After Adobe’s Fall and AI Integration