AI kodlama iddialarının yanılsaması: Neden 'shovelware' patlaması görünmüyor?
(mikelovesrobots.substack.com)- Son dönemde AI kodlama araçlarının üretkenliği artırdığı yönündeki iddialar verilerle incelendiğinde, gerçekte hızda ya da çıktı miktarında kayda değer bir artış olmadığı görülüyor
- METR araştırmasına göre geliştiriciler AI kodlama araçlarının üretkenliği %20 artırdığına inanıyordu, ancak gerçekte %19 düşüş yaşandı
- Sayısız reklam söylemi ile şirketlerin ve geliştiricilerin abartılı 10 kat üretkenlik iddiaları, piyasa gerçeklerine ya da yeni yazılım sürümlerine yansımıyor
- Shovelware (seri üretilmiş uygulamalar, düşük kaliteli yazılımlar) artışı gibi bir olgu gözlemlenmiyor; yani görünür bir değişim yok
- GitHub, Copilot, Cursor, Google, OpenAI gibi şirketler ile bazı geliştiricilerin üretkenlik abartısı, yatırım, yeniden yapılanma ve maaş belirleme süreçlerinde kötüye kullanılıyor
- Ana sonuç: “Gerçekte daha fazla yazılım üretilmediği sürece, AI kodlamanın geliştiricileri 10 kat verimli yaptığı iddiası bir kurgudur”; bu nedenle geliştiriciler baskıya boyun eğmemeli ve verilerle yanıt vermelidir
Giriş: Yazılım geliştiriciler AI kodlamaya öfkeli
- Uzun yıllardır yazılım geliştiricisi olarak yaşayan yazar, programlamayla ilgili güçlü bir gurur ve kimlik duygusuna sahip
- AI tabanlı kodlama araçları ilk çıktığında umutluydu, ancak son araştırmalar (METR) nedeniyle artık şüphe duyuyor
- Kendisi AI kodlamanın onu yaklaşık %25 daha hızlı yaptığını düşünüyordu, ancak METR araştırması tam tersine %19 yavaşlattığını gösterdi
- İlgili araştırma, geliştiricilerin AI araçlarının verimliliğine dair öznel algısıyla ölçülen gerçek verilerin tamamen zıt olduğunu ortaya koyuyor
- Kendi yaptığı deneylerde de AI kullanımının gerçek programlama süresine olumlu etki etmediğini hissettiğini aktarıyor
Doğrudan doğrulama: AI ile rastgele karşılaştırmalı deney
- İş bazında AI kullanıldığında ve kullanılmadığında oluşan zaman farkını (Delta) ölçen bir deney yöntemi uygulandı
- 6 haftalık deneyden elde edilen veriler, istatistiksel olarak anlamlı bir fark ortaya koymadı
- Küçük örnekleme rağmen, AI kullanımının gerçekte %21 daha yavaş olma eğilimi gösterdiği görüldü (METR araştırmasıyla aynı oran)
- Eğer gerçekten 2 kat ya da 10 katlık bir iyileşme olsaydı, bunun verilerde açıkça görünmesi gerekirdi
- Bugünkü AI kodlama hayali gerçekleşmiyor; pratikte kayda değer bir değişim yok
Beklenti ve gerçeklik: Neden shovelware patlaması yok?
- AI kodlamadaki üretkenlik devrimi gerçek olsaydı, her türden uygulama, servis ve oyun patlama yaşamalıydı
- Pek çok AI kodlama aracının pazarlama mesajı (“Built to make you extraordinarily productive” vb.) ortalığı kaplamış durumda
- Google, OpenAI, GitHub Copilot gibi şirketler de geliştiriciler için %25 hız artışı ya da 10 kat üretkenlik iddiasında bulunuyor
- Ancak gerçek yeni yazılım sürümü verilerinde (GH Archive, BigQuery vb.) dik bir büyüme ya da patlama görülmüyor
- 2022 sonrası AI kodlama araçlarının yaygınlaşmasına rağmen, dünya genelindeki yeni sürüm ve proje sayılarında büyük bir değişiklik yok
Pazar etkisi ve geliştirici gerçeği
- AI-First stratejileri, FOMO, toplu işten çıkarmalar ve geliştirici maaşlarının düşürülmesi gibi sektör içinde toplumsal etkiler bile ortaya çıkmış durumda
- Gerçek geliştirme ortamlarında AI araçları bir üretkenlik devrimi sunamıyor
- Öğrenme eğrisi ya da araç uzmanlığı da mutlak üretkenlik farkını açıklamaya yetmiyor
Sonuç: Soğukkanlı, veri temelli değerlendirmeye ihtiyaç var
- Şu ana kadar yeni yazılım sevkiyatında bir değişim olmadığını verilerle doğrulamak temel nokta
- AI ile 10 kat geliştirici olunduğu iddiasını destekleyen bir kanıt yok
- Geliştiriciler baskıya teslim olmamalı ve araç seçimlerini bizzat doğruladıkları verilere göre yapmalı
Sık gelen itirazlara yanıtlar
-
"Prompt tekniğini düzgün öğrenirsen 10 kat geliştirici olursun"
- Gerçekten 10 kat üretkenliğe ulaşanlar olsaydı, dünya çapındaki yeni yazılım üretimi iki katın çok üstüne çıkmış olurdu
- İddialardan çok nesnel çıktılar (uygulamalar, projeler vb.) önemli kanıttır
-
"Daha çok erken, zamana ihtiyacı var"
- Milyarlarca dolar yatırım yapıldı ve araçlar gerçek iş ortamında zaten kullanılıyor
- Bugün alınan kararlar insanların hayatını doğrudan etkiliyor
-
"Şimdi benimsemezsen geride kalırsın"
- GitHub Copilot verilerinde bile uzmanlık arttıkça görülen gerçek üretkenlik artışı son derece sınırlı (%29 → %34 kabul oranı)
-
"Miktar aynı kaldı ama kalite arttı"
- Sektör genelinde kalite aslında geriliyor ve testler de azalıyor
- Gerçekten 10 kat geliştirici aracı olsaydı, shovelware seli yaşanması gerekirdi
-
"Her şey artık web sitesi merkezli; bugünlerde alan adları kimsenin umurunda değil. Vercel gibi yerlerin alt alan adları her şey oldu"
- Hâlâ bağımsız alan adını tercih eden çok sayıda kullanıcı var
-
".ai alan adlarındaki patlama (bu yıl %47) = gerçek artış"
- Yeni alan adı artışı sadece AI girişimlerinin pivot etmesinden kaynaklanıyor; genel yeni alan adı sayısında bir patlama yok
- Toplam alan adı sayısı açısından tablo böyle değil
-
"Geliştirmenin özü kod dışındaki işlerdir"
- Büyük şirketler dışındaki bireysel/küçük ölçekli geliştirici ortamlarında kod gerçekten merkezde yer alıyor
- Hâlâ küçük kodlama isteklerini tatmin eden yeni projelerde dikkat çekici bir artış görünmüyor
Kapanış
- Geliştiriciler gerçekte daha fazla ürün yayımlamıyor
- AI kodlamanın 10 kat üretkenlik sağladığı iddiası verilerle çürütülebilir
- Sektördeki FOMO ve pazarlama anlatılarının etkisine kapılmak yerine, gerçek çıktılar üzerinden değerlendirme yapılmalı
- Yazarın mesajı: “Baskı hissediyorsanız veri ve grafikleri gösterin. 10 kat üretkenlik iddiası için kanıt isteyin.”
8 yorum
10x geliştirici, yapay zeka yardımıyla belki 12x seviyesine sıçrayabilir.
Yapay zeka bir yanılsama. Güvenilir değil ve seviyesi de düşük. Yapay zekayla geliştirme yapılabileceği iddiası abartılmış bir yalan. Mümkün değil. Ve yapay zeka kullanmak, geliştiricinin etiğini bir kenara bırakan sorumsuz bir davranış.
Basit tekrar eden işleri tamamen yapay zekaya bırakıp, daha önemli işlere bütünüyle odaklanabileceğimiz bir seviyeye gelinirse, o zaman yapay zekanın kod yazma verimliliğini artırmada gerçekten büyük fayda sağladığını söyleyebiliriz diye düşünüyorum.
Bir komut verdiğinizde onlarca saniye bekledikten sonra çıktı geliyor; ama o onlarca saniyeyi verimli kullanmak da mümkün olmuyor, ayrıca o süre bittiğinde her zaman kusursuz bir çıktı beklemek de mümkün değil.
Sonuçta ben, o basit iş tamamen ve hatasız bitene kadar sürekli dikkatimi üzerinde tutmak zorunda kalıyorum ve başka bir işe de geçemediğim için... anlamlı bir iyileşme beklemek zor oluyor.
Açıkçası, Karrot’ta saatlik 10 bin won verip birkaç saat sadece basit işleri yapacak bir yarı zamanlı çalışan bulmanın, verimliliği artırmak açısından daha faydalı olduğunu düşünüyorum.
Haftada yaklaşık 100 bin wonluk bir harcamayla bile ben şahsen oldukça memnun kaldım.
Özellikle muhasebe işi yaparken işi bırakıp tam zamanlı ev hanımı olan birkaç hanımla da çalıştım; kodlamayı hiç bilmeyen kişiler bile birkaç kez geri bildirim verdikten sonra işi çok temiz şekilde çıkarıyorlar haha
Boilerplate kodları da Excel kullanarak otomatik doldurma, formüller falan sayesinde göz açıp kapayıncaya kadar hazırlayabiliyorlardı...
Hmm... Dürüst olmak gerekirse, yapay zeka da sonuçta bir araç olduğu için onu iyi kullanmak gerekiyor.
Hangi araç olursa olsun, iyi kullananlara kıyasla onu sadece şöyle böyle kullanan ya da düzgün değerlendiremeyen insanların sayısı daha fazla.
Yapay zekayı kaliteli sonuçlar üretecek şekilde ayarlarsanız, yeterince ezici bir performans gösterebilir.
Bence yapay zekayla kaliteli sonuç ürettirmeyi bilmeyen insanlar sadece aptalca promptlar yazıp duruyor ve sonra da verimliliğin düştüğünü söylüyor. Yapay zekanın üretkenliğini inkâr etmeyi gerçekten hiç anlayamıyorum.
Ama bunu bu şekilde söylemeniz, “gerçek CS'yi derinlemesine anlayıp yeterli uzmanlık kazanmış bir kişi, herhangi bir yapay zekadan daha üretkendir.” demek gibi; sanki hiçbir şeyi kanıtlamıyor.
Kısa süre önce bahsedilen METR araştırmasına bakmıştım; benim hissettiklerimi ve kafamdaki soruları oldukça iyi açıklayan bir sonuçtu.
Hacker News yorumlarında geçen "tekrarlı işler"i yaptırsanız bile, aslında çoğunda manuel kontrol ve düzeltme gerekiyor.
Yapay zekanın yazdığı "basit" sonuçlardaki darmadağınık mantığı görüp de "bunu ben yapsaydım daha iyiydi" diye düşündüğüm bir iki kez olmadı.
Gerçekten basit, kopyala-yapıştır düzeyindeki işleri elbette iyi yapacaktır.
Ama öyle durumlarda zaten doğrudan kopyala-yapıştır ve snippet'ler daha verimli. İnternete bağlanıp verilerimi başkasının sunucusuna yüklemem ve her seferinde onlarca saniye beklemem de gerekmiyor.
Hacker News görüşü
Bana göre AI çan eğrisi gibi; birçok kişi için de benzer olduğunu düşünüyorum. Çıktıyı hangi ölçüte göre değerlendirdiğimiz önemli. Ölçüt “kod satırı sayısı” değil, “iyi kalitede, bakımı yapılabilir, ölçeklenebilir ve yükseltmesi kolay kod satırı sayısı” olmalı. Bu ölçüte göre “tüm repo’yu oluştur” gibi isteklerin sonucu anlamsız çöp olurken, AI’ın
getUser(...gibi kodları otomatik tamamlaması üretkenlik artışıdır. Bunun %0,1 mi, %1 mi yoksa %10 mu olduğu konusunda net bir şey söyleyememBenim açımdan en ciddi sorun şu: Şirkette şu an uğraştığım problemler dikkatli planlama ve uygulama gerektiriyor, ama AI hiçbir şekilde yardımcı olmuyor. Buna rağmen yöneticimiz “biz AI-first bir şirketiz” diyerek proje teslim süresini önceki tahminin %20’sine indirdi. SVP’ler ve PM’ler arasında böyle bir toplu çılgınlık inanılmaz yayılıyor ve ben daha önce böyle bir şey görmedim
gitile döneriz diye düşünüyorum. Yarısı şaka yarısı ciddiAynı anda birden çok şey doğru olabilir. LLM’ler rastgele seçilmiş genel görevlerde geliştirici üretkenliğini 10 katına çıkarmıyor. Öte yandan belirli bir görev aralığında üretkenliği dramatik şekilde artırıyorlar. Yoğun ve tekrarlı işleri otomatikleştirmekte de kullanılabilirler; gerçek süre insanlardan uzun sürse bile iş arka planda çalıştığı için bu sorun olmuyor. Yeni API ya da kütüphaneleri öğrenirken LLM’ler ciddi biçimde hız kazandırıyor; bilmediğim bir dilde küçük glue kodları yazarken zaman kazandırıp gereksiz öğrenme ihtiyacını da ortadan kaldırdığı için çok faydalı oluyor. Büyük mevcut kod tabanlarının bakımında pek üretkenlik farkı hissetmiyorum. Yeni bir web sitesi için iskelet kurulumunu LLM şaşırtıcı derecede iyi yapıyor. Mock class yazımında da, mock kütüphanesinin kullanımını doğru kavrayıp benim iki kez yapıp sonra unuttuğum karmaşık işleri anında hallediyor. Yeni bir kod tabanının yapısını anlamada da yaklaşık %70 oranında tatmin edici sonuç veriyor. Karmaşık tasarlanmış projelerde HTTP route’larının nerede olduğu ya da dependency injection fonksiyonlarının nerede bulunduğu gibi konularda da “hey Claude, auth ile ilgili fonksiyonlar nerede?” diye sormak rahat oluyor. Doğru aracı doğru işte kullanmak gerektiğini düşünüyorum
Videolarda ekrana kodun aktığı ve “junior geliştiricilerin işi bitti” denmesinin ötesinde çoğu zaman elle tutulur bir şey yok. Bence bunun nedeni ekonominin istikrarsız olması ve AI’ın kurtarıcı olacağı beklentisiyle abartı ve kaygının havayı kaplaması. Elbette AI ile etkileyici sonuçlar alınan anlar var, ama temelde belli bir yetkinlik yoksa anlamsız kalıyor. Başlangıç ile orta seviye arasındaki kişiler sosyal medyada abartılmış başarı hikâyeleri yayıyor. Herkesin kendi “AI süper gücünü” korumaya psikolojik ve pratik olarak çabaladığı bir atmosfer oluşuyor. Sonunda hype döngüsünde bir noktada denge bulunacak ve yeniden onlarca milyar doların yakılacağı günü bekliyoruz
Benim deneyimimde AI bazı ufak işlerde işe yaradı; örneğin küçük refactoring’ler, type tanımlarını otomatikleştirme gibi. Ama daha karmaşık işlerde birçok şeyi atladı ve yeniden çalışma gerekti. Gelecekte bu sözlerimi yeniden düşünmek zorunda kalabilirim, ama son dönemde daha az deneyimli mühendislerin büyük özellikler geliştirmeye çalışırken AI’ın ürettiği sonucu sorgulamadan “iyi kod” kabul etmesi daha sık görülüyor. Oysa bu kodlar ya bizim stil rehberimizi ve kalıplarımızı izlemiyor ya da mevcut kütüphaneleri kullanmak yerine mantığı sıfırdan yazıyor; sonuçta bakımını bizim yapmak zorunda olduğumuz kod artıyor. Hatta sonradan her şeyi tek seferde yapmaya çalışan dev PR’lar bile çıkabiliyor
Buradaki iddiaya katılıyorum. AI kullansam da üretkenlikte çarpıcı bir artış görmedim. Yazılım mühendisleri düzenli olarak problem çözme, ayırt etme ve kodlama pratiği yapmazsa sinirsel bilgileri zayıflayabilir diye düşünüyorum. AI’ın gelecekte 2 kat ya da 10 kat üretkenlik getirecek bir teknoloji olduğu vaadinin somut bir karşılığı yok ve kişisel kod tabanlarında az miktarda üretkenlik artışı olmuş olsa bile piyasada gerçekten daha iyi ürünlerin daha fazla çıktığını görmedik. Danışmanlık yaparken kurucuların ve CTO’ların AI’ı zorlayıp sonunda kodu doğru düzgün yönetemeyip daha fazla kaosa yol açtığını sık sık görüyorum. Bugünlerde mühendislik best practice’lerini yerleştirmek için danışman rolü üstlendiğim de çok oluyor
CEO’lar AI sayesinde mevcut geliştiricilerin üretkenliğinin 10 kat arttığını söylüyor, ama eğer bu gerçekten doğruysa daha çok geliştirici işe almaları gerekmez mi diye düşünüyorum. Aynı yatırımla üretkenlik 10 kat artıyorsa, o “motora” daha fazla para akıtmak gayet mantıklı olurdu. Ama sahada sanki üretkenlik aynı kalırken yalnızca iş gücü maliyetini düşürmeye odaklanılmış gibi görünüyor
Yeni ürün çıkış sayısına bu taze açıdan bakan analiz etkileyici. Hızlı büyüme yerine beklenenden daha az değişim olduğu hissine katılıyorum. Karşı görüş olarak, belki de darboğaz aslında kod yazımı değildi; ne inşa edileceğini keşfetmek ve onu gerçek platformlara taşımak başlı başına çok zaman ve emek isteyen kısımdı. Öte yandan AI araçlarını yanlış kullanmak da fazla kolay. Bazen “nihayet anladım!” derken ertesi gün “yine başka bir şekilde yanlış kullanıyormuşum” diye fark ediyorsun. Yazılım geliştirmenin neden bu kadar zor olduğu ve üretkenliği hızlandırmanın neden bu kadar güç olduğu, 20 yıldan fazla süredir geliştirme yapıyor olsam da hâlâ tam net değil
O geleceği şu anda biz inşa ediyoruz. Benim gerçekten hızlanmaya başlamam, agentic AI yeterince iyi hale geldikten sonra, yani 4-5. aydan itibaren oldu. Sadece bugün bile iMessage arşivini bir web sitesine aktaran bir CLI aracı yaptım; eskiden haftalar sürecek bir işi şimdi bir iki günde
homebrewformula’sıyla birlikte çıkarabilecek gibiyim. iOS uygulaması da elde yazarak ilerlemeye kıyasla çok daha hızlı gidiyor ama ben bilerek yavaş ilerliyorum. Bu arada söz konusu gönderideki veriler 3-4. ayda bitiyor; bence üretken AI’ın kodlama konusunda gerçekten faydalı olmaya başlaması tam da bu noktadan sonra oldu. (Copilot’ı 2022 Kasım’ından beri kullanıyorum)Bir zamanlar tam zamanlı geliştiriciydim; sonra yönetici ve CTO olarak çalıştıkça yazılımın günlük pratiğinden giderek uzaklaştım. Yeniden kod yazmaya kalkınca framework’leri, API’leri, dilleri ve küçük püf noktalarını baştan öğrenmek eskiden ilginç gelirdi ama şimdi sinir bozucu oluyor. Fakat Claude Code gibi araçlar ve yazılım tasarımı deneyimim sayesinde, eskiden yaptığım gibi büyük sistemleri tekrar geliştirmek mümkün hale geldi. Üretkenliğim %20 artmadı, 10 kat da hızlanmadı. Zaten hiç yapmayacağım bir işi yeniden yapmamı sağladığı için buna sonsuz üretkenlik artışı demek istiyorum. Eğer geliştirmeyi seven ve çok yetkin biri olsaydım bu araçlar bana sadece baş ağrısı olurdu; ama normalde geliştirme yapmayacak biri için durum tam tersi