Wenn Sie Ihre Fähigkeiten in einer bestehenden oder einer neuen Programmiersprache verbessern möchten, ist eine der besten Möglichkeiten, dies durch Coding Challenges zu tun.
Im Laufe der Jahre sind viele Plattformen und Websites entstanden, die spannende Herausforderungen für Programmierer aller Niveaus bieten. Ganz gleich, ob Sie eine neue Sprache erlernen oder Ihren Verstand in stressigen Situationen testen möchten – Coding Challenges können Spaß machen und gleichzeitig eine Prüfung sein.
Zu den Vorteilen, die die Arbeit an diesen Herausforderungen mit sich bringt, gehören neben dem Offensichtlichen auch bessere Problemlösungsfähigkeiten, ein tieferes Sprachverständnis und die Freude am Erlernen neuer Algorithmen. Wie Sie wissen, sind Algorithmen im Einstellungsprozess keine Seltenheit – wenn Sie sich also ein wenig damit auskennen, haben Sie vielleicht die Oberhand.
In diesem Beitrag stellen wir Ihnen einige der besten Websites und Plattformen vor, die es für Programmieraufgaben gibt. Einige sind für Anfänger geeignet, während andere sich an ein erfahreneres Publikum richten. Wir fügen auch ein paar Dinge hinzu, die Sie Ihren Kindern zeigen können, da kinderfreundliches Programmieren inzwischen auch sehr beliebt ist.
Edabit
Der einfachste Weg, etwas Neues zu lernen, ist die ständige Interaktion mit der Sache, die Sie lernen wollen. Das ist auch beim Programmieren der Fall. Die Lektüre der besten Bücher wird Ihnen null Wissen vermitteln, wenn Sie das Geschriebene nicht in die Praxis umsetzen.

Edabit ist eine etablierte Plattform, die mundgerechte Programmieraufgaben anbietet, mit denen Sie Ihre Programmierkenntnisse schnell verbessern können.
CodinGame
Spiele als Lernplattformen sind keine ganz neue Sache, aber es scheint jetzt viel mehr Akteure auf diesem Gebiet zu geben. CodinGame ist nur eine von vielen Plattformen, die Programmierherausforderungen in Form von Spielen anbieten. Anstatt einfach nur Code zu schreiben, bauen Sie stattdessen eine Spielumgebung auf. Der gesamte Code, den Sie schreiben, hat in gewisser Weise Einfluss auf den Verlauf des “Spiels”.

Im Nachhinein können Plattformen wie CodinGame Technikentwicklern viel über Ursache und Wirkung verraten. Und wie bestimmte Entscheidungen zu bestimmten Ergebnissen führen.
Dies ist nicht nur eine dieser billigen Websites, auf denen Sie schlampigen JavaScript-Code schreiben. CodinGame beinhaltet einige hochkarätige Algorithmen und hat zahllose Weltklasse-Coder, die sowohl neuen als auch erfahrenen Entwicklern helfen, Lösungen zu finden.
HackerRank
HackerRank ist ein Startup, das sich darauf konzentriert, Coding-Herausforderungen für Einzelpersonen und Organisationen anzubieten. Je nach Herausforderung erhalten Sie meist Anweisungen für ein Projekt, das Sie abschließen müssen, und es liegt an Ihnen, wie Sie es abschließen.
Derzeit können Entwickler Java, Python, JavaScript, PHP, C und SQL verwenden, um die gestellten Aufgaben zu lösen.

Wenn Sie Ihre Lösungen einreichen, bewertet die Plattform Ihre Einsendung automatisch anhand von Faktoren wie Genauigkeit. Danach werden Sie in der globalen Rangliste platziert, während Sie auf dem Weg dorthin Erfolge (Abzeichen) sammeln. Es gibt auch “Sprints”, was ein anderer Begriff für die von der Plattform veranstalteten Wettbewerbe ist.
House of Codes hat einen spannenden Artikel über die 50 besten Herausforderungen in Hacker Rank geschrieben. Wenn Sie neugierig sind, lohnt sich die Lektüre mit einer Fülle von Beispielen und Material.
Coderbyte
Coderbyte ist eine einzigartige App, die auf modernen Programmierpraktiken basiert. Ihr Hauptmerkmal sind die Coding Challenges, die Millionen von Menschen auf der ganzen Welt geholfen haben, bessere Entwickler zu werden. Im Gegensatz zu ähnlichen Apps auf dem Markt ist Coderbyte darauf ausgerichtet, Menschen dabei zu helfen, Probleme auf Branchenebene zu lösen.

