Hinter den Kulissen. Wie entstehen Kurse?

Ein Teilnehmer kommt zu einem Kurs oder Intensivkurs. Er sieht geordnete Reihen technischer Hilfsmittel, sauber verlegte Stromkabel, eine schachbrettartige Anordnung des Hörsaals, helle Bilder und Foliendiagramme. Redner mit Witzen und Lächeln geben Informationen so weiter, dass Sie gerade noch Zeit haben, sie zu verstehen. Die Stände sind aufgebaut, Übungsaufgaben gehen einem wie von der Hand, nur dass man manchmal die Hilfe von technischem Personal braucht. Unterstützung.

Und auch Kaffeepausen mit Gleichgesinnten, eine fröhliche und energiegeladene Atmosphäre, Erfahrungsaustausch, die unerwartetsten Fragen für Redner. Sowohl Antworten als auch Informationen, die Sie nicht in Handbüchern, sondern nur in der Praxis finden.

Wie viel Zeit, Mühe und Nerven hat es Ihrer Meinung nach gekostet, es genau so aussehen zu lassen?

Hinter den Kulissen. Wie entstehen Kurse?

Vielen Dank an Volodya Guryanov, einen zertifizierten Kubernetes-Administrator und Ingenieur/Teamleiter bei Southbridge, der von Anfang an die Erstellung vieler Slurm-Kurse miterlebt und aktiv daran teilgenommen hat.

Er sah die Schattenseiten der Kursschöpfung – Komplexität und heikle Herausforderungen, Einsichten und unerwartete Lösungen. Und die bereits bekannten Kubernetes-Intensivprogramme wie Slurm Basic und Slurm Mega. Und ein neuer, weitgehend überarbeiteter Kurs Slurm DevOps:Tools&Cheats, das unaufhaltsam näher rückt und am 19. August beginnen wird.

Hinter den Kulissen. Wie entstehen Kurse?

Aber vielleicht genug der Texte, kommen wir zur Geschichte selbst. Wie aus ein paar intensiven Themen ein völlig autarkes und vielfältiges Thema wird Docker-Kurs. Also beginne ich mit der Geschichte, wie Kurse erstellt und entwickelt werden – genau wie „Vor langer Zeit in einer weit, weit entfernten Galaxie …“

Was steckt hinter den Kulissen?

Wenn Sie fragen, wie wir Kurse gestalten und wo alles beginnt, antworte ich einfach: „Alles beginnt mit einer Idee.“

Normalerweise kommt die Idee irgendwoher – wir sitzen nicht gefesselt im Keller, bis uns die Frage einfällt: „Über welches Thema sollen wir einen Kurs machen?“ Ideen kommen von irgendwoher aus externen Quellen. Manchmal beginnen die Leute aktiv zu fragen: „Was wissen Sie über diese oder jene spezielle Technologie?“ Oder wie es mit Docker war, dass es unmöglich war, ihn zeitlich für den Intensivkurs einzuplanen – er musste offensichtlich nach draußen gebracht werden, um während des Intensivkurses Zeit zu haben, etwas zu erzählen.

Hinter den Kulissen. Wie entstehen Kurse?

So entsteht eine Idee.

Nachdem es angekündigt wurde, beginnt meiner Meinung nach der schwierigste Moment – ​​allgemein zu verstehen, was in diesen Kurs aufgenommen werden soll – das ist sehr vergleichbar mit der Art und Weise, wie Referenten auf Konferenzen vorbereitet werden.

Es gibt einen Hauptschmerz, wenn man scheinbar ein Thema ausgewählt hat und denkt: „Was kann ich darüber erzählen?“ Das ist zu einfach, das ist offensichtlich, das weiß auch jeder.“

