General Humour Internet/Links

Extreme Improv…

Ok, so this really got me smiling… check out Improv Everywhere, a group in New York (NY), who do “improv” acting in kinda random places… not staged – like in a shopping mall, or in a Starbucks (like this one called The Moebius)

I saw this on the VS Data Team’s blog today entitled ‘This was *awesome* (by yag)‘… I’ll quote a bit here:

“[A] guerilla group of performance artists who do live shows on unsuspecting New Yorkers. Gotta agree with him, my favorite is The Mobius as well. To quote the site: ‘Improv Everywhere agents created a living moebius strip in the Astor Place Starbucks. Seven undercover agents meticulously repeated a five-minute slice of time for twelve consecutive repetitions. Starbucks employees and patrons were frightened, confused, and ultimately entertained as they found themselves stuck, without escape, in the middle of a time loop.'”


MS .Net Framework v1.1 Bug?

I have the following code:

PropertyDescriptorCollection myColl = myObj.GetPropertyDescriptionCollection();
PropertyDescriptor pd = myObj.GetOneOfYourPropertyDescriptors();
if (myColl.Contains(pd))

For some reason, when it runs the line “myColl.Remove(pd);”, I get an exception thrown that says:

An unhandled exception of type ‘System.ArgumentException’ occurred in system.dll
Additional information: Source array was not long enough. Check srcIndex and length, and the array’s lower bounds.

   at System.Array.Copy(Array sourceArray, Int32 sourceIndex, Array destinationArray, Int32 destinationIndex, Int32 length)
   at System.ComponentModel.PropertyDescriptorCollection.RemoveAt(Int32 index)
   at System.ComponentModel.PropertyDescriptorCollection.Remove(PropertyDescriptor value)

If I do:

PropertyDescriptorCollection myColl = myObj.GetPropertyDescriptionCollection();

PropertyDescriptor pd = myObj.GetOneOfYourPropertyDescriptors();

bool found = false;

foreach (PropertyDescriptor currentPD in myColl)


  if (currentPD.Equals(pd))


    found = true;




The variable “found” ends up being true. So I know that the collection definately contains the item.  So is this a bug in the framework?  Is PropertyDescriptorCollection.Remove(…) not written correctly by Microsoft?

.Net Stuff Geek food

DevDays 2004

Well, the day was definately more detailed (higher tech level – 200-300) than last year’s dev days which was great.  But unfortunately most of what was covered would really suite a small ISV, and not necessarily work in the environment I work in.  (Not that my environment is out of the ordinary.)  At work, we’re building a large framework for the rest of our developers to use so we don’t really use many of the automated/built in data access wonders of VS.Net.

So let me run through what I got out of the sessions (hrm, I was going to insert a table here, but BlogJet doesn’t have any GUI way to do that, so I’ll have to do it manually):

Opening Keynote: Realizing Your Potential
What I learned for me: Even Microsoft can have hardware problems, so you’d better make sure that you check your presentations and equipment well before you get up to present, run through what the procedure is if something goes wrong, and keep communicating – have a back up plan so that you don’t look quite so stumped, and can gracefully recover without saying “Its a hardware problem” and cutting the talk short.
What I learned for my company: (same as above)

Session 1: Best Practices for Designing and Building Smart Client Applications
What I learned for me: I’d better start reading some of those pattern’s and practices that I keep promising myself to read. They could really help me if I’m doing development myself for “freelance” work.
What I learned for my company: Not much – we use similar things to the “Observer” & “Command” patterns, but they do a lot more in some places and lack a little bit of the functionality in others. Perhaps we could implement the “Command” pattern a bit better… But then I must say that we’ve done all that without reading or knowing about the patterns. (We have a clever guy here that did that work)

Session 2: The Ins and Outs of Secure Data Access
What I learned for me: I need to get me some of that… 🙂  Specifically the DPAPI library.
What I learned for my company: I think this could be useful as we’re serializing (scuze the american spelling, but most developers would look confused if they saw the UK spelling) some objects, which contain connection strings… Of course they didn’t touch on areas of security that we really need, but then I guess if DevDays was to solve every company’s most difficult problems, then they’d be way better attended, would cost an arm and a few legs, and would just generally be entirely impossible to host.

Session 3: Developing Secure Smart Client Applications
What I learned for me: I can’t really remember this session too well.  I think Ahmed took it, but I’m a bit stumped as to what he spoke on. (I’ll update this later when I remember)
What I learned for my company: (see above)

Session 4: Deploying and Maintaining Smart Client Applications
What I learned for me: Very cool, and definately a must – I loved the Application Updater component, and was pleased to have the limitations and benefits of the various “code download” deployment methods re-iterated.
What I learned for my company: Some of the Application Updater stuff maybe could be useful, but other than that… nothing.

Closing Keynote: The Future of Microsoft Development Tools
What I learned for me: Oh boy, oh boy do I love Microsoft’s new tools… of course it does leave me wondering how long it will be before trained monkeys will take over our jobs. I think I should go start my own company doing .Net development on Whidbey as soon as it comes out, so that I can get a head start on the rest of the masses. 🙂
What I learned for my company: WOW, geez.  So much that will help us, and so much that will just replace a lot of the work we’ve done already.

