Well, since I have started to program out codes, I have always been finding it difficult to build a better software. The better I had to develop a software the worse API I had to go through, take example of JSON, now I do know how to develop application based on JSON. When I started to learn it, it was a hard time. And now that I can develop applications, I don’t feel or get any better idea.
There is an inverse square law acting among these two things, and one needs to be working on an idea, make the pseudo code for it. Save it, put it in a locker and keep it there until you learn the API itself. Sorry for exaggeration; but I need to do this, I am a Walter Mitty, whoops, I meant to say James Thurber.
Take example of Google, they’re having a great tool and are ruling the mobile world with it, Android. However, since they’re using Java and Eclipse their development isn’t my choice. I don’t mean any hatred toward Java developers, yes I do love Java. But their API is not well designed and their tool is also not much of a love. I started my first GUI software using Java, Swing. But it was worst I could do! Then I got introduced to XAML. I did love C#, but was not able to develop applications using C# that had a GUI. When I got introduced to XAML, it was a kink for me. And I left Java and Eclipse like for ever.
This is based on my own belief only, I am sure there are others out there, who love Java and Android way more they do Windows Phone (and hey, I love Android, not Windows Phone; I just love C#).