Heutzutage gibt es Im Programmier-Dschungel unzählige Sprachen, Frameworks und Technologien. Da kann man als Neuling leicht die Übersicht verlieren. Beim Master21 Coding Bootcamp haben wir nun seit einem Jahr viele Anfragen von verunsicherten Anfängern erhalten. Wir empfehlen zuerst ein klares Ziel zu definieren und erst dann die Programmiersprache auszusuchen. Und zu guter letzt: dranbleiben. Sobald man eine Programmiersprache fliessend schreibt, kann man ohne grosse Schwierigkeiten eine andere lernen.
1. Entscheide dich für ein Projekt
Viele, die zu uns kommen, haben bereits verschiene Online-Tutorials ausprobiert, aber immer irgendwann aufgegeben. Wenn man jedoch dranbleiben möchte, braucht es mehr als gute Tutorials und Disziplin. Es braucht ein konkretes Ziel vor Augen um motiviert zu bleiben. Bei Master21 arbeiten Teilnehmer deshalb an einem eigenen Projekt. Hier verschiedene Programmier_Projekteideen von unseren Studenten:
Idee 1: Wähle ein Alltagsproblem, welches du lösen möchtest.
Beispiel: Bei einem Rails Girls Event, 2-tägiger Programmier-Workshop, hatte eine Teilnehmerin das Problem jeden Monat Lohnabrechnungen als PDFs herunterladen und manuell umbenennen zu müssen. Indem sie mit ihrem Coach 20 Zeilen Ruby Code schrieb, automatisierte sie die repetitive Aufgabe und spart sich fortan mehrere Stunden Arbeit jeden Monat.
Idee 2: Programmier die 1. Version selbst. (Sie muss nicht schön sein.)
Wenn du eine Business Idee hast, baue die erste, minimale Version selbst. Es könnte Jahre dauern bis du einen Entwickler findest, wie das Beispiel von David Crowley, Gründer von Foursquare zeigt. Er hat drei bis vier Jahre vergebens einen Entwickler gesucht um seine Ideen umzusetzen. Danach hat er sich selbst so viel programmieren wie nötig beigebracht um einen Prototyp zusammen zu hacken.
Die erste Version muss nicht schön sein, wie Twitter mit ihrem ersten Prototyp beweist:
Idee 3: Baue deine Webseite
Heutzutage, kann es nicht schaden eine eigene Website zu haben. Mit einem Website Creator wie Wordpress, Squarespace oder Jimdo bist du zwar schneller aber sehr gebunden an die Vorlagen. Der Lerneffekt ist einiges grösser, wenn du die eigene Seite programmierst. Du trainierst logisches Denken, lernst den Aufbau von Webseiten und verstehst den Zusammenhang von Technologien.
2. Entscheide dich für eine Programmiersprache
Welche Programmiersprache soll ich lernen? Diese Frage ist wie: “Soll ich Portugiesisch oder Spanisch lernen?” Es kommt darauf an, ob du auf Spanisch oder Portugiesisch mit dem Computer sprechen möchtest. Schlussendlich übersetzt der Computer alles in nullen und einsen, sogenannten Maschinencode. Es spielt keine grosse Rolle, welche Programmiersprache du lernst, da alle grundsätzlich das gleiche machen, nämlich mit dem Computer kommunizieren.
Einige Sprachen wurden geschrieben um Betriebssysteme zu bauen (Bsp. C), andere um iOS Apps zu programmieren (Bsp. Swift) und wieder andere um schnell Webapplikationen zu launchen (Bsp. Ruby on Rails).
Webapplikationen sind interaktive Webseiten, die man im Browser, auf dem Mobile oder Computer öffnen kann.
Es gibt high-level Sprachen wie Ruby oder Python. High-level Sprachen sind näher bei der menschlichen Sprache als bei der Computersprache. Ein Beispiele für eine low-level Sprache ist C. Da du wahrscheinlich nicht gleich planst ein Betriebssystem zu programmieren, empfehlen wir zuerst eine high-level Programmiersprache zu lernen. High-level Sprachen sind näher bei der menschlichen Sprache als bei der Computersprache. Somit musst du weniger Details spezifizieren und kannst dich aufs Essentielle fokussieren: Programmierkonzepte zu verstehen. Ausserdem siehst du schnell Resultate und bleibst motiviert.
Sobald du die Logik verstehst und eine Srache fliessend schreibst, kannst du einfach eine andere lernen.
Nehmen wir an du möchtest als erstes Projekt eine Webapplikation umsetzen. Hierbei unterscheidet man zwischen Frontend und Backend.
Frontend ist alles visuelle und besteht aus HTML, CSS und Javascript. (Wobei HTML und CSS keine Programmiersprachen sondern Markup-sprachen sind.) HTML gibt die Struktur vor, CSS definiert das Aussehen und Javascript animiert.
Python, PHP und Ruby sind Beispiele populärer Backend-Programmiersprachen. Django und Rails sind Beispiele von Frameworks geschrieben in Python respektive Ruby.
Ein Framework ist eine Ansammlung von bereits geschriebenen Programmen. Analogie: Du baust nicht das ganze Haus von Grund auf sondern nimmst, wo vorhanden, bereits vorgefertigte Bausteine.
Populäre Programmiersprachen kannst du aus der folgenden Stackoverflow Umfrage herauslesen. Stackoverflow ist eine Frage-und- Antwort-Plattform für Softwareentwickler. Ruby liegt auf dem 10. Platz. Dies ist einfach erklärbar, wenn man den Einsatz der anderen Sprachen anschaut:
- Javascript ist klar auf Platz eins, da sie die Standard-Programmiersprache im Web Browser ist, und deshalb von den meisten Webapplikationen mitbenutzt wird.
- SQL wird für Datenbankenabfragen und -aktualisierungen gebraucht. Jedoch bieten die meisten Programmiersprachen einen einfachen Adapter, der es erlaubt SQL z.B. in Ruby zu schreiben.
- Java und C# sind noch immer weit verbreitet sind in Grossunternehmen. Beide Sprachen verlieren jedoch seit Jahren an Beliebtheit.
- Python wird oft an der Uni gebraucht und PHP ist beliebt wegen Wordpress, welches auf PHP basiert.
- C und C++ werden oft für Hardware, z.B im Maschinenbau oder in der Robotik, verwendet.
- Ruby ist stark vertreten bei Startups und KMUs.
Da immer wieder neue Frameworks und Technologien auf den Markt kommen, ändert sich die Popularität von Sprachen schnell. Aus diesem Grund setzen wir bei Master21 auf Ruby, eine bewährte, simple und versatile Sprache.
Weitere Vorteile von Ruby:
- Die Sprache wurde erfunden um Programmierer glücklich zu machen. Viele andere Sprachen sind optimiert für die Maschine und nicht besonders schön oder simple. [DHH Video bigthink]
- Das bekannte und beliebte Framwork Rails ist in Ruby geschrieben. Rails erlaubt es einem in kürzester Zeit eine Webapplikation zu bauen. Twitter, Xing und Shopify sind Beispiele von Rails Apps.
- Ruby und Rails sind frei zugänglich (=Open Source) und werden konstant verbessert
- Ruby on Rails hat eine aktive und hilfreiche Community. Beispiele sind Rails Girls, Hello Ruby Book etc.
3. Lass dich nicht entmutigen - Bleib dran.
Programmieren ist nicht einfach, und man kommt sich oft dumm vor, wie auch das folgende Zitat zeigt:
“Some things in this world are just hard. When I am struggling with something, I sometimes think ‘Damn, this is hard for me. I wonder if I am stupid,’ and then I remember that I have a degree in astrophysics from Cal Tech; I must not be stupid.”
– Aaron Hillegass, Author of several programming books.
Programmieren ist lernbar, wenn man richtig vorgeht und nicht aufgibt. Erinnere dich daran, wieso du angefangen hast und dass du mit deinen neuen Fähigkeiten viele Probleme lösen kannst.
- Gib dir Zeit. Du musst nicht alles sofort verstehen. Gewisse Sachen ergeben erst im Nachhinein Sinn, wie auch Steve Jobs im untenstehenden Zitat sagt.
- Sei dir nicht zu Schade nach Hilfe zu fragen. Aus unserer Erfahrung helfen Programmierer gerne.
- Tausche dich mit anderen Anfängern aus. Auf Meetups trifft man zum Beispiel soche Leute. Eine Möglichkeit sind die Master21 Meetups, die monatlich am 1. Mittwochabend stattfinden.
Zusammenfassung
Wenn du programmieren lernen möchtest, fängst du am besten mit einem kleinen Projekt an. Dieses wird dir helfen dranzubleiben und den Fokus nicht zu verlieren. Danach, entscheide dich für eine Programmiersprache. Jeder Programmierer wird eine andere Meinung haben, welches “die beste Sprache” ist. Wir bei Master21 setzen auf Ruby als erste Sprache, weil sie sehr aussagekräftig und anfängerfreundlich ist. Zu guter Letzt, gib nicht auf. Programmieren ist nicht einfach aber sehr erfüllend sobald man Resultate sieht und Probleme lösen kann.
Falls du einen guten Überblick über die Web Entwicklung erhalten möchtest und gerne in einer Gruppe mit anderen Anfängern starten möchtest, schau dir unsere Coding Bootcamps an.
Falls dir dieser Blogbeitrag gefallen hat und du gerne auf dem Laufenden bleiben möchtest über neue Posts und Events, abonniere unseren Newsletter.