4 puan yazan GN⁺ 2024-06-27 | 1 yorum | WhatsApp'ta paylaş
  • One Million Checkboxes, 1.000.000 onay kutusunu tek ekranlık bir deneyime dönüştüren bir web sitesi; şu anda tüm kutular işaretli durumda görünüyor
  • Üstteki “we checked every box!” mesajı, tüm işaretleme işleminin tamamlandığını hemen gösteriyor
  • Tamamlandıktan sonra bile “tek başına oynamaya” devam edilebiliyor; yani bu yalnızca basit bir sonuç ekranı değil, etkileşim de devam ediyor
  • Mevcut kullanıcının işaretlediği kutu sayısı “You checked 0 boxes” olarak gösteriliyor; böylece genel tamamlanma durumu ile kişisel ilerleme ayrılıyor
  • Ekranda Jump! eylemi ve işaretli kutuların listesi devam ediyor; büyük ölçekli onay kutusu deneyinin izleri doğrudan görülebiliyor

Tüm kutuların işaretlenmiş olduğu durum

  • One Million Checkboxes, 1,000,000 boxes are ✅ ifadesini gösteriyor
  • “🎉 we checked every box! 🎉” metniyle tüm onay kutularının işaretli olduğunu gösteriyor

Tamamlandıktan sonra da kalan oyun

  • Tüm kutular işaretlendikten sonra bile “but you can still play alone if you'd like” mesajıyla bilgilendiriyor
  • Mevcut kullanıcının işaretlediği kutu sayısı 0 boxes olarak gösteriliyor

Ekranda görünen öğeler

  • Sayfada Jump! metni bulunuyor
  • Gövdede işaretli durumdaki onay kutusu öğeleri tekrar tekrar gösteriliyor

Geliştirici

  • Site, eieio tarafından yapılmış bir web sitesi olarak gösteriliyor

