Hi, I'm who's behind Fedify, Hollo, BotKit, and this website, Hackers' Pub!

Fedify, Hollo, BotKit, 그리고 보고 계신 이 사이트 Hackers' Pub을 만들고 있습니다.

FedifyHolloBotKit、そしてこのサイト、Hackers' Pubを作っています。

嗨,我是 FedifyHolloBotKit 以及這個網站 Hackers' Pub 的開發者!

Website
hongminhee.org
GitHub
@dahlia
Hollo
@hongminhee@hollo.social
DEV
@hongminhee
velog
@hongminhee
Qiita
@hongminhee
Zenn
@hongminhee
Matrix
@hongminhee:matrix.org
X
@hongminhee
0
0
0

@hongminhee洪 民憙 (Hong Minhee) @curry박준규 제가 Rust 유저한테 하스켈을 영업해본적은 없지만, Rust 유저들은 하스켈을 고를수 있는 선택지에서 이미 결정을 내리고 지나온 사람들이라고 생각했거든요. HKT, 모나드? 그런거보다 포인터 직접 만지고 최적화하는게 좋아.

근데 생각해보니 Rust가 언어덕후들이 파던 언어였던것도 이미 오래전 얘기고, 이제는 하스켈 등의 옵션을 고려하지 않은채로 Rust를 써야할 환경에 놓인 사람들도 많겠다 싶네요.

0
0
0
0

@hongminhee洪 民憙 (Hong Minhee) 이 포스트를 해커즈 퍼브에 공유했더니, 본문에 있는 링크 중 마지막의 "실제로 ArcGIS 의 동남아시아 지진 지도를 보면" 부분의 링크만 없어지네요. 해커즈 퍼브 쪽 버그일까요?

0
0

洪 民憙 (Hong Minhee) shared the below article:

함수형 프로그래머한테 닉스 패키지 매니저의 derivation 소개하는 글

lionhairdino @lionhairdino@hackers.pub

이 글은 닉스의 핵심 개념인 derivation에 대해 설명합니다. Derivation은 패키지 빌드에 필요한 속성들의 집합으로, 닉스는 이를 통해 의존 관계를 순수하게 표현합니다. 패키지 A가 B에 의존한다면, A의 derivation이 B의 derivation에 의존하는 방식으로 명세서를 작성하고, 실제 패키지가 필요할 때 realize 동작을 통해 이펙트들의 영향을 받습니다. 이러한 선언적인 명세서 덕분에 닉스는 선언형 패키지 매니저라고 불립니다. Derivation 이름에 내용 기반 해시를 붙여 캐싱과 재현성을 높이지만, 작은 변화에도 해시값이 달라져 디스크 용량과 빌드 시간이 늘어나는 단점도 있습니다. Nixpkgs는 derivation 자체가 아닌, derivation을 생성하는 표현식들의 모음으로 구성됩니다.

Read more →
0
0
0
0
0
0
0
0
0
0

페디버스 지식이 얼마나 없냐 하면요. 마스토돈에서 글 쓰면, @mastodon.social이 붙고, 해커스펍에 글 쓰면 @hackers.pub이 붙는다는 걸 몰랐습니다. 양 쪽 프로필 그림으로 같은 것 쓰면서, 구별 없이, 무념으로 라이트하게 잘 쓰고 있긴 합니다.

0
0

@lionhairdino 말씀하신 접두사들에 덧붙여서, 이른바 "연산자 오버로딩"처럼 두 정의가 하나의 이름에 동시에 붙어 있는 경우 竝(나란히 병)을 쓰는 것도 고려함 직하다는 생각을 해 봤습니다. "병행", "병립", "병치" 등에 쓰이는... "오버레이"의 경우는 疊(겹쳐질 첩)이 먼저 떠오르네요. "중첩"이라든지 "첩첩산중" 등에 쓰이는 그거요.

그리고 꼭 한자어에는 한자 접두사를 붙여야 한다는 법이 있는 것은 아니니, 과감하게 고유어를 쓰는 것도 생각해 볼 수 있겠습니다. "겹정의"라든지, "덮정의"라든지... 아예 "겹뜻"이라든지...

@xtjuxtapose 처음 듣는다고 상상해보면, 겹정의와 병립(중복)정의를 듣고, 오버라이딩, 오버로딩 동작을 떠올리는데 무리 없어 보입니다!

개인적으로 커널-알멩이 번역처럼 한글 낱말에서 전혀 원 뜻이 느껴지지 않는 것들은 읽는데 힘들어 하지만, 겹정의는 충분히 이바닥에 자리 잡아도 되지 않을까 싶을 정도로 원 뜻이 살아 있습니다.

겹정의! 재정의보다 더 원 뜻에 가깝다고 생각이 드네요.

0
0

