[개발] 스팀코인판 Swap 기능 #1

안녕하세요.

소개

이번주부터 개발하고 있는 기능이 있는데요. 스왑(교환) 기능입니다.

스왑기능은 토큰간의 교환을 해주는 기능으로, 스팀코인판 사이드바에 넣을 예정입니다. 스왑기능을 통해 토큰간의 교환을 보다 쉽고 빠르게 할 수 있을 것으로 예상합니다. 이 기능은 LP(유동성공급자)의 자원을 활용할 것이고 수수료 1%를 붙일 예정입니다.

아래의 사진과 같이 이 위젯이 스팀코인판 사이드바에 붙을 예정이고, 현재는 총 5개의 토큰 (SCT, SCTM, KRWP, STEEM, SBD)간의 교환 서비스를 제공할 예정입니다. 추후 확장될 수 있습니다.

image.png

예를 들어, sct를 krwp로 바꾼다면 위젯의 통화쌍 sct, krwp로 설정합니다. 그리고 바꾸고싶은 양을 입력합니다.

입력을 하면 위젯에서는 교환받을 krwp를 보여주는데요. 이렇게 계산됩니다.

변환할 양 * 환율 ( 입력토큰가격 / 변환될토큰가격)


개발단계

swap기능 개발은 총 3단계로 나눠져있습니다. 현재 1단계 작업은 끝났고, 2,3단계의 작업을 진행중입니다.

  1. 스팀코인판 Swap 위젯 개발

    • 사용자가 바꾸고자 하는 토큰 선택 (Done)
    • 변환이 예상될 금액도 표시 (Done)
    • 현재 유동성공급자의 잔고 등을 표시 (Done)
    • 스팀엔진 토큰, 스팀, 스달 전송 기능 (Done)
  2. 토큰의 평균가격 api
    토큰의 3일동안 평균가격을 바탕으로 토큰간의 환율을 계산을 할 예정입니다. 이를 위해, 주기적으로 스팀엔진거래소에서 거래된 가격을 기록합니다. 그리고 api로 3일평균가격을 접근할 수 있도록 할 예정입니다.

  3. 토큰 전송
    사용자가 1번 위젯을 통해 토큰을 보내면, 이를 확인하고 환전할 토큰의 양을 계산합니다. 그리고 계산된 토큰을 사용자에게 보내는 작업이 필요합니다.


자세한건 개발진행하면서 더 적어보도록 하겠습니다.

감사합니다.


This page is synchronized from the post: ‘[개발] 스팀코인판 Swap 기능 #1’

[개발] heroku에서 nitrous 동작시키기

안녕하세요.

제이콥입니다.

아직 공개하지않았지만, 스팀코인판 내부적으로 열심히 개발하고 있는 기능이 있습니다. 가끔보면 애플이나 삼성이나 정보유출되는 경우가 있지 않습니까? 왜 유출되는지 이해할 수 있을것 같습니다. 개발한걸 말해주고 싶은데 참고있으니 얼마나 답답하겠나 싶습니다.

아무튼!
지금하고있는 개발을 보여줄정도가 된다면 글로 소개할게요.
홍보소각도 하고요. ㅎㅎ


heroku에서 nitrous 동작시키기

heroku 짱입니다. 예전에는 heroku에서 특정시간마다 스크립트가 동작하도록 설정한 적이 있었는데요. 이것 말고도 heroku 위에서 서버를 돌린다던가, 웹페이지를 돌린다던가, 파이썬을 돌린다던가 이것저것 돌려볼 수 있습니다.

