Roy Fielding

Roy Fielding: Modern Web'in Mimarı

1994 ile 2000 yılları arasında, Irvine, Kaliforniya'daki bir lisansüstü öğrencisi, neredeyse hiçbir zaman birlikte gerçekleşmeyen iki şeyi başardı. Dünyadaki çoğu web sunucusunu çalıştıran yazılımın oluşturulmasına yardımcı oldu ve web'in neden çalıştığını açıklayan teoriyi kaleme aldı. İlki onu Apache Yazılım Vakfı'nın (Apache Software Foundation) kurucularından biri yaptı. İkincisi ise, beşinci bölümünde REST adlı bir mimari stili adlandıran bir doktora teziydi; bu dört harf, bugün son otuz yılda bilgisayar bilimi bölümlerinden çıkan diğer tüm fikirlerden daha fazla iş tanımında yer alıyor ve onları yazanların neredeyse hiçbiri bu tezi okumadı.

Laguna Beach

Roy Thomas Fielding, Eylül 1965'te Laguna Beach, Kaliforniya'da doğdu. Kariyerini birlikte çalışabilirlik üzerine adamış bir adama uygun bir ifadeyle kendini "kısmen Maori, Yeni Zelandalı, Amerikalı, İrlandalı, İskoç, İngiliz ve Kaliforniyalı bir plaj serserisi" olarak tanımladı. Akademik olarak evinden hiç ayrılmadı: Bilgi ve bilgisayar bilimleri alanındaki üç derecesinin hepsini de Irvine'deki Kaliforniya Üniversitesi'nden (University of California, Irvine) aldı — 1988'de lisans, 1993'te yüksek lisans ve 2000'de doktora.

On iki yıllık bu süreç üzerinde durmaya değer. Fielding'i önemli kılan şeylerin çoğu bu dönemde, derslerinin sonrasında değil, onlarla paralel olarak gerçekleşti. O, sonradan endüstriye katılan bir akademisyen ya da sonradan akademik unvanlar toplayan bir mühendis değildi. O, nesnenin icat edildiği o tam yıllarda, aynı nesne üzerinde her iki işi de aynı anda yapıyordu.

İnternet'i Yutan Sunucu

Fielding, erken dönem ticari internetin varsayılan altyapısı haline gelen açık kaynaklı web sunucusu Apache HTTP Sunucusu (Apache HTTP Server) projesinin kurucu ortağı oldu. Ardından çoğu teknik kurucunun kaçındığı o gösterişsiz kurumsal işleri yaptı: HTTP Sunucusu projesinin başkan yardımcısı, 1999'dan 2003'e kadar Apache Yazılım Vakfı'nın yöneticisi ve 1999'dan 2002'ye kadar ilk üç yılında başkanı olarak görev yaptı ve Mayıs 2014'e kadar yönetim kurulunda kaldı. Kurulmasına yardım ettiği vakıf modeli — rakip şirketlerin hiçbiri sahip olmadan paylaşılan koda katkıda bulunmalarını sağlayan yasal ve yönetimsel bir kabuk — o zamandan beri endüstri genelinde kopyalandı.

Tanınma çabuk geldi. Apache HTTP Sunucusu 1999'da ACM Yazılım Sistemi Ödülü'nü kazandı. Aynı yıl MIT Technology Review onu otuz beş yaş altı en iyi 100 yenilikçi listesine (TR100) dahil etti ve 2000 yılında O'Reilly, ona Açık Kaynak Appaloosa Vizyon Ödülü'nü verdi.

Protokol Yazımı

Daha derin katkı teknik şartnamelerdeydi. Fielding, HTTP şartnamesinin ana yazarıydı ve adı, özünde ağ bağlantılı her uygulamanın bugün hala nasıl konuştuğunu tanımlayan belgelerde yer alıyor. Göreli URL'ler üzerine RFC 1808'i, HTTP/1.0 üzerine RFC 1945'i, HTTP/1.1 üzerine RFC 2068 ve ardından RFC 2616'yı ve Tekdüzen Kaynak Tanımlayıcıların (URI) genel sözdizimi üzerine RFC 2396 ve RFC 3986'yı yazdı veya ortak yazarlık yaptı. Ayrıca HTML'in geliştirilmesinde de yoğun bir şekilde yer aldı.

Özellikle RFC 2616, web'i on yıldan fazla bir süre yönetti ve RFC 3986, URL'nin aslında ne olduğu sorusuna cevap veren belge olmaya devam ediyor. Bu tür bir şartname yazmak garip bir disiplindir: İncil'den çok bir yasa gibidir, dünyada zaten var olan bir şeyi, binlerce bağımsız uygulamanın birbirine katılmasına izin verecek kadar hassas bir şekilde tanımlar. Fielding bunu, şimdiye kadar dağıtılan en yoğun kullanılan protokol için yaptı.

REST

2000 tarihli doktora tezi Ağ Tabanlı Yazılım Mimarilerinin Mimari Stilleri ve Tasarımı (Architectural Styles and the Design of Network-based Software Architectures), tüm bunların teorik açıklamasıdır. Tezin argümanı, yazılım tasarımının olağan yönünün tersine işler. Fielding, bir sistem önermek yerine, mimari stillerin — kısıtlamalar kümelerinin — bir sözlüğünü önerdi ve küresel, merkeziyetsiz, geliştirilebilir bir ağın ihtiyaç duyduğu özellikleri hangi kısıtlamalar kümesinin ürettiğini sordu. Çıkardığı ve adlandırdığı cevap Temsili Durum Transferi (Representational State Transfer) yani REST idi: parçaların kaynak olduğu, istemcilerin sunucunun verdiği hipermedyayı takip ederek uygulama içinde hareket ettiği, istemci-sunucu tabanlı, durumsuz (stateless), önbelleklenebilir, tekdüze arayüzlü ve katmanlı bir stildi. 2000 yılında, bu son kısıtlama için HATEOAS — Uygulama Durumunun Motoru Olarak Hipermedya — terimini icat etti.

