Movie Review: Curse of the Golden Flower

Had a wonderful evening, had a meal with Amanda, Maria and her sister Dora and then we went to The Electric to watch Curse of the Golden Flower. The Electric is a fantastic little cinema, you get large leather seats and drinks / refreshments served while you watch the movie. It’s a stunning venue and I’m positive we’ll be going there again … here’s a picture:

Amanda even managed to get me to scoff this huge slice of chocolate cake they do – well it is my birthday tomorrow so I guess it’s ok 😉


Image:Wikipedia

As for the film, as far as tragedy’s go this one might have driven Shakespeare to suicide! It’s one of the most bizarre movies I’ve ever seen. Yet the sets, costumes and cinematography are absolutely stunning. Don’t make the mistake of thinking this is another Crouching Tiger, Hidden Dragon because it couldn’t be futher from that. The story revolves around an Emperor who is secretly poisoning his wife, she in turn is plotting against him using his sons to overthrow him. It’s basically the story of a rotting family that destroys itself in one night.

I thought the film was very good, I struggled to keep up with the plot but the acting was superb.

End of sprint, SCRUM and why I’m feeling so good

We’ve just reached the end of our eighth sprint on the project I’ve been working on. On Monday we’ll be doing our end of sprint demonstrations to customers as well as internally to the rest of the company and I have to say I’m feeling quite good about it. It’s a lovely day today feel like I need to chill (or as Rob suggested – maybe I need to get a life 😉 ) anyway I’ve been sitting here reflecting on this month and there’s a few things I want to talk about.

I’m fairly new to the SCRUM methodology, in fact this is the first project I’ve worked on that formally uses it. Our development group here at Talis has adopted the SCRUM process across all of our current projects with what I feel has been a great deal of success.

For me personally the transition from traditional waterfall approaches to agile methodologies has been a revelation in many ways. Before joining Talis I’d spent a number of years developing software based on traditional waterfall methodologies. What was frustrating with these traditional approaches was that you’d spend months capturing and documenting requirements, you’d then spend a while analysing these requirements and then designing your software product, before implementing it and then testing it. Any changes to the requirements invariably meant going through a process of change impact analysis and then going through the whole process again (for the changed requirements), which naturally increases the cost to the customer.

A side effect of which, from the perspective of the customer, was that changing requirements during the project was a bad idea, because of the extra costs it would incur. A consequence of this is that customers would often take delivery of systems which after a couple of years of development, don’t actually satisfy the requirements that they now have. These same customers would then have to take out a maintenance contract with the vendor to get the systems updated to satisfy their new requirements.

From a developers point of view, I often found this to be very demoralising, you knew you you were building something the customer didn’t really want, but the software house you work for wants to do that because they have a signed off requirements document and contract that guarantee’s them more money if the customer changes their mind. I often found that when we reached the end of a project, the delivery of that software to the customer was a very and nervous and stressful time. The customer at this point has not necessarily had any visibility of the product so there’s usually a couple of months when your organisation is trying to get them to accept the product – which invariably led to arguments over the interpretation of requirements – and sometimes scary looking meetings between lawyers from both sides.

There was always something very wrong with it.

Since joining Talis, and transitioning to agile methodologies I can finally see why it was so wrong, and why agile, and in this case SCRUM, work so well.

For one thing, I’m not nervous about the end of sprint demonstrations. 🙂 The customers have been involved all along, they’ve been using the system, constantly providing feedback, constantly letting us know what were doing well, and what we need to improve on.

Our sprints have been four weeks long, which means at the beginning of the sprint we agree which stories we are going to implement based on what the customers have asked us for, these can be new stories that have been identified, or stories from the backlog. The customers have an idea, from previous sprints, what our velocity is – in other words they, and we, know how much work we can get done in a sprint so when we pick the stories for the sprint we ensure we don’t exceed that limit. This keeps things realistic. Any story that doesn’t get scheduled in for the sprint because it was deemed less of a priority than the stories that are selected gets added to a backlog.

