|
Size: 6275
Comment:
|
Size: 4075
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 5: | Line 5: |
| 주니어 개발자들을 위한 프로그래밍 지혜를 Christopher Alexander의 패턴 언어로 변환하는 프로젝트. | ''주니어 개발자들을 위한 패턴 언어 - 35개의 살아있는 중심들의 세미-격자(Semi-lattice) 연결망'' 이 패턴 언어는 위계적인 나무(Tree) 구조가 아닙니다. 각 패턴은 여러 맥락에 걸쳐 있으며, 서로 겹치고 교차하며 전체적인 '''살아있는 구조(Living Structure)'''를 형성합니다. |
| Line 9: | Line 11: |
| == Project Vision == | == Overlapping Communities (중심들의 중첩) == |
| Line 11: | Line 13: |
| [[기술문서모음/ToJuniors]] 페이지의 27개 핵심 격언들을 개별 패턴으로 확장하여, 반격자(semi-lattice) 구조의 상호 연결된 지식 네트워크를 구축한다. 각 패턴은 이솝우화 스타일의 스토리텔링으로 작성되어 초보자들이 쉽게 이해하고 기억할 수 있도록 한다. | 이 언어의 패턴들은 다섯 개의 주요 '''중심점(Centers of Gravity)''' 주변으로 모여 있지만, 많은 패턴이 두 개 이상의 맥락에 동시에 존재하며 다리 역할을 합니다. |
| Line 13: | Line 15: |
| == Pattern Language Structure == | === 1. The Mind & Rhythm (인식과 리듬의 중첩) === 빠른 피드백이 명료한 인식을 가능하게 하고, 명료한 인식이 리듬을 유지합니다. * [[PresentMoment]], [[SingleFocus]], [[ActiveReflection]], [[TightLoop]], [[ShortLeash]] * ''핵심 역동: '''명료함과 흐름(Clarity & Flow)'''. 현상을 직시하는 마음과 1초 이내의 피드백 루프가 만날 때 개발자는 몰입 상태에 진입합니다.'' |
| Line 15: | Line 20: |
| === Foundation Patterns (가장 기본적) === '''[[TinyExperiment]]''' (완성) - 작은 실험 환경을 통한 점진적 학습과 개발 ↳ enables → BabyStep, UseAbduction, HereAndNowDebugging ↳ used by → TddIsDesignActivity, PiecemealGrowthCenterFirst |
=== 2. The Theory & Growth (이론과 진화의 중첩) === 문제를 이해하는 언어가 시스템이 자라나는 구조를 결정합니다. * [[TwoWorlds]], [[DataAsFoundation]], [[LanguageBuilding]], [[StrongCenter]], [[OrganicGrowth]], [[LivingVocabulary]] * ''핵심 역동: '''의미의 전개(Unfolding Meaning)'''. 문제 공간의 본질이 데이터와 언어로 형상화되고, 이것이 강한 중심이 되어 전체 시스템으로 자라납니다.'' |
| Line 20: | Line 25: |
| '''UseDataToMakeLogicSimple''' - 관심사 분리의 기본 원칙 ↳ supports → MakeDSL, DoNotMixLogicAndDataConstruction ↳ enables → FindCommonalityAndVariability |
=== 3. The Soul & Reflection (협력과 성찰의 중첩) === 개인의 성찰은 공동체의 대화를 통해 정교해지고, 공동체는 개인의 성장을 지지합니다. * [[TechnicalCommunity]], [[SharedMind]], [[FlowingFeedback]], [[MasterApprentice]], [[ThinkingMirror]], [[CognitiveMicroscope]], [[CraftPath]] * ''핵심 역동: '''지혜의 공명(Resonance of Wisdom)'''. 인지 현미경으로 포착한 암묵지가 페어 프로그래밍과 멘토링을 통해 팀 전체의 자산으로 흐릅니다.'' |
| Line 24: | Line 30: |
| '''ProblemSpaceSolutionSpace''' - 근본적 사고 체계 ↳ guides → NamingIsDesignPractice, MakeItWorkThenMakeBetter ↳ supports → TddIsDesignActivity |
=== 4. The Safety Net (기술적 안전과 심리적 용기) === 기술적 장치가 주는 안전함이 대담한 시도와 성장을 가능하게 합니다. * [[SafetyNet]], [[GreenRefuge]], [[BabySteps]], [[AtomicCommit]], [[ArtisanMind]] * ''핵심 역동: '''구조 보존적 변환(Structure-Preserving Transformation)'''. 언제든 돌아갈 곳이 있다는 확신이 있을 때, 시스템은 파괴되지 않고 영원히 진화할 수 있습니다.'' |
| Line 28: | Line 35: |
| === Intermediate Patterns (기초 위에 구축) === '''BabyStep''' - 핵심적 진화적 접근법 ↳ connected to → MicroCommit, ShortFeedbackCycle ↳ enables → PiecemealGrowthCenterFirst ↳ requires → DoNotGuessValidateIt |
== Cross-Community Bridges (다리 역할을 하는 패턴들) == |
| Line 34: | Line 37: |
| '''NamingIsDesignPractice''' - 추상화 생성 ↳ uses → ProblemSpaceSolutionSpace ↳ supports → MakeDSL ↳ enables → FindCommonalityAndVariability |
이 패턴들은 서로 다른 영역을 잇는 결정적인 연결 고리입니다: |
| Line 39: | Line 39: |
| '''TddIsDesignActivity''' - 피드백을 통한 설계 ↳ uses → ProblemSpaceSolutionSpace, BabyStep ↳ requires → ShortFeedbackCycle, UseAbduction ↳ produces → RegressionTest |
* '''[[CognitiveMicroscope]]:''' 개인의 '''메타인지'''(Mind) 도구이면서, 마스터가 제자에게 지식을 전수하는 '''멘토링'''(Soul)의 핵심 수단입니다. * '''[[TightLoop]]:''' 개인의 '''몰입'''(Mind)을 위한 도구이면서, 팀 전체의 '''피드백 흐름'''(Soul)을 결정하는 인프라입니다. * '''[[StrongCenter]]:''' 시스템의 '''설계'''(Theory) 원칙이면서, 유기적 '''성장'''(Growth)의 출발점이 되는 물리적 닻입니다. * '''[[DetectiveWork]]:''' 기술적인 '''디버깅'''(Rhythm) 과정이면서, 시스템의 '''이론'''(Theory)을 수정해 나가는 인지적 과정입니다. |
| Line 44: | Line 44: |
| === Application Patterns (구체적 실천) === '''MicroCommit''' - 버전 제어 원칙 ↳ implements → BabyStep ↳ enables → PiecemealGrowthCenterFirst |
== Core Emergent Dynamics (창발적 역동) == |
| Line 49: | Line 46: |
| '''UseAbduction''' - 탐구 방법 ↳ supports → TddIsDesignActivity, HereAndNowDebugging ↳ opposite of → DoNotGuessValidateIt |
* '''The Living Theory:''' [[LanguageBuilding]] + [[LivingVocabulary]] + [[OrganicGrowth]] * 시스템이 자람에 따라 언어가 함께 진화하며 살아있는 이론을 구축합니다. * '''The Continuous Evolution:''' [[BabySteps]] + [[AtomicCommit]] + [[SafetyNet]] + [[DirectPath]] * 단순함을 유지하며 끊임없이 작은 변화를 축적하여 거대한 전체를 만듭니다. |
| Line 53: | Line 51: |
| '''HereAndNowDebugging''' - 디버깅 접근법 ↳ uses → UseAbduction, EliminateIntermediateLayers ↳ implements → DoNotGuessValidateIt === Meta-Patterns (과정 자체에 대한) === '''CraftNotScience''' - 개발 철학 ↳ manifests through → BabyStep, LastFivePercentAutomation ↳ guides → LearnFromExperts '''LastFivePercentAutomation''' - 자동화의 한계 ↳ reflects → CraftNotScience ↳ requires → PairProgrammingWithJuniors === Social Patterns (팀 역학) === '''PairProgrammingWithJuniors''' - 지식 전수 ↳ enables → LearnFromExperts ↳ uses → YesButYesAnd ↳ supports → LastFivePercentAutomation == Pattern Template == 각 패턴은 Alexander의 형식을 따르되, 이솝우화 스타일로 작성된다: ``` #acl +All:read = PatternName = == Context == 언제 이 패턴이 적용되는가 == Problem == 스토리나 우화로 문제 상황 묘사 == Solution == 구체적이고 실행 가능한 해결책 문단 형태로 자연스럽게 서술 == Examples == 실제 개발 상황의 구체적 예시들 캐릭터와 스토리가 있는 경험담 == Resulting Context == 이 패턴 적용 후의 상황 == Related Patterns == * '''Uses:''' 이 패턴이 사용하는 다른 패턴들 * '''Used by:''' 이 패턴을 사용하는 패턴들 * '''Enables:''' 이 패턴이 가능하게 하는 패턴들 * '''Complements:''' 보완하는 패턴들 |
== Current Status == * 35개 패턴 완성 (Foundation, TDD/Design, Collaboration) |
| Line 105: | Line 55: |
| CategoryPattern ``` == Complete Proverb List == '''Data & Logic Design:''' 1. "use data to make logic simple" 2. "make DSL" 3. "do not mix logic and data construction" '''Programming Philosophy:''' 4. "last 5% automation" 5. "craft, not science" 6. "Make it work, then make it better" 7. "problem space, solution space" 8. "naming itself is a design practice" 9. "programming is to make a language system" '''Programming Fundamentals:''' 10. "공통점과 차이점 찾기" (Find commonality and variability) '''TDD & Evolutionary Design:''' 11. "Baby Step" 12. "quickly step back to closest green-bar" 13. "TDD is a design activity" 14. "short feedback cycle" 15. "micro commit, one at a time" 16. "isolation" 17. "use abduction" 18. "piecemeal growth, center first" '''Testing & Debugging:''' 19. "eliminate/reduce intermediate layers" 20. "넘겨짚지 말고, 마술의 동작과 동작 사이를 잘 들여다보기" 21. "do not guess far. when you guess, validate it" 22. "regression test" 23. "Here and now debugging" '''Collaboration & Team:''' 24. "XP over Scrum for developers" 25. "pair programming with juniors" 26. "Yes, but / Yes, and" '''Learning & Expertise:''' 27. "Learn from experts (CTA, CDE)" == Implementation Strategy == '''Phase 1: Foundation (현재)''' - [x] [[TinyExperiment]] (완성) - [ ] UseDataToMakeLogicSimple - [ ] ProblemSpaceSolutionSpace '''Phase 2: Intermediate Layer''' - [ ] BabyStep - [ ] NamingIsDesignPractice - [ ] TddIsDesignActivity '''Phase 3: Application Patterns''' - [ ] MicroCommit - [ ] UseAbduction - [ ] HereAndNowDebugging '''Phase 4: Meta & Social''' - [ ] CraftNotScience - [ ] LastFivePercentAutomation - [ ] PairProgrammingWithJuniors '''Phase 5: Integration''' - [ ] Update [[기술문서모음/ToJuniors]] with all pattern links - [ ] Create pattern relationship visualization - [ ] Validate semi-lattice structure == Progress Log == '''2024-01:''' Project initiated. First pattern [[TinyExperiment]] created with story-driven approach. Enhanced from bullet-point structure to Aesop's fable style storytelling. Pattern successfully integrates assumption, validation, fail-safe, fast feedback loop, isolation, baby step, and abduction concepts. == References == * Christopher Alexander - "A Pattern Language", "The Timeless Way of Building" * [[기술문서모음/ToJuniors]] - Original proverb collection * [[OrgPatterns]] - Pattern language inspiration and structure * [[가추법]] - Abduction methodology ---- CategoryAiGardenProject CategoryPattern |
CategoryAiGardenProject CategoryPatternLanguage |
AiGarden/ToJuniorsPatternLanguage
주니어 개발자들을 위한 패턴 언어 - 35개의 살아있는 중심들의 세미-격자(Semi-lattice) 연결망
이 패턴 언어는 위계적인 나무(Tree) 구조가 아닙니다. 각 패턴은 여러 맥락에 걸쳐 있으며, 서로 겹치고 교차하며 전체적인 살아있는 구조(Living Structure)를 형성합니다.
Contents
Overlapping Communities (중심들의 중첩)
이 언어의 패턴들은 다섯 개의 주요 중심점(Centers of Gravity) 주변으로 모여 있지만, 많은 패턴이 두 개 이상의 맥락에 동시에 존재하며 다리 역할을 합니다.
1. The Mind & Rhythm (인식과 리듬의 중첩)
빠른 피드백이 명료한 인식을 가능하게 하고, 명료한 인식이 리듬을 유지합니다.
PresentMoment, SingleFocus, ActiveReflection, TightLoop, ShortLeash
핵심 역동: 명료함과 흐름(Clarity & Flow). 현상을 직시하는 마음과 1초 이내의 피드백 루프가 만날 때 개발자는 몰입 상태에 진입합니다.
2. The Theory & Growth (이론과 진화의 중첩)
문제를 이해하는 언어가 시스템이 자라나는 구조를 결정합니다.
TwoWorlds, DataAsFoundation, LanguageBuilding, StrongCenter, OrganicGrowth, LivingVocabulary
핵심 역동: 의미의 전개(Unfolding Meaning). 문제 공간의 본질이 데이터와 언어로 형상화되고, 이것이 강한 중심이 되어 전체 시스템으로 자라납니다.
3. The Soul & Reflection (협력과 성찰의 중첩)
개인의 성찰은 공동체의 대화를 통해 정교해지고, 공동체는 개인의 성장을 지지합니다.
TechnicalCommunity, SharedMind, FlowingFeedback, MasterApprentice, ThinkingMirror, CognitiveMicroscope, CraftPath
핵심 역동: 지혜의 공명(Resonance of Wisdom). 인지 현미경으로 포착한 암묵지가 페어 프로그래밍과 멘토링을 통해 팀 전체의 자산으로 흐릅니다.
4. The Safety Net (기술적 안전과 심리적 용기)
기술적 장치가 주는 안전함이 대담한 시도와 성장을 가능하게 합니다.
SafetyNet, GreenRefuge, BabySteps, AtomicCommit, ArtisanMind
핵심 역동: 구조 보존적 변환(Structure-Preserving Transformation). 언제든 돌아갈 곳이 있다는 확신이 있을 때, 시스템은 파괴되지 않고 영원히 진화할 수 있습니다.
Cross-Community Bridges (다리 역할을 하는 패턴들)
이 패턴들은 서로 다른 영역을 잇는 결정적인 연결 고리입니다:
CognitiveMicroscope: 개인의 메타인지(Mind) 도구이면서, 마스터가 제자에게 지식을 전수하는 멘토링(Soul)의 핵심 수단입니다.
TightLoop: 개인의 몰입(Mind)을 위한 도구이면서, 팀 전체의 피드백 흐름(Soul)을 결정하는 인프라입니다.
StrongCenter: 시스템의 설계(Theory) 원칙이면서, 유기적 성장(Growth)의 출발점이 되는 물리적 닻입니다.
DetectiveWork: 기술적인 디버깅(Rhythm) 과정이면서, 시스템의 이론(Theory)을 수정해 나가는 인지적 과정입니다.
Core Emergent Dynamics (창발적 역동)
The Living Theory: LanguageBuilding + LivingVocabulary + OrganicGrowth
- 시스템이 자람에 따라 언어가 함께 진화하며 살아있는 이론을 구축합니다.
The Continuous Evolution: BabySteps + AtomicCommit + SafetyNet + DirectPath
- 단순함을 유지하며 끊임없이 작은 변화를 축적하여 거대한 전체를 만듭니다.
Current Status
* 35개 패턴 완성 (Foundation, TDD/Design, Collaboration)
