A Pecha Kucha for WWW2016 in Montreal. Web development is widely considered to be a difficult topic to teach successfully within post-secondary computing programs. One reason for this difficulty is the large number of shifting technologies that need to be taught along with the conceptual complexity that needs to be mastered by both student and professor. Another challenge is helping students see the scope of web development, and their role in an era where the web is a part of everyday human affairs. This presentation describes our 2014 textbook and our plans for a second edition revision (which will be published in early 2017).
Web development is widely considered to be a difficult topic to teach successfully within post-secondary computing programs.
Determining what web development-related topics to teach within the constraints of one or maybe two courses in an undergraduate computing program is not easy.
For an instructor teaching web dev does feel like carrying a whole bunch of different sized boxes
Indeed, teaching web dev feels a bit analogous to gazing at Hieronymus Bosch’s bizarre sixteenth-century masterpiece, The Garden of Earthly Delights.
In this painting, an absurdist cacophony of images assaults the eyes.
With so much going on, it feels next to impossible to understand the ideas behind the painting …
or even to know if a single viewer is even intended to have broad comprehension about the painting.
This is similar to what it feels like for an instructor facing the prospect of teaching web dev for the first time and surveying the pandemonium of contemporary web development topics, tools, and techniques.
(aside: Which one of these represents JavaScript and which represents PHP?)
This combination of teaching complexity and real-world change might be the reason why web development as a topic area seems to be shrinking within many computing programs.
“Of the 84 course exemplars in the ACM 2013 Computer Science Curriculum, not a single one contains any topics from the Web Platforms knowledge area!”
Cover adopted from http://www.airagestore.com/model-airplane-news-vintage-cover-poster-december-1929.html
Bizarrely, we have witnessed a slowdown of interest in web development topics within many computing programs …
This seems especially odd given the growth and importance of web development in the world outside the university.
Why is this the case?
Two main culprits …
Culprit #1
Too many technologies that need to be mastered by the student, and, more importantly, by the instructor teaching web development.
This fish head stew of technologies is especially intimidating for many faculty members teaching web development since they usually did not specialize in this area within their graduate studies.
Culprit #2
While there are plenty of books on specific technologies (e.g., ASP.NET, PHP, or JavaScript) there wasn’t a single suitable textbook on web development.
As one professor wrote back in 2012:
“Because one web program may cover multiple web technologies, it is difficult to find one or two textbooks with enough breadth and depth to cover all the technologies in the course.”
This was the challenging lacuna that we tried to fill when we wrote our textbook, Fundamentals of Web Development [written in 2013, published in 2014]
We had several goals that shaped the planning and writing of the book.
Goal #1
We wanted to cover the many of the most important practical topics important to contemporary web practitioners
Goal #2
Provide a theoretical context suitable for an intermediate or upper-level undergraduate course.
We felt it was important for our book to cover fundamental concepts which allow a learner to progress to a deeper understanding of the subject
These two goals were challenging to accomplish since they have somewhat divergent paths …
We tried to bring the paths together by following three principles when we designed the book …
Design Principle #1
Had to cover both concepts and practice across the entire scope of web development.
This meant cramming in a lot of content!
It had to focus on the reality of modern web development, which meant including common frameworks, content management systems and contemporary programming toolkits and APIs.
Design Principle #2
To make the content more appealing to students, it had to integrate sophisticated, realistic, and visually-engaging case studies.
We included these three
Design Principle #3
Since today’s students are often reluctant readers, the book had to present its content in a manner suitable for visually-oriented learners.
The book contains over 500 figures.
(aside: some of my students have complained that there is too much reading in the diagrams!)
Here is what’s in the book …
The first column of chapters covers the basic technology stack in web dev
The second column covers many of the more “advanced” and “theoretical” topic areas
That was the book’s past … we are here today to get inspiration that will help us shape the book’s future
The rate of innovation and change within the web development field is of course quite notorious.
Our next edition will expand coverage in several areas
JavaScript programming today is not just an important adjunct to web development.
For this reason, our plans for the next edition will expand our coverage of JavaScript from two to four chapters.
[just read out and talk about what’s on the typed page]
We have just spent the past 6 minutes talking to you but we really want to hear your opinions/guidance/advice and that is why we are here!
Please give us feedback for next edition
Thank you!