• Willkommen im Forum „Tintenzirkel - das Fantasyautor:innenforum“.
 

Das Problem (?) JavaScript

Begonnen von Feuertraum, 03. Juli 2018, 17:45:11

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

Feuertraum

Hallo an alle Profis,

ich habe mir vorgenommen, im Bereich Webdesign ein Tabula Rasa zu machen und demnächst ganz neu anzufangen, wobei ich dann gleich auf HTML5 und CSS3 gehen will. Danach sollen Ruby (on Rails) und MySQL an die Reihe kommen.
Doch da rufen einige meiner Bekannten: Stopp: Bevor Ruby dran kommt, sollte JavaScript gelernt werden. Heutzutage sei diese Skriptsprache wichtig, wir hätten schließlich Web 2.0, da sei es nahezu Pflicht, das eine Seite JS-Elemente hat. Und schließlich heißt es: Wer nicht mit der Zeit geht, der kann mit der Zeit gehen.
Meine Argumente, das JS doch barrierelastig sei, ziehen nicht. Tatsächlich finde ich im Netz diverse Artikel, dass JS mittlerweile mit Screenreader problemlos zusammenarbeiten und auch mit Lynx/Links seien sämtliche Probleme aus der Welt geschafft. Selbst das Argument, dass eine Seite genauso ohne JS funktionieren muss, ist als und überflüssig, da es zu einer Zeit entstanden ist, in der die Browser unterschiedlich arbeiteten und manche konnten, andere hingegen an ihre Grenzen stießen.

Nun will ich JS zwar nicht unbedingt als das Allerallerschlechteste darstellen, was jemals programmiert wurde, neige aber dazu zu glauben, dass vieles von dem, für das es genutzt wird, unsinnige und überflüssige Spielerei ist (als Beispiel: Im Winter schneit es vom oberen Bildschirmrand) und es eingesetzt wird für Effekte, von denen der User keinen wirklichen Nutzen hat.
Darum bin ich davon überzeugt, dass alles, was kein JS benötigt, auch nicht in JS gecodet werden muss, sondern in HTML ausgezeichnet werden kann.
Daraufhin kommt jedoch das Argument: Klar geht das, aber damit würde die Accessibility nicht so prall sein und meine eigentliche Zielgruppe woanders hingehen, wo das Klickibunti sei.

Jetzt bin ich ziemlich verunsichert: Muss JS wirklich sein? Ist die Barrierelastigkeit dank verbesserter Software wirklich nur ein Mythos, der schon längst ausgerottet gehört?
Wäre schön, wenn mir da jemand weiterhelfen kann, weil ich noch immer den Anspruch habe, die Webseiten für mein Projekt so barrierearm wie möglich zu gestalten.
Ein Bekannter von mir liebt Bier so sehr - ich bekam als Schutzimpfung gegen Corona Astra Zenica, er Astra Pilsener ...

Araluen

#1
Mir fehlen mangels Erfahrung Vergleichswerte, aber so viel weiß ich seit meiner neuen Jobwahl Anfang des Jahres:
- Onlineshops (auch Amazon) nutzen massiv JS
- JS wird von allen gängigen Browsern unterstützt
- JS ist sowohl server- als auch browserseitig nutzbar => eine Sprache für alles
- JS macht Sites perfomanter - Flash und Apelets kann man sich sparen
- klar sind Spielereien möglich, aber auch grundsätzliche Funktionalitäten wie Login, Navigation und was man sonst für seine Site braucht, sind elegant und perfomant lösbar
- mein Mann programmiert seit 8 Jahren JS auch in der Freizeit. Ich frag ihn gern warum
- was ich nicht genau weiß ist, wie andere Sprachen zum fluiden Design stehen, das in Zeiten von Tablets und Smartphones unabdingbar ist. JS kann es.

HTML, Script und CSS in einem Dokument zu mischen, ist schlechter Stil - das war meine erste Lektion ;)

Feuertraum

Zitat von: Araluen am 03. Juli 2018, 19:25:54
- Onlineshops (auch Amazon) nutzen massiv JS

Das ist zwar richtig, bei amazon funktioniert die Seite aber auch ohne JS.

- JS wird von allen gängigen Browsern unterstützt
- JS ist sowohl server- als auch browserseitig nutzbar => eine Sprache für alles
Zitat- JS macht Sites perfomanter - Flash und Apelets kann man sich sparen

Flash sollte man sich ohnehin sparen - mit HTML5 kann man bestimmte Aktionen erstellen, für die Flash benötigt wurde. Adobe selber rät übrigens von der Benutzung von Flash ab.

Zitat- mein Mann programmiert seit 8 Jahren JS auch in der Freizeit. Ich frag ihn gern warum

Oh ja, das wäre echt knorke :-) Danke

Zitat- was ich nicht genau weiß ist, wie andere Sprachen zum fluiden Design stehen, das in Zeiten von Tablets und Smartphones unabdingbar ist. JS kann es.

Ehrlich gesagt wird das in reinem CSS umgesetzt (Stichwort 960Grid)

ZitatHTML, Script und CSS in einem Dokument zu mischen, ist schlechter Stil - das war meine erste Lektion ;)

Zumindest bei HTML und CSS weiß ich es. CSS sollte immer ausgelagert werden.
Ein Bekannter von mir liebt Bier so sehr - ich bekam als Schutzimpfung gegen Corona Astra Zenica, er Astra Pilsener ...

Araluen

Zitat von: Feuertraum am 03. Juli 2018, 19:59:25
Zitat von: Araluen am 03. Juli 2018, 19:25:54
- Onlineshops (auch Amazon) nutzen massiv JS

Das ist zwar richtig, bei amazon funktioniert die Seite aber auch ohne JS.
Da möchte ich widersprechen. Ich arbeite jeden Tag mit dem Code, der Onlineshops am Leben hält. Allein das Aufrufen einer Produktseite feuerte eine gute Handvoll Funktionen ab, die nur im Skript zu machen sind. Was erst abgeht, wenn Sie auf Ihren Einkaufskorb klicken, um zur Kasse zu gehen und zu bezahlen, wollen Sie gar nicht wissen ;)

Skript im HTML ist ganz schlechter Stil und gehört ausgelagert.
Klar funktioniert eine Site auch nur mit HTML, aber dann bleibt sie statisch und in ihrer Funktionalität eingeschränkt.

Zitat- mein Mann programmiert seit 8 Jahren JS auch in der Freizeit. Ich frag ihn gern warum

Oh ja, das wäre echt knorke :-) Danke
Hab gefragt, die Antwort ist einfach und habe ich schon gegeben: JS ist in jedem Browser nutzbar. Mein Mann nutzt es zudem noch in der Freizeit, weil er ohnehin den ganzen Tag damit programmiert. Im JS macht ihm so schnell niemand was vor.
Seiner Meinung nach sind Programmiersprachen im Grunde Geschmackssache, aber er bezweifelt, dass eine auf Ruby basierende Site mal eben mit jedem Browser kompatibel ist. Vom Standpunkt der Kompatibilität aus, ist daher JS im Moment unabdingbar.

Zitat- was ich nicht genau weiß ist, wie andere Sprachen zum fluiden Design stehen, das in Zeiten von Tablets und Smartphones unabdingbar ist. JS kann es.

Ehrlich gesagt wird das in reinem CSS umgesetzt (Stichwort 960Grid)[/quote]
Ja, da hab ich was durcheinander geworfen. Ich lern ja noch ;)

Feuertraum

#4
Mist, jetzt hatte ich einen langen Text getippt und dann beim Abschicken hieß es, meine Sitzung sei abgelaufen. Nächstes Mal doch vorher STRG+A, gefolgt von STRG+C.


Zitat von: Araluen am 03. Juli 2018, 19:25:54

Skript im HTML ist ganz schlechter Stil und gehört ausgelagert.
Klar funktioniert eine Site auch nur mit HTML, aber dann bleibt sie statisch und in ihrer Funktionalität eingeschränkt.

Eine Webseite soll ja auch in allererster Linie nutzbar sein.

Zitat- mein Mann programmiert seit 8 Jahren JS auch in der Freizeit. Ich frag ihn gern warum

Hab gefragt, die Antwort ist einfach und habe ich schon gegeben: JS ist in jedem Browser nutzbar.

Ohne Ihrem Mann zu nahe treten zu wollen, aber diese Aussage ist nicht richtig:
Zitat von: WikipediaLynx unterstützt auch Cookies, clientseitige verweissensitive Grafiken (imagemap) und Maus-Bedienung, Tabellen allerdings nur eingeschränkt und JavaScript überhaupt nicht.
Ich weiß es zwar nicht, glaube aber, dass der Textbrowser "Links" ebenfalls nicht JS verarbeiten kann

ZitatSeiner Meinung nach sind Programmiersprachen im Grunde Geschmackssache, aber er bezweifelt, dass eine auf Ruby basierende Site mal eben mit jedem Browser kompatibel ist. Vom Standpunkt der Kompatibilität aus, ist daher JS im Moment unabdingbar.

Ich bin mit Ihrem Mann konform, dass die Wahl einer Programmiersprache Geschmackssache ist. Nicht konform bin ich mit ihm, dass Ruby nicht in allen Browsern ausgeführt werden kann. Ruby hatte anfangs das Problem vieler Exoten im Bereich der Programmiersprachen - es führte ein Stiefmütterchendasein. (Skript)Sprachen wie JS, PHP, aber auch C+, C++, C# und Java waren seinerzeit angesagt.
Mittlerweile sieht das jedoch vollkommen anders aus: Ruby erlebt einen Höhenflug, der seinesgleichen sucht. Während früherTM die Webspaceanbieter grundsätzlich mit "Nein" antworteten, wenn jemand seine Rubysprogramme auf ihnen hosten wollten (PHP, kein Thema, notfalls auch noch Perl, aber Ruby, ich bitte Sie), haben auch diese mittlerweile erkannt, dass sie nicht mehr drumherum kommen - die Rubycommunity ist einfach zu groß geworden, als dass man sie links liegen lassen sollte. Würde Ruby das also nicht können, wären es wohl nur eine Handvoll Verfechter und die Webspaceanbieter würden noch immer "Nein" sagen.

Allerdings habe ich ein kleines Problem mit Ruby. Also ein eventuelles Problem: Ruby nutzt sogenannte Präprozessoren, die einen sauberen Code in einen anderen sauberen Code umwandeln. Und Ruby nutzt CoffeeScript, den er in JavaScript umwandelt.
Und ich weiß halt noch immer nicht, ob JS nun okay ist oder eben doch so barrierelastig, dass jemand, der barrierearm gestalten will, die Finger von lassen sollte.

Ein Bekannter von mir liebt Bier so sehr - ich bekam als Schutzimpfung gegen Corona Astra Zenica, er Astra Pilsener ...

Araluen

Zitat von: Feuertraum am 03. Juli 2018, 22:42:29
Und ich weiß halt noch immer nicht, ob JS nun okay ist oder eben doch so barrierelastig, dass jemand, der barrierearm gestalten will, die Finger von lassen sollte.

Die Frage kann ich nicht beantworten, aber vielleicht helfen diese Links weiter: https://developer.mozilla.org/de/docs/Web/Barrierefreiheit/An_overview_of_accessible_web_applications_and_widgets
https://developer.mozilla.org/de/Learn/Accessibility
http://ichwill.net/chapter1.html

cryphos

