Nov 04

Cognitive Apprenticeship and the 21st Century Web Application

In my previous post I (literally) talked about a long historical need to provide more information than a written document can physically hold. I pointed out how footnotes have accomplished this, how these and such familiar devices as front-page headlines and teasers have evolved, and continue to evolve in the modern web-browser. I’m doing this to demonstrate how Web browsers and the three main (and open) technologies—HTML, CSS and JavaScript—can support Cognitive Apprenticeship’s goal of “making thinking visible.” Ultimately I hope to encourage classroom teachers to leverage this generation’s immersion in technology in new ways that lead not only to their own empowerment but that of all who become involved in 21st century learning environments that can stretch past boundaries of space and time.

I began to show some actual code1 [to see my “footnotes,” press the number; to close them, click or press Esc] which creates a style that can be applied at the paragraph or section level to assign an icon signalling its content or relevance to the document. I used narration, in the form of recorded audio, with pictures timed to coincide with words—a concept that is the basis of almost all elearning software, TV advertising, documentary film, even political propaganda—to explain and demonstrate what I was thinking about the topic and the technology. If you’ve followed this Cognitive Apprenticeship from the beginning I hope you can start to see now how I’ve intentionally set out to contrast a traditional academic style with an increasingly Web-enhanced one.

In so doing I used technology to solve some problems—and predictably introduced several more, demonstrating another potential technology holds, one I suspect we all have experienced. Software often contains bugs; preparing a lesson plan using pen and paper, or presenting using a comfortable and familiar paradigm such as a slide show with handouts one often feels more in control. It’s often too easy for the technology to become the focus, and not in a good way. But while many classroom teachers tell me anecdotes that conclude with a student fixing something, far fewer tell me they’ve learned to embrace that as a strategy, and are willing to jump in the deep end head first, with ample faith that together they’ll tackle whatever obstacles arise. It’s my personal goal to foster that confidence and empower educators to create such environments. Indeed, I feel there’s a certain urgency, not just for individual teachers or the profession, but for the future of public education itself.

Ursula Franklin, in her famous 1989 Massey Series lecture, noted the changing role of technology and important ways it was changing the role of technologists, distribution of labour, and the balance of power, while in her view shrinking the public sphere.

The situation in the classroom at the interface between the biosphere and the bitsphere is but one facet of the situation in the workplace within the same realm. In fact, often even the designation of workplace is no longer appropriate. Not only do new technologies, new ways of doing things, eliminate specific tasks and workplaces… but the remaining work is frequently done asynchronously in terms of both time and space.
— Ursula Franklin (1992:172)

Her distinction between what she identified as prescriptive approaches2 versus holistic3 ones led to a concern that not working together in the same space causes “opportunities for social interactions, for social learning and community building [to] disappear.” (Franklin, 1992:172). A neoliberal market model of education is paired with a neoconservative social model that work together to “change people’s understanding of themselves as members of collective groups” (Apple, 2009), a course at odds with public education’s heritage of citizenship-, character-, and democracy-building. An aggressive and well-funded movement is under way that “supports marketisation through its clear preference for incentive systems in which people are motivated by personal, not collective, gain rather than by the encouragement of social altruism. Yet, the tradition of social altruism and collective sensibilities has roots just as deep in our nations, and its expression needs to be expanded, not contracted.” (Apple, 2004; Apple, 2009).

Neither of the above authors in the works cited alludes to what I believe can only be described as a new literacy for the 21st century: fluency in coding and code. At Occupy Wall St. the techies “[built] websites, put out messages, manage[d] the ebb and flow of information about the occupation on the Internet.” (Judd, 2011) A year later “TechOps,” as the New York contingent of web-developing occupiers call themselves, built and maintained the website for the Sept. 17 anniversary events. They put together a whole host of other underlying technical infrastructure… TechOps-built database software sits behind a system to match people who needed a place to stay during the demonstrations with people who had space to offer […and built…] what has become a broad suite of web tools built specifically for Occupy activists. Using their own flavor of WordPress’ multi-site functionality, TechOps can facilitate sites like S17NYC.org and allow individual movement groups to maintain their own web presences themselves.” Those who code may have a special understanding of the saying “free as in beer, but not free as in speech” (Judd, 2012).

Franklin, in 1989, was perhaps just a bit too early to fully anticipate the complex socio-politico-economic forces that would result in Twitter, a commercial start-up, empowering the Arab Spring. But Apple’s 2009 essay describes in full the motives and methods we see manifesting in high-stakes testing and redistribution of public resources to private concerns that are part of many ed “reform” efforts. I believe there’s a need for further research into the roles of social networking within emerging communities of practice, but also its influence on communities of practices’ emerging. In the meantime, code literacy is something that’s fun and beneficial to pursue, which you can leverage within many learning environments to help create the kinds of authentic, situated opportunities for discovery and knowledge construction project- and inquiry-based learning models are touted for. And while you probably don’t have the next Dimitri Gaskin in your class, you almost certainly have more expertise available than you’ve imagine or tapped.

All of the jQuery JavaScript scripts I’ve used so far are my own—and all of them contain flaws that were part of my learning process. Currently my Footnotes script works with this WordPress theme (or any theme that uses <article> elements for posts), I simply hit the HTML tab on my WordPress editor and create a <sup> element of class=”footnote” and down below a numbered (“organized”) list of class <ol class=”footnotes”></ol> and it automatically creates a rollover/keypress on the number. In this version I have to hard code the numbers in the <sup> tags… so if I move a list item or add one in between I have to manually renumber. One of the first tasks for a group could be to improve on that. If a classroom or school has a blog or web page, and they use it for student writing, and they encourage using such common conventions as footnotes, then it might be an intrinsically motivating project to design and implement something that facilitates and modernizes the process in a way students can own.

My footnotes script is part-way to becoming a jQuery plugin. You may or may not know what that is, but I’ll wager you know someone who does. It’s only part-way done because I’m  trying to think more like a programmer so I’m learning about design patterns and building in stages. The Smashing Magazine article in that link contains links to all the information one needs to finish it. In my next and hopefully final instalment I’ll talk about a project I have in mind that I think holds benefits for classroom teachers who are still tentative about technology and/or looking for creative ways to include it, one that demystifies programming and the coding culture, and hopefully creates space in the classroom for activities and knowledge that may already be taking place informally outside, extending access and creating new opportunities.

§


    Notes:

  1. For example, if you provide the path to a 36×36 pixel image representing a rubric or video:
    .bg-rubric {
    background: transparent url(“..path_to/rubric.png”) no-repeat 3px 3px; padding:3px 9px 3px 36px;
    }
    .bg-video {
    background: transparent url(“..path_to/video.png”) no-repeat 3px 3px; padding:3px 9px 3px 36px; }
  2. See for example, Harvard Business School’s aggressively disruptive, top down, market-model for education reform in Christensen et al., 2009
  3. See for example, Harvard Graduate School of Education’s “Beyond the Bake Sale: A Community- Based Relational Approach to Parent Engagement in Schools,” (Warren et al., 2009), PDF available from The Logan Square Neighborhood Association http://bit.ly/nYwbjK accessed 2012-11-03

References

Apple, Michael W. (2004). Ideology and curriculum (3rd ed.). New York: Routledge.

Apple, Michael W. (2006), Understanding and Interrupting Neoliberalism and Neoconservatism in Education, Pedagogies: An International
Journal
, 1:1, 21-26

Christensen, Clayton; Johnson, Curtis W.; Horn, Michael B. (2008), Disrupting Class: How disruptive innovation will change the way the world learns. New York: McGraw Hill, 288 pages.

