20 Eylül 2025 Cumartesi

Google, StackOverflow, Yapay Zeka

Selamün Aleyküm Arkadaşlar,

    Başlıktaki 3 kelimeyi yan yana duyanlara bir anda bir şey çağrıştırdı mı bilmiyorum. Buna yazının sonunda değiniyor olacağız, ancak konunun temeli blog yazılarının artık eskisi kadar okunmuyor olması ve okunmadığı için de doğal olarak iyi içeriklerin artık daha da az üretiliyor olması… Hazırsak başlayalım.


    Son mikroservis serim öncesi uzun süre doğrudan teknik olmayan tecrübe yazıları yazıyordum. Yaşadığımız problemler neyse veya o an neyle daha fazla uğraşıyorsak yazılar da ona bağlı olarak geliyor galiba. O yüzden bu problemi bir nebze geç fark etmiş olabilirim, ancak yukarıda bahsettiğim teknik seriyle birlikte sanki bunu daha net gördüm…

    Pandeminin başında, herkesin evlere çekildiği dönemler… Ardından yapay zeka araçlarının da doğrudan ya da dolaylı etkisiyle sürekli yeni yazılar yeni paylaşımlar görüyordum. Aralarında güzel yazılar da çıkıyordu, bizler de zevkle okuyorduk. Yasaklar kalktıkça bu yazılar giderek azalmaya başladı. İnsanlar evde olunca/sıkılınca daha çok yazıyorlardı diye düşünüp geçtik, ancak gerçek öyle değil miydi?

    Benim bahsettiğim konu ise daha çok teknik yazılarla ilgili. Özellikle yapay zeka araçları çok popüler olduktan sonra (her gün yeni bir tanesi çıkıyor neredeyse) insanlar artık bir konuyu blog yazılarından okumak veya uzun uzadıya araştırmak yerine bu araçlara yöneliyorlar. Bunu da açıkçası çok garipsemiyorum. Kendim de birçok konuda kendilerinden destek alıyorum ama bu da tüketici olan bizleri daha da tüketici yapıyor sanki…

    Stackoverflow öncesi, insanlar basit bir hata için bile saatlerce kitap, doküman okuması/taraması yaptıklarını söylüyorlardı (biz o kadar yaşlı değiliz neyse ki :) ). Bu ve benzeri siteler sonrası bazı hataların çözümü ne kadar da kolaylaşmıştı değil mi bizim için? Şimdi durum daha da kolaylaşıyor. Sadece hatayı bulmak için değil, kodun bir bölümünü veya tamamını artık bu araçlara yazdırabiliyoruz. Hatta google ve stackoverflow sitelerini kullanma sıklığım oldukça azaldı. Google’mak tabirinin tahtı bile sallantıda olabilir mi acaba diye düşünmeden edemiyorum.

    Konumuza tekrardan dönecek olursak, teknik yazıların yazarlığı da okunurluğu da doğal olarak bu araçlar yüzünden azalıyor. Arz talep konusu. Burada kimseye kızmak ya da sitem etmek değil amacım, olayın geldiği noktayı anlamaya çalışmak ve kendime naçizane bir yol haritası belirlemek…

    Ancak teknik olmayan yazıların hala bir geçerliliği olduğu ve bunların okunup yazıldığı bir gerçek. Özellikle tecrübe yazıları hala ilgilyle okunuyor. Bu tür yazılar özellikle sektörün önde olan kişilerinden geldi mi çok daha ilgi görebiliyor. Teknik olarak bazı geliştirmeler ve bazı yöntemler her ne kadar daha hızlı kavransa da tecrübenin verdiği birikim hala kayda değer…

    Başlığa dönecek olursak, silah çıktı mertlik bozuldu, lens çıktı mertlik bozuldu gibi söylemlere belki rastlamışsınızdır, ben de şimdi naçizane bunlara bir yenisini ekleyerek ChatGPT (yapay zeka araçları) çıktı mertlik bozuldu demek istiyorum. Diğerlerine adapte olabildiğimiz gibi buna da adapte olacağımız/olmamız gerektiği bir gerçek. Öyleyse hepimize bu yolda kolaylıklar dilerim :)

    Yazıyı mücadelenin (bu veya benzer gelişmeler) kıyamete kadar devam edeceğini belirten bir hadis-i şerif ile bitirelim.

