problemkenner: Webprogrammierung - was würdet ihr wählen?

0 69

Webprogrammierung - was würdet ihr wählen?

problemkenner
  • programmiertechnik
  1. 0
    Thomas J.S.
    1. 0
      Thomas J.S.
  2. 0
    LX
    • meinung
    1. 0
      suit
  3. 2
    Klawischnigg
    1. 0
      Tom
      1. 2
        suit
        1. 0
          Tom
      2. 0
        Malcolm Beck´s
    2. 0
      Peter Pan
      1. 0
        Klawischnigg
        1. 1
          molily
          1. 0
            Klawischnigg
            1. 0
              problemkenner
              1. 0
                Tom
              2. 0
                Vinzenz Mai
            2. 0
              molily
              1. 0
                Thomas J.S.
        2. 0
          Der Martin
          1. 0
            Tom
            1. 0
              Der Martin
              1. 0
                Tom
          2. 0
            molily
            1. 0
              Der Martin
              1. 0
                Vinzenz Mai
                1. 0
                  Klawischnigg
                  1. 0
                    molily
                2. 2
                  molily
                  1. 0
                    Der Martin
                    1. 0
                      molily
                      1. 0
                        Der Martin
                      2. 1
                        Tom
                        1. 0
                          Der Martin
                  2. 0
                    Vinzenz Mai
                    1. 0
                      Tom
                  3. 2
                    Thomas J.S.
                    1. 0
                      Vinzenz Mai
                      1. 0
                        Tom
                      2. 0
                        suit
                    2. 0
                      Der Martin
                      1. 0
                        Thomas J.S.
                      2. 0
                        Gunnar Bittersmann
                        1. 0
                          Der Martin
                          1. 0
                            Gunnar Bittersmann
                            1. 0
                              Vinzenz Mai
                  4. 0
                    Tom
                3. 0
                  Der Martin
                  1. 0
                    pryos.org
              2. 0
                molily
              3. 0
                Tom
            2. 0
              Tom
              1. 0
                molily
                1. 0
                  Tom
    3. 0
      molily
      1. 0
        Klawischnigg
        1. 0
          problemkenner
          1. 0
            dedlfix
            1. 0
              Sven Rautenberg
              1. 0
                suit
                1. 0
                  Shadowcrow
                  1. 0
                    Tom
          2. 1
            Thomas J.S.
        2. 0
          molily
          1. 0
            Klawischnigg
  4. 0
    Cyx23
    1. 0
      molily
      1. 0
        Cyx23
        1. 0
          Klawischnigg

Hallo Leute,

konkrete Frage, was würdet ihr, wenn ihr wie an meiner Stelle ein kompletter Neueinsteiger seid und sich euer Wissen auf HTML und CSS beschränkt, lernen wollen, um im Bereich der Webprogrammierung mitwirken zu können?

Ich denke da an die Entwicklung von recht simplen Webseiten mit Frontend/Backend bis hin zur Entwicklung von richtigen Webapplikationen. Was ist eurer Meinung nach am Sinnvollsten?

1. Beherrschung eines oder mehrerer CMS-Systeme

2. Erlernen eines Webframeworks samt Programmiersprache

3. Aneignen einer Programmiersprache + späterer Programmierung ohne Framework

Zu all diesen 3 Punkten gilt, sagt mir bitte konkret, welche Sprache/Framework/CMS ihr lernen würdet und worin ihr die meisten Chancen seht.

Leute aus der direkten Praxis sind natürlich sehr willkommen. ;)

