SQL Noir – Belajar SQL dengan Memecahkan Kejahatan
(sqlnoir.com)- SQLNoir adalah game belajar SQL berbasis cerita di mana pengguna membuka berkas kasus dan menelusuri database untuk menemukan petunjuk
- Setiap kasus menyediakan ringkasan kasus, skema database, dan editor SQL bawaan sehingga pengguna dapat memeriksa tersangka dan petunjuk lewat kueri
- Pengguna dapat berlatih berulang kali pola SQL nyata seperti filtering, join, agregasi, dan subkueri dalam proses memecahkan kasus
- Dapat langsung dimulai tanpa instalasi atau pengaturan lingkungan terpisah, dan progres ditunjukkan lewat XP serta jumlah kasus yang berhasil diselesaikan
- Kasus pemula membahas dasar-dasar, sementara kasus lanjutan menuntut join hierarkis dan kondisi yang lebih rumit, sehingga cocok untuk developer, analis data, pelajar, dan pengajar
Mempelajari SQL sambil Memecahkan Kasus
- SQLNoir menempatkan pengguna ke dalam investigasi berbasis cerita dan menyediakan ringkasan kasus serta skema database secara bersamaan
- Pengguna menjalankan kueri SQL di editor bawaan untuk menghubungkan tabel, menyingkirkan tersangka, dan memverifikasi alibi
- Pola SQL yang dipraktikkan dalam alur kasus mencakup
- filtering
- join
- agregasi
- subkueri
- Tanpa instalasi atau pengaturan tambahan, pengguna bisa langsung membuka berkas kasus dan menyelidiki data
Progres dan Sasaran Pembelajar
- XP dan jumlah kasus yang diselesaikan menunjukkan progres
- Kasus pemula dirancang untuk mempelajari dasar-dasar SQL, sementara kasus lanjutan menuntut join hierarkis dan kondisi yang lebih menantang
- Cocok untuk pengguna berikut
- developer yang ingin melatih dasar SQL dan join secara langsung
- analis data yang mempersiapkan wawancara dengan skenario kueri yang realistis
- pelajar yang belajar lebih cepat lewat cerita dan umpan balik instan dibanding materi ajar yang kering
- pengajar yang mencari tugas latihan SQL tanpa mengharuskan peserta menyiapkan lingkungan
1 komentar
Opini Hacker News
Menarik dan saya suka
Menambahkan beberapa hal: pada kasus pertama, kolom input submit kurang jelas apakah harus diisi nama atau ID tersangka
Akan bagus kalau ada tombol “salin ke catatan” pada hasil keluaran, dan juga dokumentasi tentang fungsi apa saja yang tersedia atau dialek SQL apa yang dipakai
Belajar sambil benar-benar memecahkan proyek kecil jauh lebih mudah, jadi ini terlihat seperti pendekatan yang cukup bernilai
Dari sudut pandang pengguna, karena ini game detektif, saya tentu menyimpulkan yang diminta adalah nama “tersangka”
Benar-benar menyenangkan
Sebagai perbaikan kecil, akan bagus jika bisa mengunduh database SQLite secara langsung lalu melakukan query dengan aplikasi pilihan sendiri, sementara situs hanya dipakai untuk briefing, catatan, dan submit
Selain itu, kalau disebut untuk “belajar SQL”, rasanya perlu sedikit lebih banyak panduan atau contoh query
Dalam kondisi sekarang, kalau tidak tahu SQL, orang mudah sekali benar-benar tersesat tentang apa yang harus dilakukan; ini memang alat yang keren, tetapi sebagai alat belajar masih belum sepenuhnya pas
Tambahan yang bagus untuk bidang yang pilihannya tidak banyak
Yang terlintas adalah SQL Island(https://sql-island.informatik.uni-kl.de) dan SQL Murder Mystery(https://mystery.knightlab.com); pendekatan SQL Noir lebih dekat ke yang terakhir, yaitu petualangan mandiri yang tidak terlalu diarahkan
Saya sedang membuat engine game SQL bernama SQLab, yang bisa menambahkan latihan ke database dasar mana pun untuk membuat petualangan mandiri yang terarah: https://github.com/laowantong/sqlab
Dump database bisa diunduh dan saat ini dapat dimainkan di MySQL, SQLite, dan Postgres dengan antarmuka admin apa pun
Di halaman yang sama juga ada tautan ke investigasi polisi panjang yang dirancang untuk mahasiswa Prancis, dan jika Anda guru atau peneliti, prinsip SQLab dijelaskan di sini: https://arxiv.org/abs/2410.16120
Proyek-proyek lain yang disebut di sini juga bagus
Saya juga menambahkan proyek SQL Game Console dan SQL Game Editor agar siswa bisa membuat game escape SQL mereka sendiri di browser: https://eskuel.de
Menyenangkan untuk diuji coba di kelas, dan saat ini hanya mendukung bahasa Jerman
Contoh game: https://eskuel.de/zoo/
Mengingatkan saya pada MathNet yang saya tonton waktu kecil
Itu serial investigasi polisi edukatif bergaya Dragnet, dengan dua penyidik yang membawa kalkulator seperti pistol di sarungnya
https://en.m.wikipedia.org/wiki/Mathnet
https://youtu.be/vNhBq3kjq_Q?t=2011
Saya suka, gayanya unik sekaligus keren
Ini terasa seperti awal dari cara yang menyenangkan untuk belajar, berlatih, dan mengingat kembali SQL
Beberapa hal: akan lebih baik jika ada satu ruang kerja tanpa tab. Saat ini harus terus bolak-balik antar-tab
Akan bagus kalau query SQL sebelumnya dan hasilnya bisa disimpan; saat ini saya menyalin hasil ke catatan
Sepertinya fitur ini akan makin penting saat kasusnya menjadi lebih kompleks
Saya baru saja mengimplementasikan tampilan berdampingan agar dua tab bisa dilihat sekaligus, semoga membantu
Seperti yang disarankan pengguna lain, query juga bisa disimpan di catatan, atau dikomentari di editor
Tinggal pakai topi, lalu mengatakan “faktanya saja, Bu” beberapa kali, dan lengkap sudah
Idenya bagus, tetapi imersi UI hampir tidak ada
Untuk meningkatkan imersi, perlu autocomplete, kemampuan melihat skema dan query bersamaan di layar lebar, serta cara mudah menyalin nama tabel dan kolom dengan sekali klik
Khususnya nama tabel bahkan tidak bisa dipilih
Jangan hanya memungkinkan menimpa query yang sudah dijalankan; akan lebih baik jika bisa terus menambahkan query baru di atas atau di bawah query yang sudah dijalankan
Karena itu mengurangi imersi, dan juga mengurangi bagian yang seharusnya diingat sendiri
Mungkin boleh jika diaktifkan di new game plus
Saya baru saja mengimplementasikan tampilan Side by Side untuk membuka dua tab berbeda sekaligus, serta tombol untuk menyalin nama tabel
command-/Ide yang benar-benar bagus, dan memecahkan kasusnya menyenangkan
Untuk programmer junior, mungkin versi komik akan membantu
Editor SQL kadang berperilaku aneh sehingga membuat saya tidak bisa menulis dengan benar
Saat mencoba menambahkan komentar di editor, perilakunya aneh
Cara mereproduksinya adalah menulis beberapa baris lalu menambahkan
--di depan tiap baris untuk mengomentarinya satu per satuMisalnya setelah menulis
select i.*, s.*,from interviews i,join suspects s,on s.id = i.suspect_id, begitu menambahkan--juga di depanfrom interviews i, baris itu pindah ke baris sebelumnya dan syntax highlighting rusakSepertinya saya baru saja memperbaiki bug ini
Saya ingat saat kuliah, pengajar pernah memberi tautan ke minigame memecahkan kriminal yang mirip dengan ini untuk latihan SQL
Saya cukup tenggelam di dalamnya, sampai mencoba mencari solusi satu baris yang paling efisien
Terima kasih sudah membuatnya; sepertinya saya akan membagikan ini kepada orang-orang yang ingin belajar SQL
Cukup menyenangkan, saya mencoba dua misteri gratis dan rasanya memuaskan saat berhasil memecahkannya
Kekurangan kecilnya adalah akan bagus jika editor SQL mendukung komentar
Jika bisa mengomentari query lama sebelum menjalankan query baru agar histori tetap tersimpan, itu akan praktis, terutama ketika perlu menjalankan query yang sama lagi
--Kalau tidak bisa, berarti itu bug dan akan saya selidiki
Tab Notes juga bisa digunakan untuk menyimpan query lama dan temuan