Nook@tim

Hello Nook


이 글은 Nook의 정식 릴리즈를 알리는 글이기도 하고, 약 10년만에 저의 생각을 공개적인 장소에 드러내는 글이기도 해서 다소 설레기도 합니다.

아래는 영어 독자를 위한 안내 메세지입니다.
제 의도가 훼손되지 않고 받아들여지면 좋겠습니다.

I wrote this post by hand, word for word, so I have not provided it in English via machine translation!

This might be a one-time thing, but please understand that this is an intentional display of care in this age of AI!😅

저는 약 10년간 RSS 앱을 사용해왔으며 잘 사용하던 앱이 서비스를 종료하거나, 회원가입을 강요하기 시작하거나, 유료임에도 부족한 최적화와 버그 방치 등을 겪으며 크고 작은 불편함속에서 여러 앱을 방황하며 사용해왔습니다.
또한 AI Slop의 홍수 속에서도 분명 제가 읽는 피드 외에도 글 하나 하나에 정성이 가득 들어간 글들이 많을텐데도, 상업화 된 글들만이 표면에 드러나 시야를 방해하는 느낌이었습니다.

만들게 된 이유

위와 같은 이유들로 저는 적지 않은 시간동안 고민을 해왔지만, 약 15년간의 웹/DevOps 엔지니어로서의 경험은 있지만 iOS, macOS 의 개발 경험은 전무하기 때문에 누군가 만들어주기만을 기다리고 있었습니다.
그러던 중 AI가 점점 발전하며 저 또한 Agentic Coding 이라는 방식1이 일상에 녹아들며 처음으로 본격적인 구상과 개발에 들어갔습니다.

첫 여정

처음에는 모든 앱보다 뛰어난 RSS 앱이 목표였습니다.
뛰어난 퀄리티의 글을 더 편리하고 쉽게 읽을수 있도록 하고 싶었고, 당연히 오프라인 우선으로 동작해야 했고 FCM과 같은 푸시 서비스 또한 이용하지 않고 기기의 스케줄링에 맡겨 자동 리프레시 및 푸시를 지원할 수 있도록 구상했습니다.
이후에는 사용하면서 소소하게 불편했던 점들을 보완하기 시작했습니다.

구독을 원하는 웹사이트에 분명 RSS/Atom 을 지원할건데 이를 탐색하는것이 너무 어려움을 겪어 탐색 기능도 추가했고, 광고나 읽는데 방해되는 요소를 제거하기 위해 Readability.js 를 이용하여 리더모드를 지원하기 시작했습니다. (현재는 이를 기반으로 네이티브 리더로 볼 수 있도록 개선되었습니다.)

편의 기능

저는 항상 macOS RSS 리더 앱으로 글을 읽는게 편했는데, 사실은 iOS에서 글을 읽는것도 여러번 시도했습니다. 그리고 항상 이를 접게 되었는데 주된 원인은 여러 나라의 언어로 된 글을 읽기가 어렵다는 것 이었습니다.2
이런 이유로 인해 저는 저를 위해 실시간 번역 기능을 지원하기 위해 Apple Intelligence를 시작으로 번역 기능을 추가하기 시작했습니다. 처음엔 본문부터 번역을 시도했고, 양질의 번역은 아니어도 최소한 이해는 가능할 수준에 도달했을때 제목 번역까지 지원하기 시작했습니다.3

이 다음에는 더 자세한 사용성을 개선하기 위해 많은 시간을 쏟았습니다.
네이티브 리더에서의 이전/다음 글 보기 트리거, 여러 상황에서의 햅틱 반응, 번역을 최대한 빠르게 제공할 수 있도록 하는 스트리밍 렌더링, 키워드 기반4 글 필터링, 카테고리 기능, 이를 최대한 자연스럽게 지원하는 AI 기능들... 외에도 아주 많겠지만 이 모든 작업들의 핵심은 보고 싶은 글만을 더 편리하게 제공하자 하나였습니다.

