Charl van Niekerk » Blog

Main

Latest

Archives

Powered by Blogger

RSSza

Ok now I am honestly confused. What exactly is the point behind RSSza?

When Afrigator and Amatomu (in alphabetical order) came along we were all very excited. But now I have to be honest that the idea is starting to wear out a little.

RSSza has a manual feed approval system. You send them a mail (yes, a mail) and then they will consider if they will include your feed into the system.

It seems like they are only looking for "great feeds relating to South Africa". Does this blog qualify? Probably not, then.

So unless RSSza is aiming to gain an advantage through the quality factor, I don't see how they are going to catch on. What exactly are they giving us that Afrigator or Amatomu are not giving us already?

After all, it's easy to write an aggregator.

Another random question: why are all of these services (Afrigator, Amatomu, RSSza) using the com gTLD instead of something under the za ccTLD?

Also, why didn't I know about Blik or BlogAfrikaans before? :)

Thank goodness Stii and I canned that sablogplanet concept in favour of Kupa!!

The Machine is Us/ing Us

This one was originally posted by my GSoC mentor Rob Schley on the Joomla! Developer Blog.

If you are still not sure what the social web and the semantic web are about, this is quite a nice little intro. Check out The Machine is Us/ing Us (Final Version).

Next myXchange Meeting: 16 May

Finally, here is the details for our next myXchange meeting:

  • Date: Wednesday, 16 May 2007 from 18:30 until late (or whenever you need to get back to the wife and kids) ;)
  • Location: Upstairs at Harrys above Spar in York Street, George

As usual, please add yourself to the wiki page / leave a comment / mail me if you are interested in coming. Thanks!

hCalendar

South African Government Pushes Open Source Development

The South African Government is forcing the industry to sponsor open source development in South Africa by having lots of public holidays. Hackers all around the country get paid like it's a normal working day, but we get to code the whole day long on our favourite projects! :P

myXchange on the 25th: Now we're talking!

Yesterday evening's myXchange meeting was really hot. We had seven people there, which is a new record for our group so far.

That is especially surprising considering that a major cricket match was on. One of my colleagues told me the score but I didn't understand it; he just said that all I need to know is that it's flipping terrible. (Yes, I don't watch cricket; I code.)

Apparently the South Africans got beaten quite badly so maybe people came for some cheering up. :)

But naturally it's not about the quantity but about the quality and in that respect I think we are definitely going into the right direction!

The following people attended (in alphabetical order):

Thanks all for coming - it was a lot of fun! A specially big welcome to our three new members: Bev, Leroy and Louis! Hope to see you all at our next meeting in three weeks' time. I'll make an announcement to confirm the date and venue soon (and also put it in hCalendar format so that you can easily import it into Google Calendar using Operator or whatever else you like to do / use).

So we are thinking about holding another Geek Dinner / 27dinner in the Garden Route. So far, we have been thinking about holding it on Saturday, 2 June 2007 (in which case it won't really qualify as a 27dinner so it'll have to be a Geek Dinner) but this has not been fixed yet. We are only in the beginning of the planning phase; Bev and I have been given the task to follow up on some candidate venues. There are quite a few nice options (this is the Garden Route after all) but I will blog some more about this as soon as I have updates.

One thing that is naturally very important is to keep our friends over in Cape Town and Johannesburg in mind. Without you guys, the Garden Route Geek Dinners just would not be the same. When will it suit you guys? And then another important question I would like to ask: do you happen to play golf? :)

Don't worry if you suck at it; however badly you bugger up the game, you can't possibly play worse than me! Maybe we should have an ama-croco-croco team (not for the physically disabled but for the ball-sense disabled like me) that will be the last to enter the field. ;)

Oh well, you can't hack until 02:00 in the morning and still be expected to excel at sports. :P

We are going to be moving the George Freedom Toaster to JDL Printing on the corner of Market and Meade Streets. It is currently just not getting enough exposure standing in a very closed environment and we just need to let it do what it's been made to do: market itself to the maximum of its own capacity.

I was very busy today fighting a deadline so the others beat me senseless when it came to blogging:

  1. FeistyFemale » My first MyExchange meeting
  2. stii.za.net » Another AWESOME myXchange gathering!
  3. the mad hatters funeral » myXchange has a seXchange (of sorts)
  4. FeistyFemale » Aftermath of Xchange meeting

I think this order is correct according to the time of posting, but maybe it's off because some people's blogs report time on a different timezone than others.

But thanks all; am really glad to see so many posts about the meetings! Keeping it real and doing things the social web style. ;)

Free Afrigator T-Shirts

This morning from the Afrigator blog in their post Win an Apple iPod with Afrigator:

Actually, come to think of it, we’d love you to start blogging about it, so we’re going to offer the FIRST 50 BLOGGERS who trackback / pingback to this post in their blogs a limited edition Afrigator T-shirt.

Ok, so you can call me a whore but a t-shirt would actually be extremely cool. :)

Update: Oh wait a minute, I assume these t-shirts are free?

GSoC Update #3

Sorry that it took me so long to get around to posting this update.

We will be working on Joomla 1.5 Beta 2 so we are currently waiting for that to be released before we can think about starting to code. Therefore I am spending the time to refine my project plans.

Joomlaforge is now migrating to Joomlacode. Interesting stuff.

The Tectonic article got syndicated to IOL Technology which in turn got syndicated to GardenRoute.com. This sparked a forum thread which sparked another forum thread.

Yet haven't heard about any other students in Africa. Hopefully that will all change next year. :)

From an African mentor organisation point of view, I know WordForge was one last year. I hope next year both WordForge and Freedom Toaster will be mentoring organisations. I'm sure there's some other great open source efforts in Africa that should also apply. I think the Joomla dev community is extremely friendly and it's been a real pleasure so far so I'll probably be applying to Joomla again though. But one can submit up to 20 proposals so I'll see about that next year.

There was also a thread on the microformats-discuss mailing list; obviously I replied and there was also a reply by Terrell Russell; however, I didn't get as much feedback as I hoped.

There was also a blog post by devkungfoo titled Joomla Presentation Standardisation.

I am networking a bit with some of my fellow Joomla GSoC students. I had a particularly interesting discussion with DeviantDev the other day. We were speaking about syndication over instant messaging as well as integrated and distributed social web services. But more on that another day. :)

Democracy Player

I have been using this for a couple of months now and I can't believe that I haven't blogged about this yet. Democracy Player is an open source cross-platform media player. It runs on Linux, Mac OS X and even Windows.

There's a package available for Ubuntu Edgy but unfortunately not for Ubuntu Dapper. That is kind-of ridiculous because Dapper is the LTS one.

The main reason I started using it is because it allows me to download YouTube videos to my local hard drive. Overseas I wouldn't have bothered, but because I'm in the middle of telecommunication hell I find it very handy to be able to save something to my hard drive in order to view it over and over again.

Syndication Over Instant Messaging

After yesterday's post about Muti Hooks & Jabber / IRC Bots, today I met a fellow African currently located in the USA called Peter Rotich. He is involved in building radiusIM. He actually pointed me to two sites, Feed Crier and Rasasa that are attempting to do something very similar. It's really funny that I never knew of either of these before.

Although these look very interesting, they are far too limited if you ask me. I want to expand this concept and create a real solution out of it. I have been speaking to some people this afternoon and things are really looking up for the project, but that's all I'm saying for now. :)

Freedom Toaster Map

