Tuesday, 22 July 2008
Unbeatable advantages of Nationwide credit card

Just got a brand new set of Nationwide credit cards. For me and Julia. Interestingly, unlike HSBC's, these two are exactly the same, the only difference is the name on the card. HSBC cards had different numbers, CVC codes etc. A bit less secure I think... Anyway, this is what's good about them:
- Extended 12 months warranty on electrical items + protection against loss or damage on any personal items for 100 days. But what's more important,
- the account is accessible via Nationwide internet banking, which means automatic sync with MS Money! This was the primary reason for applying and it's really, really convenient. All your transactions just appear in Money by themselves. On top of that,
- there is no commission for using card abroad, albeit this is not as valuable as it sounds: it would only save you around £15 on a £600 purchase (as they claim).
Labels: money, nationwide
Tuesday, 10 June 2008
HSMP extensions: any age of the English test is good!
I've just received a reply from Work Permits UK to my question on whether my IELTS test that I sat in 2004 is still acceptable. Note that when they first introduced English Language requirement for HSMP they were accepting only IELTS and only up to 2 years old for new applications and any age for extensions. I was good as I had my 2004 IELTS. Later they removed this exception for extensions and required only the valid IELTS certificate (that is no older than 2 years) for both extensions and new applications. I specifically called them and asked.
Now the good news is, now that Tier system is officially fully live, the English Language requirements have changed again. They now accept a whole bunch of various tests but the best news is, quoting
Whoohoo! I better apply for extension fast before they change their minds. However I'll have to wait until Polina's birth certificate is ready to apply for her passport and only then apply for Tier 1. Anyway, congratulations to you all, HSMP people!
Now the good news is, now that Tier system is officially fully live, the English Language requirements have changed again. They now accept a whole bunch of various tests but the best news is, quoting
Please Note: All approved English language tests meet the requirements regardless of the date of the award.
Note: an IELTS test result can be more than 2 years old.
Whoohoo! I better apply for extension fast before they change their minds. However I'll have to wait until Polina's birth certificate is ready to apply for her passport and only then apply for Tier 1. Anyway, congratulations to you all, HSMP people!
Labels: hsmp, immigration
Tuesday, 29 January 2008
Why I am disappointed with o2

