Archive for the ‘Uncategorized’ Category

Five Lies from Three

Thursday, July 7th, 2011

I hope you’ll excuse me digressing from the usual topic of this blog (again)…

I’m posting this up because it may help other people avoid being ripped off by being told complete nonsense by Three or other mobile phone sellers.  This is as best as I can remember it (next time I am tempted to record the conversation) and I’m sure that there were other things that they lied to me about but I can’t remember everything precisely.

My wife is a UK Three mobile phone customer. I knew that she was approaching the end of her contract, and I am authorised to access her account, so (with her permission), I decided to do a bit of research on what deal would be best for her and then phone up Three to ask when the contract ends.

After over half an hour on hold, I finally got through to someone who told me that she had 44 days left on her contract.  I was quite prepared to say “ok, I’ll call back in a few weeks”, but he wanted to know whether she was happy with her handset.  I explained that she would prefer to have a new one and he started trying to sell me some.  I’d discussed with my wife what she wants and done my research and so I explained that she wants a Nokia X3-02 or C3-01.

He said that the X3-02 is a very nice handset (they sell it), and that he could do me a special deal of £16 a month for 100 minutes, 5000 texts and 2000 Three to Three minutes for 24 months and he wouldn’t charge any extra for getting out of the contract early and he’d give her 2 2gb memory cards.  I told him that T-Mobile would do the C3-01 for £15 a month on an 18 month contract.

(Personally, I think that long contracts are a rip-off.  I usually sell the phone at the end of the contract and they tend to devalue quite a bit from 18-24months.  Also, I don’t see why I should have to pay another 6 months to buy a phone)

First of all, he tried to tell me that it was worth it for the extra 2000 Three to Three minutes, despite the fact that he had noted that my wife barely uses her 35 minutes a month that she currently has and mostly uses her phone for SMS.

First Lie: He tried telling me that OFCOM say that the standard length of a contract is 24 months.  I said that I had read that they said that the maximum length is 24 months which he tried to tell me was wrong.  Having done a bit more research since I got off the phone, I can see that OFCOM actually banned contracts longer than 24 months and insist that all mobile phone networks have options for contracts of as little as 12 months!

Second Lie: He told me that they have to do 24 month contracts to give the phone away free.  I explained that T-Mobile are doing an 18 month contract with a free phone and it is £15 per month.

Third Lie: He told me that the X3-02 is better than the C3-01 because it is newer.  He told me to look at GSM Arena and compare the two.  I did this and pointed out that the C3-01 actually came out a month later (Oct 2010 as opposed to Sept 2010).  He tried to cover this up by saying that the X3-02 has more memory (which is fair enough, but isn’t such a big difference).