Doch in Wirklichkeit ist dies überhaupt nicht der Fall. Und ich persönlich sage an vielen Stellen, dass das, was für Sie selbstverständlich erscheint, für diejenigen, die Ihnen zuhören oder an einem Kurs teilnehmen, überhaupt nicht offensichtlich ist. Und hier entsteht eine so große Schicht an Arbeit und internen Konflikten darüber, was in den Kurs einbezogen werden soll. Als Ergebnis erhalten wir eine solche Liste von Kapiteln mit so großen Strichen, worum es in dem Kurs gehen wird.

Und dann beginnt die einfache Routinearbeit:

  • Materialauswahl
  • Lesen Sie die Dokumentation zur aktuellen Version sorgfältig durch, da sich die IT-Welt mittlerweile mit kosmischer Geschwindigkeit entwickelt. Selbst wenn Sie mit etwas arbeiten und einen Kurs darüber erstellen, müssen Sie in der Dokumentation nachsehen, was es Neues gibt, worüber man sprechen kann und was besonders nützlich sein könnte, um es zu erwähnen.
  • Und es entsteht ein gewisses Grundgerüst des Kurses, in dem die meisten Themen im Allgemeinen bereits behandelt werden und es den Anschein hat, als ob alles, was da ist, Videos aufnimmt und in die Produktion bringt.
  • Aber tatsächlich, nein, dann beginnt die harte Arbeit, aber nicht für die Autoren des Kurses, sondern für diejenigen, die testen. In der Regel handelt es sich bei unseren Alpha-Testern um technische Unterstützung, die zunächst die Kurse auf etwaige syntaktische und grammatikalische Fehler überprüft. Zweitens schlagen sie uns schmerzhaft mit Stöcken und fluchen an völlig unbekannten, unverständlichen Stellen. Wenn in den Texten einige komplex zusammengesetzte Nebensätze von mehreren Seiten Länge oder offensichtlicher Unsinn auftauchen. Sie lesen alles und achten darauf.
  • Dann beginnt die Übungstestphase, in der auch einige offensichtlich nicht funktionierende Dinge erfasst und einige Momente gezeigt werden, die entweder schwieriger gemacht werden können, da es nicht sehr interessant wird – nur Sitzen und Kopieren – und Orte identifiziert werden, an denen es sehr ist schwierig und wir haben viel zu tun, was wir von den Leuten erwarten, die diesen Kurs belegen. Und dann kommen Empfehlungen: „Leute, macht es hier einfacher, dann ist es leichter wahrnehmbar und es wird mehr Nutzen daraus ziehen.“
  • Nachdem dieser Arbeitsaufwand erledigt ist und der Teil, der sich auf das Video bezieht, geschrieben ist, scheint alles in Ordnung zu sein. Und Sie können es bereits für die Produktion und Werbung für diesen Kurs spenden. Aber nein, es ist noch zu früh – denn in letzter Zeit haben wir aufgehört, uns selbst ein wenig zu vertrauen und haben grundsätzlich begonnen, mehr mit Feedback zu arbeiten. Es gibt so etwas wie Betatests – dabei werden Leute von Außenstehenden eingeladen, die in keiner Weise mit unserem Unternehmen verbunden sind, und ihnen werden für ein paar Extras alle Teile des Kurses, Videos, Texte, praktische Aufgaben gezeigt, damit sie Sie beurteilten die Qualität des Materials und die Zugänglichkeit des Materials und halfen uns dabei, den Kurs so gut wie möglich zu gestalten.
  • Und wenn mehrere solcher Iterationen durchlaufen werden, gibt es Referenten, Alphatests in Form von technischem Support, Betatests und Verbesserungen. Und dann beginnt alles von vorne – technischer Support, Betatests, Verbesserungen.
  • Und irgendwann kommt die Einsicht, dass wir entweder mit den Änderungen fertig sind, weil es völlig unrealistisch ist, sicherzustellen, dass es allen gefällt, oder dass drastische Entscheidungen getroffen werden. Wenn viele Kommentare zu bestimmten Stellen kritisch sind, wiederholen Sie sie global, weil etwas schief gelaufen ist.
  • Dann kommt die Zeit für kleinere Änderungen – irgendwo ist der Satz nicht so schön formuliert, irgendwo gefällt jemandem die Schriftart 14,5 nicht, aber 15,7 wäre ihm lieber.
  • Wenn diese Art von Kommentar bestehen bleibt, dann ist es soweit, der Kurs ist mehr oder weniger eröffnet, der offizielle Verkauf beginnt.

Und auf den ersten Blick erweist sich die kurze und einfache Aufgabe, einen Kurs zu erstellen, als gar nicht so einfach und nimmt unglaublich viel Zeit in Anspruch.

Und es gibt noch einen weiteren wichtigen Punkt: Die Arbeit mit dem Kurs endet nicht mit der Veröffentlichung des Kurses. Zunächst lesen wir sorgfältig die Kommentare, die zu bestimmten Teilen hinterlassen werden. Und trotz aller Bemühungen, die wir unternommen haben, werden immer noch einige Mängel identifiziert, einige Fehler werden nebenbei korrigiert und verbessert, und zwar in Echtzeit, sodass jeder nachfolgende Benutzer einen besseren Service erhält.

Hinter den Kulissen. Wie entstehen Kurse?

Jeder Kurs hat seinen eigenen Product Owner, der neben der Definition des Gesamtkonzepts auch die Fristen überprüft und am Rand Notizen macht, dass es an der Zeit ist, den Kurs komplett neu zu schreiben, und das wird definitiv kommen, denn in zwei Jahren oder sogar ein Jahr später wird einiges von dem, was wir erzählen, einfach deshalb irrelevant sein, weil es moralisch überholt ist. Der Product Owner macht am Rande Notizen, dass am häufigsten gefragt wird, welche Punkte unklar waren, welche Aufgaben sehr schwierig und welche im Gegenteil sehr einfach erschienen. Und all dies wird bei der Neuaufnahme des Kurses während einer Art Refactoring berücksichtigt, sodass jede Iteration des globalen Kurses besser, bequemer und komfortabler wird.

So erscheinen Kurse.

Wie der Docker-Kurs entstand

Für uns ist das ein eigenständiges und sogar ungewöhnliches Thema. Denn einerseits hatten wir das nicht geplant, weil es viele Online-Schulen anbieten. Andererseits forderte er selbst die Freiheit und fand einen logischen Platz in unserem Konzept, IT-Spezialisten in Kubernetes auszubilden.

Ganz global gesehen begann alles zunächst mit einem Kurs über Kubernetes, als es meiner Meinung nach erst nach dem ersten Slurm begann. Wir haben Feedback gesammelt und festgestellt, dass viele Leute woanders etwas weiter über Docker lesen möchten und im Allgemeinen viele zum Grundkurs über Kubernetes kommen, ohne zu wissen, was es ist Docker.

Deshalb haben sie für den zweiten Slurm einen Kurs erstellt – oder besser gesagt, nicht einmal einen Kurs, sondern ein paar Kapitel über Docker. Dort erzählten sie einige der grundlegendsten Dinge, damit sich die Teilnehmer der Intensivstation nicht benachteiligt fühlten und allgemein verstanden, was vor sich ging.

Hinter den Kulissen. Wie entstehen Kurse?

Und dann entwickelten sich die Ereignisse ungefähr so. Die Materialmenge wuchs und passte innerhalb von 3 Tagen nicht mehr. Und es entstand eine logische und offensichtliche Idee: Warum nicht das, was wir bei Slurm Basic behandeln, in eine Art kleinen Kurs umwandeln, zu dem man Leute schicken könnte, die sich etwas über Docker ansehen möchten, bevor sie einen Intensivkurs über Kubernetes belegen?

Slurm Junior ist tatsächlich eine Kombination mehrerer solcher Grundkurse. Dadurch wurde der Docker-Kurs zu einem Teil von Slurm Junior. Das heißt, das ist so ein Nullschritt vorher Basic и Mega. Und dann waren da noch ganz einfache Abstraktionen.

