A blast from my past: Google reimplements CoFIND

While searching for a movie using Google Search last night I got (for the first time that I can recall) the option to tag the result, as described in this article. I was pleased to discover that the tool they provide for this is virtually identical (albeit with a much slicker and more refined modern interface overhaul) to the CoFIND system that underpinned my PhD, that I built over 20 years ago now. You are presented with a list of tags, and can select one or more that describe the movie, and/or suggest your own, effectively creating a multi-dimensional rating system that other users can use to judge what the movie is like. When I rated the movie last night, for instance, popular tags presented to me included ‘terrible acting’, ‘bad writing’, ‘clichéed’, ‘boring’ and so on. Having seen the movie, I agree about the bad writing and clichés – it was at the terrible end of the scale – but actually think most of the acting was fairly good, and it was not very boring. What is interestingly different about this, compared with other tagging systems currently available, is that this kind of tag is fuzzy – it represents a value statement about the movie that exists on a continuum, not a simple categorization. The sorting algorithm for the list of tags presented to you appears (like my original CoFIND) to be based mainly on simple popularity though it is possible that (like CoFIND) it uses other metrics like tag age and perhaps even a user model as well. It’s vastly more useful and powerful than the typical thumbs-up/thumbs-down that Google normally provides. The feature has sadly not reappeared on subsequent movie searches, so I am guessing that Google is either still testing it or trying to build up a sufficient base of recommendations by occasionally showing it to people, before opening it up to everyone.

Just in case Google or anyone else has tried to patent this, and to assert my prior art, you can find a description and screenshots (p183 and p184) of my original CoFIND system in chapter 6 of my PhD thesis as well as in many papers before and since, not to mention in a fair few blog posts. It’s out there in the public domain for anyone to use. The interface of my system was, even by the standards of the day, pretty awful and not even a fraction as good as the one provided by Google, but those were different times: it did work in exactly the same way, though. As I developed it further, the interface actually became much worse. Over the course of a few years I experimented with quite a range of methods to get and display ratings/tags, including an ill-conceived Likert scale as well as a much more successful early use of tag clouds, all of which added complexity and reduced usability. Some of these later systems are described and discussed in my PhD too.  In its final, refactored, and heavily evolved form that postdates my PhD by several years, a version of Cofind (last modified 2007) is actually still available, that almost reverts to the the Google-style tag selection approach of the original, with the slight tweak that, in CoFIND, you can disagree about any particular tag use (for instance, if you don’t believe it to be inane then you can cast a vote against that tag).  The interface remains at least as awful as the original, though, and not a patch on Google’s. The main other differences, apart from interface variations, are that the nomenclature differs (I used ‘qualities’  rather than ‘tags), and that CoFIND could be used for anything with a URL, not just movies. If you’re interested, click on any resource link in the system and you’ll see my primitive, ugly, frame-based attempt to do very much the same as Google is doing for movies (nb. unless you are logged in you cannot add new qualities but, for authorized users, a field appears at the end that is just like Google’s). Though primarily intended to share and recommend educational resources, CoFIND was very flexible and was, over the years, used for a range of other purposes from comparing interface designs to discovering images and videos. It was always flaky, ugly, and unscalable, but it worked well enough for my research and teaching purposes, and (because it provides RSS feeds) it was my go-to tool for sharing interesting links right up until 2007, after which I reverted to more conventional but better-maintained tools like the Landing or WordPress. 

A little bit of CoFIND background

I’ve written a fair bit about CoFIND, formally and informally, but not for a few years now, so here’s a little background for anyone that might be interested, and to remind myself of a little of what I learned all those years ago in the light of what I know now.

An evolving, self-organizing, social bookmarking tool

I started my PhD research in 1997 with the observation that, even then, there was a vast amount of stuff to learn from that could be easily found on the Web, but that it was really difficult to find good stuff, let alone stuff that was actually useful to a particular learner at a particular stage in their development. Remember that this was before Google even started, so things were significantly worse then than they are now. Infoseek was as good as it got.

I had also observed that, in any group of learners, people would find different things and, between them, discover a much larger range of useful resources than any one learner (or teacher) could do alone, a fact that I use in my teaching to this day. These would likely (and, it turns out, in reality) be better than what a teacher could find alone because, though individual learners might be less able to distinguish low from high quality, they would know what worked for them and sufficient numbers of eyes would weed out the bad stuff as long as there was a mechanism for it. This was where I came in.

The only such mechanisms widely available at the time were simple rating systems. However, learners have very different learning needs, so I immediately realized that ‘thumbs-up’ or simple Likert scales would not work. This was not about finding the one ‘best’ solution for everyone, but was instead concerned with finding a range of alternatives to fill different ecological niches, and somehow discovering the most useful solution in that niche for a given learner at a given time.  My initial idea was to make use of a crowd, not an individual curator, and to employ a process closely akin to natural evolution to kill bad suggestions and promote good ones, in order to create an ecosystem of learning resources rather than a simple database. CoFIND was a series of software solutions that explored and extended this initial idea.

CoFIND was, on the face of it, what would eventually come to be called a social bookmarking system – a means for learners to find and to share Web resources (and, later, other things) with one another, along with a mechanism for other learners to recommend or critique them. It was by no means the first social bookmarking system, but it was certainly not a common genre at the time, and I don’t think such a dedicated system had ever been used in education before (for all such assertions, I stand to be corrected), though other means of sharing links, from simple web pages or wikis or discussion forums to purpose-built teacher-curated tools were not that uncommon. A lot of my early research involved learning about self-organization and complex systems, in particular focusing on evolution and stigmergy (self-organization through signs left in the environment). As well as the survival-of-the-fittest dynamic, evolution furnished me with many useful concepts that I made good use of, such as the importance of parcellation, the necessity of death, ways to avoid skyhooks, benefits of spandrels, ways to leverage chance (including extinction events), and various approaches to supporting speciation.  As a result of learning about stigmergy I independently developed what later came to be know as tag clouds. I don’t believe that mine were the first ever tag clouds – weighted lists of one sort or another had been around for a few years – but, though mine didn’t then use the name, they were likely the first uses of such things in educational software, and almost certainly the first with this particular theoretical model to support them (again, I am happy to be corrected).

