Here is a five minute video history of the Internet.
History of the Internet from PICOL on Vimeo.
Author: peteware
Fixing libxml2, php, WordPress, and the missing angle brackets
I was having problems with MarsEdit after updating to OpenSuse 11.1 because of a bug in php aggravated by a recent release of libxml2 (details here).
I was waiting for a real fix but lost my patience today. The advice was to “fall back to libxml2-2.6.32” so here’s what I did:
- Grabbed the RPM from the OpenSuse 11.0 cd. Or, if you trust me you can download it from here: libxml2-2.6.32-11.1.i586.rpm
- Install the RPM overriding any recent release which is what the “–force” flag does. Do the following as “root” from a terminal window:
rpm -i --force libxml2-2.6.32-11.1.i586.rpm
-
Now fix the symlinks in /usr/lib so everyone uses the new (but old) library:
cd /usr/lib rm libxml2.so libxml2.so.2 ln -s libxml2.so.2.6.32 libxml2.so ln -s libxml2.so.2.6.32 libxml2.so.2
-
Actually, I didn’t do the above but instead replaced the actual 2.7.2 library:
mv libxml2.so.2.7.2 libxml2.so.2.7.2.orig ln -s libxml2.so.2.6.32 libxml2.so.2.7.2
-
Restart apache so that PHP uses the new libraries:
/etc/init.d/apache2 restart
Refining google AdWords
I’ve been monitoring the results of trying a Google AdWord campaign ($25 for a month). This is the third day since I started to “brand” myself (it’s more painful then it sounds). Here are the searches that resulted in a click through:
- “andaconda sports”
- “python” but it was a search limited to http://www.france-pub.com
- “snake game”
- “where can i sell my snake”
Google associates Python, a programming language in my world, with “snakes”.
I went back to Google AdWords to refine my keywords and discovered a few more details. For example, you can add a “-” to mean “not this word” and you can surround a word in quotes to avoid the broad match (e.g. “snake” matches “python”). Here’s the set of words I’m using now:
- PyQt
- django
- pyqt
- python qt
- qt
- qt designer
- “python”
- -snake
So far I’ve spent $1.63 for six click thru’s that are totally worthless. That’s not such a big deal at this point though it does warn me about two things:
- If you don’t have an easy way to monitor what search words are being used you shouldn’t be using AdWords.
- A lot of people just click on the first thing that shows up. I have no idea why someone looking for “snake game” would click on a link “Pete Ware — Developer”!
The New World Order
As I’m breaking old habits of actually getting work done, this puts it all in perspective:
The new world order: aka “New media douchbag”
Google adwords and “my brand”
I woke up early this morning and decided using Google AdWords was a brilliant idea and not at all creepy. So I followed the advice in item 5 and took out an ad via Google AdWords.
I chose pretty strange search words (python, qt, PyQt) so it’d be cheap. I also limited the searches to New York (fewer adds served). Finally, I had a $25 credit so it’s essentially a free experiment.
So searching Google for “PyQt” in New York results in this display:

The text is lame but it’s easy to change.
Google AdWords now shows I’ve had 850 impressions (Impr) and one click through (Clicks). What, I actually had a click through!

I better go check that click through out:

(that’s from WordPress and the StatPress plugin). The person was searching for “andaconda sports” and the results look like:

The first time I looked, my page showed up first.
So the person immediately clicked on the very first link! That bozo cost me $0.43 while looking for a sporting goods store! I’m a software developer! WTF?
So how did my page show up? Google must have figured “Andaconda” was really “Anaconda” (which is a snake) and further decided that Anaconda and Python are related. So the bozo must be interested in me because I mentioned Python. So that blows half my advertising budget for today!
7 Secrets to Getting Your Next Job Using Social Media
This article has some interesting ideas about looking for a job in our brave new world. I’m not wild about the idea of establishing a “brand” (go figure since I’m doing this on peteware.com) but it’s certainly conventional wisdom that you find a job by knowing people.
I need to ponder idea (5) — taking out a Google AdWord is either brilliant or really creepy. From 7 Secrets to Getting Your Next Job Using Social Media:
5. Advertise your brand using AdWords and Facebook Social Ads
Google AdWords is Google’s advertising platform, which offers CPC (cost-per-click) and CPI (cost-per-impression) pricing for advertisements on Google and partner sites. Some of their partner sites are newspapers, radio and TV.
Animated slides
I ran across animoto.com which lets you upload a bunch of still photos, select some music, and turn it into a video. And it’s dirt simple.
More pizza
Can’t ever have enough pizza:
[photonic ids=’1363,1364,1365″‘ style=’launch’ fx=’wipe’ slideshow_height=’500′ columns=’3′ thumb_width=’100′ thumb_height=’100′ thumbnail_size=’thumbnail’ slide_size=’medium’ timeout=’4000′ speed=’1000′ ]
SproutCore
I’d looked into SproutCore and sort of liked the idea. I see Apple is doing more with it — the gallery of MobileMe looks pretty cool.
Here’s an interesting video (jump to the 20min point and listen for about 20min) that argues why we should move more business logic to the browser and use a higher level framework like SproutCore.
OpenSuse 11.1, kdm_greet, slow ssh login
I was suffering from slow ssh logins — it’d take 20 seconds to get a login prompt. I noticed this process, kdm_greet, running. Google found a posting message that said the problem is kdm_greet is having to examine a bunch of fonts:
kdm_greet takes a long time to run due to out-of-date font-cache
It didn’t seem reasonable but I went ahead and ran:
fc-cache -f
Login was so fast I thought at first nothing happened.
Well, it started to get slow again. I monitored what was happening and it looks like sshd was taking a long time (30 seconds). That made me think of reverse DNS lookups. I checked
/etc/resolve.conf
and it had an out-of-date nameserver entry. Removed it and things are fast again.