Jan 28

WCAG 2.0 in a nutshell, and a problem that illustrates its use

The “Web Content Accessibility Guidelines” (WCAG) 2.0 are the accessibility standard most new websites in Ontario and many other places around the world have to meet nowadays. Here’s a front end accessibility lesson that can show us a few things about applying WCAG 2.0, at a couple different levels. I’ll demonstrate a JavaScript solution to a specific problem, I’ll sort of ‘reverse engineer’ from that problem to locate where it sits within the framework of the four principles—that content must be Perceivable, Operable, Understandable, and Robust—and I’ll show how I use the WCAG 2.0 site to understand any accessibility issue—whom it affects, how, how to fix it, and how to know that I’ve done so successfully. As a bonus, I’ll pop over to the jQuery API site and look at the selector reference. I think the WordPress “hack” I show for adding this to your blog is out of date—the “Admired” theme I’m using now has a way better built-in method—so you’ll need to adapt it. No clue at all what I’m talking about? I didn’t learn this in school either… sometimes you just have to dig in and figure it out.

Understanding WCAG 2.0

Understanding… WCAG 2.0 means understanding that the work began as a collaborative effort to define the 4 Principles of an accessible internet site, which after a decade of ongoing consultation with an ever-growing international community are now guidelines—not exactly the same as “rules”—and a list of criteria—things front-end developers must, should, and can do—to succeed at removing the barriers some groups will otherwise face when accessing and using the internet. [It…] is not prescriptive, but offers options…

Understanding how to use the huge body of work we call WCAG 2.0 means understanding that the work began as a collaborative effort to define the 4 Principles of an accessible internet site, which after a decade of ongoing consultation with an ever-growing international community are now guidelines—not exactly the same as “rules”—and a list of criteria—things front-end developers must, should, and can do—to succeed at removing the barriers some groups will otherwise face when accessing and using the internet. Because the list is not prescriptive, but offers options, it seems of the utmost importance to first know your audience, and next, to understand as the Web Consortium’s Accessibility Group sets out in WCAG 2.0, the best way your organization can guarantee your audience access to your content.

David Berman said in his workshop, and I think it makes perfect sense, that the differences between accessibility and usability are, for all intents and purposes, purely semantic. Providing access for people with varying abilities, simply makes things more usable for everyone.

The specific problems I’ll address are, ‘opening too many new windows’ and ‘changing things without telling me.’ In order to keep site visitors from leaving a site, Web developers often open links in new windows, usually by using the target attribute, and by assigning it a value of "_blank":


<a href="http://SOME_LINK" target="_blank">Linked text</a>

WCAG 2.0 in a nutshell

As I said earlier, there are 4 Principles. Websites must be 1) perceivable, 2) operable, 3) understandable, and 4) robust. If you like acronyms: POUR some accessibility sugar on me (use <abbr title="Spelled Out">SO</abbr> to create tool tips screen readers can use)! Each principal has “guidelines, “…which are further categorized into levels. Level A must be done, or some group will not be able to access the content. Level AA should be done, or some group will have difficulty accessing the content. Level AAA can be done to improve usability or enhance accessibility further. Too many windows causes problems in understanding, which is principle #3. This can be especially challenging for those with disabilities related to vision or cognition.

The Understanding WCAG 2.0 site provides information by which to understand each guideline, and provides “success criteria” so you know when you’ve achieved each level, and examples of techniques you can use to get there. “Success criteria” are written as statements that are recognizably/measurably false until one meets the guidelines. The problems that prevent the statement from being true are your challenges to overcome.

Know your organization, your audience, and your content. Use valid HTML wherever you write code. If most of your site visitors are knowledgeable about technology it may not be necessary to open new windows, as they will use their familiar browsing setup to choose when and how to open them, and if your code is valid it will work as they expect. There’s no WCAG 2.0 guideline that says not to open new windows, but we must think more carefully about how doing so may create barriers to ease of access and use.

Guideline 3.2 says: make webpages appear and operate in predictable ways. Opening pop-up windows could be problematic for screen readers. If they don’t know the window is opening they can get lost. This guideline also covers many situations, such as focus or context changes, and page reloads—anything a user can potentially do that changes the content. WCAG 2.0 by no means prohibit pop-up windows, but we must prevent them from becoming barriers or annoyances. We should minimize the number of new windows, stop using target=”_blank”, and let users request a new window or otherwise inform them it’s about to open. If we look further in the Table of Contents we find a discussion about pop-ups under 3.2.5, with suggestions…

