Forum Moderators: phranque
Not books - but there are some excellent tutorials right here
Check out the PHP forum library [webmasterworld.com].
We're all beginners with Photoshop, 8 years of daily use and I only know a fraction... :)
All those things you think you need to know are not necessary. I get by with HTML, CSS and Flash. There's no point stuffing your brain. What is important is to understand the process and being able to recruit others far more specialized than you to carry out the job. If you seek a technical Web design job, than ok go ahead and learn all this stuff.
But I don't need to know the intricacies of PHP or Perl to know which to use for a given project. Many students coming out of school in Web design don't know all this stuff either. In fact many pros don't. They adapt to every project and only learn what they need to. The practical experience of knowing how to deliver a project is more important to me, than knowing specific languages. There's just too much to absorb, and life is too short.
If you're visually inclined, then learn more Photoshop, Flash, and perhaps even try some 3D applications.
Otherwise choose between open-source and corporate programming, and learn some of the languages already mentioned. The important thing is not to try to do it all, but to specialise. Getting an in-depth knowledge of any of these things can take months or even years, so it's important not to spread yourself too thinly.
I think you are right, specialization is the key. Decide the destination and learn the skills. Funnily enough, I was having this same conversation with my dad and you have repeated his words.
Although, it's also handy to have a basic understanding of these other languages
Thanks again