迪拉斯: Aktion: Monat des Abratens vom Gebrauch von PHP

http://developers.slashdot.org/article.pl?threshold=3&mode=nested&sid=07/02/20/0144218
http://news.google.com/news?hl=en&q=php+month+esser

In Solidarität mit der Aktion in den aktuellen Schlagzeilen, habe ich vor, in zwei Wochen, in Threads, in denen es mir geeignet erscheint, unter Zuhilfenahme von Textbausteinen:
• aggressiv abzuraten, aber natürlich immer sachlich zu bleiben
• Alternativen aufzuzeigen und darauf hinzuweisen, wie sie bequemer, verständlicher, sicherer, einfacher, konzeptionell tauglicher etc. sind
• zu diesem Thread zu verlinken.

Mal sehen, ob ich das auch einen Monat durchhalte. Jedenfalls kann ich PHP und seinem Umfeld kaum gutes abgewinnen. Die Probleme sind dermaßen gehäuft, dass ich keine Skrupel habe, zu fordern, dass es nicht mehr ausreicht, *für* bessere Lösungen zu sein (und implizit PHP zu dulden), sondern aktiv *gegen* die Nutzung vorzugehen. Mir persönlich gehen diese Anekdoten am meisten gegen den Strich:

• PHP wird von der Firma Zend als unternehmenstauglich angepriesen, obwohl es gewissen Erwartungen, wie schmerzlose Unterstützung von Unicode oder Erweiterung ohne ständige Neukompilierung, selbst in seiner fünften Hauptversion nicht entspricht.
• Das PHP-Handbuch hat durch eine hochgradig missverständliche Warnung die Verbreitung von Apache2 gebremst.
• Die ein- und ausschaltbaren Merkmale in php.ini sind ein Albtraum, wenn man portable Programme schreiben will.
• Der Umfang von PEAR ist ein schlechter Witz. Wenn man was vernünftiges braucht, z.B. für Unittest oder eine tatsächlich funktionierende Library für Datum und Zeit, muss man doch eine allgemeine Websuche durchführen und nichts ist gewonnen.
• Der niederländische Channel zur Webentwicklung auf freenode war im Jahr 2002 voll mit bornierten, ignoranten PHP-Fanatikern, die einen Freund von mir ob seiner herausfordernden Fragen schmähten. Ich durfte mir dann bei Gelegenheit das Gejammer anhören.
• Ich habe im Bekanntenkreis immer wieder festgestellt, dass PHP-Programmierer, die schon länger als ein Jahr Praxiserfahrung haben, immer noch keinerlei Einsicht in das große Bild zeigen - wissen nichts über Internet-RFCs, können nicht mal richtig HTTP. "Hauptsache funzt" ist kein Anlass zum Stolz, sondern kindisch.

Für argumentationstauglichere Anekdoten und Fakten siehe tnx.nl/php ff.

Ich verzichte absichtlich, Reaktionen auf dieses Posting vorzugreifen. Abschließend sei gesagt, dass ich hoffe, es ist mir am Ende möglich, PHP-Nutzer zu erziehen, einen Umdenkvorgang einzuleiten, die Augen für guten Stil und durchdachte Programmierung zu öffnen, vor bösen Fallen zu bewahren, ...
Experten, die ähnlich wie ich denken, sind eingeladen, sich in die Aktion nach eigenem Ermessen einzubringen.

