Differences between revisions 1 and 42 (spanning 41 versions)
Revision 1 as of 2025-07-24 13:42:43
Size: 6275
Editor: 정수
Comment:
Revision 42 as of 2025-12-30 07:52:13
Size: 4075
Editor: 정수
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)를 형성합니다.

Overlapping Communities (중심들의 중첩)

이 언어의 패턴들은 다섯 개의 주요 중심점(Centers of Gravity) 주변으로 모여 있지만, 많은 패턴이 두 개 이상의 맥락에 동시에 존재하며 다리 역할을 합니다.

1. The Mind & Rhythm (인식과 리듬의 중첩)

빠른 피드백이 명료한 인식을 가능하게 하고, 명료한 인식이 리듬을 유지합니다.

2. The Theory & Growth (이론과 진화의 중첩)

문제를 이해하는 언어가 시스템이 자라나는 구조를 결정합니다.

3. The Soul & Reflection (협력과 성찰의 중첩)

개인의 성찰은 공동체의 대화를 통해 정교해지고, 공동체는 개인의 성장을 지지합니다.

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 (창발적 역동)

Current Status

* 35개 패턴 완성 (Foundation, TDD/Design, Collaboration)


CategoryAiGardenProject CategoryPatternLanguage

AiGarden/ToJuniorsPatternLanguage (last edited 2025-12-31 03:35:40 by 정수)