Di balik layar. Bagaimana kursus dibuat?

Seorang peserta datang ke suatu kursus atau kursus intensif. Dia melihat barisan dukungan teknis yang tertata rapi, kabel listrik yang tertata rapi, tata letak ruang kuliah yang terhuyung-huyung, gambar-gambar cerah dan diagram slide. Pembicara dengan bercanda dan tersenyum memberikan informasi sedemikian rupa sehingga Anda punya waktu untuk memahaminya. Stand telah disiapkan, tugas latihan mudah dilakukan, hanya saja terkadang Anda memerlukan bantuan staf teknis. mendukung.

Serta coffee break bersama orang-orang yang berpikiran sama, suasana ceria dan energik, pertukaran pengalaman, pertanyaan-pertanyaan yang paling tidak terduga untuk pembicara. Baik jawaban maupun informasi yang tidak akan Anda temukan di manual, tetapi hanya dalam praktik.

Menurut Anda, berapa banyak waktu, tenaga, dan kegelisahan yang diperlukan untuk membuatnya terlihat persis seperti ini?

Di balik layar. Bagaimana kursus dibuat?

Terima kasih kepada Volodya Guryanov, administrator Kubernetes bersertifikat dan insinyur/pemimpin tim di Southbridge, yang telah menyaksikan dan berpartisipasi aktif dalam pembuatan banyak kursus Slurm sejak awal.

Dia melihat inti dari penciptaan lapangan kerja—kompleksitas dan kesulitan, wawasan dan solusi yang tidak terduga. Dan intensif Kubernetes yang sudah familiar, seperti Slurm Basic dan Slurm Mega. Dan kursus baru yang sebagian besar telah direvisi Slurm DevOps: Alat & Curang, yang semakin dekat dan akan dimulai pada 19 Agustus.

Di balik layar. Bagaimana kursus dibuat?

Tapi mungkin sudah cukup liriknya, mari kita lanjutkan ke ceritanya sendiri. Bagaimana dari beberapa topik intensif yang sepenuhnya mandiri dan beragam Tentu saja buruh pelabuhan. Jadi saya akan memulai cerita tentang bagaimana kursus dibuat dan dikembangkan - seperti “Dahulu kala di galaksi yang jauh, jauh sekali...”

Ada apa di balik layar?

Jika Anda bertanya bagaimana kami membuat kursus dan di mana semuanya dimulai, saya hanya akan menjawab “Semuanya dimulai dengan sebuah ide.”

Biasanya idenya datang dari suatu tempat - kita tidak akan duduk diam di ruang bawah tanah sampai kita menemukan: “Topik apa yang harus kita buat kursusnya?” Ide datang dari suatu tempat dengan sendirinya dari sumber eksternal. Terkadang orang mulai secara aktif bertanya: “Apa yang Anda ketahui tentang teknologi spesifik ini dan itu?” Atau bagaimana dengan Docker yang tidak mungkin menyesuaikannya dengan waktu kursus intensif - dia jelas harus dibawa keluar agar punya waktu untuk menceritakan sesuatu selama kursus intensif.

Di balik layar. Bagaimana kursus dibuat?

Beginilah sebuah ide muncul.

Setelah diumumkan, menurut saya, momen tersulit dimulai - untuk memahami secara umum apa yang harus disertakan dalam kursus ini - ini sangat sebanding dengan bagaimana pembicara mempersiapkan konferensi apa pun.

Ada satu penderitaan utama ketika Anda tampaknya telah memilih suatu topik dan berpikir: “Apa yang bisa saya ceritakan tentang topik itu? Ini terlalu sederhana, ini jelas, semua orang juga mengetahuinya.”

