AI들의 기업

이런 기업이 있다고 상상해보자.

회사 오너 즉 주주들은 모두 인간이다. 하지만 임원들은  전부 AI이다. 직원들은 AI도 있고 인간도 있다.

왜 임원들이 AI냐고? 거야 모르지. AI가 싸서 일 수도 있고 말 잘 들어서 일 수도 있고 24시간 일할 수 있어서 일 수도 있고, 어쨌든 오너들의 마음이지. 오너들이 그러겠다는데.

그렇다면 오너들은 왜 AI가 아니냐고? 인간은 돈이 있어서 투자할 수 있지만 AI들은 돈이 없어서 투자할 수 없기 때문이지.

이 AI들은 당연히 “로봇공학의 삼원칙”을 최고의 계명으로 설계되었다.

그것을 제외하고는 주주들을 위해 이윤을 창출하는 것이 최고의 목표로 설계되었다.

이윤을 창출하기 위해서는 상품이나 서비스를 제공해야 하고 비즈니스 모델이 필요하다. 이 두가지를 위해서는 비즈니스 전략이 필요하다. 즉 사업기획서가 필요하다. 이 사업기획서는 임원 AI들이 만들어질 때 DNA에 깊숙이 각인된다.

사업기획서가 있다고 자동으로 이윤이 창출되지는 않는다. 인간이나 AI(로봇 포함)을 고용하여 가치를 창출해야 한다. 가치를 창출하지 않으면 시장에서 이윤을 획득할 수가 없기 때문이다.

잠깐, AI들은 돈이 없는데 어떻게 직원을 고용하는가? 어떤 인간이 돈 안받고 이 임원들에게 일을 해줄 것인가?

이 AI들은 직원들에게 회사 주식을 월급으로 지불한다. 돈이 없기에 회사 주식을 화폐로 사용하는 것이다.

잠깐, 이런 주식이 가치가 있기 위해서는 회사가 가치 있어야 하고, 회사가 가치 있기 위해서는 직원을 고용할 수 있어야 한다.  닭이 먼저냐 알이 먼저냐의 무한고리에 빠진다.

즉 이 기업은 Bootstrapping이 필요하다.

좀 딴소린데, 자연계에서 닭이 먼저 생겼다고 생각하는가 아니면 알이 먼저 생겼다고 생각하는가?

신은 대자연은 이 문제를 훌륭하게 해답했다. 닭과 알을 동시에 점진적으로 창조하면 된다.

대자연의 마술은 그렇다 치고, 여기에서 우리의 AI 기업을 어떻게 Bootstrap할지나 연구해보자.

처음에 회사 주식의 가치는 0이었다. 그러다가 그 어떤 사람이 단순 투기의 목적에서인지 아님 술취해서인지, 아님 이 AI기업의 창창한 미래가 내다보여서인지, 어쨌든 이 AI기업의 주식을 1.5주 사기로 결정한다. 기존 주주중 누군가 1.5주 팔아주는데 동의했다. 이렇게 첫번째 거래가 성사되고 가격이 형성된다. 가격이 미미하더라도 말이다.

0에서 0.01로의 도약은 기적이다. 무에서 유를 창조함을 뜻하고 무한대 뱃수의 상승을 의미한다. 마치 40억년전 원시 지구 심해의 열수구에서 RNA들의 조합으로 첫번째 생명이 탄생할 때처럼 말이다.

Continue reading

Advertisements

Kotlin언어 성공사례: Corda 블록체인(by R3)

Kotlin언어? 뭔 듣보잡? 성공사례가 있니?

찾아보니 있다.

corda_kotlin.png

CTO는 전 구글 시니어 엔지니어였다고 한다. CTO분이 얘기하신 Kotlin 선택 원인:

  1. 정적 타이핑 (그러고 보니 밀레니얼 세대 언어는 다 그런 것 같다)
  2. Java가 비즈니스 월드에서 중요해서. (하긴)
  3. 섹시해서 (구닥다리 Java랑 비교하니 그렇지)
  4. 배우기 쉬워서 그래서 구인이 쉬워서 (보통 Java구인을 하고 1~3일 트레이닝 시키면 코틀린 언어 코딩을 할 수 있다고 한다)
  5. IDE지원 잘되서
  6. 컴파일 속도가 빨라서 (Scala 저격하며)
  7. 무서화가 잘되있어서
  8. 내가 할줄 알아서. 내가 좀 해봤는데 재밌어서

그러면서 하는 말이 Kotlin이 없었다면 Scala 썼을 것이라 한다.

마지막에 내린 결론이: 잘한 것 같다.


 

