Intro to accessibility

Last Wednesday, May 9, 2012, was Global Accessibility Awareness Day. According to the website it

is a community-driven effort whose goal is to dedicate one day to raising the profile of and introducing the topic of digital (web, software, mobile app/device etc.) accessibility and people with different disabilities to the broadest audience possible.

I took the occasion to make some more inroads into my own awareness of web accessibility. Julius, a new colleague of mine, helped me set up Orca. It is an open source screen reader for Ubuntu.

Unfortunately, we didn’t get very far because my voice over didn’t want to play nice. So we concentrated on testing a site with the WAVE toolbar. That’s quite a nifty tool for me because I can see where there might be problems on a page and where accessibility could be improved.

I tested the newly created Mahara user manual to check how it fared. It is written in reStructuredText and published through yet another open source tool, Sphinx. WAVE pointed out areas of concern but also things that worked in favor of accessibility. Fortunately, mostly everything was well because I had made sure that figures had an alt text and inline images immediately take on the short name of the substitution as their alt tag.

There were three items that needed improving:

  1. The search field did not have a label and thus a person relying on a screen reader might not know immediately what to do there.
  2. The images of so called admonitions like “note” and “warning” were placed as background images in the stylesheet and thus would not be read aloud. That means that a person listening to a screen reader would not know that a section was coming that was highlighted but would read it as if it were regular text.
  3. One thing I just realized when I looked at the output by Fangs is that my manual arrow ( -> ) comes across as “dash greater than”.

I fixed the first issue, and the search now has a label instead of text below it when it is already too late. For the images in the admonitions, I’ll have to talk to a front end developer to come up with a good solution. The third issue can be fixed by finding a nice looking Unicode symbol of an arrow that I can use in reStructuredText. I don’t know why I hadn’t done that right from the start. :-( However, I’ll have to check how to include the Unicode encoding for the LaTeX PDF build. The arrow looks nice in HTML but not yet in LaTeX.

Then the last step will be to propose the changes for the search box and the admonitions to the community for inclusion in a future release of Sphinx.

Squashing bugs

Bug squashing: This is not the messy kind of hitting annoying mosquitoes or sand flies and seeing their victim’s blood drain from them. No, here I am talking about the bugs that hide in software, are brought to light by keen users and then fixed by awesome developers.

This week is global bug squashing week for Koha, the open source integrated library management system. This is a “concerted effort to get bugs and patches moving along in the right direction” all over the world. Everybody is invited to help test bugs, add comments and if all is well sign off on them.

Eliminate as many bugs as possible; Photo by Benny Lin, CC BY-NC
Photo by Benny Lin, CC BY-NC

One of my colleagues, Chris Cormack, who is the Technical Lead of our Koha Team at Catalyst IT, announced this initiative on Monday at work and invited everyone to support the project.

I am not a developer, but I have already fixed a few bugs in Mahara – pretty much only language string-related – and as I like the Koha team and the software, I thought that maybe I could help as well as signing off on bugs does not necessarily require programming knowledge.

The Koha community makes it easy for people like me who cannot so quickly set up an instance of Koha on their own computer, configure it, import data etc. in that there are sandboxes that can be used for testing. What you need to do is test the faulty behavior on the latest version of Koha, the “master”. Once you have confirmed that there is a fault, you apply the patch and run your test(s) again. Hopefully, all works well and you can sign off on the patch.

Now, normally, applying a patch is something that requires some command line knowledge. However, thanks to the sandboxes, all you need to do is to provide the bug number, your email address and whether you want to start with a fresh database or not. Then all the command line magic is done for you and within a minute or so you have a fully functional Koha instance with the patch applied. VoilĂ . :-)

On Monday, Chris showed me how to work with the sandbox, we found a bug that looked easy enough for me to test and tested it. As I do know a little bit about the version control system git, he showed me how to sign off “properly” with a patch of my own. At the end of 1 hour we had the patch submitted. A considerable amount of that hour was spent finding a suitable bug. In the evening, I attempted to test two more bugs and could sign off on one of them. The other one needed a bit more work.

