Month: April 2007

Old poem that no longer fits in Archive Fragments

It’s dark now

(o where are you sweet knife)

(I hear) singing in the street

(with your bitter edge)

(Out) in the shadows of the night

(little blood gush orange juicy)

Pastel neon dream away

(cut me now, cut out the endless pain)

No sleep again – so lonely next to you

(sweet knife cake cutter)

Cut me now

(rain again to wash it away)

Come again some other day

(rain rain)

16 October, 1998

Suicide Watch

My mind has been in a strange state for quite a while. I’d be lying if I said I was suicidal, but the thought of suicide keeps cropping up. It’s more of a call to me to understand death properly and maybe come to terms with what happened with my father’s suicide when I was 8 years old.

I will be 48 next birthday, so this time next year it will be 40 years. I remember it was spring or early summer. I’m sure that I could find out the exact date because he was relatively well known and it was in the papers at the time.

His act was never intended to hurt anyone. This is the irony of it all. He thought it was for the best – what pain he must have been in, poor man. It beggars belief. Recently my darling son helped me discover that if I am rejected it makes me fly into a rage. Now I know to try and catch hold of it. I think that this is because of the pain that still resonates after all this time and shapes my personality.

I fell out with my sibling because of this, my anger got away from me. There was a whole lot of buried stuff from more recently, say 30 years, that I had forgotten about – because it was embarrassing and humiliating to remember it – and suddenly it was important, then their carping and constant criticism made sense. I was rejected, in a calculated and very clever way. I responded with this unknown rage, a bad bad bad idea, and we can no longer communicate. This makes me feel terribly sad, a dear friend reminded me that this life is too short for this stuff. But my sibling manipulated me into giving them what they wanted – they are much cleverer than me, but what use is it?

All I have left of my father, at least directly, are some silver cuff links with a fish motif. He was a psychiatrist and wrote some books that were classics in their day. They were later brought up to date by a colleague and became Fish’s Outline of Psychiatry and some other titles that escape me now but I have my mother’s copies of them on a shelf somewhere.

He was a good man and did his best. My mother told me that one of his patients had said to her how much he had helped. But in those days, 1968, there was no proper treatment for manic depression. The modern drugs that everyone gets worried about did’t exist. Depressives would eventually do themselves in unless they were watched very carefully, and of course his position as Professor made it hard to insist that he went into hospital under supervision during his final days. We no longer remember wards full of people with catatonia and other distressing conditions because the drugs stop it happening.

I did’t get his intelligence. I am quite clever but not in his league. Not sure that I care about this very much. It did’t do him much good. Nor my sibling.

The lesson he taught me:

First you must learn to love and forgive yourself before you can love anyone else.

I paid a high price for this knowledge and now try to live by it every day. Now I am aware of the unconscious rage it no longer controls me. Just makes my tears flow.

If anyone gets a little comfort from these words – good. 

Blessing all. 

Easter

Got a lot done over Easter but pretty busy.

Rosie was away at a Canoe Camping Club meet near Retford (Notts or thereabouts). We only have one car now so I drove over, camped for the night, drove back and then picked her up on Easter Monday. I managed to take a wrong turn and it took me an extra hour to get home on Good Friday – hey ho. Thursday night was really cold too.

Took Jon cycling at Delamere on the Saturday.  My poor old mountain bike is in need of some TLC and I had the interesting phenomenon of watching the front wheel turn one way when I’d turned the handle bars in another. This was going over a small jump. I was’t injured because us old folks take that stuff fairly easy y’know. Bit embarrassing. As the old guy I was supposed to be carrying tools. Apparently tools are an old guy thing. Another dad (surprise) lent me some alun keys he just happened to have on him, so I suppose the kids’ thesis is correct.

We went to the Yorkshire Sculpture Park on the Monday on the way to pick Rosie up. Only got about an hour in there and would have liked to spend quite a bit more time. Kidded D&J that one of the groups of sculptures was bits of an alien space ship and the big one by the lake was them writing “Help” but in odd letters.

I’ve been reading a lot recently. Still working my way through Living without Regret, (see end of last entry). Enjoying is not quite the right word, but it’s giving me a lot of food for thought. Ask yourself: what does mindfulness actually mean on a day to day basis? Can you remember what you had for breakfast? Your journey to work?

