53 poin oleh GN⁺ 2024-09-11 | 5 komentar | Bagikan ke WhatsApp
  • "Kami menyukai pengembangan perangkat lunak"; coding adalah perjalanan zig-zag untuk memecahkan masalah, dan tujuannya sering kali kurang penting daripada yang dibayangkan banyak orang
  • Kami sering menerima pertanyaan seperti berikut:
    • "Mengapa melakukan ini?"
    • "Apa tujuan proyek ini?"
    • "Apa yang membuat proyek ini lebih baik daripada X?"

Kerasnya Silicon Valley

  • Jika Anda menghabiskan banyak waktu di Hacker News atau situs berita lain yang berfokus pada startup, Anda bisa percaya bahwa semua orang terobsesi dengan startup bernilai jutaan dolar berikutnya atau strategi exit
  • Mungkin sulit membayangkan bahwa ada orang yang mengerjakan kode open source murni untuk bersenang-senang
  • Ada para hacker yang mencintai seni membangun perangkat lunak. Mereka melakukannya demi tantangan, demi kesenangan. Mereka tidak sedang berusaha menjadi jutawan

Budaya konsumen

  • Atau, jika Anda hanya mengonsumsi perangkat lunak buatan orang lain dan hampir tidak pernah membuat apa pun sendiri, Anda bisa terjebak dalam pola pikir, "Apa yang bisa proyek ini lakukan untuk saya?" (Dan jika proyek itu tidak relevan bagi mereka, mereka bertanya-tanya mengapa proyek itu ada)
  • Ada hacker yang tidak membutuhkan orang lain untuk mengonsumsi perangkat lunak mereka. Tentu saja menyenangkan jika orang lain menikmati, mengagumi, atau menghargai karya mereka, tetapi itu sama sekali bukan keharusan. Membuatnya sendiri saja sudah menyenangkan.

Kami melakukannya hanya untuk bersenang-senang. Sungguh.

  • Terakhir, orang yang hanya mempelajari keterampilan pemrograman yang dibutuhkan untuk pekerjaan sehari-hari mungkin tidak memahami programmer yang selalu mencoba hal-hal baru
  • Ada hacker yang hidup dan bernapas lewat kode
    • Gagasan bahwa setiap baris kode harus membuktikan nilai finansialnya, dan bahwa setiap jam yang dihabiskan di depan keyboard harus dijelaskan, sungguh disayangkan
  • Proses itu sendiri memiliki nilai. Sekalipun tidak sempurna, ia tetap berharga. Bukan hanya produk akhirnya yang penting
  • Saya akan menutup dengan kutipan favorit saya tentang pemrograman:

Programmer, seperti penyair, bekerja sedikit terpisah dari bahan pemikiran murni. Ia menggunakan imajinasinya untuk membangun istana di udara. Hanya sedikit media kreatif yang begitu lentur, begitu mudah dipoles dan dikerjakan ulang, serta begitu mudah mewujudkan struktur konseptual yang agung. Namun, tidak seperti kata-kata penyair, struktur program itu nyata karena bergerak dan bekerja, menghasilkan keluaran yang terlihat terpisah dari konstruksinya sendiri.
— Fred Brooks, The Mythical Man-Month

Cobalah!

  • Jika Anda merasa tersesat — dulu coding itu menyenangkan, tetapi sekarang terasa seperti kerja paksa hanya untuk absen dan menerima gaji — kami mengundang Anda kembali!
  • Atau jika Anda telah dibiasakan untuk berpikir bahwa pemrograman dengan ide-ide nyeleneh hanya milik para profesional dan akademisi, halaman ini untuk Anda. Anda punya hak untuk mengutak-atik dan menikmati prosesnya!
  • Pikirkan sesuatu yang ingin Anda buat, pelajari, atau alami di dalam komputer. Dan jangan cari tahu atau menelitinya terlebih dahulu, langsung saja terjun. Mungkin Anda akan merasakan sedikit kesenangan. Sungguh.

Klub