Einer der Vorteile dieser Plattform ist, dass sie mit einigen der führenden Softwaremarken zusammenarbeitet. Z.B. Google, LogMeIn, HBO, PWC und viele andere. Wenn Sie jemals einen Job bei solchen Unternehmen an Land ziehen wollen, dann können Sie sicher sein, dass Coderbyte Ihnen die nötigen Herausforderungen bietet, um Ihre Fähigkeiten zu testen.
Sobald Sie sich registriert haben, können Sie aus Herausforderungen und Algorithmen wählen. Es gibt Hunderttausende von Lösungen, die von Nutzern eingereicht wurden und die Ihnen helfen können, ein viel breiteres Verständnis für bestimmte Programmierthemen zu bekommen.
Organisationen können sich anmelden und ihren Screening-Prozess verwalten. Wenn Sie eine registrierte Organisation werden, erhalten Sie Zugang zu zusätzlichen Tools, mit denen Sie jeden Entwickler individuell prüfen können.
Codewars
Das Schöne an einer konsequenten Programmierpraxis ist, dass Sie immer neue Wege finden, um Probleme zu lösen. Codewars macht sich diese Idee zunutze. Auf der Grundlage von “Katas” bietet die Plattform Übungen und Herausforderungen in einer Vielzahl von Sprachen.
Wenn Sie die besagten Übungen absolvieren, können Sie Punkte sammeln, aber auch überprüfen, wie andere Programmierer ein bestimmtes Problem gelöst haben.

Wenn Sie vorhaben, eine neue Sprache zu üben, dann ist Codewars eine hervorragende Website, die Sie zu Ihren Lesezeichen hinzufügen sollten.
Hier sind einige der unterstützten Sprachen:
- Clojure
- Rust
- Swift
- Python
- Haskell
- Shell
- JavaScript
- PHP
- Kotlin
- Scala
Und viele andere Sprachen sind im BETA-Programm, verfügbar, aber mit möglichen Engpässen.

Im Grunde genommen möchte Edabit eine Plattform anbieten, die die Kluft zwischen Anfängern und fortgeschrittenen Programmierern überbrücken kann. In der Roadmap finden Sie die vollständige Liste der Funktionen.
HackerEarth
HackerEarth ist eine bekannte Plattform, die Hackathons, Coding Challenges und verschiedene Arten von Wettbewerben veranstaltet.

Hier können Sie auch einige interessante Informationen über den Einstellungsprozess in modernen Unternehmen erhalten. Nicht alle, aber eine ganze Reihe der Herausforderungen, die Sie in der Datenbank von HackerEarth finden, können in einem Ihrer zukünftigen Vorstellungsgespräche gestellt werden.

Und wie ist das möglich? Nun, vor allem, weil HackerEarths eigentliches Ziel darin besteht, erstklassigen Technologieunternehmen Lösungen für die Personalbeschaffung anzubieten. Wenn Sie zu den Besten gehören wollen, müssen Sie sich mit den Besten treffen. Das ist eine Win-Win-Situation für Sie.
Programmr
Programmr ist ein dynamisches digitales Labor für Entwickler aller Stufen. Mit Programmr können Sie Code schreiben, ihn kompilieren und Projekte direkt von Ihrem Browser aus ausführen. Die Plattform unterstützt alle wichtigen Sprachen, die heute verwendet werden. Ganz gleich, ob Sie eine mobile Anwendung oder eine Datenbankstruktur ausführen möchten – Programmr hat den Mut, dies zu unterstützen.

Auf der Seite mit den Herausforderungen bietet Programmr einen eigenen Satz von Herausforderungen für Java, C , PHP, C#, Ruby, Python und iOS. Jedes Set umfasst 100 Herausforderungen, die nach Beliebtheit (basierend auf den Stimmen der Benutzer) und anderen Faktoren sortiert werden können.
Was diese Jungs von anderen unterscheidet, ist, dass Sie Ihre neu gewonnenen Erfahrungen nutzen können, um sofortiges Feedback zu erhalten, sei es ein Zertifikat für eine bestimmte Sprache oder einfach nur Feedback von bestehenden Benutzern.
Der Coding-Zug
Daniel Shiffman ist eine Ein-Mann-Armee, die großartiges Material zum Thema Programmierung erstellt und produziert. The Coding Train ist Daniels persönliche YouTube-Plattform, auf der er spannende und hilfreiche Videos zur Bewältigung von Programmierproblemen veröffentlicht.

