1P by GN⁺ 2일전 | ★ favorite | 댓글 1개
  • Playball은 터미널 환경에서 MLB 경기를 실시간으로 시청할 수 있게 해주는 오픈 소스 프로젝트임
  • 공식 MLB 웹사이트나 MLB.tv의 시청 방식과 달리 조용하고 코드 친화적인 환경에서 게임 상황을 확인 가능함
  • 사용자는 npx, npm, Docker 등의 방법으로 간편하게 실행할 수 있으며, 다양한 단축키와 색상 설정 옵션을 제공함
  • 애호하는 팀을 하이라이트하거나, 경기 결과와 일정, 순위 조회 등 MLB 정보 접근성이 향상됨
  • 커스터마이즈 기능이 훌륭하며, 단순한 설치 및 실행법으로 개발자와 야구 팬 모두에게 유용함

오픈 소스 프로젝트로서 Playball의 중요성

  • Playball은 터미널에서 직접 MLB 경기를 실시간으로 확인할 수 있게 해주는 경량 솔루션임
  • 기존 MLB Gameday, MLB.tv와 달리 별도의 GUI 없이 간편하고 빠른 접근성 제공
  • 개발자 또는 터미널 환경에 익숙한 사용자에게 특히 유리하며, 설정 자유도가 높음

Playball 소개

  • Playball은 터미널 환경에서 MLB 경기를 실시간으로 시청하거나 다양한 정보를 확인할 수 있도록 설계된 오픈 소스 프로젝트
  • MIT 라이선스로 배포되고 있어, 누구나 자유롭게 수정 및 활용 가능함

주요 기능 및 장점

  • 프로그램 실행만으로 현재 경기, 일정, 순위 등 MLB 정보 확인 가능
  • 공식 MLB 웹/앱 서비스를 대체하며 시끄럽지 않고 방해받지 않는 시청 환경을 구현
  • 간단한 명령 실행만으로 바로 시작 가능 (예: $ npx playball, $ playball, Docker 컨테이너 실행)
  • 빠른 인터페이스와 다양한 키보드 단축키(예: 일정/순위 전환, 특정 경기 상세 진입, 날짜 이동 등)로 효율적 사용성 제공
  • 애호 팀을 직접 지정하여 일정 및 순위에서 하이라이트 처리 지원

상세 설정 및 커스터마이즈

  • playball config 명령어로 현재 설정된 값 확인 및 세부 옵션 변경 가능
    • 예: 색상 코드(직접 Hex, 기본색, 밝은/어두운 테마 등), 좋아하는 팀 지정 (예: playball config favorites "SEA,MIL")
  • 경기, 일정, 플레이 상황, 결과 등에 각기 다른 색상을 할당하여 인터페이스를 직관적으로 구성 가능
  • 터미널 컬러 설정, 애호 팀, 점수 변화 등 다양한 시각적 커스터마이즈 지원

기술 정보 및 커뮤니티

  • JavaScript로 99.8% 구현되어 있어, 코드 수정 및 기여 용이
  • 활발한 커뮤니티와 5인의 주요 컨트리뷰터, 900개 이상의 별(star) 보유
  • 누구나 기여할 수 있는 오픈 프로젝트로, 자유로운 개발과 개선이 가능함

요약

  • Playball은 터미널 친화적인 MLB 중계 솔루션으로 다양한 환경에 맞는 시청 경험을 제공
  • 다른 MLB 시청 서비스에 비해 가볍고 빠르며, 실시간 데이터 및 커스터마이즈 기능에서 강점이 있음
  • 개발자, 야구 팬 모두가 간편하게 설치 및 활용할 수 있는 것이 큰 장점임
