Who cares about Web accessibility?

I was at a Web development presentation some time ago. The presenters from certain company talked about many competencies needed for development of complex Web applications, such as knowledge of Web standards, JavaScript toolkits, Java programming, databases, photo editing, etc.

Many things were mentioned, but one important competency was completely omitted: understanding Web accessibility, i.e. making the Web applications accessible to handicapped users. So I asked about that. The answer was that understanding Web accessibility is indeed an important Web development competency but quite difficult and the company’s customers (such as banks, insurance companies, phone operators, media groups) don’t ask for it. So the company doesn’t care about it when making the applications.

I couldn’t find a better response than “Thank you for your answer.”. Is the Web development company to blame? Probably not. They are asked to make applications attractive for most users. The customers don’t care whether the applications are attractive or at least usable for handicapped users as well. Why should the Web development company implement features nobody pays for? Perhaps they can just suggest considering accessibility when negotiating with the customers (which they probably don’t do).

So companies want to invest much money into making their Web portals more attractive for the majority while they don’t care a bit that their portals can’t be used by persons with various disabilities. They exclude those users from common life and make their lives even harder.

Probably only law can fix that discrimination. But if you make Web pages or applications, please don’t forget that there are people who can’t see, who are colorblind, who can’t hear, who have reading problems, who have various motor skill impairments. It’s not easy to live with those handicaps, let’s not make lives of those people even harder by building yet another barriers to them and excluding them from the society.

Turris Omnia router

Turris Omnia is an open hardware & free software high performance home router. You can still get it for a reduced price for a few days if you contribute to its Indiegogo campaign.

I think this is a good deal. Although the router is not cheap, it’s worth the money. There are not many alternatives. And Turris is no vaporware, it’s based on a previous product manufactured for a CZ.NIC security research project.

I’m glad the project is successful and we are going to have high performance, reliable and secure home router designed from start as an open device.

Software Freedom Conservancy needs our help

Software Freedom Conservancy makes useful work for free software. One of their important activities is GPL enforcement. Whether you think the principle “I give you my source code and if you further distribute it, do so under the same conditions you originally received it” is right or wrong, the fact that some organizations care a lot about their proprietary possessions while violating the terms of the free software they use is alarming.

If we tolerate stealing GPLed software, we’ll lose another piece of our freedom. I think this is one of very important reasons to support the Software Freedom Conservancy.

Software Freedom Conservancy is certainly not the only organization working hard to protect our software freedom. I’m aware of at least the following important non-profit organizations doing that:

Electronic Frontier Foundation
Defends our overall digital rights, doing very competent, important and useful work in the areas of freedom and privacy.
Free Software Foundation
Promotes free software and computer user freedom, its GNU project was a free software revolution and we might be locked into proprietary software completely today without the work the FSF has done.
Free Software Foundation Europe
Makes some important, especially lobbying, work for software freedom in Europe. IMHO Europe is the place where the future of our civilization may be saved or given up.
Software Freedom Law Center
The lawyers, providing important services related to free software in the areas of licenses, patents, trademarks, etc.
Software Freedom Conservancy
Provides shelter and services to some free software projects and works on enforcing GPL compliance (e.g. Linux).

In my opinion, all these organizations are very important and need sustainable financial contributions from individuals. They do a lot with little. Not everyone can support them all, but everyone who cares about software freedom and can support at least one of those non-profits should do so.

BTW, (limited number of) the Software Freedom Conservancy supporters who sign up by January 31 will count twice.

Capturing Web content from Firefox to Org

Emacs is a powerful tool but it’s better to use other means for Web browsing, such as Firefox. Now the question is how to transfer pieces of Web content from Firefox to Org mode. Org mode already provides means for communication with external applications. org-protocol.el is a general mechanism for importing information to Org mode via emacsclient, but its setup is not instant and I hadn’t bothered to configure it until I met org-protocol-capture-html. The screenshot of the captured content converted to Org markup was irresistible so I decided to give capturing Web content another try.

That attempt reminded me that I hadn’t ranted about software setup and bugs for quite long time here. I’m not going to fix that now, it suffices to say that utilizing a relatively simple function shouldn’t require advanced technical knowledge and/or several hours of googling and experimenting; I really can’t imagine how a non-advanced user could get that thing run without losing his patience at early stages of the process. Well, so I’ll try to make a summary of how I got it working.

Emacs part

I assume you already can use Org mode and emacsclient.

Plain text capture

Add org-protocol to org-modules variable.

Define entry for capturing Web content in org-capture-templates variable, e.g.:

(add-to-list 'org-capture-templates
             ("w" "Web site" entry (file "~/org/notes.org")
              "* %?\n%c\n%:initial"))

Of course, this is just an example. Look at org-protocol.el documentation for another example and for explanation what %:initial means.

If you’d like to use a letter different from w for the template, you can do so but you must replace it in Firefox bookmarklets and helpers below. See also org-protocol-default-template-key variable.

Capture with HTML conversion

First, configure plain text capture as described above. Then fetch org-protocol-capture-html.el from its home page and put it into your site-lisp directory. Add the following lines to your ~/.emacs or other Emacs initialization file:

