Preface
In my previous post, I shared my biggest problem right now:
We have a never ending to-do list, and it’s becoming harder and harder to choose what not to do.
With the ship-weekly cadence of experiments, it can be very easy to haphazardly pick something - anything - to do, just to keep up with the weekly sprints. In this post, I’ll be reflecting on themes from past experiments and taking a more positive spin on lessons learned: what to do now.
Index
#0 - experiments.gg
build+announcement of our website
#4 - tab management
build of an initial (buggy) tab management system
#10 - dub v0.03
slapping the wallet into the sidebar
#13 - tab management v2
less buggy tab management with dragging and bookmarks
#16 - dub v0.04
adding wallet and network switching
#20 - search suggestions
basic autocomplete search suggestions
#24 - ens builder (part 1)
ens profile builder prototype
#28 - wallet management
BIP 32/39/44 research and prototype
#34 - dub interface rewritining
connecting a new frontend to the new backend
#37 - building build-a-wallet
prototyping the onboarding experience
#43 - it’s getting pretty cool
wallet per tab, network per tab
#47 - search (again) (part 1)
building a new interface and UX for search
#51 - blockchain browser history
prototyping blockchain-first browser history
At a glance
I shipped three broad categories of experiments:
-
Dub Integration For integrations, I was focused on connecting core browser and/or wallet functionality to the frontend of Dub. These were probably the most boring, yet most satisfying experiments (seeing direct, tangible product progress always feels good).
-
Dub Feature
For feature builds, I was focused on developing both the backend and frontend for high-priority features of Dub. These were always the most challenging (and subsequently frustrating) but also the most rewarding (taking something from start-to-finish, end-to-end feels great). -
Dub Exploration
For exploratory experiments, I was focused on exploring potential features and integrations for Dub beyond what we’ve deemed core, to-be-expected features. These were exciting but always felt like they left some loose ends (they were always a start, but never sure-finish).
To-dos
Speaking of loose-ends, there are several experiments that need revisited:
-
#28 - wallet management
Wallet imports and connections are critical even for our own internal use of Dub - we need to improve this very soon. -
#47 - search (again) (part 1)
Search is… an important part of a browser. I need to re-focus on search very soon.
Lessons Learned
Set targets not dates
A few months ago, we were pushing hard towards February 1st as the day we’d start dogfooding our product and switch to using Dub as our default web browser and wallet. We missed that mark, and we’re still not there. So… when will we be there? Honestly, I don’t exactly know.
For internal use, there are quite a few signals that we’re much closer to a functional product. Web browsing works (mostly). Wallet connecting works (mostly). Transaction signing works (mostly). Chain switching works (mostly).
Most of the most important components work (mostly). We’ve already got a semi-product that we’re semi-using, but there are quite a few kinks and small, yet critical details that we need to focus on before we fully dogfood Dub. We’re actively updating, prioritizing, and completing these tasks on our Magic List.
Regarding more focused external testing, I resonate quite strongly with this tweet from @dhof:
we still have a lot of work to do to make it click beyond just being a tech capability checklist but it’s exciting
We have a tech capability checklist, but we still need to productize it. Pavan has led the charge in documenting and proposing solutions to key product UX problems and now it’s time to realize those potential solutions directly in Dub.
In the past, we set ambitious dates for when we’d reach our milestones. This can be especially challenging as our milestones are quite dynamic. In place of dates, we should be aiming for targets and those targets should be clearly defined (regardless of how dynamic the minutia might be).
What to do now: Now, we need to re-orient our internal Magic List towards delivering a cohesive product that we can confidently ship and share externally.
Trust our intuition
We’ve teeter-tottered between running on the fumes of our own intuition and backing every argument with real-world insights. It’s easy to dismiss ideas, designs, and decisions that feel like that are simply subjective personal opinions - however we should trust ourselves and feel confident in our intuition, especially when our intuition is driven by tangible insights.
What to do now: Now, we should push forwards with building a minimally viable dub with the product UX decisions we’ve made over the past few weeks.
Blockchain > Browser
I’ve said this a few times in previous posts - but there have been two mindblowing moments in the past few weeks (#43 and #51) and both have been the result of re-imagining our product through a blockchain-first lens as opposed to a browser-first lens. I am more open to considering a world where Dub isn’t a replacement to someone’s web browser but rather a supplement - though it still needs to be a damn good web browser too.
What to do now: Now, we should explore re-imaginations of the web browser with a blockchain-first perspective.
Next Steps
There’s a lot to do now
Even just focusing on the above, there’s still an infinite amount of work to do now. But if we can better define our targets, trust our intuition, and focus on blockchain innovation, I feel confident that we’ll be doing the most valuable work we can, now.