기능 - 프로젝트

계획은 나열을 넘어선 배치

by 김태현
image.png

계획의 한계

할 일 목록을 만든다. 메모를 적는다. 대부분의 생산성 앱이 제공하는 기능은 여기서 크게 벗어나지 않는다. 그리고 단순한 목표라면 이것만으로 충분하다. "우유 사기"에 캔버스 보드는 필요 없다.

문제는 목표가 복잡해질 때 생긴다. 여행을 계획한다고 해보자. 항공편 예약, 숙소 리스트, 가보고 싶은 장소, 예산, 동행자와 나눈 대화, 참고할 블로그 글. 이것들을 할 일 목록에 한 줄씩 적는다? 메모장에 쭉 나열한다? 할 수는 있다. 하지만 그건 계획이 아니라 나열이다.

계획은 요소들 사이의 관계를 포함한다. 이 숙소는 저 장소와 가깝고, 이 일정은 저 예약에 의존하고, 이 메모는 저 할 일의 배경이다. 한 줄짜리 목록으로는 이 관계가 보이지 않는다.

스위치의 비유

컴퓨터는 스위치의 나열이다. 켜짐과 꺼짐, 0과 1. 그 자체로는 단순하다. 그런데 이 단순한 스위치들이 조합되면 영상을 재생하고, 음악을 만들고, 우주선을 제어한다. 원소가 단순해도, 조합의 자유도가 높으면 표현할 수 있는 것은 무한해진다.

계획도 마찬가지다. 할 일, 메모, 기록, 지도 같은 원소들이 있다. 각각은 단순하다. 하지만 이것들을 하나의 공간에서 자유롭게 배치하고 연결할 수 있다면, 단순한 장보기 목록부터 반년짜리 사이드 프로젝트 로드맵까지 표현할 수 있다.

이 생각이 프로젝트 기능의 출발점이었다.


시도와 실패

처음부터 캔버스를 생각한 것은 아니었다. 첫 번째 시도는 폴더 구조였다. 할 일 안에 할 일, 메모 안에 메모. 익숙한 방식이었고, 구현도 단순했다. 하지만 금세 한계가 왔다. 트리 구조는 위계를 표현할 수 있지만, 항목 간의 수평적 관계를 보여주지 못한다. A와 B가 서로 연관된다는 사실은 폴더 구조 어디에도 담기지 않는다.

두 번째 시도는 하나의 화면에 여러 항목 리스트를 나열하는 방식이었다. 할 일 섹션, 메모 섹션, 일정 섹션을 한 화면에 모으는 것이다. 이것도 결국 내 생각을 표현하기 어려웠다. 리스트는 순서를 강제한다. 하지만 계획 단계에서의 생각은 순서가 아니라 공간적 배치에 가깝다. "이건 저것 옆에 있어야 해", "이 세 개는 하나의 묶음이야" 같은 관계는 리스트로 담을 수 없다.

그래서 발상을 바꿨다.


캔버스라는 선택

프로젝트는 캔버스형 보드다. 무한한 평면 위에 할 일, 메모, 기록 등 다양한 항목을 자유롭게 배치한다. 드래그 앤 드롭으로 위치를 정하고, 항목 사이에 연결선을 그어 관계를 시각화한다.

자유 배치

항목의 위치에 강제된 규칙이 없다. 화면 왼쪽에 준비 단계 항목들을 모으고, 오른쪽에 실행 단계를 배치할 수 있다. 위에는 목표를, 아래에는 세부 할 일을 놓을 수 있다. 배치 자체가 생각의 구조를 반영한다.


연결선

두 항목 사이에 선을 그으면 관계가 명시된다. "이 메모는 이 할 일의 배경이다", "이 일정이 끝나야 저 작업이 시작된다" 같은 의존 관계를 시각적으로 표현할 수 있다. 머릿속에만 있던 연결 고리가 화면 위에 드러난다.








다양한 컴포넌트

캔버스 위에 올릴 수 있는 것은 한 종류가 아니다. 할 일, 메모, 기록 등 Odyssey60이 제공하는 여러 항목 타입을 하나의 보드에서 함께 다룰 수 있다. 여행 프로젝트라면 할 일(비행기 예약), 메모(가고 싶은 식당 리스트), 기록(지난번 여행 후기)을 한 캔버스에 펼쳐놓을 수 있다.




개별 윈도우 처럼

완전한 자유 배치만이 답은 아니다. 항목이 많아지면 어느 정도의 정렬도 필요하다. 그래서 항목은 타일 안에 리스트로 묶여 표현된다. 할 일 다섯 개를 하나의 타일에 담고, 메모 세 개를 다른 타일에 담는 식이다. 그 결과 캔버스는 마치 여러 윈도우를 띄워놓은 데스크톱처럼 보인다. 각 타일이 하나의 윈도우고, 그 안에 관련 항목들이 정리되어 있다. 자유로운 배치와 정렬된 목록이 공존하는 구조다.


메모 편집 뷰

캔버스 위에서 생각을 정리하고 나열하는 작업은 메모가 담당한다. 그런데 메모할 일이 많을 때 캔버스 위의 작은 타일로는 편집이 불편하다. 그래서 메모는 별도의 편집 뷰를 가지고 있다. 메모 타일을 탭 하면 전용 편집 화면으로 전환되어, 메모를 쉽게 작성하고 수정할 수 있다. 동시에 해당 프로젝트에 포함된 다른 메모들도 함께 확인할 수 있다. 캔버스에서 전체 구조를 조망하고, 메모 편집 뷰에서 내용에 집중하는 구조다.



갇히지 않는 항목

여기서 다른 보드 앱들과 결정적으로 다른 점이 하나 있다.

대부분의 보드 앱에서 항목을 만들면 그 보드 안에 갇힌다. 보드 밖에서는 존재하지 않는 것과 같다. 프로젝트 보드에서 만든 할 일을 오늘의 할 일 목록에서 보려면? 다시 만들어야 한다. 같은 내용을 두 번 입력하는 순간, 둘은 별개의 항목이 된다. 하나를 완료해도 다른 하나는 그대로다.

Odyssey60의 프로젝트는 다르다. 프로젝트 캔버스에서 할 일을 만들면, 그 할 일은 할 일 뷰에서도 보인다. 메모를 만들면 메모 뷰에서도 보인다. 프로젝트는 항목을 가두는 상자가 아니라, 항목들을 특정 맥락에서 조망하는 렌즈에 가깝다.

프로젝트는 항목의 창고가 아니라 항목의 무대다. 무대 위의 배우가 무대 밖에서도 존재하듯, 프로젝트 안의 항목은 앱 전체에서 살아 있다.

이 연동 덕분에 프로젝트에서 전체 그림을 조망하면서도, 개별 항목은 각자의 맥락에서 관리할 수 있다. 할 일은 오늘의 할 일 목록에서 체크하고, 메모는 메모 뷰에서 검색하고, 프로젝트 캔버스에서는 이 모든 것이 어떻게 연결되는지를 본다.


프로젝트 기능에 대한 이야기였습니다. UI 개선이라던가 컴패니언(AI)까지 향후 업데이트할 것은 많지만, 핵심적인 기능은 기능하는 상태입니다. 개선점이나 버그가 있다면 알려주세요. 누구나 사용해 볼 수 있습니다.

image.png

Appstore: https://apps.apple.com/kr/app/odyssey60/id6742695943

Playstore: https://play.google.com/store/apps/details?id=com.odyssey365.odyssey60&pcampaignid=web_share

이전 02화기획 - 앱의 전체적 구상