Situation C: If the Web page uses pop-up windows:

Including pop-up windows using one of the following techniques:

H83: Using the target attribute to open a new window on user request and indicating this in link text (HTML)

SCR24: Using progressive enhancement to open new windows on user request (Scripting)

3.2.5 also has an “Advisory” about additional techniques.

Additional Techniques (Advisory) for 3.2.5

Although not required for conformance, the following additional techniques should be considered in order to make content more accessible. Not all techniques can be used or would be effective in all situations.

Opening new windows by providing normal hyperlinks without the target attribute (future link), because many user agents allow users to open links in another window or tab.

G200: Opening new windows and tabs from a link only when necessary

Understanding the problem, we now make a plan

Objective

I don’t want folk leaving my pages abruptly or permanently, and I don’t think all my visitors know everything about their browser’s and other equipment’s context-sensitive help menus, access key options, etc., so I’ve elected to automatically open some content in new windows. I’ve decided I can sensibly limit the number of windows that open from any of my blog pages to a maximum of 2 by applying a simple self-enforced rule. I’ll still use the target attribute, but instead to create one “named window” for links to other areas of my site (rcfWin), and one “named window” for links to external sites (extWin). I’ll open all external links in their own window, which means I can easily design something that will apply retroactively to all such links. Go to the API selectors page and scroll down to Attribute Starts With Selector [name^="value"] to get the syntax. I want to select all the links (a) with an href attribute whose value begins with http:// (or https://). We can get away with [href^="http"].

I have to weigh all the advice to find the best way to handle my internal links. If you’ve linked text in the middle of one article to another article there’s a distinct chance the user will click it and start reading. If you don’t want that, the most sensible choice is usually to lose the link—link only at the end of the information and only to the next logical jump in a sequence. But if you feel you must have the option, to keep it as an available option you can create a CSS class name and tell jQuery to look for that. You’ll still have to add it manually to any links, past present or future, you want to behave that way. Or you could do it the other way around and use your class to prevent opening in another window or tab.


<a class="open-in-rcfWin" href="/MY_INTERNAL_LINK" target="rcfWin">Linked text</a>
<a href="http://SOME_EXTERNAL_LINK" target="extWin">Linked text</a>

* Aside: I’ve already manually removed the http://www.rcfouchaux.ca from internal links because of its effect on WordPress “pingback links,” which I’ve got going on here. I’ll have to explain those later, but it comes in handy that I’ve done this, as you’ll soon see.

Problem

This blog just turned 3, and I’ve got a lot of blog pages. I have to find some way to automate at least some of this. I might have used target="_blank" sometimes, and not others. I might have already used target="extWin".

jQuery to the rescue!

jQuery library—write less, do more

jQuery is a “library” of code that makes standard JavaScript easier to use by preparing commonly used patterns and tasks and giving them logical, easier-to-remember names. jQuery selectors let’s us find and select specific elements and groups of elements on a web page and then manipulate them in pretty astonishing ways. If your site is WordPress like this one you’ll have to find out if jQuery is already included in your theme, or if it can be added easily (or if you have admin access to your web root and know how you can add it to any web site). Due to historical reasons I combine methods. I let the Admired Theme supply the jQuery and I keep extras in my own file. To make it use the scripts in my file I need admin-level server access to edit my theme’s header.php, which is found in wp-content/themes/YOUR_THEME/. Find wp_head(); alone on its own line and add a line of code after it wp_enqueue_script( ALIAS, PATHTOFILENAME );. The path to the file has to be complete, should be a ‘relative’ path, and depends on your server. I always make the alias the first part of the filename.

<?php
	/* JavaScript for threaded comments.
	 ----------------------------------*/
	if ( is_singular() && get_option( 'thread_comments' ) )
		wp_enqueue_script( 'comment-reply' );

	/* wp_head() before closing </head> tag.
	---------------------------------------*/
	wp_head();
	
	/* Include own script(s) AFTER wp_head() tag.
	---------------------------------------*/
wp_enqueue_script( 'MY_CUSTOM_SCRIPT', '../[actual_path_to]/MY_CUSTOM_SCRIPT.js' );
 
/* etc... */

Thereafter you make changes to that file and then replace it on the server. Keep in mind that header.php will be over-written if and when you update your theme, so keep backups of any code you add.