개인적으로 Kotlin이 정말 반갑다. JVM팬으로서 항상 언어가 아쉬웠는데, Java는 구닥다리고, Scala는 너무 복잡하고* Groovy는 언어가 아쉽고, (Scala 와 Groovy공통점이 모두 창립자가 포기했다는 점..) Clojure는 대중성을 전혀 염두에 두지 않은 것 같고. 그런 점에서 Kotlin은 JVM에게 복음과도 같았다.

특히 실행 가능한 환경이  JVM / Javascript VM / Native 로 다양해서 플랫폼에 발목 잡히는 일이 없도록 했다는 점도 칭찬하고 싶다. (마이크로소프트가 최근에야 터득한 점)

JVM, V8엔진, 네이티브 세가지 모두 점점 중요해지는 플랫폼인 것 같다. 아 WASM(Web Assembly)까지 지원하면 더욱 좋겠지만. 이게 미래가 될 수도 있으니. 걱정할 필요가 없는게 컴파일러 플랫폼이 LLVM이어서 WASM이 GC만 지원하면 WASM으로 컴파일 하는 것도 식은 죽 먹기일 거라는 점.

최근 홍민희님의 PyConKr 2017 발표 <파이썬과 다이아스포라>를 보고, 최근에 읽은 <사피엔스>와 결부해서 느낀 점이: 성공한 언어들은 모두 대중성을 키 피처로 치밀하게 기획된 것 같다는 점이다. 민족의 용광로처럼 말이다. (적어도 대량 전파됨을 성공의 척도로 본다면 그렇다)

심지어 Rust도 너무 결백증스러운 면이 있어서 대중성이 의심스럽다.

다행히 Kotlin은 대중성을 키 피처로 설계된 듯하다. 그것의 일환으로 Java월드 레거시에 대한 포용성도 잘 설계된 것 같다.

미래가 지켜볼만하지 않은가!

* 참고로 R3 Corda의 경쟁상대인 IBM hyperledger fabric 은 Go언어로 만들었다.

부록

* TIOBE 프로그래밍 언어 유행도 인덱스에 따르면 Scala는 D언어나 COBOL언어보다 인기가 적다: https://www.tiobe.com/tiobe-index/

 

하이프(hype) 개론

하이프 사이클

하이프 사이클(Hype Cycle)은 기술의 성숙도를 표현하기 위한 시각적 도구이다. 과대광고 주기라고도 한다.미국의 정보 기술 연구 및 자문 회사인 가트너에서 개발하였다.

hype_cycle.png

hype_cycle_detailed.png

하이프 사이클은 5개의 단계로 이루어지며, 이는 기술의 성장 주기에 대응된다.

단계 명칭 설명
1 기술 촉발
(Technology Trigger)
잠재적 기술이 관심을 받기 시작하는 시기. 초기 단계의 개념적 모델과 미디어의 관심이 대중의 관심을 불러 일으킨다. 상용화된 제품은 없고 상업적 가치도 아직 증명되지 않은 상태이다.
2 부풀려진 기대의 정점
(Peak of Inflated Expectations)
초기의 대중성이 일부의 성공적 사례와 다수의 실패 사례를 양산해 낸다. 일부 기업이 실제 사업에 착수하지만, 대부분의 기업들은 관망한다.
3 환멸 단계
(Trough of Disillusionment)
실험 및 구현이 결과물을 내놓는 데 실패함에 따라 관심이 시들해진다. 제품화를 시도한 주체들은 포기하거나 실패한다. 살아 남은 사업 주체들이 소비자들을 만족시킬만한 제품의 향상에 성공한 경우에만 투자가 지속된다.
4 계몽 단계
(Slope of Enlightenment)
기술의 수익 모델을 보여 주는 좋은 사례들이 늘어나고 더 잘 이해되기 시작한다. 2-3세대 제품들이 출시된다. 더 많은 기업들이 사업에 투자하기 시작한다. 보수적인 기업들은 여전히 유보적인 입장을 취한다.
5 생산성 안정 단계
(Plateau of Productivity)
기술이 시장의 주류로 자리잡기 시작한다. 사업자의 생존 가능성을 평가하기 위한 기준이 명확해진다. 시장에서 성과를 거두기 시작한다.

하이프 사이클이라는 용어와 이를 구성하는 5 단계는 신기술 마케팅에서 점차 더 널리 사용되고 있다.

Continue reading

양자컴퓨터는 블록체인을 죽일것인가?

TL; DR:

못죽여.


양자컴퓨터 또한 외계기술이다.

일부는 양자컴퓨터가 개발되면 블록체인을 죽일것이라고 한다. 과연 사실일까?

몇년 전 필자가 비트코인 투자하는 것을 막고있는 유일한 고민이 양자컴퓨터였다. 공부를 좀 더 한 뒤 알게 된 사실인데 사토시 나카모토는 이미 이 질문에 답한 적이 있었다. 그럼 그렇지, 사이버 펑크 커뮤니티가 이런 질문을 답하지 않았을 리 없지. (비트코인을 더 일찍 샀어야 했는데)

