Computer Science Education as a High Performance, Multi-Generational Community of Practice

Philip Johnson
14 min readJul 24, 2020


Higher education is in trouble, and 4K lecture video is not the answer

In a May, 2020 article in New York Magazine called The Coming Disruption, Scott Galloway predicts a dire future for all but the most elite higher education institutions. He bases this on the convergence of two forces: (1) the COVID-19 pandemic will permanently force higher education toward a significantly online format, and (2) Big Tech (Facebook, Apple, Amazon, NetFlix, Google, etc) will enter (and disrupt) the higher education market in order to maintain suitable growth for their investors. He predicts partnerships between elite universities and Big Tech that will enable these institutions to scale up their enrollments by one or two orders of magnitude, creating difficulties (at the least) and existential crises (at the most) for universities outside the Top 50. The problem for us in a nutshell: Why go to the University of Hawaii when you can get a degree from (say) Harvard for the same price?

While Galloway’s scenario is hypothetical and a number of years away, higher education has a more immediate question to answer: why attend a bricks-and-mortar University if most-to-all of the classes are going to be online? Why not take a gap year, or take cheaper online classes from Coursera or Udemy?

One answer might be the lecture-on-steroids approach, such as described in How Harvard’s Star Computer Science Professor Built a Distance Learning Empire (New Yorker, July 2020). While increasing the production values for videos, such as 4K resolution, is a great thing, only a tiny fraction of professors and institutions will have the wherewithal to create these kind of environments. And while this approach seems very promising for introductory courses and to attract students to a discipline, will high production values have the same return-on-investment in, say, a senior-level course on operating systems?

In this essay, I want to propose a different way for the University of Hawaii to maintain value even if the elite schools scale their enrollment. In fact, I believe that COVID-19 and the push toward a significantly online educational paradigm can actually enable us to design a new educational experience that is, in significant ways, better than what we have now. I believe we can create a new approach that provides a valid reason for students to choose the University of Hawaii for their computer science education, even if Harvard or MIT is also an option. It can open up new revenue models for the University. My approach requires integration of several existing technologies, and some modest enhancements, but no rocket science. I suspect the biggest barriers to adoption are that it requires a strong institutional commitment, resources, and a fundamental change of teaching behavior on the part of faculty.

I propose a structure for computer science education that creates and sustains a “high performance, multi-generational community of practice”. While it is true that universities already create a kind of community of practice, I will explain below why I believe our current community is both low performance and single-generational.

The community of practice for computer science that I envision will attract students prior to entering the University of Hawaii, nurture and support them while they are working on their degree, and, most importantly, continue to seamlessly support their education in computer science after they graduate and throughout their professional career. I believe that the confluence of modern technologies and the COVID-19 pandemic creates a window of opportunity to implement a high performance, multi-generational community of practice for computer science at the University of Hawaii. If we can show that this model works for Computer Science, then I see no reason why it couldn’t work for many other departments and institutions as well.

Before going further, here are what I believe to be some of the essential features of a high performance, multi-generational community of practice in Computer Science:

  • All classes are “flipped”. Lectures and other materials are available on-demand. There can be synchronous activities during classroom hours for students to practice material and obtain real-time feedback. These synchronous activities could be online or in the classroom. For undergraduates (i.e. novices), it is appropriate for the degree experience to not be entirely online, but to also include face-to-face interaction in a classroom.
  • All curriculum is organized into modules. These modules are 1–2 weeks in duration, for a total of 8–16 per semester. Each module will contain backward references to prerequisite modules in other courses, and forward references to modules in future courses that will depend upon it.
  • All curriculum is “radically transparent”. A student in the introductory class can access all curriculum materials for all future classes at any time. Lurking in future classes can help them develop interest areas and also see the importance of developing competency in their current courses.
  • Curriculum is under version control. Access to all prior versions of a class curriculum are preserved and available to community members. Community members can compare the course at the time they took it to the current version of the course. Teachers are expected to update course materials on a regular basis to maintain consistency with the state of practice.
  • Materials are managed through a novel curriculum management framework. This framework supports module organization, multiple access levels, and versioning. This technology does not yet exist and must be implemented, but the Morea Framework provides a starting point.
  • Communications are managed through a novel community of practice communications framework. I believe the best choice at present is a Discord server, augmented with custom bots for user and content management. This proposed community of practice for computer science at UHM will start at approximately 750 users and increase by approximately 100 users per year.
  • Access to and involvement in the community does not end when a student graduates. Instead, graduates are encouraged and incentivized to remain active in the community, though subsequent involvement will normally take place entirely online. A subscription model, with premium tiers, enables graduates to re-take old courses as their content evolves. Graduates can also review and comment on the relevancy of current course material, and flag material that has become inconsistent with current best practices and standards.