Namun kenyataannya tidak demikian. Dan saya pribadi mengatakan di banyak tempat bahwa apa yang tampak jelas bagi Anda, bagi mereka yang datang untuk mendengarkan Anda atau mengikuti kursus, sebenarnya tidak jelas sama sekali. Dan di sini muncul banyak pekerjaan dan konflik internal mengenai apa yang harus disertakan dalam kursus. Sebagai hasilnya, kami mendapatkan daftar bab-bab dengan guratan-guratan besar, tentang apa kursus ini nantinya.

Dan kemudian pekerjaan rutin sederhana dimulai:

  • Pemilihan bahan
  • Bacalah dengan cermat dokumentasi untuk versi saat ini, karena dunia TI kini berkembang dengan kecepatan kosmik. Bahkan jika Anda mengerjakan sesuatu dan membuat kursus tentangnya, Anda harus membuka dokumentasinya dan melihat apa yang baru di sana, apa yang menarik untuk dibicarakan, apa yang mungkin berguna untuk disebutkan.
  • Dan kerangka kursus tertentu muncul, di mana sebagian besar topik, secara umum, sudah tercakup dan tampaknya apa pun yang ada - rekam video dan luncurkan ke dalam produksi.
  • Namun kenyataannya tidak, maka kerja keras dimulai, tetapi bukan untuk penulis kursus, tetapi bagi mereka yang menguji. Biasanya penguji alfa kami adalah dukungan teknis, yang pertama-tama mengoreksi kursus untuk setiap kesalahan sintaksis dan tata bahasa. Kedua, mereka memukuli kami dengan kejam dengan tongkat dan mengumpat ketika ada beberapa tempat yang sama sekali tidak jelas dan tidak dapat dipahami. Ketika beberapa kalimat bawahan yang tersusun rumit yang panjangnya beberapa halaman atau omong kosong yang jelas muncul dalam teks. Mereka membaca semuanya, memperhatikannya.
  • Kemudian tahap pengujian latihan dimulai, di mana beberapa hal yang jelas-jelas tidak berfungsi juga ditangkap dan beberapa momen ditampilkan yang dapat dibuat lebih sulit, karena menjadi tidak terlalu menarik - hanya duduk dan menyalin - dan tempat-tempat diidentifikasi di mana hal tersebut sangat penting. sulit dan kami memiliki banyak hal yang kami inginkan dari orang-orang yang akan mengambil kursus ini. Lalu muncullah rekomendasi: “Teman-teman, buatlah lebih sederhana di sini, agar lebih mudah dipahami dan akan lebih banyak manfaatnya.”
  • Setelah pekerjaan sebanyak ini selesai, bagian yang berhubungan dengan video ditulis, semuanya tampak baik-baik saja. Dan Anda sudah bisa mendonasikannya untuk produksi, untuk mengiklankan kursus ini. Namun sekali lagi, tidak, ini masih terlalu dini - karena akhir-akhir ini kami sedikit berhenti mempercayai diri sendiri dan, pada prinsipnya, mulai lebih banyak bekerja dengan masukan. Ada yang namanya pengujian beta - ini adalah ketika orang-orang diundang dari pihak luar, tidak terhubung dengan perusahaan kami dengan cara apa pun, dan untuk beberapa barang mereka diperlihatkan semua bagian kursus, video, teks, tugas-tugas praktis, sehingga mereka mengevaluasi kualitas materi, aksesibilitas materi dan membantu kami membuat kursus sebaik mungkin.
  • Dan ketika beberapa iterasi tersebut melalui, speaker, pengujian alfa dalam bentuk dukungan teknis, pengujian beta, peningkatan. Dan kemudian semuanya dimulai dari awal lagi - dukungan teknis, pengujian beta, peningkatan.
  • Dan pada titik tertentu, muncul pemahaman bahwa kita sudah selesai dengan modifikasi, karena sama sekali tidak realistis untuk memastikan bahwa semua orang menyukainya, atau ada keputusan drastis yang dibuat. Ketika banyak komentar di tempat tertentu bersifat kritis, ulangi secara global, karena ada yang tidak beres.
  • Kemudian tiba saatnya untuk pengeditan kecil - di suatu tempat kalimatnya tidak dirumuskan dengan baik, di suatu tempat seseorang tidak menyukai fontnya, 14,5, tetapi ingin 15,7.
  • Ketika jenis komentar ini tetap ada, maka kursusnya kurang lebih dibuka, penjualan resmi dimulai.

