Merhaba,
Çok iyi bir boşluğu doldurmuşsunuz. Sizinki kadar kapsamlı olmasa da proxmox tarafında PDM ve ipsmanager var belki, fakat benim daha çok merak ettiğim başka bir konu var.
1- Projeyi bir ekiple mi geliştirdiniz, yoksa yalnız mı?
2- Önemli olan bu: Vibecoded mı?
Teşekkürler
Aslında projenin hikayesini burada, LinkedIn'de ve Reddit'te farklı zamanlarda anlattım. Kısaca özetleyeyim.
Panelica'nın temelleri 2022 yılında, birkaç arkadaşın aynı şirkette çalıştığımız dönemde yaptığımız sohbetlere dayanıyor. O zamanlar böyle bir projeyi hayata geçirme fikrimiz vardı. Şirket kapandı, herkes farklı yollara gitti. Ben bir süre sonra projeyi tek başıma geliştirmeye başladım.
Başlangıçta ThemeForest üzerinden Velzon Admin Kit satın aldım. Çünkü ben backend ağırlıklı bir yazılımcıyım ve tasarımla vakit kaybetmek yerine doğrudan altyapıya ve ürünün kendisine odaklanmak istiyordum.
Yazılımla PHP 3 döneminde tanıştım. Sonrasında, özellikle 2010'lu yıllarda blockchain sektörüyle tanıştım ve yaklaşık 15 yıla yakın bu alanda çalıştım. EVM ve konsensüs geliştirmelerinden Go ile FIFO mantığında çalışan order book ve exchange matching engine geliştirmeye kadar farklı alanlarda görev aldım. PHP ve Go başta olmak üzere birçok teknolojiyle çalıştım. AWS, Google Cloud ve Docker gibi teknolojiler de uzun yıllardır kullandığım araçlar arasında.
Panelica'yı ilk aşamada tek başıma belirli bir noktaya getirdim. Sonrasında Ertuğrul, Semih ve diğer arkadaşların katılımıyla ekip büyümeye başladı. Niyazi Dağcı veritabanı tarafında, Semih Durak ise backend ve CI/CD süreçlerinde önemli sorumluluklar üstlendi. E-posta altyapısı tarafında Volkan Akgül, mobil tarafta ise Tuğba Nur Çelik görev alıyor. Ekip büyüdükçe herkes kendi uzmanlık alanında sorumluluk almaya başladı. Bugün Panelica, farklı teknik uzmanlıkların bir araya geldiği bir ekip tarafından geliştiriliyor.
Panelica'yı geliştirirken en başından beri web sitesi, yönetim paneli, forum ve diğer platformlarda tutarlı bir tasarım dili kullanmaya çalışıyoruz. Başlangıçta satın aldığımız Velzon Admin Kit'in tasarım altyapısından yararlandık ve renk tonlarımızı farklı platformlarda koruduk. Bu nedenle Panelica'nın web sitesine, forumuna veya yönetim paneline baktığınızda benzer renkleri ve tasarım yaklaşımını görüyorsunuz.
Gelelim asıl soruya: Vibecoded mı?
Açık konuşmak gerekirse hem evet hem hayır. Yapay zeka araçlarını yoğun şekilde kullanıyoruz. Ancak bizim çalışma şeklimiz, projeyi yapay zekaya tarif edip ortaya çıkan kodu sorgulamadan kabul etmekten oldukça farklı.
Ekipte 20 yılı aşkın sektör tecrübesine sahip arkadaşlarımız var. Ben de uzun yıllardır yazılım ve sistem geliştirme alanında çalışıyorum. Herkes kendi uzmanlık alanında neyi, neden ve nasıl yapması gerektiğini biliyor.
Yapay zekaya bir özellik geliştirmesini söylediğimizde yalnızca sonucu tarif etmiyoruz; mimariyi, kullanılacak teknolojileri, yapılandırma tercihlerini ve dikkat edilmesi gereken noktaları da belirliyoruz.
Örneğin e-posta altyapısında Spamhaus, Postscreen ve spamd yapılandırmalarından web sunucusu tarafında Nginx, ModSecurity, Apache event MPM ve PHP-FPM gibi bileşenlerin doğru yapılandırılmasına kadar pek çok ayrıntıyı değerlendiriyoruz. Hangi bileşenin hangi senaryoda daha verimli olduğunu, performans ve güvenlik açısından nelere dikkat edilmesi gerektiğini biliyoruz. Yapay zekaya da bu teknik çerçevede ne yapması gerektiğini anlatıyoruz. Burada önemli olan yalnızca kod üretmek değil, doğru teknik kararları verebilmek ve ortaya çıkan sonucu değerlendirebilmek.
İşin ilginç tarafı, yapay zeka ile üretilen tasarımlarda da son dönemde benzer renk paletleri ve görsel yaklaşımlar yaygınlaşmaya başladı. Bizim uzun süredir kullandığımız renkler de bu tasarımlarda sıkça karşımıza çıkıyor. Bu nedenle Panelica'yı dışarıdan görenler, tasarımına bakarak projenin tamamen vibecoding ile geliştirildiğini düşünebiliyor. Ancak bir projenin tasarımına bakarak nasıl geliştirildiğini anlamak mümkün değil.
Açık konuşmak gerekirse, hiç kod yazmadan, tamamen yapay zeka araçlarıyla geliştirdiğim bireysel projelerim de var. Bunların bugün binlerce kullanıcısı olanları da bulunuyor. Dolayısıyla vibecoding'e karşı değilim; doğru kullanıldığında ne kadar güçlü olduğunu bizzat deneyimledim.
Ancak Panelica farklı bir sorumluluk taşıyor. Bu, yalnızca bir web uygulaması değil; insanların gerçek sunucularında çalışan, web sitelerini, e-posta altyapılarını, veritabanlarını ve barındırma hizmetlerini yöneten bir sistem. Hatalı bir güncelleme veya yanlış bir yapılandırma, tek bir kullanıcının değil, çok sayıda müşterimizin hizmetlerini etkileyebilir.
Bu nedenle yapay zekanın ürettiği koda veya verdiği kararlara asla sorgulamadan güvenemeyiz. Kodun incelenmesi, mimarinin doğrulanması, test edilmesi ve gerçek üretim koşullarında güvenilir olduğunun gösterilmesi gerekiyor. Çünkü bir sorun yaşandığında yapay zeka en fazla "Üzgünüm, bu benim hatamdı." diyebilir. Ancak biz bunu kullanıcılarımıza açıklama olarak sunamayız. Müşterilerimize karşı sorumluluk taşıyan taraf biziz.
Sonuç olarak yapay zekayı yoğun biçimde kullanıyoruz, ancak geliştirme sürecini teknik bilgi, mimari kararlar, uzmanlık alanları, testler ve üretim deneyimiyle yönetiyoruz. Bizim için önemli olan yapay zekanın ne kadar kod yazdığı değil, ortaya çıkan sistemin güvenilirliğini ve sorumluluğunu üstlenebilecek bilgiye sahip olmamız.