5월 23일 퀀텀이 x86을 런칭합니다.
https://www.meetup.com/Qtum-X86-Virtual-Machine-Launching/events/250539290/
곧 Official channel을 통해 이야기가 나올 것으로 생각됩니다.
생각보다 많은 분들이 x86이 어떤 의미를 가지는지에 대해 잘 모르는 부분이 많아 이야기를 해볼까 합니다.
x86이 무엇인가?
x86은 인텔의 마이크로프로세서 계열의 명령어 세트를 의미합니다.
뭔 소리지? 라는 분들을 위해 풀어 설명을 하자면, 현재 모든(이라고 해도 과언이 아닐 정도로 대부분) 컴퓨터는 x86을 기반으로 동작합니다.
그런 대다수의 컴퓨터에게 명령을 내릴 수 있는 명령어 세트를 의미하는 단어가 x86입니다.
현재 이 글을 읽고 있을 분들의 컴퓨터의 윈도우OS부터 대다수의 프로그램은 x86 기반으로 동작을 하고 있습니다.
여기서 잠깐, VM이란?
현재 퀀텀을 비롯한 많은 코인들이 EVM (Ethereum Virtual Machine) 위에서 동작합니다.
VM(Virtual Machine)은 가상머신으로 소프트웨어로 구동되는 컴퓨터 환경입니다.
최근 윈도우에서 안드로이드 virtual machine을 구동하여 PC에서 스마트폰 앱을 이용하는 분들도 많은데 이와 같이 소프트웨어로 만들어진 가상의 컴퓨터로 이해하시면 편할 듯 합니다.
EVM은 이더리움 가상머신으로 많은 코인들이 이 EVM 위에서 동작을 하게 됩니다.
당연히 이더리움 플랫폼을 사용하는 erc20 토큰들은 EVM 위에서 동작하기 때문에 EVM이 알아들을 수 있는 명령어로 코드를 짜서 구동되며 스마트 컨트랙트가 가능합니다.
그런데 문제는, EVM이 일반적인 개발자들에게는 너무 '생소한' Solidity 라는 프로그래밍 언어로 만들어졌다는 부분입니다.
솔리디티에는 몇가지 문제가 있는데,
그렇다면 x86은 어떤 장점을 가지고 있을까요?
그래서 x86이면 뭐! 뭐가좋다는거냐!
간단하게 이야기하면
EVM : ERC20 Token 코드 (솔리디티로 코딩) > EVM > 실제 동작
x86 : x86 VM이 알아들을 수 있는 코드 (x86 기반 언어로 코딩) > x86 VM > 실제 동작
개발자(혹은 개발사)의 입장에서는 엄청난 것이 바뀌게 되는 부분입니다.
플랫폼이란 개발 생태계가 굉장히 중요합니다.
안드로이드는 JAVA 언어를 기반으로 한 안드로이드 SDK와 Android Studio라는 IDE를 만들어 개발자들에게 제공을 했습니다.
출시와 배포를 쉽게 할 수 있는 구글플레이와 함께 안드로이드 앱들이 엄청나게 많아지며 성공을 거두었습니다.
애플 역시 ObjectiveC라는 언어로 시작하여 자체적으로 개발한 Swift라는 언어와 함께 XCode라는 IDE를 제공, 앱스토어를 통해 개발자 혹은 개발사들이 앱을 만들며 생태계를 이루어냈습니다.
반대로 바다 OS는 큰 홍보비를 사용하고도 참패를 면치 못했습니다.
이유는 간단합니다.
플랫폼은 사용자와 개발 생태계가 매우 중요합니다.
대다수 개발자들(개발사들)이 JAVA나 C# 등 언어를 통해 프로그래밍을 하고 있는 상황에서 Solidity는 꽤나 높은 진입장벽입니다.
한국 뿐 아니라 해외에서도 (제대로 하는) 블록체인 개발자를 찾기가 힘든 이유 중 하나입니다.
마치 JAVA는 한글처럼 편하게 글을 쓸 수 있는데, Solidity는 힌두어마냥 더듬더듬 배워나가고, 수 없이 많은 삽질을 새로 해 나가며 새로 배워야 하는 언어이기 때문입니다.
오픈소스 플랫폼에서 개발자 생태계가 이루어지기 힘들다는 이야기는 꽤나 비관적인 이야기입니다.
퀀텀의 x86 VM이 만약 성공적으로 런칭된다면, 개발자 및 개발사들은 보다 쉽게 블록체인을 개발할 수 있게 되며 스마트 컨트랙트를 이용한 다양한 애플리케이션의 개발이 가능해집니다.
개인개발자나 스타트업외에도 대기업에서도 이미 기존에 개발력을 갖추고 있을 경우 내부인원으로 보다 빠르고 안정적으로 블록체인 사업을 시작할 수 있게 됩니다.
엔드유저 입장에서는 어떤 형태의 어플리케이션이든 블록체인의 형태가 아닌 안드로이드 혹은 iOS, 웹으로 제공되기 때문에 x86 VM이 엔드유저에게 가져다 주는 큰 변화는 없지만 플랫폼에 필수적인 '개발 생태계'를 이루는데는 엄청난 영향을 끼치는 발표입니다.
이더리움 위에서 서비스 중인 디앱들에게도 x86 VM기반에서 익숙한 언어로 개발을 진행할 경우 위에서 나열한 기술적인 장점 이외에도 훨씬 빠른 개발 속도와 안정성을 제공받게 됩니다. 저와 같은 현업 개발자들이 쉽게 블록체인을 서비스에 올려 볼 수도 있게 됩니다.
뿐 아니라 x86 VM을 내세워 이미 개발자의 생태계를 이루기 위한 플랫폼은 구축을 했으니 이어 Enterprise version 발표(실제 기업들을 대상으로 한 기업용 QTUM's x86 VM 사용을 위한 협약) 및 EQA도 비로소 가시권안에 들어오게 됩니다.
23일을 손꼽아 기다려 봅니다.
퀀텀 트랜잭션과 포스 등 퀀텀 홀더에게 필요한 기능을 제공하는 'Happy Qtum'이란 앱을 개발하여 서비스중입니다.
https://play.google.com/store/apps/details?id=com.shakej.qtum_wallet_transaction
암호화폐 자산관리를 돕는 '코인돼지'라는 앱도 개발하여 서비스 중입니다.
https://play.google.com/store/apps/details?id=com.shakej.coinpig
글 관련 문의 : [email protected] (http://mnworld.co.kr)
추가사항
* 스팀잇에 글을 처음 적어보았는데 신기하네요 ㅎㅎ
https://steemit.com/qtum/@ray-jung/x86
* 아랫글에 XBox와 Play station간의 비유가 있는데, 전혀(완전히) 다른 이야기입니다. XBox와 Play station은 게임 컨텐츠, 하드웨어 등 경쟁 구도가 매우 다양합니다. (플랫폼이라는 부분만 동일합니다.)
이더리움과 퀀텀의 경우 엔드 유저에 닿는 부분의 경로가 다양합니다. 안드로이드, iOS, 웹 등 서비스 뒤쪽에서 돌아가는 부분입니다. 때문에 엔드유저보다는 개발사의 입장에서 x86이 어떤 의미를 가져다 줄지를 판단해야 하는 부분이고, 개발사 (dApp 개발사 뿐만 아니라 자사의 서비스에 블록체인을 얹고 싶어 하는 개발사)는 솔리디티를 기반으로 한 EVM이 아닌 x86 VM이 비교적 저렴한 비용에 안정적인 환경에서 구현이 가능하기 때문에 (심지어 노드도 확보가 되어 있는 상태- 노린건가?) 굉장히 큰 이벤트입니다.