Hacker News 의견
  • 어떤 사람들은 실제로 경기 하나하나를 보며 모든 상황을 기록하는 일을 하고 있음. 내가 예전에 했던 일임. MLB, ESPN 같은 곳의 실시간 업데이트와 이것을 기반으로 한 다양한 서비스들이 이런 식으로 운영됨
    • 일부 팬들은 단순한 즐거움 때문에 야구 경기 상황을 기록함. 야구 점수 기록법과 관련해서는 Wikipedia 설명, Reddit의 Scorecards 커뮤니티, 그리고 점수 기록의 즐거움에 대한 글 1, 글 2을 참고할 수 있음
    • 야구를 보며 돈을 버는 게 재미있는지, 아니면 실시간 업데이트 때문에 재미가 반감되는지 궁금함
    • 나는 야구장에 갈 때 직접 경기 점수를 기록하는 걸 정말 좋아함. 직접 참여하는 느낌을 주고, 전문가 스코어러들과 내가 어디서 실수하는지 비교하는 것도 재미임. 예전에 MLB 스코어링을 했었는지 궁금하고, 지금도 경기를 보면 기록을 남기는지, 아니면 질렸는지 궁금함 :D
    • 이 일은 Sports Info Solutions라는 회사에서 함. 이 회사는 모든 경기의 플레이를 본 다음, 상대적 난이도를 평가하는 공식을 적용해 고급 통계 모델을 개발함. 일부는 자동화되었지만 아직 많은 부분이 사람의 "눈"에 의존함
    • 아주 예전에는 우리 아버지도 이 일을 했었음. 지역 마이너리그 모든 야구 경기를 취재했음. 이 앱을 보고 가장 먼저 떠오른 생각은 내가 직접 기록한 점수표가 전자적으로 채워진 버전일 것 같다는 것임. 이게 내 첫 야구 취미 중 하나였음. 점수표 예시 이미지
  • 정말 멋진 프로젝트임. 야구를 너무 좋아하고 해커 문화에서 야구를 좋아하는 사람이 많다는 것도 마음에 듦. 야구가 미국 최고의 스포츠 자리를 잃은 원인 중 하나가 구식 수익 모델 때문이었다고 읽었음(티켓 판매에만 의존). NFL은 80년대에 TV에 적극적으로 나가며 더 많은 팬을 끌어들여 현재에 이름. 최근에는 MLB도 MLB.tv, AWS StatCast 같은 스트리밍에 선제적으로 나서고 있음. 이런 프로젝트들이 야구 인기 회복에 도움이 되었으면 좋겠음
    • MLB와 중계사들이 도박을 너무 강하게 밀어붙이고 있음. 이로 인해 스포츠가 오히려 더 독성 있는 환경으로 변하고 있음
    • 스트리밍이 오히려 야구를 안 보게 만든다는 생각임. 우리 지역 팀의 DTC 스트리밍 패키지가 월 20달러임. 야구는 퇴근하고 그냥 틀어놓고 보기 좋은 스포츠인데, 20달러 가치가 없음. 그리고 이 가격 때문에 어린이들 야구 입문에도 심각한 악영향이 있다고 생각함. 내가 야구에 빠진 이유는 아버지가 퇴근 후 OTA TV로 경기를 틀어줘서였음. 이 비용을 지불하지 않는 한 아이들이 어떻게 스포츠에 관심을 가질 수 있는지 모르겠음. 엄청난 파급 효과임. 지역 스포츠 네트워크(RSN)들이 대부분의 지역 야구 경기 중계를 맡아 왔는데(mlb.tv는 지역에서는 블랙아웃), 스트리밍에 베팅하다가 엄청난 금전적 손실을 봄[1]. 그래서 남은 충성 팬들에게 터무니없는 가격을 요구했음. 이미 YoutubeTv에 월 82달러를 내고 있어서 거기에 안 나오면 그냥 안 보고 경기장도 덜 가고 지역 팀에도 신경을 안 쓰게 됨. [1] Bally Sports (Diamond Sports Group) 2023 파산
    • 사람들이 지루하다고 하는 이유를 이해함. 나도 지금은 거의 안 보고 가끔 보면 예전처럼 지루하게 느껴지기도 함. 하지만 어느 정도 노출이 필요함. 경기, 시리즈, 시즌 등에서 자연스럽게 드러나는 서사가 정말 특별함
    • 해외에서 미국 스포츠 여러 종목을 즐기는 팬으로서 MLB의 스트리밍이 훨씬 진보적임. 집에서 공식 스트리밍 서비스로 전 경기를 실시간, 다시 보기 모두 가능함. 이닝 간 건너뛰기, TV/라디오 해설 선택, PC-TV-폰-웹 자유롭게 기기 이동도 다 지원함. Vision Pro용 실험 앱도 있었음. NBA도 요즘 이 수준에 근접해 감. NFL도 괜찮았는데, 자체 스트리밍 권리를 전 세계적으로 타 방송사에 팔기 시작해서 기존의 괜찮던 직영 서비스에서 형편없는 서드파티 서비스로 옮겨야 했음
    • 내가 원하는 것은 이보다 더 진보한 서비스임. 오스틴에 살면서도 Astros 경기를 보기 힘듦. 굳이 여섯 시간 왕복 운전을 해서 현장에 갈 이유가 없는데, 특정 케이블 채널을 보려고 싫은 회사 서비스도 써야 함. 연간 300달러 정도라면 스트리밍 서비스에 기꺼이 내고 전 경기를 보고 싶음
  • plaintextsports를 이미 야구 용도로 잘 쓰고 있음. 야구는 다른 스포츠에 비해 텍스트(또는 라디오)로 아주 잘 전달되는 경기임. 터미널로도 가져오는 게 멋짐
    • 야구 스코어링 관례가 꼭 야구 경기를 위한 DSL(도메인 특화 언어) 같다는 걸 이제야 깨달음. 경기 내용을 표준화된 방식으로 표현하는 법이 확립되어 있음. 프로그램에서 어떻게 활용되고 있는지 궁금함. 예시 이닝: K | 6-3 | BB | 2B (RBI, R1-H) | F8
  • 꽤 멋진 프로젝트임. 다만 축구(football) 버전이거나 ascii 아트로 애니메이션처럼 나왔으면 더 좋았을 것 같음. 예전 인텔리비전 베이스볼 게임처럼 말임. 데이터 소스를 이렇게 직접 폴링하는 게 괜찮은지 궁금하고, 혹시 차단을 시도하진 않을지 걱정임
  • 좋음. MLB는 이런 데이터를 접근하기 위한 꽤 좋은 API를 가지고 있음. ("watch"라는 말을 완전히 다르게 해석했었다는 것도 언급하고 싶음)
    • 실제로 features 폴더 파일들에서 statsapi.mlb.com 엔드포인트를 볼 수 있음
    • (프로필 소개에) “난 미네소타 출신 조쉬”라고 되어 있는데, 더 이상의 설명이 필요 없을 것 같음
    • 그건 상당히 절제된 표현임
  • 특정 팀 팬들이 이런 텍스트 설명만으로 경기를 머릿속에서 재구성하는 모습을 떠올리게 됨. 마치 블라인드 체스를 두는 사람들처럼 말임. 블라인드 체스 설명
    • 실제 야구 데이터를 역으로 가지고 Stratomatic 카드 선택과 주사위 결과를 재생성할 수 있다면 정말 웃길 것 같음
  • 이런 프로젝트가 너무 마음에 듦. 예전부터 있어야 했던 것이 지금 나온 느낌임. 정말 잘 만든 작품임
  • 이 분야에 관심 있는 사람들을 위해 몇 가지 MLB TUI 프로그램을 더 추천하고 싶음.
    mlbt: https://github.com/mlb-rs/mlbt
    gomlb(내가 직접 만든): https://github.com/AxBolduc/gomlb
    NBA용 NBA CLI(https://github.com/dylantientcheu/nbacli)도 알지만, 최근에는 NBA API 변경으로 제대로 동작하지 않는 상태였음
    • MLBT 정말 좋음. playball보다 낫다고 생각함. 세컨드 스크린으로 항상 켜 두기 아주 좋음
  • 참고로 다음 관련 글들도 있음: