On the most recent episode of The New Show (a podcast I do with Daniel Fore and Joe Ressington), one of the listener questions was the following:
Have you ever struggled with the paralysis of choice, especially when deciding on a tool, service or product to use, tech or otherwise?
You can hear the discussion of this in episode 10 from around 25 mins in.
Initially my thoughts revolved around consumption. I have no real difficulty choosing products as a consumer. I walk into a store, find a thing, buy the thing and walk out. I rarely browse, unless it's a shop where I have no intended purchase, like on a recent trip to a game shop or comic store while on holiday.
After Joe talked about his experience of the paralysis of choice when he's creating content, it got me thinking. I have a problem with content consumption, in that I find there's too much choice (Netflix, Spotify, Podcasts) which leads me to choosing the easy option of listening to or watching the same stuff repeatedly.
However, thinking more, I also have the same content creation paralysis too. Mostly around game and application development. Anyone who's heard me online in the last year will know I don't consider myself a "Developer" despite my job title being "Developer Advocate". I can advocate for the tools other people develop, but I don't technically develop them myself, is how I rationalise it.
But in my spare time, I often consider ideas for games and applications. I have physical notebooks and electronic documents going back maybe 15 years, containing ideas, sketches and plans for games and applications - mostly games. Over the years I've made a hundred aborted attempts to turn these ideas into real, tangible things. The problem I think I have, is choice.
As I'm "not a developer" I've not had any formal training or education on software development, at least not for over 20 years. Back in the late 1980's at school and college I learned a bunch of languages like InfoBASIC, Z80 Assembler and even COBOL. I later taught myself Pascal and dabbled with 8088 Assembler on the PC.
Through my work career I've fiddled with a bunch of languages including SAP ABAP/4, Python and Java, but never to a point where I could plan and develop an application from start to finish. More recently I've played with Godot, Unity, Construct 2 & 3, Phaser, Lua, Love2D and more I've probably forgotten.
There's (at least) two issues here. Firstly, because I don't know any of the tools particularly well, I frequently get stuck very early on. I might choose a toolset / framework, bootstrap a project and then get frustrated because I don't know the language or libraries well enough. I will put that to one side, and maybe come back to it later, but often not.
The other problem is that of choice. Because I have a high level, but surface-deep idea of a bunch of languages and tools, but not in-depth knowledge, I can't pick one. I try one, get frustrated, and go back to the start. The next time around I remember the frustration, and pick a different tool, thinking things will be better. They aren't.
Part of the problem is not doing this as my day job - not a developer, remember - so not having a bunch of solid experience to draw from. Another part is that I often only have a couple of hours here and there to hack on these projects in between work, looking after the family, and the house. So I never get deep into any of the projects before either running out of time or getting frustrated.
In the past, one solution I used was to pay someone else to do the work for me. I designed the application, wrote a spec and they did the actual coding. I can understand the way it all works once someone else wrote it, but actually starting from a blank page and writing the code, seems like something my brain isn't wired for.
Am I alone? Other people get this? What's the way out? Help!