Häufig gestellte Fragen
Allgemein
Kann ich auf CodingPlatform.de direkt im Webbrowser programmieren?Ja! Um unsere Kurse zu absolvieren, brauchst Du keine Software auf Deinem Computer zu installieren. All unsere Programmieraufgaben kannst Du einfach im Webbrowser lösen.
Ich bin LehrerIn oder ProfessorIn. Kann ich die Plattform auch für meine Schulklasse oder Vorlesung nutzen?
Ja, wir bieten unsere Coding Platform als „Coding Platform Education“ ganz privat abseits von codingplatform.de für Schulen und Universitäten an. Dort kannst Du eigene Kurse anlegen und auch eigene Aufgaben erstellen. Mehr dazu auf der Unterseite Education.
Woher weiß ich, ob ich eine Aufgabenstellung korrekt gelöst habe?
Wenn Du Deinen Programmcode zu einer Aufgabenstellung auf unserer Plattform ausführst, testet unsere Plattform Deinen Programmcode automatisch. Dies geschieht über sogenannte Unit-Tests. Alle Tests, die bestanden wurden, leuchten grün auf. Tests, die nicht bestanden wurden, werden farblich in Rot dargestellt und zeigen Dir den Grund dafür an, warum Dein Programmcode diesen Test nicht bestanden hat:
Woher stammt CodingPlatform.de?
Wir kommen aus dem Norden von Deutschland, genauer aus Bremen. Die Coding Platform wurde 2018 im Rahmen einer Independent Study an der Universität Bremen entwickelt. Seit Februar 2020 wird die Coding Platform unabhängig von der Universität Bremen von einem kleinen Start-up, welches in Bremen ansässig ist, weiterentwickelt und mit eigenen Java-Kursen betrieben.
Warum bietet Ihr nur Java-Kurse an?
Unsere Plattform kann grundsätzlich auch für andere Programmiersprachen verwendet werden - insbesondere auch für den Einsatz an Schulen & Universitäten. Für die Kurse, die wir selbst erstellt haben und kostenfrei auf dieser Instanz der Coding Platform anbieten, haben wir uns allerdings erst einmal für Java entschieden. Mit irgendeiner Sprache muss man ja anfangen ;)
Funktionsweise
Wie funktioniert das Ausführen von Programmen im Webbrowser?Unsere Server führen Deinen Programmcode für Dich aus und teilen Dir die Rückmeldung der Ausführung über den Webbrowser mit. Alles, was Du dafür bei einer Aufgabenstellung tun musst, ist, auf den „Speichern & Testen“-Button unten links zu klicken.
Ist das Ausführen von Programmen auf Eure Server für Euch nicht gefährlich?
Verschiedene Sicherheitsmechanismen sorgen selbstverständlich dafür, dass Programme auf unsere Server keinen Schaden anrichten können. So setzen wir beispielsweise Linux Namespaces, seccomp sowie den Security-Manager der JVM ein, um Benutzerprogramme von wichtigen Systembefehlen abzuschotten. Zudem sind unsere Server, die Programmcode ausführen, strikt von unseren Servern, die Daten der Mitglieder speichern und die Webseite bereitstellen, getrennt.
Mitgliedschaft
Ist die Mitgliedschaft kostenlos?Ja, die Mitgliedschaft steht Dir zu nicht-kommerziellen Zwecken (z.B. um studienbegleitend zu lernen und zu üben) inklusive aller angebotenen Kurse, Lektionen und Programmieraufgaben uneingeschränkt und kostenlos zur Verfügung.
Wie finanziert ihr euch denn?
Indem wir die Plattform selbst für Schulen, Universitäten & Dritten zur Verfügung stellen, auf welcher LehrerInnen und DozentInnen eigene Aufgaben erstellen können, die dann von SchülerInnen und Studierende gelöst werden. Das Ganze bieten wir als Coding Platform Education an, mehr dazu hier.
Warum muss ich mich überhaupt registrieren?
So können wir Dir einerseits anzeigen und speichern, welche Aufgaben Du bereits gelöst hast, damit Du einen Überblick über Deinen Fortschritt erhältst. Andererseits haben wir diese Plattform explizit für den Einsatz an Schulen & Universitäten designt - dort ist es nun einmal wichtig, dass nur eigene SchülerInnen und Studierende auf die jeweilige Plattform-Instanz zugreifen können. Für diese öffentliche Instanz mit unseren Java-Kursen haben wir uns dazu entschieden, die Aufgaben aus Sicherheitsgründen ebenfalls nur nach initialer Registrierung ausführbar zu machen - beispielsweise, um Bots das Leben schwerer zu machen, wenn diese Programmcode ausführen wollen.
Visualisierung (Java)
Wie funktioniert die Visualisierung?Die Visualisierung (d. h. Veranschaulichung der Programmausführung) kannst Du einfach über den „Play“-Button bei der Anzeige der Testfälle starten, wenn es sich um ein Java-Programm handelt. Wenn Dein Programm nicht kompiliert werden konnte, kann Dir keine Visualisierung gezeigt werden, weil nicht kompilierender Programmcode schließlich nicht ausgeführt wird. Sollten lediglich Fehler während der Ausführung entstehen (z. B. eine NullPointerException), funktioniert die Visualisierung natürlich trotzdem.
Kann die Visualisierung wirklich zu jedem Programmcode angezeigt werden?
Grundsätzlich ist die Visualisierung dafür designt, möglichst jeden Programmcode der Lehre visualisieren zu können. So werden beliebige Klassen, darunter auch abstrakte und innere Klassen, Interfaces, beliebige Methodenaufrufe, Lambda-Ausdrücke und vieles mehr visualisiert. Eine Grenze der Visualisierung ist z. B. die Auswertung von Teilausdrücken. Dies liegt daran, dass die Visualisierung mit dem übersetzten Java-Bytecode arbeitet und die Auswertung von Ausdrücken im Bytecode nicht zwangsläufig äquivalent zum Quellcode erfolgt. Zudem können Änderungen von Attribute über die Java Reflection-Funktionalität nicht erfasst werden – diese erkennt die Visualisierung allerdings und gibt eine Warnung aus. Zurzeit noch nicht korrekt dargestellt werden können: Programme mit Nebenläufigkeiten (z. B. mittels Threads) sowie verschachtelte try-catch-Aufrufe. Langfristig soll die Visualisierung allerdings auch diese Funktionalitäten korrekt darstellen können.
Coding Platform Education
Die Plattform speziell für Schulen und UniversitätenMuss ich die Coding Platform selbst installieren und einrichten?
Nein, wir stellen Ihnen die Coding Platform vollständig über unsere Server zur Verfügung und richten die Coding Platform soweit ein, dass LehrerInnen und DozentInnen lediglich noch Kurse & Aufgabenstellungen erstellen und Ihre SchülerInnen und Studierenden über den Webbrowser hinzufügen müssen.
Können sich auf meiner Coding Platform beliebige Personen registrieren?
Nein. SchülerInnen und Studierende werden lediglich von LehrerInnen und DozentInnen hinzugefügt. Zum Hinzufügen vieler SchülerInnen und Studierende hilft Ihnen dabei unsere CSV-Importfunktion.
Unter welcher Domain können Sie unserer Schule, Universität oder Unternehmen die Plattform anbieten?
Je nach Anbieter und Webspace, den Ihre Schule, Universität oder Ihr Unternehmen verwendet, können wir Ihnen die Plattform möglicherweise über eine Subdomain anbieten (z. B. coding.gymasium-xyz.de). Alternativ stellen wir Ihnen die Coding Platform auch über eine Subdomain von codingplatform.de zur Verfügung, z. B. hb.codingplatform.de.
Wie läuft die Bestellung der Coding Platform für meine Schule, Universität oder mein Unternehmen ab?
Da wir derzeit noch ein junges Unternehmen sind und sich die Zahl unserer Kunden in einem angenehmen Rahmen hält, ist der Bestellprozess sehr individuell und persönlich. In einem ersten Gespräch (per Telefon oder Mail) besprechen wir erst einmal, wie sie die Coding Platform einsetzen möchten. Gerne stellen wir Ihnen auch unmittelbar eine Demoversion der Plattform zur Verfügung und/oder geben Ihnen eine Kostenabschätzung für Ihren Einsatz der Coding Platform. Erst, nachdem Sie sich überzeugen konnten, dass die Coding Platform für Sie optimal geeignet ist, schließen wir einen individuellen Vertrag nach Ihren Bedürfnissen und stellen Ihnen die Coding Platform für den produktiven Einsatz bereit.
Wonach richtet sich der Preis für die Coding Platform?
Der Preis der Coding Platform richtet sich in erster Linie nach der Anzahl der aktiven Nutzer, der Intensität der Nutzung sowie den benötigten Betreuungsaufwand für den Einsatz der Plattform. Neben dem Support fallen uns schließlich Kosten für den Betrieb und die Instandhaltung der Server an, die die Plattform bereitstellen und den Programmcode der Nutzer ausführen und testen. Grundsätzlich lässt sich sagen, dass bei entsprechender Nutzerzahl der Betrieb der Plattform im unteren einstelligen Euro-Bereich pro Nutzer pro Monat möglich ist.