Yazılım Dünyasında 2023 Trendleri
Meydana gelen büyük deprem felaketi ve facia sonrası yaşadığımız acılı sürecin ardından, yılın çeyreğini bitirmek üzereyiz(Bu vesileyle tüm kayıplarımıza Allah’tan rahmet, geride kalanlara büyük bir sabır ve yaralananlara acil şifalar diliyorum). Şubat ayının ortalarına doğru çıkarmayı planladığımız bu çalışma da bu dönemde doğal olarak sürüncemede kaldı. “Yazılım Dünyasında Trendler” serisinin 4. sayısı olan 2023 versiyonu ile ancak karşınızdayız. (2020, 2021, 2022)
Girişten anlaşılacağı üzere aşağıda yer alan yazıların hemen hepsi Aralık-Ocak döneminde tamamlandı. Malum yazılım sektörü için 2–3 ay uzun bir süre. Bu yüzden okurken bu gözle okumanızı öneririm.
Bu sayıda alanında uzman otuz kişinin görüşlerini okuyacaksınız. Geçen sene getirdiğim iki dönem kuralı sürüyor. Yani önceki iki sayıda da katkı sağlayan yazarlarımız bu sayıda yer almadı. Bunun yanında geçen sayıda bulunup bu sene müsait olamayan veya trendleri yeterince takip edemediğini düşünen yazarlarımız da bu sayıda yer almadı.
Bu sayıda altı kadın yazılımcı/uzman, yazar olarak yer aldı. Geçen senelere göre iyi bir sayı olsa da daha fazlası olmalı elbette. Geçen sene olumlu dönüşler aldığım çağrımı yineliyorum: önümüzdeki yıl görüşlerine başvurmam için tavsiye edebileceğiniz kadın yazılımcılar (kendiniz de olabilirsiniz) varsa bana iletirseniz memnun olurum.
Geçen senelerde olduğu gibi bu sene de içerikte çeşitliliği sağlamak için yazarlarımızdan sınırları oldukça geniş çizilmiş “serbest bir format” istedim. Kimi yazarlarımız tek bir uzmanlık alanında, kimileri dokundukları farklı alanlarda değerli görüşlerini paylaştı. Yine kimileri teknik konulara(dil, framework vs), kimileri daha soyut olan süreçlere, metodolojilere odaklandı. Velhasıl her biri kendi perspektifinden okurlara değer katacak öngörülerini, tavsiyelerini paylaştı.
Yine geçen senelerde olduğu gibi bu sene de yazılımla ilişkili farklı alanlarda uzmanların görüşünü aldım. Mesela Zeki Seskir’e kuantum bilgisayarları, Ayyüce Kızrak’a yapay zekâyı, Ahmet Usta’ya ve Turan Sert’e blokzinciri teknolojisini, Ziyahan Albeniz’e uygulama güvenliğini sordum. Bu alanlarda birikimi olan başka yazarlar da bu konularda görüşlerini paylaştı elbette. Bunlar haricinde yer vermek istediğim alanlar olsa da ya ilgili bir uzmana ulaşamadım ya da ulaştığım uzmanlar müsait olamadı.
Tahmin edileceği üzere ChatGPT oldukça öne çıkan bir başlık oldu. Onun haricinde Serverless yaklaşımı, uzaktan çalışmanın geleceği ve -maalesef- bilişim sektöründeki toplu işten çıkarmalar da öne çıkan diğer konular oldu.
Rapora geçmeden önce bizlerle değerli görüşlerini paylaşan tüm yazarlarımıza(Ahmet Usta, Altuğ Bilgin Altıntaş, Ayyüce Kızrak, Berk Ulsoy, Burak Selim Şenyurt, Cem Basaranoğlu, Deniz Öztürk, Egemen İmre, Emrah Şamdan, Emre Karaoğlu, Emre Mert, Emre Sevinç, Gizem Saruhan, Gökhan Gökalp, Gökmen Görgen, Görkem Çetin, Hadi Tok, Levent Arman Özak, Dr. Mehmet Hakan Satman, Mustafa Ilıkkan, Nesrin Aşan, Nihal Alıcı, Onur Dayıbaşı, Sedat Kapanoğlu, Selin Tunç, Serhat Can, Süleyman Fazıl Yeşil, Turan Sert, Zeki Seskir ve Ziyahan Albeniz), dokümanın PDF formatını hazırlayan Tarık Çayır’a ve özenle tüm metnin imla/noktalama kontrolünü yapan Atilla Alagöz ile Özgün Aydınsoy’a teşekkür ediyorum.
Not: Yazarlar alfabetik olarak sıralanmıştır.
Kapak Fotoğrafı: https://unsplash.com/@hackcapital
Tasarım: Tarık Çayır
Kürasyon: Muhammed Hilmi Koca
Editöryel Son Okuma: Atilla Alagöz, Özgün Aydınsoy
E-kitap(PDF) Formatı:
https://drive.google.com/file/d/1BqwzUo-7Bk23oWRWUJhednpruHpWLzef/view
Ahmet Usta
Co-Founder of ELYT.net
Belirli bir alandaki yeni eğilimleri, takvimlerdeki rakamlar ile gösterilen belirli bir dönemde gündeme getirmeyi seviyoruz. Diğer yandan bu eğilimler, sektörlerde yaşanan, değişim ve dönüşümler yaşayan sürekli bir döngünün parçaları. Yazılım sektörü de bunun çok dışında değil.
Yapay Zekâdan Beklentiler ve Gerçekçi Etkiler
Yazılım sektöründe 2023 senesi için en büyük beklentiler Yapay Zekâ (Artificial Intelligence — AI) başlığında bekleniyor. Şüphesiz ki geçen sene genel erişime sunulan Midjourney ve ChatGPT gibi servislerin bunda payı büyük ancak yapay zekâ sihirli bir dokunuş ile ortaya çıkan yeni bir teknoloji değil. Beklentiler o kadar yükseldi ki AI sebebiyle yazılımcıların işsiz kalacağının kavgası veriliyor. Evet bu bir gün kaçınılmaz şekilde gerçekleşecek ama bu sene değil. Bu sene içinde yazılımcıların işini kolaylaştıracak AI araçlarının sayısının artmasını bekliyorum. Bu durum, yazılımcıların verimliliğini etkileyen bir faktör olacak. Teknoloji devlerinin on binlerce kişiyi işten çıkardığı (neyse ki yapay zekâ yüzünden değil) ve küresel durgunluk beklenen bir dönemde çalışanlar için verimlilik daha önemli hale geliyor. Çok farklı alanlarda AI kullanan yeni girişim ve şirketlerin ortaya çıkması ile bu sene Yapay Zekâ, sektördeki ana trendleri belirleyecek gibi görünüyor.
Monolith Küllerinden Doğuyor
İnternet ve mobil cihazların etkisi ile, geride kalan 20 yıllık dönemde hızlı büyüme önemliydi. Hızlı ölçeklenmeler ile milyonlarca kullanıcıya erişmeyi hedefleyen girişimler ve servisler Mikro Servis mimarisine odaklanmışlardı. Yatırım tutarlarında milyonlarca dolar konuşuluyor ve Mikro Servis mimarisi ile yazılım geliştirmenin yüksek maliyeti büyük bir dert olarak görülmüyordu. İşler değişti, küresel gelişmeler artık tasarrufu gerektiriyor. Yeni girişimlerin ve işletmelerin, ellerindeki kaynakları daha verimli kullanması gerekiyor. Yüzlerce değilse bile onlarca sunucu üzerinde işletilen Mikro Servis mimarisi varlığını sürdürecek ancak daha düşük servis maliyetleri gerektiren Monolith mimarisi bu sene tekrar önem kazanan trendlerden birisi olacak.
Maliyetler ve Gelirler Daralacak
Üstünde uzun uzun tartışmaya gerek yok. İşletmeler maliyetleri düşürmeye odaklandıkça yazılım sektörü çalışanlarının enflasyon karşısında gelirleri daralacak. Görünen köy kılavuz istemez. Bunun tek iyi çıktısı şu ki, risk alma iştahındaki sektör çalışanlarının teşebbüsü ile yeni girişimler doğabilir.
Metaverse Yalanı Trendi
Maalesef, saçma bir konsept ile, büyük şirketlere kötü tasarlanmış 3D oyun satma işine dönüşen Metaverse kavramı, aslında pek çok yazılım sektörü çalışanı için bir fırsat yaratabilir. Unreal gibi oyun motorları ve hazır modeller ile, işletmelere sunulacak çeşitli projelerden kısa sürede güzel gelirler elde etmek mümkün görünüyor. Ancak bu trendin mevcut şekliyle uzun soluklu olması mümkün değil. Reklamlara değil gerçek iş modellerine odaklanan, tüm tarafları ile kârlı çıkabilir. Daha fazlası için şu yazımı okuyabilirsiniz: Metaverse Yalanı ve Gerçekler
Kodsuz Geliştirme (No-code Development), Öngörüye Dayalı Analitik (Predictive Analytics), Mobil Web Uygulamaları (Instant Mobile Applications) gibi kavramların da göz ardı edilmemesi gerekiyor. Tüm trendlerin içinde yapay zekâ kesinlikle kendine yer bulmaya devam edecek. Bakalım nelerde yanıldık, neleri doğru öngördük? Hep birlikte yıl boyunca izleyeceğiz.
Altuğ Bilgin Altıntaş
Agility Lead
Java dünyası için 2023 tahminlerim
Java dünyası için 2023 tahminlerim
1 — Geçen sene belirttiğim için “Bulut Faturası Odaklı” kod geliştirmenin yine bu sene de ön planda olmasını bekliyorum.
2– ChatGPT, GitHub Copilot gibi yapay zekâ araçlarının geliştiricilerin elini her zamankinden daha fazla güçlendireceğini tahmin ediyorum. Örneğin, ChatGPT ile mevcut koda bir test yazdırmak, bir javadoc belgesi yazdırmak veya mevcut eski kodun bir açıklamasına sahip olmak mümkündür. Hatta yapay zekâ desteği ile mevcut koddaki potansiyel hataların varlığını bulmak bile mümkün. Yapay zekânın insanların yerini alacağını düşünmüyorum ama yapay zekâyı kullananların kullanmayanlardan daha akıllı olacağına kesin gözüyle bakıyorum.
3 — Bu yıl Spring 3 ve Java 17'nin kombinasyonunu kullanan daha çok organizasyon göreceğimizi tahmin ediyorum. Bunun başlıca motivasyon sebebi Spring 3 içerisinde gelen native kabiliyeti. Cloud Native yaklaşıma göre bir uygulamanın hızlıca açılması ve temiz bir şekilde tüm kaynakları geri teslim ederek kapanması son derece önemlidir. Spring tabanlı uygulamaların görece yavaş başlatılmasına sebep olan bu engelin ortadan kalkması, bir çok organizasyonun dikkatini çekecektir.
4 — Geçen yıl Graal VM’nin kullanımının artacağını yazmıştım. Bu öngörüm bu sene de geçerli. Ayrıca bu sene Java uygulamalarının geleneksel JIT yaklaşımıyla bile daha da hızlı açılmasını sağlayacak olan Crac projesinin dikkat çekeceğini tahmin ediyorum. Bu konuda Azul firmasının çalışmalarının yakinen takip edilmesini tavsiye ederim : https://www.azul.com/blog/superfast-application-startup-java-on-crac/
5 — Quarkus’un popülaritesi geçen yıl zaten patlamıştı. Bu sene de Quarkus projesinin popülaritesinin daha da artarak devam edeceğini öngörüyorum. Özellikle Quarkus’un Jakarta EE MicroProfile extensionları ile elde edecekleri hızlı başlama, düşük bellek kullanımı ve performans gibi özellikler kullanıcılara muazzam avantajlar sağlayabilir. Quarkus dışında Micronaut ve Helidon projelerinin de 2023 yılında daha fazla dikkat çekenler arasına gireceğini düşünüyorum.
Ayyüce Kızrak
Artificial Intelligence Specialist
2023 Yapay Zekâ Trendleri
Bundan 10 yıl önce hevesler ve heyecanların yükseldiği yapay zekâ (YZ) meselelerinde geçtiğimiz yıla dönüp bakınca, “yok artık” dedirten önemli kilometre taşlarını görüyoruz. YZ’nin hayatın bir parçası olarak kabul görmesi, herkes tarafından erişilebilir hale gelmesi, YZ şirketlerine yatırım yapanların gelirlerindeki makasın açılması, 10 yıl önceki heyecanın sürmesine sebep oluyor. Ancak heyecanlar ve hevesleri birbirine karıştırmadan YZ trendlerine 2 yıl önce olduğu gibi gelin yine birlikte göz atalım.
YZ ile sentetik üretim hem görüntü hem de doğal dil tarafında yıla damgasını vurdu demek hiç yanlış olmaz. Eş dost, akrabalar ve hayatında YZ ile hiç ilgilenmemiş kişilerin bile ilgisini çekmeyi başardı. Ama bence asıl başarı ilgileri toplamak değil, herkesin kullanabilmesiydi. Erişilebilir ve kullanım kolaylığı ile büyük bir kitle en azından bir kez ses getiren YZ uygulamalarını denedi.
Tabii ki Stable Diffusion, Midjourney ve DALL-E’den bahsediyorum. Bu uygulamalarla sanat tasarım yarışmaları kazanıldı. Metin yazılarak üretilen görseller son yıllarda popüler olan kripto varlık ekosisteminde NFT ile OpenSea tarafında değerlendirildi elbette. Oyun ve karakter tasarımları, mimari çizimler de bu YZ uygulamaları ile denendi ve bazıları ticarileşti. Mal sahibi mülk sahibi hani bunun ilk sahibi? Fikrî mülkiyet, telif… Araya hukuki ve etik tartışmalar girdi.
Hayal ediyoruz… Bunu yazılı olarak tarif ediyoruz, betimliyoruz. Ne kadar “iyi” betimleyebilirsek o kadar hayalimize yakın belki daha başarılı üretimler yapıyoruz. “İyi” diyorum. Çünkü çok detaylı veya az detaylı her zaman “iyi” sonucu vermiyor. Bu sefer biz betimlemelerimizi çıkan sonuçlara göre güncelliyoruz. Ne oluyor? İnsan-Makine arasında bir diyaloğa şahit oluyoruz. Bu sadece görsel üretimi tarafında yaşanmadı. Önce OpenAI GPT3 sonra ChatGPT yayınlandı. Yine kullanımı çok basit olması sebebiyle 90’lı yılların ikinci yarısına damgasını vurdu vuralı hiç bir zaman yarışılmayan Google Arama Motoru’nun yerine aday gösterildi. Üstelik daha fazlasını yapabiliyor… Soruları yanıtlamak, sohbet etmek, literatür taramak, kod yazmak, veri tabloları oluşturmak, makale yazmak gibi sayısız beceriye sahip bir Üretici Doğal Dil İşleme çalışmasından bahsediyoruz. Ödevler mi yaptırılmadı, haberler mi yazdırılmadı, neler neler… Tabii yine dezenformasyon başlıklı etik tartışmalar peşinden geldi ve kullanımının yasaklandığı yerler oldu.
Sonuç olarak üretici ve transformers modellere ilişkin sosyo-teknik araştırmalar, teknoloji geliştirme, uygulama, ticarileşme ve adaptasyon süreçleri bu yıl yükselmeye devam edecek. Bakın, zaten bozacının şahidi şıracı! :)
ChatGPT
Aslına bakılırsa insanlığın başına gelen şey büyük bir paradigma değişimidir. Özellikle bundan yıllar önceki YZ’ye karşı direnç yerini şirketlerin, kurumların ve ülkelerin politika, strateji ve ekonomilerini; bu teknolojilerin yeteneklerini değerlendirerek, adapte ederek ve teknolojilerin geliştirilmesine yönelik yatırımlar yaparak değiştiriyor.
Bu çok ses getiren trendlerin yanı sıra biraz daha az ses getirenler de var. Bunlar çoğunlukla sağlık alanında öbekleniyor. Örneğin DeepMind tarafından geliştirilen ve ilaç keşfinde önemli bir adım olarak değerlendirilen AlphaFord, 220 milyon proteini üç boyutlu şekilde modelleme ve tahminleme yeteneğine sahip bir uygulamadır.
Gelelim YZ’nin can suyu ve aynı zamanda kanayan yarası: VERİ… Bundan 10 yıl öncesindeki algının artık değişmesi gerek. Çok veri bazen hiç veri! Verinin var olması yeterli değil. Kaliteli olması, mahremiyetinin sağlanmış olması, yanlı olmaması, alan uzmanlarınca değerlendirilmiş olması ve etik değer ve ilkeleri gözeterek hazırlanmış olması ge-re-ki-yor! Bu yıl ve önümüzdeki yıl da devam edecek disiplinler arası veri entegrasyonu. Birlikte çalışabilirlik zemininde iyi örneklerin paylaşılarak ve verilerin standardize edilerek çalışıldığı esnek ortamları daha çok göreceğiz.
Açıklanabilirlik ve şeffaflık konuları giderek daha önemli olmaya başladı. Bu yöndeki çalışmalar trend olmaya devam edecektir. YZ uygulamaları insan hayatına yerleştikçe, toplumsal ve çevresel etkisi daha çok gündemde olacaktır.
YZ’nin insanların yerini alması başlıklı fısıltıların ve belki YZ karşıtı toplulukların oluşmaya ve genişlemeye başladığı günümüzde biraz daha ayakları yere basan, belirsizlikler içinde riskleri öngörebilen, sağduyulu ve iyinin artmasına yönelik tartışmaların yapılması temennisiyle toparlamak istiyorum. Umarım 2023 yılında YZ, pazarlama aracı olmaktan ziyade veri odaklı ilişkili disiplinlere yapılan finansal ve insan kaynağı yatırımlarıyla karşımıza çıkar. Öte yandan, herkesin kendi verisi ve veri odaklı teknolojiler konusunda farkındalık seviyesinin artmasına ve bunun okuryazarlığa doğru ilerlemesine ihtiyaç olduğu kanaatindeyim.
2022 yılı YZ’nin demokratikleşmesine ve herkesin uygulamaları deneyimlemesine yol açtı. 2023'te bu uygulamaların iş dünyasına etik ilkeler ile ölçekleneceği, YZ’nin risk yönetiminin benimseneceği gelişmeler göreceğiz.
Berk Ulsoy
Lean/Agile Transformation
2023’ün Gelişi …
“2022’den belli oldu.” diye mi başlasam, “…Gidişini aratmaz umarız.” mı desem, bilemedim. Muhtemelen herkese artık duymaktan/okumaktan gına getirmiş fırtına ortamı şüphesiz yazılım dünyasını da etkiliyor. 2022’nin ortasına kadar süren hızlı ve hırslı işe alım döneminin hemen arkasından gelen ve özellikle henüz kârlılaşıp kendi ayakları üstünde durmaya geçememiş şirketleri varoluşsal krize sokan durum -sıcak finansmanın gitmesi- etkisini göstermeye devam ediyor.
Peki neden etkileniyoruz ?
Yazılım, çoğu durumda en uçtaki değer değil. Asıl değerin insanlara ulaşmasını sağlayan, kolaylaştıran bir ara katman. Dolayısıyla o zincirin ucundaki iş potansiyeli küçülür, beklentiler negatife dönerse, hiç de ucuz olmayan bir katman olan yazılım tarafının etkilenmemesi mümkün değil. Nihai olarak dünyanın bir yerinde yaşayan, muhtemelen yazılımın yaptığı katkıdan veya varlığından bile haberdar olmayan, o zincirin en sonundaki insanı en efektif şekilde mutlu tutmaya devam edebilenler en az hasarla atlatacak. Bu insan yeri gelir tek istediği nazlı yariyle iki kelam etmek isteyen bir insan olur, yeri gelir şirketinin başarısı için çalışan bir CEO olur.
Bu açıdan bakarsak, 2023’de yazılım sektörü için önemi biraz daha göz önüne gelecek şeylerin arasında kesinlikle CAPEX/OPEX optimizasyonuna yarayacak hamlelerin olduğunu söyleyebiliriz. Yani aynı uç değeri daha basitçe, daha ucuza, daha etkin hayata geçirmeye yol açacak değişimler kucaklanacaktır. Her ne kadar işin para kısmı özellikle böyle dönemlerde en çok dikkat çeken yer olsa da, Lean prensiplerini sözde değil organizasyonun tümünde yaşamın parçası haline getirmiş olanların, diğerlerine göre daha az hasarla atlatma şansına sahip olabileceklerini söyleyebiliriz. Krizden güçlenerek çıkmak kulağa klişe gibi gelse de, akılcı adımlarla bunu başaranlar var. Peki her şeyi doğru yapmak yeterli mi ? Her zaman değil. Bütün dünyada ticaret sicil kayıtları, her şeyi doğru yaptığı halde kapısına kilit vurmuş şirket doludur.
Peki bu optimizasyon çabasının ortasında neleri görebiliriz ?
Öncelikle, yapılması zorunlu olmayan deneysel yatırımlar, geri dönüşü yakın dönemde beklenmeyen veya net olmayan girişimler, arge çalışmaları sorgulanmaya daha açık olacaktır. Bu durum şüphesiz bir kısım SaaS şirketleri için müşterileri satın alım yapmaya ikna etmenin zorlaşacağı, yaptıkları katma değeri daha somut bir şekilde kanıtlamak durumunda kalacakları bir döneme işaret ediyor. Müşteri “Bu SaaS olmadan da işleri yürütebiliriz“ diyebiliyorsa durum daha riskli.
Cloud kaynaklarını daha maliyet dostu olacak şekilde kullanmak, kullanması zorunlu olmayan ve kaldırılmasının uç değere net negatif etkisi bariz olmayan üçüncü parti hizmetleri sorgulamaya başlamak, tüm değer zincirine bakıp nerelerde otomasyon yaparak ne kadar maliyet azaltılabileceğini araştırmak, yılın gözde aktivitelerinden olmaya aday. Bu tarz optimizasyonları kolaylaştıran, insanları gelecekteki değil bugünkü masraflarından bugün kurtarabilen, veya en azından masraflarını doğru görebilmeyi sağlayan yazılımlar ise yeşerecek alan bulabilirler.
Senelerdir ortada olmasına rağmen küçük denilebilecek bir kesimin radarına girebilmiş olan FINOPS pratiklerini daha fazla duymaya başlayabiliriz. FINOPS’un hayata geçirilmesi, hem şirket süreçlerinde hem otomasyonda ilerlemeler yapmayı zorunlu kılacaktır. Şirket wiki’sinde kalan FINOPS’un kimseye faydası yok.
Bütün büyük cloud hizmet sağlayıcılarının ve çözüm ortaklarının senelerdir çırpınarak anlattıkları governance konusu ve bunun otomasyonu herhalde artık biraz daha dikkat çekecektir. Ay sonunda gelen yürek hoplatıcı faturanın, ‘biz ne yaptık ki bunu ödeyeceğiz’ sorusunu ekip ekip gezerek en sonunda ‘haa X ekibi geçen ay bir deney yapmak için Y hizmetini büyük bir kapasite ile açmıştı, kapatılmamış, tüh neyse’ cümlesiyle sonuçlanması tahammül sınırlarını zorlayacaktır. Governance konusunu rayına koymak da, hem kurum süreçlerinin oturması hem de otomasyonu zorunlu kıldığından yine yazacak epey kodumuz var demektir.
Kullandığımız kaynakların ebatları doğru mu, mimarimizi değiştirerek bazı kaynakları daha efektif kullanabilir miyiz veya başka kaynaklarla değiştirebilir miyiz ? Kaynakları kullanış şeklimizi değiştirerek sağlayabileceğimiz bir fayda var mı ? Bir yıl, hatta bir kaç ay önceki şartlara göre verilmiş bir karar bugün geçerli olmayabilir. İçinde bulunduğumuz durum artık işimize yaramıyorsa diretmenin anlamı yok, zararı var.
Tabi cloud otomasyonu, finops, governance sadece işin bir kısmı ve herkese hitap etmiyor.
Robotic Process Automation ve low-code platformlar zaten pek çok endüstriyel alanda karşımıza çıkıyordu. Bu yıl bu konularda somut katkı sağlayanlar ve bunu kanıtlayabilenler için yeni fırsatlar çıkabilir.
Her yıl pek çok yerde güncelleme yapıyoruz fakat bu yıl, hâlâ geçiş yapmamış olanların Java 11’i nihayet arkada bırakmalarının gerekli olacağı yıl olacak. 5 yılın ardından 30 Eylül’de aktif destekten çıkarılıp sadece güvenlik desteği alacağı döneme geçen Java 11’e çoktan veda etmiş olmalıydık. Spring Boot 3’ün de Java 17 istiyor olması, yaz döneminde hummalı bir borç ödeme periyodu getirebilir.
Bütün bunlar yazılım dünyasını endüstri olarak meşgul edecek şeylerin bir kısmı. Peki yazılımcıları neler meşgul edecek ?
Ne yazık ki 2023 pek çok meslektaşımız için karanlık başladı. İnternete yansıyan kısmın yansımayana göre küçük olduğunu göz önüne alırsak, karşımıza çıkan haberlerden de daha çok insan ve ailenin etkilendiğini düşünebilirz.
Statüsü, bilgisi, tecrübesi ne olursa olsun herkesin başına gelebilen bu durumda neler önemli ?
Öncelikle, yaşadığımız ve iş kanunlarına bağlı olduğumuz ülkenin (Aynı ülke olmayabilir) kanunlarını eğer bilmiyorsak öğrenmenin tam zamanı. Kontratımızda neler yazıyor, haklarımız neler, bize yardımcı olmak için hangi kurumlar var bilmek gerekiyor. Özellikle geçici vize ile başka bir ülkede yaşayanlar için bu çok daha önemli. Eğer bunları okuyarak emin olamıyorsak, profesyonel yardım almaktan kaçınmamalı. Eğer bulunduğumuz ülkede veya şirkette sendika varsa soruları karşılamaktan memnun olacaklardır.
Burak Selim Şenyurt
Senior Software Engineer
Geçtiğimiz sene de bir sonraki yıla ait bazı tahminlerde bulunmaya çalışmış, siber güvenlik, evren ötesi, uzaktan çalışma gereksinimleri, iç girişimcilik, Rust programlama dili ve Yapay Zekâ destekli mikro eğitim konularına atıfta bulunmuştum. Geçen süre zarfında yavaş yavaş pandemiyi terk ettiğimiz ama dünyaca yerine yeni dertler edindiğimiz bir dönemle de karşı karşıya kaldık. Üstelik insanlık olarak her yıl olduğu gibi bu yıl da savaşlara, iklim dengesinin bozulmasına, kuraklığa, çılgınca tüketmeye ve fakirleşmeye yatırım yaptık. Evrendeki yalnızlığımızın yüksek kalite görsellerini paylaşan James Webb teleskobu rağmen kibrimizin esiri olmaya devam ediyoruz. Ama dilerseniz bu distopik düşünceleri bir kenara koyalım ve gelecek tahminleriyle devam edelim.
Enerji Dostu Yaklaşımlar Artar
Yıllar öncesinden yapılan enerji odaklı olumsuz tahminler sanıyorum ki beklenenden daha kısa sürede karşımıza çıktı. Hiç beklemediğimiz bir savaş ve bunun uzun sürmesi belki de Avrupa’nın yenilenebilir enerji kaynaklarına olan yaklaşımını değiştirip tekrardan fosil yakıtları öne çıkartmak zorunda kalacağı bir süreci tetiklemiş olabilir. Ortada bu tip parametreler olsa da otomotivden yaşam alanlarına, sanayiden kamu iştiraklerine kadar bir çok alanda iyileştirmeler söz konusu (Gerçi Our World in Data’nın 2021 verilerine göre yenilenebilir enerji kaynaklarına dâhil edilen unsurların kullanım oranı hâlâ daha istenen seviyelerde değil). Yaygınlaşmanın çok hızlı olması beklenemez tabii ama eskiden dergilerde okuduğumuz enerji alanına yönelik pek çok yenilik kullanılabilir ve daha kolay ulaşılabilir hâlde. Bugünlerde oturduğumuz evi tepeden tırnağa yenilenebilir enerji kaynakları ile ayakta tutmamız ve bu sayede çevre dostu bir konfor alanına sahip olmamız pekâlâ daha kolay görünüyor.
Esasında enerji tüketiminde öne çıkan oluşumları düşündüğümüzde çevremizi saran bir başka dünyadan da söz edebiliriz. Renewable Energy World’e göre bir evin ısıtılmasından soğutulmasına, kullanılan buzdolabından bilgisayara kadar enerji tüketen ve dolayısıyla yenilenebilir enerji ile beslenebilir birçok enstrüman söz konusu. Son yıllarda ortaya çıkan akıllı sayaçlar, güneşten enerji sağlayan çatı malzemeleri, yağmur suyunu kullanılabilir hale getiren sistemler gibi pek çok unsur geleceğimizi kurtarmak adına giderek yaygınlaşmakta. Her ne kadar bir evin enerji tüketiminin sadece %1.1’ini bilgisayarların oluşturduğu tahmin edilse de internet üzerinden bağlandığımız uygulamaların barındırıldığı veri merkezleri ciddi anlamda enerji katili olabilirler. Tech Target’ın bir haberine göre geleneksel veri merkezlerinde yıllık bazda toplam enerji tüketimleri azalmaktayken bulut tabanlı veri merkezlerinde bu oranlar katlanarak artmış durumda. Bunun en büyük sebeplerinden birisi de geleneksel veri merkezlerinden bulut tabanlı sistemlere olan göç.
Bulut tabanlı sistemlerde enerji ihtiyacı oldukça yüksek. Bu da güneş, rüzgâr gücü gibi yenilenebilir enerji kaynaklarının söz konusu enerji ihtiyaçlarının karşılanması noktasında öne çıkması için bir sebep. Nitekim bazı problemleri olsa da örneğin güneş enerjisi kullanımı bir veri merkezinin kuruluş maliyetlerini iyiden iyiye düşürmekte. Ne var ki enerji ihtiyacı o kadar yüksek ki çok fazla sayıda güneş paneline ihtiyaç var. Bu, veri merkezinin kurulacağı yerin bile coğrafi olarak dikkatle seçilmesini gerektiriyor. Yine de avantajlar ön planda. 2025’e kadar veri merkezlerinin %13 kadarının enerjisini güneşten sağlayacağı öngörülmekte. Rüzgar gücü için de benzer bir durum söz konusu olabilir. Veri merkezlerinin ihtiyacı olan yüksek enerjinin sağlanması elbette çok sayıda rüzgar türbini ile mümkün ancak bunları veri merkezlerine yakın kurmak gibi bir durum her zaman söz konusu değil. Dolayısıyla veri merkezi ile rüzgar türbinleri arasında enerjinin taşınması gereken durumlar söz konusu olabilir. Nitekim rüzgar türbinleri de her istenen coğrafi bölgeye yerleştirilememekte.
Peki buradan nereye varabiliriz? Görünen o ki yazılımların sirayet etmediği alan neredeyse yok. Dünya dışında bile onun nimetlerinden yararlanıyor, gelecek planlarında mutlak surette ona yer veriyoruz. Yapay zekânın ve büyük verinin başı çektiği birçok alan sayısız uygulamayı ve fikri parmaklarımızın ucuna kadar getiriyor. On yıl öncesinde çalışacak ortamı bulamayan algoritmalar artık sahada kullanılabiliyor. Ancak tüm bu fikirler daha yüksek işlem gücü, daha fazla sistem kaynağı ve doğal olarak daha yüksek enerji ihtiyacı anlamına da gelmekte. Web Tribunal raporuna göre 2015’ten bu yana dünya üzerindeki veri merkezlerinin sayısı azalmış olsa da aynı rapor her yüz kişiye bir veri merkezi düştüğünü de belirtmekte. Bu parametreler enerji dostu uygulamaların geliştirilmesi ve yaşı geçmiş sistemlerin yenilenmesi adına yeni yatırımlar yapılmasını gerektiriyor bana kalırsa. Buna bağlı olarak da Sustainable Software Engineering başlığının ülkemizde daha çok öne çıkacağını/çıkması gerektiğini düşünmekteyim(Bu alanı merak edenler Microsoft’un şu blogunu takip edebilirler) Ayrı bir departman olarak açılmasa da özellikle Ar-Ge merkezlerinde şirketlerin kendi enerji sarfiyatını azaltacak yönde donanımsal ve yazılımsal kararlar almak üzere çalışmalar yapacağına inanıyorum.
Kurumsal Yavaşlar, Bireysel Hızlanır
Bir süredir devam eden ekonomik konjonktür, yazılım alanında çalışanların çok da mutlu olmayacağı bir ortamın oluşmasına neden olmuş olabilir. Her ne kadar Stackoverflow’un geçtiğimiz yılın ilk çeyreğinde açıkladığı anket sonuçları aksini söylese de en azından çevresel gözlemlerim ve kulağa gelen fısıltılar ülkemizde daha olumsuz bir durum yaşandığını hissettiriyor. Yine de anketteki bazı detayların farklı etkileri olabilir. Rapordaki tespitlere göre yazılımcıları mutlu eden üç ana faktör maaş, iş-yaşam dengesi ve verimlilik olarak öne çıkmakta. Ülkemizde yazılımcı maaşlarının alt ve üst değerleri arasındaki aralık gerçekten çok tuhaf. Bireysel anketlerden tutun sektörün kullandığı özel danışmanlık raporlarına kadar bu böyle. Bununla birlikte, yüksek yaşam kalitesi arzulayan yazılımcıların, hayat pahalılığının giderek artması sebebiyle diğer pek çok sektörde olduğu gibi yeni arayışlara girmesi son derece doğal. Eskiden iş-yaşam dengesinin tutarsızlığı veya yapılan işten tatmin olmamak yazılımcılar için iş değişikliğinin başlıca sebebi iken artık ücret beklentisi daha mühim bir mesele haline gelmiş durumda.
Uzaktan çalışma kültürünün yaygınlaşması, özellikle genç nüfusu giderek azalan ama teknolojide öncü olan ülkelerin yetenek ihtiyacının artması, batılı firmaların yazılım iş gücünü Orta Asya kıtasından Avrupa’ya doğru kaydırması, yeni neslin bazı karakteristik özellikleri ve de en önemlisi cesareti, değişiklik yapmayı kolaylaştırıyor. Ülkemizin yazılım yeteneği anlamında önemli bir potansiyeli ve gücü olduğu aşikâr. Bu parametreleri küresel ölçekteki startup ekosistemi ile bir arada düşünmeyi tercih ediyorum. Embroker’daki özet, startup girişlerinin son yıllarda daha fazla arttığını özetler nitelikte. Akla gelebilecek her sektörde daha yüksek başarım oranı ile yeni iş modellerini hayata geçirmek mümkün(Hatta KPMG Türkiye raporuna göre hem ekonomi hem de girişim sayıları katlanarak artmış durumda) Başarılı bir startup için pek çok kriter olmasına karşın kurumsalın üstüne yapışmış “hantallık” ibaresinin startup’larda geçerliliğini yitirmesi bana kalırsa önemli bir katalizör. Yeni nesil yazılımcılar hantal yapılarda sıkışmayı, zorunlu kalmadıkça, pek tercih etmiyor. Startup kültürünün bu cazibesi zaten uzun bir süredir kurumsal tarafı da bir şeyler yapmaya itmiş durumda. Kendi alanı ile doğrudan ilgili girişimleri satın alan veya bu girişimlere yatırım yapanlar haricinde, bazı büyük ölçekli kurumların gelecek hedeflerine ulaşmak için iç girişimcilik programları işlettiğini de görüyoruz.
Yukarıda bahsettiğim pek çok tespit, her yazılımcıyı cesaretlendiren bir ortama da zemin hazırlıyor. Bana kalırsa önümüzdeki dönemde kurumsal taraftan kopup bireysel girişimler için ter dökecek yazılımcı sayısında tahminlerin ötesinde bir artış olacak. Özellikle startup ekosistemine kaymaların artacağına inanıyorum. Elbette bu bir domino etkisine de sebebiyet verebilir. Özellikle kurumsal tarafın bir süredir kaybetmekten ve bulamamaktan yakındığı yetenekleri idame etme noktasında daha da fazla zorlanacağını düşünebiliriz. Bu, eski sistemleri modernize etmeye çalışanların yenilenme süreçlerinde aksamalar yaşayacağı ve yeni düşünce setlerini beklenenden daha uzun sürede devreye alacağı bir dönemin başlangıcı olabilir. Ayrıca bu kaymalar, işveren açısından ücret politikalarını sürekli revize etmeyi gerektirecek bir dönemi de başlatabilir ve sonuçta yine aranan yetenekler Kaf dağının arkasında kalabilir.
C++’tan Göç Hızlanır
Gelmiş geçmiş en etkili dillerden birisidir C++. Google arama sonucuna göre 37 yıldır da hayatımızda. Ancak onlarca yıldır geliştiricilerin elinde işleri oldukça kolaylaştıran, ürünlerin geliştirilmesini hızlandıran platformlar ve yönetimli(.Net, Java vb.) ortamlar mevcut. Ayrıca C++ etkili olduğu kadar öğrenilmesi zaman alan, çok dikkatli programlama yapmayı gerektiren, gözden kaçabilecek bellek hataları ile hatırı sayılır bedeller ödeten bir araca da dönüşebilir. Elbette bu varsayımım C++’ın endüstriyel alandaki başarısını gölgeleyemez ve ona olan gereksinimi hiçe sayamaz. Yeni nesil bir insansız hava aracından uzay roketine, oyun motorlarından işletim sistemlerine kadar çok önemli alanlarda kullanılmaktadır. Ne var ki kod tabanının büyüdükçe çok fazla karmaşıklaşması, yeni iş modellerinin özellikle girişimcilik tutkunları ve hızlı sonuç almak isteyenler açısından daha yüksek seviyeli dillerle gerçekleştirilmesi ama en önemlisi C++ öğrenmek isteyenlerin sayısındaki azalma gelecek için farklı yatırımlar yapılmasını da zorunlu bırakmış görünüyor.
Son on yıl içerisinde öne çıkan ve pek çok C++ geliştiricisini kendisine hayran bırakan Rust programlama dili, aldığı tedbirler, geniş kaynak kütüphane seti, açık kaynak topluluk gücü ile dengeleri bir süre önce değiştirmeye başlamış ve C++ ile geliştirilmesi planlanan ürünlerde “acaba…” denmesine de neden olmuştu. Hatta ThougthWorks 2020 radarı onun yüksek performans bekleyen makine öğrenimi gibi alanlarda kullanılabileceği yönündeydi. Diğer yandan Google’ın C++’ın halefi olarak öne sürdüğü ve yine ThoughtWorks radarına göre kullanmak için henüz acele edilmemesi gereken Carbon dili ise C++ ekseninde kalanlara alternatif bir yol daha açacak gibi duruyor.
C++ tabanında geliştirilmiş ama yaşını almış sistemlerin modernizasyonu noktasında bu dillere yatkın olanların rahatça geçebileceği, yeni nesil yeteneklerin de dikkatini çeken Rust ve Carbon gibi alternatifler olması farklı kuşakların bir arada çalışmasına iyi bir zemin hazırlıyor. Buna bağlı olarak bu ciddi modernizasyon için çok farklı platformları öğrenmek, yeni iş modelleri geliştirmek yerine, daha hafif maliyetlerle ilerlemenin yolu da açılmış durumda. Dolayısıyla şirketlerin Rust ve Carbon özelinde rafa kaldırdıkları yenileme taslaklarını tekrar gün yüzüne çıkardığı bir dönem başlayabilir. Lakin savunma sanayisi, uzay teknolojileri gibi bazı alanlarda hâlâ endüstriyel standart ve ispatlar geçerliliğini korumaya devam edecektir. En azından bir süre daha (NASA’nın 2020–2021 arasında çekirdek uçuş sisteminde Rust dili ile bir POC çalışması yaptığını ve “acaba…” sorusuna cevap aramış olduğunu da belirtmek isterim)
Sportif Algoritmalar Şahlanır
Yakın zamanda önemli bir spor organizasyonu gerçekleştirildi. Her ne kadar basketbolu futbola tercih etsem de, seveniyle sevmeyeniyle herkesin kupa kaldırmasını arzu ettiği Messi ile Katar’da gerçekleştirilen ve pek çok ilke imza atılan koca bir Dünya Kupası izledik. Bu Dünya Kupası’nda da algoritma destekli unsurlar hakemlere birçok konuda yardımcı olmaya çalıştı. “Pozisyon ofsayt mıydı?”, “Top çizgiyi geçmiş miydi?” gibi sorulara hızla cevap verebilen ve hakemleri asiste eden algoritma sadece bununla yetinmedi. Stat ısıtıcılarının otomatik ayarlanmasından yüz tanıma teknolojisi ile kişisel hakları da gözeterek en eğlenceli fanların bulunmasına, izdiham oluşma riski tespitinden oyuncuların sensörlere yansıyan anlık ve geçmiş yıllara ait verilerini baz alarak istatistikler çıkarılmasına kadar birçok alanda algoritmaların işleyişini gördük.
Ancak sportif algoritmalar bunlarla da sınırlı değil. Örneğin İspanyol Getafe Spor Kulübü, sakatlıkları önceden tahmin etmek için AI destekli bir sistem kullanıyor ki bunun bir kulübün istikrarı ve oyuncu sağlığı açısından ne kadar önemli olduğunu belirtmeme gerek yok. Hakemlerin, oyuncu sayısının çokluğu ve karmaşıklığı nedeniyle zaman zaman karar vermesini epeyce güçleştiren Rugby oyunu için Toshiba firması makine öğrenimi odaklı bir sistem geliştirmiş. AI Time Journal’ın haberine göre basketbol, tenis ve beyzbol da sportif algoritmalardan fazlasıyla yararlanıyor.
Bu ürünler ve elde ettikleri başarılar sportif alanda yeni fikirlerin daha kolay hayata geçirileceği bir dönemin habercisi gibi. Bana kalırsa yazılımcıların üzerinde durması gereken bakir alanlardan birisi spor dünyası. Uzun süredir skor tahminleme, oyuncu performanslarını yorumlama, ilginç istatistikler sunma veya antrenman programı düzenleme gibi pek çok alanda yazılımlar zaten kullanılıyor. Ama artık yapay zekânın büyük veri üstünde koşarken sensör bazlı verileri de çok hızlı sürelerde işleyebildiği gelişmiş algoritmaları konuşuyoruz. Anlık bazdaki bu başarım oranlarının giderek iyileşmesi, oyunu tamamen değiştiriyor. Hatta önümüzdeki yıl gerçekleştirilecek FIBA Dünya Basketbol Şampiyonası’na bir sportif algoritma geliştirmenizi isteseler bu ne olurdu, bir düşünün derim. Kim bilir, Sportif Yazılım Geliştiricisi diye yeni bir meslek dalı bile duyarız. Evet abartı oldu biraz :) Sanıyorum ki yazıyı sonlandırmanın vakti gelmiş.
Kalın sağlıcakla…
Cem Basaranoğlu
Software Craftsman
Veriye dayalı kararlar alan tüm organizasyonların ölçeklenebilmesi için ‘Data Mesh’
Birçok işletme veya iş fikri varoluşun doğası gereği hayata monolit olarak başlar. Bu monolit yaklaşımın; zamanla artan müşteri taleplerini karşılamak ve işletmenin birçok farklı nedenden dolayı büyümesini sağlamak için mikro işletmelere ayrıştırılması gerekmektedir. Aslında sektörümüzün 1960'lı yıllardan bu yana geliştirdiği tüm çözümler; “bir özelliği ya da değeri daha hızlı teslim edebilmek ve daha iyi test edebilmek” probleminin etrafında şekillenmektedir. Bu sebepten, mikro hizmet kavramı da yalnızca teknik bir çözüm değil, aynı zamanda organizasyonel bir çözümdür ve tamamen bu mikro işletmelerin üretmesi gereken değere katkıda bulunmak için kullanılırlar.
Yıllar içinde işlerini teknolojinin yardımıyla müşterilerine sunan tüm şirketler mikro işletme konseptine uyum sağlamaya çalıştı. Ayrıca organizasyonel olarak otonom ekipler kurdular ve organizasyon şemalarını tamamen bu mikro işletmeler üzerine kurdular. Geleneksel organizasyonel şemalar yerini daha yassı organizasyonel şemalara bıraktı. Bu sayede zaman içerisinde otonom ürün ekipleri oluşturdular ve kısa bir süre sonra mikro işletmeler kendi başlarına değer üretebilir hale geldiler. İşletmeler sürekli büyüme karşısında aynı hızla değer üretmeye devam edebilmek ve bu olgunun olumsuz etkilerini en aza indirgemek için bu yöntemi kullanmayı tercih etmişlerdir. Ayrıca bu yöntem Eric Trist, Ken Bamforth ve Fred Emery tarafından oluşturulan ‘Sociotechnical System’ teorisi kaynak alınarak geliştirildiği ve sosyal ile teknik kavramları iç içe barındırdığı için işletmenin daha verimli bir biçimde yönetilmesini de sağlıyordu. Temelde böl ve yönet ilkesine dayanan bu yaklaşım –doğru kullanıldığı takdirde– oldukça kesin sonuçlar verdi.
“In God we trust; all others bring data”
İşletmelerin gerçekten de neredeyse tüm iş kararlarını verilere dayalı olarak almaları gerektiğine karar verdiklerinde bu yaklaşımda uyarlanabilirlik problemleri ortaya çıktı. Veriye dayalı karar verme (DDDM), endüstrinin yeni keşfettiği bir olgu değildir. Aslında, bu fenomen uzun yıllardır hayatımızda var. Ama bilinmesi gereken en önemli şey; Veri, gitmeniz gereken karanlık bir yolda size eninde sonunda yardımcı olacak nihai ışıktır. Zaman içinde işletmeler, büyümeyi daha iyi takip etmek ve veriye dayalı kararlar almak için veri ekipleri oluşturmaya başladı. Bu ekiplerin kurulmasındaki bir diğer önemli neden; işletmeler karar alırken oluşturacakları değerin verimliliğini arttırmak için kişisel görüşlerden, içgüdülerden ve diğer tüm soyut şeylerden ziyade veri ile daha tutarlı sonuçlar elde edebildiklerini farketmişlerdi. Veriyi gerçekten değer üretmek için kullanmaya başladıklarında; verinin yönetimi, korunması, sunulması ve taleplerin doğru bir biçimde değerlendirilmesi gibi bir çok konunun sorumluluğunun da üstlenilmesi gerekliliği gerçeği ortaya çıktı. Tüm bu sorumluluklar sebebi ile veri takımları kurdular ve bu iş modeli de faydasını ispat edene kadar hayatına –diğer tüm iş modellerinde olduğu gibi– monolit olarak başladı.
“Single point of failure is not just a technical term, you can also experience this resiliency problem organizationally.”
Veri ekipleri, mevcut işin daha da hızlı büyümesi için ellerinden gelenin en iyisini yaparak paydaşlardan gelen tüm taleplere cevap vermeye çalıştı. Sonuç olarak, bu sorun etrafında birçok araç, kavram, disiplin ve metodoloji gelişmiş oldu ve sektör kendi içinde niş bir pazarı beslemeye başladı. İşletmeler, ürün ekipleri için uyguladıkları otonom veya dikey mikro işletme kavramını ve uygulamalarını veri ekiplerine uygulamadılar. Bu, dikey olarak değer yaratmaya odaklanan ürün ekiplerinin aksine, veri ekiplerinin yatay olarak değer üretmeye çalışmasına neden oldu. Yatay ölçeklenemeyen bu ekipler zamanla değer yaratmakta sorun yaşamaya başladılar. Bu noktada birçok farklı nedenden dolayı oluşan organizasyonel bilişsel yükü azaltmak ve ürün ekiplerinin analitik verilere erişimini sağlayarak ürettikleri değere daha hızlı katkıda bulunabilmek için “data mesh” konsepti ortaya atıldı.
Data mesh konsepti ile mikro işletmeler değer yaratmak için kullandıkları operasyonel verileri istedikleri formatlarda herhangi ek bir iş yüküne gerek duymaksızın bir mesh platformu ile birlikte analitik ortamlara aktarabileceklerdi. Bu sayede mikro işletmeler, değer yaratmak için birbirleriyle uyumlu hale geldikleri gibi, analitik ortamlarında diğer mikro işletmelerle etkileşim kurarak daha hızlı, kolay, sağlam ve etkin bir şekilde değer yaratabileceklerdir. Mesh platformu yalnızca belirli disiplinlere uyum sağlayarak bu değer akışı işlevselliğini sağlamakla yükümlüdür. Bu yöntem; hem kurumsal bir bilişsel yükü azaltmanıza yardımcı olur hem de mikro işletmelerinizin veriye dayalı karar almaya adaptasyonunu hızlandırır.
Bu noktada veri ekiplerine ne olacak sorusu akıllara gelebilir. Gerçekten yapmaları gereken; verilerle bir organizasyonu verimli bir şekilde yönetebilme olgusunun tüm gerçek sorumluluklarını fiilen üstleneceklerdir.
Kaynaklar
● https://www.forbes.com/sites/silberzahnjones/2016/03/15/without-an-opinion-youre-just-a nother-person-with-data/?sh=187b98f699fc
● https://www.forbes.com/sites/tableau/2022/09/23/beyond-the-buzzword-what-does-data driven-decision-making-really-mean/?sh=3185046025d6
● https://www.datamesh-architecture.com/
● https://www.thoughtworks.com/en-cn/what-we-do/data-and-ai/data-mesh ● https://martinfowler.com/articles/data-mesh-principles.html
Deniz Öztürk
Front-End Developer
Öğrenmede Yapay Zekânın Etkileri
Yapay zekâ teknolojisi birçok alanda olduğu gibi eğitim alanında da hızlı ilerlemeler gösteriyor. Bu sistemler sayesinde, geleneksel yöntemlerdeki bireysel öğrenmeye yetişemediğimiz konularda olan kısıtlılığımız ortadan kalkıyor. Örneğin, bir öğrenenin pekiştiremediği konuları tekrar etme olanağı sağlanırken daha hızlı öğrenenlerin ilerlemesini yavaşlatmayacak öğrenme ortamları tasarlanabiliyor.
Konuya adaptif öğrenme üzerinden yaklaşalım. Pek çoğumuz, adaptif öğrenme sistemine bir şekilde dahil olup öğrenme eylemini gerçekleştirse de, bu kavrama yabancı olabilir. Adaptif öğrenme, öğrenenin ihtiyaçlarına uygun bir şekilde hazırbulunuşluğu ve öğrenme hızı gibi faktörleri göz önünde bulundurarak öğrenmeyi planlayan bir sistemdir. Hâli hazırda adaptif öğrenme sistemleri yazılımlarla gerçekleştiriliyor. Makine öğrenmesi ile geliştirilen sistemler, öğrenenin takıldığı konularda tekrar edebileceği farklı çözümler göstererek konuyu pekiştirmesine yardımcı oluyor. Kaldığı seviyede zorlandığı zaman ise daha kolay içeriğe geri dönerek konuyu temelden öğretme yaklaşımı sunuyor. Bugün bunları zaten yapabildik. Peki yarın, uzaktan eğitim sistemlerinde öğretmenimiz bir yapay zekâ olsaydı nasıl olurdu?
Yapay zekâların iletişim kurduğunu artık gözlemleyebiliyoruz. Bazı YouTube kanallarında yapay zekâlar eğitim vermeye başladı bile. Örneğin, Aytunga YouTube kanalında bu tür örnek içeriklere rastlayabilirsiniz. Bir dersin eğitmeni olabilecek seviyede veri öğrenebilmesi için yapay zekâyı eğitmek gerekiyor. Bu özverili çalışma sonucunda uzaktan öğrenme ortamlarının daha verimli bir hâle gelmiş olacağını düşünüyorum.
Uzaktan eğitimde, en önemli konu öğrenme materyallerinin tasarlanmasıdır. Bu materyallerden, bir eğitmenin kamera karşısında sınıf ortamında olduğu gibi eğitim vermesini ele alalım. Video çekimi gerçekleştirilmeden iyi planlanmış bir programla öğrenenin karşısına geçilmesi ile birlikte bunun yanı sıra, videonun çekim kalitesinin iyi, ortamın gürültüsüz olması da gerekmektedir. Bu maddeleri hiç düşünmeden bir zorunluluk olarak sayabiliriz değil mi? Peki Türkiye’nin köklü bir üniversitesinin uzaktan eğitim programlarından birinde ders videosuna arkaplan müziği eklendiğini gördüğümü söylesem ne düşünürdünüz? Dikkatinizin dağılacağını ve derste anlatılanlara adapte olamayacağınızı düşünmez miydiniz? Doğru. Bu kimin fikriydi bilemeyiz ancak bir öğretim ortamında arkaplanda müzik çalmasını istemek eğitim dünyasının en garip isteği olmuş bence.
Üzerinde konuştuğumuz bu faktörlerin yanı sıra eğitmenin diksiyonu, kendini zorunda hissederek kamera karşısına geçmiş olduğu hissiyatını vermesi, anlatım becerileri gibi diğer problemlerin de etkilediği uzaktan eğitim videolarının bir yapay zekâ ile oluşturulması eğitim dünyasına yeni bir boyut kazandıracaktır. Ne zaman geleneksel yöntemleri tamamen kenara atarız bilmiyorum ancak eminim ki, karma yöntem bir süre bizim verimimizi mutlaka artıracak.
Eğitim dünyası olarak, bu konuda yapılacak bilimsel çalışmaları destekleyeceğimiz bir yıl olmasını dilerim.
Sevgiler,
Deniz Öztürk.
Egemen İmre
Satellite System Engineer at ConstellR
Geçen seneki “uzay özelinde yazılımda 2023” yazısına “Uzay alanı genel olarak son derece tutucu ve yavaş olması ile ünlüdür.” diye başlamıştım. Gerçekten de her sene yeni bir yazılımın “moda” olduğu “yerdeki yazılım” dünyasına oranla uzay işleri daha yavaş ve temkinli ilerliyor.
“NewSpace” olarak adlandırılan; uzaya daha küçük, daha riskli ve çok sayıda uydu ile çıkmayı hedefleyen şirketler için 2022 gibi 2023 de hareketli bir yıl olacak gibi görünüyor. Az kişiyle çok iş yapmaya çalışan şirketlerin karmaşık bir yazılım altyapısı hazırlamaya zamanı yok, o nedenle özelleşmiş şirketlerden hizmet alma, yani “X as a Service” işleri artarak devam edecek gibi görünüyor. Yer istasyonu donanımları, görev planlama, uydu işletme ile veri işleme, depolama ve müşteriye sunma alanında mümkün olduğunca fazla yazılımın ve bunların bulundukları sunucuların hizmet alımı yoluyla elde edilmesi hedefleniyor — nitekim AWS de sunucuların yanı sıra yer istasyonu hizmeti vermeye başladı. Böylece yatırımcıları çok bekletmeden hızla bir ürün sunulması ve bunun zamanla iyileştirilmesi hedefleniyor. Tabii bu kadar süratli bir tempoya taş koyan, uydunun kendisini yapmak. Covid şu bu derken toparlanamayan tedarik zincirleri hâlâ uyduları yapmayı zorlaştırıyor.
“OldSpace” camiası ise, genellikle kamu parasıyla fonlanan, daha zor ve risk alınması mümkün olmayan görevleri yavaş ve emin adımlarla yaptığı için bu tür trendlerden daha az etkileniyor. Bu görevlerde üretilen veri miktarı her gün onlarca GB seviyesine rahatlıkla ulaşabildiği için, veri işleme, transfer ve depolama isterleri de gitgide daha ağır hale geliyor. Bunlar için her türlü paralelleştirme, dev High Performance Computing çözümleri, oda dolusu GPUlar gibi, gitgide artan bir kurumsal kapasiteye ihtiyaç duyuluyor.
Uzaydan gelen verilerin gitgide artması, bunları işleyecek ve birbirleri ile ilişkilendirerek “sinerji yaratacak” algoritmaların geliştirilmesi ve mekanizmalarına tam vakıf olunamayan konular için de Yapay Öğrenme temelli yöntemlerin öne çıkmasını gerektiriyor. Her zamanki gibi savunma alanı önde olsa da küresel iklim krizi ile baş etmeye yardımcı olacak ve tarım ve meteoroloji gibi alanlarda çalışacak veri kıymetlendirme yöntemleri her zaman revaçta.
Geçen sene de yazdığım gibi, birçok Avrupa ve ABD uydusu verilerini açık olarak yayınlarken, bunların verilerini işleyen ya da buna hevesli araştırmacılara bu verileri kullanılabilir hale getiren Açık Kaynak ve Açık Erişim yaklaşımlarının da adını anmamak olmaz.
İşin uydu tarafında ise geçen sene bahsettiğim gibi, “veriyi yerinde işleme” eğilimleri artıyor. Örneğin uydunun görüntüyü sıkıştırması yetmiyor, bulutları Yapay Öğrenme temelli algoritmalarla tespit etmesi ve böylece görüntülerin daha çok sıkıştırılması veya hiç indirilmemesi gibi, veri indirme kapasitesinin daha verimli kullanıldığı çözümler gündeme geliyor. Bunun için GPU benzeri mimarili sistemlerin uzayda da kullanımı gitgide daha çok düşünülüyor. Yerden farklı olarak, radyasyonun bu tür sistemler üzerindeki etkisini de hesap etmek gerekiyor tabii.
Geçen sene uydulardaki esneklik beklentisinin arttığını; FPGA ve “software defined radio” gibi yörüngede görevi (bir miktar) değiştirilebilen ya da performansı arttırılabilen sistemlerin gözde olduğundan bahsetmiştim. Buna belki de “Linux Real-time OS” sistemleri ile hızla ürün ve yazılım geliştirilmesi eğilimini de eklemek gerek. Yine de uydular üzerindeki gelişmeler yerdekilere oranla çok daha yavaş ve devrimden ziyade evrimle oluyor.
Emrah Şamdan
Co-founder at Ampt, Product Manager
Layoff’lar ve Tech Bubble
2022 yılı, önceki yıldan gelen ekonomik büyümeye dayalı safahat ile başlayıp, nisan ayından sonra kara bulutların yoğunlaştığı bir yıl olarak geride kaldı. 2023 için de çok iyi bir senaryo yazmak mümkün görünmüyor. https://layoffs.fyi/ ‘ya göre 2022 yılında globalde 150.000’den fazla teknoloji çalışanı işini kaybetmiş. Bildiğim ama bu sitede görmediğim bazı büyük layoffl’arı da düşününce bu sayının pekâlâ 250.000 civarında olduğunu tahmin ediyorum. Ne yazık ki, 2023 daha parlak bir gelecek vadetmiyor bize. Tahminler layoff’ların devam edebileceği yönünde. Hatta ekonomik daralmanın 2024 yılında da devam etmesiyle, 2020’den önce yatırım almış startuplardan kârlı duruma geçmeyenlerin faaliyetlerini sonlandıracağını söylemek ne yazık ki abartı değil. Bütün bu şerait içinde dahi, enseyi karartmamak icin sebeplerimiz var. Bu durum, bir şekilde pazara dağılan geliştiricilerin girişimciye dönüşmesiyle, birçok yeni teknoloji girişimini ve daha fazla inovasyonu beraberinde getirecektir. Stripe gibi şirketler bu ekonomik daralmalardan güçlü çıktıktan sonra asıl başarıya ulaştı. Ayrıca her şey yolunda giderse 2024 baharında ekonomilerin düzeltmesi bitecek. Sonrasında zaten kralız.
Native Cloud Development vs Cloud-Native Development
“Serverless” kelimesini bütün bir sektör olarak harcadık, geçmiş olsun. (Bu arada bir parantez de kendi görüşümü söylemek isterim: serverless sadece FaaS olarak görülmemeli. örneğin Amazon DynamoDB, serverless tanımına harika bir şekilde uyuyor.) “Arkada server’lar var hâlâ hehe” kötü şakası bir yana, artık yeni çıkan her ürün kendini yersiz bir şekilde serverless olarak tanımlıyor. Üstelik hemen hepsinde, bir şekilde serverless tanımının dışında bir şeyler var. Örneğin servis çalışmayınca da fixed cost alıyorlar Sıfıra downscale yok vs. Bu duruma rağmen, bir paradigma olarak serverless gelişimine devam ediyor. Bulut devlerinin fail ettiği yerlerde çok iyi startuplar(Momento, PlanetScale, Upstash, Xata) çıkıp gedikleri kapatıyor. Günün birinde bulut gerçekten emtia haline gelecek. Yani “Ben bir tane t2.large servis kiralayayım.” değil de, “Ben 10GB RAM’i olan bir makineyi 4 saniye kiralayayım.” diyebilecek herkes. Ya da veri tabanı için bir server ayağa kaldırmamıza gerek olmayacak. Verilerimi yazabileceğim bir tablo sipariş edeceğim ve direkt kullanmaya başlayabileceğim. (Bunlar bugün de tabii ki mümkün. Demek istediğim, serverless’ın ileriki bir zamanda default olacağı.) Serverless paradigması da bulut için bu yolun açılma biçimi. (Konunun Wardley Mapping’in mucidi Simon Wardley tarafından benden çok daha iyi açıklanışını izlemek için: https://www.youtube.com/watch?v=b7Nc_FJiosk)
Ancak serverless’ın gelişmesinin önünde hâlâ 2 büyük engel var: Lokalde geliştirme ve geliştirici deneyimi(developer experience). Bugün geliştiriciler, bulut üzerinde koşan uygulamaları lokalinde ayağa kaldırmak için büyük çaba göstermek durumunda kalıyor. Geliştiriciler, localstack gibi servisler ile bulut servislerini lokalde çalıştırmaya çalışıyor ya da bu servisleri lokalde mocklayarak test ediyorlar. 2023 yılında lokal geliştirmenin kaybolması yönünde adımların atılacağını düşünüyorum. Developer experience’in gelişimini Jamstack(Vercel, Netlify) alanında yapılan çalışmalar (Turbopack, vite) hızlandırıyor ve 2023 yılında da gelişmeye devam edecek diye düşünüyorum.
Infrastructure FROM Code
Infrastructure as Code araçları(Pulumi, Terraform) infrastructure’ın kod ile ifade edilmesini ve böylece farklı ortamlara hızlı şekilde deploy edilebilmesini sağlıyorlar. Yeni ortaya çıkan Infrastructure FROM Code paradigması, bunun yerine belirli SDK’lar ile geliştirilen kodlar için gerekli mimariyi arka planda deploy edip, optimize etmesi üzerine bir yaklaşım getiriyor. Bu sayede geliştiriciler, mimari ile ilgili sorunları düşünmeden sadece iş mantığını kodlamaya odaklanabilirler. Bu konuda, daha detaylı bilgiye buradaki re:Invent konuşmasından ulaşabilirsiniz.
Herkese sevdikleriyle, sağlıklı ve mutlu bir 2023 dilerim.
Emre Karaoğlu
Server, Storage and Cloud Analyst
Merhabalar,
Bu yıl da “Yazılım Trendleri 2023” için “altyapı (infrastructure veya operations)“ bakış açısından bir şeyler eklemeye çalışacağım. İlkini geçen yıl yazdığımda çok keyif almış ve orada da “altyapı dünyasındaki hareketlerin aslında yazılım dünyasından daha yavaş olduğundan” bahsetmiştim. Bu sebeple de aslında bu yazıyı yazmaya otururken hep aklımda geçen yılın aynıları olacak kaygısını da taşıdım içimde. Ancak yine de kendimce bu yılda daha çok gündemde olacağına inandığım birkaç konuyu ekleyeyim.
Altyapı dünyasının tartışmasız ilk konusu her zaman cloud oluyor, olmak zorunda son yıllarda. Ancak cloud dünyasında da dikkatimi çeken değişim, IaaS yerini daha çok PaaS’a bırakıyor gibi. Bir servisi, işletim sistemini hatta uygulamayı yönetmek zorunda kalmadan kullanabilmek gerçekten ciddi bir esneklik. Tabii bu aşamada özellikle muhafazakar yaklaşımlar gösteren veya göstermek zorunda kalan kurumlar için halen PaaS sıcak bir alternatif değil. Ancak geliştirilen yazılımların uyumu da arttıkça Cloud üzerinde çalışan VM’ler yerini uygulama servislerine bırakacaklar gibi. Ayrıca kendi veri merkezlerini yönetenler bile artık kurum içine bu tür servisler sağlamaya ve on-premisses veri merkezlerini, public cloud gibi yönetmeye çalışıyorlar. Bu çözümleri sunan servisler de çıkmaya başladı.
Cloud konusuna bir de “çevre” gözüyle bakmak istiyorum bu sayıda. Düşündüğümüzde çoğu VM’in ne kadar verimli kullanıldığı da tartışmalı. Yıllarca VM yönetmiş biri olarak maalesef açtığımız her VM için daha fazla enerji harcadık ancak bazen açılan VM, sunucu havuzunda kaybolup yıllarca kullanılmadan açık kaldı. Bazen kapatmaya bile cesaret edemedik. Public Cloud servislerinin “tavsiyeleri” genellikle bu konuda bizi çok doğru yönlendiriyor. Zaten ekonomik olarak dikkatli olmak gerekirken olaya bir de “parasıyla değil mi?“ fikrinden öte bakmak istiyorum.
Otomasyon için artık gözde demek yerine zorunluluk demek gerekiyor. Modern altyapı yönetiminde eğer halen otomasyon kullanmıyorsanız 2023 hedef listenizde en az bir kaç tane sisteminizi otomasyona almaya yer verin. Bunlara kafa yorup kendinizi geliştirin. Bence eğer yöneticileriniz bunu baskılamıyorsa, çalışanlar kendileri için yukarıya doğru bu baskıyı yapmalılar. Yarın çok geç.
Otomasyon demişken artık AI-Ops kavramını bile duymaya başladık. AI-Ops sayesinde servisler yapay zekâ sayesinde takip edilip olası sorunların tespit ve çözümü sağlanabiliyor. Kısacası yapay zekâ artık bizim işimizi de elimizden alacak :D
Daha fazla uzatmadan konuyu uzaktan çalışma ile bitirmek istiyorum. Pandemi sonrası kimi şirketler ofise dönüşe başlasa da yine de pandemi pratikleri bize uzaktan çalışma kültürünü deyim yerindeyse “kafamıza vurarak“ öğretti. Artık hemen her şirket haftanın en azından belli günlerini uzaktan çalışmaya ayırıyor. Ancak uzaktan çalışmanın bence asıl kahramanları (IT dünyası için) Level 1–2 destek verenler ile altyapı yöneticileri. Yazılımcılardan özür dileyerek kendimize bu payı çıkarmamız gerektiğini düşünüyorum. Çünkü tüm uzaktan çalışma “konforu” bu ekiplerin geceli gündüzlü çalışmalarının, ellerinin sürekli sunucuların, networkün, servislerin üstünde olmasının ve bir de en ufak bir sorunda ulaşılabilir olan destek ekiplerinin sayesinde. Hepsine teşekkürler.
Altyapı dünyasında aklımdan geçenler bunlar oldu benim. Özellikle katılmadıklarınız için fikirlerinizi iletirseniz çok sevinirim. Herkese sağlıklı ve istediklerine ulaştıkları bir yıl dilerim.
Sevgiyle…
Emre MERT
Senior Software Engineer
TL;DR: Yeni çıkacak bir teknolojiden korkmuyorum. Evet bilmediğim çok şey var. Evet uzmanı olduğum konuda bile uzman değilim. Evet kaçırıyorum. Ama aklımı değil.
Yazıma “ ‘2022 yılında yazılıma nasıl başlarım?’ sorusunun cevabını buldum.” diyerek başlamak isterdim. Ama bulduğum tek şey belirsizlik. Yani insanoğlunun en çok korktuğu şey. 2023'den beklentim ise daha fazla belirsizlik.
Yazılımcılara “2022 nasıl geçti?” diye sorsanız, size herkes farklı bir hikaye anlatır. “2023 nasıl geçecek?” diye sorsanız onların en derin korkularını değil onların hayallerini dinlersiniz. Çünkü insan bildiğinden yola çıkar, bilmediklerinde düşer, öğrendiklerinde yükselir ve … Sonra bildiği her şey bir anda yok olur. Çünkü burası yazılım dünyası. Bu sektör bir harika dostum!
O zaman dans!
Öğrenmek zor. Ama bildiklerimizi unutmak daha da zor. Yeni şeyler öğrenmek heyecanlı olsa da insan bildiklerine yapışıyor farketmeden. Size bir iyi bir de kötü haberim var. Kötü haber: Ekibiniz hangi teknolojiyi kullandığınızı önemsiyor. İyi haber: hangi teknolojiyi kullandığınız kullanıcının umrunda değil. Çözüm mü? Dengeyi bulmak.
Koronavirüs salgınının azalması, kripto para borsalarına olan güvenin sarsılması, yazılımcıların toplu halde işten çıkarılmaları derken insanlar şunu farketti: Yazılım hayata rağmen değil hayatla beraber yaşayan bir şey.
Yazılıma yeni başlayacakların işi giderek zorlaşıyor bence. Asıl sorun nereden başlayacakları. Başladıklarında doğru yerden mi başlamışlar bilememeleri. Neye meyilli olduklarını ancak ellerini kirlettikten sonra bulabilmeleri. Bu yüzden de başlamıyorlar zaten. Kime soru sorsalar akılları daha da karışıyor. Bir şeyler deneyip en yakın çıkıştan kaçıyorlar. Burada anahtar kelime istikrar. “Fail fast, fail often” falan derken, bu yazıları duvarlarımıza asarken, denemiyoruz bile. Emek yoğun bir işte muhabbet yoğunluklu bir çamura battık. Yeni gelenler bu çamurdan çıkamıyor bazen. Ey yeni gelenler! Deneyin! Ellerinizi kirletin! Yazılım öğrenmek bisiklet sürmeyi öğrenmek gibi. Denemeden öğrenemezsiniz.
Külliyen talimat, mafiş icraat!
“No-code”, “low-code” derken ChatGPT gündeme oturdu. Yazılımcıları korkutacak kadar güzel kod yazıyor. Çoğu yazılım projesinin CRUD işlemleri yaptığı düşünülürse tam bir yazılım projesi yazacak kadar gelişecek bence. Yine de ChatGPT’nin yazılımcıları işsiz bırakacağını sanmam. Çünkü bilgi hiçbir zaman sorun olmadı insanlar için. Bilgiyi yönetmek sorun oldu. Yönetilmesi gereken bir yapay zekâ mı? Daha organizasyonları yönetmeyi bilmiyoruz!
Yıllardır .NET kullanan biri olarak bir proje sayesinde Python dünyasının da tadına baktım. Ve şunu söyleyebilirim .NET gerçekten iyi yolda. Hem hız, hem kabiliyet olarak çok şey var .NET dünyasında. Sahipli, bakımlı, topluluğu aktif. İhtiyacınız olan bir özellik genelde framework’ün kendi içinde var. Olmadı 3rd party bir kütüphane kullanabiliyorsunuz.
Bulut sistemler (AWS, Azure gibi) artık her yerde. Dolayısıyla Docker da. Neyle uğraşırsanız uğraşın bunun etrafından dolaşamayacaksınız. Bazen çözmek zorunda olduğunuz problemin çözümü bulutta size hizmet olarak sunuluyor. Birkaç tıkla işinizi hallediyorsunuz. Frontend’çiler kaçsa da onlar da yakalanacaklar bu yağmura.
2022’deki gözüme çarpan bazı değişiklikler:
- Web sitesi olmayan sadece mobil uygulaması olan çözümler,
- Birkaç tıkla yapılıp mobil uygulama marketine giren app’ler,
- Türkiye’den çıkan ve ürününü yurtdışında kullanıcılara sunarak dövizle para kazanan girişimciler,
- Part-time olarak 2–3 işte çalışan yazılımcılar,
- Zor bir teknik sorunda eskiden yardım eden yazılımcıların şimdi danışmanlık ücreti istemesi,
- Dolar kuru yüzünden 2. el sunucu alıp çalıştıran girişimler
Yeni yılın yeni teknolojiler getireceği tartışmasız bir konu. 2022’de çevremdeki birçok kişi kansere yakalandı. İnşallah yeni yıl bize, sağlık, adalet ve sevgi getirir.
Emre Sevinç
Co-Founder & CTO, TM Data ICT Solutions
2023 yılındaki yazılım trendlerine dair bu kısa yazıda, gerek Belçika, Hollanda ve Almanya’da danışmanlık sunduğumuz müşterilerimizin projelerine ve potansiyel müşterilerimizin gereksinimlerine ve gerekse radarımıza takılan dikkat çekici noktalara dayanarak bazı öngörülerde bulunmaya çalıştım. İyi okumalar!
Aşağıda birkaç ana başlık altında ele aldığım analizleri ve öngörüleri okurken, vurguladığım bazı noktaların ülkeden ülkeye değişiklik gösterebileceğini de akılda bulundurmak faydalı olacaktır.
Programlama Dilleri
2023 senesi boyunca ticari olarak programla dillerinin sektörlere dağılımında da dramatik ve radikal bir değişiklik beklemiyorum. Bunun birkaç sebebi var:
- Ticari olarak başarılı sistemlerdeki durmuş, oturmuşluk etkisi ve bunun “Lindy effect” olarak da bilinen fenomen ile bağlantısı.
- Belli bir olgunluğa erişmiş ekiplerin ve şirketlerin çoğu zaman haklı olarak minimum maliyet ve riskle maksimum verimi elde etme arzusu.
- Başarının başarıyı çekmesi: yani pek çok aracın ve bileşenin destek ve entegrasyon sunduğu dillerin bu sayede çeşitli otomasyon alanlarına iyice nüfuz etmesi. Bunu gören mesleki ve akademik kurumların da yeni teknik eleman yetiştirme ihtiyacına cevap vermek için piyasa koşullarını dikkate almaları ve tüm bunların bir tür pozitif geri bildirim döngüsüne yol açması.
Bu açıdan iş yaptığımız ve takip ettiğimiz ülkelerde ve piyasalarda göze çarpan “olağan şüpheliler”, önceki yıllarda olduğu gibi ağırlıklı olarak aşağıdaki diller ve platformlar olacaktır:
- .NET ve C#: Pek çok KOBİ için yıllardır akla ilk gelen seçenek olan Microsoft’un .NET platformu ve bu platformda çalışan iş uygulamaları için kullanılan en yaygın dil olan C# dili, Microsoft’un yatırımları ile popülerliğini sürdürmeye devam edecek gibi görünüyor. Aşağıdaki diğer diller ve platformların ortaya koydukları inovasyonlar, Microsoft’un bu alandaki rekabetini ve enerjisini canlı tutuyor, dolayısı ile gerek KOBİler gerekse daha büyük kurumsal firmaların irili ufaklı pek çok mevcut ve yeni projesi için .NET ve C# en makul seçenekler arasında. Bazı müşterilerimizin doğrudan GNU/Linux sistemler üzerinde .NET ve C# ile ticari ürün geliştirdiklerini görmek, 2023 itibariyle artık hiç şaşırtıcı değil.
- Java ve JVM: Yıllarca destek gerektiren, milyar $ mertebesinde operasyonların yükünü taşıyan, telekom, e-ticaret, bankacılık, finans, hastane otomasyon sistemleri, uzay ve havacılık görev kontrol sistemleri ve benzeri pek çok yazılım ortamında iyice kemikleşmiş olan Java dili ve JVM platformu, 2023 içinde de ağırlığını korumaya devam edecektir. Uzunca bir süre atıl kalmakla ve kendini geliştirmemekle itham edilen Java dili ve JVM platformu, son birkaç senede epey dönüşüm geçirmiş durumda: dünyanın en yaygın dillerinden ve platformlarından biri olduğu için haklı olarak hassas bir denge gözetmekle birlikte, başka dillerdeki pek çok tekniği ve yapıyı artık çok daha hızlı şekilde bünyesine katıp kullanıma sunuyor.
- Python: Java’dan biraz daha yaşlı olan ve bazen “hemen her şey için ikinci en iyi dil” gibi ilginç ifadelerle de anılan Python, son yıllarda olduğu gibi 2023 boyunca da kendine daha ziyade start-up ortamlarında ve büyük şirketlerin kurum için veri bilimi, makine öğrenmesi ve yapay zekâ projelerinde yer bulacaktır. Odoo gibi bazı ülkelerde popüler olan ticari iş yazılımı gibi istisnaları saymazsak, Python yukarıda saydığımız alanlarda popülerliğini sürdürüp yaygınlaşmaya devam edecektir. Buna ek olarak akademik ve araştırma kısmı içeren ticari ortamlarda bir ölçüye kadar R dili ile de rekabet halinde olacaktir. Python dilinin popülerliğine ilginç bir örnek olarak Intel’in “Intel® Distribution for Python” ve “Intel® oneAPI” verilebilir.
Bu satırları okurken haklı olarak “peki ya PHP, Go, Rust, C++?” diyenler olacaktır. Bu kısıtlı alanda bu dillere dair 2023 trendlerine dair çok şey yazmam zor ama çok kısaca gözlemlerime dayanarak diyebilirim ki, Avrupa’daki pek çok sektörde Rust ile ilgili ciddi bir ticari hareketlilik beklemiyorum bu sene. C++ çok spesifik alanlardaki projelerde karşımıza çıkabiliyor. Go programlama dili yine epey azınlıkta, ticari olarak projelerde nadiren karşımıza çıkan dillerden biri.
Veritabanı Teknolojileri
Her yazılım ve otomasyon projesinde, kullanılan programlama dilleri ve “framework”lerden hemen sonra gündeme gelen veritabanı teknolojileri ile ilgili 2023 yılındaki olabilecek gelişmelere dair kısaca bir şeyler demem gerekirse çok kısaca PostgreSQL’e değinmek isterim: En eski ve gelişmiş açık kodlu ilişkisel veritabanı sistemlerinden biri olan PostgreSQL, standartlara uyumluluğu ve yeni özellikleri ile akla ilk gelen veritabanı sistemlerinden biri olmaya devam edecek. Son yıllardaki çarpıcı gelişmelerden biri, PostgreSQL’in yaygınlığı ve güvenilirliğinden ötürü, normalde PostgreSQL tercih etmeyeceğimiz, IoT ve zaman serisi türünden kendine has kısıt koşulları olan farklı veri türleri için doğrudan PostgreSQL üzerine inşa edilen ve onunla %100 uyumlu olan TimescaleDB gibi veritabanı yazılımlarının gündeme gelmesi. Benzer şekilde yine doğrudan PostgreSQL üzerine inşa edilen Citus gibi veritabanı çözümleri de artık NoSQL ile RDBMS arasındaki keskin çizginin belirsiz hale gelmesine katkıda bulunmaya devam edecektir. “Distributed SQL” ya da “newSQL” olarak da nitelenen YugabyteDB ve benzeri sistemlerin, yine büyük ölçüde PostgreSQL uyumluluğu sunması da 2023’teki trendleri belirleyen faktörlerden biri olacaktır diye düşünüyorum.
Bunun dışında durmuş, oturmuş ve kemikleşmiş projelerde MS SQL Server ve Oracle hakimiyeti devam etmekle birlikte, bunlardan PostgreSQL’e geçiş talepleri ve projeleri de 2023 içinde büyük ihtimalle devam edecektir.
Yapay Zekâ Teknolojileri
Yukarıda çok kısaca değindiğim programlama dilleri ve veritabanları gibi, yapay zekâ teknolojileri de elbette epey geniş ve derin bir alan. 2023’te yapay zekâ ve yapay öğrenme merkezli yazılım geliştirme trendlerine dair çok kısaca birkaç öngörüde bulunmam gerekirse:
- Kurumsal ortamlarda TensorFlow, özellikle üretim ortamları ve olgunluğu açısından popüler görünse de, potansiyel ve inovatif projelerde, start-up’larda PyTorch daha sık gündeme gelmeye başladı.
- Sosyal medyada sürekli konuşulan ve “hype” etkisine maruz kalan yapay zekâ örnekleri ses, video, grafik ve doğal dil işleme gibi alanlara yönelik olsa da, irili ufaklı pek çok kurumsal ortamda yığınla veri tabanı sistemi halen geleneksel yapay öğrenme yöntemleri ile işlenmeyi bekliyor. Dolayısıyla XGBoost, CatBoost, LightGBM gibi yöntemler ve araçlar ile yapılabilecek pek çok uygulama ve çözülebilecek pek çok problem var. Bu yöntemlerle ilgili günaşırı global haber çıkmaması yanıltıcı olabilir.
- Doğal dil işleme konusunda son zamanlarda haklı olarak sürekli gündeme gelen büyük dil modelleri (LLM — Large Language Models) ve Transformer derin öğrenme yöntemi 2023’te yine gelişmelere gebe olsa da, ticari pek çok dil işleme projesi icin spaCy gibi araçlarla ve daha geleneksel yöntemlerle pek çok çözüm üretileceğini öngörüyorum. Bu konuda meraklı okurlar “A Comparison of Pre-Trained Language Models for Multi-Class Text Classification in the Financial Domain” ve “A Comparison of SVM against Pre-trained Language Models (PLMs) for Text Classification Tasks” makalelerine göz atabilir.
- Son olarak, hem geleneksel, hem de en modern yapay zekâ teknikleri ile uğraşanların 2023 içinde daha çok karşılaşacakları kavramlardan biri de MLOps (Machine Learning Operations) olacaktır. “DevOps” olarak anılan yazılım geliştirme ve işletme pratiklerine benzer şekilde, geliştirilen yapay zekâ sistemlerinin iyice olgun ve işe yarayan süreçler ile birlikte ele alınması, bunlara dair uyumlu pratiklerin ve bunların gerçekleştirilmesini sağlayacak ürünlerin gündeme gelmesi 2023’te de devam edecektir.
Gizem Saruhan
Senior Software Developer in Test
Seneler öncesinde tartıştığımız konulara kıyasla, şu an 2023 trendleri hakkında yazacağım konuları düşünürken içimde oluşan mutluluğu tarif etmekte zorlanıyorum. Test nedir, test mühendisliğinin yazılımda, geliştirilen üründe yeri nedir ve gerekli midir konularından bu günlere gelişimiz beklediğimden hızlı gerçekleşti diyebilirim. Bu iyileşme ve gelişip, değişme döneminde yer yer bocaladığım zamanlar oldu. Bu anlara baktıktan sonra gelecek için şüphesiz hot-topic olabileceğini düşündüğüm yalnızca iki farklı konudan bahsetmeyi istiyorum. Araçlar, diller ve şirketler çok hızlı değişebilir, bu sebeple tüm bunlar yazılım testi konusunda 2023 trendi olarak bahsetmeyi tercih ettiğim şeyler olmayacak. Benim burada bahsetmek istediğim, her teknolojiyle/durumla kendini rahat hissedebilecek kafa yapısına hem technical hem de nontechnical alanlarda ulaşmanın trend olacağı.
Olabildiğince çok şey denemek ve T büyümek
Çok sevdiğim bir söz var; sırf koşmayı öğrendin diye yürümeyi bırakmak zorunda değilsin. Test alanında bu sözü yorumlamak gerekirse, çok üst seviye test teknikleri öğrenilse de, manuel test yapmak her zaman testin ana madeni olacak. Yukarıda bahsettiğim gibi aslında odağınız yalnızca bir dil öğrenip test otomasyonu yazmak olursa yeni bir dile geçildiğinde bocalarsınız. Halbuki odağınız ‘test nasıl yapılır, neler test edilir’ olursa yeni bir dil öğrenmek sizin için en kolay şey haline geliverir. Manuel test yapabilen, case çıkarabilen kişi aynı zamanda testleri nasıl daha iyi hale getirebiliriz sorusuna da cevap verebilen kişi olabileceği için 2023'te yeniden trend olan yeteneklerden biri olacaktır.
Yine 2023'te varlığına ihtiyaç duyacağımız bir diğer kavram: TestOps. Test ile ilgili tüm operasyonel ihtiyaçların uygulanması. TestOps bir kafa yapısı olduğu için her şirket, her ekip için detayı değişebilir. Genel olarak sıklıkla ihtiyaç duyacağımız şeyler arasına; test yazmaktan ziyade, yazılan testlerin bakımını yapmak, hangi test yapılarının hangi pipeline’larda çalışacağına karar vermek, pipeline sürelerini minimize etmek ve flaky testleri azaltmak giriyor diyebilirim. Bir backend ekibinde data bağımlı testleriniz çok fazlaysa kendinize özgü bir qa ortamı kurmak ve bunların veri yönetimini yapmak TestOps altında şekillenebilecek bir ihtiyaç olabilir. Diğer taraftan mobil ekipte UI testler çok fazla zaman aldığından pipelinelarda çalıştırmak için modüler bir otomasyon test altyapısı kurmak veya snapshot testler ile tamamen görsel olan buton rengi, gelen text gibi kontrolleri cover ederek UI test altında bunlar için test yazmamak olabilir.
Pipeline build sürelerini, geliştirmelerin production’a çıkma sürelerini düşürmek ve bu süreci en kaliteli hale getirmek, test tarafındaki en büyük trend olacak. Daha ölçeklenebilir, yüksek performanslı sistemlerin kurulması artık sadece yazılımcıların sorumluluğu olmaktan çıkacak. Eskiden bir test uzmanının en önemli odağı test otomasyon projesi geliştirmekken, 2023'te test senaryoları üreten kodu yazmak yeni odak olacak. Birim testlerle onlarca-yüzlerce durumu cover edebilirken generative testing ile milyonlarca senaryoyu üstelik pipeline süresini de arttırmadan cover edebilir hale geleceğiz.
Ölçeklenebilirlik ve yüksek performansın yanı sıra, sistemin stabilitesini korumak da test tarafında büyük sorumluluklar arasına girecek. Eskiden koştuğumuz performans testlerinin üstüne artık sistemsel down olma durumlarında backup planlar çıkarmamızı sağlayan kaos testleri koymak durumunda kalacağız.
Tek bir alanda uzmanlaşmak yerine, full-stack developer tanımı gibi bir pozisyona evrileceğimizi öngörüyorum. Aslında bir ekibin test alanında, ürünü hızlı ve kaliteli şekilde production’a çıkabilme konusunda ihtiyacı olan her şeyi analiz edip gerekli proje ne ise onu geliştirebilecek yetkinlikte olan test uzmanları daha çok öne çıkacak. Bunun için de bir alanda her zerresine kadar uzman olmak yerine; X alanında kendini geliştirmeye devam ederken Y, Z gibi farklı yetkinliklere de sahip olup onlarda da kendini geliştirmek anlamına gelen T büyümeyi uygulamak trend olacak.
Asimile olmamak
Uyum sağlamak çok tehlikeli bir eylem. Bu eleştiriyi, hayatının çok büyük bir bölümünü uyum sağlamakla geçirmiş biri olarak yapıyorum. Pandemiden sonra evden çalışma imkanının artışı, görece daha iyi iş ortamlarının sunulması, evden yurt dışına iş yapma şansı gibi başlıca sebeplerle yazılım sektörü tabiri caizse göz bebeği oldu diyebiliriz. Dünyada yazılım öğrenmeye karşı talep arttıkça, yazılım sektörü de farklı yollarla bu ihtiyacı karşılamaya başladı. Her dönem açılan bootcampler, her türlü deneyimin paylaşıldığı ücretsiz youtube kanalları, podcast serileri, makaleler, mentorluk programları, roadmapler aracılığıyla birçok bilgi aktarıldı. Bilginin aktarımı ve hızlıca sentezlenmesi sonucu çok büyük bir sorun doğdu: tek tipleşme. Bunun üzerine yapay zekâ ürünlerinin, üretkenlik araçlarının bu kadar artması sonucu zihnimizi problemlere daha az yoruyor olmak da bu tek tipleşmenin yoğunluğunu artırdı.
Tek tipleşme beraberinde kimileri için hayal kırıklığı getirdi. 2023'te hayal kırıklıklarını bir öğrenme anı olarak görebilmek kesinlikle trend olacak. Aynı bootcampten çıkan iki kişiden, işe alınacak olan şüphesiz ki yumuşak becerileri daha kuvvetli olan olacak. Problem çözmek için zihninin sınırlarını zorlayabilme yetisi çok fazla ön plana çıkacak.
Farklı bakış açıları görüp, bir fikre direkt kapılmamak ve yumuşak becerileri geliştirmek şirketlerin bu tek tipleşme içinde dikkat ettikleri en önemli konu haline gelecek. Tek bir roadmap’e adapte olmak ve kendini ona uyumlamaya çalışmak yerine, fikirlerini rahatça ortaya koyabilmek kritik bir nokta olacak. Çeşitlilik ve kapsayıcılığın olduğu bir ekipte, bilinçsiz önyargılarımızı sık sık törpülemek zorunda kalacağız. Farklılıklarımıza rağmen değil, farklılıklarımız ile birlikte var olacağız. Farklı olduğumuz için asimile olmayacağız. Bu da yabancı bir ortamla başa çıkmak için önemli miktarda enerji harcamaktan işlerimizi yapmaya daha az enerjimizin kalmasının önüne geçecek.
Bu iki farklı konu aslında birbirinden ayrık değiller, hatta ve hatta en az kendi kuyruğunu yiyen ourobos yılanı kadar iç içeler. Sonuç olarak, 2023 trendi bir cümle ile ne olur deseniz, kişilerin teknik ve teknik olmayan becerilerini bir arada harmanlaması olacak derim.
Gökhan Gökalp
Senior Software Engineer
Blockchain & Smart Contracts
Her ne kadar 2022 yılı içerisinde blockchain tabanlı farklı alanlarda farklı uygulamalar geliştirilse de, hâlâ ışığının istenilen seviyeye ulaşamadığına inanıyorum. Blockchain teknolojisi kendisine olan gereken güveni elde edebildiği zaman, hayatımızın bir çok parçasında yer alacağına inanıyorum.
Decentralized ve distributed olması sayesinde blockchain teknolojisi ile işlemler oldukça hızlı, transparan ve güvenli bir şekilde gerçekleşmektedir. Ayrıca bildiğimiz gibi blockchain içerisindeki her bir kayıt, değiştirilemeyecek bir şekilde tutulmaktadır. Blockchain dünyasında işler özellikle smart contract’lar ile bir başka boyuta geldi. Blockchain’in güvenli ortamında çalışan ve kendisine verilen koşulların gerçekleşmesi halinde, dijital varlıkların taşınması gibi işlemleri yapan bir takım akıllı kod parçacıkları diyebiliriz smart contract’lar için. En önemli özelliklerinden birisi ise smart contract’ların, aracı olarak tanımladığımız üçüncü bir kişiye olan ihtiyaca gerek duymamasıdır. Tüm işlemler kontrat içerisinde bulunan tanımlamalara göre otomatik olarak güvenli bir şekilde gerçekleşmektedir. Yani bizlere bir tür özerklik getirmektedir.
Başta gelen smart contract platformu ise Ethereum’dur. Ardından Polkadot, Solana gibi smart contract’ları destekleyen blockchain’ler de bulunmaktadır. İnanıyorum ki smart contract’lar önümüzdeki yıllarda birçok farklı alanda karşımıza çıkacaktır. Smart contract’lar özellikle 2021–2022 yılı içerisinde DeFi olarak isimlendirilen decentralized finans platformlarının ve NFT’lerin oluşturulmasında, ayrıca gittikçe popülerleşen oyun sektöründe P2E tarzı projelerin geliştirilmesinde oldukça büyük bir rol oynamıştır.
2021 yılının son çeyreği ve 2022 başlarında birçok alanda smart contract’lar ile projeler geliştirildi. Son dönemlerde özellikle Move2Earn projeleri oldukça popüler idi. Ben de hem bir yazılımcı, hem de kendi çapında küçük bir yatırımcı olarak hem farklı launchpad platform’larından bu tarz projelerin ön satışlarına katıldım, hem de meraklı bir yazılımcı olarak kendi smart contract’larımı nasıl geliştirebilirim konularına oldukça odaklanmıştım son dönemlerde.
Her ne kadar market koşulları şu an istenilen seviyede olmasa da içerisinde bulunduğumuz ekonomik durumlardan dolayı, inanıyorum ki piyasa kendisini toparlamaya başladığında tekrardan blockchain’e ve smart contract’lara olan ilgi ateşlenerek tekrardan geri gelecektir.
Ayrıca smart contract’ların kullanım alanları kripto paralar dışında oldukça farklı endüstrilerde de boy göstermektedir. Örneğin farklı organizasyonlar arası finansal kayıtların güvenli bir şekilde paylaşılabilmesi, sağlık alanında ise özel kayıtların değiştirilemez ve güvenli bir şekilde tutularak sadece spesifik kişilere açılabilmesi, sigorta sektöründe de yine bir çok süreç smart contract’larla otomatikleştirilerek ilgili süreçlerin şeffaf ve güvenli bir hale getirilebilmesi gibi çeşitli farklı alanlarda kullanımı bulunmaktadır.
Bir yazılımcı olarak sanırım bu alanda kendimi 2023 yılı içerisinde de geliştirmeye devam edeceğim. Bu konuda eğer sizler de araştırmak isterseniz tavsiye edebileceğim bazı başlıklar ise, aşağıdaki gibidir.
- Blockchain’i, node’larını ve ledger’ı anlamak
- Ethereum’un önemi ve smart contract’lar için olan yeri
- Binance Smart Chain(BSC)
- Web3js
- Remix IDE ve Solidity (smart contract geliştirmek için)
- MetaMask
AI & Machine Learning
Yapay zekâ konusu ise beni uzun yıllarca heyecanlandıran ve meraklandıran bir konu olmuştur. Bilmiyorum hatırlar mısınız eskilerden “Karabasan” diye bir MS-DOS oyunu vardı. Tam tarihi hatırlamıyorum ama sanırım 90'ların sonu ile 2002 arasında tanışmıştım onunla. O zamanların sanal arkadaşı veya chat botu diyebiliriz sanırım. :) İlk merakım o zamanlardan uyanmıştı ve fikri oldukça çok beğenmiştim. O yıllarda C++ ve Delphi ile ilgileniyordum ve benzer mantıkla bir şeyler ben de yapmaya çalışıyordum. Ne günlerdi!
Şimdi günümüze baktığımızda işler ne kadar da değişti, değil mi? Özellikle son zamanlarda çıkan ChatGPT oldukça harika işler çıkartıyor. Daha önce farklı chatbot’lar çıktı ama böylesi yok, gerçekten çok başarılı buldum.
Zaten günümüze baktığımızda hayatımızın birçok alanına girmiş durumda yapay zekâ ile geliştirilmiş olan işler, değil mi? Bankayı ararız bizi bir bot karşılar, yardım desteğine yazarız yine bizi bir chatbot karşılar, telefonumuzla resim çekeriz, AI’lı kamerası resimleri daha iyi bir hale getirir vs.
Sanırım ilerleyen dönemlerde de yapay zekâ ve makine öğrenmesi hayatımızın birçok alanında yer alacak. Geçmiş dönemlerde birkaç farklı makine öğrenmesi projesinde çalışma fırsatı bulmuştum ve bu süreçten oldukça keyif almıştım. Sürekli verdiğimiz veriler doğrultusunda train olan model’in kendi deneyimini sürekli iyileştirebilmesi ve her seferinde daha kesin sonuçlar önerebilmesi gerçekten harika bir olay.
Ama bu alanda çalışmak, çalışabilmek oldukça zor ve çok uğraş gerektiren bir süreç. (Tabii bir cloud provider’ın hazır sunmuş olduğu bir servisi kullanmıyorsak) Bu alanda çalışanlara saygım oldukça sonsuz.
2023 yılı içerisinde de teknoloji trendinin bu alanlarda hızla devam edeceğine inanıyorum. Özellikle gözlemlediğim bu alanlara ağırlık sağlık sektöründe, otonom sürüşler ve predictive maintenance yönünde. Bunun dışında yine e-ticaret sektörü içerisinde de farklı noktalarda kullanım alanları bolca mevcut. Yapay zekâ tabanlı stok yönetim sistemleri, kişiselleştirilmiş ürün öneri sistemleri, dinamik fiyatlandırma ve fiyat tahmin stratejileri belirleyebilme, chatbot’lar vb. Keza içerisinde olduğum havacılık sektöründe de oldukça kullanılmakta.
Dediğim gibi, burada oldukça büyük bir pazar ve hâlâgelişmeye, geliştirilmeye açık bir alan var. 2023 yılı bu alanda daha ne gibi yenilikler getirecek, hep beraber gözlemleyeceğiz.
Gökmen Görgen (a.k.a. GoeDev)
Staff Engineer
2023 Trendleri
Uzun bir pandemi sürecinden sonra dünyada görülen enflasyon sonrasında toplu işten çıkarmalar oldu. 2023'te genel olarak bir resesyon beklentisi var. Acaba diyorum, şirketler yeni işe alımlar yapmak yerine IT departmanını tümüyle dışarıdan temin etme (outsourcing) fikrine her zamankinden daha çok yönelirler mi?
2012'den beri uzaktan çalışan biri olarak şirketlerin pandemiden birkaç yıl sonra hemen ofise dönüş planları yapmaya başlaması bana ilginç geldi. İkna etmekte zorlanacaklarını bildikleri için olsa gerek, sert bir geçiş olmasın diye çalışanlara hibrit çalışma (hybrid work) adında bir model teklif etmeye başladılar. Eğer önceki yıllarda olduğu gibi ciddi bir kapanma olmazsa, bazı şirketlerin 2023 yılında uzaktan çalışmak yerine hibrit modeli çalışanlara zorlayacağını öngörüyorum. İki sebebi var: Birincisi, öz disiplini olmayan çalışanların çokluğu -ki bunların bir kısmı işi kaybetme endişesiyle ofise dönmeye hazırlar-. İkincisi de şirket kültürünün uzaktan çalışmaya adapte olamaması. Yine de korkulacak bir şey yok. Bu tarz kararları işverenle çalışanlar uzlaşarak verecekler.
NO-CODE eski bir trend olmasına rağmen benim için bitmedi. Cloud var, Serverless var, cloud-native uygulamalar da yazıldı, internet altyapımız da her geçen gün iyiye gidiyor. DRY (Don’t Repeat Yourself) prensibini Backend ve ML projelerinde uygulamak için ne eksik ki? Copilot ve ChatGPT’ye gelene kadar aslında bizim hiç kodlama altyapısı olmayan insanların no-code teknolojilerini kullanarak backendinden frontendine tüm bileşenleri görsel olarak programlayabilen yeni nesil iş bitirici çalışanlardan korkuyor olmamız gerekmez mi? Ama yok, yine korkulacak bir şey yok. Piyasada hiçbir şey durağan değildir. Yazılımcıların da artık amele işleri devretmesinin zamanı geldi.
Çok uzun zamandır geliştirme ortamımı uzakta tutma ve tablet gibi mobil cihazlardan erişilebilir hale getirme çabası içindeyim. Örneğin bu sene Windows 365 ile tabletimi kullanarak çalışma imkanım oldu. Daha sonra GitHub Codespaces ve Gitpod gibi araçları kullanmaya ağırlık verdim. VS Code’un uzaktan bağlantı sağlayan resmi eklentileri hiçbir editörde olmadığı kadar iyi. Önümüzdeki sene beklentim, daha fazla masaüstü ve terminal uygulamalarının wasm desteğinin olması, uzaktaki makinenin uygulamalarını web tarayıcıdan çalıştırabilmek veya doğrudan tarayıcıya bu uygulamaları yükleyebilmek. Figma bunlar arasında en güzel örneklerden biri. WebAssembly olmasa da VS Code’u tarayıcıdan kullanabilmek bir başka örnek. Umarım çalışanlara geliştirme ortamının kurulu olduğu uzaktaki bir makineye erişim veren şirketleri daha çok duyarız.
Mutlu ve huzurlu bir 2023 yılı diliyorum.
Görkem Çetin
Growth Expert
Yazılımcılar açık kaynak kodlu ürünlerden daha çok faydalanacak.
40 yılı aşkın bir süredir yazılımın nasıl üretileceğini, paylaşılacağını ve tüketileceğini farklı bir dilde anlatan özgür ve açık kaynak kodlu (Ö/AKK) yapılanma, 2023'te de önemini artırarak devam edecek.
Son zamanlarda yatırımcıların da bu alana yönelmesiyle hem bulutta, hem de GitHub/Gitlab üzerinde ciddi bir potansiyel oluştu. Pek çok firma ürünlerinin aynısını hem servis olarak, hem de kamuya açık vermeye başladı.
Bu durum yazılımcılara önemli fırsatlar sunmaya başladı. Yeni başlayanlar Ö/AKK yazılımları inceleyip katkı vererek deneyim kazanmaya ve bunları CV’lerinde sunmaya başladılar.
Dünyada $100M+ gelir getiren 50 açık kaynak kodlu yazılım firmasına bu sene yenilerinin ekleneceğini, özellikle daralan ekonominin etkilerinin pozitif olarak Ö/AKK yazılımların nitelik ve niceliklerine yansıyacağını düşünüyorum.
Framework geçişlerini daha çok göreceğiz
Framework’ler büyüdükçe daha da karmaşıklaşması beklenirken, detaylı doküman destekleri, birbirine benzeyen yapıları ile yazılımcıların kolayca geçiş yapmalarına olanak vermeye başladı.
Özellikle düz JavaScript kullananlar Typescript’e, sunucu tarafında daha yüksek performans vermesi ve geniş çaplı projelerde daha fazla esneklik sağlaması nedeniyle geçmeye başlayabilir. Benzer şekilde REST API servislerinin GraphQL’e dönmesini bu sene daha çok görebiliriz.
Geliştiricilerin kullandığı servislere bakacak olursak, son birkaç yılda hem Vercel, hem de Netlify ciddi atak yaptı. Gatsby de Netlify tarafından satın alınınca bu iki platforma çok fazla rakip kalmadı. Bu nedenle 2023 yılında Vercel ve Netlify’a alternatif en az iki bulut temelli serverless geliştirme platformunun çıkışını göreceğimizi düşünüyorum.
Yazılımcılarda estetik algısı gelişmeye devam edecek
Yazılımcılar ürün geliştirme süreçlerinde üzerlerinde olan işler dışına çıkmaya ve son zamanlarda tasarım kararlarında da yer almaya başladılar. Bunda, kendi girişimine başlayan yazılımcıların sayıca artmasının büyük etkisi oldu.
2023'te bu değişimi daha keskin açılardan görmeye başlayacağız. Daha çok sayıda yazılımcı ürünü geliştirirken aynı anda hem tasarımını ele alacak, hem de ürün yönetim sürecinde aktif olacaklar.
Hadi Tok
Software Engineer
2022 yılında teknolojinin en büyük trendi şüphesiz yapay zekâ idi. Bunun daha teknik incelemelerini ve beklentilerini bu yazıya diğer katkıda bulunanlara bırakacak olsam da 2023’de mobilde bizi neler bekleyebilir, bunlardan bahsedeceğim. Mobil cihazlar insanların artık bilgiye ve teknolojiye ana ulaşım aracı. Bugüne kadar insanlar yapay zekâya direkt erişemeseler bile, yapay zekâ kullandığımız bazı araçları daha akıllı hale getiriyordu. 2022 yılında bir çok insan yıllardır ağızları açık bir şekilde üniversitelerin araştırma videolarından gördükleri yapay zekâ ile direkt etkileşime geçme fırsatı buldular. Şu an bu erişim hâlâ kısıtlı ve kullanıcı deneyimi problemli. Bu yıl bu erişim problemlerini çözüp yapay zekâyı erişilebilir kılmaya çalışan birçok mobil uygulama ve girişim göreceğiz.
Değinmek istediğim diğer konu ise pandemi sonrası ekonomisi. 2022 sonu ve 2023 başı itibarıyla birçok toplu işten çıkarma yaşandı. Bu şirketlerin CEO’larının işten çıkarmalar sonrasında yayınladıkları yazılara bakarsak, hepsi pandemi zamanında yakalanan ekonomik büyümenin devam edeceğini öngörüp çalışan sayısında artışa gittiklerini söylüyor. Haklı çıkmadıkları ortada. Bunu dijitalleşmenin yavaşlaması hatta bazı noktalarda pandemi önceki seviyelere dönmesi olarak anlayabiliriz. Zarar beklemeseler bile, birçok şirket 2023’te bu yavaşlamanın ve ekonomik durgunluğun daha da artmasına karşı önlem olarak bütçelerde kısıtlamaya ve işten çıkarmalara gitti. Şu an toplu işten çıkarmaların sonucu olarak piyasada çok fazla iş gücü var fakat büyüme olmadığı için yeni açılan iş imkanları kısıtlı. Bu yazılımcıları kolay iş bulma, rekabetçi ücret, uluslararası uzaktan çalışma ve yurtdışına göç gibi bir çok konuda etkileyecektir. Pandemi sonrasında uzaktan çalışmaya izin vermeyen firmalar kaybedecek gibi bir görüş varken bir çok firma çalışanlarını ofise çağırmaya başladılar bile.
Bazı trendler uzun süre devam ederken bazıları başlamadan bitebiliyor. Bu sebeple geçen sene “Yazılım Dünyasında 2022 Trendleri” için yazdığım bölümün bir değerlendirilmesini ve bu sene içinde bu konuda neler değişebilir onlara bakalım.
Reactive UI framework’ler: IOS tarafında SwiftUI kullanımı konusunda çok güvenilir bir kaynak bulamadım fakat Android tarafında Jetpack Compose’un popülerliğini arttırdığını ve bu sene de en çok konuşulan konu olduğunu söyleyebilirim. Compose bu sene için Android’in defacto UI framework’ü olamasa da bu yönde ilerlemeye devam etti. Şu an için Android öğrenmeye başlayanlara XML yerine Compose öğren demek için çok erken.
Flutter: Beklediğim büyümeyi gösteremese de büyümeye devam ediyor. Flutter için iş ilanları native ilanlarına bakarak hâlâ çok kısıtlı.
Yurt dışına uzaktan çalışanların vergi durumu: Bu konuda devletten yurt dışına uzaktan çalışanlara toplu bir inceleme görmedik. Seçimlerden sonra bu konu gündeme gelebilir.
Tablet, katlanabilir telefon ve akıllı saatler: Android tarafında 2022, bu tip cihazlar için hızlı geçti ve kullanımları dünya çapında arttı. Katlanabilir telefonlar bir sene öncesinin iki katı satış rakamlarına ulaşmaya devam etti. Her nesilde artan cihaz kalitesinin bunda payı büyük. Samsung dışında bir çok üretici katlanabilir telefonlarını tanıttı. Tanıtılanlar dışında başka üreticilerin de bu sene içerisinde katlanabilen telefon çıkaracağının dedikoduları dolaşıyor. 2022’de tablet tarafında Android 12L ve 13 tabletlerde ve katlanabilir telefonlardaki deneyimi iyileştirmeye odaklandı. Google’ın Android geliştirici konferansı olan Android Dev Summit’in Londra ayağı ‘Form Factor’lere ayrıldı. Samsung ve Lenovo iPad pro’ya rakip pro tabletlerini çıkarttılar ve Google 2023 yılında çıkaracağı Pixel tabletini duyurdu. Tüm bunlara baktığımızda Android tarafında geleneksel telefonlar dışındaki cihazlar önemlerini arttırmaya bu 2023’de de devam edecek.
Levent Arman Özak
Development Expert
İş değişiklikleri sebebiyle trendleri takıp edememiş ve bu serinin 2022 sayısına katkıda bulunamamıştım. Bu yıl sizinle frontend alanında 2023 ve yakın gelecekten neler beklediğimi paylaşmak istiyorum.
TL;DR
- Partial hydration, resumability, server components gibi modern render kalıpları öne çıkacak. → 🔥Astro, Qwik, Next.js
- Edge fonksiyonları ve edge’de render etme yaygınlaşacak. → 🔥SvelteKit, Astro, Deno
- Full stack geliştirme yükselişte. → 🔥tRPC, Remix, Next.js
- Micro frontend kavramını daha da çok duyacağız.
- Yeni nesil frontend araçlarına geçiş hızlanacak. → 🔥 Vite, Turbo
Google “web vitals” adı altında ölçtüğü ve sıralamada etkili olduğunu belirttiği metrikleri o kadar detaylandırdı ki, günümüzde artık server-side rendering (SSR) veya static site generation (SSG) tek başına yeterli olmuyor. Mesela, hydration, yani sunucu tarafında üretilen HTML’i tarayıcı tarafında interaktif hale getirip uygulamanın bileşen durumunu güncelleme işlemi, vakit alabiliyor. Bu sırada sayfa etkileşime tepki veremiyor (uncanny valley) ve kötü bir kullanıcı deneyimine sebep oluyor. Google bunu time-to-interactive (TTI) isimli bir metrikle ölçüyor. Yine, sayfaya gönderilen ama kullanılmayan JavaScript miktarı da önemli. Render-blocking olmasa dahi, bandwidth açısından sayfanın yükleyeceği resim ve video gibi diğer içeriklerle yarıştığı için, largest contentful paint (LCP) skorunuzu etkiliyor.
İşletmeler bu metriklere karşı giderek duyarlı olmaya başladı. Haliyle yazılımcılar da öyle. Bazı popüler framework’ler için progressive hydration, selective hydration, server components gibi yenilikçi teknikler üretildi. Örneğin, Next.js 13’üncü sürümünde köklü bir değişimle React server components kullanmaya başladı. Bir yandan da Astro çıktı ve “islands” mimarisiyle dikkatleri üzerine çekti. Marko ve Elder.js bunu partial hydration adı altında daha önce yapmıştı; ama, entegrasyonlar ve UI açısından geliştiriciyi serbest bırakmasının etkisiyle olsa gerek, Astro onlardan çok tutuldu. Fakat hydration ve kullanılmayan JavaScript konularında en çarpıcı gelişme Qwik ile yaşandı. Qwik, hydration’ı komple ortadan kaldıran “resumability” fikrini ortaya attı, JS dosyalarını indirmeyi erteledi ve henüz canlıya hazır bile değilken adından çok bahsettirdi. 2023'le beraber, sunucuya eğilimin artacağını, yazılımcıların yukarıda bahsettiğim yenilikçi teknikleri daha çok benimseyeceğini ve framework geliştirenlerin de buna kayıtsız kalamayağını tahmin ediyorum.
Yine performans kaygılarıyla bağlantılı olarak, serverless ve JAM stack teknolojilerini takip edenlere tanıdık gelecek “edge function” ve “rendering on the edge” kavramlarının da süratle yaygınlaşacağını düşünüyorum. Pazardaki rekabetin kızışmasını, böylece maliyetlerin aşağı inip hizmetlerin artarak kullanışlı hale gelmesini bekliyorum. Bu arada, bugüne kadar mesafeli durduğum Deno’ya da yakınlaşmam gerekebilir. Nitekim, kendine edge alanında bir yer ediniyor gibi görünüyor. Edge konusundaki en çarpıcı gelişmelerden biriyse, 2 yıllık geliştirme süresinin ardından SvelteKit’in 1.0 sürümünün yayınlanmasıydı. Vercel tarafından finanse edilse de resmi Cloudflare, Netlify ve Deno Deploy adaptörleri bulunuyor; Node.js ve statik adaptörlerini de düşününce “vendor lock-in” tehlikesi yok gibi görünüyor. Şaşırtıcı bir hamle de Astro’dan geldi. Yolculuğuna SSG ile başlayan Astro, henüz yeni SSR kabiliyeti kazanmasına karşın, Cloudflare, Vercel, Netlify ve Deno Deploy adaptörleriyle edge’i destekliyor. Sanırım bu sene edge’in yanı sıra bu ikilinin adını çokça duyacağız.
Performans kaygısı dedim, ama sunucuya kayışın tek sebebi bu değil. Çabuk ürün çıkarmaya çalışan ekipler için backend-frontend arasındaki iş bağımlılığı ve yazılımcı koordinasyonu can sıkıcı olabiliyor. API’ları üreten tarafla tüketen taraf birbirinden uzaklaştıkça geliştirme süreleri de uzuyor. Blazor gibi ikisini yaklaştıran çözümlerin bu kadar heyecan yaratması biraz da bundan. Öte yandan, Remix ve Next.js gibi full stack JavaScript framework’leri de sunucuyu frontend geliştiriciler için erişilebilir hale getiriyor. Onlarca hizmetle entegrasyon kurduğumuz, backend for frontend (BFF) katmanında aggregation yaptığımız, digital experience composition (DXC) gibi sektörlerin ortaya çıktığı, serverless ve edge teknolojilerinin güçlendiği şu dönemde onların stratejisi biraz daha isabetli gibi görünüyor. Bu noktada tRPC’nin de büyük potansiyele sahip olduğunu düşünüyorum. Framework-agnostic, React ve Next.js’i resmen destekliyor, diğerleri için de topluluk paketleri mevcut. Dahası, v10 ile gelen fetch adaptörüyle edge’de çalışmaya müsait. Dokümantasyonunda Cloudflare, Vercel ve Deno Deploy örneklerini bulabilirsiniz. Bence tRPC, özellikle BFF için biçilmiş kaftan. Bence bu sene full stack’in parlayan yıldızı olacak.
Web uygulamalarının kabiliyetlerinin artmasının bir neticesi olarak insanların beklentileri de yükseldi ve bu trendin yakın zamanda gerileyeceğini veya duracağını sanmıyorum. Uygulamalar doymak bilmez bir iştahla büyümeye devam ediyor ve bu bizi sadece teknik anlamda değil, kaynakların yönetimi açısından da zorlamaya başladı. Peki mikro frontend derdimize derman olabilir mi? Konuk olduğum etkinliklerde dile getiriyorum: Mikro frontend gümüş kurşun değil ve artıları olduğu gibi eskileri de var. Bununla beraber, geniş kapsamlı projelerde, hem ekipleri kurgulamada yardımcı olabilir, hem de bağımsız geliştirme ve teslimatlarla verimliliği artırabilir. Avantajlarının mı yoksa dezavantajlarının mı ağır basacağını kestirmekse oldukça güç. 3 yıl önce Thoughtworks micro frontend için “adopt” dediğinde şüpheliydim; şu an halen şüpheliyim. Diğer taraftan, işim gereği farklı firmalardan mimarlarla iletişimdeyim ve hemen hepsi mikro frontend soruyor. Pratikte uygulanıp uygulanmaması ayrı bir konu; ancak 2023’te adını daha sık duymaya kendimi hazırladım.
Yazılım geliştirme ortamımız da sürekli gelişiyor. Webpack ve Rollup gibi module bundler’lar büyük ölçekli projeler için yavaş kalmaya başladılar. Vite gibi EcmaScript modüllerinden faydalanan araçlar ve esbuild gibi çok hızlı alternatifler ortaya çıktı. Benzer bir durum transpiler tarafında da geçerli. Babel’in artık SWC gibi süratli bir rakibi var. En iddialı projelerden biri de Turbopack. Gerçekten “hızlıdan da hızlı” mıdır onu bilmem, ama henüz alfa sürümündeyken desteklediği özellikler takdire şayan. Tabi projelerin kullandıkları araçları bırakıp bu yeni araçlara geçişi o kadar basit değil. İhtiyaçları karşılayacak şekilde plugin ekosisteminin oturması, güven ortamının oluşması ve, belki de en önemlisi, kullanılan framework’ün o araçla çalışabilmesi gerekiyor. Buna rağmen, 2023’ten itibaren yeni nesil geliştirme araçlarına geçişin hızlanacağına inanıyorum. Yükselen yıldız adaylarım da Vite ve Turbopack. Bence Vite giderek yaygınlaşacak ve Turbopack bir anda patlama yapacak.
Mehmet Hakan Satman
Professor of Numerical Methods
Tarihte geriye bakarak gelecekte ne olacağını tahmin etmek kolay bir iş değil. İstatistiğin zaman serileri başlığı altında işlediği teknikler bütünü insanların tamamen bu meseleyi çözmek için gerçekleştirdiği bir çabanın ürünüdür. Hatta tahmin kelimesi için İngilizce’de estimation, prediction, forecast ve inference gibi zengin yorumların bulunması da bu konudaki hassasiyetimizin bir göstergesi. Bu girişimin en insani-bilimsel yönünü judgemental forecasting oluşturuyor. Konusuna hakim kişilerin ileriye dönük kestirimleri bazen herhangi bir analitik veya algoritmik bir yöntemle değil de altyapısını bilmediğimiz bir düşünce sisteminin ürünü olarak da kabul edilebiliyor. Geleceği tahmin etme girişimlerimiz bilimin alanıyla da sınırlı değil. Kahve fallarından medet umduğumuz derecede çaresiz kaldığımız durumlar olmuştur. Elde hiçbir bilgi yoksa Python dilinin 2023’te ortalıkta olup olmayacağını tahmin etmek için Jupiter gezegeninin Python’un onuncu evine ne zaman giriş yapacağına bakmak zorunda kalacak kadar bile çaresizleşmiş olabiliriz. Geleceği merak ediyoruz. Sanki en önemli çabalarımız da bu güdümüzün bir sonucu.
No-code girişimlerinin 2023’te hız kazanacağını düşünmek zor değil. Aslında bu kavram düşündüğümüz kadar yeni de değil. Kişisel bilgisayarların icadında başat motivasyonun her iş için maddeyi tekrar tekrar şekillendirmek istemeyişimiz olduğunu görüyoruz. Maddeyi şekillendirmek yerine Assembly diliyle programlar yazmak no-code kavramının ilk versiyonu olabilir, kırmızı çekiç kullanmayı bırakıp kod yazmak. Bu taraftan bakıldığında Assembly ile kod yazmak çok kolaylaştırıcı bir yöntemdir. Bugünden geriye baktığımızda da C dilinin Assembly için bir no-code girişimi olduğunu görürüz. Java da neredeyse C ve C++ için bir no-code girişimidir. Artık toplayıcının C++ ile ürettiğimiz problemlerini sonlandıracağını düşünmüştük. R ve Python’un iyi birer C/C++/Fortran wrapper’ı olduğunu da hesaba katarsak, giderek maddesel makineden uzaklaşıp çözmemiz gereken işlere yoğunlaşıyoruz. Yapay zekâ, veri mühendisliği, veri analizi gibi kavramlar için no-code bağlamında giderek makineden uzaklaşan ve probleme odaklanan şekilde düşünce sistemimizi değiştirecek yeni araçların doğuşuna şahit olabiliriz. SPSS, PSPP ve Jamovi sürükle-bırak yöntemiyle doğrusal regresyon tahmini gerçekleştirmeyi mümkün kılan birer no-code girişimidir. Ancak henüz beklediğimiz düzeyde başarılı değiller.
Son yıllarda programlama dillerinin sayısında bir artış olduğunu gözlemliyoruz. Bu diller birçok türden hayat seyrini takip ediyor, belirli bir eşiği geçip popüler olanlar yanında hiç kullanılmadan sahneden çekilenler de var. 2023’te de yeni dillerin sahneye çıkacağını şimdiden görüyoruz. Google’ın Carbon girişiminin de bir açığı dolduracağı şimdiden belli. Öte yandan Rust gibi bir rakibin sistem programcıları tarafından sahiplenilmesi ve çok sevilmesi ikisinin birden kendi alanlarını yaratıp yaşamasına sebep olacak. Rust’ın Linux çekirdeğinde kendisine yer bulması, bu rekabette onun için artı puan. Ancak şimdiden Rust veya Carbon’dan birini seçme konusunda düşüncelere dalan ve stresten sivilceler çıkaran genç girişimcileri bir konuda rahatlatmak gerekir. Bir kere LISP, COBOL ve Fortran dilleri dahil hiçbir güçlü dilin öldüğüne şahit olmadık. Kullanım oranı bağlamında bazı dil liglerinde sıralarının gerilediğini görebiliriz. Ancak dünyada hâlâ legacy code denilen eski programların bakım ve onarımında bu dilleri iyi bilen emekli arkadaşların arandığına şahit oluyoruz. Ayrıca kendi deneyimlerimden de şunu gördüm, iki dil arasında bir kararsızlığa düşülmüş ise bunların ikisini de öğrenmekte fayda var. Ne de olsa matematik ve programlama dillerini öğrenmek, doğal dilleri öğrenmek ile kıyaslandığında oldukça kolaydır. Rust ve Carbon’un çözmeye çalıştığı meselelere çözüm arayan diğer bir kol ise, C dilini iyileştirmeye çalışanların benimsediği yol. Örneğin Zig, Jai ve V gibi diller, daha iyi bir C nasıl olurdu? sorusundan hareketle yola çıkılmış gayretler. Bu diller için bu yıl da bir miktar çabanın harcandığını göreceğiz. Gel gelelim bir dil oluşturup piyasaya çıkmak ve “Hello, world!” diye bağırmak yetmiyor. Bir dili yaşatan asıl unsurun onu kullananlar olduğuna şahit oluyoruz: The Community!
Pure-functional dilleri her probleme uygulama bağlamında kabul edemedik. Bunun altında yatan sebeplerden biri de performans oldu. Performans meselesinde atılım yapabilen fonksiyonel dillere de çok yanaşamadık. Bunun sebebi de tamamen fonksiyonel olan dillerin zorlayıcı şartları oldu. Ancak insanlık her zamanki gibi fayda fonksiyonunu maksimize etme yönünde — belki de farketmeden — bir atılım yaptı: Mevcut nesne yönelimli ve prosedürel dillerimize fonksiyonel eklentiler yerleştirdik. Haskell, F#, Scala, Clojure, OCaml ve adını sayamadığım birçok dil 2023’te de muhtemelen mainstream ailesinin bir üyesi olamayacak veya kaldır-at usulü bir yer değiştirmenin aktörü seçilemeyecek. Ancak şunu söyleyebiliriz ki, fonksiyonların dilin birinci sınıf vatandaşı olması, değeri değiştirilebilen veya değiştirilemeyen dil elemanlarının varlığı, hem pure-functional dillerin teknik olarak hem de kategori teorisinin tümden getirdikleri halihazırda kullanılan araçlarımıza daha da şekil vermeye devam edecek. Mevcut dillerimiz biraz daha fonksiyonel olacak. Java bu atılımı 1.8 versiyonunda gerçekleştirmişti. JavaScript’deki fonksiyonların birden çok şekilde tanımlanabiliyor olması da bu çabanın bir yan etkisidir. Rust’ın Enum’ları C’dekinden çok Haskell’dekilere benzer.
Dillerin ve araçların evriminin yanında paradigmalar arası etkileşim ve yeni hibrit paradigmaların önümüze çıkacağı durumlar da sürpriz olmayacak. Julia’nın discourse sitesinindeki tartışmalarında onun nesne yönelimli bir dil olup olmadığı konusunda hararetli ve günler süren konuşmalar olduğu görülür. Meselenin özü de şudur: Bir dil fonksiyonlara birinci sınıf dil elemanı ünvanını atfetmiş, yeni sınıf tanımlamayı mümkün kılmış, mutable ve immutable değişkenlerin kullanılmasına izin vermiş, for döngüleri kullanmayı performans olarak önermiş olabilir. Ne tam derlenen ne de tam yorumlanan olabilir. Hem fonksiyonel hem de prosedürel, yani 20 yıl önce alışık olmadığımız şekilde hibrit özelliklerle donatılmış olabilir. Kavram ve tanımları güncellemeye devam edeceğimiz bir yıl olacak. F#’ın eskimiş sloganı bunun için güzel bir tarihi örnektir: Functional-first.
Bugünlerde 20 yaşlarında olan bir genç arkadaşımızı “Write once, run anywhere!” sloganıyla karşılaştırdığımızda hiç etkilenmeyecektir. Kahve bebeğimizin (bunu Java class dosyalarının ilk 4 byte’lık magic ifadesi olması sebebiyle pek kullanıyorum) daha önce sıkça kullandığımız ortamlardan hızla çekilmeye devam edeceğine şahit olacağız. Ancak Java öyle bir boşluğu öyle sert bir şekilde doldurmuştu ki, sistemlerini Java altyapısı ile donatan binlerce teknoloji şirketi sayesinde bu dilin de hâlâ sahnede olacağına şahit olacağız. Web sayfalarında applet yazan bilim camiasının Java’yı terk edişi ile başladı ayrılma süreci. Şu sıralar WEKA gibi makine öğrenimi araçlarının hatrına Java kullanmaya devam ediyorlar. Java’nın masaüstündeki popülerliğinin son yıllarını yaşıyor olabiliriz. JVM’yi Java’sız kullanmaya yönelik girişimlerin de hâlâ ortalıkta olacağını ancak Java’yı kaldırıp atamadıklarını göreceğiz.
.Net harika bir teknoloji. 2001 yılında klasik Visual Basic’te program yazıyorken bir yol ayrımına sürüklenmiştim. Ya .Net ve VB.NET kullanacaktım, ya da, Java ile yola devam edecektim. Java’nın o zamanlar Linux dahil tüm sistemlerde çalışıyor olabilmesi Java’yı seçmemde büyük bir etken oldu. Hem bu sayede Windows kullanmayı bırakıp Linux’a da geçebilecektim. Ayrıca bir master öğrencisi olarak kendimi bu seçimi yapma konusunda özgür hissediyordum. Yanlış anlaşılmasın Windows da harika bir işletim sistemidir. Ama bir bilim insanı olarak yetişme güdüsüyle yola çıkan ve yolun çok başında biri olarak hem okumalarım hem de güdülerim beni öteki tarafa yönlendirmişti. Microsoft’un, Visual Basic for DOS gibi ömrü neredeyse birkaç yıl olan ürünleri de dahil, birçok ürünü harikadır (Hatta VB for DOS belki de terminal ekranında gördüğüm en harika şeydir). Bu yıl içinde de .NET geliştirme ortamının ve .NET dillerinin ortalıkta olduğunu göreceğiz. Ayrıca son yıllarda .NET’in diğer platformlarda ve hatta Linux sistemlerde etkin şekilde kullanılabiliyor olması, .NET’in varlığını Windows’a bağımlı olmaktan da giderek uzaklaştıracak. Java 1.0 zamanlarında kendi JVM’sini yazan ve kullandıran Microsoft’un Java hikayesi en acıklı aşk hikayelerinden de karmaşık gelebilir. Ancak Visual Studio Code’un ivme kazanan ve bizleri şaşırtan Java desteklerinin devam edeceğini söyleyebiliriz. Konjonktür gereği artık Microsoft da open olana doğru açılmıştır. Bu yıl buna şaşırmamayı daha da çok öğreneceğiz.
Yazılım tarihinde apar topar uygun bir araç bulma çabasına düştüğümüz birkaç belirgin olay oldu. Bunlardan ilki JavaScript’in sahneye çıkışıdır. Belki de aniden ortaya çıkan bir ihtiyaç yüzünden birkaç haftada apar topar ortaya çıkarılmış en prematür girişimimiz bu olabilir. Talebi arzından önde giden dilimiz, JavaScript’tir. Bu, Web ile haşır neşir olduğumuz son yıllar boyunca hiç değişmedi. Bu dili daha iyi bir hale getirmek için harcayacağımız enerjiyi Google ve Microsoft başka bir yöne aktarmayı akıl etti. Google’ın girişimi Dart ve Microsoft’un girişimi TypeScript, daha iyi bir JavaScript olarak JavaScript’e derlenen birer programlama dili girişimidir. Hatta bu iki teknoloji sayesinde compiler yerine transpiler sözcüğü teknik dilimize iyice yerleşti. Şu sıralar çıktı olarak JavaScript üreten Kotlin ve Clojurescript gibi popüler dillerimiz de var. Web Assembly de (WASM) JavaScript’i daha iyi bir hale getirmek için diğer bir girişim oldu. Özellikle LLVM altyapısı ile donatılmış Rust ve Julia’nın JavaScript ile birlikte çalışan WASM çıktılarını sıklıklı görmeye devam edeceğiz. Belki de bu yılları, Web Assembly çıktısı üretmenin bir özellik değil de zorunluluk olduğu yıllar olarak anacağız. Yeni çıkan araçların da bu gereksinimi gözden kaçırmama çabasında olacağını göreceğiz.
Apar topar bir çözüm bulunmasındaki diğer örneğimiz de Python. Makineyi daha akıllı şekle sokma konusunda çalışan tüm disiplinlerin halihazırdaki C ve Fortran kodlarını kullanabilmesinde kolay yazılabilen, rahat okunan, kolay öğrenilebilen sade bir araca ihtiyacı vardı. O sıralarda Python, daha çok Linux tabanlı sistemlerde rutin işleri gerçekleştirmede kullanılan bir betik diliydi. Hızlıca bu dili yapay öğrenme konularının merkezine çektik ve tüm üretimi burada yapmaya başladık. Şu anda geldiğimiz noktada Python’un sahip olduğu diğer dezavantajlar da düşünüldüğününde değindiğimiz alanda en uygun ortam olduğunu söylemek zor. Her ne kadar dil liglerinde üst sıralarda yerini alsa da bahsedilen alanlar için baştan tasarlanmış araçların sahneye çıktığını görebiliriz. SageMath gibi en azından matematiksel problemleri çözmek için oluşturulan domain-specific gayretler olduğunu görüyoruz. Ancak bu oluşumun da Python temelli olduğunu vurgulamak lazım. R dili daha çok istatistik alanına sıkışmış yavaş bir interpreter ama iyi bir C wrapper olarak var olmaya devam edecek. Mathematica ve onun açık kaynak versiyonu olan Maxima da bir köşede sessiz sedasız büyük işler görmeye devam edecek. Ancak ben kişisel olarak hâlâ veri analizi, makine öğrenimi ve istatistik için gerekli olan o asıl aracın (The Tool!) geliştirilmiş olduğuna inanmıyorum.
Bilimsel hesaplama alanında Matlab, özellikle de mühendislik çalışmalarında bu yıl da ortalıkta olacak. TIOBE Index Eylül 2022 raporlarında ilk defa 20. sıraya yükselen Julia, bilimsel hesaplama konusunda ağır ağır yer etmeye devam edecek. Kullanıcıları ve geliştiricileri bakımından Rust’ın hayat hikayesine benzeyen gelişim süreci, Julia’nın bu alanda daha çok konuşulacağının bir göstergesi. Julia şu an bir betik ve sistem dili olarak kullanılmaya çok uygun değil. Ancak Python gibi Julia da bu eksiği giderdiğinde, sahip olduğu hoş dil özellikleri de hesaba katıldığında, genel amaçlı dillerin pastasından da azımsanmayacak bir pay almaya aday. Julia’yı popüler yapmaya aday özelliklerin başında daha güçlü bir tip sisteminin oturuyor olması duruyor. Daha güçlü derken tabi R ve Python ile karşılaştırdık, zira hem akademik hem de piyasada ilgili alanlarda çalışan araştırmacılar bu dillere artık hakim ve hakkında tartışacak düzeyde. Tip sistemi gibi bilgisayar biliminin alanları artık bilgisayar bilimcisi olmayanların da dert edindiği ve hakkında konuştuğu bir mesele haline geldi. Ayrıca nasıl ki ekonomik koşullar yüzünden insanlar faiz, enflasyon, işsizlik gibi İktisat biliminin unsurları hakkında okur-yazar hale geliyorsa, daha çok insan bilgisayar biliminin konularını ister istemez içselleştirir hale gelecek. Kategori teorisi hakkında kahve dükkanlarında muhabbet etmeyeceğiz belki ama algoritmik karmaşıklık gibi konular etrafta daha çok konuşuluyor olacak.
Tohumları atılan güzel bir gelişme filizlenmeye devam edecek. Benim de editörlerinden biri olduğum Journal of Open Source Software (JOSS) dergisi sayesinde kendi bilimsel hesaplamalarını dilin sunduğu standartlar çerçevesinde indirilebilir, kurulabilir ve kullanılabilir hale getirip 5–6 sayfalık bir bilimsel metin olarak dünyaya açabiliyoruz. Eskilerde yazılım modülleri atıf verilebilen bir özellikte değildi. Hatta yazılım bir bilimsel üretim olarak kabul görmüyordu. Ancak şimdilerde yazılım, bilimin temel bir unsuru olarak kabul edilebiliyor. Düşünsenize Python’daki Numpy kütüphanesini yazan kişiler sizce bu paket bilimsel eserlerde kullanıldığında birer atıf hak etmezler mi? Ayrıca bu dergi dünyadaki bilimsel makale review süreçlerini de değiştirmeye veya en azından değişime zorlamaya itiyor. Tamamen açık ve sürecin takip edilebilir olduğu bir sistemde hakemler, altına imza atamayacakları cümleler kuramıyor ve taraflar nazik olmak zorunda hissediyor. Blind-review denen kavram belki de tarih, siyaset, din gibi konularda elzemdir ama bir yazılımın hakemlerce denetlenip geliştirilmesinde isterlerse isimlerini kullanması önünde bir engel görmüyorum. Açıklık, 2023 ile birlikte kendine daha çok alanda yer bulacak. Daha açık olacağız.
Bilgiyi saklayalım, ancak tek bir kurumda değil, herkesin bilgisayarında saklayalım, hem de öyle güvenli olsun ki bilgiyi saklayanların çoğunluğu mütabık kalmadığı sürece değiştirilemesin. Güvenli bir veritabanı olarak baktığımızda blockchain ve türev teknolojilerin yazılım dünyasında da yer edineceğine, hatta bu alanda uzmanlaşan yazılımcılar olduğuna şahit olacağız. Matematik ve bilgisayar bilimi araçlarının gerçekten ağır bastığı bu teknolojiye alaylılardan çok mekteplilerin giriş yapacağına şahit olabiliriz. Hatta yüksek lisans ve doktora öğrenimi düzeyinde bir uzlaşma gerektiren alt alanların da bu konulardan türeyişine şahit olacağız. Metal paranın değiş tokuşu, kağıt paranın metal parayı, kredi kartının kağıt parayı, itibari paranın da gerçek parayı nasıl ortadan kaldırmadığını gördüysek dijital veya kripto paraların da her şeyi kaldır-at türünden bir yolla kenara atacağını görmeyeceğiz. Ancak blockchain teknolojisi ve türevlerinin — hatta dijital paraların — ekonomi alanında, özellikle sermaye piyasaları ve bankacılık alanında yeni problemler ve gereksinimler yaratacağını göreceğiz. Ethereum ve Solidity ile olduğu gibi bu gereksinimlerin yeni kavram, teknoloji, dil ve ortam oluşturacağı çok açık. Bu da yeni alanlar ve yeni meslekler demek olacak. Ayrıca hashing algoritmaları ve tapu daireleri bizim ilk defa aynı cümlede kullandığımız iki ayrı terim olmasa gerek. Evrak üstüne mürekkeple basılmış parmak izi DNA bilgimiz için iyi bir hash string kabul edilirse, ayrıca DNA bilgimiz de ata-soy ağacının değiştirilmez bir kanıtıysa, çok da devrimci kavramlarla uğraşmıyor gibiyiz. Ancak teknolojiyi işin içine had safhada kattığımız kesin. Basit olanla sofistike görünen arasındaki mesafa çoğu zaman sandığımız kadar çok değil.
Bu yazıyı akademik doküman oluşturma kurallarına pek de uymayarak, neredeyse esnaf lokantasında kuru fasülye yerken ulaşılabilecek bir rahatlıkla, İngilizce ve Türkçe sözcükleri birlikte kullanarak, bazen de güzel dilimizi eğip bükerek yazdım, bu yüzden siz sevgili okuyucudan çok özür dilerim. Akademik kaygı gözetmeden yazı yazmayı da çok özlemiş olduğumu bu vesileyle hatırladım. Ayrıca OpenAI ve chatGPT hakkında bilerek konuşmuyorum, zira şu an itibariyle IQ seviyesi 83, ileride daha da zekileşip burayı okuyup bana kin beslemesini hiç istemiyorum :)
Güzel bir yıl olması dileğiyle.
Mustafa Ilıkkan
Java Web Developer
Yazılım dünyası her yıl yüksek bir tempoyla değişiyor. 2022 yılı da bir sürü gelişmeye sahne oldu: ChatGPT yapay zekanın geldiği noktayı somut bir şekilde gösterdi, her gün yeni bir JavaScript framework’ü çıktı, sürekli “PHP öldü mü?” diye tartıştık. 2023 yılında da sektörde yenilikler olacaktır. Kendi bakış açımla 2023 yazılım dünyası beklentilerimi daha çok Java dünyasına yönelik olacak şekilde madde madde sıralamak istiyorum:
1. İşten çıkarmalar, iş alımlarının yavaşlaması:
2022 yılına pandemi sonrası yazılım sektöründeki işten çıkarmalar damgasını vurdu. Büyük teknoloji şirketleri bir süre işe alımlarını durdular. Bir kısmı küçük çaplı işe alım yapmaya başlasa da sektördeki bu daralma 2023'te de seyredecek gibi görünüyor. Tabi buradan sektör bitti gibi bir anlam çıkarmamak lazım, zira yazılım sektörü bu haliyle bile diğer sektörlerden daha hareketli görünüyor. Yine ortada bir sürü iş ilanı ve başvurulabilecek pozisyon bulunuyor. Burada bahsettiğim 2020–2022 yıllarında yaşanan bolluğun nispeten azalmış olması. Bunun en büyük etkisi sektöre yeni atılacak ya da nispeten daha tecrübesiz kişilere oldu. Benim gördüğüm orta ve üst düzey (medior ve senior) pozisyonlar bu süreçten az etkilendi.
2. ChatGPT ve OpenAI
2022'deki büyük gelişmelerden birisi de yapay zeka alanında oldu. Aslında yapay zeka alanında araştırma geliştirme sürekli devam ediyor ancak ChatGPT benim gibi bu konuya uzak olan kişilerin de dikkatini çekerek çalışmalarda gelinen aşamanın derecesini gözler önüne serdi. Bunun devamı olan chat GPT4 ve Microsoft’un OpenAI’a yaptığı büyük yatırım sonucu önümüzdeki yıllarda AI alanındaki gözle görülür gelişmeler hızlanacaktır.
3. Kod asistanları, low-code ve no-code yaklaşımları:
2023 ve sonrasında gelişme yaşanması beklenen bir diğer alan da Github Copilot gibi kod asistanları ile low-code ve no-code araçlarındaki gelişmeler olacaktır. Yapay zekadaki gelişme doğal olarak bu alana da yansıyacaktır. Artık mümkün olduğunca kodu yazmadan bilgisayara ürettirmeye, en az kodu yazarak ürünü çıkarmaya dönük bir gidişat görülüyor. Copilot her ne kadar zaman zaman lisanslı kodları kullanmakla eleştirilse de geliştiricilere büyük fayda sağlıyor. Copilot ve rakibi olan piyasadaki birçok ürün, önümüzdeki sürede iyice olgunlaşıp gelişecektir. Ayrıca her ürünü kod yazarak geliştirmektense daha az kod yazarak veya hiç kod yazmadan geliştirmeye yarayan low-code ve no-code araçları da piyasada daha görünür olacaktır. Yapılan projeksiyonlara göre önümüzdeki 10 yıllık dönemde yazılımcı arzı, yazılımcı talebine yeterli olmayacak ve yapay zekâ destekli kod üretimi, low-code ve no-code bu arz boşluğunu doldurmak için şart olacak gibi görünüyor.
4. Otomasyon ve izlenebilirlik (observability):
Yazılım tarafındaki teknikler anlamında benim son 1–2 yıldır en çok gelişme gösterdiğine şahit olduğum konular ise izlenebilirlik, otomasyon ve test oldu. Şirketlerin ve ekiplerin bu konulara daha da önem verdiği, bu konuların yazılım geliştirme yaşam döngüsünde önem kazandığı görülüyor. Artık yeni projelerde test yazma, test kapsama oranları daha yüksek. Cloud native yazılımlar, mikroservisler ve diğer dağıtık mimarilerin artık çok yaygınlaşmış olması nedeniyle bunların metriklerinin izlenmesi, verilerin audit edilmesi, tracing gibi konular önem kazandı. Observability ve tracing ile hataların yakalanması, performansın izlenmesi, ve DevOps kültürünün gereği olan devamlı geri beslemeyi sağlanmak gerekiyor. Ayrıca sürekli derleme ve sürekli dağıtım (CI/CD) süreçleri, otomatize edilebilecek her sürecin otomatize edilmeye başlanması ve insan hatasının minimuma indirilmesi için otomasyon önem kazandı ve bu alandaki araçların sayısı arttı. 2023'te yazılım sektöründeki bir kişinin bunlarla karşılaşma olasılığı geçtiğimiz yıllara göre çok daha fazla artmış durumda.
5. Cloud native mimariler:
Cloud-native son yıllarda bir buzzword’e dönüştü. En kısa tanımıyla en baştan cloud ortamında çalışabilecek bir mimari yaklaşımla dizayn edilmiş uygulamalara cloud-native diyebiliriz. Hatalara dayanıklı (resilient), ölçeklenebilen (scalable), güvenli ve konfigürasyonu ayrı yönetilen stateless uygulamalar amaçlanıyor. (Heroku’nun yayınladığı 12-factor app yaklaşımına bakılabilir) Bunu gerçekleştirmek için şu anda en yaygın yol konteyner kullanmak. Bunlar tabi ki yeni ihtiyaçlar değil, geçmiş yıllarda da vardı ancak artık 2023 yılında son derece yaygınlar. Burada sadece AWS gibi public cloud servislerinden bahsetmiyorum, yazılım geliştirme mantığı ve bir mimari olarak her türlü cloud ortamına deploy edilebilecek uygulamalardan söz ediyorum. Artık daha çok uygulama servis odaklı, mikroservis mimarisinde, hatta serverless mimaride yazılıyor. Daha çok uygulama cloud ortamında (konteynerler içinde, kubernetes üzerinde) çalışıyor. Hal böyle olunca otomasyon ve observability gibi cloud-native mimari de 2023'te daha öncesine göre daha çok görülecek.
6. Java sürümleri ve yeni gelecek özellikler:
Java konusundaki öngörülere gelecek olursak, Java’nın 2023'te 2 sürüm çıkarması planlı. Bunlar Mart ayında Java20 ve Ekim ayında Java21 sürümleri. Java21, Java 11 ve Java17 gibi bir long term support (LTS) sürümü olacak.
Bu sürümlerde hem Java dili hem de Java Sanal Makinesi (JVM) özelinde gelişmeler olacak. Java’da yıllardır geliştirilmekte olan şemsiye projeler var. Bu projelerin alt ürünleri JEP (Java Enhancement Proposal) olarak 6 ayda bir OpenJDK’ya ekleniyor. Bu projelerin en önemlilerini kod adlarıyla sıralayacak olursak: Loom, Amber, Leyden, Valhalla ve Panama. Bunların detayları hem dev.java sitesindeki blog’da yayınlanan makalelerde, hem OpenJDK sitesinde ve ayrı ayrı JEP’leri okuyarak öğrenilebilir.
Geçtiğimiz yıllarda Java dilini sadeleştirmeyi ve geliştirici verimini artırmayı amaçlayan Project Amber’ın çıktıları dile dahil edilmeye başlanmıştı. Bunlar Java kullananların hatırlayacağı local variable type inference (var kelimesi), switch ifadeleri, record sınıfları, pattern matching ve text blokları gibi özelliklerdi. Bu konuda daha ileri seviyede patternler dile eklenmeye devam ediyor. Paternler artık switch ifadelerinde ve for each yapılarında kullanılabiliyor. 2023 yılında gelecek özelliklere bakıldığında record’lar ile pattern matching’in birleşerek JavaScript’teki destructuring benzeri bir özellik ortaya çıkardığı, bunun da dilin daha deklaratif bir şekle sokulduğu görülüyor.
Project Loom kapsamında çok hafif sanal thread’ler kullanarak (pahalı olan normal işletim sistemi thread’lerinden farklı olarak) eşzamanlılık konusunda ölçeklenebilirliği sağlamak, yani ihtiyaç duyulduğunda hızla binlerce yeni thread oluşturmak amaçlanıyor. Böylece karmaşık reaktif programlama yapılarına ihtiyaç duymadan I/O yoğun işlemlerin etkinliği artacak. Yapısal eşzamanlılık (structured concurrency) isimli yeni bir yaklaşım sayesinde çoklu threadlerle çalışmak, bunları debug etmek ve izlemek kolaylaşacak. Bu projeye ait sanal thread’ler ve structured concurrency özellikleri 2022'de gelmişti. Java20'de Scoped Values (incubating) gelecek. 2023 yılında bu projeye ait JEP’ler sonuçlandırılacak ve 2024 yılında bu yeni multithreading modelini daha sık görmeye başlayacağız.
Virtual thread kullanımı konusunda 2022 sonlarında, Oracle’ın Helidon framework’ü için geleneksel threadler kullanan Netty sunucusu yerine sanal threadleri kullanan Warp isimli yeni bir HTTP sunucusu geliştirildi. Böylece geleneksel thread-per-request (istek başına bir thread) modeli (reaktif bir çözüm yerine) kullanılarak CPU verimini artırmak mümkün olduğu belirtildi. Bu yeni model ile asenkron olan ve bloklamayan ama nispeten karmaşık olan reaktif kod yerine, senkron ve daha basit kodlar yazılabiliyor. Yapısal eşzamanlılık modeli sayesinde hataları bulmak reaktif modele göre daha kolay olacak, sanal thread dump ile uygulamanın nerede sıkıştığı kolayca tespit edilebilir.
Bir diğer proje olan Project Panama’nın amacı ise Java ile native kodu konuşturmak. Eskiden JNI (Java Native Interface) ile yapılan işlemleri kolaylaştırmak ve verimini artırmak. Bu proje ile ilgili yeni JEP’ler Java20 ve Java21'de preview seviyesinde eklenmeye devam edilecek. Foreign Function Memory API sayesinde C kütüphanelerinden (ya da diğer dillerle yazılmış başka kütüphanelerden) fonksiyon çağrıları daha kolay ve güvenli olacak, bellek limitleri genişleyecek. Böylece Java’nın native machine learning kütüphanelerini kullanması da kolaylaşacaktır. Bir diğer özellik olan Vector API sayesinde de vektör işlemlerini destekleyen işlemciler JVM tarafından kullanılabilecek.
Ayrıca 2023–2024 döneminde Project Valhalla konusunda da dile yeni eklemeler yapılacak. Bunların en temeli değer tiplerinin (value types) Java’ya eklenmesi olacak. Bu proje ile düşük yoğunluklu yeni bir bellek yapısı elde etmek ve JVM performansını artırmak hedefleniyor.
7. Java sürümleri ve Java17 geçiş hızının artması:
2022 sonunda Spring Framework 6 ve SPring Boot 3 sürümleri yayına alındı. Bunlar en az Java17 sürümünü destekliyor. Java’da daha önce yavaş olan sürüm geçiş hızı bu gelişme ile hızlanacaktır. Halihazırda Java8'den Java11'e geçiş hızı zaten artmıştı. 2023'te ise Java8'den doğrudan Java17'ye hatta yeni LTS sürüm olacak Java21'e geçişler yoğun olacaktır.
8. Cloud native ve serverless Java
Project Leyden ile Java uygulama açılış süresi ve memory ayak izinin azaltılması hedeflenmişti. Bu kapsamda JVM (Java Sanal Makinesi) yıllar içinde Linux konteynerlerine daha uygun hale getirildi (işlemci ve hafıza verimliliği, daha etkin GC (çöp toplayıcı) algoritmaları shenandoah GC gibi) JVM artık konteyner dostu bir yapı, kaynak ayarlamaları vb hassas olarak yapılabiliyor. Yapılan anketlerde Java’nın cloud ortamlarında, konteyner ve k8s üzerinde kullanımının arttığı görülüyor. Hatta serverless ortamlarda bile Java kullanım ortamı artıyor. Bunda native derlemenin de etkisi var. Ayrıca AWS Lambda için SnapStart isimli yeni bir servis duyurdu. Tüm bunlar javanın cold start süresini azaltmak ve serverless tarafında yaygınlaşmasını sağlamak. 2023 yılında bu tarafta Java’nın ağırlığı artarak devam edecek gibi görünüyor.
8. Java’da Native derleme:
Java kodunun statik olarak derlenerek yerel makine koduna çevrilmesi GraalVM isimli projeyle gerçekleştirilebiliyor. GraalVM’i daha önce Quarkus framework’ü native derleme için kullanmaya başlamıştı. Spring ise bu konuda geriden geldi ancak Spring Native projesi son sürümde eklendi. Normalde Java dinamik bir runtime’a sahip olduğu için çalışma zamanında kullanılan dependency injection, reflection, proxy gibi teknikler sebebiyle native derlemede sorunlar yaşanıyordu. Spring bu teknikleri yoğun kullandığı için derleme zamanında (ahead-of time) dinamik bağlanacak tüm sınıfların bilgisinin derleyiciye bildirilmesi gerekiyor. Şu anda bu bilgiler çeşitli meta verilerle (reacability meta data) derleyiciye sunuluyor. Spring native projesiyle bu sorunların aşılmasında ilerlemeler kaydedildi. 2023 ve ilerisinde native derleme konusu daha da yaygınlaşmasını öngörüyorum.
9. JakartaEE
JakartaEE 10 ile isim uzayı değişikliğinin ötesinde ilk defa yeni özellikler geldi. Java11 ve 17 ile uyum, Java modül sistemi ile uyum kısaca Java SE ile senkronizayon ve uyum yakalandı. JakartaEE tüm hızıyla Java’nın enterprise standartlarını belirlemeye, eski standartları güncellemeye devam ediyor. JakartaEE ile Java ekosisteminin cloud-native’e doğru evrimi sağlayacak standartlar ve spesifikasyonlar belirlenmeye devam edilecektir. (Örneğin Jakarta EE 10 Core profile)
Nesrin Aşan
Java Developer and Scrum Master
Java’da Record Class’ların kullanımı
Java 14 ile birlikte gelen record classlar aslında boilerplate kodun önüne geçme konusunda güzel bir yapı.
Record class’ların varsayılan olarak immutable class oluşturması özellikle functional programming, reactive programming’e olan yönelimin artmasıyla birlikte daha fazla tercih edilebileceğini düşünüyorum. Ee Spring Boot 3.0 ile beraber de miminum java versiyonun 17 olmasını da düşünürsek 2023 yılında record class’ların kullanımının artacağını düşünüyorum.
Bununla birlikte; “Lombok mu Record class mı?” karşılaştırmalarını çok görüyorum. Java dilinde verilerimizi taşıyan objelerimizin (DTO(Data Transfer Object), carrier objects) get/set/tostring/hashcode metodlarının oluşturduğu boilerplate kodu engellemek için yıllardır Java’nın bir kütüphanesi olan Lombok kullanılıyor.
Lombok bir kütüphane.O sebeple direkt bir Lombok ve Record kıyaslaması yapmayacağım tabi ki ama POJO(Plain Old Java Object) özelinde değerlendirdiğim zaman;
özellikle mutable ve immutable olarak ayrıştırarak söylüyorum ki taşıyıcı objeler özelinde boilerplate kodun önüne geçmek için Lombok ve Record classların birbirinin yerini almak değil de beraber daha çok kullanılacağını düşünüyorum. Çünkü; Record class’ların kalıtımı desteklememesi, entity classlarda record class kullanılamaması ve Lombok’un builder yapısının pratikliği, istenilenildiğinde POJO(Plain Old Java Object) class’ını immutable yapabilmesi gibi iki yapının da kendilerine has durumları bulunmakta.
Bootcamplerin yıldızı parlamaya devam eder mi?
Yeni mezun veya çalıştığı alanı değiştirmek isteyenlerin çokça talep ettiği bootcampler özellikle pandemi ile beraber daha fazla ilgi görmeye başladı.
Yazılım sektöründe çalışmak isteyen veya Üniversitelerin yazılım ile ilgili bölümlerini okuyan insanların en büyük sorunlarından biri; derya deniz olan yazılım sektöründe şirketlerin ihtiyaçlarının neler olduğunu bilememesi. Başka bir deyişle şirketlerin sektörde çalışanlardan neler beklediğinin bilinmemesi?
Bootcamplerin en güzel yanı okullu olsun veya olmasın yazılıma dair bilgisi, becerisi olan insanları sektörün ihtiyaçlarına yönelik yetiştiyor olması.
Bunu yaparken iki yöntem kullanılıyor, ilki teknik anlamda şirketlerin genel olarak kullandıkları teknolojiler üzerinden çalışmalar yapmak ikincisi ise Mentörlük desteği. Bu sebeple bootcamp eğitmenlerinin genellikle sektörde aktif çalışan insanlardan olmasına özen gösteriliyor.
Son 2 yıldır junior developer ilanı çok az görür oldum. Çünkü şirketler bootcamp referansı ile aldıkları çalışanlardan genellikle memnun kalıyorlar. Ve bu sebeple junior ilanı vermektense bootcamplerden mezun olan kişilerle çalışmayı tercih ediyorlar.
En azından ben henüz bir bootcamp sonrası girdiği iş yerinden kendi isteği dışında işten ayrılanı henüz görmedim.
Yine pandemi ile beraber “online meeting” kavramı dünyamıza iyice yerleşti. Bunun getirdiği en güzel şey ise ülkenin her yerindeki yeteneklere erişebiliyor olmamız.
Ülkenin farklı şehirlerinde düzenlenen online bootcampler ile yazılıma dair ilgisi, becerisi olan insanlara ulaşılabiliyor. 2023 yılında bootcamplerin daha da iyileştirilerek
Ve ülkenin birçok yerindeki yetenekleri şirketlerle buluşturmaya devam edecek şekilde yıldızını daha da parlayacağını düşünüyorum.
Bunlara ek olarak 2023 yılında junior developer bootcamplerinin yanısıra ileri seviye konular için de çeşitli bootcampleri göreceğimizi düşünüyorum.
Belki junior bootcampleri gibi ücretsiz ya da cüzi miktarda bir ücrete sahip olmayacaktır ama mid seviye developer arayan şirketler için güzel bir tercih olabilir.
Ben de bu tarz bir bootcampe katılmayı, deneyimlemeyi çok isterim.
Spring & Quarkus ?
JRebel Java Developer Productivity Report’ta yer alan 2022 anketinde mikroservis projelerinde kullanılan framework sıralamasında Spring Boot %74’lik pay ile ekosistemin lideri konumundaydı.
2022 sonuna doğru Spring Boot 3.0, Spring 6.0 yayınlandı.
İlk göze çarpan özellikler Java 17’yi minimum versiyon olarak kabul etmesi ve GrallVM uyumlu native image oluşturabilmesi.
Çok daha hızlı ve efektif memory kullanımı, Spring Boot 3.0 ile dağıtık sistemlerde önemli olan latency, API status report, trace üretme, log takibi gibi observebility’yi arttıracak yeni özelliklerin de eklenmesi ve merkezileştirme ile beraber 2023 yılında da Spring framework monolit ve mikroservis projelerde tercih edilmeye devam edecektir.
Spring tarafındaki bu gelişmeleri görünce aklıma ilk gelen Quarkus ile karşılaştırmak oldu. Çünkü Quarkus kendisini Supersonic Subatomic Java Stack’i olarak tanımlamış bir framework.En yakışıklı özelliği AOT(ahead of time) compilation yaparak native image oluşturabilmesi.
Quarkus’un Jakarta EE, Eclipse Microprofile eklentileri ile entegre olması geliştiriciler için Quarkus’a geçiş sürecini yumuşak bir hale getiriyor.
Ee bir de Redhat desteği var tabi.
Toparlayacak olursam Spring’in son geliştmelerle birlikte Java ekosistemindeki liderliğini 2023 yılında da koruyacağını, Quarkus’un ise yükselişinin hız kesmeden devam edeceğini düşünüyorum.
Java Developer Productivity Report: https://www.jrebel.com/resources/java-developer-productivity-report-2022
Nihal Alıcı
Senior Software Engineer
Yazılım sektörü açısından 2023 yılının, geçmiş yıllarda da olduğu gibi çok hareketli ve değişken olacağını söylemek zor değil.
Kendi çalışma alanım olan güvenlik sektöründe sistemler arası entegrasyonun öneminin giderek artacağını düşünüyorum. Bu durum son birkaç yıldır halihazırda mevcut, ancak öncesinde ilave bir özellik gibi talep edilirken artık olmazsa olmaz olarak algılanıyor. Mesela bir bina içinde birbirinden farklı sistemler tarafından üretilen herhangi bir verinin diğer sistemler tarafından da erişilebilir olması isteniyor. Alarm, sinyal, çağrı, vb. her şey temelde bir veri olduğu için bu durum veri kavramına bakış açımızı da değiştiriyor. Vaktiyle Satya Nadella’nın, şirketler için yeni para birimi olarak tanımladığı veri, artık taşıdığı bilgiden daha değerli bir olguya işaret ediyor. Haberleşme teknolojileri ile bir uçtan bir uca taşınıyor, akıllı algoritmalarla yorumlanıyor, AI ve ML sistemleri için hammadde işlevi görüyor.
Güvenlik sistemleri açısından ise herhangi bir noktada üretilmiş verinin, başka herhangi bir noktada anında izlenebilir olması artık lüks değil hatta ihtiyaç. Veriyi kaydetmenin ötesinde bunların yorumlanması ve gerçek zamanlı iletilmesi giderek önem kazanıyor. Bu yüzden verilerin toplandığı merkezlerde/sunucularda işlenmesi yerine, uçtaki cihazların akıllılaşması ve veriyi yorumlayıp göndermesi giderek daha çok tercih edilen bir çözüm oluyor. Mesela güvenlik kameraları video kayıtlarındaki içerikleri analiz edip olağan dışı durumları kendisi tespit edebiliyor ya da kurgulanan senaryoya göre farklı işlemler yapabiliyor. Bu durum kodlama yükünün sunucudan uçlara kaymasına sebep oluyor ki, donanım tarafındaki gelişmeleri de göz önüne alınca bu eğilimin artacağını söylemek mümkün. Tabi bu beraberinde gömülü programlamayı da daha popüler hale getirecektir. Yazılım mimarilerinde mikroservislere geçiş olgusuna benzer bir eğilim görüyorum ben burada. Haberleşme mekanizmaları, buna bağlı olarak veri yapıları ve iletimindeki standartlaşma ve protokoller gelişmeye devam edecektir. Çin’de daha yaygın olarak uygulandığını gördüğümüz, bizde de sıkça konuşulmaya başlanan akıllı şehir konseptlerinin teknolojiyle birlikte daha hızlı bir şekilde hayatımıza gireceğini söyleyebiliriz. Bu bağlamda ihtiyaç duyulan yazılım araç ve teknikleri de radarımıza girmeli diye düşünüyorum.
Çalışma modellerimiz ve iş yapma biçimlerimiz açısından da aşağıdaki alanlarda göze çarpan gelişmeler mevcut.
Uzaktan çalışma
Yazılımcılar için aslında pandemiden önce de uygulanmaya başlanan uzaktan çalışma modeli bu süreçle birlikte artık bir norm haline geldi. Pek çok yazılım firması pandemi sonrasında da full remote ya da hibrit çalışma modellerinde kaldı. Bu eğilim yazılım sektöründe zaten beklenen bir sonuçtu, pandemi geçişi biraz hızlandırmış oldu sadece. Firmalar açısından da açık ofis, vb. uygulamalara izin verdiği için maliyetleri düşürücü etkisi oldu. Önümüzdeki zamanlarda da uzaktan çalışma, norm olarak kalmaya devam edecek gibi duruyor. Hatta eskiden iş görüşmesinde “uzaktan çalışma imkanı var mı” diye soran yazılımcıların artık “ofise gelip çalışma imkanı var mı” diye sorduğunu bile görebiliriz yakın gelecekte.
Çalışan sirkülasyonu & Outsourcing
Yazılım sektörünün hızla genişlemesi geliştiricilere olan talebi de artırdı ve firmalar için yazılımcı maliyetleri son yıllarda hiç olmadığı kadar yükseldi. Özellikle ülkemizdeki yetişmiş elemanların yurt dışına kaymasıyla birlikte, belli alanlarda uzmanlaşmış kişiler bulmak zorlaştı. Çalışanların şirketler arası sirkülasyonu arttı ve sonuç olarak bir firmada ortalama çalışma süresi oldukça azaldı. Bu şartlar altında özellikle maddi açıdan güçlü firmalar çalışanlarını yan haklar, sosyal imkanlar gibi yöntemlerle ellerinde tutmaya çalışıyor. Çünkü genç nesil için dolgun ücretler de bir yerden sonra ikna edici olmayabiliyor. Bu firmalar aynı zamanda adeta oyunlaştırma teknikleri ile iş yapma süreçlerini eğlenceli hale getirmeye ve bu şekilde çalışan bağlılığını artırmaya çalışıyorlar. Diğer firmalar için ise yazılım hizmetlerini dışardan almak daha az maliyetli ve daha az riskli olabiliyor. Dolayısıyla yazılımda dış kaynak kullanımının da giderek artacağını düşünüyorum.
Alaylı yazılımcılar
Son zamanlarda sıkça karşılaştığım durumlardan biri de başka mesleklerden olan gençlerin yazılım sektörüne geçmek istemeleri, hani alaylı tabir ettiğimiz gibi. Sektördeki talep, buna bağlı ücretlerdeki artış ve iş imkanları, yazılımcılığı çoğu insanın gözünde cazip hale getiriyor. İnternette bu alanda kendi kendine öğrenme sağlayacak materyallerin bolluğu ve kolay erişilebilir olması da bu durumu mümkün kılıyor. Bu tip hikayeler herkes için iyi sonla bitmese de azimle ve kararlılıkla çalışan, açık projelerde ya da topluluklarda yaptıkları katkılarla kendini ispatlayan ve başarıya ulaşanlar da oluyor tabi. Bu eğilimin de artacağını düşünüyorum. Tabi burada yazılım geliştirme araçlarına takılıp kalmaktan ziyade işin temel mantığını iyi kavramış, bu konuda kendini geliştiren, sofistike işler üretebilen ve böylelikle araçları kullanmaktan bir adım ötesine geçebilenler daima avantajlı olacaktır.
Eskiden bilim ve teknolojideki ilerlemenin insanların hayal gücünün ötesinde olduğunu düşünürdüm. Ama artık insanların da bu gelişmelerden ilham alarak hayal güçlerini geliştirme konusunda daha başarılı olduklarını görüyorum.
Hayal ettiğimiz güzel işleri başarabileceğimiz bir yıl olması dileğiyle…
Onur Dayıbaşı
Frontend Lead
2023 yılında Frontend alanında bizi neler bekliyor? Frontend geliştirme işlerini yazılım geliştiricinin elinden alarak daha fazla otomatikleştirme ve soyutlama çalışmaları devam edecektir.
Bu nasıl gerçekleşiyor? Yapay zekâ daha fazla hayatımıza giriyor olacak. CoPilot ve TabNine gibi eklentiler, kod editörlerinde kodun %40’a yakınını otomatik önermeler ile geliştiricilerin işlerini hızlandırmaya başladı bile. Sonrasında duyurulan ChatGPT ile durum artık önermenin ötesinde UI üretiminin gelecek nesillerde insan gereksinimi kalmadan yapılabileceği veya çok az dokunuşların olacağı bir döneme doğru gidiyoruz.
React, Vue, Svelte, etc. are likely to be the last JavaScript frameworks intended to be used directly by humans. (Jared Palmer Director of Frameworks & Developer Tools)
Yapay Zekâ dışında diğer bir neden de No-code ve Low-code araçları her geçen gün daha da gelişiyorlar. Amaç koda daha az girerek sürükle bıraklar ile uygulamalar tasarlamayı vb. sağlayan araçlar ile yazılımdan çok ürün geliştirme ve tasarıma odaklanmak.
Ürün tasarım alanında Figma defacto oldu diyebiliriz. Adobe’nin Figma’yı 20 milyar $ gibi bir rakama satın alması da bunun göstergesi. Mevcut tasarımcılar ve geliştiriciler bir noktadan Figma aracını dokunup öğrenmesi gerekiyor. Yukarıda bahsettiğim No-code araçlara Figma üzerinden birtakım üretimler ile gitme çalışmaları daha da artıyor olacak.
Bu sene React ve Next.JS Frontend kütüphaneleri alanında üstünlüğünün (Vue, Angular, Svelte, Solid gibi diğer kütüphanelere göre) artarak devam ettiğini görebilirsiniz. Bunun bir nedeni
- SPA(Single Page Application) için farklı uygulama ihtiyaçlarını CSR (ClientSideRendering) ve SSR (ServerSideRendering) ve bunun arasındaki Hybrid çözümlerde React ve framework’lerinin piyasa tarafından tercih edilmesi
- Aynı bilgi birikimi ile Native, Desktop ve VR çözümlerinde (React Native, Electron..) Meta Language olarak React’ı kullanabiliyor olmak.
- FullStack uygulama geliştirmede Next.JS, Remix gibi React kullanan framework’lerin Edge Computing ve Serverless teknolojiler ile daha uyumlu daha organize bir şekilde çalışır hale gelmesi. Artık uygun fiyatlı hızlı uygulama geliştirmeleri. Backend servislerinin çok hızlı bir şekilde Firebase, Supabase, AWS, Microsoft’un Serverless servisleri ile, Frontend’in ise Netlify, Vercel, Fly vb hosting imkanlarının bu geliştirmeleri oldukça kolaylaştırması.
Piyasaya bir yandan React’i satın aldığını söylerken bir yandan da belli dikeylerde Headless çalışma mantıklarına doğru ilerlemeye başladık. Routing, Table, Map, StateMachines, Stores, Caching, Styling gibi bir çok konuda bir framework özel çalışmak yerine Vue, Angular, Solid, Svelte vb… ile de birlikte çalışabilen kütüphaneler ortaya çıkmış durumda Örneğin TanStack çıkardığı tüm kütüphaneleri React Query → TanStack Query, Table ve Router’a dönüştürdü. Bunun benzeri bir çok Headless kütüphane mantığında çalışan kütüphaneler oluşmaya başladı ve bu durum gelişerek devam edecek.
Bir diğer trend Web Development ve Toolkit Performans alanında gerçekleşti. JavaScript/TypeScript çalıştıran JavaScript RunTime Node.JS alternatif , Deno ve Bun.JS gibi yeni Runtime’lar çıkmış durumda. Benzer durum Frontend uygulamalarında Bundle ve Hot Deploy gibi yeteneklere sahip Webpack alternatifi Vite.JS ve Vercel’in Turbosu gibi yeni ve daha performanslı araçlar geliştirildi. Bu türde performans arttırıcı araçların geliştirilmesinin devam edeceğini düşünüyorum.
2023 ile ilgili bahsetmek istediğim diğer bir konu da sektördeki ekonomik kriz ve yazılım şirketlerinin bundan etkilenerek daralma ve işten çıkarma politikaları. 2022’de işten çıkarmalarda ciddi bir artış ile 150 bine yakın kişi işten ayrıldı, iş değiştirmek zorunda kaldı. Bunun ile birlikte insanların pandemi sonrasında Remote çalışma isteklerinin devam ettiğine ve arttığına dikkat edersek, giderek büyük şirketlerin küçüldüğü, daha bireysel ve ufak şirketlerin ortaya çıktığı ve bunların ihtiyaçlarını giderecek yazılımlar ve araçların daha geliştiği bir döneme gidiyor olacağız.
Sedat Kapanoğlu
Software Architect
Havalı kelimelerin 2023 yol haritası
Uyarı: Bu yazıyı COVID’ken yazdım. Her hata ve eksikliğin sebebi SARS-COV-2 virüsüdür.
Blockchain öldü, yaşasın blockchain! Kripto para piyasalarının 2022'deki ekonomik krizle paralel dev çöküşü iyi oldu. Birincisi, yüzlerce yazılımcı Solidity öğrenmek zorunda kalmadı. İkincisi, ortalık o kadar çok 2–3 sayfa whitepaper’lı çerçöp projeyle dolmuştu ki, bunların hepsinin ortadan yok olması iyi bir bahar temizliği oldu. Kripto para’ya piyango muamelesi yapanlar için de bir gerçeklik tazelemesi olmuştur. Darısı Bitcoin’in başına. Sadece bu teknolojiye gerçekten bir katma değer olarak bakan girişimlerin (Ethereum, Avalanche vs) uzun vadede tekrar bir şeyler başarabileceğini düşünüyorum. O zamana kadar da bu konuya yakından eğilmeye gerek kalmadı. Şimdilik 2023'te kemer sıkmaya devam.
Sizce de artık odadaki yapay zekâ hakkında konuşma zamanı gelmedi mi? ABD’ye ilk geldiğimde Torch kullanarak Ekşi Sözlük entry’lerimle bir sinir ağı modeli eğitmiş, “hadi bana benim yazdığım türde bir entry yaz” deyince çıktı olarak rastgele harflerden ibaret bir çöp almıştım. Bu yapay zekânın başarısızlığı mıydı yoksa yazdıklarımın kalitesine dair bir eleştiri miydi asla bilemeyeceğiz. 2022'de ChatGPT insan ve makine arasındaki etkileşim konusunda çok uçuk noktalara gidebileceğimizin müjdesini verdi. Henüz bu sürecin çok başında olduğumuzdan evde kendi sinir ağı modelini oluşturup üstünde bir şeyler eğitmek, ürettirmek gibi bir hobinin artık her yazılımcının hayatında yer etmesi gerektiğini düşünüyorum. Bu vesileyle de çok mühim bir noktaya değinmek istiyorum: Masaüstü bilgisayarlar.
COVID döneminde evden çalışmanın yaygınlaşmasıyla birlikte mobilite ihtiyaçları oldukça azaldı. Maddi imkanı elveren her yazılımcının evinde bir masaüstü bilgisayara yatırım yapması gerektiğini düşünüyorum. Laptop’ınızdaki işlemci masaüstü işlemcinizden iki kat hızlı olsa bile bu hızı sürekli sağlayamıyor. Çok ısınan bir laptop önlem olarak işlemci frekansını kısıyor, grafik işlemcisini arka plana atıyor, ufalan sabunu yeni sabunun üstüne yapıştırmaya başlıyor. Oysa masaüstünde böyle dertler yok. Adeta peşin satan ile veresiye satan farkı gibi. Masaüstü coştukça coşuyor. Termalleri nefis. Bulutların üstünde, adeta bir kanatlı unicorn gibi. Bir yazılımcının 2023 yılında sırf Starbucks’tan foto paylaşmak için derlemenin bitmesini bu kadar beklemeye razı olması doğru değil.
Elon Musk’ın Twitter CEO’su olup terör estirmeye başlamasıyla birlikte pek çok yönetici “yoksa doğrusu böyle mi yapmaktır?” diye düşünmeye ve toplantı odasındaki langırt masasına sitemkar bakışlar atmaya başladı. Eğer Twitter tez zamanda batmazsa, kendi tartı mekanizmaları olmayan sağduyudan yoksun yöneticilerin Elon Musk şablonunu harfiyen taklit etmeye başlayacaklarını öngörüyorum. O yüzden işyeri seçerken bir köle düzenine teslim olmamak adına işyeri kültürüne daha çok önem vermekte ve daha çok soruşturmakta fayda var. Öte yandan bu tür sarsıntılar “sahi biz bu tercihleri zamanında niye yapmıştık?” hatırlatmasına yol açacağından sağlıklı da. Uzun vadede kimse langırt masasından hesap sormaya kalkmayacaktır.
Uzaktan çalışmanın kötü bir yanı iş ve yaşam dengesinin “mesai saati” ve “ofis” adında doğal ayrımları olmaması. Bunun en büyük tehlikesi iş ve yaşamın birbirinin üstüne binip zihinsel ve fiziksel sağlığınızı çökertmesi. O yüzden önümüzdeki yıllarda uzaktan çalışanların hayatlarının kontrolünü ellerine alması daha da önemli hale gelecek. Özellikle düzenli egzersiz (hangisi size cazip ve keyifli geliyorsa, yürümek bile faydalı), her gün düzenli güneş görmek ve günün sadece belli saatini işe ayırıp kalanında işi hiç düşünmemek gibi konularda çaba göstermeniz uzun vadede müthiş faydalı olur. 40'lı yaşlarınızda beni hatırlarsınız, “lan bi adam vardı ne dediydi, iyi bişey dediydi ama, amaan neyse” diye. “Haftada birkaç gün ofis” modeline geçen işyerlerinde de bu ofis ziyaretlerini bir egzersiz ve mesai saati ayrıştırma fırsatı olarak değerlendirmenizde fayda var.
Kısa kısa 2023 tahminlerim:
- Yazılıma yeni başlayacaklar yine hangi programlama diliyle başlayacaklarını bilemediklerinden “o iş zor ya” diyerek planlarını rafa kaldıracaklar. Hani çizim yapma hevesin vardır ama hangi kalemle başlayacağını bilemediğinden çizmekten vazgeçersin ya öyle.
- Geçen sene Manning’in en çok satanlar listesine giren kitabım Street Coder’ın Türkçe çevirisi bu sene çıkacak, hissediyorum.
- 2023'te “alaylı yazılımcıya mühendis denebilir mi?” tartışmasının çıkma zamanı tahminim Eylül ayı. Günler kısalıp insanlar melankolikleştikçe kendilerine yoktan dert yaratma oranları artıyor.
- Frontend geliştirmenin backend’e göre daha kolay olduğu tartışması da Kasım ayında Merkür retrosuna girdiğimizde olacak.
Selin Tunç
Expert Fullstack Software Engineer
Selamlar, fullstack developer olarak tam olarak hangi alandaki trendlerden bahsetmeyi seçsem karar veremedim. Kendimden yola çıkarak 2023 ve sonraki yıllarda yazılım geliştirici olarak kariyere devam edebilmek için gereken teknik ve sosyal beceri trendlerinden bahsetmeye karar verdim.
Bana göre yazılım dilleri, teknolojileri değişir baki olan öğrenme isteği ve adapte olabilme yeteneğidir. Keyifli okumalar. :)
Yazımın ilk kısmında sosyal beceri trendlerine yer vermek istedim çünkü 2023 ve sonraki yıllarda tam da bu alandaki özellikler ayırt edici olacak. Yazılım projelerinin bir takım işi olduğunun farkında olan, kişiler arası iletişimi gelişmiş ve işbirliği içerisinde işleri ilerleten, o iş bende deyip sorumluluk alıp işleri zamanında tamamlayanlar ve bunu yaparken de iş — özel yaşam dengesinin önemini kavrayanlar fark yaratacak. Geçtiğimiz yıl “büyük istifa”, “sessiz istifa”, “kariyer yedekleme” kavramıyla tanıştık ve anladık ki Pandemi dönemi sonrasında çalışanlar artık işlerinde amaç arıyor ve çalışanlarına bunu sunabilen şirketler trend olacak. 2022 yine büyük şirketlerin işten çıkarma dalgalarına şok olarak geçirdiğimiz bir yıl oldu. 2023 ve sonraki yıllar çalışanlarına onur kırıcı davranışlar sergilemeyen vefalı şirketlerin yılı olacak.
Biraz da teknik trendlerden bahsetmek isterim. Önce ön uç (frontend) trendleri. Şu an aktif olarak kullanılan 100 civarı ön üç framework ya da kütüphanesi bulunuyor. Angular, React ve Vue… Web teknolojilerinin geleceği ile uyumlu ilerledikleri için sanki her daim rekabet bu üçü arasında olur gibi gelse de son yıllarda Web teknolojileri değişip/dönüştükçe ihtiyaçlar da değiştiği için listeye yeni framework ve kütüphaneler de ekleniyor. Bunlardan en çok duyulanlar ise 2021 yılında Stackoverflow’da en sevilen framework seçilen Svelte & SvelteKit ile Netflix ve Tiktok gibi firmaların tercih ettiği Nextjs. Framework ya da kütüphaneyi fanatikçe sevmemek, proje ve kullanıcı ihtiyaçlarına uygun teknolojiyi kullanmak, bugünün bilgisiyle yetinmeyip yeniliklere adapte olmak bugünün, yarının kısacası her zamanın trendi. :) Arka uç için 27 yaşında ve 19. Versiyonunda olmasına rağmen kurumsal uygulamalarda halen en çok tercih edilen Java programlama dilinden bahsetmek isterim. Java‘nın son versiyonlarındaki inovasyonlar güvenlikten ödün vermeden rakiplerinin sunduğu geliştirme kolaylığını sağlamış oldu. Devam eden Panama, Amber ve Loom gibi projelerle de cloud, on-prem ve hibrit uygulamalarda uzun yıllar tercih edilmeye devam edilmesi hedefleniyor. Arka tarafta da dilde çıkan son yenilikleri yakından takip etmek, güncel geliştirme trendlerine uyum sağlamak her zamanın trendi.
Yazımın son kısmında bir trendden daha bahsetmek isterim. Teknik topluluklara dahil olmak, sorumluluk almak, bilgiyi paylaşmak, senden farklı düşüneni ya da yazılım geliştirici olmayanları küçümsememek 2023 yılının ve sonraki yılların trendi olacak. Sağlıkla kalın, mutlu kalın.
Serhat Can
Co-founder at Resmo
Bir süredir aktif kod yazmayan, girişimcilik tarafına geçmiş biri olarak paylaştığım konular eskisi kadar teknik olmayacak. Tabi aktif kod yazmamakla beraber güvenlik ve DevOps odaklı teknik insanlara yönelik ürün geliştiren bir girişimin kurucu ortağı olduğum ve topluluk tarafında aktif görev almaya devam ettiğim için, özellikle bu alanlarda güncel gelişmeleri yakından takip ediyorum. Bu kısa yazımda sizlere 2023 yılında teknoloji sektörü, Cloud ve DevOps alanlarında bizi bekleyen önemli bazı trendlerden bahsedeceğim.
Kalıcı olarak hibrit çalışma modeli
2023, artık “normal”e geri dönüşün pek mümkün olmadığını anladığımız bir yıl olacak. Hem ofiste hem uzaktan çalışmayı tatmış bir ekosistem günün sonunda tabiri caizse her iki tarafın da güzel taraflarını ister duruma geldi. Bu da ofis opsiyonlu uzaktan çalışma trendinin artacağını gösteriyor, ki sosyal varlıklar olduğumuz için bence de en doğru çalışma şekli bu.
Türk startuplarında da hisse opsiyonu standard hale gelecek
Ülkemizden çıkan başarılı startup sayısının artması ve yazılım globalliği dolayısıyla, Amerika’da yıllardır uygulanan stock option yani çalışana şirketten hisse alma opsiyonu sağlanması hakkı artık Türkiye’de de popüler hale geldi. İş verenlerin de bunun oldukça mantıklı bir yan hak olduğunun farkına vardığını düşünüyorum. Bu sebeple önümüzdeki sene itibariyle özellikle startuplarda bu yaklaşımın standard olacağı ve daha büyük firmalarda da konuşulmaya başlanacağını düşünüyorum.
Fiziksel etkinliklere dönüş
Bu sene adeta 2019–2020’ye dönüş olacağını ve konferans patlaması yaşacağını öngörüyorum. Bunun en büyük sebebi bu etkinlikleri ve sosyalleşmeyi özlemiş olmamız. Sizlere önerim ilginizi çeken en az bir etkinliğe katılın. Konferans olmasa bile haftaiçi akşamları birçok etkinlik düzenleniyor ve çok değerli insanlar bu etkinliklere katılıyor. Mutlaka aktif olun ve çevrenizi geliştirin. Pişman olmayacaksınız.
Serverless kavramı değişim geçiriyor
Her sene katılma fırsatı bulduğum AWS’in Las Vegas’ta gerçekleşen AWS re:Invent etkinliğinde net bir şekilde farkettiğim konulardan biri Serverless olarak tanımlanan servislerin artık tek başına her işinizi görecek şekilde pazarlanması yerine, diğer servisleri birbirine bağlayan ve ihtiyaç halinde problemlerinizi çözen servisler olarak pazarlanmasıydı. Alışık olduğumuz geliştirme ortamları, hali hazırda elimizde olan uygulamalar ve en önemlisi ekiplerin sahip olduğu know-how düşünüldüğünde bunun çok daha doğru ve Serverless olarak tabir edilen servislerin geleceği için sağlıklı bir yaklaşım olduğunu düşünüyorum. Servis sayısının artması Cloud uzmanlığının değerinin de her geçen gün arttığını gösteriyor. DevOps ve Cloud alanında ihtiyaç artarak devam ediyor. Bu tarz pozisyonlara geçiş yapmak isteyenler için daha iyi bir zaman olamaz.
DevOps bitiyor ve platform engineering mi geliyor?
DevOps kavramı hayatımıza gireli 13 seneyi geçti. O kadar çok etkinlik yapıldı, o kadar çok söz söylendi ki, agile veya ITSM gibi birçok kavramda olduğu gibi DevOps kelimesi de eskimeye başladı. DevOps’un arkasındaki fikirler hiç bir zaman eskimeyecek, halen daha DevOps hakkında fikri olmayan veya doğru pratikleri uygulamaya başlayamamış ve geç kalmış birçok firma var. Ancak günün sonunda tüm bu kavramlar pazarlama için önemli ve bir zaman sonra yenilik gerekiyor. Platform engineering kavramı birçok diğer kavram gibi selefininin next-gen’i olduğunu iddia ediyor. Yeni bir fikir değil ve şuan DevOps’a doğru yaklaşan birçok büyük firmanın yararlandığı bir kavram. Öngörüm bu tarz kavramlar hakkında bilgi sahibi olmak ancak hype driven işler yapmamak. Platform engineering kavramı, DevOps kadar popüler olur mu emin değilim ancak bir bakmakta fayda var.
AI ilk defa gerçekten önemli problemleri çözebilir gibi
ChatGPT müthiş bir ürün. Her şeyin ötesinde bu kadar ilgi çekmesinin en büyük sebebi ise tarihte ilk defa büyük kitlelerin elinde yapay zekânın if else’in ötesine geçmiş olması. Bu, ben dahil birçok kişiyi heyecanlandırıyor. Bu sene ChatGPT, yarattığı hype ve getireceği yapay zekâ servis dalgasını takip etmekte fayda var. API sağlanması veya servis olarak sunulması durumunda geliştirilebilecek uygulamaları hayal etmek bile heyecan verici.
Yazıyı çok uzatmadan 2023 yılının geliştiriciler için heyecanlı geçeceğini ön görüyorum. Her ne kadar ekonomik problemler teknoloji sektörünü etkilese de, bu aynı zamanda bir fırsat dalgası yaratıyor. Mutlaka güncel kalıp fırsatları kovalamalıyız.
Süleyman Fazıl Yeşil
Senior Software Engineer
Veee kazananı açıklıyorum…
“90’ların ortalarında insanlar, ilişkisel veri tabanlarının ortadan kalkacağını ve yerine veri tabanından belleğe verileri aktarırken satırlardan nesnelere bir çevrim yapma zorunluluğunu ortadan kaldıran ve bellekteki nesnelerin direkt veri tabanına kaydedilmesini sağlayan nesne veri tabanlarının geleceğini söylüyorlardı. Fakat hepimiz orada ne olduğunu gördük. Benim gibi nesne veri tabanlarının ileride dominant hale geleceğini öngörenler yanıldı. Ah şey yine de beni dinlemeye devam ediyorsunuz işte. “
- Martin Fowler, NoSQL’e giriş konuşmasından
Artık kanıksamışsınızdır. Her gün haber sitelerinde, yıllardır kullanmakta olduğunuz bir teknolojinin artık ölmeye başladığını ve yerine yenisinin geldiğini muştulayan haberlere rastlıyorsunuzdur.
- “Java ölüyor mu?”
- “React öldü, çok yaşa Vue.js”
- “SOAP öldü mü?”
- “REST ölüyor, çok yaşa GraphQL”
- “REST ölüyor, çok yaşa gRPC”
Teknolojiyi kendi başına müstakil bir varlık olarak ele alamazsınız, izole biçimde değerlendiremezsiniz. Teknolojiyi sadece faydaları ve zararları bağlamında değerlendiremezsiniz. Teknolojiyi sadece uyandırdığı heyecanla, trend olup gündemi yoğun biçimde meşgul etmesiyle, popülaritesiyle değerlendiremezsiniz. Teknoloji bir bağlam ve ilişkiler ağı içinde değerlendirilmeli. Nasıl ki bir şirketteki kurumsal kültürü pat diye değiştiremiyorsanız, yıllardır kullanılagelen teknolojiler de öyle bir anda yok olmaz. Elektrikli araç teknolojisinin ortaya çıkması, sürücüsüz araçların ortaya çıkması geleneksel fosil yakıtla çalışan arabaları bir anda ortadan kaldırmaz. Çünkü koca koca şirketler o teknolojilere çok büyük yatırımlar yapmışlardır. İnsanlar kullandıkları araçlara, alışkanlıklara ve kültüre yatırım yapmış, öğrenmiş ve alışmışlardır. Yatırımlarının bir anda çöpe gitmesine herkes direnir, ayak direr ve itiraz eder. Pandeminin çalışma hayatını bir anda bir daha geri dönülmemek üzere değiştirmesi gibi “zor oyunu bozar” türü istisnaları bir kenara bırakırsanız, yıkıcı değişiklerin iş dünyasını, sosyal hayatı değiştirmesi zaman alır. Bir şeylerin rayından çıktığını, kurulu düzenin değişmekte olduğunu hissedersiniz. Fakat yeninin norm haline gelmesi, normalleşmesi ve yeni normal olması zaman alır. Bu yıl benim idrak ettiğim en bariz gelişme, Kubernetes’in artık BT altyapılarının yeni normali haline gelmiş olmasıydı. Kubernetes’e altyapının SQL’i diyebiliriz artık. Birlikte çalışmaya başladığımız büyük finans kuruluşları Kubernetes temelli platformları benimsemiş durumdalar. OpenShift, Rancher, Anthos gibi Kubernetes yönetim sistemleri artık büyük geleneksel kurumlar tarafından yoğun biçimde kullanılıyor. RedHat, VMWare, Google, Amazon, Microsoft ve diğer büyük tedarikçi firmaların sunduğu ürünler ve hizmetler üzerinden BT sektörü artık bu modern altyapılara büyük yatırımlar yapıyorlar. Yıllardır kullanılagelen altyapılar bir bir dönüştürülüyor. Bu da bize artık altyapısal dönüşümde, bulut sistemlerin kullanımında, otomasyonda ve DevOps pratiklerinin yerleşmesinde kritik bir eşiği aştığımızı haber veriyor. Yeni normalin ufukta belirgin bir biçimde gözüktüğünü söylüyor.
Turan Sert
Board Member | Advisor
Web3 Dünyasında Gelişmenin Habercisi Geliştiriciler
Bu yazımızda, artık geleneksel hale gelmeye başlayan Electric Capital’in hazırladığı ‘Geliştirici Raporu’ndan ilginç çıkarımları paylaşacağız.
Kullanıcılara daha fazla söz hakkı ve oluşan katma değerden daha fazla pay vermeyi hedefleyen Web3'ün itici gücünü topluluklar oluşturuyor. Temeline insanı alan bu oluşumun kullanıcılar dışında kilit taşlarından biri de, bu dünyayı inşa eden yazılımcılar (bir başka deyişle geliştiriciler).
Hatırlayanlar olacaktır, bundan bir yıl önce yine bu satırlarda Electric Capital tarafından yayınlanan geliştirici raporunu detaylıca ele almıştık. (Konu hakkında hiçbir bilgisi olmayanların öncelikle o yazıya göz atmasını şiddetle tavsiye ederim.)
Artık geleneksel hale gelmeye başlayan geliştirici raporunun sonuncusu Ocak ayının ikinci haftasında yayınlandı. Gelin bu yazımızda raporun önemli noktalarına göz gezdirelim, ancak daha öncesinde bu rapor neden önemli, ne kadar kapsayıcı ve eksik yönleri neler sorularına yanıt arayalım.
(Not: Raporun kısa versiyonuna şuradan ulaşabilirsiniz)
Neden önemli bir rapor bu?
Hepimiz hemen her gün Web3 dünyası ile ilgili haberlere boğulmuş durumdayız. “Hangi blok zincir ne kadar büyümüş? Kim ne kadar yatırım almış? Kim geliştiricilere ne kadar teşvik vermiş? Kriz olunca, geliştiriciler Web3'ü terk etmeye mi başlamış?” gibi… Electric Capital’in raporu, işte bu dünyada gerçekten ne olup bittiğini sayılara dayalı somut bir şekilde ortaya koymaya çalışan en kapsamlı çalışmalardan bir tanesi.
Temel girdi olarak kendilerine ‘açık kaynak’ projelerin ortak toplanma alanı olan GitHub deposunu alıyorlar. Burada bulunan yaklaşık 250 milyona yakın kod kayıtlarını (ya da yüklemelerini) sıkı bir temizlemeden geçiriyorlar. Örneğin başkasından kopyalanmış orijinal olmayan kodları silerek yaklaşık %65'ini en baştan eliyorlar¹. Sonrasında da bu kayıtları geliştiricilerin tipi (tam/yarı zamanlı, tek seferlik) tecrübesi (tecrübeli/yeni girmiş, tek/çoklu ağda çalışan vb), çalıştığı ağ (Ethereum, Bitcoin, alternatif L1'ler, L2'ler vb) ve son raporda olduğu gibi içinde bulundukları kullanım alanı (DeFi, NFT) gibi farklı kriterlerde toplam 180 sayfalık bir rapor haline getiriyorlar. Bu arada raporu oluşturan bütün datayı da ‘açık kaynak’ olarak ekosisteme sunuyorlar.
Rapor şimdiye kadar gördüğümüz en kapsamlı çalışma olsa da, elbette kendi içinde belirli kısıtları var. Bunlardan en önemlisi, kapsamın sadece ‘açık kaynak’ depoları içeriyor olması; pek çok proje (özellikle NFT’lerde) kapalı olarak çalıştıkları ve sonrasında sonuçları GitHub’a koydukları için kayıt sayıları düşük olabiliyor. Bu, her ne kadar haklı bir eleştiri olarak görünse de, karşı argüman olarak yazılımları kapalı bir şekilde geliştirmenin tam merkeziyetsizlik ve açık kaynak ruhuna aykırı olduğunu savunanlar da var. Bu arada ileride raporun kapsamına GitHub depolarının yanında, blok zincire direkt olarak yüklenmiş akıllı kontrat kodlarının da dahil edilmesinin planlandığını belirletelim.
Bir başka göz ardı edilen nokta, özellikle geliştirme sürecinde — başta yapılan testler olmak üzere — pek çok mühendislik işinin direkt GitHub’a kayıt gerektirmediği için kapsama girmiyor oluşu. Buna ek olarak, GitHub’a konan her kayıt da aynı eforu gerektirmeyebiliyor; basit ya da rutin bir değişiklik ile üzerine aylarca kafa yorulduktan sonra yapılan bir güncelleme bu rapora göre eşit muamele görüyor.
Yine de yukarıdaki bütün kısıtlarına rağmen rapor, özellikle yıldan yıla değişen trendleri ve farklı blok zincirlerin gelişimlerini göstermesi açısından ileriye yönelik önemli göstergeleri içinde barındırabiliyor. Gelin şimdi de raporun içeriğine bakalım:
Neler içeriyor rapor?
Rapor, ilk olarak yıllar itibariyle geliştirici sayılarının nasıl geliştiğine bakıyor. Burada önemli bir ayrıntı geliştiricilerin tam, yarı ve tek-seferlik geliştiriciler olarak ayrılmış olması² . Daha sonrasında iki büyük — Bitcoin ile Ethereum — ve ardından gelen en büyük 200 ekosistemin karşılaştırmalı geliştirici sayıları inceleniyor. Bu karşılaştırma, özellikle çok sık duyduğumuz alternatif zincirlerin büyüklükleri ve gelişimlerini anlayabilmek için oldukça faydalı. Raporda son olarak özellikle iki büyük kullanım alanı olan merkeziyetsiz finans (DeFi) ve NFT alanına da spot ışık tutulmakta.
Raporun başındaki yönetici özeti (sayfa 5), aslında belki de Twitter’dan da okuduğunuz temel bazı verileri (TL; DR:) vermesi açısından önemli. Gelin madde madde bunları sıralayalım:
- Aralık 2022 itibariyle Web3 üzerinde çalışan toplam 23,343 geliştirici bulunmakta
- Her ay açık kaynak projelere GitHub üzerinde 471,000'den fazla kayıt yüklenmekte
- Kripto varlık değerlerindeki keskin düşüşe rağmen geliştirici sayısında bir önceki yıla göre %5 artış var. Özellikle, tam zamanlı geliştiriciler içinde bu oran %8'e yükseliyor.
- 2022 yılı içinde 61,000'den fazla geliştirici koda katkıda bulunmuş ki, bu tüm zamanların en yükseği³
- Kripto dünyasının şu anki toplam piyasa değeri bir önceki boğa piyasası olan Ocak 2018 ile hemen hemen aynı olmasına rağmen, geliştirici sayısı aynı döneme kıyasla %297 oranında artmış
- Ocak 2018'den bu yana geliştirici sayılarında Bitcoin’de 3 kat, Ethereum’da 5 kat artış görülürken, diğer daha küçük ekosistemlerde de benzer şekilde 5 katı geçen artışlar yaşanmış
- Bitcoin ve Ethereum ağır toplar olsa da, geliştiricilerin %72'si diğer ekosistemlerde aktifler
- Geliştiricilerin %15'inden fazlası (3,901 geliştirici) merkeziyetsiz finans alanında çalışırken, %4 kadarı (900+) NFT alanında kod yazıyorlar.
Raporda ilgi çeken noktalar neler?
Yukarıda raporun ekosistem ile kuşbakışı özetini gördük. Detaylarda ilgi çekebilecek diğer noktalar da şu şekilde (İlgi çeken bir bilgiyi kaynağından görmek isterseniz rapordaki ilgili sayfa numarasına gidebilirsiniz):
Geliştirici sayılarının yıl yıl değişimi
Geliştirici sayısında en tepe nokta Haziran 2022'de 26 bin ile görülürken sonrasında altı ay içinde yaklaşık %11'lik bir düşüş gerçekleşmiş. (Sayfa 35) Yarı-zamanlı ve tek-seferlik geliştiricilerin katkılarının tam zamanlılara göre çok daha fazla düşüş gösterdiğini de belirtelim (yarı zamanlı %13, tek seferlik %14'e karşılık tam zamanlı %7). (Sayfa 36)
Sektöre tam zamanlı olarak giren geliştiricilerin sektörde kalışları genel olarak da daha yüksek. Örneğin, tam zamanlıların %30'u bir sonraki yıl da kod girmeye devam ederken, bu oran tüm geliştiricilerde %8 civarında. (Sayfa 39) Benzer şekilde sektörden ayrılan (GitHub’a kayıt yapmayan) geliştiricilerin %95'i yarı-zamanlı ve tek-seferlik geliştiriciler. (Sayfa 41)
Sektöre uzun vadeli yukarıdan baktığımızda ilgi çeken bir nokta ise yıllar itibariyle geliştirici sayılarının ağların toplam değerine oranı (Sayfa 18)
Kaynak: Electric Capital Developer Report — Sayfa 18
Kripto ağlarının toplam piyasa değerinin yaşanan ayı piyasası sonrası bir önceki boğa piyasasının zirvesi olan 2018 yılı Ocak ayı ile hemen hemen aynı seviyede olduğunu görüyoruz. Bur rağmen aylık aktif geliştirici sayı aynı dönemde yaklaşık 3 kat artmış durumda.
En büyük beş ağ hangisi?
Sektörün ağır topu Ethereum’un liderliği geçen yıl olduğu gibi aynı şekilde devam etmekte. Ethereum tüm sektördeki tam zamanlı geliştiricilerin yaklaşık %25'ine sahip (Sayfa 58) ve kendisine en yakın topluluğun 2,5 katı büyüklüğünde (Sayfa 70). Sektörün 1000'den fazla toplam geliştiriciye sahip büyük beşlisi ise Ethereum, Solana, Polkadot, Cosmos ve Polygon olarak sıralanıyor⁴ (Sayfa 81)
Kaynak: Electric Capital Developer Report — Sayfa 81
Anlaşılması zor olabileceği için grafiği kısaca açıklayalım: Grafiğin yatay düzlemi ağların 2021 yılındaki tam zamanlı geliştirici sayısını, dikey düzlem ise 2022 yılındaki aynı sayıları gösteriyor. Ortada gördüğünüz grafiği yarıdan bölen çizgi ise iki yıl sayılarının eşit olduğu nokta. Dolayısıyla, grafikten çıkan sonuç mahşerin beş atlısından sadece Polkadot’un 2022 yılında geliştirici sayısı olarak aynı kaldığı, diğer dört topluluğun geliştirici sayılarının arttığı şeklinde (hatta Solana’daki artış %50'den daha fazla olmuş).
Sonraki grup?
En büyük beşli sonrası bir alt seviyede 300'ün üzeri toplam geliştiriciye sahip ekosistemler ise sırasıyla Bitcoin, Near, Polkadot’un kardeş ağı Kusama, Cardano, Internet Computer, Starknet, Tezos, The Graph, Avalanche ve Celo olarak sıralanmakta.⁵ (Sayfa 83)
Kaynak: Electric Capital Developer Report — Sayfa 83
Burada dikkat çekici iki nokta, geçtiğimiz yıl sadece 40 geliştiricisi olan Starknet’in bu sayıyı üç katına çıkardığı, bunun yanında BNB Chain, Tezos ve Avalanche’in geliştirici sayılarında bir azalış görüldüğü. Starknet, özellikle zk (zero-knowledge) teknolojisi geliştiricisi olarak sektörün potansiyeli yüksek adaylarından biri olarak görülüyor. BNB Chain’de ise geçmişte verilen teşvikler nedeniyle görülen geliştirici akımının ters yönlü olarak diğer ağlara doğru kaydığını söylemek mümkün. Avalanche ise geçtiğimiz yıl piyasaya sunduğu subnet’lerindeki geliştirmelerin daha çok kapalı olması nedeniyle sayının düşük göründüğünü belirtiyor.
Geçtiğimiz yıl ilk beş içinde yer alan Bitcoin ise bu sene bir alt lige düşmüş gibi görünüyor. Her ne kadar kötü bir performans gibi görülse de şaşırtıcı bir durum değil bu. Zira Bitcoin kendisini bir teknoloji altyapı platformu değil, dijital bir para olarak tanımlıyor. Bu nedenle Bitcoin’e öyle çok büyük geliştirici akını beklemek mantıklı değil. Bitcoin üzerinde aylık yeni katkı yapan geliştirici sayılarına baktığımızda ise karşımıza ilginç bir tablo çıkıyor (Sayfa 53):
Kaynak: Electric Capital Developer Report — Sayfa 53
2018 yılı başından bu yana kripto para piyasa değerleri ciddi artışlar ve azalışlar gösterse de, Bitcoin ekosistemi düzenli bir şekilde hemen her ay kendisine ortalama 100 yeni geliştirici kazandırıyor. Bu da bize Bitcoin’in piyasa koşullarından etkilenmeyen ‘dirençli’ bir yapısı olduğunu gösteriyor.
Biraz daha alt gruba ‘zoom’ yapalım mı?
Yukarıdaki listelerde yer alan isimler (belki Starknet dışında) şimdiye kadar duyulmuş ve konuşulan ağlar. Yeni neler geliyor derseniz, yukarıdaki tablonun sol altında yer alan gruba ‘zoom’ yapmanız gerekiyor. (Sayfa 77)
Kaynak: Electric Capital Developer Report — Sayfa 77
Bu grupta en dikkat çeken iki isim, Facebook’un Diem (önceki adıyla Libra) projesinin kapanması sonrası oluşan iki ekip Aptos ve Sui. Bu ekipler Facebook sonrası toplu olarak bu projelere geçiş yaptıkları ve sonrasında ciddi yatırım aldıkları için geliştirici sayısında ciddi bir artış göstermiş durumdalar. Bunun yanında Flow, Algorand, Stacks, XRP, Stellar’ın geliştirici sayılarında bir azalış gözlemleniyor.⁶
Geliştiriciler büyük projelere doğru toplanıyorlar
Rapordaki bir diğer ilginç nokta ise, 2018 yılından bu yana geliştiricilerin büyük projelere doğru yönelmeye başladıkları (Sayfa 97)
Kaynak: Electric Capital Developer Report — Sayfa 97
Bitcoin ve Ethereum dışındaki en büyük 200 proje 2018 yılı başında toplamın %25'i kadar aktif geliştiriciye sahip iken bu rakam 2022 yılı sonunda neredeyse %50'ye gelmiş durumda. Görünen o ki, eskinin ‘vizyoner’ ama havada kalan binlerce projesine dağılan geliştiriciler, şimdilerde daha ayağı yere basan projelere doğru kayıyorlar.
Bu arada geliştiriciler için önemli bir nokta, ağlardan ziyade hangi teknolojiye odaklanmaları gerektiği olabilir. Orada da Ethereum Virtual Machine (EVM) kullanan ağların ağırlığı olduğunu görüyoruz. Ethereum’un 5,734 geliştiricisinin yanında, EVM kullanan diğer birinci ve ikinci seviye ağların 2,817 geliştiricisi eklendiğinde, tüm EVM kullanan ekosistemin 8,390 geliştirici ile toplam Web3 geliştiricilerinin %36'sını oluşturduğunu görüyoruz. [Sayfa 138]
Rapordaki bir başka ilginç gözlem ise, farklı projelerin farklı başlangıç tarihlerini eşleştirerek yapılan analiz olmuş. (Sayfa 122)
Kaynak: Electric Capital Developer Report — Sayfa 122
Böyle bakıldığında ilginç görünen nokta, büyük projelerin 200 tam zamanlı geliştiriciye ulaşmasının yaklaşık 4 yıl sürüyor olması (2.2 yıl süren Polkadot hariç).
Raporda geliştiricilerin artık yavaş yavaş birden fazla ağ için geliştirme yapmaya başladıklarını da görmekteyiz. (Sayfa 145)
DeFi’de durum nasıl?
Rapor içinde blok zincirin en büyük uygulama alanı olan merkeziyetsiz finansa (DeFi) özel bir alan ayrılmış. Burada ilk olarak gördüğümüz, 2020 yazında başlayan DeFi’nin ilk çıkışından bu yana DeFi alanında çalışan geliştirici sayısının %240 oranında arttığı (Sayfa 161). Buna rağmen bu sayının 2021 yılına göre %9 aşağıda olduğunu belirtelim (Sayfa 162). 2022 yılının DeFi için zor bir yıl olduğunu gösteren bir başka örnek.
Ağ bazında baktığımızda ise karşımıza şu tablo çıkıyor (Sayfa 166):
Kaynak: Electric Capital Developer Report — Sayfa 166
Görüldüğü gibi Ethereum DeFi’nin tartışmasız bir numarası olarak en yakın rakibine geliştirici sayısında yaklaşık 3 kat fark atıyor.
Öte yandan bu alandaki geliştiricilerin ağ olarak paylarına baktığımızda ilginç bir nokta daha var: (Sayfa 169)
Kaynak: Electric Capital Developer Report — Sayfa 169
DeFi’nin ilk çıktığı 2020 yazında tüm geliştiricilerin %70'i Ethereum üzerinde iken şimdi bu rakam %50'lere düşmüş durumda. Bu da sektöre yeni giren geliştiricilerin ağırlıklı olarak alternatif ağlara yöneldiğini gösteriyor bize.
Peki ya NFT’ler?
NFT’ler ya da oyunlar ile ilgili geliştirici sayılarının güvenilirliği oldukça düşük. Rapor bu durumun özellikle altını çizerek, bir geliştiricinin yazdığı ufak bir kodun, özellikle koleksiyon projelerinde çok büyük bir kitleyi kendine çekebildiğini vurguluyor. İlerisi için topluluğun proje ile bağını ve etkileşimini ölçecek yeni metrikler üzerinde çalışıldığı da ek olarak belirtilmiş.
Raporda, yeni açılan cüzdanların yaptığı ilk hareketleri gösteren şu tablo da ilgi çekici: (Sayfa 175)
Kaynak: Electric Capital Developer Report — Sayfa 175
2022 yılı içinde yeni açılan cüzdanların %80'inde ilk yapılan işlem NFT işlemi olmuş! Yani kripto ile ilgisi olmayan kitlenin bu alana giriş noktasının ağırlıklı NFT’lerden geçtiğini gösteren ilginç bir tablo..
Sonuç
Geliştiriciler, teknoloji dünyasının önce temellerini daha sonra üzerine katlarını çıkan ve ekosistemin en kritik parçalarından birini oluşturan bir grup. Bu grubun hareketleri bize gelecek ile ilgili çok ilginç ipuçları verebiliyor.
Electric Capital’in geliştirici raporu pek çok farklı çıkarımlar yapılabilecek bir hazine adeta. Eminim geliştirici camiası içinden rapora dudak bükecekler olacaktır. Yine de daha iyisi yapılana kadar en azından trendleri görebilmek için elimizdeki en kapsamlı çalışmalardan biri olan bu rapor dikkatlice okunmayı ve üzerine tartışılmayı hak ediyor.
Dipnotlar:
- Fingerprinting denen yöntem ile yazılımların ilk çıkış noktalarını belirleyip daha sonra başka projelerde kopyala/yapıştır yöntemi ile kullanılmasını, çatallamaları, açık kaynak kitaplıklarını birleştirme yoluyla oluşturulan kayıtları eliyorlar.
- Raporda ayda 10 günden fazla kod üzerinde çalışanlara ‘tam zamanlı’, 10 günden az çalışanlar ‘yarı-zamanlı’, üç ayda en bir kez katkıda bulunanları ‘tek-seferlik’ geliştiriciler olarak adlandırıyorlar.
- Toplam sayı 23,343 ama 61,000 yeni geliştirici nasıl oluyor derseniz, bir önceki nottaki tam zamanlı, yarı-zamanlı ve tek-seferlik geliştirici tanımlarına tekrar bakabilirsiniz. Eğer bir geliştirici üç aydan fazla süre katkıda bulunmuyor ise o zaman 23,343'lük geliştirici kitlesinin içine giremiyor.
- Tam zamanlı geliştiricilerde 300'den fazla geliştiriciye sahip ilk grup için sıralama Ethereum, Polkadot, Cosmos, Solana ve Bitcoin şeklinde (sayfa 70)
- En büyük beşli sonrası bir alt seviyede 200'ün üzeri toplam geliştiriciye sahip ekosistemler ise sırasıyla Polygon, Polkadot’un kardeş ağı Kusama, Near, Cardano, Tezos, BNB Chain, Internet Computer ve Starknet olarak sıralanmakta. (Sayfa 74)
- Rapor çok daha detaya inerek sayıca daha aktif geliştiricilere de değiniyor. İlgilenenlere raporu detaylıca incelemelerini hararetle tavsiye ederim.
Zeki Seskir
Doctoral Researcher
2022 yılı kuantum teknolojileri açısından hem oldukça verimli hem de önemli bir yıldı. 2019’da Google’ın süperiletken kübit temelli kuantum üstünlük deneyini takiben 2021’de Çin’den bir ekip fotonik sistemlerle de buna erişilebileceğini göstermişti. 2022’de ise Kanada’dan Xanadu firması Çin’deki ekibin deneysel optik masasında gerçekleştirdiğine benzer bir kuantum üstünlüğü çip düzeyinde gösterdi. Böylece 2022 sonu itibariyle dünyada kuantum üstünlük gösterebilen kuantum bilgisayar donanım modaliteleri süperiletken ve fotonik sistemler olmak üzere ikiye yükseldi. 2023 senesinde iyon tuzakları, nötr atomlar veya silikon kübitlerden de kuantum üstünlük deneyleri görebiliriz.
Aynı zamanda 2022 NIST’in altı senedir sürdürdüğü kuantum-ertesi (post-quantum) kriptografi algoritmaları yarışmasının da ilk sonuçlarının açıklandığı sene oldu. NIST, genel şifreleme için CRYSTALS-Kyber, dijital imzalar içinse CRYSTALS-Dilithium, FALCON ve SPHINCS+ algoritmalarını kuantum bilgisayar saldırılarına dayanabilecek algoritmalar olarak belirleyip duyurdu. Amerikan Başkanı Biden’ın imzaladığı “Quantum Computing Cybersecurity Preparedness Act” ve çeşitli ek genelgeler kapsamında ABD’de en kısa zamanda kamu ile belirli bir gizlilik seviyesinde iş yapan tüm kurumların yeni sertifikalara geçiş yapması, 2035’e kadarsa tüm altyapının güncellenmesine karar verildi. 2023’te bunun pek çok farklı ülkede ve sektörde karşılık bulmasını bekleyebiliriz.
Elbette siber güvenlik altyapısında bu çapta bir dönüşüm söz konusu olduğu için özellikle hukuk ve regülasyon çalışan araştırmacılar arasında kuantum teknolojileri ve yönetişim (governance) meselesi de 2022’de ciddi rağbet görmeye başladı. Dünyanın farklı yerlerinde “kuantum, hukuk, etik ve politika” temelli merkezler kurulmaya başlandı. 2023 senesinde bu merkezlerden ilk makalelerin ve raporların çıkmaya başlamasıyla birlikte kuantum teknolojileri üzerine (zamanında yapay zekâda yaşandığı gibi) etik soruların daha kamusal bir düzeyde tartışıldığına tanıklık edebiliriz.
Bu gelişmeleri takiben yakın dönemde kuantum bilgisayarların şifre kırıcılığının daha çok test edilmesi konusunda da adımlar atıldığını görüyoruz. 2023’ün başında Çin’den bir ekibin RSA’i kuantum bilgisayar kullanarak kırdıklarına dair yaptıkları yayın alandaki pek çok insanın ilgisini çekti. İddia kısa zamanda yalanlansa da benzeri çalışmaların 2023’te artan bir sıklıkla karşımıza çıkması muhtemel.
2022’de yükselen jeopolitik gerginliklerden ötürü pek çok ülkenin işbirliklerini ve akademik ortaklıklarını gözden geçirdiği bir yıl yaşadık. Hem bazı ülkelerin (Fransa ve ABD gibi) ikili anlaşmalarla birbirleriyle olan bağlarını güçlendirdikleri hem de bazı ülkelerin (Almanya ve Rusya gibi) akademik ilişkileri tamamen kestiğini görüyoruz. 2023’te bu trendin devam etmesi ve akademik kamplaşmanın da jeopolitik kamplaşmayı takip etmesi bekleniyor.
Son olarak, elbette 2023’te hem kuantum teknolojilerine dair olan şüpheciliğin ve beklentilerin, hem de heyecanın artması ihtimali yüksek. Özellikle son birkaç ayda alanda çıkan kuantum balonu, kuantum hype’ı gibi yazılar ve bunlara karşı geliştirilen “sabırlı olun” söylemleri tartışmalarının 2023’te daha da güçlenerek artması ve alanda çatlaklara yol açması oldukça mümkün.
Kuantum alanında yazılım geliştirmeyi düşünenlerin takip edebileceği birkaç temel gelişmeyi ise aşağıdaki gibi sıralayabiliriz:
- Classiq ve Strangeworks gibi firmaların sağladığı kuantum algoritma tasarım platformları, işin en temeline inmek istemeyen yazılımcılar için faydalı olabilir.
- Öte yandan kuantum yazılım çözümlerini aktif olarak kullanmak isteyenler bulut temelli Azure Quantum, IBM Quantum ve AWS Braket hizmetlerini test edebilirler.
- Alanda hızla artan uygulamaya-özel çözümler geliştiren startup firmalarının çalışmaları (finans için Multiverse, kuantum kimya simülasyonları için HQS gibi) bu alana girmeyi düşünenlere yol gösterebilir.
- Son olarak, elbette IBM, QubitbyQubit, QWorld gibi oluşumların sağladıkları eğitimler bu alana temelden giriş yapmak isteyenler için çok değerli. Türkiye’de, Türkçe ve ücretsiz olarak giriş yapmak içinse QTurkey’in eğitimlerini takip edebilirsiniz.
Ziyahan Albeniz
Application Security Engineer
- Yapay Zeka ve Makine Öğrenimi: Bu teknolojilerin popülaritesi artmaya devam edecektir, çünkü organizasyonlar için büyük miktarlardaki veriyi analiz etmeye ve anlamlandırmaya olanak sağlar ve el ile yapılacak olan zaman alıcı ve pahalı işlemleri otomatikleştirir.
- Bulut Bilişimi: Bulut bilişiminin popülaritesi maliyetleri azaltmak ve esneklik arttırmak için aranan yollar olarak devam edecektir. SaaS, PaaS ve IaaSgibi bulut tabanlı hizmetler popüler hale gelmektedir.
- Siber Güvenlik: Elektronik olarak saklanan ve paylaşılan verinin artması ile birlikte, siber güvenlik organizasyonlar için büyük bir endişe kaynağı olacaktır. Bu, güvenlik uzmanlarına ve yeni güvenlik teknolojilerinin geliştirilmesine olan talebi arttıracaktır.
- Nesnelerin İnterneti (IoT): IoT popülaritesi artmaya devam edecektir, çünkü internete daha fazla cihaz bağlanır, işletmeler ve bireyler için yeni fırsatlar yaratır.
- Low-code ve no-code platformları: Bu platformlar kullanıcıların kod yazmadan yazılım oluşturmasına ve işlemleri otomatikleştirmesine olanak sağladıklarından popüler hale gelmektedir. Bu, teknik olmayan çalışanların yazılım oluşturmasına ve işlemleri otomatikleştirmesine olanak tanır.
Muhammed Hilmi Koca benden yazılım trendleri hakkında bir yazı istediğimde önce kabul ettim ama sonra da kara kara düşünmeye başladım. Yıl başlangıcı gerek denetimler, gerekse de yeni yıla devreden işlerin bitirilmesi için yılın en yeni dönemi. Üstelik yurtdışında yaşayan bir expat olarak evrak ve izinlerin yenilenmesi ihtiyacı da işin tuzu biberi.
Neyse ki yukarıdaki metni ChatGPT’ye yazdırdım. Evet sanırım 2023 yılının yazılım trendlerine altın harflerle adı yazılacak olan teknoloji ChatGPT.
ChatGPT, 2015 yılında Elon Musk, Sam Altman, Greg Brockman, Ilya Sutskever, Wojciech Zaremba, and John Schulman tarafından kurulan OpenAPI isimli araştırma şirketine ait bir proje. Bir dil işleme sistemi. ChatGPT büyük bir veri seti ile eğitilmiş. Forumlar, kitaplar, filmler, Twitter mesajları. 2021 yılına kadar internette ne kadar açık veri varsa bu yetenekli yapay zeka platformu hepsini yalamış yutmuş.
Twitter’daki floodlarda mutlaka ChatGPT’ye kira sözleşmesi yazdıran avukatlara, ödevini ChatGPT’ye yaptıran öğrencilerin hikâyelerine denk gelmişsinizdir. Benim için en etkili olan ChatGPT’ye yazdırılan kod projeleri, ChatGPT’nin anonimleştirilen kodlardaki zafiyetleri bulması gibi insanı can evinden vuran örnekler. Çağatay Kurt isimli Twittter kullanıcısının “Son bir haftada sadece chatGPT kullanarak sıfırdan bir oyun yazdım.” flooduna mutlaka bakın derim.
ChatGPT’yi yapay zeka teknolojilerinin halka inmesi olarak düşünebiliriz. Bugüne kadar bilim kurgu filmlerindeki tarife en yakın bir örnek olarak her yaştan ve meslekten pek çok insanın dikkatini çekti.
Yazılım trendleri zaviyesinden bakacak olursak geliştiricilerin Stackoverflow ve forumlara olan bağımlılığını azaltacak, aradıkları cevapları hızlıca bulmasını sağlayarak, işlerini kolaylaştıracak bir hamle. Üstelik ChatGPT ile API vasıtası ile konuşan çok parlak projeler de ufukta olsa gerek.
Yine 2023'te sürekli ve güvenli yazılı geliştirmenin formülü olan DevSecOps yaklaşımının da ivme kazanacağını söylemek mümkün. Normal yazılım süreçlerinde projemizi geliştirir, test işlemlerini hep sona bırakırız. Oysa en son aşamada yapılan testler bizi taa en başa, tekrar IDE’lerimize geri döndürebilir. Peki ecnebilerin shifting-left dediği yaklaşımı projelerimize uygularsak ne olur?
Yazılım geliştirmeyi sağdan sola doğru uzanan bir doğru olarak düşünüp, en sonda yapılması planlanan testleri giderek daha sola, en sola kaydırırsak, potansiyel güvenlik risklerini, fonksiyonel hataları yazılım geliştirme süreçlerinin daha ilk aşamalarında fark eder; production ortamında ortaya çıkabilecek ve bize hem itibar hem de finansal açıdan büyük kayıplar yaşatacak potansiyel riskleri çok daha erken fark edebiliriz.
DevSecOps yaklaşımının giderek daha benimsenir hale gelmesi, açık kaynak pek çok DevSecOps toollarına her gün bir yenisinin daha eklenmesi gelecek güzel günlerin habercisi.
Github gibi teknoloji devleri bunun farkında olacaklar ki Github Actions, Secret Scanning, Dependabot yazılım bağımlılıklarının zafiyet denetimi gibi araçları çoktan platformlarına eklediler bile. Bunların bir kısmı ücretsiz olarak geliştiricilere sunuluyor.
Özetle diyebilirim ki yapay zeka teknolojileri yazılım geliştirme projelerinin, ve yeni fikirlerin giderek daha fazla temel yapı taşlarından biri olurken, yazılım geliştirme süreçlerinde de güvenlik farkındalığının artması ve DevSecOps yaklaşımın daha fazla belirlenmesi 2023 yılından en büyük beklentim.