Hinter den Kulissen. Wie entstehen Kurse?

Irgendwann kamen die Leute zu fragen: „Leute, das ist alles super, das reicht, um zu verstehen, wovon ihr in den Intensivkursen redet.“ Wo kann ich genauer nachlesen, was Docker kann und wie man damit arbeitet und was es ist?“ So entstand die Idee, es klarzustellen Vollständiger Kurs über Docker, damit einerseits Leute, die mit Kubernetes zu Slurm kommen, trotzdem dorthin geschickt werden können, und andererseits für diejenigen, die sich in diesem Entwicklungsstadium noch nicht einmal für Kubernetes interessieren. Damit ein IT-Spezialist unseren Kurs über Docker besuchen und seinen Entwicklungsweg einfach mit reinem Docker beginnen kann. Damit wir einen so vollwertigen, vollständigen Kurs haben – und dann sind viele, nachdem sie diesen Kurs gesehen und einige Zeit mit reinem Docker gearbeitet haben, so weit gekommen, dass sie Kubernetes oder ein anderes Orchestrierungssystem benötigen. Und sie kamen besonders zu uns.

Manchmal wird die Frage gestellt: „Welche Leute brauchen Kubernetes jetzt vielleicht nicht mehr?“ Aber bei dieser Frage geht es nicht um Menschen, sondern eher um Unternehmen. Hier müssen Sie verstehen, dass Kubernetes in bestimmten Fällen gut geeignet ist und Aufgaben gut löst. Im Gegenteil gibt es jedoch einige Szenarien für die Verwendung von Kubernetes, in denen es zusätzlichen Schmerz und zusätzliches Leid verursacht. Daher kommt es nicht einmal auf die Menschen an, sondern darauf, was Unternehmen wie lange entwickelt haben.

Zum Beispiel ein schrecklicher Legacy-Monolith – Sie sollten ihn wahrscheinlich nicht in Kubernetes verschieben, da er mehr Probleme als Vorteile verursacht. Oder wenn es sich beispielsweise um ein kleines Projekt handelt, ist die Belastung gering oder im Prinzip nicht viel Geld und Ressourcen erforderlich. Es macht keinen Sinn, es in Kubernetes zu ziehen.

Und im Allgemeinen, wahrscheinlich im Allgemeinen, wie viele Leute bereits gesagt haben, wenn Sie die Frage stellen: „Brauche ich Kubernetes?“, dann brauchen Sie es höchstwahrscheinlich nicht. Ich kann mich nicht erinnern, wer meiner Meinung nach als Erster darauf gekommen ist: Pascha Selivanow. Ich stimme dem zu 100 % zu. Und Sie müssen mit Kubernetes erwachsen werden – und wenn bereits klar wird, dass ich Kubernetes brauche und unser Unternehmen es braucht und es dabei hilft, bestimmte Probleme zu lösen, dann ist es wahrscheinlich sinnvoll, sich mit dem Lernen zu befassen und genau herauszufinden, wie man es einrichtet Es läuft gut, so dass der Umstieg auf Kubernetes nicht sehr schmerzhaft ist.

Einige Kinderleiden und einige einfache, auch nicht ganz einfache Dinge können Sie insbesondere bei uns herausfinden und nicht durch Ihren eigenen Rechen und Schmerz.

Viele Unternehmen sind genau den Weg gegangen, dass es zunächst nur eine Art Infrastruktur ohne Containerisierung gab. Dann kamen sie an den Punkt, an dem es schwierig wurde, alles zu verwalten, sie wechselten zu Docker und irgendwann kamen sie an den Punkt, an dem es im Rahmen von Docker und seinen Angeboten eng wurde. Und sie begannen zu untersuchen, was es gab, welche Systeme diese Probleme lösen, und insbesondere Kubernetes – dies ist eines dieser Systeme, mit denen Sie Probleme lösen können, wenn reines Docker überfüllt ist und es ihm an Funktionalität mangelt. Dies ist ein wirklich guter Fall, wenn Menschen Sie gehen Schritt für Schritt von unten nach oben vor, verstehen, dass diese Technologie nicht ausreicht und gehen auf die nächste Ebene. Sie haben etwas verbraucht, es wurde wieder knapp – und sie ziehen weiter.