A collaborative filter

The name CoFIND is an acronym for ‘collaborative filter in n-dimensions’. The n dimensions were substantiated through what we (my supervisors and I) called qualities. We went through a long list of possible names for these, and I was drawn for a while to calling them ‘values’, but (unfortunately) we never thought of ‘tags’ because the term was not in common use for this kind of purpose at the time. After a phase of calling them q-tags, I now call qualities by the much more accessible name of ‘fuzzy tags’. Fuzzy tags are not just binary classifications of a topic but tags that describe what we value, or don’t value, in a resource, and how much we value it. While people may sometimes disagree about binary classifications (conventional tags) it is always possible to have different opinions about the application of fuzzy tags: some may find something interesting, for instance, while others may not, and others may feel it to be quite interesting, or incredibly so. Fuzzy tags are to do with fuzzy sets, that have a continuum of grades of membership, which is where the name comes from. Different versions of CoFIND used different ways to establish the fuzziness of a tag – the Likert Scale used in a few mid-period versions was my failed attempt to make it explicit but this was a nightmare for people to actually use.  The first versions used the same kind of frequency-based weighting as Google’s movie tags, but that was a bit coarse – I was uncomfortable with the averaging effect and the unbridled Matthew Effect that threatened to keep early tags at the top of the list for all time, that I rather coarsely kept in check with a simple age-related weighting that was only boosted when they were used (the unfortunate side effect of which being that, if a system was not used for a few weeks, all the tags vanished in a huge extinction event, albeit that they could be revived if anyone ever used one of the dead ones again). The final version was a bit in-between, allowing an indefinitely large scale via simple up-down ratings, balanced with an algorithm that included a decaying but renewable novelty weighting that adjusted to the frequency of use of the system as a whole. This still had the peculiar effect of evening out/initializing all of the tags over time if no one used the system, but at least it caused fewer catastrophes.

‘Traditional’ collaborative filters simply discover whether things are likely to be more valued or less valued on a usually implicit single dimension (good-bad, liked-disliked, useful-useless, etc). CoFIND’s qualities/fuzzy tags allowed people to express in what ways they were better or worse – more interesting, less helpful, more complex, less funny, etc, just as Google’s movie tagging allows you to express what you like or dislike about a movie, not just whether you liked it or not. In many tag-based systems, people tend to use quite a few simple tags that are inherently fuzzy (e.g. Flickr photos tagged as ‘beautiful’) but they are seldom differentiated in the software from those that simply classify a resource as fitting a particular category, so they are rarely particularly helpful in finding stuff to help with, say, learning.

I was building CoFIND just as the field of collaborative filtering was coming out of its infancy, so the precise definition of the term had yet to be settled. At the time, a collaborative filter (then usually called an ‘automated collaborative filter’) was simply any system that used prior explicit and/or implicit preferences of a number of previous users (a usually anonymous crowd) to help make better recommendations and/or filter out weaker recommendations for the current users. The PageRank algorithm that still underpins Google Search would perhaps have then been described as a collaborative filter, as was one of its likely inspirations, PHOAKS (People Helping One Another Know Stuff), that mined Usenet newsgroups for links, taking them as an implicit recommendation within the newsgroup topic area. By this definition, CoFIND was in fact a semi-automated collaborative filter that combined explicit preferences with automated matching. Nowadays the term ‘collaborative filter’ tends to only apply to a specific subset of recommender systems that automatically predict future interests by matching individual patterns of behaviour with those of multiple others, whether by item (people who bought this also bought…) or user (people whose past or expressed preferences seem to be like yours also liked…). I think that, if I built CoFIND today, I would simply refer to it more generically as a recommender system, to avoid confusion.

Disembodied user models

Rather than a collaborative filter, back in the late 90s Peter Brusilovsky saw CoFIND as a new species of educational adaptive hypermedia, as it was perhaps the first (or at least one of the first) that worked on an open corpus rather than through a closed corpus of linked resources. However, he and I were both puzzled about where to find the user model, which was part of Peter’s definition of adaptive hypermedia. I didn’t feel that it needed one, because users chose the things that mattered to them at runtime. In retrospect, I think that the trick behind CoFIND, and what still distinguishes it from almost all other systems apart from this fairly new Google tool, is that it disembodied and exposed the user model. Qualities were, in essence, the things that would normally be invisibly stored in a user model, but I made them visible, in an extreme variant of what Judy Kay later described as scrutable adaptation.  In effect, a learner chose their own learner model at the time they needed it. The reasoning behind doing so was that, for learners, past behaviour is usually a poor predictor of future needs, mainly because 1) learning changes people (so past preferences may have little bearing on future preferences), and 2) learning is driven by a vast number of things other than taste or past actions: we often have a need for it thrust upon us by an extrinsic agency, like a teacher, or a legislative demand for a driving licence, for instance. Qualities (fuzzy tags) allow us to express the current value of something to us, in a form that we can leave behind without a lot of sticky residue, and that future users can use. In fact, later versions did tend to slightly emphasize similar things to those people had added, categorized, or rated (fuzzily tagged) earlier, but this was just a pragmatic attempt to make the system more valuable as a personal bookmark store, and therefore to encourage more use of it, rather than an attempt to build a full-blown collaborative filter in the modern sense of the word.