오버라이딩 을 재정의라 번역하는데, 왜 "(덮을 복)정의"라 안했을까? (물론 나도 어색하다) 재정의는 뭔가 기존 것을 치워버리고, 다시 정의하는 것이고, 오버라이딩은 기존 것을 그대로 두고, 그 위에 레이어를 두는 느낌이라 같은 듯 다르다.

만일 복정의라 번역한다면, 오버로딩을 중(거듭 복) 정의라 하는데, 이 것과 같은 글자를 쓰는 문제가 생길 수 있겠다.

재정의, 중복 정의는 나도 번역이 마음에 들긴 한데, 늘 재정의가 살짝 걸리적 거린다.

닉스 공부하며 노트하다가 비슷한 듯 다른 오버레이, 오버라이딩의 적당한 번역어가 떠오르지 않아 잡생각으로 빠졌다.

널리 알려진 적당한 짧은 번역 단어(보통 한자 한 두 글자)가 없으면, 그냥 원문이 낫지 않을까? 표기만 Overlay가 아니라 오버레이로.

@lionhairdino 말씀하신 접두사들에 덧붙여서, 이른바 "연산자 오버로딩"처럼 두 정의가 하나의 이름에 동시에 붙어 있는 경우 竝(나란히 병)을 쓰는 것도 고려함 직하다는 생각을 해 봤습니다. "병행", "병립", "병치" 등에 쓰이는... "오버레이"의 경우는 疊(겹쳐질 첩)이 먼저 떠오르네요. "중첩"이라든지 "첩첩산중" 등에 쓰이는 그거요.

그리고 꼭 한자어에는 한자 접두사를 붙여야 한다는 법이 있는 것은 아니니, 과감하게 고유어를 쓰는 것도 생각해 볼 수 있겠습니다. "겹정의"라든지, "덮정의"라든지... 아예 "겹뜻"이라든지...

0

Hackers' Pub 行動規範を拝見し、その根底にあるキーワードは「尊重」と「思いやり」だと強く感じた。だからこそ、僕はHackers' Pubを心から応援している。時間が経っても、その価値観がブレずに、前向きで明るいエネルギーがあふれる場所であってほしい。

それと、もうひとつだけ言うと、開発者のちょっとした日常の話とかも、もっと共有されるといいなって思う。(まずは自分から始めなきゃだけどね)

0

Hackers' Pub 행동 강령을 관통하는 큰 키워드가, 존중배려라고 느꼈고, 그래서 더욱 Hackers' Pub 을 응원하고 있는데, 오랜 시간이 흘러도 추구하는 가치에 흔들림이 없으면 좋겠고, 여기에 더해 긍정적이고 밝은 에너지가 가득한 공간이 되기를 소망한다.

한가지만 더 첨언하자면, 개발자의 소소한 일상 얘기들도 많이 공유되었으면 좋겠다. (우선 나부터도 해야겠지만)

0

Chrome Built-In AI (EPP)で変更

Canary 136.0.7103.0* 以降、すべての組み込み API に新しいエントリ ポイントがあります。 self.ai.* ではなく、self.* で直接 API を見つけることができるようになりました。静的 create() メソッドを使用して、これらの API をインスタンス化します。

await LanguageModel.create();
await Summarizer.create(); 
await Writer.create();
await Rewriter.create();
await LanguageDetector.create();
await Translator.create();

同様に、静的 availability() メソッドが追加されました。

await LanguageModel.availability();
await Summarizer.availability();
await Writer.availability();
await Rewriter.availability();
await LanguageDetector.availability();
await Translator.availability();
0

사실 Hackers' Pub은 저희 집 홈 서버인 Mac mini M4 깡통 모델에서 돌아가고 있을 뿐만 아니라, 배포도 compose.yaml 파일의 image: 필드를 매번 손으로 고친 뒤 docker compose up -d를 치는 전근대적인 방식으로 이뤄지고 있습니다… 뭔가 자동화를 하고 싶긴 한데 귀찮은 마음이 커서 아직까지 이대로 살고 있네요.

0
0
0
0
0
0
0
0
0

deno-task-hooks: Git 훅을 Deno 태스크로 쉽게 관리하기

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub

안녕하세요! 오늘은 제가 개발한 deno-task-hooks 패키지를 소개해 드리려고 합니다. 이 도구는 Deno 태스크를 Git 훅으로 사용할 수 있게 해주는 간단하면서도 유용한 패키지입니다.

어떤 문제를 해결하나요?

Git을 사용하는 개발 팀에서는 코드 품질 유지를 위해 커밋이나 푸시 전에 린트, 테스트 등의 검증 작업을 실행하는 것이 일반적입니다. 이러한 작업은 Git 훅을 통해 자동화할 수 있지만, 기존 방식에는 몇 가지 문제가 있었습니다:

  • Git 훅 스크립트를 팀원들과 공유하기 어려움 (.git 디렉토리는 보통 버전 관리에서 제외됨)
  • 각 개발자가 로컬에서 훅을 직접 설정해야 하는 번거로움
  • 훅 스크립트의 일관성 유지가 어려움

