Harper: Rust로 제작된 무료 개인정보 보호 Grammarly 대체 프로그램

BBetter Stack
컴퓨터/소프트웨어어학(외국어)

스크립트

00:00:00Grammarly는 연간 140달러가 넘는 비용이 들고 자체 문서에 따르면 사용자가 입력하는 모든 내용이
00:00:06서버로 전송되어 저장됩니다. 직설적으로 말해 돈 내고 쓰는 키로거인 셈이죠.
00:00:11이것은 Harper입니다. Rust로 작성되었으며 Wi-Fi를 꺼도 작동하는 무료 문법 검사기입니다.
00:00:17너무 기뻐하기 전에 들으세요. "what's going on? I'm Josh"라고 입력해 봤는데 아무런 반응이 없었습니다.
00:00:23잠시 집중해 주세요. 이 두 가지 사실 모두 핵심적인 의미를 담고 있으니까요.
00:00:30자, Harper에서 가장 흥미로운 점은 바로 결여된 요소입니다. AI가
00:00:35전혀 들어있지 않습니다. 규칙 기반 엔진이죠. 텍스트는 단어별로 태그가 지정된 다음
00:00:41직접 작성된 약 287개의 Rust 규칙을 거치게 됩니다. 규칙은 결정론적입니다. 동일한 문장은 항상 동일한 판정을 받죠.
00:00:48Grammarly 사용자들이 계속 불평하는 내용과 비교해 보세요. 9번째 줄에서는 쉼표를 지우라고 하더니
00:00:5310번째 줄에서는 다시 넣으라고 합니다. 그것은 머신러닝 모델이
00:00:58작성에 대한 말을 계속 바꾸는 것입니다. Harper는 말을 바꾸지 않습니다. 그리고 아무것도 기기 밖으로
00:01:04유출되지 않기 때문에 즉각적입니다. 검사당 10밀리초 미만이라고 주장하죠. 실제로 구동해 보기 전에
00:01:10한 가지 더 말씀드리자면, 2024년 11월부터 Harper는 WordPress를 만든 Automattic의 소유가 되었습니다.
00:01:15개발자를 고용하고 모든 라이선스를 Apache 2.0으로 유지했죠. 잠시 기억해 두세요, 곧 다시 이야기할 테니까요.
00:01:21작업 흐름을 빠르게 해주는 코딩 도구를 좋아하신다면 구독해 주세요. 영상을
00:01:26꾸준히 올리고 있습니다. 이제 이걸 보세요. "brew install harper"를 실행하거나 VS Code 확장 프로그램을 클릭 한 번으로 설치할 수 있습니다.
00:01:33Apple Silicon에 최적화되어 있습니다. 이제 Wi-Fi를 꺼도 됩니다. 완전히 오프라인 상태로 전환할 수 있죠. 실행한 상태에서
00:01:38"I ate an pineapple."을 입력하면 즉시 경고가 뜹니다. "I need
00:01:45the the from the store"라고 입력하면 "the the" 부분에 경고가 표시됩니다. "your point is mute"처럼 철자를 틀리게 적으면
00:01:54대안을 제안합니다. 이 상관관계는 말 그대로 소스 코드에 직접 작성된 규칙입니다. 확인해 봤거든요.
00:02:01"I don't think it's too late."에 몇 가지 철자 오류와 잘못된 문장 부호를 넣었습니다. 문장을
00:02:06마치기도 전에 세 곳에 밑줄이 그어집니다. 로딩 아이콘도, 클라우드도 없죠. 기다릴 필요가 전혀 없습니다. 그리고
00:02:12개발 과정에서 도움이 될 만한 부분이 있습니다. TypeScript 파일을 열고 주석을 작성해 보겠습니다.
00:02:18"receive the payload"를 적어볼 텐데, 이번에도 철자를 좀 틀리게 썼습니다. Harper는 주석 내부의 두 오타를 모두 잡아냅니다.
00:02:25주변에 있는 실제 코드 줄은 전부 무시하면서 말이죠. 우리가 작성하는 거의 모든 언어에서
00:02:31이런 방식으로 동작합니다. Harper는 단일 설정 언어 서버를 제공하므로 Neovim, Zed, Helix, Emacs에
00:02:37설정 한 줄이면 연동됩니다. 20만 회 다운로드된 Obsidian 플러그인은 노트를 검사하며 코드 블록은 건너뜁니다.
00:02:45Grammarly가 자주 실수를 유발하는 바로 그 부분이죠. 전체 엔진이 WebAssembly로 컴파일됩니다.
00:02:52따라서 writewithharper.com은 브라우저 탭 내에서 전체 검사기를 실행합니다. 설치 없이 체험해 볼 수 있는 방법이죠.
00:02:59이렇게 생각해 보세요. Grammarly가 사용자의 타이핑을 지켜보는 앱이라면, Harper는 사용자의 툴체인에 설치하는 컴포넌트입니다.
00:03:04설치하는 컴포넌트입니다. 그렇다면 이 둘의 실질적인 차이는 무엇일까요? Grammarly의 머신러닝은 Harper가 시도조차
00:03:10하지 않는 작업들을 수행합니다. 톤 조정, 명확성 코칭, 전체 문장 재작성 같은 것들요. 자체 호스팅이 가능한 LanguageTool이 가장 가까운 무료
00:03:17경쟁 모델입니다. 하지만 아무도 읽지 않는 세부 사항이 있습니다. 제대로 된 문맥 검사를 하려면 16GB의 N-gram
00:03:24데이터 세트와 이에 걸맞은 RAM이 필요합니다. 그걸 생략하면 뻔한 오류도 놓친다는 걸 Hacker News 사용자들이 발견했죠.
00:03:31이제 기본 한계선이 어디서 끝나는지 정확히 아셔야 합니다. 여기에 문장을 적어보겠습니다.
00:03:35"me and Sally went to have seen the duck's cousin." 오류가 존재하지만 표시된 오류는 0개입니다. 완벽히 깨끗해 보이죠?
00:03:43"What your name?", "What day today?" 역시 오류 없음으로 나옵니다. 이것이 규칙의 상한선입니다. 문장이 잘못된 방식과
00:03:51일치하는 규칙이 없다면 아무것도 작동하지 않습니다. 287개의 모듈 대 LanguageTool의
00:03:566,000개 규칙, 그리고 Grammarly의 모델들. 커버리지는 개인정보 보호 및 속도와 맞바꾸는 요소입니다.
00:04:02그리고 이 문제는 반대 방향으로도 작동합니다. 이 저장소의 240개 이슈가 오탐(false positive)에 대해 언급하고 있습니다. 리뷰어를 위한
00:04:09"Cloudflare"라는 단어에 경고를 띄우기도 했죠. 수정 사항이 매주 배포되고는 있지만 몇몇 문제에 부딪힐 것입니다. 속도 및 메모리 지표는
00:04:15제공업체 자체 수치입니다. 벤치마크는 아직 존재하지 않습니다. 그리고 한 NeoVim 사용자는
00:04:21언어 서버의 RAM 사용량이 1GB를 넘는다고 측정한 바 있습니다. 또한 영어만 지원합니다. 5개 방언 외에는 없습니다.
00:04:29그리고 앞서 언급한 Automattic건의 경우, 2년간의 WordPress 엔진 관련 논란 이후
00:04:33Hacker News의 일부 개발자들은 Matt Mullenweg가 관리하는 것은 전혀 채택하지 않겠다고 단언했습니다.
00:04:39타당한 우려입니다. 톤 다듬기를 위해 Grammarly에 비용을 지불하고 있다면 계속 지불하세요. Harper가 그걸
00:04:45대체해주지는 못합니다. 에디터 내부에서 코드 주석, 커밋 메시지, 문서, 노트를 검사할
00:04:50무료이고 사적인 즉각적인 검사기를 원한다면 이만한 게 없습니다. 아주 훌륭한 팁이죠. 제가 본
00:04:56전체 Hacker News 스레드에서 가장 마음에 들었던 댓글은 수년간 Grammarly 비용을 지불해 온 한 난독증 작가의 글이었습니다.
00:05:03그는 앱이 단순하고 규칙 기반이었던 시절에 실제로 더 잘 작동했었다고 말했습니다.
00:05:07에디터에서 키를 누를 때마다 도구가 작동할 때, 예측 가능성은 타협점이 아니라
00:05:12핵심 기능 그 자체입니다. Harper는 무료이며, 1~2주마다 업데이트되고, Grammarly가
00:05:17절대 들여다보지 못할 영역을 정확히 처리합니다. 바로 여러분의 주석과 커밋입니다. 지금까지 제공된 최고의 개인정보 보호 기능은
00:05:23설정 토글이나 정책 페이지가 아닙니다. 애초에 사용자의 데이터를 필요로 하지 않는 소프트웨어 그 자체입니다.
00:05:29이와 같은 코딩 팁과 트릭이 마음에 드셨다면 BetterStack 채널을 꼭 구독해 주세요.
00:05:33다음 영상에서 뵙겠습니다.

