Sunday, 21 April 2013

You know what's fun?

Playing games that are fun to play... I am currently playing the exceptionally highly reviewed Bioshock Infinite. It has lots of good features:

  • Probably the best companion ever - she gives you cash, health and ammo
  • The world is beautifully realised and engrossing
  • The story is gripping and you care about the characters
  • Travelling by rails on a hand held hook is awesome

Surely all these excellent points warrant the high ratings? Well, they would if this was a film, but it's not, it's a game, so it needs one more feature - gameplay.

To me, this is where Bioshock Infinite really lets itself down - it's just not that much fun to play. The shooter itself is fundamentally broken, here's what I think.

Battles

So, we've got a big dude with a massive gun - you do extra damage when you shoot him in the back. Ok, so, I have a gun and an ability to freeze this guy in place - strategy sorted.
This will work great if I have plenty of space, and I do. However, I am shot by lots of other NPC's, I don't die, but I am at low health now - maybe my strategy is wrong? Ah well,
there's some health over there, so all's well that ends well. I'll try a different strategy next time.

So next time, I take cover, grab a rocket launcher and shoot from a distance. I kill the machine gun dude, but am flanked and loose a lot of health. Hmm, not an ideal strategy either,
still, I don't die and there's a fair amount of health lying around, so onwards and upwards.

Next up is a guy who takes extra damage to the chest and does lots of damage at close range. I keep him at a distance using my vigors and shoot him in the chest. I take a lot of damage,
but I don't die and there's lots of health around... By this time, I am starting to see a pattern forming. So next time, I just stand my ground and shoot - I take a lot of damage,
but I don't die and there's lots of health around. Man, this kinda sucks, I wonder if the game is more advanced than I'm giving it credit for? So I take to the sky rails and use them to keep mobile.
Same deal... sadness descends.

Weapons

The weapons are largely functional, you shoot up close with the shotgun for maximum damage, the sniper rifle for long range and in between you have the machine gun. There's the RPG for splash damage, but not a single weapon that's fun to use. Nothing that makes you laugh and and smile when you first use it... Remember the gravity gun from Half Life 2, yeah you do! Or the first time in Dishonoured when you blinked onto a walker and cut the driver's throat? Getting the chainsaw in Doom2? The line-gun in Deadspace? Things that were fun to use and play with? I have never practised combat in a single player game the way I did in Dishonoured, but it was just so much fun, there were so many things to try out and play.

Also, you can only carry 2 weapons at once in Bioshock Infinite, which is a nice nod to realism in a game where you can shoot electricity from your hands. This would be fine, if there seemed to be a game play reason associated with it. So far, I've not come across a scenario where the RPG and a machine gun weren't sufficient.

Linearity

I've just finished playing Tomb Raider - which was awesome fun and very linear. My problem with Bioshock is that it seems to suggest an open world to explore, so it jars when I come to a door I can't open or a ledge I can't jump off. It's also the linearity of the combat. I've read reviews raving about how you can set an opponent on fire and then push them at others, or you can trap them in place and shoot them. My issue is that you have to do one of those combinations and it doesn't seem to matter which. Neither option is enough fun to overcome the lack of inventiveness in the options.

Other games

Now Dishonoured allowed you the freedom to kill in many different ways, it even offered you the option of not killing. You could play with the game mechanics and have loads of fun without following the linear plot. Take a look at this and tell me it doesn't look fun Dishonoured. Now I know they are different games, but they both need to be fun to be worthy of such high reviews.

Monday, 1 April 2013

Grinding my gears

What's bothering me

I keep seeing lots of random people in the entertainment industry speaking on behalf of science. They mock anything other than the standard scientific view as proposed by celebrity scientists without any real understanding of what they are talking about. I'm not just talking about Heather Mills talking about the dangers of eating meat, or Roger Moore claiming foie gras causes Alzheimer's disease.

Take this quote from Ricky Gervais:

"Science seeks the truth. And it does not discriminate. For better or worse it finds things out. Science is humble. It knows what it knows and it knows what it doesn't know. It bases its conclusions and beliefs on hard evidence -­- evidence that is constantly updated and upgraded. It doesn't get offended when new facts come along. It embraces the body of knowledge. It doesn't hold on to medieval practices because they are tradition."


All very true and correct as a principle, but it is hopelessly naive as a statement of fact. The scientific method is, of course, the best way we have of acquiring new knowledge and verifying existing theories. However, it is implemented by people and therein lies the rub. If you have made your career based on proposition X, how likely are you to be impartial when examining opposing proposition Y? Really? Is there any evidence to back my claim up?


"String theory now has such a dominant position in the academy that it is practically career suicide for young theoretical physicists not to join the field."

Lee Smolin - The Trouble With Physics.


"A study by the University of Edinburgh examined more than 4,600 scientific research papers published between 1990 and 2007 and found a steady decline in studies in which the findings contradicted scientific hypotheses.
Papers reporting null or negative findings are in principle as useful as positive ones, but they attract fewer readers and citations, so scientific journals tend to reject them.."

http://phys.org/news/2011-09-pressure-positive-results-science-threat.html


There are way too many factors that can distort the accuracy of information coming from the "body of science" to discuss here. However, imagine having to go to your boss and tell him that the work you have done in the last 2 weeks has lead nowhere. 2 weeks of work down the drain - would that be a happy day for you? Now imagine that you are heading up the Human Genome Project.
You have promised a golden era of bio-tech and unparalleled return on investment for your billions of pounds funding... Are you going to go with "For better or for worse, we've found out that it's more complex than we initially thought. Designer babies and the cure for cancer are going to have to wait a bit longer. So in conclusion, there are waaaaay fewer genes than we thought. Remember epi-genetics? Well that's coming back in a big way, so lets all embrace that new body of knowledge"?


"Britain's biggest drug company, GlaxoSmithKline, is facing fraud charges in the United States for allegedly concealing information that its leading antidepressant caused suicidal behaviour among children and teenagers during clinical trials."

http://www.guardian.co.uk/business/2004/jun/03/mentalhealth.medicineandhealth


Why does it bother me?

Because the scientific method is the way forward, however, it is impossible to be sure that you have analysed all of the data correctly when you simply don't have all the data.
Ben Goldacre has made a career (and a valid contribution to science) of exposing this.
Yet, I continue to see people mock the views of others because of their dogmatic belief that anything the scientific community says must be true.


We need to move back to the old scientific standard of having an open and enquiring mind. A balanced view of all sides of the argument is the route to making up your own mind. Not choosing a science super hero on the basis of their personality and mindlessly vomiting their words into the ears of anyone who tickles your unscientific gag reflex.

If you read Richard Dawkins The God Delusion, read Pierre Teilhard de Chardin's The Phenomenon of Man. If you read about the mind, read Hofstader, Penrose AND Sheldrake. Learning is fun! It's much more fun if you figure out the answer for yourself.


I have always liked this quote from Pierre-Simon Laplace, when asked by Napoleon where in his scientific thinking was the role for a creator, he replied "I had no need of that hypothesis".
It represents to me a beautiful neutrality, without a hint of the dogma I oppose in the current scientific zeitgeist.


Finally

And if you are going to mock religion, be careful! It's like playing pool against your kid - if you win, it's the slow hand clap of 'well played, you have better eye hand co-ordination than someone who still gets dressed by his mum'; if you lose, the mockery is, rightly so, endless.

I watched a comedian I follow on twitter make a comment about the death of Christ not being a big deal for God because he could always have more kids... Really? The basic premiss of this attack was 'you are stupid because your beliefs have no logical basis, I am superior to you because I am a logical man of science'. Who believes that people who lose a twin shouldn't be upset because they have a spare? On behalf of those of us who were atheists before Richard Dawkins and Sam Harris told you it was cool - please stop talking.

Saturday, 8 December 2012

The fine line between the -ism's

