I’m knitting again. This time I’ve chosen an ambitious project: a lovely lacy cardigan.

I like knitting, and I’ve knitted a number of projects over the years, but most have been slightly “off”, one way or the other. Years ago I knitted an entire sweater that, when I’d finished it, just didn’t suit me – it wasn’t the right pattern for me. I still have it because I haven’t had the heart to throw it out, but I never wear it. The hat I made for Ingrid last year was too thin and floppy – not the right yarn. She rarely wears it. A hat I tried to knit for Adrian last winter came out too small; he never wore it.

I’m hoping this one will be different and will come out the way I picture it.

Adrian is starting at nursery. It’s going so-so.

The schooling in started two weeks ago. He liked the nursery but only as long as Eric was with him. They kept at it, then lost a few days to illness last week, and continued this week.

Most of this week was a mess. Adrian refused to eat lunch at nursery. He has been sort of picky recently but now he refused all food, even bread and bananas and other things that he normally loves. Naturally he was ravenous during the afternoons and evenings – and nights, too, so he’d wake hungry at around 5 in the morning, and have trouble going back to sleep.

So he was tired before the day even started. And he barely slept at nursery – woke from his naps after 40 minutes, instead of the hour and a half he’d normally sleep. He woke crying and tired and unhappy, but wouldn’t even consider going back to sleep. Eric would put him down for a second nap when they got home from nursery, but even so he was really tired by 7 and was out like a light the moment he finished nursing in bed.

Just as I was starting to wonder what we’d do next, he/they/we seem to have turned a corner. Today he was at nursery without Eric, for over 5 hours. He both ate and slept properly while he was there. He’d woken too early from his nap but actually gone back to sleep – and then woken contentedly some time later.

The staff at the nursery have been absolutely lovely, doing their best to make him feel happy and secure there. When they saw the meals were a struggle, they let him be: they opened the door to the lunch room but didn’t try to bring him to the table. Today he wandered in and out and finally found some toys to play with on the lunch room floor. When he was happy there, they brought him a bowl with some pasta and sweetcorn. If Adrian won’t come to the food, the food will come to Adrian… even if it is in the middle of the floor. And he actually ate some. When it was time for the mid-afternoon snack he went to sit with the rest of the kids at the table and ate one whole banana and two large sandwiches.

Fingers crossed for Monday.

Yesterday a reader commented on my old post about Excel VBA interview questions. As I am, again, spending a lot of my time trying to recruit another developer, I thought I’d tell you about what my current interview plan looks like.

What we’re looking for is a reasonably senior web developer. We’re a small software company with just a handful of developers, so we need someone who can pull their own weight, with no hand-holding or detailed management. Everyone is expected to not just code but also contribute meaningfully to discussions about design and architecture. They also need to share our values and mindset – to value code quality, maintainable code, good design.

The interview is complemented by a coding task, where I email the candidate a 1-page specification for an application and evaluate the code they send back. I therefore spend very little of the interview talking about detailed technical matters. The interview is for me to judge their aptitude and attitude at a higher level.

This is not an interview script. I wouldn’t ask these questions top to bottom. It’s more of a checklist for areas that I try to cover during an interview. This is also not a prioritized list.

For the rest of this post, “you” refers to the candidate.


1. Fit

What kind of a job are you looking for? What kind of company would you like to work for? What is important to you in your work? Why are you looking for a new job?

What I’m trying to establish here is whether the candidate would fit our firm. If they are looking for a fast-paced competitive environment, or a firm with international opportunities, they’re not for us.

What would you like to be doing in 5 years’ time? What do you enjoy most about programming? Have you been involved in requirements or testing in your previous projects?

This is to detect the wannabe project managers and business analysts, and people who are aiming for a managerial role. Nothing wrong with those, but we won’t be able to offer them a meaningful career path in our company. This is also to detect the pure programmers who have no interest in anything outside of code, who will consider testing and requirements work and usability studies to be “not their job”.