Judd, Nick (2011). #OWS: Tech-Savvy Occupiers Hope to Open-Source a Movement, http://techpresident.com/blog-entry/ows-tech-savvy-occupiers-hope-open-source-movement, accessed 2012-11-03

Judd, Nick (2012). How Free Software Activists are Hacking Occupy’s Source Code, accessed at http://techpresident.com/news/22867/how-free-software-activists-are-hacking-occupys-source-code 2012-10-23

Osmani, Addy (2011). Essential jQuery Plugin Patterns, http://coding.smashingmagazine.com/2011/10/11/essential-jquery-plugin-patterns/, accessed 2012-11-03

Franklin, Ursula. (1992, rev ed. 1999) The Real World of Technology. (CBC Massey lectures series.) Concord, ON: House of Anansi Press Limited, 206 pages.

Kreiss, Daniel and Tufekci, Zeynep (2012). Occupying the Political: Occupy Wall Street, Collective Action, and the Rediscovery of Pragmatic Politics (September 17, 2012). Cultural Studies – Critical Methodologies, 13:3 (Forthcoming). Available at SSRN: http://ssrn.com/abstract=2147711

Warren, Mark R.; Hong, Soo; Rubin Leung, Carolyn; Uy, Phitsamay Sychitkokhong (2009). Beyond the Bake Sale: A Community- Based Relational Approach to Parent Engagement in Schools, Teachers College Record Volume 111, Number 9, September 2009, pp. 2209–2254

Nov 01

21st Century Cognitive Apprenticeship: 4 Ways We Make Thinking Visible

Back in 2005 Dorian Peters posted a summary of Mayer’s Principles for the design of Multimedia Learning I’ve visited frequently. I read it again today through the lens of cognitive apprenticeship and made some connections. Two essential components of apprenticeship models and multimedia design are narration and its timing, which is probably why software applications like Adobe Captivate, PowerPoint, or PowToons contain various ways to synchronize the appearance of objects with audio, visuals and text. The framework and principles can help form a checklist to improve the Who, What, When, Where, and How of choosing what to include in learning environments, all of which illuminate two distinct aspects of the Why — a given that someone wants to learn the stuff, and our ability to assess that including something in specific ways — or not — helps achieve that goal.

Mayer (2001, 2003, 2005) presented research-based principles for the design of multimedia messages. His fundamental principle is the multimedia principle itself: people learn better from words and pictures than from words alone. Peters has organized the principles into sets:

  • Principles for managing essential processing  more»
    • Segmenting principle: People learn better when a multimedia lesson is presented in learner-paced segments rather than as a continuous unit.
    • Pre-training principle: People learn better from a multimedia lesson when they know the names and characteristics of the main concepts.
    • Modality principle: People learn better from animation and narration than from animation and on-screen text.
  • Principles for reducing extraneous processing  more»
    • Coherence principle: People learn better when extraneous words, pictures, and sounds are excluded rather than included.
    • Redundancy principle: People learn better from animation and narration than from animation, narration, and on on-screen text.
    • Signaling principle: People learn better when the words include cues about the organization of the presentation.
    • Spatial contiguity principle: People learn better when corresponding words and pictures are presented near rather than far from each other on the page or screen.
    • Temporal contiguity principle: People learn better when corresponding words and pictures are presented simultaneously rather than successively.
  • Principles based on social cues  more»
    • Personalization principle: People learn better when the words are in conversational style rather than formal style.
    • Voice principle: People learn better when words are spoken in a standard-accented human voice than in a machine voice or foreign-accented human voice.
    • Image principle: People do not necessarily learn better from a multimedia lesson when the speaker’s image is added to the screen.
  • One last principle,” the Individual differences principle.  more»
    Design effects are stronger for low-knowledge learners than for high-knowledge learners. Design effects are stronger for high-spatial learners than for low-spatial learners.

More about these in a moment. These principles illustrate a point of mine: that what Collins, Brown, Duguid, Newman, Holum et al. (see my posts here and here) bring with their theory of cognitive apprenticeship is a practical framework by which to apply such good principles. Conversely, the principles can guide the how, when, who, where, and why of specific situations. Consider the statement that teachers (who may often be more generally deemed “designers” of learning experiences) should show the processes of the task and make them visible to students (Collins et al.., 1991:). The common root of processes and processing reveals the relationship. The set of essential processing principles informs the design and planning stages, with a strong nod to individualization. Extraneous processing are filters and fine-tuning strategies. Both sets speak to content, method and sequence in Collins’s language. The fourth member of that set in cognitive apprenticeship lingo is sociology, and Mayer offers guidance here as well.

I’m going to apply Mayer’s fundamental principle now and try to enhance this communication with narration and pictures. Maybe you’ve never thought of footnotes as technology before, but they are a highly developed device1, designed to make an author’s thinking visible.

I use this icon to exclaim or assert something. I assert that this is one way to make thinking visible. For a web site, it’s easy to use CSS to make a set of icons. available, as I’ve done for this one. Of course the meanings of the icons must be communicated throughout the community and a common understanding shared by those who use them. Press the letter N to open this “Note” showing my growing list. The letter U opens my Audio narration in which I discuss 4 simple things we’ve done within documents to make thinking visible, and how each can be enhanced with the 3 main Web technologies, HTML, CSS, and JavaScript.

Icons Used Here

  • Assertion 
  • Argument 
  • Audio 
  • Decision 
  • Web page 
  • Idea 
  • Issue 
  • List 
  • Idea Map 
  • Con 
  • Note 
  • + Pro 
  • Position 
  • Rubric 
  • Video 

This icon is not in the original Compendium set. I added it because I thought it filled a need.

Using icons is another thing on my list. It’s not a new idea, but applying it specifically when managing essential processing, thinking about segmenting and pre-training (prerequisite knowledge?) while imagining and planning authentic environments, or striving to reduce extraneous processing throughout demonstration and coaching phases. A consistent icon set provides coherence by signaling and providing cues about the content. For more ways, roll your mouse over the list icon, or press the L key to open my List. Press N to open a Note displaying the list. Press U to open my Audio narration for this content.

  • Icon sets
  • “More »” links  more»
    More links reduce extraneous information and communicate which points you think are important.
  • Footnotes2
  • Narration & animation

§


    Footnotes:
  1. Anthony Grafton, in The Footnote: A Curious History (1999) points to men like Pierre Bayle, who “…made the footnote a powerful tool in philosophical and historical polemics; and Edward Gibbon, who transformed it into a high form of literary artistry. Proceeding with the spirit of an intellectual mystery and peppered with intriguing and revealing remarks by those who “made” this history, The Footnote brings what is so often relegated to afterthought and marginalia to its rightful place in the center of the literary life of the mind…” (cover notes).
  2. With JavaScript the eye never has to leave the main text. It can count them for you, too!

References

Clark, R. C., & Mayer, R. E. (2003). E-learning and the Science of Instruction. San Francisco: Jossey-Bass. Mayer, R. E. (2001). Multimedia Learning New York: Cambridge University Press. Mayer, R. E. (Ed.). (2005). The Cambridge Hanbook of Multimedia Learning. New York: Cambridge University Press.

Grafton, Anthony (1999). The Footnote: A Curious History, Boston: Harvard University Press, 241 pages.

IDEO (2011). The Design Thinking Toolkit for Educators, http://www.designthinkingforeducators.com/, 94 pages.

Peters, Dorian (2005). Mayer’s Principles for the design of Multimedia Learning, blog http://designerelearning.blogspot.ca/2005/09/mayers-principles-for-design-of.html retrieved 2012-10-10.

Oct 14

