Birkaç gün önce LinkedIn'de cesur bir ifade içeren ilgi çekici bir başlıkla karşılaştım: "Teknoloji Şirketi GitHub Copilot ile Programcıların Verimliliğini %50 Artırmayı Hedefliyor." Durumu daha da merak uyandıran şey ise yazının yazarının programcı olmamasıydı.
Başlığın cüretkarlığına rağmen bu konunun ilginç bir analize ve tartışmaya yol açabileceğini düşünüyorum.
Bugün halka açık yapay zeka araçlarının etkileyici yeteneklerini inkar etmek mümkün değil. Programlama alanında geliştiricilere önemli ölçüde yardımcı oluyor, rutinlerini optimize ediyor ve verimliliği artırıyorlar. Doğru araçlarla sorunlar daha hızlı çözülebilir.
Ancak programlamaya aşina olmayanlar için bu yapay zeka araçları neredeyse mistik görünebilir ve herhangi bir sorunu hızlı ve otomatik olarak çözebilecekleri izlenimini verebilir. Ancak gerçeğin oldukça farklı olduğunu biliyoruz.
Bu araçların yarattığı heyecan tamamen haklı, hakkımda yanılgıya düşmeden önce şunu bilin ki ben de onlardan biriyim. Ancak bu araçların gerçekte neler yapabileceğini herkesin tam olarak anlamadığına inanıyorum.
Bir yanda, yerini makinelerin almasından korkan programlamaya yeni başlayanlar var.
Öte yandan, belki de bir programcının gerçekleştirdiği gerçek işi net bir şekilde anlamadan, maliyetleri azaltmak veya üretkenliği artırmak için sihirli çözümler arayan CEO'larınız var.
"ChatGPT (veya Copilot), Node.js'de bir gösterinin biletlerini satmak için bir sayfa oluşturun. Arka uç, saniyede ortalama 2.000 istek için hazırlanmalı ve hatalara karşı dayanıklı olmalıdır. İstekleri dağıtılanlar arasında dağıtmak için bir yük dengeleyici kurun. sunucular. Önbelleklerin işlevsel olduğundan ve sunucu yükünün gerçekten azaldığından emin olun. Gerçek zamanlı izleme araçlarını kullanın. Ve elbette, veritabanı iyi bir çoğaltma stratejisiyle kümelenmelidir."
Örnek çok abartılı biliyorum. Ancak programcı olmayan birine basit görünebilecek bir şeyin uygulanmasının ardındaki karmaşıklığı göstermektedir.
Kod yazmak programcının işinin yalnızca bir parçasıdır ve üretken yapay zekaların bu konuda çok başarılı olduğuna eminim, ancak bu bir programcının yaptığı her şey değildir.
Biz programcılar günümüzün önemli bir kısmını tek satır kod yazmadan geçiriyoruz. Öncelikle yeni özelliklerin gereksinimlerini anlamak, paydaşlarla görüşmelerde bulunmak ve ayarlamalar yapmak, teknik mimariyi tasarlamak ve son olarak tüm bu bilgileri koda dönüştürmek gerekir.
Ve mevcut kod tabanının geri kalanına nasıl uyduğu dikkate alınarak bu kodun bağlam içinde yazılması gerektiğini de unutmayalım.
Demek istediğim şu ki, bu yapay zeka araçları çok kullanışlı olmasına rağmen sihir yapmıyor. Ancak programcılara iyi yardımcı olabilirler.
Yazılım mühendisliğine bakış açımı büyük ölçüde genişleten okumalardan biri Dave Thomas ve Andrew Hunt'ın yazdığı klasik "The Pragmatic Programmer" kitabıydı. Bölümlerden biri ilginç bir hata ayıklama tekniğinden bahsediyor: plastik ördek.
Plastik ördek programlamanın ardındaki temel fikir, karşılaştığınız kodu veya sorunu sanki plastik bir ördeğe açıklıyormuş gibi yüksek sesle açıklamaktır. Sorunu sözlü olarak ifade ederek veya kodu adım adım açıklayarak genellikle bir çözüm bulursunuz veya soruna ilişkin yeni bir bakış açısı kazanırsınız.
ChatGPT, konuşma ve dahası bağlam içinde konuşma konusunda mükemmeldir. Bu yapay zeka, Dave Thomas ve Andrew Hunt'ın plastik ördeğinin evrimi olabilir mi?
Visual Studio Code'u ChatGPT ile entegre eden ve onu plastik ördek gibi kullanan uzantılar zaten mevcut. Bunları buradan kontrol edebilirsiniz.
GitHub'ın ürününe Copilot adını verme şeklini beğendim ve bu da plastik ördek konseptiyle örtüşüyor. Araç, gerçek pilot olmaktan ziyade yardımcı pilot olmayı hedefliyor. Programcının asistanı, onların plastik ördeğidir.
Bu mesaj programlama kariyerlerinin geleceği konusunda kaygılı ve endişeli olanlar içindir: Rahatlayın! Ancak bu kadar rahatlamayın çünkü acı gerçek şu ki, iyi bir programcıyı iyi yapan şey sadece kod değil, yazılım mühendisliğinin temelleridir.
70'li ve 80'li yıllarda bilgisayarların genel halk için popüler hale gelmesiyle birlikte, muhasebe ve finans profesyonelleri elektronik tablo yazılımlarının tehdit altında olduğunu hissettiler. Binlerce satır ve sütunu saklayabilen ve asla hesaplama hatası yapmayan bir makine. Bunu kim reddeder?
Elektronik tabloların güçlü olduğu ve hala güçlü olduğu ve "elektronik tablo yazarlarının" işleri için tehdit oluşturduğu doğrudur. Ancak verileri yorumlayanlar, iş bağlamını anlayanlar ve muhasebe kavramlarını uygulayanlar, elektronik tabloları eleştirmek yerine kesinlikle nasıl kullanacaklarını biliyorlardı.
Programcılar yalnızca kod yazarları değildir. Yeni plastik ördeğinizden korkmayın; bunun yerine onu kullanın. Ve bu makaleyi bir araya getirmeme yardım ettiğiniz için ChatGPT'ye teşekkür ederim.
Burada da yayınlandı