About Me

I am a computer programmer. I do programming professionally and for a laugh.

yeah but actually

Technical stuff on programming, java, DSLs, etc...

Saturday, 18 February 2017

Bullshit fatigue

Usual Friday morning banter at work talking about the news that some "retired vice-admiral turns down US national security adviser offer".

"How is this even possible?" was my argument, "nobody checked with the guy?"

As I was ranting about how the amount of bullshit going around is bothering me, especially with the recent political landslides and very weird events in countries like Turkey, an esteemed colleague came up with the much needed diagnosis.

"May be you are suffering from bullshit fatigue?"

Spot on. I am suffering from bullshit fatigue...

Highland Cattle bull.jpg
By BrianForbes - flickr.com, CC BY-SA 2.0, Link

Bullshit Fatigue:- A neurological condition where bullshit receptors in one's brain becomes over stimulated. Symptoms can vary from
  • Feelings of rage, rather than the customary roll of the eye induced by delivery of false or incomplete information with a blast of absolute conviction (a.k.a. bullshit).
  • Extreme cynicism
  • Weltschmerz

Saturday, 21 January 2017

That looks great. Just one thing: get rid of the duck.

Rubber duckies So many ducks.jpg
By gaetanlee - http://www.flickr.com/photos/gaetanlee/298160434/, CC BY 2.0, Link

I actually pulled a 'looks great, just get rid of the duck colour on the text' today and this is what it is:-

... It was well known that producers (a game industry position roughly equivalent to project manager) had to make a change to everything that was done. The assumption was that subconsciously they felt that if they didn't, they weren't adding value. 
The artist working on the queen animations for Battle Chess was aware of this tendency, and came up with an innovative solution. He did the animations for the queen the way that he felt would be best, with one addition: he gave the queen a pet duck. He animated this duck through all of the queen's animations, had it flapping around the corners. He also took great care to make sure that it never overlapped the "actual" animation. 
Eventually, it came time for the producer to review the animation set for the queen. The producer sat down and watched all of the animations. When they were done, he turned to the artist and said, 
"That looks great. Just one thing: get rid of the duck."

Tuesday, 18 October 2016

The Grapes of Wrath

JohnSteinbeck TheGrapesOfWrath.jpg
By New York: Viking - image, page, Fair use, Link

I read grapes of wrath recently and the below was impossible to pass.

Disclaimer: alcohol use is a major cause of death, I know it is not even Thursday yet and stop reading my blog if you are underage.

"... And always, if he had a little money, a man could get drunk. The hard edges gone, and the warmth. Then there was no loneliness, for a man could people his brain with friends, and he could find his enemies and destroy them. Sitting in a ditch, the earth grew soft under him. Failures dulled and the future was no threat. And hunger did not skulk about, but the world was soft and easy, and a man could reach the place he started for. The stars came down wonderfully close and the sky was soft. Death was a friend, and sleep was death’s brother. The old times came back—a girl with pretty feet, who danced one time at home—a horse—a long time ago. A horse and a saddle. And the leather was carved. When was that? Ought to find a girl to talk to. That’s nice. Might lay with her, too. But warm here. And the stars down so close, and sadness and pleasure so close together, really the same thing. Like to stay drunk all the time. Who says it’s bad? Who dares to say it’s bad? Preachers—but they got their own kinda drunkenness. Thin, barren women, but they’re too miserable to know. Reformers—but they don’t bite deep enough into living to know. No—the stars are close and dear and I have joined the brotherhood of the worlds. And everything’s holy—everything, even me."

Saturday, 15 October 2016

The best color for the bike shed

Bicycle shed.JPG
By SeppVei - Own work, CC0, Link

I watched a video the other day of a chap talking about the bike shed effect. The idea goes around a group discussing building a nuclear plant. As the subject is vastly complicated, not everyone can get their head around the technicalities so most of the team is quiet. But when the subject comes to the planning of the bike shed that is mandatory for every nuclear plant, the room erupts into a massive discussion because everyone involved is an expert on bike sheds.

We do see the bike shed effect in software development too. Discussions around abstractions, algorithms or performance of an application, is usually mellow.

But when it comes to the choice of ide, the non trivial choice betweens tabs vs spaces or whether the team should use swim lanes or epics everyone is ready to karate kick each others' pets.

That is a good bike shed btw. The colour is not quite right though.

Thursday, 15 September 2016

Nothing was ever created by two men

By Source, Fair use, https://en.wikipedia.org/w/index.php?curid=19559604

I am reading East of Eden and just came across this awesome prose;
Our species is the only creative species, and it has only one creative instrument, the individual mind and spirit of a man. Nothing was ever created by two men. There are no good collaborations, whether in music, in art, in poetry, in mathematics, in philosophy. Once the miracle of creation has taken place, the group can build and extend it, but the group never invents anything. The preciousness lies in the lonely mind of a man.
Programming being a semi-art form, needs this magic too. All that process stuff, agile, tdd etc 'the good collaborations' help with the routine bits of application programming.

The real magic however requires the 'the individual mind and spirit'