“Allah bu kılıcı (savaşı) insanlar arasında bir fitne (imtihan ve sınav vesilesi) olarak gönderdi. O (kılıç), kıyamet gününe kadar insanlar arasında var olmaya devam edecektir.” (Buhârî, Fiten 7; Müslim, Fiten 6)


Nereye Gidiyorsun!..

     Selamün Aleyküm,
    Dün akşam üzeri uzun süredir konuşamadığım eski şirketten bir arkadaşım aradı. Eski şirketten biraz konuştuktan sonra bir arkadaşıyla ilgili bir konuda danışmak istedi. Konu konuyu açarken gün sonunda arkadaşımın tavsiyesiyle konuyu özetlemeye karar verdim. Konumuz iş değişikliği yapmalı mıyız?

29 Mart 2025 Cumartesi

Silah, Lens, Chat GPT

     Selamün Aleyküm Arkadaşlar,

    Başlıktaki 3 kelimeyi yan yana duyanlara bir anda bir şey çağrıştırdı mı bilmiyorum. Buna yazının sonunda değiniyor olacağız, ancak konunun temeli blog yazılarının artık eskisi kadar okunmuyor olması ve okunmadığı için de doğal olarak iyi içeriklerin artık daha da az üretiliyor olması... Hazırsak başlayalım. 

28 Aralık 2024 Cumartesi

Mikroservis Yazı Serisi 16 - Monitoring

     Selamün Aleyküm Arkadaşlar,

    Mikroservis serimizin son yazısı olan on altıncı yazımıza geldik. Bugünkü konumuz monitoring. Bir problem ile karşılaştığımızda, hatta bazen karşılaşmadan bizi yönlendirecek/uyaracak sistemlerin olması çok önemlidir. Canlı çalışan sistemlerin 7/24 ayakta olması gereken durumlarda bu konu daha da öne çıkmakta ve uykusuz gecelerin sayısını oldukça azaltmaktadır diye düşünüyorum :) Hazırsak başlayalım.

27 Aralık 2024 Cuma

Mikroservis Yazı Serisi 15 - Service Registry & Discovery

Selamün Aleyküm Arkadaşlar,

    Serinin on beşinci yazısında servislerin birbiriyle iletişim kurarken dinamik bir şekilde bunu yapmanın yoluna değineceğiz. Monolit sistemlerde böyle bir ihtiyaç genel itibariyle bulunmazken, mikroservis sistemlerde servislerin çokluğu nedeniyle önümüze çıkmaktadır. Hazırsak başlayalım.

Mikroservis Yazı Serisi 14 - Configuration Management

     Selamün Aleyküm Arkadaşlar,

    Serinin on dördüncü yazısında mikroservis sistemlerin ayar yönetimi kısmına odaklanıyor olacağız. Sistemlerin dayanıklı, ölçeklenebilir ve bağımsız olarak dağıtılabilmesi için gerekli ayarların nasıl tutulması gerektiği konusuna değineceğiz. Bunun için ne gibi yöntemler mevcut, kullanılan araçlar nelerdir gibi bazı sorulara da cevap arayacağız. Hazırsak başlayalım.

Mikroservis Yazı Serisi 13 - Deployment Automation

    Selamün Aleyküm Arkadaşlar, 

    Serinin on üçüncü yazısında otomatik deployment süreçlerinden bahsetmeye çalışacağız. Önceki yazıda da bu konuya ufaktan değinmiştik. Şimdi ise daha detaylı bakmayı deneyeceğiz. Monolit sistemlerde olursa güzel olur dediğimiz yapı, mikroservis sistemlerde bu süreç zorunluluk haline geliyor. Mikroservis mimarisinin avantajlarından biri de gün içinde sık sık ve küçük paketler halinde canlıya çıkabilmektedir. Bunu yapabilmeniz için de bu süreçler kaçınılmaz oluyor. Hazırsak başlayalım.

