Development General Internet/Links

Social Networking Software

Recently a friend found out about “social networking software” (not that he called it by that name)… It was yet another implementation of the whole “Six degrees” idea. I first saw it with the “original” It was a craze that hit in my 3rd/honours year at varsity. Everyone linked up… But then the network is only as good as the people that join, and when one person registers with two different usernames and links to different people on both names it starts to get messy. I was pleased to see that “The Scobeleizer” thinks similarly in his blog “Social Software still not impressing me“.

On SADeveloper.Net we had a discussion a while ago in one of the forums about a kind of “social networking software” which could be used for doing most things. In a nutshell, it worked as follows:
···1. I establish a group of friends
···2. I rate them
···3. Everyone rates products/people/skills/companies/etc…
···4. I get to see an aggregated rating for any product/person/skill/company/etc which is formed based on who I trust and how much I trust their rating of a product.

For example… I have some friends… Charlie, Sean, and Matt (all in the computing field). Lets say that I hypothetically think that Charlie’s ranking of a developer’s skills is overstated (i.e. he over rates them), so I’d automatically adjust any rankings he gives to a developer’s skills to 75% of his original ranking, for Sean I’d adjust to 80%, and for Matt I’d adjust to 110% (in this hypothetical situation, Matt undervalues people’s skills). Now lets say that Charlie rates Jon at 95% on Web Development, and Matt rates Jon at 60%. I’d translate those to 71.25% (via Charlie – 95%*0.75) and 66% (via Matt – 60%*1.1). So my aggregated value for Jon’s web development abilities would be 68.625%. So if I was looking to hire Jon, I’d at least have some idea as to his abilities based on my trusted friends.

You could expand this to then include institutions in the systems, so if my old university (Rhodes) was rating people I would have another way of ranking people. I could specify how much I trusted that institution’s rankings, which could start to apply to any institution.

And the rankings could not only be limited to people’s skills, but movie preferences, any products you want to purchase, dating, etc.

Of course, now that I’ve linked to the Scobeleizer, this idea is pretty much going to be seen by the whole world. To see what I mean, check out this blog of his. Especially when you consider that “everyone in London[paraphrase]” reads his blog.

So if you’re reading this, you like the idea, you build it, and you make a few million dollars off it… please be so kind as to donate some of it to me. 🙂


So much “stuff”, so little time

I was reading on a stack of blogs today about the various people in the US who have been made MVP’s.  It seems to be quite an honour…  Which got me thinking again about my developer community involvement in SA.  A while ago I was very keen to get involved, but then just trying to keep up with the various forum groups on SADeveloper.Net was taking forever (my network connection at work is dog slow (in fact its worse, dogs would be greatly offended that something this bad would be associated with their good name))…  The community grew to about 1000 people in the space of a few months, and with very little time on my hands to be able to try out the various code problems that people were having, I was not really able to give much input.  Combined with a few other facts, like the time it took to read just 10 posts was seriously hampering my work productivity, and that I have such a busy schedule during the week that I have pretty much no time for anything computer related after work.  (Unless I was to do it into the wee hours of the morning)

Since then, not much has changed… well actually a lot has changed… but nothing that would free up more time for me to be able to get more involved in the SA Developer community… In the last 6 months I’ve been singing in the choir at church, doing “backing vocals” for one of the worship teams, moving houses, getting engaged (followed by planning a wedding) which kinda brings be to where I am now… Currently I’m still planning a wedding (its happening on the 13th of March), so I’m looking for a place for us to stay, organising a honeymoon, fighting with a client of mine to pay me (so we can have a nice honeymoon), working, singing, etc.  On the 3rd of February I’m going to be leading a “homecell”/bible study which will also be taking up time…

