tag:forum.selfhtml.org,2005:/selfFragen zum erstellen moderner Webseiten – SELFHTML-Forum2016-07-31T07:08:33Zhttps://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671980#m1671980Christian Wansart2016-07-26T17:26:56Z2016-07-26T17:26:56ZFragen zum erstellen moderner Webseiten<p>Guten Abend,</p>
<p>nach dem ich die letzten 2 Tage recht viel Zeit damit verbracht habe, Beiträge von Gunnar Bittersmann zu lesen, da er mir auf eine <a href="https://forum.selfhtml.org/self/2016/jul/20/stilfrage/1671577#m1671577" rel="noopener noreferrer">andere Frage</a> sehr kompetent geantwortet hat. Mir sind allerdings beim Lesen der Antworten – speziell mit dem Fokus auf Accessibility – einige Fragen gekommen, die ich so nicht selbst beantworten kann.</p>
<p>Nehmen wir an, ich entwickle eine REST-Webanwendung und ich möchte eine moderne Webseite entwickeln, dann wird heutzutage ja gerne nach Frameworks wie Angular gegriffen. Seiten werden beim Klicken eines Links nicht vollständig neu geladen, sondern immer nur Teile, in dem die gewünschten Daten per AJAX über die REST-Schnittstelle abgefragt werden und anschließend in den DOM eingefügt.</p>
<p>Wenn ich mir die Beiträge zu Herzen nehme, ist dann eine solche Umsetzung überhaupt möglich? Habt ihr Tipps und Anregungen, wie man da vorgehen kann?</p>
<p>Ich vermute, dass ich durch das ganze Lesen etwas durcheinander gekommen bin, ich bin aber für jeden Tipp offen. Dankeschön.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671983#m1671983dedlfix2016-07-26T17:50:22Z2016-07-26T17:50:22ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<p>Nehmen wir an, ich entwickle eine REST-Webanwendung und ich möchte eine moderne Webseite entwickeln, dann wird heutzutage ja gerne nach Frameworks wie Angular gegriffen. Seiten werden beim Klicken eines Links nicht vollständig neu geladen, sondern immer nur Teile, in dem die gewünschten Daten per AJAX über die REST-Schnittstelle abgefragt werden und anschließend in den DOM eingefügt.</p>
</blockquote>
<p>Das klingt sehr pauschal. Nicht jede moderne Website muss eine Single Page Application werden. Wenn man das, wofür man früher ein Prgramm geschrieben hat, als Anwendung im Browser laufen lassen möchte, dann bietet sich eine SPA an. Aber für Informationsportale à la Zeitung oder Blog reicht nach wie vor der klassische Webseitenansatz. Es kommt immer drauf an, was man erreichen möchte.</p>
<blockquote>
<p>Wenn ich mir die Beiträge zu Herzen nehme, ist dann eine solche Umsetzung überhaupt möglich? Habt ihr Tipps und Anregungen, wie man da vorgehen kann?</p>
</blockquote>
<p>Für welche konkrete Aufgabenstellung? "Moderne Website" reicht für die Beantwortung der Frage nicht. Da musst du schon genauer definieren, was das Ziel sein soll.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671985#m1671985Linuchs2016-07-26T18:05:57Z2016-07-26T18:16:16ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Seiten werden beim Klicken eines Links nicht vollständig neu geladen, sondern immer nur Teile, in dem die gewünschten Daten per AJAX ...</p>
</blockquote>
<p>Noch vor zwei, drei Jahren hat man hier regelmäßig die Mahnung eingefangen, dass der Leser Javascript (JS) abgeschaltet haben könnte. Also (auch) AJAX als luxuriöses "nice to have".</p>
<p>Doch Javascript scheint nun zur Pflicht geworden zu sein, ich kann auch im FF und in der Opera nicht mehr die Stelle finden, um JS abzuschalten.</p>
<p>Ich als "uralter Hase" habe noch die uralten Hemmungen und Warnungen in den Knochen und verwende Javascript als Luxus für geschlossene Benutzergruppen.</p>
<p>Da die Browser aber nicht mehr erlauben, JS abzuschalten, kann ich meine Seiten nicht mehr "ohne" testen und so mancher Ausrutscher gegen meine Prinzipien mögen durchrutschen.</p>
<p>Früher wurden hier auch Warnungen gegen das angeblich abschaltbare CSS ausgestoßen. Also nicht immer zukunfstorientiert und sehr furchtsam, die Ratschläge hier...</p>
<p>Hat sich inzwischen extrem gewandelt, die neuesten Features werden empfohlen. Da darf kein Leser mehr einen Browser haben, der älter ist als ein paar Monate. Von der Web-Steinzeit ins UFO-Zeitalter sozusagen.</p>
<p>Nach meinem "uralten" Empfinden wäre ja die Übertragung von möglichst wenig traffic zu bevorzugen. Scheint aber - trotz Funk-Engpässe - kein Kriterium mehr zu sein.</p>
<p>Konkret: Der Begriff "modern" deckt sich sprachlich mit "modern", also dem Dahinsiechen. Finde deinen eigenen Stil ständig neu. Wer will schon eine Webseite, die aussieht wie alle anderen?</p>
<p>Linuchs</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672008#m1672008Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-26T22:30:24Z2016-07-26T22:31:48ZFragen zum erstellen moderner Webseiten<p>@@Christian Wansart</p>
<blockquote>
<p>Beiträge von Gunnar Bittersmann zu lesen, da er mir auf eine <a href="https://forum.selfhtml.org/self/2016/jul/20/stilfrage/1671577#m1671577" rel="noopener noreferrer">andere Frage</a> sehr kompetent geantwortet hat.</p>
</blockquote>
<p>Oh, danke für die Blumen.</p>
<blockquote>
<p>Nehmen wir an, ich entwickle eine REST-Webanwendung und ich möchte eine moderne Webseite entwickeln, dann wird heutzutage ja gerne nach Frameworks wie Angular gegriffen.</p>
</blockquote>
<p>Ja, *seufz*. In so manchen Fällen würde ich das nicht „modern“ nennen, sondern Bequemlichkeit der Entwickler wird über Bedürfnisse der Nutzer gestellt. WTF :-(</p>
<blockquote>
<p>Seiten werden beim Klicken eines Links nicht vollständig neu geladen, sondern immer nur Teile, in dem die gewünschten Daten per AJAX über die REST-Schnittstelle abgefragt werden und anschließend in den DOM eingefügt.</p>
</blockquote>
<p>Das kann etwas schneller sein. An einer Stelle, wo man die Schnelligkeit evtl. gar nicht mal braucht. Das erkauft man sich damit, dass man den Nutzer beim initialen Aufruf der Webseite ewig lange warten lässt, bis das ganze Framework geladen ist. Für mich oft keine gute Abwägung.</p>
<p>Im Übrigen denke ich hier <a href="http://www.quirksmode.org/blog/archives/2015/01/the_problem_wit.html" rel="nofollow noopener noreferrer">wie Peter-Paul Koch</a>, dass Angular u.ä. nichts für Frontend-Entwickler ist; <em>„one could describe it as a front-end framework by non-front-enders for non-front-enders.“</em></p>
<p>Aber dir ging es ja um Barrierefreiheit. Eine <em>single page application</em> kann durchaus barrierefrei sein – wenn sie denn richtig implementiert wird. Bspw. Bereiche mit <code>aria-live</code> gekennzeichnet werden, wo sich Inhalte dynamisch ändern. Es fließt auch zunehmend Wissen über Barrierefreiheit in solche Frameworks ein.</p>
<p>Angular mit entsprechender Erweiterung fügt anderen Elementen, die nicht in der <em>tab order</em> sind, aber ein <code>ng-click</code>-„Attribut“ haben, <code>tabindex="0"</code> hinzu. Wie auch immer andere Elemente als <code>button</code> oder <code>a</code> o.a., die nativ per Tastatursteuerung zugänglich sind, zu <code>ng-click</code> kommen … Nun ja, Angular-Entwickler sind eben keine Frontend-Entwickler.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672011#m1672011pl2016-07-27T05:12:37Z2016-07-27T05:12:37ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Wenn ich mir die Beiträge zu Herzen nehme, ist dann eine solche Umsetzung überhaupt möglich? Habt ihr Tipps und Anregungen, wie man da vorgehen kann?</p>
</blockquote>
<p>Es sei eine Anwendung gegeben derart, dass Einträge einer langen Liste editierbar gemacht werden sollen.</p>
<p>Herkömmlich: Klick drauf und eine neue Seite wird geladen die ein Formular enthält. Klick dann auf Speichern, wird wieder die Liste geladen und wenns gut gemacht ist mit dem Anker, landest Du wieder auf dem zuletzt bearbeiteten Listeneintrag.</p>
<p>Modern: Das Formular zum Bearbeiten liegt bereits unter der Liste. Es wird erst sichtbar gemacht, wenn ein Eintrag zum Bearbeiten angeklickt wurde. Der Speichervorgang wird in 2 Prozesse aufgeteilt, ein einfaches Speichern schickt die Daten nur zum Server ohne das Formular neu zu laden. Erst der Fertig-Button schickt das Formular wieder in den Hintergrund und blendet die Liste ohne Änderung der Scrollposition ein.</p>
<p>So ich denke es ist klar, was benutzerfreundlicher ist und es gibt wohl einige Dinge die bereits im Browser erledigt werden können infolge sinnvoller Verwendung von JS ohne ganze Seiten via HTTP hinundher zu schicken. Wer unbedingt ein Submit haben will, sollte sich den HTTP Status 204 mal angucken. Damit bleibt ein Formular auch im Browser stehen und nur die Daten gehen raus zum Server.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672123#m1672123Frameworknutzer2016-07-27T21:45:06Z2016-07-27T21:45:06ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Wenn ich mir die Beiträge zu Herzen nehme, ist dann eine solche Umsetzung überhaupt möglich?</p>
</blockquote>
<p>Ja!</p>
<blockquote>
<p>Habt ihr Tipps und Anregungen, wie man da vorgehen kann?</p>
</blockquote>
<p>Mit <a href="https://www.w3.org/TR/wai-aria/" rel="nofollow noopener noreferrer">WAI ARIA</a> gibt es einen eigenen Accessibility Standard, der sich mit JavaScript Apps beschäftigt. Noch stärker als bei einer klassischen Site muss man User bei einer JS-App "führen". Focus Management ist wichtig für die Accessibility einer JS-App. Auswählbare/aktivierbare Elemente sollten auch anspringbar/fokusierbar sein. Formulare sollten sich wie üblich bedienen lassen. Teile der Seite haben "Rollen" zugeordnet um Orientierung zu bieten. Für die üblichen JS Widgets gibt es schon passende Rollen und Beipsielumsetzungen. Um User auf Änderungen hinzuweisen kann man mit JS den Fokus auf ein geändertes Element setzen. Oder sogar "Live Regions" einsetzen. Damit sollte man aber vorsichtig sein weil es Screenreaderuser auch nerven kann. ;o)</p>
<p>Ein Frameworknutzer</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672337#m1672337pl2016-07-30T07:24:17Z2016-07-30T07:53:18ZFragen zum erstellen moderner Webseiten<p>Beim Zwischenspeichern wär's unfreundlich, wenn da jedesmal das Formular verschwinden und ein Neuladen der Seite stattfinden würde. Screenshot untenstehend für meine Lösung mit AJAX und eine Shortcut gibt es auch. Das Formular bleibt beim Speichern wackelfrei im Browser ohne störendes Mausgefummel.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671987#m1671987Christian Wansart2016-07-26T18:12:18Z2016-07-26T18:12:18ZFragen zum erstellen moderner Webseiten<p>Guten Abend,</p>
<blockquote>
<p>Das klingt sehr pauschal. Nicht jede moderne Website muss eine Single Page Application werden. Wenn man das, wofür man früher ein Prgramm geschrieben hat, als Anwendung im Browser laufen lassen möchte, dann bietet sich eine SPA an. Aber für Informationsportale à la Zeitung oder Blog reicht nach wie vor der klassische Webseitenansatz. Es kommt immer drauf an, was man erreichen möchte.</p>
</blockquote>
<p>Ja, das stimmt natürlich, da habe ich nicht darüber nachgedacht. Ich entwickle gerade an der Hochschule eine Software mit Laravel im Hintergrund und entsprechender REST-Schnittstelle. Da zur Synchronisation der Clients ein WebSocket offen ist, welcher nicht geschlossen werden sollte, bietet sich da eine SPA natürlich an.</p>
<p>Ich hatte mein Szenario im Kopf und habe andere Anwendungsfälle ganz außer Acht gelassen.</p>
<blockquote>
<p>Für welche konkrete Aufgabenstellung? "Moderne Website" reicht für die Beantwortung der Frage nicht. Da musst du schon genauer definieren, was das Ziel sein soll.</p>
</blockquote>
<p>Die aktuelle Aufgabenstellung die ich in dem zuvor genannten Projekt verfolge, ist eine Software zu entwickeln, welche den Professoren die Möglichkeit gibt, den Wissensstand der Studenten mittels Quizze abzufragen.</p>
<p>Die Professorenseite (Backend) ist nur bedingt responsive, während das Frontend für die Studenten es ist. Das Backend ist keine SPA mit Ausnahme des Starten eines Quiz, da hier ebenfalls ein WebSocket geöffnet wird.</p>
<p>Wichtig war es, dass der Client möglichst auf vielen Geräten funktioniert, sind dank WebSocket aber schnell an die Grenzen gestoßen, da Android erst ab 4.1 meine ich WebSockets unterstützt.</p>
<p>Mehr fällt mir gerade nicht ein, aber es gab noch mehr Probleme, die wir auf die eine oder andere Weise gelöst haben.</p>
<p>Vielen Dank für deine Antwort.</p>
<p>Freundliche Grüße <br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671990#m1671990Christian Wansart2016-07-26T18:17:12Z2016-07-26T18:17:12ZFragen zum erstellen moderner Webseiten<p>Guten Abend Linuchs,</p>
<p>wo du es gerade ansprichst, mein Projekt würde ohne JavaScript nicht funktionieren. Das ist natürlich ärgerlich, aber ganz ohne ginge es nicht.</p>
<p>Ja du hast Recht, der Firfox hat das vor einigen Versionen entfernt. Etwas fraglich, wenn du mich fragst, aber mit Addons wie NoScript ist es noch tastbar. Ich bin mir bei sowas aber nicht sicher, was für Funktionen ich drin lasse, und welche nicht, da es manches gibt, was ohne JS einfach nicht geht. </p>
<p>Freundliche Grüße <br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672003#m1672003Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-26T21:25:23Z2016-07-26T21:25:23ZFragen zum erstellen moderner Webseiten<p>@@Linuchs</p>
<blockquote>
<p>Noch vor zwei, drei Jahren hat man hier regelmäßig die Mahnung eingefangen, dass der Leser Javascript (JS) abgeschaltet haben könnte. Also (auch) AJAX als luxuriöses "nice to have".</p>
<p>Doch Javascript scheint nun zur Pflicht geworden zu sein, ich kann auch im FF und in der Opera nicht mehr die Stelle finden, um JS abzuschalten.</p>
</blockquote>
<p>Es geht gar nicht mal um die paar wenigen, die JavaScript deaktivieren. Jeder ist ohne JavaScript, solange das Script nicht geladen wurde.<sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p>
<p>Serverseitiges Rendern als Grundfunktionalität und AJAX als <em>progressive enhancement</em> ist durchaus sinnvoll.</p>
<blockquote>
<p>Früher wurden hier auch Warnungen gegen das angeblich abschaltbare CSS ausgestoßen.</p>
</blockquote>
<p>Eine Webseite sollte auch ohne CSS funktionieren. Andernfalls wäre sie wohl auch nicht barrierefrei.</p>
<blockquote>
<p>Nach meinem "uralten" Empfinden wäre ja die Übertragung von möglichst wenig traffic zu bevorzugen. Scheint aber - trotz Funk-Engpässe - kein Kriterium mehr zu sein.</p>
</blockquote>
<p>Für manche schon. <em>offline first</em> ist ein Ansatz, der mit Dingen wie <em>progressive web apps (Service Workers)</em> und <a href="http://hood.ie/intro/" rel="nofollow noopener noreferrer">Hoodie</a> verfolgt wird.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
<hr class="footnotes-sep">
<section class="footnotes">
<ol class="footnotes-list">
<li id="fn1" class="footnote-item"><p>Ist mir glatt entfallen, von wem ich das gehört habe. Jake Archibald? Tim Kadlec? <a href="#fnref1" class="footnote-backref">↩︎</a></p>
</li>
</ol>
</section>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672058#m1672058Auge2016-07-27T11:05:36Z2016-07-27T11:05:36ZFragen zum erstellen moderner Webseiten<p>Hallo</p>
<blockquote>
<blockquote>
<p>Seiten werden beim Klicken eines Links nicht vollständig neu geladen, sondern immer nur Teile, in dem die gewünschten Daten per AJAX ...</p>
</blockquote>
<p>Noch vor zwei, drei Jahren hat man hier regelmäßig die Mahnung eingefangen, dass der Leser Javascript (JS) abgeschaltet haben könnte. Also (auch) AJAX als luxuriöses "nice to have".</p>
</blockquote>
<p>Meinem Empfinden nach ist es zwar um einiges länger als zwei oder drei Jahre her, dass diese Warnung hier oft kam. Ja, es gab eine Zeit, in der JS <em>meist</em> für unnützen und nervenden Mumpitz genutzt und wurde, heute ist dieser Anteil gesunken. Neben den heute in den Vordergrund getretenen Privacy-Bedenken ist der nicht mehr so starke, aber immer noch vorhandene Nervfaktor wohl <strong>der</strong> Grund, dessentwegen Nutzer JS abschalten. Andererseits gibt es Clients, die schlicht und ergreifend kein JS ausführen können und so von der Nutzung eines Angebots ausgeschlossen sind. Um diese Nutzergruppen (zu denen z.B. auch Bots, z.B. von Suchmaschinen, gehören) nicht auszuschließen, sollte eine Website auch ohne JS benutzbar sein. <em>Das</em> gilt auch heute noch.</p>
<p>Dass das für eine webbasierte Anwendung nur bedingt bis garnicht gilt, steht auf einem anderen Blatt. Und hier, so hat sich ja <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671987#m1671987" rel="noopener noreferrer">herausgestellt</a>, geht es um eine webbasierte Anwendung, neudeutsch auch „Webapp“. Also steht das Thema wohl nicht mehr zur Debatte.</p>
<blockquote>
<p>Doch Javascript scheint nun zur Pflicht geworden zu sein, ich kann auch im FF und in der Opera nicht mehr die Stelle finden, um JS abzuschalten.</p>
</blockquote>
<p>In einem solchen Fall kann man JS als Voraussetzung definieren und kommt hetuzutage nur noch selten drum herum.</p>
<blockquote>
<p>Da die Browser aber nicht mehr erlauben, JS abzuschalten, kann ich meine Seiten nicht mehr "ohne" testen und so mancher Ausrutscher gegen meine Prinzipien mögen durchrutschen.</p>
</blockquote>
<p>Mit Addons und Einstellungsmöglichkeiten abseits der GUI geht das (zumindest bei Firefox) auch heute noch, <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671991#m1671991" rel="noopener noreferrer">wie schon gesagt wurde</a>.</p>
<blockquote>
<p>Früher wurden hier auch Warnungen gegen das angeblich abschaltbare CSS ausgestoßen. Also nicht immer zukunfstorientiert und sehr furchtsam, die Ratschläge hier...</p>
</blockquote>
<p>Es gibt Clients, die mit CSS nichts anfangen können. Eine <em>Website</em> so aufzubauen, dass sie ohne CSS nicht zugänglich ist, also nicht funktioniert, ist ein No Go. Das hat nichts mit „nicht … zukunfstorientiert“ oder „sehr furchtsam“ zu tun. Auch hier gelten, abgesehen von den hier vorhandenen gesetzlichen Vorgaben, für Programme etwas andere Maßstäbe.</p>
<blockquote>
<p>Hat sich inzwischen extrem gewandelt, die neuesten Features werden empfohlen. Da darf kein Leser mehr einen Browser haben, der älter ist als ein paar Monate. Von der Web-Steinzeit ins UFO-Zeitalter sozusagen.</p>
</blockquote>
<p>Wo werden die neuesten Features empfohlen, ohne zumindest, wenn es denn notwendig ist, auf nicht umfassende Unterstützung hinzuweisen?</p>
<blockquote>
<p>Nach meinem "uralten" Empfinden wäre ja die Übertragung von möglichst wenig traffic zu bevorzugen. Scheint aber - trotz Funk-Engpässe - kein Kriterium mehr zu sein.</p>
</blockquote>
<p>Die Vermeidung unnötigen Traffics – was auch immer das im Einzelfall heißt – ist hier fast täglich Thema. Wenn du das nicht mitbekommst, scheinst du hier nur sehr selektiv zu lesen.</p>
<p>Es ist ja nicht so, dass hier immer wieder zu Optimierungen und zur Verwendung moderner Techniken zur Minimierung von Traffic geraten wird oder z.B. ich mich nicht alle X Monate <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> über megabyteweise nachzuladende JS-Dateien aus den unterschiedlichsten Quellen aufrege, ohne die verschiedene Websites selbst die grundlegenden Informationen nicht herausrücken, also schlicht vollflächig weiß bleiben. Gerne Fälle, in denen mit JS nachgebaut wird, was HTML von sich aus macht (Stichwort: unnötiger Traffic).</p>
<p>Tschö, Auge</p>
<div class="signature">-- <br>
Wo wir Mängel selbst aufdecken, kann sich kein Gegner einnisten.<br>
Wolfgang Schneidewind <strong>*prust*</strong>
</div>
<hr class="footnotes-sep">
<section class="footnotes">
<ol class="footnotes-list">
<li id="fn1" class="footnote-item"><p>Setze bitte eine niedrige einstellige Zahl für X ein. <a href="#fnref1" class="footnote-backref">↩︎</a></p>
</li>
</ol>
</section>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672100#m16721001unitedpower2016-07-27T16:36:25Z2016-07-27T16:36:25ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Noch vor zwei, drei Jahren hat man hier regelmäßig die Mahnung eingefangen, dass der Leser Javascript (JS) abgeschaltet haben könnte. Also (auch) AJAX als luxuriöses "nice to have".</p>
</blockquote>
<p>Es gab eine JavaScript-Blase, da wurde sehr hitzig diskutiert, ob serverseitiges Rendering wirklich noch gebraucht wird. Es ist dann aber ziemlich schnell eine Phase der Ernüchterung eingetreten, weil die Argumente, die dafür sprechen, einfach zu stark wiegen: Suchmaschinen-Freundlichkeit, Page-Speed, Tor-Browser... Es hat sich hier also im Wesentlichen ein Konsens eingestellt. Das Hauptargument der Verweigerer waren enorme Entwicklungszeiten und -kosten. Mit den Werkzeugen, die wir heute haben, verliert dieses Argument immer mehr an Bedeutung. Die Debatte hat sich verlagert, die Frage ist nicht mehr <strong>ob</strong> serverseitiges Rendering, sondern <strong>wie</strong>. Und am einfachsten geht es mit isomorphen JavaScript. Mit einem Redux/React-Stack kann man beispielsweise den selben Code für server- und clientseitges Template-Rendering wiederverwenden – fast ohne Mehraufwand.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672121#m1672121Frameworknutzer2016-07-27T21:21:47Z2016-07-27T21:21:47ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Noch vor zwei, drei Jahren hat man hier regelmäßig die Mahnung eingefangen, dass der Leser Javascript (JS) abgeschaltet haben könnte. Also (auch) AJAX als luxuriöses "nice to have".</p>
</blockquote>
<p>JavaScript ist aus versch. Gründen "unzuverlässig". Dass JavaScript <em>komplett</em> abgeschaltet ist, ist mittlerweile zu vernachlässigen. Die damals wie heute relevante Frage ist wie sich die Seite verhält, wenn JavaScript zwar aktiviert ist sich darin aber Fehler verstecken oder Teile im verwendeten Browser nicht funktionieren.</p>
<blockquote>
<p>Ich als "uralter Hase" habe noch die uralten Hemmungen und Warnungen in den Knochen und verwende Javascript als Luxus für geschlossene Benutzergruppen.</p>
</blockquote>
<p>Eine komplexe Logik mit JS zu bauen und zu erwarten, dass diese auch komplett fehlerfrei funktioniert: <em>Das</em> ist Luxus.</p>
<blockquote>
<p>Früher wurden hier auch Warnungen gegen das angeblich abschaltbare CSS ausgestoßen. Also nicht immer zukunfstorientiert und sehr furchtsam, die Ratschläge hier...</p>
</blockquote>
<p>Da ging es weniger darum dass viele User CSS abschalten. Das war nur in einigen Browsern für Poweruser möglich.</p>
<p>Es ging es eher darum HTML und CSS "richtig" einzusetzen. Semantische Informationen im HTML unterzubringen. Zum Beispiel eine Überschrift mit <H1> zu markieren als bloß ein <DIV> mit font-weight und font-size größer zu machen.</p>
<blockquote>
<p>Hat sich inzwischen extrem gewandelt, die neuesten Features werden empfohlen.</p>
</blockquote>
<p>Man kann (und sollte wie ich finde) die neuesten Features verwenden -- <em>wenn</em> der Browser sie unterstützt.</p>
<blockquote>
<p>Nach meinem "uralten" Empfinden wäre ja die Übertragung von möglichst wenig traffic zu bevorzugen. Scheint aber - trotz Funk-Engpässe - kein Kriterium mehr zu sein.</p>
</blockquote>
<p>Das ist immer noch ein wichtiges Kriterium. Nur wächst die Größe von Websites aus verschiedenen Gründen immer weiter an. Das sind letztlich Fehler in Konzept, Design und Umsetzung einer Site.</p>
<p>Ein Frameworknutzer</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671994#m1671994dedlfix2016-07-26T18:34:52Z2016-07-26T18:34:52ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<p>Die aktuelle Aufgabenstellung die ich in dem zuvor genannten Projekt verfolge, ist eine Software zu entwickeln, welche den Professoren die Möglichkeit gibt, den Wissensstand der Studenten mittels Quizze abzufragen.</p>
</blockquote>
<p>Also etwas, das mehr oder weniger in begrenztem Rahmen stattfinden soll. Ich nehme weiterhin an, das da auch keine Suchmaschinen drüberlaufen sollen. Sonst wäre der Einsatz von Javascript, vor allem zur Navigation, noch deutlich stärker zu hinterfragen.</p>
<blockquote>
<p>Die Professorenseite (Backend) ist nur bedingt responsive, während das Frontend für die Studenten es ist.</p>
</blockquote>
<p>Beim Backend ist es wegen des nochmal geringeren Personenkreises auch deutlich weniger ein Problem, Systemvoraussetzungen vorzuschreiben.</p>
<blockquote>
<p>Wichtig war es, dass der Client möglichst auf vielen Geräten funktioniert, sind dank WebSocket aber schnell an die Grenzen gestoßen, da Android erst ab 4.1 meine ich WebSockets unterstützt.</p>
</blockquote>
<p>Da gibts aber auch Projekte, die diese Kommunikation kapseln und bei Nichtvorhandensein von WebSockets auf andere Techniken zurückfallen. Jedenfalls kommt man bei einer solchen geforderten Echtzeitkommunikation kaum umhin, eine SPA zu verwenden.</p>
<p>Zur Frage nach der Zugänglichkeit. Man muss ja nicht alle guten Grundsätze ignorieren, aber wenn absehbar ist, dass der Zielpersonenkreis es nicht benötigen wird, dann muss man sich da auch nicht vergolden.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671991#m1671991Robert B.2016-07-26T18:22:56Z2016-07-26T18:22:56ZFragen zum erstellen moderner Webseiten<p>Moin,</p>
<blockquote>
<p>wo du es gerade ansprichst, mein Projekt würde ohne JavaScript nicht funktionieren. Das ist natürlich ärgerlich, aber ganz ohne ginge es nicht.</p>
</blockquote>
<p>Es sagt ja (mittlerweile) auch keiner etwas, wenn es sinnvoll eingesetzt ist.</p>
<blockquote>
<p>Ja du hast Recht, der Firfox hat das vor einigen Versionen entfernt.</p>
</blockquote>
<p>In <em>about:config</em> gibt es den Punkt <em>javascript.enabled</em>.</p>
<blockquote>
<p>Etwas fraglich, wenn du mich fragst, aber mit Addons wie NoScript ist es noch tastbar. Ich bin mir bei sowas aber nicht sicher, was für Funktionen ich drin lasse, und welche nicht, da es manches gibt, was ohne JS einfach nicht geht. </p>
</blockquote>
<p>Deshalb habe ich in meinem Firefox NoScript durch RequestPolicy (Continued) ersetzt.</p>
<p>Viele Grüße<br>
Robert</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671995#m1671995Christian Wansart2016-07-26T18:40:03Z2016-07-26T18:40:03ZFragen zum erstellen moderner Webseiten<p>Guten Abend,</p>
<blockquote>
<p>Es sagt ja (mittlerweile) auch keiner etwas, wenn es sinnvoll eingesetzt ist.</p>
</blockquote>
<p>Das sieht in meinem IT-Bekanntenkreis etwas anders aus. Mich hat JavaScript auch lange gestört, weil es häufig mehr genervt hat, aber mittlerweile ist es eben nicht mehr umgänglich.</p>
<blockquote>
<blockquote>
<p>Ja du hast Recht, der Firfox hat das vor einigen Versionen entfernt.</p>
</blockquote>
<p>In <em>about:config</em> gibt es den Punkt <em>javascript.enabled</em>.</p>
</blockquote>
<p>Oh, dann muss ich mich entschuldigen, ich hatte gedacht, sie haben es vollständig entfernt. Danke für die Information. Ich habe dazu noch <a href="http://kb.mozillazine.org/JavaScript#JavaScript_settings_in_Firefox_23_and_above" rel="nofollow noopener noreferrer">einen Artikel</a> gefunden.</p>
<p>Freundliche Grüße <br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672029#m1672029Christian Krusehttps://wwwtech.de/about2016-07-27T09:06:39Z2016-07-27T09:06:39ZFragen zum erstellen moderner Webseiten<p>Hallo dedlfix,</p>
<blockquote>
<p>Zur Frage nach der Zugänglichkeit. Man muss ja nicht alle guten Grundsätze ignorieren, aber wenn absehbar ist, dass der Zielpersonenkreis es nicht benötigen wird, dann muss man sich da auch nicht vergolden.</p>
</blockquote>
<p>So einfach ist das nicht. Für Einrichtungen öffentlichen Rechts (Hochschule) gilt die BITV bzw das Landes-Gleichstellungsgesetz, dass allerdings in den meisten Ländern sich am BITV orientiert. Dort ist die Barrierefreiheit/Zugänglichkeit nach Vorbild des WAI vorgeschrieben.</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671998#m1671998Der Martin2016-07-26T19:46:31Z2016-07-26T19:46:31ZFragen zum erstellen moderner Webseiten<p>Hallo,</p>
<blockquote>
<blockquote>
<p>Es sagt ja (mittlerweile) auch keiner etwas, wenn es sinnvoll eingesetzt ist.
Das sieht in meinem IT-Bekanntenkreis etwas anders aus. Mich hat JavaScript auch lange gestört, weil es häufig mehr genervt hat, aber mittlerweile ist es eben nicht mehr umgänglich.</p>
</blockquote>
</blockquote>
<p>das sehe ich anders: Es gibt zwar ein paar wenige Internet-Auftritte, bei denen man ohne JS ziemlich alt aussieht. Aber dennoch ist "Javascript aus" bei mir immer noch die Standardeinstellung, und nur für ein paar wenige Sites gibt's eine Ausnahme.<br>
Das trägt wesentlich zu einem entspannteren Surf-Erlebnis bei.</p>
<blockquote>
<blockquote>
<p>In <em>about:config</em> gibt es den Punkt <em>javascript.enabled</em>.</p>
</blockquote>
</blockquote>
<p>Die Mozilla Foundation verfolgt wohl schon lange den Trend, die wirklich sinnvollen Einstellungen nicht mehr übers GUI, sondern nur noch über <em>about:config</em> zugänglich zu machen. Wenn ich da nur an browser.urlbar.trimURLs denke, damit die Adresszeile nicht verunstaltet wird.</p>
<p>So long,<br>
Martin</p>
<div class="signature">-- <br>
Nothing travels faster than the speed of light with the possible exception of bad news, which obeys its own special laws.<br>
- Douglas Adams, The Hitchhiker's Guide To The Galaxy
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672001#m1672001Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-26T20:56:46Z2016-07-26T20:56:46ZFragen zum erstellen moderner Webseiten<p>@@Der Martin</p>
<blockquote>
<p>Aber dennoch ist "Javascript aus" bei mir immer noch die Standardeinstellung, und nur für ein paar wenige Sites gibt's eine Ausnahme.<br>
Das trägt wesentlich zu einem entspannteren Surf-Erlebnis bei.</p>
</blockquote>
<p>Willst du nicht lieber JavaScript anlassen und einen Ad-Blocker verwenden?</p>
<p>LLAP </p>
<p>PS: Ich glaube, ich kenne die Antwort. ;-)</p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672015#m1672015Der Martin2016-07-27T07:36:31Z2016-07-27T07:36:31ZFragen zum erstellen moderner Webseiten<p>Moin,</p>
<blockquote>
<blockquote>
<p>Aber dennoch ist "Javascript aus" bei mir immer noch die Standardeinstellung, und nur für ein paar wenige Sites gibt's eine Ausnahme.<br>
Das trägt wesentlich zu einem entspannteren Surf-Erlebnis bei.</p>
</blockquote>
<p>Willst du nicht lieber JavaScript anlassen und einen Ad-Blocker verwenden?</p>
</blockquote>
<p>das sind doch zwei grundverschiedene Dinge. Einen Ad-Blocker habe ich selbstverständlich auch, und zwar auf DNS-Basis: Mein lokaler DNS löst anhand einer Liste mit Hunderten von Einträgen die Domain- und Hostnamen, die als Ad-Server bekannt sind, zu 127.0.0.1 auf. Außerdem auch alle, die mir im Zusammenhang mit Google Analytics und ähnlichen Schnüffeldiensten bekannt sind.</p>
<p>Oder meintest du so ein Schweizer Messer wie etwa die bekannte Firefox-Extension NoScript, die ja auf Wunsch auch viele andere aktive Inhalte blockiert (Sound, Video, Flash)? Das wäre in der Tat eine Alternative. Aber warum?</p>
<p>So long,<br>
Martin</p>
<div class="signature">-- <br>
Nothing travels faster than the speed of light with the possible exception of bad news, which obeys its own special laws.<br>
- Douglas Adams, The Hitchhiker's Guide To The Galaxy
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672012#m1672012marctrixself@mhis.dehttp://mhis.de2016-07-27T05:56:10Z2016-07-27T05:56:10ZFragen zum erstellen moderner Webseiten<p>Hej Christian,</p>
<p>@Gunnar Bittersmann schrieb:</p>
<blockquote>
<blockquote>
<p>Früher wurden hier auch Warnungen gegen das angeblich abschaltbare CSS ausgestoßen.</p>
</blockquote>
<p>Eine Webseite sollte auch ohne CSS funktionieren. Andernfalls wäre sie wohl auch nicht barrierefrei.</p>
</blockquote>
<p>So isses. Webseiten müssen sowohl bei abgeschaltetem CSS, als auch mit einem User-CSS (z. B. geänderte Farben bei Blendempfindlichkeit) Sinn machen.</p>
<p>Für Viele große Webseiten gibt es ja eine ganze Reihe an User-Stylesheets, die das Aussehen ändern - z. B. als Browser-PlugIns.</p>
<p>CSS ist immer nur ein Design-Vorschlag für Menschen, die sich nicht für jede Webseite ihr eigenens CSS schreiben wollen. De facto fast jeder - aber auf das "fast" kommt es eben an. Sollte man sich immer wieder mal bewusst machen.</p>
<p>Marc</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672009#m1672009dedlfix2016-07-26T22:45:19Z2016-07-26T22:45:19ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<p>Im Übrigen denke ich hier wie Peter-Paul Koch, dass Angular u.ä. nichts für Frontend-Entwickler ist; „one could describe it as a front-end framework by non-front-enders for non-front-enders.“</p>
</blockquote>
<p>Meinst du, wenn man Angular meidet und auf herkömmlichem Weg - oder vielleicht einem Angular-Konkurrenten - das gleiche Ergebnis erstellt, ist das besser?</p>
<p>Oder liegt es nicht viel mehr an den Menschen, die größtenteils zu unperfekt sind, um Ideal-Lösungen zu erstellen, egal welches Werkzeug auch immer sie in die Hand nehmen?</p>
<blockquote>
<p>Wie auch immer andere Elemente als <code>button</code> oder <code>a</code> o.a., die nativ per Tastatursteuerung zugänglich sind, zu <code>ng-click</code> kommen … Nun ja, Angular-Entwickler sind eben keine Frontend-Entwickler.</p>
</blockquote>
<p>Wer mit Angular ng-clicks verteilt, hätte ohne Angular onclicks genommen. Das ist sicher keine Marotte, die Angular anzulasten ist.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672020#m1672020Christian Wansart2016-07-27T08:06:11Z2016-07-27T08:06:11ZFragen zum erstellen moderner Webseiten<p>Guten Morgen Gunnar,</p>
<blockquote>
<p>Oh, danke für die Blumen.</p>
</blockquote>
<p>Du hast mich mit deinen Posts auf neue Themenfelder gebracht. Das fand ich sehr praktisch. Auch deine Aussagen bzgl. Angular und Bootstrap fand ich sehr interessant, was mich dann eben auch auf deine bittersmann.de-Webseite brachte. Ich habe selten so einen sauberen Quellcode gesehen! (Du scheinst da keine minifier oder servseitiges Zusammenfügen zu nutzen – gut, bei einer einzigen Seite würde das auch nicht so viel Sinn ergeben.)</p>
<p>Du hast im übrigen „tote Links“ unten bei den Workshops. Die Slides von „Frontend Development in-company, 2014-01-28“ existieren wohl nicht mehr.</p>
<blockquote>
<p>Ja, *seufz*. In so manchen Fällen würde ich das nicht „modern“ nennen, sondern Bequemlichkeit der Entwickler wird über Bedürfnisse der Nutzer gestellt. WTF :-(</p>
</blockquote>
<p>Ist es denn nicht manchmal sinnvoller, wenn nur ein Teil sich ändert? Sagen wir ich habe ein Imageboard unter dem der Nutzer einen Kommentar schreiben will. Nichts großes, einfach nur reinen Text. Ist es dann nicht sinnvoller, die Daten einfach per Framework (hier z. B. jQuery) an den Server zu schicken und den Text bei einem 200-Status-Code in den DOM einzupflegen. Damit müsste die gesamte Seite weder neu geladen noch gerendert werden. Ich denke, dass das für den Endnutzer bequemer wäre, anstatt für jeden Schritt eine neue Seite. Allerdings muss ich gestehen, dass ich nicht weiß, wie es für eingeschränkte Nutzer aussieht, die z. B. mittels Screenreader diese Seite nutzen.</p>
<blockquote>
<p>Das kann etwas schneller sein. An einer Stelle, wo man die Schnelligkeit evtl. gar nicht mal braucht. Das erkauft man sich damit, dass man den Nutzer beim initialen Aufruf der Webseite ewig lange warten lässt, bis das ganze Framework geladen ist. Für mich oft keine gute Abwägung.</p>
</blockquote>
<p>Da stimme ich dir grundsätzlich zu, aber nehmen wir mal <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671987#m1671987" rel="noopener noreferrer">meine Applikation</a>. Dort wird auf der Client-Seite das jQuery-Framework einmalig geladen. Wichtig ist, dass die Nutzer möglichst zeitgleich die Information per WebSocket bekommen, dass eine neue Frage verfügbar ist. Würde ich da jedes mal die Seite vollständig neu laden, wäre es eine Katastrophe. Da nehme ich das längere Laden lieber in Kauf. (0,55 Sekunden Ladezeit.)</p>
<blockquote>
<p>Im Übrigen denke ich hier <a href="http://www.quirksmode.org/blog/archives/2015/01/the_problem_wit.html" rel="nofollow noopener noreferrer">wie Peter-Paul Koch</a>, dass Angular u.ä. nichts für Frontend-Entwickler ist; <em>„one could describe it as a front-end framework by non-front-enders for non-front-enders.“</em></p>
</blockquote>
<p>Genau diese Aussage finde ich interessant. Denn speziell das Laden und Verwalten von Daten ist damit so simpel gemacht. Zugegeben, für das Projekt haben wir Angular im Frontend auch verworfen, weil es einfach viel zu groß war und weit über das hinaus ging, was wir brauchten. Die SPA lies sich mit jQuery sehr gut und effizient umsetzen -- lediglich die Sauberkeit des Codes ist nicht so gut, da die jeweiligen Studenten in der Gruppe Anfänger im Umgang mit JavaScript und speziell jQuery sind.</p>
<blockquote>
<p>Aber dir ging es ja um Barrierefreiheit. Eine <em>single page application</em> kann durchaus barrierefrei sein – wenn sie denn richtig implementiert wird. Bspw. Bereiche mit <code>aria-live</code> gekennzeichnet werden, wo sich Inhalte dynamisch ändern. Es fließt auch zunehmend Wissen über Barrierefreiheit in solche Frameworks ein.</p>
</blockquote>
<p>Und hier verstehe ich nicht, warum du mit Bootstrap so ein Problem hast. Sie haben <a href="https://getbootstrap.com/components/" rel="nofollow noopener noreferrer">in ihren Beispielen</a> verschiedene aria-Attribute genutzt. Gut, der Code ist mit divs aufgebaut, anstelle von den jeweiligen HTML5-Elementen, aber ich schätze mal, dass die Entscheidung so aufgrund der Abwärtskompatibel gefallen ist. Allerdings verwendest du im Vergleich zu eigentlich jedem anderen den ich kenne, kaum bis gar keine Klasse, sondern nutzt die entsprechenden Elemente im CSS selbst. Hier ist Bootstrap ja auch so, dass es für jede Kleinigkeit eigene Klassen gibt.</p>
<p>Vielen Dank für deine Antwort.<br>
Lebe lang und in Frieden!</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672023#m1672023Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-27T08:11:40Z2016-07-27T08:11:40ZFragen zum erstellen moderner Webseiten<p>@@dedlfix</p>
<blockquote>
<blockquote>
<p>Im Übrigen denke ich hier wie Peter-Paul Koch, dass Angular u.ä. nichts für Frontend-Entwickler ist; „one could describe it as a front-end framework by non-front-enders for non-front-enders.“</p>
</blockquote>
<p>Meinst du, wenn man Angular meidet und auf herkömmlichem Weg - oder vielleicht einem Angular-Konkurrenten - das gleiche Ergebnis erstellt, ist das besser?</p>
</blockquote>
<p>An der Stelle ging es nicht um besser oder schlechter, sondern darum, dass Angular-Programmierung ($Framework-Programmierung) <em>andere</em> Kenntnisse erfordert als das, was ich unter <em>Frontend</em>-Entwicklung verstehe.</p>
<p>Zu letzterem gehört neben semantischem HTML und CSS auch Design, UX, IA, IxD, Usability, Accessibility, Typografie, …</p>
<p>S.a. <a href="https://forum.selfhtml.org/self/2015/apr/28/glob-case-insensitive-welche-variante/1639062#m1639062" rel="noopener noreferrer"> Über Frontender und Programmierer </a></p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672018#m1672018Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-27T07:50:08Z2016-07-28T08:40:00ZFragen zum erstellen moderner Webseiten<p>@@pl</p>
<blockquote>
<p>Modern: Das Formular zum Bearbeiten liegt bereits unter der Liste. Es wird erst sichtbar gemacht, wenn ein Eintrag zum Bearbeiten angeklickt wurde.</p>
</blockquote>
<p>Oder es wird erst dann mit JavaScript generiert. Wie wolltest du festzuhalten, welcher Beitrag zum Bearbeiten angeclickt wurde? Nicht auch mit JavaScript? Oder mit Radiobutton an jedem Beitrag?</p>
<blockquote>
<p>Der Speichervorgang wird in 2 Prozesse aufgeteilt, ein einfaches Speichern schickt die Daten nur zum Server ohne das Formular neu zu laden. Erst der Fertig-Button schickt das Formular wieder in den Hintergrund und blendet die Liste ohne Änderung der Scrollposition ein.</p>
</blockquote>
<p>Zwei Buttons – „Speichern“ und „Fertig“ – dürften die Nutzer verwirren. Weg mit dem einen!</p>
<p><em>“Design isn’t crafting a beautiful, textured button. It’s figuring out if there’s a way to get rid of the button altogether.”</em> —Edward Tufte</p>
<p>Ein „Speichern“-Button reicht. Wenn man doch noch nicht fertig war, drückt man halt noch mal „Beitrag bearbeiten“ und öffnet das Formular erneut.</p>
<p>Und „modern“ geht noch etwas anders: „Speichern“ schickt die Daten erstmal nicht zum Server, sondern speichert sie lokal und aktualisiert die Anzeige. Wenn Verbindung zum Internet besteht, werden die Daten mit dem Server synchronisiert. Wenn nicht, passiert das später, sobald wieder Internetverbindung da ist – im Hintergrund, ohne dass sich der Nutzer darum kümmern müsste. <em>Offline first.</em></p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672021#m1672021Der Martin2016-07-27T08:09:19Z2016-07-27T08:09:19ZFragen zum erstellen moderner Webseiten<p>Hallo,</p>
<blockquote>
<blockquote>
<p>Der Speichervorgang wird in 2 Prozesse aufgeteilt, ein einfaches Speichern schickt die Daten nur zum Server ohne das Formular neu zu laden. Erst der Fertig-Button schickt das Formular wieder in den Hintergrund und blendet die Liste ohne Änderung der Scrollposition ein.</p>
</blockquote>
<p>Zwei Buttons – „Speichern“ und „Fertig“ – dürften die Nutzer verwirren. Weg mit dem einen!</p>
</blockquote>
<p>ja, unbedingt.</p>
<blockquote>
<p>Und „modern“ geht noch etwas anders: „Speichern“ schickt die Daten erstmal nicht zum Server, sondern speichert sie lokal und aktualisiert die Anzeige. Wenn Verbindung zum Internet besteht, werden die Daten mit dem Server synchronisiert. Wenn nicht, passiert das später, sobald wieder Internetverbindung da ist – im Hintergrund, ohne dass sich der Nutzer darum kümmern müsste.</p>
</blockquote>
<p>Klingt gut, nur ... später, wenn die Verbindung zum Server wieder steht, hat der Nutzer den Browser längst geschlossen. In dem beruhigenden Glauben, dass er die Änderungen ja gespeichert hatte.</p>
<p>So long,<br>
Martin</p>
<div class="signature">-- <br>
Nothing travels faster than the speed of light with the possible exception of bad news, which obeys its own special laws.<br>
- Douglas Adams, The Hitchhiker's Guide To The Galaxy
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672026#m1672026Christian Wansart2016-07-27T08:28:58Z2016-07-27T08:28:58ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Zwei Buttons – „Speichern“ und „Fertig“ – dürften die Nutzer verwirren. Weg mit dem einen!</p>
</blockquote>
<p>Und was machst du bei einer Übersicht, also im Backend wo ein angemeldeter Nutzer Elemente für das Frontend für die Endnutzer erstellt? Wie zum Beispiel in einem Forum, wo der Administrator Kategorien und Foren erzeugt, braucht er ja eine gewisse Liste. Zeigst du da einfach alle Buttons für jede Kategorie und jedes Forum an?</p>
<p>In meinem Projekt hatten wir das zu Anfang, sind jedoch zu einem einfachen Dropdown-Menü (verzeih mir, auf Bootstrap-Basis) gewechselt, da es – zumindest optisch – einfacher zu handhaben ist, aber wenn man durch die vielen Buttons „erschlagen“ wird.</p>
<p>Die Änderungen gehen aus den Befragungen des „Kunden“ hervor.
<img src="https://dl.dropboxusercontent.com/u/81442408/Screenshots/categories.jpg" alt="Vorher-Nachher-Screenshot von der im Hochschulprojekt entwickelten Software" title="Vorher-Nachher" loading="lazy"></p>
<blockquote>
<p>Und „modern“ geht noch etwas anders: „Speichern“ schickt die Daten erstmal nicht zum Server, sondern speichert sie lokal und aktualisiert die Anzeige. Wenn Verbindung zum Internet besteht, werden die Daten mit dem Server synchronisiert. Wenn nicht, passiert das später, sobald wieder Internetverbindung da ist – im Hintergrund, ohne dass sich der Nutzer darum kümmern müsste. <em>Offline first.</em></p>
</blockquote>
<p>Ein interessanter Ansatz, der aber voraussetzt, dass der PC aktiviert, der Browser sowie der Tab geöffnet bleibt, oder sehe ich das falsch? Gut, man könnte natürlich die Daten auch mit local storage zwischenspeichern und beim erneuten Laden der Seite prüfen, ob sich noch nicht gesendete Daten im local storage befinden.</p>
<p>Besten Dank.<br>
Lebe Lang und in Frieden!</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672030#m1672030MudGuardhttp://www.andreas-waechter.de/2016-07-27T09:18:46Z2016-07-27T09:18:46ZFragen zum erstellen moderner Webseiten<p>Hi,</p>
<blockquote>
<p>Und „modern“ geht noch etwas anders: „Speichern“ schickt die Daten erstmal nicht zum Server, sondern speichert sie lokal und aktualisiert die Anzeige. Wenn Verbindung zum Internet besteht, werden die Daten mit dem Server synchronisiert. Wenn nicht, passiert das später, sobald wieder Internetverbindung da ist – im Hintergrund, ohne dass sich der Nutzer darum kümmern müsste. <em>Offline first.</em></p>
</blockquote>
<p>und damit werden dann später durch andere User getätigte Änderungen überbügelt ...</p>
<p>(was man natürlich auch abfangen könnte, aber das macht noch mehr Aufwand ...)</p>
<p>cu,<br>
Andreas a/k/a MudGuard</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672028#m1672028dedlfix2016-07-27T09:02:25Z2016-07-27T09:02:25ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<p>Ist es denn nicht manchmal sinnvoller, wenn nur ein Teil sich ändert? Sagen wir ich habe ein Imageboard unter dem der Nutzer einen Kommentar schreiben will. Nichts großes, einfach nur reinen Text. Ist es dann nicht sinnvoller, die Daten einfach per Framework (hier z. B. jQuery) an den Server zu schicken und den Text bei einem 200-Status-Code in den DOM einzupflegen. Damit müsste die gesamte Seite weder neu geladen noch gerendert werden. Ich denke, dass das für den Endnutzer bequemer wäre, anstatt für jeden Schritt eine neue Seite.</p>
</blockquote>
<p>Ja, in bestimmten Fällen. Beispielsweise wenn man ein Video auf einer der Plattformen kommentieren möchte, wäre es nicht schön, wenn nach dem Absenden die Seite neu geladen und damit das Video unterbrochen würde. Dann doch lieber im Hintergrund zum Server senden und den Text ins DOM einschieben. Aber wenn man zu einem anderen Video wechselt, wird eine neue Seite aufgerufen und nicht nur das neue Video in die bereits geladene eingefügt. An der Stelle wäre das Vorgehen mit mehr Nachteilen als Nutzen verbunden.</p>
<blockquote>
<blockquote>
<p>Das kann etwas schneller sein. An einer Stelle, wo man die Schnelligkeit evtl. gar nicht mal braucht. Das erkauft man sich damit, dass man den Nutzer beim initialen Aufruf der Webseite ewig lange warten lässt, bis das ganze Framework geladen ist. Für mich oft keine gute Abwägung.</p>
</blockquote>
</blockquote>
<p>Das passiert ja nur beim erstmaligen Aufruf. Und wenn man die Frameworks nicht selber hostet, sondern eines der bekannteren CDNs verwendet, ist die Chance nicht unbedingt niedrig, dass die Ressourcen bereits im Cache sind.</p>
<blockquote>
<p>Die SPA lies sich mit jQuery sehr gut und effizient umsetzen -- lediglich die Sauberkeit des Codes ist nicht so gut, da die jeweiligen Studenten in der Gruppe Anfänger im Umgang mit JavaScript und speziell jQuery sind.</p>
</blockquote>
<p>Und das ist ein klassisches Beispiel, wo die Schuld nicht im Framework zu suchen ist.</p>
<blockquote>
<p>Und hier verstehe ich nicht, warum du mit Bootstrap so ein Problem hast. Sie haben <a href="https://getbootstrap.com/components/" rel="nofollow noopener noreferrer">in ihren Beispielen</a> verschiedene aria-Attribute genutzt. Gut, der Code ist mit divs aufgebaut, anstelle von den jeweiligen HTML5-Elementen, aber ich schätze mal, dass die Entscheidung so aufgrund der Abwärtskompatibel gefallen ist. Allerdings verwendest du im Vergleich zu eigentlich jedem anderen den ich kenne, kaum bis gar keine Klasse, sondern nutzt die entsprechenden Elemente im CSS selbst. Hier ist Bootstrap ja auch so, dass es für jede Kleinigkeit eigene Klassen gibt.</p>
</blockquote>
<p>Bootstrap muss für einen breiten Anwenderkreis verwendbar sein. Das CSS der Bittersmannseite muss lediglich zu dieser einen passen und kann deshalb darauf optimiert werden. Wenn Bootstrap nicht auf universell verwendbare Klassen sondern konkrete Elemente setzen würde, wäre man bei der Verwendung auf diese Elemente beschränkt. Es ist immer eine Abwägungssache. Mache ich etwas zu Fuß, bin ich frei, alles so zu machen, wie ich mir das vorstelle. Das kostet dann aber unter Umständen eine Menge Entwicklungsarbeit für Dinge, die vielleicht nicht direkt zum Kern der Geschäftslogik gehören, aber trotzdem als Verbindung zwischen den Teilen notwendig sind. Verwende ich ein Framework, dass große Teile des nebensächlichen Krams bereits gelöst hat, bin ich in der Regel schneller am Ziel (unter der Voraussetzung, ich kenne mich mit beiden Vorgehensweisen einigermaßen gut aus und habe keinen grundsätzlichen Lernaufwand mehr). Aber ich sollte dann gemäß dessen Philosophie arbeiten, sonst steht es mir möglicherweise mehr im Weg als dass es ihn mir ebnet. Das Framework muss nun jedoch nicht nur mich zufriedenstellen, sondern einen breiteren Anwenderkreis, und deshalb muss es allgemeiner entworfen werden. Das hat auch zur Folge, dass es eine Menge Funktionen mitbringt, die ich gar nicht brauche. Das passiert aber auch, wenn ich aus einem vorhergehenden Projekt meine dort für die allgemeinen Zwecke erstellte Funktionssammlung mitbringe. Da sind überflüssige Teile drin und manche fehlen. Aber dafür gibts ja bei den Frameworks mit der Modularität eine zumindest entgegenkommende Lösung. Man lädt eben die Module nicht mit, die man gar nicht verwendet.</p>
<p>Wenn man es genau nimmt, hat man dieses angebliche Dilemma auch schon im Browser an sich. Der hat auch eine Menge Zeugs an Bord, dass nicht jede Webseite benötigt, und trotzdem musste man das alles mitinstallieren. Genauso wie beim Betriebssystem (von einfach so mitinstallierten Anwendungen ganz zu schweigen).</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672034#m1672034Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-27T09:31:25Z2016-07-27T09:31:25ZFragen zum erstellen moderner Webseiten<p>@@Christian Wansart</p>
<blockquote>
<p>Du hast im übrigen „tote Links“ unten bei den Workshops. Die Slides von „Frontend Development in-company, 2014-01-28“ existieren wohl nicht mehr.</p>
</blockquote>
<p>Ich hatte die einzelnen Teile zu einem <a href="https://speakerdeck.com/gunnarbittersmann/frontend-development-workshop" rel="nofollow noopener noreferrer">Ganzen</a> zusammengesetzt und vergessen, den Link zu ändern. Danke fürs Bescheidgeben.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672024#m1672024Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-27T08:17:03Z2016-07-27T08:17:03ZFragen zum erstellen moderner Webseiten<p>@@Der Martin</p>
<blockquote>
<p>Klingt gut, nur ... später, wenn die Verbindung zum Server wieder steht, hat der Nutzer den Browser längst geschlossen. In dem beruhigenden Glauben, dass er die Änderungen ja gespeichert hatte.</p>
</blockquote>
<p>Der <em>Service Worker</em> sollte sich das merken, was beim nächsten Aufruf der Seite noch zu synchronisieren ist.</p>
<p>Aber ja, eine Anzeige, ob die Daten gerade mit dem Server aktualisiert sind, könnte durchaus nützlich sein.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672025#m1672025dedlfix2016-07-27T08:25:58Z2016-07-27T08:25:58ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<blockquote>
<blockquote>
<p>Im Übrigen denke ich hier wie Peter-Paul Koch, dass Angular u.ä. nichts für Frontend-Entwickler ist; „one could describe it as a front-end framework by non-front-enders for non-front-enders.“</p>
</blockquote>
<p>Meinst du, wenn man Angular meidet und auf herkömmlichem Weg - oder vielleicht einem Angular-Konkurrenten - das gleiche Ergebnis erstellt, ist das besser?</p>
</blockquote>
<p>An der Stelle ging es nicht um besser oder schlechter, sondern darum, dass Angular-Programmierung ($Framework-Programmierung) <em>andere</em> Kenntnisse erfordert als das, was ich unter <em>Frontend</em>-Entwicklung verstehe.</p>
</blockquote>
<p>Ja, aber ich verstehe nicht, warum du da nur Angular erwähnst und fragte deshalb, ob andere Dinge, mit denen ein nach "Nicht-Frontender" Anwendungen im Browser erstellt in der Hinsicht Frontend ein besseres Ergebnis erzielen. Um mal zwei Werkzeuge konkret zu nennen: jQuery und nackiges Javascript.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672120#m1672120Frameworknutzer2016-07-27T21:00:11Z2016-07-27T21:00:11ZFragen zum erstellen moderner Webseiten<blockquote>
<p>An der Stelle ging es nicht um besser oder schlechter, sondern darum, dass Angular-Programmierung ($Framework-Programmierung) <em>andere</em> Kenntnisse erfordert als das, was ich unter <em>Frontend</em>-Entwicklung verstehe.</p>
</blockquote>
<p>Das sehe ich ganz anders. Ein Framework wie Angular erfordert selbstverständlich Frontend-Kenntnisse. Man baut damit schließlich Web-Frontends!</p>
<blockquote>
<p>Zu letzterem gehört neben semantischem HTML und CSS auch Design, UX, IA, IxD, Usability, Accessibility, Typografie, …</p>
</blockquote>
<p>Wie kommst du auf die Idee, dass eine Seite mit Angular das alles NICHT hat oder braucht? Wie kommst du auf die Idee, dass Angularentwickler das alles NICHT AUCH können und anwenden? Wie kommst du darauf, dass in einem Team das Angular-Apps entwickelt KEINE Spezialisten für diese Themen sind?</p>
<p>Frameworks wie Angular sind bloß zusätzliche Werkzeuge in unserem Werkzeugkasten. Damit baut man immer noch Websites/Webapps. Und was für die seit eh und je gilt, gilt grundsätzlich auch für jede Angular-App.</p>
<p>Schlechte Seiten mit schlechter Usability und fehlerhaftem HTML kann man hervorragend mit oder ohne Angular bauen.</p>
<p>Ein Frameworknutzer</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672032#m1672032dedlfix2016-07-27T09:21:56Z2016-07-27T09:21:56ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<blockquote>
<p>Zwei Buttons – „Speichern“ und „Fertig“ – dürften die Nutzer verwirren. Weg mit dem einen!</p>
</blockquote>
<p>Und was machst du bei</p>
</blockquote>
<p>Jeder Fall muss für sich individuell betrachtet werden. Eine allgemeine Antwort darauf zu geben oder haben zu wollen läuft quasi auf das Framework-vs-Individualität-Problem hinaus. Entweder es passt vielen, ist aber einigen zu groß oder zu klein, oder es passt wie angegossen, aber anderen gar nicht. Und dazwischen noch jede Menge Grautöne.</p>
<blockquote>
<p>einer Übersicht, also im Backend wo ein angemeldeter Nutzer Elemente für das Frontend für die Endnutzer erstellt? Wie zum Beispiel in einem Forum, wo der Administrator Kategorien und Foren erzeugt, braucht er ja eine gewisse Liste. Zeigst du da einfach alle Buttons für jede Kategorie und jedes Forum an?</p>
</blockquote>
<p>Kommt drauf an. Vielleicht wäre die bessere Lösung statt alles gleichzeitig oder alles erstmal versteckt ein Mittelweg wie beim Menü vom Mediawiki. Die hauptsächlich verwendeten Funktionen sind gleich da, der Rest nach dem Aufklappen.</p>
<blockquote>
<p>(verzeih mir, auf Bootstrap-Basis)</p>
</blockquote>
<p>Du musst dich dafür bei keinem Evangelisten entschuldigen. Allein mit deinem eigenen Gewissen und/oder deinem Auftraggeber musst du grün sein. Evangelisten können nicht mehr als einer von mehreren Ratgebern sein, denn sie kennen in der Regel auch nicht alle deine Gegebenheiten.</p>
<blockquote>
<blockquote>
<p>Und „modern“ geht noch etwas anders: „Speichern“ schickt die Daten erstmal nicht zum Server, sondern speichert sie lokal und aktualisiert die Anzeige. Wenn Verbindung zum Internet besteht, werden die Daten mit dem Server synchronisiert. Wenn nicht, passiert das später, sobald wieder Internetverbindung da ist – im Hintergrund, ohne dass sich der Nutzer darum kümmern müsste. <em>Offline first.</em></p>
</blockquote>
<p>Ein interessanter Ansatz, der aber voraussetzt,</p>
</blockquote>
<p>... dass der Anwendungsfall das zulässt. Das ist meist nur dann gegeben, wenn man allein an einem Dokument/System arbeitet. Sobald man etwas gemeinsam oder in Konkurrenz zueinander erledigen muss, ist das nicht unbedingt eine gescheite Vorgehensweise.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672069#m1672069pl2016-07-27T11:26:25Z2016-07-27T11:26:25ZFragen zum erstellen moderner Webseiten<p><a href="http://handwerkzeugs.de/confedit.html" rel="nofollow noopener noreferrer">Hier</a> ist ein Beispiel, wo Differenzen angezeigt werden, bspw., wenn Daten im Browser geändert wurden. So kann der Anwender entscheiden, ob er die Änderungen übernimmt oder ohne Speichern rausgeht. Bei herkömmlichen Desktop-Programmen ist eine solche Benutzerführung seit Urzeiten gang und gäbe: Niemand würde bei einem Schreibprogramm erwarten, dass bei jedem Speichervorgang der Client neu geladen wird. Warum also sollte das bei einem Backend so sein!? Die Anwort musst Du freilich selber finden, ich geb hier nur ein paar gute Ideen weiter. Keine Ursache.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672031#m1672031Christian Wansart2016-07-27T09:19:07Z2016-07-27T09:19:07ZFragen zum erstellen moderner Webseiten<p>Guten Morgen,</p>
<blockquote>
<p>Ja, in bestimmten Fällen. Beispielsweise wenn man ein Video auf einer der Plattformen kommentieren möchte, wäre es nicht schön, wenn nach dem Absenden die Seite neu geladen und damit das Video unterbrochen würde. Dann doch lieber im Hintergrund zum Server senden und den Text ins DOM einschieben. Aber wenn man zu einem anderen Video wechselt, wird eine neue Seite aufgerufen und nicht nur das neue Video in die bereits geladene eingefügt. An der Stelle wäre das Vorgehen mit mehr Nachteilen als Nutzen verbunden.</p>
</blockquote>
<p>Da hast du natürlich absolut Recht.</p>
<blockquote>
<p>Das passiert ja nur beim erstmaligen Aufruf. Und wenn man die Frameworks nicht selber hostet, sondern eines der bekannteren CDNs verwendet, ist die Chance nicht unbedingt niedrig, dass die Ressourcen bereits im Cache sind.</p>
</blockquote>
<p>CDN nutze ich grundsätzlich nicht. Ich lade die Sachen immer auf den eigenen Server, da die Ladezeiten einfach deutlich geringer sind. :) Vor allem wenn dann mal einer der CDN-Server ausfällt, hat man ein echtes Problem.</p>
<blockquote>
<p>Und das ist ein klassisches Beispiel, wo die Schuld nicht im Framework zu suchen ist.</p>
</blockquote>
<p>Oh, ich habe mich vermutlich falsch ausgedrückt, das wollte ich nicht tun. Mit reinem JavaScript wäre es vermutlich noch chaotischer. :-)</p>
<blockquote>
<p>Bootstrap muss für einen breiten Anwenderkreis verwendbar sein. Das CSS der Bittersmannseite muss lediglich zu dieser einen passen und kann deshalb darauf optimiert werden. Wenn Bootstrap nicht auf universell verwendbare Klassen sondern konkrete Elemente setzen würde, wäre man bei der Verwendung auf diese Elemente beschränkt. Es ist immer eine Abwägungssache. Mache ich etwas zu Fuß, bin ich frei, alles so zu machen, wie ich mir das vorstelle. Das kostet dann aber unter Umständen eine Menge Entwicklungsarbeit für Dinge, die vielleicht nicht direkt zum Kern der Geschäftslogik gehören, aber trotzdem als Verbindung zwischen den Teilen notwendig sind. Verwende ich ein Framework, dass große Teile des nebensächlichen Krams bereits gelöst hat, bin ich in der Regel schneller am Ziel (unter der Voraussetzung, ich kenne mich mit beiden Vorgehensweisen einigermaßen gut aus und habe keinen grundsätzlichen Lernaufwand mehr). Aber ich sollte dann gemäß dessen Philosophie arbeiten, sonst steht es mir möglicherweise mehr im Weg als dass es ihn mir ebnet. Das Framework muss nun jedoch nicht nur mich zufriedenstellen, sondern einen breiteren Anwenderkreis, und deshalb muss es allgemeiner entworfen werden. Das hat auch zur Folge, dass es eine Menge Funktionen mitbringt, die ich gar nicht brauche. Das passiert aber auch, wenn ich aus einem vorhergehenden Projekt meine dort für die allgemeinen Zwecke erstellte Funktionssammlung mitbringe. Da sind überflüssige Teile drin und manche fehlen. Aber dafür gibts ja bei den Frameworks mit der Modularität eine zumindest entgegenkommende Lösung. Man lädt eben die Module nicht mit, die man gar nicht verwendet.</p>
</blockquote>
<p>Auch hier stimme ich dir natürlich zu. Da wäre es natürlich gut, es möglichst modular zu machen. Oder gar ein Programm, dass überprüft was ich überhaupt nutze und alles ungenutzte rauswerfen, quasi Vorkompilieren – gibt es da etwas in der Art?</p>
<blockquote>
<p>Wenn man es genau nimmt, hat man dieses angebliche Dilemma auch schon im Browser an sich. Der hat auch eine Menge Zeugs an Bord, dass nicht jede Webseite benötigt, und trotzdem musste man das alles mitinstallieren. Genauso wie beim Betriebssystem (von einfach so mitinstallierten Anwendungen ganz zu schweigen).</p>
</blockquote>
<p>Beim Browser ist das aber nicht das große Problem, da dieser ja nur einmal geladen werden muss. Es wäre natürlich schön, wenn mein Firefox etwas schneller starten würde, aber er ist nun nicht so langsam, dass ich das als störend empfinden würde. Es bleibt dahingehend spannend, wenn Mozilla Firefox-Komponenten gegen in Rust geschriebene Komponenten austauscht und die UI möglicherweise mit Webtechnologien gebaut wird – meine Befürchtung ist aber, dass das Aufsetzen auf JavaScript in der Firefox-Benutzeroberfläche ein Fehler ist und den Browser unnötig verlangsamen wird.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672038#m1672038dedlfix2016-07-27T09:39:37Z2016-07-27T09:39:37ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<p>Für Einrichtungen öffentlichen Rechts (Hochschule) gilt die BITV bzw das Landes-Gleichstellungsgesetz, dass allerdings in den meisten Ländern sich am BITV orientiert. Dort ist die Barrierefreiheit/Zugänglichkeit nach Vorbild des WAI vorgeschrieben.</p>
</blockquote>
<p>Gilt das für sämtliche Software, also auch die, die ein Fachbereich für einen berenzten Anwendungsfall aus eigener Kasse in Auftrag gib oder mit eigenen Kräften entwickelt und die nicht öffentlich ausgeschrieben werden muss?</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672177#m1672177Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-28T09:52:52Z2016-07-28T09:52:52ZFragen zum erstellen moderner Webseiten<p>@@MudGuard</p>
<blockquote>
<p>und damit werden dann später durch andere User getätigte Änderungen überbügelt ...</p>
</blockquote>
<p>Das ist kein Problem von <em>offline first</em>. Das kann immer passieren, wenn mehrere Personen gleichzeitig Änderungen vornehmen.</p>
<blockquote>
<p>(was man natürlich auch abfangen könnte,</p>
</blockquote>
<p>Sollte.</p>
<blockquote>
<p>aber das macht noch mehr Aufwand ...)</p>
</blockquote>
<p>Oder man verwendet ein Versionskontrollsystem wie git.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672033#m1672033Matthias Apselmatthias.apsel@selfhtml.orghttp://brückentage.info2016-07-27T09:30:57Z2016-07-27T09:30:57ZFragen zum erstellen moderner Webseiten<p>Hallo Christian Wansart,</p>
<blockquote>
<blockquote>
<p>Das passiert ja nur beim erstmaligen Aufruf. Und wenn man die Frameworks nicht selber hostet, sondern eines der bekannteren CDNs verwendet, ist die Chance nicht unbedingt niedrig, dass die Ressourcen bereits im Cache sind.</p>
</blockquote>
<p>CDN nutze ich grundsätzlich nicht. Ich lade die Sachen immer auf den eigenen Server, da die Ladezeiten einfach deutlich geringer sind. :) Vor allem wenn dann mal einer der CDN-Server ausfällt, hat man ein echtes Problem.</p>
</blockquote>
<p>Das „N“ in „CDN“ steht für „Network“ ;-)</p>
<p>Bis demnächst<br>
Matthias</p>
<div class="signature">-- <br>
Dieses Forum nutzt Markdown. Im <a href="https://wiki.selfhtml.org" rel="nofollow noopener noreferrer">Wiki</a> erhalten Sie <a href="https://wiki.selfhtml.org/wiki/SELFHTML:Forum/Formatierung_der_Beitr%C3%A4ge" rel="nofollow noopener noreferrer">Hilfe bei der Formatierung Ihrer Beiträge</a>.
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672036#m1672036dedlfix2016-07-27T09:35:27Z2016-07-27T09:35:27ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<p>CDN nutze ich grundsätzlich nicht. Ich lade die Sachen immer auf den eigenen Server, da die Ladezeiten einfach deutlich geringer sind. :) Vor allem wenn dann mal einer der CDN-Server ausfällt, hat man ein echtes Problem.</p>
</blockquote>
<p>Gegen Ausfälle gibts Lösungen, à la: wenn nach dem Laden aus dem CDN das jQuery-Objekt nicht vorhanden ist, lädt man eben vom eigenen Server nach.</p>
<blockquote>
<blockquote>
<p>Und das ist ein klassisches Beispiel, wo die Schuld nicht im Framework zu suchen ist.</p>
</blockquote>
<p>Oh, ich habe mich vermutlich falsch ausgedrückt, das wollte ich nicht tun. Mit reinem JavaScript wäre es vermutlich noch chaotischer. :-)</p>
</blockquote>
<p>Auch dann wäre nicht die Programmiersprache schuld.</p>
<blockquote>
<p>[...] Da wäre es natürlich gut, es möglichst modular zu machen. Oder gar ein Programm, dass überprüft was ich überhaupt nutze und alles ungenutzte rauswerfen, quasi Vorkompilieren – gibt es da etwas in der Art?</p>
</blockquote>
<p>Aufwand und Nutzen. Beim Modularisieren wacht der Mensch darüber, dass die Komponenten sauber getrennt geschrieben werden und definiert eventuelle Abhängigkeiten. Natürlich kann man dem Compiler oder wem auch immer auftragen, ungenutzte Teile zu erkennen und zu entfernen. Das ist aber nur bei den Systemen einfach möglich, wo der Compiler genau sagen kann, worauf sich ein Ausdruck bezieht. Wenn man Magic Strings verwenden kann, um irgendwelche Funktionalität zu referenzieren, dann wirds sehr schwierig.</p>
<blockquote>
<p>Beim Browser ist das aber nicht das große Problem, da dieser ja nur einmal geladen werden muss.</p>
</blockquote>
<p>Genau deshalb versucht man, dass Bibliotheken auch nur einmal geladen werden müssen.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672076#m1672076Auge2016-07-27T11:58:30Z2016-07-27T11:58:30ZFragen zum erstellen moderner Webseiten<p>Hallo</p>
<blockquote>
<p>Es wäre natürlich schön, wenn mein Firefox etwas schneller starten würde, aber er ist nun nicht so langsam, dass ich das als störend empfinden würde. Es bleibt dahingehend spannend, wenn Mozilla Firefox-Komponenten gegen in Rust geschriebene Komponenten austauscht und die UI möglicherweise mit Webtechnologien gebaut wird – meine Befürchtung ist aber, dass das Aufsetzen auf JavaScript in der Firefox-Benutzeroberfläche ein Fehler ist und den Browser unnötig verlangsamen wird.</p>
</blockquote>
<p>Die Firefox-UI wird seit jeher mit Webtechniken (<a href="https://de.wikipedia.org/wiki/XML_User_Interface_Language" rel="nofollow noopener noreferrer">XUL</a>) gerendert und auch von JavaScript wird reichlich Gebrauch gemacht (mindestens die Addons). Aber ja, schneller und flüssiger dürfte er gerne sein. Er sollte auch den Arbeitsspeicher nicht auffressen, was ja ein, wenn nicht der Grund für das hakelige Verhalten ist.</p>
<p>Mal sehen, was sich in dieser Hinsicht tut.</p>
<p>Tschö, Auge</p>
<div class="signature">-- <br>
Wo wir Mängel selbst aufdecken, kann sich kein Gegner einnisten.<br>
Wolfgang Schneidewind <strong>*prust*</strong>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672035#m1672035Christian Wansart2016-07-27T09:33:45Z2016-07-27T09:33:45ZFragen zum erstellen moderner Webseiten<p>Guten Morgen,</p>
<blockquote>
<p>Jeder Fall muss für sich individuell betrachtet werden. Eine allgemeine Antwort darauf zu geben oder haben zu wollen läuft quasi auf das Framework-vs-Individualität-Problem hinaus. Entweder es passt vielen, ist aber einigen zu groß oder zu klein, oder es passt wie angegossen, aber anderen gar nicht. Und dazwischen noch jede Menge Grautöne.</p>
</blockquote>
<p>Ja, natürlich. Diese Frage geht bei mir aus einer Projektwoche über die Projekte bis zu jetzigen Zeit zurück. Dort haben wir eine Webseite für einen Kulturverein auf Basis von Wordpress erstellt und es hatte mich so unglaublich frustriert, dass das Backend mit den genutzt Plugins am Smartphone schlichtweg nicht nutzbar war, dabei wäre genau das sehr praktisch gewesen.<br>
In meinem aktuellen Projekt ist das weniger nützlich, da solche Quiz eher am PC erstellt werden, da hier Grafiken, Quellcode als auch LaTeX genutzt wird. Schön wäre es allerdings trotzdem, aber mit dem aktuellen HTML/CSS ist das nicht möglich ohne hin- und herzuscrollen.</p>
<blockquote>
<p>Kommt drauf an. Vielleicht wäre die bessere Lösung statt alles gleichzeitig oder alles erstmal versteckt ein Mittelweg wie beim Menü vom Mediawiki. Die hauptsächlich verwendeten Funktionen sind gleich da, der Rest nach dem Aufklappen.</p>
</blockquote>
<p>Du meinst das auf der linken Seite?</p>
<blockquote>
<p>Du musst dich dafür bei keinem Evangelisten entschuldigen. Allein mit deinem eigenen Gewissen und/oder deinem Auftraggeber musst du grün sein. Evangelisten können nicht mehr als einer von mehreren Ratgebern sein, denn sie kennen in der Regel auch nicht alle deine Gegebenheiten.</p>
</blockquote>
<p>Ich habe mich einige Zeit mit verschiedenen Themen hier im Forum auseinandergesetzt, und speziell bei Gunnar fiel auf, dass er aufgrund sicherlich guter Gründe kein Freund von diesen Frameworks ist. Ich finde diese Haltung interessant und versuche sie zu verstehen, da ich glaube, ohne gleich zu 100 % ihm nachzureden, Vorteile und Verbesserungen für mich selbst daraus herausziehen kann. :-)</p>
<p>Ich denke also, dass ich ihn verstehe und habe mich entsprechend daraufhin entschuldigt. Ich meine, vielleicht irrt er sich und die aktuelle Entwicklung führt dahin, dass neue Reader auch den „unsauberen Code“ interpretieren können. Oder aber vielleicht irrst du dich und in ein paar Jahren bekommt man keinen Arbeitsplatz mehr, wenn man nicht versucht es so zu machen wir er – gut, das Beispiel ist sicherlich übertrieben, aber worauf ich hinaus will: ich nehme einfach alles mit und versuche für mich das beste davon mitzunehmen.</p>
<p>Danke für deine Einsicht! :-)</p>
<blockquote>
<p>... dass der Anwendungsfall das zulässt. Das ist meist nur dann gegeben, wenn man allein an einem Dokument/System arbeitet. Sobald man etwas gemeinsam oder in Konkurrenz zueinander erledigen muss, ist das nicht unbedingt eine gescheite Vorgehensweise.</p>
</blockquote>
<p>Machbar schon, beim Mediawiki geht es ja auch. Da wird, wenn ich mich nicht täusche, dann ein diff angezeigt. (Angabe ohne Gewähr.)</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672037#m1672037Christian Wansart2016-07-27T09:38:56Z2016-07-27T09:38:56ZFragen zum erstellen moderner Webseiten<p>Guten Morgen Matthias,</p>
<blockquote>
<p>Das „N“ in „CDN“ steht für „Network“ ;-)</p>
</blockquote>
<p>![So you're telling me "N" stands for network?](http://i.imgur.com/hnfLboz.jpg "So you're telling me "N" stands for network?")</p>
<p>Gutes Argument, aber wenn die DNS-Auflösung wegen irgendwelcher Probleme nicht funktioniert, ist das schlecht. Ich hatte ein solches Problem vor einigen Monaten mal bei einem jQuery-CDN. Zu der Zeit hatte die Telekom hier allerdings Probleme, weswegen es natürlich nicht unbedingt die Schuld des CDN sein muss.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672046#m1672046dedlfix2016-07-27T10:11:22Z2016-07-27T10:11:22ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<blockquote>
<p>Kommt drauf an. Vielleicht wäre die bessere Lösung statt alles gleichzeitig oder alles erstmal versteckt ein Mittelweg wie beim Menü vom Mediawiki. Die hauptsächlich verwendeten Funktionen sind gleich da, der Rest nach dem Aufklappen.</p>
</blockquote>
<p>Du meinst das auf der linken Seite?</p>
</blockquote>
<p>Das in der oberen Leiste, in der die Bearbeitungsfunktionen sitzen.</p>
<blockquote>
<p>Ich habe mich einige Zeit mit verschiedenen Themen hier im Forum auseinandergesetzt, und speziell bei Gunnar fiel auf, dass er aufgrund sicherlich guter Gründe kein Freund von diesen Frameworks ist. Ich finde diese Haltung interessant und versuche sie zu verstehen, da ich glaube, ohne gleich zu 100 % ihm nachzureden, Vorteile und Verbesserungen für mich selbst daraus herausziehen kann. :-)</p>
</blockquote>
<p>Ich glaube eher, er ist generell kein Freund von Dingen, die nicht seinem Ideal entsprechen, egal ob die von einem Werkzeug oder per Hand erzeugt wurden. Er ist sicher auch kein Freund von Webseiten, die auf Bootstrap verzichten und dann ein noch schlechteres Ergebnis entsteht. Diverse Zwänge erfordern, dass Ideale zugunsten von Kompromissen aufgegeben werden müssen. Ich versuche deshalb nicht nur das Ideal zu kennen, sondern auch die Zwänge. Denn auch wenn ich eigentlich perfektionistisch veranlagt bin, weiß ich auch, dass es nicht perfekt ist, wenn man immer nur zu gewinnen versucht und das Umfeld dabei auf der Strecke bleibt.</p>
<p>Ich verwende Bootstrap, weil es mir hilft, ein angenehmes Aussehen zu erzeugen, obwohl ich in gestalterischer Hinsicht Mägel habe, die sich auch mit intensivem Lernen nicht ausgleichen lassen. Da nützen mir auch keine markigen Sprüche vom verlorenen Designerherzen, wenn ich nie eins hatte und haben werde. Gleichwohl kann ich aber auch Dinge technisch so umsetzen, wie es künstlerisch eher Begabte entworfen haben und kann dann auch meine Meinung sagen, wenn ich Mängel im Konzept oder der Bedienung zu erkennen meine.</p>
<blockquote>
<p>ich nehme einfach alles mit und versuche für mich das beste davon mitzunehmen.</p>
<p>Danke für deine Einsicht! :-)</p>
</blockquote>
<p>Mach dir mal nicht zu viele Gedanken um meine Einsicht. Es gibt Dinge, da sollte man weiterhin in der Sache argumentieren, auch wenn man die Hoffnung auf Einsicht beim Gegenüber aufgegeben hat.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672040#m1672040Christian Wansart2016-07-27T09:47:41Z2016-07-27T09:47:41ZFragen zum erstellen moderner Webseiten<p>Guten Morgen,</p>
<blockquote>
<p>Gegen Ausfälle gibts Lösungen, à la: wenn nach dem Laden aus dem CDN das jQuery-Objekt nicht vorhanden ist, lädt man eben vom eigenen Server nach.</p>
</blockquote>
<p>Meine Lösung: gleich auf dem eigenen Server laden. Wenn mein Server nicht erreichbar ist, ist die Webseite sowieso nicht erreichbar. Scheint für mich am sinnvollsten, anstatt sich auf andere verlassen zu müssen.</p>
<blockquote>
<p>Auch dann wäre nicht die Programmiersprache schuld.</p>
</blockquote>
<p>Das kann ich nur bedingt unterschreiben. Speziell Sprachen wie JavaScript oder Perl lassen sehr seltsame und unsaubere Konstrukte zu. Letztlich ist natürlich der Entwickler, der damit am Ende programmiert verantwortlich, aber ich denke, wenn die Sprache versucht da entgegen zu wirken, kann das durchaus sinnvoll sein. Ich glaube aber, dass bestimmte Programmiergruppen eher dazu neigen, unsauber zu programmieren, sodass mir das in JavaScript stärker auffällt, als beispielsweise in C++. (Das ist natürlich subjektiv aus den Projekten, die ich bisher gesehen habe.)</p>
<p>Und nein, ich bin kein Python-Freund, deren Syntax mag ich persönlich genauso wenig.</p>
<blockquote>
<p>Aufwand und Nutzen. Beim Modularisieren wacht der Mensch darüber, dass die Komponenten sauber getrennt geschrieben werden und definiert eventuelle Abhängigkeiten. Natürlich kann man dem Compiler oder wem auch immer auftragen, ungenutzte Teile zu erkennen und zu entfernen. Das ist aber nur bei den Systemen einfach möglich, wo der Compiler genau sagen kann, worauf sich ein Ausdruck bezieht. Wenn man Magic Strings verwenden kann, um irgendwelche Funktionalität zu referenzieren, dann wirds sehr schwierig.</p>
</blockquote>
<p>Gut, dynamisches Laden habe ich nicht beachtet. Für den statischen Teil wäre ein Abdeckungstest sicherlich möglich. Hm, schwierig..</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672039#m1672039Christian Krusehttps://wwwtech.de/about2016-07-27T09:43:40Z2016-07-27T09:43:40ZFragen zum erstellen moderner Webseiten<p>Hallo dedlfix,</p>
<blockquote>
<p>Gilt das für sämtliche Software, also auch die, die ein Fachbereich für einen berenzten Anwendungsfall aus eigener Kasse in Auftrag gib oder mit eigenen Kräften entwickelt und die nicht öffentlich ausgeschrieben werden muss?</p>
</blockquote>
<p>Die BITV (und deren Äquivalente) gelten für alle öffentlich zugänglichen Inter- und Intranet-Anwendungen - und damit trifft das m.E.n. auch auf dieses Projekt zu, die Studierenden sind ja kein geschlossener Nutzerkreis im Sinne des Gesetzestextes.</p>
<p>Wer das Angebot entwickelt ist irrelevant.</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672041#m1672041Christian Wansart2016-07-27T09:50:12Z2016-07-27T09:50:12ZFragen zum erstellen moderner Webseiten<p>Hallo Christian – toller Name <em>grins</em></p>
<blockquote>
<p>Die BITV (und deren Äquivalente) gelten für alle öffentlich zugänglichen Inter- und Intranet-Anwendungen - und damit trifft das m.E.n. auch auf dieses Projekt zu, die Studierenden sind ja kein geschlossener Nutzerkreis im Sinne des Gesetzestextes.</p>
</blockquote>
<p>Das ist sehr interessant, denn über das Thema wurden wir nicht aufgeklärt. In keiner der Vorlesungen – trotz Fachrichtung Medieninformatik.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672047#m1672047marctrixself@mhis.dehttp://mhis.de2016-07-27T10:11:54Z2016-07-27T10:11:54ZFragen zum erstellen moderner Webseiten<p>Hej Christian,</p>
<blockquote>
<blockquote>
<p>Gilt das für sämtliche Software, also auch die, die ein Fachbereich für einen berenzten Anwendungsfall aus eigener Kasse in Auftrag gib oder mit eigenen Kräften entwickelt und die nicht öffentlich ausgeschrieben werden muss?</p>
</blockquote>
<p>Die BITV (und deren Äquivalente) gelten für alle öffentlich zugänglichen Inter- und Intranet-Anwendungen - und damit trifft das m.E.n. auch auf dieses Projekt zu, die Studierenden sind ja kein geschlossener Nutzerkreis im Sinne des Gesetzestextes.</p>
</blockquote>
<p>BITV steht für <em><a href="https://www.gesetze-im-internet.de/bitv_2_0/BJNR184300011.html" rel="nofollow noopener noreferrer">Verordnung zur Schaffung barrierefreier Informationstechnik nach dem Behindertengleichstellungsgesetz (Barrierefreie-Informationstechnik-Verordnung - BITV 2.0)</a></em> und es handelt sich dabei um eine Bundesverordnung. Ihr Geltungsbereich erstreckt sich somit auch auf Bundesbehörden und nicht auf Einrichtungen der Länder.</p>
<p>Der genaue Wortlaut:</p>
<p>§ 1 Sachlicher Geltungsbereich
Die Verordnung gilt für folgende Angebote der Behörden der Bundesverwaltung:</p>
<ol>
<li>Internetauftritte und -angebote,</li>
<li>Intranetauftritte und -angebote, die öffentlich zugänglich sind, und</li>
<li>mittels Informationstechnik realisierte grafische Programmoberflächen, die öffentlich zugänglich sind.</li>
</ol>
<p>Dazu gehören auch mittelbare Bundeseinrichtungen, wie z. B. Krankenkassen (unter bestimmten Voraussetzungen).</p>
<p>Was in den Ländern gilt, ist für jedes Bundesland extra geregelt.</p>
<p>Die BITV 2.0 hat mit der WAI erst mal nichts zu tun - sie ist zwar zu weiten Teilen eine fast wörtliche Übersetzunng der WCAG, es handelt sich aber dabei nicht um die <a href="https://www.w3.org/Translations/WCAG20-de/" rel="nofollow noopener noreferrer">offizielle Übersetzung der WCAG 2.0</a> (diese gibt es nämlich auch). So ist es nicht verwunderlich, dass sich begrifflich, in verschiedenen Details aber auch inhaltlich von der WCAG 2.0 unterscheidet. Außerdem fehlen ihr sämtlichen erläuternden Dokumente.</p>
<blockquote>
<p>Wer das Angebot entwickelt ist irrelevant.</p>
</blockquote>
<p>Richtig. Entscheidend ist, für wen etwas entwickelt wurde (öffentlich oder nicht) - bei nicht öffentlichen Angeboten mit Defiziten bei der Zugänglichkeit kann es aber arbeitsrechtliche Probleme geben - schließlich sollen Menschen mit Behinderungen auch eine online-Erfassung bedienen können. Schließlich schreiben Bundesbehörden in jede Stellenausschreibung, dass sich auch Menschen mit Behidnerungen bewerben dürfen.</p>
<p>Das klingt dann z. B. so:</p>
<p>"Schwerbehinderte Menschen werden bei gleicher Eignung, Befähigung und fachlicher Leistung besonders berücksichtigt (SGB IX)."</p>
<p>Marc</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672043#m1672043Christian Krusehttps://wwwtech.de/about2016-07-27T09:53:51Z2016-07-27T09:53:51ZFragen zum erstellen moderner Webseiten<p>Hallo Christian,</p>
<blockquote>
<p>Das kann ich nur bedingt unterschreiben. Speziell Sprachen wie JavaScript oder Perl lassen sehr seltsame und unsaubere Konstrukte zu. Letztlich ist natürlich der Entwickler, der damit am Ende programmiert verantwortlich, aber ich denke, wenn die Sprache versucht da entgegen zu wirken, kann das durchaus sinnvoll sein. Ich glaube aber, dass bestimmte Programmiergruppen eher dazu neigen, unsauber zu programmieren, sodass mir das in JavaScript stärker auffällt, als beispielsweise in C++. (Das ist natürlich subjektiv aus den Projekten, die ich bisher gesehen habe.)</p>
</blockquote>
<p>Ausgerechnet C++ als Beispiel anzubringen, die weniger unsaubere Konstrukte zulässt, ist aber sehr ironisch ;-)</p>
<ul>
<li>drei Turing-Vollständige Sprachen in einem Compiler (Templates sind seit C++11 Turing-Vollständig, der Preprozessor ist es schon länger)</li>
<li><code>#define TRUE FALSE</code> (happy debugging…)</li>
<li><code>malloc</code> vs <code>new</code></li>
<li>Pointer-Arithmetik</li>
<li>Mehrfachvererbung</li>
</ul>
<p>Mir fallen noch jede Menge mehr Beispiele ein, soll ich weiter machen? ;-)</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672051#m1672051dedlfix2016-07-27T10:21:53Z2016-07-27T10:21:53ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<p>Meine Lösung: gleich auf dem eigenen Server laden. Wenn mein Server nicht erreichbar ist, ist die Webseite sowieso nicht erreichbar. Scheint für mich am sinnvollsten, anstatt sich auf andere verlassen zu müssen.</p>
</blockquote>
<p>Ja, in Punkto Ausfallsicherheit, aber nicht in Punkto Ladeoptimierung.</p>
<blockquote>
<blockquote>
<p>Auch dann wäre nicht die Programmiersprache schuld.</p>
</blockquote>
<p>Das kann ich nur bedingt unterschreiben. Speziell Sprachen wie JavaScript oder Perl lassen sehr seltsame und unsaubere Konstrukte zu.</p>
</blockquote>
<p>Zeig mir das Werkzeug, das universell einsetzbar ist und keine Unsauberkeit zulässt. Abgesehen davon, dass man sich erstmal auf Unsauberkeit einigen müsste.</p>
<blockquote>
<p>Und nein, ich bin kein Python-Freund, deren Syntax mag ich persönlich genauso wenig.</p>
</blockquote>
<p>Das hilft auch nur, Disziplin beim Einrücken zu halten.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672042#m1672042Christian Krusehttps://wwwtech.de/about2016-07-27T09:52:07Z2016-07-27T09:52:07ZFragen zum erstellen moderner Webseiten<p>Hallo Namensvetter ;-)</p>
<blockquote>
<p>Das ist sehr interessant, denn über das Thema wurden wir nicht aufgeklärt. In keiner der Vorlesungen – trotz Fachrichtung Medieninformatik.</p>
</blockquote>
<p>Nicht böse gemeint, aber ich bin nicht überrascht…</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672044#m1672044Christian Wansart2016-07-27T09:56:27Z2016-07-27T09:56:27ZFragen zum erstellen moderner Webseiten<p>Hallo Christian,</p>
<blockquote>
<p>Nicht böse gemeint, aber ich bin nicht überrascht…</p>
</blockquote>
<p>das nehme ich dir nicht böse, wenn du wüsstest was noch so alles passiert oder eben nicht passiert. ;-)</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672045#m1672045Christian Wansart2016-07-27T10:07:36Z2016-07-27T10:07:36ZFragen zum erstellen moderner Webseiten<p>Hallo Christian,</p>
<blockquote>
<p>Ausgerechnet C++ als Beispiel anzubringen, die weniger unsaubere Konstrukte zulässt, ist aber sehr ironisch ;-)</p>
</blockquote>
<p>nun ja, wie gesagt, subjektiv habe ich C++-Projekte bisher als sauberer empfunden als JavaScript-Projekte. Das kann aber auch ein glücklicher Zufall sein.</p>
<p>Im Hochschulbereich programmiere ich zum Großteil in Java und bin damit bestens zufrieden, gerade weil es anders als C++ einige Sachen eben nicht zulässt, wie GOTO. Aber ich erkenne bei C++ an, dass es durchaus nützlich ist, wenn man ordentlich damit programmiert.</p>
<blockquote>
<ul>
<li>drei Turing-Vollständige Sprachen in einem Compiler (Templates sind seit C++11 Turing-Vollständig, der Preprozessor ist es schon länger)</li>
</ul>
</blockquote>
<p>Ist das nun ein Für- oder Gegenargument?</p>
<blockquote>
<ul>
<li><code>#define TRUE FALSE</code> (happy debugging…)</li>
</ul>
</blockquote>
<p>Auch wenn ich das Beispiel sehr lustig finde, ist es unrealistisch. Wieso sollte man so etwas in den Quellcode schreiben? Zumal es seit C++ true und false als Schlüsselwörter gibt. :-)</p>
<p>Bjarne Stroustrup selbst warnt immer wieder vor der Nutzung von #define. Sie sind Bestandteil von C++ und können genutzt werden, aber außer für Header-Guards sehe ich da kaum einen vernünftigen Nutzungsgrund.</p>
<blockquote>
<ul>
<li><code>malloc</code> vs <code>new</code></li>
</ul>
</blockquote>
<p><code>new</code> in C++, <code>malloc</code> in C. Nach meinem Wissen nach ist <code>new</code> Typsicher, was malloc() eben nicht ist. Abgesehen davon sieht <code>new</code> optisch im Codefluss einfach sauberer aus, vor allem beim Arrays.</p>
<blockquote>
<ul>
<li>Pointer-Arithmetik</li>
</ul>
</blockquote>
<p>Eine wunderbare Sache – wen man damit umgehen kann. :-) Ich glaube aber, dass das Verständnis hilfreich ist zum Allgemeinen Verständnis. Aber auch hier bietet C++11 und neuer schöne Konstrukte um Zeiger zum Großteil zu umgehen.</p>
<blockquote>
<ul>
<li>Mehrfachvererbung</li>
</ul>
</blockquote>
<p>Ach komm, eine <a href="https://de.wikipedia.org/wiki/Diamond-Problem#Modellierung_in_C.2B.2B" rel="nofollow noopener noreferrer">Raute</a> braucht man doch tagtäglich in der Programmierung! :P</p>
<blockquote>
<p>Mir fallen noch jede Menge mehr Beispiele ein, soll ich weiter machen? ;-)</p>
</blockquote>
<p>Ich werde dich nicht aufhalten. :-)</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672049#m16720491unitedpower2016-07-27T10:16:31Z2016-07-27T10:16:31ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Ausgerechnet C++ als Beispiel anzubringen, die weniger unsaubere Konstrukte zulässt, ist aber sehr ironisch ;-)</p>
<ul>
<li>drei Turing-Vollständige Sprachen in einem Compiler (Templates sind seit C++11 Turing-Vollständig, der Preprozessor ist es schon länger)</li>
<li><code>#define TRUE FALSE</code> (happy debugging…)</li>
<li><code>malloc</code> vs <code>new</code></li>
<li>Pointer-Arithmetik</li>
<li>Mehrfachvererbung</li>
</ul>
<p>Mir fallen noch jede Menge mehr Beispiele ein, soll ich weiter machen? ;-)</p>
</blockquote>
<p>Ja bitte, ich wollte auch schon einen Rant starten.</p>
<ul>
<li>Schlechtes Tooling</li>
<li>Wuchernder Sprachkern (wenn man überhaupt sowas wie einen Kern identifizieren kann)</li>
<li>Wuchernder Compiler</li>
<li>Pointer-Arithmetik (kann man nicht oft genug sagen)</li>
<li>verboses und viel kompliziertes Typsystem</li>
</ul>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672048#m1672048Christian Krusehttps://wwwtech.de/about2016-07-27T10:13:37Z2016-07-27T10:13:37ZFragen zum erstellen moderner Webseiten<p>Hallo Christian,</p>
<blockquote>
<blockquote>
<ul>
<li>drei Turing-Vollständige Sprachen in einem Compiler (Templates sind seit C++11 Turing-Vollständig, der Preprozessor ist es schon länger)</li>
</ul>
</blockquote>
<p>Ist das nun ein Für- oder Gegenargument?</p>
</blockquote>
<p>Da KISS gilt: ein starkes Gegenargument.</p>
<blockquote>
<blockquote>
<ul>
<li><code>#define TRUE FALSE</code> (happy debugging…)</li>
</ul>
</blockquote>
<p>Auch wenn ich das Beispiel sehr lustig finde, ist es unrealistisch. Wieso sollte man so etwas in den Quellcode schreiben? Zumal es seit C++ true und false als Schlüsselwörter gibt. :-)</p>
</blockquote>
<p><code>#define true false</code> ist auch möglich. Und es geht ja auch nicht darum, warum man das tun sollte, sondern dass man es tun kann. Du sprachst ja davon, dass die Sprache unsaubere Konstrukte zulässt.</p>
<blockquote>
<blockquote>
<ul>
<li><code>malloc</code> vs <code>new</code></li>
</ul>
</blockquote>
<p><code>new</code> in C++, <code>malloc</code> in C. Nach meinem Wissen nach ist <code>new</code> Typsicher, was malloc() eben nicht ist. Abgesehen davon sieht <code>new</code> optisch im Codefluss einfach sauberer aus, vor allem beim Arrays.</p>
</blockquote>
<p>Möglich ist es aber beides zu benutzen, und darum ging es mir hier.</p>
<blockquote>
<blockquote>
<ul>
<li>Pointer-Arithmetik</li>
</ul>
</blockquote>
<p>Eine wunderbare Sache – wen man damit umgehen kann. :-)</p>
</blockquote>
<p>Niemand kann zuverlässig mit Pointer-Arithmetik umgehen. Der Nachweis wird seit 40 Jahren geführt: Out-Of-Bound-Fehler, Buffer Overflows und ähnliche Fehler sind zuverlässige Fehlerquellen und sorgen immer wieder für Remote-Execution-Lücken. Und das sage ich mit etwa 10 Jahren aktiver C-Erfahrung. Nicht umsonst sind Go und Rust entstanden.</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672052#m1672052Christian Wansart2016-07-27T10:24:06Z2016-07-27T10:24:06ZFragen zum erstellen moderner Webseiten<p>Guten Tag,</p>
<blockquote>
<p>Das in der oberen Leiste, in der die Bearbeitungsfunktionen sitzen.</p>
</blockquote>
<p>ah danke!</p>
<blockquote>
<p>Ich glaube eher, er ist generell kein Freund von Dingen, die nicht seinem Ideal entsprechen, egal ob die von einem Werkzeug oder per Hand erzeugt wurden. Er ist sicher auch kein Freund von Webseiten, die auf Bootstrap verzichten und dann ein noch schlechteres Ergebnis entsteht. Diverse Zwänge erfordern, dass Ideale zugunsten von Kompromissen aufgegeben werden müssen.</p>
</blockquote>
<p>Möglicherweise hast du Recht, aber selbst wenn, dann hat seine Art dazu geführt, dass ich mich nun in die Themen, speziell Barrierefreiheit einlese. Er wird ja vermutlich nicht hinter dir mit einer Axt auftauchen, wenn du seine Meinung nicht zu 100 % teilst.</p>
<p><img src="https://i.imgur.com/jD9Goh6.jpg" alt="You didn't program barrier-free?" title="You didn't program barrier-free?" loading="lazy"></p>
<blockquote>
<p>Ich versuche deshalb nicht nur das Ideal zu kennen, sondern auch die Zwänge. Denn auch wenn ich eigentlich perfektionistisch veranlagt bin, weiß ich auch, dass es nicht perfekt ist, wenn man immer nur zu gewinnen versucht und das Umfeld dabei auf der Strecke bleibt.</p>
</blockquote>
<p>Das kenne ich sehr gut. Ich bessere gerne nach und versuche möglichste das Optimale herauszuholen. Leider fehlt mir da häufig noch die Einsicht etwas „unperfekt“ zu belassen.</p>
<blockquote>
<p>Ich verwende Bootstrap, weil es mir hilft, ein angenehmes Aussehen zu erzeugen, obwohl ich in gestalterischer Hinsicht Mägel habe, die sich auch mit intensivem Lernen nicht ausgleichen lassen. Da nützen mir auch keine markigen Sprüche vom verlorenen Designerherzen, wenn ich nie eins hatte und haben werde. Gleichwohl kann ich aber auch Dinge technisch so umsetzen, wie es künstlerisch eher Begabte entworfen haben und kann dann auch meine Meinung sagen, wenn ich Mängel im Konzept oder der Bedienung zu erkennen meine.</p>
</blockquote>
<p>Gut, das kann ich nachvollziehen. Ich nutze es grundsätzlich um mir Anfangs Zeit zu ersparen, da ich mich bei dem aktuellen Projekt zuerst auf das Backend konzentrierte. Grundsätzlich finde ich Bootstrap aber eher hässlich und monoton, wenn man es auf zig Webseiten vorfindet.</p>
<blockquote>
<p>Mach dir mal nicht zu viele Gedanken um meine Einsicht. Es gibt Dinge, da sollte man weiterhin in der Sache argumentieren, auch wenn man die Hoffnung auf Einsicht beim Gegenüber aufgegeben hat.</p>
</blockquote>
<p>Nun ja, man muss bei einer Diskussion ja nicht zu einem einzigen Schluss kommen. Ich denke es hilft aber um über sich selbst und seinen Aussagen zu reflektieren. Ich irre mich häufig und bin froh, wenn man mich entsprechend auf meine Fehler hinweist. Ich denke aber auch, dass andere durch Diskussionen, ähnlich wie ich profitieren können. Da hilft es, wenn man versucht sein Gegenüber zu verstehen, auch ohne dass man seine Meinung unbedingt teilen muss.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672050#m1672050Christian Krusehttps://wwwtech.de/about2016-07-27T10:18:55Z2016-07-27T10:18:55ZFragen zum erstellen moderner Webseiten<p>Hallo marctrix,</p>
<blockquote>
<blockquote>
<blockquote>
<p>Gilt das für sämtliche Software, also auch die, die ein Fachbereich für einen berenzten Anwendungsfall aus eigener Kasse in Auftrag gib oder mit eigenen Kräften entwickelt und die nicht öffentlich ausgeschrieben werden muss?</p>
</blockquote>
<p>Die BITV (und deren Äquivalente) gelten für alle öffentlich zugänglichen Inter- und Intranet-Anwendungen - und damit trifft das m.E.n. auch auf dieses Projekt zu, die Studierenden sind ja kein geschlossener Nutzerkreis im Sinne des Gesetzestextes.</p>
</blockquote>
<p>BITV steht für <em><a href="https://www.gesetze-im-internet.de/bitv_2_0/BJNR184300011.html" rel="nofollow noopener noreferrer">Verordnung zur Schaffung barrierefreier Informationstechnik nach dem Behindertengleichstellungsgesetz (Barrierefreie-Informationstechnik-Verordnung - BITV 2.0)</a></em> und es handelt sich dabei um eine Bundesverordnung. Ihr Geltungsbereich erstreckt sich somit auch auf Bundesbehörden und nicht auf Einrichtungen der Länder.</p>
</blockquote>
<p>Bitte immer alles lesen, was ich schreibe. Ich schrieb „die BITV (und deren Äquivalente)” und bezog mich dabei auf mein <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672029#m1672029" rel="noopener noreferrer">vorhergehendes Posting</a>, in dem ich eklärte: „für Einrichtungen öffentlichen Rechts (Hochschule) gilt die BITV bzw das Landes-Gleichstellungsgesetz, dass allerdings in den meisten Ländern sich am BITV orientiert.” BITV - öffentliche Einrichtungen des Bundes, Landes-Gleichstellungsgesetz - öffentliche Einrichtungen des Landes.</p>
<blockquote>
<p>Die BITV 2.0 hat mit der WAI erst mal nichts zu tun</p>
</blockquote>
<p>Bitte lesen, was ich schrieb und keine Worte in den Mund legen: „nach Vorbild des WAI.”</p>
<blockquote>
<blockquote>
<p>Wer das Angebot entwickelt ist irrelevant.</p>
</blockquote>
<p>Richtig. Entscheidend ist, für wen etwas entwickelt wurde (öffentlich oder nicht) - bei nicht öffentlichen Angeboten mit Defiziten bei der Zugänglichkeit kann es aber arbeitsrechtliche Probleme geben - schließlich sollen Menschen mit Behinderungen auch eine online-Erfassung bedienen können. Schließlich schreiben Bundesbehörden in jede Stellenausschreibung, dass sich auch Menschen mit Behidnerungen bewerben dürfen.</p>
</blockquote>
<p>Richtig.</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672053#m1672053Christian Wansart2016-07-27T10:31:37Z2016-07-27T10:31:37ZFragen zum erstellen moderner Webseiten<p>Hallo Christian,</p>
<blockquote>
<p><code>#define true false</code> ist auch möglich. Und es geht ja auch nicht darum, warum man das tun sollte, sondern dass man es tun kann. Du sprachst ja davon, dass die Sprache unsaubere Konstrukte zulässt.</p>
</blockquote>
<p>Gut, da hast du natürlich recht.</p>
<blockquote>
<p>Möglich ist es aber beides zu benutzen, und darum ging es mir hier.</p>
</blockquote>
<p>Stimmt wohl.</p>
<blockquote>
<p>Niemand kann zuverlässig mit Pointer-Arithmetik umgehen. Der Nachweis wird seit 40 Jahren geführt: Out-Of-Bound-Fehler, Buffer Overflows und ähnliche Fehler sind zuverlässige Fehlerquellen und sorgen immer wieder für Remote-Execution-Lücken. Und das sage ich mit etwa 10 Jahren aktiver C-Erfahrung. Nicht umsonst sind Go und Rust entstanden.</p>
</blockquote>
<p>Da kann ich dir auch nicht Widersprechen. Mir ging es um das grundsätzliche Verständnis, wie Adressen und co. funktionieren, was mir programmiertechnisch mit Zeigern sehr gut abgebildet und gezeigt werden kann.</p>
<p>In der Hochschule gibt es einige Studenten die schon mit einfachen <code>int[] zahlen = new int[42];</code> in Java Probleme haben, da sie das Konzept der Speicherallokierung nicht verstehen. Ich denke, eine Einführung in frühen Semestern in C wäre durchaus sinnvoll.</p>
<p>Ich freue mich aber über Entwicklungen wir Rust – es bleibt nur abzuwarten, wie stark sie in Zukunft genutzt werden.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672054#m1672054Christian Wansart2016-07-27T10:34:42Z2016-07-27T10:34:42ZFragen zum erstellen moderner Webseiten<blockquote>
<ul>
<li>Schlechtes Tooling</li>
<li>Wuchernder Sprachkern (wenn man überhaupt sowas wie einen Kern identifizieren kann)</li>
<li>Wuchernder Compiler</li>
</ul>
</blockquote>
<p>Das kann ich so unterschreiben, weshalb ich mit C oder Java deutlich glücklicher bin.</p>
<blockquote>
<ul>
<li>Pointer-Arithmetik (kann man nicht oft genug sagen)</li>
</ul>
</blockquote>
<p>Das halt ich nicht für grundsätzlich schlecht. Ich halte die Nutzung aber selbst auf ein Minimum.</p>
<blockquote>
<ul>
<li>verboses und viel kompliziertes Typsystem</li>
</ul>
</blockquote>
<p>Du meinst wegen der Ausgaben bei Fehlern? Insgesamt ziehe ich starke Typisierung einer dynamischen Typisierung vor.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672096#m1672096marctrixself@mhis.dehttp://mhis.de2016-07-27T15:33:00Z2016-07-27T15:33:00ZFragen zum erstellen moderner Webseiten<p>Hej Christian,</p>
<blockquote>
<blockquote>
<p>Die BITV 2.0 hat mit der WAI erst mal nichts zu tun</p>
</blockquote>
<p>Bitte lesen, was ich schrieb</p>
</blockquote>
<p>Habe ich - wenn ich mich recht erinnere standen da so Formulierungen wie mMn o.ä.</p>
<blockquote>
<p>und keine Worte in den Mund legen: „nach Vorbild des WAI.”</p>
</blockquote>
<p>War aus dem Kopf "zitiert", wollte mit meinem posting deines nur bekräftigen und ergänzen. Hätte man so vielleicht auch verstehen können, aber nicht müssen, daher mal der Hinweis: wenn du mir Wohlwollen unterstellst, wirst du in den meisten Fällen richtig liegen</p>
<p>;-)</p>
<p>Marc</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672055#m1672055Christian Wansart2016-07-27T10:37:10Z2016-07-27T10:37:10ZFragen zum erstellen moderner Webseiten<p>Guten Tag,</p>
<blockquote>
<p>Ja, in Punkto Ausfallsicherheit, aber nicht in Punkto Ladeoptimierung.</p>
</blockquote>
<p>Du meinst, dass es schneller geht, wenn ich einen fremden Server erst anfragen muss?</p>
<blockquote>
<p>Zeig mir das Werkzeug, das universell einsetzbar ist und keine Unsauberkeit zulässt. Abgesehen davon, dass man sich erstmal auf Unsauberkeit einigen müsste.</p>
</blockquote>
<p>Gutes Argument, du hast da recht.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672059#m1672059Christian Krusehttps://wwwtech.de/about2016-07-27T11:11:09Z2016-07-27T11:11:09ZFragen zum erstellen moderner Webseiten<p>Hallo Christian,</p>
<blockquote>
<blockquote>
<ul>
<li>verboses und viel kompliziertes Typsystem
Du meinst wegen der Ausgaben bei Fehlern? Insgesamt ziehe ich starke Typisierung einer dynamischen Typisierung vor.</li>
</ul>
</blockquote>
</blockquote>
<p>Das sehe ich auch so, aber das Typ-System ist einfach zu komplex; wie gesagt, Templates sind in C++11 Turing-Vollständig. Das Typ-System(!) ist Turing-Vollständig. Mal abgesehen davon, dass das Typ-System nicht viel wert ist, wenn ich jederzeit ein <code>(int *)(void *)</code> machen kann:</p>
<pre><code class="block">➜ ckruse@vali ~ % cat test.cpp
#include <iostream>
int main(void) {
float a = 1.0;
int *b = (int *)(void *)&a;
std::cout << *b << "\n";
return 0;
}
➜ ckruse@vali ~ % g++ -Wall -o test test.cpp
➜ ckruse@vali ~ % ./test
1065353216
➜ ckruse@vali ~ %
</code></pre>
<p>Der Umweg über <code>(void *)</code> um zu verdeutlichen, dass ich wirklich beliebige Objekte casten kann.</p>
<p>Beispiele für gute Typ-Systeme sind IMHO Haskell und Rust (wobei sich Rust sehr stark bei Haskell bedient hat).</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672066#m16720661unitedpower2016-07-27T11:17:39Z2016-07-27T11:20:08ZFragen zum erstellen moderner Webseiten<blockquote>
<blockquote>
<ul>
<li>verboses und viel kompliziertes Typsystem
Du meinst wegen der Ausgaben bei Fehlern?</li>
</ul>
</blockquote>
</blockquote>
<p>Nein, das meine ich nicht. Die Fehlererkennung vor der Laufzeit ist ja gerade der Clue bei Typsystemen, und je mehr Fehler man auf diese Weise aufdecken kann, desto besser.</p>
<blockquote>
<p>Insgesamt ziehe ich starke Typisierung einer dynamischen Typisierung vor.</p>
</blockquote>
<p>C++ ist schwach und statisch typisiert, das heißt das einige Typfehler zwar vom Compiler erkannt werden können (das ist die statische Komponenten), aber dass zur Laufzeit trotzdem noch Typfehler auftreten können (das ist die schwache Komponente).</p>
<p>Worauf ich eigentlich hinaus wollte: Das C++ Typsystem ist irre kompliziert und sehr langatmig, mindestens auf zwei Weisen: Es gibt nur wenige Typinferenz-Regeln, das heißt Typannotationen müssen in den meisten Fällen ausgeschrieben werden. Und zweitens werden Typannotationen oft über Teilausdrücke fragmentiert, das macht sie schlechter lesbar. Ein Beispiel aus der <a href="https://en.wikibooks.org/wiki/C%2B%2B_Programming/Examples" rel="nofollow noopener noreferrer">Wikipedia</a>.</p>
<pre><code class="block language-c++">vector<span class="token operator"><</span><span class="token keyword">int</span><span class="token operator">></span> <span class="token function">pick_vector_with_biggest_fifth_element</span><span class="token punctuation">(</span>
vector<span class="token operator"><</span><span class="token keyword">int</span><span class="token operator">></span> left<span class="token punctuation">,</span>
vector<span class="token operator"><</span><span class="token keyword">int</span><span class="token operator">></span> right
<span class="token punctuation">)</span>
</code></pre>
<p>Der Rückgabewert der Funktion wird <strong>vor</strong> der Definition notiert, die Typen für die Parameter <strong>innerhalb</strong> der formalen Parameterliste. Ich bevorzuge da Typannotationen wie in funktionalen Sprachen. In PureScript würde man diesen Typen zum Beispiel so angeben:</p>
<pre><code class="block language-haskell"><span class="token hvariable">pick_vector_with_biggest_fifth_element</span> <span class="token operator">::</span> <span class="token punctuation">(</span><span class="token constant">Vector</span> <span class="token constant">Int</span><span class="token punctuation">,</span> <span class="token constant">Vector</span> <span class="token constant">Int</span><span class="token punctuation">)</span> <span class="token operator">-></span> <span class="token constant">Vector</span> <span class="token constant">Int</span>
</code></pre>
<p>(Mit Haskell-Syntax-Highlighting, weil 's besser aussieht).</p>
<p>Darüber hinaus finde ich das Typsystem kompliziert in dem Sinne, dass ihm kein formales Schema zugrunde liegt und seine Regeln deshalb schwer zu erfassen sind. Es kann nicht mit mathematischen Theorien auf diesem Gebiet (Typtheorie, Beweistheorie oder Kategorientheorie) erklärt werden. Das mag ziemlich realitätsverdrossen klingen, aber es führt in der Praxis einfach dazu, dass man viele Datentypen immer wieder neu definiert anstatt sie durch geeignete Spezialisierungen abstrakterer Typen zu definieren (Functor, Monoid, Monad, Comonad <a href="https://github.com/fantasyland/fantasy-land" rel="noopener noreferrer">etc.</a>). Algebraische Typsysteme sind insofern simpler, als dass ihre Regeln sehr transparent und nachvollziehbar sind – nicht simpler im Sinne von "einfacher zu erlernen".</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672061#m1672061dedlfix2016-07-27T11:13:24Z2016-07-27T11:13:24ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<blockquote>
<p>Ja, in Punkto Ausfallsicherheit, aber nicht in Punkto Ladeoptimierung.</p>
</blockquote>
<p>Du meinst, dass es schneller geht, wenn ich einen fremden Server erst anfragen muss?</p>
</blockquote>
<p>Der Punkt ist ja, dass der Browser weder im CDN noch bei dir anfragen muss, weil er es wegen anderer Gelegenheiten schon im Chache hat. Die Wahrscheinlichkeit beim CDN ist dabei vergleichsweise hoch.</p>
<p>Die Ladezeit beim Cache-Miss ist auch nicht mit Sicherheit vorhersagbar.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672063#m1672063Matthias Apselmatthias.apsel@selfhtml.orghttp://brückentage.info2016-07-27T11:14:30Z2016-07-27T11:14:30ZFragen zum erstellen moderner Webseiten<p>Hallo Christian Wansart,</p>
<blockquote>
<blockquote>
<p>Ja, in Punkto Ausfallsicherheit, aber nicht in Punkto Ladeoptimierung.</p>
</blockquote>
<p>Du meinst, dass es schneller geht, wenn ich einen fremden Server erst anfragen muss?</p>
</blockquote>
<p>Nein. Die Wahrscheinlichkeit, dass sich eine bestimmte Ressource schon im Cache des Browsers befindet, ist recht hoch. Zugegeben, das betrifft nur die Erstbesuche. Danach ist ja auch deine Ressource gecached.</p>
<p>Bis demnächst<br>
Matthias</p>
<div class="signature">-- <br>
Dieses Forum nutzt Markdown. Im <a href="https://wiki.selfhtml.org" rel="nofollow noopener noreferrer">Wiki</a> erhalten Sie <a href="https://wiki.selfhtml.org/wiki/SELFHTML:Forum/Formatierung_der_Beitr%C3%A4ge" rel="nofollow noopener noreferrer">Hilfe bei der Formatierung Ihrer Beiträge</a>.
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672128#m1672128Der Martin2016-07-27T23:41:20Z2016-07-27T23:41:20ZFragen zum erstellen moderner Webseiten<p>n'Abend,</p>
<blockquote>
<blockquote>
<p>Noch vor zwei, drei Jahren hat man hier regelmäßig die Mahnung eingefangen, dass der Leser Javascript (JS) abgeschaltet haben könnte. Also (auch) AJAX als luxuriöses "nice to have".</p>
</blockquote>
<p>Meinem Empfinden nach ist es zwar um einiges länger als zwei oder drei Jahre her, dass diese Warnung hier oft kam. Ja, es gab eine Zeit, in der JS <em>meist</em> für unnützen und nervenden Mumpitz genutzt und wurde, heute ist dieser Anteil gesunken.</p>
</blockquote>
<p>ja, das ist er wohl, aber noch lange nicht auf ein Niveau nahe Null. Ich finde, dass JS immer noch oft für Effekte genutzt wird, die den Nutzer eher nerven als ihm helfen.</p>
<blockquote>
<p>Neben den heute in den Vordergrund getretenen Privacy-Bedenken ist der nicht mehr so starke, aber immer noch vorhandene Nervfaktor wohl <strong>der</strong> Grund, dessentwegen Nutzer JS abschalten.</p>
</blockquote>
<p>Exakt.</p>
<blockquote>
<blockquote>
<p>Doch Javascript scheint nun zur Pflicht geworden zu sein, ich kann auch im FF und in der Opera nicht mehr die Stelle finden, um JS abzuschalten.</p>
</blockquote>
</blockquote>
<p>Mag sein, dass man die Einstellmöglichkeit aus dem GUI entfernt hat; in den Einstellungen unter about:config (Firefox) oder opera:config (Opera) gibt es sie aber noch.</p>
<blockquote>
<p>In einem solchen Fall kann man JS als Voraussetzung definieren und kommt hetuzutage nur noch selten drum herum.</p>
</blockquote>
<p>Nein. Veto.</p>
<blockquote>
<blockquote>
<p>Früher wurden hier auch Warnungen gegen das angeblich abschaltbare CSS ausgestoßen. Also nicht immer zukunfstorientiert und sehr furchtsam, die Ratschläge hier...</p>
</blockquote>
</blockquote>
<p>Nicht immer zukunftsorientiert, aber oft auch bewusst konservativ.</p>
<blockquote>
<blockquote>
<p>Hat sich inzwischen extrem gewandelt, die neuesten Features werden empfohlen. Da darf kein Leser mehr einen Browser haben, der älter ist als ein paar Monate. Von der Web-Steinzeit ins UFO-Zeitalter sozusagen.</p>
</blockquote>
</blockquote>
<p>Das ist Unsinn.</p>
<p>So long,<br>
Martin</p>
<div class="signature">-- <br>
Nothing travels faster than the speed of light with the possible exception of bad news, which obeys its own special laws.<br>
- Douglas Adams, The Hitchhiker's Guide To The Galaxy
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672075#m1672075Christian Wansart2016-07-27T11:54:51Z2016-07-27T11:54:51ZFragen zum erstellen moderner Webseiten<p>Hallo Christian,</p>
<p>Dankeschön für das Beispiel.</p>
<p>Absolut, Haskell ist da sehr interessant, allerdings sehe ich dafür kaum eine relevante Stellung in der Zukunft, was sehr schade ist. Den Ansatz von Rust mag ich auch sehr, und würde mir sehr wünschen, dass die Sprache eine einigermaßen nennenswerte Verbreitung erreichen könnte!</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672070#m1672070Christian Wansart2016-07-27T11:35:51Z2016-07-27T11:35:51ZFragen zum erstellen moderner Webseiten<p>Guten Tag,</p>
<blockquote>
<p>Der Punkt ist ja, dass der Browser weder im CDN noch bei dir anfragen muss, weil er es wegen anderer Gelegenheiten schon im Chache hat. Die Wahrscheinlichkeit beim CDN ist dabei vergleichsweise hoch.</p>
<p>Die Ladezeit beim Cache-Miss ist auch nicht mit Sicherheit vorhersagbar.</p>
</blockquote>
<p>Ach so, du meinst weil dieses Framework aufgrund großer Verbreitung häufig auf vielen verschiedenen Seiten eingebunden wurde. Das macht schon Sinn.</p>
<p>Nach meinen Tests war das Laden vom eigenen Server schneller. Aber dazu muss ich natürlich auch sagen, dass ich bei den Lade-Tests den Cache geleert habe.</p>
<p>Danke für den Einwand, ich muss das unbedingt mal testen.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672065#m1672065Christian Krusehttps://wwwtech.de/about2016-07-27T11:17:22Z2016-07-27T11:17:22ZFragen zum erstellen moderner Webseiten<p>Hallo Matthias,</p>
<blockquote>
<p>Nein. Die Wahrscheinlichkeit, dass sich eine bestimmte Ressource schon im Cache des Browsers befindet, ist recht hoch.</p>
</blockquote>
<p>Genau genommen stimmt das nicht. Da gab es mal eine Statistik… <em>such</em> <a href="http://yuiblog.com/blog/2007/01/04/performance-research-part-2/" rel="nofollow noopener noreferrer">ah ja</a>:</p>
<blockquote>
<p>40-60% of Yahoo!'s users have an empty cache experience and ~20% of all page views are done with an empty cache.</p>
</blockquote>
<p>Diese Zahlen sind enorm.</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672067#m1672067Matthias Apselmatthias.apsel@selfhtml.orghttp://brückentage.info2016-07-27T11:22:18Z2016-07-27T11:22:18ZFragen zum erstellen moderner Webseiten<p>Hallo Christian Kruse,</p>
<blockquote>
<blockquote>
<p>40-60% of Yahoo!'s users have an empty cache experience and ~20% of all page views are done with an empty cache.</p>
</blockquote>
<p>Diese Zahlen sind enorm.</p>
</blockquote>
<p>Aber auch neun Jahre alt. Und auch diese Nutzer hätten keinen Nachteil bei Verwendung eines CDN. Aber ich will hier auch niemandem etwas aufquatschen, dazu habe ich zu wenig Erfahrung in solchen Dingen.</p>
<p>Bis demnächst<br>
Matthias</p>
<div class="signature">-- <br>
Dieses Forum nutzt Markdown. Im <a href="https://wiki.selfhtml.org" rel="nofollow noopener noreferrer">Wiki</a> erhalten Sie <a href="https://wiki.selfhtml.org/wiki/SELFHTML:Forum/Formatierung_der_Beitr%C3%A4ge" rel="nofollow noopener noreferrer">Hilfe bei der Formatierung Ihrer Beiträge</a>.
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672071#m1672071dedlfix2016-07-27T11:36:56Z2016-07-27T11:36:56ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<blockquote>
<p>Nein. Die Wahrscheinlichkeit, dass sich eine bestimmte Ressource schon im Cache des Browsers befindet, ist recht hoch.</p>
</blockquote>
<p>Genau genommen stimmt das nicht. Da gab es mal eine Statistik… <em>such</em> <a href="http://yuiblog.com/blog/2007/01/04/performance-research-part-2/" rel="nofollow noopener noreferrer">ah ja</a>:</p>
</blockquote>
<p>Other reasons include:</p>
<ul>
<li>The user visited the page previously but cleared the browser cache.</li>
<li>The browser cache was automatically cleared, based on the browser's settings.</li>
<li>The user reloaded the page in a way that caused the cache to be bypassed. For example, the browser will bypass the cache if you hold down the control-shift key while clicking the Refresh button in Internet Explorer.</li>
</ul>
<p>Wenn der Anwender meine Cache-Bemühungen auf einer der obigen Weisen torpediert, kann ich nicht viel machen. Dann dauert aber das Laden in jedem Fall.</p>
<p>Dass trotzdem noch die anderen Methoden, wie Reduzierung der Requests und Traffic durch Zusammenfassen und Komprimieren, angewendet werden, setze ich mal voraus.</p>
<blockquote>
<blockquote>
<p>40-60% of Yahoo!'s users have an empty cache experience and ~20% of all page views are done with an empty cache.</p>
</blockquote>
<p>Diese Zahlen sind enorm.</p>
</blockquote>
<p>Leider kann bei der verwendeten Messmethode nicht aufgeschlüsselt werden, welche Gründe für den leeren Cache konkret vorlagen. Die obig zitierten sind ja nur Möglichkeiten.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672079#m1672079Christian Wansart2016-07-27T12:09:29Z2016-07-27T12:09:29ZFragen zum erstellen moderner Webseiten<p>Dankeschön für deine ausführliche Antwort. Ich denke, ich kann nachvollziehen was du meinst.</p>
<p>Es ist aber interessant, dass sich trotz deiner Argumentation, sich Sprachen wie C++ durchgesetzt haben. Hmm…</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672068#m1672068Christian Krusehttps://wwwtech.de/about2016-07-27T11:24:29Z2016-07-27T11:24:29ZFragen zum erstellen moderner Webseiten<p>Hallo Matthias,</p>
<blockquote>
<p>Aber auch neun Jahre alt.</p>
</blockquote>
<p>Das mag sein, aber es gibt meines Wissens nach keine neueren Daten, die diese Statistik widerlegen.</p>
<blockquote>
<p>Und auch diese Nutzer hätten keinen Nachteil bei Verwendung eines CDN.</p>
</blockquote>
<p>Ich wollte nicht gegen ein CDN argumentieren, CDNs ergeben aus Performance-Sicht Sinn. Ich wollte nur darauf hinweisen, dass deine Argumentation nicht notwendigerweise richtig ist.</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672074#m1672074Christian Wansart2016-07-27T11:46:17Z2016-07-27T11:46:17ZFragen zum erstellen moderner Webseiten<p>Hallo Matthias, hallo Christian,</p>
<blockquote>
<p>Ich wollte nicht gegen ein CDN argumentieren, CDNs ergeben aus Performance-Sicht Sinn. Ich wollte nur darauf hinweisen, dass deine Argumentation nicht notwendigerweise richtig ist.</p>
</blockquote>
<p>Wie schon geschrieben, habe ich das anders erfahren. Ich bin mir gerade nicht ganz sicher, ich meine dazu gestern im Wiki etwas dazu gelesen zu haben, also verzeiht meine naive Frage: Wäre es dann nicht sinnvoll, einfach den CSS-Code in den head einzubetten? Dann spare ich mir jede unnötige Anfrage und habe den einzubindenden Code auch schon.</p>
<p><a href="https://blog.fefe.de/" rel="nofollow noopener noreferrer">Fefes Blog</a> zum Beispiel: 1 Anfrage, 0,24 s zum Laden mit leeren Cache.</p>
<p>Wie gesagt, nur eine naive Frage. :-)</p>
<p>Herzlichen Dank.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672077#m1672077Matthias Apselmatthias.apsel@selfhtml.orghttp://brückentage.info2016-07-27T11:59:12Z2016-07-27T11:59:12ZFragen zum erstellen moderner Webseiten<p>Hallo Christian Wansart,</p>
<blockquote>
<p>Wäre es dann nicht sinnvoll, einfach den CSS-Code in den head einzubetten? Dann spare ich mir jede unnötige Anfrage und habe den einzubindenden Code auch schon.</p>
</blockquote>
<p>Nein, das wäre nicht sinnvoll, weil du dann den CSS-Code für jede Seite deiner Webpräsenz wieder und wieder überträgst und das Caching wirkungsvoll behinderst.</p>
<p>Bis demnächst<br>
Matthias</p>
<div class="signature">-- <br>
Dieses Forum nutzt Markdown. Im <a href="https://wiki.selfhtml.org" rel="nofollow noopener noreferrer">Wiki</a> erhalten Sie <a href="https://wiki.selfhtml.org/wiki/SELFHTML:Forum/Formatierung_der_Beitr%C3%A4ge" rel="nofollow noopener noreferrer">Hilfe bei der Formatierung Ihrer Beiträge</a>.
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672089#m1672089Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-27T13:11:36Z2016-07-27T13:11:36ZFragen zum erstellen moderner Webseiten<p>@@Christian Wansart</p>
<blockquote>
<p>Wäre es dann nicht sinnvoll, einfach den CSS-Code in den head einzubetten? Dann spare ich mir jede unnötige Anfrage und habe den einzubindenden Code auch schon.</p>
</blockquote>
<p>Ja, das ist aus Performanz-Sicht durchaus sinnvoll. Deshalb machen das etliche Websites auch.</p>
<p>Allerdings nicht das gesamte Stylesheet, sondern nur diejenigen Regeln, die zum Rendern des ursprünglich sichtbaren Teils der Homepage (alles <em>above the fold</em>) nötig sind.</p>
<p>„<a href="https://duckduckgo.com/?q=css+critical+path&t=ffsb&ia=web" rel="nofollow noopener noreferrer">CSS critical path</a>“ ist der Suchbegriff.</p>
<p>Das ganze Stylesheet wird als externe Ressource geladen, asynchron mit JavaScript, damit das Rendern der Seite nicht geblockt wird. (Oder mit <code>link</code>-Element im <code>body</code>?)</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672083#m16720831unitedpower2016-07-27T12:21:11Z2016-07-27T12:24:05ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Absolut, Haskell ist da sehr interessant, allerdings sehe ich dafür kaum eine relevante Stellung in der Zukunft, was sehr schade ist. Den Ansatz von Rust mag ich auch sehr, und würde mir sehr wünschen, dass die Sprache eine einigermaßen nennenswerte Verbreitung erreichen könnte!</p>
</blockquote>
<p>Haskell, oder allgemeiner funktionale Sprachen, haben sehr interessante Einsatzgebiete. Etwa in allen Bereichen, in denen Software-Fehler unfassbaren finanziellen oder humanitären Schaden anrichten können. Naturkatastrophen-Frühwarnsysteme nutzen zum Beispiel oft funktionale Sprachen, weil damit eine formale Verifikation sicherheitskritischer Software-Systeme besser möglich ist als mit uneingeschränkten Programmiersprachen.</p>
<p>Facebook benutzt Haskell interessanterweise für seinen Spamfilter. Bei der Spam-Bekämpfung gibt es ein Kopf-an-Kopf-Rennen mit den Spam-Verteilern, das unglücklicherweise zu Gunsten der Verteiler abläuft. Die Entwickler eines Spamfilters können immer nur nachziehen, da ist es also umso wichtiger schnell agieren zu können, also die Entwicklungszeit neuer Filter-Strategien möglichst kurz zu halten, und gleichzeitig keine neuen Fehler ins Programm einzuführen. Da liegen genau Haskells Stärken.</p>
<p>Ich sehe die Sprache auch nicht als vielversprechenden Kandidaten auf eine einen Stammplatz im Establishment. Das Vermächtnis von Haskell ist der Einfluss, den es auf die Entwicklung moderner Sprachen ausübt. Ohne Haskell kein Rust oder Swift.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672081#m1672081Christian Wansart2016-07-27T12:14:11Z2016-07-27T12:14:11ZFragen zum erstellen moderner Webseiten<p>Hallo Auge,</p>
<blockquote>
<p>Die Firefox-UI wird seit jeher mit Webtechniken (<a href="https://de.wikipedia.org/wiki/XML_User_Interface_Language" rel="nofollow noopener noreferrer">XUL</a>) gerendert und auch von JavaScript wird reichlich Gebrauch gemacht (mindestens die Addons). Aber ja, schneller und flüssiger dürfte er gerne sein. Er sollte auch den Arbeitsspeicher nicht auffressen, was ja ein, wenn nicht der Grund für das hakelige Verhalten ist.</p>
</blockquote>
<p>Ja gut, das stimmt schon, aber ich frage mich, ob das Austauschen der einen Sprache durch eine andere mehr Performance bringt. Ich bin da doch sehr skeptisch.</p>
<p>Was das Aufressen des Arbeitsspeichers angeht, kann ich deine Haltung nicht nachvollziehen. Firefox frisst laut <a href="http://www.itpro.co.uk/node/24796/page/0/1#Memory" rel="nofollow noopener noreferrer">aktuellen Tests</a> deutlich weniger. Auch in einem Selbsttest konnte ich das bestätigen. Chrome hingegen frisst den RAM auf.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672078#m1672078Christian Wansart2016-07-27T12:06:41Z2016-07-27T12:06:41ZFragen zum erstellen moderner Webseiten<p>Hallo Matthias,</p>
<p>ja stimmt, das war das, was ich gestern im Wiki las.</p>
<p>Ich muss gestehen, dass ich zuvor nicht davor darüber nachgedacht habe. Macht aber Sinn. Danke.</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672080#m1672080Christian Krusehttps://wwwtech.de/about2016-07-27T12:11:21Z2016-07-27T12:11:21ZFragen zum erstellen moderner Webseiten<p>Hallo Christian,</p>
<blockquote>
<p>Es ist aber interessant, dass sich trotz deiner Argumentation, sich Sprachen wie C++ durchgesetzt haben. Hmm…</p>
</blockquote>
<p>Naja, die Typen-Theorie ist eine Sache der „Neuzeit” (haha!) in der Computer-Technik. Damals[tm] konnte man das erstens gar nicht umsetzen (mangels Rechenzeit) und zweitens waren die theoretischen Grundlagen noch nicht vorhanden. Dazu kommt, dass man noch nicht so viel Erfahrung in komplexer Software-Entwicklung hatte.</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672082#m1672082Christian Wansart2016-07-27T12:16:35Z2016-07-27T12:16:35ZFragen zum erstellen moderner Webseiten<p>Hallo Christian,</p>
<p>das leuchtet mir ein. Na dann bin ich mal gespannt, was sich in den nächsten Jahren tun wird. Laut <a href="http://www.tiobe.com/tiobe_index" rel="nofollow noopener noreferrer">TIOBE-Index</a> erfreut sich Java einer neuen Beliebtheit – wobei man diese Indizes natürlich nur mit Vorsicht genießen sollte. :-)</p>
<p>Freundliche Grüße<br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672084#m1672084Auge2016-07-27T12:31:37Z2016-07-27T12:32:52ZFragen zum erstellen moderner Webseiten<p>Hallo</p>
<blockquote>
<blockquote>
<p>Die Firefox-UI wird seit jeher mit Webtechniken (<a href="https://de.wikipedia.org/wiki/XML_User_Interface_Language" rel="nofollow noopener noreferrer">XUL</a>) gerendert und auch von JavaScript wird reichlich Gebrauch gemacht (mindestens die Addons). Aber ja, schneller und flüssiger dürfte er gerne sein. Er sollte auch den Arbeitsspeicher nicht auffressen, was ja ein, wenn nicht der Grund für das hakelige Verhalten ist.</p>
</blockquote>
<p>Ja gut, das stimmt schon, aber ich frage mich, ob das Austauschen der einen Sprache durch eine andere mehr Performance bringt. Ich bin da doch sehr skeptisch.</p>
</blockquote>
<p>Die Ausführungsgeschwindigkeit von Code in verschiedenen Sprachen unterscheidet sich schon. Rust soll ja recht schnell sein.</p>
<blockquote>
<p>Was das Aufressen des Arbeitsspeichers angeht, kann ich deine Haltung nicht nachvollziehen. Firefox frisst laut <a href="http://www.itpro.co.uk/node/24796/page/0/1#Memory" rel="nofollow noopener noreferrer">aktuellen Tests</a> deutlich weniger. Auch in einem Selbsttest konnte ich das bestätigen. Chrome hingegen frisst den RAM auf.</p>
</blockquote>
<p>Der von dir verlinkte Test arbeitet mit gerade einmal fünf offenen Tabs.</p>
<blockquote>
<p>„… one window with a Facebook page, a YouTube video, a BBC News article, the Microsoft Outlook web app and the IT Pro homepage open in separate tabs.“</p>
</blockquote>
<p>Das halte ich für Pillepalle**[edit]** und auch 412 MB RAM-Verbrauch sind kein Pappenstiel**[/edit]**.</p>
<p>Ich benutze von den getesteten Diensten bestenfalls gelegentlich Youtube und noch viel gelegentlicher die BBC-News. Es ist für mich aber normal, weitaus mehr als fünf Tabs offen zu haben. Momentan sind es z.B. 20 Tabs, manchmal aber auch mehr. Performanceprobleme habe ich <em>momentan</em> nicht. Bis auf das SelfHTML-Forum (mit vier Tabs) und Github (ein Tab) befinden sich momentan in allen anderen Tabs auch nur statische Inhalte mit wenigen Grafiken.</p>
<p>Manchmal verreckt mit der Firefox schon bei fünf bis sieben Tabs, gerne bei Tabs mit JS- und/oder Multimedia-Gebamsel, manchmal bei 25 oder mehr Tabs, manchmal garnicht. Schön – und vor allem zuverlässig – ist anders. Ob andere Browser, die ich nicht nutze, noch ineffektiver mit RAM umgehen, interessiert mich als Nutzer des Firefox allerdings überhaupt nicht.</p>
<p>Tschö, Auge</p>
<div class="signature">-- <br>
Wo wir Mängel selbst aufdecken, kann sich kein Gegner einnisten.<br>
Wolfgang Schneidewind <strong>*prust*</strong>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672133#m1672133Christian Krusehttps://wwwtech.de/about2016-07-28T05:32:11Z2016-07-28T05:32:11ZFragen zum erstellen moderner Webseiten<p>Hallo marctrix,</p>
<blockquote>
<p>War aus dem Kopf "zitiert", wollte mit meinem posting deines nur bekräftigen und ergänzen.</p>
</blockquote>
<p>Klang nicht so </p>
<blockquote>
<p>Hätte man so vielleicht auch verstehen können, aber nicht müssen, daher mal der Hinweis: wenn du mir Wohlwollen unterstellst, wirst du in den meisten Fällen richtig liegen</p>
</blockquote>
<p>Ich habe dir keine Böswilligkeit unterstellt, allerdings kann ich es sehr schlecht haben wenn man mir Worte in den Mund legt. Seis drum, hat sich ja aufgeklärt </p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672132#m1672132marctrixself@mhis.dehttp://mhis.de2016-07-28T04:43:17Z2016-07-28T05:00:10ZFragen zum erstellen moderner Webseiten<p>Hej Frameworknutzer,</p>
<blockquote>
<blockquote>
<p>Zu letzterem gehört neben semantischem HTML und CSS auch Design, UX, IA, IxD, Usability, Accessibility, Typografie, …</p>
</blockquote>
<p>Wie kommst du auf die Idee, dass eine Seite mit Angular das alles NICHT hat oder braucht?</p>
</blockquote>
<p>Brauchen schon, haben ganz selten. Liegt wohl am zusätzlichen Lernaufwand. Was @Gunnar Bittersmann wohl meinte: Angular benötigt andere Kenntnisse, die eher in den Bereich Programmierung gehen.</p>
<p>HTML, CSS und die anderen von ihm genannten Aspekte (hatte er SEO, SEM usw erwähnt?) kommen halt noch oben drauf. Meine Erfahrung zeigt, dass nur ganz wenige Menschen beide Welten beherrschen. Auch wenn es viele gibt, die von sich behaupten, zusätzlich noch ein As in allen möglichen weiteren Sprachen und Techniken zu sein. Meist verstehen Sie dann alles, was sie angeben zu beherrschen, bestenfalls halb und sie sind froh, wenn ihre komplexen Projekte, zusammengesetzt aus einem Mischmasch an Frontend- und Backend-Techniken irgendwie laufen, weil sie jedes Problem so gelöst haben, wie es am schnellsten ging - nicht wie es konzeptionell am besten gewesen wäre...</p>
<p>Ich habe so etwas jedenfalls weit öfter gesehen, als solche, die wirklich alles können.</p>
<p>Wenn sie intelligent sind, was oft der Fall ist, lassen sich solche Menschen übrigens oft gerne mit zusätzlichem Wissen füttern und werden dann in diesem Teilgebiet schnell besser. Leider veraltet unser Wissen schnell. Wer kann schon in allen Techniken am Ball bleiben? Dann kommt man ja nicht mehr zum umsetzen...</p>
<blockquote>
<p>Schlechte Seiten mit schlechter Usability und fehlerhaftem HTML kann man hervorragend mit oder ohne Angular bauen.</p>
</blockquote>
<p>In der Regel sollte gerade ein größeres Projekt immer im Team umgesetzt werden, mit mindestens einem Spezialisten für Design, UX, IA, IxD, Usability und Typografie inklusive Konzept hierfür (Designer), einem Spezialisten für HTML und CSS, Acessibility injlusive Konzept hierfür und mindestens Grundkenntnissen in JS, SEO, SEM (sonst ist hierfür ein weiterer Spezialist nötig) und einem Spezialisten für die serverseitige Technik (z. B. ein CMS und Grundlagen in der Sprache, in der das CMS geschrieben wurde oder einen Programmierer für z. B. php).</p>
<p>Klar gehören noch Leute dazu, die das dann organisieren, Kontakt zum Kunden pflegen usw.</p>
<p>Ich kennen keinen, der all das in sich vereint!</p>
<p>Marc</p>
<p>PS: Ach ja: und SVG sollte ein Frontender auch noch - zumindest in Grundzügen - kennen. Steht auf meiner Leseliste ganz oben. <a href="https://abookapart.com/products/practical-svg" rel="nofollow noopener noreferrer">Practical SVG</a></p>
<p>PPS: Manche Techniken muss man beherrschen, um andere nicht zu benötigen. Wer die Cscade und Vererbung geschickt nutzt, braucht Preprozessoren nur noch selten für DRY Code (Don't repeat yourself), setzt Js nicht für Animationen ein, oder um Texte ein- und auszublenden, benötigt weniger media-queries, und setzt SVG wesentlich seltener ein. Alles aber dann, wenn es Sinn macht! - Heißt ggfs auch weniger CSS, wenn eine der anderen Techniken besser geeignet sind, um (ohne Barrieren) ans Ziel zu kommen!</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672208#m1672208Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-28T14:37:05Z2016-07-28T14:37:05ZFragen zum erstellen moderner Webseiten<p>@@Frameworknutzer</p>
<blockquote>
<blockquote>
<p>Zu letzterem gehört neben semantischem HTML und CSS auch Design, UX, IA, IxD, Usability, Accessibility, Typografie, …</p>
</blockquote>
<p>Wie kommst du auf die Idee, dass eine Seite mit Angular das alles NICHT hat oder braucht?</p>
</blockquote>
<p>Das war nicht meine Idee.</p>
<blockquote>
<p>Wie kommst du auf die Idee, dass Angularentwickler das alles NICHT AUCH können und anwenden?</p>
</blockquote>
<p>Entwickler, die <em>das alles</em> können, wäre eierlegende Wollmichsäue. Siehe mein Posting <a href="https://forum.selfhtml.org/self/2015/sep/30/responsible-framework/1651559#m1651559" rel="noopener noreferrer">Über <em>den</em> Frontent-Entwickler</a>.</p>
<blockquote>
<p>Wie kommst du darauf, dass in einem Team das Angular-Apps entwickelt KEINE Spezialisten für diese Themen sind?</p>
</blockquote>
<p>Das wäre genau meine Rede. Diese Spezialisten sind die <em>Frontend</em>-Entwickler. Die entwickeln die Views = das Frontend.</p>
<p>Die anderen im Team, die Models und ViewModels entwickeln, würde ich nicht als Frontend-Entwickler bezeichnen. Sondern als Angular-Programmierer.</p>
<p>In dem Sinne war das gemeint:</p>
<blockquote>
<blockquote>
<p>… dass Angular-Programmierung ($Framework-Programmierung) <em>andere</em> Kenntnisse erfordert als das, was ich unter <em>Frontend</em>-Entwicklung verstehe.</p>
</blockquote>
</blockquote>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672129#m1672129Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-28T01:27:28Z2016-07-28T01:27:28ZFragen zum erstellen moderner Webseiten<p>@@Frameworknutzer</p>
<blockquote>
<blockquote>
<p>Hat sich inzwischen extrem gewandelt, die neuesten Features werden empfohlen.</p>
</blockquote>
<p>Man kann (und sollte wie ich finde) die neuesten Features verwenden -- <em>wenn</em> der Browser sie unterstützt.</p>
</blockquote>
<p>Man kann (und sollte wie ich finde) die neuesten Features verwenden – <em>auch</em> wenn noch kaum ein Browser sie unterstützt.</p>
<p><em>„Wenn man [die Grundfunktionalität erstellt] hat, kann man seine Zeit damit verbringen, mit den neusten und großartigsten Browsertechnologien zu experimentieren; sicher in dem Wissen, dass <strong>selbst wenn diese noch nicht weitgehend unterstützt werden</strong>, man den Fallback ja bereits hat. […]<br>
Webseiten müssen nicht in jedem Browser gleich aussehen.<br>
Wenn man das so akzeptiert, […] kann man seine Zeit darin investieren sicherzustellen, dass die Kernfunktion dessen, was man baut, überall funktioniert, und gleichzeitig <strong>in fähigeren Browsern die bestmögliche Nutzungserfahrung zu bieten</strong>.“</em><br>
—<a href="https://forum.selfhtml.org/self/2015/sep/19/technische-fragen-zu-einer-seite-die-nur-aus-einer-seite-besteht/1650342#m1650342" rel="noopener noreferrer">Jeremy Keith</a></p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672321#m1672321marctrixself@mhis.dehttp://mhis.de2016-07-29T13:41:32Z2016-07-29T13:41:32ZFragen zum erstellen moderner Webseiten<p>Hej Frameworknutzer,</p>
<blockquote>
<blockquote>
<p>Habt ihr Tipps und Anregungen, wie man da vorgehen kann?</p>
</blockquote>
<p>Mit <a href="https://www.w3.org/TR/wai-aria/" rel="nofollow noopener noreferrer">WAI ARIA</a> gibt es einen eigenen Accessibility Standard, der sich mit JavaScript Apps beschäftigt.</p>
</blockquote>
<p>Warum sollte das nur für JS (oder gar nur für JS-Apps) gelten?</p>
<p>Übrigens braucht man vergleichsweise wenige WAI-Attribute, wenn man die richtigen HTML-Elemente verwendet, denn diese haben die Rollen "eingebaut", sind klickbar und was sonst so wichtig ist. Gerade mit dem role- und tabindex-attribut repariert man oft nur, was man von Anfang an hätte richtig machen können - wenn man einen Frontender gefragt hätte ;-)</p>
<p>Trotzdem ein Plus von mir, weil abgesehen von der unnötigen Einschränkung hast du natürlich recht und du hättest auch recht, wenn du darauf hingewiesen hättest, dass die WAI-ARIA-Attribute in JS-Anwendungen besonders nützlich sind. Nur die Aussage, dass sich um einen Standard handelt, der sich mit Accessibility-Standards beschäftigt, führt leicht in die Irre. Die WCAG sind generell technik-neutral... - Hauptsache, was rauskommt, ist für alle nutzbar. Wie es entsteht - im Client oder auf dem Server und ob es am Ende HTML ist oder ein PDF - das ist alles Wurscht! ;-)</p>
<p>Marc</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672143#m1672143Auge2016-07-28T06:48:00Z2016-07-28T06:48:00ZFragen zum erstellen moderner Webseiten<p>Hallo</p>
<blockquote>
<blockquote>
<p>In einem solchen Fall kann man JS als Voraussetzung definieren und kommt hetuzutage nur noch selten drum herum.</p>
</blockquote>
<p>Nein. Veto.</p>
</blockquote>
<p>Bei einem Programm soll die Ausführung von Programmcode nicht vorausgesetzt werden können? Komisch.</p>
<p>Tschö, Auge</p>
<div class="signature">-- <br>
Wo wir Mängel selbst aufdecken, kann sich kein Gegner einnisten.<br>
Wolfgang Schneidewind <strong>*prust*</strong>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672198#m1672198Frameworknutzer2016-07-28T13:06:28Z2016-07-28T13:06:28ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Was @Gunnar Bittersmann wohl meinte: Angular benötigt andere Kenntnisse, die eher in den Bereich Programmierung gehen.</p>
</blockquote>
<p>Ja, verstehe! Im Frontend muss man aber schon länger programmieren. Ajax gibt es seit über 10 Jahren und wenn ein Frontender glaubt er käme ohne "richtiges" Programmieren aus dann ist er im falschen Geschäft.</p>
<p>Frontend heißt für mich das Entwickeln von Code der im Browser läuft. Der "sichtbare" Teil der WebApp. Oder Webclient, wie mans nennen will. Früher war Frontend noch stark von "Programmieren" und Backend getrennt. Das ist heute nicht mehr so. Deshalb halt ich auch "Angular ist nichts für Frontendentwickler" für falsch. Das ist ein veraltetes Bild des Berufs!</p>
<blockquote>
<p>Auch wenn es viele gibt, die von sich behaupten, zusätzlich noch ein As in allen möglichen weiteren Sprachen und Techniken zu sein. Meist verstehen Sie dann alles, was sie angeben zu beherrschen, bestenfalls halb und sie sind froh, wenn ihre komplexen Projekte, zusammengesetzt aus einem Mischmasch an Frontend- und Backend-Techniken irgendwie laufen, weil sie jedes Problem so gelöst haben, wie es am schnellsten ging - nicht wie es konzeptionell am besten gewesen wäre...</p>
</blockquote>
<p>Klar hat nicht jeder den vollen Durchblick aber das ist in der heutigen Zeit auch gar nicht mehr möglich. Aber ich würde für mich NIE behaupten dass ich irgendwelche Probleme löse "wie es konzeptionell am besten gewesen wäre". Dazu gibt es viel zu viele Einschränkungen. Meine Fähigkeiten, Zeit, Budget, bestehender Code usw.</p>
<blockquote>
<p>Leider veraltet unser Wissen schnell. Wer kann schon in allen Techniken am Ball bleiben? Dann kommt man ja nicht mehr zum umsetzen...</p>
</blockquote>
<p>Ja. deswegen finde ich eine Anti Framework Haltung auch unangebracht.</p>
<p>Ein Frameworknutzer</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672344#m1672344Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-30T12:20:14Z2016-07-30T12:20:14ZFragen zum erstellen moderner Webseiten<p>@@marctrix</p>
<blockquote>
<p>einem Spezialisten für HTML und CSS, Acessibility injlusive Konzept hierfür und mindestens Grundkenntnissen in JS, SEO, SEM (sonst ist hierfür ein weiterer Spezialist nötig)</p>
</blockquote>
<p>Was der Frontender auch sein muss: Spezialist für <strong>performance</strong>. Und da sind wohl mehr als nur Grundkenntniss in JS erforderlich – nur halt <em>andere</em> JavaScript-Kenntnisse als die ein Angular-Backend-Entwickler haben muss.</p>
<p>Versteht mich nicht falsch: Ich bin kein JavaScript-Ablehner. Mit JavaScript kann man tolle moderne Frontends bauen. <em>Service worker, responsive web apps</em> – das sind die Dinge, die mich interessieren, nicht Framworks wie Angular u.dgl.</p>
<blockquote>
<p>PS: Ach ja: und SVG sollte ein Frontender auch noch - zumindest in Grundzügen - kennen.</p>
</blockquote>
<p>Unbedingt. Er muss SVG vielleicht nicht im Texteditor schreiben können – obwohl auch das nicht schaden kann.</p>
<p>Überhaupt muss er sich in Grafikformaten auskennen (wann JPEG, wann PNG), weil Grafiker sich darin mitunter nicht auskennen.</p>
<blockquote>
<p>setzt Js nicht für Animationen ein, oder um Texte ein- und auszublenden</p>
</blockquote>
<p>À la <a href="https://twitter.com/heydonworks/status/687572769635184640" rel="nofollow noopener noreferrer">Heydon Pickering</a> ;-)</p>
<p><em>My javascript is shit -> I should learn more javascript<br>
My CSS is shit -> I'll do it with javascript</em></p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672163#m1672163marctrixself@mhis.dehttp://mhis.de2016-07-28T08:07:07Z2016-07-28T08:07:07ZFragen zum erstellen moderner Webseiten<p>Hej Christian,</p>
<blockquote>
<p>Hallo marctrix,</p>
<blockquote>
<p>War aus dem Kopf "zitiert", wollte mit meinem posting deines nur bekräftigen und ergänzen.</p>
</blockquote>
<p>Klang nicht so </p>
</blockquote>
<p>Glaube ich - aber wenn du noch mal nachliest, glaube ich, findest du keine Stelle, wo ich dir widerspreche. Auch das mit WAI. Wollte nur noch mal deutlich machen, dass BITV und WCAG trotz ihrer Verwandschaft zwei Paar Schuhe sind. Du weißt das, das weiß ich. Aber für jemand anders schien mir Deine Formulierung zu knapp/nicht eindeutig genug.</p>
<blockquote>
<blockquote>
<p>Hätte man so vielleicht auch verstehen können, aber nicht müssen, daher mal der Hinweis: wenn du mir Wohlwollen unterstellst, wirst du in den meisten Fällen richtig liegen</p>
</blockquote>
<p>Ich habe dir keine Böswilligkeit unterstellt, allerdings kann ich es sehr schlecht haben wenn man mir Worte in den Mund legt. Seis drum, hat sich ja aufgeklärt </p>
</blockquote>
<p>Gut, dass wir drüber geredet haben! Ich fände es schade, wenn ich bei Dir in die Schublade mit dem Aufkleber "Nörgler" kommen würde. ;-)</p>
<p>Marc</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672193#m1672193Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-28T12:40:47Z2016-07-28T12:40:47ZFragen zum erstellen moderner Webseiten<p>@@Auge</p>
<blockquote>
<blockquote>
<blockquote>
<p>In einem solchen Fall kann man JS als Voraussetzung definieren und kommt hetuzutage nur noch selten drum herum.</p>
</blockquote>
<p>Nein. Veto.</p>
</blockquote>
<p>Bei einem Programm soll die Ausführung von Programmcode nicht vorausgesetzt werden können? Komisch.</p>
</blockquote>
<p>Der Programmcode kann ja auf dem Server ausgeführt werden und dessen Ergebnis als HTML-Dokument an den Client zurückgeschickt werden. Ausführung auf dem Client als <em>progressive enhancement</em>.</p>
<p>Dann kann doppelte Programmiereung bedeuten; muss aber nicht, wenn serverseitig und clientseitig dieselbe Programmiersprache verwendet wird: JavaScript.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672165#m1672165Christian Krusehttps://wwwtech.de/about2016-07-28T08:08:58Z2016-07-28T08:08:58ZFragen zum erstellen moderner Webseiten<p>Hallo marctrix,</p>
<blockquote>
<p>Aber für jemand anders schien mir Deine Formulierung zu knapp/nicht eindeutig genug.</p>
</blockquote>
<p>Das ist nachvollziehbar für mich, danke für die Erklärung.</p>
<blockquote>
<p>Gut, dass wir drüber geredet haben! Ich fände es schade, wenn ich bei Dir in die Schublade mit dem Aufkleber "Nörgler" kommen würde. ;-)</p>
</blockquote>
<p>Da musst du keine Angst haben!</p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672189#m1672189Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-28T12:22:50Z2016-07-28T12:22:50ZFragen zum erstellen moderner Webseiten<p>@@Christian Kruse</p>
<blockquote>
<blockquote>
<p>Ich fände es schade, wenn ich bei Dir in die Schublade mit dem Aufkleber "Nörgler" kommen würde. ;-)</p>
</blockquote>
<p>Da musst du keine Angst haben!</p>
</blockquote>
<p>Ich hab davor keine Angst. SCNR.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672191#m1672191Christian Krusehttps://wwwtech.de/about2016-07-28T12:25:17Z2016-07-28T12:25:17ZFragen zum erstellen moderner Webseiten<p>Hallo Gunnar,</p>
<blockquote>
<p>Ich hab davor keine Angst. SCNR.</p>
</blockquote>
<p>Wäre mir gar nicht aufgefallen, wenn du das nicht erwähnt hättest <em>duck</em> </p>
<p>LG,<br>
CK</p>
<div class="signature">-- <br>
<a href="https://wwwtech.de/about" rel="noopener noreferrer">https://wwwtech.de/about</a>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672199#m1672199Auge2016-07-28T13:09:32Z2016-07-28T13:09:32ZFragen zum erstellen moderner Webseiten<p>Hallo</p>
<blockquote>
<blockquote>
<blockquote>
<blockquote>
<p>In einem solchen Fall kann man JS als Voraussetzung definieren und kommt hetuzutage nur noch selten drum herum.</p>
</blockquote>
<p>Nein. Veto.</p>
</blockquote>
<p>Bei einem Programm soll die Ausführung von Programmcode nicht vorausgesetzt werden können? Komisch.</p>
</blockquote>
<p>Der Programmcode kann ja auf dem Server ausgeführt werden und dessen Ergebnis als HTML-Dokument an den Client zurückgeschickt werden.</p>
</blockquote>
<p>Kann ja. Bei einem webbasierten Programm, und darum ging es mir bei der ursprünglichen Aussage <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup>, kann ich aber dennoch im Einzelfall voraussetzen, dass JavaScript benutzt wird. Deshalb verstehe ich das Veto von @Der Martin nicht.</p>
<p>Tschö, Auge</p>
<div class="signature">-- <br>
Wo wir Mängel selbst aufdecken, kann sich kein Gegner einnisten.<br>
Wolfgang Schneidewind <strong>*prust*</strong>
</div>
<hr class="footnotes-sep">
<section class="footnotes">
<ol class="footnotes-list">
<li id="fn1" class="footnote-item"><p>Der ganz oben zitierte und von mir stammende Satz bezog sich auf <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672058#m1672058" rel="noopener noreferrer">meine Aussage im Ursprungsposting</a>, dass es in diesem Thread um eine Webapp und nicht um eine Website geht. Das mag durch das im Ursprungsposting dazwischenliegende Zitat von Linuchs verloren gegangen sein. <a href="#fnref1" class="footnote-backref">↩︎</a></p>
</li>
</ol>
</section>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672229#m1672229Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-28T21:51:35Z2016-07-29T03:24:00ZFragen zum erstellen moderner Webseiten<p>@@Frameworknutzer</p>
<blockquote>
<p>Frontend heißt für mich das Entwickeln von Code der im Browser läuft. Der "sichtbare" Teil der WebApp.</p>
</blockquote>
<p>Das widerspricht sich. Nicht alles, was im Browser läuft, ist „sichtbar“, also Frontend (wie ich den Begriff verstehe).</p>
<p>Models und ViewModels laufen bspw. bei Angular-Webapps im Browser, sind aber nicht sichtbar. Gehören die mit zum Frontend, weil sie im Browser laufen?</p>
<p>Für mich nicht. Für mich heißt Frontend nicht alles, nur weil es im Browser läuft.</p>
<p>Für andere vielleicht schon. Der Begriff „Frontend“ wurde dermaßen überdehnt, dass er kaum noch für irgendwas steht. Es ist wohl an der Zeit, neue Begriffe einzuführen. Ich nenne mich dann nicht mehr Frontend-Entwickler, sondern UI-Entwickler. (Womit nicht UI-Designer gemeint ist.)</p>
<blockquote>
<p>Deshalb halt ich auch "Angular ist nichts für Frontendentwickler" für falsch. Das ist ein veraltetes Bild des Berufs!</p>
</blockquote>
<p>Mein Punkt ist, dass das, was du und andere als Frontend-Entwickler bezeichnest, mittlerweile nicht mehr <strong>ein</strong> Beruf ist, sondern aufgeteilt werden kann/sollte: in UI und … – ich würde es Backend nennen, auch wenn es im Browser läuft.</p>
<blockquote>
<blockquote>
<p>Auch wenn es viele gibt, die von sich behaupten, zusätzlich noch ein As in allen möglichen weiteren Sprachen und Techniken zu sein. Meist verstehen Sie dann alles, was sie angeben zu beherrschen, bestenfalls halb</p>
</blockquote>
</blockquote>
<p>Ja. Viele Backend-Entwickler (JavaScript-Entwickler eingeschlossen) haben so gut wie keine Ahnung von HTML und sehen bspw. keinen Unterschied in <code class="language-html"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>button</span> <span class="token attr-name">ng-click</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>…<span class="token punctuation">"</span></span><span class="token punctuation">></span></span></code> und <code class="language-html"><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">ng-click</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>…<span class="token punctuation">"</span></span><span class="token punctuation">></span></span></code>.</p>
<p>Deshalb halte ich es ja für erforderlich, in JavaScript-Tutorials Grundkenntniss in HTML mit zu vermitteln. (Höre höre, @Felix Riesterer! ;-))</p>
<hr>
<blockquote>
<p>Ja. deswegen finde ich eine Anti Framework Haltung auch unangebracht.</p>
</blockquote>
<p>Anti Framework bin ich vor allem dann, wenn ein Framework einzig und allein deshalb eingesetzt wird, weil es den Entwicklern vermeintliche Vorteile bringt, ohne zu bedenken, was das für die Nutzer für Nachteile mit sich bringt.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672319#m1672319marctrixself@mhis.dehttp://mhis.de2016-07-29T13:26:16Z2016-07-29T13:26:16ZFragen zum erstellen moderner Webseiten<p>Hej Frameworknutzer,</p>
<blockquote>
<blockquote>
<p>Was @Gunnar Bittersmann wohl meinte: Angular benötigt andere Kenntnisse, die eher in den Bereich Programmierung gehen.</p>
</blockquote>
<p>Ja, verstehe! Im Frontend muss man aber schon länger programmieren. Ajax gibt es seit über 10 Jahren und wenn ein Frontender glaubt er käme ohne "richtiges" Programmieren aus dann ist er im falschen Geschäft.</p>
</blockquote>
<p>Ach, was ich nicht alles schon für derartige Behauptungen gehört habe: Wer den CMS-Zug verpasst hat, sei raus aus dem Geschäft, wer kein Flash kann, ist raus aus dem Geschäft, wer kein ASP kann ist raus aus dem Geschäft, JavaScript ist tot (mindestens ein dutzend Mal)...</p>
<p>Diese Sprüche sagen höchstens etwas darüber aus, wie derjenige tickt, der sie loslässt.</p>
<p>Wer sagt denn, dass ein Autodesigner Motoren konstruieren können soll, nur weil seit hundert Jahren Autos Motoren haben?</p>
<p>Ich bin ganz froh, dass unterschiedliche Spezialisten an einem Auto arbeiten. Ich würde mich nicht in einen Wagen setzen, der zweihundert fährt und von einem einzelnen Tüftler stammt (ohne zugekaufte Komponenten versteht sich).</p>
<blockquote>
<p>Frontend heißt für mich das Entwickeln von Code der im Browser läuft. Der "sichtbare" Teil der WebApp. Oder Webclient, wie mans nennen will. Früher war Frontend noch stark von "Programmieren" und Backend getrennt. Das ist heute nicht mehr so. Deshalb halt ich auch "Angular ist nichts für Frontendentwickler" für falsch. Das ist ein veraltetes Bild des Berufs!</p>
</blockquote>
<p>UI-Entwickler ist ein treffender Begriff von @Gunnar Bittersmann. CSS und HTMl haben erst einmal nichts mit Programmierung zu tun, auch SASS nicht.</p>
<p>Dabei ist allein CSS bereits so umfangreich, dass selbst "Stars" wie Lea Verou zugeben, nicht mehr alles im Kopf haben zu können.</p>
<p>Das ganze Wissen muss dann auch noch auf aktuellem Stand gehalten werden und letztendlich will man auch noch das letzte Quentchen aus den Möglichkeiten rausquetschen, um zum Beispiel Änderungen am Backend vermeiden zu können. Alles was man über das Frontend sinnvoll erledigen kann, ist billiger umgesetzt, als das Hinzuziehen eines Backenders.</p>
<p>Allein über "das letzte Quentchen aus CSS rausholen" gibt es ganze Bücher wie zum Beispiel <a href="http://shop.oreilly.com/product/0636920031123.do" rel="nofollow noopener noreferrer">das Buch, aus dem der obige Ausspruch von Lea Verou stammt</a>.</p>
<p>Das ist nicht nur eine andere Denke, ich kenne niemanden, der neben Frontend auch noch (gut) in der Programmierung von Backends ist.</p>
<p>Zum Frontend gehören IMHO viele andere Dinge, die sich prima von der Programmierung trennen lassen und hier bereits benannt wurden. Es ist eben nicht "nur" HTML und CSS (obwohl selbst das schon nur von wenigen beherrscht wird - es gibt schließlich Frameworks, die es einem abnehmen, Dinge verstehen zu müssen - SCNR)</p>
<blockquote>
<blockquote>
<p>Auch wenn es viele gibt, die von sich behaupten, zusätzlich noch ein As in allen möglichen weiteren Sprachen und Techniken zu sein. Meist verstehen Sie dann alles, was sie angeben zu beherrschen, bestenfalls halb und sie sind froh, wenn ihre komplexen Projekte, zusammengesetzt aus einem Mischmasch an Frontend- und Backend-Techniken irgendwie laufen, weil sie jedes Problem so gelöst haben, wie es am schnellsten ging - nicht wie es konzeptionell am besten gewesen wäre...</p>
</blockquote>
<p>Klar hat nicht jeder den vollen Durchblick aber das ist in der heutigen Zeit auch gar nicht mehr möglich.</p>
</blockquote>
<p>Man benötigt aber mindestens den Überblick über das was geht und sollte wissen, was wo zu finden ist. Selbst das gelingt heute nur noch, wenn man sich auf etwas spezialisiert. Nur weil man was mit Computern macht, kennt man sich nicht mit den Vor- und Nachteilen aller Betriebssysteme im Detail aus, kann einschätzen, welcher Web-Server für welchen Dienst ideal ist, welche DB die speziellen Anforderungen eines Projektes am besten abdeckt usw.</p>
<p>Im Großen und Ganzen wird jede Anwendung mit fast jeder DB (oder Excel-Dateien), mit jeder Programmiersprache auf jedem Web-Server irgendwie ans laufen zu kriegen sein - dabei können Bootstrap, Angular und weiß nicht was zum Einsatz kommen.</p>
<p>Aber das wird niemals ideal sein - nicht einmal sinnvoll (und auf keinen Fall performant oder gar sicher).</p>
<p>Darum braucht man Datenbanker, SysAdmins (btw: Happy SysAdmin-Day!), Programmierer, Designer und eben Frontender in Projekten, die einen gewissen Qualitätsanspruch haben (auch wenn sie dennoch scheitern können - aber das ist ein anderes Thema).</p>
<p>Und Frontender sind in der Regel keine guten Programmierer. Ein bisschen JS um den Code DRY zu machen (don't repeat yourself), ein bisschen SVG, XML - kommt schon was zusammen.</p>
<p>Aber ich würde niemals eine komplette JavaScript-Anwendung selber programmieren - egal ob Framework oder nicht - es sei denn ich wechsle meinen Beruf. Ja, das ist mMn ein komplett anderes Berufsbild!</p>
<blockquote>
<p>Aber ich würde für mich NIE behaupten dass ich irgendwelche Probleme löse "wie es konzeptionell am besten gewesen wäre". Dazu gibt es viel zu viele Einschränkungen. Meine Fähigkeiten, Zeit, Budget, bestehender Code usw.</p>
</blockquote>
<p>Gerade weil man aus von dir genannten Gründen Abstriche machen oder Kompromisse eingehen muss, sollte man Leute haben, die ihr Handwerk verstehen.</p>
<p>Schuster bleib bei deinen Leisten!</p>
<blockquote>
<blockquote>
<p>Leider veraltet unser Wissen schnell. Wer kann schon in allen Techniken am Ball bleiben? Dann kommt man ja nicht mehr zum umsetzen...</p>
</blockquote>
<p>Ja. deswegen finde ich eine Anti Framework Haltung auch unangebracht.</p>
</blockquote>
<p>Um Anti-Framework ging es mir nicht. Eher um den Unterschied zwischen den einzelnen Fachbereichen, die an dem Aufbau einer Website im Idealfall beteiligt sind.</p>
<p>Ich kann nur zu so was wie Bootstrap Stellung beziehen, von Angular verstehe ich zu wenig.</p>
<p>Natürlich gibt es den Idealfall nicht im echten Leben, aber das ist kein Grund, ihm nicht jeden Tag einen Schritt näher zu kommen!</p>
<p>Marc</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672201#m1672201Der Martin2016-07-28T13:29:22Z2016-07-28T13:29:22ZFragen zum erstellen moderner Webseiten<p>Hi,</p>
<blockquote>
<p>Bei einem webbasierten Programm, und darum ging es mir bei der ursprünglichen Aussage [^1], kann ich aber dennoch im Einzelfall voraussetzen, dass JavaScript benutzt wird.</p>
</blockquote>
<p>nein, du kannst zwar als Entwickler einer Web-App definieren, dass diese wohl Javascript <strong>braucht</strong>, aber du kannst nicht voraussetzen, dass es tatsächlich zur Verfügung steht.</p>
<blockquote>
<p>Deshalb verstehe ich das Veto von @Der Martin nicht.</p>
</blockquote>
<p>Deine Aussage, dass man Javascript also veraussetzen könne, stand aber als direkte Antwort auf Linuchs' Feststellung, dass das Deaktivieren von JS in neueren Firefox- und Opera-Versionen nicht mehr so einfach sei wie früher.<br>
Ich habe dich daher so verstanden, als wolltest du sagen: Wenn das Deaktivieren so schwierig geworden ist, kann man folglich davon ausgehen, dass das keiner tut. Dagegen ging mein Veto.</p>
<p>So long,<br>
Martin</p>
<div class="signature">-- <br>
Nothing travels faster than the speed of light with the possible exception of bad news, which obeys its own special laws.<br>
- Douglas Adams, The Hitchhiker's Guide To The Galaxy
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672205#m1672205Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-28T14:16:56Z2016-07-28T14:16:56ZFragen zum erstellen moderner Webseiten<p>@@Auge</p>
<blockquote>
<p>Bei einem webbasierten Programm […] kann ich aber dennoch im Einzelfall voraussetzen, dass JavaScript benutzt wird.</p>
</blockquote>
<p>Im Einzelfall, ja. Oft wird das aber unnötigerweise zur Regel gemacht.</p>
<blockquote>
<p>dass es in diesem Thread um eine Webapp und nicht um eine Website geht.</p>
</blockquote>
<p>Bei Webapps wird clientseitiges Rendering überbewertet, IMHO. Auch interaktive Webanwendungen kommen mitunter auch gut mit serverseitigem Rendering aus.</p>
<p>Klar gibt es Anwendungen, die ausschließlich clientseitig laufen können. Das wären die o.g. Einzelfälle.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672203#m1672203Auge2016-07-28T13:41:07Z2016-07-28T13:41:07ZFragen zum erstellen moderner Webseiten<p>Hallo</p>
<blockquote>
<blockquote>
<p>Bei einem webbasierten Programm, und darum ging es mir bei der ursprünglichen Aussage [^1], kann ich aber dennoch im Einzelfall voraussetzen, dass JavaScript benutzt wird.</p>
</blockquote>
<p>nein, du kannst zwar als Entwickler einer Web-App definieren, dass diese wohl Javascript <strong>braucht</strong>, aber du kannst nicht voraussetzen, dass es tatsächlich zur Verfügung steht.</p>
</blockquote>
<p>Das ist Nitpicking. Vertreibe ich ein Perl-Programm, setze ich voraus, dass zu dessen Ausführung auf dem Zielsystem ein Perl-Interpreter installiert ist. Schreibe ich eine Web-App, für deren Ausführung ich JavaScript als Voraussetzung definiere, ist das natürlich meine Definition. Wo JS nicht ausgeführt werden kann, läuft das Programm eben nicht, wer es ausführen will, dem muss eben JS ausführbar zur Verfügung stehen.</p>
<blockquote>
<blockquote>
<p>Deshalb verstehe ich das Veto von @Der Martin nicht.</p>
</blockquote>
<p>Deine Aussage, dass man Javascript also veraussetzen könne, stand aber als direkte Antwort auf Linuchs' Feststellung, dass das Deaktivieren von JS in neueren Firefox- und Opera-Versionen nicht mehr so einfach sei wie früher.</p>
</blockquote>
<p>… und bezog sich, wie ich in der Fußnote <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672199#m1672199" rel="noopener noreferrer">meines vorherigen Postings</a> erklärte, auf meinen letzten Satz vor dem von Linuchs stammenden Zitat.</p>
<blockquote>
<p>Ich habe dich daher so verstanden, als wolltest du sagen: Wenn das Deaktivieren so schwierig geworden ist, kann man folglich davon ausgehen, dass das keiner tut.</p>
</blockquote>
<p>Nee, das wollte ich damit <em>überhaupt nicht</em> aussagen. Abgesehen von den mittlerweile gut versteckten Einstellungsmöglichkeiten in den Browsern gibt es dazu ja das eine oder andere Addon/Plugin, das es sogar einfacher macht, JS selektiv aus- und einzuschalten.</p>
<p>Tschö, Auge</p>
<div class="signature">-- <br>
Wo wir Mängel selbst aufdecken, kann sich kein Gegner einnisten.<br>
Wolfgang Schneidewind <strong>*prust*</strong>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672204#m1672204Der Martin2016-07-28T14:05:22Z2016-07-28T14:05:22ZFragen zum erstellen moderner Webseiten<p>Hi,</p>
<blockquote>
<blockquote>
<p>nein, du kannst zwar als Entwickler einer Web-App definieren, dass diese wohl Javascript <strong>braucht</strong>, aber du kannst nicht voraussetzen, dass es tatsächlich zur Verfügung steht.</p>
</blockquote>
<p>Das ist Nitpicking.</p>
</blockquote>
<p>wenn es dir so erscheint, hast du die Aussage missverstanden.</p>
<blockquote>
<p>Vertreibe ich ein Perl-Programm, setze ich voraus, dass zu dessen Ausführung auf dem Zielsystem ein Perl-Interpreter installiert ist.</p>
</blockquote>
<p>Richtig, das ist dann Voraussetzung für die Nutzung des Programms.</p>
<p>Aber du kannst unabhängig von diesem Projekt nicht voraussetzen, "dass ja sowieso jeder Perl hat". Das war die Art von "voraussetzen", die ich verstanden und gemeint habe. Also voraussetzen im Sinne von "als selbstverständlich annehmen".</p>
<blockquote>
<blockquote>
<p>Ich habe dich daher so verstanden, als wolltest du sagen: Wenn das Deaktivieren so schwierig geworden ist, kann man folglich davon ausgehen, dass das keiner tut.</p>
</blockquote>
<p>Nee, das wollte ich damit <em>überhaupt nicht</em> aussagen. Abgesehen von den mittlerweile gut versteckten Einstellungsmöglichkeiten in den Browsern gibt es dazu ja das eine oder andere Addon/Plugin, das es sogar einfacher macht, JS selektiv aus- und einzuschalten.</p>
</blockquote>
<p>Genau. Dann sind wir uns in dem Punkt wenigstens einig.</p>
<p>So long,<br>
Martin</p>
<div class="signature">-- <br>
Nothing travels faster than the speed of light with the possible exception of bad news, which obeys its own special laws.<br>
- Douglas Adams, The Hitchhiker's Guide To The Galaxy
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672206#m1672206Auge2016-07-28T14:28:13Z2016-07-28T14:29:06ZFragen zum erstellen moderner Webseiten<p>Hallo</p>
<blockquote>
<blockquote>
<blockquote>
<p>nein, du kannst zwar als Entwickler einer Web-App definieren, dass diese wohl Javascript <strong>braucht</strong>, aber du kannst nicht voraussetzen, dass es tatsächlich zur Verfügung steht.</p>
</blockquote>
<p>Das ist Nitpicking.</p>
</blockquote>
<p>wenn es dir so erscheint, hast du die Aussage missverstanden.</p>
<blockquote>
<p>Vertreibe ich ein Perl-Programm, setze ich voraus, dass zu dessen Ausführung auf dem Zielsystem ein Perl-Interpreter installiert ist.</p>
</blockquote>
<p>Richtig, das ist dann Voraussetzung für die Nutzung des Programms.</p>
<p>Aber du kannst unabhängig von diesem Projekt nicht voraussetzen, "dass ja sowieso jeder Perl hat".</p>
</blockquote>
<p>Hier geht es aber nicht um Web-Apps im Allgemeinen, sondern um den konkreten Fall. Ich weiß nicht, ob @Christian Wansart in seinem Programm JS zwingend voraussetzen wird. Die <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671987#m1671987" rel="noopener noreferrer">Beschreibung der gewünschten Funktionen</a> lässt mich das nur vermuten. Wenn <strong>er</strong> für <strong>sein</strong> Programm JS voraussetzen sollte, ist daran nichts auszusetzen, auch wenn Linuchs <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671985#m1671985" rel="noopener noreferrer">schreibt</a>, hier würde soetwas ungern gesehen oder sogar abgelehnt, was nicht stimmt.</p>
<blockquote>
<p>Das war die Art von "voraussetzen", die ich verstanden und gemeint habe.</p>
</blockquote>
<p>Gut, das wollte ich aber nicht aussagen.</p>
<blockquote>
<p>Also voraussetzen im Sinne von "als selbstverständlich annehmen".</p>
</blockquote>
<p>Naja; eben nicht. Ich doch nicht!</p>
<p>Tschö, Auge</p>
<div class="signature">-- <br>
Wo wir Mängel selbst aufdecken, kann sich kein Gegner einnisten.<br>
Wolfgang Schneidewind <strong>*prust*</strong>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672343#m16723431unitedpower2016-07-30T12:17:55Z2016-07-30T12:19:12ZFragen zum erstellen moderner Webseiten<blockquote>
<p>Bei Webapps wird clientseitiges Rendering überbewertet, IMHO. Auch interaktive Webanwendungen kommen mitunter auch gut mit serverseitigem Rendering aus.</p>
</blockquote>
<p>Exklusiv serverseitges Rendering hat einige Nachteile, die sich nicht so einfach unter den Teppich kehren lassen:</p>
<ul>
<li>Man erzielt damit keine guten Reaktionszeiten. Je nach Umfang des Projekts ist es schon eine Herausforderung die Antwortzeiten unter 100ms zu halten. Bei besonders interaktiven Anwendungen summiert sich das schnell auf.</li>
<li>Netzwerk-Fehler werden in der Regel zu spät erkannt. Wenn ich ein Formular absende und keine bestehende Internetverbindung habe, erhalte ich nur eine unzufriedenstellende Browser-Fehlermeldung. Mit einer Manifest-Datei kann man dem zugegebenermaßen entgegen wirken.</li>
<li>Für jede Zustandsänderung des GUI eine eigene Seite anzufordern ist Verschwendung von Energie und Datenvolumen. Insbesondere, weil man nur schwer Gebrauch von HTTP-Caching machen kann.</li>
</ul>
<blockquote>
<p>In so manchen Fällen würde ich das nicht „modern“ nennen, sondern Bequemlichkeit der Entwickler wird über Bedürfnisse der Nutzer gestellt. WTF :-(</p>
</blockquote>
<p>Das gilt imho. auch für clientseitiges Rendering ;) Bei interaktiven Seiten kommt man weder ohne das Eine noch ohne das Andere aus. Server- und clientseitiges Rendering ist die (idealtypische) Devise.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672228#m1672228Christian Wansart2016-07-28T20:16:28Z2016-07-28T20:16:28ZFragen zum erstellen moderner Webseiten<p>Guten Abend,</p>
<blockquote>
<p>Hier geht es aber nicht um Web-Apps im Allgemeinen, sondern um den konkreten Fall. Ich weiß nicht, ob @Christian Wansart in seinem Programm JS zwingend voraussetzen wird. Die <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671987#m1671987" rel="noopener noreferrer">Beschreibung der gewünschten Funktionen</a> lässt mich das nur vermuten. Wenn <strong>er</strong> für <strong>sein</strong> Programm JS voraussetzen sollte, ist daran nichts auszusetzen, auch wenn Linuchs <a href="https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1671985#m1671985" rel="noopener noreferrer">schreibt</a>, hier würde soetwas ungern gesehen oder sogar abgelehnt, was nicht stimmt.</p>
</blockquote>
<p>Da ich im Projekt WebSockets verwende, bin ich darauf angewiesen, insofern ist JavaScript eine Voraussetzung zum Ausführen.</p>
<p>Freundliche Grüße <br>
Christian</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672341#m1672341Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-30T10:30:40Z2016-07-30T10:30:40ZFragen zum erstellen moderner Webseiten<p>@@marctrix</p>
<blockquote>
<p>CSS und HTMl haben erst einmal nichts mit Programmierung zu tun, auch SASS nicht.</p>
</blockquote>
<p><a href="https://speakerdeck.com/gunnarbittersmann/sassematics-upfront-2014?slide=7" rel="nofollow noopener noreferrer">Nicht?</a> ;-) <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p>
<blockquote>
<p>Es ist eben nicht "nur" HTML und CSS (obwohl selbst das schon nur von wenigen beherrscht wird - es gibt schließlich Frameworks, die es einem abnehmen, Dinge verstehen zu müssen - SCNR)</p>
</blockquote>
<p>Die nehmen es einem schließlich auch ab, das DOM mit HTML zu generieren. JavaScript ist ja so hip. HTML ist überbewertet. – SCNR2.</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
<hr class="footnotes-sep">
<section class="footnotes">
<ol class="footnotes-list">
<li id="fn1" class="footnote-item"><p>Bei Interesse s.a. das <a href="https://www.youtube.com/watch?v=IjW_36VlwQc" rel="nofollow noopener noreferrer">Video</a> dazu. Und den <a href="http://webkrauts.de/artikel/2015/mathematische-funktionen-mit-sass" rel="noopener noreferrer">Artikel</a>. <a href="#fnref1" class="footnote-backref">↩︎</a></p>
</li>
</ol>
</section>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672323#m1672323marctrixself@mhis.dehttp://mhis.de2016-07-29T14:18:25Z2016-07-29T14:18:25ZFragen zum erstellen moderner Webseiten<p>Hej marctrix,</p>
<p>Achtung, Verwirrungsgefahr, hatte mich verschrieben. Falsch ist:</p>
<p><em>Nur die Aussage, dass sich um einen Standard handelt, der sich mit Accessibility-Standards beschäftigt, führt leicht in die Irre. Die WCAG sind generell technik-neutral...</em></p>
<p>Korrekt sollte es heißen stattdessen:</p>
<p><em>Nur die Aussage, dass es sich um einen Standard handelt, der sich mit JavaScript-Apps beschäftigt, führt leicht in die Irre. Die WCAG sind generell technik-neutral...</em></p>
<p>Marc</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672338#m1672338dedlfix2016-07-30T07:58:48Z2016-07-30T07:58:48ZFragen zum erstellen moderner Webseiten<p>Tach!</p>
<blockquote>
<p>Beim Zwischenspeichern wär's unfreundlich, wenn da jedesmal das Formular verschwinden und ein Neuladen der Seite stattfinden würde. Screenshot untenstehend für meine Lösung mit AJAX und eine Shortcut gibt es auch. Das Formular bleibt beim Speichern wackelfrei im Browser ohne störendes Mausgefummel.</p>
</blockquote>
<p>Der Screenshot zeigte lediglich ein Formular mit ein paar allgemeinen Eingabeelementen und Buttons. Der Inhalt in den Eingabeelementen hatte keinen Bezug zum Thema, weswegen ich ihn entfernt habe.</p>
<p>dedlfix.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672388#m1672388marctrixself@mhis.dehttp://mhis.de2016-07-30T21:41:05Z2016-07-30T21:41:05ZFragen zum erstellen moderner Webseiten<p>Hej Gunnar,</p>
<blockquote>
<p>@@marctrix</p>
<blockquote>
<p>CSS und HTMl haben erst einmal nichts mit Programmierung zu tun, auch SASS nicht.</p>
</blockquote>
<p><a href="https://speakerdeck.com/gunnarbittersmann/sassematics-upfront-2014?slide=7" rel="nofollow noopener noreferrer">Nicht?</a> ;-) [^1]</p>
</blockquote>
<p>HTML ist dank Canvas, output, data- und diverser anderer Elemente und Techniken wie dem Speichern von Daten natürlich auch Teil von Programmen - aber in erster Linie doch immer noch eine Auszeichnungssprache.</p>
<p>Auch CSS arbeitet ja mit Bedingungen und das Bestimmen von einer bestimmten Anzahl von Kindelementen mittels geschickter nth-child und nth-last-child Kombinationen ist nichts anderes als if-else Anweisungen, die für eine bestimmbare Menge von Elementen wiederholt wird wie in einer Schleife - nur eben ausschließlich um das Aussehen einer Webseite anzupassen. Aber kombiniert mit CSS-generiertem Contentent ist man doch auch hier nahe am Programmieren. Aber eben doch nicht so richtig und Code from Hell ist es allemal, wenn man Inhalte zum Beispiel für Screenreader unzugänglich mittels CSS generiert...</p>
<p>Sassematics und der Rest von <a href="http://www.bittersmann.de" rel="nofollow noopener noreferrer">bittersmann.de</a> sind es freilich wert beachtet zu werden!</p>
<blockquote>
<blockquote>
<p>Es ist eben nicht "nur" HTML und CSS (obwohl selbst das schon nur von wenigen beherrscht wird - es gibt schließlich Frameworks, die es einem abnehmen, Dinge verstehen zu müssen - SCNR)</p>
</blockquote>
<p>Die nehmen es einem schließlich auch ab, das DOM mit HTML zu generieren. JavaScript ist ja so hip. HTML ist überbewertet. – SCNR2.</p>
</blockquote>
<p>;-)</p>
<blockquote>
<p>Bei Interesse s.a. das <a href="https://www.youtube.com/watch?v=IjW_36VlwQc" rel="nofollow noopener noreferrer">Video</a> dazu. Und den <a href="http://webkrauts.de/artikel/2015/mathematische-funktionen-mit-sass" rel="noopener noreferrer">Artikel</a>.</p>
</blockquote>
<p>Interesse? Aber immer!</p>
<p>Marc</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672346#m1672346Matthias Apselmatthias.apsel@selfhtml.orghttp://brückentage.info2016-07-30T12:49:31Z2016-07-30T12:49:31ZFragen zum erstellen moderner Webseiten<p>Hallo Gunnar Bittersmann,</p>
<blockquote>
<p>Grundkenntniss</p>
</blockquote>
<p>Schon zum zweiten mal - also doch kein Vertipper?</p>
<p>Das <a href="http://www.canoo.net/services/WordformationRules/Derivation/To-N/Suffixe/nis.html" rel="nofollow noopener noreferrer">Suffix <em>-nis</em></a> hat nur ein s und wurde früher imho auch nicht mit ß geschrieben, obwohl <a href="https://de.wiktionary.org/wiki/-nis" rel="nofollow noopener noreferrer">wiktionary</a> von nicht mehr gültigen Schreibweisen schreibt.</p>
<p>Ganz ganz früher musste es aber wohl doch die Schreibweise mit ß gegeben haben, denn <a href="https://de.wikipedia.org/wiki/Neu%C3%A4rgerni%C3%9F" rel="nofollow noopener noreferrer">Neuärgerniß</a> wird eben doch mit ß geschrieben.</p>
<p>Bis demnächst<br>
Matthias</p>
<div class="signature">-- <br>
Dieses Forum nutzt Markdown. Im <a href="https://wiki.selfhtml.org" rel="nofollow noopener noreferrer">Wiki</a> erhalten Sie <a href="https://wiki.selfhtml.org/wiki/SELFHTML:Forum/Formatierung_der_Beitr%C3%A4ge" rel="nofollow noopener noreferrer">Hilfe bei der Formatierung Ihrer Beiträge</a>.
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672357#m16723571unitedpower2016-07-30T14:52:06Z2016-07-30T14:52:06ZFragen zum erstellen moderner Webseiten<blockquote>
<blockquote>
<p>einem Spezialisten für HTML und CSS, Acessibility injlusive Konzept hierfür und mindestens Grundkenntnissen in JS, SEO, SEM (sonst ist hierfür ein weiterer Spezialist nötig)</p>
</blockquote>
<p>Was der Frontender auch sein muss: Spezialist für <strong>performance</strong>. Und da sind wohl mehr als nur Grundkenntniss in JS erforderlich – nur halt <em>andere</em> JavaScript-Kenntnisse als die ein Angular-Backend-Entwickler haben muss.</p>
</blockquote>
<p>Im Gegenteil Frameworks sind eine große Hilfe dabei häufige Performance-Engpässe zu vermeiden. Die Herausforderung beim Optimieren liegt darin, die Unterschiede des eigenen intuitiven Verständnis der JavaScript-Semantik mit den internen Vorgehensweisen der JIT-Compiler zu überbrücken. Dass es verschiedene JS-Engines gibt, gegen die man profilen muss, erleichtert die Sache nicht gerade. Da ist es äußerst von Vorteil auf das Know-How der Framework-Entwickler(innen) zurückgreifen zu können. Ich möchte zwei Beispiele für solche Engpässe geben, deren Vorkommen von einem Framework (exemplarisch an React) gemindert werden.</p>
<ul>
<li>JavaScript hat eine automatische Müllsammlung, die dafür sorgt, dass nicht mehr benötigte Objekte aus dem Speicher entfernt werden. Dadurch werden Speicher-Leaks vermieden, aber natürlich kann das nicht ohne Overhead geschehen - wenn die Garbage-Collection arbeitet, muss die Code-Ausführung zeitweise unterbrochen werden. Bei ungünstigen Umständen wird die Garbage-Collection vom Browser sehr oft angestoßen und die Unterbrechungen werden spürbar. React implementiert sogenanntes Object-Pooling: Das ist eine Strategie, die die Umstände so zum besseren wendet, dass die Garbage-Collection seltener ausgeführt wird.</li>
<li>Mein zweites Beispiel bezieht sich auf DOM-Manipulationen. DOM-Updates sind ein Standard-Beispiel für Performance-Engpässe. Die API ist historisch immer weiter angewachsen und zu einem irre komplexen Gebilde geworden. Kritisch dabei ist, dass DOM-Updates sehr häufig synchron mit dem JavaScript-Prozess ausgeführt werden. Fügt man einem Element nur eine Klasse hinzu, pausiert die Code-Ausführung und die Rendering-Enginge zeichnet (vereinfacht ausgedrückt) einen neuen Frame. Danach kann die JavaScript-Engine weiter arbeiten. React batcht deshalb DOM-Manipulationen und versucht vor der Anwendung eine minimale Menge an DOM-Operationen zu finden, die tatsächlich ausgeführt werden müssen, um das gewünschte Ergebnis zu erzielen.</li>
</ul>
<p>Beide Optimierungsstrategien erfordern außerordentliches Detailwissen über die Funktionsweise eines Browsers. Ein(e) React-Anwendungsentwickler(in) muss diese Details allerdings nicht kennen, um von den Performance-Boosts effektiven Gebrauch zu machen, weil das Framework es transparent vor ihm oder ihr regelt.</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672350#m1672350Der Martin2016-07-30T13:25:04Z2016-07-30T13:25:04ZFragen zum erstellen moderner Webseiten<p>Hallo,</p>
<blockquote>
<blockquote>
<p>Grundkenntniss</p>
</blockquote>
<p>Schon zum zweiten mal - also doch kein Vertipper?</p>
</blockquote>
<p>dann sollte man sich Sorgen machen. ;-)</p>
<blockquote>
<p>Das <a href="http://www.canoo.net/services/WordformationRules/Derivation/To-N/Suffixe/nis.html" rel="nofollow noopener noreferrer">Suffix <em>-nis</em></a> hat nur ein s und wurde früher imho auch nicht mit ß geschrieben</p>
</blockquote>
<p>So ist auch mein Kenntnisstand (hier sind die zwei 's' dann doch richtig).</p>
<blockquote>
<p>obwohl <a href="https://de.wiktionary.org/wiki/-nis" rel="nofollow noopener noreferrer">wiktionary</a> von nicht mehr gültigen Schreibweisen schreibt.</p>
</blockquote>
<p>Hmm. Das muss dann lange her sein. Jedenfalls lange bevor ich Lesen und Schreiben gelernt habe.</p>
<blockquote>
<p>Ganz ganz früher musste es aber wohl doch die Schreibweise mit ß gegeben haben, denn <a href="https://de.wikipedia.org/wiki/Neu%C3%A4rgerni%C3%9F" rel="nofollow noopener noreferrer">Neuärgerniß</a> wird eben doch mit ß geschrieben.</p>
</blockquote>
<p>Das würde ich nicht unbedingt als hinreichendes Argument sehen, denn Orts- und Eigennamen unterliegen nicht unbedingt der Rechtschreibung.</p>
<p>Sie werden in der Regel aber auch nicht den sich ändernden Rechtschreibregeln angepasst. Verwandte von mir sind beispielsweise 1979 in ihr Eigenheim im Haselnußweg eingezogen; heute heißt der Weg noch genauso, obwohl man die Haselnuss nun mit Doppel-s schreibt.</p>
<p>So long,<br>
Martin</p>
<div class="signature">-- <br>
Nothing travels faster than the speed of light with the possible exception of bad news, which obeys its own special laws.<br>
- Douglas Adams, The Hitchhiker's Guide To The Galaxy
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672354#m1672354Gunnar Bittersmannselfhtml@bittersmann.dehttp://bittersmann.de2016-07-30T13:58:15Z2016-07-30T13:58:15ZFragen zum erstellen moderner Webseiten<p>@@Der Martin</p>
<blockquote>
<blockquote>
<p>Schon zum zweiten mal - also doch kein Vertipper?</p>
</blockquote>
<p>dann sollte man sich Sorgen machen. ;-)</p>
</blockquote>
<p>Ich mache mir schon Sorgen, dass ihr herausbekommt, dass ich Sarah bin. ;-)</p>
<blockquote>
<p>So ist auch mein Kenntnisstand (hier sind die zwei 's' dann doch richtig).</p>
</blockquote>
<p>Was ist ein Tand?</p>
<p>LLAP </p>
<div class="signature">-- <br>
<em>“There’s no such thing as an ‘average’ user, but there is such a thing as an average developer.”</em> —Vitaly Friedman in <a href="https://www.smashingmagazine.com/2016/06/inclusive-design-patterns/" rel="nofollow noopener noreferrer">Accessibility Matters: Meet Our New Book, “Inclusive Design Patterns”</a><br>
<em><a href="http://community.de.selfhtml.org/fanprojekte/selfcode.htm" rel="nofollow noopener noreferrer">Selfcode</a>: <code>sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|</code></em>
</div>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672394#m1672394Tabellenkalk2016-07-31T07:08:33Z2016-07-31T07:08:33ZFragen zum erstellen moderner Webseiten<p>Hallo,</p>
<blockquote>
<p>Was ist ein Tand?</p>
</blockquote>
<p>Das weiß z.B. <a href="https://de.wikipedia.org/wiki/Tand" rel="nofollow noopener noreferrer">Wikipedia</a>, also wird Kenntnistand wohl nur mit einem s geschrieben!</p>
<p>Gruß<br>
Kalk</p>
https://forum.selfhtml.org/self/2016/jul/26/fragen-zum-erstellen-moderner-webseiten/1672389#m16723891unitedpower2016-07-30T22:48:18Z2016-07-30T22:48:18ZFragen zum erstellen moderner Webseiten<blockquote>
<p>HTML ist dank Canvas, output, data- und diverser anderer Elemente und Techniken wie dem Speichern von Daten natürlich auch Teil von Programmen - aber in erster Linie doch immer noch eine Auszeichnungssprache.</p>
</blockquote>
<p>Die Unterscheidung ist bei genauerem Hinsehen auch nicht ganz korrekt: Auszeichnungssprache und Programmiersprache schließen sich nicht aus - siehe XSLT. HTML ist eine domänespezifische Sprache für semantische Auszeichnung von digitalen Dokumenten. Mit WebComponents kann man die Domäne außerdem um benutzerdefinierte semantische Elemente erweitern - das eröffnet auch die Möglichkeit einer eingebetteten Turing-vollständigen Sprache.</p>