결론은 양자컴퓨터는 블록체인을 죽일 수 없다는거다.

왜 죽일 수 없는가?

양자컴퓨터는 그 어떤 암호시스템도 파괴한다면서?

맞다. 양자컴퓨터는 RSA, ECDSA 를 포함한 비대칭 암호화 알고리즘에 직격탄을 안길 수 있다 (비트코인이나 이더리움은 ECDSA 를 사용).

하지만  비트코인 주소는 단순히 퍼블릭 키가 아니라 퍼블릭 키의 해시이다

그것도 한번 해시한 것이 아니라 두가지 해시 알고리즘 (SHA-256 과 RIPEMD-160) 을 써서 해시했다.

양자컴퓨터는 해싱 알고리즘을 망가뜨리지 않는다

따라서 양자컴퓨터가 만들어져도 해시 알고리즘이 약해지는 일은 없다.[1]

이에 대해 이더리움의 창립자인 천재 소년 비탈릭 부테린이 쓴 좋은 글이 있으니 참고하기 바란다:

Satoshi’s Genius: Unexpected Ways in which Bitcoin Dodged Some Cryptographic Bullets

 

지금부터는 사실 양자컴퓨터와 별 관련 없는 일이다.

Continue reading

블록체인은 성능이 개판인가?

개판이 아니다. 이건 미래 얘기가 아니라 현재 얘기다.

성능문제를 앓고 있는 것은 비트코인 네트워크이지 현역 블록체인 기술이 아니다.

다들 아시다싶이

비트코인 네트워크는 7 TPS 성능상한에 시달리고 있고, 이더리움 네트워크도 25 TPS 의 성능상한과 그리 멀지 않았다.

하지만 현역 Bitshares 블록체인DPoS 기술로 테스트 네트워크에서 3000 TPS 성능을 내기도 했다(그리고 출처). 비평자들은 이것이 어느정도 중앙화의 타협으로 이뤄낸 치팅이라고 하지만, 여기에서도 종교전쟁이 등장하는데, DPoS 파의 주장에 따르면 블록 생산노드수의 시점에서 DPoS 만큼 탈중앙화된 시스템도 없다고 한다.

3000 TPS 라면 Reddit 의 쓰기성능 요구를 커버하고도 남는다 [1]. 읽기는 어차피 캐싱과 CDN 으로 해결할거니까.

오프체인 연동도 현역기술이다

오프체인에 데이터를 두고 온체인에는 메타데이터만을 두는 것으로도 어마어마한 성능향상을 가져온다. 흔히들 알고있다싶이 블록체인은 공간사용에 있어서 비효율적이다. 하지만 오프체인 데이터를 통해 Sia coin 이나 Storj 같은 클라우드 (fog) 스토리지 블록체인도 현역이다.

여기까지는 현역 얘기고 지금부터는 미래 얘기다.

이더리움은 최초의 튜링 컴플릿 블록체인이다. 따라서 이더리움의 성능 확장 문제만 해결 하면 사실상 이더리움의 도미네이션이 예상된다. 따라서 이더리움의 성능 확장 로드맵을 살펴보기로 하겠다.

2017년 6, 7월쯤에 Raiden 네트워크 출시가 예정되어 있다

Raiden 네트워크는 비트코인쪽의 SegWit 과 라이트닝 네트워크 기술을 베꼈다 모티브로 한다. 이 기술은 외계기술인데, 요즘 블록체인 기술을 좀 안다 하는 사람들은 모두 이 기술을 이해할 것이다. 이 기술때문이 아니었다면 크립토커런시 시장이 시총 현재 10% 일때 자금유입이 멈췄을 것이라 생각된다.

이 기술이 왜 대단하냐면 이 기술이 (일부 까다롭지 않은 전제조건하에서) 성능을 거의 무한으로 끌어올릴 수 있기 때문이다. Too good to be true? Do your research.

Continue reading

블록체인과 닷컴버블

They call it DotCom bubble.

amazon_dot_com_bubble.png

출처: Google Finance

물론 가장 유명한 Pets.com 은 죽었다.

그리고 현재 무지 성공한 스카이넷에 가까운 아마존을 시점으로 닷컴버블을 회고하는 것은 공평하지가 않다.

그리고 아마존도 사실 당시 버블이 터질 때 죽을번 했다.

하지만 닷컴버블에 대항 공포가 더욱 만연하고, “닷컴버블” 이란 말을 꺼내는 것만으로 블록체인의 사망을 선포할듯한 분위기에서, 우리는 아마존의 시점이 필요하지 않을까 한다.

Continue reading