Dan sekilas, tugas singkat dan sederhana untuk membuat kursus ternyata sama sekali tidak sederhana dan memakan waktu yang sangat lama.

Dan ada poin penting lainnya bahwa pengerjaan kursus tidak berakhir ketika kursus dirilis. Pertama, kami membaca dengan cermat komentar-komentar yang tersisa di bagian-bagian tertentu. Dan meskipun semua upaya telah kami lakukan, beberapa kekurangan masih teridentifikasi, beberapa kesalahan diperbaiki dan diperbaiki seiring berjalannya waktu, secara real time, sehingga setiap pengguna berikutnya menerima layanan yang lebih baik.

Di balik layar. Bagaimana kursus dibuat?

Setiap kursus memiliki pemilik produknya sendiri, yang selain mendefinisikan konsep umum, memeriksa tenggat waktu, ia membuat catatan di pinggir bahwa ketika tiba waktunya untuk menulis ulang kursus sepenuhnya, dan itu pasti akan datang, karena dalam dua tahun, atau bahkan setahun kemudian, sebagian dari apa yang kita ceritakan akan menjadi tidak relevan hanya karena secara moral sudah usang. Pemilik produk membuat catatan di pinggir bahwa paling sering orang menanyakan poin mana yang tidak jelas, tugas apa yang tampak sangat sulit, dan sebaliknya, mana yang tampak sangat sederhana. Dan semua ini diperhitungkan saat merekam ulang kursus, selama semacam pemfaktoran ulang, sehingga setiap iterasi kursus global menjadi lebih baik, lebih nyaman, dan nyaman.

Beginilah tampilan kursus.

Bagaimana kursus Docker lahir

Ini adalah topik tersendiri dan bahkan tidak biasa bagi kami. Karena di satu sisi kami tidak berencana melakukannya, karena banyak sekolah online yang menawarkannya. Di sisi lain, dia meminta untuk dibebaskan dan menemukan tempat yang logis dalam konsep kami tentang pelatihan spesialis TI di Kubernetes.

Berbicara secara global, awalnya semuanya dimulai dengan kursus tentang Kubernetes, yang menurut saya baru dimulai setelah Slurm pertama. Kami mengumpulkan masukan dan melihat bahwa banyak orang ingin membaca lebih lanjut tentang buruh pelabuhan di tempat lain, dan secara umum banyak yang mengikuti kursus dasar tentang Kubernetes tanpa mengetahui apa itu. Buruh pelabuhan.

Oleh karena itu, untuk Slurm kedua mereka membuat kursus - atau lebih tepatnya, bahkan bukan kursus, tetapi membuat beberapa bab tentang Dockers. Dimana mereka menceritakan beberapa hal yang paling mendasar, sehingga masyarakat yang datang ke intensif tidak merasa dirugikan dan secara umum memahami apa yang terjadi.

Di balik layar. Bagaimana kursus dibuat?

Dan kemudian kejadian berkembang kira-kira seperti ini. Jumlah material bertambah dan berhenti pas dalam 3 hari. Dan sebuah ide yang logis dan jelas muncul: mengapa tidak mengubah apa yang kami bahas di Slurm Basic menjadi semacam kursus kecil di mana Anda dapat mengirim orang-orang yang ingin menonton sesuatu tentang Docker sebelum mengambil kursus intensif tentang Kubernetes.

Slurm Junior sebenarnya merupakan kombinasi dari beberapa kursus dasar tersebut. Hasilnya, kursus Docker menjadi bagian dari Slurm Junior. Artinya, ini adalah langkah nol sebelumnya Dasar и Mega. Dan kemudian yang ada hanyalah abstraksi yang sangat mendasar.

