"매 reward 의 sometimes 의 passion 의 kill". Deci & Ryan 의 SDT (Self-Determination Theory) 의 sub-theory. 매 autonomy + competence + relatedness 의 3 의 intrinsic motivation 의 fuel. 매 modern gamification, 매 education, 매 product UX 의 base.
매 핵심
Self-Determination Theory 의 3 needs
Autonomy: 매 self-chosen.
Competence: 매 mastery feel.
Relatedness: 매 connection.
→ 매 3 의 satisfy = 매 intrinsic motivation.
Intrinsic vs Extrinsic
Intrinsic: 매 enjoyment / interest 의 itself.
Extrinsic: 매 reward / punishment.
Internalization: 매 extrinsic 의 internalize 의 spectrum.
Over-justification effect (Lepper)
매 paid for activity 의 enjoy → 매 intrinsic 의 lose.
매 famous: 매 kid drawing experiment.
매 implication: 매 reward 의 careful design.
매 reward 의 effect
Type
Effect
Tangible + expected
매 intrinsic ↓
Verbal positive
매 intrinsic ↑
Unexpected
매 less harmful
Task-contingent
매 intrinsic ↓
Performance-contingent (informative)
매 mid
Choice-supportive
매 intrinsic ↑
매 application
Game design
Autonomy: 매 quest choice, 매 customization.
Competence: 매 progression, 매 skill curve.
Relatedness: 매 multiplayer, 매 guild.
Education
Autonomy: 매 project topic choice.
Competence: 매 scaffolded difficulty.
Relatedness: 매 peer collab.
Workplace
Autonomy: 매 schedule, 매 method.
Competence: 매 challenging task + feedback.
Relatedness: 매 team belonging.
Product UX
Autonomy: 매 customization, 매 control.
Competence: 매 onboarding 의 mastery.
Relatedness: 매 social feature.
매 dark side (anti-pattern)
매 tangible reward 의 dominate (cash, gift card).
매 surveillance / monitoring → autonomy ↓.
매 forced ranking → relatedness ↓.
매 over-difficult / under-difficult → competence ↓.
매 modern AI 의 의미
AI assistant: 매 user 의 competence 의 reduce 의 risk.
Recommendation: 매 autonomy 의 illusion vs reality.
Gamification: 매 manipulation 의 risk (dark pattern).
Productivity tracker: 매 surveillance.
💻 패턴 (응용)
Game progression (autonomy + competence)
classQuestSystem{// 매 autonomy: 매 player 의 choose
getAvailableQuests(player){returnthis.quests.filter(q=>q.unlock(player)&&!q.completed(player));// 매 multiple option
}// 매 competence: 매 skill curve
recommendNextQuest(player){constavailable=this.getAvailableQuests(player);constskillLevel=player.estimatedSkill();// 매 zone of proximal development
returnavailable.filter(q=>q.difficulty>=skillLevel-1&&q.difficulty<=skillLevel+2).sort((a,b)=>a.difficulty-b.difficulty)[0];}}
Workplace autonomy (4-day workweek-style)
defautonomy_audit(team):return{'schedule_flexibility':measure(team,'self-set start/end times'),'method_flexibility':measure(team,'choose how to solve'),'topic_flexibility':measure(team,'pick what to work on'),'tool_flexibility':measure(team,'choose tools'),'location_flexibility':measure(team,'remote / hybrid'),}
Educational scaffolding (competence)
defadaptive_difficulty(student,current_skill,performance):"""매 zone of proximal development."""ifperformance>0.85:returncurrent_skill+1# 매 challenge ↑elifperformance<0.5:returncurrent_skill-1# 매 easereturncurrent_skill# 매 stable
Avoid over-justification (verbal > tangible)
defreward_employee(employee,accomplishment):# 매 ❌ Tangible + expected (e.g., $100 for X)# 매 ✅ Verbal + specificfeedback=f"""
{employee.name}, your work on {accomplishment.project} was excellent.
Specifically, your approach to {accomplishment.specific_thing} showed
{accomplishment.competence_demonstrated}. This had {accomplishment.impact}.
"""# 매 unexpected appreciation 의 OKifrandom.random()<0.1:send_appreciation_card(employee,feedback)returnfeedback
Recommendation system 의 autonomy preserve
defrecommend_with_autonomy(user,items):"""매 explainability + 매 user control."""recommendations=ml_model.recommend(user,items)return{'items':recommendations,'why':explain_each(recommendations,user),# 매 transparency'controls':{'less_of_this':lambdaitem:user.feedback_negative(item),'more_of_this':lambdaitem:user.feedback_positive(item),'turn_off_personalization':lambda:user.toggle_personalization(False),},}
# 매 ❌ Productivity tracker showing keystrokes# 매 ✅ Self-tracker only the user seesclassSelfProductivityTracker:"""매 user-only, opt-in."""def__init__(self,user_id):self.user_id=user_idself.private=True# 매 not shared with managerdeflog_focus_session(self,duration):self.sessions.append({'duration':duration,'date':now()})definsights(self):# 매 user 의 onlyreturngenerate_insights(self.sessions)