User:Mchua/Programmabilities

From Teaching Open Source

Jump to: navigation, search

A UNICEF project "exploring whether the text-based and asynchronous nature of open communities can provide deaf youth in the developing world with opportunities for cognitive apprenticeships in a STEM community of practice." In other words, "what happens when we get deaf youth in the developing world involved in FOSS communities, and what do we need to do to get that to happen?"

Contents

[edit] Introduction

Large open source and content projects (hereafter “open communities”) are communities of practice that exhibit signs of successful situated learning and cognitive apprenticeships, featuring ample opportunities for legitimate peripheral participation, frequent instances of learners working in their zone of proximal development, and transparency practices that facilitate social learning. Their text-based and asynchronous (owing to the distribution of contributors across multiple timezones) nature makes them an ideal forum for providing deaf youth in the developing world with a STEM education. UNICEF has commissioned the design of a job training program that uses scaffolded participation in such a community or practice to train software engineers and other roles in the ICT ecosystem, these historically disadvantaged youth will have the opportunity to join a global community of highly-skilled makers who can then free their local economy from dependence on overseas talent.

[edit] Questions

See /Questions for a formatted version.

[edit] Presentation to UNICEF, May 2012

  • Programmabilities research paper: Draft outline
  • Mel Chua
  • Presented May 7-8, 2012 at UNICEF headquarters in New York

Programmabilities is an UNICEF initiative to involve deaf youth (ages 17-22) in the developing world as contributors to open source and content projects as part of their education and training for ICT-related careers. This document explains the three main parts of the Programmabilities research paper: opportunities (open community considerations), needs for access (deaf computing education considerations), and resources (developing world considerations).

I've spent more time (and words) explaining the sections of the paper that are less likely to be familiar to UNICEF – namely, open communities and deaf education – meaning the section on developing world considerations is very small (since you all have plenty of experience with that).


[edit] Opportunities for learning experiences: Open communities

What are the various types of learning experiences that open communities have to offer, and what are the various specifications, timeframes, skill needs, etc. for each?

Below are three examples; this is not a complete list, and the examples are not fully developed, but this should give you an idea of the kinds of learning experiences that might be available from open communities, and what students need to be able to participate in each..

[edit] Example: Remote co-op or internship in software engineering

Similar to Google's Summer of Code program; a full-time, 3-6 month internship where students are responsible for doing a small project within a large and complex project. Possibly the culminating "capstone" experience of the program.

  • 3-6 months, full-time
  • Remote, communicate through chat (synchronous) and email (asynchronous)
  • Student must be fluent in written English
  • Requires software development experience (intermediate programming background assumed)
  • Requires a 1:1 mentor/student match determined ahead of time and lasting the entire term
  • Ideal to have an on-site teacher that (multiple) students can check in with during their "internship" term

[edit] Example: Participating in a testing day