And slowly I’ve started to realise that “Time Management” sucks!  Its not that I can’t manage time mind you, because I’m perfect (as you all know) – its just that this whole misguided attempt at expecting that the things we want to do must fit within a finite amout of time, like say for example 24 hours.  Who says that I can’t read three books, write two articles, answer 50 queries on various forums, spend time with my fiancé, sing in a choir, go to work, have food, go to gym, and sleep in 24 hours while giving my complete attention to each activity?  Unfortunately, I think I must admit defeat and join the ranks of the “unenlightened” in believing that doing things takes time, and that there is finite time available in each day in which to do them.

So now I’m doing something that’s also kind of “weird”… you see at the start of the year most people make decisions to cut out various “bad” things in their lives, and to take up various “good” activities instead… but this year I’m looking at what “good” things I can cut out of my life so that I can be better at what is left.  This throws up a whole bunch of interesting questions like “what is good?”, “how do you know you’ll be able to do better at what is left?”, “Who are you kidding? Are you really trying to say that you have nothing bad in your life?”, etc.

Well… I can answer some of them:

  1. “What is good?”
    By “good”, I’m meaning things that are beneficial and will help me get to my “end goal”. (I’m still deciding exactly what the end goal is)  For example – I know I won’t get to my end goal without my wife to be, so I cut things out of my life that interfere with spending time with her.  Those are the kinds of decisions I’ll be making…
  2. “how do you know you’ll be able to do better at what is left?”
    Well, I’m not 100% sure of it, but it kinda makes logical sense… If I have 5 minutes a day to practice music now, and after removing various superfluous bits from my life I have 30 minutes a day to practice music, I have a greater chance of improving my musical skills. (and I’ve had an extra 25 minutes a day of relaxation, which is great!)  Its this kind of effect that I’ll be looking for…
  3. “Who are you kidding? Are you really trying to say that you have nothing bad in your life?”
    Not at all, I have plenty of bad things that I need to remove too, its just that I don’t think its that commonly spoken about for someone to be choosing between which “good” thing to give up, as a “new year’s resolution”… You’re normally taking the “lesser of two weavils” (to quote from the “Master and Commander: The far side of the world“)

I think I’ll “cheat” on a number of points… I’ll do a “trial and error” test… I’ll drop things “for a while” and evaluate what impact it has on my life, especially since I’m begining a whole bunch of new things (like moving closer to my social group, getting married, leading a home group, and having less of my time required by being involved in worship at church (they’re organising the practices a bit better this year so I should only be practicing twice a month, as opposed to 4 times a month last year)) which will have both positive and negative impacts on my time and will certainly change my outlook on life.

I better dash, its 00:36 right now and I should have been asleep ages ago! (there goes that “wonderful” time management of mine again :))


Technicalities, Legalities and Stupidities

I just read Tim Marman’s blog entry about a poor kid called “Mike Rowe”, who registered ““… now he’s being sued by Microsoft for copyright infringement! [more info] Look, you probably find that the kid registered the name with a kinda “tongue in cheek” motive, but really – to sue him for it? I mean, just know I’ll be sued by some other guy called “Paul Sainsbury” for Identity Theft!

How would you prove yourself innocent of that… Imagine… one day the police rock up at your door to say “Mr Paul Sainsbury, you’re under arrest for identity theft”, and you’re like “Who’s identity did I steal?”, and they’re like “Mr Paul Sainsbury’s”, and you’re like “But that’s me”, and they’re like… “You’re not fooling us Mr Sainsbury”. How could you prove that all your documents aren’t fake?

If you are wondering how people could fake these documents, just check out the show “The Agency” (Monday evenings at 7:30pm on SABC 3 for those of you in South Africa)… they have a really cool lady there who basically fakes documents, etc all the time using simple grafic design skills, a PC, a scanner, some program (like photoshop), and a laminator. (plus a few other goodies, but since I’m not into the “fake id” business, I wouldn’t really know what they are… but then I guess I’d have to say that if I was in “the business” so I could not draw suspicion to myself, so you really have no way of knowing if its true or not – but this sentence is getting too long so I’ll stop writing about it)

