Fast software is the best software

Francesco Puppo

빠른 소프트웨어가 최고의 소프트웨어다

Craig Mod의 이 글을 언제 처음 읽었는지 기억나지 않지만, 그 후로 계속 머릿속을 떠나지 않고 있다.

정말 위대한 제품을 만들고 싶다면, 속도에 각별히 신경 써야 한다:

빠른 소프트웨어가 항상 좋은 소프트웨어인 것은 아니지만, 느린 소프트웨어가 위대함에 도달하는 경우는 드물다.

이 글은 단순하지만 근본적인 개념을 아주 잘 정리해 준다. 그런데 이 개념은 종종 과소평가되곤 한다. 특히 비즈니스 논의에서는 더욱 그렇다.

소프트웨어에서 속도는 아마도 가장 가치 있으면서도 가장 저평가된 자산일 것이다.

저자는 UI와 UX부터 프론트엔드, 백엔드 개발에 이르기까지 다양한 팀의 관점을 아우르는 여러 사례를 다룬다.

위대한 제품을 만들고 싶다면, 이들 모두가 함께 협력하고 속도를 우선순위에 두어야 한다는 점을 이해해야 한다.

생각해 보자. 새로운 도구를 만지작거릴 때, 상호작용하면서 가장 먼저 느끼는 것은 — 무의식적이라 할지라도 — 바로 반응성이다1.

속도와 안정성은 종종 함께 직관적으로 연결된다. 속도는 전반적인 엔지니어링 품질을 가늠하는 좋은 지표가 될 수 있다.

이런 측면들 외에도, 속도는 언어를 통해서도 전달된다. 사용자가 빠르게 움직일 수 있게 하는 모든 디테일에 신경 써야 한다.

속도는 소프트웨어의 언어 — 말 그대로의 단어 — 에서도 드러난다

올바른 단어를 사용해 사용자가 망설이지 않도록 하는 것이 중요하다.

글에서는 “순수한 장인정신이 깃든 iOS 소프트웨어”의 예로, 내가 매우 아끼는 앱인 Things2를 언급한다:

iPad와 iPhone용 Things는 손에 착 감기고, 움직일 수 있는 만큼 빠르게 움직이는 앱 중 하나다. 모든 애니메이션에는 목적이 있다. 무엇보다 재미있다. 머무는 것만으로도 즐겁고, 무언가를 넣고 다시 정리하는 과정이 즐거운 앱이다. 오래된 앱이다. Things는 출시된 지 10년이 넘었다. 10년 전에도 열어서 기뻤고, 오늘 열어도 여전히 기쁘다.

이것이 바로 실제로 구현된 소신 있는 디자인의 모습이다. 사용자를 즐겁게 하는 세심한 결정들이다.

이는 MaxVP 개념, 그리고 내가 예전에 이에 대해 쓴 글과도 연결된다:

[…] 제품이 가장 잘하는 것에 집중하고, 잘 다듬어진 소수의 기능을 제공하며, 모든 작은 인터랙션에 주의를 기울이는 것이다.

내가 매일 쓰는 몇몇 앱을 예로 들면3, 다음과 같다:

  • Bear의 태그 시스템: 단어 앞에 #을 붙여 노트를 분류한다. 단어 사이를 /로 구분하면 하위 태그를 만들 수 있다.
  • Things의 퀵 애드: 키보드 단축키로 어디서든 즉시 목록에 할 일을 추가한다.
  • iA Writer의 시작 화면: 앱을 실행하자마자 바로 글을 쓸 수 있다. 시작하기 전에 다른 것을 클릭할 필요가 없다.

빠른 소프트웨어를 만드는 것은 여러 분야가 함께하는 팀의 노력이다. 쉽지 않은 일이지만, 그것이 위대한 제품을 만든다.

빠른 소프트웨어를 만드는 것은 어렵다. 하지만 만들어지고 나면, 우리 모두는 감사하게 된다.

각주

  1. 다시 말하지만, 피드백은 UX의 핵심이다. 즉각적인 반응성은 인지 부하를 줄이고 사용자 경험을 개선한다.

  2. 나는 이 앱으로 일상을 관리한다. 아무리 다른 앱을 써 봐도 결국 다시 Things로 돌아오게 된다.

  3. 맞다, 언제나 그 세 개다…

원문은 Francesco Puppo님이 에 게재했습니다.

이 글은 muse-spark-1.2-contributor 모델을 사용해 번역했습니다.