Game tentang ilmu komputer, 'Turing Complete'
(turingcomplete.game)- Turing Complete adalah game yang berfokus pada pengalaman memahami konsep ilmu komputer lebih dalam dengan memecahkan masalah sendiri
- Pembelajaran dimulai dari gerbang logika dan berlanjut dengan mencoba membuat gerbang lain hanya dari gerbang nand
- Setelah itu, pemain menggabungkan memori dan komponen untuk memperluas rangkaian sederhana menjadi bentuk yang mendekati arsitektur komputer nyata
- Komputer yang dibuat pemain menargetkan Turing complete, yaitu struktur yang dapat menghitung algoritme seperti Turing machine
- Di atas perangkat keras yang dibuat sendiri, pemain menyusun instruksi assembly dan menyelesaikan puzzle pemrograman berbasis kode biner
Cara belajar ilmu komputer lewat game
- Turing Complete adalah game bertema ilmu komputer
- Game ini cocok untuk orang yang menyukai kesenangan menemukan solusi dan momen ketika konsep yang tadinya terasa sudah dipahami ternyata bisa dilihat lebih dalam
- Tersedia di Steam melalui Play Turing Complete
Alur pembelajaran dari rangkaian ke arsitektur komputer
-
Gerbang logika
- Gerbang logika adalah komponen dasar perhitungan
- Dengan hanya satu gerbang nand, pemain membuat gerbang lainnya sambil mempelajari dasar-dasar rangkaian
-
Komponen dan memori
- Dengan menambahkan memori di atas gerbang logika, pemain dapat membuat komponen yang lebih kompleks
- Komponen yang dibuat kemudian digabungkan untuk berkembang menjadi arsitektur komputer nyata
-
Arsitektur
- Komputer yang dirakit sendiri menargetkan Turing complete
- Ini berarti komputer tersebut dapat menghitung algoritme seperti Turing machine
-
Assembly
- Komputer diprogram dengan kode biner
- Pemain membuat instruksi assembly untuk menyederhanakan proses ini, lalu memecahkan puzzle pemrograman pada perangkat keras buatan sendiri
1 komentar
Pendapat Hacker News
Aku orang sederhana yang selalu meninggalkan komentar positif kalau melihat Turing Complete di HN :)
Aku membelinya beberapa tahun lalu dan mencoba beberapa level, lalu menyuruh putraku yang saat itu berusia 14 tahun memainkannya selama liburan musim panas, sambil sesekali kubantu. Di level terakhir, putraku menulis program dalam bahasa mirip assembly yang diajarkan game ini, sehingga komputer yang ia buat sendiri dari gerbang logika bisa melewati labirin acak dengan aturan tangan kanan. Game ini benar-benar luar biasa.
Satu-satunya keluhanku hanyalah bahwa bahkan game serupa pun belum ada saat aku seusia itu.
Aku terus mentok di level ketika memori diperkenalkan; sepertinya otakku kurang bisa menerima konsep tick berikutnya/sebelumnya. Namun ada banyak petunjuk dan solusi lengkap di internet, jadi kalau perlu kita bisa memasukkan solusinya dan lanjut ke level berikutnya.
Game ini sendiri hampir selesai lebih dari setahun lalu, dan pengembangnya sudah melakukan implementasi ulang menyeluruh untuk meningkatkan performa dan memungkinkan pembuatan CPU yang lebih kompleks, dll. Semoga tidak ada yang rusak saat pembaruan dirilis.
Sangat direkomendasikan.
[0] https://en.wikipedia.org/wiki/Rocky%27s_Boots
Yang kulakukan adalah:
Mux(a=out, b=in, sel=load, out=muxOut)
DFF(in=muxOut, out=DFFOut)
Baris terakhir seharusnya seperti ini:
DFF(in=muxOut, out=DFFOut, out=out)
Meski begitu, Turing Complete terlihat seperti pendamping yang sempurna untuk NAND to Tetris. Hanya saja tampaknya dijual hanya di Steam, jadi akan menyenangkan kalau bisa dibeli secara independen.
Aku sangat menyukai genre game seperti ini, jadi koleksi game terkait di Steam-ku pelan-pelan bertambah. Ada juga yang bukan di Steam, seperti nandgame.
Turing Complete termasuk salah satu yang bagus; simulasinya tampak stabil, dan setelah restrukturisasi pada masa akses awal, misinya juga tersusun cukup baik.
Namun UI-nya tidak selalu mulus, dan panduannya kurang, sehingga lebih cocok untuk orang yang sudah pernah melalui proses serupa di simulator lain.
Jika mencari game serupa yang menjelaskan konsep dengan lebih baik, aku merekomendasikan Silicon Zeroes. Secara keseluruhan rasanya sedikit kurang dipoles, tetapi punya struktur cerita yang lucu, menjelaskan dengan lebih baik apa yang ingin diperkenalkan tiap level, dan khususnya jauh lebih baik dalam menangani pemecahan masalah terkait clock.
Kalau lebih menikmati sisi mirip assembly daripada sisi rangkaian elektronik, aku merekomendasikan TIS100 atau Shenzhen I/O.
Kalau lebih suka puzzle yang dirancang dengan baik, Human Resource Machine mungkin lebih sesuai selera.
Kabar tentang Turing Complete ini juga layak dilihat: https://steamcommunity.com/app/1444480/eventcomments/3806156...
Setelah tidak ada pembaruan selama setahun, pada Agustus 2023 muncul kabar “Maaf, pembaruan besar baru akan segera datang!”, lalu setelah itu kembali sunyi.
Sepertinya pengembangnya tersandung penulisan ulang besar-besaran dengan skala sangat besar, sehingga memakan waktu jauh lebih lama dari perkiraan.
Aku sudah menunggu untuk memainkannya lagi setelah keluar dari akses awal, tetapi khawatir penantian itu akan berlangsung selamanya.
Komputasi digital punya keuntungan dari abstraksi. Untuk memikirkan gerbang logika, kita tidak perlu mengetahui hukum Ohm.
Kalau masuk ke komputasi analog, kita harus menemukan cara untuk mengajarkan matematika. Operasinya bukan lagi boolean, melainkan kombinasi berbagai persamaan listrik. Sekalipun matematikanya sederhana, nuansanya berbeda dari game pemrograman pada umumnya.
Meski begitu, aku penasaran apakah ini terdengar menarik dan layak dimainkan.
https://store.steampowered.com/app/2124440/SIC1/
Aku ingat hanya mencoba beberapa tantangan awal Human Resource Machine. Puzzle-nya terasa terlalu mudah dan proses menyelesaikannya juga tidak terlalu sulit, jadi aku tidak lanjut sampai bagian akhir.
Kebetulan aku baru saja membelinya saat Steam Winter Sale.
Konsepnya keren, tetapi agar menjadi game yang layak atau alat edukasi mandiri, game ini masih perlu jauh lebih dipoles.
Untuk orang yang punya pengetahuan terkait, ini cukup baik, tetapi bagi pemula, sepertinya akan menjadi pengalaman yang cukup membuat frustrasi karena game ini melemparkan masalah dengan sangat sedikit panduan, edukasi, atau persiapan.
Akan bagus juga kalau ada fitur yang membantu penataan rangkaian. Kalau komponen dipindahkan atau diputar, kabelnya terputus, lalu kabel harus digambar ulang satu per satu secara manual. Bahkan setelah menemukan logika yang benar, masih ada cukup banyak gesekan dalam implementasinya.
Saya benar-benar menikmati game ini, dan sampai sekarang masih menyenangkan. Paling enak dimainkan saat bisa fokus lama dalam satu sesi
Seperti Factorio, kalau sudah lama berhenti lalu kembali lagi, sering kali lebih seru memulai dari awal daripada melanjutkan. Atau cukup tetap berada di sandbox tahap akhir
UI-nya masih bisa dipoles lagi, dan selama beberapa tahun terakhir sedang ada pengerjaan ulang performa besar yang belum dirilis. Sekarang juga ada ekspor Verilog, tapi saya belum benar-benar mencobanya
Komponen tambahan yang terbuka di fase akhir membuat sandbox-nya benar-benar menyenangkan. Ada juga sistem skor yang menambahkan unsur kompetitif, tetapi baru terbuka jauh setelah komputer pertama
Saya banyak memainkan game ini sebelum memutuskan mengambil gelar ilmu komputer di usia paruh baya, dan berkat itu materi arsitektur dasar terasa sangat mudah. Sangat saya rekomendasikan juga sebagai sarana mengulang yang menyenangkan
Yang dimaksud “menyenangkan” di sini adalah kesenangan mengutak-atik logika Boolean dalam lingkungan yang ramah, jadi kalau ide itu tidak menarik bagi Anda, “game” ini juga mungkin tidak cocok
Di perusahaan kami juga benar-benar memakai ini, dan sangat merekomendasikannya
Sekitar setahun lalu saya menamatkannya bersama seorang rekan kerja di waktu luang, dan kami sangat menyukainya. Kami melihatnya sangat cocok untuk peserta magang teknik elektro, karena dalam kurikulum mereka memang mempelajari konsep logika digital seperti gate, register, shift register, dan counter, tetapi jarang mendapat kesempatan menerapkannya dalam proyek nyata
Selain itu, karena keterbatasan waktu, materi turunan seperti pemrograman assembly juga sudah tidak terlalu diajarkan lagi
Dengan sedikit panduan tambahan dari luar, game ini benar-benar membantu memotivasi orang untuk memahami cara kerja komponen logika digital dan bereksperimen sendiri dengannya. Bagus sekali bahwa pemain bisa sampai ke tahap menulis bahasa assembly sederhana dan memakainya untuk memecahkan puzzle, dan itu juga sangat memotivasi para siswa
Saat pertama kali membuka halamannya, saya kira ini terlihat seperti tiruan Digital Logic Sim [1] dari Sebastian Lague, tetapi setelah menonton videonya ternyata game ini masuk jauh lebih dalam, dan itu mengesankan. Jadi saya membelinya. Semoga dalam waktu dekat saya punya waktu untuk mencobanya
1: https://sebastian.itch.io/digital-logic-sim
Game ini mudah dibandingkan dengan satu semester dasar-dasar teknik komputer, tetapi terasa lebih menyenangkan terutama berkat minigame assembly-nya
Di universitas, ada tugas terpisah untuk merancang instruksi tertentu bagi CPU virtual dan tugas untuk merancang rangkaian tertentu, tetapi desainnya tidak lengkap ataupun benar-benar berjalan
Turing Complete menyenangkan karena memungkinkan kita membuat CPU kecil yang lengkap sambil merancang arsitektur set instruksi sendiri, dan bisa mendalaminya sejauh yang kita mau
Game serupa: https://nandgame.com/
Namun Turing Complete tampaknya lebih mendalam daripada nand game
Saya membeli game ini, dan menganggapnya sebagai sebuah karya seni
Saya bukan lulusan ilmu komputer, tetapi sudah bekerja sebagai developer sekitar 15 tahun. Banyak hal di dalam game ini sudah saya ketahui secara abstrak atau pernah saya utak-atik lewat board Arduino, proyek sampingan kecil, dan semacamnya
Namun ini benar-benar kurikulum praktik langsung yang selama ini didambakan orang-orang yang suka mengutak-atik komputer
Exapunks(https://www.zachtronics.com/exapunks/) juga layak diminati. Game ini mengajari saya assembly lebih baik daripada kelas universitas