Ruminations

Friday, February 16, 2018

Janne woke me up saying she thought now was the time. But she wasn't sure. She had a few false starts, keeping her frem sleeping.

She did sound so as if this was different, though, so I started calling for help. She also called the midwives at the hospital who apparently didn't quite believe she was going to give birth yet.

Just before the help arrives, Lys woke up, so I had to comfort her. When I get up, Janne is weird - apparently she's less and less sure. But the rest of us think it's better if we just go so we arrive at the hospital 15 minutes later where the midwife examines her and concludes that she's ready to give birth as soon as the water breaks. Not long after, our fourth child is born, a son.

He's a bit blue but alright.

Unfortunately, Janne's uterus doesn't contract itself properly, so she looses too much blood, almost 1.5 liter they think, so there's a little emergency until the staff manages to get it to stop, partly by medication, partly by pushing down on her stomach.

They then kept her for a day for observation before releasing her and the child. That's now just about four weeks ago.

Saturday, December 9, 2017

Not yet done with my layman journey into thought processing and intuition, my model is as follows: Thinking intuitively, you first acquire experience, probably mostly through trial-and-success/error, then let yourself pattern-match the situation at hand against this experience.

Now the funny thing is that, at least for me, when I need to evaluate several options, the way this pattern matching gets communicated up through the system is in many cases through emotions.

What I think is the right path makes me more calm and happy, whereas a path which I for some reason have had a bad experience with or expect to have will make me more anxious. Which actually makes sense. But it can come out in an incoherent way.

Incoherency

For instance, our course teacher at university in software management, an experienced and well-honed practitioner and pragmatic thinker once told us a story about a project which he ended it with a tired expression and the remark: "Just thinking about how to work with that is just almost unbearable."

I think what he meant to say was that going along that path would be long-winded and tedious. But what I actually understood from this was much simpler: his intuition had decided this was the wrong path and sent him a bunch of negative emotions instead of an honest, objective assessment. We didn't get facts, we got a tired expression.

Intuition can be right, and I certainly believe it was in his case, but bad at communication so you may end up with the wrong set of arguments for why. Which is not surprising if intuition is a complicated, haphazard pattern-matching process.

Now if the arguments are ideas, you can use logic to examine them and quickly discard those that are bogus, but it's much harder to work with emotions.

Emotional decision-making

While I believe that intuition is really powerful, much more powerful than logic when it comes to coming up with ideas and making decisions, emotions are certainly not something you want to be in control of decision making.

Emotions tend to make us, well, emotional.

There is a purpose to emotions. Hunger makes us look for food, excitement makes us focus and endure hardship, indifference or lazyness makes us conserve energy, fear makes us careful, affection makes us bond and mate, and hate and anger makes us defend ourselves and punish destructive antisocial behaviour.

But these are primitive mechanisms. You can see a house cat take a liking to the occupants of the house or a dog get angry at someone passing by too close to the territory. A person following only emotions is like an animal.

Emotions are simply not sophisticated enough devices. Following them makes for shortsighted decisions, although, ironically, they may serve a long-term goal - love for instance is certainly necessary for the survival of the human species.

Detachment

So while I'm still a firm believer of the power of intuition, I think it's important to be able to detach from the emotional aspect to get anywhere. So not get emotional, but instead listen to the conclusion and try to figure out if it is guided by experience or if it is simply an artifact of who you are.

This is to me a three-way paradox. Intuition can provide the answers but not explain them, emotions can communicate the answers but at the risk of leading straight into an emotional and uncooperative dead end, logic cannot provide the answers but perhaps offset the emotions and help dig up an explanation from the intuitive depths.

I don't think you can be an effective thinker without emotions, despite emotions being in some sense the antithesis of thinking.

As a side note, I think I should clarify that detaching oneself from an emotion is a tool to use in certain situations. Much of the joy being a human comes from immersing oneself in emotions. It's just that when it comes to making important decisions, it may be better to set aside the immediate joy, or fear for that matter, and look into the future. Even if you hate that person, is it really a good idea to act on it? Or even if you love that person, is it truly best for you to act on it? Maybe your fears are unfounded?