Situating Cognitive Apprenticeship

“Experiential learning” “Authentic learning”  “multiple intelligences”  “learning styles” …

Schooling

The context in which cognitive apprenticeship itself is situated deserves consideration.
We can start by considering some of the contemporaneous nomenclature: the “edubabble” of the day. Some biggies of the era are still with us today, here are four examples.

…the great waste in school comes from his inability to utilize the experience he gets outside while on the other hand he is unable to apply in daily life what he is learning in school. That is the isolation of the school–its isolation from life.
—John Dewey, 1916
quoted in Mims, 2003

The term experiential is paired with learning since the 1970s or earlier (Keeton, 1976) (Weil and McGill, 1989). Mark Smith (2001) provides a very helpful summary of the literature and reports there are two general descriptions being applied: ‘direct encounter with the phenomena being studied…’ (e.g., Borzak 1981: 9 quoted in Brookfield 1983).  and  ‘…direct participation in the events of life’ (Smith , 2001 quoting Houle 1980: 221). Traditional apprenticeship certainly presents us with both opportunities, but does Collins et al.s’ cognitive? I think we’ll find it does when we design for it.

Frankly, if at first simply over semantics, I’ve never been fond of the term “authentic learning.” For starters, learning is not a noun1 (Silvers, 2011).  and I guess I’d just strive for higher precision where it’s the title of my philosophy of education. When Collins et al. use the word they refer to authentic contexts. This is not to dismiss the school of thought the name represents; practitioners who embrace the concepts and techniques seem to automatically transliterate it to enabling learning within authentic contexts., which I grant is fairly awkward. I believe it has the same meaning as situated learning, which is another term used with cognitive apprenticeship (Brown et al., 1989) (Collins et al., 1989) (Collins et al., 1991) (Lave, 1996).

In fact for many decades educators have observed a gap between life within and outside of schooling.  (Dewey, 1916; Dewey, 1933; Piaget, 1974; Gardner, 1992; Boud and Miller, 1997; Mims, 2003). While my familiarity with the literature is insufficient to judge the degree to which his point “b” is true, I share an antipathy towards uncritical use of the phrase “real world”  (and the advice of those who use it) with John Shindler, who warns, “…a) the real world is rarely defined by adages that include the phrase the “real world,” b) the use of the term the “real world” usually indicates a world-view that has been jaded and is fundamentally dysfunctional, and c) students are likely paying the price for it” (Shindler, 2009:Appendix J). I believe point “c” is a common destination, if by other paths, with at least one of Freire’s who, having said “…Knowledge emerges only through invention and re-invention, through the restless, impatient, continuing, hopeful inquiry human beings pursue in the world, with the world, and with each other” (Freire, 1970)  said elsewhere, “The educator with a democratic vision or posture cannot avoid in his teaching praxis insisting on the critical capacity, curiosity, and autonomy of the learner.” (Freire, 1998).

The ideas of multiple intelligences (Gardiner, 1983) and learning styles (Kolb and Fry, 1975) are related. While it’s impossible to ignore their effect on teaching over subsequent decades they have naturally both been criticized at very deep levels. Again, Smith (2001, drawing on Jarvis, 1987 and Tennant, 1997) summarizes those pertaining to Kolb very well, they centre around extravagant claims and lack of empirical evidence. The latter flaw is also claimed of Gardiner’s theory, along with disconnect from findings from the field of psychology (Wellingham, 2004) (Visser, Ashton and Vernon, 2006a) (Gardiner, 2006) (Visser, Ashton and Vernon, 2006b), yet the ideas persist and some practitioners attribute successes while passionately defending their use in the classroom2.

Social Anthropology’s view of Learning Communities

I strongly suspect treating cognitive apprenticeship as a framework for experience design sidesteps much of the conflict. Cognitive apprenticeship’s heritage, as the others’, traces back to activity theorists such as Vygotsky and Leontiev but charts its course via the social anthropology of Jean Lave and socially situated, community of practice-based learning she explored with Etienne Wenger (Brown, Collins, Didiuk, 1989:41 footnote 1) (Lave & Wenger, 1991) (Lave, 1996). Apprenticeship in general, and cognitive apprenticeship by design, attempts to make thinking visible, illustrated using exemplary case studies (Collins, Seely and Holum, 1991). Cognitive apprenticeship models reject models that value the results of traditionally formal learning (e.g., schooling) over informal ones (e.g., apprenticeship). From an apprenticeship perspective, the assumption that teaching necessarily precedes or is a precondition for learning, or that absence of teaching calls learning into question, is a false one (Lave, 1996:151).

Although my aim is to name specific technologies and methods for employing them that make learning visible, the perspective is that of the experience designer, the focus is on the process. The steps to enabling social interaction, placing suitable tools within reach and empowering participants to engage, according to the cognitive apprenticeship model, are quite clear.. The designer’s tasks (emphasis mine) are

  1. show the processes of the task and make them visible to students;
  2. situate abstract tasks in authentic contexts, so that students understand the relevance of the work;
  3. vary the diversity of situations and articulate the common aspects so that students can transfer what they learn.

If we look within the six stages of the method3Modelling, Coaching, Scaffolding, Articulation, Reflection, and Exploration—specifically for ways to diversify participant entry and engagement, and  we can turn technology on itself in effect by using polls or remote testing, for example, to question participants directly, gauge relevance on an ongoing basis, remain agile and reflexive, adjust, review, refine and revise the  implementation. It may in fact end up that for some participants none of our preliminary technology picks and strategies are suitable or engaging. When we design the situation to make thinking visible we must also build into the process the ability for all participants to see and report what they’re seeing, and to maintain access to the things they need to make the experience worthwhile. This brings to the foreground an important aspect of design I’d guess is still better understood by Web designers than by most instructional designers, the separation of content and presentation. This is a concept having implications for communication (Clark, 20084) I’ll elaborate in a later instalment, but you can see a good, concise discussion of the basics by designer Sarah Horton on her site.

Summary

In the preceding paragraphs I’ve looked at the origins of cognitive apprenticeship and started to employ and apply vocabulary from the Cognitive Apprenticeship Framework. I’ve situated this framework relative to some other modern theories of learning, and we begin to see how focusing on the well-defined environment it provides—the content taught, the pedagogical methods employed, the sequencing of learning activities, and the sociology of learning—allows us to expose, nurture and tap the diversity of talent found within every community of practice. Whether we are in the role of apprentice or expert we need tools and interactions that make the processes of constructing knowledge visible and enable a variety of communication styles and media to be used between participants. I hope I have exhausted the theoretical foundation without exhausting the reader!

Next

The next instalments will start to link this theory to practice. I’ll enter from the sociology side of the environment, using social networking, but I’ll use some technology from the start. My thinking is that to find out what is being said I want to go where the discussion is taking place. Twitter is one place to start, and I have learned over time that many educators use Twitter’s “hash tag” feature to find others talking about similar things, so I loaded 24 hours worth of Tweets that contain the hash tag #edchat into Firefox, and then used the Firebug extension to get the tweets from the timeline using a Web programmers’ technique known generically (by which I mean one can take different steps using different tools to achieve the same result) as scraping?. I then removed a set of words I know are outside the scope of my investigation, and from the rest create the following “Wordle.”

A graphic representation of the words culled from edchat on Twitter, larger or smaller by frequency

Words found on Twitter #edchat from a single 24 hr period sized in proportion to frequency (www.wordle.net/create)