Tanpa urutan tertentu, berikut beberapa proyek yang dengan bangga memakai label "hanya untuk bersenang-senang".

  • Natalie - compiler Ruby yang dibuat untuk bersenang-senang
  • ZigSelf - implementasi Self dalam Zig yang dibuat untuk bersenang-senang
  • php-parser-rs - parser PHP dalam Rust yang dibuat untuk bersenang-senang
  • ex6502 - emulator prosesor 6502 dalam Elixir yang dibuat untuk bersenang-senang
  • Piko-piko OS - toy OS x86 16-bit yang dibuat untuk bersenang-senang
  • Folders2kt - bahasa pemrograman esoterik yang dibuat untuk bersenang-senang
  • GCC Rust - compiler Rust yang dibuat untuk bersenang-senang
  • Soul - server SQLite REST dan real-time yang dibuat untuk bersenang-senang
  • hssp - CLI kode status HTTP yang dibuat untuk bersenang-senang
  • PyCraft - launcher Minecraft dalam Python yang dibuat untuk bersenang-senang
  • hashsearch - mesin pencari gambar terbalik yang dibuat untuk bersenang-senang
  • quackspeak - mesin text-to-speech berbasis bebek yang dibuat untuk bersenang-senang
  • Quark - dialek Lisp berperforma tinggi yang dibuat untuk bersenang-senang
  • Whitecat - CLI untuk pengembangan PHP yang dibuat untuk bersenang-senang
  • eClient - launcher Minecraft dalam Python yang dibuat untuk bersenang-senang
  • CascadeOS - OS serbaguna yang dibuat untuk bersenang-senang
  • Kiesel - engine JavaScript dalam Zig yang dibuat untuk bersenang-senang
  • github-pewpew - alat CLI untuk menghapus repositori, dibuat untuk bersenang-senang
  • dt - bahasa mirip AWK yang dapat dirangkai, dibuat untuk bersenang-senang
  • grab - klon grep ringan yang dibuat untuk bersenang-senang
  • math-with-regexps - berhitung dengan regex untuk bersenang-senang
  • noro - editor teks dengan window manager yang dibuat untuk bersenang-senang
  • Vox - static site builder dalam Elixir yang dibuat untuk bersenang-senang
  • jimson - parser JSON yang dibuat untuk bersenang-senang
  • txt2tufte - website builder bergaya Tufte yang dibuat untuk bersenang-senang
  • Azure Storage web explorer - Azure Storage web explorer yang dibuat untuk bersenang-senang
  • renam - utilitas pengganti nama file yang sangat cepat, dibuat untuk bersenang-senang
  • Funciton - bahasa pemrograman yang terdiri dari kotak-kotak, dibuat untuk bersenang-senang

Opini GN⁺

  • Artikel ini membahas nilai dan pentingnya programmer yang mengejar kesenangan semata. Dalam budaya konsumen dan startup saat ini, ada tekanan agar segala sesuatu harus praktis dan menguntungkan, tetapi hal itu dapat menghambat kreativitas dan inovasi dalam pemrograman.
  • Komunitas open source adalah contoh yang baik dari semangat "hanya untuk bersenang-senang" ini. Banyak proyek open source penting pada awalnya dimulai sebagai proyek hobi seseorang, dan dalam prosesnya, ide serta pendekatan baru dieksplorasi.
  • Namun, jika sikap ini dikejar secara berlebihan, bisa jadi akan muncul banyak proyek yang kurang praktis. Pada akhirnya, keseimbangan antara kesenangan dan kepraktisan tampaknya penting. Meski begitu, tulisan ini terasa bermakna karena mengingatkan kita pada nilai kesenangan murni dan rasa ingin tahu yang sering kita lupakan.
  • Bagi para developer yang lelah dengan pekerjaan sehari-hari, proyek hobi seperti ini tampaknya bisa menjadi inspirasi dan motivasi yang baik. Ini juga artikel yang ingin saya rekomendasikan kepada mereka yang ingin mempelajari bahasa atau teknologi baru tetapi merasa tidak punya waktu.

5 komentar

 
geekbini 2024-09-18

Saya tahu bahwa bahasa Python sendiri juga dibuat untuk bersenang-senang selama masa liburan sekitar satu minggu.

 
joon14 2024-09-12