Three of the five bugs that I tested are already merged and thus could be completely squashed. That’s pretty cool. I did require some more help from Chris because as I am not so familiar with the vast amount of system preferences you can switch on / off in Koha, I needed some prodding to look in the right direction so that I could actually test the faulty behavior correctly. It was great to get the help from him at all hours also on the community IRC channel. And it was nice to chat to other Koha developers on IRC, get updates of the weather around the world and so on. The community is very friendly and supportive.

Now if you want to participate, there are still 61 bugs that need sign off (maybe fewer when you see the list) and every contribution counts as the users make the open source community and improve the software.

On a related note: Yesterday, the Mahara team released the Mahara 1.5 Release Candidate 1. We invite everyone to test the software and give us feedback if you find a bug that should be fixed before the stable release is produced.

Notes and observations from the PESC Data Summit

The PESC Data Summit Fall 2011 took place in San Francisco from October 12-14, 2011. It is a regular meeting of organizations that come together to discuss and further interoperability between educational systems. PESC, the Postsecondary Electronic Standards Council, “enables cost-effective connectivity between data systems to accelerate performance and service, to simplify data access and research, and to improve data quality along the higher education lifecycle” (PESC info sheet).

In order to achieve that PESC develops XML standards that are community driven and open for anyone to use. Because of the involvement of institutions of higher education as well as vendors / producers of software for that sector, it is hoped that the standards that are being developed have high relevance and are a result of actual demand and thus are more likely to be implemented by vendors in their products.

PESC has a number of workgroups and taskforces. I participated in the ePortfolio workgroup and learned a great deal about how PESC views ePortfolios and what academic institutions in the U.S.A. and Canada expect of an ePortfolio. PESC looks at an academic ePortfolio for which tracking of competencies and assessments are important components. Furthermore, the academic ePortfolio will be used in academic advising, e.g. for future career paths or further studies. Therefore, it must be machine- and human-readable. Transcripts that are moved from one institution to another and can be stored (or a link to them) in the ePortfolio are a necessity. Thus, the ePortfolio is not entirely learner-driven, but it has a number of prescribed content that it must contain in order for an in-taking institution to get a more complete picture of a student.

Besides discussing the ownership of the portfolio, we particularly looked at standards for portfolio data exchange. PESC does not have to come up with its own standard if there is already one that is in use and that is usable for PESC purposes.

There are not too many ePortfolio schema around. Leap2A and Desire2Learn’s XML export structure were put forward. The IMS ePortfolio standard was put aside as not being suitable because PESC does not only require the moving of content artifacts but also of assessment information.

As PESC tries to implement XML standards, Leap2A would not work exactly because it is based on ATOM feeds. However, it was discovered that CETIS is working on a Leap2R standard that converts Leap2A into an XML structure.

There is more analysis needed to look into how Leap2A/R could be implemented and what kind of data can be pulled from other systems. Even though it would be quite handy to get everything automatically in an easy-to-read and easy-to-process format, I think that not everything can and should be done (in the beginning). Implementing web services that assist in the transfer of information is not to be taken lightly. If every software involved in the process is expected to support these web services, uptake may be slow as high costs may be involved in developing the necessary interfaces.

I think it is important to define a priority list for connectivity, exchange of data, and export of ePortfolios. Being able to pull in transcript information into a university’s portfolio for advising purposes is all well and good. However, if the purpose of the advising is to find a graduate school for the student that will take him away from his current institution, then being able to export his portfolio and import it into the other institution may be more important to the student and he’d be happy to include his transcripts as secure PDF documents only instead of having them transferred automatically.

A pragmatic approach may be useful in order to get an initiative started and to see how it is being received instead of trying to accomplish everything.

In New Zealand, the Ministry of Education is funding the LMS-MyPortfolio Interoperability Project which aims to connect the major LMSs used in NZ schools to MyPortfolio, which is a Mahara installation. The main areas of work are:

  1. account provisioning
  2. notifications
  3. moving content