Di balik layar. Bagaimana kursus dibuat?

Pada titik tertentu, orang-orang mulai bertanya: “Teman-teman, ini bagus sekali, ini cukup untuk memahami apa yang Anda bicarakan di kursus intensif. Di mana saya bisa membaca lebih detail tentang apa yang bisa dilakukan buruh pelabuhan dan bagaimana cara bekerja dengannya, dan apa itu?” Maka muncullah ide untuk meluruskannya kursus lengkap tentang Docker, sehingga, pertama, orang yang datang ke Slurm menggunakan Kubernetes masih bisa dikirim ke sana, dan sebaliknya, bagi mereka yang bahkan tidak tertarik dengan Kubernetes pada tahap pengembangan ini. Sehingga spesialis TI dapat menyaksikan kursus kami tentang Docker dan memulai jalur evolusinya hanya dengan Docker murni. Sehingga kita memiliki kursus yang lengkap dan lengkap - dan kemudian banyak orang, setelah menonton kursus ini, setelah bekerja selama beberapa waktu dengan Docker murni, telah berkembang ke tingkat di mana mereka membutuhkan Kubernetes atau sistem orkestrasi lainnya. Dan mereka mendatangi kami secara khusus.

Terkadang muncul pertanyaan: “Orang seperti apa yang saat ini mungkin tidak membutuhkan Kubernetes?” Namun pertanyaan ini bukan tentang manusia, melainkan pertanyaan tentang perusahaan. Di sini Anda perlu memahami bahwa Kubernetes memiliki kasus-kasus tertentu yang cocok dan tugas-tugas yang dapat diselesaikan dengan baik, namun sebaliknya, ada beberapa skenario untuk menggunakan Kubernetes ketika hal itu menyebabkan rasa sakit dan penderitaan tambahan. Oleh karena itu, tidak bergantung pada manusianya saja, tetapi pada perusahaan apa yang telah berkembang dan berapa lama.

Misalnya, beberapa monolit Legacy yang buruk - sebaiknya Anda tidak memasukkannya ke Kubernetes, karena ini akan menyebabkan lebih banyak masalah daripada manfaat. Atau, misalnya, jika ini adalah proyek kecil, bebannya kecil atau, pada prinsipnya, tidak banyak uang dan sumber daya. Tidak ada gunanya menyeretnya ke Kubernetes.

Dan secara umum, mungkin, seperti yang telah dikatakan banyak orang, jika Anda bertanya: “Apakah saya memerlukan Kubernetes?”, kemungkinan besar Anda tidak membutuhkannya. Saya tidak ingat siapa yang pertama kali mencetuskannya, menurut saya Pasha Selivanov. Saya setuju dengan ini 100%. Dan Anda perlu mengembangkan Kubernetes - dan ketika sudah jelas bahwa saya membutuhkan Kubernetes dan perusahaan kita membutuhkannya, dan ini akan membantu memecahkan masalah ini dan itu, maka mungkin masuk akal untuk belajar dan mencari tahu cara mengaturnya dengan tepat. melakukannya dengan baik, sehingga proses peralihan ke Kubernetes tidak terlalu menyulitkan.

Beberapa penyakit anak-anak dan beberapa hal yang sederhana, dan bahkan yang tidak terlalu sederhana, dapat diketahui secara khusus dari kami, dan tidak melalui penderitaan dan kesakitan Anda sendiri.

