Blockchain

Home / Archive by category "Blockchain"

Is the new bipartisan infrastructure bill trying to kill crypto?

Last night I read an interesting article:

Bitcoin & Crypto facing the end? This law should put an end to the industry by Lukas Wiesflecker

This short version is that there is some language in this bill that seems geared toward getting rid of miners in the US at a minimum, and potentially trying to get rid of cryptocurrency completely.

Well, if this is true, it certainly would not surprise me.  Leave it to the US government to attempt to force trillions of dollars out of the country.  The premise is that this bill needs funding, and supposedly this is one way that the government hopes to pay for all this infrastructure.  However, the article points out that you can’t do a 1099 in the crypto world because you don’t know who you are dealing with.  How can you collect a name and a tax ID from a crypto wallet?  it’s the whole point.  Leave it to the government to try to collect taxes on this, only to realize that they will cripple the industry in this country and end up losing money in the process.  A small part of me also wonders if there are lobbyists out there that don’t like crypto and are pushing to get rid of it…  but like the old saying going “Never ascribe to malice that which is adequately explained by incompetence.”  And let us face it, the government is not filled with people that understand cryptocurrency.  So it’s pretty likely that they really just don’t get it, and have no concept of what they might do.

Anyway, like all things in government, it will take time before this goes into effect, and might possibly never make it into the final bill, but keep your eyes open.  One thing you can guarantee, is that any big bill that is bipartisan, is sure to carry a whole bunch of garbage that we don’t need, all cleverly hidden under “saving the nation”.

Oh well, enjoy and thanks for reading,

Blockchain – Linking Meta Mask to a website

So, one of the things I struggled with while making my new token, was getting Meta Mask to link to my website.  So, I could see that it was connected to Meta Mask through web3, but for some reason when I wanted to return my address, or anything like that, it kept coming back as null.  After digging into my front end for a while, I finally decided to check Meta Mask.  And here is how I finally solved the issue.

Press Settings

click on Connected sites

Press Manually connect to current site

click in front of the accounts you want to connect.

Press Connect

You should now see that it is connected.  Hope this helps,

Thanks for reading,

Adventures in Blockchain

It’s crazy how quickly you forget things when you don’t use them.  For example, I spent months learning blockchain, Solidity, smart contracts and how these all integrate.  Well, I have spent the last 5 days working through a prototype to build my own Token.  And a lot of the knowledge eventually came back to me…  but a lot slower than I would have liked.  So, the smart thing to do would be to document the things I just relearned.  So maybe I won’t forget it next time.

I used a lot of the material from Dapp University.   The problem is that the tutorial I was following is a couple of years old, and ultimately not exactly what I wanted to do, so it was good to remind me of “a” way to do it, but there are better ways.  Let me walk down the path of what I learned.

  1. Install node.js – since my development was all done in windows, everything requires a few extra hoops to jump through.  I had to install it globally with an executable, instead of installing it into my conda instance.
  2. Use Truffle.  This package has so many cool options, that without it, I can’t imagine developing in Solidity
    1. it’s an easy way to compile projects, migrate projects to any network setup in your truffle-config.js file.
    2. Truffle Boxes can let you start a project with everything you need, then you just need to update the given files and add your own stuff to it.  But it can give you starter websites and lots of code.  Great for starting out.
    3. truffle test is another handy command to quickly determine if your contracts work as expected.  You can couple these with chai for even more testing options.
    4. handy commands include:
      1. truffle compile
      2. truffle test
      3. truffle migrate –reset –network rinkeby
      4. truffle console
  3. Setting up the truffle-config.js file has a lot of subtle features and a lot of power.  Much of this depends on installing the correct packages.
      1. be sure to check your package.json to ensure you have the correct version and packages.
      2. Set your solidity version here.  Depending on what packages you choose, may force you to use a higher version.
      3. certain things can become obsolete, so pay attention and use your search engine to understand where errors came from.  it is often due to a version mismatch or  the package being complete replaced.  For example, Truffle-hdwallet-provider has become @truffle/hdwallet-provider since I originally did my blockchain projects.
  4. Be sure to install Ganache – and use it liberally while you are testing the contracts.
    1. Save a particular ganache instance so that you can copy several accounts into meta mask for easy use.
  5. Writing the smart contracts can be done in 2 ways…  both are pretty slick.
    1. Sublime Text with a bolt-on to help with the syntax.
    2. remix.ethereum.org – I totally forgot how handy this tool is.  It can connect to local files, or you could code the whole thing in their website.  Remix is nice because it offers you a compile option with just a push of a button.
  6. Build your smart contracts and test in tandem.  One of the lessons I walked away with from the DappUniversity tutorial is that it really does work well to write the test first, then add the code to the smart contract.
  7. Get to know Meta Mask really well.  I’m quickly learning that Meta Mask is the really the key to everything.
    1. it can link to any of the many Ethereum networks.  You can even configure it to talk to ganache on your local machine. (see point 3-1)
    2. Linking to a website is a little more cumbersome than I hoped, but still able to be linked relatively quickly, once you know the steps.  (I’ll do a blog post on this soon).
    3. install it ASAP.  in my opinion, it’s the initial steps to web 3.0.
  8. Get some rinkeby ether sooner, rather than later.  No matter what you choose to do, you’ll need this.  The cool thing is that a single wallet can hold Ether from multiple systems.  (or you could up different wallets like I did).
    1. https://faucet.rinkeby.io/
    2. you can get ether by simply doing a tweet or facebook post.  Then you can get as much as 18.5 Ether (and you can repeat it again after a certain time period if you need more).
  9. When you are ready to move a test network like rinkeby, Use Infura, not geth or something similar.
    1. Using Geth can work just fine, but dealing with the massive download (if you aren’t already doing it) takes a lot of time, and in my opinion a lot of extra hassle.
    2. Setup an infura site, make a project, and using @truffle/hdwallet-provider“, you can link your project using infura to talk to many different blockchains (mainnet, rinkeby, etc.)
  10. When you want to interact with your contract in the test network but haven’t build a frontend for everything, use Remix.
    1. Remix has a very nice interface that allows you to easily interact with your contract (I’ll do a post on this soon).

