
Pekerjaan utama saya terkait dengan data dan pemrograman
R
, tetapi dalam artikel ini saya ingin berbicara tentang hobi saya, yang bahkan mendatangkan penghasilan. Saya selalu tertarik untuk menceritakan dan menjelaskan hal-hal kepada teman, teman sekelas dan teman sekelas. Selalu mudah bagi saya untuk menemukan bahasa yang umum dengan anak-anak, saya tidak tahu mengapa. Secara umum, saya percaya bahwa membesarkan dan mendidik anak-anak adalah salah satu pekerjaan paling penting dari semua, dan istri saya adalah seorang guru. Secara umum, sekitar setahun yang lalu, saya beriklan di grup lokal di Facebook, mengetik dalam grup dan mulai mengajar goresan dan python seminggu sekali. Sekarang saya memiliki lima kelompok, kelas saya sendiri di rumah dan pelajaran individu. Bagaimana saya sampai pada kehidupan seperti itu dan bagaimana tepatnya saya mengajar anak-anak, saya akan jelaskan dalam artikel ini.
Saya tinggal di Kanada, kota Calgary, Alberta, jadi beberapa poin akan terkait dengan spesifik lokal.
Kamar
Memiliki ruang untuk kelas adalah masalah utama sejak awal. Saya mencoba mencari kantor dan kelas untuk disewa per jam, tetapi tidak terlalu berhasil. Universitas dan SAIT kami, mitra lokal MIT, mengambil kelas dengan dan tanpa komputer. Harga ternyata tidak terlalu manusiawi, tetapi pada akhirnya ternyata universitas tidak membiarkan anak di bawah umur, dan SAIT umumnya hanya diberikan kepada mahasiswanya. Jadi, opsi ini telah hilang. Ada banyak pusat perkantoran yang menyewakan ruang pertemuan dan kantor per jam, ada seluruh perusahaan yang menawarkan banyak pilihan dari kelas penuh ke kamar untuk empat orang. Saya punya harapan, karena Alberta adalah provinsi minyak, kami mengalami krisis yang lesu sejak 2014, dan banyak area bisnis kosong. Sia-sia saya berharap harga begitu ditarik kuda sehingga pada awalnya saya bahkan tidak percaya. Lebih mudah bagi pemilik untuk duduk di kantor kosong dan membayar biaya daripada membuang.
Pada saat ini, saya ingat bahwa saya secara teratur membayar pajak, dan jika negara kita yang terhormat memiliki sesuatu di sana, atau lebih tepatnya, kota Calgary. Ternyata jumlahnya sangat banyak. Kota ini memiliki arena untuk bermain hoki dan skating tokoh lainnya, dan arena ini memiliki ruang di mana para pejuang es yang keras mendiskusikan strategi untuk pertempuran di masa depan. Singkatnya, di setiap arena ada beberapa kamar dengan meja, kursi, papan tulis dan bahkan wastafel dengan ketel. Harganya cukup tinggi - 25 tugriks Kanada per jam. Saya awalnya memutuskan untuk mengikuti kelas selama satu setengah jam, jadi saya menetapkan harga untuk pelajaran $ 35 dari hidung dalam kelompok lima orang untuk mengkompensasi sewa, well, memasukkan sesuatu ke dalam saku saya. Secara umum, saya suka belajar di arena, ini menyelesaikan salah satu masalah - kebanyakan orang berbahasa Rusia tinggal di selatan, dan saya tinggal di utara kota, jadi saya memilih arena di tengah. Tapi ada ketidaknyamanan. Birokrasi Kanada baik dan ramah, tetapi, seolah-olah, secara halus, itu bisa agak lambat. Tidak ada masalah ketika Anda terbiasa dengan ritme dan rencana ke depan, tetapi kadang-kadang momen yang tidak menyenangkan muncul. Misalnya, di situs web kota Anda dapat dengan mudah memilih waktu dan tempat, memesan kamar, tetapi Anda tidak dapat membayar, dengan cara apa pun. Mereka menelepon melalui telepon dan menerima pembayaran dengan kartu. Anda dapat pergi ke kantor dan membayar tunai. Ada momen lucu tapi tidak terlalu menyenangkan ketika saya sedang menunggu panggilan mereka untuk membayar pelajaran kedua, saya tidak menunggu, dan saya terlambat ke kantor pada hari terakhir selama lima belas menit. Saya harus mendekati penjaga dengan wajah kurang ajar dan berbohong bahwa ruangan itu dipesan. Kami orang-orang Kanada, kami menerima kata-kata kami untuk itu, dengan tenang membiarkan saya masuk dan tidak memeriksa apa pun, tetapi saya tidak akan melakukan itu jika orang-orang tidak pergi ke kelas.
Jadi saya mempelajari musim dingin dan musim semi, dan kemudian ada perubahan yang menjadi sedotan terakhir. Pertama, kantor ditutup untuk pengunjung dan menawarkan untuk menerima pembayaran melalui telepon di tikungan. Saya duduk setidaknya setengah jam di lorong sebelum saya menelepon. Kedua, jika sebelum bibi tersayang membawa saya pembayaran selama satu setengah jam, sekarang seorang gadis mengangkat telepon dan mengatakan bahwa pembayaran hanya per jam. Pada saat itu, saya memiliki sekelompok tiga atau dua orang, dan tambahan $ 12,5 sama sekali tidak ekstra. Tentu saja, saya ideologis, tetapi jika istri saya mengusir saya ke jalan, maka tidak akan ada yang mengajar. Saya masih tidak bekerja saat itu.
Dan saya memutuskan untuk pergi ke perpustakaan. Perpustakaan menyewa kamar yang indah secara gratis, tetapi ada satu hal di sana - Anda tidak dapat melakukan kegiatan komersial. Bahkan organisasi amal tidak memiliki hak untuk mengumpulkan uang di sana. Mereka mengatakan kepada saya bahwa ini tidak terlalu dikontrol, hal utama di sana adalah tidak mengambil uang di pintu masuk, tetapi saya benar-benar tidak suka melanggar peraturan. Masalah lain - kamar sering sibuk dan sulit untuk melakukan kelas sesuai jadwal di satu tempat. Saya mengajar perpustakaan di musim panas dan awal musim dingin, saya harus memilih yang ada tempat, pada akhirnya saya mengubah lima atau enam perpustakaan. Kemudian dia mulai memesan tempat dalam dua bulan, dan kemudian, ternyata hanya dilakukan di satu perpustakaan kecil, sisanya tidak ada tempat untuk waktu yang tepat. Dan kemudian saya memutuskan untuk membuat kelas komputer di rumah. Saya menggantung papan, membeli iklan untuk meja kedua dan beberapa monitor lama. Untuk bekerja, perusahaan membeli laptop baru yang kuat untuk saya, karena analisis memakan waktu hampir 24 jam di komputer saya. Secara total, saya memiliki komputer lama baru, komputer lama lama, laptop, di mana layar kecil saya hancur dan netbook kuno, di mana saya sendiri menghancurkan layar. Saya menghubungkan mereka semua ke monitor dan menginstal Linux mint di mana-mana, kecuali untuk netbook, di mana saya menginstal distribusi yang sangat ringan, tampaknya, pappi. Saya masih punya laptop baru yang lama, dibeli seharga $ 200, saya menghubungkannya ke TV. Hal penting lainnya adalah bahwa pemilik kami baru saja mengubah jendela untuk kami, dan sekarang di dalam ruangan ada bingkai putih baru alih-alih kemelaratan yang runtuh. Sang istri memegang ruang tamu, dapur, dan kamar tidur kedua di bawah taman kanak-kanak, sehingga seluruh lantai ternyata murni pedagogis. Jadi, sekarang semuanya baik-baik saja dengan ruangan, mari kita pergi langsung ke pengajaran.
Gores
Saya mulai memberikan dasar-dasar pemrograman dengan bahasa awal. Ini adalah bahasa yang menggunakan blok siap pakai, diciptakan pada saat itu di MIT. Sebagian besar anak-anak sudah melihat buku kliping di sekolah, jadi cepat dikuasai. Ada program dan rencana pelajaran yang sudah jadi, tetapi saya tidak menyukainya sama sekali. Beberapa yang aneh - buat kisah Anda sendiri, misalnya. Seluruh program terdiri dari blok tak terhitung yang
say '<...>' for 2 seconds
. Dapat dilihat bahwa itu diciptakan oleh kepribadian yang sangat kreatif, tetapi dengan pendekatan ini Anda dapat belajar menulis kode spageti India klasik. Saya berbicara tentang prinsip-prinsip seperti KERING sejak awal. Koleksi tugas lainnya cukup bagus, tetapi anak-anak dengan cepat mencapai bagian bawah masalah dan mulai menjadikannya seperti senapan mesin. Akibatnya, dalam satu pelajaran mereka melakukan apa yang seharusnya mereka miliki dalam lima pelajaran. Dan pencarian dan pemilihan tugas membutuhkan banyak waktu pribadi. Secara umum, goresan lebih mengingatkan pada bukan bahasa, tetapi sebuah IDE, di mana Anda hanya perlu mengingat di mana harus mengklik dan ke mana mencarinya. Begitu siswa belajar lebih atau kurang, saya mencoba mentransfernya ke python. Saya bahkan punya anak perempuan berusia tujuh tahun tentang python yang menulis program sederhana. Apa yang saya lihat manfaat dari awal - ada konsep dasar yang berasimilasi dengan cara yang menyenangkan. Untuk beberapa alasan, tanpa terkecuali, sangat sulit bagi semua orang untuk memahami ide suatu variabel. Pada awalnya, saya dengan cepat menelusuri topik ini dan melanjutkan sampai saya menemukan fakta bahwa mereka umumnya tidak tahu apa yang harus dilakukan tentang hal itu. Sekarang saya mencurahkan banyak waktu untuk variabel dan kembali kepada mereka secara konstan. Saya harus melakukan grooving bodoh. Saya mengubah variabel yang berbeda di layar dan membuat mereka mengatakan artinya. Juga di awal ada struktur kontrol dan pemeriksaan nilai, seperti
while
,
for
atau
if
dalam python. Mereka diberikan cukup mudah, hanya dengan siklus bersarang ada masalah. Saya mencoba memberikan beberapa tugas dengan loop bersarang, dan agar aksinya jelas. Setelah itu, saya beralih ke fungsi. Bahkan untuk orang dewasa, konsep fungsi tidak jelas, dan terlebih lagi untuk anak-anak. Untuk waktu yang lama saya menyalibkan apa fungsi secara umum, saya berbicara tentang pabrik yang menerima benda sebagai input, dan membagikan barang, tentang seorang juru masak yang membuat makanan dari produk mentah. Kemudian kami membuat program "membuat sandwich" dengan produk, dan kemudian kami membuat fungsi dari itu, di mana produk dilewatkan sebagai parameter. Pada studi fungsi, saya berakhir dengan goresan.
Python
Python lebih mudah. Ada buku Python untuk Anak yang bagus, dan saya belajar darinya. Semuanya standar di sana - string, urutan operasi,
print()
,
input()
, dll. Ditulis dalam bahasa yang mudah, dengan humor, anak-anak menyukainya. Ini memiliki kelemahan yang melekat pada banyak buku pemrograman. Seperti dalam lelucon terkenal - cara menggambar burung hantu. Oval - lingkaran - burung hantu. Dari konsep sederhana, transisi yang terlalu tajam ke konsep yang agak rumit. Saya perlu beberapa pelajaran untuk mendapatkan objek yang melekat pada metode titik. Di sisi lain, saya tidak terburu-buru, saya mengulangi hal yang sama dengan cara yang berbeda sampai setidaknya beberapa gambar berkembang. Saya mulai dengan variabel dan memalu mereka lagi, sudah dalam python. Variabel adalah semacam kutukan.
Seorang siswa yang cerdas yang dengan cerdik mengklik variabel pada awal beberapa bulan yang lalu, terlihat seperti seekor domba jantan di gerbang baru dan tidak dapat menambahkan X ke pemain, yang jelas ditulis pada baris papan di atas. Ulangi! Apa yang dimiliki variabel? Nama dan makna! Apa artinya tanda sama dengan? Penugasan! Dan bagaimana kita memeriksa kesetaraan? Tanda sama dengan dobel! Jadi kita ulangi lagi dan lagi, sampai pencerahan sempurna. Kemudian kita beralih ke fungsi, di mana penjelasan tentang argumen paling lama. Argumen yang dinamai, berdasarkan posisi, secara default, dan sebagainya. Kami belum mencapai kelas di grup mana pun. Selain python dalam buku ini, kami mempelajari algoritma populer, lebih lanjut tentang itu nanti.
Sebenarnya, pelatihan
Pelajaran saya diatur seperti ini - selama setengah jam saya memberikan teori, menguji pengetahuan, mengkonsolidasikan apa yang telah saya pelajari. Jam - Lab. Seringkali saya terbawa suasana dan menyiarkan hingga satu jam, kemudian masing-masing setengah jam tersisa untuk latihan. Ketika saya sedang belajar python, saya mengikuti kursus
Algoritma dan Struktur Data Khiryanov dari MIPT. Saya sangat menyukai presentasinya dan struktur ceramahnya. Idenya adalah ini - kerangka kerja, sintaksis, perpustakaan - menjadi usang. Arsitektur, kerja tim, sistem kontrol versi terlalu dini. Akibatnya, tetap ada algoritma dan struktur data yang telah lama dikenal dan akan selalu dalam bentuk yang sama. Saya sendiri dari institute pascal hanya bilangan bulat dan saya ingat. Karena siswa saya kebanyakan masih muda, dari tujuh hingga lima belas tahun, saya percaya bahwa lebih penting bagi masa depan mereka untuk meletakkan fondasi daripada dengan cepat menulis platformer dengan python. Meskipun, mereka lebih suka platformer, dan saya mengerti mereka. Saya memberi mereka algoritma sederhana - gelembung, pencarian biner dalam daftar yang diurutkan, membalikkan notasi Polandia menggunakan tumpukan, tetapi kami menganalisis masing-masing dengan sangat rinci. Ternyata anak-anak modern tidak tahu, pada prinsipnya, bagaimana komputer diatur, saya juga katakan. Dalam setiap kuliah saya mencoba menghubungkan beberapa konsep bersama. Misalnya, komputer - memori / persen - memori dari sel (biarkan saya memegang kartu memori, tebak berapa banyak sel di sini) - setiap sel seperti bola lampu - ada dua keadaan - benar / salah - dan / atau - biner / desimal - 8bit = 1byte - byte = 256 pilihan - tipe data logis pada satu bit - bilangan bulat pada satu byte -
float
pada dua byte -
string
pada satu byte - jumlah terbesar pada 64 bit - daftar dan tuple dari tipe sebelumnya. Saya membuat reservasi bahwa dalam komputer nyata semuanya sedikit berbeda dan jumlah memori yang berbeda untuk tipe data ini, tetapi yang utama adalah bahwa dalam prosesnya kita sendiri membuat tipe data yang lebih kompleks dari yang lebih sederhana. Tipe data mungkin merupakan hal yang paling sulit untuk diingat. Oleh karena itu, saya memulai setiap pelajaran dengan pemanasan cepat - satu siswa menyebutkan tipe data, yang berikutnya memberikan dua contoh, dan sebagainya. Sebagai hasilnya, saya memastikan bahwa bahkan anak-anak bungsu pun berteriak riang - mengambang! boolean! tujuh, lima! pizza, mobil! Selama kuliah, saya terus-menerus menyentak satu atau yang lain, kalau tidak mereka dengan cepat mulai mengambil hidung mereka dan melihat langit-langit. Dan tingkat pengetahuan masing-masing harus diperiksa antar kasus.
Murid-murid saya tidak berhenti membuat saya takjub dengan kebodohan dan kecerdasan mereka yang tak terduga. Kepintaran, untungnya, lebih sering.
Saya ingin menulis lebih banyak, tetapi meskipun demikian lembaran itu ternyata. Saya akan menjawab dengan senang hati semua pertanyaan. Saya menyambut setiap kritik dalam segala hal, hanya permintaan - untuk lebih toleran satu sama lain dalam komentar. Ini artikel yang bagus.