Well, OSPF is still on hold waiting for Paul to put together a test system, but he is a tad rushed at present. So I am progressing the new tariff Home::1.
We have the initial pricing and usage model all pinned down. It does not mean it cannot change in the future, but we have the starting point, and even a bonus on Christmas day (extra 3GB allowance added).
So, we need a new ordering page for it - a simple one, as it is targeted at single line home customers.
But we are sort of trying to do a completely new ordering system. Catch is, we can't really wait for that. So I spent this afternoon coding an order page for Home::1, in C.
We have some pretty good libraries and wrappers for sql and xml, and using curl lib and a few other bits I was able to put together some reasonably maintainable C code to handle the whole order page.
The idea is a "single form". This is not a new idea - we started with this 16 years ago with one form for mobile phone orders, and then later one form for broadband orders. I think people like it.
With the range of services we normally offer, that has not been the way to go, but this Home::1 tariff can be just one form. So it asks about the line, your name and address, what tariff you want, sortcode and account number, and bingo - ordered.
Of course I expect loads of people get errors, so the form comes back. It sanitises some fields (postcode, phone numbers) and consistently highlights fields with errors, clearly stating the problem and putting the cursor in the right place. Making sure all fields are maintained after posting the form is critical, obviously, but so many web sites get that wrong. The most common issue seems to be the "untick this to avoid junk mail" always comes back ticked after an error. We don't even have one of those boxes :-)
I think I can even do it with no cookies!
I will call it a night now I think - I have all the validation and just need the final checks on some of the response codes from the BT availability check before I can make it actually place an order. That last stage is not too complicated. I already have functions from the existing ordering system for allocation of login names, and IPv6 addresses, and so on.
With any luck, by end of tomorrow, I can have a new Home::1 order form up and running.
Then we just need it on the web site and TBB and ispreview and so on. But lets wait for some test customers first :-)
Update: I think I have it ready - just need a new customer wanting Home::1 now!
Update: On the main web site - and awaiting first order!
2012-11-26
2012-11-25
Shibboleet
Shibboleet is a shibboleth that was created by Randall for xkcd. It is a nice idea. It is a keyword to say to people on support to confirm you are a member of the "leet" and know more that the average customer.
I did a blog post on this - I have told all the staff that "Shibboleet" is a magic word, and means to stop arguing and transfer the call to someone that knows what they are talking about. Of course, this is tricky as most of my staff know what they are talking about anyway, and indeed many meet the "someone who knows a minimum of two programming languages" criteria defined in the cartoon.
I think today was possible the first use of "Shibboleet" by a prospective customer. Someone that apparently not only knows programming languages themselves but makes them. Someone interested in being a customer.
So, on the irc channels, the customers on there are well aware of Shibboleet, and flagged the query to me. They were gobsmacked at finding an ISP that has an irc channel in the first place! Hopefully I gave a good impression and we have a new customer as a result. We'll see.
This may lead to the first "Shibboleet" sale we have made. Thanks Randall.
I did a blog post on this - I have told all the staff that "Shibboleet" is a magic word, and means to stop arguing and transfer the call to someone that knows what they are talking about. Of course, this is tricky as most of my staff know what they are talking about anyway, and indeed many meet the "someone who knows a minimum of two programming languages" criteria defined in the cartoon.
I think today was possible the first use of "Shibboleet" by a prospective customer. Someone that apparently not only knows programming languages themselves but makes them. Someone interested in being a customer.
So, on the irc channels, the customers on there are well aware of Shibboleet, and flagged the query to me. They were gobsmacked at finding an ISP that has an irc channel in the first place! Hopefully I gave a good impression and we have a new customer as a result. We'll see.
This may lead to the first "Shibboleet" sale we have made. Thanks Randall.
2012-11-24
Rank
I was watching old Star Trek on TV, as you do.
I noticed that rank is indicated but "pips", and the more pips, the higher the rank.
But surely in any hierarchy of control there is a limit to how far "up" one can go, but no limit to how far "down" you can go.
Surely any numbering system should have 1 (or 0) as the top, and more "pips" for those lower down....
After all, one can always have subordinates.
I noticed that rank is indicated but "pips", and the more pips, the higher the rank.
But surely in any hierarchy of control there is a limit to how far "up" one can go, but no limit to how far "down" you can go.
Surely any numbering system should have 1 (or 0) as the top, and more "pips" for those lower down....
After all, one can always have subordinates.
2012-11-23
Should I sue BT, or what?
Pauline, my sister in law (hi! Pauline) has broadband from us (doh!).
And we took over the phone line as we can provide a phone line for broadband use cheaper for her. Like many people she uses the mobile to actually talk to people, but also uses facebook, and iMessage and FaceTime, and so on.
So BT screw up - they even admit they screwed up - they cease the FTTC (like BT Retail's "Infinity" type service). They even did that in an odd way that meant the bit of BT we deal with (BT plc t/a BT Wholesale) did not know they have ceased it, so two screw ups.
Now they are dragging on the fix to this, and it now in to the fifth day.
The wires are connected to the kit - all is physically there - just some config on some equipment is not right because someone thinks they cease something. This is not (technically) a hard problem for them to solve.
They have repeatedly promised progress on this and failed to meet their promises. We even put the line on a 7 hour fix expensive maintenance category, an order they accepted, and they still don't do anything.
It shows BT's promises are a sham, they are worthless. They are, in my opinion, total fucking idiots.
So what do I do - sue them?
It is so tempting to just issue a county court claim against BT plc for this, you would not believe.
Sorry, Pauline, we are trying, honest.
And we took over the phone line as we can provide a phone line for broadband use cheaper for her. Like many people she uses the mobile to actually talk to people, but also uses facebook, and iMessage and FaceTime, and so on.
So BT screw up - they even admit they screwed up - they cease the FTTC (like BT Retail's "Infinity" type service). They even did that in an odd way that meant the bit of BT we deal with (BT plc t/a BT Wholesale) did not know they have ceased it, so two screw ups.
Now they are dragging on the fix to this, and it now in to the fifth day.
The wires are connected to the kit - all is physically there - just some config on some equipment is not right because someone thinks they cease something. This is not (technically) a hard problem for them to solve.
They have repeatedly promised progress on this and failed to meet their promises. We even put the line on a 7 hour fix expensive maintenance category, an order they accepted, and they still don't do anything.
It shows BT's promises are a sham, they are worthless. They are, in my opinion, total fucking idiots.
So what do I do - sue them?
It is so tempting to just issue a county court claim against BT plc for this, you would not believe.
Sorry, Pauline, we are trying, honest.
Just doing my job
I had a rather interesting comment on an old blog post where I somewhat persecute a cold caller. The comment being "What a prick you are !! this young lad is only doing his job and your trying to prosecute him" [sic].
Obviously I am not trying to prosecute him, that would be for the CPA or the Information Commissioner. I was trying to verbally persecute him though.
But it does leave me wondering why anyone thinks that "only doing his job" is a valid comment? After all, if criminal gang employ someone to break people's legs, a criminal activity, would the same comment be said "he was just doing his job"? After all, whoever employs this cold caller is getting him to do criminal acts. I am not saying they are as severe as breaking someone's legs, but they are just as much a criminal act - illegal - against the law - wrong - offensive - etc.
Anyway, just to make life simpler for such people I am formally making it "part of my job" that I persecute cold callers and ridicule them publicly whenever I can. Now, you can take reassurance that, in such cases, I am "just doing my job", and not anything to get upset about...
This should make all better with the world :-)
Obviously I am not trying to prosecute him, that would be for the CPA or the Information Commissioner. I was trying to verbally persecute him though.
But it does leave me wondering why anyone thinks that "only doing his job" is a valid comment? After all, if criminal gang employ someone to break people's legs, a criminal activity, would the same comment be said "he was just doing his job"? After all, whoever employs this cold caller is getting him to do criminal acts. I am not saying they are as severe as breaking someone's legs, but they are just as much a criminal act - illegal - against the law - wrong - offensive - etc.
Anyway, just to make life simpler for such people I am formally making it "part of my job" that I persecute cold callers and ridicule them publicly whenever I can. Now, you can take reassurance that, in such cases, I am "just doing my job", and not anything to get upset about...
This should make all better with the world :-)
Fun with captive portals
This is the first time we have ever tried to run any sort of captive portal - which is where normal web access to the Internet is redirected to a page telling you that you can't access the Internet!
The two main ways to do this are DNS poisoning (returning wrong entries for DNS queries directing people to the portal) and IP level mapping. We have chosen not to poison DNS, partly because it is "nasty", and things cache it, and partly because it will not work with DNSSEC.
So we are redirecting IP traffic (IPv4 and IPv6, obviously). The good news is that the LNSs allow putting a line in a separate routing table (sort of VRF) which allows us to set a gateway to a FireBrick that can do the re-writes at an IP level. By using a separate VLAN on a linux box we can even present the source IP to the portal web server cleanly.
We are directing web (TCP port 80), DNS (TCP/UDP port 53) and NTP (TCP/UDP port 123) to the portal, but limiting DNS to avoid tunneling, and also locking down the speed of lines that are redirected to avoid any abuse.
The web server itself is redirecting any requests to a portal URL which it then serves. By preserving the source IP we can work out what line it is and so why they are restricted. We are polling the routers and LNSs (FireBricks) with the IP to find where it is going, which should make this 100% reliable for identification, especially where customers have blocks of IP addresses and IPv6 address space and so on.
Then we are offering customers who are over their quota on the new Home::1 tariff a top-up which invoices and issues a DD collection. We can do auto-topup if people want, and just allow slow access to the Internet if they want.
The LNS is then kicked to do an interim accounting update, and the RADIUS accounting spots that the line is now topped up and removes the restrictions and routing table. Within a fraction of a second the service is back in operation.
The whole process, changing routing tables, clamping speed down, and returning to normal, all happens with no change to IP addressing and no drop of the PPP link, which I think is pretty slick.
This all means we are pretty much ready now for existing customers switching over to the new Home::1 tariff, at last. We have to make sure sales and accounts teams are fully up to speed on this, obviously. We have had a few triallists move over already which has allowed testing of the various tools and scripts involved - thank you to all those that have helped out. Hopefully we can launch for new customers next month in plenty of time for Christmas, but anyone that wants it can contact the trials team in the mean time.
For existing customers moving over we have taken the view that we will be as helpful as possible and allow a retrospective change of tariff - crediting the current month's charges and re-issuing as Home::1. However, usage on Home::1 counts from the start of the month also, and any excess usage at the start of the month is charged (at pre-pay, not top-up, rates) from the old tariff to start the month with a clean slate. I think this is about as fair as I can make it, but it does mean people can switch to the new tariff before Christmas. We are, however, expecting to make Christmas week the "special" Christmas period on the old tariff still anyway.
All good fun making this stuff work - it will be interesting to see how customers find it.
The two main ways to do this are DNS poisoning (returning wrong entries for DNS queries directing people to the portal) and IP level mapping. We have chosen not to poison DNS, partly because it is "nasty", and things cache it, and partly because it will not work with DNSSEC.
So we are redirecting IP traffic (IPv4 and IPv6, obviously). The good news is that the LNSs allow putting a line in a separate routing table (sort of VRF) which allows us to set a gateway to a FireBrick that can do the re-writes at an IP level. By using a separate VLAN on a linux box we can even present the source IP to the portal web server cleanly.
We are directing web (TCP port 80), DNS (TCP/UDP port 53) and NTP (TCP/UDP port 123) to the portal, but limiting DNS to avoid tunneling, and also locking down the speed of lines that are redirected to avoid any abuse.
The web server itself is redirecting any requests to a portal URL which it then serves. By preserving the source IP we can work out what line it is and so why they are restricted. We are polling the routers and LNSs (FireBricks) with the IP to find where it is going, which should make this 100% reliable for identification, especially where customers have blocks of IP addresses and IPv6 address space and so on.
Then we are offering customers who are over their quota on the new Home::1 tariff a top-up which invoices and issues a DD collection. We can do auto-topup if people want, and just allow slow access to the Internet if they want.
The LNS is then kicked to do an interim accounting update, and the RADIUS accounting spots that the line is now topped up and removes the restrictions and routing table. Within a fraction of a second the service is back in operation.
The whole process, changing routing tables, clamping speed down, and returning to normal, all happens with no change to IP addressing and no drop of the PPP link, which I think is pretty slick.
This all means we are pretty much ready now for existing customers switching over to the new Home::1 tariff, at last. We have to make sure sales and accounts teams are fully up to speed on this, obviously. We have had a few triallists move over already which has allowed testing of the various tools and scripts involved - thank you to all those that have helped out. Hopefully we can launch for new customers next month in plenty of time for Christmas, but anyone that wants it can contact the trials team in the mean time.
For existing customers moving over we have taken the view that we will be as helpful as possible and allow a retrospective change of tariff - crediting the current month's charges and re-issuing as Home::1. However, usage on Home::1 counts from the start of the month also, and any excess usage at the start of the month is charged (at pre-pay, not top-up, rates) from the old tariff to start the month with a clean slate. I think this is about as fair as I can make it, but it does mean people can switch to the new tariff before Christmas. We are, however, expecting to make Christmas week the "special" Christmas period on the old tariff still anyway.
All good fun making this stuff work - it will be interesting to see how customers find it.
2012-11-20
Failed
FireBrick training course tomorrow and Thursday and OSPF not finished enough to demo, sorry.
Unless I go mad tomorrow morning and Thursday morning, no chance.
Annoyed with self.
I blame new tariffs.
At least the training room is ready :-
(well done Lee on the chairs and Andrew for the tech, and everyone else)
Unless I go mad tomorrow morning and Thursday morning, no chance.
Annoyed with self.
I blame new tariffs.
At least the training room is ready :-
(well done Lee on the chairs and Andrew for the tech, and everyone else)
Subscribe to:
Posts (Atom)
Clocks
Some time geeks (should I say Time Lords) checked out my clocks. Seems they are impressed, saying sub microsecond. I have spent all day tryi...
-
Broadband services are a wonderful innovation of our time, using multiple frequency bands (hence the name) to carry signals over wires (us...
-
For many years I used a small stand-alone air-conditioning unit in my study (the box room in the house) and I even had a hole in the wall fo...
-
This is an appeal for (sensible) comments. I am working on revised A&A tariffs for broadband. For those that are not sure how they wor...