(require 'org-protocol)
(require 'org-protocol-capture-html)

Note that org-protocol must be already loaded at the time org-protocol-capture-html is loaded, otherwise the corresponding subprotocol won’t be registered.

Firefox part

The easy way

Install Org-capture for Firefox. It allows capturing content without the need to register org-protocol: handler in Firefox. However, org-protocol-capture-html or other custom captures won’t work this way.

The advanced way

The following installs universal capturing mechanism via org-protocol: handler in Firefox. It works independently (with or without it) of Org-capture Firefox extension mentioned above.

Register org-protocol: handler as described in MozillaZine Knowledge Base (replace foo with org-protocol). One important thing they forgot to emphasize is that you must use real link to invoke the application dialog, typing org-protocol:something into the address bar doesn’t work. For your convenience, I provide an org-protocol link here. Select something like /usr/bin/emacsclient in the Firefox dialog as the application handling org-protocol.

Then define your capturing bookmarklets. If you don’t have Bookmarks Toolbar enabled, enable it by right clicking on a Firefox toolbar and selecting Bookmarks Toolbar. Then create new bookmark in Bookmarks Toolbar section and insert the following code as its URL:

javascript:location.href='org-protocol:/capture:/w/'+encodeURIComponent(location.href)+'/'+encodeURIComponent(document.title)+'/'+encodeURIComponent(window.getSelection())

This is for plain text capture. If you want HTML capture, define another toolbar bookmark and use the code from org-protocol-capture-html home page (it’s also available in the introductory comments in org-protocol-capture-html.el) as its URL. Just make sure that:

  • The bookmark URL starts with javascript:.
  • Pandoc is installed.

Now you can (optionally) select part of an HTML page and press one of the newly created bookmark buttons in Bookmarks Toolbar. If everything is set up correctly, the selected part of the page (or just page URL and title if nothing is selected) should appear in your Emacs capture buffer.

Getting rid of Bookmarks Toolbar

If you don’t use Bookmarks Toolbar in Firefox, you probably don’t want to waste screen space on it just for Org capture bookmarks. The remedy is easy, invoke Firefox Customize and drag Bookmarks Toolbar to another place. Alternatively, you can use Custom Buttons Firefox extension.

Notes

Some Web pages can’t be captured, I don’t know why. I have more important things to do than playing with Org and Firefox further.

Another useful Org related Firefox extension is Copy as Org-mode. It doesn’t capture content via org-protocol but can copy some objects such as page or link URLs to kill ring, in the Org format. This is what I used to insert links into this article! It’s easier with this nice helper than performing all the copy&paste&edit by hand.

Privacy Badger

Privacy Badger 1.0 has been released some time ago. If I could install a single Firefox extension only, it would be this one. It’s very easy to use, effective (AFAICT) and doesn’t cause problems; much better than the other privacy extensions I used (although they can still be useful for special purposes). I can recommended using it, as well as reading the FAQ and supporting the Electronic Frontier Foundation (EFF). BTW, another very useful web browser extension by EFF is HTTPS Everywhere. Good work, EFF! Looking forward an Android version as there is currently very little one can do to protect his privacy in Firefox for Android.

I think I want that keyboard (and mouse)

KeyMouse keyboard looks interesting. It seems to be better than any of the other ergonomic keyboards I looked at as it provides all of the following:

  • Everything seems to be reasonably reachable (maybe after remapping some keys).
  • It’s curved.
  • The left and right parts of the keyboard are completely separated, permitting to position the hands freely.
  • Wireless operation.
  • The mouse of course (even better: two mice!), no need to leave the keyboard to use it.

There may be some drawbacks:

  • Stability of the keyboard(s) when typing.
  • Mouse jitter when typing.
  • Not possible to use on one’s lap.

KeyMouse is expensive, but its price is in the price range of other (mouseless) ergonomic keyboards, and the keyboard is still cheaper than a good chair or a good display.

Checoeslovaquia

Our former country, Czechoslovakia, was replaced by two new countries, Czech Republic and Slovakia, in 1993. When I was in Belgium (country separated from the Czech Republic just by a single neighboring country – Germany) several years later they didn’t know where the Czech Republic was but they knew about Czechoslovakia. It’s interesting the change has still not been propagated to some relevant places, even in the area of postal services.

The last FSF bulletin has arrived to me recently with a hand written note below my address on the envelope:

fsf-envelope.jpg

The word “Checoeslovaquia” looks like a Spanish version, maybe it was already added in the U.S. or the letter was mistakenly sent to Chile or the letter arrived to Europe through Spain, who knows. It’s funny that a post officer somewhere didn’t know about the Czech Republic but someone was able to resolve the problem by identifying the target country as the former Czechoslovakia.

Anyway the June FSF bulletin has reached me!

Dunajská vlna & Čankišou

I’d like to promote two of the current music crowdfunding campaigns on Hithit that are approaching their ends. They ask money for new CDs and while they’ve already gathered more than two thirds of the target amounts, they haven’t reached the targets yet (as of today). IMO both the campaigns are very much worth to support.

Dunajská vlna was founded by two members of the former legendary band Dunaj (the best known representative of the so called Brno alternative) and one new member. They’d like to make a CD of Dunaj songs that haven’t been available to buy for long time. They also start working on new music. I’m sure they won’t disappoint us and we can look forward great music of true Dunaj roots.

Čankišou is a Brno band making great music, let’s say some very special sort of world music. They are great on CDs and they are even better live. I’ve been twice at their live shows and they were superb experiences. So if you are in the Czech Republic, I can recommend choosing one of the contributions containing tickets.

25 years of Electronic Frontier Foundation

Electronic Frontier Foundation (EFF) celebrates 25 years of its existence this month. AFAIK the EFF makes a lot of useful work defending civil liberties, fair competition and consumer rights in the areas of computing and the Internet.

One of good ways to participate is to financially support the EFF if you haven’t done so yet. Remember, we must fight for our rights all the time otherwise we lose them.