소프트웨어 개발은 여전히 복잡하고 소수 전문가에게 의존적이며, 대규모 언어모델(LLM)이 확산되었음에도 환경 문제, 도난 코드 기반, 일관성 없는 결과 등 여러 한계를 안고 있습니다. 이에 따라 코드 작성을 자동화하기보다, 코드가 필요한 범위 자체를 줄이는 새로운 추상화 방식이 필요하다는 주장이 제기되었습니다. 이는 인간이 컴퓨터처럼 생각하게 만들기보다, 인간의 자연스러운 사고방식에 가까운 추상화 계층을 구축하자는 움직임입니다.
이러한 이해 가능한 소프트웨어를 위한 첫 단계로 '문서가 먼저인 프로그래밍(Literate Programming)'이 제시됩니다. 이는 코드를 먼저 쓰고 문서를 덧붙이는 기존 관행을 뒤집어, 문서를 먼저 작성하고 그 뒤에 코드를 붙이는 방식입니다. Entangled와 같은 도구는 문서 내 코드 블록과 실제 코드 파일 간의 양방향 동기화를 지원하여 이 접근 방식을 구현합니다. 더 나아가, 코드를 완전히 없애는 시각 프로그래밍(Visual Programming)과 자연어 프로그래밍(Natural Language Programming)도 대안으로 언급됩니다. GUI 기반 시각 프로그래밍은 복잡한 개념을 다루기 쉽게 하고 접근성을 높일 수 있으며, 자연어를 결정론적 추상화로 활용하여 LLM처럼 확률적이지 않고 예측 가능한 방식으로 프로그램을 생성하는 것이 목표입니다. 과거 Eve와 Inform 같은 시도들이 있었으나, 당시 기술적 한계와 수익화 실패로 빛을 보지 못했습니다.
이러한 접근 방식은 프로그래밍의 진입 장벽을 낮춰 비전문가도 소프트웨어 개발에 참여할 수 있게 하는 데 중점을 둡니다. LLM이 인기를 끄는 것은 프로그래밍 자체가 복잡하고 불쾌한 작업이라는 방증이며, 개발자들이 너무 코드 작성에만 몰두하여 단순한 문제에 대한 단순한 해결책을 놓치고 있다는 비판도 나옵니다. ReTangled와 같은 프로젝트는 문학적 프로그래밍을 확장하고 기존 툴체인과 통합하여 이러한 비전을 실현하려 합니다. 궁극적으로는 프로그래밍이라는 개념 자체를 뒤집어, 문서화가 잘 되어 있고 접근 가능한 시각 또는 자연어 프로그래밍 환경을 구축하여 초보자부터 전문가까지 모두에게 유용한 소프트웨어 개발 환경을 제공하는 것이 목표입니다.