Görsel yazarın tarifi üzerine ChatGPT tarafından üretilmiştir.
1989’da Ege Üniversitesi Bilgisayar Mühendisliği Terminal Odası’ndan başlayan, Computer-Aided Software Engineering’den Human-Aided Software Engineering’e uzanan bir yolculuğun hikâyesi.
BAUM Terminal Odası
Yıl 1989, İnternet henüz hayatımıza girmemişti. Avrupa araştırma ağı EARN (European Academic Research Network) üzerinden veri alışverişi yapabiliyorduk, o kadar. Bilgisayar dediğimiz şey, bugün cebimizde taşıdığımız cihazların yanında birer “elektronik mobilya” gibiydi.
Ege Üniversitesi Bilgisayar Mühendisliği Bölümü Terminal Odası ise o yılların kalbiydi. Floresan ışıkları sabaha kadar açık, her masada yeşil fosforlu ekranlar, IBM 3270 terminalleri sıraya dizilmiş… Terminaller o kadar ısınırdı ki, soğuk günlerde termalin üstünde ellerimizi ısıtırdık.
O dönemlerde, Prof. Dr. Oğuz Manas’ın yönetimindeki Ege Üniversitesi Bilgisayar Mühendisliği Bölümü ve Bilgisayar Araştırma ve Uygulama Merkezi (BAUM) Türkiye’nin açık ara en güçlü bilişim altyapısına sahipti. IBM 4341 ve System/9000 gibi mainframe bilgisayarlar çalışıyordu — ki bu sistemler yalnızca birkaç kurumda, sadece İş Bankası, Yapı Kredi ve Akbank gibi birkaç bankada, bulunuyordu. Türkiye’nin EARN ağına çıkışı da Ege Üniversitesi üzerinden yapılıyordu. Yani ülkenin dijital kalbi, bir anlamda o kampüste atıyordu.
İşte ben de o ortamda, diğer öğrenciler gibi gecelerimi Terminal Odası’nda geçiriyordum. O odada insanlar IRC — Inter Relay Chat denilen bir mucizeyle birbirleriyle konuşuyorlardı. Evet, insan-insana gerçek sohbetti bu. Henüz insanlar makinelerle muhabbete başlamamışlardı.
Gerçi Hatırlıyorum, o yıllarda da bir “sohbet botu” vardı: Eliza. Basit, kural tabanlı bir sistemdi. Login scripte eklenebiliyordu. Birkaç satır kodla insan gibi “cevap verir” görünürdü ama içi bomboştu. Yine de düşüncesi bile büyüleyiciydi: bilgisayar ile sohbet muhabbet.
O sıralarda Computer-Aided Software Engineering (CASE) üzerine yüksek lisans tezim için çalışıyordum. Bilgisayarın yazılım geliştirme süreçlerini otomatikleştirmesini, bilgisayarın mühendise “yardım etmesini” hayal ediyorduk.
O dönemde Ege Üniversitesi’nde “Yapay Zekâ” değil, Yapay Us adını taşıyan bir ders almıştım. Hocamız Prof. Dr. Emrah Orhun’du, yanlış hatırlamıyorsam. “Us” sözcüğü o zamanlar bize yabancı gelmişti ama derin bir anlamı vardı: aklın doğasını anlamaya çalışan bir bilgisayar bilimi. Şimdi dönüp bakınca, o dersin başlığı bile bugünün tartışmalarına sanki erken bir selam gibiydi.
Ama kimse, bir gün bilgisayarla konuşarak program yazabileceğimizi düşlemiyordu. Chat Oriented Programming o günlerin rüyasında bile yoktu.
Ve şimdi düşünüyorum da — nereden nereye? Ne günlermiş…
Otomasyondan Etkileşime
Bilgisayar Destekli Yazılım Mühendisliği (CASE) döneminin büyüsü, düzen vaadindeydi. Yazılım mühendisliği o yıllarda bir fabrika disipliniyle düşünülüyordu. Her şeyin bir akış şeması vardı; gereksinimler analiz edilir, tasarımlar çizilir, sonra kod üretilirdi. Mühendis süreci kontrol ederdi; bilgisayar sadece yardımcıydı. “Akıllı araçlar” derken kastettiğimiz, şablon oluşturan, dokümantasyon üreten, belki biraz da hata kontrolü yapan araçlardı.
Ama bu araçlar bir süre sonra “sessiz ortaklar”a dönüştü. Evet, işimizi kolaylaştırıyorlardı ama bizimle konuşmuyorlardı. Yazılım geliştirme hâlâ tek yönlü bir iletişimdi: insan düşünür, bilgisayar uygular. Kod satır satır yazılır; sonra test edilir, derlenir, düzeltilir. Biz bilgisayarın mantığını öğretmeye çalışıyorduk — oysa bir gün, bilgisayar bizim niyetimizi anlayacak hale gelecekti. Dönem Vibe Programming dönemiydi artık.
Sonra IDE’ler geldi. Kodlama editörleri açılan kıvırcık parantezi otomatik kapattığında bile büyük bir iş yapmış gibi hissederdik. Ekrandaki o küçük jest, sanki bilgisayarın “tamam, devam edebilirsin, seni anladım” deyişiydi. Kodlama artık tek başına bir iş olmaktan çıkıyor, sessiz bir ortaklığa dönüşüyordu.
90’lar geldiğinde sahneye Object-Oriented Programming çıktı. Kodun modülerleşmesi, sınıflar, kalıtımlar, UML diyagramları… Yine bir düzen, yine bir yapı arayışı. Ardından DevOps, Agile süreçler derken yazılım artık yaşayan bir organizmaya benzemeye başladı.
Ama hâlâ eksik bir şey vardı: etkileşim.
O eksiklik 2020’lerle birlikte tamamlanmaya başladı.
GitHub Copilot gibi araçlar, kodu sadece tamamlamıyor, bizimle “konuşuyordu.”
“Ne istiyorsun?” diye soruyor, öneriler getiriyor, alternatifler sunuyordu. Yani bilgisayar nihayet bizi dinlemeye başlamıştı.
Bugün geldiğimiz noktada, Chat-Oriented Programming / Vibe Programming) — bazı çevrelerde Niyet Güdümlü Programlama olarak da adlandırılıyor — o sessiz ortaklığı diyaloga dönüştürdü. Artık bir kod yazmıyoruz; niyetimizi tarif ediyoruz. Kod, bu niyetin sadece bir yansıması.
Görsel yazarın tarifi üzerine ChatGPT tarafından üretilmiştir.
Vibe Programming
… veya Chat-Oriented Programming / Conversational Programming’in doğuşu.
Bir zamanlar “programlama dilleri” konuşurduk; şimdi “programlama sohbetlerinden” bahsediyoruz. Fark sadece sözcükte değil, zihniyette. Kod artık emir (instruction) değil, diyalog.
Chat-Oriented Programming (CHOP) denilen bu yeni yaklaşım, insan ile bilgisayar arasındaki ilişkiyi bir iş talimatından bir ortak çalışmaya dönüştürdü. Artık “şunu yaz, bunu derle” demiyoruz; “nasıl bir şey istiyorum”u anlatıyoruz. Bilgisayar da, dilimizin kıvrımlarını, niyetimizin tonunu, bağlamın anlamını çözerek karşılık veriyor.
Bu dönüşümün kalbinde yapay zekâ ürünğ, doğal dil anlama yeteneği var. Çünkü ilk kez, makine bizim dilimize geldi. Onun dilini öğrenmemiz gerekmiyor artık. C’nin süslü parantezleri, Java’nın sınıf tanımları, Python’un girinti/çıkıntıları… Hepsi hâlâ orada ama sahnenin arkasında. Ön planda artık sohbet var. Yaşasın dialog 💪🏻
Bu sohbetin ilk biçimleri, Copilot ve benzeri yardımcılarla başladı. Kodun ortasında bir boşluk bıraktığında, o boşluğu anlayıp öneri sunan bir “yazılım arkadaşı” belirdi. Sonra bu etkileşimler sohbet ekranına taşındı. Artık kodu bir satırda değil, bir konuşmada üretiyoruz. Kodlama, bir diyalog sanatı haline geldi.
Yazılım geliştirme tarihinde belki de ilk kez, insanın bilişsel süreciyle makinenin hesaplama gücü birbirine bu kadar yaklaşmış durumda. Programcı artık sadece kod yazmıyor; anlatıyor, yönlendiriyor, yorumluyor. Kod ise bir tür “yansıma dili”ne dönüşüyor — insan niyetinin makinedeki izi.
Ve burada tuhaf ama güzel bir ironi var:
1980’lerde Computer-Aided Software Engineering diyorduk;
bugün ise rahatlıkla Human-Aided Software Engineering diyebiliriz.
Çünkü artık işi yapan bilgisayar, biz ona sadece yardımcı oluyoruz. 🤷🏻♂️
Bir Tezden Bir Sohbete
Bazen bir yolculuğun anlamı, başladığın yere dönünce anlaşılır.
Benim için bu yolculuk 1989’da, Ege Üniversitesi’nin Terminal Odası’nda başladı. O zamanlar önümüzde yeşil ekran, kafamda tek bir soru vardı:
“Bilgisayarı yazılım mühendisliğine nasıl yardım ettirebiliriz?”
O sorunun cevabını ararken, Prof.Dr. Sıktı Aytaç’ın danışmanlığında hazırladığım yüksek lisans tezimin başlığı şöyleydi: CICS ve PL/I Kullanıcıları için Bilgisayar Destekli Yazılım Mühendisliği (CASE) Paketi.
Yani özünde, bilgisayarı yazılım geliştirme sürecine dâhil etmenin ilk adımlarını arıyorduk.
Bugün aynı arayış sürüyor — ama yönü değişti: Artık “bilgisayar bize nasıl yardım eder” değil, “biz bilgisayara niyetimizi nasıl anlatırız” diye soruyoruz.
İşin özünde hâlâ yardımlaşma var — ama roller değişti: Artık biz, bilgisayara süreci anlatıyoruz. O, bizim niyetimizi çözümlüyor.
Biz derken, o yazıyor.
Bazen bir yazılım projesine başladığımızda, kendimi hâlâ o terminal odasındaki halimle yan yana hissediyorum.
Bir farkla: o zaman kodun içindeydim, şimdi kodla konuşuyorum.
Satır aralarındaki büyü, yerini satırlar arasındaki anlamlara bıraktı.
O günlerde bilgisayara yazılımı öğretmeye çalışıyorduk; meğer bir gün onunla konuşarak yazılım geliştireceğimizi öğrenecekmişiz.
İnsan-destekli Yazılım Mühendisliği was originally published in Türkçe Yayın on Medium, where people are continuing the conversation by highlighting and responding to this story.