핵심 요약

Harper는 AI나 외부 서버 연결 없이 287개의 결정론적 Rust 규칙만으로 오프라인에서 10밀리초 미만으로 코드 주석과 문서를 검사하는 무료 개인정보 보호 문법 검사기입니다.

하이라이트

  • Grammarly는 연간 140달러 이상의 비용이 들며 사용자가 입력하는 모든 내용을 외부 서버로 전송해 저장합니다.

  • Rust 기반의 문법 검사기 Harper는 규칙 기반 엔진으로 동작하여 Wi-Fi가 꺼진 오프라인 상태에서도 검사당 10밀리초 미만으로 오류를 찾아냅니다.

  • Harper는 287개의 모듈 규칙을 활용해 개발 도구(Neovim, Zed, Helix, Emacs) 및 Obsidian 등에서 코드 주석과 문서를 정확히 검사합니다.

  • LanguageTool은 문맥 검사를 위해 16GB의 N-gram 데이터세트와 대용량 RAM이 필요한 반면, Harper는 데이터 수집이나 외부 전송 없이 동작합니다.

  • Harper는 2024년 11월부터 Automattic 소유가 되었으며 모든 소스코드는 Apache 2.0 라이선스로 유지됩니다.

타임라인

Grammarly의 개인정보 문제와 Harper의 등장

  • Grammarly는 연간 140달러 이상의 비용을 요구하며 입력 데이터를 외부 서버에 저장합니다.
  • Harper는 AI 대신 약 287개의 작성된 Rust 규칙으로 구동하는 오프라인 문법 검사기입니다.
  • 규칙 기반 엔진은 결정론적이어서 동일한 문장에 항상 동일한 검사 결과를 반환합니다.

