DataArt Meluncurkan Platform Kiddo Gratis - Buku Tugas Online untuk Pelajar Python





Siapa pun dapat menambahkan tugas mereka sendiri ke database, dan tidak lebih sulit untuk menyematkan Kiddo di situs web Anda daripada pemutar YouTube. Denis Tsyplakov, Arsitek Solusi DataArt, penginspirasi proyek, berbicara tentang ide platform pendidikan anak-anak dan implementasinya selama masa karantina.



Apa Kiddo?



Kiddo adalah platform tempat anak-anak belajar menulis kode Python dengan memecahkan masalah dengan umpan balik cepat. Program sederhana yang ditulis oleh pengguna melalui API mengontrol adegan di mana kode langsung dirender. Sekarang ada dua adegan seperti itu: yang pertama adalah labirin di mana, mengumpulkan cookie dan melarikan diri dari monster, sedikit rakun berjalan, yang kedua adalah konsol yang lebih hardcore, lingkungan klasik untuk memecahkan masalah pemrograman.





Tugas pengguna adalah membawa rakun ke finish yang ditandai dengan bendera, mengumpulkan cookie dan tidak tertangkap oleh monster



Kiddo tidak berpura-pura menjadi buku teks, dan pemahaman awal tentang pemrograman masih diperlukan di sini. Tetapi sudah ada cukup banyak tutorial bagi pemula untuk belajar Python dari awal di Internet: sekilas, Anda dapat menghubungi saluran Python Books atau situs webpythonworld.ru . Platform kami dapat berfungsi sebagai tambahan untuk mereka, kumpulan tugas praktis. Namun, bagi saya tampaknya setiap siswa sekolah menengah dalam beberapa hari, dan kemungkinan besar, akan mengetahui cara menyelesaikan masalah dengan lebih cepat. Apalagi kita punya cukup tip.



Kami sekarang memiliki 20-30 tugas untuk masing-masing dari dua adegan tersebut. Pada dasarnya, mereka cukup sederhana, terutama dalam versi dengan rakun: pertama Anda hanya perlu memindahkannya - berikan perintah untuk memindahkan dua sel ke kanan, lalu tiga sel ke bawah, dll.





Secara bertahap tugas menjadi lebih rumit, monster bergerak muncul, yang dapat dilawan dengan bantuan bom dan senjata, trek itu sendiri mulai mengubah konfigurasi saat level dibuat



Konsolnya tidak terlalu menyenangkan, itu hanya emulator terminal komputer. Tetapi ada tugas non-sepele di mana, secara umum, Anda harus membuat kode. Meskipun mereka tidak membutuhkan upaya besar-besaran, siswa dapat mengatasinya. Tetapi yang paling penting, setidaknya seluruh manual dengan tugas-tugas untuk, katakanlah, tahun pertama sebuah universitas dapat dengan mudah ditempatkan pada tahap ini. Anda dapat menambahkannya sendiri - untuk proyek tertentu sendiri.





Untuk versi dengan konsol, ada 24 tugas di situs Kiddo.



Untuk menyematkan Kiddo di situs Anda, Anda hanya perlu menyalin kode semat - seperti di pemutar YouTube.



Kami di DataArt berpikir bahwa platform dapat digunakan di konferensi atau, misalnya, pada hari-hari terbuka (ketika konferensi dimulai dan pintu akhirnya terbuka). Sebuah permainan untuk programmer, di satu sisi, menetapkan penghalang masuk minimum, di sisi lain, ini masih bukan langkah yang sepenuhnya dangkal, itu tidak mengganggu saya secara pribadi, tidak seperti beberapa bentuk periklanan tradisional. Saya memahami bahwa mengiklankan untuk konferensi adalah kejahatan yang perlu :-) Tetapi ada cara untuk membuat iklan ini menyenangkan dan menarik. Tentu saja, kami juga mengandalkan kerja sama dengan sekolah pemrograman anak-anak - sekarang kami sedang bernegosiasi dengan salah satu dari mereka, kami akan lihat apa yang bisa kami lakukan bersama.



Apa perbedaan Kiddo?



Jika kita melihat situs pelatihan mana pun, kita melihat tiga komponen:



  1. , โ€” , . , , .
  2. โ€” , - , , . , - .
  3. LMS โ€” Learning Management System โ€” , , , , , , .


Di tempat pelatihan, ketiga komponen ini biasanya digabungkan menjadi satu kesatuan. Ini bisa dimaklumi, karena masing-masing merupakan produk dengan tujuan bisnis tertentu, yang pencapaiannya membutuhkan keterlibatan pengguna yang maksimal. Untuk alasan yang sama, elemen gameifikasi di LMS dari proyek semacam itu sering kali terlihat sangat sulit: pencarian dengan penerbangan antarplanet, inventaris, keterampilan karakter leveling. Jelas bahwa banyak proyek pendidikan mencoba mendekatkan mereka ke game online, hanya untuk membuatnya terlihat semenarik mungkin. Tetapi bagi saya tampaknya tidak nyaman bahwa produk semacam itu sulit atau tidak mungkin untuk disesuaikan, dan jelas tidak mungkin untuk digunakan di beberapa bagian - baik ambil seluruhnya atau cari yang lain. Dalam hal ini, pengguna memiliki sedikit pilihan.



