Stack-Einstellungen
Legen Sie Ihre bevorzugten Programmiersprachen und Frameworks fest, um Ihre Schulungserfahrung anzupassen. SecureCodingHub zeigt Challenges automatisch in Ihrem bevorzugten Stack.
Ihre Einstellungen festlegen
Wenn Sie die Plattform zum ersten Mal besuchen, führt Sie ein 3-Schritte-Assistent durch die Auswahl Ihrer bevorzugten Sprachen und Frameworks:
| Schritt | Auswahl | Optionen |
|---|---|---|
| Schritt 1 | Backend-Sprache | JavaScript, TypeScript, Python, Java, C#, PHP, Go |
| Schritt 2 | Frontend-Framework | React (TS/JS), Vue (TS/JS), Angular (TS/JS) |
| Schritt 3 | Mobile-Plattform | Swift (iOS), Kotlin (Android) |
Wie Einstellungen funktionieren
Jedes Thema in SecureCodingHub hat einen stackType, der einer Ihrer Einstellungskategorien zugeordnet wird. Wenn Sie eine Challenge öffnen, wählt die Plattform automatisch die Sprache, die Ihren Einstellungen entspricht.
| Stack-Typ | Zugeordnete Einstellung | Beispielthemen |
|---|---|---|
| Backend | Ihre Backend-Sprache-Einstellung | SQL Injection, SSRF, Command Injection |
| Frontend | Ihre Frontend-Framework-Einstellung | XSS, DOM Clobbering, Prototype Pollution |
| Mobile | Ihre Mobile-Plattform-Einstellung | Insecure Storage, WebView Injection, Certificate Pinning |
Die richtige Sprache wird standardmäßig angezeigt, wenn Sie eine Challenge öffnen. Sie können innerhalb jeder Challenge jederzeit über den Sprachwähler zu einer anderen Sprache wechseln.
Einen Schritt überspringen
Jeder Assistenten-Schritt hat einen Überspringen-Button neben seiner primären Aktion. Das Überspringen verlässt den Assistenten nicht — es wendet einen vernünftigen Standard für diesen Schritt an und lässt Sie weitermachen. Die Standards sind:
- Backend:
JavaScript - Frontend:
React (TypeScript) - Mobile:
Kotlin (Android)
Überspringen ist die richtige Wahl, wenn ein Schritt heute nicht auf Sie zutrifft — zum Beispiel ein Frontend-Engineer, der den Backend-Schritt überspringt, um den Standard zu nehmen. Sie können später zurückkommen und den Standard über denselben Assistenten überschreiben.
Einstellungen ändern
Der Stack-Indikator-Chip auf der oberen Leiste (zeigt Ihre ausgewählten Stack-Symbole) öffnet den Assistenten beim Klicken erneut — das ist der alltägliche Weg, Einstellungen zu aktualisieren. Änderungen werden sofort über alle Challenges und Themen wirksam. Einstellungen leben auch in Ihrem Profil unter Stack-Einstellungen, was nützlich ist, wenn Sie überprüfen möchten, was eingestellt ist, ohne den Picker erneut zu starten.
Wenn ein Thema in Ihrer Sprache nicht existiert
Nicht jede Challenge wird bereits in jeder Sprache ausgeliefert. Wenn Sie ein Thema öffnen, dessen Autor noch keinen Ausschnitt für Ihre bevorzugte Sprache bereitgestellt hat, fällt die Plattform durch eine deterministische Kette zurück: Ihre Stack-Einstellung für den Bereich dieses Themas, dann der vom Autor definierte Standard des Themas selbst, dann JavaScript, dann die erste verfügbare Sprache. Sie sehen die Sprachbeschriftung im Challenge-Header sich ändern, sodass der Fallback nie still ist — aber Sie werden keinen "Thema nicht verfügbar"-Bildschirm sehen.
Für Administratoren
Einstellungen werden pro Benutzer gespeichert. Administratoren können keine Einstellungen für Lernende festlegen — jeder Entwickler wählt seinen eigenen Stack. Dies stellt sicher, dass jedes Teammitglied in der Sprache trainiert, mit der es tatsächlich täglich arbeitet.
Warum der Stack wichtig ist
Ein TypeScript-Entwickler, der eine PHP-Challenge liest, verwendet den größten Teil seiner Aufmerksamkeit auf das Analysieren unbekannter Syntax statt auf die Suche nach der Schwachstelle. Die kognitive Belastung ist real und die Zeitkosten sind real. Stack-Einstellungen existieren, damit die Sprache, mit der ein Konzept gelehrt wird, kein Hindernis für das Lernen des Konzepts wird. Wenn die Syntax fließend ist, geht Ihr Auge direkt zur Vertrauensgrenze und zum unsicheren Primitiv. Das ist das Muskelgedächtnis, das Sie aufbauen möchten. Eine Challenge in einer Sprache, die Sie nur halb lesen, trainiert Sie in die falsche Richtung: Sie werden ein durchschnittlich guter Debugger unbekannten Codes, kein zuverlässiger Reviewer Ihres eigenen.
Deshalb sind Einstellungen auch pro Benutzer, nicht pro Organisation. Ein Team-Administrator kann einen Python-Engineer nicht zwingen, Java-Challenges zu machen. Jeder Entwickler sollte in dem Stack trainieren, den er reviewen, ausliefern und mit dem er Rufbereitschaft haben wird. Siehe Übungsmodus dafür, wie die ausgewählte Sprache den Standard-Ausschnitt antreibt, der in jeder Challenge angezeigt wird.
Wann Sie Ihre Stack-Einstellungen erweitern sollten
Stack-Einstellungen sind nicht permanent. Full-Stack-Engineers, die sich wirklich zwischen Backend und Frontend bewegen, sollten ihre primäre Backend- und Frontend wählen und dann den In-Challenge-Sprachwähler verwenden, um bei Bedarf zu wechseln. Engineers, die eine neue Sprache für ein bevorstehendes Projekt lernen, sind der andere häufige Fall für die Erweiterung: einige Wochen im neuen Stack trainieren, um Review-Fluss aufzubauen, bevor der erste Pull Request landet. Sie können jederzeit über die Einstellungen zurückwechseln.
Ein spezifischer Fall, der erwähnenswert ist, ist der Senior- oder Staff-Engineer, der Pull Requests über mehrere Stacks reviewt. Die Auswahl einer einzelnen Backend-Sprache verbirgt sprachübergreifende Muster, die in API- und infrastrukturnahen Schwachstellen erscheinen. Die vierteljährliche Rotation der Einstellungen ist eine vernünftige Gewohnheit für diese Rolle.
Wie der Stack mit Team-Zuweisungen interagiert
Wenn ein Organisationsadministrator eine Zuweisung in Schnellstart erstellt, wählt er eine Kategorie, ein Thema oder ein Szenario. Er wählt keine Sprache. Jeder zugewiesene Lernende sieht den zugewiesenen Inhalt in der Sprache, die seinen eigenen Stack-Einstellungen entspricht. Eine einzelne "OWASP Web Top 10"-Zuweisung kann als Python-Challenges für das Backend-Team, React-Challenges für das Frontend-Team und Swift-Challenges für das iOS-Team landen. Das ist das beabsichtigte Design: eine Zuweisung, viele Stacks, konsistente Abdeckung. Administratoren sollten nicht versuchen, dies zu umgehen, indem sie doppelte sprachspezifische Zuweisungen erstellen.