1995 yılında havacılık simülasyonları konusunda uzmanlaşmış Curtis Olson isimli bir mühedis Microsoft Flight Simulator´a bir eklenti (add-on) yapmaya çalışırken vaktinin büyük bir kısmını asıl iş yerine bu yazılımın dosya formatlarını, iç yapısını, işleyişini, vs. anlamak için enerji harcayarak geçirdiğini fark etti. Ve kendine şöyle dedi: Oturup kendi uçuş simülatörümü yazmaya başlasam, bunu açık kodlu ve GPL lisanslı olarak kamuoyuna sunsam ve sonra...
Olson´un bu çabası ABD´de çılgın bir mühendisin delidolu idealizmi olarak algılanmadı tahmin edebileceğiniz gibi. Proje başladıktan kısa bir süre NASA´daki uzay mekiği programının önemli mühendislerinden biri olan Jon Berndt de projeye destek vermeye başladı. Bu katılımı takiben, bir başka mühendis Tony Peden de projeye katılmakta tereddüt etmedi. Ve gerisi büyük hızla geldi.
FlightGear isimli bu özgür yazılım projesine destek veren deneyimli programcı ve mühendislerin yaş ortalaması 35´in üstünde. Hepsi de kendi alanlarındaki mühendislik ve fizik konularında usta isimler. Geliştirdikleri sistem uç noktadaki havacılık mühendisliği modellerini, grafik (OpenGL) ve ağ programlama tekniklerini kullanıyor. Herkesi sistemlerini incelemeye ve katkıda bulunmaya davet ediyorlar.
Geçenlerde iki dostum PHP ile bir şey yapmaya çalışıyordu. Elemanlardan biri diğerine "şöyle bir şey lazım" dedi. Bunun üzerine çalıştılar ve bir çözüm geliştirdiler. Bu çözümü de elemanlardan birinin bilgisayarında kurulu Apache + MySQL + PHP sistemi üzerinde epey bir denediler, test ettiler. Çalıştığını görüp mutlu oldular. Sistemi uzaktaki makinaya yolladılar.
Mutlulukları pek uzun sürmedi. Sorun çıkmıştı. Epey bir süre uğraştıktan sonra ne olduğunu anladılar. Kullandıkları bir PHP fonksiyonu ofisteki makinada farklı, uzaktaki makinada farklı çalışıyordu. Ama bu nasıl olabilirdi ki? Bir süre sonra bunun da sebebini buldular. Ubuntu geliştiricilerinden biri "ah ne güzel bu açık kodlu sistemler istediğimiz gibi yama yapabiliyor, yamalı bohçaya çevirebiliyoruz, dur ben filanca PHP fonksiyonu daha güzel çalışsın diye ona bir yama yapayım ve PHP'yi o şekilde derleyeyim ve insanlara bunu sunayım herkes faydalansın," demişti. Nitekim ofisteki makinada Ubuntu ve dolayısı ile söz konusu yamayı barındıran bir PHP çalışıyordu. Uzaktaki makina ise Debian idi ve söz konusu yamayı barındırmayan bir PHP çalıştırıyordu.
Şimdi geriye dönüp baktığımıza görüyoruz ki olup bitenlerin PHP ile alakası yok... mu acaba? Basit gibi görünen bu problem bir yanı ile aslında epey çetrefil ve girift bir yönetim + mühendislik (kalitesi) problemi gibi görünüyor bana. Milyonlarca insanın kullandığı bir sistemi geliştirirken akıllıca ve pek çok bakımdan doğru kod yazmak kolay bir iş değil (olsa idi ilgili Ubuntu geliştiricisi PHP'nin o fonksiyonuna bakıp "doğru davranışı bu olmalı!" demez ve yama yapmazdı). Açık kodlu sistemlerde koordinasyon ve yönetim kolay bir iş değil (olsa idi Debian GNU/Linux ve ondan epey şey miras almış olan Ubuntu GNU/Linux'u bir arada kullanmak böyle kritik ve beklenmedik bir probleme yol açmazdı). Taşınabilir olduğu söylenen sistemler mutlak surette taşınabilir değil (olsa idi "o da PHP x sürüm, bu da PHP x sürüm, o halde sorun çıkmaz" cümlesi kolayca kurulabilirdi). Velhasıl kelam, bu mevcut ortam... hala epey bir gerilim barındırıyor çünkü iş yapma kültürü ve mühendislik kalitesi açısından bazı şeylere gözü kapalı güvenemeyeceğimizi gösteriyor (gözü kapalı güvendiğimiz köprüler, asansörler, gökdelenler, metro sistemleri ve benzerlerinden farklı olarak). Denilebilir ki "özgür kod, açık kod ve aynı zamanda beleş kod, beğenmiyorsan kullanma", bu durumda denebilir ki "beleş de bir yere kadar, örneğimizdeki en az iki oluşum yani PHP ve Ubuntu, para kazanmakla da yani 'iş' ile de ilgili oluşumlar o yüzden bu bağlamda ele alınmayı hak ediyorlar."