Toyota, insan vücudunun dışındaki gezegendeki en verimli organizasyon olarak bilinir ve felsefelerinden biri de dokümantasyondan kaçınmaktır. Montaj hattındaki bir kişinin daha fazla cıvataya ihtiyacı olduğunda bir “işlem” yapmak yerine, raflarında sadece 5 bite cıvata var ve biri boş olduğunda raftan çıkarılır ve biri her saat gelir ve tüm rafları yeniden doldurur. arkadan. Hiçbir şeyi belgelemeye gerek yok, süreç sizin için yapıyor.
Bir vardı Quartz ile ilgili son yazı Apple'ın kontrol listelerine olan ilgisinden bahsetti.
Apple'ın yaratıcılığının, hızının ve uyarlanabilirliğinin anahtarının, yüzeyinde, bekleyeceği serbest tekerlekli yaratıcılık türünün tam tersi olduğu ortaya çıkıyor. Bu bir kontrol listesi… gerçekten uzun bir.
Beni kontrol listelerine dair felsefem hakkında düşündüm. Kontrol listelerinde çok yanlış var. Onlar güncel değil. Uzun ve sıkıcı ve tekrarlayıcı olabilirler. Tüm metrikler gibi, yanlış şeylere odaklanabilirler. Ama bütün bunlar kontrol listelerini atlamak için de doğru, değil mi? Yani aynı hatayı yaptığınız üçüncü sefer, muhtemelen bir kontrol listesinin ardından size zaman kazandırabileceğini itiraf etme zamanı geldi.
Ancak, kontrol listeleri yalnızca uygulandıkları ve sıklıkla güncellendikleri takdirde iyidir ve hala yüz yüze gelebilecek, her zaman mükemmel olacak şekilde inşa edilmeyen bir insanın huzuru altındasınız.
Bir standart var Drupal Drupal'da olan çoğu müşteri için başlayalım. Bu, modülleri, ayarları, varsayılan kullanıcıları ve varsayılan test verilerini içerir. Eskiden bir kontrol listesi vardı, ama her zaman güncel değildi. Sonra birisi içeri girdi ve Drupal'ın sınırlı bilgisi bile olan herkesin bunu yapabilmesi için çok özel bir şey yaptı, bu yüzden dükkandaki tüm zorlu Drupal insanlar bundan nefret ettiler, bu yüzden onu çıkardık ve sonra yeni birini eğitemedik. Üzerinde ve sadece kıdemli Drupal devleri takip edebilirdi, o zaman bunu kodlamaya başladık. Drush.
Drush, Drupal tecrübesi olan herkesin birkaç satır kod çalıştırabileceği ve her şeyin sihirli bir şekilde “gerçekleşeceği” anlamına gelir. Artık “insan hatası” yok, bu bir kontrol listesi, ama bir kontrol listesini takip etmeye çalışan dağınık bir insan yerine bir bilgisayar izledi.
Bununla ilgili problem, en basit değişimin bile bir geliştiriciye ihtiyaç duyması ve her değişikliğin test edilmesi gerektiğiydi ve bu yüzden çok hızlı bir şekilde parçalara ayrıldı.
Sonunda, Drush'ta sabit kodlanmış bir şey olan bariz çözümle karşılaştık, bu da değişmesi biraz zorlaştı.
Şimdi sadece “klonla” diye bir site var ya da böyle bir şey var ve ne zaman yeni bir müşterimiz varsa, onu çoğaltacağız. Bir programcı ve diğer birçok işi dahil etmek için kullanılırken, artık ekibimizdeki şifre ile herkes bir şeyleri değiştirebilir ve değiştirebilir. Bir tasarımcı farklı test verileri istiyorsa, bunu değiştirir ve otomatik olarak bir sonraki projemizde olacaktır. Bir PM, eğitim amaçlı başka bir varsayılan kullanıcıya ihtiyacımız olduğuna karar verirse, bir tane oluşturur ve bir sonraki projemizde olacaktır.
“İlk kez bir şey yap, sadece yap. İkinci sefer, yap ve not al. Üçüncü kez, dur ve gerçekten aynı olup olmadığını gör. Eğer bir süreç çıkarsa, muhtemelen 4 ve 5'inci olacak. ”- Gavin Andresen, CTO Bitcoin
Birkaç yıldır Gravity Switch'de Gavin'e sahip olduğumuz için şanslıydık. Kültürümüze ve kodumuza biraz katkıda bulundu, ancak şeyleri ne zaman “hackleyeceğimiz” ve ne zaman prosedürleri ne zaman uygulayacağına dair bilgeliği, belgelere nasıl yaklaştığımı gerçekten değiştiren bir şey.
Gavin bize iyi bir kodun kendini belgelemeyi öğretti.