Yıllardır süren "Gövdede (body) veri göndermek için GET mi POST mu kullanmalıyız?" tartışması resmen bitiyor. IETF, RFC 10008 ile yeni bir HTTP metodu duyurdu: QUERY!
Hem güvenli hem de GET gibi idempotent (tekrar edilebilir). Detaylar için: https://t.co/0VjZo6FSZu
Super excited to announce that I'll be attending WEBINAR: Lemi Orhan ERGİN ve Akın KALDIROĞLU ile "Unit Testing & TDD". Let's connect if you're there! - https://t.co/LQeFHwGlKV
We split our monolith into microservices. It was a mistake.
Before:
- One Rails app
- 200k lines of code
- Deploy time: 8 minutes
- 5 person team
After the split:
- 8 microservices
- Separate databases
- Message queues everywhere
- Service mesh for communication
What actually happened:
- Deploy complexity increased 10x
- Debugging across services became a nightmare
- Data consistency issues appeared
- Team spent more time on infrastructure than features
- No performance improvement
The real problem was not the monolith. It was poor database queries and missing indexes.
We eventually:
- Merged 5 services back into the monolith
- Kept 3 truly independent services
- Fixed the actual performance issues
- Simplified our deployment pipeline
Microservices are not a silver bullet. Sometimes your monolith just needs optimization, not dismantling.
"yazılım" ve "geliştirme" kelimeleri yan yana geldiğinde doğru ve yanlış kelimeleri denklemden çıkıyor. yazılım ve sistem mimarileri, bence, bu işin en sezgisel kısımları. büyük resme baktığımızda ortadaki fikirler objektif aslında. farklı uygulayış biçimlerinin farklı faydaları olduğu için sezgisel diyebiliyoruz.
geliştirme adımları, eğer ki geliştirdiğiniz şeyi daha önce 20-30 kere geliştirmediyseniz, hep siliktir. varsaydığımız pratikler genellikle incremental yaklaşır; yani heuristic (sezgisel) bakar olaya. hiçbir yaklaşım doğru çözümü, mükemmel ürünü garanti etmez; pratikte iyi sonuçları vadeder, kural temelli yaklaşır. yani yazılım geliştirme tamamen algoritmik, formülize edilebilecek bir şey değildir.
bir problemi çözme yolunuz her şeyden etkilenir; karakterinizden, geçmiş tecrübelerinizden, gözlemlerinizden ve en önemlisi mentorlerinizden... mesela bir fintech ekosisteminde (write-heavy) mentorün consistency ve performans için event sourcing yapmış, bunun neden böyle olduğunu sana anlatmış ve aktarmış, sen de şirketin kâr edip büyüdüğünü görmüşsen artık inductive reasoning yapabilirsin:
"yüksek consistency gerektiren write-heavy sistemlerde event-sourcing iyi bir heuristic çözüm"
yıllar sonra bu kararı verecek kişi sen olduğunda aynı fikirleri uygulayabiliyor olursun; olayın başını ya da sonunu düşünmeden sezgisel bir şekilde "bunu yapmıştım, böyle olmuştu, demek ki iyi bir yaklaşım" diyebilirsin.
sonuç olarak, konuştuğumuz her şey bilim olmasına rağmen kesin olarak formülize edebileceğimiz şeyler değiller. yani teoriye yaslanıp sezgilerimiz ile pratik kararlar veriyoruz. neydi bunun adı? hatırladım, mühendislik.
Kafka Streams is the easiest stream processing framework. It is used by X to train its ML recommendation model (what populates this newsfeed) and other big companies like Airbnb, Pinterest, Michelin.
Here's how it works: 🧵
Big news for the Apache Kafka community! 🎉 Kafka 4.1 is out.
This release includes 18 KIPs from the broader community. Kafka 4.1 hardens the 4.0 foundation and introduces new features for OAuth, operations, Streams, Connect, Queues, KIP-848, and more.
Explore what’s new in the blog ➡️ https://t.co/U3SCNeK6En
Do You Still Need to Learn Python in the Age of AI?
Kesinlikle, verify ihtiyacı ortadan kalkmadığı sürece programlama dilini öğrenmeliyiz.
https://t.co/jZCtKtbyiP
@vernoraexia Tam Yakup Kadri gibi olmasa da Kemal Tahir Esir Şehir Üçlemesi dönemi anlamada faydalı olabilir. Esir Şehrin İnsanları ve Esir Şehrin Mahpusu Milli Mücadeleye İstanbul'dan bakışı göstermesi bakımından güzel kitaplar.
Apache Kafka 4.0 was just released!
It bumps Kafka to 1.4 million lines of code.
What comes with this new release?
Here are the top 3 features you should know about 🔥
@milikkan Bazen Chatgpt tam istediğini vermiyor. Chatgpt'nin verdiği sonucun doğruluğunu denetleyecek kadar regex bilmek yeterli bence. Çok kastırdı bizi regex yıllarca. 🙂