Presentation I gave at WCCCE 2012 in Vancouver.
Computing education has faced a variety of ongoing and critical self-examinations over the past 15 years. This paper provides a set of critiques and alternative teaching approaches for two vital but under-reported computing knowledge areas: web development and computing ethics/social issues. It concludes with a claim that these two knowledge areas can also provide an important way to integrate the often-heterogeneous knowledge areas in the computing curriculum.
Criticizing and Modernizing Computing Curriculum: The Case of the Web and the Social Issues Courses
1. Criticizing and Modernizing
the Computing Curriculum
The Case of the
Web
and the
Social Issues Courses
Randy Connolly
Mount Royal University, Calgary
2. Computing education has faced
a variety of ongoing and critical
self-examinations of different
aspects of the curriculum over
the past 15 years.
3. Some computing topic areas
(e.g., first-year programming)
have been rigorously examined
in the education literature.
5. This paper provides a set of
critiques and alternative
teaching approaches for
two vital topic areas that have
been under-reported in the
computing education literature:
13. Almost all of the topics
recognizable as pertaining to
the field of web development
are marked as elective topics
in the CS 2008 (and 2013)
curriculum.
15. There has been a real dearth
of research on the teaching of
web topics.
16.
17. Given the importance of web technology
in the real world of software development,
This relative lack of interest
in the web by computer science
is somewhat surprising.
18. Number of
Web-Based
Software
Development
Jobs
Number of Non-Web
Software Development
Jobs
Based on searches in Oct + Nov 2010 on monster.com and simplyhired.com
19. The papers that do exist
generally begin by stressing
the many difficulties
in teaching a web development course.
20. Examining the literature,
web content is usually being taught using the
broad but shallow
All-the-Web-in-One-Course (AWOC)
approach
21. 60%
Of CS web education papers reported
A single web course
16% Web taught in CS0 or elective
12% Javascript in CS1/CS2
12% Multicourse stream on web
22. Given the importance of web systems,
the time has come for
retiring the AWOC approach
23. Back in the early 1970s, a math program
might have had a single course in
programming in Fortran,
but eventually it was recognized that a body
of knowledge as complex as programming
requires multiple courses to teach the
material properly.
Web development
should be in a
similar state today
24. While the AWOC approach does give students
a sense of the big picture of web development,
it by no means provides the students
with anything approaching proficiency
in contemporary practice.
33. HTML
Not just the details
(which are trivial)
but also how to do
semantic separation
of content from
presentation.
34. Due to practitioners’ move
towards web standards and
semantically-oriented
markup,
real world CSS is
commonly used for
positioning and layout.
35. This type of CSS is notoriously
difficult to master due to
browser bugs, incompatibilities, and non-obvious
CSS box model interactions.
36. Another important part of web
development that is almost always
left out of the AWOC approach is
digital media
37. Yet another vital knowledge
area in web development is
usability, an area that is
almost always ignored in
AWOC courses.
None of the current web
textbooks examined for this
paper contained any substantial
material on usability.
38. Javascript has become too
complex to be covered in a
AWOC course.
The type of Javascript that can
be covered in one or two weeks
(rollovers, form data validation, browser sniffing)
was reasonably close to what
was needed professionally in the
late 1990s.
39. Since the discovery of XmlHttpRequest
and the subsequent flourishing of new
user interface coding and asynchronous
communication with web services,
Javascript coding as become simultaneously
crucial to contemporary web development
and significantly more complicated.
40. Analogous to the case with CSS,
this type of Javascript
programming
is very difficult to learn due to:
browser differences,
the untyped nature of the language,
the lack of a cross-browser debugging
environment,
general conceptual complexity of
working with callback functions
41. A key part of learning real-
world web development is
the server-side
environment.
Potentially this is a very
large topic, and has its own
difficulties from a teaching
perspective.
42. If students haven’t fully
mastered the ability to
implement a non-trivial design
in HTML, CSS, and Javascript,
the added indirection of
writing a program to generate
HTML, CSS, and Javascript can
be quite tricky conceptually
for a novice developer.
43. Server-side development also has a
number of substantial additional topics,
which are difficult to fit into a single
AWOC course.
45. Web vulnerabilities/security
is another area that is
difficult to comprehensively
cover in the AWOC approach.
None of the current web
textbooks examined for this
paper contained any substantial
material on web security.
46. Our students also need to learn a
certain amount about hosting and
administration issues, such as:
The architecture of the main web server
platforms such as Apache and Microsoft’s IIS.
Hosting topics such as web gardens, web
farms, load balancing, and server
configurations for scalability.
Image Source:
http://sharepointmagazine.net
47. More and more
organizations are
using already
existing open-
source and/or
proprietary web
frameworks
instead of
creating their
web infrastructure
from scratch.
48. This is perhaps the
most substantial
revolution in web
development since
the mass adoption of
CSS in the early
2000s
49. Content management systems,
blogging systems,
and web forums
are more and more
often being used
as the main framework for an
organization’s public or private
web presence,
since these systems handle
many of the most common web
needs of an organization.
50. Similarly, due to the
complexity of layout-
oriented CSS and AJAX-
focused Javascript, it is
becoming increasingly
common to use an
existing CSS or
Javascript framework.
51. For the students, it is important to learn
about the existence of these existing
frameworks and templates because the future
of web systems will increasingly lie in their
use, integration, and customization.
Sometimes multiple existing
systems will be used by an
organization and the key role of
the web professional will be to
get these systems to interoperate
through their public APIs.
65. It is not hard
to see
the attraction of
this approach
for us
computer
professors
66. The “many gray
areas of computer
ethics are often
frightening …
to professors
who are worried
about how to
answer things of
which
they themselves are
unsure.”
68. Some have indeed argued that
using this algorithmic
provides a sense of security and
methodology
for nervous CS faculty teaching an SPI
confidence
course
69. I am going to argue that both
this algorithmic methodology
and
the theoretical understanding of the relationship
between technology and society that it is based
upon
are deeply flawed.
70. I will try to convince you that
we need to move away from
the ethical evaluation of
impacts
and instead
emphasize
the social context of computing
71. In particular, the way we teach SPI material
needs to integrate the decades-old
of researchers in the philosophy, history, and sociology of
insights
that emphasizes a very different approach to
technology
SPI.
72.
73. The common way of seeing technology is
it is akin to a cue ball
that
impacting or altering the rest of society
74. In this perspective
key technological inventions
have transformed the world.
Thus new technologies
need to be analyzed to understand
wide changes they will enact.
the
75. This approach to technology
is generally referred to as
Technological
Determinism
77. It is understandable
why computer professionals find
technological determinism
attractive. people helping to
We are the
invent new technologies
78. It feeds our to be
clear socially
desire relevant
79. … and our
desire to believe
that we
computer geeks
are the driver of
social change,
and not
politicians,
business people,
or celebrities.
80.
81. Most current historians and sociologists of
firmly reject technological
technology
determinism
because it is
theoretically inconsistent
and
empirically under-supported
82. The well-established academic field of
science, technology and society (STS)
studies (that began in the 1960s)
has time and time again found that when
examined carefully
most technologies rarely have had the
effect that was expected
or
had the transformative impact people
claim.
83.
84.
85. economy
history
technolog
y
cultur
e
society
politics
86.
87. 1. Empirically false
2. Not used by STS research
community
3. Naively focused on functional capabilities
93. In all these cases
– and practically any other set of prognostications and
impact evaluations than begin from an unquestioned
belief that the functional capabilities of a technology
(i.e., the means) do what is promised (i.e., achieve their
ends) –
the expected social impacts
ended up being wildly wrong
because the prognosticators
believed in a
naïve technological
determinism.
94.
95. The introduction of household technology
did not end up creating,
in the words of Ruth Schwartz Cowan,
less work for mother,
but
in fact
more work
because of a series of social changes that could not
have been predicted if one limited one’s analysis just to
the functional capabilities of the household technologies.
96. Efficient internet search-engines
have not
resulted in people with
too much knowledge;
instead,
unpredicted changes in how people
interact with words and even possibly
cognitive decline due to the brain’s
plasticity
have arguably resulted in the
exact opposite consequence
97. The introduction of anti-lock disc
brakes have not
reduced accidents at all,
because drivers tend to drive faster and tailgate
more closely due to the improved braking
technology and also partly because of increases
in the intensity of traffic due to unexpected
changes in urban geography.
98.
99. The first step
Then we should take in our
Social and Professional Issues courses
is to communicate how rarely
technologies achieve their promise
and indeed,
how many do the opposite.
100. The revenge effect of technology
is extremely well documented
yet
it is uncovered in any of the
computer ethics textbooks examined
for this presentation.
101. One way to achieve this goal
would be by beginning the SPI course
with examples and readings
on how certain vital technologies had
little impact on some societies,
or
on how certain technologies were
strongly modified and differently
adapted in different cultures and
countries.
103. In this approach,
one looks at how technologies are
researched,
invented,
financed,
developed,
adopted,
marketed,
and propagated
within a very complex system
generally referred to as society.
104. In other words,
our SPI courses should
look more like a
historical sociology course
and a lot less
like a philosophic ethics
course.
108. Randy Connolly
Dept. Computer Science & Information
Systems
Mount Royal University, Calgary, Canada
rconnolly@mtroyal.ca
Images from iStockPhoto and stock.xchng