John Gruber

What skills and technologies should colleges and universities teach students who want to be web designers and/or developers? Why?

That’s a broad question. I think they’re different disciplines, so I’ll take both separately.

A web designer needs a background both in graphic design and in user experience design. In my opinion, specific technologies and skills aren’t nearly as important as the conceptual fundamentals, but when it does come to specifics, what should be taught are technologies and standards like HTML and CSS, not specific tools like Dreamweaver or whatever.

In a university setting, I think “developers” should simply study a traditional computer science curriculum. I don’t think it’s necessary to have a formal C.S. background to be a successful web developer, but, if you’re going to go to college with the goal of being one, computer science is what you should study.

Should students be educated in both web design and development or just one? Why?

If a student has the aptitude and interest in both sides, yes.

The most effective web developers can do both coding and visual design. But that’s sort of like being talented in two different sports. If you’re a strong visual designer with no programming aptitude or vice versa, there’s nothing wrong with that.

If you could create your dream curriculum for web design and development, what courses and information would you include? Why? What courses and information now in such programs would you eliminate? Why?

I would build a curriculum based on small teams of students building and designing a series of increasingly complex fully-functional web sites. The best way to learn is by doing.

What type of projects do you want to see in a recent graduate’s web design and/or development portfolio?

I’d like to see projects that seem “real”—work that is done for real web sites that are actually used.

How can colleges and universities keep web design and/or development curriculum current and relevant?

I think by teaching fundamental concepts (which change very slowly) rather than specific technologies (which change constantly), and by emphasizing building actual working web sites for student projects. Students should be encouraged to build web sites they would actually use, and perhaps which they will continue to maintain after their courses have finished. The fundamental concepts remain the same, but the application of these concepts changes.