CodeIgniter, Ben'in PHP geliştiricisi yolculuğunda erken bir rol oynadı ve kısa sürede forumların ve topluluğun aktif bir üyesi oldu. O zamandan beri CodeIgniter çerçevesi için IonAuth da dahil olmak üzere çok sayıda kitaplık üretti, bir kitap yazdı ve PHP kullanıcıları için bilgilendirici podcast'lere ev sahipliği yaptı. Bu röportaj sırasında Ben ile tüm bunlar ve daha fazlası hakkında sohbet etme şansı bulduk. Kemerinizi bağlayın!
Şahzeb: Ben, bu röportaj için seni aramızda görmek çok güzel. Okuyucularımıza kendinizden bahseder misiniz?
Ben: Beni kabul ettiğin için teşekkürler! Eşim ve basset hound'umuzla birlikte Columbus, GA'da yaşayan bir yazılım mühendisiyim.
Şu anda Wayfair'de geliştirme platformlarımızda personel mühendisi olarak (uzaktan) çalışıyorum. Yaklaşık 18 yıldır teknolojinin içindeyim. Yıllar boyunca sistem yöneticisinden robotik programlamaya ve web geliştirmeye kadar her şey üzerinde çalıştım.
Şahzeb: CodeIgniter'daki kariyerinize ne zaman ve nasıl başladınız? Yolculuğunuzla ilgili paylaşabileceğiniz ilginç hikayeler var mı? Başlangıçta karşılaştığınız zorluklar nelerdi ve bunlarla nasıl başa çıktınız?
Ben: Bir otomotiv üreticisi için ikili bir rolde çalışıyordum; zamanımın yarısını sistem yönetimine, yarısını da yazılım mühendisliğine ayırıyordum. Opelika, Alabama'daki otomatik üretim tesisimiz için bir SCADA sistemi kurmakla görevlendirildim.
O zamanlar yasal web geliştirme hakkında çok az şey biliyordum, dolayısıyla bu benim ilk web tabanlı projemdi. Bu PHP 4'ün ilk zamanlarıydı. Kendi geliştirdiğim çerçeveyi yazdım ve vay be, ne kadar kötüydü. SQL doğrudan görünümlerden çağırır, endişeler arasında neredeyse hiç ayrım yoktur, bin satırlık işlevler…
Sonunda bu yönetilemeyecek kadar fazla hale geldi ve en iyi uygulamaları, çerçeveleri vb. araştırmaya başladım. Birkaç farklı çerçeve denedim ve CodeIgniter benimle “tıkladı”. Çok sevdim, ne kadar esnekti, tam ihtiyacım olan yere yapı katıyordu.
Oradan CI forumlarına ve topluluğa oldukça dahil oldum.
Şahzeb: CodeIgniter çerçevesi için pek çok etkileyici kitaplık oluşturdunuz: İyon Yetkilendirmesi. Bunların fikri aklınıza nasıl geldi?
Ben: Ion Auth, Jacksonville, Florida'da bir pazarlama ajansında çalışırken bir uygulama geliştirmemle başladı. Kimlik doğrulaması eklemem gerekiyordu ve kimlik doğrulama için ihtiyacım olan tüm işlevlere sahip basit bir çözüm bulamadım. Bulabildiğim en uygun şey Redux Auth 2 kütüphanesiydi ancak artık bakımı yapılmıyordu. Yazara ulaştım ama o farklı bir ekosisteme geçmişti. Böylece onu çatalladım, ihtiyacım olan işlevselliği ekledim ve Ion Auth doğdu.
Şahzeb: Ben, aynı zamanda ortak sunuculuk da yapıyorsun PHP Belediye Binası Dijital ses dosyası. Bize biraz bu podcast’lerden bahseder misiniz? Bu gruba kimler katılabilir ve geliştiricilere ve PHP kullanıcılarına nasıl yardımcı olur?
Ben: Yıllar önce birkaçımız CodeIgniter geliştiricilerinin birkaç içki içip takılmaları için ara sıra video görüşmeleri düzenlerdik. Bir gün Phil Sturgeon ve ben bu aramaların ne kadar eğlenceli olduğunu ve bunun gibi bir şeyin daha geniş PHP topluluğu için olmasını ne kadar dilediğimizi hatırlıyorduk. Bu fikir podcast'i ateşledi. Phil ve ben bir bira içmeye ve PHP topluluğundan başkalarıyla birlikte ne gibi harika şeyler üzerinde çalıştıklarını tartışmak için takılırken kendimizi kaydetmeye karar verdik.
Podcast, farklı ortak sunucularla yıllar içinde büyüdü ve değişti, ancak format oldukça aynı kaldı (belki bugünlerde biraz daha profesyonel). Artık Matt Trask'ın yardımcı sunuculuk yaptığı sekizinci yılımızdayız.
Podcast'e herkes gelebilir. Sadece uzanın. Amacımız PHP topluluğuyla hangi fikirlerin, tekniklerin ve araçların daha iyi geliştiriciler olmalarına yardımcı olacağını paylaşmaktır.
Şahzeb: Dünya çapındaki PHP konferanslarında konuşmaktan hoşlanıyor gibisiniz. Bu yıl konuşacağınız belirli bir konu var mı? Ve nerede?
Ben: Bu yıl yeni bir konuşma üzerinde çalışıyorum: “Veri Yapıları ve Algoritmalara Başlarken”. Bilgisayar bilimi diplomam yok, dolayısıyla bu CS temellerini anlamaya gerçekten zaman ayırmam yıllarımı aldı. İnsanların bu bilgiye hızlı bir başlangıç yapmalarına yardımcı olmayı umuyorum.
Bunu ilk kez birkaç hafta önce Midwest PHP'de verdim. Umarım bu yıl en az bir kez daha veririm.
Şahzeb: CodeIgniter Konseyi Yönetim Komitesinin ve CodeIgniter Güvenlik Ekibinin bir üyesisiniz. Mevcut sorumluluklarınızı nasıl tanımlıyorsunuz?
Ben: Şu sıralar pek aktif değilim. Yakın zamanda PHP-FIG Çekirdek Komitesine seçildim, bu yüzden şimdilik orada daha fazla zaman ayırıyorum. Yeni bir ClockInterface PSR üzerinde çalışan bir çalışma grubundayım.
Yine de CodeIgniter çekirdek ekibinin bir üyesiyim ve rapor edildiğinde potansiyel güvenlik sorunlarını inceliyorum.
Şahzeb: Ben, kitabı da sen yazdın PHP Uygulamalarının Güvenliğini Sağlama. Bize bu kitaptan biraz bahseder misiniz? Peki geliştiricilerin işlerini geliştirmelerine nasıl yardımcı olacak?
Ben: Ion Auth'u geliştirme süreci boyunca güvenlik, kriptografi ve yaygın güvenlik açıkları hakkında çok şey öğrendim. Bu nedenle, özellikle PHP geliştiricilerini hedef alan, uygulamaların güvenliğini sağlamaya yönelik kısa bir kılavuz yazmaya karar verdim. Amacım öğrenme sürecine bir kısayol oluşturmak ve genç mühendislere dikkat etmeleri gereken temel şeyleri öğretmekti.
Şahzeb: Kapsamlı CodeIgniter geliştirme bilgisine sahipsiniz. Sizi CodeIgniter web geliştiricisi olmaya iten şey neydi? Bu yolculukta akıl hocalarınız ve ilham kaynaklarınız kimlerdi?
Ben: CodeIgniter bana çok doğal geldi ve ben de dahil olmaya karar verdim. Birbirine son derece sıkı sıkıya bağlı bir topluluk vardı; topluluk üyelerinin çoğu bugün hala en iyi arkadaşlarımdan bazıları.
Pek çok ilham kaynağı vardı ancak öne çıkan birkaç kişi Phil Sturgeon, Lee Tengum ve Michael Wales'ti. Hepsiyle hala düzenli olarak konuşuyorum ve yakın arkadaş olarak görüyorum.
Şahzeb: Üzerinde çalıştığınız en unutulmaz CodeIgniter projeleri nelerdi?
Ben: Üzerinde en uzun süre çalıştığım, ABD'nin en iyi sigorta şirketlerinden birinin sigorta portalıydı. Uygulama on yıldan fazla bir süre üretimde kaldı ve CodeIgniter kısmı sonunda mikro hizmet mimarisinin yalnızca küçük bir parçası haline geldi.
Öne çıkan bir diğer sistem ise akıl sağlığı tesisleri için elektronik tıbbi kayıt (EMR) sistemiydi. İnsanların hayatlarında fark yaratan bir şey üzerinde çalışmak çok tatmin ediciydi.
Şahzeb: CodeIgniter çerçevesini sıfırdan öğrenmek isteyen yeni başlayanlara ne tavsiye etmek istersiniz?
Ben: Oluşturmaya başlamak için heyecanlandığınız bir fikir seçin! Öğrenmenin en iyi yolu denemek, başarısız olmak ve sonra tekrar denemektir.
Şahzeb: Müşterileriniz için hangi web barındırma türünü tercih edersiniz? Sizce bir siteyi bulut yönetimli barındırmada barındırmanın, geleneksel paylaşımlı barındırmaya göre avantajları nelerdir?
Ben:Bu gerçekten bir değiş tokuş. Kendi kendine barındırma veya paylaşımlı barındırma, uygulamalarınız üzerinde daha fazla kontrol sahibi olmanızı sağlar, ancak çok daha fazla zaman yatırımı gerektirir. Yönetilen barındırma, barındırmanın zorluklarını ortadan kaldırır, size koda odaklanma özgürlüğü tanır, ancak özelleştirme yeteneği daha azdır.
Şahzeb: Web uygulamalarını dağıtmak için özellikler içeren optimize edilmiş bir PHP yığını sağlayan DreamHost gibi yönetilen barındırma çözümleri hakkında ne düşünüyorsunuz?
Ben: DreamHost'i kişisel olarak hiç kullanmadım ancak yönetilen barındırmanın büyük bir hayranıyım. Yeni yan projeler geliştirirken veya sistem yöneticisi bilgisi olmayan müşterilerle çalıştığımda genellikle yönetilen barındırmayı tercih ediyorum.
Şahzeb: Dizüstü bilgisayarınızdan uzakta olduğunuzda ne yapmaktan hoşlanırsınız?
Ben: Golf son birkaç yıldır ana hobim haline geldi. Bundan keyif alacağımı hiç düşünmezdim ama gerçekten harika. Dışarıda olmak, rahatlamak ve aynı zamanda kendinize meydan okumak; inanılmaz derecede eğlenceli.
Şahzeb: Bundan sonra kiminle röportaj yapmalıyız ve neden?
Ben: Lonnie Ezel. Şu anda projeyi yönetiyor ve CodeIgniter 4'ün çoğunun arkasındaki beyin (ve kod) oydu.
Phil Sturgeon. Eski tarz CodeIgniter'ın tüm ayrıntılarını öğrenmek istiyorsanız onunla konuşmak harika olurdu.
Şahzeb: Okuyucularımız için ofis alanınızın veya mevcut iş istasyonunuzun COVID-19 salgını durumundaki anlık görüntülerini paylaşabilir misiniz?
Şahzeb: Bir kez daha teşekkür ederim Ben.
Ben: Beni kabul ettiğin için teşekkürler!
×