December 7th, 2021

Let me preface this piece by saying that Statistics as a method is not fundamentally flawed, but ask any Machine Learning engineer in your local cafe, and they’ll be quick to tell you that the process of data collection and storage is usually flawed. A new engineer is quick on their feet to go to Kaggle and download a dataset, perform a few cleaning operations, do a little analysis, classification, prediction and update their Linkedin headlines with “Machine Learning Enthusiast”, “AI Expert” and “Data Scientist”. While I find little points of contention with the first two titles, the last one is questionable, since you’re working with what is essentially a DIY data cleaning project, instead of true data processing, but I digress.

Data, especially in these “unprecedented times” of COVID-19 pandemic, are much far from the utopia that is Kaggle. Data in real life is messy, full of clutter you don’t want and has flaws that we will talk about. I will also go over how a lot statistics are not absolute truths. Darrell Huff’s book “How to lie with statistics” has 10 chapters barring introduction and acknowledgements, but we will look at 3 concepts.

The Sample with the Built-in Bias

A few months ago, just when the lockdowns were to start in India, an Islamic missionary group named Tablighi Jamaat had a congregation in South Delhi. This ended up becoming a hotspot for Coronavirus in India. Twitter trolls and journalists were too eager to attack the entire Muslim community. Muslims were lynched, attacked and discriminated against.

November 10th, 2021

Layer 2 solutions have become an integral part of the Ethereum road-map, especially short term. This is a good time to do an overview on Rollups and talk about the progress on rollups this year.

Understanding Ethereum Rollups

Question #1 - What are Layer 2 (L2s)

November 9th, 2021

High gas fees are a problem that Ethereum currently faces. dApp Builders have to be careful so as to optimise their code to cost the least gas to the user. Let's start with a few obvious places to reduce gas: Minimize what you store on-chain. For example if you're building a blog on Ethereum - store the blog in IPFS and the CID in your Solidity. Later on you can optimise this further.

It's often better to compute the value of something off-chain and just enter the value in your code rather recompute it on-chain. This reduces the cost of running functions everytime your code runs. This is where it starts to get non-obvious. When you're coding in something like Python, you'd be OK with calling functions from an another class, but in Solidity, these cost a lot. Store your returned data somewhere and use those.

Simple fetching in Python
Simple fetching in Python

Good place to start from here would be to run eth-gas-reporter on your code to analyse the gas cost of your code to run on the EVM. You'd have a better idea of what's happening now. More often than not, it's a simple fix revolving around how you're storing data or accessing any data.

November 7th, 2021

“An Irrefutable case for Ethereum” - A thread addressing some of the more common criticisms of Ethereum.

Criticism #1 - Gas Fee will kill Ethereum

Gas Fee is the tax you pay to use an ecosystem - it incentives miners to validate blocks (since Ethereum is currently run on PoW). There are nuances to this - we will focus on L2s, ETH 2.0 & EIP1559.