Kod yazıyoruz ama artık eskisi gibi değil.
Gereksinim analizini ve UI mockup’larını tanımladıktan sonra ortaya çıkacak uygulamayı günlerce görmediğim oluyor.
Yazılımı artık anlayış ve yaşayış tarzım degişti:
– Loop engineering ile headless programming moduna geçtim.
– Teknik problem değil, semantik problem çözmeye başladım.
– Artık poligot yazılımcı değilim, tek bir dili kullanarak kod yazdırıyorum: doğal dil.
– Aylar önce bir satır kod okudum ya da bir değişken tanımlaması gördüm. Tuhafima gitti!
– Eskiden ben düşünür, ben koda dökerdim. Şimdi ben düşünüyorum, başka bir sistem gerçekleştiriyor.
Salt mantık baskısı ile şekillenmiş bir beyin için problemleri kod yazarak çözmemek büyük bir kırılım.
Ben neyim? Hala bir yazılımcı mıyım?
Bana bir şeyler oldu.
Soyutlama seviyem değişti.
Üretim biçimim değişti.
Mesleki kimliğim değişti.
Ben neyim? Hala bir yazılımcı mıyım?
Bunun cevabını teknik olarak vermem artık mümkün görünmüyor. Belki felsefe bu konuyu açıklayabilmem konusunda yardımcı olabilir.
Hegel’in varlık diyalektiğine bakalım.
Hegel varlığı ve mevcudiyeti kısaca şöyle açıklıyor:
Sein -> Nichts -> Werden
Saf varlık -> Hiçlik -> Oluş
Buradan yola çıkarak yaşadığım değişimi programcılığın diyalektik dönüşümü olarak yorumluyorum.
Sein (Varlık): Başlangıçta kod yazıyordum. Problemleri analiz ediyor, algoritmalar geliştiriyor ve bunları programlama dilleri aracılığıyla çözüme dönüştürüyordum. Programcı olarak varoluşumun temelinde kod yazmak vardı. Kod yazıyordum, öyleyse programcıydım.
Nichts (Hiçlik): Artık kod yazmıyorum. Hatta aylar sonra bir değişken tanımlaması gördüğümde bunu yadırgıyorum. Yıllarca mesleki kimliğimi tanımlayan faaliyet ortadan kalktı. Eğer programcı olmak kod yazmak demekse, artık programcı değilim. Programcı olarak eski varoluş biçimim kendi olumsuzlamasıyla (negation) karşı karşıya.
Werden (Oluş): Fakat kod yazmıyor olmam, yazılım üretmediğim anlamına gelmiyor. Aksine, eskisinden daha karmaşık sistemler geliştiriyorum. Algoritmik düşünme, soyutlama, problem çözme ve sistem tasarlama becerilerim varlığını sürdürüyor. Değişen şey, bunları kullanma biçimim. Artık doğrudan kodu değil, kodu üreten ve doğrulayan süreci tasarlıyorum.
Evet, ben bir yazılımcıyım.
Sadece dönüştüm.