• “Buchtipp” – PHP Quick & Dirty

    von am 17. Mai 2010

    Lange musste ich überlegen, wie ich das Buch von Marcus Straßer ankündigen werde. Meine Erwartungen waren wirklich gut, denn unter dem Titel PHP Quick & Dirty habe ich mir ein schön provokatives Buch vorgestellt, dass erklärt wann man mit gewissen Hacks seinen Code doch noch ein Stück schicker bekommt. Obwohl eigentlich habe ich keine Ahnung, was ich mir vorgestellt habe. Ich war eben neugierig und freudig gespannt.

    Beim Lesen des Buches standen mir leider oft die Haare zu Berge. Ich habe selten so ein Buch gelesen. Dummerweise bin ich kein Mensch, der gerne Bücher zerreißt, aus diesem Grund habe ich gedacht, ich lasse den Autor das selbst übernehmen. Ich habe mir mal ein paar Zitate aus dem Buch genommen, die ich euch präsentieren will. Ich denke, danach habt ihr einen ganz guten Eindruck der Lektüre.

    41iw623WsrL._SL500_AA300_
    … Klassen sind eine feine Sache, aber sie lohnen sich eigentlich erst dann, wenn Sie wirklich vorhaben, ihre Funktionen an zahlreichen unterschiedlichen Stellen in Ihrer Programmierung zu verwenden …
    Auch wenn sich mächtige Entwicklungsumgebungen, also große IDE-Programme [...] nur selten für das schnelle und effiziente Arbeiten eignen … (a.d.R. gemeint war z.B. Eclipse)

    Wann immer sie Daten sammeln oder ausgeben wollen, sollten sie sich frage: Kann ich das nicht als Array machen?

    Copy & Paste und Search & Replace sind Ihre Freunde. So viel wie möglich zu kopieren und einzufügen ist kein Zeichen eines schlechten Programmierstils, sondern ein wichtiges Mittel zum effektiven Programmieren …

    Und noch ein Stück Source Code:

    <b>Die neusten Einträge</b>
    <?  $sql = "SELECT entry_id, entry_title FROM entries ORDER BY entry_date";
      $teaser_entries = $db->query( $sql );
      if ( count( $teaser_entries ) > 0 ) foreach ( $teaser_entries as $teaser_entry )
      {
    ?>
        <?= $db->str_unesc( $teaser_entry['entry_title']; ?> <br />
    <?
      }
    ?>
    
    entry_title

    Keine Ahnung, ob ihr bei den Sätzen auch eine Gänsehaut bekommt, so wie ich. Falls nicht, könnt ihr das Buch gerne kaufen. Ansonsten lasst die Finger von.

    Nils Langner

    Auch wenn Ihr es mir nicht glauben werdet, aber ich habe nichts gegen PHP. Ich rege mich einfach nur gerne auf. Ok so schlimm ist es auch nicht. Eigentlich wollte ich schon immer einen Blog haben und da ...

    Zum Profil von Nils Langner

    31 Kommentare »


    • Andi
      am 17. Mai 2010 um 08:14 Uhr

      Wow! Ein weiteres Beispiel, warum ich den getürkten Rezensionen beim großen Fluss nicht vertraue. Dort ist die Bewertung “etwas” anders ausgefallen: Durchschnittliche Kundenbewertung 5.0 von 5 Sternen (5 Kundenrezensionen)

      Auf der anderen Seite hält das Buch ja, was es verspricht: PHP Quick & Dirty! ;)


    • Alex
      am 17. Mai 2010 um 08:18 Uhr

      Ich frage mich, ob Sachbücher nicht manchmal von anderen Sachkundigen korrekturgelesen werden? Offenbar nicht.
      Können wir noch mehr Zitate bekommen, die sind echt gut!


    • stietze
      am 17. Mai 2010 um 08:38 Uhr

      Q’n'D. In der Tat.

      Vor allem das Codebeispiel.
      Das unten in der genial verpackten Echo- Ausgabe (mit ekligem <?=) hinter str_unesc() die Klammer zu fehlt, ist wahrscheinlich auch so richtig, oder? :)

      Waldmannsheil, für keine 10€ würde ich mir das Ding kaufen.


    • Alex
      am 17. Mai 2010 um 08:40 Uhr

      Aber noch schlimmer ist ja, dass es Leute gibt die das Buch empfehlen:
      http://www.guru-20.info/2010/02/22/php-quick-dirty/

      Ich werde mich nun verstärkt an deine Empfehlungen halten Nils. Habe schon einige tolle Bücher über deine Beiträge gefunden.


    • Christian
      am 17. Mai 2010 um 08:42 Uhr

      hey, bei amazon hat es 5 sterne bekommen *hrhr*


    • Alex
      am 17. Mai 2010 um 09:15 Uhr

      Hallo,

      du hattest vor längerer Zeit mal in einem Post das Buch angekündigt. Ich habs mir dann in der Buchhandlung mal angeschaut. Einige Passagen fand ich ganz interessant, aber der Großteil hat mich auch, sagen wir mal überrascht ;-)

      Ich finde das Buch besonders für Anfänger gefährlich, da der Abschnitt über Copy&Paste echt logisch klingt. Jedenfalls wenn man keine praktische Erfahrung hat ;-) Nach 2 Jahren PHP programmieren würde ich nie Copy&Paste machen und auch sonst jedem davon abraten. Das hat noch nie fehlerfrei funktioniert und meistens sind diese Fehler dann auch noch äußert schwer zu finden :-(

      Kleine Nebenbemerkung noch über deinen Artikel über Code Smells im aktuellen PHP-Magazin. Sehr interessant, aber ich hätte mehr praktische Beispiele zum nachmachen gewünscht. Also konkrete Benutzung der Tools, etc.

      Alex


    • Sebastian
      am 17. Mai 2010 um 09:20 Uhr

      Mal eine andere Frage: Könnt ihr für einen PHP-Anfänger und nicht-Programmierer (lediglich html und css-Kenntnisse) eine gute PHP-Einsteigerlektüre empfehlen? Danke!


    • Andi
      am 17. Mai 2010 um 09:43 Uhr

      Alex scheint ja ein sehr verbreiteter Name zu sein.^^ ;)


    • Max Stockner
      am 17. Mai 2010 um 09:50 Uhr

      Kein wunder das PHP teils so einn miesen ruf hat, bei solchen Büchern :(

      Das errinert mich an das Barcamp Salzburg wo auch die ganzen Bücher in augenschein genommen wurden, und böseste sachen entdeckt wurden. ein buch hatte alles auf deutsch übersetzt inklusive der pdo methoden namen :D


    • Andre Moelle
      am 17. Mai 2010 um 10:35 Uhr

      Bei dem Titel kann man sich gar nicht über das Buch ärgern, denn es hat das erfüllt, was man davon erwartet hat, denn schnelle Lösungen bekommt man vor allem dann, wenn man nicht nachdenkt – ist doch klar, dass da kein sauberer Code entsteht.

      Die einzige Frage, die ich mir stelle: Meint er das ernst? Wenn ja, dann ist es schon zu traurig, um sich darüber zu amüsieren…


    • Julian
      am 17. Mai 2010 um 10:35 Uhr

      Naja… das Buch erfüllt halt was es verspricht, ist doch auch was oder??

      Unglaublich, wie kann man solche Blindheit auch noch in ein Buch drucken? Es gibt aber sicher viele Leute die das unterstützen… habe schon genug von diesem Typ kennengelernt. Traurig aber wahr. Da scheidet sich die Spreu vom Weizen!


    • Me
      am 17. Mai 2010 um 10:47 Uhr

      “Know-how ist blau”…so wie der Author beim schreiben?


    • Paloran
      am 17. Mai 2010 um 13:27 Uhr

      Also soweit ich das nach einem kurzen durchstöbern in der Buchhandlung beurteilen kann, lernt man in dem Buch wirklich wie man “quick und dirty” programmiert. Und da gehört Copy & Paste und Search & Replace nunmal dazu…


    • David Thalmann
      am 17. Mai 2010 um 15:19 Uhr

      Genau wegen solchen Bücher meint mein “Chef”, er wäre der Super-Guru im PHP Programmieren und Klassen wären nur schnickschnack XD

      Gänsehaut


    • Kim
      am 17. Mai 2010 um 15:19 Uhr

      Da kann ich nur wieder meinen Lieblingsspruch platzieren. Die Wahrheit liegt vermutlich irgendwo dazwischen. Ich kenne einige Riesenprojekte, denen ein wenig mehr Quick and Dirty ganz gut täte, aber das was Deine Zitate andeuten, macht mir auch Gänsehaut.

      Eine gute IDE ist selbst bei Quick and Dirty-Projekten ein Mehrgewinn, daher kann man die Aussage bzgl. der IDE getrost in die Tonne kloppen.

      Schön also, dass Du “Buchtipp” in Anführungszeichen festhälst. So ein Buch dürfte indes fatal sein für Programmier-Anfänger.


    • Lukas
      am 17. Mai 2010 um 16:05 Uhr

      Ich verstehe nicht, warum ihr euch alle über das Buch aufregt. „Quick & Dirty“ und „schnelles Programmieren“ sagt doch, worum es in dem Buch geht. Seinen Zweck scheint es auch zu erfüllen, nämlich dem Leser wie angepriesen beizubringen, „auf die Schnelle zu programmieren“.

      Warum regt man sich denn nun als Softwaretechniker über das Buch auf? Dass es mit gutem Softwaredesign nichts am Hut hat, hätte ich beim angepriesenen „dreckigen“ Programmierstil auch nicht erwartet.


    • Paloran
      am 17. Mai 2010 um 18:23 Uhr

      Ich weiß ja nicht ob eine IDE so einen großen Mehrgewinn bei sehr schnell programmierten Projekten mit sich bringt. Es dauert teilweise länger bis diese geöffnet ist als dass man zum Copy & Paste programmieren benötigt^^


    • stietze
      am 17. Mai 2010 um 19:09 Uhr

      @Lukas:

      Ich finde, das genau solche Programmierbücher den Anfänger derart schädigen können. Meine Frage ist, warum es für die Nische Q’n'D in Softwareprogrammierung überhaupt Bücher gibt? Den Bereich “Quick” kann man mit langjähriger Erfahrung optimieren, den Bereich “Dirty” sollte man überhaupt erst gar nicht versuchen zu erklären.

      Ich kenne Programmierer, ‘deren Lieblingsaufgabe’ es beim Programmieren ist, fertigen Code zu kopieren und einzufügen, und JEDESMAL, JEDES VERDAMMTE MAL, muss ich mich dann mit den Bugs rumschlagen und sie ausmerzen.

      So ist meine Ansicht.


    • Lukas
      am 17. Mai 2010 um 21:36 Uhr

      @stietze

      Wie man so ein Buch schreiben kann, ist mir allerdings auch ein Rätsel – möglichst schnell und einfach „drauf los“-Programmierung führt selten zu guten Ergebnissen.

      Der Titel scheint jedoch treffend zu sein. Wer als PHP-Anfänger in den Laden geht und die Auswahl zwischen einem „Quick & Dirty“-Buch und einem ordentlichen PHP-Standardwerk hat, der muss selbst wissen, was er möchte.


    • Markus Wolff
      am 17. Mai 2010 um 22:31 Uhr

      @Nils: Wie dick ist das Buch? Also nicht in Seiten, sondern in Zentimetern… vielleicht taugt es ja als Türstopper, oder um es unter ein wackeliges Tischbein zu klemmen…


    • Bartek
      am 17. Mai 2010 um 23:15 Uhr

      Jetzt habt euch mal nicht so! Das Buch ist bestimmt als Satire gemeint!


    • Andi
      am 18. Mai 2010 um 07:38 Uhr

      Ich muss schon zugeben, das war bisher der witizgste Artikel auf phphatesme. <3 it!


    • stietze
      am 19. Mai 2010 um 11:09 Uhr

      @Lukas

      Okay, da geb ich Dir recht!


    • hakre
      am 20. Mai 2010 um 02:57 Uhr

      Wenn man etwas mit einem array erledigen kann, ohne treudoof sich in einer klasse zu verkünsteln, dann muss das noch nichtmal dirty sein. und wenn schon, man kann später immer noch refaktorisieren. das ist wie wenn man ne skizze zeichnet – nur das mann keine zeit verschwendet den bleistift in die hand zu nehmen (falls hier jemand damit noch arbeitet).

      also erst denken, bevor man sich einen auf sein eigenes können per kommentar runterholt. krtik ist sicherlich berechtig, in Grauzonen aber besonders schwierig.


    • duck
      am 6. März 2011 um 23:40 Uhr

      Was ist denn an dem Code so schlimm, warum man Gänsehaut bekommt?


    • David Thalmann
      am 8. März 2011 um 23:38 Uhr

      @duck:
      1. PHP & HTML vermischt (lassen wir aber mal durchgehen, weil Codebeispiel und daher vielleicht sogar hilfreich, damit einem der Kontext klarer wird)
      2. <?= als Shorthand für <?php echo … sowie <? statt <?php ist generell nicht empfehlenswert, da diese je nach PHP-ini Einstellung nicht erlaubt sind (wobei man bei Webspace oft kein Zugang zu der PHP-ini hat, siehe dazu die short_open_tag Direktive).
      3. Kein Code ident :)
      4. Wenn im SQL-Statement schon nur die benötigten Felder ( da fehlen die Klammern vom if-Statement, also if (…) { foreach (…) { … } }
      6. Statt wird benutzt

      Reicht Dir das? Klar, gewisse Punkte sind halt nach meinem persönlichen Code-Stil falsch, darüber lässt sich streiten.

      Grüsse


    • David Thalmann
      am 8. März 2011 um 23:39 Uhr

      Oh, HTML ist erlaubt…
      zu Punkt 6:
      Statt dem HTML-Tag strong wird b (für bold) verwendet.


    • duck
      am 9. März 2011 um 13:40 Uhr

      @David Thalmann

      Als Argument für ein Schlechtes Buch, reicht es mir nicht. Bin kein PHP Programmierer. Für mich klingt das ehr nach schlechtem Programmierstil. Was zum Teil, ich nenne es mal schlechtem “Design” an PHP liegt.
      Jeder macht es wie er will und es gibt zu viele “lasche” Regeln.
      Dazu kenne ich kein Buch, wo es keine Fehler oder schlechte Beispiele gibt!

      Viel schlimmer finde ich das ein Verlag ein Buch als “Know-how ist blau” herausgibt. Dabei ist er ehr ein Grundlagen BUch das EINFACHE Planen von PHP Projekten darstellt.


    • David Thalmann
      am 9. März 2011 um 14:01 Uhr

      @duck In allen Punkten geb ich dir recht. Nur: ich glaube Nils wollte nicht nur wegen dem Codebeispiel das Buch “anprangern”, sondern wegen Sätzen wie “Copy & Paste ist gut”, “IDE’s eignen sich nur selten zum Produktiven arbeiten” und “Klassen sind eine feine Sache, aber lohnen sich meist nicht”.

      Lehrbücher sollten einen guten Programmierstil vermitteln, ein Art “Vorbild” sein. Das was da proklamiert wird, ist in meinen Augen einfach nur falsch.


    • jahu
      am 29. Juli 2011 um 21:39 Uhr

      ich bekomme eher gänsehaut und essensauswurf beim lesen solcher rezensionen von irgendwelchen realitätserschwerern. das es das buch überhaupt gibt ist lobenswert und natürlich macht copy&paste sinn. es ist zwar nicht besonders gut zu lesen aber trotzdem ein dankenswertes unterfangen. und für jemanden, dem bei dem begriff klassen und ide nicht unbedingt einer abgeht genau richtig, um eine webseite möglichst noch in diesem leben fertig zu kriegen.


    • Philipp Scheit
      am 24. September 2011 um 12:00 Uhr

      So ein Buch muss natürlich auch das halten, was der Titel verspricht. Wenn es erklären soll, wie man in PHP Quick & Dirty programmiert, ist dieses Code-Beispiel sicherlich ein Paradebeispiel für Applikationen, die man am Besten nur einmal baut und dann nie wieder.

      Kommentare wie der von jahu zeigen mir, dass es definitiv auch Abnehmer für solche Praktiken gibt. Wenn das Buch also erklären soll, wie man möglichst schnell “zum Ziel” kommt, klingt das alles doch sehr sinnvoll :)

      Aber …
      Hat man wirklich ein Projekt was man einmal baut und dann nie wieder anfasst? Hat man wirklich ein Projekt, dessen Code man nur selbst verstehen muss (und ist man “selbst” noch der selbe “selbst” wie in 2 Jahren später?). Ist es immer eine gute Idee einfach MVC links liegen zu lassen?
      Wenn ja, fände ich es interessant von diesen Projekten zu hören. Meiner Erfahrung nach, gibt es diese nämlich nicht. Und gerade diese, die man am schnellsten und in QND-Style programmiert hat sind – nach Murphys Gesetz – genau diese, die Jahre später nochmal Updates vom Kunden verlangen.
      Dann muss man sich nur die Frage stellen, habe ich jetzt – auf die Sicht von x > 2 Jahren im Endeffekt mit meiner Lösung ohne IDE, ohne MVC, ohne Denken, ohne Kommentare, mit viel Copy n Paste und komplett ohne Klassen tatsälich mehr Zeit gespart? Und was mache ich beim nächsten Update?

      Wenn das im Buch klar würde, fände ich, wäre es ein gutes Buch (geht leider aus Deiner Rezension nicht ganz hervor). Denn dann wäre es ein Buch welches sagen würde: QND: ja! … aber …

    RSS Feed für Kommentare zu diesem Artikel. TrackBack URL

    Hinterlasse einen Kommentar

    Werbung
    PHP Magazin
    Ausgabe 02/2010

    Dieses Mal mit Artikeln zu den Themen OpenSocial und Apache Shindig, Graphentheorie, Smarty3

    t3n
    Ausgabe 19

    Social Media (R)evolution. Weitere Themen sind noSQL, Crowdsourcing ...

    PHP Journal
    Ausgabe 2/2010

    PHP & Windows optimal nutzen, die besten PHP-CMS im Überblick, Google-API mit Zend Framework nutzen.

    Wir wurden schon öfters gefragt, ob man uns nicht irgendwie unterstützen kann. Die Antwort war immer einfach: Klar! Am einfachsten ist es eure nächsten Einkäufe bei Amazon über unsere Link abzuwickeln. Damit würdet ihr uns schon sehr helfen. Über Co-Autoren freuen wir uns aber noch mehr.