For my technical reading I finally succumbed and bought myself a copy of Martin Fowler’s Refactoring – great book. Read it over the weekend – I am that sad, sorry. I can read a big thick technical book in a few hours if it interests me. At least 2 ideas came out really strongly: the null object pattern, and the strategy/type patterns – as well as the interesting idea that a big comment is probably better replaced with a well-named method. Back to the defensive programming theme of the last blog entry he says it’s really important not to break your contract with the user and actually throw exceptions. I’m still thinking about exceptions and how to do it properly.

Saw some excellent code today – laughed my socks off:

if ( var == null || var.equals(“”) == true ) return ;

If you are a Java programmer and don’t know why that’s funny you need to get some more training. This was mixed in with lots of

if ( var == null || var == “” ) return ; 

Which is just wrong, assuming that var was passed as an argument and not initialised in the same piece of code. It really irritates me that I tried to find a job as a Java programmer for quite a while and here are these “Java specialists” writing such utter rubbish. Not to mention testing a private list variable that only has one access path to see if it had somehow got some objects in it that were’t the expected type – utter utter rubbish.

For reference the correct idiom is

if ( var == null || var.length() == 0 ) return ;

I also finally got the Ruby pick-axe book. Interestingly, I was choking a bit at the price Amazon were asking and found the Fowler book on The Register books  for 40% off, whereas Amazon were only offering 20%. The Ruby book was £5 or so cheaper too. If you’re looking for a popular computing book I suggest checking the reg out – just put the ISBN in and see. In essence I paid what Amazon were asking for a used copy for a brand new one, added in the Ruby book and got free postage. Good service, too.

Spring

Still trying to find 5 minutes to do something with this framework. Life (and selling a load of old crap on ebay) keeps getting in the way. I think Spring and Rails have a lot in common.

Archive Fragments

Got another section done – starting to get a bit knotty now. I’ve junked probably 50 pages of interesting but not relevant stuff. Need to get some head space and work on it a bit more. Problem is – I get home, I eat, I wrap ebay stuff I do blog entry because I think it will only take 5 minutes and suddenly it’s 10 pm and my 6 am wake up is looking very soon … work is getting in the way of doing interesting things … no change there then.

Foo Fighters

Been listening to In Your Honour almost constantly since January, particularly DOA. I want it played at my funeral, I’ll be laughing even if no-one else is.

When I can get the energy I’ll update this blog with some photos… 

Finding bugs in Java code, Hibernate and so on

Find Bugs

Highly recommend findbugs , we’ve been using it at work for a week or so and it finds lots of bad practices and naive code. Like me, in the last post here, it does’t like returning null all the time either. It recommends empty strings or empty arrays. Can run as a GUI, command line or Eclipse plug-in. We are going to write a batch file to integrate it into our source code control system and make it part of the code audit process as things are checked in.

Hibernate

Good tool , but I wish they’d stop trying to push EJB with it. Nasty dead technology that hurts to use.

Better Faster Lighter Java

Recommend this book . Buy it if you are doing anything with Java. I think the content is probably OK for non-techies as well, at least the first half of the book.  One of the authors wrote Bitter Java and Bitter EJB. These people know what they are talking about. I might even buy the pragmatic book on JUnit.

Exception handling in Java

Still trying to find a good clean way of handling exceptions. I remember reading something about Bruce Eckel of Thinking in blah (replace blah with C++ or Java or whatever) fame. TIJ is worth downloading and having around. I need to find some time to do some digging. Of course, there’s the obvious – just use Ruby on Rails and pass exceptions through to the flash handler, Struts does something similar when every exception has’t been eaten by a catch to be fair. Not sure that RoR is prime time yet. Some folk have told me that Rails does’t scale, but I do wonder if that’s the older version that’s now defunct. I can’t see why it wo’t, particularly if you are deploying under Apache.

Spiritual stuff

Highly recommend Living without Regret. About half way through it. I’m beginning to refocus on my Buddhist beliefs after a long time in the wilderness. This book is a good reminder and has made me think about some things. I underlined the piece about the 4 gates to freedom (p25):

  • Forget the Past. Walk away from the past and treat it like a city you have visited a long time ago.
  • Participate in what is happening now, do not hold back.
  • Drop any sense of I.
  • Let go of all notion of the future

The last point is about focussing on staying in the now. I don’t think it means don’t plan or think about the future – just stop yearning about it and being unhappy. Treat the future like you treat the past. I need to talk to my Dharma teacher but it has been so long I feel embarrassed. I know he wo’t mind, but that does’t make it any easier for some reason.