Archive for June, 2010

JQuery and performance

Tuesday, June 29th, 2010

This is just a collection of links to interesting posts:

http://jquery-howto.blogspot.com/2009/02/5-easy-tips-on-how-to-improve-code.html

http://paulirish.com/2009/perf/

http://www.artzstudio.com/2009/04/jquery-performance-rules/

http://stackoverflow.com/questions/2694431/whats-the-most-efficient-way-to-manage-large-datasets-with-javascript-jquery-in

 

"Autoloader" – load the nodes when requested.
("virtual rendering")

http://github.com/mleibman/slickgrid
http://plugins2.jquery.com/project/GridNic (Seems to be the same, the author is definitely the same! This one has PDF / Word / Excel export capabilities.)

 

Speed Comparison

http://paulirish.com/2009/perf/

http://mootools.net/slickspeed/ (Old versions of JQuery used!)

http://dante.dojotoolkit.org/taskspeed/ This is a more up-to-date version

=> JQuery 1.4.2 yields significant performance gains over JQuery 1.4.1

 

Storing Data locally

http://www.jstorage.info/

Geniale Geschäftspartner! – Domains und Dumpingpreise: don't!

Thursday, June 24th, 2010

Gerade als Anfänger macht man im Geschäftsleben einige Fehler, deren Auswirkungen man erst mit der Zeit an sich spürt. Es sind teilweise donnernde Wellen die über einem zusammenschlagen, und einen erbarmungslos in das tiefe Meer hinaus zu ziehen trachten. In dieser Serie möchte ich Euch einige Do's und Dont's vorstellen, und meine Erfahrungen weitergeben. Ich freue mich wenn der eine oder andere meine Fehler nicht wiederholt und gleich mit seriösen Geschäftspartnern zu tun hat.

Einmal machte ich den Fehler, meine Domains einem Unternehmen mit Dumpingpreisen, aber auch einer 0900-Nummer (99 ct / min) … an die ein Anrufbeantworter rangeht … anzuvertrauen. Nie wieder! Die Extraktion meiner Domains – notwendig geworden weil mir ohne Grund der Adminzugang abgestellt wurde – war ein aufwendiger Prozess, den ich vielleicht in einem anderen Blogeintrag berichten werde.

Diesmal ging es aber nicht zu irgendwem, sondern zu HTTP.net. HTTP.net ist ein durch und durch professioneller Anbieter mit freundlichen Mitarbeitern. Wochenlang hatte ich versucht die andere Firma zu erreichen – ohne Erfolg versteht sich – HTTP.net leistete selbst kurz vor Mitternacht mir in einer Notsituation sofortige Hilfe:

Meine Domains waren dabei bei der DENIC irgendwarum nicht auf HTTP.net aktualisiert. Ein Mitarbeiter von HTTP.net veranlasste ein Update, so dass am nächsten Morgen nicht der Super-GAU bei mir eingetreten ist. Neben e-Mails wird auch die Firmenrufnummer ( 089 / 878 069 850 ) sowie der Fax2eMail Service über unseren Server betrieben, via VoIP. Wenn der DNS nicht läuft bricht alles auf einmal zusammen – meine Kunden wären nicht glücklich darüber!

Es ist deswegen auf jeden Fall wichtig, einen guten Kontakt zu seinem Upstream-Anbieter zu haben, und zwar sowohl im zeitlichen als auch zwischenmenschlichen Sinne. Die eigenen Kunden werden es einem danken!

Why not? :-)

Friday, June 18th, 2010

http://web.orange.co.uk/article/quirkies/Porno_burger_van_busted

Jordan Mulumba schreibt

Friday, June 11th, 2010

Endlich, das ist die Chance meines Lebens. Darauf habe ich gewartet. Wer braucht schon eine Beziehung oder sowas?

Lieber Freund!!!
Ich vermute das diese E-Mail eine Überraschung für Sie sein wird, aber es ist wahr.Ich bin bei einer routinen Überprüfung in meiner Bank (Standard Bank von Süd Afrika) wo ich arbeite, auf einem Konto gestoßen, was nicht in anspruch genommen worden ist, wo derzeit $12,500,000 (zwölfmillionenfünfhundert US Dollar) gutgeschrieben sind.
Dieses Konto gehörte Herrn Manfred Becker, der ein Kunde in unsere Bank war, der leider verstorben ist. Herr Becker war ein gebürtiger Deutscher.Damit es mir möglich ist dieses Geld $12,500,000 inanspruch zunehmen, benötige ich die zusammenarbeit eines Ausländischen Partners wie Sie,den ich als Verwandter und Erbe des verstorbenen Herrn Becker vorstellen kann,damit wir das Geld inanspruch nehmen können.
Für diese Unterstützung erhalten Sie 30% der Erbschaftsumme und die restlichen 70% teile ich mir mit meinen zwei Arbeitskollegen, die mich bei dieser Transaktion ebenfalls unterstützen.Wenn Sie interessiert sind, können Sie mir bitte eine E-Mail schicken, damit ich Ihnen mehr Details zukommen lassen kann.Schicken Sie bitte Ihre Antwort auf diese E-Mail Adresse: (von der Redaktion gelöscht)
Mit freundlichen Grüßen
Herr MARTINS WEBER DITO

 