2. Passion, learning, interest

How do you keep up with current topics within the industry? Do you read any books? Blogs? Do you do any programming in your spare time? What’s your favourite tool?

Here I try to figure out whether programming is “just a job” for them, or whether they are truly interested in and passionate about writing software. It isn’t necessary for the candidate to do all of this, to read books and blogs and have hobby projects – but if they do none, it’s a great big warning sign.

3. Technical insight, critical thinking, big picture thinking

Explain the purpose of a recent project you worked on. Explain the design and the architecture. What choices and alternatives were considered? Why did you make the choices you made? What would you do differently if you had to do it again?

This separates the “drones”, the passive followers from the active minds. Even if the candidate wasn’t in charge of the project they describe, they should be aware of design choices and trade-offs.

Did you use an Agile process? What were the advantages and disadvantages? Did you use test-driven development, or unit tests or automated tests of any kind? How did that work?

If in this day and age the candidate has nothing to say about unit testing, they are not for us.

4. Some technical questions

This is a bit of a smorgasbord; I pick the areas that are relevant for the candidate’s area of strength. SQL and OOP for back-end developers and JavaScript and CSS for front-end candidates.

The home coding task tests general programming skills. Here I focus more on the specific technologies we work with. This whole area also ties in with #3, i.e. their ability to make trade-offs and informed choices.

OOP: Explain to me a design pattern that you have found useful. Why? Explain to me the purpose of the Single Responsibility Principle.

ASP.NET: Explain to me some different ways to save state between page requests. What are the pros and cons of each one? Which ones did you use in your last project? Why?

SQL: I give them an example table and ask them to write or dictate to me some simple queries against that table.

JavaScript: Explain callbacks, and why they are useful. Explain closures, and why they are useful.

CSS: Tell me about what you would use to build a page. Divs or tables? Why? How can you position a div – how can you center it, put it in a specific position on the page, etc.

5. Leadership and self-leadership

What was your role in the project? What were you responsible for? What are your weaknesses?

We need people with drive and initiative, who are able and willing to take on significant responsibility. The weaknesses question is mostly a basic indicator of self-insight.

Last month Adrian learned to walk. Now he’s already doing his best to run. Waddle waddle toddle toddle, faster!

He’s starting to talk more. Often he says long streams of sounds that are totally meaningless to us but the intonation is such that it sounds like sentences. I don’t know if it means something to him or whether he is just mimicking the sound of speech.

But he’s also saying actual words now. He has däddä and mämmä for daddy and mommy – and he shouts for däddä when he’s at home with Eric, and for mämmä when it’s night. There’s titta (“look”), deddä for det där (“this”) and lampa. He has some approximate version of kinni (“closed” in Estonian) which is what he says when he opens and closes my fleece during nursing. Babba means banana (his favourite food) but he also uses it for other fruit. He is pleased when he manages to make himself understood.

He so wants to be a part of our life, to join in all our activities, to help, to do like we do.

It’s particularly visible in the kitchen. In the morning when we go downstairs he goes to the pantry and takes out the porridge oats. He brings them to the kitchen counter and then opens the cupboard and takes out the saucepan I usually use for porridge. (Not just any saucepan but the right one.) Then he stretches up his arms and shouts, to tell me that he now wants to be up on the counter to help me make porridge.

I lift him up and open the bag of oats. I get out two measuring cups, one for each of us. He puts his hand in the bag, takes out some oats, puts them in the cup, empties the cup in the saucepan, and repeats this as long as I am also measuring the oats.

Then I turn on the tap and he does the same with water. Sometimes he misses. In fact he misses pretty often – if he pours 8 dashes of water, one of them will probably end up on the counter or on himself, because he gets distracted. But most of it goes in the saucepan. With the oats I do most of the measuring because his method is too slow for my taste, just a tiny handful of oats every time. But with water he can do the work and I focus on counting. Half a decilitre… another half… a dash… almost full, so we’re now at about two… two and a half…