Adding the behaviors we want to the elements we want

The jQuery magic starts when you wrap the selector in $('SELECTOR');. I’ll be creating a set of extWinLinks $('[href^="http"]'); and rcfWinLinks $('.open-in-rcfWin');

There are nearly always more than one way to solve a problem with jQuery. My general approach will be to create a function as the page loads, and call it when the page is ready. I’ll supply more details in the code comments!

To recap: we’ll take all http links and assign target=”extWin” regardless if they’ve got a target attribute set or what it might be set to. We’ll also create a class name to apply to internal links we think should open their own window, but never the same window an external link may already be open in. Bonus: We’ll add the sentence ” … Opens in a new tab or window.” to every link that does that. Because this last bit of code will be repeated in both the previous functions we’ll write it as a standalone function in its own right, and call it from the other two when needed (those jQuery.each(); loops that repeat in each function are good candidates for the same treatment, but I left it so you can better compare what’s happening in each case).


        /*
         * Window openers
         * Require jQuery
         *
         */
          
          // Declare variables in a single statement at the top of the script.
          // Select external links and store in a variable named extWinLinks
          // Select internal links and store in a variable named rcfWinLinks
          // Create two functions to set the targets on the two sets of elements. 
          var
             extWinLinks = $('a[href^="http"]').not( 'a[href~=".rcfouchaux.ca/"]' ), // use a comma if you have more
             rcfWinLinks = $('.open-in-rcfWin'),
             do_extWinLinks = function() {
                 // Set the target attribute to 'extWin'
                 extWinLinks.attr({ target:'extWin' });
                 
                 // Go through each item and get its title if it has one, or set it to an empty string.
                 extWinLinks.each( function( el,i ) {
                     var my = $(this), myTitle = my.attr('title') || '' ;
                         my.attr({ title : appendNotice( myTitle ) });
                 });
             },
             do_rcfWinLinks = function() {          
                 // Set the target attribute to 'extWin'
                 rcfWinLinks.attr({ target:'rcfWin' });
                 
                 // Go through each item and get its title if it has one, or set it to an empty string.
                 rcfWinLinks.each( function( el,i ) {
                     var my = $(this), myTitle = my.attr('title') || '' ;
                         my.attr({ title : appendNotice( myTitle ) });
                 });
             },
             appendNotice = function( title ) {
                 // Store the notice as a variable
                 var
                     notice = ' … Opens in a new tab or window.'
                 ;
                 
                 // return the appended notice (but don't add a leading space)
                 // This syntax, if what's left of ? is true returns left of :, otherwise right of :
                 return ( title.length > 0 ) ? title + ' ' + notice : notice ;
             }
          ; // I make the final semicolon obvious so I can find it later
          
          // Call the functions. 
          do_extWinLinks(); 
          do_rcfWinLinks();  
  

To summarize

Know your organization, your audience, and your content. Use valid HTML wherever you write code. If most of your site visitors are knowledgeable about technology it may not be necessary to open new windows, as they will use their familiar browsing setup to choose when and how to open them, and if your code is valid it will work as they expect. There’s no WCAG 2.0 guideline that says not to open new windows, but we must think more carefully about how doing so may create barriers to ease of access and use. We might consider limiting their number—by using a named window, not the well-known keyword _blank—and warn our users it will open in a way that screen readers will discover and convey to any users who may be using one. This discussion follows a line of thinking you can adapt to meeting other WCAG 2.0 success criteria. This JavaScript shows only one way to reduce the number of windows your site opens, and to inform users in advance in a way their technology can understand.

I’ve coded all the external links in this post differently, but they should all open in the same tab or window. Hover your mouse over any links on this page to see if the ” … Opens in a new tab or window” notice worked. Here’s a class="open-in-rcfWin" internal link and here’s another one. The next one has no class set, so it will replace the content of this page with the home page: ciao for now!

§

Understanding WCAG 2.0 Latest version: www.w3.org/TR/UNDERSTANDING-WCAG20/

How to Meet WCAG 2.0 – Quick Reference: www.w3.org/WAI/WCAG20/quickref/

Jan 28

Tools, Practices and Actions – From Information to Knowledge

Screenshot of CompendiumNG

CompendiumNG allows stakeholders to quickly create visual maps on a topic using nodes and links. In this example different ideas regarding a problem are collected for assessment. It is possible to adjust the appearance of links and node labels. Source: www.CompendiumNG.org

