bloginfo('name');

bloginfo('description');

Archives Posts

Webkit got 87 points on ACID3-Test!

Februar 29th, 2008 by Blu:RayNe

It seems they wanna make it first. You could argue about that test and what the result really tells. But the way i see it, it’s a good effort to put in development to pass a one common test. You cannot miss much important features to pass this test!

Well, here are the my current results for the ACID3:

Browser Score System/Comments Screenshot
Firefox 3.0-b4nightly 67 Windows; Nightly built from 2008-03-05  
iCab 4.0.1 39 Mac OSX 10.5  
MSIE6 11 XPSP2-current;MSIE6 Developers VPC Image here
MSIE7 13 XPSP2-current;  
Opera 9.5 Build 4681 65   here
Safari 3.1 Beta 76 Mac OSX 10.5  
Safari 3b 39 Windows; early beta, or alpha?  
Safari/Webkit 86 Windows; r30707 built on 2008-02-27 here
Webkit 87 r30654 built on 2008-02-29  
Browser Score System/Comments Screenshot
Firefox 2.0.0.12 50 Ubuntu and Windows  
Epiphany 2.20.1 50 Ubuntu Gutsy; crashes  
Konqueror 3.5.8 - Ubuntu Gutsy; crashes  
MSIE6 4/11 XPSP2-current;MSIE6 Developers VPC Image here
MSIE7 12/13 XPSP2-current;  
Opera 9.26 46 Windows  
Konqueror 3.5.9 50 Ubuntu Feisty Fawn  
Safari 3.0.4 39 Mac OSX 10.4  
Safari 3.0.4 39    

UPDATE: Some more browser and seperation i

Filed under Browser having No Comments »

Archives Posts

WYSIWYG-Editors: They just don’t get it!

August 2nd, 2007 by Blu:RayNe

When will you guys finally learn to write good documents?! Yesterday the popular JavaScript framework Ext 1.1 was released, including finally a WYSIWYG web-editor:

If you don’t see what’s wrong about that editor, let me help you: Nowadays, when you write a document or an article, you got different headlines, different paragraph types that when properly used, automatically let’s you create a table of contents, like seen on Wikipedia articles or in OpenOffice.org OpenWriter (or Microsoft Word). You have also style sheets that automatically do the work of assigning different homogenous styles to your headlines throughout the document.

But here again i don’t see any combo-box for formats! Buttons like “make text bigger” or “make smaller” or “font-family” or “font-size” do not make any sense at all and only encourages bad formatting!

Recently i searched for an alternative blogging client, but i could not use any of them because most did not even have a „format“-field. All my beloved stylesheets assigned to lists and headings here would have be gone! But that’s exactly why they exist! Are you crazy not using them in your editors?

As it goes for having toolbar buttons, these are are absolutly sufficient: “Format” “Remove Format” | „Bold“ „Italic“ | “Unnumbered List” “Ordered List” “Intend” “De-Intent” |  “Add Link“ “Remove Link“ | “Text-Foreground” “Text-Background” | “Insert Table” „Insert Image“  should be enough for most users!

Filed under Allgemein, Browser, CSS having 3 Comments »

Archives Posts

Post-load your JavaScript and CSS files!

Juli 25th, 2007 by Blu:RayNe

If you look at todays web 2.0 sites you will realize there is often a heavy load on external JavaScript resources, CSS files and probably images. Above compressing and optimizing the files and merging multiple files (also background-images), there is not much room to further optimize the page loading process.

One problem of many modern sites is that they often provide optional functions for the user at the price of loading the main libraries all at once ending in a terrible site- and javascript-performance. I’ve already spoken about that once before and see more and more a good chance for web-applications based on Flex, or a real interface-language or perhaps Java. But we’re speaking about web-sites here not applications (anyway you could intermix them)!

Imagine a „passage-way“ or „pass-by“ page: How many of your users will use your “godly” fully featured search-window that you’ve implemented with Ext or the Prototype Window-Script and that runs inside the page? And what about  overall JS and CSS footprint about 150KB? Really needed? And oh, it’s the only part of the website you’re using these scripts.