And this doesn’t even include the front end.  LOL.  Anyway, I hope some of these pointers can help, and there will be more posts in the future to go into details on these steps.

Thanks for reading,

Experimenting with Upwork… AKA Looking for an internship

So one of the website I recently stumbled upon, Dapp University, has some great blockchain tutorials, and it also gave me some great advice.  Namely, if you want to start doing any sort of blockchain programming, you need to get some experience.  It turns out there is sit called Upwork.com, it’s like a job site for freelancers.  Well, that pretty much suits me perfectly.  Let’s face it, just because someone has done a bunch of tutorials doesn’t mean they are worth hiring.  So this site allows you to setup a profile, add your resume, experience, etc, and set your rate.  After consulting forever, it’s funny to think I’d be be low-balling, but I decided that exactly what I would do in order to try to get some gigs.

First a little about upwork.  While it’s a great place to get started, keep in mind they take a hefty piece of your rate.  20% initially, and eventually, it drops to only 10%.  Given how a lot of headhunters work, it’s probably not that bad (since must of the body shops probably try to keep at least 20% of your rate for themselves).  So at least it’s transparent of what you get versus what they bill you at.  Well, since I’m basically looking for an internship, I dropped my rate down to $25/hr.  that means, for any gig I get, I’m getting about $20/hr.  Pretty low, but since I need to build my portfolio, it’s gonna get me in the door.

I built my profile about 4 days ago, I already have one gig, and just got invited to a second.  I have been overly honest, stating that I have no formal experience, and that’s why my rate is low.  Turns out, people are looking for cheap (at least for now), so if all goes well, I’ll be able to spend some time over the next few weeks building up some real world experience, building some blockchain applications, and finally putting some of this education to work.

Anyway, it’s worth a try if you are looking to try something new.  Just be smart (if you have no experience, low-ball your rate and let the client know),

Thanks for reading,

The New Domain – .ETH

Like so many things in my life, I often need to see something more than once before I realize it’s important.  In a short span I saw this same article show up twice.

Registering on the ENS

The idea is very simple, and very cool.  Wallets for any of the cryptocurrencies are a long string of random digits that no one will memorize, and certainly won’t want to type if they can avoid it.  Namely, because if you get one character wrong, the token goes “into the ether” pun intended or the wrong person.  So the concept with this is that you can go and register your own domain on the blockchain (Ethereum) that does a translation to your wallet (or wallets as the case may be).  So just like a DNS server will translate a human readable name into an IP Address, this domain will translate your human readable name into your Ethereum (or multiple other wallets).  Hence the name, Ethereum Name Service (ENS).

