Skip to content

Instantly share code, notes, and snippets.

View 3esmit's full-sized avatar

Ricardo Guilherme Schmidt 3esmit

View GitHub Profile
6060604052361561011c5760e060020a600035046306fdde03811461017c5780631cee0700146101e1578063325a19f11461022757806337c089231461023557806338af3eed146102445780633a0936ce1461025b57806354fd4d50146102df5780636a40515a1461031e57806373bdae5b146103355780637a3a0e841461034e5780637b3e5e7b1461035c5780638c3c23d01461036a5780638da5cb5b1461038a5780638e3390b4146103a15780639d13156c14610408578063a4d69fd314610422578063a63c7ba214610461578063ac5db33214610484578063c040e6b8146104be578063d52230c4146104cb578063e184c9be146104fe578063e3b2594f1461050c578063fb687c241461051a578063ff8f30a114610581575b6105a76105a9600160005080548060200260200160405190810160405280929190818152602001828054801561017257602002820191906000526020600020905b8154815260019091019060200180831161015d575b505050505061029c565b34610002576105ac600e8054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815292919083018282801561095b5780601f106109305761010080835404028352916020019161095b565b346100025761061a600435600a8054829081101561000257906000526020

1st stage: selection of nice ideas

  • Call for ideas/proposals
  • Basic detailing of ideas/proposals
  • Detailing of proponent curriculum
  • Feedback of ideas/proposals
  • Karma build
  • Selection of Judges/Specialists

1nd stage voting

  • Karma voting of ideas/proposals
pragma solidity ^0.4.8;
// ECR20 standard token interface
contract Token {
uint public totalSupply;
function balanceOf(address who) constant returns (uint);
function allowance(address owner, address spender) constant returns (uint);
function transfer(address to, uint value) returns (bool ok);
function transferFrom(address from, address to, uint value) returns (bool ok);

Preamble

EIP: <to be assigned>
Title: Maximum Gas Limit 
Author: Gavin Wood
Type: <Standard Track | Informational | Meta>
Category: Core 
Status: Draft
Created: <date created on, in ISO 8601 (yyyy-mm-dd) format>

Preamble

EIP: <to be assigned>
Title: Invalid block list
Author: Micah Zoltu <@MicahZoltu>
Type: Standard Track 
Category: Core 
Status: Draft
Created: <date created on, in ISO 8601 (yyyy-mm-dd) format>

Curriculum

Ricardo Guilherme Schmidt <3esmit@gmail.com>,
Location: Brazil,
Languages: English and Portuguese,
Social Netowrks: Gitter (@3esmit), Twitter (@3esmit), Facebook (/3esmit).

Experiences

  • Object-oriented programming (expert),

TheEtherianToken

A token to incentivize collaboration and share donations to the organization.
Two options suggested use CollaborationToken, that enables deposits in the Token contract and withdraw of a rightful shares of the balance based on token holding.
There is no need to rush, any implementation can cover all the past publications with a little effort.
Feel free to take any time needed to decide, both are ready for your current needs. Also, if you get any suggestion of other option or modification of current options I suggested, we can elaborate together.

Option 1 (Use GitHubToken)

pragma solidity ^0.4.1;
contract JSONTools{
//try _extractString("[\"12345678\"]",0): gas usage 5192
function _extractString(bytes v, uint _start) constant returns (string val,uint i) {
uint start = 0;
uint end = 0;
for (i=0;v.length > i;i++) {
if (v[i] == '"'){ //quotation mark ---------> needed to break to reduce gas
@3esmit
3esmit / githubissue.md
Last active March 17, 2017 18:00
GitHub Issue and Pull request smart contract specification

When open:

  1. accept bounties
  2. GitRepositoryToken claim to commits of pull request that closes it
  3. become closed when closed in oracle

When closed:

  • become open when are open in oracle

When issue releated commit claimed:

  • genereate bounty accept token for bounties accepted of latest opener

When bounties became accepted

  1. issue bounties are transfered to DonationBank

Contract Factory Library

Reason

There is no easy way to split contracts into deploys, currently this is the way I found:

  1. create interface of contract and interface of factory;
  2. move logic to a Factory;
  3. interface creation and return address of contract being created;
  4. add factory interface variable;
  5. add at constructor the assignment of that address;
  6. replace myContract = new MyContract(); to the logic exemplified in needNewExternalContract()