박준규

@curry@hackers.pub · 160 following · 74 followers

프로그래밍 언어 하스켈(Haskell) 덕질하는 계정

darcs hub
hub.darcs.net/vincent
0
0

전체 사용자 초대 족보에서 원한다면 자신의 계정을 가리는 옵션을 추가하면 좋겠다는 @saschanazKAGAMI🏳️‍🌈🏳️‍⚧️ 님의 의견에 따라, 내 계정 족보에서 숨기기 버튼을 만들었습니다. 자신의 계정을 족보에서 숨기면 목록에 항목은 보이지만 이름이나 프로필 사진, 핸들은 가려지게 됩니다.



RE: https://sekai.social/notes/a5u6zpmnn3tf06pr

Hackers' Pub의 전체 사용자 초대 족보 페이지. “내 계정 족보에서 숨기기” 버튼이 보인다. 족보에서 어떤 계정은 “숨겨진 계정”으로 표시되고 있다.

이번에는 Grok에게 커밋 메시지[1] 작성을 부탁하다가 Changelog 작성하는 문서[2] 안내를 받았다.


  1. 그동안 내가 ‘메세지’라고 적었는데 홍민희 님의 글[3]을 보고 고쳤다. ↩︎

  2. https://keepachangelog.com/ko/1.0.0/ ↩︎

  3. https://hackers.pub/@hongminhee/0195d2c5-294d-7f92-b33e-db40eec4793a ↩︎

0
0

darcs tag[1]의 도움말을 읽다가 《Producing Open Source Software》[2]라는 책을 알게 되었습니다. 혹시 이 책의 한글 번역서가 있나요? 《오픈 소스로 미래를 연마하라》(인사이트, 2019)가 약간 비슷한 내용을 다루는 것 같긴 합니다.


  1. https://gist.github.com/nattybear/6beaa578a08b0272e22c6154a606b02f ↩︎

  2. https://producingoss.com/ ↩︎

0

@curry박준규 공유해주셔서 감사합니다! 적독가는 제가 책을 잘 안사서 하핫 ReBundle은 눈여겨 보고 있습니다~ 저는 읽고 싶은 책을 발견하면 북플에다가 등록해놓기는 합니다. 꾸역 꾸역 쓰고는 있는데 소셜 기능이 참 아쉬워요.

0

@curry박준규 저는 Facebook을 안 써서 안타깝게도 댓글은 못 쓰지만… 서울숲 근처라면 튜링의 사과도 괜찮지 않을까 싶네요! 참고로 튜링의 사과는 공식 Mastodon 계정(@TuringAppleDev튜링의 사과)도 있습니다.

그나저나, 저도 참가하고 싶은데 Facebook 안 쓰는 사람도 참가 가능한가요?

0
0

crontab은 원하는대로 동작하지 않을 때가 많고 왜 안 되는지 이유를 알기도 어려웠는데 ChatGPT에게 물어 보니 source ~/.profile 넣고 해보라길래 그렇게 했더니 잘 된다.

0
0
0

얼굴인식 사진공유 카메라앱 슈티를 함께 만들 분을 찾습니다. 앱은 출시되어 있어 써보실수 있습니다. 이번달 내로 페디버스 연동을 끝내면 제가 생각한 MVP는 완성입니다. 앞으로도 개발해야할 부분들이 많고, 개중에 기술적으로 흥미로운 문제들도 다수 있습니다.

지금 2025년 상반기 투자유치를 목표로 팀 빌딩을 하고 있습니다. 관심 있으신 분, 또는 잘 모르겠지만 이야기를 나눠보고 싶은 분도 bgl@gwyng.com으로 편하게 연락주세요.

0
0

@hongminhee洪 民憙 (Hong Minhee) @parksbSimon Park 저는 액티비티펍이 이메일과 닮았다고 생각하는데 이메일에는 “전역 뷰”에 해당하는 게 없는 것 같네요. 다만 한 사용자가 여러 이메일 계정을 썬더버드 같은 이메일 클라이언트 하나로 볼 수 있는데 연합우주에도 이런 개념을 적용할 수 있을지 궁금합니다. 이미 “팔로우”가 어딘가 POP3 기능을 하는 것 같기도 하고요.

0

@hongminhee洪 民憙 (Hong Minhee) @parksbSimon Park 저는 액티비티펍이 이메일과 닮았다고 생각하는데 이메일에는 “전역 뷰”에 해당하는 게 없는 것 같네요. 다만 한 사용자가 여러 이메일 계정을 썬더버드 같은 이메일 클라이언트 하나로 볼 수 있는데 연합우주에도 이런 개념을 적용할 수 있을지 궁금합니다. 이미 “팔로우”가 어딘가 POP3 기능을 하는 것 같기도 하고요.

