I'm not a "designer", so the way I use photoshop is potentially not the best, but it works. I usually design my website on photoshop (after manual sketches) in order to be able to try different prototypes fairly quickly. I don't use the splice tool, but rather generate pictures that I need manually. (e.g. 1x20 image is enough for a background, logo in png if need for transparency etc..). Then I jump to css and build up the design.
As far as php/mysql vs. Python/Django vs. RoR... I would suggest sticking to what's most comfortable for you to learn fundamentals. But once you know your basics, it's much easier to jump from a technology/language to another.