He also tried telling me that the X3-02 is better because it has the buttons that are normally on the bottom row (*,0,#) on the right hand side.  That’s highly subjective, but I suppose it isn’t an actual lie.

Fourth Lie: He told me that T-Mobile don’t have their own network and that Three are superior.  Actually, T-Mobile now have 2 networks since they merged with Orange (I’m on T-Mobile) and that means that if you are out of signal with one, you can usually pick up the other.

He tried asking me why I wasn’t willing to pay an extra £1 (I don’t think he actually said per month) and I was about to explain that from my perspective, it is an extra £1 per month = £18 plus the extra 6 months to exit the contract (6 x £16 = £96), totalling £114 extra, which is well worth worrying about.  However, while I had been talking to him, something else had caught my attention online.  I had been looking up what deals Three were doing on their website and I found that they were doing the X3-02 for £15 a month on almost exactly the same deal.  I asked him why he was offering me a worse offer than what was on the website and he said that it was to cover finishing the contract early.  Of course, he’d already told me that he wasn’t charging for this, so it turned out that that was another lie (five lies so far!)   I tried asking him what this customer loyalty discount was, and he said that it was the 2 2gb memory cards.  I pointed out that she already has a 16gb one so they are completely useless.  Also, looking at the figures now, those are worth about £4 each, totalling £8 as against the £114 extra that he was trying to charge me.

At this point I decided to ask for the PAC code to transfer out.  He told me that there would be a £13 charge for finishing the contract early, so I said that I’d call back in a few weeks then (wishing that I’d just gone with my original inclination to say that at the beginning of the conversation).  He said that they do the best deals in the last 30 days of the contract (meaning that he obviously doesn’t care about helping a customer get a good deal otherwise he’d have just told me to phone back in a couple of weeks) and that it might be worth me finding out what the deals were then, but he could still offer me the deal he had today.  I said that I was in no rush and we’d wait a few weeks.  He sounded very surprised and repeated that I’d have to wait a few weeks and was I really sure that I wanted to do that.  I repeated that I was and managed to end the conversation politely.

I hope this has been some use to someone.  Please post comments if you have had similar experiences.  It would be interesting to know what kind of tricks these people get up to to rip people off.

Lessons learned: 

  1. Mobile phone companies will openly lie to keep business
  2. OFCOM say that all customers should have an option of a 12 month contract
  3. Don’t bother calling to haggle an upgrade before the last 30 days as they will just try to rip you off
  4. Customer loyalty can cost you £1 a month (as compared to the cost for a new customer).  Always worth shopping around!

Response from the EU Webmaster

Tuesday, June 14th, 2011

I previously contacted the EU regarding the fact that their websites set cookies without user consent in violation of an EU regulation. (See previous post).

Their response was as follows: -

Dear Madam / Sir,

We thank you for your interest in the European Parliament website.

Indeed, the EU Cookies Directive effective since 25th May 2011 imposes the consent of the User during setup of cookies. We are currently considering the compliancy towards this opt-in policy. The principle of a Guideline is to establish a normative frame imposed to the member states. Then, the national authorities have to enact practical and restrictive measures for websites owners.

Requirement of User consent is not obvious regarding, for example, cookies setup by Google analytics,… In every case, the Institutions have to think in a practical way, about a coherent policy regarding this matter, which can take some time.

Therefore we thank you in advance for your patience.

Best regards,

Europarl Webmaster

EUROPEAN PARLIAMENT
DG COMMUNICATION
Directorate for Media

In other words, it sounds like they don’t know what to do about it either and they are going to wait and see what everyone else does!

Why the EU can’t comply with the EU Cookie Law

Thursday, May 26th, 2011

You may have heard about the new EU “Cookie Law”. I’m not going to post why it is so idiotic here, I’ll leave you to read about it in other places.

However, I decided that for a laugh I would see if the EU websites comply with the Cookie Law. I looked at 2 of them, and neither of them appeared to. I then decided to contact them via their online chat facility to ask why not. A transcript follows (personal details removed)…

Agent 133:[joined]
Agent 133:Welcome to the EUROPE DIRECT web assistance service. For future reference, your enquiry case ID number is *****.
Agent 133:How can I help you?
****:Hi, I would like to know why this website (europa.eu) and the European Parliament website do not comply with EU directives
****:to be specific, Directive 2009/136/EC Articles 5(3) and 2(5)
****:which state that a user must give explicit consent before cookies are stored
****:however, this site stores a cookie ‘europa_esurvey’
****:and the europarl website stored Google Analytics cookies – ‘__utmz’, ‘__utma’, ‘__utmc’ and ‘__utmb’
****:I was not asked for my consent before any of these were stored
Agent 133:Please wait a moment.
****:ok
Agent 133:I would like to suggest that I forward your enquiry to the European Commission.
Agent 133:Would that be acceptable for you?
****:yes
Agent 133:Would you mind giving me your email address?
****:******@****.com
Agent 133:Is **** your family name?
****:yes – my first name is ******
Agent 133:ok, thank you.
Agent 133:Do you have any other questions regarding this matter?
****:do you have any idea when I should expect a response?
Agent 133:Usually within 3 working days (over 95% of enquiries).
Sometimes we have to send your question to the relevant in-house expert, which takes longer, though no more than 3 weeks.

****:ok, thank you
Agent 133:Are you an IT expert yourself?
****:yes – I’m a computer programmer
Agent 133:ok, I see.
Agent 133:Is there anything else I can do for you?
****:no, that’s all. Thanks
Agent 133:Thank you for using the EUROPE DIRECT web assistance service.
Agent 133:Have a nice afternoon and evening, bye!
****:bye!

I can’t say that I was really surprised that they couldn’t give me an instant answer. I was slightly surprised that they were actually reasonably helpful and fairly friendly (although “Agent 133″ seems a bit needlessly anonymous – most firms who have online chat facilities seem to have a surplus of very English names for people who are obviously not native English speakers). I will probably post up when I get a response from them. I’m very curious what it will be!

Microsoft POS Library for .NET

Thursday, October 14th, 2010

I’ve been writing a specialised point of sale system for a local business and had to use the POS printer on their till.  Fortunately, Microsoft have a nice library available for .NET that is freely downloadable that deals with most of the hard work of communicating with POS devices.

I was interested in the POSPrinter class.  They do provide a simulator so that you can test things out using the simulated printer, but it doesn’t support anything other than basic plain text, whereas I needed to use formatted text.

POS printers usually use a control language called ESC/POS.  This was developed by Epson originally for their POS printers, but it has become a standard.  Basically, it is mostly a matter of sending plain text, but you can also send certain escape sequences to change settings on the printer.

Fortunately, Microsoft document a lot of this on MSDN, so you don’t need to work it all out from scratch.  There are things like knowing that the main escape sequence is &H1B or 27 (known as ESC) and then a pipe character followed by optional numbers, small letters or symbols followed by a capital letter.  Eg. ESC|#P cuts the paper, ESC|bC is the code to turn on bold etc.

However, you may find it useful to have some sample code…


Imports Microsoft.PointOfService

Public Class POSPrinter

    Public Const ESC = Chr(&H1B) & "|"
    Public Const SetBold = ESC & "bC"
    Public Const SetUnderline = ESC & "uC"
    Public Const SetItalic = ESC & "iC"
    Public Const SetCentre = ESC & "cA"
    Public Const SetRight = ESC & "rA"
    Public Const ResetFormatting = ESC & "N"

    Public Shared Function SetSize(ByVal Size As Integer) As String
        Return ESC & Size & "C"
    End Function

    Public Shared Function GetAndInitPosPrinter() As Microsoft.PointOfService.PosPrinter
        Dim pe As New PosExplorer()
        Dim ppdi = pe.GetDevice(DeviceType.PosPrinter, My.Settings.PrinterName)
        Dim pp As Microsoft.PointOfService.PosPrinter = pe.CreateInstance(ppdi)
        pp.Open()

        pp.Claim(250)

        pp.DeviceEnabled = True

        Return pp
    End Function

    Public Shared Sub ReleaseAndClosePosPrinter(ByVal pp As Microsoft.PointOfService.PosPrinter)

        pp.Release()

        pp.Close()
    End Sub

    Public Shared Sub PrintTest()

    Dim pp As Microsoft.PointOfService.PosPrinter = Nothing

    pp = GetAndInitPosPrinter()

    Dim msg As String = "This is a test" & vbCrLf & SetBold & SetSize(3) & SetCentre & "it works" & SetSize(1) & " pretty well" & vbCrLf & "OK"

    pp.PrintNormal(PrinterStation.Receipt, msg)

    ReleaseAndClosePosPrinter(pp)

    End Sub

One other thing to watch out for is that if you are running any other POS software on the till, such as Microsoft Dynamics POS, then you might need to go into the settings and tell it to share the printer nicely with the other children applications as some POS software tends to be pretty possessive

Also, always make sure that you release and close any POS devices when you are done with them. For some reason when you start using them you need to open them, claim them and then enable them which seems ridiculous overkill to me, but what do I know?

Electricity Monitoring Part 2

Wednesday, October 13th, 2010
This entry is part of a series, Electricity Monitoring»

I previously mentioned that I have an electricity monitor and that I wrote a program for collecting the data and uploading it to a central database.  Actually, since then, Google have launched Google PowerMeter.  Fortunately, their API is freely available and so I have uploaded my data into their system (fortunately this was a fairly straightforward XML upload job) and switched to using the Current Cost software for uploading to PowerMeter.

PowerMeter is fairly good, although it does have some annoyances.  However, between that and the other software that I used to use of my own, I have managed to reduce our daily elecricity consumption from about 23kWh to around 11-14kWh.  We pay 7.57p/kWh, so that translates to an annual saving of roughly £275.  We’ve done this without making any major changes to our lifestyle or habits and it doesn’t involve driving yourself mad over little things.  We’ve also done it without switching to compact fluorescent bulbs which I particularly dislike.

Without doubt, the most significant cost savings came from switching off a second freezer which we had running in our shed and from replacing our faulty fridge with one that works correctly.  However, there were were other things that we’ve done that add up to a fairly large amount of electricity saved over time.

The most useful thing that I did was spent a couple of hours one morning doing an electricity audit – working my way around the house working out how much electricity different things use in different states.  Basically, I did this by unplugging everything until the monitor showed zero constantly and then plugged things back in one at a time.  Be careful when you do this if you decide to – make sure no one else is in otherwise you’ll drive them mad and also don’t take too long over it if you have a fridge and freezer otherwise your food will go off!

I found some interesting things, some of which fit in with what other people say and some are surprisingly not mentioned by anyone.  I went as far as measuring different states for several devices – on, standby and off.  That’s one interesting thing – people don’t mention that a lot of devices do use power and in some cases a significant amount of power when they are off, even if they are not in standby.  I’ll write more about this in future posts.

Entries in this series:
  1. Electricity Monitoring Part 1
  2. Electricity Monitoring Part 2
Powered by Hackadelic Sliding Notes 1.6.5

Companies House Electronic Filing Problems – recent annoyances

Wednesday, October 6th, 2010
This entry is part of a series, companies house problems»

As I mentioned in my previous post, I’ve been doing quite a bit of work for a limited company formation agent over the years and have had to deal with some annoying problems.  Please excuse these rants…

Recently Companies House introduced the ability to do company name changes electronically.  This is a very useful feature, except that the XML schemata that they released for them are wrong – the one for submission contains (or at least contained) a field that shouldn’t have been there and isn’t used for anything, and the one for retrieving responses had no way of getting the updated certificate of incorporation, although this information was actually returned in the response.  I’m not quite sure why they bother publishing specifications if they don’t stick to them!

Entries in this series:
  1. Companies House Electronic Filing Problems Part 1 - Introduction
  2. Companies House Electronic Filing Problems - recent annoyances
Powered by Hackadelic Sliding Notes 1.6.5

Linq to SQL Query gives an InvalidOperationException with message “Cannot compare entities associated with different tables.”

Wednesday, September 15th, 2010

If you try to do a Linq to SQL query and it runs fine, but gives you an exception of type InvalidOperationException and the message is “Cannot compare entities associated with different tables.” then it probably means that you are trying to pass in an object of one type and compare it to another type.  I suspect that you will probably only get this error if Linq attempts to translate the error to SQL – if you run it in memory, you might not get an error at all, as it may just do a straight object comparison and conclude that they are different objects.

An example would be something like


Dim p = DBContext.People.First
Dim q = From a in DBContext.Addresses Where a Is p
Dim addr = q.First

The final line will result in this exception as Linq to SQL is attempting to translate the query into SQL and it (correctly) can’t find any way of writing a query that compares a person to an address!

App_Offline.htm – ScottGu’s Blog

Tuesday, September 7th, 2010

I just had an interesting message when working on an ASP.NET 2.0 website – “This application is currently offline. To enable the application, remove the app_offline.htm file from the application root directory.

I’m not sure how this happened, but it looks like it may have something to do with this… App_Offline.htm – ScottGu’s Blog.

How to copy locked files in a Windows profile folder (ntuser.dat etc.)

Monday, September 6th, 2010

Not really a programming issue, but if you need to copy files from a Windows profile folder to another location (eg. you want to copy a profile to a different one, make it roaming/local etc) then you may find that Windows has locked the file and won’t let you do it.  If you want to get around this, reboot the PC (logging off probably won’t work) and make sure that you log straight in as a different user who has sufficient rights to access the profile folders for both of the other 2 (eg. the local machine Administrator account).  Windows should let you do the copying then.

Getting Public Key Token of Assembly Within Visual Studio – Kirk Evans Blog – Site Home – MSDN Blogs

Friday, September 3rd, 2010

Very useful tip – sometimes you need the public key for referencing the assembly in things like web.config – see Getting Public Key Token of Assembly Within Visual Studio – Kirk Evans Blog – Site Home – MSDN Blogs.