Tuesday, November 14, 2017

Tonight, as I was dual-wielding my 1-year old daughter Lys as she was supposed to fall asleep, yes, I was holding both of her hands, at her request, I suppose it gives that extra 60% of comfort or something, I got thinking about the transformative experience it is to have small children.

I think that the experience eventually wears off, although I would assume some residuals are always left. But I can't say for sure yet. Lys will be 2 years old this February but she isn't our latest child, unless you only count born children.

For me, the transformation is mostly about accept, of my own situation and that of my children.

For instance, I can't control even basic necessities in my life - like sleep. Not if I am to take care of my children. The moment I might need sleep the most, I may not sleep well for next week if one of them is ill. That's just the way it is.

But that part is sort of trivial. Much more interesting is the uncontrollable human situation.Hurting

An example is hurting people. Let me start with myself: as I held my daughters hands tonight, it struck me that I'm inadvertently hurting my children all the time. Why?

Well, it's just impossible not to. Physically, it's like a human in an elephant house in a zoo, the difference in size is just so big that the small party is going to take a hit sometimes. I going to trample a toe or scratch an arm when I swing them around giggling.

But also emotionally, it's just so hard to understand where small children are, and I don't always have the time or concentration or mood to even try to be there. And as is obvious with three children, sometimes someone has to let it go. We can discuss and think about priorities and what's the greater good when we find ourselves in a conflict, but in the end someone must chose a path. That's just the way it is.

Being mean

But it gets worse. There are so many ways to hurt other people, to be mean to them. I have yet to see a child who doesn't occasionally try out most of the obvious ones. And despite my children being, in my opinion, generally lovely, lively and relatively reasonable, they have too.

I try not to let them get away with it, but I don't control them. You can't control other people, and my children are definitely, albeit still in a small manner, people. Nor should I. Talk is cheap, leading by example is not. They need to understand and choose for themselves.

So, as I parent, I will watch them be mean to each other and to other children and vice versa. That's just the way it is.

Accepting

For me, the transformative part comes about because of force. Before being a parent, there are many aspects in life where I could maintain an idea of how things should be, possibly an illusion, but still. But it's no longer about me, only, and I find myself being forced into accepting things that I don't, at the outset, like.

In this accept, I've started to see some things that I haven't understood before, not only in small people.

You can't accept something without putting preconceived notions or what I think of as morality aside. Morality, even if well-founded, like the pretty obvious idea that you should never hurt others, is really one-sided in its emotional nature. Once morality enters, it calls for an immediate action, clouding cool judgement. So X hit Y. Shame on X!

Now my examples may have been somewhat dramatic, but honestly I don't think those are terribly deep. I may witness a child of mine being mean, but I'm not going to like it and will try to find a reason behind and do something about that.

What I have accepted is that this is human nature. And this accept of the human nature has opened some doors for me in much deeper territory.

I'm finding it easier to read about politics (and send an occasional email to a party), to understand and learn from the Waldorf kindergarten and school that we've ended up sending our children to, to work with people.

How much is visible from the outside, I don't know, probably I'm just tired and grumpy. But it feels different.

Friday, March 24, 2017

Despite not having blogged much for the past years, or rather, not writing down many blog posts, because I do in fact have had a lot of blogs composed inside my head, I sometimes wish I had a Danish blog for stuff that only makes sense in Danish or for Danes.

This is one of them. For reference, here's someone singing an original version, with gestures (apparently the text is by Oskar Schlichtkrull and music by Finn Høfding). Obviously, when trying to get your baby daughter to sleep, you don't do any gestures.

I have a flying machine,it has wings on.You can believe they're so fine,because they're colored orange.And when I fly at night,I put the lights on.There is noone who can take them,because who can reach the sky?My mum is sitting and knitting,and she has said to me:The day she's out of stitches,she and I will fly.My dad is on the couch and reading.But he has promised me:A day where the wind is really blowing,he and I will fly.My cat is in the window purring,because I've promised it.A day the sun is really shining,we will fly away.I'm flying over the ocean,I'm flying over land.The propeller is one of my invention,turning as fast as it can.And while my engine is humming,I'm looking up and down,to see if other people are out flying,such a day where the sun is high...

