Struktur: Einstieg in eine Webapp-Entwicklung

0 83

Einstieg in eine Webapp-Entwicklung

Struktur
  • datenbank
  • software
  1. -1
    pl
    1. 0
      dedlfix
      1. -1
        pl
        1. 0
          dedlfix
          1. 0
            pl
            1. 0
              dedlfix
              1. -1
                pl
                1. 0
                  dedlfix
                  1. -1
                    pl
                    1. 0
                      dedlfix
                      1. 0
                        pl
                        1. 0
                          dedlfix
                      2. 0
                        m.
                        1. 0
                          marctrix
                          1. 0
                            m.
  2. 0
    Regina Schaukrug
    1. 0
      pl
  3. 0
    JürgenB
    1. 0
      TS
      • datenbank
      • datenschutz
      • software
      1. 0
        JürgenB
        1. 0
          pl
          1. 0
            TS
            1. 0
              pl
              1. 0
                TS
                • datenbank
                • geschichte
                • software
                1. 0
                  pl
                  1. 0
                    TS
                    1. 0
                      pl
            2. 1
              marctrix
              1. 1
                TS
                • humor
                • menschelei
              2. 0
                marctrix
                • datenbank
                • menschelei
    2. 0
      pl
      1. 0
        JürgenB
        1. 0
          pl
      2. 0
        m.
  4. 3
    dedlfix
    1. -1
      pl
  5. 2
    Rolf B
    1. 0
      TS
      • meinung
      • projekt
      • sicherheit
    2. 0
      pl
      1. 0
        Rolf B
        1. 0
          pl
    3. 0
      Struktur
      1. 0
        dedlfix
      2. 0
        m.
        1. 0
          Rolf B
          1. 0
            m.
      3. 0
        pl
        1. 2

          Software für Schulen (war: Einstieg in eine Webapp-Entwicklung)

          Matthias Scharwies
          • bildung
          • datenbank
          • software
          1. 0
            pl
  6. 0
    Meowsalot
  7. 0
    m.
    1. 0
      Meowsalot
      1. 0
        m.
      2. 0
        Klaus Mennward
        1. 0
          m.
          1. 0
            Klaus Mennward
            1. 0
              Meowsalot
              1. 0
                marctrix
              2. 0
                Klaus Mennward
                1. 0
                  Christian Kruse
            2. 0
              m.
              1. 0
                marctrix
  8. 0
    marctrix
    1. 0
      Klaus Mennward
      1. 0
        Meowsalot
        1. 0
          marctrix
          1. 0
            Meowsalot
            1. 1
              marctrix
              1. 0
                JürgenB
                1. 0
                  marctrix
                2. 0
                  beatovich
              2. 0
                marctrix
              3. 0
                Meowsalot
                1. 1
                  marctrix
                  1. 0
                    marctrix
                    • software
                  2. 0
                    Rolf B
                    1. 0
                      marctrix
    2. 0
      m.
      1. 0
        Meowsalot
        1. 0
          m.
          1. 0
            marctrix
      2. 0
        marctrix

Hallo ihr,

ich platz mal direkt mit meinem Vorhaben und meinen Gedanken dazu herein. Bitte habt Anregungen oder verbessert mich wenn ich einfach falsch denke.

Folgendes: Ich habe vor eine Webapplikation (heißt das folgende überhaupt so?) zu erstellen. Das ganze soll sich sehr simple verhalten. Ein einfacher Login als Startseite, dann soll man Kriterien festlegen die zu bewerten sind, anschließend werden die festgelegten Werte mit einer Punktzahl (z.B. Schulnoten System) bewertet und am Ende soll eine Gesamtpunktzahl heraus kommen. Diese Auswertung soll dann gespeichert werden und jederzeit abgerufen werden. Also die Vorstellung zur ist für mich relative simple. Liege ich hier richtig (ist natürlich immer eine Sache des Betrachters)

Zu meinem Können: Ich komme eigentlich aus einer anderen Fachrichtung und späßel nur ab und zu mit ein paar "Programmiertätigkeiten" rum. Würde mich als affin und schnell lernfähig beschreiben. Habe aber in den nachfolgenden Sprachen keine sonderlichen Kenntnisse.

Wie ich es mir gedacht habe: Für die Webseitenoberfläche brauche ich HTML. Für die Funktion (Login, Rechnen, Auswerten) benötige ich JavaScript. Für die Datenbank hatte ich gedacht kann man das local über phpmyadmin ausprobieren.

Jetzt sind meine Fragen. Wo fange ich an? Brauche ich ein GUI-Builder der mir das Designen einfacher macht. Welche Programme brauche ich? Stimmen die Sprachen die ich vorhabe? usw.

Ich hoffe ich konnte einen ersten Einblick über mein Vorhaben geben. Falls Fragen bestehen einfach gerne nachfragen.

Grüße, Struktur

  1. Moin,

    eine Webanwendung entwickeln heißt: Du bewegst Dich in einer Client Server Architektur. So hast Du zwischen Client (Borwoser) und Server (Apache, PHP, Perl) stets eine Übetragungsstrecke die es zu überbrücken gilt. Da heißt zum Beispiel, daß sämtliche Variablen, die in Deinem Programm eine Rolle spielen, einschließlich Benutzereingaben den Weg über HTTP gehen. Und das heißt auch u.a. daß Du Dir überlegen musst wie Du Deine Kontrollstrukturen (Boolesche Werte) auf HTTP Parameter abbildest.

    Nun gibt es schon eine Reihe von serverseitigen PLs die dafür sorgen, daß die Übertragungsstecke transparent wird, d.h. Du hast mit HTTP, Requestmethoden usw. in der Anwendung weniger zu tun. Ein durchsichiger Layer jedoch heißt noch lange nicht, daß es ihn nicht gibt.

    Viel Erfolg!

    1. Tach!

      Du bewegst Dich in einer Client Server Architektur. So hast Du zwischen Client (Borwoser) und Server (Apache, PHP, Perl) stets eine Übetragungsstrecke die es zu überbrücken gilt. Da heißt zum Beispiel, daß sämtliche Variablen, die in Deinem Programm eine Rolle spielen, einschließlich Benutzereingaben den Weg über HTTP gehen.

      Du meinst das vermutlich anders, aber so wie du es formuliert hast, ist das gar nicht richtig. Die Anmeldedaten für den Datenbankzugriff hat man gern in Variablen, die auf keinen Fall den Weg über HTTP gehen sollen. Also "sämtliche Variablen ... einschließlich Benutzereingaben" wäre besser "nur Benutzereingaben und das was man ausgeben möchte" geht über die Leitung. Alles andere, besonders die sensiblen Daten, bleiben auf dem Server.

      Und das heißt auch u.a. daß Du Dir überlegen musst wie Du Deine Kontrollstrukturen (Boolesche Werte) auf HTTP Parameter abbildest.

      Man muss gar nicht so tief ins Detail gehen. Dass Formulardaten bei PHP in $_GET und $_POST zur Verfügung stehen, reicht für den Anfang völlig aus.

      dedlfix.

      1. hi @dedlfix

        Und das heißt auch u.a. daß Du Dir überlegen musst wie Du Deine Kontrollstrukturen (Boolesche Werte) auf HTTP Parameter abbildest.

        Man muss gar nicht so tief ins Detail gehen. Dass Formulardaten bei PHP in $_GET und $_POST zur Verfügung stehen, reicht für den Anfang völlig aus.

        Na, scheitert es schon wieder am Fachbegriff der Kontrollstruktur? Ein array jedenfalls ist noch lange keine Kontrollstruktur. Und ein Parameter allein kein Boolescher Wert. Man kann jedoch prüfen, ob ein bestimmter Parameter im Request ist und so ergibt sich wahr oder nicht wahr. Darauf kommt es an!

        MfG

        1. Tach!

          Na, scheitert es schon wieder am Fachbegriff der Kontrollstruktur?

          Vielleicht, weil das ein Begriff ist, den du gern gemäß deiner Vorstellung verwendest, aber nicht so, wie man ihn anderswo kennt.

          Was ich meinte ist, dass man keine tiefergehenden Kenntnisse zu HTTP braucht, außer dass es GET und POST gibt, und die Daten dementsprechend in $_GET/$_POST zu finden sind. Dass es da noch deutlich mehr (zu wissen) gibt, finde ich für den Anfang nicht wirklich wichtig.

          Ein array jedenfalls ist noch lange keine Kontrollstruktur.

          Ganz und gar nicht. Nach der mit bekannten Bedeutung sind Kontrollstrukturen Dinge wie if, for(each) oder while. Ein Array ist eine Datenstruktur.

          Und ein Parameter allein kein Boolescher Wert. Man kann jedoch prüfen, ob ein bestimmter Parameter im Request ist und so ergibt sich wahr oder nicht wahr.

          Sicher, aber das habe ich außer bei dir noch nirgendwo anders mit diesem Begriff bezeichnet gesehen. Ich wüsste auch nicht, dass es dafür überhaupt einen Begriff gibt außer dem allgemeinen "Eingabedatenprüfung".

          dedlfix.

          1. Tach!

            Und ein Parameter allein kein Boolescher Wert. Man kann jedoch prüfen, ob ein bestimmter Parameter im Request ist und so ergibt sich wahr oder nicht wahr.

            Sicher, aber das habe ich außer bei dir noch nirgendwo anders mit diesem Begriff bezeichnet gesehen. Ich wüsste auch nicht, dass es dafür überhaupt einen Begriff gibt außer dem allgemeinen "Eingabedatenprüfung".

            Es ergibt sich aus der Frage des OP! Denn die Anwendung muss ja unterscheiden ob die Logindaten kommen oder eine Bewertung die gespeichert werden soll. Also muss da ein entsprechender Parameter gesetzt und serverseitig kontrolliert werden.

            Und sicherlich ist fürs Login ein anderes Formular als für die Bewertung in den Browser zu laden.

            MfG

            1. Tach!

              Und ein Parameter allein kein Boolescher Wert. Man kann jedoch prüfen, ob ein bestimmter Parameter im Request ist und so ergibt sich wahr oder nicht wahr.

              Sicher, aber das habe ich außer bei dir noch nirgendwo anders mit diesem Begriff bezeichnet gesehen. Ich wüsste auch nicht, dass es dafür überhaupt einen Begriff gibt außer dem allgemeinen "Eingabedatenprüfung".

              Es ergibt sich aus der Frage des OP!

              Dass sich eine technische Notwendigkeit zur Eingabedatenprüfung ergibt, steht außer Frage. Es ging hier gerade nur darum, dass du dafür einen unüblichen Begriff verwendest.

              Denn die Anwendung muss ja unterscheiden ob die Logindaten kommen oder eine Bewertung die gespeichert werden soll. Also muss da ein entsprechender Parameter gesetzt und serverseitig kontrolliert werden.

              Ein Parameter "muss" dafür nicht gesetzt werden. Man kann das auch daran unterscheiden, welches Script aufgerufen wurde. Wenn login.php aufgerufen wird, ist klar, dass ein Login erfolgen soll und dass Logindaten zu erwarten sind. Es entspricht auch eher dem üblichen Vorgehen eines Beginnenden, dies so auf Dateien aufzuteilen, statt alle Requests auf einen zentralen Eingang zu leiten und dann darin zu entscheiden, was eigentlich gewollt war. Diese Vorgehensweise halte ich auch bei einem Projekt dieser Größenordnung nicht für vorteilhaft.

              dedlfix.

              1. hi @dedlfix

                Und ein Parameter allein kein Boolescher Wert. Man kann jedoch prüfen, ob ein bestimmter Parameter im Request ist und so ergibt sich wahr oder nicht wahr.

                Sicher, aber das habe ich außer bei dir noch nirgendwo anders mit diesem Begriff bezeichnet gesehen. Ich wüsste auch nicht, dass es dafür überhaupt einen Begriff gibt außer dem allgemeinen "Eingabedatenprüfung".

                Es ergibt sich aus der Frage des OP!

                Dass sich eine technische Notwendigkeit zur Eingabedatenprüfung ergibt, steht außer Frage.

                Es geht hier nicht nur um eine Eingabeprüfung!

                Es ging hier gerade nur darum, dass du dafür einen unüblichen Begriff verwendest.

                Der Begriff Struktogramm ist durchaus üblich. Eine Kontrollstruktur ist lediglich die programmiertechnische Umsetzung.

                Wenn login.php aufgerufen wird, ist klar, dass ein Login erfolgen soll und dass Logindaten zu erwarten sind.

                Das mag schon sein. Aber Verzweigungen bzw. Kontrollstrukturen kommen praktisch in jedem Programmablauf vor, allein die Prüfung bzw. Validierung der Eingaben führt zu einer Verzweigung. Wenn da jedesmal eine andere Ressource angefordert werden soll wird das ziemlich chaotisch. Es kann nicht Dein Ernst sein, solch Vorgehensweise zu empfehlen!

                Und bedenke auch, daß Anwendungen möglicherweise erweitert werden. Wenn z.B. eine bestimmte Art und Weise der Bewertung an einen bestimmten Login (Name, Gruppe) gebunden sind, wie das z.b. hier im Forum der Fall ist. Schon bist Du wieder beim Struktogramm.

                Und bei Webanwendungen erstrecken sich Kontrollstukturen auch über Parameter. Ein richtiger Umgang damit ist natürlich Übungssache und eine Frage der Erfahrung. Ob ein Login nun an eine bestimmte Anwendung gebunden sein soll oder nicht, ist eine andere Frage.

                MfG

                1. Tach!

                  Wenn login.php aufgerufen wird, ist klar, dass ein Login erfolgen soll und dass Logindaten zu erwarten sind.

                  Das mag schon sein. Aber Verzweigungen bzw. Kontrollstrukturen kommen praktisch in jedem Programmablauf vor, allein die Prüfung bzw. Validierung der Eingaben führt zu einer Verzweigung. Wenn da jedesmal eine andere Ressource angefordert werden soll wird das ziemlich chaotisch. Es kann nicht Dein Ernst sein, solch Vorgehensweise zu empfehlen!

                  Ich kann dir nicht folgen, deine Ausführungen verwirren mich. Wenn login.php angefordert wird, gibts das Loginformular, wenn es mit POST angefordert wird, gibts die Auswertung der eingegebenen Daten in dieses Formular. Genauso bei den anderen Seiten, wo andere Daten erfasst werden sollen. Da wird immer zur URL plus Methode prinzipiell dasselbe ausgeliefert und nicht jedesmal was anderes. Was soll da chaotisch werden?

                  dedlfix.

                  1. Tach!

                    Wenn login.php aufgerufen wird, ist klar, dass ein Login erfolgen soll und dass Logindaten zu erwarten sind.

                    Das mag schon sein. Aber Verzweigungen bzw. Kontrollstrukturen kommen praktisch in jedem Programmablauf vor, allein die Prüfung bzw. Validierung der Eingaben führt zu einer Verzweigung. Wenn da jedesmal eine andere Ressource angefordert werden soll wird das ziemlich chaotisch. Es kann nicht Dein Ernst sein, solch Vorgehensweise zu empfehlen!

                    Ich kann dir nicht folgen, deine Ausführungen verwirren mich. Wenn login.php angefordert wird,

                    Genau da sind wir doch vorhin stehengeblieben: Kontrollstrukturen vs. weitere Ressourcen. Warum sollte ein action Attribut auf einen anderen URL zeigen als auf den mit welchem die Seite ausgeliefert wurde?

                    Wohin das führt sehen wir doch an Wordpress! Und ja, Du hast recht, das ist in PHP Kreisen offensichtlich so üblich.

                    MfG

                    1. Tach!

                      Warum sollte ein action Attribut auf einen anderen URL zeigen als auf den mit welchem die Seite ausgeliefert wurde?

                      Wohin das führt sehen wir doch an Wordpress! Und ja, Du hast recht, das ist in PHP Kreisen offensichtlich so üblich.

                      Keine Ahnung, was man da an Wordpress sieht. Die Software ist jedenfalls ziemlich erfolgreich, im Gegensatz zu so manch anderen Entwicklungen.

                      Wie auch immer, das Problem ist kein PHP-Problem, sondern beruht wohl eher auf der Unerfahrenheit von Anfängern allgemein, die noch nicht die Vorteile der Affenformulartechnik kennengelernt haben. Das ging mir damals bei meinem ersten Web-Projekt so, und das durfte ich jüngst bei einem ersten Webprojekt eines anderen noch wenig erfahrenen Programmiers sehen, der das in einer andere Sprache als PHP entwickelt hat. Es fühlt sich auf den ersten Blick richtig an, wenn gemäß Anwendungsfall der nächste Schritt nach Formuar A das Formular B ist, das Ziel von Formular A auf die Seite von Formular B verweisen zu lassen. Dass das auf den zweiten Blick doch nicht so gut ist, habe ich damals bemerkt, bevor ich den Begriff Affenformular kannte, und auch der erwähnte unerfahrene Programmierer ist nun um eine Erfahrung reicher.

                      dedlfix.

                      1. Tach!

                        Warum sollte ein action Attribut auf einen anderen URL zeigen als auf den mit welchem die Seite ausgeliefert wurde?

                        Wohin das führt sehen wir doch an Wordpress! Und ja, Du hast recht, das ist in PHP Kreisen offensichtlich so üblich.

                        Keine Ahnung, was man da an Wordpress sieht. Die Software ist jedenfalls ziemlich erfolgreich, im Gegensatz zu so manch anderen Entwicklungen.

                        Was meinst Du mit Erfolg? Wie auch immer, es ist nicht das Kriterium. WP erstickt in einer Flut von PHP Dateien. Das zeigt bereits ein erster flüchtiger Blick und das deutet auch schon an, daß es mit der Wartung schwierig wird.

                        Wie auch immer, das Problem ist kein PHP-Problem, sondern beruht wohl eher auf der Unerfahrenheit von Anfängern allgemein, die noch nicht die Vorteile der Affenformulartechnik kennengelernt haben.

                        Auch der Begriff Affenformular ist falsch. Wenn ein Login was zweifelsfrei ein Formular benötigt, zur Anwendung gehört heißt das ja noch lange nicht, daß die Anwendung genauso aussieht wie das Loginformular. Das Stichwort hierzu lautet Template Engineering um jetzt nicht den Begriff des MVC zu strapazieren. Kurzum, nach einem erfolgeichen Login wird ein anderes Template geladen, bei einer Desktopanwendung wird das ganz genauso gemacht. Und schließlich ist das auch mit clientseitigen, im Browser laufenden JS möglich.

                        MfG

                        1. Tach!

                          Wie auch immer, das Problem ist kein PHP-Problem, sondern beruht wohl eher auf der Unerfahrenheit von Anfängern allgemein, die noch nicht die Vorteile der Affenformulartechnik kennengelernt haben.

                          Auch der Begriff Affenformular ist falsch. Wenn ein Login was zweifelsfrei ein Formular benötigt, zur Anwendung gehört heißt das ja noch lange nicht, daß die Anwendung genauso aussieht wie das Loginformular.

                          Den Begriff habe ich genauso eingesetzt, wie ich ihn kenne und wie er zum Beispiel auch in der Wikipedia beschrieben wird.

                          Das Stichwort hierzu lautet Template Engineering

                          Zu diesem Stichwort habe ich allerdings keine Literatur gefunden, nur jede Menge Angebote für Templates, die sich mit dem Thema Engineering (Engineering Templates) beschäftigen. Das scheint mir aber was anderes zu sein. Auch wenn ich es mit Anführungszeichen drumherum suche, also genau in der Schreibweise, finde ich nichts brauchbares. Was genau verstehst du darunter?

                          um jetzt nicht den Begriff des MVC zu strapazieren

                          Im Gegensatz zu meinem Start ist der erwähnte Programmierer mit einem MVC-Framework in die beschriebene Falle getappt. Sieht für mich weiterhin so aus, dass Anfänger (und nicht nur die) ihre Fehlentscheidungen aufgrund der noch nicht vorhandenen Erfahrung machen, statt dass es an den verwendeten Tools liegt.

                          Kurzum, nach einem erfolgeichen Login wird ein anderes Template geladen,

                          Also genau das was die Affenformulartechnik macht.

                          dedlfix.

                      2. Mahlzeit,

                        Keine Ahnung, was man da an Wordpress sieht. Die Software ist jedenfalls ziemlich erfolgreich, im Gegensatz zu so manch anderen Entwicklungen.

                        Scheisse muss geil schmecken, Milliarden Fliegen können sich nicht irren …

                        --
                        42
                        1. Hej m.,

                          Keine Ahnung, was man da an Wordpress sieht. Die Software ist jedenfalls ziemlich erfolgreich, im Gegensatz zu so manch anderen Entwicklungen.

                          Scheisse muss geil schmecken, Milliarden Fliegen können sich nicht irren …

                          Was für eine mittelalterliche Einstellung. SCNR 😉

                          Marc

                          1. Mahlzeit,

                            Scheisse muss geil schmecken, Milliarden Fliegen können sich nicht irren …

                            Was für eine mittelalterliche Einstellung. SCNR 😉

                            Na dann solltest du diese Einstellung evtl. ablegen denn immerhin bist du derjenige, der die hat.

                            --
                            42
  2. Für die Funktion (Login,…) benötige ich JavaScript.

    Da wäre ich mir nicht so sicher. Freilich kann man mit node.js serverseitig was machen, das ist aber eher selten und "etwas teurer". Meistens(!) hat "man" da jetzt PHP. Ein Login im Browser zu machen ziemlich sinnfrei, es sei denn die Nutzer sind des Lesens nicht mächtig.

    Brauche ich ein GUI-Builder der mir das Designen einfacher macht.

    Es gibt ziemlich wenig gutes Zeug, welches brauchbares HTML erzeugt.

    Welche Programme brauche ich?

    Einen brauchbaren Texteditor. Etwas wie Notepad++ ist "Halskanteunterkrause". Und natürlich einen Webserver mit der Möglichkeit der serverseitigen Programmierung (z.B. in PHP) und natürlich eine von diesem aus erreichbare Datenbank.

    Nicht zu Vergessen einen Browser für das Lesen der Handbücher (und um hier Fragen zu stellen) sowie ggf. mehrere zum Testen.

    1. hi fastix,

      Welche Programme brauche ich?

      Einen brauchbaren Texteditor.

      späßel nur ab und zu mit ein paar "Programmiertätigkeiten" rum.

      Hat er mitgeteilt. Also ich kenne keinen Programmierer dem man sagen muss daß er einen Texteditor braucht.

      MfG

  3. Hallo,

    wo soll die Auswertung gespeichert werden? Auf dem Server oder auf dem Rechner des jeweiligen Besuchers?

    Gruß
    Jürgen

    1. Hello,

      wo soll die Auswertung gespeichert werden? Auf dem Server oder auf dem Rechner des jeweiligen Besuchers?

      Das müsste man ggf. präzisieren!

      Wenn die Daten ohnehin schon auf dem Server bekannt sind, ist es unerheblich, ob die Auswertung auch dort gespeichert wird, oder nur auf dem Client.

      Entscheidend wäre dann, wo überall sie berechenbar ist. Mag ja sein, dass der Client noch über Schlüsseldaten verfügt, die er nicht übertragen hat, und es dem Server daher (nahezu) unmöglich ist, eine Auswertung durchzuführen.

      Sowas wäre eigentlich wünschenswert im Sinne des Datenschutzes.

      Liebe Grüße
      Tom S.

      --
      Es gibt nichts Gutes, außer man tut es!
      Das Leben selbst ist der Sinn.
      1. Hallo Tom,

        einige meiner Webapps (oder das, was ich dafür halte) laufen ausschließlich auf den Clienten. Die Daten werden vom Clienten geladen und die möglichen Ergebnisse werden auch auf dem Clienten gespeichert. Nur die App, also die Webseite, kommt vom Server.

        Daher meine Nachfrage.

        Gruß
        Jürgen

        1. hi

          einige meiner Webapps (oder das, was ich dafür halte) laufen ausschließlich auf den Clienten. Die Daten werden vom Clienten geladen und die möglichen Ergebnisse werden auch auf dem Clienten gespeichert. Nur die App, also die Webseite, kommt vom Server.

          Daher meine Nachfrage.

          Und ist berechtigt. Natürlich kann auch ein Voting oder eine allgemeine Datenerfassung vollständig lokal ablaufen. Einschließlich der Datenhaltung. Und selbtverständlich wird man auch eine lokale Anwendung, sofern die auf einem Mobilgerät zum Einsatz kommt, mit einem Login vor unbefugtem Zugriff schützen.

          Wobei man da auch gleich über eine Festplattenverschlüsselung und einen Prompt via OS nachdenken könnte.

          MfG

          1. Hello,

            Natürlich kann auch ein Voting oder eine allgemeine Datenerfassung vollständig lokal ablaufen.

            Da müssen dann alle Wähler zu diesem einen PC kommen, oder?

            Liebe Grüße
            Tom S.

            --
            Es gibt nichts Gutes, außer man tut es!
            Das Leben selbst ist der Sinn.
            1. Hello,

              Natürlich kann auch ein Voting oder eine allgemeine Datenerfassung vollständig lokal ablaufen.

              Da müssen dann alle Wähler zu diesem einen PC kommen, oder?

              Ne, die Drücker von Infrafrust kommen zu Dir ins Haus. Ansonsten lauern sie ohnehin schon überall rum.

              MfG

              1. Hello,

                Natürlich kann auch ein Voting oder eine allgemeine Datenerfassung vollständig lokal ablaufen.

                Da müssen dann alle Wähler zu diesem einen PC kommen, oder?

                Ne, die Drücker von Infrafrust kommen zu Dir ins Haus. Ansonsten lauern sie ohnehin schon überall rum.

                Hier verwürfelst Du jetzt aber die Bearbeitungsschichten, oder?

                Deine Art der Erfassung hat nichts mehr mit der IT-Struktur darunter zu tun, bzw. muss erst noch konsolidiert werden. Und der Konsolidierungspunkt liegt dann eben bei diesem einen Host (PC), der nur von einem User benutzt wird und dieser hat die Daten zu erfassen. Also kommen (die Papiere der) Wähler bei genau diesem einen PC vorbei.

                Da war ja selbst die Erfassung nach Hollerith schon moderner.

                Liebe Grüße
                Tom S.

                --
                Es gibt nichts Gutes, außer man tut es!
                Das Leben selbst ist der Sinn.
                1. Hello,

                  Da war ja selbst die Erfassung nach Hollerith schon moderner.

                  Das ist nicht die Erfassung sondern die Speicherung. Erfassen tut man mit Eingabegeräten und die sind von Dateien (Lochkarten sind Files) weit entfernt. Da liegen noch einige Schichten dazwischen.

                  MfG

                  1. Hello,

                    Da war ja selbst die Erfassung nach Hollerith schon moderner.

                    Das ist nicht die Erfassung sondern die Speicherung. Erfassen tut man mit Eingabegeräten und die sind von Dateien (Lochkarten sind Files) weit entfernt. Da liegen noch einige Schichten dazwischen.

                    Ok, da hast Du mich erwischt:

                    • Erfassen
                    • Speichern
                    • Verarbeiten
                    • Ausgeben

                    Da sind wir wieder bei E(S)VA.

                    Aber trotzdem findet in Richtung Speicherung + Verarbeitung doch alles konvergent statt. Schon der Erfassungspunkt (Konsolidierung per IT) wäre nach deiner Logik nur ein einziger. An diesem Punkt müssen die Daten konform vorliegen.

                    Warum ich noch darauf herumreite?

                    Ganz einfach: Im Webumfeld sind unterschiedlichste Systeme vorstellbar, die über unterschiedlichste Formulare (ggf. bedingt durch die Systeminterpretationen) gleichartige Daten erfassen und zentralisieren wollen. Am zentralen Punkt (Konsolidierung) sollen die Daten dann gespeichert und zusammengeführt werden. Das erfordert die Einhaltung etlicher Rahmenbedingungen (Datenanpassungen und -Umwandlungen) und Ablaufplanungen (Locking, Bewertungs- und Abarbeitungsverfahren = FiFi, LiFo, HiFo, ...).

                    Eine Applikation lässt sich also nicht "einfach so" zusammenklicken. Man muss schon überlegen, wie es laufen soll.

                    Liebe Grüße
                    Tom S.

                    --
                    Es gibt nichts Gutes, außer man tut es!
                    Das Leben selbst ist der Sinn.
                    1. Hello,

                      Eine Applikation lässt sich also nicht "einfach so" zusammenklicken. Man muss schon überlegen, wie es laufen soll.

                      Natürlich. Ich hab ja nicht umsonst den Begriff der Replikation hier in den Thread gesetzt.

                      MfG

            2. Hej TS,

              Natürlich kann auch ein Voting oder eine allgemeine Datenerfassung vollständig lokal ablaufen.

              Da müssen dann alle Wähler zu diesem einen PC kommen, oder?

              Ich hoffe mit Lokal ist Kneipe gemeint! - Dann komme ich wählen! 😝

              Marc

              1. Hello,

                Natürlich kann auch ein Voting oder eine allgemeine Datenerfassung vollständig lokal ablaufen.

                Da müssen dann alle Wähler zu diesem einen PC kommen, oder?

                Ich hoffe mit Lokal ist Kneipe gemeint! - Dann komme ich wählen! 😝

                YmmD

                Aber eigentlich bin ich gar nicht traurig. Das Bier und den Schnaps hast Du auf jeden Fall schon mal sicher zum "Treffen der Wähler" am 08.09.2018 in DO.

                Liebe Grüße
                Tom S.

                --
                Es gibt nichts Gutes, außer man tut es!
                Das Leben selbst ist der Sinn.
              2. Hej marctrix,

                Ich hoffe mit Lokal ist Kneipe gemeint! - Dann komme ich wählen! 😝

                Nachfrage: wo kann ich mich als Speichermedium bewerben?

                Marc

    2. Hallo,

      wo soll die Auswertung gespeichert werden? Auf dem Server oder auf dem Rechner des jeweiligen Besuchers?

      Also ne Punktezahl alias Benotung, das klingt eher wie serverseitig. Da macht clientseitig nicht viel Sinn.

      MfG

      1. Hallo Rolf,

        im OP stand

        … Für die Datenbank hatte ich gedacht kann man das local über phpmyadmin ausprobieren.

        Wegen des „local“ fragte ich nach.

        Gruß
        Jürgen

        1. Hi Jürgen

          im OP stand

          … Für die Datenbank hatte ich gedacht kann man das local über phpmyadmin ausprobieren.

          Wegen des „local“ fragte ich nach.

          Dann wirds kompliziert: Wir kommen zum Thema Replikation 😉

          Aber falls das zum Thema wird, isses auch kein Prolem. Machbar ist das alles.

          MfG

          PS: Wo ist eigentlich der OP geblieben!?

      2. Mahlzeit,

        Also ne Punktezahl alias Benotung, das klingt eher wie serverseitig. Da macht clientseitig nicht viel Sinn.

        Lokal und Clientseitig sind ja nicht zwingend das gleiche. Solltest du eigentlich wissen.

        --
        42
  4. Tach!

    Ich habe vor eine Webapplikation (heißt das folgende überhaupt so?) zu erstellen.

    Kann man so nennen, wenn irgendwas interaktives jenseits von Link-Klicken drin ist. Die Frage ist eher, ob der Browser nur die Oberfläche präsentiert oder auch Daten verarbeiten soll, oder ob die Datenverarbeitung allein auf dem Server stattfindet. Dazu sollte man sich die Frage stellen, welchen Vorteil die clientseitige Verarbeitung bringt.

    Das ganze soll sich sehr simple verhalten. Ein einfacher Login als Startseite, dann soll man Kriterien festlegen die zu bewerten sind, anschließend werden die festgelegten Werte mit einer Punktzahl (z.B. Schulnoten System) bewertet und am Ende soll eine Gesamtpunktzahl heraus kommen. Diese Auswertung soll dann gespeichert werden und jederzeit abgerufen werden.

    Klingt mir jetzt noch nicht danach, dass das clientseitig laufen müsste.

    Also die Vorstellung zur ist für mich relative simple. Liege ich hier richtig (ist natürlich immer eine Sache des Betrachters)

    Der Teufel steckt im Detail. Bei Datenverarbeitung allgemein und bei Login- beziehungsweise persönlichnen Daten im Speziellen kommt man heutzutage sehr schnell auf Datenschutz zu sprechen. Und da liegen so einige Fallstricke rum.

    Für die Webseitenoberfläche brauche ich HTML.

    Ohne Frage. Dazu aber auch noch CSS und vielleicht Javascript. Es ist aber meist günstig, wenn es auch ohne Javascript grundlegend läuft.

    Für die Funktion (Login, Rechnen, Auswerten) benötige ich JavaScript.

    Kann durchaus auch serverseitig erfolgen. Gehe ich recht in der Annahme, dass es eher ungünstig ist, wenn der Client die (ausgerechneten und ausgewerteten) Daten manipuliert? Dann ist eine serverseitige Verarbeitung unumgänglich. Clientseitig lohnen sich dann lediglich Komfort-Funktionen wie Vorabprüfungen.

    Für die Datenbank hatte ich gedacht kann man das local über phpmyadmin ausprobieren.

    Muss serverseitig erfolgen. Jedenfalls hast du ein Login erwähnt. Wenn die Daten nur clientseitig blieben, benötigte man dieses ja nicht.

    Jetzt sind meine Fragen. Wo fange ich an?

    Getrennt am besten. Herunterbrechen auf Teilaufgaben hat sich sehr bewehrt. Man kann damit starten, die Benutzeroberfläche (UI) zu gestalten. Nicht in dem Sinne, welche Farbe wohin kommt, sondern eher die praktischen Dinge wie: Was brauche ich für Eingaben? Wie führe ich den Benutzer durch die Anwendung? Wie ordne ich die Dinge an?

    Andererseits kannst du auch mit der Serverseite starten und erstmal die Geschäftslogik entwickeln. Das geht auch gänzlich ohne Oberfläche. Und das ist auch besser so, dass man die Dinge nicht zu sehr verheiratet, sondern definierte Schnittstellen hat, über die die Daten laufen. Dann kann man recht unabhängig von anderen Teilen Änderungen vornehmen.

    Brauche ich ein GUI-Builder der mir das Designen einfacher macht.

    Designen ist eine Sache, die im Kopf stattfindet. Papier oder Programme sind Hilfsmittel, um die Ideen festzuhalten.

    Welche Programme brauche ich?

    Im Prinzip reicht ein Texteditor wie Notepad. Aber "Komfort" schreibt man anders. Allerdings nützt einem der Komfort nicht viel, wenn man bei den Grundlagen noch so viel Lernbedarf hat, dass man gar nicht weiß, wofür die komfortable IDE (Entwicklungsumgebung) ihre Unterstützung bietet. Für den Anfang reicht dann auch erstmal ein etwas besserer Editor mit Dingen wie Syntax-Highlighting.

    Stimmen die Sprachen die ich vorhabe?

    phpMyAdmin ist lediglich eine Verwaltungsoberfläche. Die nützt dir gar nichts beim Verarbeiten der Daten. Das muss in einer serverseitigen Sprache erfolgen. PHP ist da sehr beliebt als Programmiersprache, aber auch viele andere sind möglich. Es kommt letztlich auch darauf an, was auf dem Server zur Verfügung steht, auf dem das laufen soll. Auch Unterstützung bei Fragen ist wichtig. Die tollste Sprache hilft wenig, wenn sie so exotisch ist, dass keiner sich damit auskennt und Fragen beantworten kann.

    Wichtig ist auch die Kenntnis von konzeptionellen Techniken. Beispielsweise machen Nutzer bei Eingaben Fehler. Wie gehe ich damit um? Sehr einfach ist, einem Formular als Ziel die Folgeseite mitzugeben und die Verarbeitung der Eingaben dort stattfinden zu lassen, weil man ja als Antwort das nächste Formular präsentieren möchte. Aber wenn es zum Fehlerfall kommt, fängt man an, wieder zurückzuspringen. Dann möchte man ja auch die Eingabedaten nicht verlieren, und bastelt irgendwas, um sie auch wieder ins vorhergehende Formular zu bekommen. Besser ist hingegen die Affenformulartechnik. Man leitet immer zu sich selbst. Wenn Fehler festgestellt wurden, zeigt man das Formular, ansonsten verarbeitet man die Daten und antwortet erst dann bei Erfolg mit der Weiterleitung zum nächsten Formular.

    Am besten einfach mal anfangen und die Erwartungen nicht zu hoch ansetzen. Üblicherweise kommt etwas dabei raus, das man im Nachhinein lieber niemandem mehr zeigen möchte. Aber was solls, hat nicht jeder so begonnen?

    dedlfix.

    1. Tach!

      @dedlfix

      Am besten einfach mal anfangen und die Erwartungen nicht zu hoch ansetzen. Üblicherweise kommt etwas dabei raus, das man im Nachhinein lieber niemandem mehr zeigen möchte. Aber was solls, hat nicht jeder so begonnen?

      Nein. Mit solch einer Erwartungshaltung macht es keinen Sinn mit überhaupt etwas anzufangen!

      MfG

  5. Hallo Struktur,

    Ein einfacher Login als Startseite, dann soll man Kriterien festlegen die zu bewerten sind, anschließend werden die festgelegten Werte mit einer Punktzahl (z.B. Schulnoten System) bewertet und am Ende soll eine Gesamtpunktzahl heraus kommen. Diese Auswertung soll dann gespeichert werden und jederzeit abgerufen werden. Also die Vorstellung zur ist für mich relative simple. Liege ich hier richtig (ist natürlich immer eine Sache des Betrachters)

    Als Übungsprojekt zum Einstieg ins Programmieren einer Webanwendung wäre das ok, andernfalls würde ich sagen: Deine Beschreibung ist sehr dürftig und klingt für eine praktische Nutzbarkeit komplett sinnfrei.

    Warum? Deine Beschreibung erwähnt nicht:

    • Wieviele Anwender sollen das tun?
    • Wenn mehr als einer: Wie kommt ein Login ins System? Brauchst Du außer Login auch noch die Funktion "Registrieren"?
    • Soll jeder Anwender seine eigenen Kriterien definieren und bewerten? Was für ein Ding wird da bewertet? Das musst Du uns jetzt nicht ausführlich beschreiben, aber Du musst Dir darüber klar sein. Der Anwender bewertet ja IRGENDWAS. Dieses Irgendwas wird entweder von der WebApplication vorgegeben, oder der Anwender muss selbst beschreiben können was da bewertet wird.
    • Wenn Kriterien für bewertbare Objekte (oder Subjekte) von der Application vorgegeben werden, dann willst Du das bestimmt nicht manuell in der Datenbank tun. Du hast Benutzer, die bewertbare Objekte (oder Subjekte) eingeben, und Kriterien dafür festlegen. Kann das jeder? Oder nur spezielle Anwender? Brauchst Du also ein Rollenkonzept? Eine Rechteverwaltung für den Admin?
    • Wenn es die Anwender selbst eingeben: Kann ein bewertetes Objekt (oder Subjekt) nur von einem Anwender bewertet werden oder von mehreren?
    • Wenn es mehrere bewertbare Objekte (oder Subjekte) gibt: Der Anwender muss auswählen können, was er da bewerten will.
    • Wer kann welche Bewertungen abrufen? Jeder alle? Ein Anwender nur seine eigenen? Anwender innerhalb einer Gruppe untereinander, aber keine Bewertungen anderer Gruppen?

    Du siehst: Das Thema ist ÜBERHAUPT nicht simpel, sobald man Nutzungsmöglichkeiten überlegt. Eine Methode ist hier, sich so genannte User Stories zu überlegen. Welcher Arten von Anwendern gibt es, welche Interaktionen eines Anwenders mit der WebApplication sind denkbar, welche davon möchte man per Software unterstützen, wie muss man das tun - solche Überlegungen finden statt bevor man auch nur eine Zeile Code schreibt oder eine DB-Table anlegt.

    Wenn Du dann loslegst, kannst Du das entweder als klassische Web-Application tun, die den Browser ausschließlich zur Präsentation verwendet und bei der Logik und Datenhaltung auf dem Server liegen. Du hast dann HTML und CSS auf dem Client, vielleicht eine Prise JavaScript (je weniger, desto besser). Serverseitig hast Du eine Serversprache und eine Datenbank. Die preiswerte Lösung ist hier PHP oder Perl zusammen mit MySql. Alternativen gibt's noch reichlich, aber die Lernkurve ist dann steiler und länger. Dieser Weg ist nicht ganz so schick, aber mit deutlich weniger Lernaufwand realisierbar. Vor allem hast Du hier weniger Security-Probleme. Ein „dummer“ Client kann auch weniger Unsinn anrichten - natürlich muss der Server immer noch aufpassen, dass er keine gefälschten Requests untergeschoben bekommt, die Dinge tun wollen, die für den User gar nicht erlaubt sind.

    Die Alternative ist die Single Page Application (SPA), bei der einmal eine HTML Seite mit viel JavaScript geladen wird und die Logik zwischen Browser und Server aufgeteilt wird. Wenn es eine „Einzel-User“ Anwendung sein soll, brauchst Du gar keinen Server, sondern kannst neuere JavaScript Features wie LocalStorage verwenden und alles im Browser programmieren. In einer Multi-User Anwendung brauchst Du einen Server und eine Datenbank und musst dann den Code zwischen Client und Server geeignet verteilen. Der Client kümmert sich um die Präsentation und Eingabevalidierung, der Server immer noch um Logik und Datenhaltung, und er muss hier genauso aufpassen, dass der Client keine betrügerischen Services aufrufen will. Diese Technik ist deutlich aufwändiger und erfordert mehr Fachwissen. Ich würde sie Dir nicht empfehlen.

    Rolf

    --
    sumpsi - posui - clusi
    1. Hello,

      Als Übungsprojekt zum Einstieg ins Programmieren einer Webanwendung wäre das ok, andernfalls würde ich sagen: Deine Beschreibung ist sehr dürftig und klingt für eine praktische Nutzbarkeit komplett sinnfrei.

      Ich sehe das so: der/die OP möchte etwas erreichen. OP kennt bereits einige Methoden (von sehr vielen), die zur Aufgabenlösung beitragen können. Wie können wir nun (behutsam) das angepeilte Projekt unterstützen und die Sensibilität für die Notwendigkeiten fördern?

      Alternative wäre nämlich, dass OP sich irgendwann gefrustet eine "Ready-to-Start-Lösung" aus dem WWW installiert und damit aller Wahrscheinlichkeit kurzfristig einen neuen Zombie erzeugt, der im Web macht, was andere wollen und immer noch nicht seine Anforderungen erfüllt.

      Ergebnis: OP lässt den Zombie unbeachtet weiterlaufen und installiert den nächsten.

      Liebe Grüße
      Tom S.

      --
      Es gibt nichts Gutes, außer man tut es!
      Das Leben selbst ist der Sinn.
    2. hi @Rolf B

      Du siehst: Das Thema ist ÜBERHAUPT nicht simpel, sobald man Nutzungsmöglichkeiten überlegt.

      DU siehst es viel zu kompliziert.

      Eine Methode ist hier, sich so genannte User Stories zu überlegen. Welcher Arten von Anwendern gibt es, welche Interaktionen eines Anwenders mit der WebApplication sind denkbar, welche davon möchte man per Software unterstützen, wie muss man das tun - solche Überlegungen finden statt bevor man auch nur eine Zeile Code schreibt oder eine DB-Table anlegt.

      Eine andere Methode wäre, mit dem Einfachen zu beginnen und die Anwendung dann Schritt für Schritt erweitern. Evntl. werden es auch mehrere Anwendungen. Wenn jedoch ein erfolgreicher Login zu einer bestimmten Anwendung umleitet, dann ist das nur eine Anwendung. Da könnte man z.B. über HTML+Templates verschiedene Eingabemasken laden.

      MfG

      1. Hallo pl,

        guckst Du hier. Ich hab's doch gleich gewusst, dass ich's gleich gewusst habe.

        Rolf

        --
        sumpsi - posui - clusi
        1. hi @Rolf B

          guckst Du hier. Ich hab's doch gleich gewusst, dass ich's gleich gewusst habe.

          Ja schon gelesen. Also gehören Login und Bewertung ja doch zusammen als eine Anwendung.

          Ich würde jedoch, mit dem Wissen um die Zielstellung, mehrere Anwendungen daraus machen. Und zwar so, daß nach dem Login der Inhalt einer ganzen Domäne ausgetauscht wird, so wie es diese Demo zeigt.

          Das hat den Vorteil, daß die Policy, die natürlich ohnehin noch zu erarbeiten ist, vom Code der Benotungs~Anwendung vollständig getrennt werden kann. Somit wird das erweiterbar insofern als daß je nach angemeldeten Benutzer resp. Gruppe verschiedene Anwendungen verfügbar sind bzw. als Erweiterung auch später hinzukommen können.

          MfG

    3. Erstmal vielen Dank für deine Antwort auf meine Fragestellung. Da jetzt massig Antworten rein gekommen sind präzisiere ich mal mein Vorhaben (das Endprodukt) ein wenig an einem Beispiel:

      Es gibt eine Webseite namens www.beispielschule.de (fiktiv für das Beispiel). Wenn sich nun ein User (in dem Fall ein Lehrer) mit seiner Email Adresse und einem Passwort (beide Daten wurden von einem Admin manuell in die Datenbank (?) eingetragen) einloggt, wird er eine Seite weiter geführt. Hier kann der Lehrer nun seine verschiedenen Klassen die er hat eintragen (Bsp.: Grundschulklasse 1A, Realschulklasse 5C). Hat er die Klassen eingetragen kann er weiter die Fächer eintragen die er in diesen Klassen hat (Bsp.: Grundschulklasse 1A - Mathe,Deutsch ; Realschulklasse 5C - Sport, Biologie). Als letzten Schritt gibt er die Schüler ein die sich in diesen Klassen bei Ihm befinden. Sind diese Daten alle eingetragen, kann der Lehrer jedem Schüler seine Note geben (mündlich, schriftlich). Jetzt hat der Lehrer seine Arbeit getan und geht nach Hause. Jetzt loggt sich die Lehrerin ein die ebenfalls die Realschulklasse 5C hat aber nicht die Grundschulklasse 1A. Somit sieht sie nur das die Realschulklasse 5C (d.h. der Admin hat ebenfalls eine Berechtigung den jeweiligen Lehrern zugeordnet) angelegt worden ist. Hier kann sie jetzt ihre Fächer hinzufügen und die bereits angelegten Schüler bewerten.

      Der Schuldirektor als Oberhaupt kann dann am ende des Eintragens die Durchschnittsnoten aller Schüler errechnen (?) bzw. auswerten lassen.

      Jeder Lehrer kann sich mit einem Internet Zugang einloggen egal wo er sich befindet. Also kein schulinterner Server oder dergleichen.

      Das wäre ein fiktives Beispiel für meine Problemstellung. Das das Beispiel eventuell an ein paar ecken hinkt kann gut sein ist aber auch nicht sinn des Problems. Hier geht es ja darum wie ich eine derartige Webseite realisieren kann die derartige Eingaben und derartige Datenspeicherungen erlaubt.

      Ich bitte darum bei den Vorschlägen ein wenig präziser zu sein. Zum Beispiel (für die server seitige Sprache PHP oder Perl mit MySql) welches Programm kannst du empfehlen? Inwiefern ist darin MySql implementiert usw.

      Ich danke im Voraus für das bereits vorhandene engagement. ;-) Bei Fragen gerne weiter fleißig zitieren und kommentieren.

      1. Tach!

        Das wäre ein fiktives Beispiel für meine Problemstellung.

        Das ist am Ende doch eine gehörige Portion mehr, als es sich im ersten Posting las. Da kommen jede Menge Dinge drin vor, die administrativ zu erledigen sind. Du hast also gleich zwei Benutzeroberflächen, eine für die Administration und eine für die Anwender. Oder zumindest eine Rechteverwaltung, die die Aktionen der einen vor Benutzung durch die anderen schützt. Und entsprechend deiner Beschreibung hast du jede Menge einzelne Aktionen (oder Use Cases), die mit der Anwendung auszuführen sind. Die Frage ist auch, müssen es solche Verkettungen in der Reihenfolge sein, oder kann man das als Einzelaktionen implementieren, und der Anwender sucht sich aus dem Menü raus, was er grad braucht? Letzeres ist auch nochmal einfacher aufzusetzen.

        Das das Beispiel eventuell an ein paar ecken hinkt kann gut sein ist aber auch nicht sinn des Problems. Hier geht es ja darum wie ich eine derartige Webseite realisieren kann die derartige Eingaben und derartige Datenspeicherungen erlaubt.

        Das ist für mich ein sehr ehrgeiziges Projekt für deine Verhältnisse, es sei denn, du hast bei "späßel nur ab und zu mit ein paar "Programmiertätigkeiten" rum" stark untertrieben. Das heißt nicht, dass es nicht zu lösen wäre, aber plane mal lieber jede Menge Rückwärtsschritte ein und neue Versuche, die Richtung zum Ziel zu finden.

        Ich bitte darum bei den Vorschlägen ein wenig präziser zu sein. Zum Beispiel (für die server seitige Sprache PHP oder Perl mit MySql) welches Programm kannst du empfehlen? Inwiefern ist darin MySql implementiert usw.

        Fang erstmal klein mit allgemeinen Übungen abseits des Projekts an. Zum Beispiel, wie man ein Formular erstellt, in das man Daten eingeben kann, die beim Absenden in eine Datenbank geschrieben werden. Dann weiter, wie man mit Eingabefehlern umgehen kann. Daten abfragen und präsentieren sowie Daten eingeben und speichern sind Dinge, die sehr oft vorkommen in Anwendungen wie der geplanten.

        Und ja, PHP (Perl würde ich nicht nehmen, das ist mittlerweile zu exotisch) und MySQL sind die Dinge, die man häufig zur Verfügung hat. Es nützt dir aber nichts, wenn die Zielplattform zum Beispiel ein Window-Server ist und der Admin sagt, dass ihm da nichts anderes als der IIS mit .NET-Programmen draufkommt. Dann ist es sinnvoller, dass du mit C#, ASP.NET MVC und SQL Server arbeitest. Womit du arbeiten kannst, solltest du also an den Gegebenheiten ausrichten.

        dedlfix.

      2. Mahlzeit,

        du willst ein CRM oder Groupware. Zumindest verstehe ich die Problemstellung so. IMO ein typischer Fall für ein Framework, da dir damit shcon viel Arbeit abgenommen wird und die Zugriffe nicht so massiv sind, dass es Ressourcenprobleme auf dem Server gibt.

        --
        42
        1. Hallo m.,

          für mich sieht das nach einer integrierten Schulverwaltung aus. Die beginnt mit einem CRM, ja, und fängt danach erst so richtig an....

          Rolf

          --
          sumpsi - posui - clusi
          1. Mahlzeit,

            na deshalb nimmt man auch was, was man erweitern kann. Der OP hat geschrieben "wo fange ich an". Er fängt mit einem fertigen CRM an und erweitert es wie gewünscht. Perfekte Grundlage ist da OctoberCMS auf Basis von Laravel und dazu das CRM-Plugin, das für ein Tutorial entwickelt wurde, wie man Plugins entwickelt.

            Besser geht es nicht, wenn das eigene Projekt das Thema eines Tutorials ist 😀

            http://octobercms.com/support/articles/tutorials

            --
            42
      3. Moin,

        Software für Schulen, sollte es eigentlich schon geben. Also mich würde es wundern wenn es sowas noch nicht geben würde. Und da sollte es nicht an der Frage eines geeigneten Editors scheitern.

        Bei Fragen gerne weiter fleißig zitieren und kommentieren.

        Wie bist Du überhaupt auf die Idee gekommen solch SW selbst zu programmieren?

        MfG

        1. Servus!

          Software für Schulen, sollte es eigentlich schon geben.

          Ja, das gibt es auf jeden Fall. Die Schulbuch-Verlage haben hier einen großen, durch die Genehmigunsbehörden für Schulbücher zugangsbeschränkten Markt, den sie möglichst ausbauen wollen. Neben den eigentlichen Schulbüchern bieten Sie Arbeitshefte und weitere Unterrichtsmaterialien an. In den letzten Jahren kamen dann auch digitalisierte Produkte (Text aus Schulbuch kann auf Kopfdruck zum Arbeitsblatt mit Lückentext ausgedruckt werden und Vokabeltrainer-Apps für nur 5,99€/Jahr (Die App ist kostenlos, die passenden Vokabeln kosten Geld!)

          Aus den Kritiken des unteren Links kannst du schon erkennen, dass viele dieser Produkte eher die Eltern beruhigen, als denn wirklich die Leistungen der Schüler verbessern sollen.

          Da etwas eigenes herzustellen, hat schon seinen Reiz, trifft aber bald, wie @dedlfix schon anmerkte, auf größere Hürden. @Felix Riesterer hat sein R-Quiz-Framework kostenlos als OER zur Verfügung gestellt. Dort gibts es keinerlei Login, daher wenig Aufwand bei der Einrichtung und Anwendung, aber eben auch keine Auswertung der Daten. @Struktur würde dann schon noch merken, wie Schüler und Eltern argumentieren, wenn der Schüler im Online-Üben mit der App eine Eins und im eigentlichen Test aber nur eine Vier hat.

          Bei Fragen gerne weiter fleißig zitieren und kommentieren.

          Wie bist Du überhaupt auf die Idee gekommen solch SW selbst zu programmieren?

          Wie bist du auf die Idee gekommen, ein eigenes Framework für Dich zu schreiben anstelle etwas Fertiges aus Amerika zu nehmen? Genauso geht es den Lehrern: Wir haben Ideen und überlegen dann, ob und wie wir die umsetzen können.

          Herzliche Grüße

          Matthias Scharwies

          --
          "Survive or die trying!"
          1. Servus!

            Wie bist du auf die Idee gekommen, ein eigenes Framework für Dich zu schreiben anstelle etwas Fertiges aus Amerika zu nehmen?

            Die Antwort zeigt sich erst heute, viele Jahre später. Das ist wie mit einem Haus was man so baut, daß man im Alter und mit Behinderungen immer noch darin leben kann.

            Genauso geht es den Lehrern: Wir haben Ideen und überlegen dann, ob und wie wir die umsetzen können.

            So isses. Ideen allein reichen nicht. Es kommt darauf an sie umzusetzen.

            MfG

  6. Hallo Struktur,

    wenn es um das Design und die Benutzerführung geht kann ich dir Adobe XD empfehlen. Mittlerweile ist dieses Tool kostenlos. Damit kannst du interaktive Prototypes erstellen und schauen wie sich deine Seite verhält, was passiert wenn hier und dort geklickt wird. Einfach großartig.

    Bis bald!
    Meowsalot (Bernd)

  7. Mahlzeit,

    Jetzt sind meine Fragen. Wo fange ich an? Brauche ich ein GUI-Builder der mir das Designen einfacher macht. Welche Programme brauche ich? Stimmen die Sprachen die ich vorhabe? usw.

    Du brauchst einen einfachen Texteditor, du willst aber einen Editor, der mehr kann. Sublime Text kann ich da empfehlen, ist aber "unendliche Trial" aktuell kostenlos nutzbar.

    Wenn dein Projekt etwas grösseres werden soll das auch Sicheriheitsaspeckte berücksichtigt, überlegt dir ein Framework, das die Sache erleichtert. Laravel ist da ein guter Kandidat weil weltweit am meisten eingesetzt, allerdings auch sehr komplex und nicht in 2 Tagen erlernt. Durch den Overhead aber eh nur für grössere Projekte geeignet. Es gibt massenhaft Frameworks für verschiedene Einsatzzwecke von mini bis gross 😉

    Je nach sonstiger Funktionalität gibt es dann vielleicht auch schon fertige Sachen die du erweitern kannst.

    Wenn es dir nur um den Spass am lernen geht und du nur "kleinigkeiten" machen willst, vergiss Frameworks o.ä., dann lerne es "from Scratch" Wichtig ist nur, wenn eine Seite offen im Netz erreichbar ist, muss sie so sicher sein, wie möglich.

    --
    42
    1. Hallo m.,

      Du brauchst einen einfachen Texteditor, du willst aber einen Editor, der mehr kann. Sublime Text kann ich da empfehlen, ist aber "unendliche Trial" aktuell kostenlos nutzbar.

      den hatte ich sehr lange benutzt. In der Trial Version kam mir irgendwann zu viel der Hinweis, ich soll doch bitte die Vollversion kaufen.

      Ich nutze jetzt den Visual Studio Code. Dieser hat alles was du braucht, kann ihn mit diversen Plugins erweitern und wird ständig weiterentwickelt. Dazu kommt noch, er ist für jede Plattform zu haben.

      Bis bald!
      Meowsalot (Bernd)

      1. Mahlzeit,

        den hatte ich sehr lange benutzt. In der Trial Version kam mir irgendwann zu viel der Hinweis, ich soll doch bitte die Vollversion kaufen.

        Tja, ich verdiene damit Geld also sollen die Entwickler auch ihr Geld haben. Deshalb hab ich diesen Hinweis seit Jahren nicht mehr. Selbst das Update von 2 auf 3 war mir für 39$ nicht zu viel Geld weil ich das in weit weniger als einer Stunde wieder drin hab.

        Ich nutze jetzt den Visual Studio Code. Dieser hat alles was du braucht, kann ihn mit diversen Plugins erweitern und wird ständig weiterentwickelt. Dazu kommt noch, er ist für jede Plattform zu haben.

        Zum einen weisst du nicht, was ich(!) brauche, du kannst also maximal sagen, er hat alles was du brauchst, nicht was ich brauche, zum anderen fehlen bei 5 Suchen bei den Plugins 3 relevante Erweiterungen die ich(!) brauche. Dafür muss ich Plugins installieren um eine Grundfunktionalität zu bekommen, die ich bei Sublime bereits fertig habe.

        Sublime wird ebenfalls ständig weiter entwickelt und millionenfach eingesetzt. Lediglich PHPStorm soll an die Funktionalität ran kommen, ist aber wesentlich teurer.

        Wenn dir Visual Studio Code besser gefällt, dann bleib dabei, ich hab nicht vor, dich umzustimmen 😀

        --
        42
      2. Hi Bernd

        Du brauchst einen einfachen Texteditor, du willst aber einen Editor, der mehr kann. Sublime Text kann ich da empfehlen, ist aber "unendliche Trial" aktuell kostenlos nutzbar.

        Schon mal mit Emacs oder vi(m) probiert? Sublime3 hatte ich mal. Jaaa, schon ganz nettes Tool, aber wozu, wenn es mit den emacsen und vim schon absolute Top-Editoren gibt? Dazu sind beide gratis. Vor allem Lisp und Emacs gehen gut zusammen.

        vg Klaus

        1. Mahlzeit,

          Schon mal mit Emacs oder vi(m) probiert? Sublime3 hatte ich mal. Jaaa, schon ganz nettes Tool, aber wozu, wenn es mit den emacsen und vim schon absolute Top-Editoren gibt? Dazu sind beide gratis. Vor allem Lisp und Emacs gehen gut zusammen.

          Dir ist aber schon klar, dass eine Entwicklungsumgebung nicht nur aus einem Editor besteht sondern auch einiges an Zubehör braucht? Da wären z.B. Linter, Debugger, Unittests, Profiler, div. Compiler usw.

          Nem Anfänger vi, lisp und emacs zu empfehlen ist ungefähr so als wenn du nen Führerscheinneuling bei der ersten Fahrstunde alleine in nen Formel 1 Wagen setzt. Wenn er es überlebt, wird er sicher nie mehr Auto fahren wollen.

          --
          42
          1. Hallo,

            Dir ist aber schon klar, dass eine Entwicklungsumgebung nicht nur aus einem Editor besteht sondern auch einiges an Zubehör braucht? Da wären z.B. Linter, Debugger, Unittests, Profiler, div. Compiler usw.

            ich dachte, Bernd macht vor allem in Wordpress und Web? Wozu genau braucht er zum Beispiel diverse Compiler? Und was haben diese mit vi, emacsen oder subl zu tun? Kapier's grad nicht, was du meinst, kann aber auch an den zig Bieren liegen, die ich heute abend verkosten durfte.

            Nem Anfänger vi, lisp und emacs zu empfehlen ist ungefähr so als wenn du nen Führerscheinneuling bei der ersten Fahrstunde alleine in nen Formel 1 Wagen setzt. Wenn er es überlebt, wird er sicher nie mehr Auto fahren wollen.

            Vi ist im Grunde nicht schwer.

            1. Hallo Klaus,

              Wozu genau braucht er zum Beispiel diverse Compiler?

              für z.B. scss wenn du nicht ständig ein Online Tool nutzen willst und mit copy and paste arbeiten willst.

              Bis bald!
              Meowsalot (Bernd)

              1. Hej Meowsalot,

                Wozu genau braucht er zum Beispiel diverse Compiler?

                für z.B. scss wenn du nicht ständig ein Online Tool nutzen willst und mit copy and paste arbeiten willst.

                Vielleicht tut es erst mal css - man muss sich das Leben ja nicht von Anfang an schwer machen.

                Er möchte lernen. Aber doch nicht alles auf einmal. 😉

                Das kriegt man nicht hin!

                Marc

              2. Scss-compiler? LOL. Ok, wusste nicht, dass man sowas simpls mittlerweile auch schon als "Compiler" bezeichnet. Wieder was dazugelernt.

                1. Hallo Klaus,

                  Scss-compiler? LOL. Ok, wusste nicht, dass man sowas simpls mittlerweile auch schon als "Compiler" bezeichnet. Wieder was dazugelernt.

                  Die Komplexität definiert nicht, wie etwas genannt wird. Ein Compiler ist ein Programm, dass Quellcode von einer Programmiersprache in eine Maschinen-verständliche Form übersetzt. In dem Sinne ist der Begriff für SCSS zwar nicht falsch, aber „Transpiler“ als Sonderform eines Compilers wäre wohl der sauberere Begriff.

                  LG,
                  CK

            2. Mahlzeit,

              ich dachte, Bernd macht vor allem in Wordpress und Web? Wozu genau braucht er zum Beispiel diverse Compiler?

              Um z.B. less und sass zu kompilieren.

              Und was haben diese mit vi, emacsen oder subl zu tun? Kapier's grad nicht, was du meinst, kann aber auch an den zig Bieren liegen, die ich heute abend verkosten durfte.

              Ernst gemeint?

              Vi ist im Grunde nicht schwer.

              Nene ..... allein die Tatsache, dass Copy&Paste andere Tastenkombinationen sind als bei 99.9% jeder anderen Software, macht ihn für Anfänger IMO unbrauchbar.

              Aber wenn du deine Linter, Debugger usw. alle in vi integriert hast und die dafür dann ca. 500 Tastenkombinationen auswendig gelernt hast, ist er ganz einfach. Und welcher Anfänger kann sich keine 500 Tastenkombinatinoen merken 😉

              Nur mal aus Interesse, wie rufst du denn aus vi Debuggungwerkzeuge etc. auf?

              --
              42
              1. Hej m.,

                Nur mal aus Interesse, wie rufst du denn aus vi Debuggungwerkzeuge etc. auf?

                Welche Quellen hast du denn trotz Interesses bereits konsultiert?

                Marc

  8. Hej Struktur,

    Jetzt sind meine Fragen. Wo fange ich an? Brauche ich ein GUI-Builder der mir das Designen einfacher macht. Welche Programme brauche ich?

    Wenn die Oberfläche wirklich gut werden soll, ist es am besten, die von HTML-Struktur von Hand zu erstellen und auch das CSS selber zu schreiben.

    Wenn du das aber nur so nebenher und ohne viel Aufwand machen möchtest, wird das nicht gut. Dann solltest du vielleicht lieber Bootstrap 4 (nicht älter!) einsetzen (habe ich das jetzt wirklich gesagt?).

    Wäre eine Notlösung. Mit Bootstrap Studio gibt es auch ein günstiges Programm, um sich damit Oberflächen zusammenzuklicken. Wichtig: du solltest dem, was dabei rauskommt unbedingt Logik einhauchen. Viele verwenden Bootstrap um überhaupt keine Arbeit zu haben. Wenn du wenigstens mal noch die großen Bereiche ordentlich auszeichnest (header, footer, nav, main und die Überschriften sinnvoll verwendest, bist du schon auf einem ganz guten Weg - um noch besseres abzuliefern ist dann allerhand Zeit nötig, um HTML und vor allem CSS zu lernen. Wenn du öfters Webseiten machen willst, solltest du diese Zeit selbstverständlich investieren.

    Marc

    1. Was ist an Bootstrap so schlecht, dass man es nur nutzen sollte, wenn man Webseiten nebenbei macht? Ok, ist bisschen groß und es gibt sicher bessere, schlankere selbstgecodete Alternativen. Aber als Hobbyframework würde ich Bootstrap jetzt nicht bezeichnen.

      1. Hallo Klaus,

        wer sagt bitte Bootstrap sollte man nur nutzen wenn man private Seiten macht? Unsere Stadtbahn Seite wurde vor ein paar Wochen neu gestaltet https://www.kvb.koeln/ mit mehreren Millionen Klicks zähle ich die Seite nicht zu einer privaten Seite.

        Bootstrap ist in meinen Augen sehr gut, wird ständig weiter entwickelt und man kann schöne Seite mit gestalten.

        Bis bald!
        Meowsalot (Bernd)

        1. Hej Meowsalot,

          Bootstrap ist in meinen Augen sehr gut, wird ständig weiter entwickelt und man kann schöne Seite mit gestalten.

          Klar. Wenn man keinen hat, der es selber machen kann, ist man sogar drauf angewiesen.

          Marc

          1. Hallo marctrix,

            sehe ich anderes. In der heutigen Zeit kommt es auf Geschwindigkeit drauf an. Warum sollen Komponenten selbst entwickelt werden wenn diese schon fertig sind. Warum setzten sehr große Agenturen darauf?

            Bis bald!
            Meowsalot (Bernd)

            1. Hej Meowsalot,

              sehe ich anderes. In der heutigen Zeit kommt es auf Geschwindigkeit drauf an. Warum sollen Komponenten selbst entwickelt werden wenn diese schon fertig sind. Warum setzten sehr große Agenturen darauf?

              Wegen der Ruck-zuck-Monetarisierung.

              Meiner Meinung nach ein Unding. Bei dem was man heute an einem einzigen Projekt verdient, könnte man wie früher viel mehr individuelle Lösungen beisteuern.

              Grundsätzlich sollte man nach der technisch sinnvollsten Lösung streben.

              Das ist zu Zeiten von CSS Grid eindeutig und ohne Diskussion für das Layout schnell beantwortet.

              Aber wer macht das denn (und nutzt die dadurch entstehenden Vorteile), wenn bootstrap in voller Pracht (statt für den tatsächlichen Bedarf zusammnegestutzt) eingesetzt wird?

              Dabei hat man dadurch keinerlei Geschwindigkeitsvorteil (vielleicht im Bereich von wenigen Minuten, länger braucht es meist nicht mit Css Grid die seitenaufteilung umzusetzen. Änderungen daran dürften sogar schneller gemacht sein, als mit bootstrap. Vor allem aber: sowohl mit bootstrap, als auch mit css Grid dauert die Umsetzung eines Layout-Konzeptes nur einen Bruchteil der, was an Zeit für die Erstellung des Konzepts selber drauf geht. Man tut immer so, als könnte man beim coden viel Zeit sparen, dabei liegt der Großteil der Arbeit doch beim Konzept. Daher wird ja auch von manch einer Agentur empfohlen, bei der agilen Entwicklung sollen Designer und cssler an einem Bildschirm sitzen. Der Designer sagt, was er will und der cssler schreibt es schnell hin. Habe ich schon öfters gemacht und den größten Teil der Zeit sitze ich nur rum und warte auf die nächste Anweisung vom Designer. Oder mache Vorschläge. Vier Augen sehen mehr als einer. Aber das sind alles so Dinge um Qualität zu verbessern. Wenn man einfach nur den Kunden ruckizucki um seine Knete bringen will, sind die hinderlich)

              Bootstrap macht oft aus Gewohnheit und weil man keinen hat, der es anders kann!

              Anderes Beispiel: fertige Komponenten. Da bin ich sofort bei dir. Aber warum die von bootstrap? Es gibt doch viele andere, neuere, bessere!

              Es gibt nur einen Grund dafür: haben wir schon immer so gemacht.

              Das erinnert mich nicht an moderne webagebturen und Hippe Startups, sondern an Aktenstaub und Behördenmodder.

              Den Verzicht auf Frameworks als mittelalterliche Ansichten zu diskreditieren, statt modernere Möglichkeiten zu nutzen, ist schon ziemlich seltsam in meinen Augen.

              Am wichtigsten aber: es muss ja gar nicht eine entweder-oder-Entscheidung sein.

              Man kann ja allmählich aus der für Layouts veralteten Bootstrap-Technik aussteigen und di liebhewonnenen Komponenten noch verwenden, bis man besseren Ersatz gefunden hat (den gibt es nämlich meistens).

              Und zu guter letzt:ich plädiere ich nicht gegen jede Art von Baukästen. Ich rate nur dazu einen eigenen Werkzeug-Kasten zusammenzustellen.

              Dafür würde ich mich bei Grid by example, inclusive components, tink.com maddesign.de, vielen codepens, css-Tricks und natürlich hier im Forum usw bedienen und inspirieren lassen und würde die auch gleich ins vom eigenen Haus präferierten CMS integrieren, bzw. zu den selbst programmierten Modulen packen.

              Man kann ja auch einmal selber eine Komponente entwickeln und die immer wieder verwenden.

              So ein Werkzeug-Kasten ist dann auf die eigenen Mitarbeiter und das eigene Kunden-Spektrum optimiert, wird verstanden und hoffentlich gelegentlich ausgemistet und an geänderte Erfordernisse angepasst, statt immer wieder auf so universelle und daher unspezifische Frameworks zurückzugreifen. Womöglich auf einen ganzen Strauß davon.

              Was für mich ein absolutes Nö-go ist: mit jemandem zusammen arbeiten, der jquery nutzt, weil er JavaScript nicht kann, der bootstrap nutzt, weil er es sonst nicht hinkriegt.

              Wenn man den ganzen Kram nimmt, sollte man den zusätzlich zu den zugrundeliegenden Techniken beherrschen. Sonst ist man sein Geld nicht wert.

              My 2 Cent…

              Marc

              1. Hallo,

                und hier meine 2ct:

                Ich habe oft das Gefühl, das für Softwareentwickler der Weg (möglichst kurz und einfach) wichtiger ist, als das Ziel.

                Gruß
                Jürgen

                1. Hej JürgenB,

                  und hier meine 2ct:

                  Ich habe oft das Gefühl, das für Softwareentwickler der Weg (möglichst kurz und einfach) wichtiger ist, als das Ziel.

                  Sehe ich genauso. Einerseits finde ich ein guter Programmierer muss „faul“ sein, damit er wiederverwendbare Komponenten und Module mit Sinn und Verstand erstellt.

                  Aber inzwischen scheinen die immer weniger selber gemacht sondern einfach genommen zu werden und das auch wenn es nicht wirklich passt.

                  Oft werden in jedes Projekt von Anfang an schon Bootstrap, jquery, angular, Präprozessor, Postprozessor, builder und haste nicht gesehen reingeschüttet und dann wird damit umgesetzt mit der Uhr im Nacken.

                  Dass erst mal die Kunden-Anforderungen gelesen und verstanden werden und darauf hin ein Werkzeug-Kasten sinnvoll und möglichst kompakt zusammen gestellt wird, scheint immer weniger oft gemacht zu werden.

                  Die großen Dinger werden genommen, um schnell was rausschmeißen zu können und die dadurch bedingten Qualitätsprobleme werden billigend in Kauf genommen.

                  Ich sage nur knapp 3 Mbyte. Das ist die durchschnittliche Größe einer 2018 erstellten Seite.

                  Und das ist das Gegenteil von gut. Zumal wenn man bedenkt, dass der Informationsgehalt kleiner geworden ist. Immer öfter muss man wenigsten zwei Seiten laden (und dafür erst auf den Knopf „diesen Artikel auf einer Seite lesen“ klicken), um einen Text lesen zu können. Sofern man jung genug ist, um mit den vorhandenen Barrieren umgehen zu können.

                  Wahnsinn!

                  Und das nicht wegen Bootstrap, sondern trotz Bootstrap. Denn wer and eigentlich zugängliche Bootstrap „verbessert“ ohne Bootstrap und CSS und Barrierefreiheit (also Frontend) zu können, der macht es schlicht kaputt.

                  Und wenn ich mit Programmierern rede und sage ich brauche das folgende HTML, kommt oft die Antwort.

                  „Das kommt aber so nicht aus $framework - das wird aber viel Arbeit“

                  Ich fürchte nicht, weil das Framework das nicht ausgeben kann, sondern weil viele Programmierer nicht wissen, wie man die Ausgabe beim verwendeten Framework anpasst.

                  Ich habe nämlich dann mitunter von anderen Programmierern die Antwort bekommen: „Klar, kein Problem!“

                  Absurd wenn beide Programmierer in derselben Firma arbeiten. Die sollten sich mal in pair Programming üben!

                  Wenn ich so weiter mache, komme ich heute noch auf einen Euro.

                  Vielleicht mache ich da mal einen Blog-Artikel draus…

                  Marc

                2. hallo

                  und hier meine 2ct:

                  Ich habe oft das Gefühl, das für Softwareentwickler der Weg (möglichst kurz und einfach) wichtiger ist, als das Ziel.

                  Das Ziel wäre ja der Softwareverkauf, mit anderen Worten, andere in Softwareabhängigkeiten zu verstricken.

              2. Hej marctrix,

                Dafür würde ich mich bei Grid by example, inclusive components, tink.com maddesign.de, vielen codepens, css-Tricks und natürlich hier im Forum usw bedienen und inspirieren lassen und würde die auch gleich ins vom eigenen Haus präferierten CMS integrieren, bzw. zu den selbst programmierten Modulen packen.

                Das ist natürlich grober Unfug. Der Konjunktiv muss weg. Das würde ich nicht tun, sondern das mache ich so. Es ist keine unerprobte Überlegung sondern eine Beschreibung meiner tatsächlichen Arbeitsweise die sich für mich in 21 Jahren als der beste Kompromiss zwischen alles selber machen und fertige Tools bedienen rausgestellt hat.

                Ich kann so jederzeit einzelne Komponenten austauschen, nutze nur das, was in einem speziellen Projekt wirklich benötigt wird, bin viel schneller, als würde ich jedesmal alles selber entwickeln, kann aber jederzeit etwas selber erstellen (was oft schneller ist, als etwas vernünftiges zu finden). Und wenn ich etwas finde, packe ich es in einen extra Ordner für Komponenten (der liegt neben meinen Projekten und heißt _general - da ist alles drin, was sich so angesammelt hat).

                Und noch etwas habe ich gelernt: Dogmen bedeuten Stillstand.

                Tool XYZ ist das beste! bedeutet nur: ich höre auf nach Alternativen zu suchen. Dabei kann es morgen schon eine geben, die ich heute noch nicht kenne.

                Das ist Stillstand und das ist tödlich in einer so schnell sich entwickelnden Branche. Und weil unsere Arbeit so komplex geworden ist, wird es höchste Zeit, sich von der Idee eines Full-Stack-Entwicklers zu verabschieden und sich endlich für eine Spezialisierung einzusetzen mit beherrschbarem und erlernbarem Aufgaben-Spektrum.

                Unter anderem sollte man vielleicht beachten, dass uns nicht nur die Fachkräfte, sondern vor allem die jungen Fachkräfte ausgehen aufgrund demographischer Entwicklungen. Ich sehe immer mehr Entwickler jenseits der vierzig die mit Dutzenden von Techniken umgehen sollen und gar nicht do Chance haben, neben dem Projekt-Druck ihr Wissen noch auf aktuellem Stand zu halten.

                Das ist absurd in einem Umfeld, in dem ein ganzer Strauß an Browsern und Geräten im Monatsrhythmus aktualisiert wird.

                Gerade auf der letzten Projekt-Planungs-Besprechung an der ich teilgenommen habe wurde ein Witz gemacht, der das derzeitige Dilemma perfekt auf den Punkt bringt.

                A: Welches framework werden wir verwenden? B: Das sollten wir später festlegen. Niemand kann sagen was zu Projektbeginn (in zwei Wochen) aktuell sein wird.

                Das Dilemma ist nicht, dass es immer wieder neue Software, Frameworks usw gibt wir alle wollen Fortschritt.

                Das Dilemma ist, dass Frameworks den Fortschritt aufhalten!

                Sie sind bei Erscheinung bestenfalls ein Abbild des aktuellen Standes der Technik. Der ist aber in zwei Wochen schon veraltet!

                Marc

              3. Hallo marctrix,

                danke für deine ausführliche Antwort. Was ich nicht ganz verstehe ist, irgendwann hast du (ich hoffe ich verwechsel dich jetzt nicht mit einem anderen) mal gesagt du setzt auch gerne auf fertige WordPress Templates. Ich meine wenn du so gegen Bootstrap bist, wie kommt es dann, dass du feritge Templates nutzt? Ist es dann nicht besser wie du schon geschrieben hast etwas selbst zu entwickeln? Die WordPress Funktionen einzufügen ist kein Hexenwerk, dann hat man etwas ganz individuelles.

                Meine zweite Frage ist, was hälst du von Page Builder wie z.B. Elementor? Diese produzieren auch Quelltext den du nicht vollständig in der Hand hast. Ich meine aber solche Page Builder werden immer besser und die Ergebnisse sehen einfach großartig aus.

                Hier mal ein paar Beispiele:

                https://vhdesign.be/
                http://arky.ml/
                https://www.smartchameleon.top/
                https://korytko.design/
                https://selltogoodfaith.com/

                Dr.Web empfiehlt ihn sogar:
                https://www.drweb.de/elementor-dieser-wordpress-page-builder-ist-neues-design-tool/

                Ich sage es mal so, ich habe Elementor Pro 2 gekauft. Ich werde damit Kundenseiten erstellen, bei denen das Budget nicht zum Anspruch passt. Elementor wird auf diese Weise zu meinem internen Homepage-Baukasten. Die Lizenz erlaubt ausdrücklich die Erstellung von Websites für Dritte, damit bin ich auf der sicheren Seite. Die Alternative bestünde darin, einen dedizierten Website-Builder zu verwenden. Dann müsste ich jedoch verschiedene Skillsets pflegen. So verwende ich einfach WordPress, das ich ohnehin kenne und schätze, und setze ein visuelles Tool zur Beschleunigung des Workflows oben drauf.

                Bis bald!
                Meowsalot (Bernd)

                1. Hej Meowsalot,

                  danke für deine ausführliche Antwort. Was ich nicht ganz verstehe ist, irgendwann hast du (ich hoffe ich verwechsel dich jetzt nicht mit einem anderen) mal gesagt du setzt auch gerne auf fertige WordPress Templates.

                  Da vertust du dich nicht. Das sage ich besonders gern und wiederholt in Bootstrap-Diskussionen. 😉

                  Ich meine wenn du so gegen Bootstrap bist, wie kommt es dann, dass du feritge Templates nutzt? Ist es dann nicht besser wie du schon geschrieben hast etwas selbst zu entwickeln? Die WordPress Funktionen einzufügen ist kein Hexenwerk, dann hat man etwas ganz individuelles.

                  Ich denke, den scheinbaren Widerspruch kann ich leicht aufklären.

                  Für mich sind Wordpress und Bootstrap Werkzeuge für ganz unterschiedliche Dinge.

                  Bootstrap wird eingesetzt, wenn das Layout selber gemacht wird. Dafür brauche ich es nicht und ich denke, das liegt daran, dass ich ziemlich gut bin in dem was ich tue. Nicht weil ich schlauer oder nerdiger oder sonst auf irgendeine Weise superer bin, sondern weil ich mich auf HTML, CSS und Barrierefreiheit spezialisiert habe.

                  Ich finde ich habe ziemlich viel damit zu tun allein für diese drei Techniken auf dem aktuellen Stand zu bleiben und Überblick über fertige Komponenten zu behalten, die für eigene Projekte interessant sein könnten. Wenn das einer außerdem noch für JavaScript drauf hat, habe ich sehr großen Respekt davor. Aber das ist schon extrem selten.

                  Darüber hinaus noch ein oder mehrere Programmiersprachen zu können und sich in deren Ökosystem ähnlich gut auszukennen, wie ich in meinem Bereich (wohlgemerkt zusätzlich zu meinem Bereich) halte ich für übermenschlich und damit ausgeschlossen. Dafür schreiten die Entwicklungen viel zu schnell voran und man muss ja auch noch viel anderen Kram präsent haben: Ticket-System oder andere Teamtools, Versionierungssystem(e), sein OS, Editoren Office-Programme, Kommunikationssoftware usw. Dazu Coding-Guidelines, betriebsinterne Vorschriften. Irgendwie glaube ich nicht, dass jemand das alles im Kopf haben kann.

                  Ich bin mir sicher, niemand auf der ganzen Welt kann das alles auf einem Level, wie ich mein Spezialgebiet beherrsche.

                  Und ich mag keine Software (Webseiten eingeschlossen), die von überforderten Entwickler erstellt werden. Die haben Sicherheitslücken, sind schlecht bedienbar, nicht zugänglich, langsam, werden schlecht gefunden und / oder haben andere Probleme.

                  Das muss aber nicht so sein. Wenn man statt 10 Fullstack-Entwickler einen oder zwei wie mich, zwei, drei Leute die Vanille-JS beherrschen, zwei oder drei CMS-Experten, zwei oder drei Shop-Experten und zwei oder drei PHPler einstellt, hat man seinen kompletten Stack abgedeckt.

                  Und so jemand wie ich braucht mit Bootstrap eben nicht (spürbar) weniger Zeit als mit. Warum also dieses System einsetzen, dass bereits jetzt kurz nach Veröffentlichung von Version vier dank flexbox statt Grid schon wieder veraltet ist. Warum die Komponenten für Akkordeons, Slider, Menü usw einsetzen, wenn es für vieles davon bereits neuere und bessere Komponenten gibt?

                  Letztendlich lässt sich meine Kritik an Bootstrap also so zusammenfassen: man kann alles, was man mit Bootstrap machen kann besser hinbekommen und moderner, wenn sich nur einer drum kümmert, wie das geht. Wenn man also mit der quality-first-Einstellung an ein Projekt geht, müsste Bootstrap eigentlich außen vor bleiben.

                  Nun gibt es aber auch Dinge, die schnell fertig werden müssen. Wordpress oder ein anderes CMS sind genau dafür da, dass man ohne Team eine Website aufsetzen kann. Wenn schon etwas aus der Box (wie Bootstrap), warum dann nicht gleich komplett fertig designed (klar passt man da Farben, Logo und anderes an, aber kein Vergleich zu einer Eigenentwicklung)?

                  Das heißt auch wenn man von der Prämisse ausgeht, etwas soll so schnell wie möglich fertig werden, dann sehe ich keine Berechtigung für Bootstrap.

                  Jetzt kann man natürlich noch fragen, warum Wordpress. Die Frage muss jeder (wie die nach dem besten Editor) für sich selber beantworten. 😉

                  Meine zweite Frage ist, was hälst du von Page Builder wie z.B. Elementor?

                  So was habe ich selber erst für eine Seite verwendet (www.faunt.de) — oft bringen Themes auch schon was mit (Avada z.B.) — ich mache das ja nur nebenberuflich. Hauptberuflich arbeite ich für die BLE (www.ble.de.

                  Und da bin ich eben der HTML-CSS-Accessibility-Fuzzy, der aus einem vorgegeben Design zugängliche, responsive, suchmaschinenfreundliche HTML-CSS-Templates für CMSe und Individual-Programmierung erstellt.

                  Da ich als freiberuflicher Berater und Coach viel in Agenturen komme, sehe ich auch andere Arbeitsweisen. Die sind häufig geprägt von Stress und Überforderung, von oberflächlicher Verwendung halb bekannter Tools.

                  Die Rechner der Entwickler sind voll mit Server-Zeug (irgendwelche Container, die sie auch nicht beherrschen, sondern die ihnen von irgendjemand fertig gemacht wurden und wenn was hakt, kann man nur hoffen, dass derjenige nicht im Urlaub, im Krankenbett oder im Feierabend ist, der das eingerichtet hat…)

                  Das ist ja inzwischen eine Kultur geworden, dutzende von Tools allen Mitarbeitern aufs Auge zu drücken und dieses sich dann durchwurschteln zu lassen.

                  Finde ich ganz schlimm. Vor allem sieht man ja als Nutzer des Web, dass "das Web" nicht besser wird. Weder besser bedienbar, noch schneller, noch semantischer, noch sonst irgendetwas, was den Nutzern zum Vorteil gereicht. All dies Tools dienen nur dazu einen Betrieb aufrecht zu erhalten, wo bald keiner mehr weiß, was er tut.

                  Es wird daher meiner Meinung nach höchste Zeit für mehr Spezialisierung, endlich die Umsetzung bereits seit langem bekannter Arbeits-Methoden wie pair programming, die Einhaltung von Prinzipien wie dem, dass sich der Chef, der eh keine Ahnung hat, die denen der Spezialisten nahe kommt, sich aus dem Kram raushält, den die Entwickler machen usw.

                  Marc

                  PS: Die Seiten fand ich sehr hübsch! - In den Quellcode schaue ich mal absichtlich nicht. Das einzige was ich nicht mag sind die Kreise mit den Zahlen drin. Die sind so allgegenwärtig, dass sich der coole Effekt IMHO abgenutzt hat. Da sind die Zeiger im Armaturenbrett von meinem Auto spannender 😉

                  1. Hej Meowsalot,

                    Nachtrag: bei einer fertigen Software wie einem CMS sind deren Entwickler dafür verantwortlich das qualitativ beste rauszuholen.

                    Eigentlich hätte die Software meiner Meinung nach so entwickelt werden sollen, wie im letzten Post geschrieben.

                    Gerade wenn etwas so erfolgreich ist WP und ein entsprechendes Budget vorhanden sein sollte!

                    Dass das ein Wunsch ist, der an der Realität vorbei geht, ist mir schmerzlich bewusst…

                    Marc

                  2. Hallo marctrix,

                    Das muss aber nicht so sein. Wenn man statt 10 Fullstack-Entwickler einen oder zwei wie mich, zwei, drei Leute die Vanille-JS beherrschen, zwei oder drei CMS-Experten, zwei oder drei Shop-Experten und zwei oder drei PHPler einstellt, hat man seinen kompletten Stack abgedeckt.

                    Das ist ein schönes Ideal. Es führt aber dazu, dass Du für jedes Projekt ein Team brauchst. HTML/CSS, JS, Serverprogramming (sei es PHP, Perl, JSP, ASP.NET oder sonst etwas), vielleicht auch noch SQL Experten und einen Experten im Aufsetzen und Betrieb eines Webservers. Nicht zu vergessen die Backend-Systeme, da gibt's auch noch COBOL…

                    Im Umkehrschluss heißt das: ein kleines Thema kannst Du überhaupt nicht mehr anfangen. Weil dafür keiner das Team zu bezahlen bereit ist.

                    Das ist ja inzwischen eine Kultur geworden, dutzende von Tools allen Mitarbeitern aufs Auge zu drücken und dieses sich dann durchwurschteln zu lassen.

                    Oh ja :(. Wozu systematisch die Leute ausbilden. Steht doch alles im Internet dokumentiert, lest es euch mal eben durch. Immerhin habe ich den idealen Chef. Er hat zwar durchaus technische Ahnung, aber kaum noch Praxiserfahrung und lässt mich autark machen.

                    Jedenfalls sind meine Frontend-Skills in den letzten Jahren durch die Teilnahme hier im Forum signifikant angestiegen.

                    Rolf

                    --
                    sumpsi - posui - clusi
                    1. Hej Rolf,

                      Das muss aber nicht so sein. Wenn man statt 10 Fullstack-Entwickler einen oder zwei wie mich, zwei, drei Leute die Vanille-JS beherrschen, zwei oder drei CMS-Experten, zwei oder drei Shop-Experten und zwei oder drei PHPler einstellt, hat man seinen kompletten Stack abgedeckt.

                      Das ist ein schönes Ideal. Es führt aber dazu, dass Du für jedes Projekt ein Team brauchst. HTML/CSS, JS, Serverprogramming (sei es PHP, Perl, JSP, ASP.NET oder sonst etwas), vielleicht auch noch SQL Experten und einen Experten im Aufsetzen und Betrieb eines Webservers. Nicht zu vergessen die Backend-Systeme, da gibt's auch noch COBOL…

                      Im Umkehrschluss heißt das: ein kleines Thema kannst Du überhaupt nicht mehr anfangen. Weil dafür keiner das Team zu bezahlen bereit ist.

                      Ein kleines Thema (Theme?) — gibt es das denn? Wie soll das aussehen? Ohne Design? Unbedienbar?

                      Ja, wenn es gut werden soll braucht man auch für "was kleines" ein Team. — Schon allein damit man das Team später nicht immer komplett braucht (ein Button zusätzlich in demselben Layout wie vorhandene Button kann dann der Rpogrammierer selber hinzufügen).

                      Es mag schon sein, dass mein Vorschlag Grenzen hat, aber wir arbeiten hier so.

                      Andere Vorgehensweise haben auch ihre Grenzen, führen aber meist zusätzlich zu schlechterer Qualität.

                      Dass das erst ab einer bestimmten Firmengröße möglich ist, versteht sich von selbst.

                      Für alles andere sollte man Software verwenden, die von einem Team erstellt wurde. Wenn die nciht umsonst sein muss, sondern etwas kosten darf, hat man zugesichrte Funktionen und Sicherheits-Level usw - wenn dann was schief geht, hat man jemanden, der nachbessern oder für einen Schaden aufkommen muss.

                      So etwas abzuwehren geht nicht, wenn man Mitarbeiter überfordert.

                      Das ist ja inzwischen eine Kultur geworden, dutzende von Tools allen Mitarbeitern aufs Auge zu drücken und dieses sich dann durchwurschteln zu lassen.

                      Oh ja :(. Wozu systematisch die Leute ausbilden. Steht doch alles im Internet dokumentiert, lest es euch mal eben durch. Immerhin habe ich den idealen Chef. Er hat zwar durchaus technische Ahnung, aber kaum noch Praxiserfahrung und lässt mich autark machen.

                      Jedenfalls sind meine Frontend-Skills in den letzten Jahren durch die Teilnahme hier im Forum signifikant angestiegen.

                      😉

                      Daran sieht man ja, dass man in verwandten Disziplinen ein Grundwissen haben kann. Wenn dann der Frontender aus dem Urlaub zurück ist, kann er auch Dinge, die in seiner Abwesenheit nicht liegen bleiben konnten, sauber passend zu seinem Konzept überarbeiten. — Falls überhaupt nötig. Aber die Überprüfung, ob das Zugelieferte zum Konzept passt ist auf jeden Fall nötig.

                      Verantwortlichkeiten führen dazu, dass man gezwungen ist, seinen Krempel sauber zu halten — auch ohne Hirarchien.

                      Auch wenn Backender und Frontender gleichberechtigt sind, gibt es doch immer Ansprechpartner für Probleme. Ganz ohne Chefs.

                      Marc

    2. Mahlzeit,

      Wenn die Oberfläche wirklich gut werden soll, ist es am besten, die von HTML-Struktur von Hand zu erstellen und auch das CSS selber zu schreiben.

      Totaler Unfug. Sagst du dem Schreiner auch "Wenn es gut aussehen soll, nimm die Handsäge, mit der CNC-Fräse wird es scheisse"?

      Wenn du das aber nur so nebenher und ohne viel Aufwand machen möchtest, wird das nicht gut. Dann solltest du vielleicht lieber Bootstrap 4 (nicht älter!) einsetzen (habe ich das jetzt wirklich gesagt?).

      Kann es sein, dass du das nur als rudimentäres Hobby betreibst und nicht wirklich viel Ahnung von der Materie hast?

      Ich kenn deine Hintergründe nicht, aber ich kenne auch niemanden, der damit sein Geld verdient und wirklich erfolgreich ist, der so ne Mittelalter-Einstellung hat und dabei Fakten ignoriert.

      --
      42
      1. Hallo m.,

        darf ich mal Fragen ob du Bootstrap für Kundenprojekte einsetzt? Ich halte von Bootstrap sehr viel wenn man sich in der Gestaltung Gedanken macht und nicht eine 1zu1 Vorlage nimmt und nur die Farben anpasst ;)

        Bis bald!
        Meowsalot (Bernd)

        1. Mahlzeit,

          darf ich mal Fragen ob du Bootstrap für Kundenprojekte einsetzt? Ich halte von Bootstrap sehr viel wenn man sich in der Gestaltung Gedanken macht und nicht eine 1zu1 Vorlage nimmt und nur die Farben anpasst ;)

          Ja, setze ich bisweilen auch ein. Gibt dafür ja immer Gründe dafür und dagegen, die man abwägen muss. Generell benutze ich lieber UI-Kit, weil der Overhead geringer ist und der HTML-Code etwas sauberer. Der grösste Nachteil von Bootstrap ist IMO die Div-Suppe, die entsteht.

          --
          42
          1. Hej m.,

            Der grösste Nachteil von Bootstrap ist IMO die Div-Suppe, die entsteht.

            Die div-Suppe brockst du dir ein. Bootstrap hat damit nichts zu tun.

            Marc

      2. Hej m.,

        Wenn die Oberfläche wirklich gut werden soll, ist es am besten, die von HTML-Struktur von Hand zu erstellen und auch das CSS selber zu schreiben.

        Totaler Unfug. Sagst du dem Schreiner auch "Wenn es gut aussehen soll, nimm die Handsäge, mit der CNC-Fräse wird es scheisse"?

        Ne, aber ich sage ihm, er soll keine Bauklötze zusammenleimen.

        Wenn du das aber nur so nebenher und ohne viel Aufwand machen möchtest, wird das nicht gut. Dann solltest du vielleicht lieber Bootstrap 4 (nicht älter!) einsetzen (habe ich das jetzt wirklich gesagt?).

        Kann es sein, dass du das nur als rudimentäres Hobby betreibst und nicht wirklich viel Ahnung von der Materie hast?

        Wieder falsch geraten.

        Ich kenn deine Hintergründe nicht, aber ich kenne auch niemanden, der damit sein Geld verdient

        Jetzt kennst du zwei.

        und wirklich erfolgreich ist,

        Inwiefern? Geld zu machen? Oder gute Webseiten zu machen?

        Nicht dass man mit bootstrap das nicht könnte (falls jemand glaubt, es gibt nur die Farben schwarz und weiß)…

        Ich mach es halt ohne und habe es nicht mal nötig Leute zu beleidigen, die es nutzen. Habe es sogar eben empfohlen.

        der so ne Mittelalter-Einstellung hat und dabei Fakten ignoriert.

        Autsch - nix mehr drin in der Argumente-Kiste?

        Marc