Moving on

I still believe that, in principle, this is an excellent approach and I have been a little disappointed that more people have not taken up the idea and improved on it. The big and, at the time, insurmountable obstacles that I hit were 1) that it demands a lot of its users to provide both tags and resources, with little obvious personal benefit, so it is unlikely to get a lot of use, 2) that the cold-start problem that affects most collaborative filters (it relies on many users to be useful but no one will use it until it is useful) is magnified exponentially by every one of those n dimensions so it really demands a big lot of users, and 3) that it is fiendishly hard to represent the complex ecological niches effectively in an interface, making the cognitive load unusably high. Google seems to have made good progress on the last point (an evolution enabled by improved web standards and browsers combined with a simplification of the process, which together are enough to reduce the cognitive load by a sizeable amount), and has plenty sufficient numbers of users to cope with the first and second points, at least with regard to movie recommendations. It remains challenging to see how this would work in an educational setting in anything less than the largest of MOOCs or the most passionately focused of user bases. However, I would love to see Google extend this mechanism to OERs, courses, and other educational resources, from Quora answers to Kahn Academy tutorials, because they do have the numbers, and it would work well. For the same reasons, it would also be great to see it applied to something like StackExchange or similar large-scale systems (Reddit perhaps) where people go to seek solutions to learning problems. I doubt that I will build a new version of CoFIND as such, but the ideas behind it should live on, I think, and it’s great to see them back on a system as big as Google Search, even if it is so far only experimental and, so far, just used to recommend movies.

A Universal Moral Code?

57 varieties It appears that there may be a universal moral code, at least across 60 very different cultures, at least according to this large metastudy of anthropological literature. The authors focus explicitly and exclusively on manifestations of cooperative behaviour, so the level of abstraction is fairly high. I’m not totally convinced that it constitutes anything as formulaic as a code, and it contributes little or nothing to philosophical or pragmatic debates about ethical behaviour, but it is nonetheless a very interesting discovery.

The seven moral behaviours/values that the authors hypothesized would be universal, based on their theory of morality-as-cooperation (a game-theory inspired model) are:

  • allocation of resources to kin (family values),
  • coordination to mutual advantage (group loyalty),
  • social exchange (reciprocity),
  • contest between hawks (showing bravery), and
  • doves (showing respect),
  • division (fairness), and
  • possession (property rights).

The hypothesis was confirmed by the analysis. Fascinatingly, one almost-exception was found relating to property rights. In Chuuk society, openly stealing from others is valorized as a form of bravery, albeit that other indicators show that property rights are normally respected by most Chuuk people most of the time, so all that this shows is that bravery is sometimes considered a more important moral value than respect for other people’s property. I suspect similar behaviours might be found among gangs in many cultures, where such actions may signify group loyalty, bravery, respect for other group members, and so on. Assuming that people generally behave well according to their social norms (which they manifestly do), moral issues are only ever a matter of deliberation when they come into conflict with one another so this is not so much an exception as a proof of the rule.

The authors wisely note the limitations of the study, which uses papers that were not originally intended to explore ethical issues, that only looks at 60 cultures, and that uses a methodology that is almost guaranteed to introduce bias, albeit that they took sensible precautions to limit the worst effects of this. They cannot claim that these are the only 7 universals, by any means: these are just the ones that they looked for. Nor can they even reliably claim universality, though this is a decent sample so any exceptions are likely to be quite exceptional, and the results do support their theory.  Because their focus is solely on cooperative strategies, there is nothing relating to pretty big ethical questions on which most societies are likely to agree, like whether it is OK to kill other people, or eat them, or lie to them, and so on. There’s still a lot of scope for variation in ethical beliefs and behaviours within this broad framework.

None-the-less, this provides a rare chunk of empirical evidence to support there being some universality to at least broad groups of moral behaviours and values. Mostly, and unsurprisingly given the game-theoretical basis of the model, the concerns addressed are what you might predict if you were thinking about how a complex society might develop methods of cooperation, given a few basic evolutionary assumptions about gene preservation, an innate urge to hang around with others of your species, and a limit on resources. Such patterns are likely to be innate simply due to the inevitable consequences of a large group of reproducing social animals living together with limited resources. This implies that we might see exactly the same universals in other social species in such circumstances too, at least in those with the capacity for complex thought like most mammals and higher avians. I can’t immediately think of any obvious real-life exceptions, though there are certainly differences in the significance and influence of each value in different social species. Also, at least some of the values may not translate well to truly eusocial creatures like naked mole rats, nor to species where territory or other forms of ownership mean very little (some fish, for instance) nor to those that do not normally spend a lot of time together (cats or octopuses, for instance).

There are potential conflicts between several of the values, the most obvious being bravery/respect, fairness/property rights, though it is possible to imagine conflicts between any or all of them, as the example of the Chuuk people illustrates. The fact that these might be universal ethical patterns does not imply that there are therefore any universal solutions to ethical dilemmas. Nor does universality have any bearing on the fact-value gap or the naturalistic fallacy: universality does not imply rightness. It does, though, provide a promising theoretical model that may be useful when imagining alien intelligences, including those we might one day design ourselves.

Originally posted at: https://landing.athabascau.ca/bookmarks/view/3982628/a-universal-moral-code

Power, responsibility, maps and plans: some lessons from being a Chair

Empty chair

I’ve reached the end of my first week of not Chairing the School of Computing & Information Systems here at Athabasca University, which is now in the capable hands of the very wonderful Ali Dewan.