In order to achieve this, a web services stack has been implemented in Mahara which allows other LMSs (and also Student Management / Information Systems) to consume these web services and thus connect to Mahara.

The account provisioning project part is the most advanced. Sometime during the discussion of what to enable besides account provisioning, group creation came up. However, the actual implementation of total group management via the LMS was not activated for MyPortfolio because group admins should still have the possibility to add users from outside of their institution who have accounts on MyPortfolio to their group or remove users without having to check back with the LMS. The attempt to manage everything via the LMS would have been far too complicated and would have had to take a number of exception as well as special rules into account. The “low-hanging fruit” was the implementation of account and group creation via the LMS as well as initial group membership provisioning. However, the updating and deleting of groups was abandonded for MyPortfolio because it is a Mahara instance that is used by many schools (over 810 at the beginning of October). Had it been a Mahara with just one institution, the group management via the LMS would have worked better.

Besides the administrative concerns, other thoughts need to be heard. MyPortfolio (and Mahara) is a learner-centered portfolio application and thus the users should have as much freedom as possible. Therefore, governing all groups via LMSs would be in direct conflict with this ideal. Of course, the students who use MyPortfolio are connected to a school and thus have to follow certain rules, but MyPortfolio should still be different from a LMS.

That does not mean that no formal assessment documents can and should be included. However, the amount of information or group membership making it into a learner’s account is the question.

Coming back to PESC: Being aware of the work that is going on in the U.S.A. and Canada as well as thinking about possible connecting points for future development work in Mahara is beneficial in order to advance possible integration work with other systems.

Inspire and be inspired: Emerging Leaders Symposium 2011

A big THANK YOU to the crew from Albany Senior High School who organized the Emerging Leaders Symposium from April 28-29, 2011. It was a great (un-)conference that brought together up-and-coming educators from around the country to discuss leadership in schools and how (young) educators can be assisted to become leaders in their school communities.

Though I am not a teacher in a NZ school, I could still attend the symposium and am happy that I had the opportunity to do so because I learned a great deal, talked to teachers who do amazing things in their schools, and also got a glimpse of Albany Senior High, which is not your typical school. ASHS embraces openness in a number of ways: open education, open classrooms, open teaching, open source, open learning spaces. In an unconference session, Stonefields School, a primary school in Auckland, presented the thoughts behind their new building. It is great to see that some schools break away from the tradition model of organizing school and follow alternative roads.

Thursday, April 28, 2011, was the conference day with a keynote by Mark Osborne, followed by World Café where we discussed how leadership inspires, motivates and supports us, and how we can be more effective leaders ourselves. In the afternoon, 10 of us took the plunge to present in the pecha kucha style of presentations.

Coming up with 20 slides for 20 seconds each was a major challenge for me because I tend to have fewer slides in 400 seconds. It was great fun to lay out the presentation and think about the time restrictions as well as the photos and graphics that I wanted to use to represent what I was saying.

As I am bad at knowing when exactly 20 seconds are over, I added a small circle at the bottom of my slides to which I assigned an action so that it would run across my screen in exactly 20 seconds. Thus, I knew how much time I still had left and whether I needed to cut my sentence short or prolong a little bit (the ball can’t be seen in the recording as I stitched it together with the slides and the Flip’s audio). I got that idea from Ignite Wellington where a ball moves across the screen all the time indicating when a slide is going to be switched.

