Hacker News 의견
  • Andrew Chan, 프로젝트 참여자에 따르면 Figma는 거의 10년 동안 다른 부분에서 TypeScript를 사용해왔고, 대부분의 기간 동안 Skew보다 TypeScript가 더 많았음. Skew는 모바일 엔진과 프로토타이핑 플레이어, 미러링 기능 등 일부 제품 영역에서 사용되었음.

  • Figma가 JS를 위한 사용자 정의 언어를 가지고 있었다는 점이 놀라웠고, 그것이 TS보다 빨랐다는 점은 더욱 놀라웠음. 그런데 나중에 더 느린 TS로 마이그레이션함.

  • Evan Wallace(전 Figma CTO)에 따르면 Skew는 더 엄격한 타입 시스템으로 인해 가능해진 더 나은 최적화 덕분에 TypeScript보다 1.5~2배 빨랐음.

  • 배열 구조 분해 할당 시 JavaScript가 배열에서 직접 인덱싱하는 대신 배열을 반복하는 이터레이터를 구성하는 것이 흥미로움. JS가 배열을 직접 인덱싱하지 않는 이유가 궁금함.

  • Skew는 콜백만 있었던 것으로 보임. async/await와 같은 최신 JavaScript 기능과 더 유연한 타입 시스템이 언급됨.

  • Figma는 사용자 정의 TypeScript DSL + 컴파일러를 작성하여 권한 문제와 같은 보안 문제를 해결했음.

  • 대기업마다 자체 내부 도구, 언어, 쿠버네티스를 가지고 있는데 공유하지 않는 것이 안타까움. Skew가 오픈소스였다면 더 나은 TypeScript가 되었을 수도 있음.

  • Figma의 WebAssembly 사용 동기가 궁금함.

  • 배울 교훈: 사용자 정의 언어를 만들지 말 것.

  • TypeScript에 반대하는 사람들의 의견을 보면 흥미로움. TypeScript는 거의 모든 코드 라인을 개선하는 단점이 거의 없는 도구임. 그들은 새로운 것을 배우기 두려워하거나, 시간을 할애하지 않으려 하거나, 유용성을 오해하고 있는 것으로 보임. TypeScript 반대자들에 동의한다면 그 이유에 대해 더 깊이 생각해 볼 필요가 있음. 그렇지 않으면 큰 불이익을 감수해야 함.