--
水-金-地-火-木-土-天-海-冥
  1. So ein Quatsch.
    Ohne Worte...

    1. So ein Quatsch.
      Ohne Worte...

      Seh eigtl auch so.
      Der hat wahrscheinlich ziemlich lange nach einem vergessenen Semikolon o.Ä. gesucht und nichts gefunden.
      Für mich is das ein reiner Frustpost.

      --
      Lg,
      Snafu
      1. So ein Quatsch.
        Ohne Worte...
        Seh eigtl auch so.
        Der hat wahrscheinlich ziemlich lange nach einem vergessenen Semikolon o.Ä. gesucht und nichts gefunden.
        Für mich is das ein reiner Frustpost.

        Es sind durchaus sachliche Inhalte da. Zudem wurde eine (leider unvollständige und nicht als Link präsentierte) URL gegeben, unter der es noch mehr Informationen gibt. Ich halte daher deinen Beitrag für einen reinen Fanboy-Post.

        --
        Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.
        Self-Code: sh:( ch:? rl:( br:> n4:( ie:{ mo:) va:) de:> zu:} fl:| ss:| ls:~ js:|
  2. Hallo,

    Jedenfalls kann ich PHP und seinem Umfeld kaum gutes abgewinnen. Die Probleme sind dermaßen gehäuft, dass ich keine Skrupel habe, zu fordern, dass es nicht mehr ausreicht, *für* bessere Lösungen zu sein (und implizit PHP zu dulden), sondern aktiv *gegen* die Nutzung vorzugehen.

    Wenn dann würde ich an der Wurzel anfangen: C! PHP ist in C geschrieben. Betriebssysteme werden in C geschrieben. Alle Experten sind sich einig, wenn niemand mehr C verwenden würde, gäbe es keine Probleme mehr.

    Aber halt! Ist C vielleicht nicht doch unschuldig? Nur ein weiteres Opfer in der langen Geschichte der (Un)berechenbarkeit? Liegt es vielleicht an der Einheit von Programmen und Daten? Liegt es am Menschen? Und wer ist überhaupt für diese verantwortlich?

    ;-)

    Gruß,
    Severin

    --
    They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.
    -- Benjamin Franklin
    1. Jedenfalls kann ich PHP und seinem Umfeld kaum gutes abgewinnen. Die Probleme sind dermaßen gehäuft, dass ich keine Skrupel habe, zu fordern, dass es nicht mehr ausreicht, *für* bessere Lösungen zu sein (und implizit PHP zu dulden), sondern aktiv *gegen* die Nutzung vorzugehen.

      Wenn dann würde ich an der Wurzel anfangen: C! PHP ist in C geschrieben. Betriebssysteme werden in C geschrieben. Alle Experten sind sich einig, wenn niemand mehr C verwenden würde, gäbe es keine Probleme mehr.

      Wenn ich sowas lese, scheint mir nicht nur ein Vorgehen gegen die Nutzung von PHP erforderlich sondern auch gegen die Nutzer.   ;)

      1. Ich grüsse den Cosmos,

        Wenn ich sowas lese, scheint mir nicht nur ein Vorgehen gegen die Nutzung von PHP erforderlich sondern auch gegen die Nutzer.   ;)

        Und das von jemanden, der hier des öfteren AUftritt, als wenn er mit dem Düsenjet durch Kinderzimmer geflogen ist.

        Möge das "Self" mit euch sein

        --
        Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
        ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
        1. Wenn ich sowas lese, scheint mir nicht nur ein Vorgehen gegen die Nutzung von PHP erforderlich sondern auch gegen die Nutzer.   ;)

          Und das von jemanden, der hier des öfteren AUftritt, als wenn er mit dem Düsenjet durch Kinderzimmer geflogen ist.

          Stefan Esser-mässig so zu sagen, tja, es fällt uns wirklich sehr schwer hier das Fachliche in den Vordergrund zu stellen. Da nehmen wir die Kritik gerne an.

  3. Ich grüsse den Cosmos,

    Ein Argument ohne sinnvolle Alternative ist nicht sehr viel wert. Oder hab ich deine Alternativen zu PHP irgendwo überlesen?

    Und solange PHP von vielen Kunden gefordert wird, ist dein Ansatz völlig falsch, denn nicht die Entwickler gehören erzeogen, sondern die Kunden.

    Möge das "Self" mit euch sein

    --
    Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
    ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
    1. Ein Argument ohne sinnvolle Alternative ist nicht sehr viel wert. Oder hab ich deine Alternativen zu PHP irgendwo überlesen?

      Nein du hast sie nicht überlesen, da waren keine.
      Ausserdem könnte ja der Herr Esser sich an die Arbeit machen ein paar Bugs zu fixen anstatt ihre Existenz einfach so in den Raum zu werfen und zu gehen.

      Und solange PHP von vielen Kunden gefordert wird, ist dein Ansatz völlig falsch, denn nicht die Entwickler gehören erzeogen, sondern die Kunden.

      Das ist sowieso immer der springende Punkt. Man braucht sich nur mal anschauen welches Betriebssystem am meisten verwendet wird ;)

      --
      Lg,
      Snafu
      1. Tach.

        Ausserdem könnte ja der Herr Esser sich an die Arbeit machen ein paar Bugs zu fixen anstatt ihre Existenz einfach so in den Raum zu werfen und zu gehen.

        Hast du auch nur die geringste Ahnung, womit sich dieser Mann die letzten Jahre über bzgl. PHP beschäftigt hat; um welche Probleme es sich handelt? Hast du seinen Namen vor dem heutigen Tag schon einmal gehört? Vermutlich nicht -- sonst hättest du dir diesen blödsinnigen Beitrag gespart ...

        --
        Once is a mistake, twice is jazz.
        1. Ich grüsse den Cosmos,

          Hast du auch nur die geringste Ahnung, womit sich dieser Mann die letzten Jahre über bzgl. PHP beschäftigt hat;

          Offensichtlich nicht mit PHP. denn sonst hätte er die Probleme, die er sieht, gelöst.

          Möge das "Self" mit euch sein

          --
          Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
          ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
          1. Hallo,

            Hast du auch nur die geringste Ahnung, womit sich dieser Mann die letzten Jahre über bzgl. PHP beschäftigt hat;
            Offensichtlich nicht mit PHP. denn sonst hätte er die Probleme, die er sieht, gelöst.

            Himmel. Von dem weiss doch sogar ich, der um PHP ansonsten einen weiten Bogen macht: Ein ehemaliges Mitglied des PHP Security Response Teams (m.W. sogar einer der Gründer desselben), der resigniert aufgegeben hat. Es wäre wirklich schön, wenn hier im Forum die Schnellschuss-Rhetorik mal etwas runtergeschraubt wird, auch wenn das persönliche Steckenpferd kritisiert wird.

            Tim

            1. Ich grüsse den Cosmos,

              Himmel. Von dem weiss doch sogar ich, der um PHP ansonsten einen weiten Bogen macht: Ein ehemaliges Mitglied des PHP Security Response Teams (m.W. sogar einer der Gründer desselben), der resigniert aufgegeben hat.

              Du darfst mir glauben, ich weiss von dem Menschen.

              Es wäre wirklich schön, wenn hier im Forum die Schnellschuss-Rhetorik mal etwas runtergeschraubt wird, auch wenn das persönliche Steckenpferd kritisiert wird.

              Ich hab lediglich in der gleichen Art geantwortet, wie Blaubart gepostet hat. Unabhängig vom Inhalt seines Posts.
              Und PHP ist für mich ein Werkzeug, aber kein Steckenpferd. 80% meiner Arbeit erledige in in C oder C++, 10% in PERL, 2-4% in Bash und der rest in PHP.

              Hat vermutlich auch die Grpünde, warum der OP gepostet hat, aber aus dem Grund eine Programmiersprache abzulehnen, nur weil es möglich ist, schlecht zu programmieren, dann müssten wir alles abschaffen, denn auch in Assembler kann ich unsauber programmieren. Keine Programmiersprache ist von sich aus sicher.

              Wenn ich im Auto keinen Gurt anlege, bringt mir auch das beste Auto nichts, wenn ich gegen ne Mauer fahre.

              Möge das "Self" mit euch sein

              --
              Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
              ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
            2. Himmel. Von dem weiss doch sogar ich, der um PHP ansonsten einen weiten Bogen macht: Ein ehemaliges Mitglied des PHP Security Response Teams (m.W. sogar einer der Gründer desselben), der resigniert aufgegeben hat.

              Viele SW-Entwickler haben die fatale Tendenz Kritik an selbstentwickelter SW persönlich zu nehmen.

              Aber, ja, das sind schon heisse Aussagen:
              "Sobald man die Sicherheit von PHP kritisiere, werde man im Security Team selbst zur "Persona non Grata". Zudem würden viele seiner Vorschläge ignoriert, weil die Entwickler behaupten, Essers Wortwahl sei zu unfreundlich."

              Ehrenamtliche Strukturen tendieren leider immer zur Vereinsmeierei und unerträglichem Sozialverhalten. Weiter unten steht noch, dass bug reports intern als Verrätertum gebrandmarkt worden sind.   LOL

              Wenn der gute SW-Entwickler in die Hölle kommt, weil er im Privatleben versagt hat bspw., dann dürfte er in eine Entwicklungsabteilung geschickt werden, die Kompetenz wie oben beschrieben durch (gutgemeintes) Sozialverhalten ersetzt. (Dabei läuft im Hintergrund ununterbrochen Musik von Bob Dylan: "I hate America like you do..." - vgl. The Simpsons, die Folge mit BoDy)

          2. Tach.

            Hast du auch nur die geringste Ahnung, womit sich dieser Mann die letzten Jahre über bzgl. PHP beschäftigt hat;

            Offensichtlich nicht mit PHP. denn sonst hätte er die Probleme, die er sieht, gelöst.

            Da du den Wink mit dem Zaunpfahl anscheinend nicht verstanden hast, hier eine kleine Starthilfe, um dich selber etwas zu informieren:

            Hardened-PHP Project
            SecurityFocus' Interview mit Stefan Esser

            --
            Once is a mistake, twice is jazz.
          3. Ausserdem könnte ja der Herr Esser sich an die Arbeit machen ein paar Bugs zu fixen anstatt ihre Existenz einfach so in den Raum zu werfen und zu gehen.

            Hast du auch nur die geringste Ahnung, womit sich dieser Mann die letzten Jahre über bzgl. PHP beschäftigt hat;

            Offensichtlich nicht mit PHP. denn sonst hätte er die Probleme, die er sieht, gelöst.

            Jo, ich geh dann mal ins Büro, aber sowas möchte ich demnächst nicht mehr beim Frühstück lesen, das ist mir einfach zu doof.

    2. gudn tach!

      Ein Argument ohne sinnvolle Alternative ist nicht sehr viel wert. Oder hab ich deine Alternativen zu PHP irgendwo überlesen?

      "Für argumentationstauglichere Anekdoten und Fakten siehe tnx.nl/php ff."

      auf http://tnx.nl/php wird eine genannt. und da 迪拉斯 (nicht nur aber) vor allem im bereich perl sehr gute beitraege liefert, liegt doch eine vermutung recht nahe... ;-)

      prost
      seth

      1. Ich grüsse den Cosmos,

        auf http://tnx.nl/php wird eine genannt. und da 迪拉斯 (nicht nur aber) vor allem im bereich perl sehr gute beitraege liefert, liegt doch eine vermutung recht nahe... ;-)

        Mir war ziemlich klar, das die Anspielung auf PERL geht. Wenn ich allerdings bedenke, das man mit PERL wesentlich mehr schaden anrichten kann als mit PHP, weil wesentlich tiefer ins System des Rechners eingreife, kann ich viele der Argumente nicht nachvollziehen.

        Wenn jemand nicht programmieren kann, ist das Ergebnis immer problematisch, egal, welche Programmiersprache. Und PHP seh ich noch am harmlosesten, weil die Beschränkungen auf dem Server am grössten sind.
        Dabei gehe ich von den "Ich-hab-nen-9,99€-vServer-und-bin-ein-Webhoster"-Kiddies aus, die ja doch weit verbreitet sind.

        Möge das "Self" mit euch sein

        --
        Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
        ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
        1. Wenn ich allerdings bedenke, das man mit PERL wesentlich mehr schaden anrichten kann als mit PHP, weil wesentlich tiefer ins System des Rechners eingreife, kann ich viele der Argumente nicht nachvollziehen.

          Häh?

          Wenn jemand nicht programmieren kann, ist das Ergebnis immer problematisch, egal, welche Programmiersprache. Und PHP seh ich noch am harmlosesten, weil die Beschränkungen auf dem Server am grössten sind.

          Häh? Was heisst denn für Dich "programmieren können"? Very strange...

          Dabei gehe ich von den "Ich-hab-nen-9,99€-vServer-und-bin-ein-Webhoster"-Kiddies aus, die ja doch weit verbreitet sind.

          Ist das eine Selbstreflektion?   ;)

          1. Ich grüsse den Cosmos,

            Häh? Was heisst denn für Dich "programmieren können"? Very strange...

            Das heisst für mich, ein Projekt planen, strukturieren und umsetzen, und zwar so, das es keine Gefahr in Form von Sicherheitslücken darstellt.
            Das dir sowas nicht bekannt ist, spricht deutliche Worte.

            Ist das eine Selbstreflektion?   ;)

            Weiss du irgendwas, was mir entgangen ist oder versucht du nur, mich irgendwie dumm anzumachen?

            Möge das "Self" mit euch sein

            --
            Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
            ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
            1. Häh? Was heisst denn für Dich "programmieren können"? Very strange...
              Das heisst für mich, ein Projekt planen, strukturieren und umsetzen, und zwar so, das es keine Gefahr in Form von Sicherheitslücken darstellt.
              Das dir sowas nicht bekannt ist, spricht deutliche Worte.

              Er hat gefragt: 'was bedeutet "programmieren können" *für dich*'! Wenn er das nicht weiß, bedeutet höchstens, dass er es von dir noch nicht erfahren hat.

              --
              Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.
              Self-Code: sh:( ch:? rl:( br:> n4:( ie:{ mo:) va:) de:> zu:} fl:| ss:| ls:~ js:|
  4. echo $begrüßung;

    • aggressiv abzuraten, aber natürlich immer sachlich zu bleiben

    Diejenigen, die die Macken kennen, brauchst du nicht zu überzeugen. Die anderen wirst du nicht durch verbale Gewalt zum Umdenken bringen. Als ich das erste Mal hier im Forum andere beobachtete, wie sie L. ohrfeigten, war ich sofort auf der Seite des Opfers. Nicht die Ohrfeigen waren es, die mich umdenken ließen ...

    • PHP wird von der Firma Zend als unternehmenstauglich angepriesen, obwohl es gewissen Erwartungen, wie schmerzlose Unterstützung von Unicode oder Erweiterung ohne ständige Neukompilierung, selbst in seiner fünften Hauptversion nicht entspricht.

    Du solltest die Unicode-Unterstützung nicht an Versionsnummern festmachen. PHP ist auf dem Weg dahin. Der Umstieg auf Unicode-Unterstützung ist meines Erachtens weltweit gesehen ein Prozess, der noch läuft.

    • Die ein- und ausschaltbaren Merkmale in php.ini sind ein Albtraum, wenn man portable Programme schreiben will.

    Mit solchen pauschalen Aussagen wirst du keinen Blumentopf gewinnen. Präzisiere das, z.B. anhand von Beispielen, für die es keine Umgehungslösung gibt und für Features die nicht ab Version 6 sowieso weggefallen sein werden.

    • Der Umfang von PEAR ist ein schlechter Witz. Wenn man was vernünftiges braucht, z.B. für Unittest oder eine tatsächlich funktionierende Library für Datum und Zeit, muss man doch eine allgemeine Websuche durchführen und nichts ist gewonnen.

    Auch schon wieder eine viel zu allgemeine Aussage. PEAR trägt an den Altlasten, zu PHP4 kompatibel zu sein. Es gibt genügend andere Frameworks für PHP. Außerdem schickt sich gerade das Zend Framework an, ein gutes und modernes Framework werden zu wollen.

    • Der niederländische Channel zur Webentwicklung auf freenode war im Jahr 2002 voll mit bornierten, ignoranten PHP-Fanatikern, die einen Freund von mir ob seiner herausfordernden Fragen schmähten. Ich durfte mir dann bei Gelegenheit das Gejammer anhören.

    Das ist kein Alleinstellungsmerkmal von PHP. Da wirst du für alle Lebenslagen die gleichen bornierten Fan- und Fanatikerklubs finden.

    • Ich habe im Bekanntenkreis immer wieder festgestellt, dass PHP-Programmierer, die schon länger als ein Jahr Praxiserfahrung haben, immer noch keinerlei Einsicht in das große Bild zeigen - wissen nichts über Internet-RFCs, können nicht mal richtig HTTP. "Hauptsache funzt" ist kein Anlass zum Stolz, sondern kindisch.

    Jemand, der kein grundlegendes Verständnis und Talent für's Programmieren hat, wird das nicht plötzlich haben, wenn er die Sprache wechselt.

    Abschließend sei gesagt, dass ich hoffe, es ist mir am Ende möglich, PHP-Nutzer zu erziehen, einen Umdenkvorgang einzuleiten, die Augen für guten Stil und durchdachte Programmierung zu öffnen, vor bösen Fallen zu bewahren, ...

    Wärst du sehr verwundert, wenn ich nicht an den umwerfenden Erfolg deiner Aktion glaube?
    Was sind denn die praktischen Alternativen zum Einsatz von PHP? Welche Provider bieten denn Zugang (und nicht zuletzt auch kostenlosen) zu Systemen mit ähnlich leichten Einstiegshürden wie PHP an? Perl und Python findet man gelegentlich als eher stiefmütterlich behandelte Dreingabe an. Das sind keine guten Voraussetzungen für einen Umstieg mit Erfolgserlebnis.

    Experten, die ähnlich wie ich denken, sind eingeladen, sich in die Aktion nach eigenem Ermessen einzubringen.

    Nach meinem Ermessen versuche ich ja schon die Leute zum sorgsameren Programmieren anzuregen. :-)

    echo "$verabschiedung $name";

  5. Hallo,

    [langer Beitrag weggelassen]

    Abschließend sei gesagt, dass ich hoffe, es ist mir am Ende möglich, PHP-Nutzer zu erziehen, einen Umdenkvorgang einzuleiten, die Augen für guten Stil und durchdachte Programmierung zu öffnen, vor bösen Fallen zu bewahren, ...

    dieser letzte Satz ist meiner Ansicht nach der vernünftigste deines ganzen Postings.
    Sicher, man kann mit PHP viel Mist machen. Aber ebenso kann man, wenn man es umsichtig und verantwortungsvoll einsetzt, Großes damit leisten. Man mag daher meinetwegen den sorglosen, unbekümmerten Einsatz von PHP verteufeln, aber den den Einsatz an sich.

    Ich bin eher der Ansicht, man müsste dafür sorgen, dass die PHP-Programmierer auch *wissen*, was sie da tun. Das Grundlagenwissen fehlt oft, da stimme ich dir zu. Das fängt mit der Einrichtung von PHP und der Einstellung gewisser Parameter an (ich denke an Kandidaten wie register_globals und magic_quotes), zieht sich über Grundlagen von TCP/IP und Applikationsprotokollen (meist HTTP) bis hin zum generellen Verständnis einer Client/Server-Architektur.

    Ich möchte also nicht grundsätzlich von PHP abraten, sondern die Anwender für die Schwachstellen von PHP und für ihre eigenen Wissensdefizite sensibilisieren. Wenn man dann noch einigermaßen logisch-systematsich denken kann und beim Schreiben ein wenig Ordnung hält, ist auch PHP nichts Schlimmes.

    So long,
     Martin

    --
    Computer funktionieren grundsätzlich nicht richtig.
    Wenn doch, hast du etwas falsch gemacht.
    1. Ich möchte also nicht grundsätzlich von PHP abraten, sondern die Anwender für die Schwachstellen von PHP und für ihre eigenen Wissensdefizite sensibilisieren. Wenn man dann noch einigermaßen logisch-systematsich denken kann und beim Schreiben ein wenig Ordnung hält, ist auch PHP nichts Schlimmes.

      Habe ja auch wenig Ahnung von PHP und dessen "Sicherheitsphilosophie", aber hast Du Dich denn schon einmal irgendwann zu PHP-Themen geäussert?

  6. Hallo,

    • aggressiv abzuraten [...]
    • PHP [...]

    Naja, ich finde PHP ganz OK. Man hat sehr schnell ein Erfolgserlebnis, auch wenn man kein Diplom-Informatiker ist. So ist das halt: so wie der Computer im Leben aller immer wichtiger wird, so wird vieles Benutzerfreundlicher und immer mehr können "aktiv" sein. In Zukunft wird man vielleicht die meisten Webdesigner und -Programmiere nicht mehr benötigen, weil das Erstellen einer Webseite so einfach geht, wie eine E-Mail zu schreiben.

  7. Experten, die ähnlich wie ich denken, sind eingeladen, sich in die Aktion nach eigenem Ermessen einzubringen.

    Jow, mach ich, bist Du dieser funky Esser?

  8. Sup!

    Klar ist PHP ("Pubertierende Hauptschüler programmieren") schlecht.
    Es ist quasi das "BASIC" der Web-Template-Sprachen.
    Darum wird es auch von allen Webhostern relativ billig angeboten und darum ist es auch so weit verbreitet.

    Ich denke nicht, dass man dagegen anschreiben kann, auch wenn hin und wieder das eine oder andere Skript exploited wird.

    Dennoch ist es natürlich aller Ehren wert, es zu versuchen. Wir brauchen unverbrauchte, junge, mutige Recken, die wider den PHP-Wahnsinn streiten! Viel Erfolg!

    Gruesse,

    Bio

    --
    Never give up, never surrender!!!
  9. Hallo 迪拉斯,

    ich kenne keine Programmiersprache, in der man automatisch guten Code schreibt. Man darf die Sprache nie mit den Programmierern verwechseln, die sie benutzen. Die einfache Lernkurve in php ist natürlich auch ein Nachteil, da sie suggeriert, Programmieren sei in drei Tagen gelernt. Schlechter Code wird aber auch in allen anderen Sprachen geschrieben. Auch in Java lässt sich nicht verhindern, Antipatterns wie das Schweizer Messer (Eine große Klasse kann alles) zu verwenden oder ein schlechtes Errorhandling zu betreiben.

    Also zurück zur Sprache und nicht zu den Programmierern:

    Unicode: Ja, sehnlichst erwünscht, kommt in php6

    register_globals und ein paar andere Einstellungen weg: Wird auch Zeit, kommt in php6

    Einheitliche Funktionsnamen: Dringend nötig, kommt vielleicht nie, Stichwort Abwärtskompatibilität. Schade!

    Namespaces: Wäre für Enterprice extrem nützlich, we'll see ...

    ... und sonst?

    ... und Deine Alternativen?

    ... und warum so ein sinnloses Postulat?

    Gruß
    Olaf

  10. Hellihello 迪拉斯,,

    allein die Alternative in Deinem Posting fehlt komplett. Ruby, Perl, Shell-Skripte als cgi? Das wiederum stimmt mich eher misstrauisch. Du scheints - auch aus persönlichen Motiven - eher gegen etwas zu sein als für etwas.

    Dadurch verwäscht sich vielleicht auch Dein Blick fürs Pragmatische: was kann ein Anfänger brauchen, was braucht der Profi? Es klingt ein bisschen so, als wollte ich meinem Kind das Fahren auf dem rostigen Dreirad verbieten, weil es später damit keine Radrennen bestreiten könne. Für "echte" Informatiker, die dann auch die entsprechenden Ansprüche haben, ist eine Programmiersprache doch eh nur Mittel zum Zweck.

    Gruß,

    frankx

  11. In Solidarität mit der Aktion in den aktuellen Schlagzeilen, habe ich vor, in zwei Wochen

    Och nee, bitte nicht. Wir brauchen hier nicht zu jedem Themenbereich Eiferer, die ständig einwerfen, wie doof die jeweilige Technik eigentlich ist und wie toll doch ihre präferierte.

    Solche Sorgen will ich haben, dass ich bei »$Programmiersprache ist doof«-Spielchen mitmache. ;) Wie kommt man auf solche Ideen? Wenn man sonst nichts zu tun hat und einem extrem fad ist? Was habe ich für ein Glück, dass es in »meinem« Bereich, JavaScript, solche »Meine Sprache ist toller als deine«-Nerdbattles nicht gibt, denn zu JavaScript gibts keine Alternativen - außer Nicht-JavaScript. ;)

    Davon abgesehen könnte man natürlich gegen jede Sprache einen Prozess führen, was man nicht alles doof daran findet (und man wird wohl auch einiges finden). Einen wirklichen Nährwert hat das nicht, es sei denn, man bringt sich dort ein, wo die Sprache weiterentwickelt wird. Jedenfalls nervt es diejenigen, die die Sprache einsetzen, eher, als dass sie sie nicht mehr benutzen.

    Mathias

    1. Gähn, Morgen!

      In Solidarität mit der Aktion in den aktuellen Schlagzeilen, habe ich vor, in zwei Wochen

      Och nee, bitte nicht. Wir brauchen hier nicht zu jedem Themenbereich Eiferer, die ständig einwerfen, wie doof die jeweilige Technik eigentlich ist und wie toll doch ihre präferierte.

      Nun ja, die Kritik war ja recht substanziiert. Wenn da tatsächlich oft gutmeinende Stümper am Start sind, die der "Funzt ja"-Fraktion angehören, so wäre das sicherlich kein Merkmal eines gelungenen Projekts. Das Gutgemeinte ist ja bekanntlich der ärgste Feind des Richtigen.

      Deprimiert hat uns besonders folgender Kritikauszug:
      "Der niederländische Channel zur Webentwicklung auf freenode war im Jahr 2002 voll mit bornierten, ignoranten PHP-Fanatikern, die einen Freund von mir ob seiner herausfordernden Fragen schmähten. Ich durfte mir dann bei Gelegenheit das Gejammer anhören."

      Was ist da eigentlich so tough, dass die Unicode-Unterstützung unzureichend ist, mit "globalen Variablen" (LOL) Probleme entstehen und Sicherheitslücken en masse vorzuliegen scheinen? Ist doch nur HTTP und ein bisschen Scriptsprache.

  12. Hallo,

    http://developers.slashdot.org/article.pl?threshold=3&mode=nested&sid=07/02/20/0144218
    http://news.google.com/news?hl=en&q=php+month+esser
    In Solidarität mit der Aktion in den aktuellen Schlagzeilen, habe ich vor, in zwei Wochen, in Threads, in denen es mir geeignet erscheint, unter Zuhilfenahme von Textbausteinen:

    Ich glaube kaum, dass sich Stefan Esser als Initiator des »Month of PHP Bugs« solche Solidarität wünscht. So wie ich seine Äußerungen verstanden habe, will er damit zur Verbesserung von PHP beitragen und nicht gegen dessen Verbreitung vorgehen.

    • aggressiv abzuraten, aber natürlich immer sachlich zu bleiben
    • Alternativen aufzuzeigen und darauf hinzuweisen, wie sie bequemer, verständlicher, sicherer, einfacher, konzeptionell tauglicher etc. sind

    Du hast das wichtigste Kriterium für die Wahl von PHP vergessen: Die große Verbreitung.

    Mal sehen, ob ich das auch einen Monat durchhalte. Jedenfalls kann ich PHP und seinem Umfeld kaum gutes abgewinnen. Die Probleme sind dermaßen gehäuft, dass ich keine Skrupel habe, zu fordern, dass es nicht mehr ausreicht, *für* bessere Lösungen zu sein (und implizit PHP zu dulden), sondern aktiv *gegen* die Nutzung vorzugehen.

    Hast du keine wichtigeren Sorgen? Es zwingt dich keiner PHP zu nutzen, Support dafür zu geben oder dich sonst irgendwie damit zu beschäftigen. Für wen hältst du dich eigentlich, dass du meinst anderen Leuten vorschreiben zu müssen, welche Programmiersprachen sie zu verwenden haben?

    • Der niederländische Channel zur Webentwicklung auf freenode war im Jahr 2002 voll mit bornierten, ignoranten PHP-Fanatikern, die einen Freund von mir ob seiner herausfordernden Fragen schmähten. Ich durfte mir dann bei Gelegenheit das Gejammer anhören.

    Weil in irgendeinem niederländischen Channel irgendwelche Leute, die PHP mögen, ein Problem mit deinem Freund haben, ist das also ein Grund »aktiv *gegen* die Nutzung [von PHP] vorzugehen«?

    • Ich habe im Bekanntenkreis immer wieder festgestellt, dass PHP-Programmierer, die schon länger als ein Jahr Praxiserfahrung haben, immer noch keinerlei Einsicht in das große Bild zeigen - wissen nichts über Internet-RFCs, können nicht mal richtig HTTP. "Hauptsache funzt" ist kein Anlass zum Stolz, sondern kindisch.

    Vielleicht solltest du deine Definition des Begriffs »Programmierer« überdenken. Ob am Ende einer Entwicklung ein gutes Ergebnis herauskommt, hängt davon ab, ob die Entwickler programmieren können, die verwendete Programmiersprache ist da nachrangig. PHP ist für Hobby-»Progger«, die mal eben etwas »funzendes« zusammenbasteln wollen, wegen der weiten Verbreitung und der anfangs recht steilen Lernkurve zwar häufig erste Wahl, ich bezweifle aber, dass es für die Qualität der dabei entstehenden Programme einen dermaßen großen Unterschied machen würde, wenn eine andere Programmiersprache verwendet würde.

    Für argumentationstauglichere Anekdoten und Fakten siehe tnx.nl/php ff.

    Es streitet ja keinen ab, dass es viele mögliche Kritikpunkte an PHP gibt. Aber wie schon gesagt, wenn dich das dermaßen stört, ignoriere es einfach. Es gibt ja auch die Möglichkeit, die komplette Kategorie PHP in deiner persönlichen Benutzeransicht hier im Forum auszublenden.

    Grüße,

    Johannes

    1. Ich glaube kaum, dass sich Stefan Esser als Initiator des »Month of PHP Bugs« solche Solidarität wünscht. So wie ich seine Äußerungen verstanden habe, will er damit zur Verbesserung von PHP beitragen und nicht gegen dessen Verbreitung vorgehen.

      http://www.heise.de/newsticker/meldung/82467

      Stefan Esser sieht einige grundsätzliche Schwächen in PHP, die er auch - wie es sich eigentlich gehört - grundsätzlich bearbeitet sehen möchte. Auf der anderen Seite sitzen Leute, die zu "Sozialverhalten" tendieren oder gar geschäftliche Interessen verfolgen; zumindest wünschen beide Gruppen dieser Seite an den Symptomen herumzudoktorn, statt bspw. in Systemkernnähe einige Anpassungen vorzunehmen (mit der Folge, dass quasi in exponentiell anwachsendem Umfang weitere Anpassungen vorzunehmen wären - LOL - was wiederum das gesamte Projekt schwächen könnte).

      Du hast das wichtigste Kriterium für die Wahl von PHP vergessen: Die große Verbreitung.

      Heroin und Koks sind auch ziemlich verbreitet. Aber gut, funzen ja auch.   ;)

      Mal sehen, ob ich das auch einen Monat durchhalte. Jedenfalls kann ich PHP und seinem Umfeld kaum gutes abgewinnen. Die Probleme sind dermaßen gehäuft, dass ich keine Skrupel habe, zu fordern, dass es nicht mehr ausreicht, *für* bessere Lösungen zu sein (und implizit PHP zu dulden), sondern aktiv *gegen* die Nutzung vorzugehen.

      Hast du keine wichtigeren Sorgen?

      Ist doch ein ehrenhaftes Vorhaben.

      Es zwingt dich keiner PHP zu nutzen, Support dafür zu geben oder dich sonst irgendwie damit zu beschäftigen. Für wen hältst du dich eigentlich, dass du meinst anderen Leuten vorschreiben zu müssen, welche Programmiersprachen sie zu verwenden haben?

      "Hast Du keine anderen Sorgen?", "Für wen hältst Du Dich eigentlich?" - LOL

      • Der niederländische Channel zur Webentwicklung auf freenode war im Jahr 2002 voll mit bornierten, ignoranten PHP-Fanatikern, die einen Freund von mir ob seiner herausfordernden Fragen schmähten. Ich durfte mir dann bei Gelegenheit das Gejammer anhören.

      Weil in irgendeinem niederländischen Channel irgendwelche Leute, die PHP mögen, ein Problem mit deinem Freund haben, ist das also ein Grund »aktiv *gegen* die Nutzung [von PHP] vorzugehen«?

      Wir haben das so interpretiert, dass dem "Sozialverhalter" hier eine prima Angriffsfläche geboten werden sollte. Um sich als "Sozialverhalter" zu exponieren und so...

      Es gibt ja auch die Möglichkeit, die komplette Kategorie PHP in deiner persönlichen Benutzeransicht hier im Forum auszublenden.

      In diesem Sinne, Cheers!

      1. Ich grüsse den Cosmos,

        Stefan Esser sieht einige grundsätzliche Schwächen in PHP, die er auch - wie es sich eigentlich gehört - grundsätzlich bearbeitet sehen möchte.

        Und wieso macht er das nicht? Was hindert ihn daran, selbst das PHP zu ändern und entsprechend zu verbreiten? Dieses Verfahren gibt es sehr oft, als Beispiel seih der Linuxkernel 2.4 genannt, der immer in zwei Linien entwickelt wurde.

        Reden können viele, ändern wird sich deshalb nichts.

        Heroin und Koks sind auch ziemlich verbreitet. Aber gut, funzen ja auch.   ;)

        Wenn du das so genau weisst, erklärt das einiges ......

        Ist doch ein ehrenhaftes Vorhaben.

        Klar, etwas aus einer Überzeugung, die bisher nicht begründet wurde, zu tun, ist sicher sehr Ehrenhaft.

        Möge das "Self" mit euch sein

        --
        Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
        ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
        1. Stefan Esser sieht einige grundsätzliche Schwächen in PHP, die er auch - wie es sich eigentlich gehört - grundsätzlich bearbeitet sehen möchte.

          Und wieso macht er das nicht? Was hindert ihn daran, selbst das PHP zu ändern und entsprechend zu verbreiten?

          Sorry, aber das Argument "Mach doch selbst!" wenn etwas angemängelt worden ist, kann zwar gerade noch in sozialem Kontext mit einigem Wohlwollen durchgehen lassen, ist aber ansonsten, hüstel, wir formulieren es mal möglichst positiv, "wenig hilfreich".

          Ist doch ein ehrenhaftes Vorhaben.

          Klar, etwas aus einer Überzeugung, die bisher nicht begründet wurde, zu tun, ist sicher sehr Ehrenhaft.

          Eine Brgündung liegt ja vor. Wenn diese nicht anerkannt oder gar erkannt wird, bestätigt das den Kritiker.

          1. Ich grüsse den Cosmos,

            Sorry, aber das Argument "Mach doch selbst!" wenn etwas angemängelt worden ist, kann zwar gerade noch in sozialem Kontext mit einigem Wohlwollen durchgehen lassen, ist aber ansonsten, hüstel, wir formulieren es mal möglichst positiv, "wenig hilfreich".

            Nicht "mach doch selbst", sondern "kümmere dich darum, das es erledigt wird".
            Die Abspaltung der zweiten Kernel-Linie bei Linux war ja auch der Grund, das es Differenzen mit Linus gegeben hat. Ähnliches ist mit Mambo und Joomla passiert.

            Wer solchen Einfluss auf ein Projekt hat, der hat die Möglichkeit, Programmierer für sich zu begeistern, die die eigenen Ideen umsetzen. Wenn diese Umsetzung dann sinnvoll ist, wird sie auch eingesetzt.
            Das dazu mehr gehört, als nur grosse Reden zu schwingen, ist klar. Das der zeitaufwand aber auch nicht viel Höher ist, als Reden zu schwingen, ist genauso klar.

            Möge das "Self" mit euch sein

            --
            Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
            ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
            1. Wer solchen Einfluss auf ein Projekt hat, der hat die Möglichkeit, Programmierer für sich zu begeistern, die die eigenen Ideen umsetzen. Wenn diese Umsetzung dann sinnvoll ist, wird sie auch eingesetzt.
              Das dazu mehr gehört, als nur grosse Reden zu schwingen, ist klar. Das der zeitaufwand aber auch nicht viel Höher ist, als Reden zu schwingen, ist genauso klar.

              Schön, dass wir solche ad hoc-Entwickler haben, die statt "Reden zu schwingen" jederzeit für eine Hey Joe-Entwicklung bereitstehen. Und zwar vermutlich dabei sehr effektiv, höchst effizient und super-schnell den Job weghauen.