Das ist eine bewusste Entscheidung – und sie ist sehr cool.

Generell sehe ich, dass unser System sehr schön aufgebaut ist, zum Beispiel Docker-Kurs, auch durch Videokurse. Dann geht es nach Docker grundlegendes Kubernetesdann Mega Kubernetesdann Ceph. Alles fügt sich logisch zusammen – eine Person geht vorbei und es entsteht ein solider Beruf.

Grundsätzlich können Sie mit dem Kursangebot viele Fälle abdecken, auch moderne. Es gibt immer noch Bereiche, die eine Grauzone bleiben. Ich hoffe, dass wir bald einige Kurse erstellen, die es uns ermöglichen, diese Grauzonen zu schließen, insbesondere werden wir uns etwas zum Thema Sicherheit einfallen lassen. Denn das wird immer relevanter.

Kurz gesagt, wir haben einige Grauzonen, die wir gerne schließen würden, damit ein vollständiges, vollständiges Bild entsteht – und die Leute könnten kommen, und genau wie Kubernetes selbst wie ein Lego-Konstrukteur ist, kann man daraus verschiedene Dinge machen es sammeln, wenn noch nicht genug da ist - ergänzen, das Gleiche gilt auch für unsere Kurse, damit die Leute verstehen, was sie davon brauchen; sie müssen aus unseren Kursen eine Art Puzzle, eine Art Baukasten zusammensetzen.

Hinter den Kulissen. Wie entstehen Kurse?

Wenn Sie sich eine allgemein richtige und ehrliche Frage stellen: „Wer könnte jetzt einen aktiven Docker-Kurs gebrauchen?“, dann:

  • Für Studierende, die gerade erst anfangen, sich damit zu beschäftigen.
  • Mitarbeiter der Testabteilung.
  • Tatsächlich gibt es viele Unternehmen, die Docker nicht nur immer noch nicht verwenden, sondern auch niemand von einer solchen Technologie gehört hat und im Prinzip nicht weiß, wie man sie nutzt. Und ich kenne mehrere große Unternehmen in St. Petersburg, die sich seit vielen Jahren weiterentwickeln, einige alte Technologien nutzen und sich in diese Richtung bewegen. Insbesondere für solche Unternehmen, für Ingenieure in solchen Unternehmen, kann dieser Kurs sehr interessant sein, da er Ihnen erstens ermöglicht, schnell in diese Technologie einzutauchen, und zweitens, sobald mehrere Ingenieure auftauchen, die das Ganze verstehen funktioniert, können sie es in das Unternehmen einbringen und diese Kultur und diese Richtungen innerhalb des Unternehmens weiterentwickeln.
  • Meiner Meinung nach ist dieser Kurs möglicherweise immer noch nützlich für diejenigen, die bereits mit Docker gearbeitet haben, aber sehr wenig und mehr im Stil „Einmal machen, zweimal machen“ – und jetzt werden sie irgendwie mit demselben Kubernetes interagieren, und das hier Wenn Sie nur sehr oberflächliche Kenntnisse darüber haben, was Docker ist und wie man es ausführt, aber gleichzeitig nicht wissen, wie es von innen funktioniert, wissen Sie nicht, was Sie am besten tun sollen Es und was man besser nicht tun sollte, dann eignet sich dieser Kurs gut zur Systematisierung und Vertiefung des Wissens.

