firstly,im new,so hello.

my first question is what is the difference between a web designer and developer?
from what ive read a developer does all the back-end stuff,but what i dont understand is if i was to hire a web designer to build me a site then surely they would do the back-end stuff as well?

why would i need to hire a developer once i my site is finished.
what more can they do that a web designer cant or hasnt?

my second is about building websites.

1.if i want to be able to create nice fancy looking site with flash ect.. then what software do i need and what should i be learning?

2.if i want to design good working websites(not worrying about how good it looks)that im trying to get ranked high in search engines(like a website for a buisness)then what software would i need and what would i need to be learning?

any advice will be much appreciated,thanks in advance.