My journey towards independantly creating iPhone apps was not straightforward. I tried on at least five occations over the period of a few years to learn how to do it and always ended up blocked in the process, not coming away with an understanding of how the system works. I started with years of experience in web programming but was not able to transfer much of the knowledge: the web uses technical concepts invented in the 1990s whereas native apps require different paradigms from 1980s that are more primitive and complex. I ended up collaborating with Wil to create my first app that helped in the process of learning and transcribing songs, leaving the programming to him while doing everything else myself.
Still wanting to unravel the mystery, I continued thinking about the next attempt. Something clicked on the sixth try. At some point I became aware of an unexplored path and decided to pursue it to create the most basic prototype possible: an app that does nothing, but that functions as a proof of getting the pieces working together. After succeeding with this, I proceeded to make another naive one that only stores and edits data: the underlying blocks of most actions that people perform with apps. Finally, with a better lay of the land and an understanding of how to compose from the available parts, I managed to realize an idea that had been nagging me for a while: a remote control for the system music app that lets you spontaneously start learning the song that's currently playing, without needing to 'create a project' or 'import'—to seamlessly transition from casual to deep listening.
Almost a decade later, I have managed to create half a dozen apps on my own. It's hard to remember what it was like to not know how to do this, but I know that at the time I had no idea what was what, feeling I would never figure it out or that it's something that 'smart people' or 'trained people' could do. It's a lesson in patience, perseverance, and allowing time pass to help digest ideas and put things in perspective.