When I cook dinner (which I don’t do very often, as this has been Eric’s responsibility on weekdays) he picks and inspects the veggies, hands me potatoes from the bag, tastes the sweetcorn, etc. Adrian sitting on the kitchen counter is now a most natural part of the cooking process for me.

His absolute favourite in the kitchen is the microwave oven. It beeps! It has lights and buttons! The insides rotate! You can make things happen! The moment I turn it on, he rushes to the step stool and starts pushing it towards the microwave, almost crying with frustration at the lost seconds.

We have a very simple, child-friendly microwave, with just two knobs to turn: one for power, one for time. I tell him not to touch the power knob but I’m not too strict about the time knob – especially since he almost always turns it towards zero, so the oven stops too early rather than overheating the food. It’s like with him measuring the water: he randomizes it, and I keep track of a rough total in my head, and adjust. And of course there’s the door which is pure magic. Close it, and the light goes on and the plate starts rotating. Open it, and the oven goes off.

When the microwave oven is empty and I’m not using it, he is not interested in it.

Other buttons and machines are also interesting, especially when they make sounds or lights. The toaster, lamps, phones, heaters, the clock radio, the baby monitor, the stereo… One afternoon I thought the house felt cold, and upon inspecting the heaters, discovered that he had turned off three of the four heaters he can reach.

He likes opening and closing my computer, to hear it whirr to life and see the screen light up, and to yank out the power cord. He never puts it back in, and often gets upset when I do so. I think he actively dislikes that little indicator light. The keyboard doesn’t interest him much; he hasn’t yet understood that what he does affects things on the screen.

He is helpful and co-operative outside the kitchen, too. He wants to do right. He pushes the safety gate closed when we go upstairs. He pulls down the toilet paper for me. He puts his arms in the sleeves of the pyjamas when I hold them open for him, and tries to brush his hair.

The one thing he doesn’t often co-operate with is nappy changes. Those he hates, and I often have to hold him down while he screams and writhes. But recently he’s actually voluntarily walked to the changing mat and sat down on it when he’s had a dirty nappy, so it may be that we will have less screaming in the future.

In general he’s pretty well aware of the signals of his body. If he doesn’t want clothes, I let him be naked – and when he gets cold, he takes his trousers and tries to put them on (around his neck) or hands us his socks. He refuses mittens when going out, but then reaches for them when his hands get cold. If he is hungry he goes to the pantry or the fruit bowl and demands food. If he isn’t tired in the evening, I prep him (night nappy, pyjamas, toothbrush) and let him potter around. When he feels tired he will go to the staircase (the bedroom is upstairs) or wave good night to us, and then happily walk upstairs to go to bed. Unlike Ingrid, who will claim that she is not at all tired! even though she is falling over from tiredness.

He still eats unevenly throughout the day. Usually he barely touches his breakfast. Lunch and afternoon meal are usually his largest, although sometimes he skips lunch too and then eats throughout the afternoon. It used to be that he’d try almost everything we served, but now his diet has become pretty limited. Bread of all kinds, fruit – especially banana but also other kinds – and occasionally lots of meatballs.

Other food we put in front of him he mostly ignores. If we actively offer it to him – whether on a spoon or in our fingers – he recoils, peeks suspiciously at the food and then looks as if we were trying to poison him.

For some reason it’s different with drinks. He has been very interested in trying the stuff we drink, rather than just his plain water. He’s tried diluted apple juice (our usual mealtime drink) and oat milk, and liked both.

With this diet he has pretty much gone back to eating with his hands only and ignores spoons and forks. On the other hand he has now learned to drink from normal glasses and two-handled cups. The sippy cup still comes in handy at night or when we’re out and about, though.