Along with quite a few people that I know, I am amazed that I stuck it out for over 3 years. I was a most reluctant Chair in the first place, because I’d been in middle management roles before and knew much of what to expect. It’s really not my kind of thing at all. Ideologically and temperamentally I loathe hierarchies but I’d rather be at the top or at the bottom if I have to be in one at all. However, with the help of some cajoling, I eventually convinced myself that being a Chair is essentially much the same as being a teacher, which is an activity that I both enjoy and can mostly do reasonably well. Like a teacher (at least one that does the job well), the job of a Chair is to help nurture a learning community, and to make it possible for those in that community to achieve what they most want to achieve with as few obstacles as possible. Like teaching, it is not at all about telling, but about listening, supporting, and helping others to orchestrate the process for themselves, not so much about leadership as followership, about being a supportive friend. It’s a bit about nudging and inspiring, too, of sharing the excitement of discovery and growth with other people. It’s a bit about challenging people to be who they want to be, collectively and individually. It’s a bit about solving problems, a bit about being a shoulder to cry on, a bit about being a punchbag for those needing to let off steam, an arbiter in disputes. It could be fun. And I could always give it up after a few months if it didn’t work out. That was what I convinced myself.

On the bright side, I don’t think that I broke anything vital. I did help a couple of good things to happen, and I think that most of my staff were reasonably happy and empowered, a few of them more than before. One or two were probably less happy. But, in the grand scheme of it all, I left things much the same as or a little better than I found them, despite often strenuous efforts to bring about far more exciting changes. My tenure as Chair was, on the whole, not great, but not terrible. I have been wondering a bit about why that happened, and what I could or should have done differently, which is what the next part of this post is about.

Authority vs influence, responsibility vs power

One of my most notable discoveries (more accurately, rediscoveries) is that authority and responsibility barely, if at all, correlate with power and influence. In fact, for a middle management role like this, the precise inverse is true. One of the strange paradoxes of being in a position of more responsibility and authority has been that, in many ways, I feel that I’ve actually had considerably less capacity to bring about change, or to control my own life, than I had as a plain old professor.  It’s just possible that I may have overused the joke about a Chair being the one everyone gets to sit on, but it resonated with me. And this is not to contradict Uncle Ben’s sage advice to Spiderman – it may be true that with great power comes great responsibility, but that doesn’t mean that with great responsibility comes great power.

Partly the problem was just the myriad small but draining demands that had to be done throughout the course of a typical day (most of which were insufferably tedious and mostly mindless bureaucratic tasks that anyone else could do at least as well), as well as having to attend many more meetings, and to engage in a few much lengthier tasks like workload planning. It wore me down. I put a lot of things that were important to me, but that didn’t contribute to my role, to one side because there were too few chunks of uninterrupted time to do them. Blogging and sharing on social media, for instance.

Partly it was because I felt that my role was primarily to support those that reported to me – I had to do their bidding much more than they had to do mine. Instead of doing what I would intrinsically wish to do, much of the time I was trying to do what those that I supervised required of me. This was not just a result of my own views on leadership. I think a lot of it would have affected most people in the same position.

Partly it was because I often felt (with a little external reinforcement) that I must shut up and/or toe the line because I represented the School or the Dean or the University. Being the ‘face’ of the school meant that I often felt obliged to try to represent the opinions and demands of others, even when I disagreed with them. Often, I had to present a collective agenda, or that of an individual higher up the foodchain, rather than my own, whether or not I found it dull, mistaken, or pointless. Also, being a Chair puts you in some sensitive situations where a wrong step can easily lead to litigation, grievance proceedings, or (worse) very unhappy people. I’m not naturally tactful or taciturn, to say the least, so this was tricky at times. I sometimes stayed quiet when I might otherwise have spoken out.

The upshot of it is that, as a Chair, I was directly responsible both to my Dean and to the people I supervised (not to mention more or less directly to students, visitors, admins, tech staff, VPAs, etc, etc), and I consequently felt that I had very little control over my own life at all. Admittedly it was at least partly due to my very intentional approach to the role, but I think similar issues would emerge no matter what leadership style I had adopted. There’s a surprising amount of liberty in being at the bottom of a hierarchy, at least when (like all academics) you are expected – nay, actually required – to be creative, self-starting, and largely autonomous in your work. Academic freedom is a wonderful thing, and some of it is subdued when you move a little way up the scale.

Some compensations 

There have been plentiful compensations, of course. I wouldn’t have stayed this long if it had been uniformly awful. Being a Chair made some connections easier to make, within and beyond the university, and has helped me get to know my colleagues a lot better. And I have some great colleagues: it would have been much harder to manage had I not had such friendly, supportive, smart, creative, willing, and capable team to work with. I solved or at least made fair progress on a few problems, none huge but all annoying, and helped to lay the groundwork for some ongoing improvements. There were opportunities for creativity here and there. I will miss some of the ways I could help shape our values and systems simply thanks to being a Chair, rather than having to actually work at it. I’ll miss being the default person people came to with interesting ideas. I’ll miss the very small but not trivial stipend. I’ll miss being involved by default in most decisions that affect the school. I’ll miss the kudos. I’ll miss being a formal hub in a network, albeit a small one.

Not quite like teaching

In most ways I was right about the job being much like teaching. Most of the skills, techniques, goals, and patterns are very similar, but there’s one big difference that I had not thought enough about. On the whole, most actual teachers engage with learners over a fairly fixed period, or at least for a fixed project, and there is a clear beginning, middle, and end, with well defined rituals, rules, and processes to mark their passage. This is even true to an extent of more open forms of teaching like apprenticeship and mentorship. Although this in some ways relates to any kind of project, the fact that people, working together in a social group, are both the focus and the object of change, makes it fairly distinctive. I can’t think of many other human activities that are particularly similar to teaching in this regard, apart from perhaps some team sports or, especially, performing arts.