I guess that “Mike Rowe Soft” case is kinda like those supposed “Stella Awards” that get handed out for the most “outrageous” law suites in the states… like the lady who got sued because a guy who broke into his house slipped on her kitchen floor and broke his arm (or somthing like that)… That’s gotta be an “urban legend”, but I’ve not checked it out on

Development General Humour Internet/Links

Customer support

Today I read a blog by Cameron Reilly entitled “my awesome customer support experience with Taskline”, and I realised that I have experienced some truly aweful and truly awesome service relating to my hosting providers.

About 2 years ago I started hosting with Brinkster… unfortunately I realised that they weren’t offering that great a value for money. So I moved to SleekHost (I might have moved somewhere else before then, but they’re the next one I remember) only to find hopeless support, that they did not do 1/2 of what they claimed on their advertising, and that their admin/control panel really sucked. So I moved to Instaspace, which was all fine and well, except that they didn’t offer .Net v1.1, their support people were hardly online, and even if they were online they were of no use because they could hardly understand english. They also had a very poor grasp of their own hosting environment, and I often found myself telling their support people what to do. So in a search for .Net v.1.1, I decided to move again.

By this time SleekHost had changed their offering, improved their control panels, and I’d grilled them about exactly what it was that they offered. They seemed to be ok, so I signed up. That was a BIG mistake! In the 28 odd days that I was with them, my site was operational for about 5. They were totally hopeless at responding to any problems I logged. The main one was that ASP.Net was giving me an error that basically said “I don’t have permission to read your web.config file, please fix it.” So I asked them to set the permissions on my site correctly, explaining the error in detail and how to fix it, and telling them how to confirm that it was working. The response I got was “We made one of your folders into an application, and it should now be working but we’re getting an error that says that you don’t have permission to read web.config.” Now, I’ve never ever seen a more useless support response than that. Nowhere did I ask them to make a folder into an application, and they simply repeated my problem to me. That reply only took them a few days to make (with some prodding for a response from my side). I replied to tell them that they were being idiots because my problem was still there, and that they’d done nothing to solve it. Its like me going to a doctor with a broken arm (and nothing else wrong with me), telling him what’s wrong and he says “Thanks for that. … Well here’s some medicine for your stomach ulcer, and by the way your arm is broken, I think you should look into it.”

Anyway, my site was down for a long time… I think the longest time it took them to reply to a problem was about 12 days. Eventually I’d had enough… And I stumbled upon SecureMate. Their signup process was flawless, their admin systems were excellent, and their support was brilliant. I was in awe!

Unfortunately a patch went wrong on the server’s admin systems and my site was out of order… but they responded quickly and moved my site to a new (soon to be in production) server of theirs to help me out. That was not such a great idea because when they moved the rest of the sites over to the new machine, they also moved a copy of my site from their old server, and suddenly my site stopped working. Their support people were quite good, despite some hassles with e-mail addresses of mine. I eventually got a phone call from them. They work in Singapore and I live in South Africa so that was quite impressive… I’m just a tiny little client of theirs, but they bothered to take the expense of calling me (an international call for them), and the problem was solved quickly. They’re one of the few companies I’ve found who will take responsibility when they’ve done something wrong, and will do their best to get it fixed. Recently I’ve set up this blog, so I wanted to add a SQL database to my hosting and have some folder permissions setup. Ordering and setting up the DB took a total of 20-30 minutes from my first e-mail to them to completion, and the folder permission changes were done within 15 minutes of my mails. Their support people are incredibly friendly in their approach to their customers. I love it!

Anyway, I thought I should rave a bit about them because they have totally blown me away, and all this for only about $8pm for my hosting!

To end off, here are some funnies I found on Nihit Kaul’s blog, he found them on “The Scobeleizer”. They are 2 movies… Behind the scenes at Microsoft and Every OS Sucks. Enjoy!

Development General Humour

Musings on XML, Bloging and conspiracy theories

I just had a conversation with a friend about XML, and its uses. It started off by explaining a bit about RSS for syndication of news, and why getting an XML feed is generally better than getting a Javascript feed… It ended as follows, which I thought was kinda worth a post:

