My Big Break Into Ethereum
Tell me a story about how you got your first big break
TL;DR: Never stop learning new things in your space. When you find something interesting, write about it. Don’t just open source your code, screencast about it. You don’t have to be a genius to contribute to the ecosystem. Listen to the smart people around you and try to make something that will be interesting to them.
Spend every waking moment, that isn’t at work or with family, hacking on something even if you are building digital sandcastles. You’ll learn so much and you might just catch a lucky break!
I love to #BUIDL.
In November of 2017, almost one year ago, I started building products on Ethereum. My first project was a decentralized oracle exploration called Concurrence.io . To be honest, I didn’t have the chops to put together a sound cryptoeconmic system. It worked in ideal cases, but no one really cared .
From this first Ethereum project, Clevis was born. Similar to Truffle, Clevis helps me build, test, and orchestrate my dApps. I tried to release Clevis publically and you can see the initial video at the bottom of the repo. No one really cared. It wasn’t 10x better than something that already existed.
There is something truly defeating about showing off something you love and getting no response at all.
Next, I decided to build a game called Galleass . It’s a hand painted resource management game loosely based in the age of sail. I wanted to utilize token standards like ERC20 and ERC721 but in a new way… crafting .
The first phase of the game is fishing. You craft a Dogger (ERC721 fishing boat) by sending 4 Timber (ERC20) using a transferAndCall() (ERC677). Then you “sail on the blockchain” to a location to cast your bait in a commit/reveal randomness scheme to catch fish (ERC20).
A really neat mechanic that emerged from a fully decentralized game is each deployment goes to IPFS. Not only do players own their own assets and identity, but if they don’t like an update I push, they can go play the old version as if each iteration is a hard fork.
Galleass still exists out on the Rinkeby and Ropsten, but there were so many contracts it just wasn’t worth auditing. I learned a lot from building it and you can read more here . I tried to promote it on /r/ethereum and /r/ethdev but it got downvoted into oblivion. No one could make money from playing it.
I stuck with game design and at ETHDenver we got a team together to create Cryptogs . It’s the game of pogs on the blockchain. We thought this would be a perfect use of the ERC721 standard; true digital ownership of provably rare goods. At the time it was one of the only mainnet games that you could actually play . In the long run, nobody really cared . The interface was just too clunky and expensive. On top of the failure, I burned a bridge with my teammate,
and you never get that back. Life lessons learned.
I kept working nights and weekends hoping to find my way into the Ethereum ecosystem. I just wanted to provide value and create something useful or at least something fun to play.
I was spread thin. My wife wasn’t seeing value in my late night work and the word blockchain was officially off limits at our house. On top of that I was still very much on the outside looking in. I really wanted to go to devcon but I had no idea how to attract the right attention to my work:
Personal Goal: Attend #devcon4! Last 7 months #buidl list: decentralized oracle (https://t.co/kztBfrGfJd), custom orchestration (https://t.co/bRquOTZ6Wd), resource management game (https://t.co/yjQqq4rXDM), and a silly pogs game (https://t.co/NpUIiY3css). How do I get to Prague?
It was a (lame) cry for help to get to Prague and it went completely unanswered. Not a single like, response, or retweet. If I could go back in time and talk to this version of myself we would have a heart to heart about the value I was providing to the ecosystem. Yes, past Austin, you have some build experience and some fun projects, but you have to look at it objectively from the lens of other developers in the space. What are you doing for them ? Nothing, dude.
If you want to build an organic following, you have to answer an important question and that answer has to be 10x better than any existing solution. The only way to get there is to listen, build, learn, and iterate. I had a long way to go.
Throughout the spring and early summer of 2018 I put together a handful of small projects. First, I created a Blockie Miner to show how we need to be careful about how we use Ethereum Identicons.
On the left is an icon for an ethereum address that I use constantly. @austingriffith built an identicon miner and I requested him to try to spoof it. This is the result after only 45 minutes. Imagine if he had left it running for a day or more!
For the first time in my Ethereum career, someone noticed. Alex Van de Sande retweeted my project and it felt awesome! Maybe I had built something the ecosystem was interested in, I shilled it as much as I could , but it really was just one-off demo. I needed to keep exploring, learning, and #buidling and this excitement fueled me.
I tried to build or document anything I found interesting or helpful. When I ran into an issue with the React service worker and web3, I wrote about it and it made it to Evan Van Ness ’s WeekInEthereum . When I figured out how to get a Geth node running on a $35 compute stick, I wrote about it and tagged Péter Szilágyi . When Nick Johnson held a solidity golf tournament and needed a solc api, I built it over night while on vacation and footed the bill for the servers. Even if I was new to the space and didn’t totally understand everything, I did whatever I could to provide value.
Next, I created a repository of all of my commonly used web3 React components called Dapparatus . This integrates tightly with Clevis and allows a developer to have a dApp up and running with a single command. With Dapparatus, developers can focus on building their application and not have to wrestle with the blockchain. This is when I really started spinning up my momentum by creating screencasts and articles . It was at this point I realized:
Open sourcing a tool is no longer good enough; we must evangelize and educate to drive adoption.
Now that I had a toolset for rapid dApp development, I could iterate rapidly on ideas. For the Nifty hackathon I built a remote submission called Nifties vs Nfties and also poked fun of on-chain governance:
No need to fear blockchain governance anymore, here's nifties signalling. https://t.co/Xtb1rrzuxJ
The greatest success of the whole project was Matt Condon putting a “Niftie” on his shoulder in his Twitter profile: 🤣💙🤣
I was getting a little more traction in the #buidl ecosystem, a little more confidence, a few more followers on Twitter. But, I was a long ways from finding a full time position in the space. I needed to find something of real value.
After another big development push on Galleass , I found that
in Ethereum . I also found that doing every single transaction on-chain made the user experience pretty rough. Mainstream users are never going to use this as is.
I kept up with Alex Van de Sande on Twitter and one day I saw the idea of Universal Logins come across my feed:
It was my goosebumps moment. These signed transactions operating through a proxy contract could be very powerful, not just for logins, but for mainstream adoption through seamless UX.
the difference between paying 0.000 ETH and 0.001 ETH is huge for UX. has anyone seen examples of dapps paying gas on their users behalf?
I dug in deep. I learned as much as I could about signed transactions and ecrecover() and how these “meta transactions” could be used to create a gasless experience for a user. In the long run, crypto Twitter lead me to my “big break”:
@owocki @peepethApp @austingriffith @abcoathup Not mainet yet. The basic idea is that token functions can be called on the behalf of users if they sign a specific message. Alice would sign an off-chain message saying "I want to transfer X tokens to Bob" for example.
I didn’t invent anything new. My big break was putting a bunch of preexisting pieces together and making it as approachable as possible. Then, not just making it open source, but providing as much education around the idea as possible.
My first big article was “Ethereum Meta Transactions” — Lowering barriers to drive mass Ethereum adoption . (“Big” relative to the previous attempts, I’m still small potatoes in the ecosystem.)
For the first time I actually got some retweets from the community. It was clear that the space was ready for meta transactions. I continued to iterate and publish new content. We even found a trick to replay meta transactions and went on to win a hackathon with a token subscription system . I think this will eventually lead to the EIP1337 standard (much l33t!). None of this is new, meta transactions have been around for years , but I think the space is finally ready for the UX to get a good hard look. So I launched metatx.io to help educate developers on integrating meta transactions into their current dApps and building new ones with delegated execution. If you have any questions or I can help with your project, please reach out! We have a long way to go to smooth user onboarding.
Because of this big break I spent last week in San Francisco hanging out with all of those dudes up there in those tweets. They went from being Twitter famous to being my friends and it comes down to the objective value I can provide along with just being a good person. I wouldn’t argue if you were to say every one of them is more intelligent than I am, but I hustle my ass off and constantly #buidling goes a long way in this space.
This past week at @ETHSanFrancisco and blockchain week I made so many new, life long #BUIDL friends. Especially at @mattgcondon's NonFungible Summit! Too many to tag here but in this photo: @GianniDalerta @allenyhsu @Mitch_Kosowski @itsjefftong @PhABCD @notscottmoore 💙🛠️🤜🤛🛠️💙
Next week we’ll all get to hang out again in Prague. I even ended up getting my devcon ticket paid for. I’ll be presenting my toolset and demonstrating how to build a gasless UX with meta transactions. I got really lucky.
Proving meta transactions could work was one thing, but building them into a seamless UX will be something we continue to refine. I’m honored to announce that tomorrow I will be moving into the Ethereum development space full time. My job will be researching and building new ways to drive mainstream adoption with seamless UX powered by meta transactions. You can read more about my ideas here .
We still have a long way to go and I have a list a mile long that I can’t wait to tackle tomorrow. But, I’ll be doing it full time and that feels so amazing! It can take years of nights and weekends to find that big break. Keep learning and keep building. Follow people that know more than you and try to provide them with value. You don’t know what you don’t know so be humble and listen! Finally, don’t get caught up in the hustle so much that you lose sight of your health and wellbeing. You will be spread thin and there will be sleepless nights. But, in the long run, family is the most important thing there is. Nothing’s better than hanging out with my wife and this knucklehead in our backyard:
If you are interested in building dApps powered by meta transactions with Clevis & Dapparatus, I’m hosting a workshop at Devcon in Prague Oct 31 at 3:30PM in the Coquelicot room. If you are interested in subscriptions on the blockchain, check out the ERC1337 working group and catch my lightning talk in Prague! If you are stuck on a problem I can help with or just in a rut in the #buidl ecosystem, please reach out to me on Twitter (@austingriffith) and let’s get you fired up again! Learn more about my projects http://austingriffith.com
Thank you, good luck, and go get ’em.
- Kauri original title: My Big Break Into Ethereum
- Kauri original link: https://kauri.io/my-big-break-into-ethereum/3d1c347273bb4f86a79f0e303b06ca5a/a
- Kauri original author: Austin Griffith (@austingriffith)
- Kauri original Publication date: 2018-11-28
- Kauri original tags: none
- Kauri original hash: QmUY6L8QqFdNKvuW32uMs6pCGHiACJTx959x5NZHEbvHsT
- Kauri original checkpoint: QmSRv329t5c2hpHHf1Yz4XZomqgeBc8LVh9KNJC9z4PVDS