Die Pest - philosophische Betrachtungen zur Webentwicklung

Jens Grochtdreis
Jens GrochtdreisFrontend Developer at my own company (Freelancer)
Die Pest
philosophische Betrachtungen zur Webentwicklung

               Jens Grochtdreis
Jens Grochtdreis
‣ Frontendentwickler
‣ 10 Jahre Agenturerfahrung
‣ 11 Jahre Arbeit im und fürs Web
‣ Gründer der Webkrauts
‣ Blogger
‣ Autor des PHPMagazins, PHPUser,
 Webstandards-Magazins, T3N
‣ Fachliche Buchbetreuung bei Galileo, O'Reilly, MuT
Die Pest?
Sisyphos




http://www.cartooncommerz.de/aussteller/sisyphos.jpg
Sisyphosarbeit

‣ Aufgaben, die trotz größter Mühe so gut wie nie
  beendet werden können, nennen wir Sisyphosarbeit.
 ‣ Ursprung: griechische Mythologie
‣ Bei Camus: „ständige Revolte gegen die Sinnlosigkeit
  der Welt“
Und was hat das mit dem
     Web zu tun?
Funktioniert das
auch im IE?
Bremsfaktor IE
Der IE ist der schwarz-weiss
    Fernseher des Web
           IE bis Version 8                    moderne Browser




http://home.snafu.de/wumpus/rdfmu46.jpg   http://www.home-cinema-news.de/bilder/news/d_000474_01_de.jpg
IE ≠ modern




http://css3generator.com/
http://www.findmebyip.com/litmus/#target-selector
Abteilung:
So lüge ich mit Statistik
Der IE6 stirbt nicht!




http://snipurl.com/vzokk
Der IE6 stirbt nicht!
‣ Webhits.de, 4. Mai 2010

‣ IE insges.: 63%
‣ IE6: 38,8%

‣ Firefox: 30,5%

‣ Safari: 3,4%
‣ Opera: 1,1%
‣ Chrome: 0,5%
Webhits 11.April 2010




Webmasterpro 11.April 2010
Auf einmal nur 5%?




http://mashable.com/2010/06/01/ie6-below-5-percent/
Vermutung
Vermutung

‣ Nach 2001 entstanden viele Intranet-Applikationen, die
  genau auf den IE6 zugeschnitten wurden.
‣ Man hatte vielleicht den Eindruck, die technische
  Entwicklung höre auf.
‣ Microsoft befeuert dieses Missverständnis mit der
  Garantie sehr langer Supportmodelle.
Das Internet ist zu
dynamisch für langlebige
      Software!
Der Fortschritt richtet sich
 nach dem Langsamsten
wegen dessen Verbreitung.
Die Pest - philosophische Betrachtungen zur Webentwicklung
self-fullfilling prophecy
               Die sich selbsterfüllende
               Prophezeiung ist eine
               Vorhersage, die sich deshalb
               erfüllt, weil sich der
               Vorhersagende, meist
               unbewusst, so verhält, dass
               sie sich erfüllen muss.




http://de.wikipedia.org/wiki/Selbsterf%C3%BCllende_Prophezeiung   http://blogs.sitepointstatic.com/images/tech/121-ie6-mod-orange.jpg
Wen interessieren Browser?



http://www.flickr.com/photos/fmg2001/679774853/sizes/o/
Nur Entwickler!
Wen interessieren Browser?




http://www.flickr.com/photos/fmg2001/679774853/sizes/o/
„Hell is other browsers!“
                  Peter-Paul Koch (@ppk)




   „Die Hölle, das sind die anderen“
                               J.P. Sartre
Nur wer vergleicht, kann
Unterschiede entdecken
http://stuffandnonsense.co.uk/
Ein normaler Konsument
  vergleicht aber keine
 Browserdarstellungen.
Und gehst Du zum Browser,
 vergiss die Peitsche nicht.
             In Anlehnung an F. Nietzsche
Feindliche Umgebung




http://www.gtalbot.org/BrowserBugsSection/
http://www.findmebyip.com/litmus/#target-selector
Ich weiss, daß ich
  nicht(s) weiss!
   Sokrates (durch Platon)
http://goo.gl/XV2n   http://goo.gl/hl0f
Screenshot von einem EeePC, 800x480px
Unsicherheiten
‣ Endgeräte                  ‣ Browser
  ‣ PC, Notebook               ‣ Browserversionen
  ‣ Handy, PDA                 ‣ Indiv. Konfiguration
  ‣ Spielkonsole             ‣ Monitorauflösungen
  ‣ TV                       ‣ Umgebungslicht
  ‣ Assistive Technologien   ‣ mobiler Zugriff
                             ‣ Zugriffsgeschwindigkeit (DSL?)
‣ Betriebssysteme            ‣ existieren Plugins?
                             ‣ Javascript an oder aus?
Flexibilität ist wichtig
‣ Wir können nicht mehr sicher vorhersagen, wie
 jemand unsere Seite sieht/liest.
‣ Deshalb: einen für möglichst viele gangbaren Weg
 beschreiten
‣ Erst der Inhalt, dann das Layout!
‣ Der Inhalt ist das Wichtigste!
Um der Flexibilität gerecht zu
werden und zukunftsfähig zu sein,
 müssen wir ein neues Denken
         entwickeln.
Unser Layout ist nur eine
      Empfehlung!
Wenn einige Browserhersteller der
     technischen Entwicklung
 hinterherhinken sollte das nicht
       unser Problem sein.
Moderne Layouts für den IE
    haben KOSTEN!
Kosten

‣ Zeit für Recherche, Tests und Implementierung
‣ Nicht jede Lösung taugt für jeden Anwendungsfall
‣ Zusätzliches HTML und Bilder erschweren die
  Wartung, Pflege und Anpassung
Runde Ecken




http://grochtdreis.de/
Zwei Welten:
IE und moderne Browser
Runde Ecken




http://www.cssjuice.com/25-rounded-corners-techniques-with-css/
Runde Ecken - The ThrashBox
                                            <div class="sidebox">
                                                <div class="boxhead"><h2>Test Headline</h2></div>
                                                <div class="boxbody">
                                                    <p>This is a short sample paragraph.</p>
                                                    <p>And another one.</p>
                                                </div>
                                            </div>


                                            .sidebox {
                                                background:   url(sbbody-r.gif) no-repeat bottom right;
                                                }
                                            .boxhead {
                                                background:   url(sbhead-r.gif) no-repeat top right;
                                                }
                                            .boxhead h2 {
                                                background:   url(sbhead-l.gif) no-repeat top left;
                                                }
                                            .boxbody {
                                                background:   url(sbbody-l.gif) no-repeat bottom left;
                                                }




http://www.vertexwerks.com/tests/sidebox/
Runde Ecken - The ThrashBox



                              <div class="sidebox">
                                  <div class="boxhead"><h2>Test Headline</h2></div>
                                  <div class="boxbody">
                                      <p>This is a short sample paragraph.</p>
                                      <p>And another one.</p>
                                  </div>
                              </div>




http://www.vertexwerks.com/tests/sidebox/
Wartungshölle

‣ Für jede Farbe eine eigene Grafik (auch für
  hover bei Links!)
‣ Runde Ecken auf Verläufen oder Transparenzen
  sind ganz übel als Grafik
‣ Jede Änderung und Anpassung geschieht in
  Photoshop/Fireworks
‣ Viele Requests
‣ Keine Skalierung
Runde Ecken für moderne
          Browser
.box {
    border: 2px solid #eee;
    border-radius: 0.6em;
    -moz-border-radius: 0.6em;
    -webkit-border-radius: 0.6em;
  }

/* Ohne die folgende Zeile ragen die Ecken der Überschrift aus der Box raus.
     Der gleiche Radius darf es auch nicht sein, sonst entsteht eine Lücke.
     Es scheint immer die Hälfte sein zu müssen.
*/
.box h3 {
     border-top-left-radius: 0.3em;
     border-top-right-radius: 0.3em;
     -moz-border-radius-topleft: 0.3em;
     -moz-border-radius-topright: 0.3em;
     -webkit-border-top-left-radius: 0.3em;
     -webkit-border-top-right-radius: 0.3em;
   }
Rom, die Frisur hält
‣ Auch für Bilder!
‣ Auch auf Verläufen!
‣ Auch in em oder %!



‣ Schatten für Bilder

‣ maximale Flexibilität!
Bei der Geburt getrennt




  FF 3.5 Win     IE 8
Noch einmal: die „Kosten“

‣ 4 Bilder
 ‣ Farbänderungen, Anpassungen evtl. Schatten
 ‣ Anpassung der Rundungen
‣ mind. 1 zusätzlicher Request
 ‣ wie groß muss das Sprite werden, wenn die Seite
   flexibel sein soll?
Müssen Webseiten überall
                gleich aussehen?




http://dowebsitesneedtolookexactlythesameineverybrowser.com/
Kosten von Layoutwünschen
Wir denken in traditionellen
 Analogien für eine neue
       Umgebung.
Gleich hohe Boxen




http://grochtdreis.de/
Mit einer Tabelle kein
      Problem!
Ohne Layouttabellen

‣ Die Elemente einer Seite haben keine
  Beziehung zueinander, es sei denn, es sind
  Kindelemente!
 ‣ Die eine Box bekommt nichts von der Höhe
   der anderen mit.
 ‣ Javascript ist ein sicheres Hilfsmittel.
 ‣ Rate mal, wer display: table nicht kennt!
Gleich hohe Boxen
<!-- start: 3*33% Subcolumns -->
<h2>Aus meinem Weblog</h2>
<div id="teaser" class="subcolumns">
   <div class="c33l">
     <div class="subcl equalise eins">
        <h3><a href="toller-link.html">Überschrift</a></h3>
        <p>Kurzbeschreibung bzw. Anriss des Inhalts</p>
        <p class="weiter"><a href="#">Den ganzen Artikel lesen.</a></p>
     </div>
   </div>
   <div class="c33l">
     <div class="subc equalise zwei">
        <!-- wie oben -->
     </div>
   </div>
   <div class="c33r">
     <div class="subcr equalise drei">
        <!-- wie oben -->
     </div>
   </div>
</div>
<!-- end: 3*33% Subcolumns -->
Das DOM

                   div#teaser.subcolumns

                div.c33l    div.c33l   div.c33r

                div.subcl   div.subc   div.subcr

h3 p p.weiter          h3 p p.weiter          h3 p p.weiter
Gleich hohe Boxen
         für moderne Browser und IE ab Version 8
  moderne Browser
                 .equalize > div {       .equalize, .equalize .subcolumns {
                   display:table-cell;      overflow:visible;
                   float:none;              display:table;
                   margin:0;                table-layout:fixed;
                   overflow:hidden;         }
                   vertical-align:top;
      IE6 und 7  }




http://yaml.de                            http://www.positioniseverything.net/articles/onetruelayout/equalheight
Gleich hohe Boxen
                                     für IE bis Version 7
  moderne Browser
/* Fix for:"Linking to anchors in elements within the containing block" Problem in IE5.x & IE 6.0 */
  * html .equalize, * html .equalize .subcolumns { overflow:visible; display:block; }
  .equalize, .equalize .subcolumns { overflow:hidden; display:block; }

/* transform CSS tables back into floats */
  .equalize .c20l,.equalize .c40l,.equalize .c60l,.equalize   .c80l,

      IE6 und 7
  .equalize .c25l,.equalize .c33l,.equalize .c38l,.equalize
  .equalize .c62l,.equalize .c66l,.equalize .c75l {
                                                              .c50l,

    float:left; display:inline;
    padding-bottom:32767px;
    margin-bottom:-32767px;
  }
  .equalize .c20r,.equalize .c40r,.equalize .c60r,.equalize   .c80r,
  .equalize .c25r,.equalize .c33r,.equalize .c38r,.equalize   .c50r,
  .equalize .c62r,.equalize .c66r,.equalize .c75r {
    float:right; margin-left:-5px; display:inline;
    padding-bottom:32767px;
    margin-bottom:-32767px;
  }




http://yaml.de                                     http://www.positioniseverything.net/articles/onetruelayout/equalheight
Gleich hohe Boxen

                                                                  unproblematisch




                                                                  problematisch



http://www.yaml.de/de/dokumentation/anwendung/subtemplates.html
Problematisch: Semantik

                ‣ zwei komplett getrennte
                 Containerblöcke.
                ‣ Kein inhaltlicher
                 Zusammenhang.
                ‣ Schlecht für
                 Screenreader und
                 Suchmaschinen.
Problemfall unterer Rand

‣ Für den IE bis Version 7 kommt ein großer
  Innenabstand mit gleichgroßem negativem
  Aussenabstand zum Einsatz.
‣ Dadurch ist eine untere Linie unmöglich!
Gut: in Alternativen denken!
Die Pest - philosophische Betrachtungen zur Webentwicklung
Die Pest - philosophische Betrachtungen zur Webentwicklung
Die Pest - philosophische Betrachtungen zur Webentwicklung
Die Pest - philosophische Betrachtungen zur Webentwicklung
Flexibilität ist Stärke



                Die Flexibilität des Internet ist seine Stärke.
                     Akzeptiert es! Macht Euch locker!




http://snipurl.com/2c1yl
Jens Grochtdreis
                                                      http://grochtdreis.de
                                                    http://twitter.com/Flocke
                                                       http://webkrauts.de




Diese Präsentation steht unter
der Creative Commons Lizenz
„Attribution-ShareAlike 2.0“
http://creativecommons.org/licenses/by-sa/2.0/de/
1 of 72

Recommended

Echte Lösungen, keine Tricks by
Echte Lösungen, keine TricksEchte Lösungen, keine Tricks
Echte Lösungen, keine TricksJens Grochtdreis
3.3K views99 slides
Am Ende ist doch alles HTML (Jax 2010) by
Am Ende ist doch alles HTML (Jax 2010)Am Ende ist doch alles HTML (Jax 2010)
Am Ende ist doch alles HTML (Jax 2010)Jens Grochtdreis
941 views61 slides
Am Ende ist doch alles HTML (Uni Mainz) by
Am Ende ist doch alles HTML (Uni Mainz)Am Ende ist doch alles HTML (Uni Mainz)
Am Ende ist doch alles HTML (Uni Mainz)Jens Grochtdreis
2K views78 slides
Frontend Best Practices by
Frontend Best PracticesFrontend Best Practices
Frontend Best PracticesJens Grochtdreis
1.1K views98 slides
Websemantik: Die nächsten Schritte by
Websemantik: Die nächsten SchritteWebsemantik: Die nächsten Schritte
Websemantik: Die nächsten SchritteMichael Jendryschik
1.3K views83 slides
HTML5-Legacy-Anwendungen by
HTML5-Legacy-AnwendungenHTML5-Legacy-Anwendungen
HTML5-Legacy-AnwendungenJonathan Weiß
907 views68 slides

More Related Content

What's hot

Javascript done right by
Javascript done rightJavascript done right
Javascript done rightDirk Ginader
18.3K views49 slides
Best practices im Frontend -Barcamp Mainz 2011 by
Best practices im Frontend -Barcamp Mainz 2011Best practices im Frontend -Barcamp Mainz 2011
Best practices im Frontend -Barcamp Mainz 2011Jens Grochtdreis
961 views62 slides
HTML5 - presentation at W3C-Tag 2009 by
HTML5 - presentation at W3C-Tag 2009HTML5 - presentation at W3C-Tag 2009
HTML5 - presentation at W3C-Tag 2009Felix Sasaki
718 views38 slides
Nutze die Macht @ IKT-Forum 09 Linz by
Nutze die Macht @ IKT-Forum 09 LinzNutze die Macht @ IKT-Forum 09 Linz
Nutze die Macht @ IKT-Forum 09 LinzEric Eggert
1.8K views76 slides
Von Dinosauriern, Bienen und Wespen by
Von Dinosauriern, Bienen und WespenVon Dinosauriern, Bienen und Wespen
Von Dinosauriern, Bienen und WespenTomas Caspers
1.3K views74 slides
Am Ende ist doch alles HTML - 2012 - Webmontag Edition by
Am Ende ist doch alles HTML - 2012 - Webmontag EditionAm Ende ist doch alles HTML - 2012 - Webmontag Edition
Am Ende ist doch alles HTML - 2012 - Webmontag EditionJens Grochtdreis
1.4K views42 slides

What's hot(16)

Javascript done right by Dirk Ginader
Javascript done rightJavascript done right
Javascript done right
Dirk Ginader18.3K views
Best practices im Frontend -Barcamp Mainz 2011 by Jens Grochtdreis
Best practices im Frontend -Barcamp Mainz 2011Best practices im Frontend -Barcamp Mainz 2011
Best practices im Frontend -Barcamp Mainz 2011
Jens Grochtdreis961 views
HTML5 - presentation at W3C-Tag 2009 by Felix Sasaki
HTML5 - presentation at W3C-Tag 2009HTML5 - presentation at W3C-Tag 2009
HTML5 - presentation at W3C-Tag 2009
Felix Sasaki718 views
Nutze die Macht @ IKT-Forum 09 Linz by Eric Eggert
Nutze die Macht @ IKT-Forum 09 LinzNutze die Macht @ IKT-Forum 09 Linz
Nutze die Macht @ IKT-Forum 09 Linz
Eric Eggert1.8K views
Von Dinosauriern, Bienen und Wespen by Tomas Caspers
Von Dinosauriern, Bienen und WespenVon Dinosauriern, Bienen und Wespen
Von Dinosauriern, Bienen und Wespen
Tomas Caspers1.3K views
Am Ende ist doch alles HTML - 2012 - Webmontag Edition by Jens Grochtdreis
Am Ende ist doch alles HTML - 2012 - Webmontag EditionAm Ende ist doch alles HTML - 2012 - Webmontag Edition
Am Ende ist doch alles HTML - 2012 - Webmontag Edition
Jens Grochtdreis1.4K views
Aspekte Moderner Frontendentwicklung by Jens Grochtdreis
Aspekte Moderner FrontendentwicklungAspekte Moderner Frontendentwicklung
Aspekte Moderner Frontendentwicklung
Jens Grochtdreis1.3K views
Flash cs3, ajax und php by sameerpclab1
Flash cs3, ajax und phpFlash cs3, ajax und php
Flash cs3, ajax und php
sameerpclab1973 views
Javascript auf Client und Server mit node.js - webtech 2010 by Dirk Ginader
Javascript auf Client und Server mit node.js - webtech 2010Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010
Dirk Ginader20.5K views
The Future is now! Flexbox und fancy Stuff im Responsive Webdesign by Peter Rozek
The Future is now! Flexbox und fancy Stuff im Responsive WebdesignThe Future is now! Flexbox und fancy Stuff im Responsive Webdesign
The Future is now! Flexbox und fancy Stuff im Responsive Webdesign
Peter Rozek941 views
Das Web zum Mitmachen: Barrieren in der Praxis by Tomas Caspers
Das Web zum Mitmachen: Barrieren in der PraxisDas Web zum Mitmachen: Barrieren in der Praxis
Das Web zum Mitmachen: Barrieren in der Praxis
Tomas Caspers2K views
Flash, Ajax & Barrierefreiheit by Tomas Caspers
Flash, Ajax & BarrierefreiheitFlash, Ajax & Barrierefreiheit
Flash, Ajax & Barrierefreiheit
Tomas Caspers1K views
PhpStorm 6 Configuration for TYPO3 by marco-huber
PhpStorm 6 Configuration for TYPO3PhpStorm 6 Configuration for TYPO3
PhpStorm 6 Configuration for TYPO3
marco-huber3.1K views
Schematron für Technische Redakteure by Stefan Krause
Schematron für Technische RedakteureSchematron für Technische Redakteure
Schematron für Technische Redakteure
Stefan Krause1.2K views

Viewers also liked

Pest Referat by
Pest ReferatPest Referat
Pest ReferatFreieReferate
19.8K views11 slides
Yersinia pestis ..... by
Yersinia pestis .....Yersinia pestis .....
Yersinia pestis .....Adeloyeaderinsola
14.7K views22 slides
Yersinia Pestis by
Yersinia PestisYersinia Pestis
Yersinia Pestisdresmiles
13.6K views16 slides
Hintergrund der Pestwallfahrten by
Hintergrund der PestwallfahrtenHintergrund der Pestwallfahrten
Hintergrund der PestwallfahrtenKolomann
5.1K views23 slides
Yersinia by
YersiniaYersinia
YersiniaMaría A. Pulgar
18.9K views8 slides
Die Bank als Plattform oder was von Banken über bleibt by
Die Bank als Plattform oder was von Banken über bleibtDie Bank als Plattform oder was von Banken über bleibt
Die Bank als Plattform oder was von Banken über bleibtfigo GmbH
2.4K views40 slides

Viewers also liked(8)

Yersinia Pestis by dresmiles
Yersinia PestisYersinia Pestis
Yersinia Pestis
dresmiles13.6K views
Hintergrund der Pestwallfahrten by Kolomann
Hintergrund der PestwallfahrtenHintergrund der Pestwallfahrten
Hintergrund der Pestwallfahrten
Kolomann5.1K views
Die Bank als Plattform oder was von Banken über bleibt by figo GmbH
Die Bank als Plattform oder was von Banken über bleibtDie Bank als Plattform oder was von Banken über bleibt
Die Bank als Plattform oder was von Banken über bleibt
figo GmbH 2.4K views
Der Wald zeigt, ob die Jagd stimmt by oejvrlp
Der Wald zeigt, ob die Jagd stimmtDer Wald zeigt, ob die Jagd stimmt
Der Wald zeigt, ob die Jagd stimmt
oejvrlp1.5K views

Similar to Die Pest - philosophische Betrachtungen zur Webentwicklung

Aktuelle Webtechnologien - HTML5, CSS3 und mehr by
Aktuelle Webtechnologien - HTML5, CSS3 und mehrAktuelle Webtechnologien - HTML5, CSS3 und mehr
Aktuelle Webtechnologien - HTML5, CSS3 und mehrYves Hoppe
890 views113 slides
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps by
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-AppsAber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-AppsGregor Biswanger
1.4K views92 slides
Ruby on Rails SS09 06 by
Ruby on Rails SS09 06Ruby on Rails SS09 06
Ruby on Rails SS09 06Daniel Dengler
413 views49 slides
Einführung in YAML4 by
Einführung in YAML4Einführung in YAML4
Einführung in YAML4Jens Grochtdreis
2.8K views62 slides
Knockin' on heaven's door - Die Praxis zu Besuch beim W3C by
Knockin' on heaven's door - Die Praxis zu Besuch beim W3CKnockin' on heaven's door - Die Praxis zu Besuch beim W3C
Knockin' on heaven's door - Die Praxis zu Besuch beim W3CJens Grochtdreis
1.9K views76 slides
Von Dinosauriern, Bienen und Wespen by
Von Dinosauriern, Bienen und WespenVon Dinosauriern, Bienen und Wespen
Von Dinosauriern, Bienen und WespenJens Grochtdreis
750 views74 slides

Similar to Die Pest - philosophische Betrachtungen zur Webentwicklung(20)

Aktuelle Webtechnologien - HTML5, CSS3 und mehr by Yves Hoppe
Aktuelle Webtechnologien - HTML5, CSS3 und mehrAktuelle Webtechnologien - HTML5, CSS3 und mehr
Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Yves Hoppe890 views
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps by Gregor Biswanger
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-AppsAber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps
Gregor Biswanger1.4K views
Knockin' on heaven's door - Die Praxis zu Besuch beim W3C by Jens Grochtdreis
Knockin' on heaven's door - Die Praxis zu Besuch beim W3CKnockin' on heaven's door - Die Praxis zu Besuch beim W3C
Knockin' on heaven's door - Die Praxis zu Besuch beim W3C
Jens Grochtdreis1.9K views
HTML5 und node.js Grundlagen by Mayflower GmbH
HTML5 und node.js GrundlagenHTML5 und node.js Grundlagen
HTML5 und node.js Grundlagen
Mayflower GmbH1.7K views
Site Speed EXTREME - SEOkomm 2014 by Bastian Grimm
Site Speed EXTREME - SEOkomm 2014Site Speed EXTREME - SEOkomm 2014
Site Speed EXTREME - SEOkomm 2014
Bastian Grimm15.9K views
PHP Sucks?! by ICANS GmbH
PHP Sucks?!PHP Sucks?!
PHP Sucks?!
ICANS GmbH5.9K views
Wir brauchen einen neuen Workflow by Jens Grochtdreis
Wir brauchen einen neuen WorkflowWir brauchen einen neuen Workflow
Wir brauchen einen neuen Workflow
Jens Grochtdreis1.5K views
Layout Frameworks im professionellen Webdesign by djesse
Layout Frameworks im professionellen WebdesignLayout Frameworks im professionellen Webdesign
Layout Frameworks im professionellen Webdesign
djesse3K views
Was nicht passt wird responsive gemacht - Extended Edition by Christoph Reinartz
Was nicht passt wird responsive gemacht - Extended EditionWas nicht passt wird responsive gemacht - Extended Edition
Was nicht passt wird responsive gemacht - Extended Edition
Christoph Reinartz4.3K views
HTML5 im Überblick - semantisches HTML, Geolocation, Offline-Webanwendungen, ... by Karionis
HTML5 im Überblick - semantisches HTML, Geolocation, Offline-Webanwendungen, ...HTML5 im Überblick - semantisches HTML, Geolocation, Offline-Webanwendungen, ...
HTML5 im Überblick - semantisches HTML, Geolocation, Offline-Webanwendungen, ...
Karionis2.1K views
WebTech 2009: Best Practices in JavaScript und CSS (kommentiert) by Nicolai Schwarz
WebTech 2009: Best Practices in JavaScript und CSS (kommentiert)WebTech 2009: Best Practices in JavaScript und CSS (kommentiert)
WebTech 2009: Best Practices in JavaScript und CSS (kommentiert)
Nicolai Schwarz2K views
The Future is now! Flexbox und fancy Stuff im Responsive Webdesign by Peter Rozek
The Future is now! Flexbox und fancy Stuff im Responsive WebdesignThe Future is now! Flexbox und fancy Stuff im Responsive Webdesign
The Future is now! Flexbox und fancy Stuff im Responsive Webdesign
Peter Rozek1.4K views
PHP, AJAX und XUL im Intranet by Markus Wolff
PHP, AJAX und XUL im IntranetPHP, AJAX und XUL im Intranet
PHP, AJAX und XUL im Intranet
Markus Wolff406 views
Schöneres Web mit HTML5 + CSS3 by ginettateam
Schöneres Web mit HTML5 + CSS3Schöneres Web mit HTML5 + CSS3
Schöneres Web mit HTML5 + CSS3
ginettateam219 views

More from Jens Grochtdreis

Modularisierung von Webseiten by
Modularisierung von WebseitenModularisierung von Webseiten
Modularisierung von WebseitenJens Grochtdreis
1.6K views69 slides
Rapid Prototyping mit YAML4 by
Rapid Prototyping mit YAML4Rapid Prototyping mit YAML4
Rapid Prototyping mit YAML4Jens Grochtdreis
966 views71 slides
Modularisierung von Webseiten by
Modularisierung von WebseitenModularisierung von Webseiten
Modularisierung von WebseitenJens Grochtdreis
1.7K views69 slides
A Period of Transition by
A Period of TransitionA Period of Transition
A Period of TransitionJens Grochtdreis
2.7K views56 slides
Real solutions, no tricks by
Real solutions, no tricksReal solutions, no tricks
Real solutions, no tricksJens Grochtdreis
1K views98 slides
Einfuehrung in YAML (2010) by
Einfuehrung in YAML (2010)Einfuehrung in YAML (2010)
Einfuehrung in YAML (2010)Jens Grochtdreis
831 views44 slides

More from Jens Grochtdreis(16)

A Tag 2009 - Aspekte Moderne Webentwicklung by Jens Grochtdreis
A Tag 2009 -  Aspekte Moderne WebentwicklungA Tag 2009 -  Aspekte Moderne Webentwicklung
A Tag 2009 - Aspekte Moderne Webentwicklung
Jens Grochtdreis1.1K views
Gute Seiten, Schlechte Seiten - Webmontag Edition by Jens Grochtdreis
Gute Seiten, Schlechte Seiten -  Webmontag EditionGute Seiten, Schlechte Seiten -  Webmontag Edition
Gute Seiten, Schlechte Seiten - Webmontag Edition
Jens Grochtdreis1.6K views

Die Pest - philosophische Betrachtungen zur Webentwicklung

  • 1. Die Pest philosophische Betrachtungen zur Webentwicklung Jens Grochtdreis
  • 2. Jens Grochtdreis ‣ Frontendentwickler ‣ 10 Jahre Agenturerfahrung ‣ 11 Jahre Arbeit im und fürs Web ‣ Gründer der Webkrauts ‣ Blogger ‣ Autor des PHPMagazins, PHPUser, Webstandards-Magazins, T3N ‣ Fachliche Buchbetreuung bei Galileo, O'Reilly, MuT
  • 5. Sisyphosarbeit ‣ Aufgaben, die trotz größter Mühe so gut wie nie beendet werden können, nennen wir Sisyphosarbeit. ‣ Ursprung: griechische Mythologie ‣ Bei Camus: „ständige Revolte gegen die Sinnlosigkeit der Welt“
  • 6. Und was hat das mit dem Web zu tun?
  • 9. Der IE ist der schwarz-weiss Fernseher des Web IE bis Version 8 moderne Browser http://home.snafu.de/wumpus/rdfmu46.jpg http://www.home-cinema-news.de/bilder/news/d_000474_01_de.jpg
  • 12. Abteilung: So lüge ich mit Statistik
  • 13. Der IE6 stirbt nicht! http://snipurl.com/vzokk
  • 14. Der IE6 stirbt nicht! ‣ Webhits.de, 4. Mai 2010 ‣ IE insges.: 63% ‣ IE6: 38,8% ‣ Firefox: 30,5% ‣ Safari: 3,4% ‣ Opera: 1,1% ‣ Chrome: 0,5%
  • 16. Auf einmal nur 5%? http://mashable.com/2010/06/01/ie6-below-5-percent/
  • 18. Vermutung ‣ Nach 2001 entstanden viele Intranet-Applikationen, die genau auf den IE6 zugeschnitten wurden. ‣ Man hatte vielleicht den Eindruck, die technische Entwicklung höre auf. ‣ Microsoft befeuert dieses Missverständnis mit der Garantie sehr langer Supportmodelle.
  • 19. Das Internet ist zu dynamisch für langlebige Software!
  • 20. Der Fortschritt richtet sich nach dem Langsamsten wegen dessen Verbreitung.
  • 22. self-fullfilling prophecy Die sich selbsterfüllende Prophezeiung ist eine Vorhersage, die sich deshalb erfüllt, weil sich der Vorhersagende, meist unbewusst, so verhält, dass sie sich erfüllen muss. http://de.wikipedia.org/wiki/Selbsterf%C3%BCllende_Prophezeiung http://blogs.sitepointstatic.com/images/tech/121-ie6-mod-orange.jpg
  • 26. „Hell is other browsers!“ Peter-Paul Koch (@ppk) „Die Hölle, das sind die anderen“ J.P. Sartre
  • 27. Nur wer vergleicht, kann Unterschiede entdecken
  • 29. Ein normaler Konsument vergleicht aber keine Browserdarstellungen.
  • 30. Und gehst Du zum Browser, vergiss die Peitsche nicht. In Anlehnung an F. Nietzsche
  • 33. Ich weiss, daß ich nicht(s) weiss! Sokrates (durch Platon)
  • 34. http://goo.gl/XV2n http://goo.gl/hl0f
  • 35. Screenshot von einem EeePC, 800x480px
  • 36. Unsicherheiten ‣ Endgeräte ‣ Browser ‣ PC, Notebook ‣ Browserversionen ‣ Handy, PDA ‣ Indiv. Konfiguration ‣ Spielkonsole ‣ Monitorauflösungen ‣ TV ‣ Umgebungslicht ‣ Assistive Technologien ‣ mobiler Zugriff ‣ Zugriffsgeschwindigkeit (DSL?) ‣ Betriebssysteme ‣ existieren Plugins? ‣ Javascript an oder aus?
  • 37. Flexibilität ist wichtig ‣ Wir können nicht mehr sicher vorhersagen, wie jemand unsere Seite sieht/liest. ‣ Deshalb: einen für möglichst viele gangbaren Weg beschreiten ‣ Erst der Inhalt, dann das Layout! ‣ Der Inhalt ist das Wichtigste!
  • 38. Um der Flexibilität gerecht zu werden und zukunftsfähig zu sein, müssen wir ein neues Denken entwickeln.
  • 39. Unser Layout ist nur eine Empfehlung!
  • 40. Wenn einige Browserhersteller der technischen Entwicklung hinterherhinken sollte das nicht unser Problem sein.
  • 41. Moderne Layouts für den IE haben KOSTEN!
  • 42. Kosten ‣ Zeit für Recherche, Tests und Implementierung ‣ Nicht jede Lösung taugt für jeden Anwendungsfall ‣ Zusätzliches HTML und Bilder erschweren die Wartung, Pflege und Anpassung
  • 44. Zwei Welten: IE und moderne Browser
  • 46. Runde Ecken - The ThrashBox <div class="sidebox"> <div class="boxhead"><h2>Test Headline</h2></div> <div class="boxbody"> <p>This is a short sample paragraph.</p> <p>And another one.</p> </div> </div> .sidebox { background: url(sbbody-r.gif) no-repeat bottom right; } .boxhead { background: url(sbhead-r.gif) no-repeat top right; } .boxhead h2 { background: url(sbhead-l.gif) no-repeat top left; } .boxbody { background: url(sbbody-l.gif) no-repeat bottom left; } http://www.vertexwerks.com/tests/sidebox/
  • 47. Runde Ecken - The ThrashBox <div class="sidebox"> <div class="boxhead"><h2>Test Headline</h2></div> <div class="boxbody"> <p>This is a short sample paragraph.</p> <p>And another one.</p> </div> </div> http://www.vertexwerks.com/tests/sidebox/
  • 48. Wartungshölle ‣ Für jede Farbe eine eigene Grafik (auch für hover bei Links!) ‣ Runde Ecken auf Verläufen oder Transparenzen sind ganz übel als Grafik ‣ Jede Änderung und Anpassung geschieht in Photoshop/Fireworks ‣ Viele Requests ‣ Keine Skalierung
  • 49. Runde Ecken für moderne Browser .box { border: 2px solid #eee; border-radius: 0.6em; -moz-border-radius: 0.6em; -webkit-border-radius: 0.6em; } /* Ohne die folgende Zeile ragen die Ecken der Überschrift aus der Box raus. Der gleiche Radius darf es auch nicht sein, sonst entsteht eine Lücke. Es scheint immer die Hälfte sein zu müssen. */ .box h3 { border-top-left-radius: 0.3em; border-top-right-radius: 0.3em; -moz-border-radius-topleft: 0.3em; -moz-border-radius-topright: 0.3em; -webkit-border-top-left-radius: 0.3em; -webkit-border-top-right-radius: 0.3em; }
  • 50. Rom, die Frisur hält ‣ Auch für Bilder! ‣ Auch auf Verläufen! ‣ Auch in em oder %! ‣ Schatten für Bilder ‣ maximale Flexibilität!
  • 51. Bei der Geburt getrennt FF 3.5 Win IE 8
  • 52. Noch einmal: die „Kosten“ ‣ 4 Bilder ‣ Farbänderungen, Anpassungen evtl. Schatten ‣ Anpassung der Rundungen ‣ mind. 1 zusätzlicher Request ‣ wie groß muss das Sprite werden, wenn die Seite flexibel sein soll?
  • 53. Müssen Webseiten überall gleich aussehen? http://dowebsitesneedtolookexactlythesameineverybrowser.com/
  • 55. Wir denken in traditionellen Analogien für eine neue Umgebung.
  • 57. Mit einer Tabelle kein Problem!
  • 58. Ohne Layouttabellen ‣ Die Elemente einer Seite haben keine Beziehung zueinander, es sei denn, es sind Kindelemente! ‣ Die eine Box bekommt nichts von der Höhe der anderen mit. ‣ Javascript ist ein sicheres Hilfsmittel. ‣ Rate mal, wer display: table nicht kennt!
  • 59. Gleich hohe Boxen <!-- start: 3*33% Subcolumns --> <h2>Aus meinem Weblog</h2> <div id="teaser" class="subcolumns"> <div class="c33l"> <div class="subcl equalise eins"> <h3><a href="toller-link.html">Überschrift</a></h3> <p>Kurzbeschreibung bzw. Anriss des Inhalts</p> <p class="weiter"><a href="#">Den ganzen Artikel lesen.</a></p> </div> </div> <div class="c33l"> <div class="subc equalise zwei"> <!-- wie oben --> </div> </div> <div class="c33r"> <div class="subcr equalise drei"> <!-- wie oben --> </div> </div> </div> <!-- end: 3*33% Subcolumns -->
  • 60. Das DOM div#teaser.subcolumns div.c33l div.c33l div.c33r div.subcl div.subc div.subcr h3 p p.weiter h3 p p.weiter h3 p p.weiter
  • 61. Gleich hohe Boxen für moderne Browser und IE ab Version 8 moderne Browser .equalize > div { .equalize, .equalize .subcolumns { display:table-cell; overflow:visible; float:none; display:table; margin:0; table-layout:fixed; overflow:hidden; } vertical-align:top; IE6 und 7 } http://yaml.de http://www.positioniseverything.net/articles/onetruelayout/equalheight
  • 62. Gleich hohe Boxen für IE bis Version 7 moderne Browser /* Fix for:"Linking to anchors in elements within the containing block" Problem in IE5.x & IE 6.0 */ * html .equalize, * html .equalize .subcolumns { overflow:visible; display:block; } .equalize, .equalize .subcolumns { overflow:hidden; display:block; } /* transform CSS tables back into floats */ .equalize .c20l,.equalize .c40l,.equalize .c60l,.equalize .c80l, IE6 und 7 .equalize .c25l,.equalize .c33l,.equalize .c38l,.equalize .equalize .c62l,.equalize .c66l,.equalize .c75l { .c50l, float:left; display:inline; padding-bottom:32767px; margin-bottom:-32767px; } .equalize .c20r,.equalize .c40r,.equalize .c60r,.equalize .c80r, .equalize .c25r,.equalize .c33r,.equalize .c38r,.equalize .c50r, .equalize .c62r,.equalize .c66r,.equalize .c75r { float:right; margin-left:-5px; display:inline; padding-bottom:32767px; margin-bottom:-32767px; } http://yaml.de http://www.positioniseverything.net/articles/onetruelayout/equalheight
  • 63. Gleich hohe Boxen unproblematisch problematisch http://www.yaml.de/de/dokumentation/anwendung/subtemplates.html
  • 64. Problematisch: Semantik ‣ zwei komplett getrennte Containerblöcke. ‣ Kein inhaltlicher Zusammenhang. ‣ Schlecht für Screenreader und Suchmaschinen.
  • 65. Problemfall unterer Rand ‣ Für den IE bis Version 7 kommt ein großer Innenabstand mit gleichgroßem negativem Aussenabstand zum Einsatz. ‣ Dadurch ist eine untere Linie unmöglich!
  • 71. Flexibilität ist Stärke Die Flexibilität des Internet ist seine Stärke. Akzeptiert es! Macht Euch locker! http://snipurl.com/2c1yl
  • 72. Jens Grochtdreis http://grochtdreis.de http://twitter.com/Flocke http://webkrauts.de Diese Präsentation steht unter der Creative Commons Lizenz „Attribution-ShareAlike 2.0“ http://creativecommons.org/licenses/by-sa/2.0/de/