MemoryError

So some sort of tracing code was in place and I ran it the first time with the full data set. The computer started crunching the numbers and then a few minutes later it spat out

python(54674) malloc: *** mmap(size=587386880) failed (error code=12)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
Traceback (most recent call last):

MemoryError

I was only trying to trace three points and it still ran out of memory. I’ll need some other way to do this.

Spec, something that people in my program shouldn’t even be worrying about

Today is August 30, the last day for submitting an entry to a certain design competition, but I’m not going to submit anything.

Nor will I likely submit anything two months from now when the other competition closes — one that, if this means anything, I would probably not do well in any case but was still really excited about — in my eyes, it’s all about identity and EGD. And if you asked me, I was really disappointed when I found this other competition to be “equivalent to spec”: I was talking about my ideas with one of the docents at The Power Plant and neither of us thought there’s anything wrong with that competition.

I had dug through hundreds of discussion postings on spec-vs-no-spec before I had any connection to the AIGA, but I have always felt real contests — especially those that are clearly branded as student contests, one that you find on your art school’s job board even — had to be some kind of an it’s-still-ok-even-though-it’s-kind-of-grey area. But compared to AIGA’s pretty much advisory position, RGD’s position leaves little room for interpretation. In a sense, the RGD’s much stricter position forces you to think more, so it’s a good thing, I guess.

My program’s program director likes crowdsourcing, thinking it to be possibly a good way to get those pesky accessibility problems solved. But crowdsourcing in tech circles isn’t really the kind of taboo it is in the graphic design world. So who in my program will worry about spec? Probably very few.

In any case, September is coming, and I will be back in the ceramics studio very soon. If I’m fortunate enough to be able to log sufficient time to enable me to produce some decent work before I finish my thesis in what now appears to be May, then maybe — just maybe — I might be able to show my work in some less controversial venue.

Coding in python

It looks like I’m now at the point where I’ll have to rewrite everything in python. I’m going to have to deal with multiple data files with multiple huge arrays, and perl is just not going to cut it. And then I’ll have to worry about interfacing with OSC. Of course, if I’m going to switch over to python, I should be able to use normal VTK functions and not worry about rolling my own file parsers.

The problem is that two years after taking NLP at Coursera, I have already forgotten how to code in python. This is going to be a problem.

Gestures and prejudices

There is an exhibition going on at The Power Plant called Postscript: Writing about Conceptual Art, featuring a number of contemporary art pieces with a strong connection to the spoken and written forms. I went to see it last Sunday and yesterday, and I think I have now seen all the pieces — not meaning I’ve understood them, of course, just that I’ve seen them.

One of the pieces is an installation consisting of a book with Braille and a video of a blind person reading aloud from that book. Or at least that’s what the description says. The blind person read from multiple spreads in the book, but at The Power Plant the book is locked inside a glass case, so even if I were a blind person I wouldn’t be able to read the Braille.

Except that a person who is not blind can actually read the Braille — with difficulty of course, but for sure can read. Last Sunday when I spotted the piece I tried hard to read it. The lighting (and the fact that it’s in a glass case) makes it really difficult to read, but I actually managed to make out all the words on the spread. I was surprised I could actually read it, but I was more surprised by a couple of other things: First, the Braille is in the wrong language, and second, there are errors in the Braille.

First, anyone who can read some Braille by sight soon figures out the Braille on the book is in English. But the blind person in the video was reading in Spanish. The Braille in the video is virtually impossible to make out, but yesterday I managed to make out two words in the video, and I had no idea what they meant — they were, I assumed, Spanish words. The blind person in the video was reading from a Spanish book, yet the book in the exhibit is in English.

And when I tried rereading it yesterday I couldn’t figure out what the first letter was, and after a few minutes I figured out why: The first symbol was not a letter at all, but the uppercase indicator — a non-English uppercase indicator with two dots, not the one-dot uppercase indicator used in English Braille.

Aside from the two-dot uppercase indicator, when I tried reading it last Sunday I got stuck on a word — or rather a letter: dots 1-2-6. I was thinking “Ugh, I can’t read Grade 2.” Then I realized all other words were in Grade 1, so there couldn’t be a single word that’s in Grade 2. In other words, it wasn’t a Grade 2 symbol at all; it’s a typo. What I saw was just the letter “h”, and the word was just the word “the”.

So why the uncorrected mistake? Is it because whoever made the book (who might or might not be the artist — it might have been just someone helping the artist) thought no one was going to be able to read it so it wouldn’t matter?

Which brings us back to the glass case: Why the glass case? Why make it inaccessible to people who would actually be able to read the book? Is the book with Braille just a gesture? Is the uncorrected mistake borne out of a prejudice?

Another deadline looming and not ready for it

Just got notice that there’s another deadline in two and a half weeks. I really feel this is being rammed through.

Maybe not for others, for those who have succeeded in keeping up with all the previous deadlines (which, in theory, are all reasonable and laudable); but I just barely managed and I’m no longer keeping up. I have barely even finalized my direction, and now I have to formalize this direction which hasn’t even been finalized. I wonder if I’m going to make it ever, and if I do manage to, what kind of work I’ll produce. I suspect it won’t be very good work.

The first professor I talked to (I don’t even remember who that was) who discouraged me and tried hard to talk me out of it was probably right all along.

Why ATutor is inaccessible and always will be

Some time ago I had the chance to talk about ATutor with one of its developers, or perhaps that was not the right word: I had a heated argument with one of its developers was more like it. Until that point, I never knew we hold such divergent views on web accessibility.