Monday, December 12, 2016

That's the feeling you get a late night when you hit M-/ in Emacs (hippie-expand), and Emacs doesn't use the web page you are looking at in Firefox as a source to auto-complete the word you've halfway written.

I think I need to retrain myself to use the browser built into Emacs.

Some people use an IDE that semantically analyses their code and pops up a suggestion box at every opportunity with an exhaustive list of valid choices.

I program with structural templates/duck types in Python and Emacs lets me complete all sorts of stuff, in comments, from other comments, or from the documentation I'm editing. It'll sometimes suggest some weird stuff, including whole line completions. It doesn't care. I don't care. I guess we're hippies.

Tuesday, June 7, 2016

So I was writing about intution, and somehow got sidetracked into how not to do ranking. Like a review of a game where the reviewer would judge the game on 5 different aspects, game play, sound, story, graphics etc. and then compute a final score based on fixed weights. How you'd fit a smash hit like Minecraft into that, I don't know.

What I really wanted to talk about was design.

Software development is full of design decisions. How do we present the information to the user? How do we let them act on it? How much to show, how much to hide?

How do we structure the code internally? What data do we store, how do we model it, how much do we capture? What other software do we build on?

What interface do we provide to other software developers?

It's a sea of decisions. Although it can be helpful for analyzing some outcomes, you can never hope to get through this sea with logic alone. You can often make reasonable deductions that something is simultaneously a good and a bad idea.

This makes it hard to discuss and evaluate these decisions. Often, we do not have the words, and even if we had, the actual components involved may be interrelated in such a complex manner that you'd never get anything out of studying them directly. You'd have to condense this complexity into something simpler, a process which may take much longer than the design process itself. And in simplified form, you can't be sure deductions are still valid.

So we're left with the intuitions we train for ourselves.

In other words, a prime concern of a software developer should be training this intuition effectively, i.e. input good training data with valid, confirmed outcomes - this works in this situation, this doesn't.

The main road to wisdom in programming, as in other crafts, I believe, is learning by doing. So experimenting or playing around if you wish, and seeing what happens. Not just in a strictly scientific sense where the experiment is artificial and controlled. It may be as simple as recognizing a common problem, working out a possible solution and implementing it and watching it unfold.

Sometimes you can take a shortcut by learning from others. There are various ways to go about this. Reading literature, or source code, or asking questions, or getting them to comment on your work. It's mostly about basic curiosity. Typical developer chat when someone is talking about something new they've done circle around how they made it work and what problems they encountered.

But the annoying thing about learning from others is, again, that it can be hard to talk about these things. Design decisions change when the details change. Sometimes minutia can decide whether one model is better than the other. How do you communicate this effectively? The person you are talking doesn't understand your problem completely. You don't understand the situation the other person was in either. So how do you know that the advice is correct?

I think this is here analytical skills are important. You always have to be sceptical, train your intuition into recognizing discrepancies and evaluate what context causes something to be judged to be good or bad.

For instance, if someone you know to have developed a sound intuition about a certain area find an idea of yours to be cause of alarm, you'd be a fool to ignore it. But unless you possess the same intuition about the problem, it can be hard to deduce exactly what causes the alarm and whether it's a problem in the context.

Frustratingly, it can also be hard to explain the root cause on the spot. Often, there is no explanation in the intuition. And examples can be hard to think up. I've sometimes been asked for an opinion, found cause for alarm but haven't been able to figure out why until several years later. I know that because those alarms haunt me for years, making me feel like a grumpy old man seeing ghosts everywhere.

One example I have is that of software you depend upon, as I touched upon in my previous entry. Over the years, I've come to the conclusion that some dependencies serve you exceedingly well, and others serve you hell.

Probably the hardest part of design is designing for the future. We never know what happens. Still, careful design mitigates the risks.