Categories
General Humour

Random writings…

Have you ever just written a complete pile of nonsense and disconnected thoughts/ideas just for the humor value of it?  You know… things like “Bob the blue ant flew lazily past the singing koala bear to reach the speckled egg.  When suddenly the ripe pill sang out and the green basket spun around on the slow red mouse.”

Ok, so you are probably thinking that I’ve gone mad… But I haven’t, I tell you.  I had a bunch of friends at varsity who would have totally nonsense conversations for no good reason at various random times.  It was actually quite funny to see people’s reactions, and quite hard to be totally random with them if you tried.

So about a year and a half ago (one Saturday morning), I sms’ed off a random message to a whole bunch of friends, and recieved a really interesting set of replies.  Some people just didn’t get it but thought it was cool, others didn’t get it and thought I’d lost it, others got it and laughed, and others got it and replied in kind.

Today I sms’ed 5 people a random message, three replied, and here are the ensuing sms conversations…

Between Charlie and I:

Its time for a random story… The red door stood as a jar of blueberry jam while it contemplated its purpose in bringing along the bright slice of orange.
Ok then… Freak!
The door/jam, reeling from the sudden insult, slammed shut. Leaving a purple, yet still confused, chipmonk singing as the square flower swam by.
You know what… I’m a little concerned about the quality of what you are smoking!
Story ends… Check my blog later for more info on what I was up to.

Between Helen and I:

Its time for a random story… The red door stood as a jar of blueberry jam while it contemplated its purpose in bringing along the bright slice of orange.
I can’t believe that the asparagus was so concerned with the State of the plastic road sign!
That very thought had been worrying the door for some peaches, but the grinning flagpole would not have it. Swiftly the turkey sank into the brown light.
Don’t openly discuss the state of the brown light, because it was very uncertain about the decision that the Turkey had made.
Fortunately the green gnat flying by heard nothing as the lazy golden window frame had just nested in the three shoes.
Oh well, said the statue to the jelly. If we can’t investigate the decision of the waiter then why question the water babies.
The babies cheer… The scene fades to an arty tomatoe’s house where a swarm of rabbid religious pinaples have just crawled by chanting in monotone “The rooster is free”.
I couldn’t reply because I was laughing so hard. That was excellent.

Between Matt and I:

Its time for a random story… The red door stood as a jar of blueberry jam while it contemplated its purpose in bringing along the bright slice of orange.
It moved freely in nobody’s paradise while sleeping from absolute dottiarism. He knew that somebody’s life would always be the same, and that was chocolate pie.
He had always had a strong liking for chocolate pie. Yet today the robot was taken by the orange striped camera lense and the one legged cherry as the frog tanned kiwi peels at the passing duck.

I never got another reply from Matthew, so I can only assume he went back to working instead of dealing with my stupid sms’s… 🙂

I just got a reply from my brother which says “Hey Dude, you need drugs! Cool story… why?”

So, 5 sms’s sent, 4 replies, 2 “got it” and replied in kind, 1 enjoyed it, 1 didn’t “get it” (but it still made for some humor)… So what do you think?  Would your friends “get it”? Do you?

Categories
General Humour Internet/Links

SNO Deliberations…

[Update: Thanks to Colin for noticing that my link to the story was broken… Its now fixed]


For non-South African’s the SNO probably won’t mean much… Here’s a brief overview – SNO = Second National Operator… Currently we have only one fixed line telephone provider in South Africa (Telkom) which used to be(?) a 100% state run compan and is currently a well protected monopoly.  In 2002 a competitor was to be announced, so it would still be a controlled market (only 2 players allowed) but there would be some kind of competition.  Its now 2004, and the government minister who should have resolved this 2 years ago is still playing games…


This morning I read an article from yesterday on ITWeb, entitled “Pontius Pilate syndrome” by Rodney Weidemann, which has some choice quotes about the latest developments – She’s announced that she’ll award the SNO licence on the 17th of September.  Here are some of them:


“Rumour has it that Matsepe-Casaburri is hoping to find a financial institution of some kind to take up the remaining shareholding in the SNO [….] Except that the idea of a financial institution, which has no experience in the telecoms game, running the SNO is almost as ridiculous as the idea of a minister with no telecoms experience running the communication ministry.”


“She has instituted a time frame which cannot possibly be met, is asking the impossible of the various members of the SNO and is then going to turn around, much like Pontius Pilate, and wash her hands of the entire debacle, saying: ‘It’s not MY fault.’ […] Except that we have known the minister’s ways for too long, and will not be fooled by this. Her ineptitude is the real reason we still have no valid competition for Telkom, years after we were supposed to.”


 

Categories
Development General Internet/Links

Pet peeves being addressed

A while ago I posted about one of my Pet Peeves (Microsoft announces CD’s that you can order online, but only after you go online do you find out that you can’t get them shipped to South Africa)… Shortly after that the South African version of the MSDN Flash they announced that you could order the CD’s that I was looking for, and they’d ship them to South Africa for a small (around R35?) fee which was great.


With XP SP2, I was wondering how the heck I would get my home PC updated since I’ve just moved and I don’t have a phone line in the new place yet (and it will probably take over a month to get one installed)… On Friday I was browsing Microsoft South Africa’s site and I noticed a press release entitled “Windows XP Service Pack 2: Fact Sheet” which kinda hides the exciting content a bits, which say “Microsoft South Africa would like to encourage users to order a free copy of the Windows XP SP2 CD from its local call centre (0860 2255 67) and from mid-September CDs can be collected from Makro; Incredible Connection; Game; Dion and CNA – free of charge”!


This morning I saw that Matt Hausmann blogged about it, so I thought I should too. 🙂


And once I’ve put my PC back together I’ll be giving Microsoft a call.

Categories
General

Moving and GMail

A quick update… I’ve just moved house, and this morning I notice that I have 5 GMail invites to give away…


I noticed that Rory’s got a list of GMail Invites going, so you can leave a comment here if you want an invite and if mine run out, just pop over to Rory’s blog to find out where you can get more… Looks like Google’s been busy handing out invites this week. 🙂


[Update: All of my GMail invites have been used up… I’ll post a new blog entry should I be given any more…]

Categories
General

Disadvantaged…

So, I was walking back to the office today after sitting in a coffee shop drinking a Seattle Coffee Company Grandé Caramel Chocolate Latté with cream (v.v.v. nice) and looking over a magazine wondering if I should get my hopes up that I’ll be able to get a Motorola MPX220 when I’m able to upgrade my phone on my Vodacom contract expires.

When [OH MY WORD, I was just looking up the domain for Seattle Coffee Company so I could put a link there when I found THIS news from like over a year ago saying that Starbucks bought Seattle Coffee Company, which is like super awesome because maybe we’ll actually get a Starbucks in good old South Africa (BTW, when are we South Africans going to get ownership of our .COM domain)… Anyway, I really hope we get one here – I’ll be their biggest fan. :-)] …. Ok where was I?

So I was on the way back to the office when I got asked very politely by a guy sitting on the pavement for some money… Now having grown up in the huge metropolis (NOT!) of Grahamstown, where the non-beggar to beggar ratio is about 1:5 I’ve kinda got quite used to saying “Sorry” and just walking on ignoring their pleas.  But today it struck me… I know that probably 9 out of 10 of these people actually are “fakes” who just beg because its easier than working and its good money. (Non south african’s might not understand that, but some of the beggars here earn probably more than most varsity leavers would)  BUT – lets just say that 1 out of the 10 is genuine… How do you help that 1 genuine case?  What help is really available for them?

Its like bus schedules in JHB, they must exist somewhere but where they are is definately NOT advertised…  I couldn’t tell you if our busses even have regular routes, because I’ve never seen a bus shelter with a route map on it. (Which would be the obvious place to put them IMHO)