This iterative cycle is great! For one thing customer’s are encouraged to change their minds, to change their requirements, because they then have to prioritise whether that change is more important than the other items on the backlog. They are empowered to choose what means the most to them, and that’s what we give them ! The customer doesn’t feel like the enemy, but an integral part of the team, and for me that’s vital.

As a developer it feels great to know that your customers like your product … and why shouldn’t they, they’ve been involved every step of the way, they’ve been using it every step of the way.

I’ve only been here at Talis for ten months, and in that time I’ve had to constantly re-examine and re-evaluate not only what I think it means to be a good software developer but pretty much every facet of the process of building services and products for customers. For me it’s been an amazing journey of discovery and I’m pretty certain it’s going to continue to be for a very long time.

The really wonderful thing though is that in our development group I’m surrounded by a team of people who believe passionately that it’s the journey and how we deal with it that defines us, and not the destination. So we are constantly looking for ways to improve, that in itself can be inspiring.
So yeah … I feel good!

Our development group is always looking for talented developers who share our ethos and could fit into the culture we have here. If you’d like to be a part of this journey then get in touch with us. Some of us, including myself, will be at XTECH 2007 next month, so if your attending the conference come and have a chat with us.

Book Review: 40 Days and 40 Nights. by Matthew Chapman

Actually the full title of Chapman’s book is 40 Days and 40 Nights: Darwin, Intelligent Design, God, Oxycontin and Other Oddities on Trial in Pennsylvania, and it has to be one of the most uniquely interesting and engrossing books I have read in a long time. I actually read the whole thing cover to cover over this weekend, I simply could not bring myself to put it down – in fact calling it engrossing simply doesn’t do it justice.


Image:Amazon.co.uk click for details

The book is about Kitzmiller vs Dover, the 2005 federal trial of a public school board’s attempt at getting Intelligent Design into the high school science curriculum as an alternative to the Theory of Evolution. In the end the plaintiff’s, comprised of concerned parents of students at the school successfully argued that Intelligent Design was a form of creationism, and the school boards policy thus violated the Establishment Clause of the First Amendment to the United States Constitution.

There’s two things that make this book so interesting. The first is that Matthew Chapman, the author, is the great-great grandson of Charles Darwin and I find this quite fascinating. It’s almost as though he is uniquely place to offer a perspective no-one else could, even though Chapman is not a scientist but a film director. The second is that although the book covers the trial and does discuss the scientific arguments presenting during the trial, the book isn’t about the science, but more about the people involved.

What Chapman offers through his in depth encounters with the people involved on both sides of the issue is at times a frightening, but also amusing, and above all a very moving story of ordinary people doing battle in America over the place of religion in science and modern life.

Chapman has also written an earlier book called Trials of Monkeys: An Accidental Memoir, that provided an account of the famous Scopes Trial in Tennessee in 1925 where school teacher John Thomas Scopes was prosecuted for breaking a recently passed law which forbade the teaching, in any state funded school, of “any theory that denies the story of the Divine creation of man as taught in the Bible, and to teach instead that man descended from a lower order of animals”. Chapman often contrasts the Kitzmiller trial with the earlier Scopes trial – in which all the expert witnesses for the defence ( scientists ) were not allowed to testify by the judge.

Fortunatly the Kitzmiller trial the expert witnesses from both side were allowed to testify and it’s fascinating to see how the Creationist arguments on the so-called theory Intelligent Design were torn to shreds under cross examination.

However fascinating the scientific arguments were what captivates the most are Chapman’s descriptions of the people involved – the Christian Fundamentalists on the school board who bullishly forced through their policies; the faculty members who opposed the board even in the face of intimidation; the parents of children who protested and eventually sued the board; and the two legal teams their respective expert witnesses.