An interesting chat at work: A colleague was reading a news paper article about racism in the job market, stating that a young job seeker had been advised to change her name from Jordan to Elizabeth. My colleague stated that he didn't think this was racism, but class-ism, remarking that Elizabeth is classier than Jordan, not more British.

I liked his point, it made me think that if someone told me I was to meet a lady called Jordan to interview I would have no pre-conception of her race. My pre-conception of Elizabeth however, was that she would be better dressed. My colleague then took the point a step further, stating he wouldn't date a girl with the same first name as a wine.

That's when it hit me

This wasn't class-ism, or racism, IT WAS SEXISM!

Whatever happened to the days of Audrey Hepburn? A women to be treasured and worshipped, change her name to Chardonay Hepburn and she becomes a glitter soaked vajazzled sexbeast! Michelle Pfeiffer => Lambrini Pfeiffer.

The true horror of this insidious state of affairs only becomes apparent when you show the difference between the sexes. Lets flip it around and see what happens to our men under this new regime:

  • Johhny Shiraz
  • Mike Bordeaux
  • Ronny Budweiser
  • Little Bobby Shandy
  • James Hofmeister

All of a sudden these guys are comic book super heroes! Fighting for Good, Justice and Honour, but they have been subverted by the machine - unwitting soldiers in the war against the fairer sex!

Makes you think, doesn't it?

Monday, 9 April 2012

Thoughts on TED

I've been watching quite a lot of TED talks recently. Obviously the variety and depth of the talks is one of the things that make TED so amazing. I watched a couple recently, one was of a woman that wraps people in straws and takes pictures, the other was about a guy who designs book covers. It got me to thinking that if you could talk about your job all I needed to do was write some cool JavaScript and I'd be on the TED stage rockin' faces. Whilst living out this little fantasy in the theatre of my mind, I suddenly realised the horror. I then wondered when other people came to the same realisation?

Scenario 1: backstage

So, I am backstage and nervous along with the other speakers. The topic of conversation inevitably turns to subject of our talks. I give a pithy explanation of some software development project ending with my motivational line "One morning I got into the office at 8:30 to find there was no coffee... but you know, even through the dark times, we never gave up..." I guess that's why I am in the inspiring section.

I am imagining a reply to come from a plain looking middle aged lady, who you would correctly describe as "really nice". She would smile and say she was in the inspirational group too, which was great as we could be friends. I would smile and graciously ask her about her talk.

"Oh, I'm here to talk about my dog really. We were on holiday in India when my 6 month old child fell through a hole in the ground into a snake pit. The hole was so small that we couldn't reach her to get her out but we could see snakes all round her. I don't mind telling you I was really panicking! Then Poppy, my little King Charles Spaniel jumped down the hole and fought off the snakes until we could get help. She was bitten 15 times and had enough venom in her to kill a rhino, but she protected my little baby until we could dig her out."

As if this story isn't enough to knock your confidence, in the silence left by the end of her tale I hear the guy next to you finishing of his practice speech with:

"... and that's how I managed to secure a clean water supply for a village of people living in one of the worlds harshest environments."

Scenario 2: after the talk

Scenario 1 is pretty harsh, but that lead me to scenario 2. You don't find out about other people's talks till after you have delivered yours.

After giving my talk, I wander over to my friends to find out how it went from the perspective of a member of the audience. "So friends and family members, how did it go? Awww Mum, you are crying - did I make you proud?"

"What? Oh, actually, I'm still thinking of that puppy. Yea, you delivered your story really well, it's just that you were scheduled between that kitten that can sniff out cancer and the 16 year old kid who built a nuclear reactor in his garden shed. But your script thingy was good too..."

The journey home

But the punishment doesn't end there - imagine the journey home. Everyone is super excited and inspired by the talks they heard that day and are swapping their favourite bits.

"What about the woman who swam from Cuba to the States and kept getting stung by Portuguese men of war but insisted on getting her adrenaline shots in the water! She was mental!"

"Yea, but that guy who built schools for children out of trees he had to sail across the lake of terror - he was just some sort of saint."

