1 puan yazan GN⁺ 1 시간 전 | 1 yorum | WhatsApp'ta paylaş
  • AI kullanmak, ilgili işi yaparken öğrenme miktarını azalttığı için açıkça etkilidir; ancak bu, AI'ı reddetmek için bir gerekçe değildir
  • AI uzun vadede mühendislerin yetkinliğini zayıflatsa bile, kısa vadeli üretkenlik avantajı yeterince büyükse kullanımı kaçınılmazdır
  • İnşaat işçilerinin fiziksel yüküne rağmen ağır yük kaldırması gibi, mesleğin özsel gerekliliklerine uymaktan başka çare yoktur
  • Elle kod yazmayı sürdürmek mümkün olsa da, elektrikli aletleri reddeden marangozun iş bulamaması gibi, AI'ı reddeden mühendislerin AI'ı benimseyen mühendislere karşı rekabette geride kalma olasılığı yüksektir
  • Yazılım mühendisleri de profesyonel sporcular gibi kariyer ömrü sınırlı olan ilk nesil olabilir; bu ihtimale göre plan yapmak gerekir

AI kullanımı ve yazılım mühendislerinin kariyer ömrü

  • AI'ın insanların genel zekâsını düşürdüğüne dair güçlü kanıtlar yok; ancak AI ile bir işi yapmak, o belirli işi yapma konusunda daha az şey öğrenmeye yol açtığı için bu durum açıktır
  • Bazı yazılım mühendislerinin işte AI kullanımından kaçınılması gerektiğini düşünmesinin mantığı kabaca şöyledir
    • AI kullanırsan, iş sürecinde daha az öğrenirsin
    • Zamanla teknik yetkinliklerin körelir ve daha az etkili bir mühendis olursun
    • Dolayısıyla işte AI kullanmamak gerekir sonucuna varılır
  • Ancak ikinci öncül kesin değildir
    • Assembly'den C'ye geçerken programcılar bazı açılardan daha az etkili, başka açılardan ise daha etkili hale geldi
    • Elle kod yazmaktan AI kullanmaya geçiş daha büyük bir değişim olabilir; bu yüzden sonucu kesin olarak söylemek zordur
  • AI kullanımının uzun vadede mühendisleri daha az etkili hale getirdiğini varsaysak bile, bu tek başına AI kullanılmaması gerektiği sonucunu doğurmaz
  • 2024 civarına kadar yazılım mühendisliğini öğrenmenin en iyi yolu bizzat yazılım mühendisliği yapmaktı
    • Kodlama hobisini yüksek gelirli bir kariyere dönüştürmek mümkündü ve işini seven insanların zamanla daha da iyi hale geldiği bir yapı vardı
    • Bu, yazılım mühendisliğinin değişmez özü olmaktan çok şanslı bir rastlantıydı

Kısa vadeli üretkenlik ile uzun vadeli yetkinlik arasındaki çatışma

  • AI kullanımı uzun vadede iş yetkinliğini veya genel akıl yürütme becerisini kötüleştiriyor olsa bile, kısa vadeli kazanç yeterince büyükse mühendislerin AI kullanması gerekebilir
  • İnşaat işçileri etkili çalışabilmek için ağır yük kaldırmak zorundadır; ancak bu tür işler uzun vadede bel ve eklemleri yıpratarak zaman içinde onları daha az etkili işçilere dönüştürebilir
    • İnşaat işçileri, "ağır şey kaldırmamak iyi bir inşaat işçiliğidir" demez; bunun yerine "Yapacak bir şey yok, iş bu" der
  • Şantiyelerde ağır yükten kaçınmak için vinç, el arabası ve forklift gibi yöntemler vardır
    • Yazılım mühendisleri için de zihinsel olarak derinleşmeyi sağlayacak yöntemlere ihtiyaç olabilir; ancak benzer bir yaklaşım henüz keşfedilmemiş olabilir
  • AI gerçekten insanları daha az zeki yapıyorsa, elde kod yazmaya devam etmek mümkündür
    • Ancak elektrikli aletleri reddeden bir marangozun neredeyse iş bulamamasıyla aynı nedenle, yalnızca elle kod yazarak maaş almak zorlaşabilir
    • Modeller yeterince iyi olursa, uzun vadeli bilişsel kapasitesini kısa vadeli yüksek gelirli kariyerle takas etmeye razı olan mühendislerle rekabette geri düşülür
  • Sendikalar teorik olarak bu süreci yavaşlatabilir
    • Başka sektörlerde işverenleri dibe doğru yarışı yavaşlatmaya zorladıkları oldu
    • Ancak teknoloji çalışanlarının ücretleri yüksek, dünyanın her yerinden çalışmak mümkün ve ikame emek bulunabildiği için teknoloji sendikaları konusunda kötümser bir tablo var
  • Profesyonel sporcuların kariyer ömrü kabaca en fazla 15 yıldır; 30'lu yaşların ortalarına kadar çok para kazanma fırsatları olsa da sonrasında bedenleri aynı performansı sürdüremez
    • Bugün sık görülen trajik figür, "şov sonsuza dek sürecek" diye inanıp emeklilik sonrasına hazırlık yapmayan profesyonel sporcudur
    • Yazılım mühendisleri de aynı durumda olan ilk nesil olabilir; öyleyse buna göre plan yapmak akıllıcadır

