Buy a good textbook on visual design principles. I don’t have a recommendation in this area, so you’ll have to do some homework to find the right one. Start looking at the work of professional designers in the area you’re interested in. I use a blogroll for this, but you can pick your own path. The design section of my RSS currently consists of abduzeedo, design milk, and grain edit. For mock-up tools, I like Inkscape a lot. It’s free and mock-ups are mostly about the text, shape, and pen tools anyways. In the area of raster graphics, I haven’t seen any good alternatives to Photoshop; not that I’ve been looking. You can also look into some user experience stuff too, but that strikes me as overrated. After that, which programming tools you pick up will depend on your needs.
Buy a good textbook on visual design principles. I don’t have a recommendation in this area, so you’ll have to do some homework to find the right one. Start looking at the work of professional designers in the area you’re interested in. I use a blogroll for this, but you can pick your own path. The design section of my RSS currently consists of abduzeedo, design milk, and grain edit. For mock-up tools, I like Inkscape a lot. It’s free and mock-ups are mostly about the text, shape, and pen tools anyways. In the area of raster graphics, I haven’t seen any good alternatives to Photoshop; not that I’ve been looking. You can also look into some user experience stuff too, but that strikes me as overrated. After that, which programming tools you pick up will depend on your needs.