deno-task-hooks는 이러한 문제를 해결하기 위해 Deno의 태스크 러너를 활용합니다. Deno 태스크는 deno.json 파일에 정의되어 버전 관리가 가능하므로, 팀 전체가 동일한 Git 훅을 쉽게 공유할 수 있습니다.

어떻게 작동하나요?

deno-task-hooks의 작동 방식은 간단합니다:

  1. deno.json 파일에 Git 훅으로 사용할 Deno 태스크를 정의합니다.
  2. hooks:install 태스크를 실행하면, 정의된 태스크들이 자동으로 .git/hooks/ 디렉토리에 설치됩니다.
  3. 이후 Git 작업 시 해당 훅이 트리거되면 연결된 Deno 태스크가 실행됩니다.

설치 및 사용 방법

1. hooks:install 태스크 추가하기

먼저 deno.json 파일에 hooks:install 태스크를 추가합니다:

{
  "tasks": {
    "hooks:install": "deno run --allow-read=deno.json,.git/hooks/ --allow-write=.git/hooks/ jsr:@hongminhee/deno-task-hooks"
  }
}

2. Git 훅 정의하기

Git 훅은 hooks: 접두사 다음에 훅 이름(케밥 케이스)을 붙여 정의합니다. 예를 들어, pre-commit 훅을 정의하려면:

{
  "tasks": {
    "hooks:pre-commit": "deno check *.ts && deno lint"
  }
}

3. 훅 설치하기

다음 명령어를 실행하여 정의된 훅을 설치합니다:

deno task hooks:install

이제 Git 커밋을 실행할 때마다 pre-commit 훅이 자동으로 실행되어 TypeScript 파일을 검사하고 린트 검사를 수행합니다.

지원되는 Git 훅 종류

deno-task-hooks는 다음과 같은 모든 Git 훅 타입을 지원합니다:

  • applypatch-msg
  • commit-msg
  • fsmonitor-watchman
  • post-update
  • pre-applypatch
  • pre-commit
  • pre-merge-commit
  • pre-push
  • pre-rebase
  • pre-receive
  • prepare-commit-msg
  • push-to-checkout
  • sendemail-validate
  • update

이점

deno-task-hooks를 사용하면 다음과 같은 이점이 있습니다:

  1. 간편한 공유: Git 훅을 deno.json 파일에 정의하여 팀 전체가 동일한 훅을 사용할 수 있습니다.
  2. 설정 용이성: 새 팀원은 저장소를 클론한 후 한 번의 명령어로 모든 훅을 설치할 수 있습니다.
  3. 유지 관리 용이성: 훅 스크립트를 중앙에서 관리하므로 변경 사항을 쉽게 추적하고 적용할 수 있습니다.
  4. Deno의 안전성: Deno의 권한 모델을 활용하여 훅 스크립트의 보안을 강화할 수 있습니다.

마치며

deno-task-hooks는 작은 패키지이지만, Git과 Deno를 함께 사용하는 팀의 개발 경험을 크게 향상시킬 수 있습니다. 코드 품질 유지와 개발 워크플로우 자동화를 위해 한번 사용해 보세요!

패키지는 JSR에서 다운로드할 수 있으며, GitHub에서 소스 코드를 확인할 수 있습니다.

피드백과 기여는 언제나 환영합니다! 😊

Read more →
0

코드와 한글 [Code and Hangul]
------------------------------
# 전북대학교 이상로 교수의 연구 아카이브: 한글 코드와 기술 표준화의 기록

이상로 교수가 운영했던 웹사이트는 2000년대 초반 한국의 문자 처리 기술과 코드 변환 연구를 체계적으로 정리함으로, 한글 정보화와 국제 표준화 과정에서 중요한 역할을 했습니다. 이 사이트는 당시 컴퓨터 과학 분야의 학문적 연구와…
------------------------------
https://news.hada.io/topic?id=20085&utm_source=googlechat&utm_medium=bot&utm_campaign=3140

0
0
0
0

작년에 비하면 조금 약하다 ㅎㅎ 참고로 작년에는...

Faster than LIght speed Protocol(FLIP)은 LLM을 이용해 패킷이 수신 피어에 도착하기 전에 미래의 패킷을 예측함으로써 광속보다 빠른 전송을 달성한다. (...) 이 프로토콜 명세는 AI와 LLM을 사용하기 때문에 멍청한 인간은 이 명세를 리뷰해서는 안 된다고 여겨졌다. 대신 여러 LLM 챗 서비스의 코멘트와 제안으로 개선되어 승인받았다. rfc-editor.org/rfc/rfc9564

0
0
0
0

@kodingwarriorJaeyeol Lee 심플하게 가장 가까운 .vim/config.lua 파일을 찾아서 해당 파일에 명시된 린터와 포매터 정보를 읽도록 만들었어요. 급하게 필요해서 만든거라 엉성해요 ㅎㅎ github.com/parksb/dotfiles/com

0