I can't believe I never blogged about this. I have been searching through my archives but couldn't find anything that mentions the Freedom Toaster Map.

This is already actually quite an old project of mine I completed last year for the über-cool Freedom Toaster project. I think it's a lot of fun to play with the Google Maps API because it's actually quite powerful (although far from perfect, as anything else).

Anyway, I wrote a little script that reads an XML file containing the info of all the toasters. Then it simply populates the map and voila!

Although the script is really simple, it actually took a bit of figuring out. Luckily now it's out there for others to look at and learn from. I'm sure there's lots of people that want to do similar things.

Since the map is far from complete, I would love to get the coordinates of more toasters. If you could help me out, please do! :)

Muti Hooks & Jabber / IRC Bots

Ok, Muti now has hooks. This is majorly cool.

What I can now do is I can write a script and as soon as somebody posts a new link, my script will be triggered along with the info of the new link. The possibilities are endless.

So, what do I want to do? What I wanted to do all along: write a Jabber bot.

The Jabber bot sits on a server like jabber.obsidian.co.za. If that would be possible, I would even like to have it sit on its own dedicated Jabber server that would make it independent of Obsidian's.

Firstly there is a web interface. The users can register and log into the web interface. They can select whatever they want to be notified of. Some possibilities:

My hook script on Muti sends some kind of message to the server running the Jabber bot.

The users of my system just provide me with their Jabber ids. Then a short authentication process follows to make sure they are indeed the owners of those ids to prevent abuse.

Then as the stuff comes in they just get notified. As simple as that.

The nice thing about this is that you can get notifications on your PC, on your mobile, or with anything else that can interoperate with Jabber. That includes Google Talk, naturally, which vastly expands your network. One can even start to support some proprietary protocols later on such as MSN. There are many open source libraries (even python ones like msnlib) that could possibly be used for this purpose. I don't know of much for Skype yet and ICQ is anyway not that popular anymore.

Bandwidth efficiency is a major advantage when it comes to instant messaging. Let's say you are subscribed to 50 feeds from your local PC. Each one of these feeds need to be checked every x amount of time. If you set it to 10 minutes, you better have uncapped. If you set it to 190 minutes, you're not going to get notified of updates very quickly.

If you use instant messaging, you only get a message sent to your computer when there are actual changes. No wasting your bandwidth. And you're just opening and idling on a connection that would have been open anyway thanks to your other uses of the same platform.

If you put this through XMPP, the advantages are immense. You don't just have to use your standard instant messaging client to handle your notifications. You can extend the XMPP protocol to allow any amount of semantics / metadata you like. You can therefore figure out rich displays and syndicate however much information you want (only post titles, summaries or entire posts). The extensibility factor is a major advantage.

Haha, this comes back to the semantic web; my favourite subject!

Obviously, integration with IRC is another thing to look at. Using IRC you can broadcast information to a vast number of people with a high degree of bandwidth efficiency.

First I have to get a server to run all of this on. This requires no ordinary hosting package. I need to be able to run daemons (permanently running background processes). I also need both Java and Python (like Google haha). Maybe I can come right with Python; will have to research Python-based XMPP libraries first. But I don't have the funding to set this up right now so I would really like to have some server space donated for this if possible.

Please contact me if you would like to sponsor this project. This is world-revolutionary and has never been implemented nearly to this extent before (that I know of). We're not talking about African firsts, we're talking about world firsts. There are massive bragging rights and potentially even advertising opportunities involved, so don't let this one pass through your fingers. ;)

I almost always have my cellphone with me; otherwise contact me using any of the possible methods. I am really excited and would love to share my ideas and plans!

TCP/IP? OMGSTFUROFLMAO!

Image: Photo of modified bottle and packaging of TCP

WTF?!

Why South African Web 2.0 Projects Will Win!

I think there is a great future for South African Web 2.0 projects. Why? Simply because they listen to their users. And that's what overseas services seem to lack.

I mean, look at how quickly somebody from Zoopy responded after my post about their embedding markup. Would you see that from YouTube? For sure not!!!!

I have had contact with Neville Newey from Muti, Justin Hartman from Afrigator, Vincent Maher from Amatomu and now Jason from Zoopy. They have all been extremely positive about my feedback and my blog articles. They are all extremely cool people. And most of all, they are all involved.

Conditions in South Africa are not ideal, especially not for high-tech projects. We lack many of the basics (such as half-decent internet access) that most people in other countries (even in many other "developing countries") take for granted. If we managed to do all this with so many hardships, just imagine what we could do once we get our internet access and the crime sorted! Oh my goodness, I don't even want to start thinking right now... I better go home before I get too excited. :)

Viva South Africa!

Zoopy Embedded Videos

I don't really like Zoopy's embedded video option at all. Why don't they link back to the original post on Zoopy by default from the embedded markup? Check out this example:

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="322" height="264" id="Zoom" bgcolor="#000000"> <param name="allowScriptAccess" value="sameDomain" /> <param name="allowFullScreen" value="true" /> <param name="movie" value="http://www.zoopy.com/Small_offsite.swf" /> <param name="FlashVars" value="stream=http://www.zoopy.com/video/1177256475.flv"/><param name="quality" value="high" /> <param name="bgcolor" value="#000000" /> <param name="loop" value="false" /> <embed src="http://www.zoopy.com/Small_offsite.swf" FlashVars="stream=http://www.zoopy.com/video/1177256475.flv" quality="high" bgcolor="#000000" width="322" height="264" name="Zoom" loop="false" allowScriptAccess="sameDomain" allowFullScreen="true" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>

Let's say I see this video on a blog post somewhere. Now I like the video so I want to post it to Muti, del.icio.us, reddit, digg it, or whatever. How am I supposed to know if that same video has already been posted from another blog or from the main site? I don't even know the title of the post so I can't even go and search. I just have to guess it, probably, but that's too much work if you ask me. Always post from the main site; that just helps to stop people posting the same thing over and over and wasting everybody's precious time. Now I don't know where the hell the original video was. There's no link back to the original thing.

Bah.

Custom Blogging CMS

Some of you might wonder why Standards.za.net has been so silent the last while. Currently the site is on Wordpress, but that system thoroughly makes me sick. Therefore I am currently implementing my own custom blogging CMS to replace Wordpress. Building a CMS is actually much simpler than I thought. I don't know why people like to overcomplicate things so much. The only part that it turning out to be a bit of work is actually the admin back-end. However, I am going to really push this in the next couple of weeks before I start coding on my GSoC project, so I hope to have things live in the next short while.

My commenting system and pingback system might still take a little longer, but I love coding so I'm sure I'll get around to that eventually. Naturally, I'll release all my source code under the Fidelis project but it will probably be GNU/GPL 2. This is negotiable however, if somebody can come up with a convincing argument why it should be otherwise. :)

Joomla & Semantic Web: Request for Feedback

There are a lot of really smart people out there so I'm not going to sit here in front of my computer on the southern tip of Africa and act like I know everything.

Currently I am busy refining my GSoc project before I start coding. If I'm going to be doing this, I want to do this properly. There's no point in spending dozens of hours of time doing something if it doesn't help anybody.

Therefore I want to ask everybody, especially those that have some knowledge of web standards and the semantic web, to give me feedback on my proposal. However, even if you're not the expert yourself and you have something to say, please do. No comments are stupid; there's value in absolutely everything. The more feedback I get, the better!