Aber er hat einen interessanten Ansatz. Anstatt alles auf seiner Website zu hosten, nutzt er YouTube als Plattform für die Herausforderung und seine Website als Plattform für die Lösung.
Beachten Sie, dass seine Challenges auf P5.js und Processing basieren – zwei beliebte Lösungen, die in der Kunst und im Grafikdesign eingesetzt werden.
Wolfram-Herausforderungen
Wolfram ist eines der bekanntesten Unternehmen der Welt, das im Bereich der Computerwissenschaften tätig ist. Ihre Plattform hat viele durch ihre Möglichkeiten sprachlos gemacht.

Obwohl wir uns nicht auf Wolfram Alpha konzentrieren, wurde Anfang 2018 eine neue Grenze eingeführt – Wolfram Challenges.
Man kann sich viele Beispiele für Challenges vorstellen, bei denen es darum geht, “die kostengünstigste Lösung” oder die “beste Passform” zu finden. Ähnlich verhält es sich mit typischen Aufgaben des maschinellen Lernens: Finden Sie eine Funktion (z.B. auf der Grundlage eines neuronalen Netzwerks), die bei der Klassifizierung eines bestimmten Testsatzes am besten abschneidet, usw.
Im Vergleich zu anderen Websites/Plattformen in dieser Übersicht deckt Wolfram einen breiten Bereich von Herausforderungen ab und nicht nur die Codierung. Alles in allem: Wenn Sie Ihr kritisches Denken schärfen wollen, dann ist dies die richtige Plattform dafür!
LeetCode
LeetCode ist ein Produkt, d.h. es ist nicht nur eine Website, auf der zufällige Herausforderungen angeboten werden. Stattdessen ist LeetCode eine Möglichkeit, sich auf zukünftige Möglichkeiten vorzubereiten.

Die Plattform bietet modernes Lernen, knifflige Herausforderungen und ein hervorragendes Dashboard, um alles zu erledigen.

Außerdem gibt es Artikel, Diskussionsforen und andere Community-Aspekte, die ein nahtloses Erlebnis fördern. Viele LeetCode-Benutzer haben ihren “Abschluss” gemacht und arbeiten jetzt bei Unternehmen wie Uber, Amazon, Stripe und anderen.
Codeforces
Codeforces ist für alle hartgesottenen und engagierten Programmierer da draußen. Denken Sie an Software-Ingenieure, Pentester, KI-Enthusiasten und Machine-Learning-Junkies! Als Plattform für fortgeschrittene Programmierer ist Codeforces für sein berüchtigtes Leaderboard und seinen Wettbewerbsgeist bekannt.

Und der Einstieg ist einfacher als Sie denken.
Übung
Es ist schön zu sehen, welche Initiativen hinter vielen Coding-Challenge-Plattformen stehen.

Und Exercism ist da keine Ausnahme. Katrina Owen, die Gründerin, sagt, ihr Ziel sei es, “Menschen dabei zu helfen, [mit Exercism] so viel Coding zu lernen, dass sie einen Job in der Entwicklung finden können”.

Zum Zeitpunkt, an dem ich diesen Artikel schreibe, gibt es mehr als 2.600 Übungen in 48 Sprachen – alle kostenlos! Wollten Sie schon immer Kotlin lernen oder sich in Vim besser orientieren? Jetzt haben Sie die Chance, durch interessante Herausforderungen neue Fähigkeiten zu erlernen!
Codier
So überraschend es für einige von Ihnen auch sein mag, auch in der Frontend-Entwicklung wird noch programmiert!

Die Herausforderungen hier werden meist von Benutzern zusammengestellt. Jemand könnte z.B. eine ‘Material Design Card’ veröffentlichen und Sie herausfordern, diese zu verbessern oder eine ähnliche Variante zu erstellen.

