C.W.K.
Stream
Lesson 03 of 04 · published

왜 VS Code 나 Obsidian 을 fork 안 하나

~11 min · fork, vscode, monaco, obsidian

Level 0식은 초고
0 XP0/33 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"Cursor 는 그 chrome 을 원해서 코드 IDE 를 fork 해. Rekindle 은 거기서 도망쳐. 집이 아니라 심장을 빌려."

VS Code fork (Cursor 의 길)

'AI 에디터' 로 가는 뻔한 지름길은 Cursor 처럼 VS Code 를 fork 하는 거야. Cursor 한텐 맞아 — Cursor 는 코드 IDE 를 짓고 그 chrome 전부를 원하니까. Rekindle 한텐 정확히 틀려, 세 이유로. VS Code 는 Sublime 이던 집의 대략 열 배야 — 같은 반쯤-안-원하는-기능 문제를 최대 스케일로. 그 심장은 Monaco, line/column 코드 셀 이 모델인 코드 에디터지 prose 가 아냐. 그리고 fork 는 Microsoft upstream 에 영구 rebase 세금을 져. VS Code 릴리스마다 네 변경에 화해시켜야 할 merge 야. Cursor 는 그 세금을 위한 팀이 있고, 두 명 팀은 없어.

Obsidian fork (어차피 불가능)

다른 본능은 Obsidian 을 fork 하는 거야, 너무 근접하게 맞으니까. 못 해: Obsidian 은 closed-source 야 (무료, Electron, 독점). 근데 할 수 있어도 하면 안 돼, 트랙 2 의 해제가 여기 또 와 — Obsidian 의 편집 강점은 Obsidian 게 아니라 CodeMirror 6 의 거야. Obsidian 을 fork 해서 얻을 그것은 Obsidian 자체가 빌린 레이어야. 그러니 fork 는 직접 가져올 수 있는 코어를 감싼 무거운 Electron 껍데기를 사줄 뿐이야.

집이 아니라 심장을 빌려

두 fork 다 같은 실수를 해. 하나 얻으려고 통째를 가져가는 거. Rekindle 이 원하는 방은 편집 코어고, 깔끔한 MIT 라이브러리로 구할 수 있어. 그래서 Rekindle 은 심장 (CodeMirror 6) 을 빌리고 자기 가벼운 몸 (Tauri) 을 지어. 남의 애플리케이션 전체와 그 유지보수 짐을 상속하는 대신.

VS Code fork    코드 IDE + Monaco (코드 모델) + MS rebase 세금 상속
Obsidian fork   불가능 (closed) — 가능해도 어차피 CM6 를 Electron 으로 감쌈
CM6 빌리기      딱 편집 코어만, 네 가벼운 껍데기에

# 집 말고 방을 가져. 방은 MIT 고 이식 가능해.

Code

집 말고 방을 가져·text
길              실제로 얻는 것
--------------  ---------------------------------------------------
VS Code fork    코드 IDE + Monaco (코드/line-column 모델) +
                영구적인 Microsoft-upstream rebase 세금
Obsidian fork   불가능 (closed source); 가능해도, 직접 가져올 CM6 를
                Electron 으로 감싸는 꼴
CM6 빌리기      딱 편집 코어, MIT, 네 Tauri 껍데기에

# fork 는 방 하나 얻으려고 집 통째를 가져가.
# Rekindle 이 원하는 방 (편집 코어) 은 혼자서도 이식 가능해.

External links

Exercise

'이거 같은데 다르게' 짓고 싶은 앱을 떠올려. 물어봐. 앱 전체가 필요해, 아니면 그 안 서브시스템 하나가? 그다음 그 서브시스템이 독립 라이브러리로 있는지 찾아. 있으면 앱 fork 는 거의 확실히 틀린 수야 — 방 하나 얻으려 집을 상속하고, 남의 릴리스를 평생 merge 하는 거니까.
Hint
대부분의 '나 X 를 fork 할까?' 논쟁을 녹이는 질문: 내가 실제로 원하는 X 의 그 한 부분이 뭐고, 그 부분이 혼자 구할 수 있어? 그렇다면 그 부분을 빌려. fork 는 진짜로 집 전체가 필요할 때를 위한 거야.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.