The kind of questions I want to ask are the following:

The kind of arguments I would prefer to stay out of is "but don't you know by now RDF just sucks". As I've explained in a recent post to the Microformats discussion mailing list, I believe that web standards today are more focused on practical issues than theoretical ones.

A couple of years ago we use to argue about the "perfect" way to do things. Then we realised that everybody has their own definition of "perfect" and their own opinion of what the "perfect way to do things" would be. Then we realised that browser vendors are focused on their users far more than our ideals. Now we have HTML 5 and Microformats which are very much focused on making things work.

From my side, I would really like to see the semantic web work and therefore I need to know what would make Joomla 1.5 a better product for users. If I manage to give the users added value at the end of the day, the Joomla Semantic Web Integration GSoC 2007 project will have been a great success in my eyes.

So therefore, if some integration with RDF will give users extra value because there's actual implementations out there, then I see it as a good thing. But let me know what you think! As I said previously, there are no such thing as a stupid comment. Your opinion matters and I want to hear it. If you don't want to leave a comment, by all means feel free to contact me through any channel you like. :)

HIV/AIDS, Antiretrovirals & Food

South African health minister Dr. Manto Tshabalala-Msimang has often been criticised for her attitude towards AIDS. She believes that eating healthy is better than taking antiretroviral drugs.

A few months back, she got rather ill herself and during that time others in government quickly started pushing for antiretrovirals.

A while back I picked up a copy of the Leadership in HIV/AIDS magazine (issue 14 January 2007). On page 15 the heading says Beetroot gets the boot.

Personally I think this is sending out the wrong message. When you are sick in any way, it is always a good thing to eat and live as healthy as possible in order to help your body recover (or at least fight the threat as much as possible) naturally. This is irrespective of a person taking artificial medicine or not.

First of all we need to remember that antiretroviral drugs are not a miracle cure. It usually doesn't cure HIV/AIDS, only fight against it giving a person a longer time to live. In some cases the person's health might even temporarily improve.

Of course, this would only help if the AIDS is HIV induced. If the AIDS have been caused by something else than a retrovirus, there's no point in taking antiretrovirals anyway. But seeing that in South Africa the most likely cause of AIDS is HIV, that's fair enough.

Of course, one should be very realistic towards antiretrovirals. Firstly, it's not just one particular kind of medicine; there are many different type of medicine that have different effects. Some can be very toxic; they need to be handled with care. For example, when you handle them you need to wear gloves and a mask over your face so that you cannot accidentally inhale anything coming from them. And then you actually expect others to swallow that stuff.

They also have a rather large list of adverse effects associated with their use. There have also been several reported cases of deaths related to the use of antiretrovirals. However, it's difficult to blame the antiretrovirals if the body of the victim is already half way down the drain thanks to AIDS.

I know of one person that has taken antiretrovirals and got a lot better from them (yes, the visible effects of AIDS have actually been reversed in his case). I presume there are many other success stories out there as well. But antiretrovirals should still only be a last measure and not something you just want to throw around and act like it's perfectly safe.

The grapevine has it that many of the nurses are actually selling antiretrovirals to patients that should be getting them for free. In other words, the nurses are pocketing the money and extorting people that are struggling to live. That is just plain sick. But I don't have proof of this yet so let's not jump to conclusions.

The fact is that the healthier the body itself, the better it will be able to fight against viruses such as retroviruses. If you decide to take them or not, eat as well as you can to give your body a fighting chance. Some foods have been proven to give your immune system a boost so you never know; every bit helps!!!

However, if Dr. Manto wants to be taken seriously, being hospitalised thanks to kidney failure (or whatever it was) definitely does not send out a good message. I guess she hasn't been listening to her own advice? :)

South African ADSL WAN: The Follow-Up

Ok so this is very interesting. In a follow up on my previous post about creating a massive South African WAN using Telkom ADSL, I have been speaking to Outsider on Furion and he filled me in on the details about becoming a top-tier ADSL ISP provider such as IS and Verizon with Telkom. Apparently you need a massive ATM/IPConnect link to Telkom in order to be able to sell ADSL through Telkom's network.

As explained in some of my previous posts, the way it works is like this. Your local loop runs between your house and an ADSL access multiplexer. If you use Telkom as your ISP, your traffic can go onto Telkom's IP backbone from there. However, if you use IS or Verizon, your traffic will be carried via Telkom's ATM network to one of their points (probably in Cape Town, Johannesburg, or some other major centre) and can go up onto the internet from there (or not).

At first, Telkom could be your only ADSL ISP, but then they opened it up so that others like IS and Verizon could also join. However, this does not help a lot because IS and Verizon still need to pay a lot of money in order for that ATM link to Telkom in order to be linked up with their customers. I am starting to wonder how this can be profitable at all.

Therefore, if you don't have a lot of money to begin with, you can't open up a top-tier ISP. And therefore, this WAN of mine will be totally impossible.

This is indeed very sad, but I'm glad I posted about it so that I could learn more about how Telkom organises these things. Companies like Neotel will eventually also offer the local loop, but that is probably still pretty far off. So for now, my plans are shelved. :)

Many people actually thought that I was talking about using local-only ADSL in order to create the WAN. I don't know what on earth the point behind that will be, because local-only ADSL is still capped.

Also, just to offer another clarification on my previous post, when I talk about "ISP" I mean a proper first-tier ISP (the kind that actually has its own country-wide network). Obviously I do not mean your regular Telkom/IS/Verizon resellers; the connection is between the client and Telkom/IS/Verizon, definitely not through the reseller.

Another thing that we discussed on IRC is the setup of a WUG. The only problem is that the legals in South Africa is very shady on this area and it's not that easy to create a country-wide WUG. Of course you can link all the various WUGs together using ADSL, but then that will still be your bottleneck. What will that ADSL connection be? Will it even be uncapped? Even a 4 mbps uncapped connection (which AFAIK is not even yet available) would not suffice, I'm sure.

Now don't get me wrong, wireless is great, but it's not the answer to everything. Nothing can replace a good landline network, and as long as that is being monopolised, we don't stand much of a chance.

Oh well, I feel like downloading the odd terabyte or two... Who's going with me on a short holiday to Europe? :)

Contact Forms

Ok, so I really hate contact forms. I should at least explain why.

Many people use a form the user must submit in order to send them mail because they don't want to publish their mail address. This is usually thanks to the large quantities of spam that are doing the rounds, but I have thoroughly given up with trying to protect myself from spam completely. I even receive spam on e-mail accounts I have never used and the addresses of whom are never published anywhere that I know of. Yeah, I give up. :)

Google's spam filter does an amazing job. I receive a couple of hundred spam messages that are all filtered out correctly every day. I might get two or three a day that slip through, but those are easy enough to delete.

But what's wrong with a contact form?

Let's say I see an interesting blog post. Often, I look up the person's e-mail address on the site and put it into my address book along with a note and only mail them much later. Their e-mail address is always there in my address book and I can synchronise that between any number of devices. I can easily send the person a mail by just typing their name into the "to" field in my mail application, even though I never sent them a mail before.

After sending the person a mail, I have a copy of the mail in my sent items. Now I can go back to that mail any time.

If the person utilises the semantic web and has an hCard on their site, I can even import all their details directly into my address book. When all the fields for instant messaging details are standardised, adopted and implemented I can even add them to my instant messaging applications according to their / my / both of our preferences on protocols.

