Hear me Germaine Greer

I am a transgender woman. I am open about this.
Hear me Germaine Greer.
I want that smelly, hairy vagina.
I would have that transplant if I could.
I don’t want to procreate, which is why I got vasectomied.
But don’t deny me my rights.
I want that hairy, smelly vagina.
I would actually take the agony of period pain.
You are an out-dated dinosaur.
I am a woman.
You deny us.
Sod you.
You don’t know us.

The deed is done, the die is cast

So, gentle readers, remember this blog post?


Well, this New Year, I made the decision. I am going to transition. I have a sympathetic GP, a massively understanding employer (ref: Sophie Wilson), a large number of friends at various stages. Now was the time.

I will still be Aardvark of Fnord. I will still be the same person. Just the physical aspects and the real-life name I answer to will change. For the moment, I am still Jon in public, but when I have certain things in place, I will be Lucy full time.

My problem with children

I have a problem with children. I want to make it immediately clear that the problem is MINE, not anybody else’s problem.

When a baby cries, or when a child cries in either pain or excitement, it causes me physical pain. Something is wired up wrong inside me. These noises, to me, feel like somebody is stabbing me in the center of my head with an abalating red-hot probe, and then I get sympathetic pains in my chest. If the noises are particularly loud, I then get pains in my arms and legs, almost identical to sciatica.

This causes me a lot of upset, but not just in the ways that you think. When I fly long distance, and there are screaming babies or children, I can block those out with headphones.

What really distresses me is the friends I can no longer visit or socialise with. I can no longer visit my sister, as she has two young children. Several of my closest friends from university, I only see at LARP events when they do not have their children with them.

I want to re-iterate, that this is a problem with ME, not those people who quite normally wish to have children. But I hope people do understand why I have to run away.

Garam Masala

I once did a curry cooking course with Mr Ali, of the http://kushibalti.wordpress.com/  fame. The most important thing I learnt was “make your own garam masala”.  A few people have asked for my recipe, and here it is:

  • 5 parts coriander seed
  • 5 parts cumin seed
  • 3 parts mustard seed
  • 1 part de-shelled black cardamom
  • 1 part de-shelled green cardamom
  • 1 part fenugreek seed
  • 1 part fennel seed
  • 1 part caraway seed
  • 1 part cinnamon bark

Put all in a heavy saucepan and toast on a high heat until the coriander and mustard seeds are popping nicely, shaking or stirring so that the seeds don’t burn. Allow to cool, then grind.

IEEE 754-2008 Subnormal

Minor rant. IEEE 754-2008 redefined a term. In hand wavey terms, very small floating point numbers which could not be completely represented in the format used to be called “Denormal”. With the 2008 update, these were redefined as “Subnormal”.

When I was at school as a child, Autism and Aspereger Syndrome were not well known. I was classed as “Educationally Subnormal” (also “Mentally Deficiant”) – which was the code in those days for “way below average intelligence”.

Every time I see “Subnormal” with respect to floating point numbers, I wince. Especially when they get flushed to zero.

We Care A Lot

In 1985, Faith no More released their album “We Care a Lot”, with a track of the same name. I discovered that track about 1987. It details a lot of things about which they care a lot about (look up the lyrics), and some of it is cynicism but the refrain is:

Oh it’s a dirty job, but someone’s got to do it.

My mother was a doctor, my father a safety-critical engineer, and so I grew up with a very strong life ethic. It is not exactly surprising that when I came out of university, I ended up a safety-critical engineer myself. Mostly aerospace, but some rail and automotive.

I worked on many planes, one train system, and a couple of automotive systems. However, the Boeing 787 broke me. I worked on that plane for several years, and the amount I cared took my pleasure, my sanity, and nearly my life. I want to say how much, but I can’t.

I am no longer completely immersed in the safety-critical industry, but despite some of my best efforts, I am still heavily involved. The problem is, that now I have worked for nearly 20 years in those kind of systems, I have to.

We care a lot.

Once you have given your soul to the safety-critical industry, you can never go back. It is a mindset. That niggle that if something goes wrong, people die. Potentially hundreds or thousands (millions?) of people. Code I wrote, over 20 years ago, people still depend upon. I may have made a mistake in some testing, that means some freak accident causes a plane crash tomorrow. There are checks and balances, but I still have that weight on my shoulders.

You can take the engineer out of the safety-critical, but you cannot take the safety-critical out of the engineer.

This is nearly my mantra these days. I no longer work in a safety-critical job, but I am still (how could I not be) involved in our company’s safety effort. I still cast an eye over things that go past me, and go “Is this OK?” … “Is this safe??

Oh it’s a dirty job, but someone’s got to do it.

I did that job. Many of us do. I still do it, to a lesser extent. We care a lot. A lot.

Python Gotchas

Last year, I got involved in trying to teach programming to school kids – this was via the excellent https://www.codeclub.org.uk/ enterprise. During this, I collated a series of Python “gotchas”, which I still think is worth sharing. As a friend of mine put it:

“The problem is that python is good, except where it does stupid things. Python programmers mostly trip over the stupid things fairly quickly, right themselves, and work around them forever, and forget that they are stupid.” – Aquarion

So, here is my list. If you think you have a good new one, please add in the comments.

  1. Tuples are immutable.
  2. Case Matters.
  3. Integer division trucates. (__import__ future, float cast)
  4. Classes have to inherit object to be derivable from.
  5. Type of bracket plethora-rama.
  6. Unicode.
  7. List string concatenation with .join().
  8. Shallow copies of dicts (.deepcopy())
  9. Default arguments in Python (dragons).
  10. Tabs vs Spaces.
  11. == vs is.
  12. Dictionaries are unordered.
  13. Scope, particularly scope in loops.