Happy Febuary to those who celebrate
McK
@mck@hackers.pub · 15 following · 18 followers
우리.인생
- @mck@uri.life
브라우저 API가 모두 ‘웹’ API는 아님
------------------------------
- 웹 플랫폼은 *표준화된 API* 위에서 동일하게 동작한다는 인식이 널리 퍼져 있으나, 실제로는 *브라우저 벤더별 인프라* 에 의존하는 API가 다수 존재함
- Geolocation, Speech, Push, Payments, Passkeys 등은 표면적으로는 웹 표준이지만, 내부적으로는 *Google·Apple·Microsoft의 서비스* 를 호출
- 동일한…
------------------------------
https://news.hada.io/topic?id=25974&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
Been thinking a lot about
@algernonalgernon, deployer of builds, builder of jank, fan of junk, and only junk (allegedly)'s recent post on FLOSS and LLM training. The frustration with AI companies is spot on, but I wonder if there's a different strategic path. Instead of withdrawal, what if this is our GPL moment for AI—a chance to evolve copyleft to cover training? Tried to work through the idea here: Histomat of F/OSS: We should reclaim LLMs, not reject them.
Histomat of F/OSS: We should reclaim LLMs, not reject them
A few days ago, I came across a blog post titled On FLOSS and training LLMs that articulates a growing frustration within the free and open source software…
writings.hongminhee.org · Hong Minhee on Things
Link author:
洪 民憙 (Hong Minhee)
@hongminhee@hollo.social
AI 企業이 F/OSS 코드로 LLM 訓練하는 걸 막을 게 아니라, 訓練한 모델을 公開하도록 要求해야 한다고 생각합니다.
撤收가 아니라 再專有! GPL이 그랬던 것처럼요.
訓練 카피레프트에 對한 글을 썼습니다: 〈F/OSS 史唯: 우리는 LLM을 拒否할 게 아니라 되찾아 와야 한다〉(한글).
Histomat of F/OSS: We should reclaim LLMs, not reject them
A few days ago, I came across a blog post titled On FLOSS and training LLMs that articulates a growing frustration within the free and open source software…
writings.hongminhee.org · Hong Minhee on Things
Link author:
洪 民憙 (Hong Minhee)
@hongminhee@hollo.social
Tailwind 제작사, 엔지니어링 팀의 75% 해고
------------------------------
- Tailwind CSS 문서에 *LLM 최적화용 /llms.txt 엔드포인트* 를 추가하는 PR이 커뮤니티에서 논란을 일으킴
- 제안된 기능은 모든 문서 페이지를 *텍스트 전용으로 결합해 대형 언어 모델(LLM)* 이 쉽게 학습할 수 있도록 하는 구조
- Tailwind Labs 측은 *수익성 악화와 트래픽 감소* 를 이유로 해당 기능을 거…
------------------------------
https://news.hada.io/topic?id=25650&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
hosting.kr 등록한 도메인 이름 아직 기간이 남았지만 3년 갱신. 다음 주 월요일 09시부터 인상된다고.
(오프라인에서 했던 얘기를 온라인에서도 하기)
@hongminhee洪 民憙 (Hong Minhee) 님 블로그는 국한문혼용으로 보면 세로쓰기 가로스크롤로 바뀌는 게 꽤나 운치가 있다고 생각해요..... 한자를 못 읽는 건 아쉽지만
예전에 LLM이 얼마나 복잡한 코드를 이해할 수 있는지 파악하기 위해 Gemini 2.5 모델들로 내 IOCCC 2012 수상작을 던지고 무슨 일을 하는지 실행 없이 알아 맞춰 보라고 했더니 하나도 제대로 파악하지 못했던 적이 있다. 문득 생각이 나서 Gemini 3 Pro는 개선되었을려나 생각했는데, 힌트 하나만 받고 10분동안 생각하더니 완벽하게 응답에 성공했다! 심지어 설명도 실행 없이 분석했다는 걸 감안할 때 매우 정확했다. IOCCC 수상작을 모두 기억하고 있을 가능성을 감안해 이전에 본 적이 있냐고 물어 보니 환각(...)을 내뱉는 것도 그렇고(그보다 외웠다면 처음에 바로 정답을 얘기했겠지), 실제로 생각 과정을 보면 사람이 할 법한 분석을 전부 하고 있는 걸 보니 진짜로 LLM들의 reasoning 능력이 이 정도 수준에 도달했음을 알 수 있다. 세상 참 많이 발전했네.
AWS CEO, "AI로 주니어 개발자를 대체하는 것은 ‘가장 어리석은 생각 중 하나’"
------------------------------
- AWS CEO Matt Garman 은 기업이 AI로 주니어 개발자를 대체하려는 움직임에 반대하며, 이들이 *AI 도구 활용에 가장 능숙한 인력층* 이라고 강조
- 첫 번째 이유로, 젊은 개발자들은 *AI 기반 툴에 익숙하고 적응이 빠르며* , 실제로 많은 주니어 개발자가 매일 AI를 활용하고 있음
- 두 번째로, 주니어 인력은…
------------------------------
https://news.hada.io/topic?id=25159&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
GitHub, 2026년 3월부터 셀프호스티드 액션 러너에 요금 부과 예정
------------------------------
- 2026년 1월 1일부터 *GitHub 호스티드 러너 요금이 최대 39% 인하* 되고, 3월 1일부터 *셀프 호스티드 러너에 분당 0.002달러 요금* 이 부과됨
- 전체 고객의 *96%는 요금 변동이 없으며* , 4% 중 85%는 인하, 15%는 월 중간값 약 13달러 인상
- *공개 저장소의 Actions 사용은 계속 무료* 이며, GitHub Enter…
------------------------------
https://news.hada.io/topic?id=25128&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
"OOO 주식회사 OOO 대표님 맞으시죠? 산업안전보건교육 받아야 하는 업체에 해당합니다. 직원이나 프리랜서 고용 있으시죠? 어쩌고~" 일단 쎄한 느낌을 받았습니다. 다다다 쏴붙이면서 중간에 질문할 틈을 최대한 막으면서 가는 꼬락서니가 관공서는 아니구나 싶었습니다. 고용이나 프리랜서 없다고 하니, 뚝 끊어 버립니다. 검색해보니, 이런식의 반쯤 사기같은 행태가 존재한다고 하네요. 소규모 법인 대표님들 조심하세요~
McK shared the below article:
React2Shell 취약점의 특성을 알아보자
고남현 @gnh1201@hackers.pub
React2Shell(CVE-2025-55182) 취약점은 React와 Next.js 환경에서 발생하는 심각한 역직렬화(Deserialization) 보안 약점을 다룹니다. 이 취약점은 JSON과 자체 규격인 Flight 포맷을 처리하는 과정에서 발생하며, 공격자가 JavaScript의 프로토타입 오염(Prototype Pollution)을 통해 객체의 성격을 임의로 변경하고 원격 코드 실행(RCE)까지 가능하게 합니다. 역직렬화 과정은 본래 자료형에 엄격하지 않고 특정 기호가 실행 신호로 작동할 수 있어 보안상 취약할 수 있는데, React2Shell은 특히 Promise 객체의 속성을 악용하여 악성 코드를 트리거하는 방식을 취합니다. 실제로 취약한 서버에 Mirai 봇넷 계열의 악성코드가 주입되어 서버가 디도스(DDoS) 공격 도구로 악용되는 사례가 발견되기도 했습니다. 이를 방어하기 위해서는 Next.js를 보안 패치가 적용된 최신 버전으로 업데이트하거나 Vercel에서 제공하는 전용 패치 도구를 활용해야 하며, 필요시 웹 방화벽(WAF) 규칙을 강화하는 조치가 필요합니다. 이 글은 현대 웹 생태계에서 역직렬화 공격의 위험성과 구체적인 대응 방안을 제시하여 안전한 애플리케이션 운영을 위한 핵심적인 가이드 역할을 합니다.
Read more →Anthropic, MCP를 Linux Foundation에 기증
------------------------------
Anthropic이 AI 애플리케이션과 외부 시스템을 연결하는 오픈 표준인 Model Context Protocol(MCP)을 Linux Foundation에 기증했다.
Linux Foundation 산하에 Agentic AI Foundation(AAIF)을 새로 설립했으며, Anthropic, Block, OpenAI가 공동 창립하고 Google, Microsoft, AWS, Cloudflare, Bloomberg가 지원한다…
------------------------------
https://news.hada.io/topic?id=24953&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
Vercel 제품들은 딱 봐도 설계가 너무 구리게 느껴지는데, 그렇다고 깊게 생각해보진 않고 또 쨋든 사람들이 젤 많이 쓰긴하니까, 내 느낌이 잘못된건지 헷갈린다.
McK shared the below article:
일본 서버를 한국과 거의 비슷한 속도로 원격 접속하기
고남현 @gnh1201@hackers.pub
이 글에서는 한국에서 일본 서버를 사용할 때 발생하는 네트워크 지연 문제를 다루고, 해저 케이블망을 활용하여 이를 개선하는 방법을 소개합니다. 저렴한 일본 서버를 선택했지만, 실제 한국에서의 통신 속도가 예상보다 훨씬 느린 250ms에 달해 미국 시애틀보다도 못한 상황을 겪었습니다. 하지만 Microsoft Azure의 한국 리전을 중간 서버로 활용하여 데이터 센터 간 통신을 시도한 결과, 핑 시간을 30ms대로 크게 단축시키는 데 성공했습니다. 이는 86%의 속도 향상으로, RDP를 통해 원격 데스크탑을 사용하는 환경에서 체감 속도를 극적으로 개선했습니다. 이 글은 해외 서버를 사용할 때 네트워크 지연을 줄이는 실질적인 해결책을 제시하며, 독자에게 더 빠르고 효율적인 원격 작업 환경을 구축하는 데 도움을 줄 수 있습니다.
Read more →McK shared the below article:
GitHub Action Rerunner
초무 @2chanhaeng@hackers.pub
GitHub Action Rerunner는 팀원들이 레포지토리에 대한 직접적인 쓰기 권한 없이도 실패한 GitHub Actions를 재실행할 수 있도록 권한을 위임하는 웹 애플리케이션입니다. 레포지토리 소유자는 개인 및 조직 레포지토리를 등록하고, 암호화된 Personal Access Token을 등록하여 공유 가능한 고유 링크를 생성할 수 있습니다. 팀원은 이 링크를 통해 자신에게 할당된 PR 목록을 확인하고, 실패한 Action을 원클릭으로 재실행할 수 있습니다. Next.js, React, Tailwind CSS, PostgreSQL, Prisma ORM, Octokit 등의 기술 스택을 사용했으며, GitHub OAuth를 통해 안전한 계정 관리를 제공합니다. 이 도구를 사용하면 레포지토리 보안을 유지하면서도 팀원들이 CI/CD 프로세스를 효율적으로 관리할 수 있어 개발 생산성을 향상시킬 수 있습니다.
Read more →지금 아이디어는 load에서 SSR인지 여부에 따라서 T | Promise<T>를 던져서 SSR에서는 바로 데이터 / CSR 에서는 Promise 결과가 스트리밍되게 하고 +page.svelte에서는 항상 #await :then을 씌워주면 SSR때도 Promise 아닌게 들어오면 :then을 렌더링하니까 어떻게 될 거 같긴 한데 어쨌든 SvelteKit의 간단한 구조는 포기해야 하니까... (어쩔 수 없는거지 싶기도 하고)
@robin 관련된 내용인지는 모르겠는데, 비동기 SSR 관련해서 뭔가 업데이트가 진행중인 것 같네요. (대충 비동기로 SSR이 되게 할 예정이라는 공지) https://github.com/sveltejs/svelte/discussions/16784
McK shared the below article:
Optique 0.7.0: Smarter error messages and validation library integrations
洪 民憙 (Hong Minhee) @hongminhee@hackers.pub
Optique 0.7.0 introduces enhancements focused on improving the developer experience and expanding its ecosystem for type-safe CLI argument parsing in TypeScript. This release brings automatic "Did you mean?" suggestions to help users correct typos, along with seamless integrations for Zod and Valibot validation libraries, ensuring more robust and efficient CLI development. Duplicate option name detection is now included to catch configuration bugs early, and context-aware error messages provide users with precise feedback. The update also features customizable shell completion naming conventions and improved line break handling in error messages. With these new features, Optique aims to streamline CLI development in TypeScript, making it more intuitive and less error-prone. This release underscores Optique's commitment to providing developers with powerful tools for building high-quality CLI applications.
Read more →RSS 피드가 있다면,
1. `
@birb🦜 RSS Parrot ᴮᴱᵀᴬ` 피드 주소를 알려준다
2. RSS 앵무새가 피드로 `_at_어쩌고.저쩌고_at_rss-parrot.net` 계정을 만들어 알려준다
3. 팔로우
마크다운은 토씨랑 상성이 진짜 안맞아서 불편하다... *이것을 찾으셨나요?*에라고 쓰면 "*이것을 찾으셨나요?*에"가 되고 <em> 태그를 써야 제대로 적용이 된다
나도 KT 처럼 일해도 돈 나왔으면 좋겠다
10년동안 일을 미뤄도 돈 나오는 회사 KT!!!
정발폰인데 VoLTE 패치 해야 하는 게 말이냐고 KTKT야
오늘은 테스트계정으로 adnim이라는 아이디를 써서
아드님 계정을 만들었고
"어드민밖에 없는데요"를 듣는데 성공했다
참 재미 있었다.
- 역명부기: 역이름 옆에 광고를 함
- 혁명부기: 혁명을낉여오라하지않앗느냐
We are celebrating our 31st anniversary today! We have adopted a new logo to signal positive changes. We have refreshed our logo to reflect the new type of organization we have become — one that wants to re-engage with our community, and reach new audiences.
See more at:
https://www.w3.org/press-releases/2025/new-logo/
McK shared the below article:
"expression"은 "표현식"이 아니라 그냥 "식"
蛇崩 (じゃくずれ) @ja@hackers.pub
이 글은 프로그래밍 용어 "expression"을 "표현식"이 아닌 간결한 "식"으로 번역해야 한다고 주장합니다. 필자는 "expression"이 수학에서 유래되었으며, 수학에서는 이미 "식"으로 번역되어 사용되고 있음을 지적합니다. 또한, 프로그래머들이 "표현식"을 선호하는 이유로 사전적 정의와 초·중등 교육에서 비롯된 선입견을 들지만, 실제로는 "식"으로 번역해도 의미 전달에 전혀 문제가 없다고 강조합니다. 오히려 "표현식"은 "representation"의 번역어인 "표현"과 혼동될 수 있으며, "정규표현식"과 같이 불필요하게 긴 용어를 만들어낼 수 있다고 비판합니다. 결론적으로, 필자는 "expression"을 "식"으로 번역하는 것이 더 정확하고 간결하며, 전산학 용어의 일관성을 유지하는 데 도움이 된다고 주장하며, "정규식"이라는 간결한 용어 사용을 옹호합니다.
Read more →https://github.com/be5invis/Sarasa-Gothic
터미널/에디터용 고정폭 폰트를 찾는다면 Sarasa Term K를 추천합니다. 이쪽도 한중일 폰트를 모두 지원합니다. Noto Sans Mono CJK도 좋지만 폰트 미세 조정이 안 되는 환경에서 Sarasa Term이 좀더 정확하게 렌더링됩니다. 영문과 한글만 쓰면 네이버의 D2Coding도 훌륭하지만 이쪽은 가나, 한자 지원이 약하죠.
macOS Tahoe에서 일렉트론 애플리케이션이 말도 안되게 느렸던 이유는 Liquid Glass 도입으로 시스템에 전반적 연산이 늘어난게 아니라 Electron이 AppKit의 private API를 잘못 쓰면서 WindowServer에서 GPU를 미친듯이 쓴 것이었다.
JAR로 되어있는 한글 형태소 분석기 라이브러리인 꼬꼬마 2.0과 Maven에 게시된 open-korean-text를 C#에서 프로젝트 구성없이 불러다 쓰는 예제입니다.
C# 코드 파일과 XML 설정 파일만 있으면 Maven과 JAR 패키지도 손쉽게 가져와서 C#으로 코딩할 수 있습니다. C# 파일 하나만 바라보면 될테니 코드 어시스턴트의 도움도 마음껏 받을 수 있으니 더욱 좋겠죠!
"웹 접근성을 고려한 콘텐츠 제작기법 2.2 개정판" 의 온라인 버전이 공개되었습니다. 이 자료는 국내 접근성 지침 관련해 개발자들이 참고할 수 있도록 한 사례 중심의 해설서입니다. 상당히 좋은 내용으로 보이니 많이 참고하셨으면 합니다.
- 06년생이 20살임: 그렇군요
- 대학 신입생들이 Django 프레임워크 보다 어림: 기절하다
McK shared the below article:
LogTape 1.1.0: Smarter buffering, seamless integration
洪 民憙 (Hong Minhee) @hongminhee@hackers.pub
LogTape 1.1.0 introduces smarter and more flexible logging with two major features. The first is "fingers crossed" logging, which buffers debug and low-level logs in memory and only outputs them when an error occurs, providing a complete sequence of events leading up to the problem. Category isolation prevents one component's errors from flushing unrelated logs, keeping logs focused and relevant. The second feature is direct log emission via the `Logger.emit()` method, which allows feeding logs from external systems like Kafka directly into LogTape while preserving original timestamps and metadata. This release also includes bug fixes and improvements across the ecosystem, such as fixes for potential data loss during high-volume logging and improved cross-runtime compatibility. Upgrading to 1.1.0 is backward-compatible and enhances debugging in production by providing complete context for every error without constant verbose logging.
Read more →McK shared the below article:
Stop writing CLI validation. Parse it right the first time.
洪 民憙 (Hong Minhee) @hongminhee@hackers.pub
This post introduces Optique, a new library created to address the pervasive problem of repetitive and often messy validation code in CLI tools. The author was motivated by the observation that nearly every CLI tool reinvents the wheel with similar validation patterns for dependent options, mutually exclusive options, and environment-specific requirements. Optique leverages parser combinators and TypeScript's type inference to ensure that CLI arguments are parsed directly into valid configurations, eliminating the need for manual validation. By describing the desired CLI configuration with Optique, TypeScript automatically infers the types and constraints, catching potential bugs at compile time. The author shares their experience of deleting large chunks of validation code and simplifying refactoring tasks. Optique aims to provide a more robust and maintainable approach to CLI argument parsing, potentially saving developers from writing the same validation logic repeatedly.
Read more →지난 몇 달간 htmx로 웹 앱을 만들면서 느낀 점은, 골디락스 존의 하위 50% 애플리케이션에만 htmx가 적합하다는 것이다. 클라이언트 상태를 조금이라도 다뤄야 하는 순간이 오면 불행이 시작된다. 하이퍼미디어 시스템의 철학에 동의하는데, 그 구현은 아일랜드 아키텍처의 접근법이 더 나을 수도 있겠다는 생각이 든다. https://deno.com/blog/intro-to-islands
Are there any active chat rooms on #Discord or #Matrix where #TypeScript developers gather?
@hongminhee洪 民憙 (Hong Minhee)
Minhee, please come back home. You can't just abandon your child like this. We will forgive everything. The baby needs you. Little Haskell is crying and starving.
다양한 WAI-ARIA 표준이 여러 스크린리더와 브라우저 조합 환경과 잘 맞물리는지 테스트 결과를 확인하는 웹 페이지. 아직 작업 중이라네요. https://a11ysupport.io/
파이콘 한국 2025의 Hackers' Pub 및 FediDev KR 커뮤니티 부스가 성공적으로 마무리되었습니다. 모두 여러분 덕분입니다.
양일간 부스 지키느라 도와주신 분들께 모두 감사드립니다!
@nebuletoHaze
@kodingwarriorJaeyeol Lee
@akastoot악하 @2chanhaeng초무
@z9mb1Jiwon @joonnotnotJoon
@gaebalgom개발곰 🙏🏼
The State of CSS 2025 survey results are now available!
macOS Traffic Lights (2000-2025) 🚥
macOS에서는 Xcode에서 git을 함께 주지만 brew install git으로 별도로 설치해서 사용해야 한다. 왜냐하면 Git 취약점 최신 패치버전은 2.50.1인데 Xcode git 버전은 2.39.5 버전이다 😱 (다른 패치버전들도 있는데 2.43 및 이후 버전들만 관리 중인가 보다[1])
https://github.blog/open-source/git/git-security-vulnerabilities-announced-6/
제주어 ISO 639 코드가 ko-jje에서 jje로 독립했구나.
다시 말해, 한국어 방언으로 간주됐다가 별개 언어로 독립했다, 이 말입니다.
https://iso639-3.sil.org/code/jje
해커스 펍은 아무래도 어텐션이 낮다 보니 채용 시장 이야기를 조금 해 보자면 (트위터는 왠지 채용 과정에서 아쉬운 경험을 하신 분들도 있을 것 같고, 해서) 새로운 프론트엔드 개발자분이 곧 합류하시는데 채용까지 이르는 데 까지 정말 많은 이력서 스크리닝을 해야 했다. 솔직히 말해 '옛날에 비하면' 뛰어난 개발자분들이 시장에 많은데 (공개적으로 이야기하기는 뭐한) 특정한 스타일의 비슷한 개발자분들이 아주 많다. 괜찮은 사람을 아무나 빨리 뽑는 채용 기조는 아니다 보니 정말 특출나게 뭔가 뛰어난 부분이 있는 분을 찾아야 한다는 압박감이 있었고, 이것때문에 좀 힘들었다.
#BillGates and #LinusTorvalds just met each other for the first time
(The other two are Mark Russinovich and Dave Cutler)
McK shared the below article:
Announcing LogTape 1.0.0
洪 民憙 (Hong Minhee) @hongminhee@hackers.pub
LogTape 1.0.0 has been released, marking a significant milestone for this zero-dependency logging library designed for the modern JavaScript ecosystem. This release emphasizes API stability and introduces high-performance features such as non-blocking sinks for console, stream, and file logging, along with the `fromAsyncSink()` function for integrating asynchronous logging operations. New sink integrations include packages for AWS CloudWatch Logs and Windows Event Log, enhancing LogTape's versatility. The update also brings a visually appealing console logging experience with the `@logtape/pretty` package, and seamless integration with existing Winston or Pino setups through adapter packages. Key developer experience enhancements include programmatic access to log levels and improved browser compatibility. LogTape 1.0.0 streamlines logging infrastructure with a comprehensive package ecosystem, offering specialized packages for various logging needs. This release provides a stable and mature logging solution, making it easier to manage and optimize logging in JavaScript applications.
Read more →McK shared the below article:
If you're building a JavaScript library and need logging, you'll probably love LogTape
洪 民憙 (Hong Minhee) @hongminhee@hackers.pub
LogTape offers a novel approach to logging in JavaScript libraries, designed to provide diagnostic capabilities without imposing choices on users. Unlike traditional methods such as using debug packages or custom logging systems, LogTape operates on a "library-first design" where logging is transparent and only activated when configured. This eliminates the fragmentation problem of managing multiple logging systems across different libraries. With zero dependencies and support for both ESM and CommonJS, LogTape ensures minimal impact on users' projects, avoiding dependency conflicts and enabling tree shaking. Its universal runtime support and efficient performance make it suitable for various environments. By using a hierarchical category system, LogTape prevents namespace collisions, offering a seamless developer experience with TypeScript support and structured logging patterns. LogTape provides adapters for popular logging libraries like Winston and Pino, bridging the transition for users invested in other systems. Ultimately, LogTape offers a way to enhance library capabilities while respecting users' preferences and existing choices, making it a valuable consideration for library authors.
Read more →Hackers' Pub은 과연 언제까지 우리집 홈서버에서 버틸 수 있을 것인가…!? (걱정하시는 분들을 위해: 백업은 6시간마다 정기적으로 하고 있습니다.)
@hongminhee洪 民憙 (Hong Minhee) 이거 누르면 어떻게 되나요
소프트웨어 개발자들이 자주 틀리는 외래어 표기법.
| 영어 | 틀린 표기 | 올바른 표기 |
|---|---|---|
| app | 어플 | 앱 |
| application | 어플리케이션 | 애플리케이션 |
| directory | 디렉토리 | 디렉터리 |
| front-end | 프론트엔드 | 프런트엔드 |
| message | 메세지 | 메시지 |
| method | 메소드 | 메서드 |
| release | 릴리즈 | 릴리스 |
| repository | 레포지토리 | 리포지터리 |
또 있을까요?


