Welche Kenntnisse werden benötigt um Webseiten wie "trivago.de" oder "airbnb.de" zu programmieren?

5 Antworten

Ganz allgemein: 

  • HTML, CSS für die Seite an sich
  • Irgendeine Sprache fürs Frontend: Javascript ist da quasi-Standard, aber dazu gibt's noch einige Frameworks
  • Irgendeine Sprache fürs Backend: Javascript mit node.js, PHP, irgendwas .NET-mäßiges, Java, ... da gibt's einige Alternativen
  • Eine Datenbank, klassischerweise ein SQL-Dialekt

und daneben:

  • Volljährigkeit (und damit volle Geschäftsfähigkeit) und ein angemeldetes Gewerbe
  • Ein Team wäre auch nicht schlecht, schön wäre z.B. jemand, der sich um die Systemadministration, Gestaltung, Buchhaltung, rechtliche Aspekte, Support, ... kümmert und mehrere Programmierer schaffen mehr als ein Einzelkämpfer. ;)
  • Ein Startkapital für Arbeitsmittel, Lizenzen, Servermiete, usw.
procoder42  12.08.2015, 16:24

Die Hardcore Java Jünglinge verwenden im Frontend Java Server Pages ;)

0

programmiersprachen schön und gut aber für die erstellung solchen seiten wird  zudem ein massiver gebrauch von automatisierungsprozessen, deploymenttools, versionierungsystemen usw gemacht, selbst über das css wird ein präprozessor wie SASS gejagt und nochmals alles gebündelt, genauso fürs js mit coffescript, da schreibt niemand mehr pures css oder html... und vergiss nicht die serverseite mit reverse proxy, varnish cashing, load balancing, backups, usw... von aussen siehts immer einfach aus, dahiner läuft aber schon ne recht komplexe infrastruktur :D

mrhashpipeotto  12.08.2015, 16:33

airbnb haben ein eigenes github profil wo die eigene entwicklungen veröffentlichen, darin kann man sehen auf welche technologien die aufbauen,... java, ruby, javascript (client und server),.. https://github.com/airbnb

1

Für das Design HTML bzw. ein Programm, mit dem man Webseiten gestalten kann und CSS. Für die Funktionen PHP, insbesondere auch eine Datenbanksprache, z.B. MySQL.

HTML/CSS, JS und PHP reichen da nicht aus. Du musst ja ein ganzes Backend programmieren. Also:

  • Ruby on Rails
  • HTML
  • CSS/SCSS/LESS/SASS
  • Umgang mit Datenbanken, am Besten MongoDB
  • Umgang mit jeglichen Frameworks wie Node.js
ceevee  12.08.2015, 16:17

Und wozu braucht man Ruby on Rails (was eh schon mMn. eine furchtbare Sprache ist) und node.js, wenn man PHP hat?

0
mrhashpipeotto  12.08.2015, 18:11
@ceevee

hast du zeit ohne ende, bist alleinkämpfer und bist der typ "meine skripte sind die besten" dann nimm php, willst du dagegen agil und schnell arbeiten und fertige librarys verwenden und nicht alles selbst bauen, mit einer prof. infrastruktur (zb paketverwaltung/build tools,..) im rücken, am besten noch in einem team das aus mehr als 2 leuten besteht und das geordnet arbeiten soll, so nimm ruby oder node :D

2
fluffiknuffi  13.08.2015, 12:15
@mrhashpipeotto
hast du zeit ohne ende, bist alleinkämpfer und bist der typ "meine skripte sind die besten" dann nimm php, willst du dagegen agil und schnell arbeiten und fertige librarys verwenden und nicht alles selbst bauen, mit einer prof. infrastruktur (zb paketverwaltung/build tools,..) im rücken, am besten noch in einem team das aus mehr als 2 leuten besteht und das geordnet arbeiten soll, so nimm ruby oder node :D

Also mit anderen Worten, von moderner PHP-Entwicklung hast du keine Ahnung, möchtest aber gerne die von dir favorisierten Technologien promoten und erzählst daher einfach mal irgendwas. 

