> 1999년에 테리 타오(Terence Tao)와 함께 만든 Java 1.0 수학 애플릿, Allen Knutson의 honeycomb 시각화, 그리고 Besicovitch 집합의 컬러 표시까지. 지지가 끊긴 지 25년이 지난 옛 자바 애플릿 24개를 최신 코딩 에이전트로 JavaScript로 이식하면서 배운 것들을 정리합니다.

- --
무엇을复活한 건가
이번 프로젝트의 주인공은 1999년 Allen Knutson과 Terence Tao가 만든 Java 1.0 수학 애플릿 모음입니다. 저자는 그중 약 24개를 현대 코딩 에이전트(주로 Claude Code, Codex 계열)를 써서 JavaScript로 이식했고, 이식 과정에서 원래 애플릿에는 없던 시각화 기능(예: Besicovitch 집합의 컬러링 표시)까지 추가했습니다.
1999년 Java 애플릿이 흥했던 이유는 브라우저 안에서 작은 수학 시뮬레이션을 바로 띄울 수 있었기 때문입니다. 하지만 브라우저에서 Java 플러그인이 deprecated된 2017년 이후로는 더 이상 실행할 수 없었고, 그 사이 25년 동안 이 시뮬레이션들은 사실상 죽은 콘텐츠 취급을 받았습니다. 게다가 1999년 당시의 웹페이지는 대부분 아카이브조차 되어 있지 않아, 원본 소스를 구하기 어렵다는 점도 큰 장벽이었습니다.
왜 코딩 에이전트가 필요했는가
단순한 "Java → JavaScript 번역"이 아니었습니다. 이번 작업의 진짜 어려운 점은 다음 세 가지였습니다.
- 1999년의 Java 표준 라이브러리 코드를 그대로 옮기기 어려운 경우가 많았습니다. AWT의 더 이상 쓰이지 않는 클래스나, 더 이상 지원되지 않는 패키지를 그대로 쓰는 옛 코드가 많아서, 단순 변환만으로는 의미 있는 결과물이 나오지 않았습니다.
- 원본이 동작하려면 원본 워크플로(매개변수 입력, 그래픽 렌더링, 인터랙션)를 그대로 흉내내야 했습니다. 그렇지 않으면 수학적 의미를 잃어버립니다.
- 새로운 시각화 기능을 추가해야 했습니다. Besicovitch 집합의 컬러 표시 같이, 1999년 당시에는 구현하기 어려웠던 시각화를 코딩 에이전트가 만드는 데 큰 진가가 있었습니다.
이식 과정에서 발견한 것들
1. 옛 코드는 그대로 옮기지 말고 "다시 이해하고" 쓴다
단순 번역은 거의 항상 실패했습니다. 저자는 "복잡한 옛 코드를 그대로 옮기지 말고, 코딩 에이전트에게 자바스크립트로 같은 일을 하라고 시키되, 옛 코드 자체에 매몰되지 않게 했다"고 적었습니다. 1999년 코드의 의도(예: 어떤 매개변수가 어떤 시각적 효과로 이어지는지)를 자연어로 풀어 설명하면, 코딩 에이전트는 매우 정확한 모던 구현을 만들어냅니다.
2. 매개변수 슬라이더는 시간이 많이 걸렸지만 보람이 있었다

