Aslında ben daha çok korkuyorum. Bir deney olarak, ChatGPT’den eşime web sitesini yönetirken zaman kazandırabilecek bir eklenti yazmasını istedim. Kısa bir açıklama yazdım ve ChatGPT her şeyi yazdı: kullanıcı arayüzü, mantık ve her şey.

Beş dakikadan daha kısa sürede.

Bütün bunların sonuçları var. Buna birkaç dakika içinde geri döneceğiz. Ama önce size yaşadıklarımı ve yaşadıklarımı anlatayım.

İhtiyaç


hat-randomizer-paypal-demo-wordpress-2023-01-31-23-41-28


ChatGPT, bu kullanıcı arayüzünü oluşturan eklentiyi yazdı. David Gewirtz/ZDNET

Eşim, WordPress tabanlı bir e-ticaret sitesi işletiyor. Ayrıca, sitesinin müşterileri için çok aktif bir Facebook grubu işletiyor. Her ay, pazarlama amaçları için rastgele müşterilerin bir listesini hazırlar. Şu ana kadar satırları rastgele sıralama konusunda iyi iş çıkaran bir web sitesi kullanıyor. Ancak bu, listeyi dışa aktarmanın değerinden biraz daha fazladır.

Verileri almak için verdiği mücadeleyi izlerken, sitesine yükleyebileceğimiz bir WordPress eklentisi yazmanın faydalı olacağını düşündüm.

Ancak çok basit bir eklenti yazmak bile birkaç günümü alır, kullanıcı arabirimi öğeleri ve mantık kodu ile tamamlandı ve şu anda epeyce projem var.

Sonra aklıma ChatGPT geldi. hakkında zaten bazı tartışmalar oldu Medyada bir programlama aracı olarak ChatGPTbu yüzden denemeye karar verdim.

WordPress tarafından önerilen kodun sonucu, isteğinize çok bağlıdır.


kodlanmış


ChatGPT kodu (ilk, en temel istemimden) / David Gewirtz/ZDNET

ChatGPT’nin kodu doğru şekilde üretmesini sağlamanın anahtarı, dikkatlice yazılmış bir bilgi istemidir. İstediğinizi elde etmek için neye ihtiyacınız olduğunu açıkça tanımlamalısınız. İşe yarayıp yaramayacağını görmek için çok basit bir cümleyle başladım. İşte kullandıklarım:

İçine bir satır listesinin yapıştırılabileceği bir metin giriş alanı ve basıldığında listenin satırlarını rastgele sıralayan ve sonuçları ikinci bir metin giriş alanında sunan bir düğme sağlayan PHP 8 uyumlu bir WordPress eklentisi yazın.

Bir dakika içinde yukarıda gördüğünüz kodu oluşturdu. Oluşturulan kodu bir .php dosyasına kopyaladım, .php dosyasıyla aynı kök ada sahip bir klasöre koydum, sıkıştırdım ve sunucusuna yükledim. İşe yaradı.

Eşime gösterdiğimde çok etkilendi ve şaşırdı. Ancak daha sonra, her zamanki gibi yeni bir özellik istedi: yinelenen adların yan yana olmamasını sağlamak.

Evet, çünkü işi için bazen bir kişinin adını bir listeye birkaç kez eklemesi gerekiyor. Ancak bu kopyaların birlikte gruplandırılmasını istemiyor.

Bu nedenle, aşağıdaki ek koşulları ekleyerek ilk istemimi değiştirdim:

…iki özdeş girişin yan yana olmadığından emin olun (başka bir seçenek yoksa)… gönderilen satır sayısı ve sonuçtaki satır sayısı birbiriyle aynı olmalıdır.

“Başka bir seçenek yoksa” ibaresini ve eşit sayıda satır gerekliliğini dahil ettim çünkü tüm isimlerin dahil edildiğinden emin olmak istedim ve sadece iki ismin yan yana olmaması gerekliliğine öncelik verdiğinden endişelendim. tüm isimleri saklamak yerine.

