Attached image

GeekNews 에 소개하길 잘했네요. ㅎㅎ

0 0 173 2024-05-23

TSBOARD를 GeekNews(https://news.hada.io/topic?id=14914#cid25515)에

소개한 이후 생각보다 많은 관심과 의견들을 들을 수 있었습니다!


개발자로서 가장 기쁜 순간이라고 하면 당연히 다른 개발자분들이 프로젝트에 대해서 관심을 표해 주시고

이것 저것 물어봐 주시는 게 아닐까 싶은데, 감사할 따름입니다. 놓쳤던 부분들을 다시 상기할 수 있었고,

보완해야 할 부분들도 점검 받을 수 있어 기뻤습니다. ㅎㅎ


GeekNews에서 받은 피드백들을 바탕으로 다음 버전 업데이트를 좀 더 재미나게 준비해 나갈 수 있을 것 같습니다.

아직 타입스크립트 기반으로 작성된 게시판 프로그램이 없었던 만큼, 앞으로 나타날 여러 프로젝트들에

부끄럽지 않도록 기초를 다지고, 이어서 제가 쓰고 싶고 다른 분들에게도 쓰고 싶은 그런 커뮤니티 빌더로 만들어 나가겠습니다!


참, GeekNews 댓글 중에 TSBOARD가 사용하고 있는 Bun 런타임에 대한 이야기가 나와서 제가 답글을 남겼었는데요,

아래에도 인용해서 공유해 드리고자 합니다.


GeekNews [dogtree 님]

저도 취미로 만드는 프로젝트를 bun으로 돌릴까 생각중이었는데, 가상CPU에서 동작이 제대로 안된다니 놀랍네요.


저의 답변

Bun은 저도 뭐랄까 깊게 써본 것은 아닙니다만, 쓰면서 여러 가지 의미로 놀라운 경험들을 많이 할 수 있었습니다. Node.js 에서는 당연히 되던 기능이 무슨 이유 때문인지 안되던 경험도 많았고 (그중에는 가령 폴더 생성 시 recursive: true 옵션이 지원 안되는 문제도 있었네요), 놀라울 정도로 속도에 집착하는 (그래서 제가 더 애정을 가질 수 밖에 없었던) 모습들도 많았습니다.


지금은 Bundows 라고 하던데 Windows 에서 Bun 런타임이 이제 공식 지원입니다만, 1.1 이전엔 안되어서 WSL2 상에서 돌렸어야 했었습니다. 말씀하신 가상 CPU에서의 동작은 Bun이 앞으로도 지원하지 않을 가능성이 높습니다. AVX2 명령어를 지원하지 않는 CPU를 위한 배포판 (baseline) 까지는 제공하고 있지만, 가상 CPU 미지원은 Bun 개발 언어인 Zig 의 한계인지 몰라도 여러 모로 아쉬운 상황이긴 합니다. 그냥 사용하면서 느낀 건 속도를 위해 Bun 역시 희생한 부분이 있는 것 같다, 이 정도입니다.


혹시 이 댓글을 보실 미래의 Bun 사용자분들이 계실지 몰라 조금만 더 첨언하자면, 여러 제약이 있음에도 불구하고 Bun은 매력적인 선택지입니다. 특히 웹 프레임워크로 ElysiaJS 를 선택하신다면 속도 측면에서는 적어도 아쉬울 점이 없으리라 생각하고 있습니다. 저는 다시 처음으로 돌아가서 런타임을 선택해야 하는 시점이 온다면... 조금 더 고민을 해보겠지만 결국 여러 문제에도 불구하고 Bun을 역시 선택할 것 같습니다. 처리 속도에 광적으로 집착하는거나, 이미 정답이 있는 JS 런타임 생태계에 도전하는 모습들이 뭔가 마음을 움직이더라구요. ㅎㅎㅎ


여기서 좀만 더 얘기해 보자면 (어차피 여기는 자유롭게 글 남기려고 만든 게시판이니 😆)


Bun은 정말 속도 하나만큼은 절대 어떤 런타임에도 지지 않겠다는 아주 강력한 의지를 매 릴리즈마다 보여주고 있습니다.

Node.js 대비 40배가 빠른 땡땡 함수, 뭐보다 8배 더 빠른 API 같은 표현은 일상적으로 나옵니다.


뭐랄까요, 이성적으로 생각하면 호환성 측면에서나 안정성 면에서 사실 TSBOARD 같은 게시판 프로그램은

당연히 Node.js를 선택해야 한다고 머리로는 납득을 했는데, 마음 한켠에서는 JS 생태계에 매드 맥스처럼 불지르러 나타난

이 Bun 프로젝트에 마음을 뺏겨버렸다고 해야 할까요? ㅎㅎㅎ


TSBOARD를 처음 만들기 시작했을 때, 다른 건 몰라도 서버 부담 만큼은 확실하게 줄여주고 무엇보다 빠르게 동작하는

게시판이면 좋겠다는 생각도 했었습니다. 그 때 제 마음을 마치 읽은 것처럼 Bun 이 등장하고 ElysiaJS 웹프레임워크가 나타나서

저도 어쩌다보니? Bun을 선택하게 되었고 이제는 Bun처럼 저도 약간 속도에 집착하게 되었습니다. ㅎ


혹시 상업적인 목적이나 공공기관 등 뭔가 안정성이 필요한 곳에서 JS 런타임을 쓰실 일이 있으시다면,

Bun 말고 Node.js LTS 버전을 쓰시길 추천 드립니다. 합리적인 선택이고, 당연한 선택입니다.


하지만, 만약 취미 프로젝트나 다소 도전적인 개발 스택도 허용되는 JS 프로젝트를 하시게 된다면,

마음 한켠에 JS 생태계의 매드 맥스가 꿈틀대고 있다면, Bun을 선택해 보세요. 후회하지 않으실 겁니다. 😁


tsboard
bun
javascript
typescript
runtime
node.js
매드맥스
elysiajs

시리니님

프로필

최근 댓글들