Edgar's blog

23 Sep 2020

Moving On

Longer story, context

I joined the harmony blockchain project around August 2019 and within two months, I was coding core protocol work. The majority of the team left for a month long trip to India while the CTO & I were left behind to do the work that the rest of the team wasn’t doing.

This period of my career was one of the most fruitful to-date and during this time I:

  • mastered golang, concurrency in golang, race conditions & profiling golang
  • implemented the trustwallet C++ code in three days
  • worked with a world class consensus researcher as I implemented double-signing & slashing
  • implemented voting power for BFT consensus via staking logic
  • implemented the hmy cli tool
  • implemented the blockchain monitoring in-house tool, watchdog
  • implemented the staking based block reward code (at that time the reward was dynamically adjusted per shard)
  • implemented correct usage of libp2p, withstood massive spamming attacks and shippped over 10 race condition fixes to upstream repos of libp2p
  • implemented APR computation for external validators
  • implemented availability tracking of external validators
  • implemented but not merged a 4 second block time
  • implemented but not merged a switch over to IPFS
  • implemented EPoS, the proof of staking algorithm used
  • implemented the staking transactions data structures

…and much more.

In short, I gave everything I had to this project, gave 80-90 hour work weeks for many months and shipped over 15,000 lines of code.

Reality

Unfortunately the workplace was abusive & my passions were taken advantage of - usually I spot these things easily but this was the first time I ever encountered it in tech and I let my guard down by drinking the kool-aid. After leaving, thousands of lines of my unmerged code were appropriated by the abusive ex-coworker for whom I left the company over, my complaints of abuse ignored and disrespected.

Since leaving, I continued running a harmony blockchain validator and now have over $1 million USD in $one token delegated to my validator. But I am finished with running the validator for several reasons

  • Nothing of any significance has been released on the harmony blockchain, this is insult to the amount of effort and massive pressure placed on shipping.
  • Since the staking launch ~5 months ago, there have been numerous regressions and mistakes merged into the main repo. The abuser who appropriated my code even merged in mistakes and experimental ideas I later understood to be wrong, but never pushed the fixes. That’s what happens when you don’t know how to code & blindly take other people’s work as your own.
  • Nearly half of all the token supply is owned singularly by binance and any hope of decentralization relies on them dumping the token.
  • There is no money to be made as a validator but the amount of effort required in running it is more than any other blockchain. I’ve regularly had to get up at 2, 3, 4, 5 AM for the epoch election.
  • Out of ~70 validators, over 60 directly get delegation from binance. This serves as a smokescreen to make it look like decentralization (many validators) but in reality binance controls the token and thereby the winners of epoch election. This creates an incentive structure where real independent validators like myself cannot charge any fee while the binance subsidized validators easily charge over 10% fee.
  • Since leaving, there has been no significant additions to the core blockchain protocol and the rate of reverts of code is greater than ever - yesterday shard 0 was down for hours, its not a platform on which I would want any money on.
  • Only the CTO now does any core protocol work and there hasn’t been a single external contributor to the blockchain; no open source project can survive this way.
  • The blockchain now faces competition from its own principal stakeholder, binance. Their latest fork of ethereum, BSC, has seasoned go-ethereum developers actively working on it & they even contribute fixes back upstream to go-ethereum.
  • The harmony blockchain uses a very old fork of ethereum. Ethereum itself progressed a lot and many issues, vulnerabilities in ethereum are present in harmony. (Although the CTO is incredibly talented and I’m sure will upgrade the EVM correctly) EDIT: I told the CTO some of the issues & vulnerabilities, aka the hammer attack on txn pool.
  • Many of the initial investors have dumped the token and continue dumping it, the network is at the lowest % of token staked that I’ve ever seen.
  • Competitor blockchains, NEAR & Solana, have already shipped initial integration with DeFi and theirs is a completely different blockchain from ethereum, yet they still already shipped.

Moving forward

There are many lessons that I’ve learned from this period of my career, perhaps the most important is that you must always respect yourself first. Never again will I give any CEO the time of day who leaves me a voicemail saying that I “have a shitty face” - that was for asking not to be in a zoom call with the abuser.

  • The other important lesson is that time is money, and continuing to invest time and effort into a failing effort is like throwing good money after bad, or as in DeFi I’ve seen it said, you don’t sell your winners to bet on your losers.

  • Your reputation is really the only thing you have - tall tales and exaggerations burn the respect, goodwill of any project in its respective domain.

  • The culture of a team matters greatly - I will never again look the other way when I see workplace abuse done to me or any other teammate; its simply wrong and cannot ever be condoned.

  • The token distribution matters greatly - and selling out early to VC is like eating tomorrow’s feast for today’s crumbs.

My own future

For now, I will continue as a free-agent building smart contracts on ethereum and continue building in DeFi. I’m becoming very talented at solidity and building on ethereum is simply the smartest thing one can do in the blockchain space today, tomorrow and for the foreseeable future

Addendums

You can expect that members of the current harmony team will try to do some damage control & undermine what I said in this post. Some will say this is opinion, others will say that I am overplaying/overblowing things.

You the reader can make your own judgment and keep in mind the incentives that are at play. For whoever is undermining me, questioning what I say, what’s in it for them? Do they benefit? Can they code? Did they have any part of coding the chain?

Remember that everything I said is fact based, everything backable with commits, screenshots and posts. I have no incentive to lie or cheat - and they have every reason to.

Addendum #2

Perhaps expected but nonetheless to address - I wasn’t fired. I left in March 2020 and the CEO lied about me taking time off for being “burnt out.” The CTO begged me to come back after telling me that my abuser would be addressed. This too was a lie - and I stayed for another two months giving the benefit of the doubt to the CTO - two months past with no changes whatsoever, so in May 2020 I left for good - then still begged to stay.

The facts are that the team is run by liars and people who have no problem lying - in fact the CTO himself knows and acknowledged to me that the CEO is a liar.

Facts are stubborn things - screenshots & voice message even more stubborn but the most stubborn is the Truth; it is immutable.