실 사용

첫 개발 시작 이후 저는 약 5일만에 기존의 RSS 리더 앱에서 Nook으로 완전히 옮겨와 기존의 앱을 삭제해도 될 수준에 이르렀습니다. 그리고 iOS 개발은 macOS 개발 시점에서 약 2주가 안되었을 때 시작했지만 요즘은 iOS로 글을 읽는 빈도가 거의 macOS 에 따라잡혔습니다.5

Nook Plus?

사실 회원 기능이나 사용자를 이 서비스에 묶어두는 제약을 두고싶지 않았습니다.
저 또한 그러한 서비스를 별로 좋아하지 않았고 그저 글만 보고싶은 사용자였기 때문입니다.

그렇지만 글을 읽다보니 종종 어딘가에 글을 쓰고싶은 욕망이 생길때가 있었고, 이미 여러 차례 옵시디언과 같은 앱을 이용해 일기처럼 글을 작성해왔습니다.
그러나 내가 쓴 글이 누군가에게 읽힐수 있는것과 아닌것에는 큰 차이가 있었는지, 혼자 쓰고 읽기 위한 글에는 퀄리티도 좋지 못했고 꾸준히 적지도 않아 작심삼일처럼 끝나버리곤 했습니다.6
이런 경험을 가진 상태에서, 글을 읽는 도구가 이미 있으니 작성 기능만 추가해보는건 어떨까? 하는 생각이 들었습니다.

나중에 보면 어리석은 생각일 수 있겠지만 저는 바로 개발을 시작했고 내가 작성하는 글은 내가 소유해야 하면서도 공개된 장소에 퍼블리싱 할 수 있는 방법을 원했습니다. 이런 요구사항 때문인지 자연스럽게 AT Protocol을 기반으로 개발을 시작하게 되었고, Staging PDS를 시작으로 며칠에 걸쳐 테스트와 개발을 진행했습니다.
기본적인 인프라와 백업 수단, 계정 관리, 글 발행, 삭제, 개인 공개 페이지 등이 모두 구현되었고 제 생각엔 이제 공개해도 괜찮다고 느껴질정도로 모든 준비가 끝났습니다.

Plus 기능은 아직 초대 코드가 있어야 합니다.

아마 처음부터 Nook Plus의 기능을 원하는 사용자가 많지 않을것으로 예상하지만 혹시 AI 봇이나 홍보를 목적으로 하는 공간이 될 수 있기 때문에 다소 조심스럽지만, 초기에는 누가 어떤식으로 사용할지 알수가 없으므로 제한이 있는 코드를 공개하려고 합니다.
(이 글을 끝까지 읽는다면 좋은 일이 생길지도 모릅니다 😁)

참고로, 계정을 생성하지 않고, 초대 코드가 없더라도 Nook의 기본 기능인 모든 리더 기능과 편의 기능은 이용이 가능하다는 점은 오해 없으시길 바라겠습니다.

앞으로의 방향

디테일하게 살펴보면 아직도 크고 작게 부족한 기능들이 많이 보입니다.
그러나 다른 앱들보다 조금이라도 더 편하게, 사용하고 싶은 기능만 제공한다는 원칙은 바뀌지 않습니다.

만약 나중에 제 생각이 바뀐다면 사용자는 언제든지 떠나 다른곳에 컨텐츠를 그대로 올릴수 있도록 충분한 장치를 마련했다고 생각을 하기 때문에, 이것은 저에게도 제약이자 지켜야 하는 원칙이 됩니다.

그리고 다음과 같은 기능들을 넣어야 할지는 모르겠으나 (어쩌면 영원히) 도입하지 않거나, 하더라도 아주 신중하게 도입할 예정입니다:

외에도 많은 기능들을 고려하고 있고 추가할 수 있겠지만 아직은 사용자에게 피로감을 줄 수 있는 기능을 최소화 하고 싶습니다.

마치며

