RSSAmplifier

Blog

Blog

Recent content on Blog

erkanerol.github.ioRSS feed ↗19 posts

Latest posts

Thinking about the complexity of the Kubernetes ecosystem

Disclaimer: I am working for Giant Swarm as a Platform Engineer. My day-to-day work might have influenced my perspective on this subject since it is pretty related to why/how we help our customers. Over the years, I faced two different reactions from people who are new to Kubernetes: “Is Kubernetes genuinely that simple? Why doesn’t it have X as a built-in feature?” “Why is…

Debugging k8s services: 3 tools for 3 scenarios

While developing/debugging applications that serve services on k8s in production, you need some tools/commands. This blog post explains three different scenarios+tools for you. Please ping me if there is something wrong. https://twitter.com/erkan_erol _

Learning Path: Basics of Container Runtimes

Intro After a couple of productive hours, now I have a clear understanding of what are the difference/relationship between cgroups, namespaces, runc, containerd, docker, rkt, dockerd, docker-containerd-shim, cri-o, cri, dockershim, gVisor, kata-containers, etc. — Erkan Erol (@erkan_erol_) April 20, 2020

I wish pods were fully restartable

+Hi Erkan. Pod-X in my cluster is in CrashLoopBackOff. How can I solve this issue? -Ohh:/ Most probably it is because of the known EKS issue. Just restart the pod. +How? -Just delete the pod. +Really? May I delete any pod in my cluster? -In theory, you can delete any pod of our application. Nevertheless, be careful :D I don’t remember how many times I had this conversation, but I have never…

Who sets the IP of a pod?

Intro Short Quiz (please RT) Who sets the IP of a pod? — Erkan Erol (@erkan_erol_) July 13, 2020

How does 'kubectl exec' work?

Last Friday, one of my colleagues approached me and asked a question about how to exec a command in a pod with client-go. I didn’t know the answer and I noticed that I had never thought about the mechanism in “kubectl exec”. I had some ideas about how it should be, but I wasn’t 100% sure. I noted the topic to check again and I have learnt a lot after reading some blogs,…

Yazgıları Birleştirme Enstitüsü

"The souls of heaven Are stars at night. They will guide us on our way, Until we meet again Another day." Kıymetli vatandaşlarım! Bugün, buraya, tarihin akışını değiştirecek bu enstitümüzün açılışına hoş geldiniz! —alkışlar—

Adapting to a software project

Throughout my career, a few times, I joined a project I became one of the main maintainers of the project/a component after a while I helped new people to adapt to the project The companies were different. The teams were different. The technology stacks were different. However, I realized my approach was similar. I think I can say some things about adapting to a software project. In this blog…

Aynısından

Kahvaltımı yapmış, odamı toplamıştım. Sonrasında yeni bulaşık makinasının gideri için gerekli parçaları tespit etmiş, nalbura gidip almış, montajını yapmıştım. Makinayı çalıştırmış, lavoba giderini test etmiştim. Her şey olumluydu ve artık sıradaki işime geçebilirdim: Berbere gitmek.

Primitive Takıntısı ve Değer Nesneleri

Primitive Obsession ünlü Refactoring kitabındaki kod kokularından biridir. Yazılımcıların karmaşık şeyleri ilkel veri türleri ile ifade etmeye çalışmasını ifade eder. Bu yazıda bu sorunu ve çözümünü ele alacağız. Görselin Kaynağı

Ustam: Lemi Orhan Ergin

Aslında bir video çekmekti planım lakin beceremedim bir türlü☹️Ben de yazmaya karar verdim. Umarım hislerimi ve düşüncelerimi düzgün ifade edebilirim. Bugün (13 Mart) Lemi abinin, Lemi Orhan Ergin’in doğum günü. En son söyleyeceğim sözü ilk başta söyleyeyim: İyi doğdun Lemi abi. İyi ki varsın!

Yazılımcı Fanatikliğinin Anatomisi

Feragatname (Disclaimer): İşbu blog yazısındaki her şey şahsi görüşlerim ve çıkarımlarımdan ibaret olup, herhangi bir kaynağa dayanmamaktadır. Yazıdaki ölçü vurgusuna dikkat edilmesi önemle rica olunur. Nereden çıktı bu yazı? Türkiye Yazılım Ustalığı topluluğumuz için Topluluk Davranış Kuralları’nı İngilizce örneğinden çevirirken bir ifadeye rastladım. Topluluğumuz cinsiyet, cinsel kimlik,…

Hash Fonksiyonları

Not: İşbu yazı Wikipedia kullanılarak yazılmıştır. Arzu edenler şu link üzerinden devam edebilir. Hash fonksiyonları belirli özellikleri sağlayan fonksiyonlardır. Bu özelliklere değinmeden önce fonksiyonları kısaca hatırlatmak istiyorum.

Bir takım teoriler, kanunlar ve ilkeler

Bir şekilde öğrendiğim bir takım teoriler, kanunlar, ilkeler var. Bunları çevremdeki insanlarla paylaştığımda ilgi çektiklerini ve çok bilinmediklerini farkettim. Ben de bir blog yazısı ile bunları kısa kısa ve basit cümleler ile paylaşayım dedim. Bu yazıda 5 tanesine değineceğim. Başlıklara wikipedia linklerini ekledim. Formal şekillerini okumak isteyenler oradan devam edebilir.

Yazılım Bağlamında Cohesion ve Coupling Kavramları Üzerine

Giriş Bu aralar Software Craftsmanship alanında okumalar yapmaya ve vakit buldukça konuşmalar izlemeye çalışıyorum. Yazılımın temel prensipleri ve kavramları bu alanın ana başlıklarından. Ben de okuduğum, anlamaya çalıştığım bu 2 kavramı çok çok basit şekilde, kendimce açıklamaya çalışacağım.

Dry Prensibi

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system. NOT: Bu yazı The Pragmatic Programmer kitabındaki “The Evils of Duplication” bölümünden yararlanılarak yazılmıştır. Programlama Prensibi DRY Keep It Dry Keep Things Dry

YAGNI Prensibi

Not: Bu yazı Martin Fowler’ın YAGNI yazısının özeti ve tercümesi niteliğindedir. Programlama Prensibi YAGNI Açılımlar You Aren’t Gonna Need It You Aint Gonna Need It Açıklama YAGNI, Extreme programlamanın prensiplerinden biridir. Gelecekte lazım olacak düşüncesi ile bir takım özelliklerin geliştirilmemesi gerektiğini savunur. Şimdi bir örnek üzerinden bu prensibi anlamaya çalışalım.

KISS Prensibi

Basitlik nihai karmaşıklıktır.

2 General/Ordu Problemi

Bu yazıda Two Generals' Problem ya da The Two Army Problem olarak anılan problemi anlatmaya çalışacağım.