To be a teacher without a specific purpose in mind is a surprisingly different kind of activity, like producing an improvised play that has no script, no plot, no beginning, and no end. Although a teacher is responsible to their students, much as I was responsible to my staff, the responsibility is tightly delimited in time and in scope, so it remains quite manageable, for the most part. In retrospect, I think I should have planned it better. I probably should have set more distinct goals, milestones, tasks, sub-projects, etc. I should have planned for a very clear and intentional end, and set much firmer boundaries. It would not have been easy, though, as many goals emerged over the years, a lot changed when we got our new (and much upgraded) administration, and a lot depended on serendipity and opportunism. I had, at first, no idea how long I would stick with the role. Until quite some time into it, I had only a limited idea about what changes I might even be allowed to accomplish (not much, as it happens, with no budget, a freeze on course development, diminishing staff numbers, need to fit faculty plans, etc). It might have been difficult to plan too far ahead, though it would have been really useful to have had a map showing the directions we might have gone and the limits of the territory. I think there may be useful lessons to be learned from this about support for self-directed lifelong learning.

Lessons for learning and teaching

A curse of institutional learning can be the many scales of rigid structure it provides, that too often take agency away from learners and limit support for diversity. However, it also supports an individual learner’s agency to have a good map of the journey ahead, even if all that they are given is the equivalent of a bus route, showing only the fixed paths their learning will take. I have long grappled with the tensions and trade-offs between surfing the adjacent possible and following a planned learning path. I spent a lot of time in the late 1990s and early 2000s designing online systems that leveraged the crowd to allow learners to help one another to learn, but most of them only helped with finding what to do next, or to solve a current problem, not to chart a whole journey. Figuring out an effective way to plan ahead without sacrificing learner control was one of the big outstanding research problems left to be solved when I finished my PhD (in self-organized learning in networks) very many moons ago, and it still is. There are lots of ineffective ways that I and others have tried, of course. Obvious approaches like matching paths through collaborative filtering or similar techniques are a dead-end: there are way too many extraneous variables to confound it, way too much variation in start and end points to effectively cater for, even if you start with a huge dataset. This is not to mention the blind-leading-the-blind issues, the fact that learning changes people so past activity poorly predicts future behaviour, and the fact that there is often a narrative context that assumes specific prior activities have occurred and known future activities will follow. Using ontologies is even worse, because the knowledge map of a subject developed by subject experts is seldom if ever the best map for learning and may be among the worst. The most promising approaches I have seen, and that I had a doctoral student working on myself until he had to give up in the mid 2000s, mine the plans of many experts (e.g. by looking at syllabuses) to identify common paths and branches for a particular subject, combining them with whatever other information can be gleaned to come up with a good direction for a specific learner and learning need. However, there are plenty of issues with that, too, not least of which being the fact that institutional teaching assumes a very distinctive context, and suffers from a great many constraints (from having to be squashed into a standardized length to fitting preferred teaching patterns and schedules), that learners unhindered by such arbitrary concerns would neither want nor need. Many syllabuses are actually thoughtlessly copied from the same templates (e.g. from a professional association model syllabus), or textbooks, and may be awful in the same ways. And, again, narrative matters. If you took a chunk out of one of my courses and inserted it somewhere else it would often change its meaning and value utterly.

This is a problem I would dearly love to solve. Though I stand by my teaching approaches, one of the biggest perennial complaints about the tools and methods I tend to use is that it is easy to feel lost, especially if the helping hands of others are not around when needed. There are always at least a few students who would, as a matter of principle, rather be told what to do, how to do it, and where to go next. The majority would prefer to work in an environment that avoids the need for unnecessary decisions, such as where to upload a file, that have little to do with what they are trying to learn. My role (and that of my tutors, and the design of my courses) is to help them through all that, to relieve them of their dependency on being told what to do, and to help them at least understand why things are done the way they are done. However, that can result in quite inconsistent experiences if I or tutors let the ball slip for a moment. It can be hard for people who have been taught, often over decades, that teaching is telling, and that learning can reliably be accomplished by following a set of teacher-determined steps, to be set adrift to figure it out in their own ways.

It is made far worse by the looming threat of grades that, though eliminated in my teaching itself, still lie in wait at the end of the path as extrinsic targets. Students often find it hard to know in advance how they will meet the criteria, or even whether they have met them when they reach the end. I can and do tell them all of this, of course, usually repeatedly and in many ways and using many media, but the fact that at least some remain puzzled just proves the point: teaching is not telling. Again, a lot of manual social intervention is necessary. But that leads to the issue that following one of my courses demands a big leap of faith (mainly in me) that it will turn out OK in the end. It usually takes effort and time to build such trust, which is costly for all concerned, and is easily lost with a careless word or a missed message.  It would be really useful for my students to have a better map that allows them to plan detours and take more alternative transit options for themselves, especially with overlays to show recommended routes, warnings of steep hills and traffic, and real-time information about the whereabouts of people on their network and points of interest along the way. It would, of course, also be really handy to have a big ‘you are here’ label.  I would have really liked such a map when I started out as Chair.

Moving on

Leaving the Chair role behind still feels a little like stepping off a boat after a rough voyage, and either the land or my legs feel weird, I’m not sure which. As my balance returns, I am much looking forward to catching up with things I put to one side over the past 3 years. I’m happy to be getting back to doing more of what I do best, and I hope to be once more sharing more of my discoveries and cogitations in posts like this. It’s easier to move around with your feet on the ground than when you are sitting on a chair.

 

