Novemade
Tüm yazılar

Her ürün için tarayıcıda bir deneme ve dürüst tutan dört basamaklı bir merdiven

On bir ürün, on bir deneme ve rahatsız edici kısım: ikisi ürünün kendi kaynağını çalıştırıyor ve bütün mesele hangi ikisi olduğunu söylemek.

Teknik not · · 7 dk okuma

Bu kataloğdaki her ürünün bu tarayıcıda çalıştırabileceğiniz bir karşılığı var; hiçbir şey kurmadan, hesap açmadan. Bu, sitedeki en güçlü cümle ve sessizce doğru olmaktan çıkma olasılığı en yüksek olan da bu — çünkü bir ürün eklemek bir öğleden sonra sürüyor, denemesini kurmak sürmüyor. Bu yüzden kimsenin elle koruduğu bir cümle değil: bir test ürünleri sayıyor, kurulmuş denemeleri sayıyor ve bir ürün denemesi olmadan geldiğinde derlemeyi kırıyor. Son üç ürünün geldiği hafta geçmeden önce üç kez kırdı.

Zor olan kısım onları kurmak hiç olmadı. Etiketlemekti.

“Oynanabilir” kelimesi iki ayrı iddiayı birlikte taşıyordu

İlk etiket kümesi Oynanabilir, Etkileşimli prototip ve Rehberli demo idi. Bu bir etkileşim ölçeği gibi görünüyor — ki öyle, ve yanlış olmasının nedeni de bu. Bir ziyaretçinin gerçekte sorduğu soru “buna dokunabilir miyim” değil. “Bunun herhangi bir kısmı gerçek mi” sorusu. Oynanabilir, hem ürünün kendi kaynağını çalıştıran denemelerin hem de ürünün yayınlanmış ses kayıtlarını çalan denemenin üzerinde duruyordu ve bunlar hiç de aynı iddia değil.

Artık dört basamak var ve her deneme hangisinin üzerinde durduğunu söylüyor:

  • Gerçek ürün kodu — ürünün kendi kaynağı, değiştirilmeden içeri alınmış ve kopyanın SHA-256 özeti yanına kaydedilmiş.
  • Gerçek ürün varlıkları — ürünün kendi yayınlanmış malzemesi; kayıtlar, sprite’lar, içerik dosyaları; tarayıcı için yazılmış bir döngüyü besliyor.
  • Etkileşimli yeniden yapım — burada yeniden kurulmuş bir mekanik; ürünün gerçek içeriği varsa onu kullanıyor.
  • Rehberli demo — bir gezinti. Hiçbir şey hesaplanmıyor ve bunu söylüyor.

“Gerçek ürün kodu” tam olarak bir ürün sonraki “Rehberli demo”nun dürüstçe kullanılması sayesinde bir anlam taşıyor. Bugün iki deneme en üst basamakta. Bu sayı bir cümleye yazılmak yerine deneme kataloğundan türetiliyor; buradaki her diğer sayı gibi.

Bir özet aslında neyi kanıtlar

En üst basamaktaki bir deneme, ürünün kaynağını bu depoya değiştirmeden alıyor ve özetini kaydediyor. Bir test her derlemede özeti yeniden hesaplıyor. Biri denemenin telefonda daha iyi davranması için içeri alınan kopyayı düzenlerse derleme kırılıyor; zaten tam bu koruma için kuruldu.

30 Eylül’de ZUPI App Store’a yeni bir oyun yayınladı. Farklı bir oyun: bir Pulse Core’un üstünde tutulan bir Pulse Shield, zırhlı tehditler, her beşinci bölümde Warden’lar. Motoru burada içeri alınmış olan oyun önceki oyundu — şemsiye altında kırmızı bir balon — ve özet kontrolü bu süre boyunca her derlemede tuttu, çünkü kopya geldiği deponun hâlâ sadık bir kopyasıydı.

Bir özet, bir kopyanın geldiği depoya sadık olduğunu kanıtlar. O deponun hâlâ ürün olduğunu kanıtlayamaz.

Üç gün boyunca bu site, “iOS ve Android derlemelerinin kullandığı motorun aynısı” diyen bir cümlenin altında yanlış oyunu çalıştırdı. Hiçbir şey bozuk değildi. Her kontrol yeşildi. İçeri alınan motor artık silindi ve ZUPI’nin denemesi, mağaza kaydından yazılmış ve öyle etiketlenmiş bir Etkileşimli yeniden yapım — bu daha zayıf ve doğru bir iddia.

En üsttekinden daha ilginç olan basamak

Forgotten Town bir Flutter ve Flame oyunu. Derlemesi, bu sitenin kabul edeceği bir ağırlıkta bir web sayfasına sığmaz; bu yüzden birleştirme döngüsü tarayıcı için yazıldı. O döngünün üzerinde çalıştığı her şey oyunun kendisine ait: tahta, zincir, sprite’lar ve ilk sipariş — istediği eşya ve ödediği altınla birlikte — yeniden yazılmak yerine yayınlanan derlemenin yüklediği içerik dosyasından okunuyor.

Pivumo’nun denemesi uygulamanın kendi ses dosyalarını, yayınlanmış olanları çalıyor. Swarm Kingdoms’ın denemesi, on dilinden hangisini seçerseniz oyunun kendi dizelerini konuşuyor ve tam oyunun kendi yerelleştirme fonksiyonunun yaptığı gibi İngilizceye düşüyor — çünkü oyunun İngilizce gösterdiği yerde ham bir anahtar gösteren bir deneme, ürünün sahip olmadığı bir hatayı göstermiş olurdu. Bu web sitesi için yazılmış bir çeviri, ürün hakkında ürünün kendi sözlerinden daha kötü bir iddia olurdu.

Bir dağıtımdan önce bir bot hepsini oynuyor

Sessizce bitmemeye başlayan bir deneme, hiç deneme olmamasından kötüdür; bu yüzden her biri dağıtımdan önce gerçek bir tarayıcıda sürülüyor: başlat, etkileşime gir, bir sonuca ulaş, bildir. Birkaç dilde çalışıyor, çünkü bir deneme birinde bozulup diğerlerinde bozulmayabilir.

Kendisi hakkında iki kez yanıldı ve iki seferinde de düzeltme koşum takımındaydı. Bir keresinde oynamak yerine sayfayı kaydırdı, çünkü bastığı tuş odaklanmış tuvale hiç ulaşmıyordu. Bir keresinde kazanması gereken bir oyunun her turunu kaybetti ve aynı kuralların başsız sürümü nedenini gösterdi: ekrana bakmıyordu. Bir kaybı kararsız bir test diye yazmak kolay hamle olurdu ve oynayabilen bir ziyaretçinin yerine oynayamayan bir bot bırakırdı.

Bunun bedeli

On bir deneme, bir ürün eklemenin üzerindeki gerçek bir vergi ve bilinçli olarak ödeniyor. Alternatif, bir ekran görüntüsü sayfası ve bir iddia; açamadıkları bir yazılım hakkında bir yabancıdan on bir iddiaya inanmasını isteyen bir stüdyonun her birinde ayrı ayrı inanılması gerekir. Bir deneme, inanılmaya ihtiyaç duymayan tek argüman.