Web development courses and instruction are in relatively short supply in college curriculum around the country. One advocate for more robust web development classes and programs is @btopro of Penn State University. Starting last semester, he created and taught a course focusing on web development. Though I do not have a background in web development, I was selected as the Teaching Assistant for this course. This brief article will detail this structure and methods employed by this course and my experiences assisting with teaching this class while learning alongside the students.
The core principle of this class is that students learn more by doing than by listening alone. To promote this type of hands-on learning, weekly lab-like activities are the main form of learning and evaluation. These labs generally consist of three parts: 1) learning about and using the technology highlighted that week. 2) a written response detailing how the student utilized the selected technology that week and what the potential uses and implications of this technology are. 3) A screen cast style video posted to YouTube designed to teach a novice how to use this technology. These three tasks allow the students in the course to not only learn web development and related technologies, but to reflect on what they have learned and how it is relevant to their area of study and future career. This structure is not typical of the technology courses I have taken in college and I see many benefits to other courses adopting this form of active teaching.
Despite the technical knowledge required for serious web development, this course is designed to be accessible to students from several different majors and areas of study. In the two semesters this class has been conducted, students have come from cyber security, business, management/information systems and other diverse backgrounds. This highlights one of the main benefits to this course; that students from wide-ranging fields can all benefit from this course in some capacity. These labs are designed for all students by requiring only the fundamentals of a given technology for lab completion. These fundamentals can be thought of as a framework to be built upon by the student to fit their skill set and career track. More technical students can add onto the framework using other skills they have or can improve upon it using other skills they have. Business-oriented students can focus their final products on how these technologies can be implemented in a business context. Cyber security-oriented students can focus on the security implications, strengths or weaknesses of the selected technology. By providing students with freedom in creating their deliverables, they have the freedom to make this course relevant to their studies.
These frameworks and concepts are taught using several methods and resources: GitHub, CodePen.io, Reclaim Hosting to name a few. These resources, and others like them, are invaluable to a student who is new to web development and wants to develop their skills further. The introduction to these learning resources is one of the best parts of this course; they provide students of all background levels with quality resources where they can develop their skills further with minimal cost attached. Other technology courses in higher education could absolutely benefit from the use of these kinds of educational resources.
As for my own experience in this course, I love the flexibility it provides the students and the emphasis on using cutting-edge technologies in a context that is customizable at an individual level. In order to learn the fundamentals of these technologies to assist with teaching the course I have completed all labs and used all suggested outside learning sources. I have learned more than I ever expected about web development tools such as HTML, WordPress, Drupal, Docker and accessibility. I am by no means an expert with any of these, but I have developed a general understanding of how they are deployed and used in different contexts. More importantly, I am now familiar with learning resources where I can learn about and develop these skills with little or no cost.
For those who want more information about this course, feel free to check out the course website or reach out to me with any questions. Helping teach this course and curriculum has been a pleasure and I would be happy to discuss further with anyone interested!