I’m currently learning iOS development.
When I start learning something new, I like to play with it. I like to take it apart into tiny pieces and then put it back together. “What happens with I put this piece back over here? Or add this one instead?” You can do that with code, and that’s a lot of fun.
When I started to gain momentum, I decided to do a project, and use that project to learn more about the language, the process, and the iOS ecosystem. I set a deadline; I wanted to have an app ready and in the app store before the end of the February. I didn’t make that deadline.
I think that learning a new language, for me at least, contradicts the concepts of developing a product.
When I’m learning how to code something, I add features, why? Why not? It’s something else to play with and it doesn’t matter how clunky my code is because it’s only there for me.
When building a product you really need to keep it as simple as possible. At least for v1. If you want to test a concept, see if it has appeal and will be useful for your target audience, you need to keep the experience simple, and the features to a minimum.
So that’s what happened. I didn’t MVP. But I’m okay with that. I have a working prototype of a much more complex app on my phone that I can show people, it’s the conversation piece I wanted it to be and looks and works pretty rad.
The MVP is MUCH simpler, and I’ll have it out much sooner than I could the current working model.