Mikroservis Yazı Serisi 12 - Cloud Based Infrastructure

    Selamün Aleyküm Arkadaşlar,

    Serinin on ikinci yazısında bulut tabanlı sistemleri konuşuyor olacağız. Bu yazıyla birlikte biraz daha devops konuları hakkında konuşmaya başlıyor olacağız. Mikroservis sistemlerde platform/devops ekibiniz olmadan bu işlerle uğraşmak zor/yorucu olabilir. Monolit sistemlerde bu işleri nasıl yapıyorduk da neden şimdi böyle bir ihtiyacımız var? Hazırsanız cevap bulmaya çalışalım.

Mikroservis Yazı Serisi 11 - Centralized Logging

    Selamün Aleyküm Arkadaşlar, 

    Serinin on birinci yazısında loglama konusunu ele alacağız. Loglama küçümsediğimiz ama başımız belaya girdiğinde kıymetini anlamaya başladığımız can simidi bir konu. Monolit sistemlerde de önemlidir ancak log yazılması, logu takip etmesi ve gerektiğinde debug (iyi developer debug yapar, daha iyi developer log okur) yapması daha kolaydır. Ancak sistem büyüdükçe bu işlemi yapmak dahi bir soruna dönüşebiliyor. Özellikle servisler arası istekler gidip geliyorsa bunu takip etmek daha da zorlaşıyor. Bunlar için ne gibi çözümler var merak ediyorsak buyurun başlayalım.

26 Aralık 2024 Perşembe

Mikroservis Yazı Serisi 10 - Documenting Contracts

     Selamün Aleyküm Arkadaşlar,

    Serinin onuncu yazısında dokümantasyon ve uri tasarımı konularını ele alacağız. Diğer konulara oranla az önemli gibi gözükse de büyüyen projelerde bu konu beklediğimizden çok daha önemli hale gelmektedir. Özellikle farklı takımların sürekli senkron veya asenkron bir iletişim sürdürmesi yerine bu konuya eğilmek çok daha kıymetli olacaktır. Ayrıca sonradan projelere katılacak olan arkadaşlara da can simidi olabilir. Hazırsak başlayalım.

Mikroservis Yazı Serisi 9 - Backward Compatibility

     Selamün Aleyküm Arkadaşlar,

     Serinin dokuzuncu yazısında Backward Compatibility (geriye uyumluluk) konusuna bakıyor olacağız. Geriye uyumluluk sadece mikroservis sistemlerde değil, monolit sistemlerde de önemli bir yere sahip bir kavramdır. Dış servisler veya sistemler tarafından kullanılan uçlarımızda bir değişiklik yaptığımızda önceki halini bozmayacak bir şekilde geliştirilmesi gerekiyor. Hazırsak başlayalım.

Mikroservis Yazı Serisi 8 - Resiliency

     Selamün Aleyküm Arkadaşlar,

    Serinin sekizinci yazısına hoş geldiniz. Önceki yazılarımızda şimdiye kadar genel itibariyle veri üzerine daha çok yoğunlaştık, ancak bu yazımızda herhangi bir sebepten dolayı cevap vermeyen servislerle ilgili ne yapabileceğimizi konuşacağız. Bu kavrama dayanıklılık (resiliency) diyoruz. Peki sistemlerin dayanıklı olabilmesi için neler yapabiliriz? Hazırsak başlayalım.

Mikroservis Yazı Serisi 7 - Arch API-based

    Selamün Aleyküm Arkadaşlar,

    Serinin yedinci yazısında API tabanlı mimariyi ele alıyor olacağız. Önceki yazılarda asenkron iletişimden, veri tutarlığının zorluğundan, ayrı veri tabanlarının kullanılmasından ve burada ortaya çıkan problemlerde ve hangi durumlarda hangi yapıların kullanılması daha uygun olur gibi konulardan bahsetmiştik. Bugün ise asenkron iletişimde API tabanlı iletişim var. Çeşitleri nelerdir, hangi durumalarda hangisi kullanılır, ne gibi avantaj ve dezavatajları var gibi konulara değinmeye çalışacağız. Hazırsak başlayalım.

25 Aralık 2024 Çarşamba

Mikroservis Yazı Serisi 6 - Separated Databases

     Selamün Aleyküm Arkadaşlar,

    Bugün mikroservis sistemlerde her servisin kendine ait veri tabanın olması konusunu ele alacağız. Bununla birlikte genel olarak veri tabanı seçimleri, veri senkronizasyonu ve çoklaması, ayrı veri tabanlarını yönetmedeki zorluklar ve bunlara yönelik çözümler hakkında konuşmaya çalışacağız. Hazırsak başlayalım.