Overall it was a great day – I got on a Caffeine buzz way too early for any “sane” persion, loved the presentations, can’t wait for the tools coming down the track next year.

And best of all, I got to actually meet one or two of the bloggers… Armand (who probably thinks I’m really rude – I kinda didn’t hear what he was saying to me as I was leaving (in a rush)… so till I see you in person, please accept this apology for my rudeness), Kevin (who I didn’t exactly meet, but who I watched winning too many prizes during the day, and sat on the other end of the table from him at the Blueberry Grill), Simon (who seems to organise most of the SA Developer things, and seems to be one of the “well connected” developers in SA), Thea, Iwan, and a few others who I can’t remember off hand. (Either coz I didn’t link them easily to their blog, or coz I haven’t read too many SA Dev posts from them (maybe coz I haven’t read too many posts on SA Dev recently), or because I simply forgot)

Anyway, it was a cool day on the whole… and for those who are interested, Simon posted this morning to where you can download IssueVision (the app that they worked through in the Smart Client Track, which has some pretty cool components)

I just checked, and the link Simon gave takes you to Barry Gervin’s blog where he says you can download the actual file from Microsoft over here.


GeoCaching update…

Well, on saturday we did our first GeoCaching.  For the geeks among us, the image on the right will have an impact. 🙂

I could repeat what we wrote on the GeoCaching website, but that would be a waste of bandwidth. So here are links to the caches we visited: JHB’s Best View, Message In a Bottle, Reporters Riddle #1.

We also collected a Travel Bug called Lightening Bug.  I can hear you saying “Ok, so I kinda get GeoCaching, but what on earth is a Travel Bug?”… So I’ll tell you. 

A Travel Bug is a metal dog tag that you “attach to an item. This allows you to track your item on The item becomes a hitchhiker that is carried from cache to cache (or person to person) in the real world and you can follow its progress online.” A sample of the dogtag is on the left.

Lightening Bug is racing with 4 other bugs placed by “The Four T’s”.  There are 2 ways to “win” the race.  The first is to get back to Sacramento, California (one of the bugs has already done that), the second way is to go through as many caches as possible before heading back to Sacramento, CA.

Anyway, we now have the bug and are going to try and move it around a few other Cache’s in SA (assuming we can’t convince a friend of ours who’s going to the USA in the next few weeks to take it with him).

Oh, and if anyone REALLY wants to be nice, you can consider sending me plenty of cash for my birthday (coming up soon) so I can afford a GPS system. 🙂  (Or if you have lotsa cash, you could buy me a Garmin Geko 301, a Garmin Rino 110, or a Garmin eTrex)

General Home Cell


The guys in homecell were going to go on a mini-hike (5km) tomorrow, but its turned out that only Sean, Charlie and I can make it.  So we were thinking of other things to do, and Sean suggested we just go have breakfast somewhere.  I still wanted to do something out doors, so I was thinking of where we could have breakfast and still do something outdoors.

One of the places I thought of was at the Lonehill shopping centre (they have some cool places to eat there, and its on the edge of a small “nature reserve” thingy where you can go climb up the “lonehill koppie”)… when my mind suddenly remembered that there is a Geocache near there… So I quickly MSN’ed the other two and we’ve organised to go get breakfast and go find some geocaches.  We’ve got 6 we’ve printed out, a few difficulty 1, 2, and 3’s, and one difficulty 5.  I’m kinda excited to go find the treasures and add our own bits and pieces to them.

I’ve known about GeoCaching for about a year now, and have wanted to do it pretty much since the instant I read about it.  And now, finally, I’m going to actually go do it!  I’m SERIOUSLY excited. 🙂

What a nice way to start the weekend. 😀


Longhorn EULA

(found via a Channel9 – in this post)

By installing this software you agree to:

– not be monitored, tracked or harassed by us , our partners, or 3rd party sites we do business with

– We reserve the right to continue to improve the product youve bought – free of charge through the Windows Update service.

– Microsoft is not responsible for what you do with your computer.  Anything you make on it is your own.

– In the words of Google ( Dont be evil ) and Apple ( Dont steal Music) we ask that you try to obide by copywrite law

– This product comes with a full waranty: if its not working for you – you may return it for a full refund

– You may install this product in your home on all the computers you wish

– This software will not complain if you change your system components and will not make you type 50 letter codes when you install it

– This software MAY collect info about your computer periferals and configuration to keep it running at peak performance.  For a list of what this info is, how it is sent and how to disable it – click here

– all your base arnt belong to us


Link round-up, shout-outs, etc

A cool link from Rory, about a really stupid HR complaint.

