It’s amazing what a good set of constraints can do for your design collaboration and reviews. Knowing the boundaries of a problem can be the difference between a design that fails in testing, and one that passes with clear and meaningful justification.
After years of self-tracking, I’ve found that the more passive a tracking process is, the more likely you are to derive value from it. Early on, it’s easy to get excited about your data and put in the work to keep active processes going, but as your stack matures, you realize how much more value there is in your passive measurements.
[...] Incredibly, the lobby was the result of a last-minute fix to an odd bug. It had left an impact that we could never have expected. It gave us a space to share our thoughts and a chance to share our excitement at a time when we’re all separated. The experience convinced me once again that nothing will teach you more about a product than launching it.
Main Stage Speaker
Elevate 2022
September 2022
Guest Judge
Startup Night
Schulich Business
March 2018
Site Visit Speaker
Designing Big Interfaces
Fluxible 2017
September 2017
Speaker, Real Estate
Product Hunt Toronto
November 2015
Panelist
CUTC Foundation
May 2015
Guest
tsp Weekly
April 2015
const ownBooks = useCollection<Book>(
uid => query(
collection(firestore, 'books'),
where('authorId', '==', uid)
)
)
A set of patterns that will help you build powerful and consistent developer experiences with Firebase on React Web and Native.
View on GithubA UI kit for design-minded developers. It provides consistent theme and component support across React Web & Native projects.
View on Github2017 • FramerJS
2017 • FramerJS