This app (http://itunes.apple.com/us/app/graphing-calculator/id289940142?mt=8) seems pretty good, but I would like to make a better version. I am already an iPhone app developer. Is it worth it to try to make a better version of something that already exists? Will competition just copy my new features? Or, is it better to develop something completely new?
Is it worth it to try to make a better version of something that already exists?Sure, if you can!
Will competition just copy my new features?Probably--in fact, they might even improve on your version, just like you want to do with the existing graphing calculator app.
Overall, though, you don't win based on features alone.
Of course it would be nicer to invent some app nobody else thought of before and be the first and only on the market, but most likely someone has done this before but it always can be done better! (that's why you see iOS vs Android vs Windows vs ). People do make similar things in a different way. Sometimes it's similar that's it's exactly the same but with added benefits (and people do buy it - like Apple vs Samsung products which are very similar), sometimes it's innovative.
If you think you can do better calculator then do it but think about potential amount of customers who will need it (and will buy it giving you potential money)? Will there be 50 people needing your calculator for 1$ or will there be 10000? I would say making a specialized calculator can be good but I guess the amount of users using it will be limited comparing to lets say news application, or a navigation (I know it's big stuff, just saying)?
Sure - he who MARKETS best wins. The big issue with apps is getting them found in the app store. Most app purchases are impulse buys when the need suddenly arises for a specific function. If you have the web and itunes keywords cornered for that function then you have a better than normal chance.
And remember apps are not only a means to the function end, they can promote your other businesses like a free pen give away. Look beyond just "revenue" as the reason to create an app