With self-driving cars in our near future, I’ve seen more and more articles about the moral dilemma of what the car should do when faced with an impossible decision, for example, to either kill a grandmother or drive into a flock of children. In my mind, the pundits are getting it all wrong; the underlying assumption that humans can abdicate responsibility to machines and the car’s behavior must be predictable is plain wrong.
According to the WordPress summary of my site, the most popular post in 2014 was “Should You Learn to Code?”, beating out the perennial favorite “The Single-Vendor Commercial Open Source Business Model”. Obviously, the broader the interest, the more readers.
This morning I read about the call by a German politician to introduce mandatory programming courses into elementary (primary) school. The idea is that being able to program is such a basic culture technique these days that kids should learn it early on.
In my prior piece on learning to code, I answered mostly in the negative. If you are an adult and don’t aim for a career in programming, don’t bother. With children, the story is quite different: I agree that children should learn to program, but as a boost to early acquisition of abstraction skills, and not for programming skills in themselves.
Let me explain.
I just saw an advertisement for software from an anti-virus company, homepage pictured below. The ad showed the woman flirting with the man (licking her lips, sliding her finger along the rim of the glass) while an overlaid text box was saying: “You don’t have to understand it, you just have to install it.” The man was intently talking to her.
Ignoring the derogatory depiction of the woman as a dummy, what I never understood about ads like this: Who are they marketing to? It can’t be women, can it? So they are marketing to men, suggesting men feel good when explaining something to women where they assume they don’t understand much about it? And how does the sexual innuendo help?
The U.S. president Barack Obama wants to learn programming and so does former New York City major Michael Bloomberg. Germany’s chancelor Angela Merkel does not, but reports tell us that her cell phone connection was spied on by the U.S.A. As long as it doesn’t turn out to specifically have been Barrack Obama’s code which cracked Angela Merkel’s cell phone, I’ll stay out of politics and focus on the question: Should you learn to code?
The short answer: No. Don’t waste your time.
The long answer: It depends on your age and your goals.
The confusion arises from different goals you might have for learning how to program. I see the following possible reasons one might want to learn coding:
If you have run into me recently, I may have bugged you with the following question:
Given the rapid pace of development in medical technology, I expect my generation to live to 100 years of age. A child being born today may live to the age of 250 years of age. Under this assumption, what health issues do I need to watch out for most to achieve that age?
I have little scientific fact to backup the assumption; it is based solely on my perception of the acceleration in medical technology today. Once you make the assumption that the average life span may be growing rapidly, you start to wonder how to take advantage of it. Or, put another way: What are the parts of your body should you be caring for most?
For example, I see three layers:
- Mechanical stuff. If you have a bad knee, I expect that this will be fully fixable within the next 10-20 years or so. It seems to me to be a purely mechanical issue.
- Systemic stuff. More difficult to fix, if anything goes wrong, are systemic issues, for example, arthritis or a bad lung. It is not clear to me how easily this can be fixed.
- The brain. At the high end sits the brain. Things that can go wrong are illnesses like Alzheimer or Parkinson, but also loss of energy to live. How to avoid those?
These are all hypotheses, but the question is real. What are the most difficult things for medical technology to tackle and how to avoid that they’l become a problem once we are starting to live longer and longer lives?
I’m at Wikimania 2013, listening in on the WikiData session. WikiData is the Wikimedia Foundation’s attempt to go beyond prose in Wikipedia pages and provide a reference data source. An obvious problem is that any such data source needs an underlying model of the world, and that sometimes it is not only hard to gain consensus on that model, sometimes it is impossible. Basically, different world-views are simply incompatible. When asked about this fundamental problem, the audience was told that such inconsistencies are handled using multi-valued properties. Ignoring for a second, that world-views cannot be reduced to individual properties, my major point here is that world-views are not inconsistencies in the data. Different world-views are real and justified, and there will never be only one world view. The moment we all agree on one world-view, we have become the borg.
Update: Daniel Kinzler corrected me that this must be a misunderstanding: WikiData can handle multiple world views well by way of multi-valued properties.
The WikiSym + OpenSym 2013 proceedings have been made available online. Please see below for the table of contents, including through-clickable papers. All papers listed can be cited as appearing in the Proceedings of the 9th International Symposium on Open Collaboration (WikiSym + OpenSym 2013). ACM, 2013.
Abstract: The organic growth of wikis requires constant attention by contributors who are willing to patrol the wiki and improve its content structure. However, most wikis still only offer textual editing and even wikis which offer WYSIWYG editing do not assist the user in restructuring the wiki. Therefore, “gardening” a wiki is a tedious and error-prone task. One of the main obstacles to assisted restructuring of wikis is the underlying content model which prohibits automatic transformations of the content. Most wikis use either a purely textual representation of content or rely on the representational HTML format. To allow rigorous definitions of transformations we use and extend a Wiki Object Model. With the Wiki Object Model installed we present a catalog of transformations and refactorings that helps users to easily and consistently evolve the content and structure of a wiki. Furthermore we propose XSLT as language for transformation specification and provide working examples of selected transformations to demonstrate that the Wiki Object Model and the transformation framework are well designed. We believe that our contribution significantly simplifies wiki “gardening” by introducing the means of effortless restructuring of articles and groups of articles. It furthermore provides an easily extensible foundation for wiki content transformations.
Keywords: Wiki, Wiki Markup, WM, Wiki Object Model, WOM, Transformation, Refactoring, XML, XSLT, Sweble
Reference: Hannes Dohrn, Dirk Riehle. “Design and Implementation of Wiki Content Transformations and Refactorings.” In Proceedings of the 9th International Symposium on Open Collaboration (WikiSym + OpenSym 2013). ACM, 2013.
The paper is available as a PDF file.
November 18-19, 2013, Berlin
“Open data has the potential to transform society, government and the economy, from how we travel to work to how we decide to vote,” declared Rufus Pollock, co-founder of Open Knowledge Foundation, at the 1st International Open Data Dialog, which took place in December 2012 in Berlin.
With this year’s motto THINK OPEN, THINK BUSINESS the Dialog emphasizes the high potential of Open Data for businesses. The dialog likes to challenge our view that open data is not only a matter for administration, but also for enterprises, NGOs and science. No one will be able to take this step on his own. Administrations, economies, and societies must come together to open up the potential of data.
As in the past year, we invite all free thinkers from industry, civil society, government and research institutes to join the dialog and to share your ideas and projects with other open data enthusiasts. We invite you to give your ideas, approaches or results for example on, but not excluding: Opening, transforming or visualizing data – Data research or journalism – Data to support transparency and participation – Open data platforms and tools – Data-intensive services and applications – Secure integration of open, closed and private data – Business cases and legal settings.
We are seeking proposals for presentations, demonstrations, workshops and tutorials for the 2nd Open Data Dialog, November 18-19, 2013.
Sumission Deadline: July 15, 2013
The English Wikipedia is currently embroiled in a debate on sexism (local copy), because of classifying female American novelists as “American Women Novelists” while leaving male American novelists in the more general category “American Novelists”, suggesting a subordinate role of female novelists. I find this debate regrettable for the apparent sexism but also interesting for the technology underlying such changes, which I would like to focus on here.
With technology, I mean bureaucratic practices, conceptual modeling of the world and Wikipedia content, and software tools to support changes to those models.