각 애플릿에는 보통 3~5개의 매개변수가 있었는데, 슬라이더를 붙여서 실시간으로 매개변수를 바꿔가며 결과가 어떻게 변하는지 관찰할 수 있게 만들었습니다. 이 부분은 단순히 "옛 동작 재현"이 아니라 새로운 학습 도구를 만드는 단계이기 때문에, 코딩 에이전트와 함께 한 단계 더 추상화하는 작업이 필요했습니다.
3. 모던 시각화는 옛 컬러 팔레트보다 풍부하다
Besicovitch 집합의 컬러링 같은 경우, 1999년 당시에는 256색 팔레트로 비슷한 색을 구별하는 것이 어려웠습니다. 하지만 모던 브라우저에서는 충분히 부드러운 그라데이션을 그릴 수 있으므로, 코딩 에이전트에게 "옛 컬러링을 단순히 흉내내지 말고, 컬러 그라데이션으로 더 풍부하게 표현해달라"고 시킨 결과, 시각적으로 훨씬 의미가 잘 드러나는 그림이 나왔습니다.
어떤 코딩 워크플로가 가장 효과적이었나
저자가 강조한 워크플로는 두 가지였습니다.
- "기능을 작은 단위로 쪼개서 시키기". 한 번에 큰 애플릿 하나를 통째로 이식시키는 것은 거의 항상 실패했고, 한 함수가 한 가지 일을 하는 작은 단위로 쪼개서 시킬 때 가장 정확도가 높았습니다. 이건 모던 코딩 에이전트의 표준 패턴과도 일치합니다.
- "원본 링크를 코딩 에이전트에게 함께 넘기기". 데모 페이지의 HTML/JavaScript를 함께 넘기면, 코딩 에이전트는 단순히 "어떤 동작을 해야 하는지"뿐 아니라 "어떻게 사용되는지"까지 알게 되어 더 정확한 추론을 보여줍니다.
수학 교육의 의미
옛 자바 애플릿이 흥했던 때는 대학원생들이 자기 연구의 핵심 동작을 작은 시뮬레이션으로 만들어 동료들에게 공유하던 시대였습니다. 그때 만든 시뮬레이션들이 25년 만에 다시 살아나면서, 이제 두 가지 일이 가능해집니다.
- 옛 시뮬레이션의 수학적 의미를 워크숍이나 세미나에서 실시간으로 보여줄 수 있습니다.
- 옛 동작을 매개변수를 바꿔가며 탐구할 수 있으므로, 수업에서 직접 시연하기 좋은 도구가 됩니다.
저자는 이 과정을 통해 "옛날 가르침 자료도 코딩 에이전트와 함께 살릴 수 있다"는 결론을 얻었고, 비슷한 시도를 가진 사람이 있다면 시도해볼 만하다고 적었습니다.
정리
- 옛 코드를 옮길 때는 번역보다 이해 후 재작성이 효과적입니다.
- 매개변수 슬라이더를 붙이는 것만으로도 학습 도구로서의 가치가 크게 올라갑니다.
- 모던 브라우저에서 가능한 부드러운 컬러 그라데이션 같은 시각화는 더 이상 256색 팔레트로 표현하지 않습니다.
- 작은 단위로 쪼개서 시키고, 원본 동작 + 사용 예시를 함께 전달하는 워크플로가 가장 잘 동작합니다.
25년 전에 만든 시뮬레이션을 모던 코딩 에이전트로 다시 살린 사례는, "옛날 자산을 어떻게 활용할 것인가"에 대한 좋은 사례입니다. 옛날 자산을 코딩 에이전트와 함께 모더나이즈하면, 단순히 동작을 복원하는 데서 끝나지 않고 그 시대에는 불가능했던 시각화까지 더해지는 부수 효과가 따라옵니다.
- --
- 원문: terrytao.wordpress.com / 긱뉴스 31374*
📰 원본 출처 · https://news.hada.io/topic?id=31374 (#N=31374)
이 글은 GeekNews(긱뉴스)에 게제된 글을 기반으로 작성되었습니다. 원본의 라이선스와 저작권은 원작자에게 있습니다.
'AI 뉴스' 카테고리의 다른 글
| AI 에이전트가 새로운 SaaS다 — "제품이 곧 업무"로 가는 a16z의 프레임 (0) | 2026.07.14 |
|---|---|
| 만든 SaaS를 AI에게 말만 하면 등록되는 MCP 서버 — saaskr.com이 등록 폼을 MCP로 열었다 (0) | 2026.07.14 |
| AI 토큰은 데이터센터를 어떻게 여행하는가 — 15단계 경로와 두 가지 병목(prefill/decode) (0) | 2026.07.13 |
| AI 에이전트 시대의 새로운 SaaS 플레이북 — 소프트웨어 포장 너머의 희소 자산 (0) | 2026.07.13 |
| Claude Code는 프롬프트 전에 3.3만 토큰, OpenCode는 7천 토큰 — API 경계에서 발견한 코딩 에이전트 토큰 비용의 진짜 차이 (0) | 2026.07.13 |