아직은 내 글을 공개하는 수준이고 대대적으로 다른 사람들에게 노출할 경로는 없지만, 이러한 경로가 생긴다면 상업적인 공간으로 바뀌진 않을지 걱정입니다.
물론 서버 비용을 감당해야 하기 때문에 전혀 수익을 생각하지 않을수는 없지만 최소한 사용자에게 부정적인 영향을 끼치는 광고같은 방향으로 감당하고 싶지는 않습니다.

이제 Nook을 통해 글을 작성하면 Bluesky 릴레이(bsky.network)로 전파되고, 그 위의 Jetstream에서도 볼 수 있게 되며, 어디서든 접근 가능한 URL이 생성됩니다.
이를 통해 여러분의 생각을 마음껏 적고 표현하고, 공유할 수 있으면 좋겠습니다.

참고로 BlueSky와 같은 다른 PDS 핸들은 앱의 안정화가 어느정도 이루어진 이후에 지원될 예정입니다.

Nook macOS/iOS 소스코드는 GitHub 에서 확인 가능하며,
서버와 인프라와 관련된 소스코드만 비공개입니다. 언젠가는 모든 보안요소를 걷어내고 공개할 수 있겠지만 아직은 미정입니다.

제가 약 11년 넘게 다닌 회사가 이제 막 궤도에 오르기 시작하며, 아내가 출산한지 이제 막 2주가 되어 당분간 집중할 수 없을지도 모르지만, 제가 매일 사용하는 서비스인 만큼 꾸준히 완성도를 높여나갈 계획입니다.

다운로드

Nook iOS 앱은 앱스토어 에서 다운로드 할 수 있으며, macOS 버전은 GitHub Release에서 직접 다운받거나, brew를 통해 사용하실 수 있습니다.
자세한것은 다운로드 링크를 참고하세요.

피드백은 언제나 환영이며, 필요한 기능 제안이나 버그 리포트 모두 GitHub Issue 또는 앱 설정 화면에 있는 개발자 메일로 제보 부탁드립니다.

감사합니다.
재미있게 즐겨주세요!


그리고 다운로드 페이지에도 추가해둔 내용이지만, 앱 출시 기념으로 9월 29일까지 유효한 Nook Plus 코드를 배포합니다! 👏
아래의 코드를 복사하여 설정 > 발행 탭에서 계정 생성시 입력하거나, 앱 설치 후 딥링크를 누르시면 곧바로 계정을 생성 할 수 있습니다.

LYWTC9HK-ULHLY7BR-UDZE32BS-ZBQ55TG2
nook://plus/invite?code=LYWTC9HK-ULHLY7BR-UDZE32BS-ZBQ55TG2

만약 이 코드가 한도가 다 되었는데 너무 사용하고 싶은 분이 계시다면 꼭 메일로 문의 부탁드리겠습니다.


  1. 최근에는 Vibe coding 과의 격차가 가까워졌다고 하는 의견도 있습니다. (링크↩︎

  2. 부끄럽지만 저는 미국 중심의 비즈니스를 하는 스타트업에서 영어를 매일 접하고 있지만 영어를 정말 못합니다. 번역기가 없었다면 어떻게 지냈을지 상상도 할수가 없어요. ↩︎

  3. 나중에는 Gemini 도 추가했지만, 이건 더 양질의 번역본을 읽고 싶은 저의 욕망에 의해 추가되었습니다. ↩︎

  4. 정규식도 지원합니다! ↩︎

  5. 당연하게도 Codex와 Claude Code가 없었다면 불가능했을 속도입니다. 그리고 아내는 요즘 너무 개발만 한다며 썩 좋아하지 않는 눈치입니다... ↩︎

  6. 옵시디언을 통해 퍼블리싱하는 기능이 있는것은 알고 있지만 사실 글을 적는 경험이 저에게는 긍정적으로 다가오지는 않았습니다... 저는 옵디시언의 헤비 유저가 아니라서 더 그런것 같습니다. ↩︎