Richtig, Lynx unterstützt kein JS.
Als ich Webseiten noch hauptberuflich entwickelte (ist jetzt auch schon über 10 Jahre her, mann, wie die zeit verfliegt) habe ich Webseiten so entwickelt dass sie in allen Browsern außer Lynx gut aussehen und gut funktionieren und unter Lynx mussten sie gut lesbar sein. Denn, so lernte ich es als ZiVi an einer Schule für Blinde und Sehbehinderte, Lynx wurde damals gerne von Blinden genutzt, weil er allen störenden Schnickschnack wie z.B. auch JS damals einfach nicht kann.

Zu JS: JS kann man Server- und Clientseitig nutzen. Ich nutze JS gerne Clientseitig und für das Backend dann Python oder früher PHP oder Java. Man kann hier auch gerne Ruby (Habe ich noch nie genutzt), Pearl, TCL, C oder sonstwas nutzen - Python ist hier einfach nur meine persönliche Präferenz.

Meine Architektur sieht also wie folgt aus:
Struktur: HTML
Formatierungen: CSS
Funktionalität: HTML 5, CSS3 (Damit kann man schon ganz schön viel anstellen) und wenn nötig JS
Backend Programmierung: Python (alternativ PHP)
Backend Datenbank: PostgreSQL oder MariaDB

Warum ich JS nur Clientseitig einsetze zeigt vielleicht folgendes Beispiel:
Ich möchte eine Datei von einem Clientrechner auf den Server laden und dort speichern.
Mit HTML, CSS und JS kann ich eine tolle Maske basteln um die Datei hochzuladen, mit Drag'n'Drop_Area in die ich die hochzuladenden Dateien einfach nur ziehen muss. Aber um die Datei auf dem Server zu speichern habe ich mir mit JS 2017 die Finger gebrochen und doch nicht hinbekommen.
Deswegen übergebe ich die Dateien nach dem Upload an mein Python Backend und speichere diese damit ab.

Wenn es einen Weg gibt mit JS solche Dinge zu machen, habe ich Ihn nicht gefunden und damit dürfte die Lösung nicht gerade trivial sein. Von daher würde ich jedem, welcher JS nicht hauptberuflich nutzt und wirklich fit damit ist, von Serverside JS abraten.

Wofür nutzt man JS? JS ist für mich ein Werkzeug um Webseiten zu dynamisieren, Workflows abzubilden und die Seite zugänglicher zu machen. Die Seite muss für mich aber auch ohne JS funktionieren. Leider wird JS heute wieder zu sehr eingesetzt. Login in einen geschützten Bereich ist auch ohne JS machbar. Aber viele Sites sind so auf JS ausgerichtet, dass ohne JS fast gar nichts mehr funktioniert, ja man sogar von der Startseite auf eine Fehlerseite umgeleitet wird, wenn man JS deaktiviert hat.
Damit erzeugt man künstliche und unnötige Barrieren und grenzt alle aus, welche mit JS nicht arbeiten können.

Das Problem an JS ist, dass durch die Dynamisierung es passieren kann, dass die Website zwar toll aussieht, aber Geräte und Software für die Transformation der Texte, z.B. in Braille nicht mehr funktionieren, oder Links nicht ausgelesen werden können, etc.
Hier ist Fingerspitzengefühl und KnowHow gefragt, etwas, was viele Webentwickler oder Entscheider missen lassen.

Hilfreich?

Feuertraum

Hallo cryphos,

für mich war Ihre Ausführung mehr als hilfreich  :jau: Sowohl der Link von Araluen ichwill.net als auch Ihre Aussagen zeigen mir, dass es für mich und meine Ideen erstmal irrelevant ist, JS zu lernen, zumal sowohl auf der Seite, zu dem Aruleens Link mich führt als auch bei Ihnen die Info gezeigt wird, das JS mehr als sparsam eingesetzt werden sollte.

Viele liebe Grüße
Feuertraum
Ein Bekannter von mir liebt Bier so sehr - ich bekam als Schutzimpfung gegen Corona Astra Zenica, er Astra Pilsener ...