Other stuff:
He’s jealous. When Ingrid is sitting in my lap he butts in and tries to push her out of the way.
He likes fridge magnets. For some reason he often puts them in the dishwasher.
He likes it when we mimic him – when he gets us to laugh, to clap our hands, or to put our arms up.

He started nursery a few days ago. We’re still in the schooling in period, but from next week he’ll be there for real. Eric’s been taking care of the schooling-in so I don’t have much to say about this.

A lot of this past month has been taken up by the Christmas holidays, pushing all normal routines to the side.

One of our projects during the holidays was ice skating. This is something Ingrid has wanted to do for a while. We bought skates for Ingrid and myself and went out skating several times.

I have to say, the modern plastic-booted skates they make for kids nowadays are great. I remember sitting on a bench next to an ice rink when I was a kid, pulling at those infernal laces with freezing hands. And still the skates ended up floppy around my ankles and too tight around the foot at the same time. Now it’s just click, click, and the buckles are done, and off she goes.

Ingrid took skating as a challenge, as usual. It seemed important to her to be able to say that she can skate. At first she was claiming she could skate just because she could stand upright on them and move forward while holding on to my hand. I explained that skating while holding on to my hand is like swimming with floaties – you’re moving but it isn’t really right to say that you can swim – and that “I can skate” means gliding (not tottering) and without holding on to anything. She immediately focused on those two things, and made progress straight away. She holds my hand while getting started and picking up a bit of speed, and then lets go for a brief independent glide. Rinse and repeat until tired. I still wouldn’t say that she can skate but it’s an activity that we can enjoy together.

Much of life is a competition for her. Apparently she’s not alone about it. One day a friend of hers was here and they happened to stand next to Ingrid’s Bamse magazines. The conversation went like this:

Ingrid: Look at how many Bamse magazines I have!
Friend: I have more!
Ingrid: I have this one, and this one, and this one…
Friend: I also have this one.
Ingrid: … and this one, and this one.
Friend: I have many more at home.

Eric gave her a “weekly Bamse” as a Christmas gift. (“Vecko-Bamse” to complement her pocket money, “veckopeng”.) It’s not a subscription but a stack of old issues that he bought in a charity shop, and she gets a new one every Saturday.

Bamse is just the right kind of reading material for her. It’s a comics magazine, so there’s lots of pictures. (She still likes books to have pictures on every page.) The texts are short and simple, and in capital letters, which she prefers.

We tried one issue of Kalle Anka (Donald Duck) but not only was it in lowercase, it was also full of words like “ämnes­omsätt­ningen” (meta­bo­lism) and “outhärd­ligt” (unbear­able) and “obliga­tioner” (bonds) and so on. I kept having to read the hard words for her and then explain what they meant, so she kept losing track of the actual story.

But with Bamse she can sit and read on her own. One morning she spent an hour just reading. She doesn’t like it quite as much as the iPad but it’s clearly a fully acceptable substitute when computerized entertainment is not available.

Apart from Bamse, we’ve been reading Tam tiggarpojken, a Swedish fantasy series for 6 to 9-year-olds. It’s a bit challenging for her, but in a good way. Things are not spelled out as explicitly as in books for younger kids.

At first I just read the books, but it turned out that she really didn’t understand large chunks of it. Now I stop every now and again and ask her about what I just read. Sometimes she’s with me, but other times she has no idea what’s going on or why. So I read it again or explain it in simpler words or in terms of something that she can relate to. More and more I do so with other books, too. It’s good for both of us: makes me read more actively and her listen more actively.

Most often it’s the why I need to explain. I wonder if it’s like that for her with life in general, not just with books. Things happen, and she either has no idea why (but it doesn’t bother her) or she makes up some sort of reason for herself that is very far from reality.

Other news:
Lördagsgodis still works well. It’s so nice to be free of the nagging during dinner on weekdays. Yesterday she bought candy for 6 kronor (about a dollar) and it lasted her an hour. She sat at the kitchen table for an hour, reading Bamse and eating candy. The moment she was done she left the Bamse magazine and went and picked up the iPad. (All optimised to follow the house rules: “No eating candy in the living room”, “No using the iPad while eating”.)