But that's not the only problem. I often find that contact forms do not work. They are also prone to abuse by spammers (when any kind of information from the form is being injected into the mail header, that information needs to be thoroughly validated or else somebody could be abusing the form to send others spam).

Come on people! This is 2007 - the semantic web is taking over. Information is king; elegant solutions need to be found against spam, not these hacks. Yes, in my opinion contact forms are just a hack.

Ajax Newsvine Feed

Ok, so after yesterday's article about the "Ajax" JSON del.icio.us feed you might be wondering how I did the "Ajax" Newsvine feed. That was actually much easier.

After loading the source markup, I need to get things set up correctly in the DOM.

function initNewsvine() {
  var h = document.createElement("h2");
  h.setAttribute("onclick", "loadNewsvine()");
  h.appendChild(document.createTextNode("Newsvine"));
  sidebar.insertBefore(h, blogger);
}

If the heading is "clicked" on the following method will take care of the loading process:

function loadNewsvine() {
  var h = getSidebarHeader("Newsvine");
  h.setAttribute("onclick", "toggle(this)");
  toggle(h);
  
  var div = document.createElement("div");
  div.setAttribute("id", "newsvine_content");
  div.appendChild(getLoading());
  sidebar.insertBefore(div, h.nextSibling);
  
  var script = document.createElement("script");
  script.setAttribute("type", "text/javascript");
  script.setAttribute("src", "http://charlvn.newsvine.com/_feeds/jss/master?count=30&seeds");
  document.getElementsByTagName("HEAD")[0].appendChild(script);
}

That's it. I needed to create that div element because after Newsvine's script loaded it will automatically populate that so I don't need to worry about anything else.

Sorry for the poor code quality but this is only for some inspiration and the record. This will be removed now from my script. I actually want to look at writing something similar for Muti now if nobody else already did. I don't even use Newsvine much since the bookmarklet to post new items is down very often and it's starting to work on my nerves.

Joomla Southern Africa

This is very exciting news to me, especially since Joomla is my mentoring organisation for the Google Summer of Code 2007.

A Southern African Joomla community is finally getting off the ground. I actually knew about this for about a week now but there's just too much to blog about. This morning I received an invitation to join the Google Group so I thought "better late than never". :)

The Translate.org.za website is also built on top of Joomla as well as various other projects I was involved in. Cool stuff!

DNS Issues

It seems like I have been having some DNS issues with charlvn.za.net yesterday. The problem seems to be fixed now but some proxy servers are still confused. I apologise if you have been having issues accessing any of my sites over the last day or two but I can't do much unfortunately if proxy servers want to keep believing something does not resolve instead of checking again.

Ask me again why I hate proxy servers? :)

Next myXchange Meeting on the 25th

Image: myXchange Logo

Many thanks to Jayx and Imel for attending the meeting this week. We normally only hold meetings once every 3 weeks but because many could not attend this week we decided to have another meeting the coming Wednesday.

Here is the detail for the myXchange 25 April 2007 Meeting:

  • Date: Wednesday 25 April 2007 from 18:30 until 21:30 (or whenever).
  • Location: Upstairs at Harrys above Spar in York Street, George

You probably know the drill by now... Please add yourself to the wiki page or leave a comment (or do both). :)

Oh yes and of course many thanks to Jayx for the cool logo used above!

hCalendar

Ajax del.icio.us JSON Post Feed

I am planning on removing this from my blog shortly so I thought I should at least blog about this and explain how I have done it.

For quite some time now (at least in Internet terms) I have been displaying my latest del.icio.us bookmarks in my sidebar. This is actually really simple using the standard JSON post feed.

However, because performance is important to me and because I don't like wasting people's bandwidth, I don't just want to display the links by default (especially not since they need to be loaded from a different server and HTTP/1.1 cannot do its magic).

Therefore I implemented it the so-called "Ajax" way. I actually hate these buzzwords, but I guess that's what people call this these days.

Of course, this is only applicable to user agents that support JavaScript and have it enabled for my site. First of all, take a look at my general JavaScript (the server has been configured to send this as application/x-javascript and not as application/javascript but that's outside of my control because it's an IIS server).

If you go and take a look at my source markup, you will find no mention of del.icio.us whatsoever. This is the proper way to do things, in my opinion. If the user agent doesn't use JavaScript, why should the markup be plagued with it? I like clean separation of content, presentation and behaviour. Since JavaScript is usually used for behaviour, I believe that should be kept separate. But maybe that's just me.

Now take a look at the initDelicious method:

function initDelicious() {
  var h = document.createElement("h2");
  h.setAttribute("onclick", "loadDelicious()");
  h.appendChild(document.createTextNode("Delicious"));
  sidebar.insertBefore(h, blogger);
}

Note that sidebar and blogger are defined in global scope and has already been set to their correct values. (Take a look at the initGlobals method for this.)

There are two problems with the above. The first is that my event handler is poorly assigned. I could go and rework the script to do it properly (and maybe even get this to work in IE) but just lack the interest right now. The second problem is that I'm making us of the onclick event. This obviously presents an accessibility problem. Some users that don't use a pointing device of some sorts (mouse, touch pad, touch screen, etc) might have a problem. This is actually a problem with my entire menu system, but at least when you disable JavaScript this issue is taken away.

onclick has anyway been somewhat poorly conceptualised and the name suggests it being applicable only to a very limited range of devices.

The second method you will need is loadDelicious.

function loadDelicious() {
  var h = getSidebarHeader("Delicious");
  h.setAttribute("onclick", "toggle(this)");
  toggle(h);
  sidebar.insertBefore(getLoading(), h.nextSibling);
  
  var script = document.createElement("script");
  script.setAttribute("type", "text/javascript");
  script.setAttribute("src", "http://del.icio.us/feeds/json/charlvn?count=10");
  document.getElementsByTagName("head")[0].appendChild(script);
  loadDeliciousList();
}

This gets a little complicated because it uses various other methods in the same script. The toggle method is used to display or hide a particular section below a heading. The getSideBar method just gets the right h2 element according to its content. The getLoading method just gets a nice "Ajax loading image", all for the eye candy.

I seriously need to investigate the accessibility of this further though, because I really worry about that in general with this script. Again, disable the JavaScript and you should be fine. I am making the assumption here that a user agent with JavaScript enabled will be the "typical" visual user but that is a really bad assumption to make.

Note that only when this method is executed after the user "clicked" on the right heading is the JSON script loaded from del.icio.us. Keeps things nice and efficient.

Now this is where the hacking comes in. I don't really know of a cleaner way to do this, but please let me know if you do. I need to know when their script is finished loading so that I can populate the DOM from the Delicious object their script gives me.

I keep executing the loadDeliciousList method using a timer until I detect that the delicious script has been loaded.

function loadDeliciousList() {
  if (typeof Delicious == "object") {
    var h = getSidebarHeader("Delicious");
    sidebar.removeChild(h.nextSibling);
    var ul = document.createElement("ul");
    sidebar.insertBefore(ul, h.nextSibling);
    var li, a;
    for (var i = 0, post; post = Delicious.posts[i]; i++) {
      li = document.createElement("li");
      ul.appendChild(li);
      a = document.createElement("a");
      a.setAttribute("href", post.u);
      a.setAttribute("rel", "external");
      a.appendChild(document.createTextNode(post.d));
      li.appendChild(a);
    }
  } else {
    window.setTimeout(loadDeliciousList, 1000);
  }
}