So how would someone whose out of a job, got no money, no home, and no food get to hear about shelters, feeding schemes, or work placement facilities?  Do they even exist? 

Any pointers would be great… I’d rather give beggars a helping hand than get them “hooked” on handouts… at least that’s what I think I’d want someone to do for me if I was in the same situation.  I just don’t know where I’d start.

Categories
General

Recruitment…

Hrm, I got an e-mail from a recruiter today… Pitty it wasn’t Gretchen or Zoë from the JobsBlog over at Microsoft – coz I’d not only like to meet them, but I’d love to work at MS too ;-). But the lady seemed quite nice and I’m fairly impressed that she found my contact details since they’re not listed on any of the local recruitment sites at the moment, so maybe she’s also a “net age recruiter” like Gretchen and Zoë… (If you’re wondering what I’m on about, read their blog – I did and saw a VERY different approach to recruitment. One that I really like)

Anyway, back to the point of the post… I’m fairly thankful to Gretchen and Zoë for some of their advice because it let me respond nicely to the recruiter as opposed to the “Who are you? Where did you get my e-mail from? And please don’t bother me again because I’m happy where I am” type of e-mail I might otherwise have sent.

So if you are (or anyone you of know is) looking for a short term contract doing C# based web development in Sandton for what sounds like a reputable company (I don’t know their name but they’re a Microsoft Gold Partner) let me know, and I’ll put you in touch with the lady recruiting for the job.

Categories
.Net Stuff Development Geek food

Q: When is 1 not equal to 1?

A: When you’re using .Net and boxed value types.


“What?? No, you’re wrong.  Its not possible – you must be using the framework incorrectly.”


That’s what I would have said, but I’m not so sure after having to fix our little problem at work this morning.


We have a function that takes 2 object parameters:
public bool myFunction(object left, object right))
Which tries a whole bunch of things and if non of them works, it returns:
left.Equals(right);


The problem is as follows:


Int32 i32 = 1;
Int64 i64 = 1;
bool result = i32 == i64;
System.Diagnostics.Debug.WriteLine(result.ToString());
// outputs TRUE – expected
object o32 = i32;
object o64 = i64;
result = o32 == o64;
System.Diagnostics.Debug.WriteLine(result.ToString());
// outputs FALSE – expected
// This is expected since it would do a reference comparison BUT
result = i32.Equals(i64);
System.Diagnostics.Debug.WriteLine(result.ToString());
// outputs FALSE – not expected
// It does it because i64’s type is not the same as i32’s type
// The same goes for result = i64.Equals(i32).
// And also for result = o32.Equals(o64);

Now the question remains – how on earth do I get this code to work?  Currently I’ve written my own IsEqualTo(object left, object right) function which finds out which of the numeric types each object is and casts the left and right parameters to the most suitable types before it does the comparrison so that it works correctly… I’ll upload a ZIP with a sample solution in it that demonstrates the solution, but if you know of a better way to write the code (keeping in mind that it needs to be generic enough to handle any type variables that are passed in), please let me know…

Categories
General

Business logic?

I just got MSN’ed by a friend who said the following after reading “The Gread Petition Dilemma” (For more background on that entry, check out this link from that post – “Why e-mail petitions don’t work“):



i am confused with your logic […] for posting such a blog entry. let me explain…
…i read this and i just wonder if you are not throwing out a great bussiness idea that you could have taken and put into practice. with this kind of company you could use set things up that 90% of it were self sufficient and then you or those doing the work would in fact have very little to do to keep the system going. other then the initual text and options for each petition or poll.
did you think of taking this idea and useing it as a bussiness

There are basically 3 things that we need to determine:
1. Is this a viable business opportunity?
2. Did I give away enough information for someone to take my idea and make their millions from it?
3. Do I care?


So lets start…