Perhaps these seem like random changes, but they are not. The aggregate impact is an online environment that not only gives current students new visibility into their degree program, but gives graduates a reason to stay engaged with the community. Indeed, this community of practice should be so professionally valuable that many graduates will pay a yearly subscription fee to obtain access to updated versions of courses they’ve taken, as well as brand new courses. Finally, it provides a community of practice that enables members to achieve much higher levels of expertise than is currently possible.

To better understand the transformative potential of a high performance, multi-generational community of practice for computer science, I think it is worthwhile to briefly describe one with which I have personal experience, and how it contrasts with present-day computer science at UHM.

A tale of two communities

To clarify, a “Community of Practice” (CoP) is a theory of learning whose informal definition is “a group of people who share a concern or passion for something they do, and learn how to do it better as they interact regularly”. There is a fair amount of academic literature on communities of practice over the past 30 years (for an overview, please consult Wikipedia).

I have claimed that ICS (as is the case for most traditional academic departments) is a “low performance, single generation community of practice.” To justify this, let me contrast it to a high performance, multi-generational community of practice: Kailua Canoe Club.

(1) The KCC CoP is large, diverse, and multi-generational.

KCC has around 450 members and around 30 coaches, making it similar in size to the ICS department in terms of students and faculty.

Unlike ICS, KCC encompasses a much broader range of ages: the youngest (competitive) members of KCC are around 12 years old, and the oldest (competitive) members are around 70 years old. There are three significant age-level divisions of roughly equal size: the “Youth” division (ages 12–18), the “Open” division (ages 19–40), and the “Masters” division (ages 40–70).

KCC has roughly equal numbers of male and female members. KCC includes people from a wide variety of socio-economic backgrounds. While there is a significant Caucasian demographic (perhaps reflecting Kailua as a whole), leadership positions are dominated by people of Hawaiian ancestry.

In contrast to KCC, the vast majority of members of ICS are between the ages of 18–22. There are under 100 graduate students, most in their 20’s, and a handful of Professors ranging in age from 30’s to 70’s. ICS is approximately 70% male, 30% female, and the leadership is mostly male and Caucasian.

(2) The KCC CoP encompasses and nurtures a wide variety of skill levels.

Obviously, KCC teaches children how to paddle. But it also teaches adults how to paddle. I joined KCC in my mid-40s, and entered a three year “novice” program that trains adults to be competitive paddlers. After three years as a novice, I spent a few years in the Open division, and am now a member of the Masters division.

Within the Open and Masters divisions, there exists a range of skill. Some paddlers only participate in the regatta season which focuses on short races in flat water conditions. Some also participate in the significantly more demanding open ocean distance season, culminating each October in the World Championship of outrigger canoeing: the 42 mile race across the Ka’iwi Channel. A small percentage of the Open and Masters members are elite paddlers who travel and compete internationally. KCC thus encompasses and nurtures beginner, novice, intermediate, advanced, expert, and elite paddlers. It is this aspect of KCC — the ability to harmoniously integrate all of these levels of practice and support advancement from one to the next — -that makes KCC a “high performance” community of practice.