Sunday, 11 September 2016

Estimate Bullying

By Andrevruas - Own work, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=37657451

The process by which you are asked to estimate a piece of work and then bullied by various means to back down your estimate.

Usually goes like this;

‎Bill Lumbergh: Hey what's happening? Aahh, now, are you going to go ahead and estimate this piece of work
You: Well, these are a very rough description of task/stories etc. If we roughly estimate those and add them up, this whole thing will take X weeks.
‎Bill Lumbergh: Yeah, that's it. Great. What can we get next week?

If the victim is features, that may be fine. If you are pushed into a total hacking frenzy, the whole thing becomes a bit boring.

Stop bullying

Thursday, 1 September 2016

So what is the story? (The importance of a good narrative)

I read this great book recently Sapiens: A Brief History of Humankind. These are the kind of things it talks about...

The modern human is mostly homo sapiens (about 92%, the rest of the dna is neanderthal). But apparently, homo-sapiens is not an evolution of the neanderthal or the homo-erectus. All great ape species walked the earth at the same time up until 50-60 thousand years ago. And it looks like the others (neanderthal man especially) were as advanced as the homo-sapiens. Neanderthals had language, played musical instruments, painted figures on cave walls etc. Also they were stronger than the homo-sapiens.

But at some point the homo-sapiens dominated the whole world massively, driving the other species to extinction (most probably by massacres).

How did that happen? The book suggests that it is because of this;

Lion man photo.jpg
By JDuckeck - Own work, Public Domain, https://commons.wikimedia.org/w/index.php?curid=3843458

The idea is that something in our homo-sapien brain flicked, possibly a genetic defect and we suddenly started to believe in our own bullshit. The importance of this figure is that nobody could possibly have seen that lion-man anywhere. The artist must have imagined it. That vivid imagination, goes the claim, is what gets humans come up with groups larger that their immediate acquaintances (typically of 150 people).

Equipped with this superpower, we went ahead to form larger groups of individuals who believe in the lion-man-king. People who don't know each other that collectively believe in some narrative working together (and killing everybody else who don't) We know the rest as history of kingdoms, crusades, empires, religions, football teams etc.

Now I know this is a very long introduction. But here is what I really want to say;

If you want to keep a group of people together, make them behave like a group, you need a narrative. You need some story that everyone buys into. This applies to countries, religions, unions and also project teams.

Without a story, we are nothing.

Saturday, 20 August 2016

I just work here...

There is a food market close to Waterloo station south bank side. We were there the other day with the girls, got a pizza for the kid, wife and I decided to eat sausages. I got to the stand, girls waiting at a table, and bought two sausage plates. Back at the table, wifey say, "what's that, I asked for a hot dog". "Okay then" back to the sausage stand.

A long introduction I know and none of it really matters but just a bit of a setting the scene. Anyway, I get to the stand and me and the guys that works the stand have this amazing conversation;
Me: Excuse me, I just bought 2 plates from you but my wife would rather have a sandwich. Please can you sell me a bun?
The guy: No friend, sorry can't do
Me: Why not? it is easy, take my money, give me a bun
The guy: I can't, the buns and the sausages are all counted for, they need to go together
And then, he comes up with the legendary mother of all excuses:
"I just work here."
Now, for some it may be the lamest excuse that people use to get out of various situations. But I think it is quite a loaded phrase.

It is a cocktail of one part helplessness, one part despair, a touch of fury and a sprinkle of self loath.

What the guy was actually telling me was;
"I know what I am telling you is total balls but I have no power to change the outcome."
Well, I just write here.

Friday, 19 August 2016

Under the radar programming

Supermarine Spitfire F Mk XIIs of 41 Sqn.jpg

Public Domain, https://commons.wikimedia.org/w/index.php?curid=1183115
Some cool looking spitfires. Not quite under the radar but imagine they were...

Under the radar programming: blending some good quality software development with some "other stuff". The air corridor where all the great software is conceived in large organisations.

Large organisations are usually so swamped with mediocrity that nobody at any management level believes that anything decent can come out of any development team. It is usually futile to ask for air cover while programming/changing a major part of a system.

So take a business deliverable, enrich it with good quality software development (under the radar).

Saturday, 30 July 2016

Too eager, too early?

I had this driving instructor long long time ago, who argued that the most dangerous time for a new driver is their second year after they get the licence. Still quite a rubbish driver with the confidence of a raging bull.

Same applies to programmers.

Above is the magic quadrant of programming abilities vs eagerness. (courtesy of Dr. Dan Spooner)

Now your average junior programmer would not do anything crazy, they usually come up with an idea, ask around a bit and get a second view before they commit any code.

Your experienced programmer is usually self motivated and low maintenance. Asks for requirements and general direction.

Ideally you want programmers to progress in 45 degree diagonal, increasing eagerness with ability. 

The dangerous lot is the left top area, where the programmer is very eager to take on work but not proportionally capable. This is where people start to write crazy things like synchronisation bugs that will run fine for a long time, killing the system when you actually need it to work.

Find that geezer in your team, keep an eye on their work.