Is this a viable business opportunity?
Personally, I don’t think so… Who would want to pay someone to hold online petitions for them?  How much would it be worth?  I’m guessing I’d only charge the petition maker, not every person that signed the petition… (otherwise you’d never get people signing them – you’d be better off putting up a “donate money to us if you support our cause” type link on the cause’s website – that way they get the cash, AND they get a list of unique users that support whatever it is that they’re petitioning about)


Ok, so who’s likely to pay for having a petition hosted?  Well, lets just put it this way: The more the person knows about the net, the more likely they’ll be to make their own solution (it is after all just a glorified online survey) and the less they know about the web the more likely they’ll be to believe that the standard “e-mail petition” will work and they won’t see why they should spend money on it.  So there’s a small grouping of people inbetween who might use the service. 


The only petitions I’ve seen have not really been well documented… So I wonder how “legit” they are.  Does anybody actually know how these things really work?  Its all fine and well to have a petition signed by 500 000 people, but can you prove that its not just one person signing 500 000 times under different names?  Its kinda tough to fake lots of physical signatures (I’m guessing that a handwriting analyst could quickly say that only 1 person had done all 500 000 or at least decrease the number of “valid” signatures)  But its pretty easy to fake 500 000 web votes.  Anyway, lets just say you could have a credibility problem with a whole bunch of the people who might use the site.


Next, it is after all just a glorified “online survey” – so it will be EASY to copy the business idea, and easy to charge very little for… so you could quickly find yourself with lots of competition, and either very few customers or very low profit per sale. Either way you’d end up not making much money.


So on the whole you’d probably not make much cash out of this kind of business…


Did I give away enough information for someone to take my idea and make their millions from it?
I hope not…. 😀 From the previous point, I’ve been trying to say that its not likely that anyone would make their millions from this kind of service… so that kinda kills this question before we start answering. But let me go into how little info I actually did give away…


So basically I said it would be:
1. An online service
2. Which totals votes
3. Some how it verifies that they’re unique votes
4. Could possibly manage sending e-mails to friends of the people who have voted


Point 1 is fairly generic. Point 2 is kinda obvious as to a basic function. Point 3 is fairly obvious functionality of a petition and has been tackled by most Online Survey’s (since survey data is kinda useless if one person can submit 5000 responses).  In fact points 1, 2 and 3 are all covered by online surveys (to some degree) and I didn’t really get into any innovative details as to how you could ensure that users couldn’t “sign” more than once. (All that I mentioned was perhaps using an ID or Passport number – but then people could fake those, internationally there would be different standards as to what constitutes a valid ID number and because of that you could end up with duplicate ID’s… No innovative solutions were given to solve this problem, so no real “business secrets” were revealed) Point 4 is both good and bad – lots of online competitions have “mail this to your friends” functionality… which is basically what this is talking about… its nothing really new.  In fact online competitions usually try to ensure that you only enter them once, so they are probably a better “match” as a solution than an online survey.


The really BIG innovations that would draw users to the service would be in HOW you implemented each of those points, and if you implemented more features than I listed.


Do I care?
Well… yes, and no… If someone who never thought about offering this as a service, after reading my blog, decides to use my skimpy description and makes it big time I’ll be a bit disappointed.  (PS: I’ll be less disappointed if you choose to give me a portion of your profits :-D) But to be honest there’s no way I’m going to build such a system right now and in 5 years time, when I begin to think about doing it myself, someone else will probably already have done it… So I really wouldn’t be losing out on much, and in any case at least then I can prove to my kids that I’d thought of the idea before Mr Millionaire did. (Maybe I should submit it to LazyWeb – their wiki lists about 5 other sites that do the same thing as them – so clearly some good ideas just aren’t unique/great innovation)


I’d like to think that if Mr Millionaire was to read this blog and implement this idea, he’d be nice and let me know either out of courtesy or perhaps to see if I had any other ideas that could help…  But if he wasn’t so kind, it still wouldn’t be a big problem. 