As soon as the Delicious global has been set, the script is loaded and I can insert the data into my page.

I am really missing XML here but then I would have cross-domain issues.

Now you might laugh at a few things because this JavaScript is a quick hack I did sometime last year and admittedly it sucks big time. I probably could have done things much cleaner and better, but to be honest I just don't want to spend the time right now improving a script I am going to throw out anyway.

I just thought I should post about this in case anybody might be interested. Also, if I wasn't so utterly perfectionist and minimalist about my DOM I could have added a lot of stuff to make the job a whole lot easier for myself. Also, I bet jQuery would have saved me a lot of time, but I just hate bloat and the script isn't without its limitations.

Feedback very welcome, but before you comment and flame, I already know this script is crap. Please do feel free to ask me any questions though you might have!!! :)

Geek Dinner / 27 Dinner on IRC

I was wondering; the Geek Dinner and the 27 Dinner are such exciting events, do they have IRC channels for some of us to lurk on between events? If they don't but people are interested in creating them, I would certainly propose to host them on Furion. Really cool network that; lots of local and very fast servers and it hosts #clug too! Or maybe all the people just hang out in #clug already?

I think we should move the myXchange IRC Channel from Freenode to Furion too.

Creative Commons on Flickr

Flickr allows its users to mark their photos as being released under a Creative Commons licence. Recently Aquila released some really beautiful photos under a Creative Commons licence. However, how do you know it is? Look at that marker - if you don't spot it, look right under "Additional information". There are some miniature gray icons that are hardly visible telling you it's Creative Commons licenced.

I think having photos released under a Creative Commons licence is really great. That means others can take those photos and do some cool stuff with them, even without asking for permission. Why is Flickr not making it clearer? They used to have some reasonably visible green icons, if I can remember correctly. Now they have these stupid little gray icons that you have to go and search for. Even if you're looking for them, they are hard to spot. Never mind if you're not looking for them. In other words, it doesn't advertise Creative Commons much. If it wasn't for the text "Some rights reserved" I probably would have never spotted them on this screen resolution of mine.

So Flickr, thanks for supporting Creative Commons, but what about increasing the visibility a bit?

Creating a Massive ADSL WAN Across South Africa

Ok, so I have been thinking. Yes, I know that's dangerous, but that's never stopped me before (that's why things are looking like they are right now). :)

In South Africa, until our local loop (the connection between your home / business and the ADSL Access Multiplexer) has been unbundled (no longer controlled only by Telkom), if you're using a different ISP than Telkom, they create a kind of a tunnel over their ATM network between you and your ISP.

This means that if you want to send packets across to your neighbour, they might need to travel across the country and back again which is totally inefficient and ridiculous. But that's another matter altogether.

On any Telkom ADSL deal, this connection between you and your ISP is always uncapped. The connection might then be capped by your ISP.

Currently, people in South Africa are often using local-only ADSL for file sharing and downloading off local FTP mirrors. So I have been thinking, what about creating a massive WAN all over the country.

All I need to do is register myself as an ADSL ISP at Telkom. How on earth I would go about doing that myself, I have no idea. I'm also worried about the costs involved.

However, when that's done, I can start selling uncapped accounts into this WAN at ridiculously cheap prices. What about R20 a month for a 384 kbps option?

I can then get myself one normal uncapped ADSL connection and set up my own mirrors. Ubuntu, Debian, SuSE, Fedora... All the ISOs and even packages! These mirrors will be accessible form the WAN.

Of course the WAN will use internal addressing like 10.x.x.x etc and will not be directly connected to the wider internet (of course my users could open tunnels to each other and do whatever from there). They can do file sharing, gaming and whatever. I like the idea of involving LAN clans and putting up some central game servers at my premises.

So when my clients want to log into my WAN, they can just configure their routers to stop using their normal internet account and log into my system, and afterwards they can go back and surf the net again when they're finished running their updates or doing whatever.

Any feedback welcome! Anybody already busy with such a project perhaps?

One can always set up a "total solution" later to also provide limited local / international access to individuals wanting to pay more. And what about integrating this network with the various wireless networks already in place?

(Sorry for this poorly written up post, I'm just brainstorming right now.)

Uncapped???

Ok, so this morning in the news, New 100GB Business ADSL uncapped service from Internet Solutions.

So, if it's uncapped, what's the 100GB about?

IS Business ADSL 100GB service is uncapped, and the ‘100GB’ represents a threshold at which IS will limit the connection speed in order to prevent abuse. After the 100 GB threshold is reached users will be throttled to a speed of 128 Kbps.

I hate to argue definitions, but I really hate this "uncapped" nonsense. Ok, so maybe I should open up an ISP. I'll give my users a 1GB cap and if they exceed that they get shaped down to 4kbps. Does that mean I can go and advertise it as "uncapped"?

Uncapped Local ADSL Accounts

In South Africa, OpenWeb is famous for their local-only ADSL accounts. A local-only account gives you access to other Internet nodes within South Africa. No traffic may pass over international connections.

The local-only bandwidth is typically much cheaper than international bandwidth. Because South Africa is at the southern-most tip of Africa and because the rest of Africa is even worse off than us, we can't rely on the countries above us to connect us to first-world countries such as Europe. We are therefore somewhat isolated and have to make use of underseas cables to Europe and America for our international bandwidth.

That's not so bad, but now we have a monopoly over those lines and that is very bad. There are many countries that are in similar situations that are much better off than us.

The South African internet is not so large and many South Africans host overseas thanks to much better prices. It's expensive for hosting companies in South Africa to provide international access to their servers and typically it's very slow also. (If you're in a first-world country, try to visit some sites hosted in Africa and see what the performance is like.)

However, local bandwidth is still very popular for file sharing through torrents and of course SADC. It's also great to suck ISOs and updates down from local FTP mirrors.

OpenWeb is now also famous for providing 384kbps uncapped ADSL for 999 SAR per month. That fee would be considered exorbitant in most countries, but relative to South African connectivity standards, that's actually quite good. (999 SAR is just more than 100 Euro at current exchange rates.)

Please note that I say "South African connectivity standards" and not "South African standards" because that would make us all look retarded. :)

Of course that provides one with full local / international access. However, seeing that the local-only accounts are all capped (10GB, 20GB, 30GB, etc traffic per month) I was actually wondering if there was a local-only uncapped ADSL account option.

I mailed OpenWeb and they told me that there is no such offer at this time. That is kinda silly to me. For example, let's say I run a hosting company running a mail server. When I receive mail, I need to assume that a lot of the mail is going to come from overseas. Therefore I need some kind of uncapped ADSL account for international traffic. However, then my clients start to fetch mail locally. There's no point in paying international bandwidth rates for local bandwidth.

In other words, instead of paying about 3 thousand SAR a month for each one of two uncapped international 1mbps lines (totaling around 6 thousand SAR) I could rather get one international line and one local line which would be much cheaper.

Note that Telkom's 4 mbps ADSL is still only on trial and typically not offered as an uncapped service.

Any thoughts?

Fedora Core 6 in George

Towards the end of last month, I downloaded Fedora Core 6 DVD (x86 version) through an unshaped ISDSL account over a 4 mbps ADSL.

At first, I tried to use BitTorrent. Although it was very healthy and I had lots of peers, the torrent didn't exceed about 25 KBps. I then got fed up and tried again from the IS FTP mirror. The speed was 400 KBps and I got the entire ISO in less than 3 hours.

BitTorrent is supposed to be better, but in South Africa, when your ISP hosts an FTP server you use that. :)

Anyway, we've got Fedora 6 now in George in case anybody wants a copy! I'm looking forward to 7, but that is still in testing.

If my readers from overseas think it's strange that I would blog about something like this, they obviously don't know how expensive it is to download large files in Africa. :)