It’s hard not to be disturbed by the description of how the school board went about installing ID into the curriculum. In effect they polarised the community into those who believed in God and Creation and branded everyone else atheist – even though many of the Plaintiff’s and teachers at the school were Christians. The threats of violence and intimidation against the plaintiffs and their families were frightening. Chapman’s descriptions of the families his accounts of conversations with them and the depth of their concerns is captivating. As is their willingness to stand up and fight this even if it meant they were ostracised by the very community they lived in. To get a feel for what I mean, during one Board meeting when concerned parents pointed out that teaching creationism could land the school into serious legal trouble one of the pro-intelligent design Board members stood up and shouted –

“2000 years ago someone died on a cross, can’t someone stand up for him now?”

One of the most amusing bit’s in the book is when Chapman describes the cross examination of Michael Behe the star witness for the defence – a fastidious proponent of Intelligent Design and author of Darwin’s Black Box and the man who coined the phrase “irreducible complexity”. In fact in a recent interview with New Scientist Chapman describes why this moment stood out:

The most disturbing element was how the intelligent-design crowd, many of whom I liked, would intellectually and morally contort themselves to cling to ideas one felt even they did not quite believe. The scientists among them seemed to have taken hold of small shards of the scientific whole that no one fully understands yet, and created a shield against reality. They were smart people, and at times it was painful to watch them. There was a moment when one intelligent-design scientist [Behe] was literally walled into the witness box by books and articles detailing an evolutionary process he said had not been described. And though they had had months to prepare, the school board members who advocated intelligent design still knew almost nothing about it. When asked to define intelligent design, one of them defined evolution.

You can read the book for the actual narrative, but the image of this ID Scientist who is arguing that no-one has ever been able to prove or been able to document how the Immune System in vertebrates could have possibly evolved through natural selection, a corner stone of his argument for Intelligent Design, being systematically walled into the witness box as the prosecuting lawyer literally buries him in papers, books, articles all discussing and describing precisely that evolutionary process … was as I said amusing … but at the same time deeply deeply worrying.

Behe also went on to admit that he had considered a possible test that would falsify intelligent design, when pressed on whether he had carried out the test he replied that he hadn’t and neither had anyone in the Intelligent Design movement. Here was a scientist arguing for his theory to be taught in schools and yet he could not be be bothered to test it. Or as Chapman puts it:

Wasn’t that the first thing you would do? Wasn’t this, in fact, exactly what science was?

Anyway I feel like I’m ranting, but it’s been a long time since a book really captivated me like this and opened my eyes to a number of truths, particularly about the creationist movement in America. For a while Rob and I have been discussing the whole Evolution vs Creationism phenomenon. In fact we’ve both done a fair bit of research into it and I was genuinely surprised whilst reading this book to find that many of the questions we’ve been asking ourselves about why it is the scientific community hasn’t been able to convince the Creationist’s that evolution is a real theory are actually answered – well in part.
If there’s one book you read this summer … read this one!

Goodbye Steve

I lost a very close friend of mine a little over week ago. Steve died when he lost control of his car on the way back from a friends birthday celebration. He was cremated on Thursday, I think that’s really when it actually hit me that he was gone – up until that point I’d managed to shut my feelings out so I could get on a do the things I needed to do … get on with work, help Steph with the funeral arrangements. It’s probably not a good idea to stick your head in the sand though, or pretend nothings wrong. I did make a few careless mistakes at work this week, I guess I was a little distracted – but fortunately I work with a group of guys and gals who are quite perceptive and know when something not quite right.

It was only Thursday it really hit me – at the crematorium. It’s a good job we have the Easter weekend, it’s given me a little time to reflect on things … get my head out of the sand and actually admitt to myself something is wrong.

As I write this im struggling to find the words to do him justice, but when I think of him I’m reminded of this passage from the Teachings of Tecumseh, i think he’d have appreciated this:

So live your life that the fear of death can never enter your heart. Trouble no one about his religion; respect yours. Love your life, perfect your life, beautify all things in your life. Seek to make your life long and of service to your people. Prepare a noble death song for the day when you go over the Great Divide. Always give a word or sign of salute when meeting or passing a friend, or even a stranger, if in a lonely place. Show respect to all people, but grovel to none. When you arise in the morning, give thanks for the light, for your life and strength. Give thanks for your food and for the joy of living. If you see no reason for giving thanks, the fault lies in yourself. Touch not the poisonous firewater that makes wise ones to fools and robs the Spirit of its Vision. When your time comes to die be not like those whose hearts are filled with the fear of death, so that when their time comes they weep and pray for a little more time to live their lives over again in a different way. Live your life so that when you sing your death song, you will die like a hero who is going home with no shame to meet the Creator and your family.

rest in peace … old friend.

Microsoft is dead.

I’ve read pretty much all of Paul Graham’s essays. I think he’s a wonderful writer and in the past we have often found ourselves debating his views at our bi-weekly geek bookclub @ Talis. One of his most seminal pieces was Hackers and Painters – which every developer should read. So, as you might imagine, I was more than a little intrigued this morning when my FeedReader listed a new essay by Paul with the contentious title: Microsoft is Dead.

Paul argues that Microsoft is no longer frightening, that the company is no longer seen as a threat, no longer casts the shadow it once did over the entire software industry:

I can sense that. No one is even afraid of Microsoft anymore. They still make a lot of money—so does IBM, for that matter. But they’re not dangerous.

Paul attributes this demise, if that’s the right word for it, to four things:

Firstly , Google. Who Paul believes is the most dangerous company now by far, in both good and bad senses of the word – using www.live.com as an example of how Microsoft is limping behind Google, continuously playing catchup.

Secondly, was the release of Gmail and the introduction of AJAX to the masses. Gmail showed how much you could do with web based software – signalling the death knell of the desktop as more and more applications are delivered over the web. Paul describes how Microsoft themselves might have contributed to the rise of AJAX, something I was previously unaware of:

Ironically, Microsoft unintentionally helped create Ajax. The x in Ajax is from the XMLHttpRequest object, which lets the browser communicate with the server in the background while displaying a page. (Originally the only way to communicate with the server was to ask for a new page.) XMLHttpRequest was created by Microsoft in the late 90s because they needed it for Outlook. What they didn’t realize was that it would be useful to a lot of other people too—in fact, to anyone who wanted to make web apps work like desktop ones.

The third cause is the widespread availability of high speed broadband Internet access – which is key to facilitating the delivery of web based applications to end users – which in turn is key to moving users away from the reliance on desktop based tools and applications.

The final nail in the coffin, Paul argues, came from Apple. The company re-defined itself and offered the world a viable alternative to Windows, in OS X. I know from personal experience that although I don’t have a Mac or a PC running native Linux, I do much of my development work in Linux VM Machines – this is partly due to infrastructure policy on our company laptops … which I should hasten to add … just changed 🙂 So when I get my shiny new laptop I can run Linux on it natively Yippee! ( I’d love it even more if I could have one of those 17″ MacBook’s … pretty please Ian if you do I’ll buy you one of these t-shirts!)

I think to a great extent Paul is actually right. But I personally wouldn’t count Microsoft out of the running. Microsoft is still a company that is capable of innovating great things. Just take a look at what’s coming out of their research labs in terms of PhotoSynth and DeepFish – to understand that they are looking to push the envelope in certain areas. Unfortunatly it does appear that these days they are reacting to innovations made by their competitors – www.live.com , and maps.live.com are great examples of two Microsoft products that are essentially late alternatives to Google Web Search, and Google Earth. Instead of leading the way, Microsoft is being forced to change it’s traditional business because others, like Google, are changing the industry around it.

I think Paul is absolutely right when he attributes part of their downfall, as it were, to their complacency as a Monopoly:

I’m glad Microsoft is dead. They were like Nero or Commodus—evil in the way only inherited power can make you. Because remember, the Microsoft monopoly didn’t begin with Microsoft. They got it from IBM. The software business was overhung by a monopoly from about the mid-1950s to about 2005. For practically its whole existence, that is. One of the reasons “Web 2.0” has such an air of euphoria about it is the feeling, conscious or not, that this era of monopoly may finally be over.