ICS, in contrast, encompasses and nurtures a limited variety of skill levels for a limited period of time. The majority of the ICS community range in skill level from absolute beginner to novice. The handful of Ph.D. students and faculty achieve a high-level of expertise, but in a very narrow, and often esoteric skill set. (In paddling terms, it might be equivalent to a paddler who is really, really good at the (difficult) skill of turning a six person canoe around a flag, but in all other respects remains a novice-level steersman.) Finally, apart from the handful of Ph.D. students and professors, ICS members rarely remain active in the community for more than two or three years.

(3) The practices of the KCC CoP are visible and transparent.

KCC schedules regular practice times for its crews, with lots of overlap, and the regatta races are watched by everyone. This creates a high level of visibility and transparency. The behavior of coaches during practice are visible to other coaches and crews, as is the outcome of the coaching process during races. Since crews at different levels of expertise are often on the water at the same time, a coach can show paddlers what to do (and/or what not to do) by pointing to another crew on the water. The twelve year olds can watch not just the 13 year olds but also the Open Men, the Open Men can pick up tricks from the Masters Women, and so forth.

In contrast, the classrooms and teaching of ICS are opaque and private. Laulima hides course materials behind a login so that students must enroll in a course to know what they are asked to do in a semester, and that material is immediately locked away as soon as the semester concludes. A first year computer science student has virtually no access to or understanding of the second year material, nor the third, nor the fourth. Faculty cannot and/or do not observe each other’s teaching practices; there is no mechanism to learn from or evaluate each other. It is possible in ICS for poor teaching and skills to be tolerated in a way that is not possible in KCC.

(4) The KCC CoP engenders long-term loyalty and engagement.

To be sure, there exist “club hoppers”: paddlers who flit back and forth between KCC and other clubs, searching for the perfect coach and crew for each season. And it should be noted that KCC’s culture is not suited to every paddler; some paddlers leave for smaller clubs or clubs with less competitive pressure.

But, what is more prevalent in my experience is a strong sense of loyalty to the club, and a long-term commitment to supporting it as a paddler, and/or coach, and/or volunteer. Though I have not paddled competitively every season during the15 years since I first joined KCC, I have always considered myself part of the club, trained with KCC members year round, and have never considered joining a different canoe club. My attitude is not in the least bit exceptional. And it is certainly not exclusive to KCC — intense, long-term loyalty to one’s canoe club is commonplace in the paddling community.

ICS does not currently engender similar forms of long-term loyalty or engagement.

Transforming Computer Science at UHM into a high performance, multi-generational community of practice

The silver lining of COVID-19 is that it will produce the first generation of students who have learned how to learn in a substantially online fashion, and who will go into a workforce that will work online to a greater extent than any workforce previously. For example, Twitter’s CEO announced that many of its employees will be able to work from home permanently.

This creates an opportunity. Formerly, first-class membership in an academic department required physical presence. A lecture-based model of classroom instruction meant that significant engagement required coming on campus.

But, suppose we create a new format for computer science education where, as noted above:

  • All classes are flipped.
  • Curriculum is organized into modules, radically transparent, and under version control.
  • Novel technologies for curriculum and communication management increase access and engagement, both during the degree program and afterwards.
  • New subscription models enable graduates to retain access to old and new curriculum content without the commitment to an entire degree program.

This design has interesting potential side-effects. First, imagine hundreds of former graduates actively engaged with current curriculum content. These graduates will naturally assume mentorship roles; they can talk about the importance of curriculum content from the perspective of a practicing professional. They can also push-back against curriculum that has become out-of-date.

Second, this design has the potential to create long-term loyalty. For example, once a student has gone through the program, it will be easier for them to learn new material presented within this community because they are already comfortable with the technologies, approach, professors, and prerequisite material. A common student comment is, “If I had known then what I know now, I would have studied the material harder.” I have also heard, more than once: “I wish I could take every course that Henri Casanova teaches.” Well, now a student can actually go back and study the same material they were previously presented again, and hopefully in an updated and improved format. They can experience every course Henri Casanova teaches, even if some of those courses take place after the student graduates.

