A bachelor's degree is usually required for entry-level and advanced web design positions, though some technical roles only require an associate degree. Programs in fine arts or graphic design offered by colleges and universities provide relevant education. Ideally, courses would include programming languages like PHP, ASP, and JavaScript as well as database development. Successful web designers typically have skills in HTML, CSS, Dreamweaver, Photoshop, InDesign, Flash, Illustrator, and project management. Additional useful skills include foreign languages, marketing, and business.