Q3 2022 Review
— Progress — 3 min read
It's the 27th of September, which gives us a few days before the quarter's out. But I've just finished up my biggest coding project to date, so I'm gonna jump the gun a bit and reflect a little on how this quarter has gone.
First off, building. https://www.zigzagstats.com/ is the toughest project I've taken on so far, the first to have a backend. I used mongoDB, which was great, though I was slightly annoyed to waste ~$800 linearly searching for ETH addresses through 300k entries. Indexes are cool!
I learned a bunch of lessons the hard way, mainly regarding how to think about what data your app needs to store and transmit. I went with the first plausible data structure that occurred to me, and therefore had to start over several times.
But obviously there are no shortcuts for these things - the best way to learn is in the arena, and the struggles mean I'll likely do a better, quicker job next time. Which was the whole point in the first place.
Though I'm still convinced that trading is the worst game in crypto, and I still struggle every day to pay less attention to the noise of token price movements, I have been placing slightly more bets with regards my portfolio. Despite some substantial cash-outs to filthy fiat, I'm just about back to where I started the year in terms of ETH. Which is of course to say, absolutely fucking wrecked in $ terms :D
Now that ZigZagStats is shipped, I'm looking for the next project - something more substantial, with a longer time horizon. While I've been enjoying building small tools to solve the small problems I've faced, I've been thinking more about my skills and their value to other people/projects. And now that the bull market mania has calmed down, it might be a good time to be more deliberate about putting myself out there.
So, I've decided that it's time to start work filling my biggest skill gap as a defi builder.
It's time to learn solidity.
I've decided that my first (proper) solidity project will be to build a platform for playing connect4 on arbitrum (testnet).
Why connect4? Firstly, because it's an awesome game! Secondly, because I made a connect4 app as part of a team during the coding bootcamp I did this time last year. So I'm pretty clear on how to represent/ think about the game itself from a programming POV, I 'just' need to convert the mongoDB backend to a set of solidity contracts.
If it goes well, I'm hoping that winning users can mint themselves an NFT of their game once it's over.
I'm not really sure how long I expect this project to take - it's another pretty substantial step up in terms of difficulty, so I guess I'll just try to forget about timescales and focus my efforts on making good progress each day.
Being honest with myself, I don't think my building skills have improved quite as drastically this quarter as the previous two. At times when I was battling the massive datasets involved with zigzagstats.com, I forgot a lot of the most basic principles of writing good clean code (version control, backups.. writing comments so you can understand the code you wrote a week later!). But, I'm the sort of person that learns by doing, and I did eventually overcome every obstacle and ship an app I was proud of in the end. So I think I'll claim a 2x on my building skills this past quarter.
Looking at my other goals, I'd say that I'm in very good journalling and phone hygiene habits, so I'm happy with how things are going overall.
Very few distractions coming up this quarter, so a good opportunity to string a bunch of useful days together and finish the year super strong.
Thanks for reading, GL out there!