Yaklaşık 30 saniye sonra yeni bir eklentim oldu. Bunu sunucuya yükledim ve denedim. İşe yaradı, ancak sonuçta birkaç boş satır vardı. Bu yüzden önceki isteğime bu koşulu ekledim:

…boş satırlar olmadan…

Bu noktada, hala bir dakikanın altında olan geri dönüş süresine alışmıştım. Bir kez daha indirip test edin ve yine işe yaradı.

İşlenen satır sayısını doğrulamak için son bir özellik istedim. Eklentinin giriş ve çıkış alanları için satır sayısını göstermesini istedim. İşte bu istemin eklenmesi:

…İlk alanın altında, kaynak alandaki boş olmayan satırların sayısıyla birlikte “Rastgele sıralanacak satır: ” yazan metni görüntüleyin. İkinci alanın altında, hedef alandaki boş olmayan satırların sayısıyla birlikte “Rastgele dağıtılan satırlar: ” yazan metni görüntüleyin.

Neredeyse tamamen işe yaradı. Yürütmeden önce çıktı alanı bir satır görüntüler. Ancak randomizasyon işlemi tamamlandıktan sonra her iki alanda da tam satır sayısını gösterir.

ChatGPT tarafından oluşturulan kodun kalitesi

Genel olarak kodun kalitesi temiz. Program, WordPress başlık bloğunu başarıyla oluşturdu ve eklenti için pano kullanıcı arabirimini ve ayrıca eklenti işleme mantığını yazdı.

Satırlarımı alanların üstüne yerleştirdi, oysa ben aşağıda belirtmiştim ama bu çok da önemli değil. Bu, bir müşterinin bir geliştiriciden alabileceği ve düzeltilmesi biraz zaman alacak türden bir hatadır.

Kod işe yaradı, ancak en iyi WordPress programlama uygulamalarının tümünü, özellikle kodun güvenli kısmında içermiyordu.

Ayrıca ChatGPT, eklentinin menü öğesini Ayarlar’a da yerleştirdi. Muhtemelen onu Araçlar altına yerleştirirdim veya işleve kendi menü öğesini verirdim. Bunların hepsini belirtmediğim için, ChatGPT’nin menü öğesini oraya yerleştirerek varsayılan bir karar verdiğini düşünüyorum.

Yapay zekadan eklentiye bir isim vermesini isteyerek istemime son bir gereksinim ekledim:

“Robo Randomizer” adlı PHP 8 uyumlu bir WordPress eklentisi yazdı ki…

İşin garibi, yapay zeka daha sonra bana pano arabirimi yerine kısa kod sağlayan tamamen farklı bir eklenti verdi. Bunu WordPress kullanmayanlara açıklayayım, çünkü ilginç.

WordPress için bir eklenti yazdığınızda, onu site ziyaretçilerinin kullanımına sunabilirsiniz (buna ön uç denir) veya sitenin panosunda oturum açanların kullanımına sunabilirsiniz (buna ön uç denir). İlk talimatlarımda ön uç veya arka uç belirtmedim, ancak yapay zeka istediğimi yazdı, yani bir arka uç arabirimi, araç için bir gösterge panosu.

Ancak bu son denemede, AI eklentiyi bir ön uç aracı olarak yazmaya ve onu bir kısa kod aracılığıyla çalıştırmaya karar verdi. WordPress’te, bir gönderiye bir kısa kod gömebilirsiniz ve bu, bir eklentinin kodunu çalıştırır. AI’nın ürettiği en son sürüm, site ziyaretçilerine rastgele satırlar özelliğini sunacak olan bu kısa kodu bana verdi.

Bundan sonra, ChatGPT bir nevi izini kaybetti. Orijinal eklentiye herhangi bir ek işlevsellik ekleyemedim ve ChatGPT az önce kısa kod sürümünü oluşturdu. Bu nedenle, kod bakımının ChatGPT’nin güçlü bir noktası olmadığı açıktır.