Am I the only one that thinks this way?  I guess that’s the main reason for me posting this… I’m wondering if I’ve been “stupid” or not…  I didn’t think it was a stupid thing to post, but someone else did… to what extent would you have posted about this idea?

Categories
General

“The Great Petition Dilemma”

So… in a recent post entitled “Why e-mail petitions don’t work“, I gave figures showing how you’d only end up pissing off the charity/organisation that you’re trying to support if you take part in the standard “e-mail” petitions…

D’ave replied with a solution that he uses… basically saying “Here’s a petiton.  Reply to me if you agree with it… DO NOT sign this message before you pass it on.”  Which is great!  Except that there’s still a lot of manual work to be done…

I guess most other “workable solutions” are kinda tough to actually implement… I guess any real attempt at doing automating this process would be complicated… My three hassles with D’ave’s solution are:

1) You’d still need to sift through the addresses and add up the number of “signatures”
2) People could/would get multiple copies of the e-mail
3) You’d be running the risk that some “kind” sole would modify your petition e-mail, converting it to a “standard type” petition e-mail, hope-ing (sp?) to save you time/effort but only ending up causing your cause more grief that its worth.

So my solution would be to build a website which you could direct people to if they want to sign the petition… they then sign it online and the application records their vote… Possibly recording their ID/passport number, name, IP address, and e-mail address as a way to make sure that nobody tries to enter twice…  [This takes care of point 1]

Regarding getting multiple copies of the petition – you could have a part of the site that says “enter a list of e-mail addresses here and we’ll send them the petition to them (if they haven’t already recieved if, or opted out of petition e-mails)” [This basically takes care of point 2]- the site would need to record the sender’s e-mail address and other details so that it could send the e-mail from them.  And because the site sends the e-mail, there would be no “risk” of anyone tampering with the wording of the e-mail… [This basically takes care of point 3]

Of course the mission would be to make the system easy to use, privacy-friendly, anti-spam friendly, etc. But it could work… depending on how concerned you were about each of the potential problems, you could either leave out that part of the solution or simplify it…

 

Categories
General

Customer DisService

Hrm, I think I’ve ranted about this before, but I CANNOT believe that an organisation can consistantly give such shocking support!  I wanna scream! (but I’ll restrain myself for fear of freaking out my co-workers)

Ok, here’s the deal… starting from the begining…

Last year I was looking for a way to SMS people easily from my PC. I wanted nice and easy grouping of people, and a few other things that I just wasn’t finding in existing applications.  So I thought I’d write my own… After searching, I found that IDWS had an SMS Webservice (and web interface).

Soon after that, I got engaged and I wanted to let a whole bunch of people know really easily… I had a list of cell numbers, so I went to their site, which allows me to SMS a list of numbers.  I did a quick test by filling in my Cell number, and clicked “send”.  I waited… and I waited… and I waited… so I clicked on their log of sent messages and saw that I’d suddenly sent like 200 odd SMS’s… the first one was to me, and had a message.  All the rest were sent to an empty number (ie no value had been entered for the “to” field), and had an empty message.  And I’d been charged for all of them. (i.e. I’d been charged for sending nothing to nobody)

I e-mailed their support to tell them about it, and they e-mailed back that they can’t be held responsible if I simply click “send” repeatedly…  I was kinda shocked since I don’t know anyone who can click a button over 180 times in 30 seconds.  So clearly it wasn’t me who was doing the clicking, and nobody else had logged on as me.  I’m guessing there was a proxy or something in the middle that decided to re-query their site or something….  As a web developer, I’ve had clients irate over lesser problems…

Part of the conversations revealed that aparently their system still sends the sms to the cellphone networks, even if it has an “empty” number.  But they have some javascript on the page to prevent you from sending an sms without entering one.  So I was also blamed for switching off JavaScript on my machine and I was told that it was my fault.  I was like “Great, so now its my fault that you can’t do proper input validation?  My JavaScript was enabled, and I didn’t click the button.”  But it was still my fault.  They graciously (according to them) refunded me 1/2 of the credits, and wouldn’t deal with the problem any further. So I left it…