Banyak perusahaan telah melakukan hal yang pada awalnya hanya berupa infrastruktur tanpa containerisasi. Kemudian mereka sampai pada titik di mana menjadi sulit untuk mengelola semuanya, mereka beralih ke Docker dan pada titik tertentu mereka berkembang ke titik di mana ia menjadi sempit dalam kerangka Docker dan apa yang ditawarkannya. Dan mereka mulai melihat apa yang ada di sekitar, sistem apa yang memecahkan masalah ini, dan khususnya Kubernetes - ini adalah salah satu sistem yang memungkinkan Anda memecahkan masalah ketika Docker murni menjadi penuh sesak dan tidak memiliki fungsionalitas, ini adalah kasus yang sangat bagus ketika orang Mereka melangkah selangkah demi selangkah dari bawah ke atas, memahami bahwa teknologi ini tidak cukup dan melanjutkan ke tingkat berikutnya. Mereka menggunakan sesuatu, itu menjadi langka lagi - dan mereka melanjutkan.

Ini adalah pilihan yang disengaja - dan ini sangat keren.

Secara umum, saya melihat bahwa sistem kami dibangun dengan sangat indah, misalnya, kursus buruh pelabuhan, bahkan melalui kursus video. Kemudian setelah buruh pelabuhan ia pergi Kubernet dasar, lalu Mega Kubernetes, lalu ceph. Semuanya berjalan secara logis - seseorang meninggal dan profesi yang solid muncul.

Pada prinsipnya, rangkaian kursus memungkinkan Anda mencakup banyak kasus, bahkan kasus modern. Masih ada area yang masih berada di area abu-abu, saya berharap kita segera membuat beberapa kursus yang memungkinkan kita menutup area abu-abu ini, khususnya, kita akan menemukan sesuatu tentang keamanan. Karena ini menjadi sangat relevan.

Singkatnya, kami memiliki beberapa area abu-abu yang akan sangat bagus untuk ditutup, sehingga menjadi gambaran yang lengkap dan lengkap - dan orang-orang dapat datang, dan seperti Kubernetes sendiri yang seperti konstruktor Lego, Anda dapat membuat berbagai hal dari itu dikumpulkan, jika masih belum cukup - tambahan, sama dengan kursus kami, sehingga orang dapat memahami apa yang mereka butuhkan dari ini; mereka perlu merakit semacam teka-teki, semacam set konstruksi dari kursus kami.

Di balik layar. Bagaimana kursus dibuat?

Jika Anda bertanya pada diri sendiri pertanyaan yang secara umum benar dan jujur: “Siapa yang dapat menggunakan kursus Docker aktif sekarang?”, maka:

  • Bagi siswa yang baru mulai mendalaminya.
  • Karyawan departemen pengujian.
  • Faktanya, masih banyak perusahaan yang masih belum menggunakan Docker, tetapi belum ada yang pernah mendengar tentang teknologi tersebut dan, pada prinsipnya, tidak tahu cara menggunakannya. Dan saya mengenal beberapa perusahaan besar di St. Petersburg yang telah berkembang selama bertahun-tahun, dan mereka menggunakan beberapa teknologi lama, mereka bergerak ke arah ini. Khususnya, bagi perusahaan semacam itu, bagi para insinyur di perusahaan semacam itu, kursus ini bisa sangat menarik, karena, pertama, kursus ini akan memungkinkan Anda untuk segera membenamkan diri dalam teknologi ini, dan kedua, segera setelah muncul beberapa insinyur yang memahami bagaimana semuanya. berhasil, mereka dapat membawanya ke perusahaan dan mengembangkan budaya dan arahan ini di dalam perusahaan.
  • Menurut pendapat saya, kursus ini mungkin masih berguna bagi mereka yang telah bekerja dengan buruh pelabuhan, tetapi sangat sedikit dan lebih banyak lagi dalam gaya “lakukan sekali, lakukan dua kali” - dan sekarang mereka akan berinteraksi dengan Kubernetes yang sama, dan ini membebankan kewajiban tertentu pada mereka, jika Anda memiliki pengetahuan yang sangat dangkal tentang apa itu buruh pelabuhan, bagaimana menjalankannya, tetapi pada saat yang sama Anda tidak tahu cara kerjanya dari dalam, Anda tidak tahu apa yang terbaik untuk dilakukan. itu dan apa yang lebih baik tidak dilakukan, Maka kursus ini sangat cocok untuk mensistematisasikan dan memperdalam pengetahuan.