In my next instalment I’ll demonstrate the steps involved in creating such an image and make suggestions for researchers who might want a more robust, reliable and comprehensive approach to getting such data based on similar techniques. In so doing one important result will be an example of a technology-enhanced learning environment …in the state of emerging. I’ll further show that many if not most tools we see today stay in such emergent states indefinitely, and that by applying a framework like the one proposed by Brown, Collins, Duguid, Holum we do much more to help them reach maturity.

Comments are open and encouraged!

 §


  1.  « Somewhere along the journey, as we became focused on making these models and standards more efficient and effective, “learning” went from being a verb to being a noun. If you actually think about what learning is and that it is intrinsic to the individual, how could it possibly be delivered? But that’s precisely how learning is perceived by those buying “learning” and, hence, influencing how it is designed, developed, and “delivered.” » —Aaron Silvers (2011). I recommend this article widely and often, probably in part because I felt it both vindicates some feelings I’d been having about ADDIE and offers viable ways forward.
  2. See, for example, the comments section of Daniel Willingham’s criticism of Gardiner’s theory posted on the EducationNext blog.
  3. I explained these methods in an earlier post.
  4. Because they “…create philosophical and cognitive dissonance for technical communicators trained to think of information as content that is inherently linked to presentation.” (Clark,2007:36)

References

Boud. D. and Miller, N. (eds.) (1997) Working with Experience: animating learning, London: Routledge.

Brown, J.S., Collins, A., and Duguid, P. (1989). “Situated Cognition and the Culture of Learning.” Educational Researcher, 18(l), 32-42.

Christensen CM, Marx M, Stevenson HH. (2006) The Tools of Cooperation and Change, Boston: Harvard Business School Online http://hbsp.harvard.edu/hbsp/hbr/articles/article.jsp?articleID=R061 retrieved 2009-12-19

Clark, Dave (2007): Content Management and the Separation of Presentation and Content, Technical Communication Quarterly, 17:1, 35-60

