paint-brush
Tarayıcı Geliştirmeye Bağlı Web Geliştiricilerinin Tarihiile@taboca
1,019 okumalar
1,019 okumalar

Tarayıcı Geliştirmeye Bağlı Web Geliştiricilerinin Tarihi

ile Marcio S Galli9m2023/03/13
Read on Terminal Reader
Read this story w/o Javascript

Çok uzun; Okumak

Web geliştiricileri web sayfalarının oluşturucularıdır. Gelin bunların nasıl ortaya çıktığını ve Mosaic, Netscape, Mozilla, Firefox gibi tarayıcıların geçmişiyle olan bağlarını düşünelim.
featured image - Tarayıcı Geliştirmeye Bağlı Web Geliştiricilerinin Tarihi
Marcio S Galli HackerNoon profile picture

Web geliştiricileri bunun gibi web sayfalarının oluşturucularıdır. Burada nasıl işbirliği yaptığımızı bir düşünün: Okuma tarafında siz ve ben, HackerNoon'dan bir editörün desteğiyle daha iyi bir yazar oluyoruz.


Geliştiricileri görüyor musun? Muhtemelen hayır, çünkü iyi bir iş çıkardılar. Muhtemelen onları web geliştirmenin geleceği hakkında okurken buluruz.


Öte yandan, bu makaleyle sunduğum şey, web geliştiricilerinin ortaya çıkışını, bunun tarayıcıların tarihiyle nasıl bağlantılı olduğunu ve işbirliğinin tarayıcı gelişiminin zaman çizelgesini nasıl yeniden alevlendirdiğini durup düşünmek için bir fırsattır.

Web için yeni tür bir mühendis

+ https://www.unicamp.br/~everaldo/websites/editores_webpages.html


Web'in ilk günlerinde birçok yazılım mühendisi, web sayfaları açısından web geliştirmeye pek önem vermiyordu. Neden yapsınlar, değil mi? Mühendis olsaydınız lokomotiften çıkan ilk yolcudan mı yoksa lokomotifin kendisinden mi etkilenirdiniz?


Güzel HyperText Ürünleri Evi'nden Jason Kottke bunu çok iyi yazdı:


Üniversitenin bodrum katındaki fizik laboratuvarında ilk kez NCSA Mosaic'i World Wide Web'de gezinmek için kullanmak, şimdiye kadar yaşadığım dini deneyime en yakın deneyimdi. Hayatımı tamamen değiştiren bir yıldırımdı.


https://kottke.org/12/07/web-browsers-i-have-known-1994-2012


Ancak bu ilk izlenim, bilgisayar korsanlarının (ve ressamların) konuya kullanıcı arayüzü yönünden yaklaşmasına da olanak tanıdı. Bu nedenle Mosaic tarayıcısının icadı ve yeniliği, web geliştirme fırsatlarının başlangıcını işaret ediyor:


1993'ün başlarında, Süper Bilgisayar Uygulamaları Ulusal Merkezi (NCSA), Illinois Üniversitesi'nden Mosaic tarayıcısının ilk sürümünü yayınladı. Bu yazılım, araştırma camiasında popüler olan X Window System ortamında çalışıyordu ve kullanıcı dostu pencere tabanlı etkileşim sunuyordu. Kısa bir süre sonra NCSA, PC ve Macintosh ortamları için de sürümler yayınladı. Bu popüler bilgisayarlarda güvenilir, kullanıcı dostu tarayıcıların varlığı, WWW'nin yayılmasında anında etki yarattı.



Arkasındaki altyapının potansiyeli göstermesiyle tarayıcının bir araç olarak nasıl çok anlamlı olmaya başladığına dikkat edin:


30 Nisan 1993'te CERN, WorldWideWeb'in kaynak kodunu telifsiz olarak kullanıma sunarak onu özgür yazılım haline getirdi. 1993 sonlarında 500'den fazla bilinen web sunucusu vardı ve WWW, internet trafiğinin %1'ini oluşturuyordu ki bu o günlerde çok fazla görünüyordu (geri kalanı uzaktan erişim, e-posta ve dosya aktarımıydı).


Bilgiye her yerden erişme potansiyelini gösteren kullanıcı dostu arayüz nedeniyle gerçeküstü bir deneyimdi. Belki de ChatGPT'yi her yerden bilgiye erişme potansiyelini gösteren kullanıcı dostu bir arayüz olarak kullanırken hissettiklerimden farklı olmayabilir. Aşağıdaki makalede Mozaik'in tarihi ve Web'in icadı hakkında bilgi almayı düşünün:

Kaynağı görüntüle: Örnekleri kopyalayarak öğrenin

