I think the first and most important thing to get right is making sure you're solving the user's problem. Create user stories, and try to really put yourself in the shoes of the user. Training yourself to think like someone who is non-technical and perhaps a casual app user is often the most difficult step, but once you do that, it's almost like programming the experience and walking them through the app. Make the workflow as intuitive as possible ("don't make me think" principle), then worry about polish.
Some useful resources that I've found useful and that might serve you well:
http://bootstrappingdesign.com/ http://designforhackers.com/ http://hackdesign.org/
Keep in mind I'm pretty green as well, but I hope this helps. Hopefully some more experienced folks can chime in and call my b.s.