2025'te Neler Yaptım
Koskoca bir yıl çok hızlı bir şekilde bitti yine. Şöyle bir retrospektif yapayım kendi çapımda dedim. Geçen sene olduğu gibi acaba yeni neler öğrendim?
İlk olarak ghostty için bir soru açmışım, Terminal’deki blink özelliğinin olmadığı ile ilgili. Altında bir-kaç konuşma olmuş ama şimdi baktım uzay boşluğunda kalmış…
Sonra bir tane açık kaynak go kütüphanesi yapmışım: getenv, an itibariyle
ne olduğunu hemen hatırlayamadım, 2 tane issue açmışım, dependabot PR’larını da
şimdi gördüm, hemen merge ettim…
devchain adında bir organizasyon kurup, yine açık kaynaklı bir proje yaptım. cauldron adında, GitHub, GitLab gibi platformların webhook’larını çok hızlı bir şekilde handle edip Kafka’ya yazan ve daha sonra buradan analizler yapan bir proje. Bununla uğraşırken webhooks diye başka bir açık kaynak kütüphaneye de eksik eventleri ekleyerek katkı yapma fırsatı buldum. Repo sahibi sanırım bırakmış artık projeyi, Ocak 2025’te açtığım PR’lar olduğu gibi duruyor…

Gelen GitHub event’leri
Sonra hemen GitHub Star sevgili kardeşim Fatih Kadir Akın’a dedim ki
Pampa, senin awesome-chatgpt-prompts reposuna bir webhook eklesek? Bir projem var, event’leri dinleyeceğim!
Sağolsun hemen ekledi, eklediği gibi yağmur gibi event’ler akmaya başladı. Neredeyse dünyanın en çok aksiyonu olan repolarından biri oldu

Event dashboard’lardan bir tanesi
Sonra, Mehmet İnce’in bir çağrısını görüp, bir şeyler yapmaya çalıştım, çok da fazla üzerine düşemedim, archive moduna çektim.
Yine izlediğim bir YouTube videosundan (nushell) gaza gelerek tablo diye bir command-line tool’u geliştirdim, tabiiki açık kaynak. Bash kullanıcılarının hoşuna gidebilir.
echo "hello|world" | tablo -l "|"
┌───────┐
│ hello │
├───────┤
│ world │
└───────┘
İlk aşkım, tek kürekçim TextMate için go bundle’ı yaptım, kendi private bundle’ımda bulunan her şeyi oradan söküp attım, ayrı bir bundle yaptım. Muhtemelen benden başka da kullanan yoktur.
Yine Fatih’in mcptools projesine ufak tefek katkılar yaptım.
Statik html bir websitem için iletişim form’u lazımdı, form post edilince slack’e mesaj atan basit bir servis. Daha önce JavaScript ile backend hiç yazmamıştım, öğrendim ve yaptım.
Şirkette bir kısım seri halinde eğitimler yaptım;
- Introduction to Python
- Introduction to Docker, Docker Compose, Docker Swarm
- Rest API Best Practices
- Basic Fundamentals
- Introduction to Linux
Yine şirket için, demo amaçlı Kong ile api gateway / load balancer projesi yaptım.
Geçen sene yaptığımız, sonra unuttuğumuz yapay zeka projemizi (o dönemde GPT-3 vardı)
gaza gelerek baştan tekrar yazmaya başladım. Gündüzleri şirket işleri, geceleri de
Talent Mirror ile uğraştım. İlk yaptığım dönemde responses api
yoktu, chat completion ile yapmıştım…

Talent Mirror
Bolca docker stack yaml yazdım, kendi çapımda devops’culuk oynadım,
kampanya ve kupon kodları kovaladım, Hostinger’den ucuza makineler aldım,
acayip bir playground oldu benim için. Traefik, Docker Swarm
ve benzeri konularda bir ton şey öğrendim. Tabiiki rake task’lerle
deployment’lar, otomasyonlar ruby hep yanımda!
Projenin ortasında LangChain’e geçtim, kendimi python ve yapay zeka ekosistemi
içinde bir kütüphaneden diğerine, daldan dala atlarken buldum…
Önceki staj döneminin rock star’ı Taha Berk Kuyruk’u işe alarak yapay zeka departmanımızın ilk adımlarını attık. Kendi adıma yepyeni bir python framework’ü olan Streamlit ile tanışıp hemen bir proje yaptık.
Kendim için büyük gaz verici ama insanlık için mikro seviyede, OpenAI’ın
codex’i için Python 3.14 desteği veren bir PR açtım ve
merge edildi! Süper basit bir işti, benim de codex-cloud’a 3.14’e
ihtiyacım vardı, şansımı denedim ve oldu… Yani PR’ın zoru-basiti ya da
küçüğü-büyüğü olur demeyin, bulduğunuz yerde yapıştırın…
Talent Mirror’ı şirket kullanmak istedi ve ek bir geliştirme durumu doğdu. Onu yaparken aklımıza bu feature’dan da acaba bir proje çıkar mı? dedik ve kardeş proje Talent Score çıktı!

