A common misconception among many people is that Web development and Web design are synonymous. Below are the distinctions between the two careers, as well as some of the skills you might need to pursue them.
Web Developer
A Web developer is someone who creates Web-based applications by using programming languages. Basically, a Web developer makes things "happen" within a Web site or within a single Web page. By making things happen, I mean form-related functions, such as database calls, queries, compilations, scripting include-based (dynamic) templates, or anything that allows the user to interact with elements of the Web site.
If you want to become a Web developer, you need to be familiar with client-side scripting and/or server-side scripting. Additionally, you need to have some familiarity with database creation and maintenance.
Detailed List of Options:
Server side: ASP, ASP.NET, C++, C#, JScript, Java, Perl, PHP, Python, Ruby, Visual Basic, etc.
Client-side: JavaScript, Ajax - a combination of client and server
Databases: MySQL, MS SQL Server, Oracle, as well as some XML
A Web developer doesn't usually worry about the presentational aspects of the applications they create beyond the overall user experience. In some cases, Web developers can also be Web designers, enhancing the programmatic output through presentational manipulation. But, usually, after the programmatic scripting is completed, the Web developer's project is then handed off to a Web designer.
Beyond the technical knowledge required, it's beneficial for Web developers to study and understand usability (what makes a successful end-user experience), accessibility (what's needed to accommodate those with disabilities wanting to view your Web site), and W3C standards.
Generally, those with good analytical and logical skills make good Web developers. If you enjoy math, science, problem-solving, or mechanical manipulation, Web development could be for you.
Web Designer
A Web designer is someone who works with the visual elements of a Web page. This is the person that makes the page look "pretty." Web designers integrate components such as images, Flash files, or multimedia into the page to enhance the user's visual experience, or to supplement existing content.
If you want to become a Web designer, you need to be familiar with some client-side scripting, possibly some server-side scripting, HTML, Flash development and image manipulation. One very important, and integral, facet to being a successful Web designer is to understand Cascading Style Sheets (CSS). Another, lesser facet, is knowledge of semantic coding (using HTML tags to delineate content, rather than using them for presentational styling — p for paragraph, h1 for a heading 1, etc.)
Detailed List of Options:
Client-side scripting: JavaScript
Server-Side scripting: PHP, ASP
Cascading Style Sheets
HTML
Image manipulation and Web optimization
Flash or other multimedia creation and Web optimization
In contrast to the Web developer, a Web designer often has to work with teams of people, which requires additional skills in communications. He or she will work with one or more programmers and/or the Web content author(s) to create a design that both allows the Web applications to work unhindered and that complements, rather than overpowers, the actual textual content of the Web page. Web designers often are required to have some marketing knowledge, necessary to create designs that appeal to a certain clientele. Lastly, it's important that Web designers have knowledge of usability, accessibility, W3C standards of both HTML and CSS, and a thorough understanding of cross-browser compatibility.
To be a successful Web designer, you need an artistic eye and creative bent. If you enjoy art, social studies or communications, you're probably more inclined to be a Web designer.
Webmaster – A Hybrid of the Two
A webmaster can be either a Web developer or a Web designer. Usually, the webmaster works alone doing both jobs as he or she maintains a Web site. In addition, a webmaster may be responsible for search engine optimization (SEO), Web content writing, and/or marketing.
In larger organizations, a webmaster may be more of a project manager, overseeing the work of Web designers and Web developers. Additionally, the webmaster may be in charge of system performance, usability testing, usage tracking and other administrative-like tasks.
Conclusion
I hope this information has been helpful. Good luck in selecting whatever profession is best for you!