0

그동안(10+년;;) git이 엄청 잘만든 물건 같지는 않다고 생각하며 대충 쓰고있었는데, 요즘 branch 개념 자체가 근본적인 실수란 생각이 들기 시작했다. branch 대신에 변경의 시작과 끝, 양 끝점을 가지는 interval을 쓰는게 맞는거 같다(카테고리 이론의 작은 교훈: primitive는 양 끝점을 가지는게 좋다).

git을 쓰면 히스토리 길어진다고 squash merge 등을 하는데, (나도 하지만) 사실 기껏 만들어놓은 히스토리를 뭉개버리는 말도 안되는 동작이다. 만약 interval을 쓴다면 히스토리는 그대로 남기고 UI 단에서 fold/unfold 등을 해줄수 있을 것이다.

Darcs 등이 interval에 기초하는데, 지금은 일이 너무 바빠서 시도할 여유가 없다. 한번 숨고를 시간이 주어지면 멀쩡한 VCS를 탐색하는 시간을 가질것이다.

@bglbgl gwyng 저는 Darcs를 하스켈에 대한 빠심(?) 하나로 최근 써보고 있습니다. 마침 기여하고 싶은 패키지[1]의 저장소도 hub.darcs.net이기도 했고요.

Darcs 쓰면서 편한 점은 이미 추적(?)을 결정한 파일은 변경 사항을 커밋할 때 다시 add 하지 않아도 되고 바로 커밋[2]할 수 있다는 것입니다.

또 하나 편한 점은 파일에 여러 변경 사항이 혼재되어 있을 때 커밋을 나눠서 할 수 있다는 것입니다. 이건 제가 글재주가 부족해서 말로 설명하기 어려운데, 여러 변경 사항에 대해서 커밋을 시도할 경우 대화형으로 커밋 여부를 물어보는데 이때 원하는 변경 사항만 골라서 커밋을 하면 됩니다.

GHC[3]의 저장소가 현재는 GitLab이지만 과거에는 Darcs였었죠. 성능 이슈 때문에 이전했다고 하는데 지금은 문제가 해결됐는지 궁금하네요.


  1. https://hackage.haskell.org/package/webfinger-client ↩︎

  2. Darcs에서는 커밋에 해당하는 명령어가 레코드(record)이다. ↩︎

  3. 하스켈 컴파일러 ↩︎

0
0

높은 목표를 가진 개발자라도 결국엔 아주 사소한 동기로 움직이는거 같다.

나같은 경우엔, 완벽한 프로그래밍 언어를 만드는 것이 목표인데(가능한지는 차치하고), 완벽하다는건 나말고 다른 누군가가 같은 문제 의식을 가진다면 똑같이 그곳에 다다를 거란걸 의미한다. 그 프로그래밍 언어의 설계에서 내 마음대로 결정할수 있는 부분은 없을 것이다. 설계에서 최적의 선택지만을 택해야 완벽할테니까 말이다. 그때가선 그 선택들이 너무 자명해서, 내겐 처음부터 선택의 여지가 없었다고 느낄것이다.

그럼에도 내가 결정할 수 있을 부분이 있기는한데, 그 언어의 이름에 뜬금없이 우리집 강아지 이름을 붙인다던가 하는 것이다. 이게 그 사소한 동기다.

0
0
0
0
0
0

집에서 회사에 있는 WSL에 SSH로 접근하려고 삽질을 좀 했는데 결론만 적는다. 우선 구성은 다음 그림과 같다.

G macOS macOS Windows Windows macOS->Windows VPN WSL WSL Windows->WSL

이때 다음과 같이 하면 macOS에서 WSL에 SSH로 접근이 가능하다.

  • Windows에 SSH 서버 필요 없음
  • Windows에 netsh interface portproxy 명령어로 포트 프록시 이용
  • WSL에서 sshd_config 파일에 GatewayPorts yes 설정 필요

그리고 macOS의 Visual Studio Code에서 Remote - SSH 플러그인을 이용하면 macOS에서 쾌적하게(?) 회사 WSL에 접근해서 코딩할 수 있다.

문제가 생겼는데 이렇게 하면 다음과 같이 하독(haddock)으로 만든 라이브러리 문서를 볼 때 WSL에서 브라우저를 열 수 없다.

cabal haddock --open

이럴 때는 다음과 같은 옵션을 이용해서 문서 배포용 압축 파일을 만들고 그것을 macOS 로컬로 다운 받아 열면 된다.