myXchange Meeting Tomorrow

Here is the detail for the myXchange 18 April 2007 Meeting:

  • Date: Wednesday 18 April 2007 from 18:30 until 21:30 (or whenever).
  • Location: Upstairs at Harrys above Spar in York Street, George

If you know of another good coffee bar that stays open until late, please let us know. Places like the Hot Coffee Pot and Mugg & Bean unfortunately close early.

This meeting will be another general interest technology / marketing event. We normally speak about the internet, open source, voip and a range of other interesting subjects (really, whatever you want to talk about). If you have some ideas or info to share, please consider joining us for some great fun with great coffee / beer in even greater company. If you know of somebody else that might be interested, please pass this on; the more that attend the merrier. :)

We would kindly like to ask that all individuals interested in attending add themselves to the wiki page. The meeting is open and we naturally won't turn anyone away, but this gives us a rough idea of how many people will be coming and can help in making sure there's enough space for all of us to sit comfortably.

If you have any problems adding yourself to the above wiki, please just pass me a mail or leave a comment and I will sort it out.

We are currently in the process of getting a proper website up; will notify the list as soon as it's finished. Unfortunately we're all a little busy at the moment so apologies for the slow progress.

Please contact me any time if you have any questions and I will try to get back to you as soon as possible.

hCalendar

Tectonic Interview

This morning, James Archibald interviewed me for the Tectonic article SA student's project accepted by Google. Many thanks to all for the continuing support; it is being greatly appreciated! And many thanks to Tectonic for being such an excellent publication; they are certainly doing a lot for open source adoption in Africa!

MSN Messenger & Gaim

For more than a week now, every single time I try to log into MSN through Gaim v1.5.1cvs (latest package) on Ubuntu Dapper, it crashes. Am currently using Kopete. Anyone else getting the same problem?

Twitter Errors

Image: Screenshot of Twitter's 404 Error Document Image: Screenshot of Twitter's 500 Error Document

I absolutely love Twitter's error documents! These guys certainly have a good sense of humor!

Oranjemarkt

The yearly Oranjemarkt (Orange Market) will start tomorrow at 08:30 SAST (UTC+02:00) on Saturday 14 April 2007 at the Voortrekker-centre in Caledon Street, George, South Africa.

They will have a variety of Dutch products, including cheese, drop, haring, makreel, smoked eel, kroketten, butter cake, pancakes, and syrup waffles. Worth a visit, if you're into that kind of stuff.

Maybe I'll see you there. :)

hCalendar Enabled

Web Africa API

I just got an interesting e-mail from Web Africa titled Product Launch: Web Africa API:

We are proud to announce the immediate availability of our newest offering: The Web Africa API. This affords developers and advanced users the ability to directly, safely and quickly automate access to the various services and facilities we provide.

We hope through the API to promote a streamlined facility for customers to create software and services that leverage enhanced end-user experiences.

Development of the API is currently focused on providing various Internet Access features, such as retrieving account usage, as well as creating, enabling and disabling accounts, though additions planned for the near future will include integration with further services such as domain and hosting management and service automation.

Documentation for the API can be found at https://api.webafrica.co.za. Please visit regularly as we continue to update the service with additional features. Should you have any queries or comments please do not hesitate to contact us.

Although the API is indeed quite limited at the moment, I think this is a step into the right direction. Hopefully more ISPs will be doing this in the near future. It would be even better if they could standardise as much as possible of the API so that one can implement an application that can work with multiple ISPs' APIs without much adjustment.

SoC Proposal

If the first bit wakened your appetite, here is a full copy of my Google SoC application. Please excuse the crappy markup, but this is converted from the plain text format that was required.

Project Abstract

Currently, the web can be a real challenge to those living with disabilities. Screen readers, Braille displays and other accessibility tools convey data but yet often fail to help the user understand that data. Visual cues such as colours, text formatting, layout, graphics, etc. help to convey certain meanings to the typical user but can easily leave others behind.

Also, many tasks that are currently being performed by hand can be automated. For example, when I view a web page with a person's contact details, I have to copy and paste the information into the relevant fields of my address book application in order to save it for easy reference. The computer should be able to know which information is where on the page and do this job for me with only one or two clicks.

Web Standards and the Semantic Web are the W3C's solutions to these problems. The idea is to not only store data, but also some of the meaning that's associated with it. This will help the computer 'understand' the data better and will enable it to not only convey this meaning to users in a customised fashion (in the case of disabled users) but also automatically do some tasks with the data not before possible.

Correct user of technologies such as (X)HTML, Microformats and RDF that already exists today can create improved accessibility and automation for all kinds of users. And because these technologies are royalty-free open standards, they can be implemented and used by anybody in an inter-operable fashion.

The project will focus on the improvement of the (X)HTML output from the Joomla core, going as far as possible to ensure that valid and semantic markup is used. Semantic Web technologies such as Microformats and RDF will also be utilised wherever possible in order to make an entrance into the semantic web.

Short Biography

My interests include:

I have gained some experience as a part-time web developer over the past 3 years mainly in LAMP (Linux, Apache MySQL, PHP) on the server side. I have also gained experience in technologies and techniques such as (X)HTML, XSLT, DTD, XML Schema, CSS 2.1 & 3, JavaScript, DOM, Ajax, Microformats, RDF and of course Joomla.

Project Definition

After the completion of the project, all of the (X)HTML output from the core components, modules, plugins, default templates, etc. will (at least after a default install):

In terms of the XHTML, the following needs to be looked at:

If the user enters ampersands and other special XHTML characters into a content item's title, for example, they also need to be encoded (using a PHP function such as htmlspecialchars() for example) before being inserted into the markup.

For a proper heading structure, headings need to be logical in the way they are used. For example, a h3 element should not directly follow a h1 element. There must be a h2 element in between them.

Also, even with all stylesheets turned off, the page should still be usable and the structure (according to the headings and other elements) need to make sense. Stylesheets being turned off gives us a better perspective on how a visually impaired person would use the site.

Please see the following for more information regarding this:

The following Microformats will be integrated:

Please see the following for more information:

RDF can also be integrated into the contact component in the form of Friend of a Friend (FOAF). The contact component could produce an RDF file similar to the feed component producing RSS or Atom. Please see the following for more information:

Project Timeline

Milestones:

Deadlines:

Tools

I also have to use the largest possible variety of screen readers for accessibility testing. Most of them are unfortunately commercial and I lack the necessary licences, but might be able to use some of them on a trial basis. Some are free / open source however. A fairly complete list is located on the wikipedia:

http://en.wikipedia.org/wiki/List_of_screen_readers

I would most likely not be able to test in all of them but would try to do as many as possible within the licensing terms and time limitations.

Learning Targets

I would love to further my skills in Joomla, PHP & MySQL, XHTML, CSS and all the other technologies I will be using during this project. I would also like to increase my involvement with the open source community and learn more about working together in a team with other developers from all over the world.

SoC: Update #2

Many thanks to all the congratulations I received via this blog and others as well as Twitter and the various forms of IM. I am really happy to see such good response! It really inspires me to do my best and make this country proud. :)

