인공지능이 프로그래밍 돕는다

지난 몇 년 동안 깃허브(GitHub)는 개발자의 워크플로우를 근본적으로 바꿔놨다. 코드를 접근하기 쉬운 플랫폼 상에 통합하면서 프로그래밍 방식이 빠르게 바뀐다. 이런 상황에 따라 이스라엘 스타트업 코도타(Codota)는 때론 방치되어 있던 개발자 커뮤니티에 대한 워크플로우를 인공지능으로 최적화하려 한다.

코도타의 자동 완성 툴은 개발자가 짧은 시간에 많은 코드를 작성할 수 있도록 돕는다. 코도타는 IDE(Integrated Development Environments)를 이용해 지능성 코드 완성 기능을 확장하고 있다. 코도타는 단순히 간단한 코드 몇 가지를 개발자에게 추천하는 게 아니라 더 큰 코드 집합을 추천할 수 있다.

코도타 공동 창업자인 드로어 바이스(Dror Weiss)와 에란 야하브(Eran Yahav)는 깃허브와 스택오버플러우의 오픈소스 가운데 장점만 활용해 코도타를 만들었다. 이 모든 공개 코드는 머신러닝 모델에 입력되어 코드 블록 전체 의미를 높은 수준으로 인식할 수 있다.

프로그래밍 언어는 일반 언어와 상당 부분이 구조적으로 비슷하다. 예를 들어 단어는 무한하게 많은 나열 방식을 통해 생각이나 감정을 표현할 수 있다. 마찬가지로 동일 명령을 다양한 방법으로 코드에 표시할 수 있다. 코도타가 코드의 거시적 의도를 파악하는 걸 중요하게 생각하는 이유도 여기에 있다.

물론 자연 언어와 코드가 완전히 유사하지는 않다. 코도타 팀에 따르면 자연 언어 처리에 있어 의미는 단어 주변의 복수 단어를 보고 판단한다. 프로그램은 보다 체계적이며 의미가 항상 주변과 강하게 연관되어 있는 건 아니다. 따라서 텍스트에서만 의미를 찾는 게 아니라 프로그램 동작에 대해서도 초점을 맞춘다.

코도타를 이용하면 속도의 정확성이 향상될 뿐 아니라 코도타는 코드 발견과 교육에도 도움을 줄 수 있다. 코도타는 수백만 개에 이르는 API를 통해 학습해왔기 때문에 개발자에게 최상의 방법을 제공하는 데 도움을 줄 수 있다. IDE와 함께 코도타를 이용하면 코드에서 이상한 부분을 표시하고 더 나은 방법을 제시한다. 이런 가르침은 라이브러리 원작자 코드에서 직접 인용한 게 많다.

코도타의 주 수익원은 코도타를 이용한 기업에 부과하는 사용 요금이다. 지금은 자바만 지원하지만 앞으로 다른 언어로 확장해갈 계획이라고 한다. 코도타는 최근 코슬라벤처스로부터 200만 달러 시드 투자를 유치했다고 밝히기도 했다. 코도타에 대한 자세한 내용은 이곳에서 확인할 수 있다.



%d bloggers like this: