Things I’ve learnt about accessibility during my first internship week

maio 27, 2011 § 6 Comentários

After some struggling with installing GNOME 3 and GTK+ 3, I finally started working!

I’m in the very beginning of a formulae/equations editor/visualizer. When someone is using a tool as OpenOffice, it’s possible to build complex formulae/equations to put on the text. Unfortunately, it isn’t very simple to render the equation beautifully to a SVG, for instance. More than that, I didn’t find anything that covers these purposes (visualizing/rendering formulae) in accessible GTK+/Cairo.

For building equations (in my opinion), it’s always better to use LaTeX, though many people find it a bit hard. My project consists, then, in implementing a simple formulae builder that can take a GtkEntry input and transform it either in MathML (that can be properly rendered to SVG via Lasem, for example) or – who knows? – LaTeX. Maybe converting one notation to another would be interesting, too.

The most important point, of course, isn’t about making something complicated : it’s about making sure that this simple application is accessible. People with visual impairments (or other kinds of disabilities) should find easy to build an equation with the tool, besides importing it to other formats. More than being enormously useful, the idea here is to write something from scratch, paying attention to every single implementation detail (specially those related to accessibility).

Right now, I have a little code that allows users to type the equation within the GtkEntry, besides selecting some operators from comboboxes (like square roots, integral symbols etc). Nevermind about the dummy data in Fig. 1 (music, food, movies): they’ll be switched to three different classes of mathematical symbols or something like this.

Fig. 1 First lines of useful code

The interface may grow up a little to allow users to navigate in a MathML tree related to the current equation shown in the GtkEntry. I’m thinking of adding a menu, too, with different rendering options etc.

Relevant insights

It was very interesting to notice, while talking with Joanmarie Diggs, David bolter and Alejandro Piñeiro, that making an app/demo/widget accessible doesn’t necessarily imply in adding extra information. This is my current mantra, since I spent some time figuring out about how to add extra info to an interface! 😀

Another interesting thing that happened this week involves the way my mentors and I decided to work: first, I’ll build the code per se, without minding much about accessibility. Just write the code and check its quality with regular tools, such as lint, gdb and valgrind. Nevermind about accerciser for the moment: a key tool to guarantee that the code is accessible. After that, I’ll apply accerciser to figure out which are the most common points I forgot while implementing (related to accessibility, of course). This is going to be very useful to the documentation I’ll do next month, since it’s going to be devoted to developers that don’t know much (or don’t know anything) about accessibility. It’s like notes made from an outsider. I do like the idea ;).

And last, but not least, I’d like to thank  my friends Caio Tiago and Tomaz Canabrava for all the help and opinions they gave me throughout the week. You rock! Also, I’d like to thank the GTK+ community for releasing such a complete documentation about it. It’s being enormously useful!

§ 6 Respostas para Things I’ve learnt about accessibility during my first internship week

  • Hey! WebKit has support for MathML. You may consider using the WebKitGTK+ library for rendering your formulae; note that I am not sure it is enabled by default currently nor am I familiar with mathml specifically, but I can probably help with enabling it in webkitgtk+, depending on the maturity of the code =)

  • Aline Bessa disse:

    Thanks a lot, Gustavo! I’ll keep in touch with you.

  • Asrail disse:

    Cou cou cher,
    merci beaucoup.

    Don’t know how much you know of the OpenOffice Math editor, but users can type the formula. There is a clear text syntax for everything there. Instead of a bad example that should be take as a good example. At least on the possibilities of entering the data.
    It won’t export to SVG, but you can save as MathML, then it could be used with your library (assuming the core part will be done as a library).

    Anyway, nice tasks. Great idea of talking about the difficulties for making the programs accessible and guiding the people without experience on this subject.

  • Owen disse:

    I believe that Abiword uses a combination of itex2mml to convert LaTeX to MathML and then uses gtkmathview to render the MathML. I seem to recall that gtkmathview can also render to other formats.

  • Aline Bessa disse:

    Awesome tip, Owen! Thanks.

  • […] In the first days of my internship, I dedicated time for writing a demo that explored accessibility issues. You can read more about it here. […]

Deixar mensagem para Owen Cancelar resposta

O que é isso?

Você está lendo no momento Things I’ve learnt about accessibility during my first internship week no Aline Bessa.

Meta