It’s been a well known fact for years that Microsoft is propped up by the profit it generates from two product lines … Microsoft Windows, and Microsoft Office. Hell even the XBOX is still making a loss for the company. It’s no accident then, that Google, have released browser based Office applications, in the form of docs.google.com. This service allows people to write and share documents and spreadsheets for free, combined with gmail and several other apps. Google are now positioning themselves as a service provider offering enhanced versions of this service for small businesses for $50 per user, per year. This will no doubt force Microsoft to change – perhaps even releasing a browser based SOA version of its Office Suite. It’s going to be interesting to see how this competition between these two giants pans out. I’m not saying that being the first in this kind of race is always the best, but if you get into a position where your forcing both the industry and your competition to react to you then thats got to be a good thing.

Take the time to read Paul’s essay. It’s not very long, but it does make some excellent points.

Yahoo! alpha (beta) Search – released

Looks like Yahoo! has taken a page from Google’s SearchMash experiment. I’ve been using SearchMash as my default homepage in firefox for a while now – because I can get an aggregated view of search results on a single page instead of having to navigate to different pages for different types of content.

Yahoo! ‘s new offering called “alpha” ( which is currently in beta 😉 ) neatly organises results from the Web, Flickr, YouTube, Wikipedia and Yahoo Answers, as well as other sponsored results. In fact at first glance it looks, well, almost identical to SearchMash actually. Yahoo! have stuck with a traditional paging control to page through search results, whereas SearchMash does away with the paging metaphor and instead gets more results which are added to the bottom of the page.

Yahoo! alpha integration with both YouTube and Flickr is very nice. Even though the layout of the two search engines is almost identical, I think Yahoo! makes better use of the screen, content doesn’t feel as cluttered as SearchMash can at times.

I like Yahoo! alpha. I love the fact that I can customise the layout and move the portlets around to my own liking … and I can share my layout with others. There’s no doubt in my mind that Yahoo! have taken a great idea that Google was experimenting with, and have improved upon it.

It will be interesting to see how Google respond to this? I’d hope it would be by releasing a long overdue update to SearchMash, to show all of us who have been providing feedback if and how they have taken that on board.

Information Software and the Graphical Interface

I came across a very interesting paper by Bret Victor a couple of week ago- “Magic Ink: Information Software and the Graphical Interface“. Here’s an extract from the abstract :

The ubiquity of frustrating, unhelpful software interfaces has motivated decades of research into “Human-Computer Interaction.” In this paper, I suggest that the long-standing focus on “interaction” may be misguided. For a majority subset of software, called “information software,” I argue that interactivity is actually a curse for users and a crutch for designers, and users’ goals can be better satisfied through other means.

The paper echoes some of the views Alan Cooper discussed in The inmates are running the asylum – another text that I think anyone interested in HCI / User Interface Design / Interaction Design should definitely read!

The author goes to great lengths to try demonstrate why information software design should be seen as the design of context sensitive information graphics. He goes to great length to explain and demonstrate what he feels is the importance of information graphic design:

A well-designed information graphic can almost compel the viewer to ask and answer questions, make comparisons, and draw conclusions. It does so by exploiting the capabilities of the human eye: instantaneous and effortless movement, high bandwidth and capacity for parallel processing, intrinsic pattern recognition and correlation, a macro/micro duality that can skim a whole page or focus on the tiniest detail. Meanwhile, a graphic sidesteps human shortcomings: the one-dimensional, uncontrollable auditory system, the relatively sluggish motor system, the mind’s limited capacity to comprehend hidden mechanisms. A graphic presents no mechanisms to comprehend or manipulate—it plugs directly into the mind’s spatial reasoning centers.

On the face of it this sounds reasonable – a picture speaks a thousand words. How we present information to our users has to be the most important question software designers should be asking themselves. So why don’t they? Well I wrote a piece offering my views on that question a while ago: programmers are generally bad at user interface design. So as you might imagine I find myself agreeing with what Bret writes here:

Compared to excellent ink-and-paper designs, most current software communicates deplorably. This is a problem of surface, but not a superficial problem. The main cause, I believe, is that many software designers feel they are designing a machine. Their foremost concern is behavior—what the software does. They start by asking: What functions must the software perform? What commands must it accept? What parameters can be adjusted? (In the case of websites: What pages must there be? How are they linked together? What are the dynamic features?) These designers start by specifying functionality, but the essence of information software is the presentation.

I believe there is a great deal of merit in the argument that Bret makes, and the examples he uses such as his BART project are indeed compelling. However its important to note that they are relatively small software projects. BART is a small desktop widget that provides train schedules so you can plan journeys around the San Francisco bay area. It’s a great example of providing users with information that is important to them and providing interactions that are intuitive but not distracting. It feels even more compelling when he compares his widget to the official bay area trip planning tool – which presents information to user in html tables full of text.

Unfortunatly highly graphical user interfaces aren’t normally very accessible to people with disabilities, for example visual impairments. When I look at the BART widget, as a user I love it, its simple presents a wealth of information that I can take in, in a glance – but that’s because I don’t have any disabilities. If I take a screenshot of it, then using photoshop turn it into a grey scale image – its suddenly much harder to use. It’s one of the reasons many DDA standards require that you cannot use colour alone to signify meaning. I could go all the way and ask how a blind user might use the widget. The answer is, they wouldn’t be able to. There’s a wider question of course of whether they’d want to or need to use it 😉 .

The accessibility issue aside, I think software designers should reflect on what Bret has written, and others before him, like Alan Cooper. I know I struggle with some of the ideas he’s presenting here, but I can’t help but feel that too many software projects descend far too quickly into the delivery of “functionality”, without any significant effort or thought placed into whether the software is presenting the user with the information he/she wants as effectively, and efficiently as possible from the point of view of the user. Far too often the very interactions and flows through an application can be a product of the framework the developers have chosen to use, for example JSF – forces certain patterns of behaviour that the user in turn is forced to adopt by proxy.

I’m not sure if there’s a right or wrong answer, but Bret’s paper has given me plenty of food for thought, you should definitly read it!

Google Notebook – New and Improved

The Official Google blog today announced the release of the new, updated multi lingual version of Google Notebook. Put simply it’s a free service that provides a very easy way to save and organise research and thoughts as you browse. It’s provides very similar functionality to the snipit service that I have discussed previously on this blog.

Users can make their Google Notebook public and share the notes they’ve taken with others. As a result, the time and effort put into their research can be harnessed by the online community as a whole. Each note has a heading or title and you can drag and drop notes in order to organise them within a notebook. The interface, like most Google products, is intuitive and easy to use. I’ve installed the FireFox extension for Google Notebook which build support for clipping content and create notes directly into the browser.

Have to admit, I really like it.

Enemy Territory Quake Wars – Training Videos

Here’s a couple of training videos that explain how the GDF and Strogg forces and their respective character classes function in the Enemy Territory QuakeWars – a title I’m eagerly anticipating and judging from the videos the game looks incredibly impressive.

GDF Training Video

 

Strogg Training Video

 

The video’s are a bit old but certainly give you a pretty good insight into the gameplay. I’m really looking forward to this release.

When We Two Parted

When we two parted
In silence and tears,
Half broken-hearted,
To sever for years,
Pale grew thy cheek and cold,
Colder thy kiss;
Truly that hour foretold
Sorrow to this.

The dew of the morning
Sank chill on my brow -
It felt like the warning
Of what I feel now.
Thy vows are all broken,
And light is thy fame:
I hear thy name spoken,
And share in its shame.

They name thee before me,
A knell to mine ear;
A shudder comes o'er me -
Why wert thou so dear?
They know not I knew thee,
Who knew thee too well: -
Long, long shall I rue thee
Too deeply to tell.

In secret we met -
In silence I grieve
That thy heart could forget,
Thy spirit deceive.
If I should meet thee
After long years,
How should I greet thee? -
With silence and tears.

Lord George Gordon Byron