The crux of the heated argument was, in essence, ATutor’s reliance on Javascript for one of its most basic and essential functions, namely to log the user in, for what amounts to, technically speaking, no justifiable reason; it was, in a very real sense, a deliberate exclusion put into place. For someone who had primarily been a text browser user until just a few years ago, this was unacceptable, and this was doubly unacceptable when ATutor claims itself to be usable with text browsers.

This is in effect, one could argue, a textbook case of “inaccessible” — it doesn’t matter if you can use its other functions, it is inaccessible if you can’t get in.

I had, and still have, the opinion that if a web site — unless it’s an online game — relies on Javascript for any essential functionality, the site must have serious design flaws somewhere. The flaws might be hidden from view or latent and yet to be discovered, or the flaws might even have nothing to do with the “Javascripted” functionality; but, I maintain, some serious flaw must be present and it must be fundamental, because such use of Javascript demonstrates a fundamental flaw in the developer’s mentality.

This was, or should I say is, not the opinion of ATutor’s developers. To them, Javascript is fair game because any “modern” browser would have it. Besides being insulting (I still consider w3m modern, thank you very much, and people who consider Javascript a security threat still exist), less than a month ago I happened to run across a BBC article about a UN accessibility report on web sites that stated quite bluntly that one of the “key shortfalls” for 73% of web sites tested was that they “relied on JavaScript for important functionality“ because “JavaScript does not work with some screen readers used by those with impaired vision.” [emphasis mine]

Were ATutor tested, the UN testers would have failed it for relying on Javascript for, quite literally, its most essential functionality. This was vindication for me: I was told they didn’t consider Javascript reliance an accessibility problem; the UN thought otherwise.

Some time ago I was told Pina can’t use ATutor: there could not be anything more revelatory than this.

And I still maintain that there is no essential functionality — zero, nada, zilch — in ATutor that absolutely requires Javascript.

What’s worse, I looked at their code base and their code is not amenable to automatic testing. In our program we claim to aim for Agile, but Agile relies in a large part on automatic testing (in the form of TDD or BDD). Short of a major code overhaul, there’s no way TDD could be performed on ATutor’s code. Thus the false claim that ATutor works for text browsers (most likely it used to in an earlier version) when in fact it doesn’t and no one noticed.

Two months ago when I was looking at its code I wrote it was a “genuine piece of crap.” Their developers claim integrating small patches is expensive, but ATutor in its current state can’t be tested; of course the integrations are expensive.

It wouldn’t be an exaggeration to say that the mentality of how ATutor is developed flies directly in the face of everything taught in our program, in particular designing for the extremes and disability as a condition caused by design flaws in the environment. Unless ATutor’s developers have a change in mentality, I don’t foresee ATutor achieving any semblance of true accessibility any time soon, if ever.

My try at automatic fan control on my Macbook

Last week didn’t go very well (missing the last day of publication studio being a major reason), and I seriously felt overheating was a big factor, if not the factor. So I spent the last couple of days hacking up some code for automatic fan control.

So far the code seems to be working. As to whether the triple beeps will now go away, I’ll cross my fingers.

(Many thanks to the people who wrote the smc utility and who wrote all the web pages detailing how to make sense of sleep, hibernation, and all the sensors…)

Institutions vs collectives

Public Action notice outside the Student Gallery

When I saw the notice for the event Public Action at the end of the second week of June, I thought this was something I just had to go to. What more can I ask for? A studio space with equipment to boot (and very possibly mentoring—something I have been dying to get), and it’s about publication even. It felt perfect, except that it was the end of what’s been posted already.

On my way to the Main Building I happened to actually bump into Shannon, the professor who got this whole thing started, and she told me there was actually still two weeks left. Except that, at the end, I still never got a chance to use the studio space. (Would have happened on Thursday, except that a computer breakdown got into the way. Studio fees would have been a problem too, but I guess that was something I was prepared to pay.)

Anyway, there were two discussion sessions in week 4 that I actually managed to go to. So on the Wednesday (June 26) discussion there was an interesting point about the tension between institutions and collectives, and in particular collectives that nominally belong to an institution but are rather independent. The thing is that the institution would want to subsume the collective and own it, even if the collective had been running independently and even if it was large.

Which was a rather strange thing to see being discussed, because I had recently just witnessed this very scenario. (The institution and collective involved, for the benefit of those involved, shall remain nameless.)

So getting back to the discussion and tying it back into what I had witnessed: Would some sort of archive, or archived records, have helped in the collective claiming its rights? I don’t really know.

On the Robart’s bizarre T-card policy

UofT’s Robarts has a T-card policy that I totally don’t understand. And I’m not just saying this as a non-UofT student; I’m saying this is actually a hassle even for UofT students.

So you need a T-card to enter the stacks: In other words, if you are a student who’s studying at a different university, and you found out that you need to take a quick look at a book that Robarts has to write your paper (because your own university’s library happens to not have that book), you can’t just go to the stacks to look at it and then put it back. However, you can request an interlibrary loan.

So instead of keeping the book at Robarts, which guarantees the book to be available to UofT students, the T-card policy forces students at other universities to take the book out of UofT for an indeterminate amount of time (obviously not going to return it early since it’s so much hassle to take it out), virtually guaranteeing that book to become unavailable to UofT students for a needless amount of time. How is that benefitting UofT students?

If someone at Robarts could give a coherent explanation of the T-card policy’s logic I think UofT students will be eternally grateful.

Syndicate content