Due to popular demand, I will be blogging my entire Google SoC experience. First of all, my project is now listed on the Joomla Organisation Information page. As stated on the page, Robert Schley will be my mentor. Only the project abstract is public on Google's site, but I will blog about some of the rest of my proposal soon.

I read that they might be setting up a blog planet and building a map of all the participants. Will blog as soon as I spot those.

Update: Oops, forgot to add the SoC Blog. :)

Google SoC: Accepted!

As mentioned previously, I submitted an application to the Google Summer of Code. This morning I got the best news I got in a very long time; my application was accepted!

At the moment I'm just trying to recover from the shock; when I got the news I was jumping up and down in the office from the excitement until all my colleagues thought I was crazy (if they didn't already think that for a long time now). Still shivering a bit; drinking some Rooibos tea to help me calm down.

myXchange: Inaugural Meeting Held

Image: myXchange

On Wednesday 27 March 2007, we successfully had our inaugural myXchange meeting which was mentioned previously in George, South Africa.

Many thanks to the following people for attending (in alphabetical order):

  1. Imel
  2. Jaco
  3. Jayx
  4. Stii
  5. Tresblue

Of course, I also attended making 6 people in total (which is not at all bad for George).

We spoke about various interesting subjects in the technology and marketing industries and discussed some of the recent events on the South African internet.

We later had quite a discussion about where we wanted to go with the whole myXchange concept. At the moment we are still somewhat undecided but will keep having meetings at Harrys between the couple of us until we reach any further decisions. Of course, there is still an open invitation to everyone interested to join us in the meantime. We would love your input. :)

We are also in the process of getting a proper website up; please mail me in the meantime if you have any questions or comments. Thanks!

Also, apologies for not blogging about this earlier; I am actually quite badly behind with various aspects of my life and am struggling to catch up. :)

(Thanks to Jayx for the logo; this one is by no means the final version, but all I have on hand from this PC.)

Science & Health

Sometimes I really question some scientists. This is probably my right as being a logical / scientific thinker myself. I really love science but I find that it is often used poorly with broken or totally nonexistent reasoning.

Take this part of the Food irradiation article on the Wikipedia:

At very high doses, e.g. >6 kilogray, irradiation can reduce the vitamins and other essential nutrients; and negatively impact the flavor, odor and texture of food[6]. At the doses typically used in irradiation treatment of food, e.g. <3.5 kilogray, these changes appear minimal. Independent scientific research on the subject has been extensive leading to endorsement of food irradiation by the US Food and Drug Administration, the United States Department of Agriculture and the U.N. World Health Organization as a safe, effective process.

Ok, so the effects appear minimal, right? But then there are still effects. How would we know if those minimal changes are dangerous to human beings or not? The fact is that medical science has not evolved up to a satisfactory state for us to be able to know exactly what is good for us or not.

Dietitians still keep changing their story every couple of years. First meat is essential; then meat is unnecessary. Although they would not openly say this, every time they change their story it means that they now think they were wrong previously. In a couple of years they might change their minds again. Does that mean that they are wrong right now?

Not only this, but many groups of dietitians have different "beliefs". Yes, lack of scientific evidence. Science cannot give us a clear cut answer yet just because we're not advanced enough. Therefore I believe a precautionary principle should be applied in all cases.

If I listen to many of the theories, vegetarians should all be dead. Yet there are many thriving vegetarians out there. Oh, so meat is really essential, is it? "Oh yes but otherwise you can't survive because you don't have enough protein!" Yeah, sure, blah blah...

Can we cure cancer easily? The current methods of radiotherapy and chemotherapy are usually ineffective on the long term and actually blatantly barbaric, to say the least. Do we have a simple, safe, effective antidote against HIV? (Non-HIV-induced AIDS can often be trivially cured with a better diet.)

I think all of these "assumptions" are quite dangerous. How can we trust our own technology to keep us healthy and safe if we don't really know what we're doing yet?

Here is another assumption I really "like": cell phones are completely safe to use. Why? Because there's a lack of evidence proving otherwise, of course! It's a principle of logic that a lack of counter evidence cannot count as evidence.

Oh well, I guess that is changing now, isn't it? Yet all these years I have been telling people to be careful and they laughed at me and called me a crackpot. Well, who are the crackpots now?

So, should we go back into the "dark ages"? Not at all! We need to keep advancing and hopefully, one day, we're get past this (rather dangerous) state in human development. Nature can also be a real bitch at times, throwing all kinds of threats at us. However, at the moment we need to be very careful. Sometimes staying as close to nature as possible can be best; technology should only be used responsibly.

Update: Read this great article Meet three children denied the best cancer treatment:

Orthodox treatment for brain cancer, especially Children's, is absolutely appalling. Chemotherapy and radiation treatment cause horrific side-effects and permanent retardation. Very few survive for five years with this treatment. Their quality of life is ghastly, constantly sick from the chemotherapy/radiation treatments, their immune system wrecked by this barbaric treatment.

Even though Antineoplastons research has been going for 40 years, it still is not commonly used despite being proven highly effective. Yet, extremely dangerous methods such as chemotherapy and radiotherapy are being used commonly.

Strange Water Flow in Swimming Pool

I love to go swimming at the gym. Before I go change, I first check to see if there is at least one empty lane in the pool. If not, I lift some weights or go spinning until there is. Obviously, not everybody has the same courtesy though. Sharing lanes just sucks in my opinion.

But that's not the point of the post. I noticed something that is extremely weird (and rather irritating). There seems to be a rather strong clockwise circulation of water in the pool. You feel it quickly if you come close to any of the pool's four sides.

If it difficult to swim in the rightmost and leftmost lanes because if you swim in the one direction you swim 4 times as fast as in the other direction. The one moment you feel like a pro swimmer and the next moment it's like you can't swim at all.

Water is coming into the pool on all four corners and water is going out on three different places (in the middle of the one side and on the opposite ends of the two adjacent sides to that) so that does not seem to be causing the flow of water.

Does anybody have any idea what might be causing this?

Beetroot Salad

When it comes to food, I'm really serious. I like fresh, pure, organic food. The less artificial shit the better. Although I eat mostly vegetarian, I don't mind eating some meat from time to time; however, I am especially worried about meat because in South Africa (and also many other places of the world) the animals are being fed crap (at times, literally) instead of proper food along with lots of medicine (often unnecessarily or due to poor environmental factors and bad diet).

Fish comes from the ocean, so that should in theory be better; however, with the oceans being polluted, I don't trust that anymore either.

Anyway, in the first installment of my new "good food" series, I will give you some tips for some delicious beetroot salad.

Firstly, wash and then cook some beetroot in a pan. (Try to stay away from the Microwave; more detail in another post.) When the beetroot is nice and soft, the skins come off easily if you wash it under the tap.

Grate the beetroot roughly and add lots of raw finely chopped onion. Leave it in the fridge overnight and serve cold with freshly squeezed lemon juice. I find it goes particularly well with potatoes.

Bon Appétit!

Computering

Computering is a fairly new term. I have been using it for the last few months but haven't seen that many other people use it. Although there are lots of references to it on Google, the word is not included in most dictionaries as yet.

Language is always evolving. New terms and uses are being invented all the time and old terms and uses sometimes disappear or just "falls out of fashion".