Das Ergebnis ist Ihre Fähigkeit, kreative Ideen zu entwickeln. Und es ist auch schön zu sehen, wie andere ähnliche Probleme in Echtzeit angehen. Sie können den von anderen eingereichten Code jederzeit in Ihren Projekten wiederverwenden.
Flexbox-Froggy
Apropos Frontend: Wie weit sind Sie mit Ihrem Flexbox-Verständnis? Es ist immer gut, das Gedächtnis aufzufrischen, um auf dem neuesten Stand zu bleiben!

Flexbox Froggy ist ein nettes kleines Spiel, das Sie in 28 Schritten durch die verschiedenen Verwendungen und Ausrichtungen von Flexbox führt. Vielleicht ist es weniger eine Herausforderung als eine Erinnerung, aber schaffen Sie alle Level, ohne nach Antworten zu suchen?
Grid Garden ist ein sehr ähnliches Spiel; der einzige Unterschied besteht darin, dass Sie mit der Grid-Funktion und nicht mit Flex arbeiten.
PyBites
Python gilt weithin als die am einfachsten zu erlernende Sprache. Und wird neuen Programmierern oft empfohlen, sie zuerst zu erkunden. Aber lassen Sie sich davon nicht entmutigen und glauben Sie nicht an die Fähigkeiten von Python.

Heutzutage wird ein Großteil des maschinellen Lernens und der Erstellung von Datensätzen ausschließlich mit Python durchgeführt – und das ist keine kleine Leistung!

PyBites bringt Sie auf den neuesten Stand der Dinge. Artikel, Programmierherausforderungen und andere wichtige Informationen, die Ihnen helfen, Ihren Verstand zu schärfen. Zu jeder Herausforderung gibt es eine Nachbereitung, in der Sie Ihren Code vergleichen und den richtigen Weg zur Lösung eines Problems finden können.
CodeCombat
CodeCombat ist ein weiteres Codierungsspiel, das eine dynamische und herausfordernde Umgebung für die Codierung bietet. Der Unterschied zu einem Produkt wie CodinGame besteht darin, dass CodeCombat sich an Lehrer richtet. Daher können Sie diese Plattform nutzen, um Programmieren und Problemlösen auf Schulebene zu lehren.

Es gibt Tools, Materialien und andere Ressourcen, die speziell für diesen Zweck zugeschnitten sind. Und es macht auch eine Menge Spaß. Die CodeCombat-Spiele, die Sie bauen, sind nicht nur interessant, sondern auch visuell beeindruckend. Und Spiele sind bei Kindern bereits sehr beliebt. Wenn Sie Kinder dazu herausfordern, ihre virtuelle Umgebung zu entwickeln, können Sie sie dazu inspirieren, in Zukunft etwas Erstaunliches zu bauen!
Tynker
Wie bereits in der Einleitung kurz erwähnt, haben wir etwas für alle Eltern da draußen. Tynker ist eine lustige kleine Plattform, die Kindern das Programmieren beibringt. Es basiert auf einer sehr einfachen Drag&Drop-Oberfläche, auf der die Kinder zwischen verschiedenen Möglichkeiten wählen und hoffentlich die gestellten Aufgaben lösen können.

Und täuschen Sie sich nicht, Tynker ist mehr an moderne Standards angepasst, als Sie denken. Wenn Sie Kinder haben, die langsam ins Teenageralter kommen, können Sie sie Lösungen mit Python oder JavaScript schreiben lassen, anstatt nur mit Blöcken zu arbeiten.
Abschließende Worte: Fordern Sie sich selbst heraus!
Insgesamt gibt es wahrscheinlich 10.000 einzigartige Code-Herausforderungen auf all den Websites und Plattformen, die wir aufgelistet haben. Es ist unmöglich, sie alle auf diese Weise zu bewältigen.
Stattdessen empfehle ich Ihnen, eine Plattform zu finden, die Ihren Bedürfnissen am besten entspricht, und sich nur auf diese eine Plattform zu konzentrieren. Sie können Freundschaften schließen, neue Dinge lernen und wer weiß – vielleicht lernen Sie genug, um einen neuen Job bei einem gut bezahlten Unternehmen zu bekommen!
Vielleicht möchten Sie auch DataCamp in Erwägung ziehen, um Data Science zu lernen, wo es um Programmieraufgaben und Projekte geht.
Wie wäre es dann, wenn Sie herausfinden, wie man in gängigen Programmiersprachen Kommentare hinzufügt?