Sadece Eğlence İçin. Hayır, Gerçekten. - Sırf eğlencesine geliştirdik. Gerçekten. (2022)
(justforfunnoreally.dev)- "Biz yazılım geliştirmeyi seviyoruz"; kod yazmak, problem çözmenin zikzaklı bir yolculuğudur ve varış noktası çoğu insanın düşündüğünden daha az önemlidir
- Bize sık sık şu sorular sorulur:
- "Bunu neden yapıyorsunuz?"
- "Bu projenin amacı ne?"
- "Bu projenin X'ten daha iyi olduğu taraf ne?"
Silikon Vadisi'nin yoğunluğu
- Hacker News ya da startup odaklı başka haber sitelerinde çok zaman geçirirseniz, herkesin bir sonraki milyon dolarlık startup'a ya da exit stratejisine takıntılı olduğuna inanabilirsiniz
- İnsanların tamamen eğlence için açık kaynak kod üzerinde çalıştığını hayal etmek zor olabilir
- Yazılım inşa etme sanatını seven hacker'lar var. Bunu meydan okuma için, eğlence için yapıyorlar. Milyoner olmaya çalışmıyorlar
Tüketici kültürü
- Ya da yalnızca başkalarının yazılımını tüketiyor, neredeyse hiç üretmiyorsanız, "Bu proje benim için ne yapabilir?" düşüncesine sıkışıp kalabilirsiniz. (Ve proje onlarla ilgili değilse neden var olduğunu merak edersiniz)
- Yazılımlarını başkalarının tüketmesine ihtiyaç duymayan hacker'lar var. Elbette başkalarının yaptıkları işi sevmesi, takdir etmesi ya da minnet duyması hoş olur; ama bu kesin bir gereklilik değildir. Asıl eğlenceli olan şey, onu yapmanın kendisidir.
Biz bunu sadece eğlence için yapıyoruz. Gerçekten.
- Son olarak, yalnızca gündelik işlerinde gereken programlama becerilerini öğrenmiş insanlar, sürekli yeni şeyler deneyen programcıları anlamayabilir
- Kodla yaşayıp nefes alan hacker'lar var
- Her kod satırının parasal değerini kanıtlaması gerektiği, klavye başında geçirilen her zorlu saatin açıklanması gerektiği fikri gerçekten üzücü
- Sürecin kendisinde değer vardır. Kusurlu olsa bile, kendi başına değerlidir. Önemli olan yalnızca nihai ürün değildir
- Programlama hakkında en sevdiğim alıntıyla bitireyim:
Programcı, şair gibi, neredeyse tamamen saf düşünce malzemesiyle çalışır. Hayal gücünü kullanarak havada şatolar kurar. Çok az yaratıcı ortam bu kadar esnek, bu kadar kolay cilalanıp yeniden işlenebilir ve bu kadar görkemli kavramsal yapıları bu kadar kolay gerçekleştirebilir. Ancak program yapıları, şairin sözcüklerinden farklı olarak, yapının kendisinden ayrı görünür sonuçlar üretmeleri; hareket etmeleri ve çalışmaları bakımından gerçektir.
— Fred Brooks, The Mythical Man-Month
Deneyin!
- Eğer yolunuzu kaybettiğinizi düşünüyorsanız — kod yazmak eskiden eğlenceliydi ama artık sadece mesai yapıp maaş almak için katlanmanız gereken bir eziyete dönüştüyse, sizi yeniden davet ediyoruz!
- Ya da tuhaf fikirlerle programlama yapmanın yalnızca profesyonellere ve akademisyenlere ait bir şey olduğuna inandırıldıysanız, bu sayfa sizin için. Kurcalama ve süreçten keyif alma hakkına sahipsiniz!
- Bilgisayar içinde yaratmak, öğrenmek ve deneyimlemek istediğiniz bir şey düşünün. Sonra önce arayıp araştırmadan doğrudan dalın. Belki biraz eğlenirsiniz. Gerçekten.
Kulüp
Sırasız olarak, işte "sadece eğlence için" etiketini gururla taşıyan bazı projeler.
- Natalie - eğlence için yapılmış bir Ruby derleyicisi
- ZigSelf - eğlence için Zig ile yapılmış bir Self implementasyonu
- php-parser-rs - eğlence için Rust ile yapılmış bir PHP ayrıştırıcısı
- ex6502 - eğlence için Elixir ile yapılmış bir 6502 işlemci emülatörü
- Piko-piko OS - eğlence için yapılmış bir x86 16-bit oyuncak OS
- Folders2kt - eğlence için yapılmış esoterik bir programlama dili
- GCC Rust - eğlence için yapılmış bir Rust derleyicisi
- Soul - eğlence için yapılmış bir SQLite REST ve gerçek zamanlı sunucu
- hssp - eğlence için yapılmış bir HTTP durum kodu CLI'ı
- PyCraft - eğlence için Python ile yapılmış bir Minecraft launcher'ı
- hashsearch - eğlence için yapılmış bir tersine görsel arama motoru
- quackspeak - eğlence için ördek kullanan bir text-to-speech motoru
- Quark - eğlence için yapılmış yüksek performanslı bir Lisp lehçesi
- Whitecat - eğlence için yapılmış PHP geliştirme CLI'ı
- eClient - eğlence için Python ile yapılmış bir Minecraft launcher'ı
- CascadeOS - eğlence için yapılmış genel amaçlı bir OS
- Kiesel - eğlence için Zig ile yapılmış bir JavaScript motoru
- github-pewpew - eğlence için repository silen bir CLI aracı
- dt - eğlence için yapılmış, concat tabanlı AWK benzeri bir dil
- grab - eğlence için yapılmış hafif bir grep klonu
- math-with-regexps - eğlence için regex ile matematik
- noro - eğlence için yapılmış, pencere yöneticili bir metin editörü
- Vox - eğlence için Elixir ile yapılmış bir statik site oluşturucu
- jimson - eğlence için yapılmış bir JSON ayrıştırıcısı
- txt2tufte - eğlence için yapılmış Tufte tarzı bir web sitesi oluşturucu
- Azure Storage web explorer - eğlence için yapılmış bir Azure Storage web explorer'ı
- renam - eğlence için yapılmış çok hızlı bir dosya yeniden adlandırma yardımcı programı
- Funciton - eğlence için yapılmış, kutulardan oluşan bir programlama dili
GN⁺ görüşü
- Bu yazı, programcıların yalnızca eğlence peşinde koşmasının değeri ve önemi hakkında konuşuyor. Günümüzün tüketici ve startup kültüründe her şeyin pratik ve kârlı olması gerektiği yönündeki baskı, programlamanın yaratıcılığını ve yenilikçiliğini zayıflatabilir.
- Açık kaynak topluluğu, bu "sadece eğlence için" ruhunu somutlaştıran iyi bir örnek. Birçok önemli açık kaynak projesi başlangıçta birinin hobi projesi olarak başladı ve süreç içinde yeni fikirler ile yaklaşımlar keşfedildi.
- Ancak bu tutum aşırıya kaçarsa pratikliği düşük projelerin çoğalmasına da yol açabilir. Sonuçta eğlence ile pratiklik arasındaki denge önemli görünüyor. Yine de bu yazı, sık sık unuttuğumuz saf eğlence ve merakın değerini hatırlatması bakımından anlamlı görünüyor.
- Günlük işlerin yorgunluğunu yaşayan geliştiriciler için böyle hobi projeleri iyi bir ilham ve motivasyon kaynağı olabilir. Yeni bir dil ya da teknoloji öğrenmek isteyip de zamanı olmadığını hissedenlere de önerilebilecek bir yazı.
5 yorum
Bildiğim kadarıyla Python dili de yaklaşık bir haftalık tatil döneminde eğlencesine yapılmış bir dil.
Eğlencesine bir şeyler geliştirmeyi seviyorum ama bu aralar işten çıkınca pert oluyorum, o yüzden hayal bile edemiyorum sanırım. Gerçekten harika insanlar var.
Sık kullandığınız açık kaynak projelerinin issue tracker'larında sorun gidermeye yardımcı olabilir ya da dokümantasyona katkıda bulunabilirsiniz. Mutlaka yeni bir proje başlatmanız veya kod yazmanız gerekmiyor gibi görünüyor.
94 yılına kadar sadece sıradan bir bilgisayar kullanıcısıydım; sonra bir dil öğrendim ve 95'te "bilişim" ile ilgili bir işte çalışmaya başladım.
Şimdi dönüp bakınca, inanılmaz derecede şanslı biriymişim.
Hacker News görüşleri
Kod yazarak bir şeyler üretmekten keyif alıyor; bazen maddi kazancı da düşünüyor ama projeleri çoğunlukla eğlence için yapıyor
Bir röportajda kişisel projelerini anlattı ama görüşmeci neden böyle projeler yaptığını sürekli sorunca rahatsız oldu
Yazılım üretme motivasyonunu, tek başına sahilde kumdan kale yapıp bundan tatmin olmakla karşılaştırıyor
Büyük dil modelleri (LLM), eğlenceli projelere başlamayı daha kolay hale getirdi
Kişisel projelere zaman ayırmak için yaşam giderlerini düşürüyor ve sözleşmeler arasındaki zamanı değerlendiriyor
Eğlence için yapılan projeler listesinin yalnızca tamamlanmış işlerden oluşması üzücü
Dün iş arkadaşlarıyla yaptığı konuşmada, çok fazla iş üretmenin beceriyi geliştirmede önemli olduğu sonucuna vardılar
Eğlence için yapılan ürünler de maddi kazanç için yapılan ürünler de düşük kaliteli olabilir
Bu, tek başına harika bir yemek yapmak gibi içsel bir deneyim; ama yine de kendi başına değerli
Hacker News gibi sitelerde birçok kişinin bir sonraki büyük startup'ı hazırladığını düşünmek mümkün