Ancak web sayfaları oldukça basitti. O zamanlar biz bilgisayar bilimi öğrencileri, Bell Laboratuvarlarından Dennis Ritchie'nin yaptığı gibi, sayfalarının basitliğine bakarak akıllı insanları bulurduk.


Bilgisayar bilimi derslerine katılmayan ve web ile oynamayan meraklı bir kullanıcı olarak orada bulunduğum için, web sayfalarının kaynağını görüntülememizi sağlayan, tarayıcıya entegre edilmiş bir menü seçeneğine de rastladım. Bu arada, neredeyse bir gecede Mosaic tarayıcısına Netscape adı verildi.


Jim Nielsen, The Spirit of View-Source'da konuyu değerlendirdi ve Netscape tarayıcısının web'deki her sayfa için nasıl anında bir öğrenme fırsatı sağladığını tanımladı.


Makalesinde Coders kitabında Clive Thompson'ın bir gözleminden alıntı yaptı.


Ziyaret ettiğiniz her web sayfası, nasıl oluşturulduğunu gösteren kodu içeriyordu. İnternetin tamamı, programlamayla ilgili nasıl yapılır kılavuzlarından oluşan bir kütüphaneye dönüştü.



https://blog.jim-nielsen.com/2020/the-meaning-of-view-source/ adresinden


Şimdi, "web"i etraftaki en popüler şey olarak hayal etmeye çalışın ve kaçımızın başkalarından fikir kopyalamak için sayfaların kaynağını kontrol ettiğimizi ve sonunda öğrenmeye çalıştığımızı hayal edin. Bunlar, sihri görebildiğimiz “kaynak görüntüleme günleriydi”.


Modern tarayıcıların menüsünde hâlâ "sayfa kaynağını görüntüle" seçeneği bulunsa da, bir web sayfasının kaynağını görüntülerseniz muhtemelen gizemli görünen bir şey göreceksiniz:


Unsplash'ta Markus Spiske'nin fotoğrafı

JavaScript: Kontrol ve etkileşim

İyi algılanan başka bir dönüm noktası, Netscape'in (yine) web geliştiricilerinin web sayfalarının belirli yönlerini kontrol etmek ve etkileşim üzerinde kontrol sahibi olmak için komut dosyaları oluşturmasına olanak tanıyan programlama dili olan JavaScript'i etkinleştirmesiyle ortaya çıktı.



JavaScript'in mucidi ve şu anda Brave Software'in CEO'su olan Gizliliğinize Önem Veren Tarayıcı Brendan Eic h, bize kahramanın Web diyarındaki JavaScript yolculuğunu özetleyen bir slayt verdi. Onun belirttiği noktalar, JavaScript'in her zaman zarif görülmediğini, ancak günün sonunda yoğun bir şekilde kullanıldığını ve gelişmeye devam ettiğini görmemize yardımcı oluyor.


https://brendaneich.com/wp-content/uploads/2017/12/dotJS-2017.pdf


Aşağıdaki ekran görüntüsü Netscape 2 tarayıcı arayüzünden çağrılan bir uyarı kutusunu göstermektedir. Web geliştiricileri, görsel uyarıları başlatmak (kodlarında hata ayıklamak için) ve web formlarını kontrol etmek, bir giriş formunun değerini doğrulamak ve diğer kullanım durumları gibi imkansız şeyleri yapmak için JavaScript'i kullandı.


https://webdevelopmenthistory.com/1995-the-birth-of-javascript/ adresinden


Meraklı bir kullanıcının "kaynağı görüntüle" aracılığıyla bir sayfadaki JavaScript hakkında bilgi edinebileceğini söylemeye gerek yok. HTML sayfası, HTML öğeleri, köprüleri, resimleri, stili ve JavaScript kodu aracılığıyla siteler hakkında çok sayıda sunumu ve mantıksal yapıyı aktaran zarftı.

Dinamik HTML: Düzen özelleştirmeleri ve animasyon

Ve başka bir fırsat, HTML'deki <layer> adlı yeni bir etiket aracılığıyla etkinleştirildi. O zamanlar, 1997 civarında, Netscape, geliştiriciler için yeni API'ler içeren Netscape Communicator Önizleme Sürümünü piyasaya sürdü. Bir basın açıklamasına göre, " Dinamik HTML, HTML için önemli bir kilometre taşıdır; tasarımcılara Web sayfası düzeni üzerinde daha fazla esneklik ve kontrol sağlarken, kullanıcılara daha yüksek derecede etkileşim sağlar.


http://web.archive.org/web/19970303111208/http://www17.netscape.com/newsref/pr/newsrelease354.html