Paul says:
If I’m writing any apps that need quick ways to store data, I use XML – its really easy, really quick, and doesn’t need anything other than Notepad to view it… Access, needs MS Access, SQL needs some SQL query tool, but XML just needs Notepad.
ChãrlIe says:
🙂  joy
Paul says:
Like my ultra-cool “Figure out which cellphone contract would cost you the least” application which stores all the contract types in XML, and converts your phone bill to XML before it analyses it all and tells you which is hte best contract for you
ChãrlIe says:
I havn’t seen that? that sounds cool
Paul says:
when I give it my phone bills, its normally pretty spot on with calculating what I should be charged by vodacom
And it proves that the Weekender Everyday per second is the best contract for me (even though I spend R700-900 a month on my phone and everyone says that I should be on the Talk 500)
ChãrlIe says:
LOL… you too smart for them Paul…
Paul says:
Well… when I was on MTN, I listened to their support ppl and upped to one of their bigger contracts, but ended up spending way more money…. nobody else believed me that it had happened, and nobody that I’ve spoken to about it has believed me that the weekender is better for me than any other contract… finally I can show the world my wisdom and vindicate my long held beliefs that the world rejected 🙂
Paul says:
Then they will know that I truly am a genius and the whole world will submit in reverent awe to my mastery of the cellphone tariffs. 

And shortly thereafter my brain shall explode, due to a build up of pressure caused by a grossly oversised ego, and the world shall be at peace once again.
ChãrlIe says:
LOL … hehe
ChãrlIe says:
well… I hope that doesn’t go into a blogg

Fortunately, nobody reads my blog anyway… but why would someone not want to have comments posted onto the web?  That can only leave me thinking… What is Charlie hiding?  Is there some sinister past that he is protecting?  Perhaps he’s running from the mob and the mere mention of his name could cause them to come and hunt him down?  Could that be why he uses such odd characters to make up his name?  I wonder… 😛

Development General Internet/Links

Final blog for the day

Phew, today was a busy one for this blog – I set it up, blogged a bit, and transferred my old entries from the blog that was maintained by Blogger. 🙂 I think I like having a SQL server behind my blog, its certainly more efficient than using files to store everything (or an external source like Blogger)

Anyway, after reading Rory’s blog today about Google searches which end up at his site I thought I’d check my own logs and see if I had any interesting visitors…