I’ve let her use a knife for sharpening pencils and for paring apples, i.e. cutting things that are hardish and held in the hands rather than on a cutting board. She’s a bit of a wimp when it comes to blood and getting hurt, so I’ve been saying no until now because I didn’t want to face the wailing that would come if she cut herself. But she managed it very well.

Do you know any good developers in the Stockholm area? Send them to me!

ReQtest, the company I work for, is looking to add two more developers to our team, one for front-end work and one for the back-end. The foundation for our application is ASP.NET and C#. On top of that the front-end guy needs great JavaScript and CSS skills; the back-end developer needs experience of database development.

We’re a small and growing company so we offer lots of responsibility and variety in the daily work, and a say in just about all matters regarding both the product and the company. We use an Agile development methodology, and we value code quality and usability highly. It’s a great place to work.

Read more on monster.se: front-end developer, back-end developer.

After I posted about my achievementless 2011, a friend remarked that one major project we completed last year was the remodelling of our house. That is true, but I don’t count it as a personal achievement. It wasn’t mostly my doing – it would count as an achievement for the builders but not for me. And it didn’t apply to me but our house. I didn’t change, learn, or experience anything new. Rather, I bought something. Which can be a big event but it’s not an achievement.

But my friend has a point in that my previous post was too one-sided. So, here is a more nuanced review of 2011.

  • Top things I will remember 2011 for: The remodelling. A full year on a milk-free diet.
  • Other memorable events: I went back to work after my maternity leave with Adrian.
  • Major projects I completed: My felt advent calendar.
  • Major decisions: We bought a car.

Ingrid spends quite a lot of time with the iPad. The apps she uses most (apart from a movie player app) all come from one studio: Toca Boca. They make a variety of apps, some better than others. Originally the best ones followed a common structure but now they are branching out into more different kinds of play. We have every single one except the Helicopter Taxi which needs the iPhone camera to run.

I was going to list Ingrid’s favourites but then I realized that she loves almost all of them. Some days she plays one, then another day another app gets more time, and after a few days she comes back to the first one again.

There’s Birthday Party and Tea Party, where you start by setting a table, choosing plates and cakes, and then proceed to eat the cakes and drink the tea and lemonade. These have great multi-touch support and work very well for several players. I believe that kids are supposed to invite their stuffed animals to the tea party but Ingrid usually plays with me instead.

Then there’s Toca Store, which is sort of similar but more clearly meant to be played together. One person takes the role of shopkeeper, the other is the customer. The shopkeeper chooses which items to sell, sets their prices, rings up the items on the till. The customer picks items to buy, counts up the coins, puts the stuff in their bag.

Of course you could play those things without an app, with actual physical items – and we have. But the app is 5 seconds away whereas setting up a tea party with real toy plates and cups takes time, so Ingrid is infinitely more likely to use the app than the real thing.

A bit similar is Toca Robot, where you build a robot by picking body parts for it. The graphics are well made and fun to look at: the robots can have arms with propeller attachments and a body like a fridge. When the robot is done you can fly it through a simple maze to pick up gold stars. Updates to the app have brought new varieties of each body part, as well as new mazes, so Ingrid keeps returning to this app.

Toca Hair Salon and Toca Kitchen are two of a kind – you get some materials and can perform some actions on them. Cut, blow dry, comb, wash, colour hair; chop, fry, boil, mince food. I’ve found these somewhat disappointing – they sound like more fun than they actually are. In Toca Kitchen the choices are too limited, and they’ve skimped on the graphics: the results look dull. Frying things just makes them brownish, for example, so frying an egg doesn’t actually result in anything that resembles a fried egg. In Hair Salon the hair is difficult to control and the results are all too similar to each other, except for the colour and accessories, so what sounds creative boils down to a painting app.