Talent Score
Django’dan kurtulayım derken battıkça batmıştım ama Talent Score’da realtime işler yapmak için web socket sunucusu lazım oldu. Django’nun channels’ı ya da hali hazırdaki async python çözümleri olabilecekken ben ne yaptım?
Oturup go ile web socket servisi yazdım, kendi yazdığım servisi kullanmak
istedim. Acayip küçük bir memory ve filesize’da işi bitirdim, hem de bir sürü
yeni olaylar öğrendim.
Her iki projede de öküz olduğum için server-side rendering (react vs frontend olmadığı için bende) yaptım ve günün sonunda bir sürü JavaScript lazım oldu. İşte o noktada hayatıma Alpine.js girdi. Tam benlik. Bu iki projede, browser’ların media api’lerini, file api’lerini öğrenmek zorunda kaldım.
Bir sürü Celery task, queue’lar, go ile tek CPU’da binlerce http request handle ederken, 4 CPU’lu makinede max 3 tane celery worker run edebilmenin verdiği üzüntüler, OpenAI api’sine her vuruşta modele göre yapılan ödemeler, kan-ter ve göz yaşlarında hahahahha güzel tecrübeler diyebiliriz…
Stripe’ın python api’sini de öğrenmek zorunda kaldım, bir ton döküman okudum, stripe’ın doküman sitesinde AI assistance var, bana yazdırdığı kodlar kısmen OK kısmen değildi, özellikle bir sürü webhook’un olması, hangi webhook acaba bana lazım olur vs bunları denemek, öğrenmek ve anlamak gerçekten yordu…
Ben AI tool olarak ilk günden beri ChatGPT kullanıyorum. Codex çıkınca hem cli hem de cloud versiyonları kullandım. Gerçekten çok işime yaradı. Projenin ortasında ekibe katılan süper bir developer gibi ona açtığım task’leri projelerin genel kod geliştirme stiline göre yaptı.
Yaklaşık 1 hafta önce gaza gelip Claude aboneliği açtım Apple üzerinden (daha ucuz oluyor diye) sonra dedim ki; keşke ilk günden sadece Claude kullansaymışım!!!
Aradaki fark fersah fersah. Geçenlerde Fatih tweet atmıştı;
Eğer AGI diye bir şey varsa şu an Opus 4.5 modeli bence AGI…
demişti. Aynı fikirdeyim En az 1 haftada yapacağım şeyi 1 saate yaptı hem de cillop gibi, testleriyle beraber.
Şirketteki ekibimize canavar gibi stajyer bir kardeşimiz katıldı, Tuna Toktaş, Taha ile beraber çılgın bir yapay zeka projesi yaptılar, ben süpervizörlük yaptım, vektör database, api servisleri bir sürü Django + Django REST (internal servis için) havalarda uçtu…
Ekim ayı kampanyalarından acayip ucuza 1 yıllık boots.dev aboneliği aldım, gamification olayı beni bozdu, eğitmen ve konular iyi ama oyun gibi olması beni soğuttu biraz.
Bu yazıyı yazarken farkettim, bu sene sadece 2 kitap almışım. Bol bol YouTube videoları izledim. Tailwind CSS skill’erim acayip yükseldi :)
Bu sene en çok hoşuma giden olay Fatih’in GitHub elektronik badge’ini bana hediye etmesi ve bir sürü GitHub goodie’leri getirmesiydi ♥️
Kendi adıma yine bol bol kod yazdığım bir yıl oldu, yeni şeyler öğrenmeye devam
ettim. Bolca python ve django, bash, ruby ve çok az go, kendime göre
çok fazla js, bolca markdown yazdığımı düşünüyorum.
Eğer son dakikada caymazsam, bir sonraki projede backend’i go ile yazıp
django’yu admin panel olarak kullanıp, hardcore reactjs ile frontend’i
yapıcam canıma tak dedi…
Kabaca 2025 bende bu şekilde geçti, bakalım seneye neler olacak? Herkese iyi seneler dilerim.