More snow dropping on The Remarkables every day. #Queenstown #WinterIsComing
Instagram filter used: Lark
Daniel McClure is a marketing technologist from the UK that has worked with large and small businesses around the globe, including a a few you may recognise. Today you will find him working through his company The Modern Entrepreneur whilst traveling the world.
More snow dropping on The Remarkables every day. #Queenstown #WinterIsComing
Instagram filter used: Lark
Jaxx is a popular wallet for holding both Bitcoin and Ethereum. However with major DAOs (Decentralised Autonomous Organizations) like The ĐAO launching, there is some confusion over the best way to acquire DAO Tokens and how to interact with DAO functions once you have the tokens.
As things stand the reality is that Jaxx is not the best wallet for interacting with DAO Contracts. Whilst they do have big plans for Jaxx that sound exciting, you are far better off using the Mist Ethereum Wallet to manage your DAO Tokens.
For the rest of this article I’m going to assume that you’ve already acquired DAO Tokens through Jaxx and are now looking to transfer them to Mist, or simply want to move one of your Ethereum accounts over to Mist for another reason.
First things first you will need to make sure you have the Mist Ethereum Wallet downloaded, installed and the blockchain synced, this may take a few hours to download the first time you run it. Once you are up to date you can move on…
1. Open your Jaxx wallet and click Tools from the menu.
2. Select the option to “Back Up Wallet”.
3. Select “Display Private Keys”.
4. If you’ve configured a PIN you will have to enter it here, otherwise move on to the next step.
5. Select “Display Ethereum Keys”.
6. You will see a comma separated list keys. Keep these secret! Anyone that has access to them, has access to every asset they control forever. They will look something like the following, where the first part is your account ID and the second value is your private key: 0x000000000000000000000000,7hi5isMyPr1v473k3y47h3d40
7. The final steps vary depending on your operating system…
a) If you are on a Mac:
b) If you are on a PC:
8. Open up the Mist Ethereum Wallet and you should see your account has been added to the wallet.
Now if you’ve gone through all of this access DAO tokens, you will also need to make sure that you add a Token Watcher and a Contract Watcher, however the steps for this vary depending on the Token issuer. To help with this I’ve included links to the two of most popular DAOs below…
This is all very new and hopefully many of these steps will become easier over time, but in the meantime I hope you found this guide useful and enjoy your first steps into the developing world of DAOs!
I, Daniel McClure, am now a Facebook Marketing Expert ™︎
Well I completed the all of the #Facebook Advertising modules from the Official Facebook Blueprint course at least 😉 It’s a collection of e-learning modules, 49 at current count, that go into everything you might need to get started with Facebook and Instagram Advertising.
Whilst it may not teach you an “tricks” they don’t want you to know, or “expose the hidden world of social media ads and dark posts” it provides a solid foundation in the core marketing metrics and features available to you as a digital marketer using their platform. Most modules are backed up with case studies, creative recommendations, ad development guidelines and sections to review your learning and personalise your path.
I would highly recommended the Facebook Blueprint E-Learning course for people getting into Ads on Facebook or Instagram or even if you’re already running ads and are simply looking to expand your skillset as a digital marketer. Plus you get one of these cool certificates to show to all your friends ate the end 😉
#PeggyOki of #ZBoys fame speaking about #Whale conservation and the #OrigamiWhalesProject at the #TEDxQueenstown #CONNEXIONS event.
Instagram filter used: Hudson
Recently the team behind Slock.it announced the first version of their generic DAO framework for use with Ethereum. In addition to going through a professional security audit; Griff Green, Community Organizer for Slock.it announced The Art of The DAO Challenge on their blog and Slack Channel to encourage community testing and knowledge of the contract where participants could share in a 20 ether (ETH) bounty.
I came in to the challenge with limited practical experience in Ethereum, essentially sending and receiving (the Go client for Ethereum) and managed to complete the challenge several days later after much experimenting. Here is my rundown of the the various tasks and how things went and what I learned along the way…
Before even starting the challenge there were several steps to prepare including installing the latest version of Ethereum Wallet. I picked this up from the official Mist Github repository and of course making sure to check the checksums via Terminal in OS X to ensure I was getting the official package as the code isn’t currently signed.
The next steps required sending test Ether (or tETH for shorthand) to a test DAO token sale based on the official DAO contract with an extended timeline of 6 months to allow for practicing beyond the challenge. Unfortunately this requires actually having tETH to play with so the first step was to switch the wallet to the test network and pick some up.
There are two main methods for acquiring tETH on the test network and I used both;
Once I had my first block (I mined 5 tETH within about 10 minutes), I proceeded to use the standard wallet functionality to send 1 tETH to the practice DAO token sale, nicknamed infiniteDAO, at the contract address 0x003efc0256fceb5bc6d9b4a0ccc2ed08ee2c31f8. This transaction actually resulted in me acquiring 100 tokens from the infiniteDAO contract, however to actually see them in my Wallet, I had to manually add a watcher. You can easily watch any token (even if you don’t own any by heading to the Contracts tab page, clicking the Watch Token option and entering the relevant details.
And to the next question; What are the relevant details? Well the first step is simply the contract address that you sent your tETH to (or real ETH on the main network). The next three details are usually set by the token creator, so you will need to get the details from them, in this case Griff from the Slock.it team. It is important you get these details right as you could quickly confuse the matter by attaching the wrong token name to a contract, or think you have more tokens than you actually do by setting the wrong decimal value. As a general guide the DAO framework referenced here should be 16 decimal places by unless specified otherwise.
With my initial tests completed and tokens purchased it was time to move on the official #art_of_the_dao challenge! As we had already practiced purchasing tokens and adding token watchers in the warm up, the main challenge began with all participants being given some tETH and tokens in the new contract nicknamed ptDAO at the contract address 0xad23d7c443382333543dd13c3b77b99b2a7e2c6d.
We were also instructed to set up three accounts on the test network (in reality I actually set up many more whilst going through multiple experiments, and failed attempts) and read through the official white paper released by Slock.it and the DAO framework on GitHub. I had originally read the former and glanced at the latter but didn’t fully grasp either until going through this challenge.
The DAO Ninja training finally hit its first manual interactions with the contract (beyond purchasing tokens) here. Technically we needed to work out how the Approve function worked but before doing that, it required that we first set up the Ethereum Wallet to interact with the full range of functions from the contract on the Blockchain.
The initial setup takes place on the Contracts tab by hitting the Watch New Contract option and entering several key details provided by the token issuer. Again you must manually enter the name for the contract and the address, but also this time some JSON code which is used to generate the interface for the contract inside your Ethereum wallet. Luckily you don’t need to understand this code but you do need to trust the source of it, so it is something the token creator will likely open source and host on GitHub or their official website for you to use.
Once the token interface is set up you can start interacting with it by clicking on it’s name in the Custom Contracts section of the Contracts tab where you will see an option to Show Contract Info. It is here you expose the various elements of the DAO contract that you can interact with.
The art of the DAO challenge required that we use the approve function on two separate addresses, one of the service provider, now called a curator, and another to one of our own accounts. The Service Provider address, or Curator address as it is now known, could be found in the Read From Contract section, and is a key role in the DAO as they are able to manage the addition and removal of Contractor addresses, essentially who the DAO funds and works with.
The Approve function is part of EIP 20, the Ethereum Token Standard, so this is a function that will be available in any token built on the Ethereum network. By experimenting with the Approve function, and re-reading the white paper, it became clear that it pre-approves the transaction availability of DAO tokens equaling the number entered into the _amount field from the executing account by another third party specified in the _spender field.
Once the Approve function has been executed successfully it enables two new functions, Transfer From and Transfer From Without Reward, for the owner of the address used in the _spender field as shown above. The main difference being that the Transfer From Without Reward function first executes an internal function of the contract that collects any rewards applicable to the account owner before sending the tokens. If simply using the Transfer From function you may inadvertently send more DAO token value than expected by also transferring unrealised Reward amounts.
Another question that occurred to me throughout all of this was why you would even want to approve another account to transfer your tokens, and it was described by several members of the #art_of_the_dao channel as a kind of cheque. You pre-approve funds (or DAO tokens in this case) to another account, whether in your control or not, to be collected at a later date, but whilst the DAO tokens are still in your account you can use them as your own by participating in votes etc.
It is also possible to send DAO tokens directly to anyone without going through any pre-approval or extra steps by simply selecting the “Transfer” function found within the same Write to Contract section used above, or by clicking into the wallet account that owns the tokens and using the built in Send functionality shown below.
Once an understanding of the basic DAO token was achieved, it was time to move on to proposals which are a core function of the DAO and ultimately how projects such as the Ethereum Computer will be both proposed to a DAO contract and either accepted or declined by it’s owners (DAO token holders).
The first step was submitting a proposal to understand how one might submit a project for review by the DAO. This is done via the New Proposal function in the Write To Contract section of the DAO interface. There is only a limited space for information within the proposal code itself so when a proposal is created the description and ID will likely be linked to a specific place on the web such as theDAOHub.org forum where people can get into the reality of what the proposal entails and how it will benefit the DAO. The actual recipient address must already be approved by the DAO Curator unless the proposal itself is to add a new Curator to the DAO.
The screenshot below shows the New Proposal form on the right and one of my already submitted proposals on the left which was accessed by entering the proposal ID into the darker grey box near the top. Whilst submitting this proposal for the challenge I encountered several issues, the main one being not entering a value into the Send ETHER section as a 20 ether deposit is currently required for proposals (this amount may vary depending on the specific DAO contract you are interacting with). Another concern was what unit the debating period was, this turned out to be measured in seconds, and is important as proposals typically require a minimum two week period (1209600 seconds) of voting unless a new service provider or curator is being suggested and then a minimum 10 day (864000 seconds) debating period is required.
Note: For the purposes of this challenge both of the minimum debating periods were actually disabled by Griff to enable faster testing. Something I discovered after submitting this proposal which is still ongoing at the time of writing!
Once a proposal such as the one shown above is live the debating period begins and any holder of ptDAO tokens becomes eligible to vote on the proposal by selecting and executing the Vote function in the Write To Contract section of the contract interface. As part of the challenge I voted on my own proposal and the number you see in the “Yea” votes is the same as the amount of tokens owned by token holders who voted For the proposal. Eventually after the vote has passed, any token holder can run the Execute function along with the Proposal ID to action the the details in the proposal such as a transfer of value and initiate any other actions linked to the success or failure of the proposal.
There are also occasions where one might want to suggest a new Curator (Service Provider) and in these instances the exact same New Proposal function is used with a few key differences in what is entered. In this case the recipient can be an address that is not already on the Allowed Recipients list, such as a suggested new Curator, and for this challenge we had to check the _new service provider box although I believe this will change to refer to Curator in the future. No deposit is required for this kind of proposal so no tETH or ETH needs to be sent and and once submitted you can Vote for your proposal.
After the debating period has passed you are able to use the SplitDAO function on the Proposal ID and the DAO tokens used to vote for the new Service Provider Curator are sent to a burner address which lowers the total supply of DAO tokens and transfers the value in tETH or ETH to a newly generated contract that we can nickname splitDAO. When actioning this as part of the challenge the burning of tokens could be witnessed by the fall in the Total Supply: before SplitDAO was executed 58970000000000000000 jentzsch to the lower amount after execution 58969900000000000000 jentzsch, where jentzsch is the DAO equivalent of wei (1 ETH = 10^18 wei, 1 DAO token = 10^16 jentzsch). The total supply of DAO tokens, amongst many other things, can be viewed in the Read From Contract section.
The art of the DAO challenge also suggested that some important information was missing when executing SplitDAO in the Ethereum Wallet interface. When they said it was important they meant it; the information was the contract address of the newly formed splitDAO, and most importantly where all that value taken from the original DAO was transferred to. Luckily as everything takes place on the blockchain I was able to identify this by viewing the transaction details via the hash on Etherscan.
In the image above you can see several Contracts being created and value being transferred to one address which I guessed to be the new DAO. By taking the contract address that was being sent tETH and adding it to my watched tokens I was then able to verify that I had in fact received splitDAO tokens to my address that had voted for the new Curator (service provider) proposal. I have also heard there is a solution for discovering this directly in Ethereum Wallet in the works.
Whilst the above doesn’t spell out the exact answers to each step of the challenge (those were sent privately to Griff as requested), it does cover most of the learning process and steps I went through as part of the Art of The DAO challenge. It was definitely an educational, and occasionally frustrating, experience but I can say without a doubt that it was a great way to dive into the DAO setup and I’m thankful for Griff having encouraged us to get involved through the challenge.
Over time I would expect many of the actions to become easier as the function calls are abstracted behind a simplified DAPP interface. However if you want to get involved as a token holder in any DAO based on the generic DAO framework, the steps above are something I would highly recommend experimenting with on the test network or at least getting involved with the #art_of_the_dao channel and #dao_framework channel on the Slock.it Slack. It also seems likely there will be a growing community of people working through DAO related issues on the recently launched DAOHub.org.
Best of luck!
Instagram filter used: X-Pro II
Photo taken at: Queenstown Hill Summit
This post is a quick tip for anyone encountering a problem updating the Ethereum Blockchain because the Ethereum node is not finding peers, if you want to instead find out what Ethereum is then you are best reading up on the official site for now.
So your Ethereum node is getting stuck whilst looking for peers and is not adding new blocks? This started happening to me even though it had previously been working for weeks. This screen could literally show for hours.
After a lot of digging it turns out that the reason for this was because my computers time had become otu of sync with the network as I’d turned off the “Set time zone automatically using current location” setting whilst traveling.
Whilst you can turn the above setting back on, in my case it didn’t work immediately and instead the solution was to manually sync the clock via the process ntpdate. Open up a Terminal window and type the following commands (you may need to type in your Macs login password as this is an admin command):
$ sudo systemsetup -getnetworktimeserver
This will return a domain name such as time.apple.com which you can then use in the following command:
$ sudo ntpdate -u “time.apple.com”
The above syncs your clock with a central timeserver which then enables you to connect with other peers. The official Ethereum Wiki states this is a common problem when experiencing trouble connecting to nodes:
“An accurate clock is required to participate in the Ethereum network. Check your OS for how to resync your clock (example sudo ntpdate -s time.nist.gov) because even 12 seconds too fast can lead to 0 peers.”
I hope someone else finds this article useful and it saves some time in hunting down your fix 🙂
Over the last few months of 2015 (when people weren’t being distracted by the rise of Bitcoin to the years best performing currency of the year), there was a discussion going on behind the scenes about the best ways to scale Bitcoin in both the long and short term. It has been a controversial issue with many prominent players landing on different solutions and suggestions of infighting amongst the community.
“The key challenge was that Bitcoin was beginning to, or about to, hit a limit in the number of transactions that could be processed in each block, or cycle of authorisations to use more traditional terminology. What is important to note is that this limit was hard coded by Bitcoin’s original creator, Satashi Nakamoto, as a short term solution until wider participation was achieved, and can be changed as and when required.”
Several proposals have come up and one of the leading solutions was an alternative software client called Bitcoin XT. This project was led by none other than Mike Hearn, the developer now claiming that Bitcoin has failed. The vision for this project was noble; it attempted to resolve the block size debate, work towards preventing double spending (what Bitcoin was designed for), and allow for the continued availability of SPV “light” wallets where every user does not have to download the entire blockchain consisting of many GBs and growing all the time.
Unfortunately many of the arguments of the benefits of Bitcoin XT didn’t reach many Bitcoin users because there is a clear divide within the community and many accusations of censorship in some of the core places of discussion for the Bitcoin project, namely /r/Bitcoin and BitcoinTalk.org.
With thousands if not millions of people invested in the Bitcoin ecosystem either directly or indirectly there are naturally going to be a lot of competing ideas about what Bitcoin actually is and which direction it should take. As an open source project without one clear leader and with various corporate and public benefactors rather than a single company with a vision and a business plan, much of the decisions are currently being made by a small core team of developers.
Within this team there is always going to be bias based on personal ideals, but another contributing factor is several developers involved are also hired by third party companies working on Bitcoin projects and are naturally going to be viewing the project through the eyes of their company vision, which in some cases may deviate from the general market consensus.
Bitcoin is supposed to open in the sense that if you don’t like the project you can just use alternate software. Of course in network where the tokens have financial value, for your choices to really make a difference you need to have a majority running your chosen solution so these rules become the markets accepted rules for the network. This is openness is also based on the idea that alternate software is available or you have the talents or resources to create a market determining piece of software yourself, which for many is not the case. So in reality people are loyal to and trusting of these core developers and sceptical of new ideas that have the potential to damage the value of their bitcoin network.
Unfortunately when the core development team are also in disagreement over technical solutions to a problem, and you are an “average” user with less of a technical understanding on the mechanics of Bitcoin it can be hard enough to make a decision on the “right” choice. Even more so when the key venues for discussion are potentially being censored and people you know and trust are taking stands on both sides of an argument pointing fingers the “easiest” and default solution is just to stick with what is “working” for you already if the alternative is installing unproven software where you will need to download GBs of blockchain data to even start making your vote count.
In this situation Bitcoin XT was always likely to fail without a full scale campaign to get the majority of Bitcoin users to understand the decision and actually take action. Whilst Mike and others put across thier reasoning, it never got to the level where somebody could just look at the benefits and make an either or decision. There were conferences taregting key players and developers, there was a lot of technical discussion and a lot of finger pointing. But many people may not have even known there was the chance or need for changes until it Bitcoin was declared “failed” yesterday.
With Mike Hearn stepping out from Bitcoin XT to work with the R3 CEV banking group on understanding blockchains. It is clear that the original idea of Bitcoin definitely is *not* dead, even to him. Without him at the helm the Bitcoin XT project may be dead (or dying – there are still active nodes), however there is already strong support for a new alternative called Bitcoin Classic, which aims to increase the block size limit and is offering democratic voting on it’s included features right on the website.
If anything Mike’s frustration and announcing the project dead may have actually helped move the situation along by bringing attention to the problems for the average user in both the network software and also the community discussion of proposed solutions by bringing more attention to the alternatives software projects such as Bitcoin Unlimited and Bitcoin Classic, as well as alternative venues for discussion such as /r/btc and the Bitcoin.com Forum.
Wherever you stand on the block size limit debate, it is clear that change is overdue for both the Bitcoin client and the overall leadership of the project as a whole. AVC sums up what I think will happen best in his post Bitcoin is Dead, Long Live Bitcoin:
I personally believe we will see a fork accepted by the mining community at some point this year. And that will come with a new set of core developers and some governance about how decisions are made among that core developer team. But it could well take a massive collapse in the price of Bitcoin, breakdowns in the Bitcoin network, or worse to get there. And all of that could cause the whole house of cards to come crashing down. Anything is possible. Even the return of Satoshi to fix things as an AVC regular suggested to me in an email this morning.
Bitcoin has always been declared an “experiment”, and always could fail if there were some fatal undiscovered flaw, but you could say that about most projects and companies at inception. When you are six years into attempting to build a global payment (or commodity) network, with the potential to completely revolutionise some very entrenched and powerful organisations there are bound to be growing pains and that is how I see the recent challenges.
With all that said, Bitcoin is very much alive, and the experiment continues. How many other digital tokens do you know that are worth in excess of $300, have been declared the best performing currency of 2015, and have a network of personal and business users spanning the entire globe? It would take a lot more than one failed change proposal to kill Bitcoin entirely.
#MountainClimbing in #Wanaka at #RoysPeak.
#Trekking #Tramping #Hiking #NewZealand #Nature #Landscape #Lake #Mountains #Fields #Clouds #Sky
Instagram filter used: Normal
Photo taken at: Roys Peak
#Homemade #Lamb #Meatballs. New year. New Menu.
Instagram filter used: Normal