Namun jika Anda memiliki pengetahuan pada tingkat: “Saya tidak tahu cara menulis file Docker yang sama dengan benar, saya dapat membayangkan apa itu namespace, cara kerja container, cara penerapannya di tingkat sistem operasi” - maka ada pasti tidak ada gunanya mengunjungi kami, Anda tidak akan mempelajari sesuatu yang baru dan Anda akan sedikit sedih atas uang dan waktu yang dihabiskan.

Jika kita merumuskan kelebihan apa saja yang dimiliki mata kuliah kita, maka:

  • Kami mencoba membuat kursus ini dengan sejumlah kasus praktis yang memadai yang memungkinkan Anda tidak hanya memahami bagian teoretis yang ada, tetapi juga memahami mengapa Anda membutuhkannya dan bagaimana Anda akan menggunakannya di masa depan;
  • ada beberapa bagian yang sangat jarang ditemukan dimanapun - dan secara umum materinya tidak banyak. Mereka berhubungan dengan interaksi Docker dengan sistem operasi, meski sedikit berbeda. Mekanisme apa yang diambil Docker dari sistem operasi untuk mengimplementasikan sistem containerisasi - dan ini memberikan pemahaman yang lebih mendalam tentang keseluruhan masalah menjalankan container dalam sistem operasi Linux. Cara kerjanya, cara berinteraksi satu sama lain di dalam sistem operasi, di luar, dan sebagainya.

Ini adalah pandangan yang sangat mendalam sehingga jarang terjadi, dan pada saat yang sama, menurut saya, ini sangat penting. Jika Anda ingin memahami teknologi apa pun dengan baik dan memahami apa yang diharapkan darinya, Anda setidaknya harus memiliki gambaran umum tentang cara kerjanya pada tingkat rendah.

Kursus kami menunjukkan dan menjelaskan cara kerjanya dari sudut pandang sistem operasi. Di satu sisi, semua sistem containerisasi menggunakan mekanisme sistem operasi yang sama. Di sisi lain, mereka mengambil apa yang ada di sistem operasi Linux, seperti buruh pelabuhan. Sistem containerisasi lain tidak menghasilkan sesuatu yang baru - mereka mengambil apa yang sudah ada di Linux dan hanya menulis pembungkus yang nyaman yang memungkinkan Anda dengan cepat memanggilnya, menjalankannya, atau berinteraksi dengannya. Docker yang sama bukanlah lapisan yang sangat besar antara sistem operasi dan baris perintah, ini adalah sejenis utilitas yang memungkinkan Anda untuk tidak menulis kiloton perintah atau semacam kode C untuk membuat wadah, tetapi melakukan ini dengan memasukkan beberapa baris di terminal.

Dan satu hal lagi, jika kita berbicara secara spesifik tentang Docker, apa yang sebenarnya dibawa Docker ke dunia IT adalah standar. Bagaimana aplikasi harus diluncurkan, cara kerjanya, apa saja persyaratan untuk log, apa saja persyaratan untuk penskalaan, konfigurasi aplikasi itu sendiri.

Dalam banyak hal, buruh pelabuhan adalah tentang standar.

Standar juga berpindah ke Kubernetes - dan terdapat standar yang persis sama; jika Anda tahu cara menjalankan aplikasi Anda dengan baik di Docker, maka 99% aplikasi tersebut akan berfungsi dengan baik di dalam Kubernetes.

Jika Anda tertarik tidak hanya pada cara kursus Docker dibuat, tetapi juga pada kursus lain, tetapi juga tertarik pada kursus itu sendiri dari sudut pandang praktis, maka Masih ada waktu untuk membelinya dengan diskon pre-order 5000 rubel hingga 30 Juli.

Kami akan senang melihat Anda!

Sumber: www.habr.com

Tambah komentar