Im starting a daily posting challenge🌬️💨
Every day: something real from building in solidity. My bugs, decisions, frustration - whatever happens that day 👨🏼💻
Something just my life 🤪
Weird stage of a project: the hard stuff works, the boring stuff is what's left.
Swaps, LP, Router, TWAP all green. Still in the way:
README calls Router a stub
feeTo exists, mintFee never got wired in
zero stateful invariant tests
Boring work is still the work.
Day 12/90
Reading original Uniswap V2 Factory for my fork. setFeeTo writes to storage and returns. No event.
Added FeeToChanged + FeeToSetterChanged, both args indexed.
Tiny thing canonical code skips, prod forks all add.
Day 11/90
I wrote a post and forgot to send it💩
No commits today.
Sometimes the week starts with a whiteboard, not the IDE.
Plan: protocol fee. V2's switch doesn't track a fee balance — it mints LP tokens to feeTo by sqrt(k) growth between liquidity events
Day 10/90
Remember I said I was gonna film a video of how I work from home ?
Well, I did it. Posted in on youtube 🤟
1000 view in 12 hours . Honestly through it’d be way less…
Gonna keep filming - really happy with how it turned out 🤯🤓
Day 9/90
Yesterday TWAP melted my brain.
Today I dug deeper and ran into UQ112x112.
First hour I just stared at it..
Solidity has no decimals, so store number x 2^112 as uint224 and do integer math. That’s the whole trick👨🏼💻
Sometimes the wall is thinner than it looks….
Day 8/90
TWAP and cumulative price tracking in BetterSwap straight up melted my brain today🤯😤
So I called it, took a break, and filmed my first ever coding video🎥
Day 7/90
via_ir saw deadline = block.timestamp and skipped storing — timestamp is constant per tx. vm.warp changes it mid-tx. Compiler can't know.
Result: deadline silently == new timestamp.
Day 4/90
An hour debugging a deadline test in my DEX. Test failed, code was correct.
The bug was the compiler.
Modifier: if (deadline < block.timestamp) revert. Test sets deadline, vm.warps past it, expects revert. Didn't.
Day 4/90
Added multi-hop swaps today🤓
swap A→B is easy.
swap A→B→C through different pools,
tokens flying directly between them.. that's a whole different thing..
Day 2/90
Wrote swapExactTokensForTokens today.. the heart of any AMM
One function..
So many ways to get it wrong..
Took way longer than it should have..
Nearly quit 🤣
But..
Tests pass🤟
Day 1/90
Im starting a daily posting challenge🌬️💨
Every day: something real from building in solidity. My bugs, decisions, frustration - whatever happens that day 👨🏼💻
Something just my life 🤪