At the end of the day, there is no right or wrong in language; there is only what is commonly accepted. This could also differ from country to country. For example, it is completely unacceptable to write "colour" as "color" in South Africa. However, it is the exact opposite case in America.

So, how would you generally describe what a person is doing while he/she is using a computer? "Computing" always makes me think about mathematical / algebraic calculations. "Computering" introduces less confusion, I believe.

What do you think?

Broadband

The first time I used broadband internet access from home was in 1997. I was using a 28,8 kbps dial-up modem at that point in time. Now I am on a faster type of broadband called ADSL.

The dial-up modem only used a very limited spectrum of frequencies over the telephone line (the spectrum which you would normally use for voice, which is indeed very limited). ADSL uses frequencies that are above human hearing. Not only is the available spectrum much wider (we have a much bigger allocation on the wire than what we need for voice) but we can now simultaneously make voice calls and use the net. Theoretically ADSL should be much faster than dial-up internet access thanks to the broader spectrum, but that's difficult to believe if you're in Africa. A dial-up account in Europe will leave our ADSL in the dust.

Now you might be wondering why I am calling dial-up internet access broadband, but that is exactly the case. In broadband, you use multiple channels. A dial-up uses a range of frequencies, so it therefore qualifies as broadband. The band might be limited, but it is still a range of frequencies.

Baseband means there is only one channel. Common household 100BASE-T Ethernet is a good example of this. Yet Ethernet can carry much more data than a lot of "broadband" connections (like ADSL) so baseband and broadband cannot be taken as an indication of speed.

So, why do people keep going on about "broadband"? Two words: marketing type (a.k.a. the usual suspect).

Telkom ADSL SIO with Mega 100WR Router

I think that the instructions that come with Telkom's SIO package is for noobs. If you are a pro and feeling frustrated, let me give you some pointers.

Apparently there was some option for a USB modem. I don't understand this because the "wifi modem" (which is actually much more than a modem; it's a full router) has a USB port anyway so that you can use it as a USB modem if you like.

The router I got is a Telkom Mega 100WR. It has a USB port, 4 Ethernet ports and integrates a 802.11g wifi access point. Overall, it looks quite good!

First of all, it comes out of the box running a DHCP server. I let the DHCP take its course and my computer was fully autoconfigured. It was assigned the IP 10.0.0.1. The router assigned itself 10.0.0.2 and set it as my default gateway. It is also a DNS proxy, so your primary (and only) DNS server will be 10.0.0.2 as well.

You can add more computers easily and all should be well.

Telkom wants you to run a setup program from a CD they give you along with the router. Everybody I talked to thought that the program sucks and it probably doesn't run on Linux anyway.

Simply open the web interface of your router. It runs an HTTP server on port 80 just like many other ADSL routers. The default username and password are both admin.

The web interface is the standard webcm system. Personally I find it to be rather user unfriendly, but it gets the job done. There should be a setup procedure that you can follow to get yourself connected.

Your ADSL ISP (Telkom, Internet Solutions, Verizon, or whoever) should autoconfigure your router with all their details (an IP, default gateway, DNS servers, etc). Telkom will actually give you some access even before you reach this step, but you can only access some Telkom sites so this won't get you far.

Now there are a couple of things you might want to look at. Firstly, I disabled the wifi access point. To me, it's a security risk, and I don't like wireless anyway. The built-in security it offers sucks if you ask me since the only way I know of running a secure wifi service would be to throw a full VPN over it to a server on the other side and then go from there. Since this would be impossible in my case (the access point is the ADSL router with no servers in between) it isn't practical. Don't want the neighbours surfing at my expense, thank you very much.

In case you were wondering where to configure port forwarding, it's under "Advanced", then "Application" and then "Port Forwarding". "Dynamic DNS Client" is just a couple of items above "Application" Port Forwarding.

Just remember to verify your account after you're up and running.

I really hope these instructions help some people; they would have helped me and save me a lot of time for sure! Please do comment or mail me if you have any questions or anything to add.

ISDSL DNS Troubles

Today my Internet Solutions ADSL account has been extremely slow. The problem got worse and worse until eventually I got gatvol and decided to investigate.

My desktop resolves against my ADSL router, so I checked up on the router configuration. The router got configured via upstream DHCP to use 168.210.2.2 as the primary DNS server and 196.14.239.2 as the secondary. The former IP didn't look South African to me so I did a traceroute and just got timeouts. I overrided the automatic DHCP configuration and manually specified 196.14.239.2 to be my primary. Now everything is working fine.

Just thought I should blog in case anybody else is having similar problems.

Update: Ok so the two DNS servers are dnscache1.is.co.za and dnscache2.is.co.za. They both seem to be a little unstable today; we'll just have to wait it out.

Dutch Consulate in George

If you are Dutch and happen to find yourself inside of the Garden Route area, please take note that on Tuesday 10 April 2007 the Dutch Consulate is coming through George from Cape Town. If your passport is outdated, this will give you the opportunity to apply for a new one without having to drive all the way through to Cape Town. You never know when you might need it; especially in the uncertain South Africa of today.

Just be careful to get your photos taken properly. I had my passport photos taken in George at a photo company (whose name I won't mention on this blog) that claimed to be clued up on the latest Dutch regulations. They even had a sheet on the regulations pinned up against their wall.

Yet, when I drove through to Cape Town in January this year, my photos were not accepted and I had to get new photos taken there.

Also, e-mail or call the Dutch Consulate ahead of time to make sure you have all the correct documents if you're not sure. You don't want to drive around hectically on Tuesday to try and get everything sorted like we did in Cape Town. :)

At least now I have proper photos and all my other documents in place. I will be going next week to apply for my passport; maybe I will see you there. ;)

Update: They will be in the Voortrekkersaal from 09:00 to 14:30.

Twitter & Muti

Ok, so this morning I was using both Twitter and Muti. Then I was thinking, what if I could "subscribe" to either all new posts or otherwise only to a specific set of tags through Jabber. Sure, this might be possible through subscribing to an RSS feed, but Jabber is much more real-time. Personally, I find RSS/Atom feeds rather slow and tacky. They work well for blog posts, but for small and rapid pieces of information such as status updates and links, Jabber could be a real alternative.

Ok, so to put this into plain English: every time somebody adds a tag like opensource (for example) to a link I want to be instantly notified of that link via Jabber.

Update: What about doing something similar at Amatomu and Afrigator? You don't need to syndicate the entire blog post, just the title.

Twitter

Twitter must be the best waste of time I have ever seen. I have actually been using it for a while but didn't have any contacts. Now I have both kmf and Lachy.

So here are some things to laugh about.

OMGSTFUROFLMAO!!!

Afrigator

Oops, so it leaked. Afrigator might be alpha but they can be expecting a huge influx of users in the next couple of days.

I'm glad we are making Kupa completely public right from the start because it would just have leaked anyway. The net is great, isn't it? :)

So far it's looking brilliant. I like the design and the joining process is really simple. Well done to all of you guys! The projects coming from South Africa right now are truly inspiring!!!

HTML 6

Today I have extremely exciting news from the web standards front. The WHATTF published some of their plans for HTML 6 on the (as always, highly recommended) WHATWG Blog. Apparently this will integrate Open Office XML (ISO Standard), RDF, XSL-FO and even SOAP! Also, XML Schema will be used instead of DTDs.

Overall, it sounds pretty exciting. I can't wait to hear more!

Note: For those that are a little slow, check the date of posting. ;)