JustShipIt: Python frustrations and some project (re-re-re)reevaluations
This post is incredibly delayed, October and a lot of November have been very busy months for me and I just had a lot going on. This post is a little different than my previous two because I took a little bit of a break that ended up being much longer than I planned. I am now getting back into my side-projects and will be (hoping nothing else pops up) back to my bi-weekly posting schedule going forward.
Speech - to - text editor
When I started my series 'JustShipIt' it was to document my learnings building my first full stack web product as an engineer who isn't a web developer. And over the past month I played around with different ideas before settling on building a speech-to-text audio editor and I defined what my MVP would look like:
Over the weeks that followed since my post I spent pretty much most of my time building out the first two steps of my MVP. Since there are like a million whisper projects open sourced right now, this part sounded like it should've been relatively easy but unfortunately that was the case. I came across the most random errors and literally everything that could possibly break just kept breaking.
An example of one such failure is my Visual Studio python interpreter just one day decided it didn't recognise some basic python modules ( like request) that it had no problems with the day before. I managed to fix most of the failures and kept trudging along but then I got really stuck when my transcript just weren't being generated.
My transcribe function constantly kept returning TypeError errors whenever I attempted to parse my audio file. I tried everything I could think of and spent a lot of time digging through Medium tutorials but I kept seeing different errors and couldn't get a generated transcript.
After what felt like weeks of digging into my errors I randomly stumbled upon a flaskapi based github repo that had a working version of what I wanted. I can now upload an audio file and get the transcript generated, and I have just decided to use this as the base for my 'audio editor' project going forward.
A new *secret* project
When I got stuck with my python errors I took a break from working on my 'speech- to- text editor' project and spent time digging into rabbit holes such as serverless ML deployments, rewriting some Flask code to FastAPI and learning React.
During my break I got an idea for a completely separate project idea and of course bought a domain name. I also managed to get a basic proof of concept built for this secret project.
I am hesitant to talk more specifically about this secret project because I see it as being more than just a side-project and I want to build in stealth for a while. But I am pretty excited to launch a private beta when the mvp is completed
Both of the projects are being built on the same tech stack: FARM (FastApi, React and MongoDB).
My learnings from the past month and a bit of working on these projects
I am also realising how easy it is to over-engineer when writing software and I am constantly sitting down and trying to re-scope my projects.
Lastly the thing I have learnt over the past few months is that to get a 'completed' project may take longer than initially planned and things always take way more times than I think they would to build or write. I am also coming to the realisation that my ideas and projects are going to evolve the more I work on them.
I am trying to let go of rigid expectations and just enjoy this as the learning experience I intend it to be. I am shifting to a longterm view of things and that imperfect and consistent is way more important than perfect but inconsistent progress.