Daha sonra <layer /> etiketi <div /> oldu. O zamanki teknik yenilik , en eski DHTML teknik notlarından birinden alınan aşağıdaki 3 boyutlu çizimde gösterildiği gibi, HTML'nin görsel bir parçasını, bir öğeyi diğerinin üzerine yerleştirme yeteneğiyle ilgiliydi.


Yukarıdaki 3 boyutlu görüntü, geliştiriciye, grafiksel maske GIF gibi bir öğenin nasıl daha yüksek bir z-indeksi ile konumlandırılabileceğini ve diğerinin üzerinde kaydırılabileceğini göstermektedir.


Şimdilik 1997'deki aşağıdaki gösteriyi deneyimleyemeyeceksiniz ama o trenin (ki o sadece bir görüntüydü) sanki üzerinize geliyormuş gibi hareket ettiğini hayal etmeye çalışın.


İşin püf noktası, bir animasyon yanılsaması yaratarak farklı boyutlardaki görüntülerin görünürlüğünü değiştirmek için JavaScript kullanmaktan ibaretti. Sayfa ayrıca başka yöntemler kullanarak lokomotif sesini de başlattı.

Tarayıcı savaşlarının doruğa ulaştığı o dönemde benim gibi Netscape için sayfa yazmaya başlayan geliştiriciler, benden farklı olarak Internet Explorer için de sayfalar üretmeye başladılar. Bu farklılıklar ve gerekli beceriler, geliştiricilerin web geliştiricisi olarak işe alınmasına neden oldu. DHTML hareketinin büyüklüğü ve karmaşıklığı , 1000'den fazla sayfadan oluşan bu popüler kitabın yazdığı içerikle ilişkilidir.

Web Standartları

Tarayıcı savaşlarının önemli bir sonucu Netscape'in kaynak kodunu açık kaynak olarak yayınlamasıdır. Project Code Rush'ta belgelendiği gibi Mozilla adı burada görünür. Bu süreç stratejik, karmaşık ve riskliydi. O zamanın CEO'su Jim Barksdale'in de kabul ettiği gibi bu cesur bir hareketti:


“Şu anda Netscape Navigator Communicator'a katkıda bulunan, hiçbir şirketin herhangi bir ürün üzerinde çalışmasını sağlamaya yetmeyecek kadar çok sayıda yeni insanın, ürünün geliştirilmesinde önemli bir fark yaratacağını kesinlikle umuyorum. Bunun herhangi bir rakibe karşı nasıl işe yarayacağını zaman gösterecek." Jim Barksdale @ Code Rush 2013


Açık kaynak temelinin yanı sıra Mozilla'nın önemli bir stratejisi de web geliştiricilerinin dikkatini çekti: Web standartları desteği. Buna yardımcı olmak için Netscape, teknoloji misyonerlerinden oluşan yeni bir ekip oluşturdu. Bunların arasında, geliştiriciler arasında ünlü statüsüne ulaşan CSS gurusu Eric Meyer de var . Amaçları, web geliştiricilerinin ihtiyaçları ile örtüşüyordu; mülkiyet farklılıklarına son vermek ve tüm tarayıcılarla çalışan sayfaları uygulamak için ortak bir zemine sahip olmak. Eric kavgamızı kutladı:


“Bob Clary, Marcio Galli, Katsuhiko Momoi, Chris Nalls, Tristan Nitot, Arun Ranganathan, Doron Rosenberg ve Susie Wyshak'a selamlar. İyi bir mücadele verdik ve DevEdge'in yeniden tasarımı hakkında bilgiler de dahil olmak üzere pek çok harika materyal oluşturduk.


Yukarıdakilerin daha büyük bir fotoğrafın küçük bir parçası olduğunu unutmayın. Bunun bir diğer ayağı ise daha sonra Mozilla Developer Network olarak büyüyen Mozilla'nın dokümantasyon çalışmalarıydı.

Tek Sayfalı Uygulamalar ve AJAX yolu

Geliştiriciler web sayfalarını standartlara uygun yöntemlerle düzeltmeye çalışırken, aynı zamanda sayfaların sınırlarını da zorluyorlardı. Bunlar , Gmail gibi kullanım örneklerinin ortaya çıktığı ve Web Hizmetleri gibi girişimlerin, tek sayfalı uygulamalar fikrini düşünmemizi sağladığı günlerdi - peki ya bir web sayfası yazılım uygulamaları gibi çalışabilseydi? Aşağıdaki makaleler o dönemde evangelistlerin neler yazdıklarını göstermektedir:



