Author Topic: [worker] Python-steem and uptick (1.14.52)  (Read 17825 times)

0 Members and 1 Guest are viewing this topic.

Offline fav

  • Hero Member
  • *****
  • Posts: 4278
  • No Pain, No Gain
    • View Profile
    • Follow Me!
  • BitShares: fav

Anyways, the python-bitshares library will hopefully be extremely useful for people building projects on top of bitshares pretty much the same way as python-steem enabled countless tools to be build on top of STEEM. It a matter of making it easier for developers to get their handy "dirty" on a network.

easy adoption, that's one thing I do understand :)

voting.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
I used piston to reset my keys after the hacking incident, but what can you do with it today?

For who would this be useful in bitshares, given the fact that you can almost do everything via GUI as end user?

What's the use-case?

ELI5 pls, not a dev (obviously)
uptick is probably not very interesting to many except the nerds and developers .. and of course those that need to maintain non-usual tasks - for instance asset maintenance tasks that are just so rare that it makes no sense to add them to the GUI. Also there are plenty of features available on blockchain level that are note expose in the GUI yet .. withdrawal_permissions for one.

Anyways, the python-bitshares library will hopefully be extremely useful for people building projects on top of bitshares pretty much the same way as python-steem enabled countless tools to be build on top of STEEM. It a matter of making it easier for developers to get their handy "dirty" on a network.

Offline fav

  • Hero Member
  • *****
  • Posts: 4278
  • No Pain, No Gain
    • View Profile
    • Follow Me!
  • BitShares: fav
I used piston to reset my keys after the hacking incident, but what can you do with it today?

For who would this be useful in bitshares, given the fact that you can almost do everything via GUI as end user?

What's the use-case?

ELI5 pls, not a dev (obviously)

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
To those that want to dig deeper, you can see the existing already implemented work here:

https://github.com/xeroc/python-bitshares/tree/develop
https://github.com/xeroc/uptick/tree/develop

Once stable, I would like to move the repository to the official BitShares project.

These features are already available in uptick:
« Last Edit: February 03, 2017, 06:03:00 pm by xeroc »

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
This is a worker proposal to refactor the python library and build a tool called uptick, both Open Source under MIT license.

Preface
In the last couple months, I have been focusing on python development for the Steem blockchain due to it's quickly growing user and developer base. During that time, I have developed piston and the python-steem library which became very popular and are widely used.

Given that many Steemians already know about BitShares, it makes sense to bring in this popular toolkit to BitShares. Instead of extending piston to also work on the BitShares network, I hereby announce the beginning of a new tool called:
Code: [Select]
uptickThis tool will be similar to piston (Steem) and sx (Bitcoin) and allow to interact with the BitShares blockchain on a simple command line tool. With this tool, it will also be easy to manage your BitShares assets, use whitelists and halt markets, as well as transfer assets, or trade on the DEX.

To be able to build this tool and add functionality, I will first develop
Code: [Select]
python-bitshareswhich is a library that actually interfaces with the blockchain and makes further development of end-user apps super easy (see for instance how people write bots for STEEM using python-steem). I have already started work on this library and am happy to tell that the foundations are already up and running. This library will also be used for the testnet stress test.
Tasks & Milestones

Milestone 1
  •     Extract the BitShares specific code from python-graphenelib
  •      Refactor BitShares code in a distinct python library
  •      Add local encrytped wallet
  •      Setup a redundante public API node
  •      Allow the usage with BitShares and the TEST network

Milestone 2
  •     Create modules to abstract blockchain obects (Amounts, Prices, Assets, Accounts, Block, Blockchain, Witnesses)
  •     Add commonly used operations like transfer, buy, sell, create account
  •     Create a DEX specific module to simplify the creation of trading bots
  •     Create a command line tool uptick to access the libraries methods

Milestone 3
  •     In-code documentation for developers
  •     Tutorials and howtos to describe the use of the library
  •     Tutorials to show the power of uptick command line tool

Milestone 4
  •     Add ability to create and maintain multisig accounts
  •     Ability to easily monitor the blockchain for specific operations or blocks

Worker
Given that a worker will be voted in for quite some time, I would like to propose a new model of running a worker: with shareholders keeping a say:
  •     I created a new account, upgrade it to LTM and make it multisig with the committee account and trusted members of the community
  •     The worker will redeem it's funds on a regular basis and buy up bitUSD from the market (only up to +5% above market)
  •     If the market doesn't offer sufficient bitUSD, the worker account will borrow bitUSD at 2.5x collateral
  •     For this reasons, the actual pay of the worker is 2.5x the USD value
  •     The worker will only pay the agreed amount of money and only in bitUSD to chainsquad
  •     Every thing that is not paid out after the end of the worker will be settled and returned to the reserve fund
  •     Everything left and held as collateral will be maintained by the committee and kept in full by the BitShares shareholders
Unfortunately, the BitShares foundations is not yet in a state to supervise this. Thus I have contacted a couple trusted community members to be my excrow agents and help implement the above procedure:
  •     (3/3) committee-account
  •     (1/3) dev.bitsharesblocks
  •     (1/3) cass
  •     (1/3) chainsquad
  •     (1/3) fox
  •     (1/3) blocktrades

Duration and Salary
This proposal will last for 3 months starting at 15. February 2017.
The pay constitutes a regular and a fixed part. The latter consisting of
  •     $100 account LTM fee and
  •     $150 worker creation fee
while the monthly fee contains:
  •     $4000/mth python development
  •     $100/mth public API reachable on this.uptick.rocks
These settings, plus the additional backoff of 2.5x amount to rougly 90,000 BTS of daily pay. Keep in mind that the BTS will be paid to a multisig account which only pays the above mentioned USD to chainsquad. None of the BTS will be transfered out of the multisig account.