# Zasper - Go 언어로 개발된 현대적이고 효율적인 JupyterLab 대체제

> Clean Markdown view of GeekNews topic #18551. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=18551](https://news.hada.io/topic?id=18551)
- GeekNews Markdown: [https://news.hada.io/topic/18551.md](https://news.hada.io/topic/18551.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2025-01-03T09:55:14+09:00
- Updated: 2025-01-03T09:55:14+09:00
- Original source: [github.com/zasper-io](https://github.com/zasper-io/zasper)
- Points: 9
- Comments: 1

## Summary

Zasper는 대규모 동시성을 지원하고 최소한의 메모리 사용량과 뛰어난 속도를 제공하는 Go 언어로 개발된 IDE로, Jupyter 노트북과 같은 REPL 스타일의 데이터 애플리케이션 실행에 적합합니다. Zasper는 JupyterLab에 비해 RAM과 CPU 사용량이 4배 적으며, 로컬 머신에서 원활하게 작동하여 최대 효율성을 보장합니다. 또한, 데이터 과학자와 AI 엔지니어를 위한 강력한 IDE 생태계를 목표로 하며, 사용자 정의 데이터 앱 지원 및 기존 도구와의 통합을 용이하게 하는 등의 로드맵을 가지고 있습니다.

## Topic Body

- Zasper는 대규모 동시성을 지원하기 위해 설계된 IDE임  
  - 최소한의 메모리 사용량과 뛰어난 속도를 제공하며, 여러 동시 연결을 처리  
  - Jupyter 노트북과 같은 REPL 스타일의 데이터 애플리케이션 실행에 적합  
  - 현재 Mac에서 완전 지원되며, Linux에서는 제한적으로 지원  
- **벤치마크**  
  - Zasper는 JupyterLab에 비해 RAM과 CPU 사용량이 4배 적음.  
  - JupyterLab은 약 104.8 MB의 RAM과 0.8 CPU를 사용하지만, Zasper는 26.7 MB의 RAM과 0.2 CPU를 사용함.  
- **Zasper를 만든 이유**  
  - 시장에는 Databricks Notebooks와 Deepnote Notebooks와 같은 JupyterLab 유사 프론트엔드 도구가 있지만, 대부분 무료가 아니며 클라우드에서 작업해야 함.  
  - Zasper는 로컬 머신에서 원활하게 작동하며, 사용 가능한 자원을 효과적으로 활용하여 최대 효율성을 보장함.  
  - Go 언어는 REST, RPC, WS 프로토콜에 대한 우수한 지원을 제공하며, 동시성과 성능에서 뛰어남.  
  - Python은 I/O 중심의 비동기 작업에 적합하지만, CPU 중심 작업에서는 한계가 있음.  
- 에디터, 터미널, 런처, Jupyter 노트북, 버전 관리, 명령 팔레트, 다크 모드 등 다양한 기능 제공  
- Electron 앱과 웹 앱 두 가지 형태로 제공됨.  
- **로드맵**  
  - Zasper는 데이터 과학자와 AI 엔지니어를 위한 강력한 IDE 생태계를 목표로 하며, 향후 개발 방향은 다음과 같음:  
    - Jupyter 노트북뿐만 아니라 사용자 정의 데이터 앱 지원  
    - 기존 도구와의 통합을 용이하게 함  
    - 클라우드에서의 자체 호스팅 배포를 위한 Zasper Hub 제공

## Comments



### Comment 32912

- Author: neo
- Created: 2025-01-03T09:55:15+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=42572057) 
- Zasper의 저자는 Zasper의 Jupyter 커널 처리가 Go 코루틴으로 구축되어 JupyterLab의 Python 방식보다 우수하다고 설명함
  - Zasper는 JupyterLab보다 RAM과 CPU 사용량이 각각 1/4 수준임
  - 검색 기능 등은 아직 최적화되지 않아 느림
  - 혼자서 풀타임으로 개발 중이며, 앞으로 개선될 예정임
  - 첫 번째 초안에 대해 긍정적인 반응을 기대함

- Marimo는 Streamlit과 Jupyter의 장점을 결합한 Jupyter 대안으로 흥미로움을 자아냄

- 메모리와 CPU 사용량 감소가 실제로 의미 있는지 의문을 제기함
  - Python 코드가 더 많은 자원을 사용하기 때문에 Go의 스레딩이 얼마나 도움이 되는지 불분명함

- JupyterLab이 오래되었지만 지속적인 개발로 현대적임을 유지하고 있다는 의견이 있음

- 대안이 macOS에서만 실행되고 Linux에서는 부분적으로 지원되며, IPython만 지원하는 점을 지적함
  - Go를 사용한 성능 개선이 Electron 사용으로 상쇄된다고 언급함

- Jupyter에서 rstudio와 같은 인터페이스를 원하며, 코드 블록을 실행할 수 있는 기능이 중요하다고 설명함
  - JupyterLab의 "open console for notebook" 기능을 좋아하지만, 텍스트를 보내거나 키보드 단축키로 포커스를 전환하는 방법을 찾지 못함
  - 이러한 이유로 VSCode의 Jupyter 구현을 사용하지 않음

- UI를 위해 Wails를 고려했으면 좋겠다는 의견이 있음
  - Go로 많은 노력을 기울였는데 Electron을 사용한 점을 아쉬워함

- VSCode의 Jupyter notebook 지원과 비교하여 어떤 장점이 있는지 궁금해함

- 실행 중인 프론트엔드에서 연결을 끊고 다시 연결할 때 출력이 손실되지 않는지 궁금해함

- JupyterLab 프론트엔드를 대체하고 Jupyter 커널과의 연결을 유지하는 프로젝트로 보임
  - 이론적으로 Javascript나 다른 언어의 커널도 지원할 수 있을 것으로 보임
  - 프로젝트가 IPython 커널로만 테스트되었음을 언급하며, 향후 발전 방향에 관심을 가짐