Saya suka mengembangkan sesuatu sekadar untuk bersenang-senang, tetapi belakangan ini setelah pulang kerja saya langsung tumbang jadi rasanya bahkan tidak sempat membayangkannya. Banyak sekali orang yang hebat ya.

 
savvykang 2024-09-12

Ada juga cara untuk membantu troubleshooting di issue tracker proyek open source yang sering digunakan atau berkontribusi pada dokumentasi. Sepertinya tidak harus selalu memulai proyek baru atau menulis kode.

 
halfenif 2024-09-11

Sampai tahun 94, saya hanyalah pengguna komputer biasa, lalu belajar bahasa pemrograman dan pada tahun 95 bekerja di bidang terkait "komputasi".

Kalau dipikir-pikir sekarang, saya ini benar-benar orang yang sangat beruntung.

Kadang saya berpikir jangan-jangan saya malah seharusnya membayar untuk pergi bekerja di perusahaan.

 
GN⁺ 2024-09-11
Pendapat Hacker News
  • Menikmati membuat sesuatu lewat kode, dan kadang mempertimbangkan keuntungan finansial, tetapi sebagian besar mengerjakan proyek demi kesenangan

    • Menjalankan grup yang mengerjakan proyek bersama selama 6 minggu, dan telah menyelesaikan kohort kedua
    • Proses menyelesaikan proyek dan tantangan bersama sangat menyenangkan
  • Pernah menjelaskan proyek pribadi dalam wawancara, tetapi merasa tidak nyaman karena pewawancara terus bertanya mengapa proyek seperti itu dikerjakan

    • Menjelaskan bahwa itu dilakukan semata-mata untuk kesenangan dan pembelajaran, tetapi pewawancara tidak memahaminya
  • Saat menjelaskan motivasi membuat perangkat lunak, dianalogikan seperti membangun istana pasir sendirian di pantai dan merasakan kepuasan

    • Meski tidak ada yang menyadari, dan meski hilang disapu ombak, tetap memperoleh kepuasan
  • Model bahasa besar (LLM) membuat proyek-proyek menyenangkan jadi lebih mudah dimulai

    • Bisa membuat prototipe sederhana tanpa proses riset panjang dan tanpa menyiapkan alat yang rumit
    • Bisa membuat web app musik berbasis lokasi agar bisa mendengar musik yang berbeda setiap kali berjalan-jalan
  • Untuk meluangkan waktu bagi proyek pribadi, biaya hidup dikurangi dan waktu di antara kontrak dimanfaatkan

    • Mengerjakan proyek per minggu dan mengalokasikan waktu untuk proyek impian
    • Mengerjakan proyek demi kesenangan, tetapi tetap menginvestasikan waktu dengan serius
  • Disayangkan jika daftar proyek untuk bersenang-senang hanya memuat proyek yang selesai

    • Proyek yang belum selesai atau yang dikerjakan beberapa minggu lalu terlupakan juga seharusnya termasuk
    • Kesenangan dalam coding adalah menikmati proses itu sendiri
  • Dalam percakapan dengan rekan kerja kemarin, sampai pada kesimpulan bahwa mengembangkan keterampilan melalui banyak pekerjaan itu penting

    • Memberikan contoh John Carmack, yang mengembangkan keterampilannya sambil membuat banyak game
    • Upaya memilih bahasa yang tepat dan proyek portofolio yang tepat justru menyebabkan penundaan
  • Baik produk yang dibuat untuk kesenangan maupun untuk keuntungan finansial sama-sama bisa berkualitas rendah

    • Melampaui dikotomi kesenangan versus keuntungan, yang penting adalah membuat produk sistem pemrograman yang baik
  • Ini adalah pengalaman batin, seperti memasak hidangan luar biasa sendirian, tetapi tetap memiliki nilai tersendiri

    • Sulit menjelaskan pola pikir ini kepada orang-orang yang tidak memahaminya
  • Di situs seperti Hacker News, orang bisa mengira banyak orang sedang menyiapkan startup besar berikutnya

    • Namun, banyak juga orang yang mengerjakan kode open source demi kesenangan
    • HN adalah salah satu sumber utama yang menunjukkan bagaimana para programmer bekerja dengan lebih menyenangkan