Collins, A., Brown, J.S., and Holum, Ann (1991), Cognitive Apprenticeship: Making Thinking Visible, American Educator, [1991 reprint available on line at http://elc.fhda.edu/transform/resources/collins_brown_holum_1991.pdf accessed 2012-09-17]

Dewey, J. (1916) Democracy and Education. An introduction to the philosophy of education (1966 edn.), New York: Free Press.
Dewey, J. (1933) How We Think. A restatement of the relation of reflective thinking to the educative process (Revised edn.), Boston: D. C. Heath.

Freire, Paulo (1998) Pedagogy of freedom : ethics, democracy, and civic courage, Lanham, Md. : Rowman & Littlefield, 144 pages.

Freire, Paulo (1970) Pedagogy of the oppressed. New York, Herder and Herder, 186 p.
Freire, Paulo (2000) Pedagogy of the oppressed, 30th anniversary ed., New York : Continuum, 184 pages.

Gardner, H. (1983). Frames of Mind: The theory of multiple intelligences. New York: Basic Books.
Gardner, H. (2006). On failing to grasp the core of MI theory- A response to Visser et al. Intelligence (34:5) 503–505

Gardner, Howard (1992) The unschooled mind: why even the best students in the best schools do not understand, [PDF]

Houle, C. (1980) Continuing Learning in the Professions, San Francisco: Jossey-Bass.

Keeton, M. T. (ed.) (1976) Experiential Learning, San Francisco: Jossey-Bass.

Kolb, D. A. (1984) Experiential Learning, Englewood Cliffs, NJ.: Prentice Hall. 256 pages.

Lave, Jean and Wenger, Etienne (1991). Situated Learning: Legitimate Peripheral Participation. Cambridge: Cambridge University Press.

Lave, Jean (1996). Teaching, as Learning, in Practice, Mind, Culture, and Activity (3:3) pp149-164.

Martin, Jane Roland (1982), Two Dogmas of Curriculum, Synthese, Vol. 51, No. 1, Questions in the Philosophy of Education (Apr., 1982), pp. 5-20

Mims, Clif (2003), Authentic Learning: A Practical Introduction & Guide for Implementation, Meridian: A Middle School Computer Technologies Journal, Volume 6, Issue 1, Winter 2003, Raleigh, NC: NC State University, http://www.ncsu.edu/meridian/win2003/authentic_learning/ retrieved 2012-10-10.

Piaget, J. (1974). To understand is to invent:  The future of education. New York: Grossman.

Shindler, John V. (2009), Appendix J: Examining The Use of the Term the “Real World” of School, College of Charter School of Education, web page associated with the book “Transformative Classroom Management,” Hoboken: Jossey-Bass, 384 pages.

Silvers, Aaron (2011) Fundamental Design of Learning Activities, blog post http://www.aaronsilvers.com/2011/02/fundamental-design-of-learning-activities/, retrieved 2011-08-10.

Smith, M. K. (2001). ‘David A. Kolb on experiential learning’, the encyclopedia of informal education. Retrieved [enter date] from http://www.infed.org/b-explrn.htm.

Visser, Ashton and Vernon, 2006a Beyond g: Putting multiple intelligences theory to the test, Intelligence (34:5) 487–502
Visser, Ashton and Vernon, 2006b g and the measurement of Multiple Intelligences: A response to Gardner, Intelligence (34:5) 507–510

Weil, S. Warner & McGill, I. (eds.) (1989) Making Sense of Experiential Learning. Diversity in theory and practice, Milton Keynes: Open University Press.

Willingham, Daniel T. (2004), Reframing the Mind: Howard Gardner and the theory of multiple intelligences, Education Next,  Vol. 4, No. 3 http://educationnext.org/reframing-the-mind/ retrieved 2012-10-10.

Oct 10

Cognitive Apprenticeship: an idea whose time has come (back)?

When someone is reading silently and then they ask you to define a word, do you ask them to read the entire sentence? This, said Brown, Collins and Duguid (1989), is because “Experienced readers implicitly understand that words are situated.” Building on Miller and Gildea’s (1987) work teaching vocabulary Brown et al. similarly rejected “the assumption that knowing and doing can be separated,” saying it “leads to a teaching method that ignores the way situations structure cognition.” They came to believe that all knowledge, like language, is intrinsically linked to the situations and activities that produce it—like Web sites, concepts are always under construction (p32). Collins and Brown, with Newman (1989) and Holum (1991) see this idea of “Situated Knowledge and Learning” within the traditional apprenticeship of ancient times—a master practitioner showing the apprentice how something is done and then helping them do it. Modern schooling, by contrast, has amassed great bodies of conceptual knowledge, yet at the same time hidden or removed the thinking behind it from the situation of would-be learners. These authors proposed a synthesis of schooling and apprenticeship they call cognitive apprenticeship. The fundamental goal of cognitive apprenticeship is to “make thinking visible.” (Brown et al., 1989) (Collins et al., 1989) (Collins et al., 1991) (Miller and Gildea, 1987).

Collins et al. define a learning environment as “the content taught, the pedagogical methods employed, the sequencing of learning activities, and the sociology of learning” (1991:1). It’s my assertion that modern technology has direct applications within each of these four elements. I further suggest that an updated1 understanding of the categories, strategies and insights Collins et al. put forth in the early nineties combine with technology and current practice to form a potent framework for instruction and learning.

Cognitive Apprenticeship (CA)

Let’s list the 4 elements, ordimensions, of every learning environment, and what they entail (1991:12-15):

  1. content: knowledge and strategies
    • Domain knowledge: concepts, facts, and procedures explicitly identified with a particular subject matter
    • Heuristic strategies: effective techniques for accomplishing tasks, e.g., “tricks of the trade”
    • Control strategies: how and when to select among possible problem-solving strategies
    • Learning strategies: for learning any of the above; learning how to learn.
  2. method: opportunities to observe, engage in, and invent or discover experts’ strategies in context
    • Modeling: expert performs a task (verbalizing/illustrating their knowledge and thinking)
    • Coaching: expert observes and facilitates
    • Scaffolding: expert provides supports
    • Articulation: expert encourages learners to verbalize/illustrate their knowledge and thinking
    • Reflection: expert enables learners to compare their performance with others
    • Exploration: expert invites learners to pose and solve their own problems
  3. sequence: tasks that structure learning yet preserve meaningfulness (i.e., “situate” the tasks)
  4. sociology: social characteristics of learning environments (i.e., “situate” the learner)
    • Situated learning: the context of working on realistic tasks
    • Community of practice: communication with other practitioners
    • Intrinsic motivation: personal goals to seek skills and solutions
    • Exploiting cooperation: working together (cooperative problem solving) to accomplish these goals

There are three important distinctions between traditional and cognitive apprenticeship: in traditional apprenticeship the process is easily observable; in traditional apprenticeship the tasks arise and emerge in the workplace; in traditional apprenticeship the skills to be learned are inherent in the task itself. To translate the model of traditional apprenticeship to cognitive apprenticeship, experts need to:

  • identify the processes of the task and make them visible to students;
  • situate abstract tasks in authentic contexts, so that students understand the relevance of the work;
  • vary the diversity of situations and articulate the common aspects so that students can transfer what they learn. (1991:3)

Above is a framework, not a formula (1991:17). Already people were exploring technology’s potential as a coaching and scaffolding strategy, for example “…an interactive video display can mobilize the natural ability of a child to learn from context” (Miller and Gildea, 1987:94).

Current practice

Today there is ample evidence and virtually unanimous agreement that, more often than not, traditional schooling fails to engage a majority of learners or to provide meaningful long term strategies for solving real world problems, and almost no consensus on what to do about it (Freire, 1975) (Christensen et al., 2008). Most intrinsic motivation in our society today revolves around the desire to generate very large amounts of money in very short amounts of time, and in education this has manifested in a reform movement that is often outright hostile to research (NZARE, 2012), negligent of neighbourhoods (Frankenberg et al., 2010), and partnering indiscriminately for expedience and personal gain (Jazzman, 2011), while remaining highly supportive of tools and models that appear to fit specific niches in the above framework. These often involve a “supply chain” model involving high-stakes testing and the textbook industry and are designed above all to be easily monetized (Christensen et al., 2008). Educationalists are expected to design and deliver compelling learning experiences regardless of such distractions and competing interests. I believe that, in the hands of designers and pedagogues firmly committed to the end user’s learning experience, this framework can contribute to modern technology’s effectiveness at keeping designers and participants on task and focused on learning.

Several of the cognitive apprenticeship framework strategies associated with sociology, method, and content can be easily identified in a technological innovation that was only in its embryonic stage when Brown, Collins et al. first conceived such a framework—social networks. Communities of Practice may consist of many Personal Learning Networks (PLNs) of just plain folks (JPFs (see Brown et al. 1989)) who are intrinsically motivated (or extrinsically, perhaps in response to issues discussed in the previous paragraph) to incorporate new tools and strategies. They may chat on Twitter, and blog on sites like Blogger. They are seeking out experts and collecting domain knowledge about heuristic strategies even as they share their expertise on other topics and hone their own control and learning strategies. Some have seen the potential of Facebook and refined it to Edmodo, or Twitter and evolved to Tappestry, which tracks formal and informal learning using the new TinCanAPI. They may use a tool like Adobe Captivate to sequence tasks, or a platform like Google Docs. They share strategies such as project-based-learning (which may already have much in common with CA) and the flipped classroom, both of which can be rich in applications of technology.

The notion of cognitive apprenticeship has by no measure slumbered since the early 1990s. Aziz Ghefaili (2003) in particular has made notable contributions to relating the theory to the use of computers. I’m very interested in such efforts, but my focus is praxis—moving theory to practice in ways that induce change (Freire, 1986)2. In the weeks ahead I’ll attempt to map all of the elements of the framework listed above to specific technologies, platforms, and strategies for using them. I welcome input at every stage… please use the comments section.

§


  1. I’ll elaborate further in the next installment, but the first “update” I wish to make to Collins et al.’s view, situated as it was in the 1980s and 90s, is what I see as a blurring line between teacher and student. [citations]. Collins, Brown and Holum (1991) themselves acknowledge this (p17) even though their language consistently presumes otherwise. Where the authors said “teacher” I have substituted “expert;” for “student” I have substituted “learner.” In some settings the terms “designer” and “participant” might be appropriate.
  2. See for example what is praxis? at infed, the encyclopaedia of informal education

References

Brown, J.S., Collins, A., and Duguid, P. (1989). “Situated Cognition and the Culture of Learning.” Educational Researcher, 18(l), 32-42.

Christensen, Clayton; Johnson, Curtis W.; Horn, Michael B. (2008), Disrupting Class: How disruptive innovation will change the way the world learns. New York: McGraw Hill, 288 pages.

Collins, A., Brown, J.S., and Newman, S.E. (1989). “Cognitive Apprenticeship: Teaching the Craft of Reading, Writing and Mathematics! In L.B. Resnick (ed.) Knowing, Learning, and Instruction: Essays in Honor of Robert Glaser Hillsdale, NJ: Erlbaum

Collins, A., Brown, J.S., and Holum, Ann (1991), Cognitive Apprenticeship: Making Thinking Visible, American Educator, [1991 reprint available on line at http://elc.fhda.edu/transform/resources/collins_brown_holum_1991.pdf accessed 2012-09-17]

Duncan et al. (2010) Evaluation of Evidence-Based Practices in Online Learning – A Meta-Analysis and Review of Online Learning Studies, U.S. Department of Education, Office of Planning, Evaluation, and Policy Development Policy and Program Studies Service, http://www2.ed.gov/rschstat/eval/tech/evidence-based-practices/finalreport.pdf retrieved 2011-11-10.

Frankenberg, E.; Siegel-Hawley, G.; Wang,J. (2010) Choice Without Equity: Charter School Segregation and the Need for Civil Rights Standards, The Civil Rights Project/Proyecto Derechos Civiles at UCLA, http://civilrightsproject.ucla.edu/news/press-releases/research/k-12-education/integration-and-diversity/choice-without-equity-2009-report retrieved 2012-10-07.

Freire, P. (1972) Cultural Action for Freedom, Harmondsworth: Penguin, 1975, 91 p.

Freire, P. (1986) Pedagogy of the Oppressed. New York: Continuum.

Ghefaili, Aziz (2003). Cognitive Apprenticeship, Technology, and the Contextualization of Learning Environments. Journal of Educational Computing, Design& Online Learning, Vol. 4, Fall, 2003. PDF at http://coe.ksu.edu/jecdol/Vol_4/Articles/pdfs/Aziz.pdf retrieved 2012-10-10

Jersey Jazzman (Saturday, August 20, 2011), Rupert Loves Rhee Loves Bradford blog post, http://jerseyjazzman.blogspot.ca/2011/08/rupert-loves-rhee-loves-bradford.html, retrieved 2012-10-08.

Miller, G. A., & Gildea, P. M. (1987). How children learn words. Scientific American, 257, (3), 94-99.

New Zealand Association for Research in Education (NZARE, 2012), Thursday, 2 August 2012, 11:03 am press release: New charter school model ignores findings of research, http://www.scoop.co.nz/stories/ED1208/S00011/new-charter-school-model-ignores-findings-of-research.htm retrieved 2012-09-21

Rittel, Horst and Melvin Webber (1973) “Dilemmas in a General Theory of Planning,” Policy Sciences 4, Elsevier Scientific Publishing, Amsterdam, pp. 155-159.

Säljö R (1979) “Learning in the Learner’s Perspective: 1: some commonplace misconceptions” Reports from the Institute of Education, University of Gothenburg, 76.

Sep 02

Audacity files are just XML documents, sooo…

I know it’s unlikely this particular solution—in which I use Audacity’s Labels Track interface to help me auto-generate HTML code I find tedious to write manually—will receive many “Wow! Just what I was looking for!” comments. It’s more about connecting dots. XML is like the universal translator on StarTrek, so if you have data in XML format it means you can easily get at that data and do anything else with it your heart desires. While I have access to leading proprietary audio applications that are appropriate for recording music, I use Audacity for all elearning narrations and voice-overs—the fact that it generates a valid XML document containing all the information about a project is one of the reasons.

I think the first time I intentionally opened a binary file with a text editor was probably using Notepad on Windows 3.0. “Gibberish” or “garbage characters” are ways most people I knew described what they saw there. But my curiosity to look further had the result that later, as a help desk assistant in the computer lab, I used the technique with one plain text editor or another to identify what program a file had been created with or to recover the essential text from a document that had become corrupted. Opening files with text editors was something that started as a curiosity but occasionally yielded other fruit… it became something I just do. By the time I first opened an Audacity *.aup file to find it contains not binary “gibberish” but well-formed XML I had received a training course in XML and had used XSLT to write a library catalogue management tool that was in use at the same lab, so I knew the discovery would come in handy.

When it was decided a 53 slide module I made was to be translated into 13 additional languages I found two very helpful applications for this bit of knowledge. The first, because I keep my projects in a MySQL database and identify every item on the storyboard by module, section, subsection, and slide, is that once the translations were loaded I was able to loop through a query and create a blank, properly tagged and labelled Audacity .aup file for every slide. The second is much more fun, so I’ll get the first one out of the way… I’m best with ColdFusion (CFML = ColdFusion Markup Language), but you can do this with PHP or any other language, just include or require the right libraries for parsing XML.

Create a new project in Audacity and save it as blank_project.aup. Open the file in any plain text editor (I like EditPadLite) What you do next will vary depending on what application server you’re using and how , but in ColdFusion my first go at it was pretty lazy. I put the entire file inside a cfsavecontent block, looped through a database query to get my information, plugged it in, and write it to the server’s hard drive. Of course that’s most practical if it’s also your laptop or desktop’s hard drive—I’ve done this with both Adobe’s wonderful (and free) ColdFusion developer version, and just recently with Railo, the open source CFML engine.(for PHP I’d use XAMPP, EZPHP or similar).

Your SQL will be your own, but it probably still helps to see mine…

SELECT * FROM allslides
 WHERE module = 'thisMod' AND lang = 'th-is'
 ORDER BY module_id, section_id, subsection_id, slide_id;

Loop through the query. n.b.: in XML it’s crucial to have no characters of any kind before the <?xml version="1.0" standalone="no" ?>When I said lazy, I meant it… to avoid trimming I just put it right after the opening cfsavecontent tag without a space or hard return (but if my source formatter tries to make it prettier I have to put it back). The variable “descript,” by the way, is a short human readable description I keep in the database so I don’t have to remember what slide hr101-B30 is, it comes out hr101-B30-keyconcepts. #SPEECH# is the word for “speech” in whatever language.

<cfloop query="myQuery"><!--- create a unique name for project,
                              file and data directory --->
<cfset thisProjectId = "#module_id#-#section_id##subsection_id##slide_id#-#descript#">
<!--- store the file in a variable --->
 <cfsavecontent variable="aup_file_contents"><?xml version="1.0" standalone="no" ?>
<!DOCTYPE project PUBLIC "-//audacityproject-1.3.0//DTD//EN"
 "http://audacity.sourceforge.net/xml/audacityproject-1.3.0.dtd" >
<project xmlns="http://audacity.sourceforge.net/xml/" projname="#thisProjectId#_data"
 version="1.3.0" audacityversion="2.0.1" sel0="0.0000000000" sel1="0.0000000000"
 vpos="0" h="0.0000000000" zoom="86.1328125000" rate="44100.0">
    <tags><!--- Replace #variables# with data from database --->
      <tag name="GENRE" value="#SPEECH#"/>
      <tag name="ARTIST" value="#MY_ORG#"/>
      <tag name="TRACKNUMBER" value="#currentRow#"/>
      <tag name="TITLE" value="#SECTION_TITLE# #SUBSECTION_TITLE# #SLIDE_TITLE# "/>
      <tag name="YEAR" value="#year(now())#"/>
      <tag name="ALBUM" value="#MODULE_TITLE#"/>
      <tag name="COMMENTS" value="(C) #year(now())#"/>
    </tags>
</project>
</cfsavecontent>
<!--- to save space, try/catch error-handling not shown --->
<cffile action="write" file="#DRIVE:\path\to\#thisProjectId#.aup"
        output="#aup_file_contents#">
<cfdirectory action="create" directory="DRIVE:\path\to\#thisProjectId#_data">
</cfloop>

That writes 53 files and creates 53 directories in about 3 seconds, well under a minute for all 13 languages if I place this loop in a loop of the languages. It saves me a lot of time.

My jSyncWithMedia plugin was a learning exercise for me, and I learned a lot. With jQuery it was easy for me to attach an “event-listener” to an HTML5 audio or video element’s timeupdate event, and create callbacks to change classes or run simple css animations depending on currentTime, even to enhance the display to show 1/10ths of seconds and get my timings more precise. But I knew all along no rational human would go through the tedious job of syncing all those items. It needs an interface, and while ideally that would be in JavaScript and built into the plugin—and perhaps one day it will be—the knowledge that an .aup is really just another a .xml brings out the laziness in me. You see, Audacity already has the exact interface I need… it’s the Labels track. I figure why not just borrow it?

The image shows the narration for a guitar lesson I’m doing in my own jSyncWithMedia-Alpha-1.0 plugin just because I want to. On the track labels I supply key:value pairs, where the key is always a valid html element (the “off:” key is ignored, but serves as a visual aid).

Showing Audacity's Labels track, spanning sections of audio, with values filled in

Audacity’s Labels track, spanning sections of audio, with values filled in that declare an element and its content.

When you add a label track and labels in Audacity you add <labeltrack> and <label></label> elements to the XML structure, with attributes for title, start time t and end time t1.

    <labeltrack name="Label Track" numlabels="11" height="253" minimized="0">
        <label t="1.69726544" t1="11.83946136" title="li:woodshed"/>
        <label t="11.92225480" t1="27.32183391" title="li:busting"/>
        <label t="20.79346939" t1="62.46764754" title="li:turntable"/>
        <label t="34.31787926" t1="43.54934739" title="li:changes the pitch"/>
        <label t="50.00723540" t1="62.46764754" title="a:audacity.soundforge.net"/>
        <label t="53.85713018" t1="62.50904425" title="img:audacity_logo.png"/>
        <label t="62.46764754" t1="62.55044097" title="off:ALL"/>
        <label t="76.70811855" t1="91.03138299" title="img:copy-paste.png"/>
        <label t="91.11417643" t1="109.90828642" title="li:copy menu item"/>
        <label t="110.15666673" t1="114.79309915" title="li:easily practice"/>
        <label t="114.79309915" t1="123.81758369"
               title="li:Choose File-&gt;Save Project As..."/>
    </labeltrack>

That’s all I need to create all the code to put my syncItems in a <div id=”jSWM”></div> and run my plugin on it to create a presentation.

Here’s the CFML

<cffile action="read" file="#request.pathToXml#\bust_a_solo.aup" variable="myFile">
<cfscript>
    // a debug tool
    dumpIt = request.dumpIt; // default request.dumpIt;

    // validate audacity
    scndLine = listGetAt(myFile,2,chr(10));
    isAudacityFile = REFind('^<!DOCTYPE project PUBLIC "-//audacityproject', scndLine );

    // Initialize strings to hold list and image content.
    contentSyncItemsList = '';
    contentImgDiv = '';

    // a function to display html on the page
    public string function printHTML( html ){
        var theHtml = arguments.html;
        var theHtmlFormatted = replaceList(theHtml,'<,>','&lt;,&gt;');
        return theHtmlFormatted;
    }

    // a function because I'm anal about pluralization'
    public string function pluralizeOn(required numeric n, boolean endsInY="false" ){
        var number = arguments.n;
        var y = arguments.endsInY;
        var plural = '';
        if(not number is 1) {
            plural = IIf( y, DE('ies'), DE('s') );
        } else  {
            plural = IIf( y, DE('y'), DE('') );
        }
        return plural;
    }
</cfscript>
<cfif isAudacityFile>
<cfscript>
 myXML = xmlParse(myFile);
 myLabels = xmlSearch(myXML, "//*[name()='label']");  
 myNamespace = "jswm"; // ohrc etc.
 n = arrayLen(myLabels);
 public string function getWord(required numeric index)  {
   return  myLabels[index].XmlAttributes['title'];
 };
 public string function getOnTime(required numeric index)  {
   return  numberFormat(myLabels[index].XmlAttributes['t'],'9.9');
 };
 public string function getOffTime(required numeric index)  {
   return  numberFormat(myLabels[index].XmlAttributes['t1'],'9.9');
 };
 elements = structNew();
</cfscript>
<cfoutput>
<h3>There are #n# labels in the Audacity file     .</h3>
<cfloop from="1" to="#n#" index="i">
<cfscript> // get the key:value pair that describes the item, then split into key and value
    thisItem = getWord(i);
    thisItemType = listFirst(thisItem,":");
    thisItemValue = listLast(thisItem,":");
    elements.elementType[i] = thisItemType; // FTR, I'm not yet using these 4 structures
    elements.elementContent[i] = thisItemValue; //  
    elements.elementOn[i] = getOnTime(i); //
    elements.elementOff[i] = getOffTime(i); //
    switch (thisItemType){ // format this into the HTML used by jSyncWithMedia
         case "a" : // NOTE: I BROKE VARIABLES ACROSS LINES to fit
          elements[i] = '<li data-#myNamespace#-on="#getOnTime(i)#"
           data-#myNamespace#-off="#getOffTime(i)#"><#thisItemType# 
           href="#thisItemValue#">#thisItemValue#</#thisItemType#></li>';
         break;
         case "img" :  // NOTE: I BROKE VARIABLES ACROSS LINES to fit
          elements[i] = '<#thisItemType# data-#myNamespace#-on="#getOnTime(i)#" 
          data-#myNamespace#-off="#getOffTime(i)#" 
          src="#request.pathToImgFolder##thisItemValue#" />';
         break;
         case "off" :
          elements[i] = 'offList="#thisItemValue#"';
         break;
         default: // li  // NOTE: I BROKE VARIABLES ACROSS LINES to fit
          elements[i] = '<#thisItemType# data-#myNamespace#-on="#getOnTime(i)#" 
          data-#myNamespace#-off="#getOffTime(i)#">#thisItemValue#</#thisItemType#>';
         break;
    }

</cfscript>
<cfif not thisItemType is "off">
<p><code>#thisItemType#</code> element "#thisItemValue#" shown at #getOnTime(i)#, 
           off at #getOffTime(i)# <br>
   </p><cfelseif thisItemType is "off"><!--- OFF post-processed here
                         Pass 'ALL' or comma-list of ordinal element indeces    --->
<cfif thisItemValue is 'ALL'><!--- loop through everything  
           // NOTE: I BROKE VARIABLES ACROSS LINES to fit  --->
<cfloop from="1" to="#i#" index="x">
    <cfset elements[x] = replace(elements[x],'data-#myNamespace#-off="99"',
              'data-#myNamespace#-off="#elements.elementOn[i]#"')></cfloop>
    <cfelse><cfset myArray = listToArray(thisItemValue)><!--- TODO: if keeping 
           deprecated off type must change to regexp --->
    <cfloop from="1" to ="#ArrayLen(myArray)#" index="i"><cfset thisElementNo = 
 myArray[i]><cfset elements[thisElementNo] = replace(elements[thisElementNo],
'data-#myNamespace#-off="99"',
'data-#myNamespace#-off="#getOnTime((structcount(elements) - 4))#"')></cfloop>
</cfif>
</cfif>
</cfloop>
</cfoutput>

<cfscript>
    elCount = (structcount(elements) - 4); //  <!--- Remove number of extra keys --->
    liCount = arrayLen(structFindValue(elements,'li','ALL'));
    imgCount = arrayLen(structFindValue(elements,'img','ALL'));
    aCount = arrayLen(structFindValue(elements,'a','ALL'));
</cfscript>
<cftry>
<cfsavecontent variable="contentSyncItemsList">
<cfoutput><!-- #liCount# li element#pluralizeOn(liCount)#, 
               containing #aCount# link#pluralizeOn(aCount)# -->
<ul id="syncItems">
<cfloop from="1" to="#elCount#" index="i"><cfif elements.elementType[i] is "li">
       &nbsp; &nbsp; #elements[i]#</cfif>
    </cfloop>
</ul></cfoutput>
</cfsavecontent>

<cfsavecontent variable="contentImgDiv">
<cfoutput><!-- #imgCount# img element#pluralizeOn(imgCount)# -->
<div id="syncImages">
<cfloop from="1" to="#elCount#" index="i">
    <cfif elements.elementType[i] is "img">&nbsp; &nbsp; #elements[i]#</cfif>
</cfloop>
</div></cfoutput>
</cfsavecontent>
<cfcatch>
    <cfif structKeyexists(cfcatch,"Detail")><cfset d=cfcatch.Detail>
      <cfelse><cfset d=""></cfif><cfoutput>
    <div><h3>#replace(cfcatch.Type,left(cfcatch.Type,1),ucase(left(cfcatch.Type,1)))#
              type error.</h3>
    <h4>#cfcatch.Message# #d#</h4>
    <p>Sometimes an error here means the variable 
       <code><strong>elCount</strong></code> is wrong. Did you change the number of 
        <code>elements["elementName"][i]</code> keys and not alter 
<code><strong>line 79</strong></code>?</p></div>
</cfoutput></cfcatch>
</cftry>

<!--- and here's the fruit of all that hard work --->
<cfoutput>
<div>
#printHtml(contentSyncItemsList)#

#printHtml(contentImgDiv)#
</div>
</cfoutput>

<cfif dumpIt><cfset findLIValues = structFindValue(elements.elementType,'li')>
<cfoutput>
    <p>#liCount#</p>
</cfoutput>
<cfdump var="#findLIValues#" expand="no" label="findLIValues">
    <cfdump var="#elements#" expand="no" label="ELEMENTS">    
</cfif>

<!--- DEBUGGING stuff... drag it up into the dumpIt area as needed
<cfdump var="#elements#" expand="no" label="elements">
<cfdump var="#getLabels[2]#" expand="no" label="getLabels[2]">
 <cfset myLabels = XMLSearch(myXML, "//*[name()='label']")>   
<cfoutput>#myLabels[1].XmlAttributes['t']#</cfoutput>
<cfdump var="#labels#" label="labels">  --->

<cfelse>
    <h3>Fatal error</h3>
    <h4>This does not appear to be a valid Audacity file.</h4>
</cfif>

If I add jQuery and my plugin to the page and place the CFML in a div, call jSWM() on it, I’ve got a presentation ready to go, and I can tweak the timings or add and remove events in Audacity. I only need the ColdFusion or Railo server on my own computer, copy/paste the generated code anywhere.

Image of output, jSWM generated dynamically from Audacity XML

jSWM generated dynamically from Audacity XML

For me this approach has the added benefit of forcing me to visualize my scenes more thoroughly and in advance, to organize my storyboards according to my design and vision (not just make things up as I go along) and then to stay true to the design and vision.

Aug 15

The current “state” of WAI-ARIA adoption and its “role” in accessibility

March 2014 UPDATE 2014: WAI-ARIA 1.0 is a completed W3C Recommendation as of March, 2014. Check current status

The WAI-ARIA project began in the fall of 2006. ARIA stands for “Accessible Rich Internet Applications,” by which it means web-based applications using CSS and JavaScript to change page elements without reloading the page. ARIA provides a means for the changes to communicate with assistive technologies.

“…I worked with a web project manager who was unfamiliar with ARIA, …and ended up interviewing half a dozen upcoming young developers, none of whom had heard of it either! Had the Web Accessibility Initiative’s initiative failed, …was ARIA D.O.A.?”

It came to my attention at that time due to my involvement with a group of teacher educators at the Faculty of Education at York U, Toronto. I admit I wasn’t able to make a great deal of sense of it until they published a Primer and a guide on Authoring Practice in 2010, and even so it remains daunting. Yet I believe in ARIA and what it’s trying to do, and I know of no other meaningful solution in the works. So I was disappointed and somewhat baffled when at my job in 2011 I worked with a web project manager who was unfamiliar with ARIA, and then, in the course of the project, ended up interviewing half a dozen upcoming young developers, none of whom had heard of it either! Had the Web Accessibility Initiative’s initiative failed, …was ARIA DOA?

Jutta Treviranus is Director and Professor at the Inclusive Design Institute at OCAD University. She’s explained at length the many challenges faced by people with differing abilities even if they’re using assistive technology, which involve availability, cost and compatibility issues far more convoluted than many of us may imagine. I recently had the chance to ask her some questions about ARIA adoption, and she’s graciously allowed me  to share her answers (and they let my colleagues off the hook!). Continue reading

May 29

Ownership of Learning 2.0

While writing this I became aware — rather serendipitously I might say — of a soon-to-be-released mobile app that seems to have some similar thinking behind it. Tappestry‘s interface has very creative representations of the types of relationships between events, resources, people and ideas that make up an experience. Float Mobile Learning will reveal Tappestry at their Mobile Learning Symposium, so I’ll say no more!


Opportunity + support + resources + access

When it comes to the guitar, I’ve been in charge of my own learning since I was 9 years old. I remember what intrigued or engaged me, where I got “stuck,” and what I did to get unstuck. Reflecting on those things and taking stock of them has become a huge part of my pedagogy, both overtly and subconsciously. As an “electronic education specialist” I now spend a lot of time thinking about learning activities that are to be delivered electronically, so the questions often include, “Sure, but what does that look like as a Web page?” I quickly conclude that “page” is an inadequate description of what we’re doing. ELearning is an application; more and more, whether consciously or not, we’re thinking of lesson plans and units as “apps.” Continue reading

Best new thing in my world today: Git

Aside

Git is version control software, sort of like “track changes” for an entire directory structure. But it has powers and abilities far beyond those of ordinary version control tools. Among other things it can move files — securely — between servers anywhere you have access to install it.

Why did I bother to learn Git?

My motivation was both intrinsic and extrinsic: I have experienced the deep feeling of chagrin that comes from knowing you’ve just overwritten hours of good work with an older version of a file. I already wanted to learn how to use Git because I had seen interesting projects on GitHub that I thought I might even be able to contribute to. The extrinsic motivation, and the reason I stopped procrastinating, is I now have to use it at work.

Did I have a strategy?

Having a project of my own allowed me to put many more hours into learning Git, and to use it for things I wouldn’t try at work for many weeks. At work I’m literally only expected to contribute to two files — one is CSS the other JavaScript. For my project I’m carrying around a laptop, but my biggest screen (and most comfortable coding chair) are at the desktop in my music-room. The desktop has 3 or 4 different web servers running on it, which I can access from anywhere on my home network. My learning strategy then was to set up as if I’m a team of people working from different computers on a network. I ended up setting up two repositories on each computer. I used a variety of Internet resources whenever I faced an impasse. I soon found several well-written sources that helped me.

What did I already know that helped me learn Git?

Almost immediately as I started working with Git I thanked the fact that I’ve installed and worked with various Linux flavors — Fedora and Ubuntu mainly, but others as well. Git runs on Windows in a Linux “shell” and you need to know about case-sensitivity and forward slashes. The most frightening and potentially alienating thing for any Windows user is probably Vim, the 20-year old text editor (and so much more) that Linux geeks will never abandon or bury. When you commit changes using commit -a a Vim terminal appears. When you start typing in Vim all hell breaks loose until you learn to press Insert up front, and you won’t get out with anything you type intact until you learn the sequence ESC : w q . I was lucky I went through that frustration a couple years earlier.

What surprised me about learning Git, or what did I learn that I didn’t expect to learn?

At one point I had to open a utility, Gitk, that comes with Git. Looking at the long list of commit messages I generated as the project evolved I realized I had inadvertently collected a log of my thought processes. If I were teaching something in a classroom and I could have my students keep a similar log while working on their projects I’d know what they were thinking at various stages, and perhaps gain all sorts of otherwise unexposed insights into both their learning and my teaching. I mentioned this thought to the IT program manager at work. His comment was he would love it if they taught Git in high school.

I’ll probably post more about working with Git. But don’t wait for me… get Git and all the documentation and tutorials you’ll probably ever need at git-scm.com/.

Apr 08

Instant WordPress, A WordPress Development Server To Go

Instant WordPress was designed for developers to build Plugins and Themes for WordPress. I ask, “What might creative 21st century classrooms do with it, say for a project?”

  • You can do all kinds of things with the blog itself that aren’t even directly computer-related, e.g., social networking, submitting homework, cooperative work, projects… what if you ran the classroom as an internet news publishing organization, with roles and competing organizations maybe?
  • can be used to deploy develop and deploy full-fledged web presence if so desired;
  • as Project Based Learning platform offers some advantages
    • access can be limited to 1 computer, a classroom network, a school, etc.
    • on the internet can lead to powerful collaborations
  • thoroughly private when used in self-contained network;

Your ideas welcome! Please leave a comment!


I’m using my Instant WordPress to develop a WordPress plugin to help teacher plan and deliver projects. Wanna help? Here‘s some more about the idea, and I’m revealing more each day until the tent comes down.
Mar 31

Project TinCan, the next stage in assessment and evaluation?

If you need to keep track of who does what, when, within a web-based project or experience TinCan might be just the thing.
—moi

The metaphor that gave name to Project Tin Can is the tin can and string telephone. Project Tin Can is the next phase of SCORM. The project itself has entered its own “Phase 3 — the future of e-learning is now,” which includes prototypes you can use, that in turn can issue data and reports, and web objects to be consumed in ways limited only by the imagination. Continue reading