(https://jacobyu.net/heroku-with-javascript-10-1-hello-1-1/)

쉽게 설명하자면, 컴퓨터에서는 여러프로그램 이것저것 돌릴 수 있지않습니까? 히로쿠는 여러프로그램 중에 1개를 원격으로 동작시켰다고 보면됩니다.

@anpigon님이 히로쿠에서 nitrous 배포하기에 대해 아주 친절하고 자세하게 작성해주셨습니다. (https://busy.org/@anpigon/nitrous)

히로쿠에서 nitrous 동작시키는걸 그대로 따라해봤습니다. 나중에 제 글에서 찾기가 좋을 것 같아 따라한 걸 그대로 적어봅니다.

Step by Step

로그인 및 heroku 프로젝트 만들기

이걸 니트로스 프로젝트 안에서 한다.
heroku login
heroku create project-name
heroku container:login

빌드 및 배포

빌드하고 배포한다.
heroku container:push web
heroku container:release web
heroku open

코드를 수정하고 다시 배포

기존에 있던 프로젝트 가져오기
heroku git:remote -a project-name

위와 같이 반복한다.
heroku container:push web
heroku container:release web
heroku open

안피곤님 덕분에 쉽게 니트로스 사이트를 배포해봤군요. 감사합니다.


This page is synchronized from the post: ‘[개발] heroku에서 nitrous 동작시키기’

[일기] 유혹이 적은 환경 만들기

집에서는 일이 잘 안된다. 보는사람도 없고, 옷은 편하고, 옆에는 침대가 있다. 거기에다가 컴퓨터에는 게임도 깔려있다.

예를 들어, 집에서 영어공부나 해야하는 개발을 집중해서 하는건 꽤 어렵다. 집중이 아니라 그냥 시작하는것 자체가 어려울때가 많다. 조금만 쉬어야지 하다가 푹 쉰 후에 그냥 자는경우도 있다. 그리고 샤워하면서 아.. 어제 개발을 했어야했는데.. ㅋㅋ라고 후회한다.

이런 후회를 하다 예전에 읽은 책이 생각났다. “뼈있는 아무말 대잔치”라는 책이였는데, 저자는 퇴근하고 항상 카페를 가서 책을 읽었다고 한다. 그 시간동안은 핸드폰도 꺼버리고 책만 읽을 수 있도록 환경을 조절했다고 한다.

아무말대잔치 리뷰

맞다. 나도 뭔가를 하기위해서 의지로 하는게 아니라 환경을 조절해야겠다. 강아지에게 앞에 먹이를 두고 참으라고 하는게 아니라 아예 먹이를 주지말고 참으라고 하는게 낫지. 유혹을 다 없애버리는게 낫다.

일을 어디서 하느냐에 대해 친한 형과 이야기한 적이 있다. 그형은 카페에서 하는 것도 좋은데 집에서도 일을 할 수 있도록 자기를 훈련해야한다고 말한다. 사람마다 다르겠지만, 난 유혹을 피하는 방식이 나에게 맞다.

회사 퇴근하면 카페가서 책을 읽거나 영어공부를 하거나 개발해야지. 그리고 집에서는 왠만하면 드라마도 보고, 재밌는 책을 읽고 게임하면서 쉬어야지.

감사합니다.


This page is synchronized from the post: ‘[일기] 유혹이 적은 환경 만들기’

[개발, 분석] steemwallet #1 소개 및 설치

안녕하세요. 제이콥입니다.

오늘은 로랜드의 steemwallet를 분석하고자합니다.

스팀월렛은 로랜드가 개발하였고, android, ios에서 모두 사용가능합니다. AES 256 encryption로 사용자의 암호키를 보호하며, 생체인증 (지문인식, Face ID) 등으로 접속이 가능하도록 돼있습니다. 단, 하드웨어가 지원해준다면요.

steemwallet is a fast, secure and open source wallet for the Steem blockchain, available for iOS and Android.

Encryption wise it is just as safe as the cli_wallet app provided by the Steem software, using AES 256 encryption and per device & per (re-)install unique initialisation vector. Also the app obliges you to choose a difficult to guess passphrase for encrypting your wallet file. You can opt to store that passphrase in your device’s native keychain, if your device provides biometric access (Touch ID, Face ID, Fingerprint) and you have that feature enabled.


코드는 javascript로 작성돼있습니다.

사용하고 있는 크로스플랫폼은 “Appcelerator titanium”라는 툴을 사용하고있습니다.

이 코드의 라이센스는 CC BY-NC-SA 4.0입니다.
https://creativecommons.org/licenses/by-nc-sa/4.0/

이 코드는 오픈소스입니다. 비상업적으로 이 코드를 활용한다면 변경도 가능하고, 카피도 가능하고, 재배포도 가능합니다. 하지만, 상업적으로 사용하는 것은 금지돼있습니다. (유료앱, 수수료 등) 이 부분을 원한다면 roelandp와 이야기가 필요해보입니다.


회원가입 및 설치

한번 직접 빌드하고 코드를 파악해보려고 합니다. 근데 이걸 빌드하려면 https://platform.axway.com/에서 회원가입을 해야하군요.

전 cli setup을 따라서 진행할 예정입니다. 아래 가이드대로 하나하나 스텝별로 진행해보겠습니다.

https://wiki.appcelerator.org/display/guides2/Appcelerator+CLI+Getting+Started

초기 셋업
appc setup
git clone https://github.com/roelandp/steemwallet.git

샘플 프로젝트 만들어서 동작시켜본다.
appc new -t app --id com.appcelerator.sample -n SampleProject
cd SampleProject/; appc run -p ios

티타늄 및 라이브러리 설치
npm install titanium -g
titanium sdk install 8.1.0.v20190605095601
npm install -g alloy
alloy install plugin

스팀월렛 실행
cd steemwallet; appc new --import
appc run -p ios

추가셋팅 (티타늄 sdk 버전업 한 경우)

image.png

티타늄 sdk를 8.2.0.GA로 변경하였습니다.
티타늄 sdk를 업데이트하면, 플러그인을 다시 설치해야합니다.
프로젝트에서 sdk를 업데이트한 후, 프로젝트를 처음킨다고 가정하겠습니다.

appc setup
appc new --import
alloy install plugin
appc run -p ios

끝!

결론

이 앱은 스팀 지갑앱에 초점을 맞춰, 딱 필요한 기능들만 구현했고 가볍습니다. 지갑앱을 만든다면 여기서 뭔가 추가해보기 좋을 것 같아요. 다만, 생소한 플랫폼 Appcelerator, 티타늄이라는게 아쉽습니다. 리액트면 좀더 쉽게 접근했었을텐데요.

esteem app은 리액트 네이티브고 좋긴한데, 너무 방대한것 같더군요. 이 코드도 시간이 되면 봐보겠습니다.

감사합니다.


This page is synchronized from the post: ‘[개발, 분석] steemwallet #1 소개 및 설치’

[개발] 스팀코인판 큐레이션 시스템 업데이트 (2019/10/20)

안녕하세요. 제이콥입니다.

큐레이션 시스템 (sct.down, sct.krwp, sct.curator) 및 홍보 소각 관련 업데이트입니다.

이번주에 발생한 문제가 2개 있었는데요. 이 문제들에 대해 아래와 같이 처리하였습니다.

그리고 krwp 보팅은 보팅비율 계산 부분이 약간 변경됐습니다.

1. 홍보소각 보팅 리스트 정렬 문제

기존에는 소각량, 소각날짜를 활용해서 보팅순서를 정했습니다.

이제는 홍보소각 보팅 리스트에서 글 작성시간을 기준으로 일찍 작성된 글을 먼저 보팅합니다. 이렇게 수정한 이유는 2일 이내 (보팅을 받을 수 있는 기간)에 모두 보팅받을 수 있도록 하기 위해 수정했습니다.

  • (소각날짜와 소각량을 기준으로 보팅) —> 소각보팅에서 글작성시간기준으로 보팅

2. 홍보소각 보팅 리스트에 포함되냐 문제

코드 상에서 하루를 체크하는 부분이 리스트를 만드는 봇의 시간에서 1일을 뺀 시간으로 돼있었습니다. 만약, 9시 2분에 리스트를 생성한다면, 하루 전날 오전 9시 2분에서, 오늘 9시 이내(미만)의 소각된 부분만 활용하여 리스트를 만듭니다.

리스트 만드는 봇과 상관없이 어제 9시 정각부터 - 오늘 9시 이전까지 소각된 내역에 대해 리스트를 만듭니다.

어떤 시간에 소각을 하여도, 보팅이 들어갈 수 있도록 하였습니다.

3. Krwp 비율에 따른 분배가 아닌 수량에 따른 분배로 변경

기존에는 krwp의 비율을 활용하여 보팅비율을 계산했습니다.

지금부터는 krwp의 비율이 아닌 krwp의 개수로 보팅비율을 계산합니다.

홀더의 보팅비율 = 1000 * (홀더의 krwp 개수/오늘 글쓴 사람들의 krwp 총합) + …



궁금한 부분이 있으면 언제든 댓글달아주세요.

감사합니다.


This page is synchronized from the post: ‘[개발] 스팀코인판 큐레이션 시스템 업데이트 (2019/10/20)’

[후기] 강남에서 로봇이 타주는 커피를 마셔보자

안녕하세요. 제이콥입니다.

로봇이 타주는 커피를 마실 수 있는 “라운드엑스”에 왔습니다. 후기를 요약하자면 이렇습니다.

요약

  1. 카페가 깔끔하고 넓다. 쾌적해요.

  2. 로봇이 타주는 커피는 5000원에서 8000원, 대신에 원두가 좋고 드립커피라고 합니다.

  3. @hyokhyok님이 5만원 쿠폰을 82sct에 팔았는데요. 앞으로도 계속 판매한다면 더 사고 싶습니다. 더 파세요!!
    https://www.steemcoinpan.com/sct/@hyokhyok/sct-market


스팀코인판 팀에서 라운드엑스 5만원 이용권을 사서 보내주셨습니다. 로봇이 타주는 커피 마시러 왔습니다.

이곳은 라운드엑스라는 곳이고, 강남역 12번 출구에서 역삼역쪽으로 올라가면 있습니다. 카페를 처음보고 느낀점은 “깔끔하고 그리고 넓습니다. 아마, 모바일로봇이 안부딪히고 서빙하려면 넓어야하지 않을까싶네요.ㅎㅎ

모바일 로봇에는 Bear robotics라고 적혀있었고, 어디회사인지 궁금해서 검색해봤습니다. 미국회사군요. 센서는 뭘쓰는지 궁금해서 가까이서 봤습니다. 보니깐 2d lidar를 쓰고, rgb-d 카메라도 하나 사용하고요. 충전도 자동으로하고 잘 움직이는것 같습니다.

음료는 서빙안해주고 음식만 서빙해준다고 합니다. 다음에 시켜봐야겠어요.


이곳에 와서 쿠폰등록하겠다고 하면, 5만원 충전된 카드를 줍니다. 이걸로 로봇이 타주는 커피를 마셔봤습니다. 제가 커피맛은 잘 몰라서 ㅎㅎ 평가는 못하겠습니다. 5만원 쿠폰을 다 사용할 때까지 이곳에서 올 것 같습니다. 저녁에 이곳에 오시면 절 볼 수 있습니다! ㅋㅋ

좋은 하루 보내세요~


This page is synchronized from the post: ‘[후기] 강남에서 로봇이 타주는 커피를 마셔보자’

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×