ChatGPT ile kod oluşturma deneyimimden çıkarılabilecek sonuçlar

Açıkçası, bu basit bir eklentidir. Üniversitede öğretmenlik yaparken birinci sınıf programlama öğrencilerime verdiğim egzersizlerin seviyesiyle ilgili. Diğer WordPress eklentileri kadar karmaşık değildir.

Sosyal ağlarda ChatGPT ile eklenti oluşturma hakkında konuşmaya başladığımda çok tepki aldım. Ve burada cevaplıyorum.


Bir kişi, AI’nın kötü niyetli (veya en azından tanıtım amaçlı) bilgileri eklentiye yerleştireceğinden ve programcı olmayan bir kullanıcının bunu asla bilmeyeceğinden endişe duyuyordu.

Bir geliştirici değilseniz ve kod okuyamıyorsanız, başka bir geliştiriciyle sözleşme yapsanız bile, içinde ne olduğunu tam olarak bilemezsiniz. Ya itibara güvenin ya da güvendiğiniz birinin kodu denetlemesini sağlayın. Ve ChatGPT’nin ürettiği koda gelince, bu noktada temizdi.


ChatGPT kodu çok iyi kalitede mi?

İyi bir programcıyım ama kodumda en azından ilk başta hatalar var. Ve insanlarla ilgili güzel olan şey, kodun zamanla gelişmesidir. Bir yapay zekanın mevcut kodu alıp iyileştirebileceğinden, hata ayıklayabileceğinden ve cilalayabileceğinden emin değilim. Ancak, bazen kodun yalnızca işlevsel olması gerekir. En iyi olmaları her zaman önemli değildir. İyi olan çoğu zaman yeterlidir. Ve ChatGPT’nin yeterince iyi bir kod ürettiğini söylemeliyim.


Geliştirici işlerinin sayısını azaltacak mı?

Şüphesiz. Bir makinenin bir kişinin işini devraldığını görmekten nefret ediyorum. Ancak AI, ister yazma ister programlama olsun, hızlı ve kolay projeler için açıkça bir seçenektir. Yani işler sıçrayacak, şüphesiz.

Onlarca yıldır yapay zeka üzerine çalışıyorum. AI üzerine bir tez yaptım. Ancak tüm bu yüke rağmen, yüksek kaliteli üretken yapay zekadaki bu artış beni hayrete düşürdü. Bununla birlikte, şu anda gördüğümüz şey “yeterince iyi” bir üretkenlik düzeyidir. Ve ne yazık ki birçok müşterinin talep ettiği şey de bu.

Ancak — en azından şimdilik — ChatGPT ve arkadaşları bunun gibi süper derinlemesine inceleme makaleleri yazamıyor çünkü görüşleri, anekdotları ve yılların deneyimini yansıtıyorlar. Ve muhtemelen daha büyük geliştirme projeleri için alt programlar ve işlevler yazabilseler de, daha büyük projeler için kod yazamazlar.

Örneğin, hizmetlerini benimkiyle entegre etmek için geçen yıl büyük bir API satıcısıyla 20-30 toplantı yapmak zorunda kaldım. Bu toplantıların çoğu, işle ilgili konuları teknik gereksinimler ve lisanslama politikalarıyla karıştırdı. Bu işkenceye katlanmak, nüansları anlamak ve ortak taleplerine yanıt vermek için herhangi bir yapay zekaya meydan okuyorum. Ardından herkesin hemfikir olduğu kod modülleri üretebilmek.

Yani, evet, “yaptığım” eklentinin kalitesinden biraz korktum. Ancak yapay zekanın deneyimli geliştiricilerin ve yazarların işini üstlenmesi için daha kat etmesi gereken çok yol var. Müşteriler bu tür işleri istedikleri sürece. Ve bu, dostlarım, beni daha da endişelendiren bir şey.


Kaynak : “ZDNet.com”



genel-15