From experience, I know how easy it can be to over-engineer a feature nobody actually wants, or succumb to the sunk-cost fallacy and continue down the wrong product path for too long. To counteract these mistakes, you need to build a habit of constantly questioning your decisions - of keeping the bigger picture in mind. … Continue reading Are you building the right thing?
For the last year or so, I've been somewhat obsessed with habit formation. It started as a personal journey to be more productive and was amplified after reading Atomic Habits by James Clear. This year, instead of setting brand new goals, I've taken a look at my habits over the past year and looked for … Continue reading Lessons from a year of experimenting with habits
"If you can’t measure it, you can’t improve it," is common business wisdom. It is especially important advice for startups searching for product/market fit via the build-measure-learn feedback loop, a major part of the Lean Startup ethos. Build something. Measure its effect. Learn what worked, what didn't. Repeat. The ability to execute this loop quickly … Continue reading Leading vs. lagging indicators in business and in life
I gave a tutorial to the SharpestMinds community this week on Flask and Heroku that proved useful. So I edited it and uploaded it. I essentially live code a basic web app from scratch to host an image classifier. It is scrappy and cuts a few corners, but the result is a working MVP. I … Continue reading Deploying your ML model with Flask and Heroku
There is a concept in criminology known as broken windows theory. It says that crime in a community can be significantly reduced by reducing signs of disorder (like broken windows) and policing minor but visible crimes like vandalism. The theory rests on the assumption that an area's environment has a big influence on the behavior … Continue reading The broken windows theory, and why you should clean your room
Estimating the time for software projects is notoriously difficult. This is because the majority of the work in most software projects is "discovered" work. Work that was not obvious while planning that is discovered when implementing. If you've done any serious programming work, you'll know what I'm talking about. "Turns out this 3rd party API … Continue reading Why it’s so hard to estimate the time to build software
As SharpestMinds matures as a company, good design is becoming increasingly important. For most of the company's lifetime, we embraced a design-on-the-fly, just-make-it-work attitude. Without much more than a text or verbal description, we would simultaneously plan, implement, and design new features for our web-app. This approach worked well enough while we iterated towards product/market … Continue reading Designing at the right level of abstraction