Prior to a recent workshop a question was circulated that looked as if it was tailored to get my response. I stumbled on some great answers to this question over the course of my master’s research into project-based learning design: “Compendium; Dialogue Mapping; Let’s Do It!” I said, and they asked for more information. I replied by pulling some key points from the best articles I have into the following message and sending it with the full articles to my colleagues who posed the question. Where will this lead?

Question, brainstorming on Effective Communication

What tools, practices, or actions could facilitate greater collaboration and cooperation between units?

To Whom It May Concern:

At the recent workshop I mentioned tools, practices and actions we can take right away to address communication issues raised in previous meetings and surveys. You asked me to send you more information. Thank you for this opportunity. Please see below:

Tool:
There are many resources on this tool on line. It’s open source and has been branched by various groups of educators. CompendiumLD is specifically for learning design, but CompendiumNG, aspires to be the Next Generation of Compendium. N.b.: The Compendium tool is suitable for mapping external “focus group” type dialogue involving many stakeholders, a small meeting, or anything in between. The object is to “…work together to build a shared picture with all the stakeholders that accurately represents what we “know,” what different people assert, what we can try and learn from, and what we currently think are the relevant options” (Seybold, 2013, pg. 5).

http://www.compendiumng.org/use-examples/

List of potential uses for CompendiumNG:

Continue:

Practice—Dialogue Mapping:

Dialogue Mapping “… has been used for over three decades to help the different stakeholders in large, complex projects achieve alignment, make decisions they can own, and move forward” (Seybold, 2013, pg. 1). It is related to other forms of argument mapping, for example the Toulmin Model of Argument (see for example, Intel, 2006), but uses an icon-based graphic organizer to denotes the parts of the argument, called Issue Based Information System (IBIS), “…a notation invented by Horst Rittel and Werner Kunz in the early 1970s. IBIS is best known for its use in dialogue mapping, a collaborative approach to tackling wicked problems (i.e. contentious issues) in organisations. “At the heart of IBIS’s power is the amazing capability of questions, when framed in an open and systematic way, to create new distinctions and new clarity out of the fog of social complexity and collapsed meanings,” says Patricia Seybold (2013, pg. 11). It has a range of other applications as well – capturing knowledge is a good example…” (Eight to Late, 2010). This article continues by quoting the first sentence of the abstract of Rittel & Kuntz (1970, pg. 1).

Issue—Based Information Systems (IBIS) are meant to support coordination and planning of political decision processes. IBIS guides the identification, structuring, and settling of issues raised by problem—solving groups, and provides information pertinent to the discourse.

IBIS was to be “…the type of information system meant to support the work of cooperatives like governmental or administrative agencies or committees, planning groups, etc., that are confronted with a problem complex in order to arrive at a plan for decision…” (pg. 1). It can be said, “From the start, then, IBIS was intended as a tool to facilitate a collaborative approach to solving …or better, managing a wicked problem by helping develop a shared perspective on it” (Eight to Late, 2010, pg. 2).

A Brief Introduction to IBIS (Source: Eight to Late, 2010)

The IBIS notation consists of the following three elements:

  1. Issues(or questions): these are issues that are being debated. Typically, issues are framed as questions on the lines of “What should we do about X?” where X is the issue that is of interest to a group. For example, in the case of a group of executives, X might be rapidly changing market condition whereas in the case of a group of IT people, X could be an ageing system that is hard to replace.
  2. Ideas(or positions): these are responses to questions. For example, one of the ideas of offered by the IT group above might be to replace the said system with a newer one. Typically the whole set of ideas that respond to an issue in a discussion represents the spectrum of participant perspectives on the issue.
  3. Arguments: these can be Pros (arguments for) or Cons (arguments against) an issue. The complete set of arguments that respond to an idea represents the multiplicity of viewpoints on it.

The Seven Question Types at the Heart of Issue Mapping (Source: Seybold, 2013, pg. 11):

  1. Deontic: What should we do?
  2. Instrumental: How should we do X?
  3. Criterial: What are the criteria for success?
  4. Factual: What is X?
  5. Conceptual: What does X mean?
  6. Explanatory: Why is X?
  7. Contextual: What is the background?

Issue Mapping can be used effectively for everyday business and personal decisions, but its potential is vast. Through the skillful use of questions, an issue map has unlimited capacity to represent and clarify diverse points of view, conflicting interpretations and goals, inconsistent information, and other forms of complexity…”
(Cognexus Institute website: www.cognexus.org/)