I've recently got an O2 contract as a side effect of buying a phone I wanted as a present for Julia. I was on T-Mobile pay as you go before. What can I say? I am generally disappointed in many ways. Namely:
- You can't get SMS delivery notifications in a standard way. "Require delivery notification" flag is ignored. But you still can receive them - in a very awkward O2 way. You must begin your message with "*0# " (not forgetting the trailing space). Nice, isn't it? And I won't be surprised that my message character limit is now 4 characters less.
- Texts sent to my mom's Russian mobile (Beeline) are not delivered. I had no problems sending texts abroad with T-Mobile. O2's customer support suggested that they had no agreement with the target network. But I have a friend on Beeline who receives my texts with no problems! Yesterday mom's changed her operator to MTS so we could text.
- Recent charges (detailed call list) is available online but despite their promise that it gets updates within 24 hours, it's 3rd of Feb today and latest calls I can see are from 30 Jan. This will be less important later when my spending stabilises and I won't need to watch it closely.
- If I were on O2 pay as you go... I wouldn't be on O2 pay as you go. Their PAYG call charges are higher than anywhere else. 40p/min on calls to non-O2 mobiles while Virgin and T-Mobile offer 15p/min, and on 3 it's 12p/min. Ridiculous.
Thursday, 3 January 2008
Activesync via Bluetooth using Toshiba bluetooth stack
After spending too much time trying to set this up, here is the recipe (taken from many sources, for example from comments to this article):
- First of all, check (on your PC) from Start -> Control Panel -> Bluetooth Local COM which Com port the "LocalCOM-Server[SerialPort]" is assigned to (in my case COM7)
- Set SerialPort in "HKLM\Software\Microsoft\Windows CE Services" to the assigned COM port you found before (for example, "COM7")
- Make sure in ActiveSync settings on your PC "Allow connections to one of the following" is checked and "COM7" is selected in the dropdown.
- Pair your Windows Mobile device with your PC (I've done it from mobile device).
- While mobile device is discovering services on your PC, you should be able to see ActiveSync activity on the PC as the BT serial port is probed for ActiveSync.
- The Serial Port profile, which was displayed before as available profile type should appear now as ActiveSync.
- Depending on Windows Mobile bluetooth stack, you now should be able to initiate sync by either
- starting ActiveSync on the device and going to Menu->Connect via Bluetooth, or
- if Broadcom stack is installed on the device (all iPAQs go with it AFAIK), going to Bluetooth Manager, finding "ActiveSync with <your PC name>
" shortcut and tapping connect on it. You create this shortcut by going to Bluetooth Connection Wizard and selecting "ActiveSync via Bluetooth".
Thursday, 29 November 2007
XSLT: output an XML escaped copy of the source tree fragment
I've assembled the following hack after gathering some ideas from the net. It allows to have a copy of the source tree in the output, but unlike <xsl:copy>, it outputs the copy as text with XML escaping. Limitation is that it only supports elements, text nodes and attributes. But this can easily be extended if need arises.
<!-- the hack below outputs escaped copy of the current node set -->
<xsl:template match="*|@*" mode="verb">
<xsl:variable name="node-type">
<xsl:call-template name="node-type"/>
</xsl:variable>
<xsl:choose>
<xsl:when test="$node-type='element'"> <!-- element -->
<xsl:text><</xsl:text>
<xsl:value-of select="name()"/>
<xsl:apply-templates select="@*" mode="verb"/>
<xsl:text>></xsl:text>
<xsl:apply-templates mode="verb"/>
<xsl:text></</xsl:text>
<xsl:value-of select="name()"/>
<xsl:text>></xsl:text>
</xsl:when>
<xsl:when test="$node-type='text'"> <!-- text -->
<xsl:value-of select="self::text()"/>
</xsl:when>
<xsl:when test="$node-type='attribute'"> <!--any attribute-->
<xsl:text> </xsl:text>
<xsl:value-of select="name()"/>
<xsl:text>="</xsl:text>
<xsl:value-of select="."/>
<xsl:text>"</xsl:text>
</xsl:when>
</xsl:choose>
</xsl:template>
<xsl:template name="node-type">
<xsl:param name="node" select="."/>
<xsl:apply-templates mode="nodetype" select="$node"/>
</xsl:template>
<xsl:template mode="nodetype" match="*">element</xsl:template>
<xsl:template mode="nodetype" match="@*">attribute</xsl:template>
<xsl:template mode="nodetype" match="text()">text</xsl:template>
Labels: xml xsl xslt programming
Friday, 21 September 2007
On VoIP, SIP and phones
There have been several developments in the world during my home decoration and furnishing related hibernation. In fact many of these developments occurred long before in the area of VoIP and its application at home.- My ISP Plus.net started to provide fixed telephony services with prices a bit more attractive than cheapest BT option for the same price. Will not go for it just yet to avoid potential customer service trouble as the service has not potentially yet stabilised.
- The same Plus.net started to offer SIP based VoIP services. Having Plus.net as an ISP gives you bandwidth advantage (read: voice quality). Moreover, some UK land line calls allowance (240 mins) is included in most of their internet packages. Will definitely use it.
- The very same Plus.net (oh no, not again!) is offering Broadband Your Way Pro package with allegedly prioritised VoIP and gaming traffic. I've already switched!
- There are DECT SIP phones on the market, such as VoIP phone Siemens Gigaset S450. This particular one offers standard land line connection, VoIP SIP service (up to 6 accounts and 3 calls in parallel) through ethernet connection on the base, Outlook contacts sync, web admin interface, jabber messaging (this means gmail's gtalk and all other IM systems!) and it checks for your email too. I'd gladly swap email and IM for an ability to connect bluetooth headset though. Currently costs around £95 - that's for a base and one handset. If I live it through without it until January I know what is going to be my birthday present!
- having a very good cordless home phone installation with all contacts up to date
- cheap local and international calls without a need to dialling any prefix numbers and then keying in full international number
- potentially multiple external numbers each assigned to different handset
- handsfree operation with headset
- freedom in VoIP provider choice (unlike similar Skype based phones)
- and god knows what else.
Monday, 10 September 2007
Every time I change job I always tend to spend too much time remembering how to search for "pre-1.4 style" custom exceptions that try to store their root causes in a field. So here is the IDEA custom template for that:
Variables $Parent$ and $Throwable$ should be constrained with "text/regular expression" set to "Throwable" and "apply within type hierarchy" checkbox checked.
class $Class$ extends $Parent$ {
$Throwable$ $varName$;
}
Variables $Parent$ and $Throwable$ should be constrained with "text/regular expression" set to "Throwable" and "apply within type hierarchy" checkbox checked.
Labels: exception, idea, java, pattern