/dev/null

Yes, all beginning is heavy! It attemp is worth.

May 10, 2008

Google Borg

17:33

We are Google. Resistance is futile. You will be data mined. We will add your informational distinctiveness to our database. Your culture will adapt to be serviced by us.

Stefan Tobaben

PHP is extensible. “PHP is the borg. It can assimilate anything out there and add it to its own perfection.”

PHPVikinger.org: Things that have no name

Dell 2407 WFP stand was stuck

Tags: , — 16:41

I was getting ready to pack my monitor up to move it the other day, and I pushed the release button for the mount on the monitor stand. A second or two after the monitor was disengaged from the stand, I heard a loud “twang” coming from the stand. I didn’t think much of it because it looked fine, but later on I found it was stuck, in the lowest position.

The stand holds the monitor just fine, but it is about an inch too low in this position and I can not for the life of me get the height adjustment release button on the back to go down. The stand is really stuck. (Source: hardforum.com)

I had the same problem with my display and tried to solve it on smart way for months. After virtually fixing everything else in my flat, I started working on this problem again today. I hate unsolved problems. As there were no other options left, I used the “hammer method” and there we go! :)

Tops & Flops

02:35

Products, services and companies I really like at the moment:

I don’t like…

May 8, 2008

Google employees running away

22:00

One more post for today! :) As you might know, Elliot Schrage leaves Google to join facebook. There seem to me more and more Google employees running away and working for other companies now. While searching for more details about the latest news, I found this:

Commenter Facebookcanhavehim shares this thought on Google überflack Elliot Schrage’s prospective departure for Facebook:It has nothing to do with Eric’s philandering. It has everything to do with the fact that Elliot sucks and is being run out of the company. No idea he has held on so long considering how ineffective he has been. From the inside I can affirm his team hates him. The other executives see him as impotent, reckless, and self-promoting.

No sure who wrote this (probably a self-assured Google employee) but fact is that
10% of Facebook employees came from Google

The management pool at Google is deep indeed, and some find themselves drowning in it. Making a splash is harder and harder, as the company reins in its chaos; to those fighting to get unloved projects launched, a clique close to Larry and Sergey seem to be the only ones at the company who matter.

Safari rocks!

Tags: , , — 18:56

I forgot to mention why I had to install Privoxy (see my last post): Because I started using Safari, which doesn’t care about my privacy and security in the same way as Firefox does. Sadly, Firefox crashes every couple of minutes since the last update. Another reason for using Safari is it’s JavaScript performance:

uery, YUI and Dojo JS selector performance

The results show the final time in ms for the tests on http://www.domassistant.com/slickspeed/.

I’ve also done the same test on my Linux notebook (which is of course a bit slower than the 64bit Windows XP workstation) with Opera, Epiphany and Firefox:

JavaScript performance of Firefox, Opera and Epiphany

Still, the Webkit engine is the fastest! So go and try for yourself.

Privoxy

18:19

Today, I installed Privoxy – a non-caching proxy that filters unwanted content, such as ads and cookies. Jeden Tag eine gute Tat, wie man im Deutschen sagt. It works just great! Here’s a little howto, if you want to build it from source on a Linux box (a Windows version with installer is available as well). Check the download page on sourceforge.net for the latest release – at the moment it is 3.0.8:

wget http://garr.dl.sourceforge.net/sourceforge/ijbswa/privoxy-3.0.8-stable-src.tar.gz
tar -xzf privoxy-3.0.8-stable-src.tar.gz
cd privoxy-3.0.8-stable
autoheader
autoconf
./configure --with-user=privoxy --with-group=privoxy --with-docbook=no --enable-zlib
make
make install
/etc/init.d/privoxy start

Before actually starting the server, you have to add the user and group privoxy. See your local documentation for the correct command line to do add new users and groups (something like adduser, but the command syntax may vary from platform to platform). By default, it binds to 127.0.0.1:8118, but you can change that in the main config file /usr/local/etc/privoxy/config. You should also set enforce-blocks to 1, so that the “go there anyway” link does not show up. Take care not to open up your proxy for the whole world and have fun!

Web 2.0 Mapping by Sebastian Bergmann

02:28

Sorry, but I have to post this =)

How sick is that? I thought I use the Web a lot, but this seems to be like the next step…

May 6, 2008

Flickr RSS plugin for jQuery

23:45

After searching for a suitable Flickr WordPress plugin for ages, I developed my own in less than 40 lines of JavaScript code. It’s free! You may download and use it for your own blog. I recommend to save it as /wp-content/plugins/flickr/flickr.js, if you are using WordPress. As the plugin does not depend on WordPress, you can use it with any other CMS like Drupal too. Even with plain HTML, if you like. Your HTML page header (normally part of your theme in wp-content/themes/[theme name]/header.php) should include these two lines, so that the required scripts (jQuery and the plugin) get loaded:

<script type="text/javascript" src="/wp-includes/js/jquery/jquery.js?ver=1.2.3"></script>
<script type="text/javascript" src="/wp-content/plugins/flickr/flickr.js"></script>

Currently, it just looks for HTML elements with the class flickrFeed, which can be added to blog posts, templates and widgets. You can have multiple containers, but only one feed URL per page. It would be more flexible, if it could be used like a normal jQuery plugin: $('.flickrFeed').flickrRSS(maxItems, url). The current version just loads the feed instantly when the page is ready. Maybe too much magic, but ok as a quick result at this time of the day. Please write comments, if you want an improved version.

By the way: Flickr doesn’t seem to care about unexpected additional parameters (see last posting about Google’s AJAX Feed API). It all works just fine.

Using Gdata with jQuery

08:12

This morning, I had the unbearable desire to find out why I can’t call Google’s AJAX Feed API with jQuery 1.2.3 directly, but using a small proxy script. In theory, it’s just including a script tag which then loads the remote JavaScript and executes a callback function (thus, bypassing the same-origin policy of JavaScript, which would apply for a normal XMLHttpRequest):

$.getScript(‘http://adwordsapi.blogspot.com/atom.xml?alt=json-in-script&callback=someCallbackFunction’);

or

$.get(‘http://adwordsapi.blogspot.com/atom.xml?alt=json-in-script’, null, someCallbackFunction, ‘jsonp’);

What did work quite well was

$.getScript(‘http://www.liquidbytes.net/feed.php’);

feed.php is a small PHP script that outputs the example blog feed above. So it wasn’t a problem with the data format or the cross-domain requests.

What happens? jQuery’s ajax function has a config parameter called ‘cache’. If it’s set to false (or not set), then a timestamp parameter will be added automatically to all URLs:

http://adwordsapi.blogspot.com/atom.xml?alt=json-in-script&callback=someCallbackFunction&_=1204907988789

Google doesn’t like additional parameters and just returns: Invalid query parameters:_

This can be easily fixed by setting $.ajaxSettings.cache = true

Still, I did not get any results. Of course I could call the feed URL in the browser, but it did not work with jQuery as expected. The end of the story was to disable the AdBlockPlus (ABP) plugin of Firefox. For one reason or another, probably all script calls to something with the string “adwords” in it will be blocked, it did not allow the URL to be included as script.

Others seem to have similar problems.

You might also want to have a look at the jQuery Google Feed Plugin. Google itself uses jQuery on Google Code.

« Newer Posts

Powered by PHP, Memcached, Suhosin, MySQL and WordPress