Compendium is a freeware tool that can be used to create IBIS maps… In Compendium, the IBIS elements described above are represented as nodes as shown in Figure 1: issues are represented by blue-green question marks; positions by yellow light bulbs; pros by green + signs and cons by red – signs. Compendium supports a few other node types, but these are not part of the core IBIS notation. Nodes can be linked only in ways specified by the IBIS grammar as I discuss next.

Figure 1: IBIS elements

The IBIS grammar can be summarized in three simple rules:

  1. Issues can be raised anew or can arise from other issues, positions or arguments. In other words, any IBIS element can be questioned. In Compendium notation: a question node can connect to any other IBIS node.
  2. Ideas can only respond to questions– i.e. in Compendium “light bulb” nodes can only link to question nodes. The arrow pointing from the idea to the question depicts the “responds to” relationship.
  3. Arguments can only be associated with ideas– i.e. in Compendium “+” and “–“ nodes can only link to “light bulb” nodes (with arrows pointing to the latter)

The “legal links” are summarized in Figure 2 below.


Figure 2: Legal links in IBIS

Yes, it’s as simple as that.

(pp. 2-3).

Facilitate Group Meetings Using Real-time Dialogue Mapping (Seybold, 2013, pg. 17-18).

The place that Dialogue Mapping really shines is in a face-to-face group design and/or strategic planning session. It’s a much richer tool to use than capturing ideas on flip charts. Don’t forget, however, that just displaying the flow of the conversation doesn’t really add a lot of value. Getting people to validate the ideas that are captured, to build on them, and to really own the map as an active part of their design process is where Dialogue Mapping really shines.

[…]

Continue to Evolve the Group Discussions/Maps Over Time

Today’s design activities are far from “one and done.” Usually you kick off a design project with a vague idea about the appropriate solution and, over time, through the shared dialogue, experimentation, and learning, you evolve your collective thinking and come up with better and better solutions through trial and error.

Asynchronous Mapping In Between Group Meetings. In between group meetings, participants can add to their section of a group map on their own time. They can add links and documents to the map as ammunition to bolster a pro or a con. They can add new ideas, along with sketches, text, or videos to provide really great examples for other team members to absorb at their own pace.

Capture Institutional Memory. One of the beauties of Dialogue Maps is that they can be time- and date-stamped and added to over time. You can then see a history of how your collective thinking evolved. Many of Jeff Conklin’s clients really value the institutional memory that these maps provide over a long period of time.

From Mapping project dialogues using IBIS – a case study and some reflections (Awati, 2011)

Abstract
Purpose
: This practice note describes the use of the IBIS (Issue-Based Information System) notation to map dialogues that occur in project meetings.

Design/methodology/approach: A case study is used to illustrate how the technique works. A discussion highlighting the key features, benefits and limitations of the method is also presented along with a comparison of IBIS to other, similar notations.

Findings: IBIS is seen to help groups focus on the issues at hand, bypassing or avoiding personal agendas, personality clashes and politics.

Practical Implications: The technique can help improve the quality of communication in projects meetings. The case study highlights how the notation can assist project teams in developing a consensus on contentious issues in a structured yet flexible way.

Originality / Value: IBIS has not been widely used in project management. This note illustrates its value in helping diverse stakeholders get to a shared understanding of the issues being discussed and a shared commitment to achieving them.

Action: Identify an interested working group to continue investigating applications of dialogue mapping [here at work].

Reference

Awati, Kailash (2011) “Mapping project dialogues using IBIS: a case study and some reflections”, International Journal of Managing Projects in Business, Vol. 4 Iss: 3, pp.498 – 511. [PDF]

Buckingham Shum, Simon; Selvin, A.M.; Sierhuis, Maarten; Conklin, Jeffrey; Haley, C.B. and Nuseibeh, Bashar (2006). Hypermedia support for argumentation-based rationale: 15 years on from gIBIS and QOC. In: Dutoit, A.; McCall, R.; Mistrik, I. and Paech, B. eds. Rationale Management in Software Engineering. Berlin: Springer-Verlag, pp. 111–132.

