JAR로 되어있는 한글 형태소 분석기 라이브러리인 꼬꼬마 2.0과 Maven에 게시된 open-korean-text를 C#에서 프로젝트 구성없이 불러다 쓰는 예제입니다.
C# 코드 파일과 XML 설정 파일만 있으면 Maven과 JAR 패키지도 손쉽게 가져와서 C#으로 코딩할 수 있습니다. C# 파일 하나만 바라보면 될테니 코드 어시스턴트의 도움도 마음껏 받을 수 있으니 더욱 좋겠죠!
@hongminhee@hackers.pub · 965 following · 677 followers
Hi, I'm who's behind Fedify, Hollo, BotKit, and this website, Hackers' Pub! My main account is at
@hongminhee洪 民憙 (Hong Minhee)
.
Fedify, Hollo, BotKit, 그리고 보고 계신 이 사이트 Hackers' Pub을 만들고 있습니다. 제 메인 계정은:
@hongminhee洪 民憙 (Hong Minhee)
.
Fedify、Hollo、BotKit、そしてこのサイト、Hackers' Pubを作っています。私のメインアカウントは「
@hongminhee洪 民憙 (Hong Minhee)
」に。
JAR로 되어있는 한글 형태소 분석기 라이브러리인 꼬꼬마 2.0과 Maven에 게시된 open-korean-text를 C#에서 프로젝트 구성없이 불러다 쓰는 예제입니다.
C# 코드 파일과 XML 설정 파일만 있으면 Maven과 JAR 패키지도 손쉽게 가져와서 C#으로 코딩할 수 있습니다. C# 파일 하나만 바라보면 될테니 코드 어시스턴트의 도움도 마음껏 받을 수 있으니 더욱 좋겠죠!
洪 民憙 (Hong Minhee) shared the below article:
Juntai Park @arkjun@hackers.pub
Jenkins Job 설정이 전부 사라진 아찔한 사건과 이를 해결한 과정을 소개합니다. Jenkins를 사용하던 중 플러그인 충돌과 네트워크 정책 문제로 Job 설정이 초기화되는 문제가 발생했습니다. 원인은 특정 해외 mirror에 대한 접근 차단으로 인한 플러그인 설치 실패 및 기존 버전과의 충돌이었습니다. 서버 차단 정책을 수정하고 플러그인을 업데이트한 후, Jenkins 자체도 최신 버전으로 업그레이드하여 문제를 해결했습니다. 다행히 빌드 기록이 남아 있어 Pipeline Script를 복구하여 Job 설정을 복원할 수 있었습니다. 이 경험을 통해 Jenkins는 플러그인 의존도가 높고, 네트워크 환경에 민감하며, Job 설정 백업이 필수적임을 다시 한번 깨달았습니다. CI/CD도 코드처럼 관리해야 한다는 기본기를 상기시켜주는 계기가 되었습니다.
Read more →요즘에는 타입스크립트로 이상한 핵 안쓰고 LR 파서를 100% 타입세이프하게 구현할 수 있는지 테스트해보고 있다
역시 최고의 장애대응은 롤백이다. (한달간의 내 코드 돌려내)
Why doesn't Bash's programmable completion provide the cursor offset within the word being completed? With all the complexity around word splitting—shell quoting, escpaing, expansions—figuring out the intra-word cursor position by hand is a nightmare. Would it really be so hard for Bash to offer this info natively, rather than leaving script authors to replicate the shell's own parsing logic?
오늘은 오랜만의 회사 일???로 IDC에 갔다 IDC란걸 처음 가봤는데 이렇게까지 에어컨 바람이 강력한줄은 몰랐다 종이박스 정도는 그냥 날아가네
디노 붐은 온다
I've signed the Plan Vert letter, calling on Rails Core and the wider Ruby community to fork Rails and cut ties with DHH and his work.
Please sign, the future of Rails and Ruby depends on it. https://github.com/Plan-Vert/open-letter
Graal Truffle tutorial part 0 – what is Truffle? via
@ahelwerAndrew Helwer https://lobste.rs/s/3sg5sy #compilers #java
https://www.endoflineblog.com/graal-truffle-tutorial-part-0-what-is-truffle
레거시 만지니까 느껴지는 상태기반 프론트엔드 개발의 소중함
캬 요맛에 홈서버 열지 짜릿하다 짜릿해
lens라이브러리의 타입들은optics(광학기구)라고 불립니다. 여기에는Prism,Lens,Iso,Traversal,Fold,Getter,Setter같은 것들이 포함됩니다. 이 이름들 중 일부는 빛의 굴절에 대한 말장난에서 비롯되었습니다. 예를 들어, 렌즈(lens)는 망원경이 풍경의 작은 일부를 시야 가득히 채워 보이게 해주는 것이고, 프리즘(prism)은 흰빛을 분리하여 그 구성 색들을 드러내 줍니다. 어느 정도는 은유가 담겨 있지만, 이런 이름들은 깨달음을 주기보다는 귀여운 쪽에 가깝습니다. 따라서 이름 자체에 너무 깊이 집중하는 것은 권하지 않습니다.
— 《Finding Success (and Failure) in Haskell》, 158쪽
도메인 검색하면서 .uk 도메인 가격 볼 때마다 욱으로 끝나는 이름 가진 사람들은 자기 이름 달린 도메인 싸게 사겠지 싶어서 묘하게 부러움
요것이 진정한 Domain-Driven Development...
프로젝트 홍보: No programming language https://github.com/hoxy/no-lang
최근에 Apple의 Pkl에 옵션 추가하려 한 게 내 예상보다 스코프가 넓어서인지 SPICE(Pkl의 기능제안 프로세스인 듯) 작성해달라는 요청을 받았음. 문서 길이가 길어서 제미나이 CLI한테 내 PR 내용과 이미 있는 SPICE들 읽어서 작성해달라 요청했더니 소소한 실수 몇 개 빼고는 꽤 만족스럽게 작성해줬다!
AI와 함께 오라클 클라우드에 terraform으로 쿠버네티스 클러스터 올리기 해서 결국 성공했다... 맨날 콘솔로 만들땐 실패했었는데 역시 오라클은 자체서비스 믿지말고 무조건 외부서비스를 사용해야 한다는 생각이 더 강해졌다...
Its been a while! I just added #HackersPub (https://hackers.pub), #Elk (@elk) and #Elgg (@elgg) icons to https://iconography.fediverse.info
나중에 나올 IDE들은, 로컬 모델을 기본적으로 탑재하거나 뭐 그렇지 않을까?
http://logitext.mit.edu/main
재미있는 웹 앱 중 하나. 논건 대수(Sequent Calculus)를 사용해 1차 논리("모든 대상에 대해"나 "어떤 대상이 있어"를 서술할 수 있는 논리)의 명제를 상호작용을 통해 증명해 볼 수 있다.
예를 들어 A /\ B -> A (A 그리고 B이면 A이다)를 증명하려면
->를 눌러 명제 안의 "이면"을 증명에서 쓸 수 있는 가정(|-의 왼쪽에 있는 것)으로 바꾼다.A /\B를 눌러 "그리고"의 양 측에 해당하는 가정 A와 B 각각을 얻는다.A를 눌러 가정을 사용하는 것으로 증명을 끝낸다.보다 입문자에게 친절한 설명은 http://logitext.mit.edu/tutorial 에서 읽어볼 수 있다.
무려 폰트도 바꿀수 잇슴 ㅋㅋㅋㅋㅋ
나는 매킨토시로 일기쓰는 사람이다 무섭지
rangho.is 사고싶다
그러면
洪 民憙 (Hong Minhee) shared the below article:
Jaeyeol Lee @kodingwarrior@hackers.pub
이 글은 2025년 2분기 결산을 미루고 3분기에 몰아 작성한 개발자의 회고록입니다. 4월부터 9월까지 2~4주 단위로 굵직한 이벤트들이 연이어 발생하며 '업보 청산'의 시간을 보냈다고 합니다. 임금 미지급, 파이콘 발표 준비, Fedify 프로젝트 참여, UbuCon Korea 발표, PyCon KR 참여, Hackers' Public 주최, PyCon JP 참여 등 다사다난했던 3분기를 요약하고 있습니다. 특히 Fedify 프로젝트에 기여하며 NestJS 기반의 연합우주 소프트웨어 개발에 집중하고, Hackers' Public 밋업을 성공적으로 개최한 경험을 강조합니다. 현재는 수입이 거의 없는 상태이지만, 취업 준비와 외주를 병행하며 바쁘게 지내고 있습니다. Node.js 백엔드 엔지니어 또는 풀스택 엔지니어로서의 취업을 목표로 하고 있으며, 기술 면접 준비와 함께 OS 및 네트워크 관련 지식을 쌓고 있습니다. 마지막으로, 4분기에는 현재 진행 중인 프로젝트를 마무리하고 크리스마스 이전에 취업하는 것을 목표로 하고 있습니다.
Read more →
洪 民憙 (Hong Minhee) shared the below article:
박준규 @curry@hackers.pub
하스켈에서 레코드 타입을 다루는 다양한 관용구를 소개하는 글입니다. 레코드 생성 시 `NamedFieldPuns`나 `RecordWildCards` 확장 기능을 활용하여 코드를 간결하게 만들 수 있으며, 레코드 필드에 접근할 때는 접근자 함수, 패턴 매칭, 또는 `RecordDotSyntax` 확장을 사용할 수 있습니다. 일부 패키지에서는 레코드 생성자를 숨기고 스마트 생성자를 제공하여 API를 제어하기도 합니다. 저자는 스마트 생성자보다는 레코드 생성자를 직접 내보내는 방식을 선호하며, 이는 하스켈 입문자들의 진입 장벽을 낮추고 코드 기여를 활성화하는 데 도움이 된다고 주장합니다. 장기적으로는 언어 차원에서 기본값을 가지는 필드를 지원하여 레코드 타입 정의를 더욱 유연하게 만들 수 있을 것이라는 전망을 제시하며, 이 글은 하스켈 패키지 작성자와 사용자 모두에게 유용한 정보를 제공합니다.
Read more →너무 이른 시점에 일반화를 걱정하는 것은 위험할 수 있습니다. 자신이 코드를 작성하든 다른 사람의 코드를 이해하려 하든, 우리는 이 책에서 취한 접근 방식을 따를 것을 권장합니다. 즉, 일반적인 것부터 시작하지 말고 구체적인 예시부터 시작하세요. 그런 다음 그들이 어떤 측면을 공유하는지 관찰하세요. 학습자로서 이러한 순서는 더 쉬운 구체적인 예시를 토대로 더 어려운 추상적 개념을 이해할 기회를 더 많이 제공합니다. 저자로서 이러한 순서는 더 추상적인 발상이 타당성을 갖고 목적을 지닐 수 있도록 도와줍니다.
— 《Finding Success (and Failure) in Haskell》, 149쪽
문서와 플러그인 차이 때문에 결국 pulumi에서 terraform으로 갈아타고 말았다...
Real world Haskell use case arrived
최종적으로는 Monorepo로 구성했다.
각각이 장단점이 있는 선택지라서, 고민고민하다가, 개발중 반복작업을 최소화하는 쪽과 미래의 누군가 유지보수하기 편한 (혹은 내가 유지보수한다면 좀 더 편할 것으로 예상되는) 쪽에 무게를 두기로 했고 그렇게 Monorepo로 결정했다. 결국 AI의 추천대로 흘러가고 있..
최근 디스코드 메시지를 모바일 앱에서도 종종 확인해야 하는 경우가 있는데, 메시지의 글씨 크기가 작아서 불편하던 차에, 클래식 채팅 문자 크기 라는 옵션이 켜져있고 이 옵션이 켜져 있으면 글씨 크기가 작아진다는 것을 알게 되어, 바로 옵션을 꺼버렸다. (중년 개발자들에게 이 옵션을 끄는 것을 추천합니다.)
페디버스 인스턴스 하나쯤 만들고 싶다
그치만 너무 귀찮다
그치만 커스텀 이모지도 넣고 하고 싶다
그치만
그치만
의 무한 반복 중임 요즘
구글에 '해커스펍'을 검색해도 검색 결과에 hackers.pub이 보이지 않는다는 걸 알았다. '해커즈 퍼브'도 마찬가지다.
디버깅 정보를 뽑을 수 없지만 데이터를 잔뜩 입력해볼 수 있는 환경에서 발생하는 오류의 재현 테스트 케이스를 코드로 작성하는데 성공했다. 이게 되니까 바로 의심 가는 곳 수정이 가능했고, 테스트 통과 ㅠ...
종이를 물고 있는 퍼렁공뇽
https://github.com/fedify-dev/fedify
Libghostty is coming. 👻 The first library will be libghostty-vt: a zero-dependency (not even libc!) library that provides an API for parsing terminal sequences and maintaining terminal state, extracted directly from Ghostty's real-world proven core. https://mitchellh.com/writing/libghostty-is-coming
洪 民憙 (Hong Minhee) shared the below article:
RanolP @ranolp@hackers.pub
이 글은 함수 타입, 합 타입, 곱 타입과 논리 연산의 대응 관계를 탐구하며, 특히 부정(negation)을 타입 시스템에서 어떻게 표현할 수 있는지에 대해 설명합니다. "P가 아니다"는 "P이면 거짓이다"와 동치라는 점을 이용하여, 타입 이론에서 값이 없음을 거짓으로 해석하고, 이를 통해 "정수를 0으로 나눌 수 없다"는 명제를 타입으로 표현하는 방법을 제시합니다. `div_by_zero :: Int -> ⊥`와 같은 표현을 통해 타입 체계와 명제 논리 간의 커리-하워드 대응을 보여주며, 타입 시스템이 논리적 추론과 어떻게 연결되는지에 대한 통찰력을 제공합니다.
Read more →しかしGitHubのサポートの処理が早いのはまあそれもそうかという感じだけど、ボランティアで回しているCodebergも5分以内とかで対応してくれるのは驚異的だよなあ
Codeberg とかも普通にスパムの被害には遭っているし(私個人の通知まで貫通してきた物の絶対数だけを見ても GitHub よりやや多い)、流石に攻撃の対象になっていることを以て批判するのは酷では
GitHub’s relevance as a development platform is rapidly devolving: I have gotten more spam on there and through there in the past couple of weeks than I will get in an entire year or two, and Copilot means they just don’t care.
Open Source deserves new homes. I’ll continue moving my projects away.
회사에서 MLOps 를 구축해야 하는데 구축해본 적 있는 분이 있다면 커피챗을 좀 해보고 싶다...
Pheonix 트레이싱 도구를 이제서야 도입했고, Airflow 같은 것들도 제대로 써보고 싶은데 파이프라인을 제대로 구성해본 적이 없어서 생각은 하는데 아직 정확히 어떻게 구성해야 할지 잘 모르겠다..
토큰-링 네트워크에서 영감을 얻어 노드들이 서로 토큰을 돌려가며 서로 헬스체크하는 일종의 탈중앙화(?) 헬스체크 서비스를 대충 만들어보았다. 토큰 네트워크를 토큰이 돌며 노드들이 서로의 주소를 사인하고, 만약 다음 노드가 없거나 연락 불가하다면 이슈어에게 다시 돌려주는 방식의 단순한 토큰링 네크워크인데, 잘 작동해서 기분이 좋다.
요전번에 산 책 '관계형 데이터베이스 실전 입문' 첫 챕터를 정리했다. 정리하는 김에 원래 대학원에서 썼던 학술용 홈피도 싹 다 갈아엎을 겸 해서 맘에 드는 테마 하나 포크해서 블로그도 다시 만들어서 첫 포스트로 써서 올림...글로 쓰다보니 뭔가 보충하면 좋을 것 같은 내용들이 보였는데, 특히나 관계형 모델에서 튜플(=행)은 하나의 집합이라서 그 원소가 사실 순서가 없어도 되는데 실제 SQL로 표현되는 테이블에서는 순서가 있어야한다는 지점이 흥미로워서 다른 DB 개론서들 보면서 그 내용들을 추가하다보니 결국엔 형식적으로 정의하는 부분까지 넣게 됐다. 써놓고 보니 배보다 배꼽이 더 커진 듯한 느낌이지만...뭐 어때, 재밌으면 됐지!
최근에는 터미널에서 돌릴 수 있는 완성도 있는 테트리스를 만들어 보려고 하고 있어요
물론 강의실에서 그럴듯하게 테트리스를 하기 위함이지만...
제가 해커스펍 쓰면서 가장 좋아하게 됀 기능은 이모지 리액션이예요 😋
여러분 int *p를 (int *)(uintptr_t)p 캐스팅하지 마세요 출처라는 것이 바뀝니다
.NET 10의 File-based App으로 "당연히" .NET Framework 4.8을 타겟으로 하는 레거시 애플리케이션을 개발하는 것도 지원됩니다.
.NET Framework의 애플리케이션 인프라를 복합적으로 활용하는 log4net을 사용하는 애플리케이션을 File-based App 기반으로 어떻게 작성할 수 있는지 간단히 다루어봤습니다. :-D
이렇게 기존 레거시 코드를 옮겨올 수도 있으니 .NET Framework 기반 애플리케이션도 바이브코딩의 이점을 누리게 할 수 있을 것입니다.
https://forum.dotnetdev.kr/t/file-based-app-net-framework-4-8/13784/1
인간관계에 있어 일을 주든, 투자를 해주든, 내가 영업하는 제품을 구매해주든 어느 한쪽 또는 양쪽에 이익을 가져다주지 못하는 관계인 경우 아예 연락이 끊기는 정도의 수순을 밟게 되는 것이 일반적임.
오픈소스 활동의 좋은 점은 저런 명확한 이익관계가 없더라도 한번 서로 인지된 사람이면은 가늘더라도 꽤 오랫동안 서로 연락하는 관계를 유지할 수 있다는 점임.
개발자도 우울증 많다고 얘기는 많이 들었다.
이런 점에 비춰봤을 때 오픈소스는 개발자의 우울감과 소외감 극복에 도움이 될 수 있다고 생각한다.