Danke und Grüße

  1. Hallo,

    was würdet ihr, [...] lernen wollen, um im Bereich der Webprogrammierung mitwirken zu können?
    Was ist eurer Meinung nach am Sinnvollsten?

    Lerne zu suchen!

    Denn es gibt auch hier bei uns alle paar Wochen die gleichen Fragen wie von dir. So schnell ändert sich aber auch das Web nicht.

    Grüße
    Thomas

    ich habe mich nichtmal besonders bemüht:
    http://suche.de.selfhtml.org/cgi-bin/such.pl?suchausdruck=%252Bprogrammiersprache+%252Blernen&lang=on&feld=alle&index_4=on&index_5=on&hits=alle

  2. Letztlich kommt das natürlich darauf an, worauf Du abzielst. Wenn Du für Dich selbst entwickeln willst, brauchst Du dazu weniger Fachwissen als wenn es Dein Wunsch ist, in die Starriege der Webentwickler aufgenommen zu werden.

    Mindestens noch JavaScript, etwas PHP und je nach Zielsetzung möglicherweise noch ein 08/15-CMS wie Joomla! oder Typo3 (um 2 Beispiele für häufig verwendete CMS zu nennen, es gibt derer noch viel mehr) wären empfehlenswert.

    Wenn Du noch weiter gehen willst, kannst Du auch anfangen, selbst CMSe zu schreiben. Das ist tatsächlich einfacher, als es auf den ersten Blick erscheint. Zusätzliche Programmiersprachen (perl, python, ruby) sind auch nicht verkehrt. Ein wenig Servertechnik ist auch immer wieder hilfreich, den Apache sollte man konfigurieren können.

    Gruß, LX

    --
    X-Self-Code: sh:( fo:) ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: Unusual
    X-Please-Search-Archive-First: Absolutely Yes
    1. Typo3 (um 2 Beispiele für häufig verwendete CMS zu nennen, es gibt derer noch viel mehr)

      TYPO3 ist ein Framework, welches mit Extensions ausgeliefert wird, um es als CMS zu verwenden :) deckt also Punkt 1 und 2 des OP ab.

  3. Hi there,

    konkrete Frage, was würdet ihr, wenn ihr wie an meiner Stelle ein kompletter Neueinsteiger seid und sich euer Wissen auf HTML und CSS beschränkt, lernen wollen, um im Bereich der Webprogrammierung mitwirken zu können?

    Auf der sicheren Seite bist Du, wenn Du irgendeine Sprache mit C-Syntax beherrscht und Dich dann davon ausgehend mit den entsprechenden sprachlichen und anwendungstechnischen Eigenheiten von Javascript und PHP auseinandersetzt.

    1. Beherrschung eines oder mehrerer CMS-Systeme

    Halte ich für komplett überflüssig und kontraproduktiv für Deine Einkommenssituation. Wenn Du mit der Absicht die Sache angehst, dann bist
    Du auf einem "Markt" unterwegs, wo Du, wenn Du nicht viel sehr gute "Freunde" hast, nur durch immer noch billigere Angebote zum Zug kommst.

    1. Aneignen einer Programmiersprache + späterer Programmierung ohne Framework

    Das wäre in etwas so, wie wenn man den Bau eines Hauses am Dachstuhl beginnt.

    Zu all diesen 3 Punkten gilt, sagt mir bitte konkret, welche Sprache/Framework/CMS ihr lernen würdet und worin ihr die meisten Chancen seht.

    Vergiss einfach den ganzen Frameworkblödsinn...

    1. Hello,

      1. Beherrschung eines oder mehrerer CMS-Systeme

      Halte ich für komplett überflüssig und kontraproduktiv für Deine Einkommenssituation. Wenn Du mit der Absicht die Sache angehst, dann bist
      Du auf einem "Markt" unterwegs, wo Du, wenn Du nicht viel sehr gute "Freunde" hast, nur durch immer noch billigere Angebote zum Zug kommst.

      Das sehe ich anders.
      Wer _einige_ CMS wirklich beherrscht, der kann z.Zt. auch gute Auftraggeber finden.

      Aber um z.B. nur Contenido, Joomla und Typo-3 zu verstehen, muss man schon ziemlich tief eindringen in PHP und JavaScript und die Konzepte, die da gewachsen sind, also nicht unbedingt optimal sind.

      Also erst mit HTML und HTTP auseinandersetzen, dann PHP lernen, dann den Versuch wagen, ein eigenes kleines CMS zu programmieren und auf diesem Wege lernen, worum es eigentlich geht.

      Dann kann man anschließend auch fertige CMS untersuchen. Gesamtzeit, um dies alles durchzuziehen, mindestens zwei Jahre, oder ist hier jemand anderer Meinung?

      Liebe Grüße aus Syburg bei Dortmund

      Tom vom Berg

      --
      Nur selber lernen macht schlau
      http://bergpost.annerschbarrich.de
      1. Dann kann man anschließend auch fertige CMS untersuchen. Gesamtzeit, um dies alles durchzuziehen, mindestens zwei Jahre, oder ist hier jemand anderer Meinung?

        Tendentiell mehr - nach 2 Jahren hat man wahrscheinlich erst bemerkt, wieviel Blödsinn man in den letzten 24 Monaten vollbracht hat und weiß jetzt endlich wie's _richtig_ zu machen ist. Dieser Vorgang wiederholt sich dann periodisch in etwa 6 bis 12 Monaten.

        1. Hello,

          Dann kann man anschließend auch fertige CMS untersuchen. Gesamtzeit, um dies alles durchzuziehen, mindestens zwei Jahre, oder ist hier jemand anderer Meinung?

          Tendentiell mehr - nach 2 Jahren hat man wahrscheinlich erst bemerkt, wieviel Blödsinn man in den letzten 24 Monaten vollbracht hat und weiß jetzt endlich wie's _richtig_ zu machen ist. Dieser Vorgang wiederholt sich dann periodisch in etwa 6 bis 12 Monaten.

          *mmh* auch wenn es hart ist, aber da stimme ich Dir zu.
          Vollkommen strukturiert kann man diesen ganzen Bereich vermutlich nicht mehr erlernen.
          Dazu müsste es ja jemanden geben, der alles verstanden hat und es sortieren könnte.

          Liebe Grüße aus Syburg bei Dortmund

          Tom vom Berg

          --
          Nur selber lernen macht schlau
          http://bergpost.annerschbarrich.de
      2. hi,

        Dann kann man anschließend auch fertige CMS untersuchen. Gesamtzeit, um dies alles durchzuziehen, mindestens zwei Jahre, oder ist hier jemand anderer Meinung?

        Ich beschäftige mich jetzt insgesamt an die 2 Jahre mit der Gesamten Thematik, angefangen bei Frames, über iframes zu SSI und mittlerweile ein Minimalistische CMS in PHP und MySQL, Typo3 verstehe ich trotzdem nicht ;)
        Das Prinzip ist mir klar, Inhalte einfügen und im Web publizieren, aber dass Ding zum laufen kriegen ist schon anstrengend genug.
        Joomla ist leicht installiert, aber dass, was dass ding da als „HTML“ ausspuckt, ist eine zumutung.

        Daher habe ich gleich mein eigenes CMS geschrieben.  --> „demo“ „demo“ (klicken und fummeln ausdrücklich erwünscht ;)
        Aber ich werde es wohl abreissen und nochmal neu schreiben, dann auch mit Userverwaltung; so lernt man es immer noch am besten -- aufbauen und abreissen.

        mfg

        --
        echo '<pre>'; var_dump($Malcolm_Beck`s); echo '</pre>';
        array(2) {
          ["SELFCODE"]=>
          string(74) "ie:( fl:) br:> va:? ls:? fo:) rl:| n4:# ss:{ de:? js:} ch:? sh:( mo:? zu:("
          ["Meaningful"]=>
          string(?) "Der Sinn des Lebens ist deinem Leben einen Sinn zu geben"
        }
    2. Hi!

      Vergiss einfach den ganzen Frameworkblödsinn...

      Warum sind denn Deiner Meinung nach Frameworks Blödsinn?

      off:PP

      --
      "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)
      1. Hi there,

        Warum sind denn Deiner Meinung nach Frameworks Blödsinn?

        * Weil sie den Anwender in eine bestimmte Denkrichtung zwingen
        * Weil es, um sie wirklich verstehen und bedienen zu können, genausoviel Zeit vonnöten ist, wie die benötigten Routinen selbst zu schreiben.
        * Weil sie sehr viel von den meisten Anwendern ungenutzte Funktionen enthalten und somit Ressourcen verschwenden
        * Weil es für den Anwender oft nicht transparent ist, welche Folgen welcher Programmschritt haben wird
        * Oft zu starre Muster (damit sind wir in etwa wieder beim Zwingen des Anwenders in eine bestimmte Denkrichtung)
        * als erste "Programmiersprache" nicht sinnvoll (ist kein genereller Einwand, im Hinblick auf das Originalposting erscheint es mir aber relevant)

        1. Hallo,

          ich will da jetzt nicht im Einzelnen darauf eingeben - an jedem deiner recht pauschalen Einwände ist irgendwie etwas dran und gleichzeitig auch nicht, und jeden deiner Einwände könnte man genauso positiv umwenden. Wer heutzutage Webanwendungen ohne irgendein Framework entwickelt, wird sich nicht nur darin verstricken, dieselbe Grundfunktionalität immer wieder von Null an neu zu programmieren, sondern wird auch ohne Vorkenntnisse immer wieder dieselben konzeptionellen Fehler machen, die im Laufe der Evolution der Frameworks überwunden wurden. Dass man bei der Entwicklung von Webanwendungen auf bewährte Frameworks setzt, hat verschiedene Gründe. Es ist vielmehr die Frage, aus welcher Blickrichtung man sie betrachtet. Aus der hier besagten - Einstieg in die serverseitige Webentwicklung - würde ich dem Fragesteller auf jeden Fall raten, sich mit dem Aufbau und den Konzepten der üblichen Frameworks auseinanderzusetzen. Dieser »ganze Frameworkblödsinn« enthält nämlich für jemanden, der Webentwicklung bisher nur aus der Perspektive von HTML und CSS gesehen hat und keinen Schimmer von Softwareentwicklung hat, sehr viel zum lernen. Da könnte man negativ sagen, sie »zwingen« den Anwender in eine bestimmte Denkrichtung, oder positiv, sie vorschlagen ihm erst einmal eine bestimmte Richtung vor - ohne sich überhaupt damit beschäftigt zu haben, weiß man weder, dass es sie gibt, noch, welche Schwächen und Beschränkungen sie hat.

          Mathias

          1. Hi there,

            [...] Wer heutzutage Webanwendungen ohne irgendein Framework entwickelt, wird sich nicht nur darin verstricken, dieselbe Grundfunktionalität immer wieder von Null an neu zu programmieren, sondern wird auch ohne Vorkenntnisse immer wieder dieselben konzeptionellen Fehler machen, die im Laufe der Evolution der Frameworks überwunden wurden.

            Das halte ich aber für eine grobe Verallgemeinerung. Abgesehen davon, daß jemand, der denn wirklich jede Grundfunktionalität von Null an neu programmiert (warum eigentlich?) sicherlich auch genug Vorkenntnisse zu erwerben imstande ist, um konzeptionelle Fehler zu vermeiden.

            Dieser »ganze Frameworkblödsinn« enthält nämlich für jemanden, der Webentwicklung bisher nur aus der Perspektive von HTML und CSS gesehen hat und keinen Schimmer von Softwareentwicklung hat, sehr viel zum lernen.

            Ja, aber was lernt er? Wie man das Framework verwendet. Ich denke nicht, daß er nachher einen Schimmer von Softwareentwicklung hat. Oder anders anders ausgedrückt: Wer nur das Sägewerk kennt, egal wie gut, weiß noch lange nicht, wie ein Wald aussieht.

            1. Die Grundsätze eurer Ansichten habe ich denke ich soweit überblickt. Die Mehrheit von euch würde mir also zum Erlernen einer Programmiersprache raten, als weniger auf das sofortige Erlernen von CMS-Systemen oder Webframeworks.

              Da stellt sich mir nun aber doch die eigentlich für mich entscheidende Frage: "Welches wählen?"

              Oft hört man, wie egal es doch sei, aber ich denke, ihr kennt nun meine Bedürfnisse und Anforderungen - ich möchte auch langfristig Spaß an der Entwicklung haben, die Sprache sollte mich grundsätzlich nicht eingrenzen und sie sollte sich gut für die Webprogrammierung eignen.

              Was ich so in diesem Zusammenhang sehr oft gelesen habe, sind die Sprachen PHP und Python.

              Grundsätzlich tendiere ich zu Python, aber das auch nur auf dem, was ich bisher schon im Bereich Webprogrammierung darüber gelesen habe.

              Wie steht ihr dazu?

              Und ich möchte nochmals betonen, es geht mir nicht um Konkurrenzfähigkeit meiner Fertigkeiten gegenüber Kunden, ich möchte lediglich meine eigenen Applikationen schreiben und suche hierfür das geeignetste Werkzeug.

              Grüße

              1. Hello,

                wenn Du dich nicht entscheiden kannst für eine sprache, dann schau Dir das .NET-Projekt oder das MONO-Projekt der OpenSource-Gemeinde an.

                Da kannst Du dich dann zwischendurch immer noch umentscheiden zwischen den Sprachen.
                Allerdings hast Du auch den ganzen MS-Framework-Quark am Arsch damit.

                Liebe Grüße aus Syburg bei Dortmund

                Tom vom Berg

                --
                Nur selber lernen macht schlau
                http://bergpost.annerschbarrich.de
              2. Hallo,

                Was ich so in diesem Zusammenhang sehr oft gelesen habe, sind die Sprachen PHP und Python.

                Grundsätzlich tendiere ich zu Python, aber das auch nur auf dem, was ich bisher schon im Bereich Webprogrammierung darüber gelesen habe.

                Python ist eine hervorragende Sprache, um Programmieren und Programmierkonzepte zu erlernen. Denke daran: wenn Du programmieren gelernt hast, fällt Dir das Einarbeiten in neue, Dir noch unbekannte Programmiersprachen, viel leichter, als wenn Du eine Programmiersprache erlernt hast.

                Klar, Python steht Dir nicht bei jedem Feld-, Wald- und Wiesenprovider zur Verfügung, ist aber andererseits auch kein Exot mehr - dagegen ist es schon fast schwierig, einen Provider zu finden, der PHP *nicht* im Angebot hat.

                Gerade die vorhandene Menge an Material zu PHP im Internet macht es schwierig, die wirklichen Perlen zu finden. Als Neueinsteiger solltest Du Dich mit PHP4- (oder noch schlimmer PHP3-Altlasten) gar nicht mehr beschäftigen :-)

                Wenn Du zwischen PHP und Python wählen willst, rate ich Dir zu Python.

                Freundliche Grüße

                Vinzenz

            2. Ja, aber was lernt er? Wie man das Framework verwendet.

              Nein, man lernt Design Patterns wie OOP, MVC, Objektrelationale Mapper, Eingabe-Validierung, Unit-Testing, Datenbank-Abstraktion, Templates, REST-APIs, Performance-Techniken wie Caching, Sicherheitstechniken wie CSRF-Schutz usw. kennen. - Ja, das kann man sich natürlich auch alles selbst beibringen und selbst umsetzen. Ja, das kann man sich natürlich auch alles selbst aus vorhandenen Tools zusammensetzen.

              Mathias

              1. Hallo,

                »» Ja, aber was lernt er? Wie man das Framework verwendet.

                Nein, man lernt Design Patterns wie OOP, MVC, Objektrelationale Mapper, Eingabe-Validierung, Unit-Testing, Datenbank-Abstraktion, Templates, REST-APIs, Performance-Techniken wie Caching, Sicherheitstechniken wie CSRF-Schutz usw. kennen. -

                Nein, lernt er nicht. definitiv nicht. Du idealisiert an dieser Stelle etwas, was in der Praxis in der Form so gut wie nie gibt.

                "frikelwerk" nennt sich das, was im allgemeinen so rauskommt. Beispiele zusammenkopiert, irgendwie (sehr starke Betonung auf "irgendwie") zum Laufen gebracht und gut ist's. Das ist das tägliche Praxis von Einsteiger, die eine Aufgabe (meist in einem dringenden Projekt) zu erledigen haben. Sie haben null Zeit Bücher über OOP, MVC oder Desingpatterns etc. zu lesen und zu verinnerlichen.

                Siehe noch mein anderes Posting.

                Grüße
                Thomas

        2. Hallo,

          »» Warum sind denn Deiner Meinung nach Frameworks Blödsinn?

          * Weil sie den Anwender in eine bestimmte Denkrichtung zwingen
          * Weil es, um sie wirklich verstehen und bedienen zu können, genausoviel Zeit vonnöten ist, wie die benötigten Routinen selbst zu schreiben.
          * Weil sie sehr viel von den meisten Anwendern ungenutzte Funktionen enthalten und somit Ressourcen verschwenden
          * Weil es für den Anwender oft nicht transparent ist, welche Folgen welcher Programmschritt haben wird

          du sprichst mir aus der Seele. Aus denselben Gründen vermeide ich auch bei Software-Projekten oft die Verwendung umfangreicher Frameworks und Bibliotheken. Zu oft schon habe ich festgestellt, dass ich den kleinen Teil davon, den ich für das jeweils aktuelle Projekt brauche, schon längst selbst geschrieben hätte, bis ich auch nur ansatzweise das meist schlecht dokumentierte Framework verstanden habe.
          Dazu kommt, dass solche Bibliotheken normalerweise auf größtmögliche Flexibilität und Vielseitigkeit ausgelegt sind - was aber bei kleinen bis mittleren Projekten oft bedeutet, dass sich der Aufwand, diese Bibliothek überhaupt funktionstüchtig zu integrieren, überproportional erhöht.
          Klar, man kann auch mit einem hochkomplexen Textverarbeitungssystem einen Einkaufszettel schreiben; einfacher und schneller geht's aber mit der Hand. Es ist eben immer ein Abwägen der Anforderungen und der Möglichkeiten.

          * als erste "Programmiersprache" nicht sinnvoll (ist kein genereller Einwand, im Hinblick auf das Originalposting erscheint es mir aber relevant)

          Ja, sehe ich auch so. Erstmal die Grundlagen "zu Fuß" kennenlernen, dann kann man sich auch mal damit befassen, wie man diese Dinge automatisieren könnte.

          Ciao,
           Martin

          --
          You say, it cannot be love if it isn't for ever.
          But let me tell you: Sometimes, a single scene can be more to remember than the whole play.
          1. Hello,

            du sprichst mir aus der Seele. Aus denselben Gründen vermeide ich auch bei Software-Projekten oft die Verwendung umfangreicher Frameworks und Bibliotheken. Zu oft schon habe ich festgestellt, dass ich den kleinen Teil davon, den ich für das jeweils aktuelle Projekt brauche, schon längst selbst geschrieben hätte, bis ich auch nur ansatzweise das meist schlecht dokumentierte Framework verstanden habe.

            Das geht auch vielen PHP-Programmierern, die 'nur' imperative Programmierung damit vornehmen wollen, noch so. Auch hinter der simplen Verwendung der Funktionen steckt schon ein "Framework". Leider habe ich das nirgends bisher wirklich dokumentiert gefunden, Schritt für Schritt.

            Auch hinter einem OS steckt ein "Framework". Auch dieses wird selten berücksichtigt, wenn man Programme entwickelt in einer Hochsprache, sondern viele Dinge werden in dieser Hochsprache neu erfunden...

            Die vollkommene Abkoppelung von Frameworks ist werder möglich noch sinnvoll. Den goldene Weg, wie man dies durch "Plattformunabhängigkeit" erreichen könnte, ist wohl auch noch nicht gefunden. Demnach müssten Betriebsssyteme vom Übergabepunkt aus rückwärts entwickelt werden.

            Liebe Grüße aus Syburg bei Dortmund

            Tom vom Berg

            --
            Nur selber lernen macht schlau
            http://bergpost.annerschbarrich.de
            1. Hallo Tom,

              »» Zu oft schon habe ich festgestellt, dass ich den kleinen Teil davon, den ich für das jeweils aktuelle Projekt brauche, schon längst selbst geschrieben hätte, bis ich auch nur ansatzweise das meist schlecht dokumentierte Framework verstanden habe.
              Das geht auch vielen PHP-Programmierern, die 'nur' imperative Programmierung damit vornehmen wollen, noch so. Auch hinter der simplen Verwendung der Funktionen steckt schon ein "Framework".

              das ist natürlich wahr (analog zur standardisierten C-Runtime). Aber der Standard-Funktionsumfang von PHP ist meiner Ansicht nach auch vorbildlich dokumentiert, klar verständlich und reichlich mit nützlichen Querverweisen gespickt. Da kann sich so manche Referenz ein Beispiel dran nehmen.

              Leider habe ich das nirgends bisher wirklich dokumentiert gefunden, Schritt für Schritt.

              Ähm, was jetzt?

              Auch hinter einem OS steckt ein "Framework". Auch dieses wird selten berücksichtigt, wenn man Programme entwickelt in einer Hochsprache, sondern viele Dinge werden in dieser Hochsprache neu erfunden...

              Ja und nein. Ich erlebe es eher umgekehrt. Bis jetzt habe ich, wenn man den Web-Bereich und ein paar µC-Anwendungen mal ausklammert, hauptsächlich mit und für Windows entwickelt. Und da habe ich es oft erlebt, dass irgendeine Bibliothek mit viel Aufwand versucht, Funktionen nachzubilden, die Windows mit seinem eigenen API schon zur Verfügung stellt, und sogar meistens noch viel einfacher. Begründet werden diese Verrenkungen dann in der Regel mit dem Schlagwort "Plattformunabhängigkeit".
              Genau das empfinde ich dann als Klotz am Bein, denn geschätzte 95% aller Anwendungen werden nun mal für eine bestimmte Hardware- und Betriebssystemumgebung geschrieben, da ist mir Plattformunabhängigkeit aber sowas von. In den wenigen Fällen, wo das von vornherein eine Anforderung ist, sieht's sicher anders aus.

              Ansonsten programmiere ich meine Projekte lieber minimalistisch und mit bestmöglicher Nutzung der vom Hostsystem (und nicht von Third-Parties) angebotenen Möglichkeiten.

              Schönen Abend noch,
               Martin

              --
              Der Alptraum jedes Computers:
              "Mir war, als hätte ich gerade eine 2 gesehen."
              1. Hello,

                Leider habe ich das nirgends bisher wirklich dokumentiert gefunden, Schritt für Schritt.

                Ähm, was jetzt?

                Das eigentliche Framework und die Zusammenhänge.
                In welcher Riehenfolge die "Zwiebelschalen" und ihre Konstanten und Parameter greifen

                Man kann es sich allerdings mühseilg aus den Einzeldokumentationen herausholen.

                Dazu gehören auch Fehlerverfolgung, Fehlermeldungen, Berechtigungen, usw.

                Liebe Grüße aus Syburg bei Dortmund

                Tom vom Berg

                --
                Nur selber lernen macht schlau
                http://bergpost.annerschbarrich.de
          2. Warum sind denn Deiner Meinung nach Frameworks Blödsinn?
            * Weil sie den Anwender in eine bestimmte Denkrichtung zwingen
            Dazu kommt, dass solche Bibliotheken normalerweise auf größtmögliche Flexibilität und Vielseitigkeit ausgelegt sind

            Wie mans macht, man macht es falsch. ;)

            Ja, sehe ich auch so. Erstmal die Grundlagen "zu Fuß" kennenlernen, dann kann man sich auch mal damit befassen, wie man diese Dinge automatisieren könnte.

            Das ist dummerweise schon beim ersten PHP-Script der Fall, das irgendwelche Daten aus einer Datenbank holt oder in sie schreibt, das Eingabedaten verarbeitet, das generierten HTML-Code ausgeben soll. Schon bin ich bei OOP, einer Datenbank-Abstraktion, bei einem ORM, bei Models samt Validierungs-Techniken, bei Template-Engines. Kann ich natürlich alles weglassen und Spaghetticode schreiben...

            Mathias

            1. Hallo,

              »» Dazu kommt, dass solche Bibliotheken normalerweise auf größtmögliche Flexibilität und Vielseitigkeit ausgelegt sind
              Wie mans macht, man macht es falsch. ;)

              das ist leider oft so im Leben ...

              Schon bin ich bei OOP, einer Datenbank-Abstraktion, bei einem ORM, bei Models samt Validierungs-Techniken, bei Template-Engines.

              Och nööö!

              Kann ich natürlich alles weglassen und Spaghetticode schreiben...

              Für jemanden, der mit C und Assembler sauber strukturiertes Programmieren gelernt hat, sind viele der heute so gelobten OO-Ansätze (C++, Java, Javascript, PHP) schon Spaghetticode, weil sie das Wesentliche durch "geschickte" Sprachkonstrukte verschleiern. Objektorientierung ist eine tolle Sache, solange sie im Kopf des Programmierers stattfindet und nicht im Compiler.

              Es sind einfach unterschiedliche Paradigmen. Ich gehöre noch zu der Generation von Entwicklern/Programmierern/Codern, die jedem Bit bei der Arbeit zusehen und das Zusammenspiel verstehen wollen.
              Ich halte außerdem nichts davon, fertige "Black Boxes" zu verwenden, deren Funktion oder deren Zusammenwirken man nicht hundertprozentig kennt und versteht.

              Sich self(!) einen gewissen Fundus an Standardroutinen zu erarbeiten, den man in all seinen Einzelheiten versteht und pflegt, ist IMO okay und wünschenwert. Diese Bausteine soll man dann bitte auch jederzeit wiederverwenden. Aber nicht irgendwelche Codepakete, deren Sinn und Funktion nur nebulös beschrieben ist. Dann muss man nämlich doch wieder den Quellcode analysieren, um herauszufinden, was dieser Code in bestimmten Sonderfällen wirklich tut - und dann ist eigentlich nichts gewonnen.

              So long,
               Martin

              --
              Der Stress von heute ist die gute alte Zeit von morgen.
              1. Hallo,

                Ich halte außerdem nichts davon, fertige "Black Boxes" zu verwenden, deren Funktion oder deren Zusammenwirken man nicht hundertprozentig kennt und versteht.

                Sich self(!) einen gewissen Fundus an Standardroutinen zu erarbeiten, den man in all seinen Einzelheiten versteht und pflegt, ist IMO okay und wünschenwert.

                ich finde dies überhaupt nicht wünschenswert. Ich will nicht die Arbeit nochmal machen, die schon viele andere vor mir gemacht haben. Eine gut dokumentierte Standardbibliothek, gut getestet und umfangreich, das ist wünschenswert.

                Nein, ich will nicht jedem Bit bei der Arbeit zusehen. Ich nutze gern Fertiges mit sauberen Schnittstellen. Das ist meiner Meinung nach okay und wünschenswert.

                Ja, ich habe das auf die harte Tour gelernt.

                Freundliche Grüße

                Vinzenz

                1. Hi there,

                  ich finde dies überhaupt nicht wünschenswert. Ich will nicht die Arbeit nochmal machen, die schon viele andere vor mir gemacht haben.

                  Das ist aber nicht der springende Punkt, ich denke das was Der Martin meint und auch meiner Ansicht nach geht nicht um eine Arbeit, die schon viele andere vor mir gemacht haben, sondern nur um eine _ähnliche_ Arbeit, und da auf die Unterschiede einzugehen, diese überhaupt erst zu finden und dann auf den eigenen Bedarf anzupassen erfordert Ressourcen, die imho den Bereich der Selbstentwicklung meist übersteigen. Ich rede hier nicht von einem neuen Betriebssystem, ich möcht auch keinen Browser schreiben, es geht aber genau um diese Frameworks, die eben für (durchschnittliche) Webprojekte verwendet werden.

                  Eine gut dokumentierte Standardbibliothek, gut getestet und umfangreich, das ist wünschenswert.

                  Ja, ein Framework ist aber keine Bibliothek. Eine Bibliothek ist imho eine Funktionensammlung, die mir aber keine Arbeitsweise, keine Entwicklungsrichtung und keinen Programmierstil aufdrängt.

                  Nein, ich will nicht jedem Bit bei der Arbeit zusehen.

                  Ich muss es nicht arbeiten sehen, aber ich bin immer wieder froh darüber, daß ich ihm sagen könnte, wie es arbeiten soll, wenn es einmal nicht will...;)

                  1. ein Framework ist aber keine Bibliothek.

                    Genau. Eine Bibliothek ist viel schlimmer! ;)

                    Eine Bibliothek ist imho eine Funktionensammlung,  die mir aber keine Arbeitsweise, keine Entwicklungsrichtung und keinen Programmierstil aufdrängt.

                    Das heißt ja nur, dass sie voraussetzen, dass eine gute Arbeitsweise, Richtung und ein guter Programmierstil schon existiert bzw. vom Anwender ergänzt wird. Wenn nicht, sind solche »Funktionensammlungen« ohne Struktur der Anfang allen Übels.

                    Schön und gut, wenn du das alles schon hast: Aber für jemanden, der von Null an lernt, schnelle Fortschritte machen will und brauchbare Software schreiben will, ist es m.M.n. wichtiger, nicht bloß eine Funktionssammlung kennenzulernen, sondern Arbeitsweisen, Entwicklungsrichtungen und Programmierstile.

                    Mathias

                2. Ja, ich habe das auf die harte Tour gelernt.

                  Ich frage mich, warum manche hier verlangen, dass man erst einmal selbst großartig auf die Nase fallen soll. Es gibt doch nichts besseres als ein Einstieg auf hohem Niveau. Dazu gehört natürlich, dass man weiß, was man da tut und warum. Fortschritt ist doch genau das, dass ich nicht das Feuer und das Rad neu entdecken muss, sondern dass mir einmal erarbeitetes Wissen direkt zur Verfügung steht. Insofern kann ich Leute nur dazu motivieren, mit Frameworks in die Webentwicklung einzusteigen. Dabei kommt natürlich nicht automatisch Tolles bei heraus, aber daraus, dass ich Low-level »PHP kann«, ergibt sich genauso wenig.

                  Mathias

                  1. Hi,

                    Ich frage mich, warum manche hier verlangen, dass man erst einmal selbst großartig auf die Nase fallen soll.

                    weil erfahrungsgemäß der Lernerfolg am nachhaltigsten ist, wenn's weh tut, so brutal das auch klingt.

                    Es gibt doch nichts besseres als ein Einstieg auf hohem Niveau. Dazu gehört natürlich, dass man weiß, was man da tut und warum. Fortschritt ist doch genau das, dass ich nicht das Feuer und das Rad neu entdecken muss, sondern dass mir einmal erarbeitetes Wissen direkt zur Verfügung steht.

                    Nein! Fortschritt heißt für mich, dass ich auch beim Feuer und dem Rad anfange, aber die Möglichkeit habe, den Film da, wo er mir nicht so spannend erscheint, schnell vorzuspulen.
                    Ich finde es aber wichtig für das Verständnis des Ganzen, dass man trotzdem ganz am Anfang mit den Grundlagen beginnt.

                    aber daraus, dass ich Low-level »PHP kann«, ergibt sich genauso wenig.

                    Nein. Lowlevel-PHP ist ja auch ein Paradoxon, ebenso wie Lowlevel-Javascript, weil beide Sprachen schon so hoch angesiedelt sind, dass sie dem ambitionierten Programmierer den spannenden Blick ins Innere verwehren.
                    Aber ein Verständnis für die Grundlagen ist IMO unersetzlich. Du siehst doch selbst, wie oft hier im Forum Javascript- oder PHP-Fragen gestellt werden, die mit ein wenig Grundlagenwissen (Zeichencodierungen, HTTP, Client-Server-Architekturen, Datenstrukturen) mühelos zu beantworten sind.

                    So long,
                     Martin

                    --
                    Um die Wahrheit zu erfahren, muss man den Menschen widersprechen.
                      (George Bernhard Shaw)
                    1. weil erfahrungsgemäß der Lernerfolg am nachhaltigsten ist, wenn's weh tut, so brutal das auch klingt.

                      Alleine durchs Falschmachen lernt man nichts. Im Gegenteil, es gibt tausende, die in ihrem Sud kochen und nichts dazulernen, weil sie nicht über den Tellerrand schauen und sich nicht fortbilden. Das geht durchaus und dass es weh tut, merken sie gar nicht, weil sie nichts anderes kennen und erahnen. Sie lernen dann höchstens aus dem Erlebnis: »Ich wusste gar nicht, dass das alles auch viel übersichtlicher, einfacher und besser geht. Hätte ich das mal vorher gewusst!«

                      Aber ein Verständnis für die Grundlagen ist IMO unersetzlich.

                      Ja, das steht wohl außer Frage. Aber was sind die Grundlagen und gehört dazu nicht die Organisation, die Abstraktion und die Verwendung gewisser Design Pattern?

                      (Zeichencodierungen, HTTP, Client-Server-Architekturen, Datenstrukturen)

                      Nun, das ist schon viel mehr als nur die spezifischen Grundlagen einer Programmiersprache.

                      Mathias

                      1. Hallo Mathias,

                        »» weil erfahrungsgemäß der Lernerfolg am nachhaltigsten ist, wenn's weh tut, so brutal das auch klingt.
                        Alleine durchs Falschmachen lernt man nichts.

                        naja, bedingt schon. Man merkt oft anhand der Konsequenzen, dass es so nicht richtig oder nicht gut ist. Aber du hast natürlich Recht, es braucht auch immer noch jemanden, der die eigene Lösung/Methode bewertet[1] und jemanden, der eine bessere zeigt[2]. Dabei können [1] und [2] durchaus dieselbe Person sein; ebenso könnte [1] aber auch der Lerndende selbst sein, wenn er bereit ist, auch sich selbst kritisch zu sehen, und [2] ein Fachbuch, ein Tutorial, oder ein Forum wie dieses hier.

                        »» Aber ein Verständnis für die Grundlagen ist IMO unersetzlich.
                        Ja, das steht wohl außer Frage. Aber was sind die Grundlagen und gehört dazu nicht die Organisation, die Abstraktion und die Verwendung gewisser Design Pattern?

                        Unbedingt, ja. Das sind formale Grundlagen; ich war in Gedanken mehr bei den technischen.

                        »» (Zeichencodierungen, HTTP, Client-Server-Architekturen, Datenstrukturen)
                        Nun, das ist schon viel mehr als nur die spezifischen Grundlagen einer Programmiersprache.

                        Nicht einer Programmiersprache, sondern des Umfelds, in dem man sich bewegt. Denn ich finde, es ist nicht sinnvoll "eine Programmiersprache" lernen zu wollen, sondern "das Programmieren". Dazu gehört, wie du selbst sagst, sicher ein Verständnis für Abstraktion, für Strukturen, Algorithmen und Zusammenhänge, aber ebenso auch Kenntnisse der wesentlichen Merkmale der Systemumgebung, innerhalb der man sich als Programmierer bewegt. Um im Web-Kontext sehe ich die Dinge, die ich da aufgezählt habe, durchaus als wichtige Grundlagen an, ohne deren Kenntnis man immer wieder auf Probleme stoßen wird, die eigentlich gar keine sind.

                        Und wenn man Grundkonzepte der Programmierung einmal verinnerlicht hat, kann man in relativ kurzer Zeit eine neue Programmiersprache lernen. In zwei Wochen kann man schon viel erreichen, erste "Gehversuche" eventuell sogar schon nach wenigen Stunden.

                        Ciao,
                         Martin

                        --
                        F: Was sagt die kleine Kerze zur großen Kerze?
                        A: Ich gehe heute nacht aus!
                      2. Hello,

                        Alleine durchs Falschmachen lernt man nichts. Im Gegenteil, es gibt tausende, die in ihrem Sud kochen und nichts dazulernen, weil sie nicht über den Tellerrand schauen und sich nicht fortbilden.

                        Dazu gehört aber auch, dass sich die "im Teller Lebenden" irgendwo informieren dürfen und dann auch aufgeschlossen sind dafür, was ihnen ihre Lernumgebung zu bieten hat. Aber auch die Lernumgebung sollte nicht ignorant sein gegenüber "merkwürdigen" Fragen, sondern ihr Wissen immer wieder überdenken. Jede neue "merkwürdige" Frage, sollte das vorhandene Wissen neu in Frage stellen dürfen.

                        Oft genug schon haben die empirischen Querdenker zu neuen Lösungen und Technologien geführt. Hinterher war es dann natürlich allen Anderen klar und doch _sooo_ einfach. Die Erde ist eben doch eine Scheibe!

                        Liebe Grüße aus Syburg bei Dortmund

                        Tom vom Berg

                        --
                        Nur selber lernen macht schlau
                        http://bergpost.annerschbarrich.de
                        1. Hi,

                          Aber auch die Lernumgebung sollte nicht ignorant sein gegenüber "merkwürdigen" Fragen, sondern ihr Wissen immer wieder überdenken. Jede neue "merkwürdige" Frage, sollte das vorhandene Wissen neu in Frage stellen dürfen.

                          ja, unbedingt.

                          Oft genug schon haben die empirischen Querdenker zu neuen Lösungen und Technologien geführt. Hinterher war es dann natürlich allen Anderen klar und doch _sooo_ einfach. Die Erde ist eben doch eine Scheibe!

                          Und das ist ein Grund mit, warum ich gern auch Laien um Rat frage, wenn ich mich an einem Fachproblem festgebissen habe und nicht weiterkomme. Erstens muss ich denen überhaupt mal das Problem erklären (und dabei kommen mir oft schon wieder Ideen für die Lösung), zweitens ist der Laie nicht auf branchenübliche Wege und Methoden fixiert, sondern schöpft aus seinem ganzen Allgemeinwissen. Die Antworten, die er gibt, sind selten direkt die Lösung, aber sie öffnen dem Fachmann oft die Augen für einen Ansatz, den er bisher einfach nicht zur Kenntnis genommen hat.

                          Ciao,
                           Martin

                          --
                          Niemand lebt allein von seinen Träumen.
                          Aber wer träumt, lebt noch.
                  2. Hallo Mathias,

                    Fortschritt ist doch genau das, dass ich nicht das Feuer und das Rad neu entdecken muss, sondern dass mir einmal erarbeitetes Wissen direkt zur Verfügung steht.

                    Das sehe ich ganz genauso; es ist das, was ich mit meinem Beitrag ausdrücken wollte.

                    Die Energie, die ich in diversen Sackgassen und Irrwegen verschwendet habe, könnte und sollte ein Neueinsteiger für Sinnvolleres einsetzen. Ich würde den gleichen Weg nicht nochmals gehen, warum sollte ich ihn jemand anderem zumuten wollen?

                    Freundliche Grüße

                    Vinzenz

                    1. Hello,

                      Die Energie, die ich in diversen Sackgassen und Irrwegen verschwendet habe, könnte und sollte ein Neueinsteiger für Sinnvolleres einsetzen. Ich würde den gleichen Weg nicht nochmals gehen, warum sollte ich ihn jemand anderem zumuten wollen?

                      Dafür sollten aber ganz besonders die Irrwege dokumentiert und kommentiert werden. DAS ist aber selten der Fall. Wer berichtet schon freiwillig über seine Misserfolge? I.d.R. wird doch nur über die Erfolge berichtet und die werden dann breit gelatscht.

                      Liebe Grüße aus Syburg bei Dortmund

                      Tom vom Berg

                      --
                      Nur selber lernen macht schlau
                      http://bergpost.annerschbarrich.de
                  3. Hallo,

                    Ich frage mich, warum manche hier verlangen, dass man erst einmal selbst großartig auf die Nase fallen soll. Es gibt doch nichts besseres als ein Einstieg auf hohem Niveau.

                    Ja und nein.
                    In der Theorie wäre das natürlich bie allerbeste Möglichkeit.
                    In der Praxis schaut das leider so aus, dass die Frameworks und Bibliotheken zwar "alles" können, aber die Dokumentation ist entweder so vorhanden, dass man sie als "nichtvorhanden" bezeichnen kann, oder es ist nur eine reine API-Doku, die zwar "nett", aber für das Einlernen in das Arbeiten mit dem Framwork nutzlos ist.

                    Was nützt einem als das tollste Framework, wenn man beim Arbeiten Studen damit verbringt, irgendwo im Internet nach einem Beispiel oder Erklärung zu suchen?

                    Beispiel: Ext.js. "super" Doku - ganz großes Kino, als AIR auf die lokale Platte zu haben - aber es gibt im Ext selbst zu Hauf undokumentierte Funktionen und Methoden. Die Beispiele in den Foren dort sind mit hilfe der Doku oft einfach nicht nachvollziehbar, weil es eben nichts in der Doku zu den Methoden/Funktionen steht. Das Framework kann alles, bis auf ein paar grundlegensten Sachen, die man dann selbst dazuprogrammieren muss.

                    Frameworks gleich als Einstieg sind im allgemeinen dann nur gut, wenn man nichts braucht, was auch nur ansatzweise über die Standardsachen des Frameworks hinauszeigen - und wenn wir ehrlich sind, für diese Standardsachen braucht man eigentlich gar kein Framwork.

                    Gute Frameworks sind OO oder sonst wie "vernünftig" programmiert, mit ihnen zu Arbeiten - wie gesagt, wenn man ihre Möglichkeiten wirklich nutzen will - erfordert also _sehr_ gute Kenntnisse von OOP und/oder anderen Konzepten.

                    Anderes Beispiel: Grails. Der Framwork macht das Arbeiten ungemein leichter bei sehr viele Angelegenheiten. Aber um damit effektiv arbeiten zu können, muss man _sehr_ viele Konzepte von Java und von OOP gründlich verstanden zu haben und dann noch auch die Konzepte die Grails selbst verfolgt.

                    All diese Sachen sind für Einsteiger eine komplette Überforderung. Sie wissen dann gar nicht, wo und womit sie im Framework einsteigen sollen.

                    Grüße
                    Thomas

                    1. Hallo Thomas,

                      » Ich frage mich, warum manche hier verlangen, dass man erst einmal selbst großartig auf die Nase fallen soll. Es gibt doch nichts besseres als ein Einstieg auf hohem Niveau.

                      Ja und nein.

                      :-)

                      In der Praxis schaut das leider so aus, dass die Frameworks und Bibliotheken zwar "alles" können, aber die Dokumentation ist entweder so vorhanden, dass man sie als "nichtvorhanden" bezeichnen kann, oder es ist nur eine reine API-Doku, die zwar "nett", aber für das Einlernen in das Arbeiten mit dem Framwork nutzlos ist.

                      ja, reine API-Doku ist kaum besser als gar keine Dokumentation. Sie dient leider oft genug als Feigenblatt: "Ist doch dokumentiert", "Ist doch kommentiert", ... und leider nur für den zu gebrauchen, der sich in der Materie so gut auskennt, dass er keine Doku benötigt.

                      Aus genau diesem Grund sind *für mich* manche Postings mit funktionierendem Code (geniale Ein- oder Zweizeiler, die genau das Problem lösen) völlig unbrauchbar, weil ich's nicht oder nur mit unverhältnismäßig großem Aufwand. nachvollziehen kann. Je kürzer der Code, um so umfangreicher sollte der Kommentar ausfallen - und das gilt meiner Erfahrung nach auch für Produktivcode.

                      Freundliche Grüße

                      Vinzenz

                      1. Hello,

                        Aus genau diesem Grund sind *für mich* manche Postings mit funktionierendem Code (geniale Ein- oder Zweizeiler, die genau das Problem lösen) völlig unbrauchbar, weil ich's nicht oder nur mit unverhältnismäßig großem Aufwand. nachvollziehen kann. Je kürzer der Code, um so umfangreicher sollte der Kommentar ausfallen - und das gilt meiner Erfahrung nach auch für Produktivcode.

                        An solch einem Code knabbere ich nun schon über ein halbes Jahr herum, immer wenn ich mal wieder Zeit dazu habe... Er macht "im Prinzip" das, was er soll, leider aber nicht immer und um ihn zu erweitern und/oder zu reparieren, muss ich ihn erst einmal verstanden haben und wissen, ob der Entwickler hier mit den Seiteneffekten gespielt hat, oder sie einfach übersehen hat. Denn an manchen Stellen würde der Code ohne die Seiteneffekte gar nicht funktionieren...

                        Liebe Grüße aus Syburg bei Dortmund

                        Tom vom Berg

                        --
                        Nur selber lernen macht schlau
                        http://bergpost.annerschbarrich.de
                      2. Aus genau diesem Grund sind *für mich* manche Postings mit funktionierendem Code (geniale Ein- oder Zweizeiler, die genau das Problem lösen) völlig unbrauchbar, weil ich's nicht oder nur mit unverhältnismäßig großem Aufwand. nachvollziehen kann.

                        Imho ist es nicht wichtig, dass man die exakte Funktionsweise des Codes nachvollziehen kann, sondern die Transformation von Eingabe zu Ausgabe und warum das so ist.

                        Wenn ich aus einem Array einen kommaseparierten String machen möchte, interessiert mich das "wie" eher weniger - ob das mit implode oder irgendwelchen komplexen Stringmanipulationen passiert ist mir egal.

                        Ich brauche eben folgende Faktoren:

                        1. wie ist das Eingabeformat (und wo komm es her).
                        2. was soll "unten" rauskommen (und wo wird es verwendet).
                        3. warum ist das notwendig.

                        Punkt 1 und 2 sind wichtig, um Konsequenzen bei Änderungen des Codes abschätzen zu können, Punkt 3 ist nicht ganz so wichtig, hilft aber beim Verständnis des vollumfänglichen Programms.

                        Wenn Punkt 1 und 2 sauber kommentiert/dokumentiert sind, ist die Funktion zwischen drinnen völlig egal - man kann sie wegwerfen und neuschreiben, wenn man sie nicht versteht. Oder wenn sie einen Bug hat, wegwerfen und neu schreiben - das geht manchmal schneller, als einen Fehler zu suchen - besonders wenns nur wenige Zeilen sind.

                        Oder wenn man von älteren auf neuere Funktionen umsteigt - stristr() in PHP hat z.B seit PHP 5.3 einen optionalen Parameter ($before_needle) - dies musste man vorher durch andere Stringoperationen oder einen regulären Ausdruck nachbauen. Wenn nun das exakte Verhalten bekannt ist, lässt sich eine bestehende Funktion oder Prozedur durch eine andere gleichwertige, aber einfachere/kürzere/modernere Logik ersetzen.

                    2. Hallo Thomas,

                      aber die Dokumentation ist [...] nur eine reine API-Doku, die zwar "nett", aber für das Einlernen in das Arbeiten mit dem Framwork nutzlos ist.

                      aber genau das, eine reine API-Doku, ist es, was mich als Fortgeschrittenen weiterbringt. Und genau das, eine reine API-Doku, wünsche ich mir in vielen Fällen sehnlichst. Stattdessen gibt es oft nur eine Handvoll Beispiele und etwas Prosa. Genau das sind die Fälle, die ich kritisiere; genau dann muss ich doch wieder Quellcodes wälzen, um zu analysieren, was dieser Code *wirklich* macht

                      Was nützt einem als das tollste Framework, wenn man beim Arbeiten Studen damit verbringt, irgendwo im Internet nach einem Beispiel oder Erklärung zu suchen?

                      Eben.
                      Und genau deshalb finde ich die PHP-Doku so großartig. Sie listet wirklich jede Funktion auf, beschreibt die Argumente, die Arbeitsweise und die Rückgabewerte. Und die User-Kommentare liefern noch reichlich Anmerkungen und Beispiele dazu.
                      Das ist nicht die Art von Dokumentation, die ich einem Anfänger zum Lernen empfehlen würde. Aber für jemanden, der schon Erfahrung im Programmieren hat und die eine oder andere Sprache schon kennt, ist das optimal.

                      Sowas wünsche ich mir beispielsweise auch als Objektreferenz für Javascript oder als Dokumentation zu diversen Javascript- oder PHP-Frameworks - oder für gängige C/C++-Bibliotheken.

                      Vor einigen Monaten habe ich beispielsweise gelesen, dass der Videolan-Player ein API zur Verfügung stellt, mit dem man den Player in eigene Applikationen einbetten kann. Toll, dachte ich, und wie geht das? Alles, was ich dazu fand, waren ein paar Beispiele, die aber nur die Trivialfälle zeigten. Eine komplette Beschreibung der API-Aufrufe und ihres Zusammenwirkens? Leider Fehlanzeige.

                      So long,
                       Martin

                      --
                      Der Mensch denkt, Gott lenkt.
                      Der Mensch dachte, Gott lachte.
                      1. Hallo,

                        »» aber die Dokumentation ist [...] nur eine reine API-Doku, die zwar "nett", aber für das Einlernen in das Arbeiten mit dem Framwork nutzlos ist.

                        aber genau das, eine reine API-Doku, ist es, was mich als Fortgeschrittenen

                        Zweifle ich keine Sekunde an. Aber die Rede ist hier ja von Einsteiger.

                        Und genau deshalb finde ich die PHP-Doku so großartig. [...]
                        Das ist nicht die Art von Dokumentation, die ich einem Anfänger zum Lernen empfehlen würde.

                        Das ist so ein "zwischending". Denn als reine "API" nützt es dem Einsteiger in der Tat nicht viel um bestimmte Konzept zu verstehen, aber eben durch die viele Beispiele, kann er dann wiederum besser nachvollziehen, was die eine oder andere Funktion macht.

                        Grüße
                        Thomas

                      2. @@Der Martin:

                        aber genau das, eine reine API-Doku, ist es, was mich als Fortgeschrittenen weiterbringt. Und genau das, eine reine API-Doku, wünsche ich mir in vielen Fällen sehnlichst.

                        Sowas wie die OpenSG-„Doku“?

                        Verdammt, da bin ich wohl ewig Anfänger …

                        Live long and prosper,
                        Gunnar

                        --
                        Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)
                        1. Hallo,

                          »» aber genau das, eine reine API-Doku, ist es, was mich als Fortgeschrittenen weiterbringt. Und genau das, eine reine API-Doku, wünsche ich mir in vielen Fällen sehnlichst.
                          Sowas wie die OpenSG-„Doku“?

                          ja, das geht ziemlich genau in die Richtung, die ich meinte. Jetzt noch eine knappe Erklärung, was das Projekt eigentlich sein will (findet man ansatzweise auf http://opensg.vrsource.org/trac) und wie das Konzept grundsätzlich gemeint ist - dann wäre das eine runde Sache.

                          Verdammt, da bin ich wohl ewig Anfänger …

                          Ach was: Du zitierst regelmäßig aus irgendwelchen Standards und Specs, das ist für mich ungefähr das gleiche.

                          So long,
                           Martin

                          --
                          Es gibt Dinge, die sind sooo falsch, dass nicht einmal das Gegenteil stimmt.
                          1. @@Der Martin:

                            »» Sowas wie die OpenSG-„Doku“?

                            ja, das geht ziemlich genau in die Richtung, die ich meinte.

                            Als ich mit OpenSG programmierte (3D-Sketching), hat mir diese Art „Doku“ exakt nichts gebracht. Das Tutorial war deutlich hilfreicher.

                            Ach was: Du zitierst regelmäßig aus irgendwelchen Standards und Specs

                            Die sind aber wenigstens – wie du so schön sagtest – „Prosa“.

                            Live long and prosper,
                            Gunnar

                            --
                            Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)
                            1. Hallo Gunnar,

                              » »» Sowas wie die OpenSG-„Doku“?

                              » ja, das geht ziemlich genau in die Richtung, die ich meinte.

                              Als ich mit OpenSG programmierte (3D-Sketching), hat mir diese Art „Doku“ exakt nichts gebracht.

                              das ist genau die Art von völlig unbrauchbarer "Dokumentation", die ich bereits ansprach. Ich bin froh, dass ich nicht allein das so sehe.

                              Freundliche Grüße

                              Vinzenz

                  4. Hello,

                    Ich frage mich, warum manche hier verlangen, dass man erst einmal selbst großartig auf die Nase fallen soll. Es gibt doch nichts besseres als ein Einstieg auf hohem Niveau. Dazu gehört natürlich, dass man weiß, was man da tut und warum. Fortschritt ist doch genau das, dass ich nicht das Feuer und das Rad neu entdecken muss, sondern dass mir einmal erarbeitetes Wissen direkt zur Verfügung steht. Insofern kann ich Leute nur dazu motivieren, mit Frameworks in die Webentwicklung einzusteigen. Dabei kommt natürlich nicht automatisch Tolles bei heraus, aber daraus, dass ich Low-level »PHP kann«, ergibt sich genauso wenig.

                    Du weißt aber, dass Feuer heiß ist und ein Rad rund und Du weißt auch, dass man mit kaltem Feuer nicht kochen kann und ein eckiges Rad sich ungünstig auf den Rollwiderstand auswirkt.

                    Was ich damit sagen will ist, dass Du durchaus ein umfangreiches Wissen zu den Erfindungen dazu bekommen hast und die inzwischen so ausgereift sind, dass es dafür Normen gibt. In diesen kannst Du Dich dann auch über Grenzwerte und Verbindungsstellen (Schnittstellen) informieren.

                    Wenn die Webentwicklungstools erst so alt sind wie das Rad oder gar das Feuer, wird es für sie auch genügend Normen geben, die dann Aussage über die Einbettung in das Umfeld geben. Bis es aber soweit ist, muss man wohl noch selber zu verstehen suchen, was sich darin und dahinter verbirgt.

                    Liebe Grüße aus Syburg bei Dortmund

                    Tom vom Berg

                    --
                    Nur selber lernen macht schlau
                    http://bergpost.annerschbarrich.de
                3. Hi,

                  »» Sich self(!) einen gewissen Fundus an Standardroutinen zu erarbeiten, den man in all seinen Einzelheiten versteht und pflegt, ist IMO okay und wünschenwert.
                  ich finde dies überhaupt nicht wünschenswert. Ich will nicht die Arbeit nochmal machen, die schon viele andere vor mir gemacht haben.

                  ich schon, denn "viele andere vor mir" haben wahrscheinlich andere Ziele und Ideen vor Augen gehabt, die sich mit meinen nicht immer vertragen.

                  Eine gut dokumentierte Standardbibliothek, gut getestet und umfangreich, das ist wünschenswert.

                  "Gut dokumentiert" ist aber leider Mangelware. Da kommt an Selbstgeschriebenes so schnell nichts heran. Meist ist sind nur ein paar wenige Fälle dokumentiert, die der Entwickler für relevant hielt.

                  Nein, ich will nicht jedem Bit bei der Arbeit zusehen. Ich nutze gern Fertiges mit sauberen Schnittstellen. Das ist meiner Meinung nach okay und wünschenswert.

                  Tja, wer gern Tütensuppen konsumiert, anstatt selbst zu kochen ...
                  Ich tu das nur in Fachgebieten, in die ich mich ausdrücklich nicht einarbeiten will, weil sie mich nicht interessieren - etwa beim Kochen. Ja, auf solchen Gebieten bin ich dann ein reiner Konsument. Andernfalls knie ich mich rein, *bis* ich alle Einzelheiten begriffen habe - und dann nehme ich die Sachen selbst in die Hand und baue selbst etwas mit sauberen Schnittstellen, das auf meine Bedürfnisse abgestimmt ist.

                  Ja, ich habe das auf die harte Tour gelernt.

                  Und ich bin diesen Schwierigkeiten, wenn möglich, aus dem Weg gegangen und so zu meiner heutigen Einstellung gelangt.

                  So long,
                   Martin

                  --
                  Die letzten Worte der Challenger-Crew:
                  Lasst doch mal die Frau ans Steuer!
                  1. ich schon, denn "viele andere vor mir" haben wahrscheinlich andere Ziele und Ideen vor Augen gehabt, die sich mit meinen nicht immer vertragen.

                    Tja, wer gern Tütensuppen konsumiert, anstatt selbst zu kochen ...
                    Ich tu das nur in Fachgebieten, in die ich mich ausdrücklich nicht einarbeiten will, weil sie mich nicht interessieren - etwa beim Kochen. Ja, auf solchen Gebieten bin ich dann ein reiner Konsument. Andernfalls knie ich mich rein, *bis* ich alle Einzelheiten begriffen habe - und dann nehme ich die Sachen selbst in die Hand und baue selbst etwas mit sauberen Schnittstellen, das auf meine Bedürfnisse abgestimmt ist.

                    Manchmal ist das Einarbeiten in ein Themengebiet zu zeitaufwändig, egal wie sehr es einen interessiert. Wenn ein einzelner Kunde z.b. eine PDF mit Barcodes wünscht und man nach kurzem Googeln eine brauchbare Klasse findet, so nutz ich diese (sofern Sie die gewünschten Ergebnisse liefert).

                    Denn ich kann und darf diese Zeit gar nicht in dieses Thema investieren. Das ist Zeit die der Kunde bezahlen muss und Zeit die ich für andere Projekte weniger habe.
                    Wenn ich mal weniger zu Projekte habe, dann kann ich als persönliche Weiterbildung mich mit dem Thema befassen.

                    Anders ist es natürlich bei Themen, welche oft wiederverwendet werden. Wie Funktionen / Klassen für den Datenbank-Zugriff.  Hier lohnt sich der Aufwand sich mit dem Thema zu beschäftigen, da es nicht nur einem sondern mehreren Projekten zu gute kommt.

              2. Für jemanden, der mit C und Assembler sauber strukturiertes Programmieren gelernt hat, sind viele der heute so gelobten OO-Ansätze (C++, Java, Javascript, PHP) schon Spaghetticode, weil sie das Wesentliche durch "geschickte" Sprachkonstrukte verschleiern.

                Keine Ahnung, ich habe weder C noch Assembler gelernt und meine Aussagen bezogen sich auf die kommerzielle Entwicklung von Webanwendungen. Da will ich nicht »jedem Bit bei der Arbeit zusehen«, sondern muss schnell eine funktionsfähige, sichere und wartbare Site online stellen.

                Sich self(!) einen gewissen Fundus an Standardroutinen zu erarbeiten, den man in all seinen Einzelheiten versteht und pflegt, ist IMO okay und wünschenwert.

                Mit Eigenentwicklungen ist das so eine Sache. Ich lebe zum Glück nicht alleine auf der Welt, sondern teile meine Toolkits mit anderen via Open-Source und der gemeinschaftlichen Softwareentwicklung. Dass jeder Programmierer seine eigene Bibliothek pflegt, ist auch nicht Sinn der Sache. Das geht vielleicht für Einzelkämpfer und Allrounder, deren Code sonst niemand verstehen muss. Wenn ich Auftraggeber wäre, würde ich solche Lösungen nie kaufen.

                Mathias

              3. Hello,

                Sich self(!) einen gewissen Fundus an Standardroutinen zu erarbeiten, den man in all seinen Einzelheiten versteht und pflegt, ist IMO okay und wünschenwert. Diese Bausteine soll man dann bitte auch jederzeit wiederverwenden. Aber nicht irgendwelche Codepakete, deren Sinn und Funktion nur nebulös beschrieben ist. Dann muss man nämlich doch wieder den Quellcode analysieren, um herauszufinden, was dieser Code in bestimmten Sonderfällen wirklich tut - und dann ist eigentlich nichts gewonnen.

                Und oft genug haben die ProgrammiererInnen duser Codes dann nur auf das "Funktionieren" geachtet, die Grenzen des Nichtfunktionierns aber weder ermittelt noch betrachtet. Das ist dann besonders schlimm, wenn man mehrerer solcher Blckboxes zusammenstöpselt und nachher gar nicht mehr weiß, woher der unangenehme Seiteneffekt kommt.

                Liebe Grüße aus Syburg bei Dortmund

                Tom vom Berg

                --
                Nur selber lernen macht schlau
                http://bergpost.annerschbarrich.de
            2. Hello,

              Das ist dummerweise schon beim ersten PHP-Script der Fall, das irgendwelche Daten aus einer Datenbank holt oder in sie schreibt, das Eingabedaten verarbeitet, das generierten HTML-Code ausgeben soll. Schon bin ich bei OOP, einer Datenbank-Abstraktion, bei einem ORM, bei Models samt Validierungs-Techniken, bei Template-Engines. Kann ich natürlich alles weglassen und Spaghetticode schreiben...

              Das wichtgste dabei scheint mir zu sein, dass man die ganzen Abkürzungen und Verdenglischungen drauf hat, damit man auch immer mitreden kann. Was dhinter steckt, muss man dafür allerdings nicht wissen ;-)

              http://de.wikipedia.org/wiki/ORM

              Liebe Grüße aus Syburg bei Dortmund

              Tom vom Berg

              --
              Nur selber lernen macht schlau
              http://bergpost.annerschbarrich.de
              1. Das wichtgste dabei scheint mir zu sein, dass man die ganzen Abkürzungen und Verdenglischungen drauf hat, damit man auch immer mitreden kann.

                Ich rede natürlich vom Operational Reactivity Margin, dem Maß für die Überschussreaktivität von Kernreaktoren.

                Mathias

                1. Hello,

                  Das wichtgste dabei scheint mir zu sein, dass man die ganzen Abkürzungen und Verdenglischungen drauf hat, damit man auch immer mitreden kann.

                  Ich rede natürlich vom Operational Reactivity Margin, dem Maß für die Überschussreaktivität von Kernreaktoren.

                  Das war mich doch sowieso klar. Ist ja schließlich ein explosives Thema hier ;-)

                  Liebe Grüße aus Syburg bei Dortmund

                  Tom vom Berg

                  --
                  Nur selber lernen macht schlau
                  http://bergpost.annerschbarrich.de
    3. Auf der sicheren Seite bist Du, wenn Du irgendeine Sprache mit C-Syntax beherrscht

      Als da wären? JS und PHP? Gehts dabei um Einstieg in die Programmierung?

      und Dich dann davon ausgehend mit den entsprechenden sprachlichen und anwendungstechnischen Eigenheiten von Javascript und PHP auseinandersetzt.

      JavaScript und PHP sind einfach zwei Universen. Mehr als ganz allgemeines Programmiergrundlagen und eine äußerlich ähnliche Syntax teilen die beiden Sprachen nicht. Wer meint, er könnte Wissen von PHP auf JavaScript übertragen oder umgekehrt, der wird sich schnell in Müllcode verstricken.

      1. Beherrschung eines oder mehrerer CMS-Systeme

      Halte ich für komplett überflüssig

      CMS sind komplett überflüssig?

      Wenn Du mit der Absicht die Sache angehst, dann bist Du auf einem "Markt" unterwegs, wo Du, wenn Du nicht viel sehr gute "Freunde" hast, nur durch immer noch billigere Angebote zum Zug kommst.

      ?? Gibts den Markt nicht in allen Bereichen? Womit kann man denn noch einfach so überall landen ohne Beziehungen? Mit »PHP und JavaScript können« ohne Frameworks ohne CMS ohne alles?

      Mathias

      1. Hi there,

        Als da wären? JS und PHP? Gehts dabei um Einstieg in die Programmierung?

        Was schlägst denn Du vor? Visual Basic?

        JavaScript und PHP sind einfach zwei Universen. Mehr als ganz allgemeines Programmiergrundlagen und eine äußerlich ähnliche Syntax teilen die beiden Sprachen nicht. Wer meint, er könnte Wissen von PHP auf JavaScript übertragen oder umgekehrt, der wird sich schnell in Müllcode verstricken.

        D'accord. Das war auch nicht der Sinn meiner Aussage. Aber als Webworker, was der OP offensichtlich werden möchte, kommt man um Kenntnis und auch Praxis von server- *und* clientseitigen Programmiersprachen nicht herum. Womit ich mitnichten gesagt haben wollte, daß beide Sprachen ausser der Syntax viel gemein hätten.

        CMS sind komplett überflüssig?

        Nicht für den Kunden, für den Webworker schon.

        ?? Gibts den Markt nicht in allen Bereichen? Womit kann man denn noch einfach so überall landen ohne Beziehungen? Mit »PHP und JavaScript können« ohne Frameworks ohne CMS ohne alles?

        Es geht nicht um 'einfach' landen. Es geht darum, daß man mit dem "Beherrschen" von lediglich einem CMS-System und/oder einem Framework in einem Teich herumstochern muss, der ohnehin schon komplett überfischt ist, was sich natürlich auf den Preis der Fische auswirkt, um bei diesem Bild zu bleiben;)

        1. Hallo Leute,

          zunächst schon einmal ein großes Danke für diese wirklich wunderbaren Antworten. :)

          Zum Thema Webworker. Ich möchte weniger Kundenprojekte realisieren, als mehr meine eigenen Ideen die ich habe in vernüftige Webauftritte umsetzen. Da es bei einigen dieser Idee natürlich nicht mit reinem HTML getan ist und manche dieser Projekte sicherlich Ausmaße einer mittelgroßen bis großen Webapplikation annehmen wird, stelle ich mir einfach die Frage, mit welchem gelernten Konzept ich auf dafür die für mich bestmöglichen Erfolge erzielen kann.

          Eines dieser Beispiele wird ein Communityportal sein, nähere Details möchte ich nicht preis geben, aber hierfür ist es mir einfach wichtig, dass ich, zu welchem Werkzeug ich auch greife, nicht an die Grenzen der Unrealisierbarkeit stoße.

          Auf der anderen Seite könnte ich mir auch gut vorstellen, Applikationen wirklich selbst zu schreiben, einfach weil ich dann auch die größtmögliche Kontrolle über das habe, was ich tue, und was bei einem CMS vielleicht nicht unbedingt gegeben ist?!

          1. echo $begrüßung;

            [...] mit welchem gelernten Konzept ich auf dafür die für mich bestmöglichen Erfolge erzielen kann.

            Jeder muss letzlich seinen eigenen Weg finden. Ohne Einblick in deine Fähigkeiten zu haben, wird man dir kaum eine gezielte Strategie vorschlagen können, eher über Vorlieben und Erfahrungswerte sprechen und die gehen je nach eigenem Erleben in die eine oder andere Richtung, wie man ja schon deutlich an den bisherigen Äußerungen sehen kann.

            Mein Weg ist "Vielfalt statt Einfalt". Auch der hat Vor- und Nachteile. Nachteilig ist, dass es natürlich viel mehr Zeit braucht, sich in viele Konzepte einzuarbeiten, oder aber man nur bis zu einer gewissen Tiefe in jedes einzelne Thema eindringen beziehungsweise Erfahrungen damit sammeln kann. Andererseits sitzt man damit nicht nur auf einem Teller, bei dem man sich immer wieder mal aufraffen muss, um über den Rand zu schauen. Wobei es da natürlich auch solche und solche gibt. Einigen fällt es schon schwer, sich in einem Gebiet sicher zu bewegen, andere durchschauen Konzepte und Ideen schneller, auch wenn sie nicht zum Umfald der eigenen Kernkompetenzen gehören.

            Eines dieser Beispiele wird ein Communityportal sein, nähere Details möchte ich nicht preis geben, aber hierfür ist es mir einfach wichtig, dass ich, zu welchem Werkzeug ich auch greife, nicht an die Grenzen der Unrealisierbarkeit stoße.

            Das wirst du, wie so oft, erst dann merken, wenn du dort angelangt bist. Mitunter ist das auch nur ein Gefühl, das sich durch Weiterlernen auflösen lässt.

            Wenn du ohne viel Erfahrung ein Projekt in Angriff nimmst, wirst du zwangsläufig mehr oder weniger typische Fehler begehen. Du kannst vorher jede Menge Konzepte studieren, doch nicht selten weiß man erst durch die Erfahrung mit eigenen Fehlern, warum jemand dieses oder jenes Konzept entwickelt hat, um genau diese Fehler und die Herangehensweisen, die dazu führten, durch etwas besseres zu ersetzen.

            Nicht wenige bekannte Projekte haben aufgrund ihrer Vergangenheit und der damals fehlenden Erfahrung Konzeptionsfehler eingebaut, die für jede Menge graue Haare zuständig sind. Je erfolgreicher ein Projekt ist und je mehr Erweiterungen dafür existieren, desto schwieriger ist es, solche grundlegenden Mängel auszubügeln, ohne die Kompatibilität zu den Erweiterungen zu beeinträchtigen.

            echo "$verabschiedung $name";

            1. Moin!

              »» Eines dieser Beispiele wird ein Communityportal sein, nähere Details möchte ich nicht preis geben, aber hierfür ist es mir einfach wichtig, dass ich, zu welchem Werkzeug ich auch greife, nicht an die Grenzen der Unrealisierbarkeit stoße.

              Das wirst du, wie so oft, erst dann merken, wenn du dort angelangt bist. Mitunter ist das auch nur ein Gefühl, das sich durch Weiterlernen auflösen lässt.

              Klassische Zitate zum Projektscheitern:

              "Prepare to throw one away..."
              Die erste zusammenprogrammierte Lösung wird man vermutlich in die Tonne treten...

              "Second-system-syndrome"
              Durch die vielen Erfahrungen bei diesem ersten Versuch wird der zweite Anlauf dann als großer Wurd konzipiert, mit dem man nicht nur die Fehler des ersten vermeidet, sondern gleichzeitig auch die ganzen Vereinfachungen und fehlenden Features zusätzlich implementiert - was natürlich auch schief geht...

              - Sven Rautenberg

              1. Durch die vielen Erfahrungen bei diesem ersten Versuch wird der zweite Anlauf dann als großer Wurd konzipiert, mit dem man nicht nur die Fehler des ersten vermeidet, sondern gleichzeitig auch die ganzen Vereinfachungen und fehlenden Features zusätzlich implementiert - was natürlich auch schief geht...

                Wie bereits erwähnt gilt dies dann aber auch für alle weiteren "Verbesserungsaktionen" :)

                1. hi $name,

                  | Durch die vielen Erfahrungen bei diesem ersten Versuch wird der zweite Anlauf dann als großer Wurd konzipiert, mit dem man nicht nur die Fehler des ersten vermeidet, sondern gleichzeitig auch die ganzen Vereinfachungen und fehlenden Features zusätzlich implementiert - was natürlich auch schief geht...

                  Wie bereits erwähnt gilt dies dann aber auch für alle weiteren "Verbesserungsaktionen" :)

                  ich kann nur sagen: stimmt!! wenn ich soviel physikalischen müll produzieren würde wie tlw. quelltext, arme erde.

                  auf der anderen seite, mit jedem mal wirds besser - vor und nachteil von "learning by doing/ autodidakt". in meiner ausbildung wurde uns nicht "praktisch" beigebracht warum sich viele dinge als bumerang erweisen.

                  da sind die lernwilligen den alten alchimisten überlegen, gold aus blei? nein, platin aus sch***

                  gruss
                  shadow

                  --
                  Vor dem Parser und auf hoher See sind wir allein in Gottes Hand
                  1. Hello,

                    da sind die lernwilligen den alten alchimisten überlegen, gold aus blei? nein, platin aus sch***

                    nee, Geld und Geldwerte aus Luft und Beziehungsgeflechten. :-/

                    Liebe Grüße aus Syburg bei Dortmund

                    Tom vom Berg

                    --
                    Nur selber lernen macht schlau
                    http://bergpost.annerschbarrich.de
          2. Hallo,

            und manche dieser Projekte sicherlich Ausmaße einer mittelgroßen bis großen Webapplikation annehmen wird,

            Eines dieser Beispiele wird ein Communityportal sein,

            Das sind die allerbesten Voraussetzungen für ein 100%-iges Scheitern, wenn du Einsteiger bist. Gleich so "richtig Groß" zu planen.

            Definiere z.B. "große Webapplikation", was für dich als Einsteiger groß ist, kann in einem anderen Umfeld eine Minianwendung sein.
            Ein "Communityportal" kann auch erst klein beginnen und dann wachsen. Aber ich vermute mal sehr starkt, dass du da gleich an die verschiedenen Funktionen von diversen bekannten Portalen denkst. Das ist schon der erste Fehler, der zweite ist, dass ein "Communityportal" nur in der zweiten Linie von seinen Funktionen lebt. Zu aller erst müssen sich Leute dafür, was du dort bietest, interressieren und dann die "Community" bilden und (be)leben. Beiden Punkte haben aber nichts mit Webworking zu tun.

            Grüße
            Thomas

        2. Was schlägst denn Du vor? Visual Basic?

          Wenns um die Grundlagen geht, ist eine objektorientierte Sprache wie JavaScript ganz gut. (Dann will man aber nicht unbedingt mit PHP weitermachen.)

          Aber als Webworker, was der OP offensichtlich werden möchte, kommt man um Kenntnis und auch Praxis von server- *und* clientseitigen Programmiersprachen nicht herum.

          Kommt ganz darauf an, worauf er sich spezialisieren will. Ich kenne wenige, von denen ich sagen würde, dass sie beide Seiten wirklich gut beherrschen. Im Gegenteil muss ich immer wieder mit ansehen, was PHP-Programmierer für einen schlechten JS-Spaghetticode schreiben.

          CMS sind komplett überflüssig?

          Nicht für den Kunden, für den Webworker schon.

          Aha. Und wer setzt das CMS für den Kunden auf, baut die ganze Logik ein, schreibt die Templates, programmiert etwaige Interfaces? Der Kunde etwa?

          Mathias

          1. Hi there,

            [...]Im Gegenteil muss ich immer wieder mit ansehen, was PHP-Programmierer für einen schlechten JS-Spaghetticode schreiben.

            ja, das kenn ich ;)

            Aha. Und wer setzt das CMS für den Kunden auf, baut die ganze Logik ein, schreibt die Templates, programmiert etwaige Interfaces? Der Kunde etwa?

            Nein, aber als Webworker verdient man daran eher schlecht, weil sich bei vielen Kunden der Eindruck festgesetzt hat, daß das eine "mindere" Tätigkeit darstellt.

  4. Hallo,

    1. Beherrschung eines oder mehrerer CMS-Systeme
    2. Aneignen einer Programmiersprache + späterer Programmierung ohne Framework

    Webseitenerstellung dürfte oft im Zusammenklicken irgendwelcher Anwendungen zu bestehen, das Rad neu zu erfinden scheint zu zeitaufwändig.

    Die meisten einfacheren Geschichten, die ich mir angeschaut habe, waren allerdings letztlich doch umständlich oder fehlerhaft oder unflexibel und einschränkend, ob PHP-CMS oder JavaScripte. Mir sind Pakete wie z.B. irgendwas-lightbox.js zu unübersichtlich, zu inkonsequent und schon zu aufgebläht. Bei PHP scheinen es einige Programmierer drauf anzulegen, wahrscheinlich objektorientiert und Klassen usw., um jeden Preis jedem Funktiönchen eine eigene Datei zu verpassen. Ob das nun sauberer Programmierstil sein mag oder Vorteile bei der Entwicklung im Team hat, ist mir irgendwann egal, wenn der Dateiverhau nur noch lästig ist.

    Also vielleicht doch Eigenentwicklungen oder deatilliertere Codeveränderungen, um überhaupt wirklich das zu bekommen was gerade nötig und sinnvoll ist.

    Für ein fertiges CMS könnte noch sprechen, dass der Kunde angeblich eher weiß, was er eingerichtet bekommt. Vielleicht läßt sich z.B. Arbeitsaufwand mit/für typo3 gut "verkaufen", auch wenn es im Einzelfall am Bedarf des Kunden eher etwas vorbeigehen mag?

    Grüsse

    Cyx23

    1. Für ein fertiges CMS könnte noch sprechen, dass der Kunde angeblich eher weiß, was er eingerichtet bekommt.

      Das ist ja kein Zweck an sich. Der Zweck dahinter ist z.B. eine bekannte und etablierte Software zu haben, damit man von der Weiterentwicklung und den Updates profitiert. Damit man bei Bedarf einfach weitere Software-Module einbinden kann. Und damit man auch andere Leute finden kann, um mit der Installation weiterzuarbeiten.

      Mathias

      1. Hallo,

        »» Für ein fertiges CMS könnte noch sprechen, dass der Kunde angeblich eher weiß, was er eingerichtet bekommt.

        Das ist ja kein Zweck an sich. Der Zweck dahinter ist z.B. eine bekannte und etablierte Software zu haben, damit man von der Weiterentwicklung und den Updates profitiert. Damit man bei Bedarf einfach weitere Software-Module einbinden kann. Und damit man auch andere Leute finden kann, um mit der Installation weiterzuarbeiten.

        Klar, die Idee ist grundsätzlich gut, und wahrscheinlich bringt die Vorgehensweise in vielen Fällen wirklich was.

        Nur stellt m.E. bei manchem CMS das Update oder ein Erweitern mit Modulen ein zusätzliches Risiko dar. Es erfordert womöglich erneutes Nacharbeiten und mag neue Bugs in das laufende System bringen. Der Kunde ist ggf. nicht so unabhägig wie er meint, und hat womöglich dazu einen großen Lernaufwand, um mit dem Kram klarzukommen. Oder er nutzt das CMS letztlich in vielen Bereichen erst gar nicht, sondern überläßt das dem Profi.

        Grüsse

        Cyx23

        1. Hi there,

          Nur stellt m.E. bei manchem CMS das Update oder ein Erweitern mit Modulen ein zusätzliches Risiko dar. Es erfordert womöglich erneutes Nacharbeiten und mag neue Bugs in das laufende System bringen. Der Kunde ist ggf. nicht so unabhägig wie er meint, und hat womöglich dazu einen großen Lernaufwand, um mit dem Kram klarzukommen. Oder er nutzt das CMS letztlich in vielen Bereichen erst gar nicht, sondern überläßt das dem Profi.

          Besser könnte man die Realität dieses Thema betreffend gar nicht beschreiben...