Friday, December 24, 2010

Holiday Thoughts

This is just wishing everyone Happy Holidays (Christmas and New Year). Its been a good year, a hard year. I am glad that we have come to this point in the year. I am looking forward with a lot of excitement to all the fun things that can be achieved in 2011.

See you on the other side!

Saturday, November 13, 2010

British Gas nightmare - resolved

Things happened very quickly after I posted this and tweeted about it. I got followed by the proactive folks at British Gas customer relations department. They took up the matter and ensured that an investigation was indeed carried out.

Turns out that, as I suspected, there was a systemic error that meant I was billed when I shouldn't have been. So where telephone calls and emails failed to get me a foot in the door, blogging (macro and micro) kicked the door in. In the end, I got the bill rescinded and also an apology for my troubles. All is well again in the world.

It is an encouraging trend that folks at British Gas are listening to and talking with the groundswell. I think more companies need to be doing so. They also need to ensure that conventional customer service channels are a lot less of a pain to use. A happy customer is a repeat customer.

  

Saturday, November 06, 2010

British Gas nightmare

For weeks now I have been doing  battle with British Gas Home Care regarding an engineer visit. Here's my story.

We moved into our current home just before autumn kicked in and it was still warm. As the days started getting colder we discovered that we didn't know how to work the heating. After a few botched attempts at looking into ourselves we decided it was best to get folks whose job it was. So we called British Gas and explained the problem. They told us we there was a home care agreement under the previous occupant's name and if we wanted to take out a similar one, we said yes and asked them to close the other account to which they responded that only the owner could do so. We were informed that an engineer would look into the issue and carry out tests on our boiler and heating system to ensure that they could still find parts for them.

Engineer shows up and much to our shame, as it turns out, the thermostat was off. He turned it back on, did his tests and went on his way.
Fast forward a few weeks and I get a pay-now-or-else letter saying I owe £210 for services rendered by British Gas. I call them up and  try to ascertain what the bill was in relation to. The operative informs me that it is with regard to the engineer's visit. I inform him that we have a care agreement in place. He says it has been cancelled. I say by whom? He says he needs to get back to me. But he demands that I pay. That irks me and I tell him to find out why my account has been cancelled and that I think £210 is a lot to pay for someone turning on a thermostat. We have a stalemate and he says I might have court proceedings brought against me to which I respond: bring it!

A few weeks after that I get the second letter demanding payment. This is after I had reinstated the care agreement on being told by another operative that it was closed due to an error by British Gas.
 
On getting this letter, I decide that this is bullying. Corporate Goliath trying to trample on average David. It cannot be anything else, as had they taken time to look into the issue maybe they'd have found that I don't owe them. In the event that they needed to charge for the engineer's visit, as some companies do, £210 for an hour's work, if that, is no where near fair.

I have also received further communication relating to this dispute in form of a solicitor's letter urging me to pay or face a county court judgement and all the evil that brings. In response to this I have mailed the complaints department at British Gas and will be hoping that British Gas does what it should have done weeks ago and looks into this issue. I will be posting updates in the coming days and weeks.

All I can say is that from my experience, so far, it is becoming increasingly difficult for consumers to hold service providers accountable and easier for their rights to get trampled upon. I am one customer but on this occasion I have decided that on principle I will follow this to a logical conclusion and take on the giant that is British Gas. Hopefully, the values entrenched in British society will mean that there is a victory for common sense and the little guy.      

Thursday, September 16, 2010

Customer care rant

I was just thinking today about how sweet it would be to have self-service on things like booking a home installation or engineer visit.
You might ask why this is important but today a gas engineer was scheduled to take a look at the boiler (winter is in the winds) and our plans changed.
No one was going to be home. I had only one choice: get on the dog and bone and ask the company (one of Britain's corporate titans) to reschedule the appointment.

For anyone who has ever called to speak to customer care assistants for anything, it is dead time and you are paying for it.
And depending on the time of day and the load it could cost you an awful lot of time AND money.

My ideal scenario? How about if I was given the option to re-schedule the appointment online and not need to talk to anyone? I know some will say that there are folks who the online thing doesn't come naturally to. But I think those who can should be given the option to do things that way. I also think it would have saved me and the service provider time AND money, as the customer care assistant I spoke to could have spent his time trying to sign a new customer.


End of moan.

PS: Given that folks working within the day is almost now the norm, would it be so bad for service providers to have products that appealed to the market? Another rant. Another day.

Tuesday, July 20, 2010

Thoughts on EyeQL

Today we had a small challenge at work which revolved around taking certain changes from one of our code branches and merging them into another branch. Now the keyword here is certain.

One of the conventions we use at work is to have Atlassian JIRA ticket numbers as part of the commit comments. They came in handy today because all the changes that needed to be merged had ticket numbers associated with them.

The problem? An easy way to retrieve all the SVN revision numbers associated with those tickets so that we find it easy merge said revisions to the target branch. Luckily we have Atlassian Fisheye at work and with it comes an interesting DSL (EyeQL) for querying your codebase. I had know about it for sometime but didn't know where it could be used. This was such a case.

The following EyeQL query when run will return the revision numbers I was looking for:


select revisions
from dir /svn/directory/path
where comment =~ "^.*(JIRA-1|JIRA-2|JIRA-3).*$"
group by changeset
return revision


The query goes through all revisions currently indexed by Fisheye and retrieves the revision(s) grouped by changeset that have either or all of JIRA-1, JIRA-2 and JIRA-3 in their commit comments.

Armed with this list of revisions it was easy to go through and merge them from the source branch to the target branch.

We would like to hear your thoughts on whether you have been in similar shoes and how you have gone about solving your problem.

Thursday, June 10, 2010

Loving Spock Framework

I have been following the progress of the Spock Framework for sometime and today decided to take the plunge.

As a JUnit user and having used mocking frameworks like EasyMock and Mockito, I set to work trying to convert a test I had written earlier.

One of the things I found hard to get past was the need to inherit from a given class, namely the Specification. Once I had looked around the code and found that it was built to work in that way, I got down to it. I like the way in which tests are expressed.

I found the interactions/mocking slightly different, especially the syntax. I like the way in which you can use wild card matchers for parameters and number of calls but returning values from a mocked object's interactions was less than intuitive.

Where in the EasyMock world you would say something like


expect(mockedObject.calledMethod()).andReturn(value);


In Spock it would look something like the following


mockedObject.calledMethod() >> {value}


I am hoping that at some point there might be a different way to express that expectation as it currently looks a bit cryptic.

All in all I like that beyond your feature/test name you can self document tests to the extent that it becomes readable for non developers, so a heavy plus there. I also like the fact that IntelliJ and Maven all understand and can run Spock Specifications without any trouble.

In the coming days I will be using the Spock Framework a bit more, especially as I would love to discover other features like Unroll. Will let you know how I get on.

Peace and Love.