1 yorum

 
GN⁺ 2024-06-27
Hacker News yorumları
  • Geliştirici açısından beklenenden çok daha popüler olduğu için, bir süre sunucu epey zorlanacak gibi görünüyor

    • Uygulamada ciddi bir sorun var. Satır sonları yakınlaştırma/ekran genişliğine göre değiştiği için, ben boobs karalaması yazsam bile başkaları aynı satır kırılma noktasında değilse doğru okuyamıyor
    • Eski disk birleştirme araçlarını çok hatırlatıyor. Nostalji olsun diye arka planda sürekli açık tutmak istiyorum: https://www.youtube.com/watch?v=KR3TbL3Tl6M
    • FediVerse’e koydum; 4 saat sonra şimdiden neredeyse 700 kez boost edilmişti ve 2 saat içinde Reddit’e kadar yayıldı. Reddit gönderisine doğrudan yanıt da verdiğine göre biliyorsundur ama ilk trafik patlamasının gelmesi kesin gibiydi
    • “Beklenenden popüler” mi, burada HN’de neyin önemli olduğunu hepimiz biliyoruz
    • 5 sunucu daha ayağa kaldırıp birkaç optimizasyon da araya sıkıştırınca, bir süreliğine iyi olacak gibi
  • “Herkesin işaretleyebildiği bir milyon checkbox”ı neden yaptığı sorusuna, geçen cuma bir sohbet sırasında aklına geldiği ve nedense yapması gerektiğini hissettiği yanıtı verilmiş. En iyi sebep bu :)

    • O kadar aptalcaydı ki, tam da bu yüzden kesinlikle yapılması gerekiyordu
  • Başta üst taraflara tıklıyordum ama insanlar sürekli yaptıklarımı geri alıyordu. Neden hep birlikte hepsini işaretleme yönünde dostça ilerleyemiyoruz diye düşündüm
    Aşağılara inersem daha az kavga olur sanmıştım; bir süre yalnızdım ve sıkıcı, anlamsız bir işti ama huzurluydu
    Sonra benim gibi işaretleyen biriyle karşılaştım ama 5 saniye geçmeden kayboldu; kaydırıp işaretlemeye devam ederken biraz yukarı döndüğümde rastgele işareti kaldırılmış kutular oluşmuştu. Kimsenin kaldırdığını görmedim ama sanki işareti kaldıran bir hayalet var

    • Neden yıkmaya çalışıyorsun? Ben sadece checkbox’ları doğanın özgün hâline döndürmeye çalışıyorum
    • En aşağı taraflarda rastgele bir yere gidip kutularla HELLO yazmaya çalıştım ama H’yi bitiremeden biri gelip mahvetti. Bu bir milyon checkbox sanat defteri sonunda kaçınılmaz olarak deliliğe mi çökecek diye düşündüm
      Ne kadar kaydırırsam kaydırayım tanınabilir hiçbir şey yok; sadece anlamsız bir çoraklık var. Düpedüz kaos
    • Benim de tam aynı niyet ve yöntemle hareket etmiş olmam, garip biçimde kendimizi yansıtan bir ayna gibi
      Muhtemelen yalnız biz değildik. Kafasındaki düzen diye bağıran goblini yatıştırmak için satır satır ya da başka düzenli desenlerle özenle işaretleyen çok kişi olmuştur
      Sayfaya girdiğimde tüm kutular işaretli olsaydı bir tamamlanmışlık hissedip o kusursuz hâliyle ayrılırdım; o güzelliği bozup “boobs” yazmaya çalışan delilerle empati kurmak gerçekten zor ;)
  • $$('input[type=checkbox]').forEach(elt => elt.click()); denedim, "CHILL LOL" uyarısı çıktı. Eğlenceli site

    • Şimdi sıra Playwright script’i yazmakta
      chromium ile tarayıcıyı açıp sayfaya girer, tüm input[type=checkbox] öğelerini bulup tıklarsın, yeter
      Yine de script bile çalıştırmadan, parmağımla deli gibi basıp “CHILL” uyarısını çıkardığım için kendimle biraz gurur duyuyorum
    • WebSocket üzerinden doğrudan 42["toggle... göndermek gerekiyor. Tabii kaldırmaya çalışmıyorsan, tersine çevirmeyi önlemek için önce hangi kutuların işaretli olduğunu kontrol etmelisin
    • Tüm kutuları işaretleyen JavaScript’i kabul etmesi için kandırmanın bir yolu var mı diye merak ediyorum
    • document.querySelectorAll("input[type=checkbox]").forEach(i => { i.checked = false; }); kısa süreliğine çalışıyor gibi ve uyarı da çıkmıyor
  • Tüm kutular işaretlenmeli. İşareti kaldıranlar tekrar düşünüp işaretleme cephesine gelsin lütfen

    • Ters köşe: İzleyenlerin yarısına ters görünür
    • “İki taraf da aynı” tavrı yüzünden zaten bu duruma geldik. Kasımda Unchecked’e oy verin
    • 1.000 tane, yani %0,1’ini elle işaretledim ve payıma düşeni yaptığımı düşünüyorum. Scriptsiz, saf insan emeği/algoritmasıyla yaptım
      Basit bir JS script’iyle 2-5 kat hızlanmak elbette mümkün ama hız sınırı da vardır diye düşündüm; ayrıca bu tuhaf şeyin ruhuna da uymazdı
      Peter Molyneux’nün Curiosity’si aklıma geldi: https://en.wikipedia.org/wiki/Curiosity%3A_What%27s_Inside_t...
    • Kutumdan ellerini çek. Ne kadar çok işaretlersen özgürlük o kadar azalır; bu yüzden bazı kutuların işaretsiz kalmasını destekliyorum. Özellikle de içinde özel eşyalarımın olduğu kutularsa
    • Tekrar düşündüm ve artık işareti kaldırma çetesi tarafındayım
  • Hoşuma giden alıntılar: “Patpatlı ambalaj MMO’su gibi inanılmaz tatmin edici”, “tüm dünya için bir stres oyuncağı”, “harika! WebSocket sunucusu brrr yapıyordur”
    https://x.com/itseieio/status/1805986839058079896

  • Tampermonkey için otomatik işaretleme kullanıcı script’i yaptım. https://onemillioncheckboxes.com/ üzerinde tüm checkbox’ları buluyor, işaretli olmayanları işaretliyor ve DOM değiştikçe MutationObserver ile tekrar çalışıyor

    • Dürüst olmak gerekirse bu, sitenin amacını baştan yıkıyor gibi
    • Bu yöntem 1.000.000 checkbox için işe yaramaz gibi. requestAnimationFrame kullanmak ya da yalnızca işaretlenmemişleri querySelectorAll('input[type="checkbox"]:not(:checked)') ile bulmak ya da her değişiklikte checkAllCheckboxes çağırmamak daha iyi
      Ya da querySelector('input[type="checkbox"]:not(:checked)') ile tek tek bulup while(true) gibi bir döngüde işlemek yeter
  • Checkbox ızgarası belli bir genişliğe sabitlenmeliydi gibi geliyor. İnsanların resim çizmeye çalıştığı belli ama benim ekranımda çarpık görünüyor

    • Siteyi yapan kişi olarak bunu bilerek yaptım. Sabit canvas üzerinde kolayca çizim yapılan ortak internet resmi deneyleri zaten yeterince çoktu; biraz farklı bir şey deneyince ne çıkacağını merak ettim
      Elbette aptalca bir fikir olabilir ama denemek istedim
    • Yazık. Çizdiğim dev penis yalnızca tam benim ayarladığım genişlikte görünüyor. Acaba kaç rastgele resmi kaçırıyorum, merak ediyorum
      Yeniden yerleşmesi de zaman aldığından, pencere boyutunu değiştirip insanların ne yaptığını gerçek zamanlı görmek de kolay değil
    • Görseli anlamak için “tarama” yapmak gerekmesi aslında eğlenceli. Ayrıca sanatçının eserinin genişliğini kendisinin seçebildiği anlamına da geliyor
      Birçok kişi benzer ekran genişlikleri kullandığı için, sanıldığından çok kombinasyon yok
  • Harika iş. Böyle deneylerin kaç kişi tarafından kullanıldığını görüp hızla ölçeklendirme yapmayı deneyimlemek isterdim; biraz imreniyorum. Ama şirket saçmalıkları beynimi fazla yakmış ve yaratıcılığım bodrumda
    Zamanın %90’ını toplantı ve dokümanlara harcamadan çalışabileceğim bir şirketi hâlâ nerede bulabilirim, merak ediyorum
    Galiba çok fazla tıkladığım için, sessizce acı içinde ölmek yerine kafamın içindekiler buraya dökülüyor :D

    • Bu duygu çok yaygın ve ben de o dip hissi hakkında yazmaya başladım
      Cevap şu: Senin için cevap değilse, değildir. İnsan ikiye ayrılır: İşin zihnini ele geçirmediği insanlar ve geçirdiği insanlar. Ele geçirirse, işi savsaklamadan başka bir şey yapmak zorlaşır
      Çoğu iş yeri %90 toplantı ve dokümandır. Kabaca iş yerinin tanımı buna yakın. Startup’lar istisna ama onların da zihnini ele geçirdiği kesin
      Benim yaratıcılığım da son bir yıl kadar bodrumdaydı. Böyle dönemler olur. Zorla savaşmak yerine mutlu olmaya çalışmak daha iyi. Kendi deneyimime göre yaratıcılığı geri kazanmanın tek yolu buydu
    • Günümüzde buna en yakın şey erken aşama startup ya da en baştan kendi şirketini kurmak gibi görünüyor. Ben de aynı durumdayım ama yan projeler dayanmama yardımcı oluyor
    • Kendin yapsana?
  • Tüm bu kutuların işaretini kaldırmak kimsenin takdir etmediği bir iş