1 yorum

 
GN⁺ 1 시간 전
Hacker News görüşleri
  • Haftada birkaç kez aynı konuşmayı yapıyorum: “Yapay zeka geliştiricileri anlamsız hale getirecek” deniyor; neden diye sorunca da “çünkü LLM kod yazabiliyor” cevabı geliyor
    Oysa gerçekte geçimimi sağladığım işte kod yazma kısmı eskiden %2–5’ti, şimdi daha da az; geri kalanı ise şeyleri anlayıp ardından çözümü kurgulama becerisini uygulamak
    Geliştirici işinin kod yazmaktan ibaret olduğuna hâlâ inanan geliştiricilerin gelecekte işi olmayabilir; LLM’lerin geliştiricilerin yerini alacağına inanıp geliştiricisiz ilerlemeye çalışan işletmecileri de sonunda doğal seçilim eler diye düşünüyorum

    • 2000 civarında ilk işlerimden birinde, 1970’lerin başından beri çalışan kıdemli bir yazılım mühendisiyle eşleştirilmiştim ve bir şeyler öğreneceğim için çok heyecanlıydım
      Dördüncü gün gibi bana “Kariyerimde bana en çok yardımcı olan şeyi sana öğreteceğim” dedi ve ardından “Delikli kartları her zaman numaralandır; düşürürsen kolayca tekrar sıraya koyarsın” diye ekledi
      Delikli kart döneminin çoktan bitmiş olmasından dolayı hayal kırıklığına uğramıştım, ama o da “Sana yardımcı olacak şeyi değil, bana yardımcı olmuş şeyi söyleyeceğimi söyledim. Yazılım hep değişir” dedi; bugünlerde o sözü sık sık hatırlıyorum
    • Bu cevap biraz fazla cilalı. Gerçekte zamanın çoğu kodlama ile geçiyor; buna yazmak, yeniden yazmak ve tekrar tekrar yazmak da dahil
      Dokümantasyonu yetersiz API’lere uydurmak için yeniden yazdığın kodu çalıştırmaya uğraşırken duvara kafanı vurduğun zaman da bunun içinde
      İlk yorumdaki ifade, yazılım mühendisliğini matematik gibi saf ve yüce bir faaliyet gibi gösteriyor ama gerçekte, bir planla işe girmiş olsan bile gerçeklik plana uymayınca sıkışık takvim içinde sondaj dizisini yerine oturtmak için büyük bir çekiçle metale vuran bir sondaj işçisi olmaya daha yakın
    • Kod yazmanın %2–5 olduğu insanlar var ama %6–50 olduğu insanlar da var
      “Şeyleri anlayıp çözüm kurgulamak” da tam olarak AI’ın hedef aldığı alan
      Belki de sadece katkının takdir edildiği bir ortamda çalışıyorsun, ya da eğitim verisinde az bulunan bir sektör/alan içindesin, ya da sorun alanın AI’ın ele alması için fazla karmaşık
      Jira ticket kapatıp CRUD web uygulaması yapanların ise geçimleri çoğu zaman ortadan kalkabilir ya da aynı veya daha düşük ücret karşılığında daha fazla çıktı üretmeleri istenebilir ve bunu da AI ile yakalamaları beklenebilir
    • Doğal seçilim halleder” ifadesi hoşuma gitti. AI’ın yazılımı ve ötesini nasıl değiştireceğine dair tahmin çok, ama artık sözlerin durup sonuç gösterisinin ne zaman başlayacağını merak ediyorum
      Olacaksa olur; yöntem yayılır, herkesin hızla erişebileceği hale gelir ve ilerleme sürer
      Olmayacaksa da ortada gerçek sonuç bulunmamasıyla anlaşılır; “Ben görüyorum” demek yetmez. Herkesin görüp kullanabileceği, kaçınılmaz ve inkâr edilemez bir gerçeklik olması gerekir
    • Prensipte katılıyorum ama %2–5 tahmini aşırı düşük görünüyor. Çoğu geliştiricinin koda %25, hatta bazen %40 ayırdığını söylesen ikna olabilirim ama sadece %2 ayıran biri çok nadir
      Ancak büyük bir şirkette CTO danışmanı gibi aşırı üst düzey bir staff roldeysen mümkün olabilir; ama bu da zaten çok nadir bir konum demek
  • AI’a verilen kutuplaşmış tepkiler, sanırım hangi mercekten baktığına bağlı. Junior roller hızla ortadan kalkıyor ama senior rollerde deneyim ve muhakeme her zamankinden daha önemli hale geliyor
    Bu yüzden yazılım mühendisliği artık birçok insan için ömür boyu yapılacak bir meslek olmayabilir. Bu, elit sporların çoğu insan için gerçekçi bir kariyer olmamasına benziyor; ama yine de bazıları bu işi meslek olarak yapacak ve yapmalı da

  • Benim deneyimim tam tersiydi. En yeni araçları gerçekten kullanmaya çalışan çok yetkin mühendisler, 40’lı ve 50’li yaşlarda olanlar dahil, eskisinden çok daha iyi hale geldi
    Geleneksel programcıların zamanla sahada zayıflamasının nedenlerinden biri, satrançta olduğu gibi konsantrasyon ve derin hesap yapma yetisinin azalması. Yaşlı bir satranç oyuncusu satrancı 19 yaşındaki bir dahiden çok daha iyi bilir ama aynı hızda uzun süre hesap yapamaz; sonunda deneyim saf hesap gücüne yenilir
    Claude Code ve Codex bu hesap yükünü hafifletiyor, deneyimle birikmiş tüm içgüdüler ve 2 saniyelik “sezgiler” ise aynen kalıyor
    Artık mesele sadece adil rekabet değil; tersine, rekabet yaşlılar lehine haksız hale geldi. Eskiden 6 kişilik bir ekibi yöneten senior, şimdi ajan ekibini yönetiyor ve eskisi gibi kod incelemesi yapıyor. Hatta bazen ajanların yönünü değiştirmek, yanındaki junior’ları yönlendirmekten daha kolay oluyor

    • Neyse ki yazılım mühendisleri için bir mimar yolu var ve ayrıntılı hesap yapma biçimi sürekli değişse bile derin sezgiyi ödüllendiren bir yol bu
      Ama acil ve henüz cevabı bilinmeyen soru şu: İşin siperlerinden geçmeden iyi mimarlar çıkabilir mi?
      LLM’ler de sezgiye benzer bir şey yaptığı için ayrımı korumak gerekiyor. LLM daha çok internetin kolektif bilinçdışına benziyor; iyi ve kötü deneyimlerden doğan zevklerden açıkça farklı
      Ortaya çıkan sezgi sonuçta “iyi zevk”tir ve bu da her türlü teknik alanda senior rolün temel işine çok yakındır
    • Eğer bir senior tek başına 6 meslektaşın işini yapabiliyorsa, o meslektaşlara ne olacak?
      Tarımda traktör yüzünden yerinden edilen insanlar işlerini koruyamadı. Şimdi farklı olan ne?
    • “Eskiden 6 kişilik ekibi yöneten senior şimdi bir ajan ekibini yönetiyor” sözü, yazarın ana fikrini doğruluyor
      6 kişilik ekip artık gerekmiyor ve mantıken şirketten çıkarılıyor
      O halde yazılım mühendisliği bazıları için meslek olarak kalacak olsa da çalışan sayısı %85 azalabilir
    • Ben 43 yaşındayım ve 15 yıllık deneyimin sonunda Java/Swing geliştiricisi olarak çok üretkendim; araçları da avucumun içi gibi biliyordum
      Ama o şirket artık yok ve bugün kullanılan yeni araçlarla verimli çalışmayı öğrenmem çok daha uzun sürüyor. Çünkü yeni ortamın ayrıntılarını 10 yıl boyunca öğrenmedim
      Bu yüzden AI, doğru sözdizimini bulmak ve birim test çerçevesi ayrıntılarını hatırlamak konusunda bana inanılmaz zaman kazandırıyor. 1–3 yıl kalırsam çok daha hızlanacağımı ve araçları daha iyi öğreneceğimi düşünüyorum
    • Kişileştirmeyi bırakmalıyız. Ajan ekibi diye bir şey yok; sadece bilgisayarda çalışan araçlar ve süreçler var
      O senior mühendis ortadan kaybolursa geriye hiçbir şey kalmaz. 6 kişilik ekip daha iyidir
  • “AI kullanıcıları zamanla teknik yetkinliklerini köreltip daha az etkili mühendisler haline gelir” sözü bence uzun vadede genel olarak doğru çıkacak; bu da üzücü
    Mesleki açıdan bakınca insanlar kabaca ikiye ayrılıyor: AI ile akıl yürütmesini güçlendirenler ve AI ile akıl yürütmenin yerine geçenler. İlki beni çok endişelendirmiyor ama ikincisi endişelendiriyor
    ABD’de devlet lisesi öğretmeni olan annem, öğrencilerin “Google AI overview”u mutlak gerçeğin kaynağı gibi kabul etmesinden sık sık yakınıyor
    Belki de bu, eskiden “Wikipedia kaynak gösterilmez” denmesi gibi yeni bir olgudur; ama pandemiden sonra sınıfa gelen çocukların eleştirel düşünme yeteneğinde belirgin bir düşüş olduğunu hissediyor
    Influencer’ların ve internetteki anonim insanların neyi sevip neyi sevmemeleri, neye inanmaları gerektiğini söylediği bir ortamda büyümüş bir ya da iki nesil var. Bunlar LLM’lerden önce zaten akıl yürütmeyi dış kaynak kullanımıyla devretmişti; üstelik kalitesi şüpheli olsa bile istediklerini aldıklarına inanmaları için tasarlanmış sistemlerle üretken biçimde etkileşime girmeye hazır görünmüyorlar

    • Gerçekten de üretilen çıktıya düzgün bakmadan çözüm üreten insanlarla çalışıyorum. Uygulamayı birkaç kez tıklıyorlar ya da birkaç test koşturuyorlar; sonuç fena görünmüyorsa deploy ediyorlar
      Tüm PR boyunca Claude izleri görülüyor ve neredeyse hiç düzenleme yapmadıklarını varsaymak güvenli. Bunlar A grubu
      Öte yandan sorunu sonuna kadar ele alan, değişikliği sınamak için harness kuran, sonuçları doğrulayan, çeşitli çözümlerden ideal sonucu sentezleyen, benchmark yapan, ince ayar çeken, kapsamlı test eden ve PR’a mantıklı bir doğrulama prosedürü koyan ekip arkadaşları da var. Bunlar B grubu
      Bunlar tamamen farklı AI kullanım biçimleri. A şu an için idare ediyor gibi görünebilir; ama B, verilen zaman içinde mümkün olanın yeni versiyonu ve istisnai profesyonel ortamlar dışında neredeyse hiç görmediğim yazılım mühendisliğinin yeni standardını tanımlıyor
      A grubunun sektörden epey hızlı şekilde dışarı itileceğini düşünüyorum. LLM’ler, öğrenmeye istek varsa insanı şaşırtıcı derecede etkili çalıştırıyor. Böyle bir titizlik varsayılan hale gelebilir ve insanın döngü içinde hâlâ faydalı bir bileşen olmasının tek yolu da bu olabilir
    • Çevremdeki birçok yetişkin de artık Google AI overview’u mutlak kaynak gibi kabul ediyor
    • Bununla ilgili yakın zamanda HN’de çıkan yazı: https://news.ycombinator.com/item?id=47913650
  • Anekdot düzeyinde olsa da, bu yılın başından beri ABD yazılım işe alım piyasasında gerçekten bir değişim varmış gibi hissediyorum. Önümüzdeki birkaç yılda insan sermayesine fazla yatırım yapmamak için giderek daha fazla şirketin bekle-gör stratejisi izlediği anlaşılıyor
    Zaten zayıf olan işe alım sinyali şimdi tamamen yok olmuş gibi. Tek bir ilan açıyorsun, LLM ile yazılmış 500’den fazla başvuru ve niyet mektubu geliyor; hepsi birbirine benziyor ve aynı hissi veriyor
    Yazıdaki profesyonel sporcu benzetmesi ise biraz tuhaf. Kas gücüyle para kazananlarda yaşlanmanın fiziksel etkileri açık, ama hukuk ya da tıp gibi bilgi işçiliğinde 40’lı ve 50’li yaşlarda da son derece yetkin ve keskin profesyoneller çok

    • Yine anekdot olacak ama ABD şirketlerinin Hindistan ve diğer gelişmekte olan pazarlarda büyük ölçekte işe alım yaptığını görüyorum
      Bu ülkelerde daha önce big tech recruiter’larından tek bir mesaj bile almamış kişilerin artık her gün mesaj aldığını biliyorum
      Geçen yıl sona eren belirli bir ABD maddesi yüzünden olduğuna dair şeyler de gördüm ama ben o konuda cahilim; nedenini tartışacak bilgim yok
    • Sahada dürüst olmak gerekirse AI’ın işe alım talebini etkilediği hissini almıyorum. Ortada, liderliğin hayal ettiği her şeyi AI’ın yazdığı ve mühendislerin elleri bağlı oturduğu bir durum yok
      Bunun yerine ekonomi çöküşün eşiğindeymiş ya da en azından bir roller coaster’daymış gibi. İşe alım vergi teşvikleri zayıf, sıfır faiz dönemi çoktan bitti ve işe alım ekipleri gürültüden ibaret başvurular altında eziliyor
      Yine de yöneticiler bunun AI yüzünden olduğunu söylemeyi seviyor. Çünkü böyle söyleyince kontrol onlardaymış gibi duyuluyor
    • Şirketlerin pandemi döneminde aşırı işe alım yaptığını ve o deneyimle birlikte belirsiz piyasa yüzünden aynı hatayı tekrar etmek istemediğini düşünüyorum
  • AI yüzünden sorun olmayacağına dair açıklama olarak sürekli “başka bir mesleğe yeniden eğitilirsin” cümlesini okuyorum ama o mesleğin ne olduğuna ya da yeniden eğitim masrafını kimin ödeyeceğine dair hiçbir şey görmüyorum
    Benim açımdan üniversiteye dönüp sıfırdan yeni bir kariyere başlamak için ne para var ne zaman

    • Mantık şu: “Geçmişte hep böyle oldu”
      Bu doğru, ama yalnızca doğru olmaktan çıktığı ana kadar doğru
      Böyle düşünmenin ne kadar büyük bir başarısızlığa dönüşebileceğinin klasik örneği Malthus teorisi. Gıda artışı lineer, nüfus artışı üstel olduğu için nüfusun çökeceğini söyler; bu teori Malthus bu gözlemi yapana kadar tüm tarih boyunca fiilen doğruydu
      Mekanik düzeyde “Her zaman başka işler bulduk” mantığı, bunun ancak insanların otomasyona karşı her zaman bilişsel üstünlüğe sahip olması sayesinde mümkün olduğunu gözden kaçırıyor
      Montaj hattındaki en basit insan girdisi bile sonuçta robotların yapamadığı, ince ve neredeyse görünmez ayarlamaları yapabilen insan becerisine dayanıyordu
      Ama AGI’ya yakın bir şey gerçekten çalışırsa, insan emeğinin otomasyona karşı hiçbir üstünlüğü kalmaz; o zaman geçmişteki “otomasyon daha fazla insan işi yarattı” mantığının neden sürmesi gerektiği belirsizleşir
    • Çin’e outsource edilen nitelikli sanayi işçileri için böyle bir yeniden eğitim yaşanmadığı gibi, bu kez de yaşanmayacak
      Devlet durumu yönetilebilir seviyede tutacak kadar refah ödeyecek ve sonra da kültürel olarak onları Luddite benzeri bir figür gibi şeytanlaştıracak
    • Böyle işler yok; olsa bile masrafını kendin karşılarsın. Şirketler, rekabet yüzünden mecbur kaldıkları çok istisnai durumlar dışında bunu asla ödemez
    • Yazılımın yok ettiği sektörlerde de aynı şey geçerliydi
    • Daha iyi başka işler ortaya çıkacağına dair bir garanti yok. İnsanlar bunu sanki kendiliğinden doğruymuş gibi varsayıyor
      Elbette bir süre daha insan beden gücü gerektiren işler kalacaktır ama gerçekçi olmak gerekirse birçok fiziksel emek işi dünyanın başka bölgelerinde daha ucuza yapılıyor
      Tesisatçı ya da garson gibi ihraç edilemeyen işlerse talep bakımından sınırlı. Bugünkü beyaz yaka çalışanların %50’sini bu işlere yönlendirip yine de kolayca iş bulmalarını veya iyi ücret almalarını bekleyemezsin. O kadar talep yok
      Üstelik beyaz yaka işler yok olurken “düşük vasıflı” beden işleri de giderek otomatikleşiyor. Self checkout perakende işlerini azaltıyor, robotaksi ve drone teslimat kurye-lojistik işlerini azaltacak, depo robotları da depo işlerini azaltacak
      Sanki AI’ın, insan işverene ihtiyaç duyan yüksek ücretli çok sayıda iş yaratacağı ve bunların aynı zamanda yurtdışına daha ucuza outsource edilemeyecek işler olacağı yönünde örtük bir varsayım var. Hem AI’a hem outsource’a dayanıklı yüksek ücretli işler tam olarak hangileri? Herkes yüksek maaşlı temizlikçi mi olacak? Bu mantıklı değil
      Bugün insanlara inşaat işçisi ya da tesisatçı olarak yeniden eğitim almalarını önerenler, sanki bu alanlardaki emek talebi sonsuzmuş gibi konuşuyor; oysa öyle değil. Diyelim ki inşaat işçisine talep patladı; yine de milyonlarca insanın inşaata girebilmesi için ekipman, tedarik zinciri ve altyapı kurulması yıllar alır
      En olası senaryo, insanların işlerini kaybetmesi ve yurt içi ekonomide kalan sınırlı işler için bitmeyen bir aşağı yönlü rekabete sıkışması. Geri kalanı outsource edilir ya da robotlar ve AI tarafından yapılır
      Daha iyi tavsiye, bu gerçeğe hazırlanmaya başlamak olur. Devletin seni koruyacağını ya da koruyabileceğini varsaymamalısın. Servet yoğunlaştığında yolsuzluk neredeyse kaçınılmazdır ve siyasetçilerin de bakmakla yükümlü olduğu aileleri vardır
      Bunu ciddiye almak gerekir. Ben yanılıyor olsam bile, her şeyin yoluna gireceğini ve yeni yüksek ücretli işlere yeniden eğitilebileceğini varsaymaktansa en kötü ihtimale hazırlanmak daha iyidir
  • Anne babamın ikisi de inşaat işçisiydi. İnsan sonsuza dek ağır yük kaldıramayacağını biliyor
    Sonunda yük kaldırmayı bırakıp usta başı ya da şantiye amiri oluyorsun. Eskiden kendin yaptığın işi başkalarına yaptırmayı öğrenmek sana rahatsız geliyorsa bedenin tamamen mahvoluyor ve bunun sonucu korkunç oluyor
    Bu hem olgusal bir gerçeklik hem de kariyerimde delegasyon konusunda içselleştirmem gereken önemli bir benzetmeydi. AI kullanımıyla tamamen alakasız değil ama birebir temiz şekilde örtüştüğünü de düşünmüyorum

    • Şunu da not etmek gerekir: ağır yük kaldırmak, makul sınırlar içinde, insanı daha güçlü yapar; oysa AI kullanımıyla ilgili mevcut hipotezler çoğunlukla bunun tersini söylüyor
    • Yazılım geliştiriciler basit programcılardan çok mimarlara benzer. Mimarın ağır yük kaldırması beklenmez; o ağır şeylerin nasıl kullanılacağını tasarlaması beklenir
  • Zeki görünen insanların yazıda olduğu gibi soyutlama benzetmeleri yapmayı bırakmasını isterdim. Buradaki temel kelime belirlenimlilik
    Elektrikli aletler ya da C gibi bütün soyutlama katmanları, güvenilebilen belirlenimci bir katman ekledi ve her seferinde aynı sonucu vererek işi daha etkili yapmamızı sağladı
    LLM’lerde doğal dille program tarif ediyorsun ve sonuçlar en iyi ihtimalle değişken oluyor. Bu yüzden ajana ihtiyaç duyuluyor ve sonuçlar brute force ile zorlanıyor
    Bence asıl hendek, hâlâ gerçekten programlayabilen kişi olmak

    • İnsanlar bunu hep söylüyor ama bence hedefi kaçıran bir iddia. LLM’ler belirlenimci değil ama bu hiç önemli değil
      LLM çıktısını doğrudan çalıştırmıyorsun; LLM ile bir kez artefakt üretiyor, sonra o artefaktı belirlenimci şekilde çalıştırıyorsun
      Spesifikasyon bir kez koda çevriliyor; spesifikasyonu düzenlersen kod güncellenebilir ama her seferinde tüm program yeniden oluşturulmuyor. Öyleyse belirlenimlilik neden önemli olsun?
    • LLM’in bazı soyutlama tanımlarına uymadığını kabul ediyorum. Ama LLM’i bir başka soyutlama katmanı diye adlandıran herkes de bunu yanlış anlamıyor. Sadece o kelimeyi daha soyut bir anlamda kullanıyorlar
      Örneğin Mark Zuckerberg 5 yıl önce yazılımı nasıl yaptırıyordu?
      O da benim gibi editör açabilir ama koşulları gereği önünde insan kaynağı diye başka bir arayüz vardı
      Editör yerine o insanlarla etkileşime girdi ve yazılımı onlar üretti
      Onunla kurulan sistem arasındaki bu katman, belirlenimci olsun ya da olmasın, bir soyutlamadır
      Bugün birkaç yıl öncesine göre çok daha fazla işi devredebileceğimiz daha geniş bir yetki alanımız var
    • Diğer katmanlar gerçekten o kadar belirlenimci mi? Bir nesnenin garbage collection ile toplanıp toplanmadığını gerçekten kesin olarak biliyor musun? Bu komutun kaç cycle süreceğini gerçekten biliyor musun?
    • LLM’lerin birçok işi ikame etmesi için tam güvenilirliğe ulaşması gerekmiyor. Belirli bir görev için uygun güvenilirlik-maliyet dengesine ulaşmaları yeterli. Bu denge de göreve göre değişir
    • Ne demek istediğini anlıyorum ama belirlenimlilik kelimesi de tam doğru değil. LLM’ler temelde belirlenimcidir. Çünkü giriş metni ve ağ parametrelerinin fonksiyonu olarak metin üreten saf fonksiyonlardır
      Özgür irade konusundaki görüşüne bağlı olarak insanların da etkili biçimde belirlenimci olduğu savunulabilir
      Burada asıl temas edilen şey, hem LLM’lerin hem insanların opak fonksiyonlar olması. Davranışlarını, zihnin içinde ilerleyen mantıksal adımlar dizisine indirgeyemezsin; karmaşıklığı birkaç yorumlanabilir duruma temizce ayıran değişmezler yoktur; giriş-çıkış uzayı yapısız, muğlak, eksik tanımlı ve pratikte sonsuzdur
      Bu nedenle geleneksel programlara uyguladığın strateji ve analizlerle bunlar üzerine akıl yürütmek ya da bunları sentezlemek neredeyse imkânsızdır
      İstersen seçmeli olarak entropi kaynağı ekleyip belirsizlik katabilirsin ama bu zorunlu değildir. Tüm LLM sağlayıcıları sözde rastgele sayı üretecinin seed’ini sabit bir değere kilitlese muhtemelen neredeyse kimse fark etmezdi
      Tam olarak aynı prompt’u defalarca verip çıktının belli bir istatistiksel dağılım göstermesine dayanan iş akışlarının çok yaygın olduğunu sanmıyorum. Hatta istesen bile büyük olasılıkla cache’lenmiş cevap alırsın
  • Yazılım mühendisliğinden kasıt, metin düzenleyicide kodu karakter karakter yazmaksa, buna para verecek birini bulmak zorlaşacak
    Ama kasıt yazılım üretmekse, şu anda tarihin herhangi bir döneminden daha fazla yazılım üretiyoruz ve yazılımın ne olduğuna dair tanım da her zamankinden daha çeşitli. Buradan birçok farklı kariyerin ayrışabileceğini düşünüyorum

    • Yaşadığımız şey, inşaat mühendislerinin hesap cetvelinden hesap makinesine, elektrik mühendislerinin elle devre yolu çizmekten CAD araçlarına geçişine benziyor
      İlginç olan, yazılım mühendisliğinin de evrilmek zorunda olması. Süreçler ve araçlar da geçmişte olduğu gibi evrilmeli
      2004’te üniversiteden mezun olurken bize “yazılım krizi” dönemini, waterfall geliştirme sürecini ve yeni yeni ortaya çıkan “iteratif metodolojileri” öğretmişlerdi
      Spaghetti code’dan Pascal/C’nin yapısal programlamasına, oradan da nesne yönelimli programlamaya geçişi de öğrendik
      Mühendislik metodolojileri de evrildi. Meşhur UML vardı; formel doğrulama için Z dili gibi biçimsel yöntemler ya da ABC, döngüsel karmaşıklık gibi yazılım karmaşıklığı ölçümleri vardı
      Bugün bilgisayar kodun çoğunu yazarken mevcut dillerin ve yazılım geliştirme süreçlerinin değeri azalıyor. Programlama dilleri insanlar için yaratıldı. Aksi olsaydı hâlâ assembly yazıyor olurduk
      Artık niyeti bilgisayara aktarmak ve son komutların gerçekten istediğimizi yapıp yapmadığını doğrulamak için kullandığımız soyutlamaları değiştirmemiz gerekiyor
      Bu yeni soyutlamaların ne olacağını gerçekten merak ediyorum. Kodlamanın küçük ayrıntıları tamamen otomatikleştiğinde, belki de yazılım mühendisliği mesleğinde daha fazla gerçek mühendislik disiplini görebiliriz
    • Diyelim ki 2020’de birbiriyle rekabet eden iki şirket var ve her biri 100 programcı çalıştırıyor. Bu iki organizasyonun nasıl işlediğini hepimiz biliyoruz. Hep geriden geliyorlar; her eklenen özellik olası gelecekteki özelliklerin sayısını daha da artırıyor; hepimiz bunun içinde yaşadık ve hâlâ büyük ölçüde böyle
      Diyelim ki 2026’da iki şirket de AI’ın geliştiricileri 10 kat hızlandırdığına karar verdi. Bunun gerçek olduğunu iddia etmiyorum, sadece yuvarlak bir sayı
      Şirket 1, 90 programcıyı işten çıkarıyor ve 10 kişiyle aynı işi yapıyor
      Şirket 2, tüm programcılarını tutuyor, eskisine göre 10 kat fazla iş yapıyor ve hatta belki daha da fazla işe alım yapıyor
      Piyasada kim kazanır?
      Cevap her zaman olduğu gibi “duruma bağlı”, ama bence Şirket 1’in kazanabileceği alan Şirket 2’ye kıyasla çok daha dar. Bunun için çok hassas bir piyasa koşulu kombinasyonu gerekir; imkânsız değil ama kendinin istisna olduğuna oynamak tehlikeli
      Hızlanmanın yaşandığı ve henüz kimsenin yeni gerçekliğe tam yerleşmediği dönemde Şirket 1’in cevabı muhasebe ekibine yüzeysel olarak cazip gelebilir
      Ama hangi pazarda olursa olsun, tek bir şirket bile Şirket 2 çözümünü seçip arayı açarsa, düzgün rekabet edebilmek için sektörün geri kalanı da peşinden gitmek zorunda kalır
      Orta ve uzun vadede bir programcının ürettiği ve maaş yoluyla yakalanabilen değer yaratımının azalması da pek olası görünmüyor
    • Endişe şu: Böyle yazılımlar üreten işler, hızla artan yaşam maliyetini karşılayacak kadar ücret ödeyecek mi?
      Geçmişte otomasyonun yarattığı işler çoğu zaman daha düşük ücretli ve daha az özerk olmuştu
    • Daha fazla yazılım üretmek de, eğer bunun çoğu başka yazılımların işlevsel tekrarından ibaretse hiçbir şeyi çözmez
      Yani her şirket tekerleği tekrar tekrar icat ediyor. Sırf yeni parlak bir framework ile yazıldı diye, onun dışında yeni hiçbir şey içermeyen yazılım geliştirmeyi 10 kat artırmanın anlamı yok
      Bence çoğu yazılımı ortadan kaldırmaya başlamalıyız. Temellere dönüp neye ihtiyaç olduğunu görmeli, onu daha iyi hale getirmeli ve bitirmeliyiz. Bir kere olsun bir yazılımı tamamlamalıyız
    • software engineer yerine secretary, creating software yerine de typing correspondence yazsan yine aynı cümle olur
      AI’ın yazılım programlama ve tasarım sorununu çözdüğü bir dünyada değer, başka alan uzmanlığına sahip kişilere akacaktır. Çünkü artık ellerinde 1000 profesyonel geliştiricinin gücü vardır; daha iyi, daha hızlı ve daha ucuz AI araçları bulunan ve becerileri büyük ölçüde birbirinin yerine geçebilen insanlara ise değer akmaz
  • Ben bir şeyi gözden kaçırmıyorsam burada açık bir mantık sorunu var
    Eğer LLM kullanarak verimlilik kazanmak için beceri körelmesini göze almak gerekiyorsa, ömrü sınırlı geliştiriciler sadece biz oluruz. Sonraki nesil bu becerileri manuel yolla inşa etmediği için körelecek bir beceri setine de sahip olmayacak
    Ayrıca “LLM’in kod üretmesi, derleyicinin makine kodu üretmesine benzer” benzetmesini kamusal alanda yasaklamayı öneriyorum. Aynı fikri tekrar tekrar tartışmaktan bıktım artık

    • LLM-derleyici benzetmesi neden yanlış? Sadece LLM çıktısının belirlenimci olmaması yüzünden mi?