Yazılım Geliştirme Dünyası

Microsoft 1975 yılında Bill Gates ve Paul Allen tarafından kurulduğunda vizyonu “Her eve, her masaya bir PC” idi. Donanım ve yazılım alanlarındaki gelişmelerin hızı ve birbirlerini sürekli tetiklemesinin sonucunda bilgisayar kullanıcı sayısı hızla arttı. Artan kullanıcı sayısı beraberinde yeni gereksinim ve talepleri ortaya çıkardı. Bu taleplerin doğal sonucu olarak da farklı platformlar ve farklı servis sağlayıcıları ortaya çıktı. İletişim, finansal hizmetler, ticaret, eğlence kullanıcıların (özellikle internetin yaygınlaşmasıyla birlikte) en yoğun talep gösterdiği hizmetler halini aldı. Günümüze baktığımızda Microsoft’un çıkış noktasındaki hedefine büyük oranda ulaştığını görebiliyoruz. Ancak geldiğimiz noktada hızla artan bilgisayar ve internet kullanıcı sayısı, beraberinde güvenlik, iletişim, entegrasyon v.b. alanlarda çeşitli engellerin ortaya çıkmasına neden oldu.
Gelişmelere kendi açımızdan, yani yazılım geliştiriciler açısından baktığımızda işler çok daha zor ve zahmetli durumda. Kurumsal uygulamaların geliştirilmesinde performans, güvenlik, süreklilik gibi konularda belirli bir seviyeyi yakalamak için oldukça fazla efor sarfetmemiz gerekiyor. Örneğin elektronik cihazlarla soket iletişimi kuracak uygulamaları geliştirebilmek için iki alternatifimiz var. Birincisi 3. parti firmalar tarafından geliştirilmiş olan bileşenler satın almak ve uygulamamıza entegre etmek. Diğer alternatifimiz ise oldukça uzun sürecek bir kodlama ile benzer bir iletişim katmanını geliştirmek. Her ikiside firmaların birinci tercihi olmayacaktır. Sorunumuz sadece soket iletişimi noktasında değil elbette. Bölümün başında da belirttiğimiz gibi güvenlik, performans, yetkilendirme gibi pek çok konuda uygulama geliştiriciler oldukça zahmetli altyapı kodlarını geliştirmekle uğraşmak zorunda kalıyor. İşin kötü yanı geliştirilen bu altyapı kodları çoğu zaman istenilen verimliliği sunmaktan oldukça uzak kalıyor. Kabul etmemiz gereken şey, bu altyapı kodlarını geliştirecek bilgiye sahip olmadığımız, sahip olsak bile altyapı kodlarını yazacak zamana ve iş gücüne sahip olmadığımız, zaman ve iş gücü konusundaki ihtiyaçlarımızı karşılayabilsek bile bu kodların testi, güvenliği, güvenilirliği, performansı ve uygulamalara entegrasyonu konusunda hiç bir
Microsoft 1975 yılında Bill Gates ve Paul Allen tarafından kurulduğunda vizyonu “Her eve, her masaya bir PC” idi. Donanım ve yazılım alanlarındaki gelişmelerin hızı ve birbirlerini sürekli tetiklemesinin sonucunda bilgisayar kullanıcı sayısı hızla arttı. Artan kullanıcı sayısı beraberinde yeni gereksinim ve talepleri ortaya çıkardı. Bu taleplerin doğal sonucu olarak da farklı platformlar ve farklı servis sağlayıcıları ortaya çıktı. İletişim, finansal hizmetler, ticaret, eğlence kullanıcıların (özellikle internetin yaygınlaşmasıyla birlikte) en yoğun talep gösterdiği hizmetler halini aldı. Günümüze baktığımızda Microsoft’un çıkış noktasındaki hedefine büyük oranda ulaştığını görebiliyoruz. Ancak geldiğimiz noktada hızla artan bilgisayar ve internet kullanıcı sayısı, beraberinde güvenlik, iletişim, entegrasyon v.b. alanlarda çeşitli engellerin ortaya çıkmasına neden oldu.Gelişmelere kendi açımızdan, yani yazılım geliştiriciler açısından baktığımızda işler çok daha zor ve zahmetli durumda. Kurumsal uygulamaların geliştirilmesinde performans, güvenlik, süreklilik gibi konularda belirli bir seviyeyi yakalamak için oldukça fazla efor sarfetmemiz gerekiyor. Örneğin elektronik cihazlarla soket iletişimi kuracak uygulamaları geliştirebilmek için iki alternatifimiz var. Birincisi 3. parti firmalar tarafından geliştirilmiş olan bileşenler satın almak ve uygulamamıza entegre etmek. Diğer alternatifimiz ise oldukça uzun sürecek bir kodlama ile benzer bir iletişim katmanını geliştirmek. Her ikiside firmaların birinci tercihi olmayacaktır. Sorunumuz sadece soket iletişimi noktasında değil elbette. Bölümün başında da belirttiğimiz gibi güvenlik, performans, yetkilendirme gibi pek çok konuda uygulama geliştiriciler oldukça zahmetli altyapı kodlarını geliştirmekle uğraşmak zorunda kalıyor. İşin kötü yanı geliştirilen bu altyapı kodları çoğu zaman istenilen verimliliği sunmaktan oldukça uzak kalıyor. Kabul etmemiz gereken şey, bu altyapı kodlarını geliştirecek bilgiye sahip olmadığımız, sahip olsak bile altyapı kodlarını yazacak zamana ve iş gücüne sahip olmadığımız, zaman ve iş gücü konusundaki ihtiyaçlarımızı karşılayabilsek bile bu kodların testi, güvenliği, güvenilirliği, performansı ve uygulamalara entegrasyonu konusunda hiç bir zaman istenilen düzeye ulaşamayacağımızdır. Keşke ihtiyaç duyduğumuz tüm altyapı işlemleri için hazır, kullanımı kolay ve esnek bir platform olsaydı. Hayalini kurduğum aslında şöyle bir sistem: “Bir sanal mağazada cep telefonlarından sorumlu departmanda satış müdürü olarak çalışıyorsunuz. İş dışındasınız ve akıllı cihazınıza bir mesaj geliyor: “Henüz piyasaya yeni çıkmış olan telefonumuz inanılmaz satışlar yapıyor, telefon çok popüler ve stoklarınızda oldukça azalmış durumda.” Bu mesajın hemen ardından akıllı cihazınız üzerinden, şirketiniz için fiyat ve teslim zamanı açısından en uygun olan tedarikçiyi bulup ihtiyacınız kadar telefonu sipariş edebiliyorsunuz. Peki ya bu koşullar altında çalışmıyor olsaydınız? Şirketinizden sizi cep telefonunuzdan arayacaklar ve problemi ileteceklerdi. Sonra da siz şirketinize ancak dönebildiğiniz zaman tedarikçilerle teker teker irtibata geçerek hangisinin şirketiniz için en yararlı olduğuna karar verecektiniz. Sipariş ve teslimat bilgileri üzerinde anlaştıktan sonra işleminizi tamamlamış olacaktınız. Yani sadece bir kaç dakikada yapabileceğiniz basit bir işlem için belki de bütün bir gününüzü kaybedecektiniz. Verimliliğiniz düşerken zamanınızı etkili şekilde kullanamayacaktınız. Oysa akıllı cihazınız üzerinden tüm bu işlemleri kısa bir şekilde çözebildiğinizden işe gitmenize bile gerek kalmadan zamanınızı en az şekilde kullanarak şirketiniz için en iyi olan seçimi yapabilirsiniz.” Kesinlikle işler çok daha verimli ve kolay ilerlerdi.. Elbette bu kurulabilecek hayallerin sadece mobil platforma yönelik bölümünden bir kesit.

Güncelleme tarihi 30.07.2015

;