Some Wired news articles I’d really like to comment on:

  1. How Info-Overload Experts Unwind (this is something I don’t do that well, but I’m learning (I hope))
  2. Designer Virus Stalks HIV (cool, but scary… The guys who made it talk about how scary it could be that anyone could start creating “designer virii” – at least this virus is a “good one”)
  3. iPod All the Rage in High Fashion (I *WANT* an iPod, preferably an iPod mini – coz they look cooler.  Although the full iPod seems to have a lot more add-ons/gadgets to make it even cooler)
  4. Browser Hijackers Ruining Lives (This happened to my cousin a long while ago when he first joined IS – he went to a site and installed some software (he was kinda new to the internet back then) and promptly found his PC randomly opening up his browser and directing it to various porn sites – NOT good)

There are more, but I’ll leave that for now.

Other arb thoughts – I *REALLY* want a tablet PC, especially after these blogs. (Scoble keeps mentioning them both there and on the Geek Aggregator, too often to link to each post)

Oh yeah since shout outs are “cool” in the blogging world, here’s one to Charlie (the coolest guy in my homecell to be blogging – ok, I admit, he’s the only guy in my homecell who’s blogging, but that doesn’t make him any less cool :)), Quixilver (who’s blog’s hosted on my site, has some really interesting blog entries, and has a cool style of writing)… All the guys at (generally they’re some of the more active members of, who have some cool blog entries about .Net and about life)

I’ve handwritten a few BLOG entries that I really must post some time – we’re house sitting (and child minding a 16 yr old (well, she’s actually a bit younger than that, but she’d be really happy to know that I called her a 16 yr old and didn’t reveal her actual age – which is marginally below 16)) for a few weeks so I’m without a PC at the moment (yet another reason why a Tablet PC would be awesome) So I’ll try get around to posting them some time soon…

General Internet/Links

After blog mints

Rory had a brainwave on Sunday – its the “After Dinner Mints” of the blogworld.  A great way to get all those “Hey, I saw this cool site” or “This is a great link” comments into the blog without actually adding hundreds of extra one line blog entries each day. 🙂

And thus I’m doing the same…

After Blog Mint [?] :

A saw a cool de-stressing/relaxation “game”, which works really well, unless you suffer from OCD.  Original link was from Matt which links to a student’s site at the University of Houston’s – College of Hotel and Restaurant Management. I could imagine the load that that server would eventually get, so I put a copy on my website – its called BubbleWrap.


Generational Truths

This weekend, my church ran a course called “Marriage Enrichment”.  While Christie and I were waiting for it to start Ashley (our lead elder) chatted to us and made a comment along the lines of “You guys are luck to have a course like this so soon in your marriage.  When we got married we didn’t have this”.  Its one of those statements that almost requires a response from you like “Yeah, we are.” or something similar.  But really I hadn’t thought much about it and, not knowing the course material, I couldn’t honestly agree that we were lucky to have the course.  But his comment did get me thinking.

You see, the course was excellent and while I hope to apply what we learned, I’m sure I’ll actually only apply 1/2 of it (if I’m lucky).  At this stage in my life, I probably won’t see the fruits of what we learned and later on in life I wonder if I’ll be able to remember the course and see what good fruit it produced.  I’m at the age where I don’t really know too many married couples well (who have been married for 5 or more years).  So I don’t have any practical comparrisons to make… for example, I could see the benefit if I could say “WOW, now I can see why James and Sandra have been struggling”, or even if I could say “Gee, THAT explains why Christie and I don’t communicate well” or something like that.  You see, I’ve only been married for a month and a half.  So its giving me good pointers for the future, but I don’t know what I’ll need to apply and when in the future I’ll need to apply it.  And I’m certainly not going to learn the entire course so that I can at any stage recall the “correct way to do things” and act on it.  That would be both highly time consuming (of which I don’t have much left to consume) and verging on a “robotic” existence – “Keep all the rules constantly at the ready so you never make any mistakes”.

At the same time I started to think about how if we got our marriage right, had kids who grew up in the church and married someone else’s kids who had similarly “good parents”.  They will have practically seen “good” husbands and wives interacting, so will they even realise the benefit of such courses, or the importance of passing on these values and lessons?  If they do manage to pass the values on, will they really have a practical understanding as to just how bad it can be if these things are not in place?  If we turn the tide of divorces in the country, will our future generations keep it?  Or will they not learn from the mistakes of the past and be doomed to repeat them?  Its all fine and well to talk about history that way – great leaders, wars, plagues, etc.   But do people keep account of social trends in the same way?  I guess that’s what the disciplines of sociology and anthropology are about, but does the “population in general” learn about these things?

Even in this morning’s sermon there were two examples of this.  The one was Ashley talking about the relationship between David and Jonothan… He said something similar to “When David said he loved Jonothan, it wasn’t in an erotic/homosexual way… but it was merely as one would have a deep bond with someone who saved your life in many battles.”  He then referred to the guys and basically said “like when you were in the army, fighting – your buddy who watched your back and protected you.” But anyone born after 1975 would not really understand that analogy – we weren’t forced into the army.  We don’t practically understand that as he does, or as people from the generation before us would.

My lingering question is this: How do we pass on our values and lesson’s we’ve learned to the next generation effectively, and how do we ensure that they’re learned to the same degree and will be passed on effectively to the generation after that?