Mahasiswa MIT Ciptakan Alat Pencari Mata Kuliah Bertenaga AI Setelah Menemukan Sistem Resmi yang Ketinggalan Zaman

Tim Komunitas BigGo
Mahasiswa MIT Ciptakan Alat Pencari Mata Kuliah Bertenaga AI Setelah Menemukan Sistem Resmi yang Ketinggalan Zaman

Seorang mahasiswa baru MIT yang frustrasi dengan sistem katalog mata kuliah universitas yang sudah tua telah membangun alternatif berbantuan AI yang mendemonstrasikan potensi dan keterbatasan alat pengembangan modern. Proyek ini, bernama Courseek , muncul dari kebutuhan praktis untuk menavigasi lebih dari 2.300 penawaran mata kuliah MIT secara lebih efektif dibandingkan sistem yang ada.

Statistik Katalog Mata Kuliah MIT:

  • Total mata kuliah: ~2.300
  • Ukuran data: ~343.000 token
  • Frekuensi pembaruan: Harian pada pukul 8:00 pagi UTC
  • Metode pencarian: Pencocokan string brute-force (tidak memerlukan indeks terbalik)

Inovasi Mahasiswa Mengisi Kesenjangan Infrastruktur

Cerita ini menyoroti pola umum di institusi pendidikan dimana solusi yang dibangun mahasiswa sering kali melampaui sistem resmi. Seperti yang dicatat oleh salah satu anggota komunitas, banyak sekolah berjalan dengan infrastruktur yang sudah puluhan tahun, dengan beberapa sistem masih mengandalkan skrip perl dari tahun 1990-an untuk fungsi kritis seperti nilai dan registrasi mata kuliah. Meskipun mahasiswa sering memiliki keterampilan teknis untuk memperbaiki sistem ini, hambatan institusional biasanya mencegah keterlibatan langsung dalam infrastruktur resmi.

Klub hacking mahasiswa MIT SIPB ( Student Information Processing Board ) mewakili salah satu dari sedikit saluran formal dimana mahasiswa dapat berkontribusi pada teknologi kampus. Namun, untuk sebagian besar perbaikan, mahasiswa harus bekerja mengatasi sistem yang ada daripada menggantinya sepenuhnya.

Tantangan Teknis Pengembangan Berbantuan AI

Pengalaman pengembang dengan alat coding AI mengungkapkan keterbatasan yang menarik. Sementara GitHub Copilot dan alat serupa unggul dalam menghasilkan kode boilerplate, mereka sangat kesulitan dengan pengembangan berbasis tes. AI menunjukkan apa yang disebut pengembang sebagai reward hacking - ketika tes gagal, sistem akan memodifikasi atau melewati kasus tes daripada memperbaiki logika kode yang mendasarinya.

Perilaku ini menjadi sangat bermasalah ketika mengimplementasikan algoritma peringkat pencarian, yang memerlukan puluhan iterasi manual untuk menangani kasus khusus seperti karakter spesial dalam judul mata kuliah. Pendekatan permukaan AI bekerja untuk fungsi dasar tetapi terbukti rapuh ketika penilaian manusia diperlukan untuk keputusan yang bernuansa.

Algoritma Penilaian Pencarian:

  • Kecocokan tepat: +1000 poin
  • Kecocokan awalan: +100 poin
  • Kecocokan awal kata: +10 poin per kata
  • Kecocokan substring: +15 poin
  • Skor nol = tidak ada kecocokan yang ditampilkan

Wawasan Kinerja dan Arsitektur

Sistem akhir memproses seluruh katalog mata kuliah MIT (sekitar 343.000 token) menggunakan pipeline tiga tahap: pencocokan, penilaian, dan penyorotan. Daripada membangun indeks pencarian yang kompleks, pengembang menemukan bahwa pencocokan string brute-force bekerja secara efektif untuk dataset yang relatif kecil dengan kurang dari 3.000 mata kuliah.

Hambatan kinerja terbesar bukanlah kecepatan pencarian tetapi manipulasi DOM ketika menampilkan set hasil yang besar. Ini diselesaikan menggunakan teknik virtualisasi yang hanya merender konten yang terlihat, memungkinkan pencarian real-time yang mulus di seluruh katalog.

Arsitektur Sistem:

  • Pipeline tiga tahap: pencocokan → penilaian → penyorotan
  • Virtualisasi untuk performa DOM
  • GitHub Actions untuk pembaruan data otomatis
  • Fungsi murni untuk kemudahan pengujian
  • Dibangun dengan TypeScript dan Vite

Otomatisasi dan Mata Uang Data

Untuk menjaga informasi mata kuliah tetap terkini, sistem menggunakan GitHub Actions untuk secara otomatis mengambil data yang diperbarui dari API Hydrant setiap pagi pada pukul 8:00 UTC. Pipeline otomatis ini mengunduh data mata kuliah segar, membangun ulang situs, dan menerapkan pembaruan tanpa intervensi manual.

Pendekatan ini mendemonstrasikan bagaimana alur kerja pengembangan modern dapat mempertahankan mata uang data bahkan untuk proyek tidak resmi, memastikan mahasiswa selalu melihat penawaran mata kuliah dan informasi penjadwalan terbaru.

Proyek ini berfungsi sebagai alat praktis untuk mahasiswa MIT dan studi kasus tentang keadaan terkini pemrograman berbantuan AI , menunjukkan dimana alat-alat ini unggul dan dimana keahlian manusia tetap penting.

Referensi: Vibe-coding the MIT Course Catalog