Bagaimana Membuat Sistem Untuk Menguasai Semua Teknologi Terbaru Tanpa Effort

Monday, 15 Jan 2024

Teknologi berkembang sangat cepat. Kamu sebagai software engineer pasti sangat kelimpungan akan hal tersebut. Khawatir tidak bisa mengikuti perkembangan teknologi yang cepat.
 
Jika tidak bisa mengikuti perkembangan, akan membuat skill yang kamu miliki tidak relevan lagi dengan industri.
 
Mau tidak mau kamu harus terus belajar dan berkembang mengikuti teknologi yang baru.
 
Belajar terus menerus adalah 1 hal yang penting dan itu sudah membuat kelimpungan.
 
Hal yang tidak kalah penting lainnya dan membuat lelah adalah membuat kurikulum, belajar basic, dan kemudian mengaplikasikannya ke dalam bentuk projek
 
Edisi kali ini saya akan membantumu untuk membuat sistem agar bisa mempelajari semua teknologi secepat mungkin. Sekalipun itu teknologi terbaru namun tidak membuat kelimpungan.
 
Kunci dari sistem yang akan kamu buat kali ini adalah teknologi tersebut punya dokumentasi yang jelas dan lengkap. Itu saja.
 
Okay let’s do this! Langkah pertama adalah:

Download Dokumentasi

Here’s the thing. ChatGPT itu tidak up to date secara realtime. Sekalipun ada plugin untuk browsing, plugin tersebut tidak bisa mengambil semua dokumentasi secara lengkap.
 
Jadilah kamu yang harus memberikan dokumentasi terbaru yang akan dipelajari.
 
Pada banyak website, mereka seringkali tidak menyediakan dokumentasi yang bisa didownload.
 
Maka mau tidak mau, kamu harus scrape dokumentasinya agar ChatGPT dapat memperoleh dataset terbaru.
 
Kali ini saya akan mencontohkannya untuk mempelajari bahasa pemrograman yang sedang naik daun, yaitu Rust. Dokumentasinya bisa dilihat di https://doc.rust-lang.org/book/

1. Membuat Web Scraper

1.1 Mengambil semua link dokumentasi
Scrape semua url di dalam dokumentasi
notion image
 
  • Buka developer console dengan cara klik kanan di tempat yang kosong dan klik Inspect.
  • Pergi ke tab Console. Kemudian inspect element link yg mengarahkan ke dalam detail dokumentasinya.
notion image
 
Ambil semua link dengan mengetikkan kode berikut di dalam tab Console.
 
Kalau berhasil maka akan terdapat 104 URL di dalam arrayLink seperti berikut:
notion image
 
1.2 Scrape Halaman dan Convert ke PDF
Kali ini saya akan pakai nodejs untuk scraping setiap halaman dan kemudian mengkonverikannya ke dalam bentuk pdf. Jika belum mendownlaod nodejs, bisa download terlebih dahulu di https://nodejs.org/en dan download yg ada tulisan LTS.
 
Setelah nodejs terinstall, buat folder baru bernama documentation-scraper dan buka di dalam text editor-mu. Kali ini saya pakai VSCode. Buka terminal dan ketikkan.
 
Akan muncul satu file bernaman package.json. Lalu install package puppeteer yang akan kita gunakan untuk scrape halaman dan mengkonversikannya ke dalam PDF.
 
Jika sudah terinstall sekarang buat file bernama scraper.js di dalam root folder project atau satu tempat dengan file package.json. Kemudian tuliskan kode berikut
 
Coba scrape 1 link dan convert ke pdf terlebih dahulu.
 
Sebelum menjalankan scrapernya, buat folder bernama output, tempatkan satu tempat dengan package.json.
notion image
 
Kalau sudah silahkan run di dalam terminal dengan perintah node scraper.js. Jika berhasil akan muncul file bernama ch01-00-getting-started.pdf di dalam folder output.
 
Langkah selanjutnya adalah scrape semua link yang sudah diambil di step 1.1 tadi. Modifikasi kodemu seperti berikut agar bisa loop semua link di dalam array.
 
Tunggu sampai selesai.
Jika sudah selesai maka akan tampak semua file yang berhasil discrape seperti berikut.
notion image
 

2. Membuat PDF Merger

Sebetulnya saat ini kamu sudah bisa mengupload semua file untuk dibaca ChatGPT. Tapi sayangnya ChatGPT hanya membatasi maksimal 10 file sekali upload.
 
Kamu bisa akali dengan cara menggabungkan semua pdf tadi ke dalam 1 file pdf saja agar bisa diberikan ke ChatGPT. Buat file baru bernama merger.js dan tuliskan kode berikut:
 
Jika berhasil akan muncul 1 file bernama merged.pdf di dalam folder output.

Belajar di Dalam ChatGPT

Kita perlu upgrade plan ChatGPT untuk bisa upload file. Saya merekomendasikan untuk upgrade ChatGPT sebagai investasimu 🙂
 
Upload file merged.pdf ke dalam ChatGPT dan minta ChatGPT menganalisa file yang kamu upload untuk memastikan file tersebut sudah sesuai.
notion image
 
Oke mantap, sepertinya ChatGPT sudah benar dan kedepannya akan menjawab menggunakan dokumentasi yang sudah diupload. Bukan dari dataset ChatGPT sendiri.
 
Kamu bisa mulai belajar dengan dokumentasi tersebut. Salah satu teknik belajar yang sangat efektif & efisien adalah dengan menggunakan pareto principle. Cukup belajar 20% dari keseluruhan untuk paham 80%. Sekarang ketikkan prompt berikut:
 
Belajar secara manual 5 konsep untuk memantapkan basic. Tidak perlu mempelajari semuanya, cukup 20% saja di awal-awal untuk bisa menguasai 80%. Sesuai dengna prinsip pareto.
notion image
 
Jika dirasa sudah nyaman dengan mempelajari basicnya, langkah selanjutnya tentu saja membuat projek agar tidak terjebak ke dalam Tutorial Hell.
 
Tuliskan prompt berikut untuk mendapatkan 10 list ide project untuk beginner
 
Semua ide yang diberikan nampak bagus dan beginner friendly. Saya akan coba membuat nomor 9. Currency Converter.
notion image
 
Ketikkan prompt berikut untuk mendapatkan instruksi step by step disertai dengan referensi chapter atau section yang mana agar bisa memahami lebih dalam step yang sedang dikerjakan.
 
notion image
 
Great!
Sekarang kamu bisa belajar teknologi apapun tanpa tergantung dataset ChatGPT yang tidak update saat ada teknologi baru yang keluar.
 
Cukup berikan ChatGPT dokumentasi terbaru, secara instan kamu bisa mempelajarinya dengan teknik-teknik yang sesuai dengan gaya belajarmu.
 
Dengan membuat sistem ini, tidak mustahil kamu bisa menguasai banyak teknologi baru setiap hari.