Then to compound the injury, someone notices the sad on my and tries to help. "Well, I think my favourite bit was when Ant said he didn't know how to do that thing. Then he thought how to do it when he was in the bath and he got out of the bath and made the floor wet - that was pretty funny."

That's why it's actually a good thing I will never get to do a TED talk.

Sunday, 18 March 2012

Science cont...

Previously I stated that I believe the scientific method to be our best bet on determining the validity of a claim. However, I also stated that I believe scientists to be flawed in their implementation of the scientific method. This is partly because no-one is truly independent, especially when it comes to disproving their theories. It is especially true when it comes to money, determining your own career and keeping your job.

Richard Dawkins

When I was at school I read The Selfish Gene by Richard Dawkins and changed my plans on what I wanted to study at university. One particular story from the book has stayed with me throughout my life - it was about a Cambridge professor who sat in a lecture given by someone with an opposing view point. The professor realised that the opposing view point had great merit and at the end of the lecture he went onto the stage, stated he had been wrong for a number of years and thanked the lecturer for correcting him.

Like most people, I have spent much of my life being wrong and being corrected by others, but that story has always helped take the sting out of it. It is much more important to learn than it is to be right.

Big science

I fear that the large sums of money being poured into science and the way it is handled has caused this lesson to be lost in science today. This is because it's pretty difficult to take £150 million in government money to study the nuclear furnace in suns and then turn round and say "sorry, I was wrong, it's all based on electricity".

In the introduction to his book The Trouble with Physics, Lee Smolin talks about the difficulty of getting a tenured professorship in particle physics if you don't study string theory. Donald Scott talks about NASA (annual budget of $15 billion tax payer's money) openly refusing to fund any cosmological research that is adverse to the Big Bang theory. Rupert Sheldrake talks of Richard Dawkins refusing to listen to his evidence before debunking him.

Yet every new major discovery in science has brought with it things that were previously unthinkable, for example, Bruno's assertion that the sun was a star, or Darwin's assertion that we all have a single common ancestor. New discoveries often prove the old ideas wrong - the earth is not flat, nor is the universe mechanistic. Yet science is closing down alternative avenues of investigation to concentrate on the most popular?

This dogmatic approach to learning seems far removed from the early writings of Dawkins that so spoke to me. It also seems somewhat counter to the general spirit of scientific discovery, especially when Rupert Sheldrake asserts that if a mere 1% of the current scientific funding could be used to fund non-mainstream projects and make a real difference.

We are living in a time where advances in particle physics have slowed dramatically. The imagined benefits of the human genome project largely failed to materialise, despite enormous amounts of money being thrown at the problems. Perhaps it is time for science to become less dogmatic, less like a religion and more like an open network of people searching for answers through rigorous application of the scientific method.

Science

One of the problems with interacting with others is dealing with a fundamental lack of common ground. For example, when your two view points on a topic of discussion are so far apart that there is no place to plant a flag and say "Ok, this is our mutually agreed and understood starting point". I find that these are always deeply painful discussions, which sadly are usually quite difficult to get out of. This can be pretty depressing, as they also seem quite easy to see coming.

If you are a musician, one such conversation may start "I don't see what all the fuss about jazz is, I mean, it's just picking a series of notes from your scales isn't it?" Obviously, when someone says something like this as an opener, you can just let it slide, but when they wait until half way through a discussion, you can't really just nod and smile.

Scott Adams (of Dilbert fame) has pretty much made a living from these kind of fundamentally opposed understandings in engineering. I once had a supervisor say to me "I don't understand why this is taking so long, if it's a computing problem, then the answer must be either zero or one. Just try them both and use whichever works." I still wonder if they were actually pretty funny and I just didn't get them.

It is perfectly possible for two people to view the same issue very differently and for both to have sensible views. Politics is full of such scenarios, however these are not the issues that concern this post.