Bu çabalara rağmen eski batıdan da bir dönüm noktası geldi. 2005 yılında, San Francisco'dan Jesse James Garrett, " Ajax: Web Uygulamalarına Yeni Bir Yaklaşım " başlıklı ufuk açıcı bir makale yazdı: Jesse, dünya çapında web geliştirmeyi etkileyen bir kullanıcı deneyimi tasarımcısıydı. AJAX, geliştiriciler tarafından web uygulamalarına etkileşim ekleme ve davranış oluşturma niyetini iletmek için kullanılan popüler bir terim haline geldi.


Tek sayfalık bir uygulama oluşturmak için birini işe alacaksanız, AJAX bilen bir web geliştiricisini işe almak zorundaydınız:


Jesse James'in orijinal AJAX makalesinin üstteki baskısı.


Geliştiricinin En İyi Arkadaşı - Geliştirici Eklenti Araçları ve Sayfa İncelemesi

Mozilla projesi destanı şimdi Firefox ile sürdürdü. Firefox, Mozilla'nın özelliklerini sürdürerek performans, güvenlik ve standart desteği açısından hazır bir seviyeye ulaştı. Ancak dönüm noktası, geliştiricilerin güvenini pazar payına göre değil, sayfaları test etmelerine ve sorunları gidermelerine yardımcı olan yerleşik araçlar sayesinde kazanmasıydı.


Netscape'te çalışan Joe Hewitt tarafından yazılan Firebug uzantısı 2006'da ortaya çıktı ve web geliştiricilerinin sayfalardaki hataları ayıklamasına yardımcı olmak için tarayıcı eklentilerinin giderek daha fazla kullanıldığı anın oluşmasına yardımcı oldu. Firebug'un kullanımı aynı zamanda 2007 yılında Mozilla tarafından işe alınan John Resig tarafından yazılan ünlü jQuery kütüphanesinin yükselişiyle de ilişkilidir.


https://en.wikipedia.org/wiki/Firebug_(yazılım)


Ürün yöneticileri, pazar payı açısından ana tarayıcı Internet Explorer olsa bile, geliştiricilerin sayfalarını test etmek ve daha hızlı teslim etmek için Firefox'u kullandıklarından habersiz değildi. Web geliştiricileri tarafından kullanılan sayfa oluşturmaya yardımcı bir araç olarak Firefox dünya çapında bir fenomendi; Mozilla'ya katkıda bulunanlar Clauber ve Mario'nun 2008'de yaptığı Firefox - Geliştiricinin En İyi Arkadaşı başlıklı sunumuna bakarsanız daha iyi anlarsınız.


Önemli bir slaytta, Web standardı desteği ve JavaScript'te hata ayıklamaya yönelik geliştirme eklentileri ve daha fazlası nedeniyle Firefox'u bir geliştirme çerçevesi olarak kullanmanın önemini belirttiler.


https://pt.slideshare.net/clauber.halic/firefox-developers-best-friend-fisl2008

Gerisi tarihtir - JS kütüphaneleri ve çerçeveleri

Şimdi, bundan sonra ne olacağı hakkında konuşacak kadar deli miyim?


Mümkün değil. Eğer bir web geliştiricisiyseniz, olup bittiğini bildiğiniz şeyin sıcaklığını ve karmaşıklığını hissediyor olabilirsiniz. Bu partiyi burada şöyle bitirelim: Tarayıcılar gelişti, sayfalar gelişti, geliştiriciler de gelişti. Ve tüm oyuncuların, geçmişe bakıp kutlamayı tercih ettiğim noktaya kadar çok hızlı bir şekilde eşit derecede katkıda bulunduğunu söylemek istiyorum.


Birkaç not önemlidir. Birincisi, sunucu tarafı açısından yönlerden bahsetmedim. Web geliştiricilerinin ön uç, arka uç veya tam yığın olarak dallara ayrıldığını kabul etsem de, bu yansımayı yapıya dahil etmek zor olacaktır.


Bir diğeri ise “Geliştiricinin En İyi Arkadaşı Firefox” olarak gösterilen anın, web sayfalarıyla birlikte gönderilen kitaplıkların yükselişiyle aynı zamana denk gelmesidir. Bunun iyi bir örneği jQuery kütüphanesidir. Bu nedenle, "Geliştiricinin En İyi Dostları Olarak jQuery + Firefox" günleri, sayfa kodlarının karmaşıklaşmaya başladığı ve daha fazla mühendislik rolü gerektirdiği, yani sayfaların istemci tarafında daha fazla hata olduğu bir olguydu.


Bu gözlem, React gibi kütüphanelerin ortaya çıkışını ve diğer konuların yanı sıra, The Great Gaslighting of the JavaScript Era'nın gösterdiği karmaşık dünyayı değerlendirmek için kapıyı açacaktır.



Bu makalenin ana görseli HackerNoon'unAI Image Generator'ı tarafından "erken internet tarayıcısı" istemi aracılığıyla oluşturuldu.