jump to navigation

Party Politics and the Emperor’s Plain Clothes 24 August 2013

Posted by Oliver Mason in Uncategorized.
Tags: , , ,
add a comment


On Twitter I came across a link to the (German) CDU Wahlprogramm in “Leichter Sprache”. This is the conservative party’s election manifesto in a German version of basic English, to make it more easily comprehensible to people who have difficulty understanding standard German.

At first I thought it was a parody, as it sounded truly ridiculous and patronising. As if you had to explain to your 4-year-old what the world was like. Then I found out about the “Leichte Sprache” (literally: “easy/plain language“), which I had not heard of before. And in principle it is a noble thing to do, to make your manifesto more accessible. I’m sure George Orwell would approve!

But the real reason why it does seem strange is rooted in the nature of political language: normally, language is used to obfuscate and manipulate, especially in complex areas such as politics. Fancy words are used to disguise true intentions and get people to vote for you. But take away the fancy words and complex phrases, and suddenly all is out there in the open, plain to see for everybody. And it turns out to be pretty meaningless. “Everybody should have a good job. And earn enough money. That needs to be written down.” But no mention about minimum wage or anything concrete to turn those vacuous phrases into reality.

Some other people on twitter reacted in the same way as I did; often I guess out of the same ignorance of the “easy language” concept. That’s a shame, but partly rooted in the patronising way the sentences come across. But it also shows that the (undesired) outcome of this publication is that people tend to not take the content seriously. Because there is not much of it.

Critical Discourse Analysis would lose a big part of its subject area if politics would switch wholesale to “easy language”. No more subconscious manipulation between the lines, no more obfuscation about who does what to whom. So after some reflection I applaud the CDU for making their manifesto available in this way, as it unmasks them as the patronising right-wingers they are, with their overly simplistic world view about pretty much any subject area in current politics. No more hiding behind fancy words that foreigners are not welcome. No more vague claims about surveillance cameras stopping crime. It’s all there, in plain language. And other parties seem to have done the same.

Now the only thing that needs to go is the disclaimer at the beginning: that this plain version is not the real manifesto, and only the real one does count. I would prefer it to be the other way round.


Every Test is Valuable 17 July 2012

Posted by Oliver Mason in Uncategorized.
1 comment so far

After reading Graham Lee’s Test-Driven iOS Development; (disclaimer: affiliate link) I have (again) adopted a test-driven approach to software developing. Whenever I create a new class I write a bunch of tests exercising the class’ properties. One might question the value of this, because there is not really any reason why those should not work. However, having such a test in place just uncovered an as-yet unnoticed bug I introduced in a project.

Originally the class property in question was going to be set in the `init` method, so I tested for the presence of the property after creating an instance of the relevant class. Easy pass. Weeks later I did something (and forgot to run the test suite). Today I did something else, and this time I did run them. Hey presto, failed test. And completely unexpected, because it was the property exercising one. How on Earth did that happen?

Upon closer inspection I tracked it down to a refactoring, where I extracted some code from `init` as there were now multiple ways an object could be initialised. The failing code was part of that, and I realised that it was called from the new `initFromFile:` method, but *no longer from the default initialiser*. Easy mistake to make. And had I run my test-suite more consistently, my application would not have been with a potential bug in the mean-time.

What did I take home from this?

  • Even Mickey-Mouse-tests are valuable. No test is too small to be useful (provided it’s actually testing something valid).
  • The test-suite should really be run after every change. I’ll have to check if I can get Xcode to run them automatically after each compilation…

On-line versus Paper 22 April 2009

Posted by Oliver Mason in Apple, iphone, programming, Uncategorized.
add a comment

DAY 4, and the textbook I ordered arrives from Amazon. (I’ll skip days on which I don’t do anything iPhone-dev related). The book looks good, and I now finally understand more about the connections between InterfaceBuilder and XCode. And why my attempts at displaying stuff in an UIWebView didn’t work: it’s all in the connections between interface components and variables in the code. Using graphical tools when you’re not used to them can be tricky.

This I think is the most important aspect in all this: previously my development environment (for pretty much the past 15 odd years) was vi (actually, vile) and a command-line version of either gcc or javac. I am so not used to IDEs, and all the things you won’t find in files. But I have to admit that using IB can greatly speed up the process of laying out applications.

On the telly and web I hear more stories from people making a killing with iPhone apps. Nice, though I have no illusions, as the kinds of things I’d be working on are fairly niche-type products. And I don’t even know how far I get, as I’m only doing it in my spare time. If it becomes too time-consuming I will probably not get very far.

Still, it would be nice to have a finished product in the App-store!

The book, btw, is an easy read. And apart from learning about the iPhone itself there is also a lot of getting used to the Mac style of doing things. Somehow a completely different world. And Objective-C has its own idioms. And on the iPhone there’s no garbage collection– that was always one of the biggest arguments for abandoning C++ in favour of Java, no more segmentation faults. Much fewer bugs, a whole category of them wiped out without any extra effort on my part. So back to manual transmission we go.

The main question when buying Beginning iPhone Development for me was whether it was going to be worth it. And given my lack of experience of developing for an Apple platform I’d say it is. And having it all in front of you in a book is still better than trying to find it yourself on the web, even if all the information is out there somewhere. Books are still more convenient than electronic documentation, at least for textbooks; reference material might be different.