Tian: PHP oder Python?

Huhu,

ich stehe momentan doch vor einer kleinen Weggabelung und weiss noch nicht so recht, welchen Weg ich denn nun einschlagen soll.
Mir wurde kürzlich von PHP abgeraten und empfohlen es doch lieber mit Python für meine Webanwendungen zu probieren. Allerdings kenne ich mich mit Python aktuell gar nicht aus.

Nun ist meine Frage: Wodrin unterscheiden sich die beiden Sprachen? Welche der beiden Sprachen ist schneller? Wie stehts um die Sicherheit? Welche der beiden Sprachen ist im Umgang mit MySQL z.B. besser geeignet (um z.B. ganz normale Anfragen zu bearbeiten)?

Und last but not least natürlich: Welche findet ihr besser?

Schreibt euch die Finger wund. :D

LG aus Bremen
vom Tian

  1. Für Seo´s ist es einfacher in php zu programmieren, da man den Inhalt mit PHP paaren kann und google html richtig gut rankt.

    Python ist eher etwas für eine lokale Anwendung im Intranet.

    Ich empfehle dir die Artikel auf Wikipedia durchzulesen

    1. Hallo Matschauge.

      Für Seo´s ist es einfacher in php zu programmieren, da man den Inhalt mit PHP paaren kann und google html richtig gut rankt.

      Was aber rein gar nichts mit der serverseitig verwendeten Technologie zu tun hat. Und „SEO“ ist sowieso out. „HO“ ist in.

      Python ist eher etwas für eine lokale Anwendung im Intranet.

      Python erfüllt die gleichen Zwecke wie PHP und teilweise sogar deutlich mehr.

      Einen schönen Donnerstag noch.

      Gruß, Mathias

      --
      ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
      debian/rules
      1. Huhu,

        Was aber rein gar nichts mit der serverseitig verwendeten Technologie zu tun hat. Und „SEO“ ist sowieso out. „HO“ ist in.

        ehm, eine ganz schnelle und direkte Frage: Was ist HO?? Noch nie gehört.

        1. Hallo Tian.

          Was aber rein gar nichts mit der serverseitig verwendeten Technologie zu tun hat. Und „SEO“ ist sowieso out. „HO“ ist in.

          ehm, eine ganz schnelle und direkte Frage: Was ist HO?? Noch nie gehört.

          Human Optimization, also die Optimierung für den Menschen. Denn für diesen sollten Websites eigentlich gemacht werden. Maschinen mögen helfen, Inhalte und zugehörige Sites aufzufinden, sich auf diesen Seiten zurecht finden muss sich dann aber der Mensch.

          Einen schönen Donnerstag noch.

          Gruß, Mathias

          --
          ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
          debian/rules
          1. genau das sehe ich anders was bringt eine Seite mit viel Flash und tollen aplikationen, wenn sie keiner Findet.

            90% aller nutzer benutzen Suchmaschinen. Bist du oben, hast du Traffic, bist du unten, kannst du einpacken...

            Somit ist SEO in, aber natürlich sollte man das HO nicht außer acht lassen.

            1. Hallo Matschauge.

              genau das sehe ich anders was bringt eine Seite mit viel Flash und tollen aplikationen, wenn sie keiner Findet.

              Was bringt eine Seite mit viel Flash und tollen Applikationen, wenn man sie nicht benutzen kann? Gute Seiten werden immer gefunden, extra Anstrengungen für hohe Suchrankings sind hier überhaupt nicht erforderlich.

              Somit ist SEO in, aber natürlich sollte man das HO nicht außer acht lassen.

              Kann ich akzeptieren.

              Einen schönen Donnerstag noch.

              Gruß, Mathias

              --
              ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
              debian/rules
        2. Hallo

          ... Und „SEO“ ist sowieso out. „HO“ ist in.

          ehm, eine ganz schnelle und direkte Frage: Was ist HO?? Noch nie gehört.

          Eigentlich wollte ich schreiben: "Handelsorganisation" (staatliche Ladenkette in der DDR), aber nachdem die Wikipedia einiges mehr an Bedeutungen hergibt, bittesehr: http://de.wikipedia.org/wiki/HO. :-)

          Tschö, Auge

          --
          Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
          (Victor Hugo)
          <dingdong /><dingdong /><toc /><toc /><toc /><shout>Florence!</shout>
          Veranstaltungsdatenbank Vdb 0.1
    2. Für Seo´s ist es einfacher in php zu programmieren, da man den Inhalt mit PHP paaren kann und google html richtig gut rankt.

      Ich empfehle dir die Artikel auf Wikipedia durchzulesen

      Huhu,

      Ich hatte mir die Artikel dort durchgelsen und mich auch schon nach Literatur zu dem Thema erkündigt. Allerdings habe ich bisher nirgendwo genauere Auflistungen zu Vorteilen etc. gefunden.
      Das mit dem SEO Erstellen einer Webseite ist eine durchaus interessante Sache, da ich mich momentan an eine Comunity Seite wagen möchte, auf der es recht viele Querverweise und wohl auch recht intensive DB Anfragen gebend wird.

      Hast du evtl. ausser den Wikipediaartikeln noch andere Ressourcen wo ich mehr Infos zu Python (vs PHP) bekommen könnte? Wäre Dir sehr dankbar.
      Das ganze auch sehr sehr gerne im Bezug auf Webanwendungen (im speziellen Communitieseiten?!). :)

      LG

  2. echo $begrüßung;

    ich stehe momentan doch vor einer kleinen Weggabelung und weiss noch nicht so recht, welchen Weg ich denn nun einschlagen soll.

    Diese Entscheidung kann dir keiner abnehmen. Es spielt ja nicht nur die technische Seite eine Rolle sondern auch die psychologische. Während Sprache X technisch ganz toll ist, gefällt dir daran vielleicht deren Umgang mit Y nicht.

    Und dann sind da noch die Gegebenheiten des Providers zu beachten, auf dem das fertige Projekt mal laufen soll. Während PHP in einigermaßen aktuellen Versionen aufgrund der großen Nachfrage durch die Kunden vorhanden ist, muss man Python mit der Lupe suchen, um dann festzustellen, dass es recht stiefmütterlich behandelt wird (uralte Version, kaum Dokumentation im Support-Bereich [*] [**]).

    Mir wurde kürzlich von PHP abgeraten und empfohlen es doch lieber mit Python für meine Webanwendungen zu probieren. Allerdings kenne ich mich mit Python aktuell gar nicht aus.

    Ändere das. Lies dir die ersten paar Kapitel eines Python-Buchs oder des Tutorials durch, um ein allgemeines Gefühl für die Sprache zu bekommen.

    Nun ist meine Frage: Wodrin unterscheiden sich die beiden Sprachen? Welche der beiden Sprachen ist schneller?

    Kommt auf die konkrete AUfgabenstellung an.

    Wie stehts um die Sicherheit?

    Die muss man bei jeder Programmiersprache beachten. Man kann die gleichen Lücken in allen Sprachen implementieren.

    Welche der beiden Sprachen ist im Umgang mit MySQL z.B. besser geeignet (um z.B. ganz normale Anfragen zu bearbeiten)?

    Das kommt ganz drauf an, was du unter "ganz normalen Anfragen" verstehst.

    [*] Ich meine nicht über Python selbst, sondern über den Umgang damit beim Provider.
    [**] Zugegebenermaßen kann ich hier nur über einen (großen) Provider reden, aber wenn man 1 & 1 zusammenzählt, wird es bei den anderen auch nicht besser ausschauen.

    echo "$verabschiedung $name";

  3. Hallo,

    Nunja, es gibt drei primäre Kriterien, an Hand derer man sich seine Programmiersprache aussuchen sollte:

    1. Gefällt mir die Programmiersprache? Das sollte nicht unterschätzt werden - eine Programmiersprache, die einem nicht gefällt, führt nur zu extrem viel Frust, wenn man sie verwenden muss.

    2. Kann ich das, was ich will, in der Programmiersprache realisieren? Zum Beispiel wäre es nicht unbedingt die beste Idee, CGI-Programme in Brainfuck zu schreiben. ;-)

    3. Kann ich die Programmiersprache in dem Zielumfeld einsetzen? Sprich, im Webbereich: Unterstützt mein Provider die Programmiersprache?

    Falls Du noch Deine Brötchen mit sowas verdienst, wäre noch ein vierter Punkt

    1. Kann ich mit der Programmiersprache genug Geld verdienen? (Sprich: Gibt's genug Leute, die meine Fähigkeiten in dieser Programmiersprache brauchen?)

    auch noch relevant.

    Mir wurde kürzlich von PHP abgeraten

    Aus welchem Grund wurde Dir abgeraten?

    Nun ist meine Frage: Wodrin unterscheiden sich die beiden Sprachen?

    Ich hatte zum Thema serverseitige Programmiersprachen vor kurzem bereits etwas geschrieben: http://forum.de.selfhtml.org/archiv/2007/4/t150196/#m975824 Vielleicht hilft's Dir ja.

    Viele Grüße,
    Christian

    1. Hallo,

      selbige zurueck :D

      1. Gefällt mir die Programmiersprache? Das sollte nicht unterschätzt werden - eine Programmiersprache, die einem nicht gefällt, führt nur zu extrem viel Frust, wenn man sie verwenden muss.

      Das wird sich natuerlich zeigen, wenn ich mich da nah mit befasse. Da ich momentan kaum Ahnung von Python und die Möglichkeiten dieser Sprache habe, wollte ich erstmal irgendwie in Erfahrung bringen, ob Python überhaupt etwas fuer meine Zwecke ist (wobei wir bei Punkt 2 wären :) )

      1. Kann ich das, was ich will, in der Programmiersprache realisieren? Zum Beispiel wäre es nicht unbedingt die beste Idee, CGI-Programme in Brainfuck zu schreiben. ;-)

      Ich möchte mich momentan an ein Communityprojekt rantasten, bei dem es recht viele dynamische Querverweise und recht aufwändige DB Anfragen geben wird aber sonst fast nur "ganz normale" Eingabedaten verarbeitet werden und ein wenig Fileupload und Handling der Files ... halt so das was man meistens bei einer Communityseite macht. :)

      1. Kann ich die Programmiersprache in dem Zielumfeld einsetzen? Sprich, im Webbereich: Unterstützt mein Provider die Programmiersprache?

      Da wird es keine Probleme geben, da ich einen V-Server besitze auf dem ich so ziemlich tun und lassen kann, was ich möchte. :)

      1. Kann ich mit der Programmiersprache genug Geld verdienen? (Sprich: Gibt's genug Leute, die meine Fähigkeiten in dieser Programmiersprache brauchen?)

      Nun ... grundsätzlich werde ich meine Grundkentnisse in PHP auch ausweiten, verdienen momentan eher mit Filmen mein Geld als mit Webseitenprogrammierung, aber ich suche momentan nach einer guten, schnellen Sprache allein schon für mich persönlich, um mich weiterzuentwickeln.

      Mir wurde kürzlich von PHP abgeraten

      Aus welchem Grund wurde Dir abgeraten?

      Leider wurde das nicht sehr detailliert ausgefuehrt. Aber 3 Gründe sollten Geschwindigkeit, Funktionabilität und Sicherheit.

      Ich hatte zum Thema serverseitige Programmiersprachen vor kurzem bereits etwas geschrieben: http://forum.de.selfhtml.org/archiv/2007/4/t150196/#m975824 Vielleicht hilft's Dir ja.

      Danke für den Beitrag.

      LG aus Bremen,
      Tian

  4. Hallo,

    Nun ist meine Frage: Wodrin unterscheiden sich die beiden Sprachen?

    Python ist eine richtig objektorientiert, PHP spielt einem das nur vor, auch wenn PHP5 da schon deutlich besser geworden ist. Deshalb ist es meiner Meinung nach wenn man sich erst einmal ein bischen eingearbeitet hat viel einfacher mit Python zu arbeiten als mit PHP. PHP dagegen gibt Anfängern schnell Erfolgserlebnisse.

    Welche der beiden Sprachen ist schneller?

    Eindeutig Python, afair je nach Anwendung um fast Faktor 7 oder so.

    Wie stehts um die Sicherheit?

    Beide haben natürlich Sicherheitslücken, aber von PHP Sicherheitslücken hört man andauernd.

    Welche der beiden Sprachen ist im Umgang mit MySQL z.B. besser geeignet (um z.B. ganz normale Anfragen zu bearbeiten)?

    Da gibt es wohl keine Unterschiede.

    Und last but not least natürlich: Welche findet ihr besser?

    Ruby! Naja wenn schon nicht Ruby dann würde ich auf jeden Fall Python PHP vorziehen.

    Jeena

    1. Und last but not least natürlich: Welche findet ihr besser?
      Ruby! Naja wenn schon nicht Ruby dann würde ich auf jeden Fall Python PHP vorziehen.

      Puhhh, okay ... wo liegen dann noch die Vorteile von Ruby? Habe ich auch schon mal etwas von gehört ... aber leider mehr nicht.

      1. Hallo,

        Puhhh, okay ... wo liegen dann noch die Vorteile von Ruby? Habe ich auch schon mal etwas von gehört ... aber leider mehr nicht.

        Naja es ist _richtig_ objektorientiert. Und es macht Spaß damit zu programmieren! Und es ist hip! Und es funktioniert so wie man es erwarten würde.

        Jeena

        1. *grins*

          Naja es ist _richtig_ objektorientiert. Und es macht Spaß damit zu programmieren! Und es ist hip! Und es funktioniert so wie man es erwarten würde.

          Python funktioniert nicht so, wie man es erwartet?! ;) Tut das überhaupt eine Programmiersprache :p

          1. Hi

            Naja es ist _richtig_ objektorientiert. Und es macht Spaß damit zu programmieren! Und es ist hip! Und es funktioniert so wie man es erwarten würde.

            Python funktioniert nicht so, wie man es erwartet?! ;) Tut das überhaupt eine Programmiersprache :p

            Ich denke das war eine Anspielung auf Perl. Von allen hier diskutierten Sprachen lässt Python wohl den wenigsten Interpretationsspielraum.

            bye
             LanX

          2. Hallo,

            Python funktioniert nicht so, wie man es erwartet?! ;)

            Naja nicht so wie ich es erwarten würde.

            Tut das überhaupt eine Programmiersprache :p

            Matz, der Ruby 'erfunden hat, hat es nach dem "principle of least surprise" gemacht und das merkt man der Sprache meiner Meinung nach deutlich an.

            Jeena

            1. Hi Jeena

              Python funktioniert nicht so, wie man es erwartet?! ;)
              Naja nicht so wie ich es erwarten würde.

              mich würde ein Beispiel interessieren ...

              tschau
               LanX

              PS: http://mjtsai.com/blog/2002/11/25/perl_vs_python_vs_ruby

              1. Hallo,

                mich würde ein Beispiel interessieren ...

                type(foo) oder str(foo), meine Klassiker, ich kann damit irgendwie nicht (so gut) umgehen dass es da auch Funktionen gibt. Mittlerweile weiß ich ja endlich auch dass es foo.__str__() gibt, aber wie kommt man denn auf __str__()? Oder

                def __init__(self, filename=None):

                Was hat das self da zu suchen? Sogar PHP4 hat sein $this ohne es auf diese komische Weise "holen" zu müssen. Was ich aber unglaublicht gut bei Python finde ist die Tatsache, dass es so viele wirklich unglaublich gute fertige Module für jeden nur erdenklichen Einsatzzweck gibt ohne jeden Pfurz nachinstallieren zu müssen.

                PS: http://mjtsai.com/blog/2002/11/25/perl_vs_python_vs_ruby

                "Also, I correctly guessed which classes “owned” the methods and whether they were mutators."

                Genau das meine ich, genau das gefällt mir an Ruby so gut, dass ich nicht jeden Pfurz nachgucken muss, es funktioniert so, wie ich es mir gedacht habe (natürlich nicht alles aber viel mehr als bei Python oder gar Perl).

                Jeena

                1. Hi

                  type(foo) oder str(foo), meine Klassiker, ich kann damit irgendwie nicht (so gut) umgehen dass es da auch Funktionen gibt. Mittlerweile weiß ich ja endlich auch dass es foo.__str__() gibt, aber wie kommt man denn auf __str__()?

                  es sind halt die speziellen Builtin-Methoden die jede Klasse hat, ich finde diesen __***__ Syntax aber auch furchtbar. Wahrscheinlich will man spätere Namenskonflikte mit user-definierten Methoden vermeiden.

                  def __init__(self, filename=None):

                  Ein guter Indikator dafür dass die Objektorientierung im ursprünglichen Sprachdesign noch fehlte, während Ruby mit Smalltalk als Vorbild designt wurde.

                  Was ich aber unglaublicht gut bei Python finde ist die Tatsache, dass es so viele wirklich unglaublich gute fertige Module für jeden nur erdenklichen Einsatzzweck gibt ohne jeden Pfurz nachinstallieren zu müssen.

                  Stimmt, die Ruby Community setzt aber auch einige Hoffnung auf eine Integration in Parrot. Wenn Perl6 kommt dann sollte es dann auch möglich sein die CPAN-Module von Ruby aus aufzurufen.

                  Perl-Module sind bestimmt nicht so einheitlich designt wie bei Python, da fehlte wohl das gute Vorbild ;).

                  Aber hat Python da quantitativ und qualitativ mehr zu bieten als Perl? Ich zweifle.

                  Tschau
                   LanX

                  1. http://www.timestretch.com/FractalBenchmark.html#9f64d6e94b7816f5c537a8804fa74197

                    aha Mandelbrötchen backen!

                    Perl und Python gleichauf, PHP faktor 2 und Ruby faktor 3 langsamer. Emacs Lisp nur faktor 4? Faszinierend!

                    gruß
                      LanX

  5. Hi Tian

    Mir wurde kürzlich von PHP abgeraten und empfohlen es doch lieber mit Python für meine Webanwendungen zu probieren. Allerdings kenne ich mich mit Python aktuell gar nicht aus.

    Letztendlich kann man dich nur richtig beraten wenn man weiß was du schon kannst und was du vorhast.

    Ich möchte neben dem bisher gesagten etwas historisierende Anmerkungen machen, die bei mir eine Rolle spielten.

    PHP ist eine hoch spezialisierte Sprache die auf den Servern mittlerweile wohl dominiert und ihre Anfänge (was man dem Syntax klar anmerkt) als Perl-Bibliothek hatte, Perl widerum erbt stark von Shell-Skripten, Unix-Tools wie "sed" und "awk" und C.

    Python ist ein logisch und konsequent durchdisignter allrounder mit dem man fast alles programmieren kann. Hat sein Vorbild in Modula  einer Weiterentwicklung von Pascal, das widerum akademische Wurzeln hat.

    Will mein weit tragende Projekte entwickeln die nicht nur im Webbereich angesiedelt sind sollte man sich für Python entscheiden. In Python kannst du sowohl GUI-Applikationen als auch Admin-skripte realisieren.

    Willst du schnelle Ergebnisse haben in kleinen begrenzten Web-Projekten haben und von einer großen Community von Webentwicklern profitieren nimm PHP.

    Ich persönich nutze Perl, aber kann das Anfängern nur bedingt empfehlen. http://www.linuxjournal.com/article/3882

    In der Hoffnung auf Perl6
      LanX

    1. Hi,

      In der Hoffnung auf Perl6

      Perl 6 erscheint voraussichtlich kurz nach Duke Nukem Forever ...

      Cheatah

      --
      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: No
      X-Please-Search-Archive-First: Absolutely Yes
      1. Hi

        Perl 6 erscheint voraussichtlich kurz nach Duke Nukem Forever

        in letzter Zeit haben sie extrem Beschleunigt, im wesentlichen wegen der privatinitiative einer Haskell-programmierenden Taiwanesin.

        In der zwischenzeit hat man ja wenigsten noch Ruby...

        Duke Nukem Forever

        kannte ich bisher nicht, aber jetzt weiß ich wenigstens wo du deine charmanten Umgang mit Neulingen erlernt hast ;-)

        bye
         LanX

        1. http://perl-6.de/

          "Es gibt noch keinen Release-Termin für Perl 6, nur einen Running Gag unter den Entwicklern: Perl 6 kommt an Weihnachten heraus, denn wenn es erstmal fertig ist ist jeder Tag Weihnachten."

          *fg*