Aber wenn Sie Kenntnisse auf der Ebene haben: „Ich weiß nicht, wie man dieselben Docker-Dateien richtig schreibt, ich kann mir vorstellen, was Namespaces sind, wie Container funktionieren, wie sie tatsächlich auf Betriebssystemebene implementiert werden“ – dann gibt es sie Es hat definitiv keinen Sinn, zu uns zu gehen, Sie werden nichts Neues lernen und ein wenig traurig sein über das Geld und die Zeit, die Sie aufgewendet haben.

Wenn wir formulieren, welche Vorteile unser Studiengang hat, dann:

  • Wir haben versucht, diesen Kurs mit einer ausreichenden Anzahl praktischer Fälle zu gestalten, damit Sie nicht nur den vorhandenen theoretischen Teil verstehen, sondern auch verstehen, warum Sie ihn benötigen und wie Sie ihn in Zukunft verwenden werden.
  • Es gibt mehrere Abschnitte, die sehr selten irgendwo zu finden sind – und im Allgemeinen gibt es nicht so viel Material dazu. Sie beziehen sich auf die Interaktion von Docker mit dem Betriebssystem, wenn auch etwas anders. Welche Mechanismen hat Docker vom Betriebssystem übernommen, um das Containerisierungssystem zu implementieren – und dies ermöglicht ein tieferes Verständnis der gesamten Problematik der Ausführung von Containern innerhalb des Linux-Betriebssystems. Wie es funktioniert, wie es innerhalb des Betriebssystems, außerhalb usw. miteinander interagiert.

Dies ist ein so wirklich tiefer Blick, dass er ziemlich selten vorkommt, und gleichzeitig ist er meiner Meinung nach sehr wichtig. Wenn Sie eine Technologie gut verstehen und verstehen möchten, was Sie von ihr erwarten können, müssen Sie zumindest eine allgemeine Vorstellung davon haben, wie sie auf einem niedrigen Niveau funktioniert.

Unser Kurs zeigt und erzählt, wie das aus Sicht des Betriebssystems funktioniert. Einerseits nutzen alle Containerisierungssysteme die gleichen Betriebssystemmechanismen. Andererseits übernehmen sie das, was im Linux-Betriebssystem enthalten ist, wie Docker. Andere Containerisierungssysteme haben sich nichts Neues einfallen lassen – sie haben das genommen, was bereits in Linux war, und nur einen praktischen Wrapper geschrieben, der es Ihnen ermöglicht, es schnell aufzurufen, auszuführen oder irgendwie damit zu interagieren. Derselbe Docker stellt keine sehr große Schicht zwischen dem Betriebssystem und der Befehlszeile dar. Es handelt sich um eine Art Dienstprogramm, mit dem Sie nicht Unmengen von Befehlen oder eine Art C-Code schreiben müssen, um einen Container zu erstellen, sondern dies durch Eingabe tun können ein paar Zeilen im Terminal.

Und noch etwas: Wenn wir speziell über Docker sprechen: Was Docker wirklich in die IT-Welt gebracht hat, sind Standards. Wie die Anwendung gestartet werden soll, wie sie funktionieren soll, welche Anforderungen gelten für Protokolle, welche Anforderungen gelten für die Skalierung und die Konfiguration der Anwendung selbst.

Bei Docker geht es in vielerlei Hinsicht um Standards.

Standards werden auch auf Kubernetes verlagert – und es gibt genau die gleichen Standards: Wenn Sie wissen, wie Sie Ihre Anwendung in Docker gut ausführen, wird sie in 99 % der Fälle auch in Kubernetes genauso gut funktionieren.

Wenn Sie sich nicht nur für die Entstehung des Docker-Kurses, sondern auch für andere Kurse, sondern auch für den Kurs selbst aus praktischer Sicht interessiert haben, dann Bis zum 5000. Juli ist noch Zeit, es mit einem Vorbestellungsrabatt von 30 Rubel zu erwerben.

Wir freuen uns auf Sie!

Source: habr.com

Kommentar hinzufügen