Tez, aslında web'in, daha iyi tasarlanmış dağıtık sistemler başarısız olduğunda patlayıcı büyümesini neden atlattığına dair geriye dönük bir açıklamasıydı. Endüstride en çok atıfta bulunulan mimari belge haline geldi.

Waka

Ayrıca bunun ötesine geçmeye çalıştı. 2001 ile 2006 yılları arasında Fielding, kendi belirttiği metin protokolünden daha verimli bir şekilde REST stiliyle eşleşmesi amaçlanan, HTTP için ikili, jeton tabanlı bir yedek olan Waka üzerinde çalıştı. Hiçbir zaman bitmedi ve hiçbir zaman dağıtılmadı. Web, HTTP üzerinde çalışmaya devam etti.

Roy Neden Dahi Olarak Adlandırılıyor

Buradaki özel yetenek mimari soyutlamadır: çalışan, dağınık, tarihsel olarak tesadüfi bir sisteme bakıp, onun özelliklerinden aslında sorumlu olan küçük kısıtlamalar kümesini çıkarma yeteneği. Fielding web'in neden çalıştığını çözdü — durumsuzluğun (statelessness) neden ölçeklenebilirlik sağladığını, tekdüze arayüzün neden bağımsız evrim sağladığını, önbellekleme ve katmanlamanın neden orijinal tasarımcıların hiç tanışmadığı taraflarca aracıların eklenmesine izin verdiğini. Bunu çıkardıktan sonra, web'in büyümesinin analizinde yük taşıyıcı dediği özellikleri yok etmemesi için HTTP/1.1 ve URI standartlarını yönlendirerek bir tasarım disiplini olarak kullandı. Teoriyi, standart yazımını ve referans uygulamasını, o çalışırken milyonlarca insanın kullandığı bir altyapı üzerinde eşzamanlı olarak yapmak, işin gerçekten sıra dışı olan kısmıdır.

Karşı argüman haklıdır. İtibarı büyük ölçüde tek bir fikre ve onu kodlayan belgelere dayanıyor. En büyük ödülü olan 1999 ACM Yazılım Sistemi Ödülü, işbirlikçi bir ürün olan Apache sunucusuna gitti ve burada danışılan hiçbir kaynak, ona dahi diyen herhangi bir otorite kaydetmiyor. Kendi protokolü olan Waka'nın ötesine geçme girişimi beş yıl sürdü ve hiçbir yere varmadı. Ve REST'in kaderi, netliğe karşı kendi türünden bir suçlamadır: adı artık HTTP üzerinden JSON döndüren herhangi bir arayüze gelişigüzel uygulanan bir fikir, bunların çoğu onun gerekli gördüğü hipermedya kısıtlamasını görmezden geliyor. Bu bir etkidir, ancak anlaşılmakla aynı şey değildir.

Miras

Fielding, konudan hiç ayrılmadan endüstride ilerledi: 1999'dan 2002'ye kadar eBuilt'te baş bilim insanı, 2002'den 2010'a kadar Day Software ve ardından Adobe'de baş bilim insanı ve o zamandan beri San Jose'deki Adobe'de kıdemli baş bilim insanı. Araştırma ilgi alanlarını açıkça listeliyor — World Wide Web, ağ tabanlı uygulamalar için yazılım mimarisi, uygulama katmanı ağ protokolleri, işbirlikçi yazılım geliştirme yöntemleri ve küresel yazılım mühendisliği ortamları — ve otuz yılını tam olarak bunlara harcadı.

Eserinin ölçüsü, görünmez olmasıdır. Her web isteği onun yazdığı kurallara uyar; her URL yasaldır çünkü onun adının olduğu bir belge yasallığın ne anlama geldiğini tanımlar; "REST API" diyen her mühendis, genellikle yanlış bir şekilde, Irvine'den bir tezin bir bölümünü çağrıştırıyordur. Altyapı, unutularak başarılı olan tek yazarlık biçimidir ve Fielding, çoğu insandan daha derinlemesine unutulmuştur.

Dahilerle karşılaştır

Jean Jacques Rousseau vs Sigmund FreudArchimedes vs Kim Ung YongFr D Ric Chopin vs George Frideric HandelAdam Smith vs Leonardo Da Vinci
Sıralamayı gör →Tüm karşılaştırmalar →

Harika çocuklar

Momiji NishiyaMomiji NishiyaFirst Olympic women's street champion, winning gold at age 13Emily BearEmily BearPlayed the White House at six, won a Grammy at twenty, scored a…Summer McintoshOlympic finalist at 14, world-record holder and triple Olympic…Laurent SimonsGraduated University at 11 — Belgian Prodigy with Electrical…
Harika çocuklar →

Oyna, yarın yine gel

Günlük Deha Mücadelesi · Brain teaser
A farmer has 17 sheep. All but 9 run away. How many are left?
Cevabına dokun ↓
Hangi dahisin? Ücretsiz IQ testi