2007'den bir zaman yolcusuna 10 yıllık web geliştirmeyi nasıl açıklarım?

Paylaş :

Zaman kabinine adım atmadan hemen önce iPhone'un piyasaya sürüldüğünü görmüş olabilirsiniz. Apple, çoğunlukla iPhone ve işletim sistemi iOS nedeniyle en büyük ve en zengin teknoloji şirketidir. Google, Android adında rakip bir şeye sahip ve Microsoft, Windows Phone ile sürekli büyüyen pastadan bir dilim almaya çalıştı. İşe yaramadı.

2007'den bir zaman yolcusuna 10 yıllık web geliştirmeyi nasıl açıklarım?

Program uygulamaları olarak adlandırmaya başladık ve bazı web siteleri kendilerine web uygulamaları diyor . 2008'de Google, "Chrome" adlı yeni bir tarayıcı yayınladı. Dokuz yıl sonra, Web'e girmenin en popüler yolu.

Chrome ekibi JavaScript ile çalışmak için çok yatırım yaptı ve kod her ay daha iyi hale geliyor. Web uygulamaları çok sayıda JavaScript kullanılarak yazılır ve zamanınızın masaüstü arayüzlerine benzerler.

Şirketler ayrıca daha iyi hale getirmek için JavaScript'e yatırım yaptı; artık sınıfları ve modülleri destekliyor. Biz dilleri kullanan derlemek gibi JavaScript, daktilo yazısı (Microsoft'tan, şimdi harikalar) veya Akış .

Artık kimse Flash'ı desteklemediği için bugünlerde çok fazla JavaScript yazıyoruz. Hatta sunucuda Perl yerine Node.js adlı bir şey kullanarak JavaScript çalıştırıyoruz. Kulağa olduğundan daha kolay geliyor.

 

Duyarlı tasarım: Aynı web sitesi birden fazla cihazda farklı şekilde gösterilir. Bunda hâlâ kötüyüz ama bunu göstermenin güzel yollarını bulduk.

Swing, SWT ve wxWidgets'ın benzerlerini hatırlıyor musunuz? Tarayıcı dünyası için onları yeniden icat etmemiz gerekiyordu. Çoğunlukla bileşenlere odaklanan birkaç yeni UI programlama modeli ortaya çıktı .

Uygulamaları duyarlı tutarken tasarlamanın, oluşturmanın ve test etmenin bir yolunu bulmamız gerekiyordu (cep telefonunda saçma sapan görünmeyen bir web sitesini tanımlamak için kullandığımız bir terim). Ayrıca ince tutmamız gerekiyordu - herkesin hızlı bir bağlantısı yok ama herkesin cebinde bir tarayıcı var.

Tüm bunlara yardımcı olmak için artık bileşen çerçeveleri var . Google tarafından Angular , Facebook tarafından React ve topluluk tarafından Vue beğenilerini içerdiğinden, terim belirsizdir . Ama elimizdeki en iyi terim bu.

Bu arada, 2007'deki Facebook'u hatırladığınızdan emin değilim. O zamanlar ABD'de büyüyordu ve şimdi devasadan da büyük. Bir milyardan fazla kullanıcısıyla övünen, aynı zamanda dünyanın en büyük kod tabanlarından biridir.

Facebook geliştirme ekibi çok sayıda harika kod yazar ve bunları çevrimiçi yayınlar. Kendi konferansları var, F8. Çoğu büyük şirketin kendi konferansları vardır.

Yeni uygulamalar daha karmaşık düzenler gerektirdiğinden CSS'nin de gelişmesi gerekiyordu. Artık resimli tablolar kullanmıyoruz. Çerçeveler de gitti. Bunun yerine CSS Floats, Flexbox ve CSS Grid gibi yeni standartlar oluşturduk.

İnsanlar bu standartları yinelemek zorunda kaldılar ve Bootstrap , Foundation ve daha pek çok şey gibi şeylerin tutarlı görünmesini sağlamak için kitaplıklar oluşturdular . JavaScript'e benzer şekilde, CSS'ye derlenen diller oluşturduk . Değişkenler veya modüller gibi CSS'nin kaçırdığı bazı şeyleri telafi ederler. Hala zor.

Kaybolmak sorun değil

Kafanız karıştıysa kendinizi kötü hissetmeyin. Gerçek şu ki, hepimizin kafası biraz karışık - ve böyle olması sorun değil. Artık gezegende çok daha fazla geliştirici var ve teknoloji şirketleri daha başarılı hale geliyor. Bir süre, hızla büyüyen ve ne yapacağını bilemeyen şirketleri tanımlamak için “startup” terimini kullandık. Ama bu terim bile eskidi.

Veri

Daha fazla programcı, daha fazla program ve daha fazla cihaz var. Artık elimizde daha fazla veri var . Bilgisayarların hepsini işleyecek kadar güçlenmesi gerekiyordu ve bu verileri içgörüye dönüştürmek için çeşitli teknikler geliştirdik.

İlk olarak, veriler hakkında bilgi edinmeyi ve verilerden bilgi çıkarmayı amaçlayan Veri Bilimi adlı bir alan oluşturduk.