It takes some startup work.  First you need an Ethereum wallet.  Then you need to fund it with between $50 and $100 of Ether =(.  All of this takes time, because the Ethereum blockchain takes some time to commit the block (and since I started by transferring money from BlockFi, it took 4 days to commit the transfer of funds into my personal wallet).  You also need to setup a cool browser extension called Meta Mask (this is the first step to getting your browser to Web 3.0).  Meta Mask lets you link your wallet(s) to your browser, so that a web application can talk to the blockchain behind it.  If you haven’t played with any of this tech, I might be speaking gibberish, but for a nerd like me, it’s cool because it’s all finally starting to click in my brain.

piehlm.eth

This my ENS.  And if someone is using cryptocurrency, they can send currency to me at that address.  It also has the ability to hold many other tokens (I ran out of ETH in my account to pay for the update, so I need to transfer more before I can accept the other tokens I have wallets for).  It’s not cheap.  To get the domain for 5 years it cost me about $50 in ether, and it would cost me another $20 in ether to add more wallets and more data into my ENS.

I recognize, this is all speculation and may not ever pan out…  but it’s pretty cool to know that I now own a domain that can work as my wallet.  This is the sort of thing that has the ability to become like the new Venmo in the crypto world.  It’s one step closer to getting people to adopt the technology by making it more accessible to the masses.

Thanks for reading,

Self-Sovereign ID’s

With all my recent interest in privacy, one of the hopes and dreams I wanted blockchain to provide was the ultimate identifcation.  The magic, all in one application that can log me into anything, but only give it the bare bones amount of data that I am willing to share.  I’ve been doing a lot more reading on blockchain, privacy, machine learning and all these other fun converging technologies.  All of them have the potential to make life much better or much worse for us.  The truth, like most things, lies somewhere in between.  I read this article a few days ago and it gives a pretty good perspective on just how much data is being collected.

All Your Data R Belong to Us by Ionut Ciobotaru

Now keep in mind, all every article you read will always have it’s bias and it’s own spin, but if you start to read enough different pieces, you can start to piece together the facts from the opinions.  for example, this article discusses the same thing (mostly) from a perspective of healthcare:

Why do we need data sovereignty in healthcare? by PCL Health

Now, this is an area of particular interest for me.  I am very much an advocate of keeping my data private…  but when it comes to health and wellness, this is an area where I’m inclined to be more generous with my data.  To the point of even giving it away.  After listening to podcasts and reading article of the miraculous things that machine learning could do for our medical system, if only it had labeled data to work with, really leads me to believe my goal of living to 150 is quite possible.  But like everything, we need all of the systems speaking the same language (preferably cataloging data into the same format etc.).  If that started to happen, we could really help our MD’s focus on the big problems, rather than the tedious looking at something and performing routine tests.  The whole skin cancer app that was created by Sebastion Thrun is a great example of that.  If an IPhone app can do that with better accuracy than a doctor with the current datasets, what happens if we give it more and better data?

Of course, we have the flip side of this…  if you give too much data, does that give insurance companies reason not to cover you?  how can be altuistic, without hanging yourself out to dry???  My hope is the SSI (or self sovereign ID).  Take a look at this article if you’d like to understand more of what it currently is…

Self-Sovereign Identity

Now, keep in mind…  this is just one iteration.  What if we could really have an app that exchanged the data needed (for example, buying alcohol and it could show proof that I’m over 21…  it doesn’t need to know I’m much older… just that I meet the threshold).  Now, start moving that into the voting arena.  What if you could prove you are a valid voter just with a social security card (at least at the federal level) and what if I could prove that I’m alive, and that I live in a certain county.  That suddenly opens me up to everything.  it doesn’t care if my residence is at a homeless shelter, a house boat, or an apartment downtown.  It doesn’t need to know.  it just needs to prove that this ID is voting exactly one time…  and only for one area.  Pretty cool, I think.

This is really an area I would like to contribute to.  So if anyone knows of ways that I could either get involved with a company working on this, or looking for beta testers, let me know.  I know, this also has the power to be abused…  but if you can hide your details and only show what you need to show, it feels like this is a great way to start taking back our own data, and keeping the government and corporations out of all our details.  (at least eventually…  every little bit helps, given they already have the keys to the kingdom, we need to start taking it back in any way we can).

Thanks for reading,
Piehl