Startup MVPs – welche Programmiersprache eignet sich am besten?
| 4 Minuten
Startup MVPs – welche Programmiersprache eignet sich am besten?
22. März 2018 | 4 Minuten
Jedes Startup beginnt mit einer Idee. Um zu testen, ob die Zielgruppe diese akzeptiert, werden Testprodukte lanciert. Damit soll sich zeigen, ob das Produkt in einem realen Marktumfeld funktioniert (Proof of Concept).
Um das finanzielle Risiko möglichst niedrig zu halten, sollte man sich als Gründer also fragen, wie sich der Kern einer Idee als Produkt umsetzen lässt, so dass dabei möglichst wenig Ressourcen verwendet werden. Die Antwort darauf ist das Minimum Viable Product (kurz MVP). Auf Deutsch heisst das nichts anderes als ein auf das Wesentlichste reduziertes Produkt, welches trotzdem noch seine Kernaufgabe erfüllt. Erst wenn man mit den Basisfunktionen erfolgreich ist, sollte das Produkt schrittweise weiterentwickelt werden. So war Facebook im Jahr 2004, damals noch “The Facebook”, ein argloses Verzeichnis von Uni-Studenten. Viele der heute beliebten Funktion wurden erst später hinzugefügt, z.B. der Newsfeed (2006) und der “Like” (2009). Bei Web-Startups ist der MVP Ansatz inzwischen zu einem Standard geworden.
Damit man beim MVP wirklich nur das Minimum an Ressourcen einsetzt, sollte man stets die richtige Programmiersprache auswählen. Deshalb vergleichen wir hier drei Programmiersprachen und dazu passende Webframeworks: PHP Laravel, Ruby on Rails sowie JavaScript mit Vue.js.
PHP / Laravel – das eingespielte Team
PHP ist der Primus unter den Programmiersprachen. Mehr als 80 Prozent aller Websites weltweit nutzen die serverseitige Programmiersprache PHP. Viele grosse CMS-Systeme beruhen auf PHP, z.B. WordPress, Drupal oder Typo3, aber auch die E-Commerce-Applikation Magento. Trotz dieser Verbreitung gilt die Sprache bei vielen Entwicklern – vor allem bei der jüngeren Generation – als altmodisch.
PHP wird immer auf dem Server selbst ausgeführt – die Files werden in den Browsern der Nutzer als HTML ausgespielt. Für dynamische Single-View-Applikationen ist die Sprache daher – im Gegensatz zu beispielsweise JavaScript – nicht geeignet. Bei jeder Änderung einer Seite, oft ausgelöst durch einen Nutzer, muss das PHP-File neu geladen und ein HTML generiert werden. Dies führt zu einer starken Serverbelastung. Wieder spielt dies bei Onlineshops oder Publisher-Seiten häufig keine Rolle, denn die Produkte oder Artikel müssen nur einmal in HTML übersetzt werden. Danach kann der Nutzer dieses File im Browser-Cache speichern, ohne weitere Serverressourcen zu konsumieren. Daher kann PHP für diese Typen von Webseiten seine Stärken ausspielen.
PHP wird häufig in Kombination mit dem freien Web-Framework Laravel, eine Art Baukasten, das PHP wieder moderner machen soll, verwendet. Bei der Entwicklung des Laravel Frameworks war Ruby on Rails ein Vorbild. Das Framework gibt es seit 2011, mittlerweile in der Version 5.6. Rund um PHP Laravel existieren zahlreiche Erweiterungen und zusätzliche Services. Wer mit PHP Laravel arbeitet, kann auf eine hilfreiche Community und eine sehr gute Dokumentation zurückgreifen.
Zu den bekannten MVPs, welche basierend auf PHP gebaut wurden, gehören: Udemy, Wikipedia, und Facebook.
Ruby / Ruby on Rails – der Prototyping Liebling
Ruby ist vor allem bei der jüngeren Entwickler-Generation in den vergangenen Jahren beliebter als PHP geworden. Ein Grund: Als Objekt-orientierte Programmiersprache verwendet Ruby einen strukturierten Ansatz von Objekten und Aktionen – das hilft vor allem, mehrfach genutzte Objekte erneut in den Code einzuspeisen. Vordergründig wirkt die Sprache simpel, bietet aber laut dem Erfinder Yukihiro Matsumoto durchaus die Möglichkeit, komplexe Applikationen zu bauen.
Ruby on Rails (kurz: RoR) ist das älteste hier vorgestellte Framework. Es wurde 2004 auf Basis von Ruby geschrieben und ermöglicht ein beschleunigtes Bauen von Features. Das Framework folgt der Architektur des Model View Controller (MVC) – die Software wird in drei Komponenten geteilt: Datenmodell, Präsentation und Programmsteuerung. Dank dieser Trennung lassen sich spätere Änderungen und Erweiterungen isoliert implementieren, ohne die gesamte Applikation zu beeinflussen.
Kritisiert wird jedoch häufig, dass das Framework die Application Performance, resp. den Speed, verlangsamt und darum nicht immer zum Proof of Concept geeignet ist. Ruby on Rails ist – im Gegensatz zu Vue.js – immer weniger häufig verbreitet. Schuld daran ist vor allem eine Veränderung der Webentwicklung in den vergangenen Jahren: JavaScript Frameworks ermöglichen immer mehr Funktionalität im Frontend, womit das Backend und der Server stark entlastet werden. Im Hinblick auf die stetig wachsende Performance von Computern ist dies eine logische und sinnvolle Entwicklung. Ein Backend-Entwicklungssystem wie RoR kann hier längerfristig nur schwer konkurrieren.
Berühmte MVPs, welche basierend auf Ruby gebaut wurden, sind: Twitter, Hulu and Groupon.
Javascript / Vue.js – das Frontend Wunderkind
JavaScript wurde ursprünglich von Netscape entwickelt und wird häufig für die Darstellung, interaktiver, dynamischer Inhalte genutzt. Soll zum Beispiel ein Banner erscheinen, wenn der Nutzer 10% der Seite gescrollt hat, kommt im Normalfall JavaScript zum Einsatz. Als Objekt-basierte Programmiersprache können Objekte mit JavaScript individuell nachgeladen werden – statt wie bei PHP die komplette Seite neu zu laden. Dies entlastet die Server und lässt JavaScript Applikationen besser skalieren.
JavaScript ist auch für Anfänger gut geeignet, denn der Umfang der Regeln ist relativ überschaubar. Eine weitere Besonderheit von JavaScript: Im Gegensatz zu den anderen vorgestellten Sprachen werden die Skripte auf den Rechnern der jeweiligen Nutzer ausgeführt. Obwohl es JavaScript schon länger gibt, trifft die Programmiersprache den Puls der Zeit.
Vue.js war 2017 das beliebteste JavaScript-Framework, da es die Vorteile von React (aktuelles Facebook Framework) und Angular (Google Framework) vereint und dabei verständlicher ist: Single-Page-Webanwendungen lassen sich bei Vue.js mit dem Model View Viewmodel (MVVM) erstellen, einer Variante des MVC mit weniger Implementierungsaufwand und besseren Testmöglichkeiten. Dies ist ein Vorteil von Vue.js, womit das Framework vor allem gegenüber Ruby on Rails punkten kann. Es können verschiedene Gruppen zugleich an der Entwicklung arbeiten, da UI-Design und Logik-Entwicklung getrennt sind.
Gelobt wird immer wieder die Effizienz und Performance von Vue.js, was besonders bei grossen Applikationen sehr wichtig ist. Insgesamt erscheint das Framework gut für die Zukunft gerüstet, denn viele Funktionen lassen sich im Frontend bauen.
Für eine “Hall of Fame” von weltbekannten Applikationen ist Vue.js noch zu jung. Auf der Seite made with vue.js sieht man jedoch bereits sein Potenzial.
Die Entscheidung – Eure Wahl
Welche Programmiersprache die richtige für euer Startup-Projekt ist, hängt davon ab, wie Eure Anwendung funktionieren soll. Das Framework muss aber zu eurem Projekt passen – darum solltet Ihr Aufwand und Anforderungen so genau wie möglich definieren.
Für E-Commerce, Publishing oder anderen Projekten mit mehrheitlich statischen Seiten, empfiehlt sich meistens PHP. Möchtet Ihr aber Single-Page-Applikationen mit dynamischen Objekten entwickeln, dann ist das Framework Vue.js wohl die richtige Wahl.
Falls Ihr Hilfe bei der Wahl einer Programmiersprache mit passendem Framework braucht, könnt Ihr uns gerne kontaktieren.