스몰 스페이스는 웹, 고퍼(gopher), 그리고 제미니(gemini)로 접속이 가능한 블로그를 만들 수 있게 하는 서비스입니다. 저차원적 기술의 웹 포탈 및 간단한 CLI(명령 라인 인터페이스)로 글을 올리고 관리 가능합니다. 직접 서버를 운영하지 않아도 소위 스몰넷(smolnet)에 누구나 관여할 수 있도록 해주는 친환경 스몰넷 블로그 서비스입니다.
스몰넷에서는 구경꾼이 없고 참여자만 있다.
스몰넷은 미니멀하고 비상업적인 인터넷 플랫폼 또는 프로토콜로 구성되는 가상 공간입니다. 주로 고퍼, 제미니, 최소화된 웹, 그리고 공적 유닉스 서버(pubnix) 따위의 셸 공동체(shell community) 등을 스몰넷으로 꼽습니다.
우리가 잘 아는 웹은 인터넷의 유일한 프로토콜이 아니며 최초의 프로토콜도 아니었습니다. 웹보다 오래된 고퍼(gopher://)는 오늘날에도 많이 쓰이는 프로토콜 하나입니다. 제미니(gemini://)는 극단적으로 단순한 고퍼와 너무나 복잡한 웹(http://) 사이에 인터넷의 가능성을 궁구하는 재미를 부활시킨 새로운 프로토콜입니다. 한 마디로는 인터넷을 사람과 사람이 연결되는 공간으로 만드는 데 있습니다. 고퍼와 제미니는 현대 웹에 비해서 워낙 미니멀하다. 둘다에는 광고, 자바스크립트, 쿠키, 사용자 축적 기술 등이 부재합니다. 이렇게 미니멀한 세계의 스몰넷은 충동을 촉진시키는 알림, "좋아요" 버튼, 또는 점수 같은 개념이 없는, 느리고 인간다운 디지털 마을입니다.
스몰넷은 최소한 양의 리소스를 쓰도록 하기 때문에 접근도가 높고 비교적으로 친환경적입니다. 사용자의 행동을 유도하기 위한 축적 기술과 같은 웹의 악기능을 전면 반대한 스몰넷은 가볍고 조용해진 만큼 보다 윤리적이며 인간적인 디지털 서식지가 되었다고 볼 수 있습니다.
스몰넷에 대하여 더 알아보고 싶다면 스몰넷에 대한 spring님의 비공식 성명서를 참고하세요:
spring님의 "The Small Internet" (고퍼 링크)
스몰 스페이스에 올린 글은 동시에 웹, 고퍼, 그리고 제미니로 공유됩니다. 스몰 스페이스에서 만드는 블로그는 플로그(phlog) 또는 젬로그(gemlog)이기도 합니다. (블로그이라는 말이 "weblog"의 준말인 것처럼 플로그는 고퍼로그의 준말, 젬로그는 제미니로그의 준말입니다.) 스몰 스페이스에서 만드는 블로그는 모두 세 개의 URL로 접속 가능합니다:
그리고 스몰 스페이스는 사용자 지정 도메인도 환영합니다. 즉, 도메인을 소유한다면 스몰 스페이스 블로그의 주소로 쓸 수 있는 겁니다. 스몰 스페이스에 도메인을 가져올 경우에는 블로그의 URL이 이렇게 생깁니다:
(참고로 고퍼의 특성 상, 한 서버에 여러 개의 도메인을 동시에 서브하기 불가능하기 때문에 도메인을 가져올 때에도 고퍼 URL은 smol.space 도메인으로 되어야 합니다.)
스몰 스페이스에서는 포스트 쓰기, 페이지 만들기 등의 블로그 관리가 웹을 통해 하는 것이지만 고퍼나 제미니의 버전을 관람하려면 고퍼/제미니 클라이언트(브라우저)가 따로 필요합니다. 고퍼와 제미니의 미니멀한 특성 덕분에 클라이언트의 종류가 너무나 많음으로 선택권이 있습니다.
Lagrange BETA (iOS TestFlight; 고퍼/제미니)
웹 프록시를 통해 이미 쓰고 계신 웹 브라우저에서 제미니/고퍼를 구경할 수 있습니다:
Awesome Gemini (더 많은 클라이언트 구경해보세요)
스몰 스페이스에서 모든 글은 젬텍스트로 씁니다. 포스트 올릴 때, 스몰 스페이스 서버는 젬텍스트를 HTML(웹 버전) 및 고퍼맵(고퍼버전)으로 변환해줍니다. 젬텍스는 제미니 프로토콜의 고유 구문이며 일부러 미니멀하게 설계되었습니다:
# 제1단 제목 ## 제2단 제목 ### 제3단 제목
간단하죠? 젬텍스트와 제미니는 무엇보다 단순함을 지향하기 때문에 제목의 단계가 3단까지만 됩니다. 목록의 구문도 아주 간단합니다--목록에는 단계(깊이)가 없습니다:
텍스트 아트, 코드, 시 그리고 간격과 문자가 그대로 표시되어야 될 때에는 평문 구문을 쓰세요:
``` 평문 구문 사이에 있는 모든 텍스트는 그대로 표시됩니다. ```
그 다음에, 인용문 구문이 있습니다:
> 子曰: 스몰 스페이스는 살맛난다오
마지막으로, 링크 구문이 있습니다. 젬텍스트에서는 링크가 따로 따로 한줄씩 써야 합니다. 즉, 문단의 다른 텍스트 속에 링크가 불가능합니다:
=> https://smol.space 이것은 링크입니다. => gemini://smol.space 이것은 제미니 링크입니다. => //smol.space 이것은 scheme이 없는 링크입니다. => /manual 이것은 상대 링크입니다.
http, gopher, gemini 등으로 시작되는 URL의 scheme은 자원에 접근할 방법인 프로토콜을 정의합니다. Scheme이 포함된 링크는 scheme이 정하는 프로토콜을 통해서만 접속이 가능합니다. 예를 들면, http 전용 웹 브라우저를 통해 스몰 스페이스에 접속한 채로 제미니(gemini) 링크를 클리크하여도 접속이 실패할 겁니다. 아래의 링크는 각 다른 프로토콜로 같은 주소에 링크합니다. 한 번 접속 시도해보세요:
반면에, scheme이 없는 링크("//"로 시작되는 링크)는 클라이언트 또는 브라우저가 이미 접속되어 있는 프로토콜을 통해 링크의 자원에 접근하도록 유도합니다. 예를 들면, 제미니를 통해 스몰 스페이스에 접속한 상태로 scheme 없는 링크를 클리크하면 계속 제미니를 통해 링크의 대상 주소로 이동합니다:
그래서 스몰 스페이스에 공유된 포스트, 페이지, 파일 등에 링크할 때에는 scheme 없는 형식의 링크를 쓰는 것을 권장합니다. 스몰 스페이스의 모든 내용은 http, gopher, gemini로 공유되기 때문에 scheme이 없는 링크가 방문자가 선호하는 프로토콜을 통해 그 내용에 접근할 수 있게 해줍니다.
마지막으로, 상대 링크는 (스몰 스페이스의 경우에) 자신의 블로그 내용에 링크할 때 쓰는 형식입니다. 블로그 포스트나 페이지에서 자신의 다른 포스트, 페이지, 파일 등을 링크할 때에는 상대 링크의 형식이 제일 간편하고 접근도가 높겠습니다. (위의 예시를 참고하세요.)
쓰고 올리는 포스트는 블로그 포스트 모록 및 스몰 누리에 자동적으로 기록됩니다. 새로운 포스트를 쓸 때에는 제목, 슬러그, 그리고 포스트 본문이 필요합니다:
스몰 누리는 스몰 스페이스 회원들이 공유하는 포스트가 모두 기록되는 페이지입니다. 거기서 다른 이웃의 블로그와 글을 뒤져볼 수 있고 포스팅으로 이웃의 글에 대답할 수도 있습니다.
페이지는 포스트처럼 포스트 목록과 스몰 누리에 자동적으로 올려지지 않습니다. 페이지는 임의 용도의 문서입니다: 프로젝트나 캠페인 홈페이지, 즐겨찾는 스몰넷 링크 목록, 자기소개 등의 목적으로 모두 페이지를 만들 수 있습니다.
로그인한 상태로 "페이지"로 이동한 다음 "새 페이지"를 클리크하시면 "새 페이지" 폼이 생성됩니다. 여기서 슬러그 그리고 페이지 본문이 입력가능합니다. 모두 작성한 다음에 확인 버튼을 누르시면 페이지가 공유되지만 블로그 홈페이지에 자동적으로 뜨진 않기 때문에 어디에서 그 페이지에 링크해야 합니다. 다른 페이지나 포스트에서 당연히 링크를 쓸 수 있으며 블로그 홈페이지, 포스트 목록의 머리말이나 꼬리말에 링크 또는 다른 내용을 마음대로 짚어넣을 수도 있습니다. 스몰 스페이스에서 만드는 모든 페이지, 포스트, 파일 등은 "상대 링크" 형식으로 링크 가능합니다:
=> /about 나에 대하여 => /links 자주 방문하는 스몰넷 페이지들 => /self-portrait.jpg 자화상
포스트와 포스트 목록의 구조는 다음과 같습니다:
+------------+ | | 머리말은 제목, 글씨, 이미지, | header | 링크 등을 마음대로 짚어넣는 | | 영역입니다. +------------+ | | | | 포스트 내용/목른은 body 영역에 자동적으로 | body | 기록됩니다. 이 영역은 스몰 스페이스 | | 서버가 관리하는 부분입니다. | | +------------+ | | 꼬리말은 머리말과 마찬가지로 마음대로 | footer | 쓰는 공간입니다. | | +------------+
머리말과 꼬리말 관리는 "설정" 페이지에서 가능합니다. 포스트와 페이지처럼 머리말과 꼬리말도 젬텍스트로 쓰는 것이며 그 구성은 상상하기 나름입니다. 영감이 필요한다면 아래와 같은 내용이 머리말이나 꼬리말에 흔히 들어갑니다:
자신의 블로그에 접속하면 기본적으로 포스트 목록이 나오게 되어 있습니다. 그러나 "홈"으로 이동하면 블로그 홈 페이지를 따로 만들 수 있습니다. 홈 페이지를 따로 만들면 블로그의 주소에 접속할 때 포스트 목록말고 홈 페이지가 뜨게 됩니다. 그래서 홈 페이지를 따로 만들 때 반드시 거기서 포스트 목록을 링크하세요! 홈 페이지가 만들어진 블로그의 포스트 목록은 /posts로 자리 바꿉니다. 이런 식으로 링크 써보세요:
=> /posts 포스트 목록 => https://<벌명>.smol.space/posts 나의 블로그
페이지는 블로그 홈페이지에서 공유되지 않기 때문에 새 포스트를 쓸 때 임시 보관함으로 사용할 수 있습니다. 다른 페이지와 쉽게 구분할 수 있게 임시적으로 보관할 페이지의 슬러그가 "draft-"로 시작하게 하는 방법이 편리합니다. 마무리가 됐을 때, 포스트 폼에 복사하고 공유한 다음에 임시 페이지를 삭제하면 됩니다.
최대 100MB 업로드 용량이 있습니다 (더 필요하면 관리자를 연락하세요^^). "파일"에서 파일을 업로드한 다음에 젬텍스로 링크하시면 됩니다:
=> link-to-my-image.png
스몰 스페이스는 어둡고 밝은 두 가지의 CSS 테마가 적용되어 있습니다. 블로그의 웹 버전의 모습을 취향에 맞추고 싶다면 "설정" 에서 블로그 또는 UI의 테마를 설정 가능합니다. CSS를 직접 입력하거나 외부 스타일 시트를 지정할 수 있습니다. 이미 만들어진 스타일 시트를 찾는다면 한번 cssbed 구경해보세요:
cssbed의 스타일 시트들은 비교적으로 미니멀하고 수정이 쉽습니다. 거기서 마음에 드는 것이 없거나 직접 CSS를 쓰는 데 도움이 필요하면 언제나 관리자를 연락하세요!
모든 블로그 포스트는 자동적으로 atom 피드에 추가됩니다. 누구나 자신의 블로그를 구독할 수 있게 해줍니다. 스몰 스페이스는 세 가지의 피드를 관리해줍니다 (웹, 고퍼, 그리고 제미니):
https://<별명>.smol.space/atom.xml gemini://<별명>.smol.space/atom.xml gopher://smol.space/<별명>/0/atom.xml
포스트 목록이나 홈 페이지 꼬리말에서 흔히 피드 링크를 포함합니다.
피드에 링크할 때 scheme이 없는 링크 하나, 고퍼 링크 하나로 충분합니다:
=> //atom.xml => gopher://smol.space/<별명>/0/atom.xml
웹하고 제미니는 같은 scheme이 없는 링크를 쓸 수 있는 반면에 고퍼의 특성 상 따로 피드 링크를 써야 합니다 :)
도메인을 소유한다면 스몰 스페이스에서 사용 가능합니다. 도메인 등록하면 위에서 설명한 것처럼 스몰 스페이스에서 관리하는 블로그가 자신의 도메인으로 접속이 가능해집니다. 도메인의 설정에서 스몰 스페이스의 IP조소(172.104.102.14)로 된 A Record를 작성한 다음에 "설정" > "도메인"에서 도메인을 입력하시면 끝입니다. 도움이 필요하면 관리자를 연락주세요 :)
"설정" > "내보내기"에서 모든 포스트를 tar.gz 파일로 내보낼 수 있습니다.
"설정" > "회원탈퇴"에서 계정을 삭제할 수 있습니다. 복원이 불가능하니 유의하시길 바랍니다!
비밀번호를 잊거나 별명을 바꾸고 싶을 경우에 관리자에게 직접 도움을 요청하세요: mieum골뱅이smol.space
스몰 스페이스는 smolpub이라는 스몰넷 서버 소프트웨어를 사용하고 있으며 m15o님이 주로 개발하는 겁니다. 스몰 스페이스 관리자인 미음이 소스 코드를 조금씩 재구성하면서 한글로 번역합니다. smolpub은 자유-오픈 소스 소프트웨어입니다.
��몰 스페이스는 미국 회사인 Linode가 소유한 저자원의 VPS에서 호스팅되고 있으며 서버 자체는 일본에 있습니다. 나중에 국내에 위치한 저전력 서버로 옮길 계획이 있습니다.
지금은 기부할 방법이 마련되어 있지 않습니다. 스몰 스페이스를 운영하는 데 비용이 많이 들지는 않지만 사용자의 도움으로 더 나은 서비스가 될 수도 있습니다. 나중에 기부할 방법이 준비되면 공지하겠습니다. 그 전에도 사랑을 베풀고 싶다면 smolpub 소프트웨어의 개발자인 m15o님에게 커피 한 잔 쏴주는 걸 고려해보세요 ^^
m15o님께 커피 한 잔으로 고마운 마음을 표현하세요 :)
스몰 스페이스는 개인정보를 따로 수집하지 않고 누구에게도 절대 공급하지 않습니다. 접속 오류가 생겼을 때에만 서버가 IP주소를 기록하지만 2주 이내 모두 삭제됩니다. 그러므로 비밀번호를 잊었을 때 본인 인증이 안 되어서 복구하는 데 어려움이 있을 순 있습니다. 쿠키나 다른 사용자 축적 기술을 절대 사용하지 않습니다.
스몰 스페이스 회원들은 다음과 같은 금지 사항에 거스리지 않는 한 내용이나 주제에 관한 제한 없이 마음대로 글을 쓰고 메디아 콘텐츠를 올릴 수 있습니다:
마지막 규정은 가치 판단이긴 합니다. 스몰 스페이스에서는 검열을 하고 싶지 않으나 편협성을 낙인하는 통로가 되지 않을 겁니다. 그래서: don't be an asshole.
이 규칙에 위반하는 행동 또는 내용을 신고하세요: abuse골뱅이smol.space