Örneğin, Waze adlı bir startup, insanların telefonlarına arabalarındayken hareketlerini takip edecek bir uygulama yüklemelerine izin veriyor. Uygulamayı birçok kişi yüklediği için Waze, arabaların nasıl hareket ettiği hakkında çok fazla veriye sahip oldu. Trafik sıkışıklığının nerede olduğunu anlayan programlar geliştirmek için kullandılar.

Artık telefonunuzda Waze'i açtığınızda haritada trafik sıkışıklığını gerçek zamanlı olarak görüyor ve başka bir rota seçiyorsunuz.

Waze o zamandan beri Google tarafından satın alındı. Startuplarda bu çok oluyor.

 

 

Birisi bir yere ulaşmak için Waze'i kullanıyor. Diğer Waze kullanıcıları komik simgeler olarak gösterilir. Kaynak: waze blogu.

Veri Bilimiyle ilgili üç ana zorluk vardı: verileri depolamak, verileri anlamak ve verilere göre hareket etmek. Tüm bu alanlarda kendimizi geliştirdik. Her birine bakalım.

Depolamak

Şimdi çok daha fazla bilgiyi saklamamız ve ardından hangi parçanın önemli olduğunu bulmamız gerekiyor. Yeni veritabanları icat etmemiz gerekiyordu. MySQL ve PostgreSQL'in beğenileri terabaytlarca veriyi depolamak için uygun değildi (biz buna Büyük Veri adını verdik ).

İnternete öncelik veren büyük şirketler tipik olarak bu zorluklarla karşı karşıya kaldılar ve bu nedenle teknolojileri geliştirmede ön saflarda yer aldılar. Çoğu zaman, teknolojiler önce dahili olarak ve daha sonra açık kaynaklı olarak kullanıldı.

NoSQL dediğimiz bir hareket vardı. Bu yeni veritabanları sınıfı, geleneksel İlişkisel veritabanlarının bazı kurallarını aldı ve onları tersine çevirdi.

Verilerin birçok sabit bilgisayarda nasıl depolandığıyla ilgilenen Hadoop var . MapReduce adlı verileri işlemenin bir yolunu tanımlar (Google'ın bir makalesinden esinlenilmiştir - büyük şirketler bugünlerde iyi bilimsel makaleler yazıyor).

Sonra , verilere tablo olarak değil, farklı bilgisayarlarda depolanabilen anahtar ve sütun kümeleri olarak bakan Cassandra var . Ayrıca bu bilgisayarlardan herhangi birinin veri kaybına neden olmadan çevrimdışı olabilmesini sağlar.

Ayrıca , prototip oluşturma uygulamaları için kurulumu ve kullanımı kolay bir veritabanı olan MongoDB'ye sahibiz . 2017'de teknolojilere on yıl önce pop yıldızlarına davrandığımız gibi davranıyoruz - bazılarını hararetle savunuyor ve diğerlerinden şiddetle nefret ediyoruz. MongoDB - Nickelback grubu gibi - ikinci gruba aittir.

 

“Verileri anlama” kampında, odak noktasının çoğu Makine Öğrenimi adı verilen bir alanda olmuştur. Saf sınıflandırmadan derin öğrenmeye kadar birçok yeni teknik, artık her Veri Bilimcisinin araç kutusunda bulunmaktadır. Çoğunlukla Python yazarlar ve makine öğrenimini hemen hemen her yere yerleştirmek için geliştiricilerle birlikte çalışırlar.

Örneğin, Veri Bilimcilerinin yardımıyla birçok web uygulaması A/B testi kullanır. Bu teknik, uygulamanın biraz farklı iki sürümünü farklı, ancak benzer kullanıcı gruplarına sunar. Kayıt veya satın alma olsun, hangi sürümün istediğimiz hedefe daha hızlı ulaştığını görmek için kullanılır.

Airbnb ( air-bee-en-bee olarak telaffuz edilir ), Uber ve Netflix gibi birçok büyük şirket , kullanıcılarının en iyi deneyimi elde etmesini sağlamak için aynı anda yüzlerce ve binlerce A/B testi yürütüyor. Netflix, insanların TV şovlarını tüm cihazlarında aşırı derecede izleyebileceği bir uygulamadır.

Mikro Hizmetler ve Bulut

Netflix gibi şirketler çok büyük. Çok sayıda insana hizmet ettikleri için, her zaman çalışır durumda olduklarından emin olmaları gerekir. Bu, bilgisayarlarını oldukça iyi yönetmeleri gerektiği anlamına gelir. Gerektiğinde yüzlerce yeni sunucu ekleyebilirler.

Bunu geleneksel bir veri merkezinde başarmak zordur, bu nedenle Netflix'teki harika mühendisler sanal makineler kullanır. 2006'da başlatılan Amazon Web Servislerini hatırlıyor musunuz? O zamanlar, insanların Amazon'un veri merkezlerinde sanal bilgisayarlar edinmesine yardımcı olmak için EC2 olarak bilinen Elastic Cloud Compute'u sunmaya başladılar .

Bugün, hepsi şirketlerin hızla büyümesine yardımcı olmak için oluşturulmuş neredeyse 80 benzer hizmete sahipler. Bunun için modaya uygun bir adımız vardı - “The Cloud” - ancak bu terimi tanımlamak NoSQL kadar zor.

Hesabınızı yönetmek için giriş yapın

veya