Main
Latest
- Go Stii!
- Open Yale Courses
- Activity Streams in Atom
- New Twitter Phishing Scam
- RSS/Atom in Chisimba Courses
- Lucene Frustration
- Chisimba Module Loading
- Top Free Web Apps of 2008
- Firework Frustration
- Antfarm DNS and Linux
Archives
- June 2004
- July 2004
- August 2004
- September 2004
- October 2004
- November 2004
- December 2004
- January 2005
- February 2005
- March 2005
- April 2005
- May 2005
- June 2005
- July 2005
- August 2005
- September 2005
- October 2005
- November 2005
- December 2005
- January 2006
- February 2006
- March 2006
- April 2006
- May 2006
- June 2006
- July 2006
- August 2006
- September 2006
- November 2006
- December 2006
- January 2007
- February 2007
- March 2007
- April 2007
- May 2007
- June 2007
- July 2007
- August 2007
- September 2007
- October 2007
- November 2007
- December 2007
- January 2008
- February 2008
- March 2008
- April 2008
- May 2008
- June 2008
- July 2008
- August 2008
- September 2008
- October 2008
- November 2008
- December 2008
- January 2009
Glentana a year after the flood
Last year I blogged about the flood damage in Glentana. We drove out again this year and found that despite the recent floods in some other areas Glentana is looking pretty good. Most of the damaged houses and roads seem to be repaired.
Where the convenience store used to stand, they now built one major bridge and a road on top. The bridge looks very solid but I don't think there is enough space for the water to pass underneath if another flood happens. All that will happen is that the water will rise even higher on the one side and that might cause even bigger damage. Anyway, check out the photos and make up your own mind. ;)
Flash Video Players
I really hate most Flash Video Players. These are the issues I typically have with them:
- They start playing / downloading automatically when the page is loaded.
- This is bad for African conditions where bandwidth is severely limited and bitcaps are often in place. There's no room for wasting bandwidth, so I want them to wait until I click the "play" button (therefore, I really want to watch the video).
- When the player reaches the end of the video, it starts downloading all over from the start when you want to play it again.
- Also bad for African conditions.
- There's no way to get back to the page on the original video sharing site if the video is embedded on a blog somewhere.
- What if I want to go check out what others said in the comments on the video sharing site, or anything else? Maybe I want to link to the video from my own blog without embedding...
Youtube seems to get most of these right, except that the video automatically starts playing when you visit the video's page on youtube.com. This is irritating as well because sometimes I just want to have the page open to read comments after viewing the video on some other site. But yeah, not everybody is used to retarded African bandwidth and ridiculous bitcaps so I guess that's fair enough.
Don't generalise with religion
I have my religious views, others have theirs, and I respect that. However, I really do not like it when people generalise.
I recently had quite a few interesting conversations with different people about cases where an individual belonging to a particular religious group did something that was quite distasteful. As it is with gender, age and race, it's very easy to let one individual's actions reflect on a greater demographical group they belong to.
People should keep in mind that not all individuals belonging to any particular religion necessary follow that religion very accurately or consistently. If they do something wrong, it doesn't automatically mean that it's the norm for that religion or what is prescribed by it. Take a religion for what it is, and take its followers for what they are - human beings. We are not all perfect. Just don't create more stereotypes please.
Example: Jan claims to be a Christian yet snorts a lot of cocaine. "Oh, look at him!! These Christians are so hypocritical!" Notice how "Christian" (singular) turned into "Christians" (plural)? No, it's a (as in, one) Christian that's being hypocritical. Not all of them. And even if it was two, three, four, ten or twenty, it still doesn't reflect on a religion in general that has thousands (if not millions) of followers world-wide and clearly does not advocate snorting coke.
Google Pagerank Strikes Again!
I really love Googe's Pagerank technology. It is extremely interesting to me.
A bit earlier today, I Googled for "timesurl" (I forgot that the TLD was at) and got the following result:
Yes, my blog post about TimesURL appeared in the results before TimesURL itself!
This might have something to do with the fact that this blog has a Pagerank of 6 and timesurl.at has 0 (at the time of writing). This will change soon though as more people start linking to timesurl.at and Google updates, so things will put themselves right.
Twitter SMS
Twitter's free SMS service works quite well. During Christmas when the cellular networks were heavily overtaxed, even when a normal SMS takes hours to get delivered, Twitter's SMSes got delivered virtually instantaneously.
You get up to 250 free SMSes a week from Twitter, which is really cool, but the only problem I have is that I can't select that some of my contacts have their updates delivered to my phone and others not while having all of them delivered to Jabber.
I therefore opened up a separate account, charlvncell, and set up SMSes there while leaving my normal account to be used along with Jabber. Now I can have some people's updates delivered via SMS and some others' delivered only via Jabber. Not the ideal setup, but it works.
The nasty thing about this is that I can only receive 250 SMSes, so if people spam me with all kinds of crap they can use up my credits. However, the nice thing about this is that I can select who can send me direct messages and updates so if they abuse the service I can just remove them.
But yeah, if you want to be able to send me free SMSes, just add the charlvncell user and I'll reciprocate. Then simply send direct messages to that user and I should receive each as an SMS. Quite cool, and cuts down on the profit of the South African telecommunications monopolies (which always feels goooood)!
Blogspot Addresses
This is quite weird. I was setting up a new blog on Blogger the other day for a friend of mine. I accidentally registered the new blog under the wrong Google account however. So I deleted the blog, logged out, logged in as the correct user and tried to add the blog again. However, this time it said that the blogspot.com address was already taken. I logged out, logged back in as the first account, but the blog was not listed.
I tried to create the blog again using the same name on this account. When I clicked "Check Availability", it told me that the address was still available. Logged out, logged back in under the right account, tried exactly the same thing but the address was already in use.
So in other words, Blogger assigns a blogspot.com address to a user account even after the blog was deleted. I think this is a feature, not a bug. I wonder for how long though. Permanently perhaps, or only a couple of days or weeks?
Wireless Coffee Ordering
From Apple to Launch Wireless Coffee Ordering System:
The recent filing, presented to the U.S. Patent Office on December 20th, is a request for legal rights to create and deploy a “wireless system that would allow customers to place an order at a store using a wireless device such as a media player, a wireless personal digital assistant, or a cell phone.”
[...]
Furthermore, the patent request is for software enhancements that, in addition to making standard beverage requests possible without directly consulting employees working store register counters, allows for Starbucks to maintain “favorite orders” across all shops in the global coffee chain that opt in to the system and share customer data.
About half a year back, I talked about semacode uses, one of them being this:
Thirdly, many restaurants and coffee shops have slow service. Why not use already existing technologies to cheaply speed up the ordering process? I always hate having to put up my hand and call waiters/waitresses.
The shop can run an internal wifi network. You connect up through the wifi from your phone. You get access to the shop's full updated menu on their "intranet" (of sorts). (Really, how many times haven't you been at a place with outdated menus? It's actually quite expensive or even impossible to always keep the menus perfectly updated.) You can order items immediately and always have an accurate, updated subtotal displayed so that you know you're not overspending.
However, now the staff knows your order but not your location in the shop. This can be solved by having a Semacode on each table. Right when you sit down, aim your phone at that. The corresponding IRI you open contains a parameter that specifies your physical location in the shop so that it can be registered on the shop's database. Then you get directed to the menu in your phone's browser, all in one go.
So now the shop staff knows your order and where you are sitting! All with minimal extra hardware expenditure from their side.
I guess this is supposed to buy me nice "I told you it was a good idea" points?
Celebratering 777 Posts
Wow I just noticed this by accident. This is the 778th post on this blog! Yay!!!
Charl van Niekerk's Blog - posting the strangest shit on the web since June 2004! (TM)
Google Pages Update
In March 2006 I blogged about the Google Page Creator. I particularly pointed out the quality of the generated output markup, which would naturally be something a guy like me would care about. A year down the line, they I'm taking another look after setting up vanniekerk.za.net.
They changed the doctype from XHTML 1.0 Strict to HTML 4.01 Transitional. Naturally I would have liked HTML 4.01 Strict but taking all things into consideration I think that was quite a realistic move.
I immediately like the clean indentation. They are using two spaces while I usually use either one space or a tab, but that's fine as it looks very clean and it's reasonably easy to see the hierarchy.
They seem to be using a lot of <div style="clear: both"></div> which I don't like very much but I understand these things are quite difficult in a wysiwyg environment. Personally I would have still opted for something like <div class="clear"></div> just out of principle (not using the style attribute) but I guess it doesn't really matter very much because it isn't separation of content from presentation anyway.
The page has a massive inline stylesheet. Personally I would also try to take that out into a separate external stylesheet and group as many of the common styles as I could into a global stylesheet for all the pages on the site. Especially for African situations where bandwidth is tight, it's best to keep things trim.
Even though it's only HTML 4.01 Transitional, the page still doesn't validate, which was somewhat disappointing. I used the Validate Local HTML option in the Web Developer Toolbar because when I validate normally it comes up as valid XHTML Mobile 1.0. This means that it's serving a mobile version of the page to the W3C Validator. It's great to know it supports mobile browsers and at least my mobile page validates, but I'm a bit scared of content negotiation between server and client due to caching issues with proxy servers, especially in South Africa. Serving different versions of a page according to attributes in the HTTP Request Header other than the Request URI can be risky because even if you set the correct caching parameters in the HTTP Response Header, many crappy proxy servers just don't care. Yes, proxy servers suck in my opinion.
I also can't help thinking that it might get some less-used browsers wrong if it got the W3C Validator wrong. Also, I just get an error Your client has issued a malformed or illegal request.
when I try to open the site in Lynx. That sucks!
So although I have mixed feelings, I am in general quite impressed, taking into consideration we're talking about a wysiwyg editor here. :)
Google Apps: From 0 to 100 in 3 Hours
About a year and a half back, I applied and got an invite to try out Google Apps (at that point in time it was still called Google Hosted). I was totally stoked and really impressed with the service, but that was nothing compared to how great it is these days!
About 8 months back, I registered a domain vanniekerk.za.net for our family mail. Since then the Summer of Code hit as well as various other things so never really got around to doing much with it. I ran it as an alias domain of charlvn.za.net on Google Apps until today when I decided we need to get something proper up.
I removed it as an alias and registered it as a separate domain on Google Apps. I made some changes to the DNS records of the domain (currently held over at afraid.org) and configured everything on the Google Apps Control panel. I had to do a little bit of waiting while everything was being set up on Google's side but it only took about an hour or two and all was ready for action.
We now have a website (unfortunately with the www. in front) using Google Page Creator, e-mail using Gmail, a start page portal using something similar as iGoogle, a calendar using Google Calendar and document management using Google Docs.
Phew! All in 3 hours? Amazing. Moerse impressed!:)
Twaction Just Launched!
This is so much fun it's hilarious!
Today, Tyler Reed launched a new Twitter application called Twaction. The site itself says it best I think:
Twaction is a simple site that turns your tweets on Twitter into actions. You can now poke, slap, drink beer or smile at your friends on Twitter.
Example: @twaction @TylerReed kick for ignoring me
There are lots of different actions to choose from. Apparently "pwn" has been added especially for me! :D
You can follow everybody's actions on the front page (with RSS), follow individual users like me (also with RSS) or follow individual actions like this one. Really cool!
Twitter just became a whole lot more enjoyable... ;)
Merry Christmas!
For all those that celebrate Christmas, have a very merry one! :)
TimesURL
It seems like Tinylink is dead at the moment but luckily now we have TimesURL. It took me a while to get around to this but now I finally changed the links on this blog to point to TimesURL instead of Tinylink. In the Tinylink scripts I wrote and published on this blog earlier, the only change you need to make to them in order to get them to work is replace tinylink.co.za with timesurl.at. For sed that would be something like:
sed s/tinylink\.co\.za/timesurl\.at/ < tinylinkscript > timesurlscript
In order for the Ajax TimesURL thingy to work on this blog just make sure you get the latest version of my general script. Transparent proxy servers in South Africa can be a real pain.
Bypassing Flickr's 200 Photo Limit
I used Flickr a lot until they introduced that stupid 200 photo limit last year. If you upload more than about 200 photos, the older photos are still there but you just can't browse them until you pay (sounds almost like extortion to me now). I thought I should put this to the test.
I opened the oldest photo of mine still visible and uploaded some more photos. It disappeared off the last page of my photo list. The photo also disappeared off the may2006 tag. However, it is still available from its "item page", even in large size as an anonymous user.
Ok, so the solution here is obvious. Build a service that utilises either the RSS/Atom feeds or the Flickr API. It keeps its own database of all the photos you upload and crawls the site every now and then to see if there's any new photos. It doesn't have to download the actual photos, just the id of the photo. Then it allows the browsing of the photos according to the photo ids, similar to Flickr itself, only allowing you to browse all the photos!
I will be building something like this as soon as I get some time. Shit, are these Flickr people insane??? Do they really think we're that stupid? I can hardly believe this.
Twitter is Dangerous?
This is one of those things that just make me the moer in!
From Twitter is dangerous:
Twitter is rapidly becoming a serious threat to corporate information protection. The program’s great strength — many-to-many messaging — becomes its great weakness in this context.
Imagine this scenario: 20 people are in a confidential meeting, one of them using Twitter. This attendee broadcasts an off-hand “tweet” (Twitter comment) to his or her “followers” (Twitter friends). With traditional instant messaging, that message would be received by perhaps one or two others. With Twitter, that comment may be seen by 10, 100, 1000, or more followers.
What the %#$#@$#&^*%!!!!!!
I can't believe this guy. Is Michael Krigsman trying to pull another Patricia de Lille on us? I feel about Twitter more-or-less the same way I feel about MXit.
Twitter is a brilliant communication medium. Yes, I might do my share of complaining, but hey nothing's perfect!
These communication mediums should exist because they can be used responsibly by many users. If they are abused by some, well that is not Twitter's fault. It does not make them evil in any way. There are thousands of possible ways to leak information. Twitter is one medium for that, yes. So is MXit, IRC and blogging. However, it should be used responsibly. Don't hate Twitter because some people just suck.
Update: Ok maybe I "slightly" over-reacted, he probably didn't mean that Twitter is dangerous but that widely distributed information sharing in general could be. But he chose the title of his post very poorly.
Kudu believe it!
A while back, they had this funny TV ad in South Africa about the Opel Corsa Light. They had a kudu in there called "Sanchez" that had to act like a mouse and dance around on the steering wheel.
Now it seems like I saw another kudu trying to act like a mouse next to Jayx's computer. Kudu believe it? You better believe it, because it's true! (Oh yes and we are not k@k either...)
Got light?
Ok so there has been a lot of jokes the last two years in South Africa since we started to have issues with our national power supply. I also went through the Age of Darkness last year. Yes, the Dark Ages has returned. We are in the dark continent, after all. Will national power company Eskom ever see the light? Whatever... We heard them all by now. From Gatiep jokes to the occasional Van Der Merwe.
Anyway, the other day we got some free "power saving" fluorescent electrical lamps. "Free" is not really true because we pay for them and for some less fortunate people's through our tax money. They seem to be manufactured by Philips, not for resale. I don't really like Philips in general, even though it's a Dutch company. Rather give me South Korean like LG.
For the last while we have been enjoying better power in many areas but now with Zuma people are starting to worry again so better save as much power as you can. The national power grid might not be upgraded again soon as we have to spend money on Zuma's new mansion in Knysna. :)
Ok I have nothing against saving power but I honestly don't like fluorescent lamps. They have various disadvantages including some health risks (mainly from ultraviolet radiation). According to an offline source they apparently produce high quantities of electromagnetic radiation outside of the visible spectrum which might not be good for you. Not sure about the accuracy of that though.
So, should we go back to tungsten? Of course not! The best lamps by far are LED lamps. They are extremely low on power, have minimal radiation outside of the visible spectrum (apparently - I don't have my own equipment to be able to test). Why not look at mass-producing these in an automated factory locally (please no unions, strikes, or Chinese companies) and make it cheap for the entire country?
We actually saw some of these on sale over at the Checkers in George in the middle of the year but they were suspect (no-brand manufactured in China) and they all had screw-type instead of bayonet-type connectors which we use in our house.
Somebody please, make a plan for us here! I don't want our tax money wasted like this. KTNXBYE.
Chicken Tikka & Spicy Food
I have always been a big fan of spicy food. For me, there is two components to "spicy". Firstly, there is the flavour of the various herbs and spices used, and the second is the burning effect of the chillies (or cayenne pepper) that gives it that extra power. The two need to be in exactly the right balance for the perfect meal.
So as you can imagine, I am a big fan of Indian cuisine. These people really know how to make my kind of food.
While I was in Cape Town for the Starcamp, Rafiq was kind enough to give me a lift back to Sea Point and on the way he told me about chicken tikka. The other day, Rafiq twittered about eating it and then uploaded a picture of this to Flickr:
Now I want to try this as well of course but thought I would have to wait until the next time I get my ass over to Cape Town. However, today my mom found a recipe online for lekker chicken tikka on green cuisine. They actually have a shop up at the Johannesburg international airport where she bought some of their spices a few months back.
Now for some of my own flavour.
Being half Dutch, I really like potatoes. I am also in love with chillies, particularly Jalapeños. Jalapeño chillies are my favourite because I love their taste and I can use a lot of them because they aren't very hot so frankly there is a lot of that delicious taste to go around!
So here is some code for you:
$spices = $southIndianSambaar + $chilliAndGarlicSeasoning + $blackPepper;
$food = $jalapenos + $potatoes + $spices;
$charlvn->eat($food);
echo $charlvn->getStatus();
And this is the output:
stuffed full!
And a photo to compliment, since that is the way we do things around here:
Yum yum!!! (No, the food, not the package manager...)
Facebook Profile Cleaned Up
As a follow-up on a previous post of mine, Bloatbook, at last I have a nice clean Facebook profile again. I didn't remove any applications, I simple clicked the close button on every box I could and selected "Remove Box" so that they won't take up any more space on my profile page. Now I still have all the functionality and none of the bloat. Perfect! I wish all my friends' profiles looked this clean. :)
Muti on Twitter
Three days back, Rafiq wrote a blog post on Your Group of Web AddiCT(s) titled Muti idea for twitter, inspired by Jacob Zuma. Previously, the Muti Twitter feed only contained the titles of links posted. However, early this morning (South African time), Neville made a new system live similar to TimesURL.at that includes a link to muti.co.za that redirects to the original post link.
This has two advances. Firstly, TinyURL.com is not being used (I hate that service) and secondly, if spam is posted and the link is deleted, the redirect will also stop working.
Please note that according to the Twitter API, you should also be able to delete posts but in practice this seems to be very unreliable.
I am currently seriously climbing into Twitter development so more posts should follow about this soon.
Teh Charl has Landed!
Lol! Ok, I have been travelling like a crazy mofo the last couple of weeks. First I went to the October 27 Dinner, then to the November Geek Dinner, then to Starcamp and now up to Johannesburg for a few days.
However, finally I'm done and am back with my feet on the ground, literally and figuratively. I need to get around to blog about all my experiences the past couple of weeks and seriously get going with work again.
Here are some photos I took at Johannesburg International Airport:
I need to leave country now?
Ok so for a long time I kept saying (in RL, not much online) that I will leave the country if Jacob Zuma becomes president. I was actually saying that thinking that it would never happen. Now that seems to be a real possibility. Does this mean I need to book my tickets now?
My new favourite beer!
First of all, no I am not affiliated!
I saw quite a few television advertisements about Hansa Marzen Gold the last while so decided to try one today. Indeed, a refreshingly different beer! Although in general it tastes quite mild to me, the flavour and the colour are both great. I think I just found a new favourite. :)
I also tried Brutal Fruit Litchi but I thought it sucked. I'm just not one for coolers, sorry. Rather give me normal non-alcoholic fruit juice. The only difference I could find is that this tasted somewhat fermented (big surprise). Actually, it tastes just like litchis that are a bit past their expiry date. Rather give me fresh ones, and normal litchi fruit juice.
Twobombs does it again!
I complained about the Windows on one of my previous posts Twobombs Hardware, so Twobombs commented that he actually runs a dual boot. He later sent me a link via instant messaging to a screenshot on SuSE Linux.
Also, he started his own blog now!
Update: It's a pity KDE System Guard only seems to support 2 cores. :(
The Guide / Yiza
I am hectically busy with work at the moment but squeezed a few minutes off this evening (mainly because I got an invite from Matthew Buckland) to take a look at the new social events site The Guide which uses the social networking component Yiza (at the moment the site is just redirecting to The Guide).
Even though the site is hosted overseas and the traceroute looks crap (take a look below), the site is lightning fast. That is very impressive as it's well suited to the African bandwidth environment.
charlvn@stargate:~$ tcptraceroute www.yiza.co.za ftp -f 3
Selected device eth1, address 10.0.0.2, port 58514 for outgoing packets
Tracing the path to www.yiza.co.za (89.234.7.83) on TCP port 21 (ftp), 30 hops max
3 cdsl1-rba-gi1-2-457.ip.isnet.net (196.38.73.237) 63.217 ms 63.004 ms 62.576 ms
4 curp1-rba-gi6.isdsl.net (196.38.72.238) 62.907 ms 63.395 ms 62.519 ms
5 cdsl1-rba-gi0-3-43.ip.isnet.net (196.38.72.229) 61.516 ms 63.152 ms 62.795 ms
6 cdsl2-rba-gi0-1.ip.isnet.net (196.36.80.162) 62.689 ms 63.207 ms 61.274 ms
7 196.36.80.165 62.952 ms 135.062 ms 62.294 ms
8 csw2-ny-gi1-1-256.ip.isnet.net (168.209.0.242) 679.759 ms 678.420 ms *
9 csw1-dock-gi1-20-184.ip.isnet.net (168.209.100.42) 677.823 ms 678.403 ms 680.919 ms
10 cp1-dock-gi0-1.ip.isnet.net (168.209.246.8) 677.440 ms 679.071 ms 678.062 ms
11 g3-15.edge3.lon.rackspace.net (195.66.224.116) 678.675 ms 678.326 ms 680.102 ms
12 vlan903.core3.lon2.rackspace.com (83.138.150.17) 680.936 ms * *
13 aggr10a.lon2.rackspace.net (83.138.150.87) 680.741 ms * *
14 106294-web1.106294.mg.co.za (89.234.7.83) [open] 683.432 ms * 680.818 ms
Personally I would really like to see this evolve into a site supporting OpenSocial (extended with some custom stuff for reading / posting events), Microformats (particularly hCard for profiles, hCalendar for events and hAtom for the Friend Feed), Atom/RSS for the Friend Feed etc, valid (X)HTML, etc etc.
Of course the site is very new so complaining about this is silly, I just wanted to state these things so hopefully the developers will read it and take note that it is in demand. :)
Update: Oh yes and what would be really super of course is integration with Facebook events and particularly iJol.
Another Update: Oh yes and of course we should not forget about OpenID! ;)
Bloatbook
Other than not supporting OpenSocial, I generally quite like Facebook. However, my latest issue is with bloated profiles. Some people's profiles really are starting to look like Christmas trees. Even my profile is starting to get quite hectic. Sometimes I see horrible flashbacks of MySpace.
Maybe people overseas don't really notice it that so much, but here in Africa many of us can really feel these things. Profiles are sometimes painfully slow to open. Videos, pictures, and who knows what other kind of shit, all on one page!
So why does absolutely every Facebook app need to display on your profile? I mean, come on! Can't there be some kind of Ajax loading script to expand applications? Or pagination? Or something??? For the moment, I'm just clicking the close button and selecting "Remove Box".
Will Facebook remain the top social networking site in South Africa, or will it be overtaken by Yiza and similar projects? I am just gunning for whichever service takes the local lead to support OpenSocial.
Twobombs Hardware
Phew this is another nice system. It seems like I know all the guys with the right hardware these days. Twobombs, a friend of mine in Holland, has this beauty:
Also see his CPU-Z Database entry. Not half bad!
Now we just need to see more of these systems running on a real operating system... ;)
Starcamp and Joomla! Day
Firstly I have to apologise for posting about this so late. As a matter of fact, I didn't even get time to blog about the last Geek Dinner, but hopefully I'll catch up soon. On my side, life is going at 5 000 kmph at the moment. Things should be returning back to normal after the next three days.
In less than 4 hours from now, I will be leaving from George on the bus and we should be arriving in Cape Town tomorrow morning early.
Saturday and Sunday I will be at Starcamp. If you don't know what it's about yet, check this out:
StarCamp is this year's event for those interested in technology, new media, and social networking in Cape Town. Anyone can attend, and anyone passionate enough to want to speak has a platform to share their passion.
StarCamp builds on the 2006 BarCamp Cape Town, the GeekDinner movement started post-BarCamp Cape Town, and the 27dinner phenomenon of finding new ways to get people together to learn from each other and to learn of each other, to help build Cape Town as a leader in business and technology.
Believe it or not, there is actually still more than enough space left so by all means, if you want to attend, pitch! Remember guys that this is the event of the year of us tech types so definitely not one to miss. ;)
I will also be doing a presentation about Joomla! 1.5, probably on Sunday.
They should have net access over there so you can bet your ass I'll be on the interwebs bogging, twittering and jaiku'ing like mad! I come armed with a laptop and a digital camera!
Then on Monday, I will be attending Joomla! Day. I am very privileged to have been asked to speak so will do a talk, mainly about templating.
I am so excited I can hardly sit still! I have to get packed now though and answer a few e-mails before I leave...
charlvn.za.net Server Move
This might be very difficult to believe and I'm actually quite ashamed about it, but my experimental site charlvn.za.net was hosted on an IIS server (yes, on Windows) for a couple of months. Finally I got the time to move it over to a proper Linux-based server in Germany. There is no obvious benefit in terms of the connectivity, but at least now it's on Apache and I can use .htaccess files again to do some URI rewriting. I also have the satisfaction that my site is running on an open source platform stack and the reliability will be much better.
The move was not without its problems as I forgot to set up the blogger.charlvn.za.net subdomain on the new server, but am sorting out all these issues as I go along.
Traceroutes, for anybody that might be interested (first one is to the old server, second to the new server):
charlvn@stargate:~$ tcptraceroute -f 3 75.126.6.231 ftp
Selected device eth1, address 10.0.0.2, port 52322 for outgoing packets
Tracing the path to 75.126.6.231 on TCP port 21 (ftp), 30 hops max
3 cdsl1-rba-gi1-2-457.ip.isnet.net (196.38.73.237) 60.814 ms 61.111 ms 58.154 ms
4 curp1-rba-gi6.isdsl.net (196.38.72.238) 60.697 ms 60.162 ms 59.362 ms
5 cdsl1-rba-gi0-3-43.ip.isnet.net (196.38.72.229) 59.492 ms 59.937 ms 59.655 ms
6 cdsl2-rba-gi0-1.ip.isnet.net (196.36.80.162) 60.535 ms 59.655 ms 59.624 ms
7 196.36.80.165 59.253 ms 61.081 ms 59.379 ms
8 csw2-ny-gi1-1-256.ip.isnet.net (168.209.0.242) 669.158 ms 669.566 ms 670.091 ms
9 csw1-dock-gi1-20-182.ip.isnet.net (168.209.100.38) 672.284 ms 671.944 ms 672.888 ms
10 cp1-dock-gi0-1.ip.isnet.net (168.209.246.8) 737.564 ms 670.533 ms 672.943 ms
11 ge3-0.pr1.lhr1.uk.above.net (195.66.224.76) 672.382 ms 671.665 ms 673.415 ms
12 so-0-1-0.mpr1.dca2.us.above.net (64.125.27.57) 778.181 ms 748.023 ms 748.373 ms
13 so-1-0-0.mpr2.atl6.us.above.net (64.125.28.230) 759.604 ms 762.003 ms 763.193 ms
14 so-0-0-0.mpr1.atl6.us.above.net (64.125.27.49) 834.565 ms 786.170 ms 791.624 ms
15 so-1-2-1.mpr4.iah1.us.above.net (64.125.29.62) 788.355 ms 776.038 ms 773.541 ms
16 so-0-0-0.mpr3.iah1.us.above.net (64.125.26.13) 777.501 ms 774.179 ms 775.146 ms
17 so-1-1-0.mpr1.dfw2.us.above.net (64.125.26.129) 779.344 ms 849.699 ms 783.556 ms
18 ge4-13.cer01.dal01.dallas-border.com (64.124.79.202) 851.079 ms 784.549 ms 782.487 ms
19 po51.fcr01.dal01.dallas-datacenter.com (66.228.118.150) 782.665 ms 784.260 ms 784.762 ms
20 75.126.6.231-static.reverse.webafrica.co.za (75.126.6.231) [open] 787.352 ms * 1489.861 ms
charlvn@stargate:~$ tcptraceroute -f 3 charlvn.za.net ftp
Selected device eth1, address 10.0.0.2, port 40997 for outgoing packets
Tracing the path to charlvn.za.net (85.10.213.128) on TCP port 21 (ftp), 30 hops max
3 cdsl1-rba-gi1-2-457.ip.isnet.net (196.38.73.237) 58.677 ms 58.784 ms 59.561 ms
4 196.38.73.142 60.449 ms 59.809 ms 59.392 ms
5 cdsl1-rba-gi0-3-52.ip.isnet.net (196.38.73.137) 58.288 ms 58.923 ms 59.408 ms
6 cdsl2-rba-gi0-1.ip.isnet.net (196.36.80.162) 60.441 ms 59.932 ms 59.227 ms
7 196.36.80.165 59.152 ms 60.983 ms 61.623 ms
8 csw2-ny-gi1-1-256.ip.isnet.net (168.209.0.242) 670.381 ms 670.515 ms 672.382 ms
9 csw1-dock-gi1-20-182.ip.isnet.net (168.209.100.38) 827.861 ms 812.087 ms 674.461 ms
10 cp1-dock-gi0-1.ip.isnet.net (168.209.246.8) 672.138 ms 671.645 ms 846.467 ms
11 LINX1.LON-2.uk.lambdanet.net (195.66.224.99) 682.118 ms 677.173 ms 673.077 ms
12 FRA-1-pos313.de.lambdanet.net (82.197.136.25) 691.230 ms 688.176 ms 687.916 ms
13 FRA-3-eth100.de.lambdanet.net (217.71.96.70) 689.126 ms 688.081 ms 698.805 ms
14 NUE-2-eth100.de.lambdanet.net (217.71.96.74) 699.874 ms 692.891 ms 693.243 ms
15 lambdanet-gw.hetzner.de (213.239.242.214) 692.829 ms 696.727 ms 694.225 ms
16 hos-bb2.juniper3.rz4.hetzner.de (213.239.240.142) 767.330 ms 692.907 ms 689.814 ms
17 dedi328.your-server.de (85.10.213.128) [open] 695.128 ms * 696.806 ms
charlvn@stargate:~$
Sorry for doing this to port 21 but if I do it to port 80 then I'll hit transparent proxy servers in South Africa.
Crowdsource
Random thought of the day. I honestly don't get the point behind crowdsourcing. Who is going to put in a lot of development time just because your version of the project might be chosen and you might get paid? I understand this would be cool for inexperienced developers or students, but for us experienced okes that can deliver the quality work, why take part?
Ok, so if you compete against noobs, then your version is likely to be chosen. However, if you are competing against other experienced developers, then why bother?
"Just for fun" projects would be excellent, but I, for one, would not recommend companies to go that route. But maybe I'm missing something. Any thoughts?
Quad Core Power!!
If there is one serious m*therf*cker in the Garden Route it must be the graphic design and (X)HTML/CSS pwnerer Jayx (also one of the leet Garden Route "oubies"). Check this, well, mother of a system he's got over here:
This is one seriously mean-looking PC! This system is actually a server but in true Chuck Norris style, only the best is good enuff as a real oubie's desktop workstation.
Around The World For Free
A while back, Simon Botes (well known as the South African Fring blogger locally) invited Jayx and me to join the Around The World For Free Facebook group.
Alex Boylan together with Chris won The Amazing Race 2. He is now travelling all over the world together with Zsolt for six months in this new exciting reality show. And indeed, reality it is! Alex is not allowed to bring any of his own money... Wherever he goes, people have to help him get to the next destination on his trip.
Since they landed in Cape Town a few days earlier, we decided to help them out by giving them a lift over to the Garden Route on Sunday.
We met up with them in Cape Town and started making our way east. However, on the way tragedy struck: the Beemer's fan belt came off! Jayx got in under the car and Alex under the bonnet. They managed to get the fan belt back on, but only about a hundred metres later and it came off again! We still had a few hundred kilometres to go so putting the belt back on would have been totally pointless.
Luckily we weren't too far from the beautiful town of Swellendam. It was on a Sunday so obviously getting out a tow truck was not too easy though. However, after a long time struggling to get hold of somebody, Jayx managed to contact the right guy and he came out to tow us all the way back to his repair shop.
Traditional Afrikaner culture in these remote areas is absolutely amazing. This guy not only allowed us to sleep over at his house for the night but even fed us some delicious roasted lamb and a fine selection of wines!
Simon and his wife drove straight throughout the night to come pick Alex, Zsolt and me up early the next morning and took us back to the Garden Route while Jayx stayed behind to get the Beemer back in tip-top shape. At the end of the day Jayx and I were safely back in George while Alex and Zsolt stayed over at the Crags with Simon.
If you want to see our trip back documented on video, please see Day 77: Update from the Road and Day 78: Trip to Crags.
The best thing of all is that, on the way back, Simon also hooked these guys up with Fring so that their viewers can get in contact with them live wherever they are. Exciting stuff!
Hosting Changes
I am currently undergoing several changes in my hosting infrastructure. Although I hoped it would be transparent to the end user, this was clearly not the case as this blog broke down temporarily. Apologies for this and things should be back to normal again. Please let me know if you find any other errors.
Bad PHP Error Message
Personally I dislike many of these heavy PHP template engines. I prefer to keep things small, compact and efficient.
Sometimes we might do things like this, which generally works fine:
<?php function choice($myChoice) { ?>
<h1>You have a choice even!</h1>
<?php if ($myChoice): ?>
<p>You picked the first option!</p>
<?php else: ?>
<p>You picked the second option!</p>
<?php endif; ?>
<?php } ?>
To try and keep things neat and consistent, you might do this when you want to combine multiple templates into the same class:
<?php class My_Template { ?>
<?php function helloWorld() { ?>
<p>Hello World!</p>
<?php } ?>
<?php function helloJannie() { ?>
<p>Piet Pompies gaan jou nie help nie, broer!</p>
<?php } ?>
<?php } ?>
Then you might get an error like this:
Parse error: syntax error, unexpected ';', expecting T_FUNCTION in /var/www/test.php on line 1
But why? Well, think about it for a bit. As soon as you escape PHP mode with ?> you are outputting everything directly to the standard output stream/buffer until you enter PHP mode again with <?php or sometimes even <? depending on your PHP configuration (the latter method is often frowned upon because it creates issues when using an XML declaration such as <?xml version="1.0"?>).
In other words, you are basically writing white space characters inside of a class but outside of a function of that class. That just wouldn't make any sense.
But now take a look at the error message. There would have been a thousand better messages one could think of surely. Or am I missing something?
The Google Highly Open Participation Contest
Wow, just caught on to this today. If you would like to participate in something similar to the Google Summer of Code but you are still in "school" (as per usual South African convention to call "school" what you go to before you go to college or university) you might qualify to participate in the The Google Highly Open Participation Contest.
Following on from the success of the Google Summer of Code program, Google is pleased to announce this new effort to get young people involved in open source development. We've teamed up with the open source projects listed here to give student contestants the opportunity to learn more about and contribute to all aspects of open source software development, from writing code and documentation to preparing training materials and conducting user experience research.
If you're a student age 13 or older who has not yet begun university studies, we'd love to see you help out these projects. In return, you'll learn more about all aspects of developing software - not just programming - and you'll be eligible to win cash prizes and the all important t-shirt! You will, of course, need your parent or guardian's permission to participate where applicable.
Needless to say, Joomla! is in on the game - please see the Joomla! Google's Highly Open Participation Contest Forum for more info.
Exciting shit! I am really looking forward to the Google Code Jam 2008. Hopefully we'll get the information soon!
Blogger Comment Moderation
To moderate or not to moderate, that is the question! Bah, these Shakespeare sound-alike phrases can get so irritating!
Being on Blogger, so far I didn't really have any major problems with spam, but every now and then I seem to be targeted by some bunch of idiots.
I am constantly going between moderated and unmoderated comments. With moderated comments, I get a mail like this:
Piet Pompies has left a new comment on your post "Who Cares?":
You are teh suck!
Publish this comment.
Reject this comment.
Moderate comments for this blog.
Of course, Publish
and Reject
are links as this is HTML mail.
This has the advantage that, if the comment is spam, I simply click Reject
and the comment gets deleted. But it has the disadvantage that I have to click Publish
for every legit post as well. When I get lots of spam, it's easier to leave this on, if I don't, it's easier to just leave this off.
If I choose to publish a comment or if I do not have comment moderation turned on, I get the following message:
Piet Pompies has left a new comment on your post "Who Cares?":
You are teh suck!
Posted by Piet Pompies to Charl van Niekerk » Blog at Monday, December 03, 2007 9:20:00 PM
This makes it a little more difficult to moderate comments. First I have to click on Who Cares
as that's a link and go to the post. Then I have to delete the comment from the post the "hard way" by finding the right comment, clicking the delete icon, confirming the deletion, etc.
The big pain for me is that I do not want to stop conversation going on my blog. People should just be able to go mad in the comments and have a discussion, with or without me. They shouldn't have to wait for me to manually publish every single comment that gets posted. Then they can just tolerate the bit of spam that slips through occasionally and I can go later and delete it.
So my idea is basically this. Blogger should put a "delete" link straight in the latter e-mail. Then we leave comment moderation off but deleting spam remains just as easy. They could have an option to ask confirmation before deleting, but I basically want to use this like the comment moderation's Reject
option, so it shouldn't ask me confirmation at all.
How does that sound? Any thoughts / opinions / flames?
Back in George!
Finally, I am back from road tripping and in the beautiful City of George again at home with my "trusty" (ha ha, yeah right...) ADSL connection. This must have been the most adventurous couple of days I have ever had in my entire life so far. There is so much to blog about at this point in time I don't even know where to begin. I guess a good place would be to start at the beginning and gradually work my way towards the end then. Yeah, I actually figured that out myself. Can you believe it? You better believe it, because it's true!
I will have to work like a madman the next couple of days in order to catch up with everything (especially my mail which is currently getting out of hand), but as soon as I get some spare time I will start typing up some of my experiences and even include photos with that as well!
Really looking forward to *camp this weekend though... Another good reason for me to work really really hard! :P
Copyright © 2004-2009 Charl van Niekerk. All articles are released under the Creative Commons Attribution 2.5 South Africa licence, unless where otherwise stated.










