원문: https://nolanlawson.com/2026/01/31/building-a-browser-api-in-one-shot/TL;DR 프롬프트 하나로 Claude Code와 Ralph 루프를 사용해 IndexedDB 구현체를 만들었습니다. 목표로 삼은 Web Platform Tests 하위 집합의 95%를 통과했고, 더 엄격한 테스트 하위 집합은 77.4%를 통과했습니다.정작 놀라웠던 점은 두 프로젝트 모두 Web Platform Tests(WPT)를 제대로 활용하지 않는 듯 보였다는 것입니다. WPT에는 헤아릴 수 없이 많은 사람의 시간이 들어간 전문 지식이 응축되어 있습니다. 브라우저가 어떻게 동작해야 하는지를 가장 기이한 엣지 케이스까지 정밀하게 정의해 둔 결과물이죠. (두 번째 프로젝트는..
전체 글
안녕하세요. 사진과 철학에 관심이 많은 웹 프론트엔드 개발자 오원종입니다. 시간이 지나도 꾸준히 읽힐 수 있는 글을 쓰고 싶습니다. 재미있는 일만 하면서 살고 있는 사람입니다.원문: https://www.matuzo.at/blog/2025/whats-an-interactive-element2년 전에 저는 dialog 요소에 관한 글을 썼습니다. showModal() 메서드로 모달 다이얼로그를 열었을 때 포커스가 어디로 가는지 테스트했습니다. 요소와 속성을 여러 조합으로 바꿔 가며 어떤 일이 일어나는지 살펴봤는데, 2023년 당시에는 동작이 무척 일관되지 않았기 때문입니다.테스트 중 하나에서 저는 dialog 요소에 tabindex 속성을 넣었습니다. 이번 주 초에 Joy가 저에게 연락한 것도 그래서였습니다. MDN의 dialog 요소 페이지에 다음과 같이 쓰여 있어서, 그게 좋은 방법인지 확신이 서지 않았던 겁니다.그리고 사용 시 주의 사항은 이렇습니다. 요소는 인터랙티브하지..
26.09.14 ~ 26.09.18Dia 브라우저를 처음 써 보게 되었다.오늘 팀 회의에서 동료가 Dia라는 브라우저가 새로 나왔다고 해서 써 보게 되었다. 생각보다 엄청 깔끔하고 편리했다.일반적인 브라우저랑 다른 기능이 눈에 들어왔는데, 내 슬랙 + 구글 (지메일 등) + 마이크로소프트 (아웃룩, 팀즈 등) + 아틀라시안 (지라, 컨플루언스 등) 등 도구들을 다 연결해서 나를 위한 Brief를 만들어 주었다. 내 슬랙 안에 있던 대화들, 이메일들을 다 읽어서 내가 체크해야 할 일들과 해야 할 일들을 알려주었는데 너무 편하고 신기했다. 물론 이 기능이 Trial 기간 동안 지금 쓰고 있고, 계속 쓰려면 월 $100을 내야 한다고 해서 아마 안 쓸 것 같긴 하지만 ㅎㅎ 세상이 점점 더 편해지고 있다는 생각..
26.09.07 ~ 26.09.11재미이론에 대한 책을 읽었다최근 사무실에서 이라는 책이 있어서 흥미로워 보여 읽게 되었다. 삽화가 많아서 어렵지 않게 재미있게 읽을 수 있었던 것 같다. 인상적이었던 부분은 우리가 패턴화된 동작들을 게임을 통해서 기대하고 즐거움을 느낀다는 점과, 그 패턴이 계속 반복된다면 그 과정에서 지루함을 느낄 수 있기 때문에 변화를 주어야 한다는 내용이었다. 얼핏 보았을 때는 모순된 내용처럼 들리기도 한 이야기가 나한테는 많은 울림을 주었다. 결국 재미있는 게임을 만들고 싶어 하는 나에게 무엇이 필요한지 생각해 볼 수 있었던 재미있는 책이었다.좋은 소프트웨어(제품)를 만드는 것과 재밌는 게임을 만드는 것도 상관관계가 있다는 것을 느꼈다. 결국 익숙한 패턴이 있어서 사용자들이 사용에..
영어의 중요성요즘 스픽(Speak)으로 영어 공부를 출퇴근길에 조금씩 하고 있다. 업무에서 당장 영어를 쓰고 있지는 않지만, 나중에 조금 더 많은 커리어 기회를 가지기 위해서 부족한 영어 실력을 향상시키기 위해 노력하는 중이다.이전에 화상 영어 서비스를 통해 실제 외국인과 대화하는 서비스도 여러 가지 써 보았는데, 장점도 많았지만 비용도 비싸고 스케줄 잡기도 어려워서 지속하지 못했다. 스픽이 좋은 점이 있다면, AI랑 영어 대화를 하기 때문에 시간에 구애받지 않을 수도 있고, 비용도 사람과 대화하는 것보다 훨씬 더 저렴하다. 할인받고 스픽 시작하기하지만 스픽에도 아쉬운 점이 있다. 더 독창적이고 풍부한 표현을 알려 주지는 못하는 것 같다. 주제마다 (인터뷰, 여행, 스몰 토크 등) 사용할 수 있는 다양한..
26.08.24 ~ 26.08.28레이싱 제작 사내 클럽에 조인했다최근에 게임 제작에 대한 이해도와 경험을 쌓고자, 사내에서 레이싱 게임을 제작하는 사이드 프로젝트 클럽에 조인했다. 수요일에 첫 미팅을 했는데 새로운 오피스도 처음 가보고, 새로운 구성원분들과 처음 만나서 이야기도 하니 즐거운 경험을 했다.Forza나 Need for Speed 같은 류의 게임을 만드는 것을 목표로 하는데 생각보다 고려해야 할 것들이 많아서 놀랐다. 엔진음은 어떤 것을 쓸지부터 브레이크와 드리프트를 어떻게 적용할지 등등, 진짜 레이싱을 하는 듯한 경험을 주기 위해 신경 써야 할 점들이 많았다. 그래서 나중에 실제 레이싱을 경험해 보는 시간도 가지자는 이야기가 나왔는데, 이렇게 게임에 진심이신 분들을 만나니 나도 더 열정을 ..
26.08.17 ~ 26.08.21한기용 멘토님과 1:1 커리어 피드백 시간을 가졌다예전부터 내가 좋아하고 존경하던 한기용 멘토님과 오늘 아침 1:1로 커리어 피드백을 듣는 시간을 가졌다. 나한테는 굉장히 유의미한 시간이었다. 내가 알고 있던 이야기를 해 주신 것도 많았고, 새롭게 알게 된 사실도 많았다. 몇 가지 적어보면불안감에 대학원에 가는 선택은 바람직하지 않다는 조언이 와닿았다. 아직 젊고 커리어 초창기이기 때문에, 이것저것 회사 밖에서도 많이 해보고 사람 많이 만나보고 가능하면 다음 회사는 익숙함보다 새로운 도전적인 환경이 많이 있는 곳을 갔으면 좋겠다는 말도 와닿았다. 내 본성과 반대되었기 때문이다.돈을 쫓아서 가지 말고, 내가 오랫동안 신뢰하며 연락할 수 있는 동료가 많은 곳으로 가라는 말도..
26.08.10 ~ 26.08.14소프트웨어 테스팅에 대한 책을 읽으며요즘에 틈틈이 개발 서적을 읽고 있는데 이라는 책을 보고 있다. 보면 볼수록 테스트를 정말 꼼꼼하게 하는 과정에서는 아무리 훌륭한 AI 모델이라도 한계가 있겠다는 생각이 들었다. 책에서는 간단한 명세 기반 테스트 예제를 소개를 하는데, 간단한 기능임에도 입력값에 따라서 나올 수 있는 케이스가 기하급수적으로 늘어나고 요구사항이 하나만 바뀌어도 많은 변화가 생긴다. 구획과 경계를 나누고 구체적인 테스트 케이스를 작성하는 것은 오히려 AI보다 사람이 더 잘할 수도 있겠다는 생각이 들었다. 이 기능을 만든 주체가 사람이라면 말이다.요즘 기능을 구현하는 데 드는 시간은 AI로 인하여 점점 줄어들고 있고, 처음에 설계를 하고 구현된 걸 테스트하는..