GRATIS für alle WEB.DE Nutzer: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://movieflat.web.de

Eins muss man dieser Person lassen – sie ist durch meinen SPAM Filter gekommen und spricht gutes Deutsch für einen Südafrikaner. Vielleicht ist da doch was dran?

Concrete 5 site is suddenly down

Wednesday, June 9th, 2010

The symptoms:

Your site is suddenly down. If in production mode, a blank & empty page is displayed.

The solution:

After checking that the MySQL daemon still works, Apache is running, PHP is working and the configuration has not been changed (a test.txt file is served correctly), you might want to look into your PHP error log.

Here's how you add PHP error logging to your .htaccess, if you do not have it already:

# php error logs..
php_flag display_errors off
php_flag log_errors on
php_value track_errors on
php_value error_log /path/to/php.error.log

Be sure to chown the file to www-data:www-data or whatever your PHP process is running under.

In my case, the culprit was a very strange "duplicate entry" error:

[09-Jun-2010 20:18:49] PHP Fatal error: Uncaught exception 'ADODB_Exception' with message 'mysql error: [1062: Duplicate entry '300969' for key 1] in EXECUTE("insert into PageStatistics (cID, uID, date) values ('1', 0, NOW())")
' in /…/concrete5.4.0.5/concrete/libraries/3rdparty/adodb/adodb-exceptions.inc.php:78
Stack trace:
#0 /…/updates/concrete5.4.0.5/concrete/libraries/3rdparty/adodb/adodb.inc.php(1037): adodb_throw('mysql', 'EXECUTE', 1062, 'Duplicate entry…', 'insert into Pag…', false, Object(ADODB_mysql))
#1 /…/concrete5.4.0.5/concrete/libraries/3rdparty/adodb/adodb.inc.php(993): ADOConnection->_Execute('insert into Pag…')
#2 /…/updates/concrete5.4.0.5/concrete/libraries/3rdparty/adodb/adodb.inc.php(761): ADOConnection->Execute('insert into Pag…', Array)
#3 [internal function]: ADOConnection->Query('insert into Pag…', Array)
#4 /…/updates/concrete5.4.0.5/conc in /…/updates/concrete5.4.0.5/concrete/libraries/3rdparty/adodb/adodb-exceptions.inc.php on line 78

After checking the appropriate table (used for logging visits to your C5 page), I could not understand the error – there was no entry for key 300969, the last entry was 300968.

Here's a quick way to turn off page statistics, which will fix this error and bring your site back on: Put this line o'code in your config/site.php

define('STATISTICS_TRACK_PAGE_VIEWS', false);

In PHPMyAdmin there's the option to manually increase the auto_increment value. I increased it by one to 300970 and the site was working again, with statistics (comment the line you just inserted.)

There's a couple of pages out there, currently having this problem (searching with Google helps). I'm offering a low-cost watchdog service for Concrete5 sitesbe back up again before your visitors notice!

I know I stand in line until you think you have the time to spend an evening with me

Tuesday, June 8th, 2010

I'm worth 5 Mln €.

How come?

  • 50 € per hour
  • x 25 h per week average work time spent on the company
  • x 50 weeks per year (2 off)
  • x 80 years (being a little optimistic here)

= 5.000.000 €

OK. That's not much – I've expected more.

Here's my usual rant about earning: if I keep selling myself for less than these 50 € per hour I'll diminish even this pretty low amount (that's a whole life spent working, think about it!)

As a friend of mine, Korbinian, also pointed out: there's choices to make. I've got to decide between a (used) private jet, a nice villa or a private performance by Tina Turner. Having excluded Tina as nice, but having a poorer cost-benefit ratio than the other two, there's still tough decisions on the road ahead! Luckily there's things I have not at all the power to buy. These would include "For the Love of God" by Damien Hirst, most of the real yachts (one, the Princess Mariana, being sold at 87 Mln. € excluding VAT.), a Bugatti oldtimer (Bugatti Royal Kellner for 10 Mln. €), and many more. If you consider that I need to spend money on health insurance and technical gadgets, I even would not be able to afford such simple things as the "Double Eagle" for 7,59 Mln $ (assuming the price in Euro to be around 5 Mln. €.). Thus, I feel no pressure at all to decide.

A work in progress …

Lectora alternatives

Monday, June 7th, 2010

Here are a few competitors of Lectora: (also great sources of "how to design your page in an attractive manner)

http://www.adobe.com/products/captivate/

http://www.articulate.com/

http://www.atlantic-link.co.uk/

http://www.sumtotalsystems.com/products/toolbook-elearning-content.html

http://www.impatica.com/

http://www.flypaper.com/usingflypaper

http://www.geolearning.com/products/geomaestro/

http://www.mzinga.com/flashhome.asp

BugGenie

Sunday, June 6th, 2010

I'm currently looking at bug genie for use in the daily production environment. The software looks very nice, it's supposed to be even better in the upcoming 3.x series (I'm using 2.1).

I've found one little caveat: You should not use underscores "_" or points "." in prefixes of projects, you'll get errors when trying to access the bug reports. Use a letter instead, i.e. "104p2".