We're living in strange days indeed. The Web Incubator Community Group (WICG) is apparently working on a WebUSB API specification. As far as I understand from just skimming over this, it will only support devices specifically manufactured to be supported by browsers. This is a little sad. I was hoping …
read moreOther articles
Cancelled almost all my subscriptions
Over the last two years, I cancelled almost all my regular subscriptions.
Sky
I used to have a Sky-Action subscription. For about a year or so, I really enjoyed the fact that I could watch an action movie 24/7. However, after a while, my attitude towards modern action movies …
Please delete me from Planet
Wow. Hi Debian. Apparently, you've changed even more in a direction I personally never really liked. As a member of a minority group, I feel the need to explain that I highly dislike the way you are currently handling minority groups. And no, I dont feel you are ignoring them …
read more"Learning from machines" by Ashi Krishnan
I need to share this talk by Ashi Krishnan because I think it is very well done, and I find the content extremely fascinating and interesting.
If you are into consciousness and/or dreaming, do yourself a favour and allocate 40 minutes of your life for this one.
Thanks Ashi …
read moreThe lang= attribute in HTML
Debian on a synthesizer
Bela is a low latency optimized platform for audio applications built using Debian and Xenomai, running on a BeagleBoard Black. I recently stumbled upon this platform while skimming through a modular synthesizer related forum. Bela has teamed up with the guys at Rebel Technologies to build a Bela based system …
read moreRolling Acid - A eurorack improvisation
After more then half a year of researching and building up my dream accessible groovebox, it begins to emit (IMO) sounds that I like and sometimes even love.
Yesterday evening, while experimenting a bit with parallel filters, I suddenly hit a certain sound that I couldn't resist and record a …
read moreI pushed an implementation of myself to GitHub
Qt 5.11 will fix major issues with JAWS on Windows
If your software should be cross platform and accessible, forget about Qt
A few years ago, I started to write software which primary audience is going to be blind musicians. I did a small presentation of the UI at DebConf15.
Most of the functionality is in a compiler-alike backend. But eventually, I wanted to create a user interface to improve the interactive …
read moreSquarepusher's Shobaleader One
I recently was lucky enough to see one of my long-time favourite drum and bass artists live! Squarepusher! I know and love his music since the late 90s.
My girlfriend got us tickets for the Shobaleader One performance at Progy & Bess in Vienna. It was fantastic! 90 minutes of high …
read moreUpgrading GlusterFS from Wheezy to Stretch
We are about to upgrade one of our GlusterFS-based storage systems at work. Fortunately, I was worrying about the upgrade procedure for the Debian packages not being tested by the maintainers. It turns out I was right. Simply upgrading the packages without manual intervention will apparently render your GlusterFS server …
read moreA Raspberry Pi Zero in a Handy Tech Active Star 40 Braille Display
TL;DR: I put a $5 Raspberry Pi Zero, a Bluetooth USB dongle, and the required adapter cable into my new Handy Tech Active Star 40 braille display. An internal USB port provides the power. This has transformed my braille display into an ARM-based, monitorless, Linux laptop that has a …
read moreScraping the web with Python and XQuery
During a JAWS for Windows training, I was introduced to the Research It feature of that screen reader. Research It is a quick way to utilize web scraping to make working with complex web pages easier. It is about extracting specific information from a website that does not offer an …
read moreBraille Music Compiler
Generating C++ from a DTD with Jinja2 and lxml
I recently stumbled across an XML format specified in a DTD that I wanted to work with from within C++. The XML format is document centric, which is a bit of a pain with existing data binding compilers according to my limited experience.
So to learn something new, and to …
read moreBlind through the night
ccidentals in Haskell
I've had quite some fun recently (re)learning Haskell. My learning project is to implement braille music notation parsing in Haskell. Given that i've already implemented most of this stuff in C++, it gives me a great opportunity to rethink my algorithms.
Not everything I've had to implement until now …
read moreBjarne Stoustrup talking about organisations that can raise expectations
At time index 22:35, Bjarne Stroustrup explains in this video what he thinks is very special about organisatrions like Cambridge or Bell Labs. When I just heard him explain this, I couldn't help but think of Debian. This is exactly how I felt (and actually still do) when I …
read moreA C++ sample collection
I am one of those people that best learns from looking at examples. No matter if I am trying to learn a programming pattern/idiom, or a completely new library or framework. Documentation is good (if it is good!) for diving into the details, but to get me started, I …
read moreI am sorry, but this looks insane
I am a console user. I really just started to use X11 again about two weeks ago, to sometimes test an a Qt application I am developing. I am not using Firefox or anything similar, all my daily work happens in shells and inside of emacs, in a console, not …
read moreWhy is Qt5 not displaying Braille?
While evaluating the cross-platform accessibility of Qt5, I stumbled across this deficiency:
#include <QApplication> #include <QTextEdit> int main(int argv, char **args) { QApplication app(argv, args); QTextEdit textEdit; textEdit.setText(u8"\u28FF"); textEdit.show(); return app.exec(); }
(compile with -std=c++11).
On my system, this "application" does not show …
read moreCall for Help: BMC -- Braille Music Compiler
Since 2009, I am persuing a personal programming project. As I am not a professional programmer, I have spent quite a lot of that time exploring options. I have thrown out about three or four prototype implementations already. My last implementation seems to contain enough accumulated wisdom to be actually …
read moredeluXbreed #2 is out!
The third installment of my crossbreed digital mix podcast is out!
This time, I am featuring Harder & Louder and tracks from Behind the Machine and the recently released Remixes.
- Apolloud - Nagazaki
- Apolloud - Hiroshima
- SA+AN - Darksiders
- Im Colapsed - Cleaning 8
- Micromakine & Switch Technique - Ascension
- Micromakine - Cyberman (Dither Remix)
- Micromakine - So …
Data-binding MusicXML
My long-term free software project (Braille Music Compiler) just produced some offspring! xsdcxx-musicxml is now available on GitHub.
I used CodeSynthesis XSD to generate a rather complete object model for MusicXML 3.0 documents. Some of the classes needed a bit of manual adjustment, to make the client API really …
read moresoundCLI works again
I recently ranted about my frustration with GStreamer in a SoundCloud command-line client written in Ruby.
Well, it turns out that there was quite a bit confusion going on. I still haven't figured out why my initial tries resulted in an error regarding $DISPLAY not being set. But now that …
read moreGStreamer and the command-line?
I was recently looking for a command-line client for SoundCloud. soundCLI on GitHub appeared to be what I want. But wait, there is a problem with its implementation.
soundCLI uses gstreamer's playbin2 to play audio data. But that apparently requires $DISPLAY to be set.
So no, soundCLI is not a …
read moreA simple C++11 concurrent workqueue
For a little toy project of mine (a wikipedia XML dump word counter) I wrote a little C++11 helper class to distribute work to all available CPU cores. It took me many years to overcome my fear of threading: In the past, whenever I toyed with threaded code, I …
read moreexercism.io C++ track
exercism.io is a croud-sourced mentorship platform for learning to program. In my opinion, they do a lot of things right. In particular, an exercise on exercism.io consists of a descriptive README file and a set of test cases implemented in the target programming language. The tests have two …
read moreCroudsourced accessibility: Self-made digital menus
Something straight out from the real world: Menu cards in restaurants are not nice to deal with if you are blind. It is an old problem we grow used to ignoring over time, but still something that can be quite nagging.
There are a lot of psychological issues involved in …
read moreI love my MacBookAir with Debian
In short: I love my MacBook Air. It is the best (laptop) hardware I ever owned. I have seen hardware which was much more flaky in the past. I can set the display backlight to zero via software, which saves me a lot of battery life and also offers a …
read moreFour new packages on the GNU Emacs Package Archive (ELPA)
Slashdot did not improve
I used to read Slashdot, many many years ago. However, when they started to do more and more "Your rights online" articles, I gradually stopped to read them.
Someone just sent me a link to a slashdot article: m.slashdot.org. If I try to open this with Lynx, I …
read moreC++14 Lambdas
The aaddition of lambdas in C++11 has greatly improved the flexibility of the language as a whole. C++14 will add a few more abilities.
C++ Truths has a very nice and brief overview of what C++14 will allow. Part 1 goes from the very basics via closures …
read morePlanet bug: empty alt tags for hackergotchis
There is a strange bug in Planet Debian I am seeing since I joined. It is rather minor, but since it is an accessibility bug, I'd like to mention it here. I have written to the Planet Debian maintainers, and was told to figure it out myself. This is a …
read moreAccessible single-player texas hold'em poker for iOS
I have been looking for an App like this since I got my first iOS device in december 2011. Finally, it is here! A single-player (bot-driven) poker app for iOS, THETA Poker Pro, fully accessible and usable with VoiceOver. AppleVis has a review.
It doesn't happen very often, but App …
read moreEmacs Chess
Between 2001 and 2004, John Wiegley wrote emacs-chess, a rather complete Chess library for Emacs. I found it around 2004, and was immediately hooked. Why? Because Emacs is configurable, and I was hoping that I could customize the chessboard display much more than with any other console based chess program …
read moreAccessible voting graphs
It is that time of the year again, Debian is electing the Project Leader for 2014/15. Whenever a Debian vote is in progress, I find myself rather happy to rediscover that Debian is providing text mode voting graphs. These are quite accessible to me as a braille user. It …
read moreDemonstrating a common m17n a11y problem with a web audio game
There is a rather infamous multilingualisation bug in almost every screen reader I have ever used. As a german native speaker, I usually set my operating system user interface language to german. However, since I do a lot of technical work, I frequently end up on english websites. But if …
read moreAccessible DNS hosting with LuaDNS
grub-efi-amd64 on a MacBook Air
Living in RAM
Personal mail server
I am a programming language
I love learning about programming languages. But this one really took me by surprise.
Yes, apparently there is a BrainFuck alike two-dimensional esoteric programming language called MarioLANG.
And GitHub even has an implementation written in Ruby.
I should really allocate a bit of spare time to write at least something …
read moreEnhancing Hub to support GitHub social features
In my article Contributing on GitHub I recently explained that I can not use certain social features of GitHub on their website directly. I also explained that I make great use of Hub to circumvent some accessibility issues I have with GitHub.
Well, it turns out that adding star, unstar …
read moreContributing on GitHub
I really like to read code written by different people. I've always been the type of learner that can cover a lot of ground by looking at examples. A few of the programming tricks I acquired over time have definitely been learnt by reading programs written by other people. There …
read moreType erasure
Andrzej's C++ blog has a nice series on type erasure. I found it interesting to read and have learnt some things from it. For instance, I vaguely guessed, but did not fully realize, that std::function<> is of course a performance hit, since the way how std::function<> is implemented …
read moreRoughly 1500 source packages have possibly broken links in debian/control
There are currently roughly 1500 source packages in Debian which possibly (very likely actually) do have broken URLs in debian/control.
While it is quite useful that we have VCS information and Homepage URLs in the Packages file these days, we also created a rather big source of bitrot. These …
read moreboost::python and boost::variant
I have unsuccessfully tried to find a solution for the following problem on the internet several times. Now that I have come at least closer to a usable approach, I thought I'd document what I have found so that others trying to achieve a similar thing can use this as …
read moreSolara: Fun with accessible RPGs on iOS