Ada masalah lain - kesenjangan antara program yang sangat kekanak-kanakan, di mana, misalnya, Anda hanya perlu memindahkan kubus di sekitar layar, dan IDE, di mana Anda berada, berfungsi seperti orang dewasa. Meskipun ceruk perantara sebagian diisi dengan permainan pemrograman yang tersedia di Steam yang sama, misalnya TIS-100. Mereka biasanya mirip dengan yang saya pelajari sendiri 30 tahun lalu di komputer rumah. Hal utama di dalamnya adalah siklus umpan balik yang cepat: Anda menulis program normal dalam bahasa pemrograman yang kurang lebih matang dan mendapatkan visualisasi instan: sesuatu atau seseorang berputar, berlari, melompat, dll. Namun, permainan semacam itu hanya dapat digunakan sebagai produk yang tidak terpisahkan dan independen - tidak mungkin memisahkan tugas untuk mengintegrasikannya ke dalam siklus pendidikan Anda sendiri.



Suatu kali saya melihat putri bungsu saya memecahkan masalah pemrograman di portal pendidikan Rusia. Dia kemudian mengklik sekitar 90 di antaranya: sejujurnya, saya harus mengatakan bahwa tugasnya sendiri cukup sederhana, tetapi dengan visualisasi dan kecepatan umpan balik, semuanya baik-baik saja. Dalam prosesnya, saya punya ide: untuk membuat komponen universal yang dapat digunakan kembali atau disematkan dalam proyek pihak ketiga - lakukan apa pun yang Anda inginkan dengannya, buat tugas yang lebih kompleks. Ini dapat ditingkatkan sebagai sumber terbuka dan atas dasar ini, buat siklus pembelajaran yang berbeda. Hal utama adalah bahwa pengguna - misalnya, anak sekolah - harus menulis kode sederhana yang akan segera dieksekusi, dan sesuatu yang terlihat cukup menyenangkan akan terjadi di layar.



Bagaimana kami membuat Kiddo?



Ide tentang platform, atau lebih tepatnya, komponen yang dapat Anda sematkan langsung ke browser Anda, datang kepada saya lebih dari setahun yang lalu. Saya berharap siapapun yang tertarik bisa mengembangkannya. Sehingga pada akhirnya Anda bisa membangun masalah yang dalam dan kompleks, dimulai dari yang sederhana. Awalnya, semuanya berkembang perlahan, lalu dengan bantuan inisiatif internal dari Lab Bakat, tempat kami menguji hipotesis dan membuat proyek kecil untuk diri kami sendiri, semuanya berjalan lebih cepat.



Tapi, tentu saja, isolasi diri berhasil. Ada lebih banyak waktu, terlebih lagi, minat dalam proyek untuk anak-anak di antara sesama insinyur telah meningkat secara nyata. Mungkin, banyak dari pengalaman mereka sendiri atau pengalaman orang yang dicintai yakin betapa sulitnya menjaga anak di rumah.



Secara keseluruhan, kami hanya bertemu 350 jam produksi. Benar, di suatu tempat kami dibantu oleh kolega yang sementara berada di luar proyek klien. Kami berpindah dalam iterasi, dan kami memiliki hampir selusin rilis alfa internal. Nah, karena kami bertindak secara bijaksana dan dengan bantuan mereka yang bebas pada saat tertentu, kami telah mengakumulasi hutang teknis yang sangat besar. Oleh karena itu, kami telah melakukan refactoring selama hampir sebulan.



Beberapa fitur masih hanya dalam draf, tetapi proyek dapat diskalakan. Tugas-tugas tersebut sebagian besar ditemukan oleh pengembang itu sendiri, tetapi Anda dapat terus mengisi database hampir tanpa batas. Tidak ada masalah dengan visualisasi: kami berhenti pada konsep mainan arcade umum, yang mendekati banyak, katakanlah, dari akhir 1980-an. Saya sendiri pernah membuat tiga ini di Assembler.



Apa berikutnya?



Sekarang kami melokalkan platform untuk berbagai negara, dan kode sumbernya telah diposting di GitHub . Tapi Anda bisa mengisi database tugas dan membawa Kiddo ke situs Anda kapan saja. Masalah ditulis dalam JavaScript, kompleksitasnya tidak dibatasi oleh apapun kecuali imajinasi penulisnya. Kami memiliki satu set gambar siap pakai untuk tugas dengan bidang grafik, tetapi jika Anda mau, Anda dapat menggambarnya sendiri.







Terakhir, jika seseorang ingin menambahkan sesuatu miliknya ke Kiddo, misalnya, agar terlihat lebih organik sebagai elemen di situs tertentu, Anda cukup menulis kepada kami di kiddo@dataart.com . Saya pikir kita akan menemukan sesuatu. Atau Anda dapat membagi kode ke GitHub dan melakukannya sendiri.



All Articles