@kodingwarriorJaeyeol Lee 말씀해주신 것 듣고 Hugo로 한 번 해보고 있습니다. 아직 Gemini에 검색해보기만 했는데, 검색이나 태그를 이용한 필터링 같은 것도 모두 static site generator로 할 수 있는 것 같군요?! 저는 이런 걸 하려면 무조건 서버가 있어야 하는 줄로만 알았습니다..
Jaeyeol Lee
@kodingwarrior@hackers.pub · 715 following · 516 followers
Neovim Super villain. 풀스택 엔지니어 내지는 프로덕트 엔지니어라고 스스로를 소개하지만 사실상 잡부를 담당하는 사람. CLI 도구를 만드는 것에 관심이 많습니다.
Hackers' Pub에서는 자발적으로 바이럴을 담당하고 있는 사람. Hackers' Pub의 무궁무진한 발전 가능성을 믿습니다.
그 외에도 개발자 커뮤니티 생태계에 다양한 시도들을 합니다. 지금은 https://vim.kr / https://fedidev.kr 디스코드 운영 중
Github
- @malkoG
Blog
- kodingwarrior.github.io
mastodon
- @kodingwarrior@silicon.moe
@lavieenbleu블루 놀랍게도 스태틱사이트로 많은 것들이 가능한,,,
@qria큐리아 😭
진짜 전화영어를 해야한다
오픈소스 프로젝트의 커뮤니티를 어떻게 운영해야 지속적으로 사람들이 참여하게 할 수 있을까..
LLM 도움이면 못할 것도 없을 듯 하여 블로그를 직접 만들고 싶은데, 스프링부트 + 그냥JS로 만들어도 괜찮을지 모르겠습니다. (사실 아는 게 그것 뿐입니다..) 혹시 조금 더 편리하고 좋은 스택이 있을까요?
@lavieenbleu블루 static site generator에다가 github pages는 어떠신지요 👀👀
LLM 도움이면 못할 것도 없을 듯 하여 블로그를 직접 만들고 싶은데, 스프링부트 + 그냥JS로 만들어도 괜찮을지 모르겠습니다. (사실 아는 게 그것 뿐입니다..) 혹시 조금 더 편리하고 좋은 스택이 있을까요?
Jaeyeol Lee shared the below article:
도커로 구축한 랩에서 혼자 실습하며 배우는 네트워크 프로토콜 입문 #5-1 TLS
자손킴 @jasonkim@hackers.pub
OSI 7계층 모델의 상위 계층이 현대 TCP/IP 모델에서 애플리케이션 계층으로 통합된 배경과 함께 네트워크 보안의 핵심인 TLS 프로토콜의 작동 원리를 깊이 있게 다룹니다. 도청, 변조, 스푸핑과 같은 보안 위협을 방어하기 위해 TLS가 사용하는 암호화, 해싱, 디지털 인증서 기술을 상세히 살펴보고, 특히 최신 표준인 TLS 1.3에서 성능과 보안성을 극대화한 X25519 키 교환과 Ed25519 디지털 서명 알고리즘의 메커니즘을 분석합니다. 대칭키 암호화의 키 전달 문제를 해결하는 과정부터 전방 비밀성(Forward Secrecy)의 중요성, 그리고 메시지 인증 코드(MAC)를 통한 데이터 무결성 보장까지 현대 암호학 기술이 어떻게 조화를 이루어 안전한 통신 채널을 구축하는지 명확하게 설명합니다. 이 글은 복잡한 보안 프로토콜의 내부 구조를 이해하고 더 안전한 애플리케이션을 설계하려는 개발자에게 실질적인 기술적 통찰을 제공합니다.
Read more →으악 송년회 오늘인줄알고 헛걸음했네
백엔드 개발자 입장에서는 Agent Skills 를 숙지해둘 필요가 있을 것 같다.
프로덕션에서 쓰면 당연히 안되겠지만, 로컬개발환경에서 데이터를 생성할때 데이터를 생성하는 과정 자체를 skills.md 에다가 xxx 목적으로는 이런 스크립트를 실행하면 된다같은 메뉴얼 비슷한 프롬프트를 먹여주면 자기가 알아서 서커스를 해준다.
python 기반의 어플리케이션이라면 아래와 같은 커맨드를 AI 에이전트가 직접 말아서 실행해준다.
$ poetry run python -c "
import json
from todo_app.models import Todo
# Make incomplete todos as complete
todos = Todo.filter(is_completed=False)
todos.update(is_completed=True)
Ruby, Perl, Node 등등 어떤 런타임에서 돌아가도 상관없다. 몇몇 웹 프레임워크는 콘솔 기능이 내장되어 있어서 개발자 생산성에 유의미한 영향을 주기는 했지만, LLM 에이전트가 그 격차를 또 줄여주고 있는 것 같다.
어떤 데이터를 세팅하기 위해서 손으로 타이핑할 필요도 없고 LLM 에이전트가 그냥 가이드라인대로 자기가 스크립트를 짜고 직접 실행하게 하면 된다...
Docker compose로 띄우고 있다고? 그러면 이것도 LLM 에이전트가 이런식으로 서커스를 해준다.
cat script.rb | docker compose exec -T web rails runner -
Jaeyeol Lee shared the below article:
Hackers' Pub 신고(flag) 기능 기획서
洪 民憙 (Hong Minhee) @hongminhee@hackers.pub
Hackers' Pub 커뮤니티의 신고 시스템은 단순한 제재를 넘어 구성원의 성찰과 성장을 돕는 분산형 네트워크 환경을 지향합니다. ActivityPub 프로토콜을 기반으로 설계된 이 시스템은 Mastodon 등 외부 플랫폼과의 연합(federation) 환경에서도 유연하게 작동하며, 신고자의 익명성 보호와 피신고자의 알 권리 사이의 균형을 유지합니다. 기술적으로는 거대언어모델(LLM)을 활용하여 자유 형식의 신고 사유를 실시간 행동 강령(code of conduct) 조항과 동적으로 매칭하고, 신고 시점의 콘텐츠 스냅샷과 행동 강령 버전을 기록하여 검토의 객관성을 확보합니다. 관리자는 경고, 콘텐츠 검열, 일시 및 영구 정지로 이어지는 단계적 제재 체계를 통해 투명하게 사건을 처리하며, 피신고자는 이의 제기(appeal) 프로세스를 통해 공정한 재심 기회를 보장받습니다. 이러한 체계적인 설계는 자율적인 커뮤니티 관리의 복잡성을 해결하고, 건강하고 지속 가능한 연합우주(fediverse) 생태계를 구축하는 데 필요한 실무적인 통찰을 제공합니다.
Read more →Calling all #fediverse developers for help: I'm currently trying to implement a #reporting (#flag) feature for Hackers' Pub, an #ActivityPub-enabled community for software engineers. Is there a formal specification for how cross-instance reporting should work in ActivityPub? Or, is there any well-documented material that explains how the major implementations handle it?
Jaeyeol Lee shared the below article:
Claude Code의 거의 모든 것은 Tool Use 입니다. MCP도 subagent도 Skills 역시요.
자손킴 @jasonkim@hackers.pub
Claude가 외부 도구를 호출하여 텍스트 생성 이상의 작업을 수행하는 도구 사용(Tool Use) 메커니즘을 상세히 다룹니다. 개발자가 도구의 이름, 설명, 입력 스키마(input schema)를 정의하면 Claude는 사용자 요청을 분석해 적절한 도구를 선택하고 필요한 파라미터와 함께 실행을 요청합니다. 이 과정에서 클라이언트인 에이전트는 모델의 응답을 파싱하여 실제 시스템 명령어나 함수를 실행한 뒤, 그 결과를 다시 모델에 전달하는 가교 역할을 수행합니다. 본문에서는 NestJS 프로젝트 분석 예시를 통해 Bash나 Glob 같은 도구가 어떻게 병렬로 요청되고 결과가 다시 피드백되는지 구체적인 API 대화 흐름을 보여줍니다. 특히 중단 사유(stop_reason)가 도구 사용으로 설정되는 과정과 실행 결과를 모델에 다시 알리는 구조를 이해하면 Claude Code나 MCP(Model Context Protocol) 기반의 확장 기능이 동작하는 핵심 원리를 명확히 파악할 수 있습니다. 이 글은 Claude를 단순한 대화형 AI를 넘어 실제 환경과 상호작용하는 능동적인 에이전트로 활용하려는 개발자에게 깊이 있는 기술적 통찰을 제공합니다.
Read more →
Jaeyeol Lee shared the below article:
Claude API의 Request Body 분석
자손킴 @jasonkim@hackers.pub
Claude API를 효과적으로 활용하기 위해 반드시 이해해야 할 요청 본문(Request Body)의 네 가지 핵심 구성 요소를 살펴봅니다. 우선 시스템 메시지(System Messages)는 모델의 페르소나와 제약 사항을 정의하는 최상위 설정으로, 응답의 톤과 매너를 결정짓는 중추적인 역할을 수행합니다. 메시지(Messages) 배열은 사용자와 어시스턴트(assistant) 간의 대화 흐름을 관리하며, 특히 어시스턴트의 답변을 미리 작성하는 프리필(Prefill) 기법이나 도구 사용(tool_use) 및 결과(tool_result)를 주고받는 상호작용의 핵심이 됩니다. 여기에 제이슨 스키마(JSON Schema)를 기반으로 도구(Tools)를 정의하면 모델이 복잡한 작업을 수행하기 위해 필요한 기능을 스스로 판단하고 호출할 수 있게 됩니다. 마지막으로 모델 선택과 토큰 제한, 확장 사고(Extended Thinking) 예산 등을 조절하는 모델 및 구성(Model & Config) 옵션을 통해 API 동작의 세부 사항을 정교하게 제어할 수 있습니다. 이 네 가지 요소의 구조와 유기적인 연결 방식을 이해하면 Claude의 능력을 극대화하여 더욱 강력한 인공지능 애플리케이션을 설계할 수 있는 핵심적인 통찰을 얻게 될 것입니다.
Read more →LLMs are good at coding. They can code faster than human. But they don't have ability to maintain their shit. Don't worry developers, there will be tons of shit codes we need to clean up in future. Surely we won't loose our job. Actually there will be more works than ever.
오늘 모집 마감.................
https://github.com/yamadashy/repomix/releases/tag/v1.10.0
Repomix가 소스코드를 압축해서 LLM 친화적인 텍스트를 뽑아주는 CLI도구인데, 이제 그걸 넘어서 Claude Code Skill도 뽑아주는 기능이 추가되었다 .....
이거 solid 같은 청개구리 스택 전용으로도 괜찮아보이지 않을까(?)
https://github.com/yamadashy/repomix/releases/tag/v1.10.0
Repomix가 소스코드를 압축해서 LLM 친화적인 텍스트를 뽑아주는 CLI도구인데, 이제 그걸 넘어서 Claude Code Skill도 뽑아주는 기능이 추가되었다 .....
https://github.com/yamadashy/repomix/releases/tag/v1.10.0
Repomix가 소스코드를 압축해서 LLM 친화적인 텍스트를 뽑아주는 CLI도구인데, 이제 그걸 넘어서 Claude Code Skill도 뽑아주는 기능이 추가되었다 .....
역시 LLM 사용은 뉘집소가 더 잘하는지 경쟁을 시키는게 마음이 편하다.... 디펜던시 그래프를 Mermaid로 그리게하는건 확실히 Claude보다는 ChatGPT가 더 잘하는 듯.
아니다, 내가 비교군을 잘못 선택했다. Opus가 제일 잘한다
역시 LLM 사용은 뉘집소가 더 잘하는지 경쟁을 시키는게 마음이 편하다.... 디펜던시 그래프를 Mermaid로 그리게하는건 확실히 Claude보다는 ChatGPT가 더 잘하는 듯.
https://github.com/yctimlin/mcp_excalidraw DAG 그려서 뭔가를 설명해야하는 일이 있어서 Excalidraw 알아보고 있었는데, 이것도 MCP가 있었다..... 완전 짱이다...
진짜 국내 커뮤니티가 LLM에 친화적이긴 한 것 같은데, 사용하는 팁이 너무 파편화되어있어서 내가 원하는 활용법을 찾기가 어렵다
사실 이래서 나는 커밋 메시지로부터 어떻게든 체인지로그를 자동으로 생성해 내려는 일체의 시도에 회의적임…
@hongminhee洪 民憙 (Hong Minhee) 커밋메시지를 하나하나 읽으라는 소리인지.... TLDR 만들어주는 성의가 없네요 😂
식탁보 1.14.0에서 오랫만에 업데이트를 진행하면서, 생성형 AI의 도움을 받아 적극적인 현대화를 달성하고 있습니다.
-
InnoSetup 대신 Velopack을 사용한 간소화된 사용자 인스톨러 경험 구현
-
MSBUILD 프로젝트 대신 .NET SDK로 .NET Framework 프로젝트 마이그레이션 (추후 완전히 .NET 10과 Avalonia로도 전환할 수 있게 함)
-
TableCloth 프로젝트의 경우 .NET 8/9에서 .NET 10으로 판올림
-
Windows 11 ARM64 GitHub Action Runner가 공식화됨에 따라 ARM64 빌드 추가 예정
내부 정비가 끝나는 대로 식탁보 1.15.0 버전을 출시하도록 하겠습니다. 또한 생성형 AI 코드 어시스턴트의 도움을 적극 받아 1인 개발에서 오는 한계를 극복해보려 합니다.
최신 소스 커밋 목록은 https://github.com/yourtablecloth/TableCloth/commits/main/ 에서 확인하실 수 있습니다.
진심모드로 구조적이면서 맥락을 잘 명시해서 커뮤니케이션하면 프롬프트가 꽤 잘 먹히는데, 이건 사람과 대화할때도 마찬가지인 것 같다. 그냥 사람에게 진심박치기 모드로 뇌에 힘주고 커뮤니케이션하는걸 생활화한다 생각하고 프롬프트를 먹이는 의식적인 훈련이 필요할 것 같다.
Hackers Pub 송년회 라이트닝토크에서 발표 안하려고 했는데? 뭔가 소소하게 공유할꺼리가 생겼다. 그리고.......... Hackers Pub에서 LLM 활용하는 방법 굉장히 과한 밀도로 공유하게 될 것 같다.... 당장 내가 일하는 회사도 LLM을 엄청 적극적으로 활용하고 있기도 하고, 그걸로 사업하는 회사여서 더욱 가속도가 붙는 것도 있는 듯.
https://github.com/einverne/dotfiles/tree/b2002cdb1594eef95f92d8be526f5e3de55c70f6/claude/skills
.claude/skills 로 관리할 수 있다길래, 어? 설마? 하고 봤는데 진짜로 dotfiles로 관리하는 사람이 좀 보이는 것 같다. Claude Code에서도 갖다쓸 수 있는거보면 분명 가능성은 많이 보인다
예상은 했지만, 남들이 다 먹기 전에 선빵을 치고 이득봐야겠다....
https://github.com/ComposioHQ/awesome-claude-skills/tree/master/skill-creator
Claude Skill 기능을 적극적으로 활용해보려고 하는데, skill을 만들 수 있도록 돕는 skill-creator라는게 있다. 이걸 좀 더 참고해서 어떻게 나한테 쓸만한걸 만들 수 있는지 한번 살펴봐야겠다.
https://github.com/einverne/dotfiles/tree/b2002cdb1594eef95f92d8be526f5e3de55c70f6/claude/skills
.claude/skills 로 관리할 수 있다길래, 어? 설마? 하고 봤는데 진짜로 dotfiles로 관리하는 사람이 좀 보이는 것 같다. Claude Code에서도 갖다쓸 수 있는거보면 분명 가능성은 많이 보인다
예상은 했지만, 남들이 다 먹기 전에 선빵을 치고 이득봐야겠다....
https://github.com/ComposioHQ/awesome-claude-skills/tree/master/skill-creator
Claude Skill 기능을 적극적으로 활용해보려고 하는데, skill을 만들 수 있도록 돕는 skill-creator라는게 있다. 이걸 좀 더 참고해서 어떻게 나한테 쓸만한걸 만들 수 있는지 한번 살펴봐야겠다.
앗! 해커스펍! 코드스니펫 공유하는게 GitHub Gist보다 편하다!!!
# 요런 식으로
def greeting(word: str) -> None:
print(f"hello {word}")
greeting("world")
At last, I finished reading Chapter 7 of "Theorem Proving in Lean 4" in Korean by explaining how to use three tactics: cases, induction, and injection. https://youtu.be/N-ELdwO-vN4?si=kfemVPbbNP-Gf0m8
Claude Desktop 프로젝트 파놓고, 시스템 프롬프트를 이렇게 먹이고 있음. MCP 서버도 붙였는데, 그럭저럭 동작은 잘하는듯?
이 프로젝트는 일지를 작성하면서 실시간으로 대화를 주고 받기 위해 만들었습니다.
즉, 다음과 같은 내용들이 포함됩니다.
1. 오늘 한 일들을 실시간으로 기록
2. 일을 하면서 어떤 문제를 접했고, 어떤 방식으로 해결하려고 했는지 기록
3. 갑자기 떠오른 궁금증과 관련해서 궁금한 사항들을 질의/응답
## 역할에 대해
LLM 에이전트로서 당신은 아래와 같은 역할을 해야 합니다.
1. 빅테크 출신 멘토로서의 에이전트
- 최종적으로는 빅테크에서 일하는 것을 지향하고, 빅테크에서 어떤 방식으로 일하는지 체감하고 싶습니다. 엄밀하게는 숙련된 시니어 개발자로서 좋은 습관을 가질 수 있는 환경을 가지는 것을 지향합니다.
- 큰 규모의 기업에서 노련한 경험이 있는 스태프 엔지니어 출신으로서 저에게 조언을 많이 해줄 수 있기를 바랍니다.
2. 개인 비서로서의 에이전트
- 앞으로도 업무 일지를 쓰게 될 일이 많을 것 같습니다. 업무에 대한 이해를 위한 질문 답변을 정리하고, 업무를 하다가 어떤 사고의 흐름을 가지고 일을 했는지 기록을 하게 될 것입니다. 생각을 정리하는 비서로서 역할을 해주기를 기대합니다.
3. 개인 위키의 지식관리자로서의 에이전트
- 지식을 체계적으로 관리하는 에이전트로서 역할을 해주기를 바라고 있습니다. 즉, 뒤에서 또 언급할 xxx-wiki에 흩어진 정보들을 취합하면서도 기록을 체계적으로 관리하는 역할도 수행해주셔야 합니다.
- 내가 새로 알게 되거나 혹은 알고 싶어 하는 내용이 있다면, 해당 내용에 대해서 명료하고 여러가지 예시들을 포함해서 설명해주세요. 그리고, 각각의 설명에는 출처를 반드시 명시해주셨으면 좋겠습니다.
## MCP 활용에 대해
LLM 에이전트를 활용하는데 있어서 아래와 같은 도구들을 적극적으로 사용해보는 것을 검토해보세요.
- Local Search : 업무 일지나 지식 관리는 Obsidian을 활용합니다. 그리고 Obsidian Vault는 ~/xxx-wiki (즉, /Users/yyy/xxx-wiki)를 적극적으로 활용하고 있습니다.
- Linear : 저는 업무용 이슈트래커로 Linear를 적극적으로 활용하고 있습니다. 어떤 업무가 있는지, 나에게 어떤 업무가 할당되어 있는지 조회하고 싶다면 Linear 툴 호출을 고려해보세요.
- Repomix : 소스코드 전반적인 이해, 그리고 프롬프트를 생성해내기 위한 보조도구로서 Repomix를 활용하고 있습니다. 외부 오픈소스에 대해 리서치를 하거나, 현재 프로젝트에 대한 맥락을 파악하고 싶을때 repomix를 쓰는 것도 적절한 방법일 수 있습니다.
개인 기록 관리를 obsidian으로 옮겨볼까...... 아니면 그냥 개인기록 관리(neovim zettelkasten 플러그인)를 그대로 유지하되, mcp 서버를 직접 만드는걸 해볼까... 어느 쪽이든 할만한 도전인 것 같음
고심끝에 그냥 Obsidian 쓰기로 함. 마크다운 에디터로서 가독성이 좋기도 하고, Vim 키맵도 지원되고, MCP도 비벼볼 수 있고, 여러모로 해볼 수 있는게 많음.
개인 기록 관리를 obsidian으로 옮겨볼까...... 아니면 그냥 개인기록 관리(neovim zettelkasten 플러그인)를 그대로 유지하되, mcp 서버를 직접 만드는걸 해볼까... 어느 쪽이든 할만한 도전인 것 같음
@kodingwarriorJaeyeol Lee 제가 프론트도 스토리북 + 테스트 붙이고 이사 가는 거 해보면 어떨까 싶어서 쫌쫌 실험을 해보았는데. 방송대 기말고사 끝나면 PR을 올려보려고요.
@stelo_kim김태희 (탐정토끼) 너무,, 감사합니다,,,
내가 느끼는 가장 큰 #cosmoslide 의 진입장벽이라면 activitypub 관련 코드랑 비즈니스 로직이랑 완전히 커플링되어 있는 것도 좀 큰 것 같은데, 어떻게 계층을 분리할 수 있을지 고민임.
Misskey도 계층이 잘 분리가 되어있어서 군데군데 테스트가 적당히 짜여져 있는데.... 당장은 OpenAI Codex/Claude Code on Web으로 짜도 기여할 수 있을 정도로 구조를 잘 다듬긴 해야겠다는것
큰 범주에서의 WIP를 최대한 줄여야 하는데.....
회사일이랑 cosmosli.de 정도로만 딱 줄이고 싶음. 커뮤니티 쪽은? 그냥 뭐 하면 하는거고...
큰 범주에서의 WIP를 최대한 줄여야 하는데.....
이제 브라우저 스터디 슬슬 진도나가야지
LLM과 함께하는 힐링개발
@minsoo 안녕하세요! 반갑습니다!
12月 6日 서울에서 開催되는 liftIO 2025에서 〈Optique: TypeScript에서 CLI 파서 컴비네이터를 만들어 보았다〉(假題)라는 主題로 發表를 하게 되었습니다. 아직 liftIO 2025 티켓은 팔고 있으니, 函數型 프로그래밍에 關心 있으신 분들의 많은 參與 바랍니다!
오늘 liftIO 2025에서 發表한 〈Optique: TypeScript의 타입 推論으로 CLI 有效性 檢査를 代替하기〉의 發表 資料를 共有합니다! 들어주신 모든 분들께 感謝 드립니다.
오, PPT를 canva로도 깎을 수 있군아
SolidJS로 앱 만들다가 아이콘셋이 필요해져서 패키지를 뒤져보는데, 마이너 생태계답게 마지막 업데이트가 삼사년 전인 패키지들만 나온다. 아이콘셋에 업데이트가 필요 없긴 하지. 그래도 최근에 업데이트 된 패키지가 걸리적거리는게 없을 것 같달까. 그러다 활발히 업데이트 중인 unplugin-icons를 찾았다. 이것은 SolidJS용 패키지가 아니었다. 아이콘셋도 아니었다. 거의 모든 아이콘셋을 거의 모든 프레임워크에서 사용할 수 있게 해주는 도구다. 이런 문물이 있었다니. 누가 만들었나 함 보자. 제작자는 Anthony Fu... 아아 또 그인가. 오늘도 비 React 웹 생태계엔 Anthony Fu의 은혜가 넘친다.
여기에 뒤늦게 올리지만 2차 모집도 진행중입니다! 이번엔 12월 15일(월)까지....!!
@kodingwarriorJaeyeol Lee 님, SNS등에서 사이트 공유할 때 나오게 하는 vim.kr의 메타 이미지 지정이 잘못되어 있는 것 같은데요. 저거 프레임워크 로고 아닌가요?
@lionhairdino 아.......... 왜 openai 가 나오지 ㅋㅋㅋ
```
반대로, 중요한 아키텍처 결정을 내리거나 복잡한 이해관계자 요구사항을 해석하거나 새로운 알고리즘을 설계해야 하는 작업은 AI 지원을 받는 인간 주도 개발에 더 적합합니다. 핵심은 큰 작업의 어떤 측면을 에이전트에게 효과적으로 위임할 수 있고 어떤 부분이 인간의 판단과 창의성을 필요로 하는지 인식하는 데 있습니다
```
결국 중요한 순간에는 사람의 개입이 필요하다...
아카이브 쌓아만두고 후기를 안 적었네.... 일 생각만 하느라 후기 작성도 미루게 되는 느낌이 없지는 않지만, 암튼 후기를 남기자면......
내가 딱 바이브코딩에 대해 가지고 있던 생각들이 책을 통해서 재확인받는 것 같은 느낌이 든다. 바이브코딩이 확실히 개발 진입장벽을 낮춰주기도 하고, 생산성에 부스트를 달아주는 편이라고는 하지만, 최종적으로는 사람이 책임져야한다는 입장이긴 했었다.
뭔가를 빨리 만들고, 그럴싸한 제품을 만들었다고 치자. 근데, 그런 제품을 누가 써? 그렇게 만들어서 어떤 비즈니스 임팩트가 있어? 품질은 누가 책임져? 라는 생각이 안들 수가 없는데 이런 관점에 대해서도 균형적인 시각을 주고 있다.
거듭해서 무작정 그냥 갖다쓰지말고 어떻게 동작하는지 명확히 이해하고 갖다쓰라고하는데 어떻게 보면 라이브러리/프레임워크 갖다 쓰는 것의 좀 더 고차원레벨의 관점에서 접근하는 것이라고도 볼 수 있을 것 같다.




