Since web developers and web designers are I’ll list my thoughts separately.
Current programming languages should be addressed but the actual languages taught aren’t as relevant as good programming practices like concise code that is maintainable by another developer, security concerns with the various languages, and fundamental programming logic. The nature of an academic institution, specifically the process of getting new curricula approved, doesn’t allow the fluidity needed to keep up with the latest trendy language (like the current Ruby on Rails trend), but good programming basics make learning a new language much easier.
With respect to actual technologies that should be taught, students more interested in working in the corporate world would be best served with ASP, ASP.NET, and Microsoft SQL database; for those who want to pursue a career in the for-hire, custom development field, PHP, Rails, MySQL, and Postgres would serve them well. Also, for both, basic networking and network security skills make for a better employee.
Both developers and designers tend to spend at least a portion of their career freelancing, so courses in basic business management, proposal writing and media law should be part of the core curriculum.
Then following the first year the student would decide which of the tracks was more suited to their taste, or in some cases they could choose both. While some people are able to juggle both development and design, it is my experience that these two activities stem from different sides of the brain and, therefore, a person tends to have a noticeable inclination towards one or the other. Whichever path a student chooses, however, they should have some rudimentary understanding of the other side of the field as well. If I was crafting a major, I would have two tracks available. The first year would be common amongst the two including an overview course in design and one in development that each track would be required to take. The ability to communicate with one’s counterparts is an important skill that these overview courses would be responsible for.
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?
- Programming Survey (define the core terms and competencies for a web developer, as well as the history of web development)
- Designing Survey (define the core terms and competencies for a web designer, the history of web design, and basic skills in design software)
- Seminar on Version Control (a short, one or two week course outlining the strategies and use of version control systems like CVS and Subversion)
- Business Management
- Applied Writing (cover both copy writing for the web and writing contracts, proposals, correspondence, etc.)
- Media Law
- Portfolio Course (a semester long course where seniors would create a real-world project ; could be built in partnership with a student from the other track or built by themselves with grading weighted toward their track’s abilities. Additionally this course would cover resume writing and interview taking skills)
- Internship (I would think a minimum of two semesters or one summer full time would be best)
- Basic Programming Skills (probably best as two courses, one on programming languages and one on database languages)
- Information Architecture (this would be a course dealing with how to store, retrieve, and display content)
- Language Specific Courses in PHP, Rails, MySQL, Postgres, ASP and ASP.NET, and Microsoft SQL (would require that 4 of these be taken in the last two years of the program)
- Basic Website Construction (this would be a lab course where students built brochure style websites and recreate an existing site)
- Advanced Website Construction (this would be a lab course where student would build more advance web applications)
- Illustration (this wouldn’t necessarily be a web design focused course)
- Typography and Layout (this wouldn’t necessarily be a web design focused course)
- Web Standards (a course teaching the skills of (X)HTML and CSS)
- UI Design (a course specifically focused on interactivity with an emphasis on web applications)
- Basic Website Design (a lab course where students design simple, brochure style sites and take existing sites and redesign them)
- Advanced Website Construction (a lab course where students design more complex sites with multiple templates as well as full fledge web applications)
- Adobe Flash
- Multimedia for the Web (teaching techniques for web video and audio creation and delivery)
Fairly complex web application tying together a database of content, a front-end of HTML, and a back-end for managing the content, preferably in more than one language and tackling different types of applications (say, a database for a hospital storing medical records and an ecommerce store)
Working examples of diverse sites with a broad range of design esthetics and target audiences/clients
While there are some seminal texts for each of the areas I've outlined here, the best resource a web worker has is the web itself. I'd would like to see at least 1/3 if not 1/2 of the texts used for any given course come from best of breed sites dealing with the focus of the course. This could be a tough sell to the curriculum approval committee, but to stay competitive the students will spend the rest of their careers researching for themselves; only by having the courses stay flexible in the texts used can an institution hope that its program remain relevant. In addition to the university keeping itself abreast of the latest trends and best practices, it should be teaching, in every course, how students can do this for themselves as well. The portfolio course I outlined earlier should be the last class a student takes with part of the grade being based on how well the student has incorporated trends, techniques, and skills that have emerged in the years since they began the program.