0
fluffiknuffi  13.08.2015, 12:18
@fluffiknuffi

@mrhashpipeotto Ich werde hier nicht ins Detail gehen daher nur ganz kurz: Paketverwaltung? Composer/Packagist haben sich durchgesetzt. Agil? Offensichtlich hat das nichts mit PHP zu tun. Fertige Librarys? Es gibt inzwischen viele verlässliche, etablierte. Carbon, Monolog, etc. etc. Und warum "Team" und "geordnetes Arbeiten" exklusive Ruby-Features sind werden wir wohl nie erfahren.

1
ceevee  13.08.2015, 16:53
@fluffiknuffi

PHP hatte zumindest vor ein paar Jahren einen schlechten Ruf, weil man damit ziemlich hässliche Dinge machen konnte, die aber trotzdem aus unverständlichen Gründen manchmal halbwegs funktionieren. Das begründet riesige Blogartikel wie diesen hier:

http://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/

Vielleicht denkt mrhashpipetto auch noch so und daher kommt seine Abneigung. 

Ich hab aber schon seit 'ner ganzen Weile nicht mehr mit PHP gearbeitet und weiß nicht, ob sich einige dieser Dinge inzwischen geändert haben. Außerdem denke ich, dass man mit einem Framework im Rücken auch aus PHP mehr rausholen kann. Die Arbeit mit Rapid Development Frameworks z.B. macht wirklich Spaß... der Kommentar von mrhashpipetto ist wirklich komisch, viele der Dinge, die er aufzählt, sind sprachunabhängig. 

0
mrhashpipeotto  13.08.2015, 23:56
@fluffiknuffi

Composer/Packagist haben sich durchgesetzt

@knuffi, hahaha der war gut, ja vor allem in der php welt, dann frag mal dort wer "composer" kennt, wenn du 1000 in der php community fragst und einer die frage mit ja beantwoten kann ist es schon viel hahaha,... das ding ist immer noch in der alpha und die 3 1/2 pakete die es dort gibt haben keine chance gegen die infrastuktur die sich node mit npm und ruby mit gem gebaut haben (weil das wird dort von JEDEM genutzt, rein zufällig kenn ich alle drei technologien gut, tausende projekte mit allen gebaut, und arbeite selbst ua auch in modernem php 5.6)

1
mrhashpipeotto  14.08.2015, 00:08
@ceevee

@ceevee, da hat sich nix verändert, in php kann man immer noch dinge machen die eigtl gar nicht möglich sein sollten :D aber ich sage ja nicht das man in php nicht auch "sauber" programmieren kann, mit einem gutem framework im rücken kann man auch dort sauber arbeiten (mach ich ja selbst auch), aber wer nutzt in der php welt ein framework und composer (nein laravel ist müll), diejenigen die sowas kennen und nutzen kann man in der php community an einer hand abzählen... (im gegensagtz dazu wer mit ruby arbeitet der arbeit auch in rails).... php wird nicht grundlos als die programmiersprache für nicht programmierer genannt :D

0
fluffiknuffi  15.08.2015, 18:44
@mrhashpipeotto

Ja es stimmt schon, man kann mit PHP viel Unfug treiben. Kann man mit C allerdings auch. ;) Nein klar, die negativen Seiten von PHP kann man nicht schön reden. 

Das Problem, dass in PHP das Rad oft schlecht "neu" erfunden wird, ist auch nicht von der Hand zu weisen.

Es stellst sich aber bei beiden Problemen die Frage der Sichtweise. Will man vermeintliche Problemen von PHP breitreten, stürzt man sich auf so was, schon klar. Aber ob das nun wirklich so sehr PHP-exklusive Probleme sind? Und selbst wenn: Warum sich auf das negative konzentrieren? Man kann einen Traktor als Waffe benutzen, aber es wäre doch reichlich absurd, deshalb nun zu sagen, Traktoren sind schlecht, oder? Man kann mit PHP "gut" programmieren, und man soll mit PHP gut programmieren! Ob nun wirklich eine schlechte Sprache ist PHP weil es vielleicht mehr schlechte Programmierer anzieht als andere Sprachen... ich kann das nicht beurteilen.

