TECH 으로 돌아가기
TECH HACKER NEWS 오늘 6분 읽기 24 READS

계정도 데이터도 유저의 것, 블루스카이의 AT 프로토콜 위에 앱을 짓는다는 것

인프라 자동화 도구 Puppet을 만든 루크 카니스가 요즘 블루스카이의 기반 기술인 AT 프로토콜(ATProto) 위에서 제품을 만들고 있는데요, 그 경험을 정리한 글을 올렸어요. DevOps 1세대 도구를 만든 창업자가 왜 소셜 프로토콜에 빠졌을까요? 그 이유를 따라가다 보면 ATProto가 개발자에게 어떤 기회인지가 보이거든요.

AT 프로토콜이 뭐냐면

블루스카이는 트위터의 대안으로 등장한 SNS인데, 그 밑바닥에 깔린 프로토콜이 ATProto예요. 핵심 아이디어는 딱 하나예요. 계정과 데이터가 특정 회사가 아니라 사용자의 것이라는 거죠. 구성 요소를 쉽게 풀어볼게요.

먼저 DID라는 게 있어요. 이게 뭐냐면 사용자마다 부여되는 고유 식별자인데, 주민등록번호처럼 어느 서비스에 가입하든 바뀌지 않는 나만의 ID예요. 특정 회사 서버에 종속되지 않아요. 그리고 PDS(개인 데이터 서버)가 있는데, 내가 쓴 게시글, 팔로우 목록, 좋아요 기록이 전부 여기에 저장돼요. 블루스카이가 기본으로 호스팅해주지만, 원하면 내 서버에 직접 둘 수도 있어요. 네트워크 전체의 공개 데이터는 릴레이라는 곳을 통해 실시간 스트림으로 흘러 다니고요. 이 스트림을 받아서 타임라인처럼 보기 좋게 만들어주는 앱을 AppView라고 불러요. 재미있는 건, 우리가 쓰는 블루스카이 앱조차 수많은 AppView 중 하나일 뿐이라는 거예요. 마지막으로 렉시콘은 데이터의 형식을 정의하는 스키마인데, JSON 스키마 비슷한 거라고 보시면 돼요.

개발자 입장에서 뭐가 좋은데?

카니스가 강조하는 지점은 이거예요. 서비스를 만들 때 제일 골치 아픈 부분들이 공짜로 따라온다는 거죠. 회원가입, 인증, 프로필, 팔로우 관계 같은 걸 직접 구현할 필요 없이, 이미 존재하는 수천만 개의 계정을 그대로 활용할 수 있거든요. 신규 서비스의 최대 난관이 뭐냐면 '콜드 스타트' 문제예요. 텅 빈 서비스에 첫 사용자를 모으는 게 제일 어렵잖아요. 그런데 ATProto 앱은 사용자가 로그인하는 순간 기존의 팔로우 관계와 정체성이 통째로 따라와요. 첫날부터 '아는 사람들이 있는' 서비스가 되는 거죠.

데이터가 공개 저장소에 있다는 점도 재미있어요. 다른 앱이 만든 데이터를 내 앱에서 읽어서 새로운 화면을 구성할 수 있거든요. 실제로 블로그 서비스, 이벤트 모임 서비스, 링크 공유 커뮤니티 같은 앱들이 ATProto 위에 만들어졌는데, 전부 하나의 계정으로 오가며 쓸 수 있어요. 앱들이 데이터를 공유하는 생태계인 셈이에요.

물론 현실적인 어려움도 있어요. 문서와 개발 도구가 아직 성숙하지 않았고, 렉시콘 설계는 처음엔 낯설고, DM 같은 비공개 데이터를 다루는 부분은 프로토콜 차원에서 아직 미완성이에요. 전체 스트림을 구독하려면 인프라 비용도 만만치 않고요. 프레임워크가 없던 시절의 웹 개발 같은, 거칠지만 기회가 열려 있는 느낌이라고 보시면 돼요.

ActivityPub, Nostr와 비교하면

비슷한 시도로 마스토돈이 쓰는 ActivityPub이 있는데요, 이쪽은 서버 단위로 연합하는 방식이라 계정이 가입한 서버에 묶여요. 서버가 문을 닫으면 팔로워를 잃을 수도 있죠. 반면 ATProto는 계정 이동성이 프로토콜 차원에서 보장돼요. 데이터 저장소를 옮겨도 DID가 유지되니까 팔로워와 기록이 그대로 따라와요. Nostr라는 프로토콜도 있는데, 개인 암호키 기반의 훨씬 미니멀한 설계로 검열 저항을 최우선에 둔 쪽이에요. 셋 중에서 ATProto는 대규모 사용자 경험을 유지하면서 개방성을 챙기는, 가장 '제품 친화적인' 포지션이라고 할 수 있어요.

한국 개발자에게 주는 시사점

소셜 기능이 필요한 사이드 프로젝트를 구상 중이라면 꽤 매력적인 선택지예요. OAuth 로그인만 붙이면 인증과 소셜 그래프가 공짜로 따라오니까, 커뮤니티나 큐레이션, 리뷰 서비스 같은 걸 아주 낮은 비용으로 실험해볼 수 있거든요. 다만 국내 사용자 기반이 아직 작다는 점과 프로토콜이 계속 진화 중이라는 리스크는 감안해야 해요. 당장 제품을 안 만들더라도, 연합형 아키텍처와 이벤트 스트림 설계를 실물로 공부할 수 있는 좋은 교재이기도 하고요.

마무리

한 줄로 정리하면, ATProto는 'SNS를 새로 만들 기회'가 아니라 '이미 존재하는 소셜 그래프 위에 내 앱을 얹을 기회'예요. 여러분은 어떻게 보세요? 계정과 데이터를 유저가 소유하는 모델이 주류가 될 수 있을까요? ATProto 위에 만들어보고 싶은 앱이 있다면 댓글로 아이디어를 나눠주세요.


🔗 출처: Hacker News

SOURCE · HACKER NEWS
원문 전체 보기 → https://lukekanies.com/writing/building-on-atproto/
SHARE
처리 중...