For me, these interactions often start part way through a discussion with the assertion "well, 'Science' doesn't know everything". This statement tells me a number of things:

  • My assertion that I am right in this instance has been extrapolated to an assertion that I am right about everything.
  • The discussion has moved to an emotional phase
  • There is evidently a deep misunderstanding about science.
  • If I haven't been able to explain my point up until now, there's no chance of me doing so by continuing.

Science doesn't know everything

Science doesn't know anything... it's not an entity in its own right. There are scientists, who certainly don't know everything and as far as I am aware, they don't claim to. In fact, if ever there was a group of people who are crushingly aware of what they don't know, it's scientists. Scientists are a group of people who attempt to acquire knowledge in a systematic manner. That systematic manner is called the scientific method.

The scientific method

The scientific method is the best method we have for acquiring knowledge. Its past victories include penicillin, television, brain surgery, space travel and the atomic bomb. It is of course flawed as are the people who implement it, however it still remains, to date, our best bet for determining the validity of a claim. So, when Brian Cox appears on tele and tells you that the sun is a giant nuclear furnace, he isn't handing you down a decree directly from science itself. In much the same way, when I say "there's no evidence to show that homeopathy works any better than sugar pills and no obvious method through which it could have the effect you are stating" I am not saying that I know definitively that homeopathy is a load of crap. I am saying that there is no evidence at all to suggest that it does work and thus, it would be foolish of me to believe it did.

I am not saying that it is impossible that I have won £2,000,000 on the Spanish email lottery; it's just that it would be foolish of me to believe something without real, compelling evidence.

It's the same with homeopathy. I would gladly take homeopathic remedies, if someone could give me compelling evidence to show that they worked. It's not enough for me to hear that a friend's aunt took this potion and she swears by it, I want to see it work in a standard and repeatable manner.

Being right for the right reason

It is also important to be right for the right reasons. Being right for the wrong reasons are just luck and that is a poor strategy for future success. For example, lets say you have 2 boxes, one has £100 in and the other is empty. You can choose one box and keep its contents. The only information you have is that the box on the left is twice as likely to contain money as the the box on the right.

There are four possible outcomes depending on your choice and the location of the money:

 Left box chosenRight box chosen
Money presentYou are lucky and smartYou are lucky and an idiot
Money not presentYou are unlucky and smartYou are unlucky and an idiot

My point here is that the result depends on how lucky and how smart you are. However, you can only affect how smart you are.

Sunday, 11 March 2012

Developer Cruft

Like most developers, when I start to work on a new project I don't generally do so from scratch. I have a series of code snippets I use to do common tasks. Things which can be added to a project quickly and safely - having been tested in the fires of other projects. This helps me develop faster and more robustly - it would seem growing old has some upside. Experience counts for quite a lot in development. Having a back catalogue of problems you have experienced and solved is very useful.

However, software development is a fast moving industry and I can see a trap waiting for me. Anything I wrote previously could have been superseded by others in open source projects. Unfortunately, it is much easier to use a familiar block of code than to learn something new... This is not a problem a more junior developer faces, there is only the unfamiliar. The code produced may take longer, but it perhaps has the advantage of being more relevant. My name for this issue is developer cruft, how much of my code at any one time is a bit old and past it?

My solution to this problem is to look toward peer review, having others dig about in your code and make fun of it is a great way to get to grips with new things that you've missed. Sometimes that's not really possible, for example, in a really small team. When you are on your own, it's hard work keeping up to date. The recent explosion in JavaScript and thus JavaScript libraries, frameworks and plugins make it hard work keeping up-to-date. I find reading other people's JavaScript a great way of getting development advice from others - sure it's harder work, but its really helpful. As well as reading other code, working with other code can be a real eye opener - if a project isn't highly time pressured, consider developing in a different manner, perhaps using a new framework, it will open you up to learning and that's never a bad thing.

Don't get me wrong, code doesn't become bad simply by getting old. Sometimes the code you wrote a while back was awesome then and still rocks the show today. Sometimes it was sub-optimal then and you've learnt enough in the intervening time to recognize and fix it. Whatever you find, its important not to rely too heavily on old code you wrote when you were less experienced than you are now.