PHP entwickelt sich, wenn auch für meinen persönlichen Geschmack zu langsam, weiter. Damit verschwinden dann nach und nach auch einige Problemzonen. Beispiel: mysql-Extension ist schon länger deprecated, in PHP 7 dann aber wirklich nicht mehr verfügbar.

Das es in der PHP-Community zu inhomogene Ansichten gibt steht leider außer Frage. Nur muss man dann aber auch schauen, ob man nicht Birnen mit Äpfeln vergleicht, wenn man PHP mit Ruby on Rails vergleicht. Man kann wohl kaum bestreiten, dass es viele PHP-"Entwickler" mit geringem ähm nennen wir es Wissensstand gibt. Wenn bei Rails anteilig nicht so viele gibt - und ich denke schon, dass der Durchschnittsentwickler dort etwas versierter ist - dann kann man doch auch eine insgesamt höhere Qualität des "Community-Verhaltens" erwarten, oder nicht? PHP ist halt eine "Massensprache".

Ich weiß nicht, wer Frameworks und Composer nutzt, ich tue es. Aber irgendwie beißt sich da die Schlange doch selber in den Schwanz: Was genau kann nun PHP dafür, dass es weit verbreitet und damit attraktiv ist und Anfänger anzieht? Bzw. was sagt das über die Qualität der Sprache aus? Man könnte auch ebenso gut sage, die PHP-Community ist von zweifelhafter Qualität, und dem würde ich auch gar nicht unbedingt widersprechen wollen. Wenn man überlegt, wie jung Composer ist... 


3 1/2 pakete die es dort gibt haben keine chance gegen die infrastuktur die sich node mit npm und ruby mit gem gebaut haben 

Mit 3 meinst du 67 323? :'D https://packagist.org/statistics

NPM ist älter als Composer / Packagist und ja, kann wohl sein, dass es etablierter ist. Aber es gibt auf Packagist eine ganze Menge Packages (s. o.) - daran kann man die Qualität der Sprache nicht festmachen. Composer hat sich durchgesetzt gegenüber Pear / whatever - so war das gemeint. Mir ist es so was von egal was Kevin, 16, lernt seit zwei Monaten in der Schule PHP, mit dieser Sprache anstellt und was nicht. Soll er Composer nutzen oder nicht - mir so was von egal. Ich werde nicht mit ihm arbeiten müssen, so viel steht fest. Again, dass es schlechte PHP-Entwickler gibt ist kein Argument gegen die Sprache. Wenn dir Jemand ein tolles neues Auto schenkt, in dem eine Kiste steht, mit einem Warnschild "Gefährlich!" darauf, du es aufmachst, darinnen ein Feuerzeug, du damit herumspielst und dich verbrennst - ist dann das Auto schuld? Ja der Vergleich ist kein Geniestreich aber auf Schwächen zu schauen und Stärken außer Acht zu lassen ist Scheuklappendenken.

Warum Laravel "Müll" ist, wirst du mir vermutlich nicht verraten.

0
GustavAT  13.08.2015, 12:29

Wieso eine NoSQL DB? Ich glaube, dass für dieses Anwendungsgebiet ein relationales DB-Model z.B. Oracle oder MySQL besser geeignet ist.

0

Dafür musst du mehrere Programmiersprachen können. Mindestens html, CSS, php und SQL. Wahrscheinlich noch Java und eventuell Javascript

ceevee  12.08.2015, 16:16

Wozu genau braucht man denn Java, wenn man PHP hat?

0
procoder42  12.08.2015, 16:21
@ceevee

Weil man cool ist und einen Apache Tomcat nutzt und daher statt PHP Servlets schreibt ;)

0
ceevee  12.08.2015, 16:25
@procoder42

Die Frage war aber eher, warum man Java und PHP braucht. ;)

1
fluffiknuffi  13.08.2015, 12:19
@ceevee

Die Frage ist auch, warum mal wieder HTML (und CSS!) als Programmiersprache bezeichnet wird. Weil man in CSS mit calc was berechnen lassen kann? :D

0