Google kills off Hangouts and Allo in a cull to its messaging apps

Well, this is rotten.

As the article suggests, the loss of Hangouts and Allo was pretty inevitable, given the large overlap in functionality between them and various Google apps (notably their Messages app), and that Google has a long history of dropping popular (usually ‘free’) tools on which people rely. But Google is only notable because it is so big. It has become an all-too-common feature of working in a centralized, cloud-based ecosystem that those of us who rely on tools created by the big few are completely at their mercy when they decide to make changes, or when they simply go under. The same is true whether we pay for it or not: Athabasca University’s use of O365, for instance, forces us to accept whatever ‘upgrades’ Microsoft choose to inflict on us (including loss of services, features, and functionality) despite the large amount of money it costs us to use it. But a very similar problem affects totally open and cool systems like the much missed Firefox Hello, that was ignominiously killed off a couple of years ago.

If everyone were using open standards, as I believe they should, then this would not be a really serious problem – we’d just switch to a different provider, using the same protocols, maybe with different apps and, perhaps, using different hosts. But, for most of us, that’s not how things work any more. Gone (I hope temporarily) are the days when the community established standards, and people wrote apps that used them. The Web couldn’t happen again today, nor email, nor SFTP, nor telnet, nor any number of critical protocols on which we all rely, whether we know it or not. It’s not that there is no need – the fact that people rely on things like Hangouts or Skype demonstrates a big demand, and it’s actually quite bizarre that a perfectly acceptable protocol (XMPP) is actively ignored for such things. It’s like the bad old days before TCP/IP glued everything together all over again, only worse, because the Internet has become a critical service, and it affects so many more people than before. Maybe the odd API has been standardized (WebRTC, for instance) but that’s not the same thing as a real protocol, and nothing like as universally useful.

Trouble is, if centralized organizations (mainly commercial companies) lock us into changes in ways we don’t like, or the service vanishes, or terms and conditions change to something unacceptable, we are royally screwed. This is the fundamental problem with the cloud, and why we should be very wary of using it. It’s not bad in principle – you can use the cloud to follow open standards if you shop around or rely on your own management skills – but it’s really bad when open standards are flagrantly ignored.

Originally posted at: https://landing.athabascau.ca/bookmarks/view/3762927/google-kills-off-hangouts-and-allo-in-a-cull-to-its-messaging-apps

Microsoft under GDPR microscope for Office 365 and OneDrive | Alphr

https://www.alphr.com/microsoft/1010196/microsoft-under-gdpr-microscope-for-office-365-and-onedrive?_mout=1&utm_campaign=alphr_newsletter&utm_medium=email&utm_source=newsletter

No big surprises here to anyone that has ever so much as glanced at Microsoft’s business model and historical abuse of its customers, but definitely a matter of concern for organizations (like Athabasca University) that rent their services from Microsoft, especially given the fact that hosting for O365 is in Trumpland. In brief, Microsoft has been secretly collecting user data from many apps (including the Office suite) without telling its users, thus failing Privacy 101.

We should not be using this service, and nor should anyone outside the US who cares about confidentiality or privacy. Those in the US who deal with sensitive data should also avoid it, but they’ve got bigger privacy problems to worry about than this.

Originally posted at: https://landing.athabascau.ca/bookmarks/view/3690501/microsoft-under-gdpr-microscope-for-office-365-and-onedrive-alphr

Beyond learning outcomes

What we teach, what a student learns, what we assess This is a slide deck for a talk I’m giving today, at a faculty workshop, on the subject of learning outcomes.

I think that well-considered learning outcomes can be really helpful when planning and designing learning activities, especially where there is a need to assess learning. They can help keep a learning designer focused, and to remember to ensure that assessment activities actually make a positive contribution to learning. They can also be helpful to teachers while teaching, as a framework to keep them on track (if they wish to remain on track).  However, that’s about it. Learning outcomes are not useful when applied to bureaucratic ends, they are very poor descriptors of what learning actually happens, as a rule, and they are of very little (if any) use to students under most circumstances (there are exceptions – it’s a design issue, not a logical flaw).

The big point of my talk, though, is that we should be measuring what students have actually learned, not whether they have learned what we think we have taught, and that the purpose of everything we do should be to support learning, not to support bureaucracy.

I frame this in terms of the relationships between:

  • what we teach (what we actually teach, not just what we think we are teaching, including stuff like attitudes, beliefs, methods of teaching, etc),
  • what a student learns in the process (an individual student, not students as a whole), and
  • what we assess (formally and summatively, not necessarily as part of the learning process).

There are many things that we teach that any given student will not learn, albeit that (arguably) we wouldn’t be teaching at all if learning were not happening for someone. Most students get a small subset of that. There are also many things that we teach without intentionally teaching, not all of them good or useful.

There are also very many things that students learn that we do not teach, intentionally or otherwise. In fact, it is normal for us to mandate this as part of a learning design: any mildly creative or problem-solving/inquiry-oriented activity will lead to different learning outcomes for every learner. Even in the most horribly regimented teaching contexts, students are the ones that connect everything together, and that’s always going to include a lot more than what their teachers teach.

Similarly, there are lots of things that we assess that we do not teach, even with great constructive alignment. For example, the students’ ability to string a sentence together tends to be not just a prerequisite but something that is actively graded in typical assessments.

My main points are that, though it is good to have a teaching plan (albeit that it should be flexible,  reponsive to student needs, and should accommodate serendipity)learning :

  • students should be participants in planning outcomes and
  • we should assess what students actually learn, not what we think we are teaching.