When setting up my presentation, I forgot to take into account that the transition added another second to my presentation. Thus, I went a bit over pecha kucha time. :-( For next time I also know that I need to test whether screen recording works with the projector. I had the most difficult time connecting and in the end had to turn of my screen recording software. Luckily, Mark recorded all sessions so that I could use the audio from his recording and add my slides to it. The slides can also be viewed on Slideshare.

The topics of the other presentations included for example what education can learn from cricket, lessons learned from travelling that are applicable in school, gamification of learning, game theory in education, social media for learning, minimally invasive education. After the pecha kucha session we did “speed dating” to talk to a number of people in a very short time reflecting on the presentations.

This first day was a high-powered day filled with many different impressions and activities (I shouldn’t forget the introductions: 3 words that I identify with and only then could you say your name) and still enough time in between to chat with attendees.

Friday morning was reserved for 9 unconference sessions around the topics that the symposium participants were interested in. This unconference also gave us an idea of what it feels like to teach / learn in a Learning Common at ASHS.

After the unconference we got together in focus groups to prepare short presentations and also questions that we wanted to pose to Secretary of Education, Karen Sewell, who joined the symposium in the afternoon. The focus groups were on M?ori achievement, collaboration, science, personalizing learning, and leadership.

ELS11 was a great conference with the right number of people in a fantastic location where innovation could be tasted. If I were to draw a conclusion, I would say that these two days were all about sharing, connecting, collaborating sincerely (the vision from my focus group) and building community not just within a school but across schools. Schools already have great emerging leaders in their midst. These need the encouragement, space to grow and possibilities to show what they can do.

In response to a number of questions, Karen Sewell asked: “What’s stopping you?” Apparently, nothing much because ELS11 was an initiative that was born out of the wish to connect with other people, the science focus group is going to organize an unconference for science teachers, and there will be an ELS12.

If you want to read another participant’s reflections and summary of ELS11, you can do so on Tara’s blog.

Agile undercover

Agile software development is still a bit obscure to me. As I have been hearing a lot about it recently, primarily through company presentations at the Meet & Greet in preparation of Summer of Tech, I went to a presentation today to find out more about “agile”.

The Agile Professionals Network organized the presentation “Agile Undercover: When Customers Don’t Collaborate” given by Rashina Hoda. Her presentation, as already suggested by the title, focused on the customer and what an agile team can do if the customer is not fully on board.

She has identified 6 types of customers in agile projects in her research in India and New Zealand that she placed on a continuum:

  1. Product owner: That’s the perfect customer, a rare breed (in any project). :-)
  2. Story owner: The project is split up into multiple stories (in non-agile words: parts) and each one has a person responsible from the customer side. That means that the responsibilities don’t have to be centered in one person who may not always have time, but different people from the customer side are involved at different times.
    This ensures that a customer representative is there at all times. However, I see the danger in not being able to tie everything together. This type of customer requires that the individual story owners talk to each other and keep each other informed so that decisions are made along the same lines.
  3. Just demos: Sometimes agile development projects can be happy if the customer shows up for the demos (no other interaction willingly or out of necessity). They then try to sneak in a discussion at the end to go over the development and receive feedback on it as well as some pointers for further development.
  4. E-collaboration: Sometimes it’s not possible to meet face-to-face. That’s when e-collaboration comes in handy so that the developers and the customer can still see each other and discuss work. Video-conferencing where possible, but also text chat help greatly to stay in touch and involved.
    I would have placed e-collaboration before just demos because I sense a greater involvement than in the just demos part, but of course, that always depends on the project.
  5. Customer proxy: If a customer can’t be present, somebody else from the development team or closely related can act as stand-in to lead discussions and then communicate the results back to the customer, receive their opinion and feed that back to the team.
  6. Extreme undercover: That is the worst-case scenario. This can happen when the development team decides to use agile methods, but the customer is not aware of that and thus is not involved in the process. That is often the case if the customer as too scared of using agile or opposes it.

These types of customer are not new because I can also see them in “regular” projects. However, Rashina pointed out that customer involvement is particularly crucial for the success in agile projects, and a team has to find ways of compensating for not-ideal customers.

As I just got a brief glimpse into agile software development / agile methods, it would be great to actually see such a project work and compare it to my project work experience.

This presentation was based on “Agile Undercover: When Customers Don’t Collaborate” by Rashina Hoda, James Noble, and Stuart Marshall which they presented at XP 2010 in Trondheim, Norway, in June 2010.