A mainnet’s tale

3 min readOct 30, 2019


not that dystopian tho...

ICON mainnet entered the decentralization phase yesterday; after months of testing, finally main P-Reps (top 22 votes receivers)start producing blocks.

Or at least, that’s what should have happened.

Cliff notes: happy end. For us!

The beginning

If you’re into crypto you know that “mainnet day” is always a complicated one. For block producers, it’s the most complicated day you might expect to schedule.

Yesterday, early morning EU time, the mainnet was ready for inception. A couple of minor delays (as it always happens), few fixes here and there, but after that everyone was expecting things to proceed smoothly.

They didn’t.

A (long) morning

It appeared like a lot, but really a lot, of main P-Reps (the top 22) were either offline, or without the last patch, or anything else. This slowed down the inception by hours.

We were in 35th spot yesterday morning, no logical expectation to be a P-Rep, with 12 “reserves” in front of us. In retrospective, we were quite pessimistic. But ready!

After some hours and with P-Reps falling down like leaves in autumn, we produced our first block. And even more P-Reps were offline so even #45 on the voting leaderboard had to step in.

Kudos to every P-Rep that was ready.

An important lesson for everyone

We can’t talk for the main P-Reps. They were supposed to be ready; they weren’t. We don’t know why, we can’t argue what happened. For sure some of them had a very strong reason to not be ready despite millions of voters that trusted them, but it happens.

For sub P-Reps like us, the ones from position 23+, the lesson is “be ready”. Many weren’t, despite being in a relatively high position to step in and help the network produce blocks.

But the most important one is for you, voters.

ICON is a very solid project with an exceptional penalty (slashing) if your block producer does something wrong. “Something” includes being offline; slashing may cost you a good chunk of your own coins. You have 100 ICX and the day after you have maybe 95. They are burnt; you can’t recover them, dead forever. And in that case you should just blame yourself.

Luckily enough, slashing was set to 0 in this phase. Everyone was expecting some issues, and penalizing voters from the beginning would have been cruel.

But now the lesson was dished out, for free, to everyone. No more excuses.

Don’t vote for someone “because a friend told me so” or for a pointless link somewhere on the web. DYOR, and always check if your P-Rep is doing his homework. When you’re campaigning for votes it’s easy to write that you are committed to the project, you want to support the ecosystem, you are actively working on it 24/7 etc….

At least Frank’s broken promises didn’t cost you money!

Then actions must follow words, and being unprepared to handle mainnet launch really says a lot about your “commitment”.

I am not implying you should all vote for us (although, well, feel free if you want to 😊 — Staking Team has 100% uptime in all the chains it supports), but please check who are you voting for with your hard earned coins.

It would be a tsunami for the project if when slashing starts, millions of ICX would be dead and gone forever. Such a bad marketing for the project.

Yesterday a free lesson was dealt to everyone. Let’s all learn from that!