Maybe one of ten users will use your “godly” feature. The others all have to load the site, the slow JavaScript and you will pay bandwidth.

So, why don’t you just simply load the parts of the site when you need them? AJAX – it’s all about that but still people are loading tons of libraries on every single site!?

As you might guessed i worked on such a script today. It works pretty well in Firefox and Opera (not yet Safari and fucking MSIE), and i still have to come up with some issues and heavy testing (especially on older browser that probably don’t wanna let their DOM injected JavaScript or CSS; so a good wrapper for <script> is necessary). I just wonder why no one didn’t come up with that idea and a working script before. It saves me about 120KB on a product page. And 50KB on other sites. Now that’s ok?!

Here’s a little preview of the alpha sourcecode

/**
 * Post-Load
 * @version 0.1a
 * @desc Why preload all your scripts? Dynamically them when they are needed!
 * @author Markus Geiger 2007
 * @package Postload
 * @license MIT
 * @url http://blog.evolution515.net
 */

PostloadJob = Class.create();
PostloadJob.prototype = {
    totalFiles: 0, // holds number of total file to load
    loadedFiles: 0, // holds number of loaded files
    completeHandler: null, // function executed on complete loading
    errorHandler: null, // function executed on error while loading
    initialize: function(input, completeHandler) {
        // Init the container for our files
        Postload.htmlContainer = $(‘postload’);
        if (!Postload.htmlContainer) {
            var elem = document.createElement(‘div’);
            elem.setAttribute(‘id’, ‘postload’);
            document.body.appendChild(elem);
            Postload.htmlContainer = $(‘postload’);
        }
        if (input)
            return this.load(input, completeHandler);
    },
    load: function(input, completeHandler) {

        if (completeHandler)
            this.completeHandler = completeHandler;

        if (typeof(input)==‘object’) {
            this.totalFiles = input.length;
        } else {
            input = [input];
            this.totalFiles = 1;
        }

        for (i=0;i<input.length;i++) {
            var filename = input[i];
            if (filename.indexOf(‘.js’)!=-1) {
                this.loadJS(filename);
            } else if (filename.indexOf(‘.css’)!=-1) {
                this.loadCSS(filename);
            } else {
                return false;
            }
        }

    },
    complete: function() {
        this.loadedFiles++;
        if (this.loadedFiles!=this.totalFiles)
            return;
        if (this.completeHandler)
            this.completeHandler();
    },
    loadJS: function(filename) {
        var elem = document.createElement(’script’);
        elem.setAttribute(’src’, filename);
        Event.observe(elem, ‘load’, this.complete.bindAsEventListener(this));
        Postload.htmlContainer.appendChild(elem);
    },
    loadCSS: function (filename) {
        new Ajax.Request(
            filename,
            {
                method: ‘get’,
                onSuccess: this.completeCSS.bindAsEventListener(this)
            }
        );
    },
    completeCSS: function(transport) {
        var elem = document.createElement(’style’);
        elem.setAttribute(‘type’, ‘text/css’);
        elem.innerHTML = transport.responseText;
        Postload.htmlContainer.appendChild(elem);
        this.complete();
    }
}

Postload = new Object();
Postload.htmlContainer = null;
Postload.allFiles = new Array();
Postload.require = function(input, completeHandler) {
    new PostloadJob(input, completeHandler);
}

Example usage

The syntax is very simple. Just use it like require from your PHP or Java language. The only difference is that it handles more than one file and calls a complete-handler when all files have finished loading. So chaining it into your applications should be very easy.

product._openComparisionWindow = function() {
    Postload.require(
        [
            ‘gz?lib/windows-js/javascripts/effects.js|lib/windows-js/javascripts/window.js’,
            ‘gz?lib/windows-js/themes/default.css|lib/windows-js/themes/alphacube.css’
        ],
        product.openComparisionWindow
    );}
Filed under Browser, CSS, JavaScript having No Comments »

Archives Posts

Safari in Deutschland: WebKit jetzt auch für Windows!

Juni 21st, 2007 by Blu:RayNe

Und wär hätte dran gedacht?

Seit Safari für Windows in der Beta-Phase ist, gibt es natürlich auch WebKit für Windows. D.h. also WebKit einfach runterladen, entpacken und nötigenfalls den Pfad zu Safari in der run-nightly-webkit.cmd anpassen. Damit läuft dann Safari auch endlich auf deutschen Windows-Rechnern und bringt auch gleich ein paar Patches mit.

Aber bitte dran denken, dass Safari noch im Alpha-Stadium ist (nein Apple, as ist keine Beta!), und es sich beim WebKit um Nightly Build handelt. WebKit-r23677 scheint jedenfalls heir auf meinem Arbeitsrechner stabil zu laufen und bis jetzt ließ sich jede Webpage problemlos ansurfen.

Trotzdem gibt es noch gelgentlich abstürze. Wie es sich mit Sicherheit verhält ist indes noch eine ganz andere Frage. Aber schließlich geht es ja beim Kunden hauptsächlich um Style. Ergo könnte Safari im Bundle mit iTunes, denn einen iPod hat ja (fast) jeder, tatsächlich den eher träger MSIE empfindlich angreifen.

Ach ja, einen WebInspector gibt es mittlerweile auch für WebKit, schon vor dem Start des Browsers. Microsoft hat dafür locker ein paar Jahre gebraucht um ein halb funktionales Tool für Entwickler auf den MArkt zu schemissen. Und ähnlich Firebug ist es auch noch – und natürlich stylischer á Apple *gähn*.

Filed under Allgemein, Browser having 2 Comments »

Archives Posts

Safari 3.0

Juni 13th, 2007 by Blu:RayNe

image

Ich wüßte es würde sich irgendwann lohnen auf ein englischsprachiges Windows zu behaaren. Jedenfalls merkte ich nichts davon, dass die Safari 3.0 Beta für Windows, seinen Dienst versagt hätte oder Überschriften ausblieben. Zwar gibt es hin und wieder kleinere Darstellungsfehler, aber was MSIE 7 abliefert ist teilweise noch sehr viel schlimmer.

Im Gegenteil: bis auf das, dass der Browser bei Klick auf Bookmarks abstürzte, bin ich absolut positiv beeindruckt.  Auch die extjs.org-Demos zeigte er wunderbar an.

Safari 3.0 Beta:

  • Super JavaScript Performance
  • Schnelle Seitendarstellung
  • einfache Bedienugung, trotzdem feature-rich
  • aktuelle Technologie und Web-Standards
    (SVG, XHTML/Strict, RSS, …)
  • sehr weiche Animation
    (auf das hat Apple wohl auch optimiert ;)

imageTrotzdem gibt es noch wenige Probleme:

 Beim Font Smoothing darf Apple auch irgendwann mal das Subpixel-Hintung verbessern. Freetype und Microsoft Cleartype kriegen das mittlerweile besser hin. Und weil wir schon dabei sind, bitte auch „text-weight:bold“ nicht zu fett anzeigen!

Trotzdem ist in der Darstellung auch der große Vorteil von Safari: durch ein homogenes Bild verschwinden die Grenzen zwischen Flash und XHTML/Ajax.

Und was Apple total versaute:

Die Beta auch mal auf nicht englischsprachigen System zu testen, und auch wirklich auf Stabilität zu testen. Die Hacker und internationale Presse freut sich darüber, und die DAU-Trolls auch, den sind Kommentare wie „bei den Darstellungsfehlern, kann ich ja gleich wieder den MSIE nehmen!“ nicht selten.

„Der schnellste Browser“ tituliert Apple, und ich muss sagen, die Performance von WebKit in Adobe Air (vormals Apollo), sowie auch von dem Windows-Webkit Browser Swift 0.2 ist definitv besser. Trotzdem fällt auf, dass der Browser einen sehr schnellen Cache besitzt – bei einer hohen Speicherauslastung von über 100MB bei der Google-Startseite :X

Trotzem, es ist ne Beta. Oder sollte ich lieber sagen Alpha, denn so verhält sich der Browser noch. Sollte Apple die Abstürze und die Sicherheitslücken nicht in den Griff bekommen tun sie sich bestimmt schwer auf Windows gegen Firefox oder Opera zu konkurrieren (wir sprechen hier von Technik, nicht von Browseranteilen!). Für Oktober merke ich mir jedenfalls eine Version vor, die sich wie eine Beta verhält und noch viele Sicherheitslücken beinhalten wird…

Mozilla/5.0 (Windows; U; Windows NT 5.1; de) AppleWebKit/522.11.3
(KHTML, like Gecko) Version/3.0 Safari/522.11.3

Archives Posts

Mai 10th, 2007 by Blu:RayNe

Das wurde einem Lokalisierungsbüro zur Übersetzung geliefert:

Sollten die Buttons kein deutschen Titel besitzen, wenden Sie sich bitte an <a href="\"%1\"">Microsoft</a>, <!– die wieder mal keine Standards unterstützen und sich für Kundenbelange nicht interressieren –> da der Fehler im Internet Explorer liegt.

Hatten sicherlich Spaß, da sich auf der Website noch mehr solche „versteckten Wahrheiten“ befinden. Ich hätte nur zu gern Ihre Gesichter gesehen ;)

Filed under Internet Explorer having No Comments »

Archives Posts

iMacros - Browser-Automation gefällig?

Mai 10th, 2007 by Blu:RayNe

Bei iMacros handelt es sich um einen Macro-Recorder für immer wieder kehrende Dinge im Browser, wie Bestell- oder Registrierungens-Abläufe testen, Hochladen von Dateien mit automatischem Login usw.

Das Programm läuft unter Firefox sehr gut, wenn auch noch beta. Die Firefox-Extension sollte wohl weiterhin kostenlos bleiben, die andere Version für einen schlechten Browser eines großen multinationalen Konzerns kostet seinen Preis von $39 oder $69 – da sie nun mal sehr viel aufwändiger ist zu programmieren ;)

Das Ding erleichtert immer wieder kehrende Aufgaben jedenfalls doch sehr.

Archives Posts

Hat Ihr Browser einen Undo-Button?

April 26th, 2007 by Blu:RayNe

Ärgern Sie sich ständig, dass Sie versehentlich eine Webpage „schließen“? Tja, dann benutzen Sie wohl immer noch den Microsoft Internet Explorer. Zeit zu wechseln (u.a. auch wenn Sicherheit bei Ihnen ein Thema sein sollte)!

Hier gibt’s Alternativen:

Archives Posts

Benenn mir meine Buttons!

November 29th, 2006 by Blu:RayNe
<button type="submit" id="applyButton" name="submitType" value="apply">
     &Uuml;bernehmen
</button>
<button type="submit" id="continueButton" name="submitType" value="continue">
     Weiter
</button>

Und was wird im MSIE 7 dargestellt? Richtig! Nämlich apply und continue. Außerdem wird jedes Elements, das innerhalb des Buttons platziert wird einfach ins Nirvana katapultiert - die Elemente sind schlichtweg nicht mehr existent!

Andere Browser machen es wie immer richtig.

Archives Posts

MSIE 6.0 kennt Element.getAttribute() plötzlich nur noch als „unknown?

November 10th, 2006 by Blu:RayNe

…aber komischerweise als existent, denn die Funktion lässt sich ausführen. Firefox liefert hingegen, wie der Rest der Browserwelt, als typeof() ein „function“ zurück. Das alles geschehen im Parsing der Gallerieseiten-XML auf http://www.ZENSIERT.de.

Filed under Internet Explorer having No Comments »

« Previous Entries