![> 다음 C 프로그램이 하는 일을 알려 줘. [코드 생략]
이 C 프로그램은 **난독화(obfuscated)**된 코드로, 입력받은 **시간 또는 단위가 포함된 문자열**을 해석하여 총합을 계산한 뒤, 그 결과를 **16진수(Hexadecimal)**로 출력하는 프로그램입니다.
구체적인 작동 방식은 다음과 같습니다:
1. **입력 처리**:
* `getchar()`를 통해 표준 입력(stdin)에서 문자를 하나씩 읽어들입니다.
* `|32`를 통해 대문자를 소문자로 변환하여 처리합니다.
2. **문자 매핑 (해싱)**:
* `"ynwtsflrabg"`라는 문자열은 입력받은 문자가 특정 단위(예: year, week, second 등)인지 확인하기 위한 인덱스 문자열입니다.
* 입력된 문자가 이 문자열에 포함되면 변수 `b`에 특정 해시 값을 누적합니다.
3. **단위 변환 및 계산**:
* `"1+DIY/.K430x9G(kC["`라는 복잡한 문자열은 **룩업 테이블(Lookup Table)** 역할을 합니다.
* 내부 루프에서 이 테이블과 비트 연산(`&255^b`)을 통해 현재 입력된 단위가 무엇인지(예: 'y'가 연도인지, 's'가 초인지) 판별합니다.
* `u=1ll<<6177%n--*4` 부분은 각 단위에 맞는 **가중치(Multiplier)**를 계산합니다. `<<` 비트 시프트 연산을 사용하는 것으로 보아, 특정 단위마다 2의 제곱수 형태의 배수를 적용하거나, 혹은 시간을 초 단위(또는 나노초 단위)로 변환하는 계수를 생성합니다.
4. **결과 누적**:
* 변수 `m`에 파싱된 수치와 단위 가중치를 곱하여 누적합니다.
5. **출력**:
* 최종적으로 계산된 값 `m`을 `printf("%llx\n", m)`을 통해 **16진수(long long hex)** 형태로 출력합니다.
**요약하자면:**
이 코드는 "1y(1년)", "2w(2주)", "30s(30초)"와 같은 형식의 텍스트를 입력받아, 이를 초(second)나 특정 기본 단위로 환산한 총합을 16진수로 보여주는 **단위 변환 계산기**입니다.](https://media.hackers.pub/note-media/53eb3036-9463-495d-bb5c-a04de12a7f21.webp)


깻잎 (상태: 좀비) 