Paint My Wings is actually a painting app where you paint the wings of a butterfly. The wings are mirrored, so whatever you paint on one wing also turns up on the other. There are other nice touches such as the butterflies talking to you (“that tickles!”) and using berry juice for the painting, making this a bit more interesting than just a plain drawing app.

Less open-ended is Toca Doctor which consists of a bunch of puzzles and mini-games. Ingrid liked these to begin with but they’re too simple for her now.

In a post-apocalyptic North America, the state of Panem consists of a Capitol and 12 Districts. 70-odd years ago, the Districts revolted against Capitol rule. Capitol won the war. And as a humiliating punishment, they instituted the Hunger Games. Every year two representatives from each District – one boy and one girl, aged 12 to 18 – are obliged to participate in a fight to the death in a televised spectacle. This year Katniss Everdeen is determined to win. She needs to, because otherwise there is no one to take care of her family: with her hunting skills, she is the main breadwinner.

It will come as no surprise to you that the book is full of violence, a lot of it pretty graphical. There’s everything from being stung to death by swarms of mutant hornets, to being hit with a rock. At first I thought it odd that such a bloody book would be marketed as young adult literature, but then I remembered what I read and watched when I was thirteen (Stephen King and Friday the 13th) and reconsidered. Today’s teenagers can be pretty unmoved by blood and gore.

The book was hard to put down while I was reading it, but left no real impression afterwards. It was thrilling but shallow. The book is about death as televised entertainment. From such a setup I would expect the book to rise a step above its contents, to take a critical view of what is going on, to reflect, to comment. Now it felt like we just got a written version of the TV show.

Katniss was all set up for us to like and feel sorry for and root for, but I found her character unconvincing and inconsistent. She hardly reacts to the deaths around her, only feeling sorry when her ally (a sweet young girl) is killed, but otherwise she’s unmoved. Her own likely death doesn’t seem to worry her much, either.

The writing was pretty dull and uninspired, in the journalistic style that I so hate in the detective stories that abound in Sweden. Things are described in a minimal, impersonal manner, giving us no real feel for the places or the people. There is no metaphor, no colour in the language.

One thing that really annoyed me from the beginning was the ridiculousness of the whole setup. A capital city of magnificent wealth, endowed with technologies such as hovercrafts – kept alive and afloat by the productive forces of 12 small, poor districts with backward technologies? One of which focuses solely on coal mining, and another on fishing? Yeah right. And 74 years of hunger games, of parents giving up their kids to near-certain death each year, and no one rebels? Yeah right. And a supposedly demoralizing punishment that involves making celebrities out of the punished, dressed and made up by top stylists, interviewed live on TV? Yeah right.

The whole setup only made sense when I read The New Yorker’s review:

If, on the other hand, you consider the games as a fever-dream allegory of the adolescent social experience, they become perfectly intelligible. Adults dump teenagers into the viper pit of high school, spouting a lot of sentimental drivel about what a wonderful stage of life it’s supposed to be. The rules are arbitrary, unfathomable, and subject to sudden change. A brutal social hierarchy prevails, with the rich, the good-looking, and the athletic lording their advantages over everyone else. To survive you have to be totally fake. Adults don’t seem to understand how high the stakes are; your whole life could be over, and they act like it’s just some “phase”! Everyone’s always watching you, scrutinizing your clothes or your friends and obsessing over whether you’re having sex or taking drugs or getting good enough grades, but no one cares who you really are or how you really feel about anything.

Cheap thrills for a day or two, good to have read so you know what the hype is about, not worth buying book 2.

Adlibris, Amazon US, Amazon UK.

Having just gone through the receipts in my wallet for December, I note that I have bought 23 lussekatter at Pressbyrån during this Christmas season, for a total of 338 kronor.

(The one in the photo below was made by Ingrid and not bought at Pressbyrån.)