As mentioned by plainclothes, learning the basics of design is important. There are many good resources listed here on GraphicDesign to get you started which you can find easily by checking out the resources tag and sorting it by votes. You should give many of the resources provided a read if you're wanting to become a good designer of anything.
As for UI specific resources, I've found this UX course to be a good start. It goes into detail of most aspects of UI design, though there's always more you could learn. The important thing is to follow proven rules, Erik Kennedy came up with some good basics (part two here), and to create a lot of work. Practice implementing the rules you learn to reinforce them in your mind and to see what works and what doesn't first hand. Having others use your interface after each big iteration is quite useful as well, getting feedback before the product is "finished".
Keeping up to date and keeping UX on your mind is also important. UIGifs sends an email once a week with some lovely UI designs, I highly recommend subscribing. UX thought of the day sends an email once a day related to a UX concept. UserFlowPaterns is a great site to see delightful examples of good practices put into applications in a concise way. There are many others, but it's my favorite at the moment.
In modern times, like Yisela suggests, we don't have to work in PS but can start designing directly in the browser (or an editor for whatever platform you're working in). I created a list of resources to help beginners get started with web development that is hopefully very useful to you if you end up doing your work in code. The advantage to doing your design in code (or some other in between way of doing it like WebFlow) is that you have a majority of your next stage already done, quickening the entire process. It's not required, of course, but it also helps your thinking in terms of what's possible and best practice by implementing it as you design.
Assuming what you're designing is responsive, meaning it looks good regardless of the screen it's being viewed on, you should design in a mobile-first way. Mobile-first should never be thought of as mobile-most-important, which would imply that so long as we get it working on phones and tablets we’ll be okay. Instead, think of it as smaller-first, or smaller-then-larger in temporal order of consideration. By beginning with the smallest screen size that we plan to support, we know we’re giving attention to the most vital aspects of our site or app, and the rest is gravy. If you'd like more information about how to develop in this way, I wrote about it on my personal blog.
The most important thing you can do to get better at UI design is to create UIs - lots of them.
Applying rules as you learn them is great as it helps reinforce them in your mind and makes your design better at the same time. Most likely your designs will stink for a while but that's okay! This video gives a good explanation of why - in essence it's because it happens to all of us, but you'll make it if you keep trying :)