cabal haddock --for-hackage

그나저나 하독이 만들어주는 문서 페이지 너무 깔끔하고 좋다.

0
0

집에서 회사에 있는 WSL에 SSH로 접근하려고 삽질을 좀 했는데 결론만 적는다. 우선 구성은 다음 그림과 같다.

G macOS macOS Windows Windows macOS->Windows VPN WSL WSL Windows->WSL

이때 다음과 같이 하면 macOS에서 WSL에 SSH로 접근이 가능하다.

  • Windows에 SSH 서버 필요 없음
  • Windows에 netsh interface portproxy 명령어로 포트 프록시 이용
  • WSL에서 sshd_config 파일에 GatewayPorts yes 설정 필요

그리고 macOS의 Visual Studio Code에서 Remote - SSH 플러그인을 이용하면 macOS에서 쾌적하게(?) 회사 WSL에 접근해서 코딩할 수 있다.

0
0
0
0
0

평소 DOT을 자주 사용하는데 기능을 추가해주셔서 감사합니다. 저는 DOT을 1)네트워크 구성도를 그리거나 2)패키지나 클래스 의존 관계를 표현하거나 3)족보를 그릴 때(?!) 등 다양하게 사용하고 있습니다. 한편 DOT 하면 저는 바르토즈 아저씨가 쓴 카테고리 책[1]의 표지 그림이 생각납니다. 함수 합성 그림인데 공교롭게 하스켈에서 함수 합성 연산자 이름도 dot이네요.

G a a b b a->b c c a->c b->c
  1. 《Category Theory for Programmers》 ↩︎

0

해커스펍의 콘텐츠를 해커스펍이 아닌 다른 서버 계정으로 그곳에서 부스트 하면 더 많은 연합우주 사용자에게 해커스펍 콘텐츠를 알릴 수 있지 않을까?

0

하스켈 패키지 검색 엔진이자 웹 서비스인 후글(Hoogle)은 서비스에 종종 문제가 생기곤 합니다. 그럴 때는 다음과 같은 대체 서비스를 이용해보세요!

한편 후글을 로컬에 설치해서 사용하는 것도 가능합니다. 잦은 서비스 문제에 질렸다면 로컬에 후글을 설치해보세요!

그리고 만약 당신이 부자라면⋯ 하스켈 재단에 기부해주세요⋯

0
0
0

프로그래밍 언어 하스켈 패키지 중에 연합우주와 관련 있는 것을 찾아봤더니 webfinger-client가 있습니다. 2016년에 마지막 업로드가 되었고 너무 오래 돼서 빌드도 안 되는 상태입니다. LLM 도움을 받아 빌드 가능하게 패치하고 메인테이너에게 연락을 해봤습니다. 답장은 아직 없고 사실 메일을 보낸 지 24시간이 지나지도 않았지만 왠지 연락이 오지 않을 것만 같습니다. 급한 마음에(왜 급한지 모르겠지만) 하스켈 포럼에 패키지를 인수하고 싶다고 글을 남겼습니다. 좋은 소식이 오길 기대해봅니다. https://discourse.haskell.org/t/taking-over-the-webfinger-client-package-maintenance/11628

0