Recently (3 months ago) I started needing to SMS members of the choirs at church, so I thought I’d give IDWS another go… Since then I’ve had the one error occur 3 times, with the same result.

Here’s the outline of what happens:  For some reason their SMS system can’t access their MySQL database, and it throws an exception.  The message their Webservice returns to me is “Exception: [TCX][MyODBC]Can’t connect to MySQL server on ‘ns2.idws.com’ (10060)”.  The message never gets sent, but their online system shows it as having been sent and I get charged for it.  If I look in their SMS Log, I can “verify” that the message was sent… But if I do that, I get an error saying that there is no tracking information for the SMS because I used an old version of their software. 

I think it really means that their software added the log, but never got to adding a tracking record.  So when I ask their system to “verify” that the message was sent, the query returns no tracking rows and the system assumes that the message was sent with an old version of the software. (BTW: throughout this time, the software version that the Web Service returns is 2.0, so I’ve always used the latest version of their software)

Each time, I’ve had to e-mail them to tell them that their system has messed up.  Each time, they’ve told me that it was my fault because of X, or that I was wrong in what I told them because of Y.  Each time, I’ve had to reply to correct them and step them through their own systems so that they can finally see that there is a problem.  This third time, I thought I’d learned… so I gave them ALL the details I’ve given them before.  I told them that I’d had the same problem twice before (but I stupidly forgot to give them the tracking numbers of the previous support requests)… So they replied and said:

 “We apologise for the error that comes up. However your sent SMS’s will
only come up in the SMS usage log if they left our server.

If the intended recipiant did not recieve the SMS, please let us know,
so we can make double sure on our side that the message left our system.”

Now… SURELY if this is the 3rd time that I’ve had the SAME problem, they would just have “double checked” before they replied?  Well… I guess I shouldn’t have expected that… (In one of the previous problems, they took a day to reply “please send us your username”… when if they’d just bothered to search on my e-mail address they would have found my user)

I’m SICK AND TIRED of having them ALWAYS blame me for something, and NEVER being thorough in what they do.  Geez, its a flipping recurring ERROR… their API doesn’t return the nice numeric error code its supposed to, it returns “Exception: [TCX][MyODBC]Can’t connect to MySQL server on ‘ns2.idws.com’ (10060)”, and their database processes are never completed! (hence the lack of tracking data)  Can’t they just handle the exception like any semi-decent developer would!   But no… its my fault for not doing something… I just can’t wait to see what the my fault is this time.

The first time I got this error, I was complained at for not giving them all of my user account details or the full error message (it was my first time I’d seen this… I told them was that their system “couldn’t connect to the MySQL server” but that wasn’t good enough… ok, so the account details are kinda excusable… but really, what more could I have told them about the error? 

The second time that I emailed them about the error I mentioned that the same error had happened again (this time I copied and pasted the exact error message into the email)… However I was told off because it wasn’t the same thing that caused the error this time around.  This time, their MySQL server was undergoing maintenance – so what? Does that mean that its any less of an ERROR?  And anyway *I* got the same error message returned to me both times… So to me, the user, it’s the same error… I wanted to say something like “Shut the heck up! Don’t tell me off for not diagnosing YOUR backend problems successfully! Just fix the bloody thing!”

This time I get told that I wouldn’t be charged if it wasn’t sent… BUT I WAS charged and it WASN’T sent!

Right now, I think I’m the idiot for still using them… but I can’t find anyone else that has a Web services API, and I’ve 1/2 implemented the COM API for Clickatell, so since I needed to quickly use it this morning, I stuck with what I hoped would work… Anyway… once I have the Clickatell api up and running I’ll never have to deal with the people at IDWS again… (who clearly have never heard of anything like “The customer is always right”, or even “be nice to your customers”)