Halo orang-orang cantik!
Selamat datang di blog Programming and Doodles! Dalam artikel ini, saya akan menyajikan hasil eksperimen semu: memblokir semua alat AI yang saya gunakan, tetapi tetap bekerja seperti biasa (sebagai pengembang dan penulis teknis).
Berlangganan untuk menerima ini langsung ke kotak masuk Anda: https://codedoodles.substack.com/
Sejak ChatGPT dan chatbot serta alat AI lainnya dirilis, kami perlahan kehilangan kendali atas pekerjaan kami. Menggunakannya untuk menulis dan men-debug kode, email, dan bahkan pesan singkat, mungkin mengakibatkan skenario ini. Lebih buruk lagi, saya telah melihat posting yang menyatakan "Penelitian menunjukkan bahwa penggunaan AI menurunkan kemampuan berpikir kritis kita." Itu membuat saya khawatir: apakah saya masih memiliki keterampilan yang saya miliki, pada tahun 2020-22 sebelum ChatGPT dirilis?
Saya tidak bisa tidak setuju: Alat AI menghemat banyak waktu dan meningkatkan produktivitas. Namun, berapa biayanya? Jika kita perlahan-lahan kehilangan kemampuan untuk berpikir dan memecahkan masalah sendiri, kita merusak salah satu anugerah terbesar bagi umat manusia.
Namun, saat membaca ini, jangan salah paham: Saya tidak membenci AI. Saya pikir ini adalah konsep menakjubkan yang diwujudkan oleh para programmer, dan kita semua menggunakannya secara teratur. Bahkan sekarang, ekstensi Grammarly saya menunjukkan kepada saya cara untuk meningkatkan kalimat-kalimat ini menggunakan AI. Satu-satunya hal yang tidak saya sukai adalah cara kita terlalu bergantung pada AI. Astaga, saya harus menulis artikel lain tentang ini!
Kembali ke konteks, saya agak kecewa dengan seberapa banyak saya menggunakan AI untuk melakukan pekerjaan saya dan memutuskan untuk memblokir setiap alat AI selama sehari . Untungnya, saya belum mengunduh salah satu aplikasi ini di MacBook saya, jadi yang perlu saya lakukan hanyalah mendapatkan ekstensi untuk memblokir ChatGPT, Claude, Gemini, dan DeepSeek.
Artikel ini ditulis bersamaan dengan karya tersebut , dan dalam tahap penyuntingan, saya menyadari bahwa artikel tersebut terlihat sedikit... aneh. Itu adalah proses "berpikir" otak manusia saya yang konyol, seperti Penalaran ChatGPT. Dengan ini saya meminta Anda untuk tidak menghakimi saya dari artikel ini.
Date: Feb 17th, 2025 The to-do list: - Write a script to scrape Bing Search results (for a tutorial on building a scraper). - Review the PR #6 on GitHub. - Improve SEO of my personal site, chenuli.codedoodles.xyz (current SEO score was 85) - If more time's left, design a merch product.
(daftar tugas yang sangat kecil, ya, saya bos saya sendiri)
Pengikisan web dalam Python adalah salah satu program termudah yang dapat Anda tulis dan sering kali diabaikan. Saya telah menulis sekitar 3-4 artikel tentang pengikisan berbagai platform seperti TikTok dengan Apify, tetapi yang diperlukan hanyalah satu atau dua perintah di ChatGPT untuk menulis skrip:
Write a python script using selenium and chromedriver to scrape "Trending Videos" page on TikTok. Structure: Page consists of a card-like structure which consists of trending videos on TikTok. These are inside a <div> container with the class of tiktok-559e6k-DivItemContainer e1aajktk28 blah blah and blah
Namun kali ini berbeda. Saya akan menulis dasar skripnya terlebih dahulu, mengujinya, dan mengoptimalkannya sesuai kebutuhan.
Saya menghabiskan beberapa menit untuk memutuskan pustaka mana yang akan digunakan: Playwright, selenium, atau beautiful soup. Beautifulsoup tampaknya merupakan pilihan yang paling mudah dan sederhana, jadi saya memilihnya.
import requests from bs4 import BeautifulSoup
Saya kemudian harus menulis header yang meniru permintaan browser yang sebenarnya, agar tidak diblokir oleh perlindungan bot (atau CAPTCHA). Agak mustahil bagi saya untuk menuliskannya sendiri secara akurat, jadi saya membuka ChatGPT tanpa sengaja . Memang menakutkan, tetapi itu diblokir untuk yang terbaik.
Setelah sekian lama, saya menggunakan Google untuk permintaan sampel. Sungguh penyelamat.
headers={"User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36"}
Kalau begitu, saya mungkin harus membuat tautan pencarian seperti yang digunakan Bing. Mungkin mirip dengan Google.
Saya harus mengidentifikasi variabel kelas (apakah itu yang Anda sebut) untuk mengikisnya secara individual.
Bing melakukan pekerjaan yang bagus dalam hal ini. Hasilnya ada dalam struktur daftar, <ol>
, dengan setiap item daftar menjadi satu hasil pencarian. Itu membuat segalanya jauh lebih mudah. Saya dapat mengambil semua item <li> ini dari halaman dan menetapkannya ke satu variabel, lalu menggunakan loop, saya dapat memformat judul dan tautan dengan jelas. Keren! Bukan metode yang jenius, tetapi setidaknya saya belum sepenuhnya kehilangan kemampuan berpikir.
completeData = soup.find_all("li",{"class":"b_algo"})
Astaga, itu bodoh! Itu hanya menggunakan loop yang tidak perlu dan tidak dapat digunakan kembali.
Kita bisa mengulang daftar item itu sendiri. Dan mari tambahkan beberapa penanganan kesalahan juga.
for item in soup.find_all("li", class_="b_algo"): title = item.find("h2") link = title.find("a")["href"] if title else "" results.append((title.text if title else "No title", link)) if response.status_code != 200: print("Failed to retrieve search results") return []
Itu jauh lebih baik. Terakhir, kita dapat menambahkan loop lain untuk memformat dan mencetak hasilnya sesuai dengan format tersebut.
search_results = scrape_bing("Programming and Doodles") for title, link in search_results: print(f"{title}: {link}")
Dua kesalahan sintaksis kecil kemudian, berhasil!
Rasanya luar biasa. Seperti masa lalu yang indah.
Ini tidak akan memakan waktu lama. Ini hanya skrip Python yang panjang.
Melihat PR, kode tersebut tidak mengganggu operasi. Namun, elemen-elemennya tidak terpusat seperti yang asli yang saya buat. Namun ini adalah kedua kalinya saya meninjau PR ini dan kontributor ini tampaknya baru. Meminta perubahan lagi akan terasa tidak enak, saya akan memperbaikinya sendiri dan memberikan ulasan yang bagus.
Setelah memeriksa kodenya, dia telah melakukan pekerjaan dengan baik. Namun, untuk beberapa alasan, dia pasti telah meletakkan variabel sticky pada GUI. Biar saya hapus itu.
Hmm, masih belum berfungsi. Seharusnya ada sesuatu di tkinter yang mendukung elemen pemusatan.
Saya ingat kata kunci rel, tetapi melelahkan untuk menambahkannya ke semua elemen. Sebagian besar hasil di Google menunjukkan hal yang sama.
Oh, ketemu satu! Kita bisa menggunakan grid_columnconfigure untuk itu. Terima kasih, bitRAKE di StackOverflow.
Fiuh, saya bisa bertahan hidup dengan baik tanpa AI sebagai pengembang pada tahun 2025.
Saya baru saja membuat situs web pribadi (bukan portofolio), tetapi skor SEO-nya agak buruk.
Cara saya untuk meningkatkan SEO adalah selalu menggunakan data terstruktur (markup skema), untuk hasil yang kaya. Jika Anda belum mengetahuinya, ini adalah bentuk metadata yang membantu mesin pencari memahami konten Anda dengan lebih baik, yang mengarah ke fitur hasil pencarian yang disempurnakan seperti cuplikan kaya, Tanya Jawab Umum, dan panel pengetahuan. Jika SEO situs Anda tidak 100, mengaktifkan hasil kaya mungkin akan membuatnya menjadi 100.
Ini adalah sesuatu yang saya minta ChatGPT lakukan; Saya akan menulis konten dan memintanya untuk menggunakan sintaksis yang tepat. Ini akan sangat mengurangi waktu yang dibutuhkan, tetapi karena diblokir, saya pikir saya akan menulisnya sendiri.
Atau saya dapat menyalin/menempel markup skema dari situs utama saya, codedoodles.xyz, dan mengubahnya. Itu kode saya.
Terlebih lagi, saya juga dapat menambahkan bagian Tanya Jawab Umum. Namun, saya ingat pernah membaca bahwa kebijakan Google menyatakan bahwa Anda tidak dapat menambahkan markup skema untuk konten yang tidak terlihat di situs web. Jelas, situs web saya tidak memiliki bagian Tanya Jawab Umum.
Tapi tidak apa-apa. Saya masih bisa menambahkan pertanyaan seperti "Siapa Chenuli Jayasinghe", dan jawabannya akan berupa ringkasan konten di situs web. Sama-sama menguntungkan!
Kelihatannya bagus. Skornya akan naik setelah penerapan.
Hmm, lumayan, tetapi masih bisa ditingkatkan lagi; situs web induknya, codedoodles.xyz mendapat nilai 100, begitu pula dengan ini. Di sinilah saya akan meminta saran dari ChatGPT atau DeepSeek, tetapi tunggu dulu, saya punya keuntungan—saya dapat memeriksa kode codedoodles.xyz untuk mengetahui apa yang membuatnya mendapat nilai 100.
Opengraph? Selesai.
Kartu Twitter? Selesai.
Markup skema? Juga sudah selesai.
Apa lagi! Kalau begitu, saya akan menambahkan beberapa kata kunci lagi.
Masih sama.
Oh ya, saya mungkin melewatkan deskripsi `alt` untuk gambar.
Tidak, saya juga sudah menambahkannya. Astaga, sebodoh apa saya ini? Laporan Lighthouse sendiri menunjukkan rinciannya.
Masalahnya adalah file robots.txt. Situs web codedoodles.xyz dan chenuli.codedoodles.xyz menggunakan struktur yang sama, jadi saya seharusnya dapat melakukan beberapa pekerjaan salin-tempel. Sekali lagi.
Sama seperti masa lalu yang indah.
Ya! Sekarang sudah 100.
Dan itu saja. Mendesain barang dagangan tidak ada hubungannya dengan chatbot AI, dan saya berhasil menyelesaikan pekerjaan itu. Saatnya membaca buku, pengembang hebat!
Asumsi saya bahwa saya adalah pengembang yang bodoh dan tidak berdaya tanpa AI ternyata salah, dan saya senang akan hal itu. Meskipun pemikiran kritis saya mungkin terpengaruh (saya memang membuat beberapa kesalahan bodoh), saya masih bisa menyelesaikan banyak hal. Seluruh proses itu memakan waktu lebih lama dari biasanya - terutama menulis skrip pengikisan itu - tetapi terasa lebih memuaskan. Seperti menemukan sepeda lama Anda di garasi dan menyadari bahwa Anda belum lupa cara mengendarainya.
Dan tentu saja, saya membuka ChatGPT beberapa kali tanpa sengaja, dan ya, mencari di Google dan menyalin/menempelnya terasa sedikit bersalah. Tapi hei, begitulah cara kita membuat kode sebelum tahun 2022, bukan? Stack Overflow dan dokumentasi adalah sahabat baik kita, dan keduanya masih berfungsi dengan baik.
Intinya adalah bahwa menggunakan alat AI itu baik-baik saja dan bisa dimengerti. Namun, sesekali, lakukan apa yang baru saja saya lakukan: blokir LLM tersebut dan cobalah mengerjakannya sendiri. Anda akan merasa hebat, percayalah.
Dan tolong, jangan seperti orang ini di Reddit. Gunakan otakmu.