Challenges ahead

Every year I set out to learn something new, and just to keep a memory of that and maybe for you to hold me to what I “promised” I’d like to post it here.

Last year’s challenge

Last year saw an end to a tradition at least in some sense. Usually one of the challenges I set myself is to learn an new language. Which in the past meant a new programming language, see below. For the last 27 years that meant that I sit down in the beginning of the year select one language and go through with learning it. Since the first programming language I ever learnt was Common Lisp with the age of 6 years, it most of the time took only have a year to do that. There is some merit to learning something bizarrely abstract first and seeing everything as a concretasation of that. This year that somewhat went south with python.

Python

You probably would have guessed I would have Python under my belt long ago, but it never seemed to be the right choice. Can’t really say why. Last year it seemed like every new topic with a technical solution had Python as any part of it may it be data visualisation, data journalism or type design. I thought it might be a good idea to learn it myself.

Actually this failed miserably for me and I think it’s due to the same reason Python is a perfect language as a first programming language. There are no surprises, there was no new concept I didn’t have encountered in a language I learned before. This might be due to me not digging deep enough, but I think/hope this is deliberate. There are some quirks with Unicode, but which programming language doesn’t have those. The next problem for me was, there seems to be no book “Python as your 27th programming language” every book and resource, tried to explain to me how to program and on the side explain Python to me. This is perfect if this is your first programming language, but if you just want to learn syntax and semantics it bares the danger of boring you out of your mind, as it did with me. So after about 3 weeks I quit, which is unfortunate, I will have to make another attempt later.

Nevertheless I still managed to learn a new programming language.

Javascript

I had obviously copied javascript snippets for some “cool” website effects before and had used it for map-reduce in CouchDB. What I hadn’t done was bother to learn the language by heart. But after Node.js gained traction in my surrounding last year, I saw there is more to it than just little effects on website. So I set out to learn Javascript and what better than a real challenge to begin with it. I volunteered to hold a AngularJS Talk within 8 weeks of starting to understand what Javascript was. Basically a Scheme with a C like syntax, but don’t tell anyone they might get scared off. So after 14 weeks I held a talk where I could write complex code within AngularJS, 10 weeks later I was able to write and optimise code in Node.JS and by now I know another reason to dislike Internet Explorer. So in the end it worked out to learn a new language, I’m only dissatisfied that it wasn’t the one I was originally aiming for.

This year’s Challenge

For this year’s challenge I thought I switch the theme, or at least change the direction a little. For the last 27 years I tried to learn a new language every year. And for the last 27 years these challenges where always to learn a new programming language, as this somewhat failed this year at least in the sense I’d like to have had it, I this time try to learn a natural language instead.

Norwegian

I’d like to learn Norwegian, and before anyone says anything, I already now that it’s not Norwegian but Bookmal. I have no explanation why I choose this except maybe to be somewhat original and not learn Japanese like all the other Nerds. I have almost no connection to Norway what so ever, have never seen Norwegian television and have probably never been exposed to more than a few sentences. But I’m somehow under the impression that there is a familiarity to German. Actually while writing this I already have some course material and have had a look into some television. So this is not only a impression anymore. Let’s see what I will post in one years time about this topic.

UX

The other challenge I thought I give myself, is to learn UX or User Experience Design, I deem it a skill anybody who is involved with programming anything should know at least a little about. I actually knew almost nothing about that two days ago by now I have read half a book on it and slowly getting a grip on it. So I can’t really say much more but this will obviously be a topic to post about in this blog in the future.