7 poin oleh GN⁺ 2024-12-11 | 1 komentar | Bagikan ke WhatsApp
  • Proyek data science yang dijalankan selama 1.600 hari berakhir gagal karena kehilangan momentum
  • Untuk mencoba tantangan baru dalam menangani data teks, dilakukan proyek "pengumpulan dan analisis data news ticker"
    • Pada Maret 2020, news ticker dari situs berita publik Jerman Tagesschau yang menyediakan berita terkait COVID-19 dipilih sebagai sumber data
    • Pada kuartal 3 2022, ketika COVID-19 menjadi kurang penting, cakupan diperluas ke news ticker terkait perang Ukraina-Rusia
    • Dilakukan analisis metapola data (seperti frekuensi publikasi) serta analisis makna per topik
  • Hanya eksplorasi data jangka pendek yang dilakukan, analisis yang sesungguhnya tidak selesai
  • Pada kuartal 3 2024, proyek dihentikan karena minat menurun dan kekurangan waktu

Pengumpulan data dan desain sistem

  • Dari 2020 hingga 2024, selama 1.600 hari, URL data berita harian dikumpulkan setiap hari dan data mentah diunduh
    • Tagesschau memiliki daftar cerita berita singkat setiap hari, dan tiap cerita mencakup timestamp, headline, teks isi, serta elemen multimedia
  • Dibangun pipeline data semi-otomatis berbasis kerja manual dan Python untuk mengubah data tidak terstruktur menjadi potongan berita terstruktur
    • Karena otomatisasi pengumpulan URL sulit dilakukan, dipilih metode mengunjungi situs setiap hari dan mengumpulkan tautan secara manual. Alasannya adalah skema URL Tagesschau yang tidak terstruktur
    • Setiap 4-8 minggu, halaman HTML diproses secara batch dengan Python lalu disimpan sebagai data mentah
    • HTML di-parse dengan BeautifulSoup4 dan disimpan ke database SQLite
    • Banyak bagian proyek telah diotomatisasi, tetapi pipeline ETL manual dan analisis aktual tidak diotomatisasi
    • Penulis menekankan pentingnya menyimpan data HTML mentah untuk mengantisipasi perubahan struktur DOM

Pelajaran dari kegagalan proyek

  1. Mempertimbangkan storytelling:
    • Sejak awal proyek, rancang storytelling agar hasilnya mudah dibagikan
  2. Menghasilkan hasil dengan cepat:
    • Jangan hanya mengumpulkan data, tetapi lakukan analisis awal dengan cepat pada dataset kecil
    • Publikasikan hasil sambil menjaga motivasi kerja (memanfaatkan pendekatan “Show Your Work”)
  3. Otomatisasi:
    • Otomatiskan semaksimal mungkin pengumpulan data dan pipeline ETL untuk meminimalkan pekerjaan berulang
    • Jika dikerjakan sekarang, penulis akan memanfaatkan AI agent berbasis LLM
  4. Evaluasi frekuensi pengumpulan data:
    • Tetapkan siklus pengumpulan sejak awal (misalnya: harian vs interval 30 detik)
    • Tentukan frekuensi pengumpulan data yang dapat diotomatisasi
  5. Menyimpan data mentah:
    • Simpan data mentah agar bisa menyesuaikan diri dengan logika parsing yang berubah di masa depan
  6. Memanfaatkan cloud:
    • Bangun infrastruktur yang sederhana dan andal sekaligus menjadi kesempatan mempelajari teknologi praktis

Kesimpulan: bertumbuh melalui kegagalan

  • Bahkan proyek yang gagal pun menjadi pengalaman belajar yang membantu seseorang menjadi "praktisi data yang lebih baik"
  • Kegagalan proyek data science adalah pengalaman belajar yang berharga sekaligus kesempatan mengumpulkan “bekas luka pertempuran”
  • Sangat disayangkan bahwa peluang otomatisasi melalui pemrosesan bahasa alami tidak dimanfaatkan
  • Kehilangan kesempatan menganalisis sekitar 100 ribu potongan berita juga sangat disayangkan
  • News ticker baru seperti pemilu AS 2024 terus bermunculan, sehingga orang lain masih bisa melanjutkannya
    • Penulis berharap ada yang tertarik melanjutkan proyek ini, dan siap membagikan semua datanya

“Go out and build something!”

1 komentar

 
GN⁺ 2024-12-11
Opini Hacker News
  • Daripada menyebut proyek ini gagal, lebih tepat melihatnya sebagai percobaan karena rasa ingin tahu yang kemudian dihentikan. Hanya dengan memublikasikan tulisan di blog dan diperkenalkan di HN saja sudah bisa dianggap sukses

    • Jika proyek ini diselesaikan, kemungkinan mereka akan merilis dataset yang bisa dimanfaatkan untuk berbagai analisis menggunakan Python
    • Dataset mentahnya bisa dirilis dan itu dapat dianggap sebagai keberhasilan
    • Dengan kemajuan LLM, sekarang orang kemungkinan akan mempertimbangkan model dasar yang dibungkus sebagai agen AI
  • Web scraping tetap merupakan bagian yang sulit, dan banyak situs berupaya mencegah scraping

  • Ada proses manual mengunjungi situs web Tagesschau setiap hari untuk mengumpulkan tautan. Ini bukan rencana kerja yang tepat

  • Pernah mengerjakan proyek hobi data science terkait COVID, tetapi kehilangan minat setelah 6 bulan. Scraper-nya masih terus berjalan di cloud

  • Seharusnya memanfaatkan feed RSS untuk otomatisasi, bukan proses manual

  • Penting untuk mendapatkan umpan balik sejak awal proyek. Ini memberi kesempatan untuk menyesuaikan arah proyek dan menghidupkan kembali minat

  • Menyukai dinamika proyek yang mencakup beragam minat. Hal-hal yang dipelajari dari berbagai proyek dimanfaatkan untuk mendapatkan ide baru

  • Judulnya bisa menyesatkan. Pekerjaan sekadar scraping feed berita sebenarnya bisa disiapkan hanya dalam beberapa hari

  • Banyak orang kesulitan menuntaskan proyek pribadi. Data science adalah pekerjaan eksploratif untuk menemukan wawasan dari dataset

  • Dalam proses pengumpulan data, pekerjaan manual diperlukan karena skema URL situs Tagesschau tidak terstruktur. Diperlukan sumber data yang stabil

  • Pengembang situs web tidak mempertimbangkan scraper. Jika ingin mengumpulkan dataset yang unik, lebih baik meminta pengembang web menyediakan API publik