Eight to Late (WordPress blog: Archive for the ‘Issue Based Information System’ Category, (2010), https://eight2late.wordpress.com/category/issue-based-information-system/ .

Horst W. J. Rittel & Webber, Melvin M., Dilemmas in a General Theory of Planning (1973), Policy Sciences 4 (1973), 155-169.

Intel Corp. (2006) Teach To The Future, Showing Evidence Tool Resources, Appendices [PDF: www.schoolnet.org.za/twt/09/M9_argumentation.pdf]

Kunz, Werner and Rittel, Horst W. J., Issues As Elements Of Information Systems (1970) [PDF: www.cc.gatech.edu/~ellendo/rittel/rittel-issues.pdf].

Seybold, Patricia (2013), How to Address “Wicked Problems” Use Dialogue Mapping to Build a Shared Understanding and Evolve a Group’s Thinking, [PDF: http://dx.doi.org/10.1571/br05-23-13cc]

There are shortcomings in the notation and maps can get unwieldy. While it’s easy to get started, dialogue mapping requires considerable practice to perfect (Awati, 2011, pg. 14). These and some other factors have slowed adoption. Some of these factors certainly exist in my workplace. We’ll soon see if the apparent awakening to the existence of different strategies to build more effective communication gains enough momentum to catch on and spread.

§

Jan 23

What is a “thick learning situation?”

In order to approach learning situations as problems to be solved, rather than topics to be discussed, I’d like to start by defining what, in my view, makes a learning situation “thick.” I’m appropriating the word and concept from Clifford Geertz and the discipline of ethnography, and I’ll attempt to apply it as a lens or framing for teaching and learning, which are, as we know, always socially situated.

From Instruction to Learning

For her chapter entitled Reviewing the trajectories of e-learning [which I summarized on this blog, tweeted, shared on social media, and shared again in my workplace] Gráinne Conole chose the word “trajectory” — a clear link to rocket travel! In keeping with her metaphor, by all indications eLearning has achieved escape velocity and settled into orbit. It certainly shows no signs of falling back to earth any time soon.

…when educators consider the people, places, ideas, and things that might empower the learner or enhance delivery and retention of the content. What technology will I make available to my learners? What have others already prepared that can assist me in explaining things better? Where can I take my learners, both physically and via the web? Can we build something together, plan for synchronicity and serendipity—consider the human chemistry that we are about to incubate? Which experts will I invite to participate? How can we draw out the expertise that may already exist amongst participants we’ve yet to meet?

Conole highlighted what she seems to see as an evolutionary development that’s taking place, from “instructional design” to “learning design.” One concrete way I see this taking shape happens when educators consider the people, places, ideas, and things that might empower the learner or enhance delivery and retention of the content. What technology will I make available to my learners? What have others already prepared that can assist me in explaining things better? Where can I take my learners, both physically and via the web? Can we build something together, plan for synchronicity and serendipity—consider the human chemistry that we are about to incubate? Which experts will I invite to participate? How can we draw out the expertise that may already exist amongst participants we’ve yet to meet?

Storytelling: a catalytic convertor for learning situations

It is becoming increasingly clear that personal and other illustrative stories, dilemmas, scenarios, etc. can act as a “catalyst” that motivates learners to relate to the content. In the language (affectionately?) known as edubabble it might sound like, “foster intrinsic motivation…, enable learner agency…,” or “to construct meaningful knowledge.” I surmise that this might be an added benefit if the educator aspires to create a situation that is memorable and transformational, rather than simply informational.

A situation leading to an inquiry

Supposing you were teaching middle school children civics, and how legislation is created. You might want to talk about “precedent,” and how laws are made or changed—laws we all have to obey. What if you took a piece of case law on a subject you feel your learners may find relevant, and that a legal expert available to your classroom community has told you helped set precedent? What if you engaged those experts and others to present the case to this class as a story, framed in language of fairness and conflict resolution?

Add thickener

So far we’ve not done much out of the ordinary. We could just give a quiz and call it a day. But I believe, and I’ll bet you do too, that that would be a very superficial assessment of some very superficial learning. Instead, what if we ask, “Has anything like this ever happened to you? Do you agree with the outcomes? Who benefits from this law? How?”

I’m interested in hearing from teachers, counselors, and educators of all sorts whether they have tried such an approach, would be willing to try such an approach, or even whether it’s a good idea. Would you care to leave a comment?

§

More links

Schwartz, Susan and Bone, Maxine (1995), Retelling, Relating, Reflecting — Beyond the 3 Rs, a book that does critical thinking with kids exceptionally well.
Digital Storytelling Toronto
Stories for Change
Knowledge-building community model

The Good Project
Project Zero