From a learning perspective, there’s less than no point in summatively judging what learners have not learned. However, that’s exactly what most institutions actually do. Assessment should be about how learners have positively changed, not whether they have met our demands.

This also implies that students should be participants in the planning and use of learning outcomes: they should be able to personalize their learning, and we should recognize their needs and interests. I use andragogy to frame this, because it is relatively uncontroversial, is easily understood, and doesn’t require people to change everything in their world view to become better teachers, but I could have equally used quite a large number of other models. Connectivism, Communities of Practice, and most constructivist theories, for instance, force us to similar conclusions.

I suggest that appreciative inquiry may be useful as an approach to assessment, inasmuch as the research methodology is purpose-built to bring about positive change, and its focus on success rather than failure makes sense in a learning context.

I also suggest the use of outcome mapping (and its close cousin, outcome harvesting) as a means of capturing unplanned as well as planned outcomes. I like these methods because they only look at changes, and then try to find out what led to those changes. Again, it’s about evaluation rather than judgment.

Smart learning environments, and not so smart learning environments: a systems view | Smart Learning Environments | Full Text

This is a new article from me about smartness in learning environments. The originally submitted title was ‘stupid learning environments’ but the reviewers rightly felt that this didn’t accurately reflect the main points of the article. It’s worth dwelling for a second on why I chose it, though. I created the original title in homage to Cipolla, whose definition in ‘The Basic Laws of Human Stupidity” resonates through the paper:

“A stupid person is a person who causes losses to another person or to a group of persons while himself deriving no gain and even possibly incurring losses.”

In the paper I describe how traditional educational systems can be (and, without much effort, usually are) not just a bit unintelligent but, in Cipolla’s sense of the word, positively stupid, because they can (and by default do) actively militate against effective learning in a number of important ways. It’s not the first paper in which I have mentioned this curious fact, nor the first one in which I have suggested ways to overcome the problem but, in this paper, it is really just intended as an illustrative example of how learning environments can result in unwanted behaviours, and not the main point of the piece.

The main point of the paper is that typical definitions of smart learning environments in existing literature, that talk only of digital tools embedded in or overlaid on an environment, make little sense because smartness in an environment is not a consequence of smartness in its components, but of how they work together to support learning. An individual brain cell is not smart, but systems comprised of lots of them, connected in the right ways, can be. Equally, an individual professor might (occasionally) be very smart but, without a lot of coordination and/or connection, a collection of them is no smarter than a collection of cats. The point is that smartness in an environment is a systems issue that, generally speaking, has little to do with the pieces of digital technology we embed in it (a distributed model) or that we overlay on top (a centralized model). Most importantly, perhaps, a model of a smart learning environment that ignores the most intelligent and dynamic parts of it (the learners), or that only looks at a tiny fraction of the environment, makes no sense whatsoever. The paper is thus an attempt to shift the focus away from digital tools and towards the roles that they and other smart things (like students and professors and cats) can play in the broader learning environment. To do that it meanders a bit around a bunch of related issues, integrating a number of ideas I have written about before such as orchestral perspectives on soft and hard technologies, the gestalt nature of teaching, and the value of connectivist patterns of thinking, leading to a few suggested strategies for building smart learning environments (not just smart tools), and a conclusion that the smartest learning environments are “inhabited spaces that provide the richest opportunities for people to connect, engage, support, and challenge one another to learn”.

Address of the bookmark: https://slejournal.springeropen.com/articles/10.1186/s40561-018-0075-9

Originally posted at: https://landing.athabascau.ca/bookmarks/view/3618331/smart-learning-environments-and-not-so-smart-learning-environments-a-systems-view-smart-learning-environments-full-text

Laziness Does Not Exist

Sloth (public domain from Flickr Commons)This is a refreshing article from E Price, a social psychologist, who makes an obvious and self-evident point that is far too often forgotten: that there are always underlying reasons for what we perceive as laziness. This quote sums it up:

“People do not choose to fail or disappoint. No one wants to feel incapable, apathetic, or ineffective. If you look at a person’s action (or inaction) and see only laziness, you are missing key details. There is always an explanation. There are always barriers. Just because you can’t see them, or don’t view them as legitimate, doesn’t mean they’re not there. Look harder.”

I suspect that we don’t address the issue as much as we should because people with problems (i.e. all of us, in one way or another) usually make our lives more difficult. In fact, that’s pretty much what we mean by ‘lazy’ – if inaction has no harmful effects, then it is just relaxation. It seems to me, therefore, that ‘laziness’ characterizes a harmful effect, whether on self or others, rather than being a psychological characteristic of a person. Laziness is not a state of mind: it is a harmful effect of any number of different states of mind.

If someone is not doing what is expected of them, whether in work, study, or play, it normally makes our own lives more difficult. In the workplace this is usually pretty obvious: if someone is not working as much as they should, everyone else has to work more in order to compensate. It might not always be so clear cut, though. For instance, a lazy student might sometimes reduce our workload as teachers because we don’t have to mark work that is not submitted, and we don’t have to engage with a student that fails to show up. To be fair, it is almost as common that laziness means we have to engage in lengthy and traumatic plagiarism proceedings, because we make the stakes so high and the motivation so extrinsic that a fair number of students take shortcuts to the mark, rather than face the traumas of learning in the ways we insist they should learn. But, whether or not it reduces our workload, it still affects us deeply because, if a student is failing, we have failed. The fact that they are the ones that receive the ‘F’ is a consequence of a stupid power relationship that institutionally absolves us of virtually all responsibility for our own failure, but the fact remains that a failing student is also a failed student, and no one likes to fail. If we were truly great teachers, none of our students would ever fail, so a student that fails is a clear sign that we are not truly great. Maybe it’s because we are too lazy.

 

