So I'm in a MacOS and iPhone development class this term. It's my last term in the Bachelor of Software Development degree program at Seneca College. I've now done some major project implementation, interface design, web programming, business plans and marketing exercises - a bunch of useful skills have been developed to be sure. However, today I am having a moment of doubt.
Here's the issue:
I'm a pretty new programmer/developer. One of the main reasons I chose this degree was to become more able to help people who are not so into computers and programming, to be someone who could help link the non-tech people (mostly artists) with technology in ways that are comforting and useful not scary and burdensome.
I had this thought that for my MacOS programming assignment I would make a little app to help my freelancing friends keep track of their time spent on contracts and print up nice little invoices at the end. Simple, useful, something I myself would need from time to time when I do side projects. I have a free app called Khronos which sort of does this but creates ugly invoices so I was inspired to improve on it.
Thing is, better (not free or open source) apps already exist. And they're good. As a pretty green programmer (and someone with 7 weeks of classes left) I can't touch these apps for their functionality. I would like to think I would do slightly better on the design, but that's not going to mean much if I can't come close to implementing the kinds of features the other guy has.
Now I wonder how to even a) get motivated and b) set reasonable expectations for myself in this assignment. I am feeling daunted by the fabulousness of these other programs (which I realize took years and a team of developers to accomplish) and it's hard to see how I can dip my toe in the water.
If anyone has read this far - advice is much appreciated. What do you do when you want to write something and find out it's already out there? How do you scope out an app for your first version when there are apps that already do more than your 1.0 could?