I had some interesting browser definitions, like:



   UltraLiberalFeedParser/2.7 (referred from


And then theres one from which was giving me a few hits a second, 24 hrs a day for a while, but its slowed down to about 2 every few minutes now. Aparently someone has asked them to monitor my site, its a bit annoying coz it throws my stats and fills my log files which I have to download before I can process the stats. I’ve asked them to stop the monitoring (they claim that they will do that if someone is monitoring your site without your concent.) but so far its not working.

Anyway, I probably should have been asleep a few hours ago.


[Listening to: Always Comes Around – Seven Day Jesus – Seven Day Jesus (03:59)]


Hrm… I’m busy trying to step through an application to find out why its not creating an object it needs and there are two things that are frustrating me. Firstly, the object I’m looking for should be created and added to a collection at some point in a deep nest of methods. Now since I didn’t write it I’m not sure where exactly it should be created, and that’s where the troubles begin. I now have to step through the code line by line and there are thousands of lines. That alone would be fairly manageable except that there are about 25 objects involved in handling this process and they’re all calling eachother or base class methods of their own, or invoking methods on objects that are cast as more generic objects. So I end up with this “tangled mess” of methods, collections and objects which is a nightmare to sort out. There MUST be an easier (more intuitive) way to debug code. I know I’m looking for a method which modifies a “Join” object, which has a reference to a “Language” and a “Person” object. I’d love to be able to run the app, and then run some kind of “Select” statement on what just ran to say something like:

SELECT * FROM Methods WHERE Object="Join" AND Property["Join.Left"]="Language" AND Property["Join.Right"]="Person"

That could then fast forward through the “execution plan” to show me exactly where in the code any matching methods were found. It could even have a funky 3D display with the various heirarchies of methods/properties calling methods/properties… But I guess that would need a fairly powerful pc to operate on, and mine is certainly not that powerful.

Which brings me to the second point. I keep stepping over code that I should have stepped through which then modifies things enough that I can’t simply drag the execution point back and step into the code, so I have to re-start the app. This takes about 4-5 minutes each time. Now that’s a waste of time if ever I’ve seen one.

Recently some bloggers (Don who links to Doug & Julia on the same topic) were talking about the specs for a development machine… Mine is less than 1/2 as powerful as any of Don’s specs. I wonder how much money would be saved with a faster PC? I should also say that I have one of the faster PC’s in our team (Its a Celeron 1.1gig). Although recently 2 of the team members got new machines which have cpu’s of over 2gigs, but their memory is only 256mb, which is a pitty. There’s not much chance that I’ll get a new PC in the near future, so I guess I better “deal with it”. 🙁

.Net Stuff Development General Internet/Links

A new day, a new blog

Well, yesterday I decided to find out how much it would cost to add a SQL database to my hosting account at SecureMate. Again, they blew me away with their service. Within 15 minutes I’d got their reply… it took less than 30 minutes for the whole thing to be setup. Why would I want an SQL database? Because now I can run .Text or other blogging systems (like dasBlog) Also, it means that I can actually do something with my site that would look vaguely professional… except for the minor fact that I “don’t do pretty”, but at least it would be technologically professional. Well, maybe not… but at least I would have the potential to have do more on the site. I read an interesting article on TheServerSide.Net yesterday. As an aside: TheServerSide.Net site was launched yesterday and looks like it could be excellent, it generated a fair bit of interest in the blog sphere yesterday, check out Julia’s comment for a start. Anway, the “inaugural” message from the editor made some interesting comments. I often wonder how anyone is meant to build a “best practice” application, when often the technology is not fully understood. I’ve tried to grasp it completely before I confidently move forwards, but that seems rather unlikely to happen quickly – especially with a technology that’s shifted development mindsets as much as .Net has. He comments:

.NET introduces a huge new learning curve to the Microsoft technology developer. Just take a look at the list of namespaces in the MSDN documentation. It’s huge – well over 60 namespaces alone, with even more promised as part of the Whidbey release. And, of course, each of those namespaces in turn contains classes, each of which in turn contains properties, methods, and events, all of which somehow collaborate to create the .NET Base Class Library and related functionality. That still doesn’t even take into account the intricacies of the CLR itself, nor the various technology bases that some of the .NET libraries touch, such as the relational database, the underlying windowing system encapsulated by WinForms, HTTP and the Web, or XML and/or XML-based Web Services. It’s a huge space we’re contemplating, and there’s a lot of lessons to be learned about what to do – and what not to do – when building enterprise .NET applications. [ … ] The truth is, even though the last 3 years of my life have been spent teaching and speaking and researching .NET alongside some of the brightest .NET experts in the world, I can’t claim to “know” how to build .NET enterprise applications. Nobody can, at least not without a serious disclaimer attached.
Finally someone’s said what my mind was only begining to think about grasping.


A quick test via w.Bloggar

Testing, testing, testing…

General Humour

Incredible acts of stupidity….

Hrm… ever done something absendmindedly that’s just too thick for words?

Like the professor I know who usually drove to work on his motorbike, but one day came into work in his car and was wondering why people were staring at him… Only when he got to his office and hung up his bike helmet, did he realise that he’d been wearing it.

Or me today – I go to the kitchen at work to make tea and am about to finish off making it… (I usually add water, tea-bag, sugar, stir, then milk) So I was about to add the milk, and I was already thinking of what I was going to do when I got back to my desk. Only to realise that I’d done everything except putting in the tea-bag.