Mikroservis Yazı Serisi 5 - Centralizing Access

     Selamün Aleyküm Arkadaşlar,
    Serinin beşinci yazısı olan merkezi erişim konusuna başlıyoruz. Burada ele alacağımız 3 kavram olan gateway, reverse proxy ve load balancer konuları olacak. Hepsi gelen trafiği karşılayıp gerekli servislere yönlendiren yapılar olmasına rağmen birbirlerinden farklılaştığı noktalar mevcut. Ayrıca böyle bir kurgunun ne gibi bir işlevi var, ne tür avantajlar sağlar, hangi işlemleri burada yapmalıyız gibi konulara da değinmeye çalışacağız. Hazırsak başlayalım.

Mikroservis Yazı Serisi 4 - Achieving Data Consistency

     Selamün Aleyküm Arkadaşlar,

    Serinin dördüncü yazısında, dananın kuyruğunun koptuğu bir konuyu ele alacağız: Veri tutarlığı. Önce bu konu neden önemli, sağlanmadığında ne gibi problemler yaşanabilir, ardından monolit yapılarda bunu nasıl sağlıyoruz ve son olarak da mikroservislerde ne gibi zorluklar yaşanıyor ve buna sunulan çözümler nelerdir gibi konulara değinmeye çalışacağız. Hazırsak başlayalım.

Mikroservis Yazı Serisi 3 - Composing Microservice

     Selamün Aleyküm Arkadaşlar,

    Mikroservis serimizin üçüncü yazısı olan "composing microservice" konusunu ele alacağız. Birden çok servisten gelen cevapları toplayarak yanıt olarak istemciye (client) geri döner. Mikroservisin bağımsızlık ilkesine ters olsa da iş modelinin isterlerine göre kaçınılmaz olabiliyor. Bu durum, genel tasarıma zarar verebileceğinden burayı tasarlamak ilerideki birbirine bağımlı servislerin oluşmasına engel olmak açısından çok önemlidir. Hazırsak detaylarına inelim.

24 Aralık 2024 Salı

Mikroservis Yazı Serisi 2 - Async Messaging

     Selamün Aleyküm Arkadaşlar,

    Serinin ikinci yazısında asenkron iletişimi ele alacağız. Servisler arası iletişimde temelde iki yöntem var. Bu yöntemlerden biri senkron (rest api, grpc) ve diğeri asenkron olarak ele alabiliriz. Birbirilerine göre avantaj ve dezavantajları olsa da servislerin birbirine olan bağımlılıkları en aza indirgemek için asenkron iletişim bu işin temel parçalarından biri haline geliyor. Hazırsak başlayalım.

Mikroservis Yazı Serisi 1 - Bounded Context

     Selamün Aleyküm Arkadaşlar,
     Seriye özetle başlasak da gerçek manada serinin ilk yazısı. Özette de belirttiğimiz gibi bu işin kalbi bana göre sınırları doğru çizebilmek. Sınırları doğru ve net belirlediğimizde geriye kalan işler kolaylaşacaktır. Monolit yapılarda veritabanı tasarımının projedeki en önemli kısım olduğunu düşündüm hep. İyi bir veri tabanı iyi bir backend yazılımına, o da iyi bir arayüze ve günün sonunda iyi bir uygulama vesile olur. Mikroservis mimarisinde ise aynı şeyi "bounded context" için düşünüyorum. Hazırsak başlayalım. 

17 Aralık 2024 Salı

Mikroservis Yazı Serisi: Index[0]

     Selamün Aleyküm Arkadaşlar,

    Çok uzun süredir notlarımda olan ve hep yazmak istediğim bir seriye Allah'ın izniyle başlıyorum. Yıllar önce yanlış hatırlamıyorsam Koç sistemin bir videosunda not aldığım 16 başlığı 16 ayrı yazı olarak ele alıyorum. Böyle düşününce gerçekten zor bir hedef gibi görünüyor, ancak birincisine niyet edip başlarsak inşaAllah gerisi de gelir diye düşünüyorum..