Sometimes, large open source projects will have "hackathons" where people will gather online to work on a specific task together; it's like a barn-raising party, but with software instead of barns, and will usually feature participation from many different locations (with people talking in a chatroom during the event). One common type of hackathon is a testing day, where people come and try out the beta release of a software product and file bugs so the developers can fix them before the final release. Students can participate in these testing days either individually or as a class (guided by a teacher).

  • 1 day, 3-8 hours
  • Remote, communicate through chat (synchronous) with setup through email (asynchronous)
  • Student must be fluent in written language, can be non-English if the open community event is in that language, or if there is a realtime translator available
  • Requires software usage experience; should be able to follow instructions on how to install and use a software application, and to be able to identify when a program is doing something wrong and communicate the problem clearly (as opposed to "this is because I don't know how to use a computer)
  • Requires a team of mentors that can be available online during the testing period, as well as setup/instructional materials to be created beforehand
  • Ideal to have an on-site teacher and on-site mentors to help facilitate the students testing and communicating online

[edit] Example: Summarizing development news

In order to participate in a community, students need to be able to understand (and eventually contribute to) the conversations they are having. One useful service they can perform to build their skills is to read the mailing lists, chat logs, etc. for a busy project and write a short weekly "newsletter" summarizing that project's activity, since many developers for a large project won't have the time to keep up with activities in other parts of the project (the way that workers in a large company might not know what's happening in other departments without the monthly company newsletter).

  • 4 weeks or longer, 2-3 hours per week
  • Remote, communicate through email (asynchronous)
  • Student must be fluent in written language, can be non-English if translation help is available (can be asynchronous)
  • Requires familiarity with basic computer usage, an ability to talk clearly and concretely about the software creation process (no programming experience required), and a willingness to realize that not everything will be understandable at first.
  • Requires little to no mentorship from the open community
  • Requires an on-site teacher with software development experience who can understand and explain the conversations on a development mailing list, and facilitate students communicating online

[edit] Factors to consider

  • Timeline and time commitment (full-time for 3 months, 10 hours a week for 6 months, a 1-day sprint for 5 hours, drop-in tasks that can be picked up at any time, etc. as well as how these timelines map to the existing school year, if students are doing this as part of an existing academic program)
  • Skillsets that can be taught (technical writing, UI design, web development, databases, programming in specific languages, system administration, etc.)
  • Types of projects that students can contribute to (educational games, word processing systems, content management frameworks, operating systems and Linux distributions, embedded development, scientific research software, humanitarian projects like RapidSMS, etc.)
  • Language of communication (English? Sign language? Arabic? French? Written/spoken? etc.)
  • Timezone considerations (most contributors are located in Europe, Asia, meetings tend to be held during daytimes in North America, etc.)
  • Medium of communication (in-person, phone, email, chatroom, videoconference? etc.)
  • Level of student skill/background required (must they know written English? spoken language? sign language? have typing skills? computing skills? math background? programming background? how much? etc.)
  • Level of technology access required (must students have their own computers, or is a lab sufficient? speed/reliability of internet connection? when is connectivity available: 24/7, or only during limited timeslots? how fast/powerful do computing resources need to be?)
  • Availability and interest of individual mentors

[edit] Needs for access: Deaf education

We now have a number of learning experiences that open communities can provide, and a basic understanding of what any student -- disabled or not -- would need to have as background and support in order to participate from those learning experiences.

Now we will look specifically at deaf education. What makes fulfilling a certain background requirement more or less difficult or likely for deaf students, and what resources and methods are already in use to help deaf students achieve those requirements? This is where disability-specific constraints come into play, some of which may be informed by the state of deaf education and the deaf community at a particular site or in a particular country.

For instance, "fluency in written English" may be far more difficult for deaf students whose primary language is sign language, compared to hearing students whose primary language is English. Therefore, many schools for the deaf have classes, teachers, and programs focused on helping deaf students with their written language fluency. This part of the paper will consist of multiple sections, each examining a background requirement in more detail.

It is also important to look at the local deaf culture, and their language and community -- which in some cases, for some countries, is very separate from what happens in deaf schools! Audism is a serious and sensitive matter, and we need to make sure the local deaf community is supportive of and involved in the project. The point is not to teach deaf students to be "just like hearing people who can't hear," but to enrich their lives and experiences within the deaf community, if they choose to be part of the deaf community. For many Deaf people, deafness is a culture, not a disability.

[edit] Resources available: Developing world

Gvien the set of learning experiences available in open communities, and the resources needed for deaf youth to take advantage of them, what is realistic to implement in various developing world contexts? This is where site-specific constraints come into play.

For instance, a co-op program might not work for a school where students can't have 24/7 computer and internet access, but they may be able to participate in a testing day -- but only for a few projects where there's a large enough community in Swahili to support a sprint without realtime translation.

[edit] Current

You can see the current "final print" version of the paper on a google doc at any given point in time. It's likely to lag behind the raw notes displayed and linked-to elsewhere on this wiki page.

The current wiki version is at /Wiki version.

The two links below are incredibly outdated, and I personally don't think the work there is any good at all, but in the name of radical transparency, here they are. I'll fix them at some point soon. Mel Chua 21:25, 7 May 2012 (UTC)

[edit] Suggested resources to investigate

Organized things are in the /Background research page.

Ideas? Please add them here!

  • http://unicefstories.wordpress.com/
  • http://deeunicef.tumblr.com/
  • NTID at RIT
    • Steve Jacobs
  • Gallaudet University
    • Kevin Cole
  • Purdue University
    • ASL club
    • ASL department
    • Audiology department
  • The University of Washington's Advancing Deaf & Hard of Hearing in Computing effort, including a summer camp. (via Nikitha Sambamurthy from Purdue)
  • OSI
    • Karl Fogel
  • Deaf education literature; talking with NTID and Gallaudet folks for a good overview reference.
  • Deaf education in the developing world.
  • International and asynchronous collaboration in open communities, and how they are illustrative of situated learning / cognitive apprenticeships.
  • Argyris and Schoen are the "learning in action" folks - they wrote "The reflective practitioner." (see Jarvis ch 8 for references)
  • P 173-175: Jack Mezirow studied reflectivity in adult learners and proposed there are different levels of reflectivity. He studied adults in crisis and found that reflection leads to transformative thinking. (Jarvis 8 for refs)
  • P 175-176: Danny Wildermeersch also did transformative learning, focused on adult learners in a work context, and proposing that a changing world causes internal transformations when we have to deal with it. We do so by either adapting to social demands, growing personally, distinction (developing alternative approaches), or resistance (transforming what society demands) in order to restore harmony between ourselves and our life-world. Similar to how new contributors learn to shape FOSS communities. (Jarvis 8 for refs)
  • Bandura on self-efficacy (see Crain's "Theories of Development ch 9" for references)
  • Davis & Jabeen paper on legitimate peripheral participation in open projects
  • Eric Von Hippel - the economics of open source.
  • Yochai Benkler - network-based peer production. In other words, Wikipedia.
  • James Howison - dissertation found that open source contributors work alone
  • Don Davis - LPP exhibited in FOSS communities
  • Andreas Schilling - recruition and retention in FOSS projects