머신러닝 기반 검사기는 동일한 쉼표 위치에 대해 번복되는 판정을 내리기 쉽습니다. 반면 Harper는 모든 검사를 기기 내부에서 실행하여 10밀리초 미만의 반응 속도를 유지합니다. 또한 WordPress 개발사인 Automattic이 인수 후 개발자를 고용하고 Apache 2.0 Open Source 라이선스를 유지하고 있습니다.

설치 방법 및 에디터·코드 주석 지원

  • Homebrew 명령어나 VS Code 확장 프로그램을 통해 손쉽게 설치가 가능합니다.
  • 개발 환경에서 코드 본문은 무시하고 주석 내부의 오타만 정확히 포착합니다.
  • 단일 언어 서버(LSP) 및 WebAssembly 지원으로 다양한 에디터와 웹 브라우저에서 동작합니다.

Wi-Fi를 차단한 오프라인 환경에서도 철자 오류 및 중복 단어를 즉각 감지합니다. TypeScript 파일 작성 시 코드 영역을 제쳐두고 주석 내의 철자 오류만 분리해 잡아냅니다. Neovim, Zed, Helix, Emacs는 물론 20만 회 이상 다운로드된 Obsidian 플러그인과 브라우저(writewithharper.com)에서도 그대로 구동됩니다.

한계점과 경쟁 도구 비교

  • Harper는 톤 조정이나 문장 재작성 같은 고급 AI 기능을 제공하지 않습니다.
  • LanguageTool은 문맥 검사에 16GB N-gram 데이터세트와 대용량 RAM을 요구합니다.
  • 복잡한 문법 오류를 놓치거나 오탐(false positive)을 발생하는 한계가 존재합니다.

287개의 규칙 모듈만으로는 커버리지에 한계가 있어 문법적으로 틀린 일부 복잡한 문장을 오류 없이 통과시킵니다. 오픈소스 저장소에는 Cloudflare 같은 단어를 오탐하는 이슈가 보고되어 있습니다. Neovim 환경에서 언어 서버 RAM 사용량이 1GB를 초과하는 사례가 존재하며, 영어 이외의 언어는 지원하지 않습니다.

개인정보 보호와 예측 가능성의 가치

  • 문장 재작성과 톤 조정을 원한다면 기존 유료 Grammarly를 계속 사용하는 것이 적합합니다.
  • 코드 주석, 커밋 메시지, 문서 검사에는 오프라인 규칙 기반 방식이 효율적입니다.
  • 최고의 개인정보 보호는 사용자 데이터를 애초에 수집하지 않는 소프트웨어 자체입니다.

규칙 기반 방식이 주는 일관성과 예측 가능성은 단순한 타협이 아니라 핵심 기능으로 작용합니다. 별도의 설정 토글이나 개인정보 처리방침 페이지보다, 네트워크 연결 없이 데이터를 내부에서만 처리하는 구조가 가장 확실한 개인정보 보호를 제공합니다.

커뮤니티 글

모든 글 보기