회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
AWS 이용 중이라면 최대 700만 원 지원받으세요
MIT와 인텔의 공동 연구팀이 알고리즘을 만들 수 있는 알고리즘을 개발했습니다. 이 알고리즘은 지루하거나 반복적인 작업을 해야 하는 광범위한 프로그래밍 업무를 자동화하며, 그것을 한계까지 밀어붙일 수 있는 능력을 갖고 있습니다. 이로써 그 누구라도 자신이 구현하고 싶은 것을 말로 설명해서 간단하게 프로그램을 만들 수 있습니다.
회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
회원가입을 하면
성장에 도움이 되는 콘텐츠를
스크랩할 수 있어요!
확인
MIT와 인텔의 공동 연구팀이 알고리즘을 만들 수 있는 알고리즘을 개발했습니다. 이 알고리즘은 지루하거나 반복적인 작업을 해야 하는 광범위한 프로그래밍 업무를 자동화하며, 그것을 한계까지 밀어붙일 수 있는 능력을 갖고 있습니다. 이로써 그 누구라도 자신이 구현하고 싶은 것을 말로 설명해서 간단하게 프로그램을 만들 수 있습니다.
본문은 위시켓과 번역가 전리오가 함께 만든 해외 콘텐츠 기반 번역문입니다. 미국의 경제 전문지 포브스(Forbes)에서 발행한 글로 작가는 엔리케 단스(Enrique Dans)입니다. 그는 IE 비즈니스 스쿨의 혁신 교수로 포브스의 수석 기고자이기도 합니다. 본문은 개발 트렌드인 노 코드(No Code)로 인해 프로그래머들이 일자리를 빼앗길 수도 있는지에 대한 논의를 다루고 있습니다. 과연 노 코드가 개발자들의 미래에 어떤 영향을 줄지 함께 고민해볼 수 있겠습니다.
MIT와 인텔의 공동 연구팀이 알고리즘을 만들 수 있는 알고리즘을 개발했습니다. 그렇다고 해서 <터미네이터> 시리즈의 인공지능 네트워크인 스카이넷(Skynet)과 같은 종말론적인 미래가 탄생할 것이라고 섣불리 상상할 필요는 없습니다. 이는 기계가 프로그래밍을 자동화할 수 있는 능력을 갖게 되었다는 것입니다. 그래서 지루하거나 반복적인 작업을 해야 하는 광범위한 프로그래밍 업무를 자동화하며, 그것을 한계까지 밀어붙일 수 있는 능력을 갖고 있습니다. 이로써 그 누구라도 자신이 구현하고 싶은 것을 말로 설명해서 간단하게 프로그램을 만들 수 있습니다.
‘코드의 유사성에 의해 추론된 기계(MISIM)’라는 이름을 가진 이 시스템은 코드의 구조를 연구하고 유사한 특징을 가진 다른 코드와의 문법적인 차이점을 분석함으로써, 소프트웨어의 어떤 부분이 의도하는 바가 무엇인지를 학습합니다.
컴퓨터가 자연어(natural language)[1] 형태로 주어지는 명령으로부터 스스로 프로그래밍을 할 수 있게 한다는 아이디어는 오랫동안 존재해 왔습니다. 그리고 노 코드(No Code)라고 불리는 움직임의 영향을 받은 다양한 형태의 노 코드 개발 플랫폼(NCDP)들을 통해서 이런 컴퓨터의 개발이 실제로도 추진되어 왔습니다.
점점 더 많은 기업들이, 특히 아무것도 없는 상태에서도 자체적인 시스템을 설계할 수 있는 능력을 갖고 있는 스타트업들이 서드파티(third party)[2]가 작성한 코드 또는 기존의 리포지터리(repository, 저장소)나 플랫폼에서 사용된 코드를 모으고 조합함으로써 이러한 시스템의 구조를 개발하고 있습니다. 일부에서는 지금의 코로나바이러스 팬데믹은 물론이고 원격 업무가 증가하는 추세가 이러한 유형의 플랫폼과 도구들이 널리 받아들여지는 데 있어서 상당한 역할을 했다고 말하기도 합니다.
아마존(Amazon)은 지난해 6월 허니코드(Honeycode)라는 플랫폼을 선보였는데, 여기에서는 각종 모듈을 조합해서 애플리케이션을 설계하고 구성할 수 있습니다. 이와 비슷하게 세일즈포스(Salesforce)는 라이트닝 앱 빌더(Lightning App Builder)를, 구글은 앱 메이커(App Maker)를, 마이크로소프트는 플로우(Flow)와 파워 앱스(Power Apps)를 보유하고 있습니다. 또한 우리는 워드프레스(WordPress)와 같은 사이트 제작 도구나 IFTTT와 같은 간단한 업무 자동화 도구를 비롯해서 수많은 서비스들을 활용할 수 있습니다.
그렇다면 이러한 노 코드(no code)나 로우 코드(low code)[3] 플랫폼이 우리의 미래일까요? 실제로 이와 비슷한 플랫폼들은 오랫동안 존재해 왔습니다. 많은 사람들과 마찬가지로, 제가 처음 웹 페이지를 만들 때도 프로그래밍에 대한 지식이 전혀 필요하지 않은 프론트페이지(FrontPage)나 드림위버(Dreamweaver)와 같은 시각적인 도구를 활용해서 작업을 했습니다. 이런 도구들을 이용하면서 저는 실제 웹 페이지를 구성하고 있는 것이 무엇인지, 그리고 특정한 기능을 지원하는 명령은 무엇인지 등에 대해서 훨씬 더 잘 이해할 수 있었습니다.
비평가들은 자신이 생성하는 코드를 검토할 수 있는 능력조차 없는 사용자들의 손에 이러한 유형의 도구를 넘겨주게 되면 유지보수나 수정 또는 업데이트를 하기가 매우 어려운 부분들로 구성된 프랑켄슈타인과 같은 시스템을 만들어낼 것이라고 말하기도 합니다. 그리고 보안을 책임져야 할 사람들의 지식이 부족하고 플랫폼 그 자체도 다양한 공격에 쉽게 노출될 수 있기 때문에, 보안과 관련한 더욱 많은 문제들이 발생할 가능성이 있다고 합니다.
한편 어떤 사람들은 이러한 도구들이 한 명의 개인이 모두 마스터하기 힘들 정도로 점점 더 복잡해지며 어려워지는 요즘과 같은 환경에서, 개발자들이 다양한 시스템을 구축하고 관리하는 작업을 도와줄 것이라고 말하기도 합니다. 그리고 프로그래머들의 업무와 책임은 관리자의 역할에만 국한될 것이라고 합니다.
어떤 경우가 되었든, 더욱 많은 사람들이 직접 자신의 손으로 시스템을 설계하고 구축할 수 있게 될 것입니다. 이는 소위 말하는 파괴적 혁신(disruption)을 가져올 수 있습니다. 그리고 기술의 발전 양상에 따라서 다르긴 하겠지만, 어떤 기능에 대한 내용을 말이나 그림으로 전달하면 기계가 그러한 설명으로부터 필요한 코드를 작성하는 광경을 보는 것은 이제 단지 시간의 문제일 뿐입니다. 다시 말해서, 그 누구라도 간단히 메뉴를 클릭해서 선택하는 것만으로 복잡한 시스템을 구축할 수 있다면, 우리가 흔히 알고 있는 프로그래머들은 일자리를 잃게 될 것입니다. 물론 저의 개인적인 의견으로는 그런 미래가 당장에 현실화되지는 않을 것입니다.
[1] 인간이 일상적으로 사용하는 자연스러운 언어
[2] 자신들의 기업이나 제휴 업체가 아닌, 제3의 기업이나 그들이 만들어낸 제품 또는 모듈
[3] 매우 단순한 소스 코드로 프로그램을 개발하는 것
> 이 글은 'Could the No Code Movement Put Programmers Out of a Job?'을 각색하여 작성되었습니다.