https://news.hada.io/topic?id=19738 를 읽고 최근 생성형AI 활용 관련한 짧은 감상.

  • 매우 개인적인 의견이며 날 것의 생각입니다.
  • 샘플이 적어 편향성이 있을 수 있습니다.
  • 이미 철 지난 생각도 포함되어 있습니다.
  • 레퍼런스는 없습니다.
  1. 생성형 AI를 기대하는 사람들 중 상당수는 이를 적극적으로 의존하려는 경향이 있어 보임.
  2. 생성형 AI에 대한 기대 심리가 너무 커짐. 단순한 도구가 아니라 은탄환처럼 만능 해결책이 되기를 바라는 경우가 많음.
  3. 생성형 AI 기반 소프트웨어의 출시 속도가 기존 소프트웨어보다 훨씬 빠르게 느껴짐. 대학원 시절 자주 하던 농담이 떠오름. "딥러닝 관련 아이디어가 있으면 2주 내로 논문을 쓰지 않으면 누군가가 먼저 쓴다." 이제는 AI Agent 기반 도구 덕분에 AI 관련 SW에도 같은 법칙이 적용되는 듯함. 예를 들어, 지난주 MANUS 코드가 공개되었으니 2주 내로 유사한 AI Agent SW가 쏟아질 가능성이 큼.
  4. 이러한 빠른 변화 속에서 생성형 AI 사용과 관련한 윤리 및 에티켓에 대한 집단 논의는 아직 시작조차 되지 못한 듯함. 그래도 개발팀 내부에서는 관련 논의가 점차 이루어지는 것 같음. 개인적으로는 생성형 AI를 페어 프로그래밍 개념으로 접근하는 것이 적절하지 않을까 생각했지만, MANUS의 동작 방식을 보고 생각이 바뀌려 하고 있음.
  5. 생성형 AI의 활용 범위는 이미 빠르게 확장되고 있음. 기존에 사용되는 작업이 문서 작성, 요약, 검색 정도였다면 이제는 다양한 메이저 창작 분야로 확대되는 중. 적용이 빠른 이유는 결국 속도와 비용 때문이라고 생각함. 다만, 기계가 만든 참기름 바른 듯한 미끄러운 결과물에 대한 반발감은 여전히 존재하며, 이를 줄이기 위해 생성형 AI 결과물에 전문가의 수정과 품질 검수(QC)가 결합되고 있음.
  6. 여전히 생성형 AI 및 LLM을 사용하지 않거나 거부하는 사람들도 많음. 이들에게 자연스러운 사용 경험을 제공할 방법을 고민해야 할 듯함. 생성형 AI는 한 번 익숙해지면 벗어나기 어려운 락인 효과가 크다고 생각함.
  7. 항상 생성형 AI에 뇌를 의탁해서는 안 된다고 생각함. 지금 이 글도 먼저 초안을 작성한 후 ChatGPT에 교정을 부탁한 것임. 검수를 거치기는 하지만, 이러한 과정이 나의 사고 능력을 점차 약화시키는 것은 아닐지 고민해야 함. 그래서 hackers.pub에 뭐라도 계속 남기고자 함.
0
0

궁금해 하실 분들이 계실지 모르겠지만, Hackers' Pub은 아래의 기술로 만들어지고 있습니다.


  1. 2025년 3월 현재 Fresh 2.0은 정식 버전이 릴리스되지 않은 상태인데, 무시하고 불안정 버전을 그대로 쓰고 있습니다. Fresh 1.0 → 2.0에서 많은 게 바뀌기 때문에 굳이 Fresh 1.0을 쓰고 싶지 않았습니다. ↩︎

0

내 당근 첫화면은 항상 책 판매 글이 반 이상이다. 뭐 살거 없나 하고 매번 기웃기웃 하긴 하는데 영 불편하단 말이지. 책 전용 당근을 만들면 쓰는 사람이 있으려나?

중고 거래 앱에서 판매 목록에 도서 판매 글이 가득한 모습을 보여주는 화면. '자기계발 도서 20권' 2,000원, '책 소설 에세이 외' 6,000원, '중고 도서 4권 세트' 9,000원, '도서 9권 세트' 4,000원 등의 책 묶음이 판매 중이며, 각각의 책 사진과 가격이 표시되어 있다. 화면 하단에는 '홈', '동네생활', '동네지도', '채팅', '나의 당근' 등의 네비게이션 메뉴가 있고, 오른쪽 하단에는 '+ 글쓰기' 버튼이 위치해 있다.
0
0

노트 작성 폼을 개선했습니다. 이제 줄바꿈을 많이 하면 노트 입력창의 높이가 알아서 길어집니다. 그리고 댓글 달 때 원(原) 노트 내에 멘션된 계정들을 기본적으로 함께 멘션하도록 했습니다. 마지막으로, 자기 자신의 노트에 댓글을 달 때는 자기 자신에 대한 멘션이 포함되지 않게 했습니다.

0

노트 작성 폼을 개선했습니다. 이제 줄바꿈을 많이 하면 노트 입력창의 높이가 알아서 길어집니다. 그리고 댓글 달 때 원(原) 노트 내에 멘션된 계정들을 기본적으로 함께 멘션하도록 했습니다. 마지막으로, 자기 자신의 노트에 댓글을 달 때는 자기 자신에 대한 멘션이 포함되지 않게 했습니다.

0
0
0
0

Hackers' Pub 쓰고 계신 분들 중에서, 자신의 Hackers' Pub 계정을 연합우주(fediverse)뿐만 아니라 Bluesky에도 노출하고 그쪽 사람들과 교류하고 싶으신 분이 있다면, 상단 검색창에 @bsky.brid.gy@bsky.brid.gy을 검색하셔서 나오는 프로필을 팔로해 보세요. 그리고 1분 정도 뒤에 Bluesky에서 본인ID.hackers.pub.ap.brid.gy로 검색하면 본인의 Hackers' Pub 계정이 Bluesky에서도 보이는 걸 확인하실 수 있을 겁니다.

0