Address of the bookmark: https://medium.com/@dr_eprice/laziness-does-not-exist-3af27e312d01

Originally posted at: https://landing.athabascau.ca/bookmarks/view/3612426/laziness-does-not-exist

Open Education Resources, Massive Open Online Courses, and Online Platforms for Distance and Flexible Learning

Ironically published in a closed and massively over-priced Handbook of IT in Primary and Secondary Education, here’s a chapter from me and Gerald Ardito on open and distance learning in the context of teaching children (paywall). I don’t know very much about primary and secondary education per se, but Gerald knows a lot, and we share a lot of attitudes, interests, and practices relating to education in general, so it was fun authoring this with him.

In the chapter we characterize openness as freedom from constraint – the more there are constraints, the less open it is, on whatever dimension of openness you choose to consider. The insight that pleases me most in this chapter is that, as applied in adult education, openness has traditionally been about making it easier to get in, whereas in child education the problem lies in making it easier to opt out, whether of a specific school or of the curriculum requirements imposed on it. In the chapter we use this as a foundation to explore dimensions of openness, kinds of openness, and ways of escaping the pedagogical constraints of traditional teaching systems.  

One thing that is important to observe, and that is implicit in our chapter, is that this simple characterization hides a wealth of complexity, nuance, and fuzziness. Most adult learners who are enrolled within an educational system have a great many constraints that prevent or discourage them from getting out of it, or at least out of the chunk into which they have enrolled, and most child learners have a great many freedoms, often including things we do mention in the chapter like homeschooling and (sometimes, though often dependent on income or religious persuasion) alternative schools of many varieties, but equally within the structure of traditional schooling itself. However, as a general pattern, it seems to me that any system that demands attendance, especially where even the alternative choices are themselves constrained in the extent to which they are allowed to depart from a fixed curriculum, cannot be accurately described as particularly open, any more than one that erects barriers to attendance or that unnecessarily limits how and what is learned within it. An open prison provides fewer barriers to leaving it than a traditional prison, and may allow greater freedoms within its boundaries, but it is still a prison.

Openness, however, is not so much about freedom as it is about control. There is often less than no point in removing barriers to choice if the learners do not know what to choose or why to choose it. A large part of the essence of being in control therefore lies in our ability to delegate choices to another. This is exactly how all powerful people are powerful: they are able to exercise influence over others who will do what they wish to be done to achieve what they wish to achieve.

I believe that a central and fundamental goal of education is empowerment of learners. Consequently, anything that disempowers learners is almost certainly a bad thing (exceptions apply only when the needs of one conflict with the need of others), and anything that eliminates barriers is a good thing. This is why there is a moral imperative for all educators to seek openness in all that they do, whether in terms of access, pedagogy, engagement, content, or whatever, and to eliminate barriers to learning whatever form they may take. Education empowers. Openness empowers education.

Address of the bookmark: https://link.springer.com/referenceworkentry/10.1007/978-3-319-71054-9_47

Originally posted at: https://landing.athabascau.ca/bookmarks/view/3522769/open-education-resources-massive-open-online-courses-and-online-platforms-for-distance-and-flexible-learning

Unintelligent machines

In 2012 there were roughly 100 million lines of code in an average car, a number that has been rapidly increasing for decades, and is no doubt significantly higher now. If you printed out 100 million lines of code, it would consume approximately 1.8 million pages of text, or a stack of paper approaching 200 metres in height. Assuming a text coverage of about 5%, if you were using (say) an HP inkjet printer which uses 35g of ink per thousand pages, it would take about 630kg of ink to print and you would make your way through over 50,000 ink cartridges (which, at about $CAD40 a piece, would set you back a couple of million dollars). On a 20ppm printer, it would take over 600 days of continuous printing, not allowing for time between cartridge changes, paper refills, etc, nor the fact that the printer would need to be replaced every day or two as it reached the end of its useful life.  To be fair, much of that would be duplicate code, well-tested libraries, and standard functions, lots of it is involved in stuff like entertainment systems, USB readers, and other non-critical systems and, of those 100 million lines, ‘only’ around 10 million are actually involved in systems that make the vehicle do its thing.

But wow.

The industry average for bugs varies between 15-50 defects per thousand lines. Microsoft reckon they have that down to 0.5 per thousand which, as anyone who has ever used Microsoft software will no doubt agree, is still way too high. I think that it might result from a peculiarly rosy definition of ‘defect’, and it certainly doesn’t include code behaviours that are entirely intentional but horribly wrong. But let’s assume that they are being open and truthful about it and that this really is a realistic defect rate. In that case, in the 10 million lines of code that make the vehicle work, there will be roughly 5000 defects, a good number of which will definitely cause security holes, some of which might be positively dangerous in their own right. Most of those vehicles are wirelessly connected and updated over the air, and there has been a significant increase in in-vehicle networking over the years (Cisco are becoming big players here) so the opportunities for system-level bugs and vulnerabilities are growing all the time. Meanwhile, the human side of the Internet continues to explode, and so the opportunities and tools available to skript kiddies expand at an exponential rate.

The average car weighs around 1500kg and can easily travel at 140kph. Just saying.

I’m not particularly worried about intelligent machines becoming our robot overlords. We’ve really got a long way to go before we even know what such a thing is, let alone how to make one and, by the time we do get there, we’ll know how to augment ourselves so that we are at least a match for them. But unintelligent machines are another matter.

XKCD on voting software

 

 

 

Address of the bookmark: https://www.codeinstitute.net/blog/much-code-cars/

Originally posted at: https://landing.athabascau.ca/bookmarks/view/3478214/unintelligent-machines