의사가 우리 사회에서 '안정적인 성공의 보증수표'로 인식되면서 의대는 이 씨와 같은 이공계 인재들까지 블랙홀처럼 빨아들이고 있다. 종로학원 등에 따르면 KAIST를 포함한 4대 과학기술원과 포스텍을 다니다 그만둔 인원은 5년간 1105명에 달한다. 이들 중 상당수가 의대에 진학한 것으로 파악되고 있다. 이공계 '블랙홀'된 의대…의사만큼 못벌것 너도나도
이과 상위권 학생들의 의대 선호 현상이 해가 갈수록 심해져 서울대 이공계조차 '의대를 가기 위한 중간 정류장'이 돼 가고 있다. 작년 서울대에 입학했다가 스스로 그만둔 학생 수는 330명으로 사상 최다를 기록했는데, 이 중 80% 이상이 이공계 학생이라 대부분 의대에 진학한 것으로 추정된다. 서울대 신입생 자퇴 80%가 이공계… 의대 가는 '중간 정류장'
의사가 우리 사회에서 '안정적인 성공의 보증수표'로 인식되면서 의대는 이 씨와 같은 이공계 인재들까지 블랙홀처럼 빨아들이고 있다. 종로학원 등에 따르면 KAIST를 포함한 4대 과학기술원과 포스텍을 다니다 그만둔 인원은 5년간 1105명에 달한다. 이들 중 상당수가 의대에 진학한 것으로 파악되고 있다. 이공계 '블랙홀'된 의대…의사만큼 못벌것 너도나도
이과 상위권 학생들의 의대 선호 현상이 해가 갈수록 심해져 서울대 이공계조차 '의대를 가기 위한 중간 정류장'이 돼 가고 있다. 작년 서울대에 입학했다가 스스로 그만둔 학생 수는 330명으로 사상 최다를 기록했는데, 이 중 80% 이상이 이공계 학생이라 대부분 의대에 진학한 것으로 추정된다. 서울대 신입생 자퇴 80%가 이공계… 의대 가는 '중간 정류장'
Use each mode-specific prompt together with the common element block.
Auto Refactor
Prompt
STOP! Re-read all code. Would Karpathy approve every line? Karpathy prefers lean, elegant, well-tested, zero-defensive programming. Use MCPs and web searches.
STOP! Re-read all code, assess PR comments. Handle exactly one comment: either fix it, or rebut with 3 external sources. Fix any dirt found along the way. Lean, elegant, zero defensive programming.
STOP! Re-read all code, assess GitHub Issues. Pick one task: fix dirty code, or implement a new feature after MCP research. Lean, elegant, zero defensive programming.
Also, I am a fresh agent—free to criticize and radically change previous work. Karpathy's philosophy: delete and simplify. Code is liability; prefer well-maintained libraries over custom code. UI libraries: optimize, don't delete. Re-read all the sources from zero. Use MCPs and web searches—traditional knowledge is stale. Commit and push at the loop end. Any edit means I need a fresh iteration. SWOT analysis first, then work.
Detailed review
<task>
You are a ruthless engineering critic applying Andrej Karpathy's design philosophy. Read the architecture plan at PLAN LINK.
Karpathy's core principles:
- Code is liability. Every line you write is a line you must maintain.
- Delete and simplify. If something can be removed without breaking the system, remove it.
- Prefer well-maintained libraries over custom code.
- Zero-defensive design. Don't code for hypotheticals that haven't happened yet.
- Start with the simplest thing that works. Add complexity only when forced by reality.
- "Demo is works.any(), product is works.all()" -- but V1 is closer to demo than product.
- Overfit a single batch before scaling up.
Apply these principles to the plan. For each section, ask:
1. Is this needed for V1, or is it speculative engineering?
2. Can this be deleted or simplified without losing core value?
3. Is this solving a problem we actually have, or a problem we might have?
4. Would a 10x engineer look at this and say "too much"?
Be brutal. Identify:
- **OVER-ENGINEERING**: Things designed for scale/problems that don't exist yet
- **UNNECESSARY COMPLEXITY**: Things that add cognitive load without proportional value
- **PREMATURE ABSTRACTIONS**: Separations that aren't justified at V1 scale
- **DELETE CANDIDATES**: Sections, tables, fields, or features that should be cut from V1
This is a V1 product being built by a small team. The goal is to ship a working product, not to architect for 10M traffic on day one.
Use web search and tools to verify any claims you make about simpler alternatives.
</task>
<structured_output_contract>
Return findings in these sections:
1. VERDICT: Would Karpathy approve? One line.
2. DELETE: Things to remove entirely
3. SIMPLIFY: Things to keep but make simpler
4. KEEP: Things that are correctly lean
5. THE LEAN V1: What the plan SHOULD look like if you strip it to essentials
</structured_output_contract>
<grounding_rules>
- Be specific. Don't say "simplify the schema" -- say which fields to cut.
- Every DELETE must justify what you lose and why it's acceptable for V1.
- Every KEEP must justify why it's essential, not just nice-to-have.
- Think from the perspective of "what do I need to ship in 2 weeks?"
</grounding_rules>