블록체인 개발자의 비습(vvisp) 사용기 1편 — SK 텔레콤 김지성 매니저 – HAECHI LABS – Medium

0 58


블록체인 기술 솔루션 기업 ‘해치랩스(HAECHI LABS)’에서 간편한 스마트 컨트랙트 개발을 돕는 오픈소스 개발 도구 ‘비습(vvisp)’에 대한 글을 시리즈로 연재합니다.

[비습(vvisp) 아티클 시리즈]

1. 비습(vvisp) 소개글
2. 비습(vvisp) 5분 튜토리얼
3. 블록체인 개발자의 비습(vvisp) 사용기 1편
4. 블록체인 개발자의 비습(vvisp) 사용기 2편

  1. 안녕하세요, 해치랩스 미디엄 구독자 분들을 위해 자기소개 부탁드립니다!

네 안녕하세요, 저는 SK텔레콤 소프트웨어랩스 블록체인 소프트웨어 개발팀 소속 김지성입니다. 주요 업무는 SK 그룹 내 블록체인 기반 서비스를 개발을 담당하고 있습니다.

2. 김지성 매니저님은 어떤 계기로 블록체인 개발자가 되셨나요?

저는 빅데이터로 커리어를 시작했습니다. 사실 빅데이터는 이미 제품이나 기술에 대한 컴포넌트들이 안정화가 되어있어서 답안지가 다 있는 느낌이었어요. 제가 열심히 해봤자 추가적인 성능만 추가되는 정도인데, 지금 시중에 나와있는 제품들만 잘 조합해도 충분하다는 생각이 들었어요. 이미 성숙된 시장에서 업무를 하던 중에 우연한 기회로 블록체인을 접하게 되었어요.

빅데이터는 ‘모든 데이터를 다 내가 소유하고 분석할거야’라는 개념인데, 블록체인은 분산원장에 데이터를 다 공유한다는 점에서 너무나도 상반되는 기술이라는 생각이 들었어요. ‘도대체 블록체인은 어떻게 돌아가길래 모든 데이터를 공유하는게 가능한거지?’, ‘왜 누구한테나 이 데이터를 보여주는거지?’ 등 정말 많은 호기심이 생겨났어요. Permission-less, Public data와 같은 블록체인 용어 자체가 충격적이기도 했고요 (웃음).

그렇게 호기심으로 시작해서 제가 갖게된 궁금증은 블록체인이라는 기술의 취지가 좋은 건 알겠는데, 정말 모두가 잘 쓸 수 있는 기술인지가 의문이었고 기술적으로 검증해보고 싶어서 빅데이터에서 블록체인으로 커리어를 전향하게 되었습니다.

3. 처음에 블록체인 개발 시작하실 때 어려웠던 점이 있다면 어떤건가요?

개발 언어가 너무 다르다는 것과 블록체인 자체에 대한 개념을 이해하는게 어려웠습니다. 개발자들이 블록체인 개발에 있어 진입장벽이 확실히 존재하는 것 같습니다. 심지어 저는 기존에 블록체인과 상이한 영역인 빅데이터를 다뤘기 때문에 블록체인의 기본적인 개념들을 이해하는데도 시간이 많이 필요했던 것 같습니다.

4. 기존에 어떤 개발 도구를 사용하셨나요?

기존에 썼던 도구는 truffle, 가나슈(Ganache) 정도가 있습니다. 이 두 가지가 가장 대표적인 것 같고, 아직까지 블록체인 개발 환경에서 개발 도구가 많은 것 같다고 생각되지는 않습니다.

5. vvisp은 어떤 개발 도구라고 생각하시나요!?

vvisp은 truffle의 장점에 management가 추가된 것이라고 생각합니다. 사실 스마트 컨트랙트는 누구나 개발할 수 있지만 운영할 땐 다르기 때문에, 운영적인 측면에서 특히 도움이 되는 툴인 것 같습니다. 업그레이드하는 스마트 컨트랙트 라이브러리도 선택적으로 추가할 수 있는 옵션이라는 것도 매력적인 옵션입니다.

6. 비습을 사용해본 소감을 말씀해주세요!

우선 설정파일 형태로 컨트랙트 배포와 초기화 작업을 정의하는 컨셉이 마음에 들었습니다. 기존에 스크립트를 짜는 방식은 사용되는 여러 모듈에 대해 알고 있어야 하는데, 설정파일의 형태는 가독성도 높고 쉽게 작성할 수 있어서 정말 배포하기 편하겠다!라고 생각했습니다. 더불어 초기화 함수를 호출할 수 있는 기능 역시 설정파일에 담겨 있어 배포 이후의 초기 작업의 수고를 덜어주더군요.

배포된 컨트랙트를 호출하기 용이한 console 기능 역시 간편했습니다. Truffle은 컨트랙트들의 주소를 일일이 찍어보고 함수를 호출하는 스크립트도 작성해야 했다면, vvisp의 경우 배포된 address를 알아서 저장하고, 사용할 컨트랙트들의 목록을 자동으로 보여줬어요.

이외에도 업그레이드 기능을 추가할 수 있다는 것, 스마트 컨트랙트를 호출할 수 있는 js 파일을 api 형식으로 자동 생성해준다는 것 등이 마음에 들었습니다. 확실히 위의 장점들은 배포/운영에 필요한 devops 쪽의 장점인 것 같아 vvisp의 컨셉이 확실한 것 같아요!

7. 어떤 기능이 추가되면 좋을 것 같나요?

(1) vvisp은 배포된 컨트랙트들에 대한 정보가 적힌 파일이 생성되고, 이후의 배포에서 해당 파일을 참조하는데, 아예 새롭게 배포하고 싶을때는 해당 파일을 직접 삭제해야 하더라구요. 자동으로 삭제, 배포하는 명령어 옵션이 있으면 좋을 것 같아요.

(2) vvisp이 truffle의 테스트 환경을 쉽게 사용할 수 있는 환경을 만들어주는 것은 좋은 것 같아요! 그런데 개발자 입장에서 봤을때 vvisp과 truffle 모두 알아야하는게 불편하더라구요. 차라리 truffle test 같은 명령어를 vvisp이 래핑(wrapping)해서 지니고 있으면 편할 것 같습니다.

(3) 해치랩스가 Mythril과 MOU도 맺었던데 Mythril의 보안감사 도구를 vvisp의 명령어로 실행할 수 있는 기능이 생기면 좋을 것 같아요.

(4) vvisp이 devops의 성격을 강하게 띄니깐, 장기적으로 봤을때 devops의 꽃이라고 생각하는 CI/CD 기능이 탑재되면 좋을 것 같습니다.

  • Twitter
  • Facebook
  • reddit
  • Pinterest
  • Hacker News
  • LinkedIn
  • Tumblr
  • Google+
  • VKontakte

비습은 오픈소스로 누구에게나 열려있습니다 (: 
비습 프로젝트에 기여하고 싶은 분들은 CONTRIBUTING-ko.md를 참고해 주시면 감사하겠습니다.

Github : https://github.com/HAECHI-LABS/vvisp

You might also like

Pin It on Pinterest

Share This

Share this post with your friends!

WhatsApp chat