Another loyalty-enhancing aspect is the presence of friends in the community. It is easy to imagine forming a “study group” of now-professional friends to go through a course together.

Third, I believe a high performance multi-generational community of practice for computer science will improve the environment for high technology in Hawaii. As the number of post-graduate community members grow, more and more of them will represent the interests of the Hawaii high tech community. This will manifest itself in networking as well as in advocacy to provide curriculum suited to the current needs of the State.

What about research?

Some faculty might complain that this is “too much work” and will “take away from research”.

For one thing, this is going to create a massive amount of new research opportunities, at least in the area of education technology.

Second, once this system is operational, I do not see it as requiring significantly more effort than it currently takes to maintain a high quality educational experience for students using traditional pedagogy. However, it will require quite different skills: instead of the skill of walking into a classroom and delivering an amazing lecture, it will require the skill of nurturing a multi-generational community of practice both inside and outside of one’s assigned classes.

Speaking from the experience of having taught in a “flipped” style for over five years, I do not believe production values such as those in CS50 are crucial to a high quality educational environment. I use ScreenFlow to record my lectures, and almost always succeed in one take.

Implementation, funding, revenue

To conclude this essay, there are a many possible implementation approaches. For example, the ICS Department could voluntarily convert itself to this model over the period of a few years. Alternatively, one could focus on a single degree program. Finally, a brand new department could be established with this model as its guiding philosophy.

Both time and resources will be required to create the appropriate technological infrastructure. I estimate at least a year of development to create the curriculum management framework, and a several months to tailor a Discord server for this task.

One source of funding is the NSF Revolutionizing Engineering Departments (RED) program. ICS submitted a proposal to that program several years ago but it was declined (in part) because it was not sufficiently revolutionary. I don’t think a proposal based on this idea would be declined for that reason. That said, I do not believe the NSF RED program can be used to finance the implementation. Instead, it could provide resources to perform an experimental evaluation of the model: what works? What doesn’t work? How can it provide a broader impact across the computing/engineering discipline?

While Computer Science at UHM would be an appropriate initial target for this technology, it should generalize to other departments and even other institutions. This creates entrepreneurial opportunities, ranging from a for-profit startup that licenses the tech to UH and other institutions, to a non-profit consortium of higher education institutions. Either approach can amortize the costs of framework development and maintenance across multiple organizations and over multiple semesters.

A novel source of revenue comes from the expansion of the community of practice. If successful, professional technologists who earned their degree from UH would obtain significant value from maintaining access to the community and the curriculum materials. It seems reasonable to implement a subscription model, with multiple tiers, that professional would pay to obtain different levels of access.

Appendix: Technology Infrastructure: Morea Framework

I developed the Morea Framework about seven years ago to provide a more structured and effective way to organize and manage my curriculum materials. It’s been used by a few other ICS Professors (Henri Casanova, Cam Moore, Lipyeow Lim), at least one other professor at UH (Dan Port), and by several other institutions (UH Hilo, Jerusalem College of Engineering, University College London).

What distinguishes Morea from frameworks like Laulima is that it provides first-class representation of Modules, Outcomes, Readings, Experiences, and Assessments (hence the acronym). Plus, modules from one Morea site can be specified as prerequisites for modules in another Morea site, creating a module-level dependency structure. For example, in the following screen image, the ICS 311 module called “Growth of Functions”, depends upon three modules from prior courses ICS 141, ICS 311, and ICS 241:

Morea sites are currently published as static sites on GitHub. They require a certain amount of technical expertise (Git, Jekyll, Markdown, shell commands) to build and maintain. They do not support differing access levels or versioning.

Appendix: Technology Infrastructure: Discord

I previously wrote about Discord in “Why I’m switching from Slack to Discord for the Fall, 2020 semester”. Discord provides the best support for both synchronous and asynchronous communication due to its roots in support for the gaming community. Discord is also a good choice for communications infrastructure for ICS, because many of our students already use this framework regularly. One of our undergraduate clubs, ACM Manoa, has a Discord server with over 450 members: