php ve eskiden kalma delphi yazıları….
4 Oca

Uzun zamandır aklımda olan, uzun zamandır kullandığım ve anlatmak istediğim hayat kurtaran bir fikir: SubVersioN (SVN).
SVN’i anlatmanın en kolay yolu bir örnek üzerinden gitmek. Bir proje geliştirdiğinizi düşünün. Ekibiniz küçük veya büyük farketmez, aynı dosyalardan çalışmak ve hızla ilerlemek zorundasınızdır. Bu tür çalışmalarda en fazla rahatsızlık veren durum her zaman takımdaki kişilerin yaptığı düzenlemelerin, yine takımdan birisinin yaptıklarıyla çakışmasıdır. Sizin yaptığınız bütün değişiklikler, bir başka kişide var olmayacağı için o dosyayı farkında olmadan sizin yaptıklarınızın üzerine atar ve bir anda tüm yaptıklarınız ezilir.
Bu gibi durumlarda ya takım arkadaşlarınızla çok iyi bir iletişime sahip olmalısınız ya da her zaman elinizde yaptıklarınızın yedeği bulunsun ki bir sürü zaman harcayarak çakıştığınız noktaları birleştirmeye uğraşın.

Tüm bunlar bir işkence değil mi?
O zaman SVN kullanabilirsiniz. Üstelik bir takım çalışması da olmak zorunda değil, tek başınıza çalışsanız bile. SVN basit olarak belirlediğiniz klasörleri, içindeki dosyaları versiyonluyor. Bir SVN sunucusu sayesinde (bu kişisel bilgisayarınız da olabilir) proje üzerinde yapılan en ufak değişiklik bile versiyonlanıyor ve veritabanına kaydediliyor. Ekip çalışanları bu dosyalara ulaşmak istediğinde bir SVN programı sayesinde dosyaları bilgisayarlarına çekip, çalışmalarını yapabiliyorlar. Güncelleme işlemi tamamlanınca tüm ekip uğraşmadan yeni dosyalara erişebiliyor.
SVN Mac de dahil bir çok platformu destekliyor. Dilerseniz bir SVN sunucu yazılımını web sitesinden indirebilirsiniz.
Ekip çalışanları SVN sunucusundaki dosyalara erişmek için bir SVN yazılımı kullanmak durumdadırlar. Benim tercihim TortoiseSVN‘den yana.

SVN üzerinde çalışma mantığı ise oldukça basit. SVN sunucusuna tanımlanan bir proje, çalışanlarda bulunan TortoiseSVN yardımıyla kendi bilgisayarına indiriliyor. Yani sunucudaki dosyaların birer kopyası çalışan insanlarda oluyor. Çalışan kişi dosyalarda istediğini değişikliği yaptıktan sonra TortoiseSVN yardımıyla dosyaları SVN sunucusuna atabiliyor. Böylece diğer çalışanlar SVN projesini güncellediğinde o kişinin yaptığı tüm değişiklikler onların da bilgisayarlarına yansıyor.
Eğer iki kişi aynı dosyada çalıştıysa ve bir şekilde çakışma yaşandıysa TortoiseSVN bu çakışmayı gidermek için elinden geleni yapıyor. Eğer değişiklikler dosyada aynı satırlarda değilse (mesela birisi en üstte, diğeri en altta çalışıyorsa), TortoiseSVN bunları rahatlıkla birleştirebiliyor. Eğer çalışma aynı satırlardaysa bu sefer bir uyarı alıyorsunuz ve size çakışan yerleri gösteriyor. Ancak birleştirme işlemini yapamadığı için size gösterdiği farklılıklardan birleştirmeyi sizin yapmanız bekleniyor, çok daha kısa süren bir işlem.
İster bir ekip çalışması olsun, isterseniz tek başınıza çalışın her türlü web projesi için kullanmanız oldukça faydalı olacaktır. Versiyonlama sistemi saysinde çakışmaları engellediği gibi, geriye dönüp tüm yapılan değişiklikleri de görebiliyorsunuz. Bundan 2 ay önce yaptığınız, fakat kaybettiğiniz bir dosyayı SVN üzerinden çıkarmak oldukça basit.
Son olarak popüler çevirim içi geliştirme platformları SourceForge ve Google Code da SVN kullanıyor.
Popularity: 8% [?]
4 Oca
| Herkes Web 2.0′ı konuşuyor | |
|
Bugünlerde sektörümüzde ki herkes Web 2.0’dan bahsediyor. Bundan birkaç ay önce bende bu konuyla ilgili yazı yazmıştım. O günden bu güne, milyonlarca kişi, kendilerince tanımlamaya başladı Web 2.0’i. Bazıları AJAX ve AJAX ürünleri Web 2.0 derken, bazıları ise Web 2.0’in İnternet ve Web içinde yeni bir dönem açtığından bahsediyor. Peki nedir bu Web 2.0? Ne değişti? Eskiden yaptıklarımızdan çok mu farklı? Web 2.0 için benim tanımım, kullanıcıların bir web uygulaması içindeki olumlu katılımcılığı ve yazılımcıların başkalarının uygulaması içindeki özgürlüğü. Yani kontrolün en az olduğu donem. Aranızda İnternet’i 6-7 seneden fazla kullanan varsa hatırlayacaktır Infoseek, Excite ve diğer çok popüler portallari. O dönemde her şey kullanıcıyı kontrol etmekte yatıyordu. Yani, kullanıcıyı içine çekmek ve her isteklerine (!) cevap vermek ve kontrolü elde tutmak. Bunun ne kadar yanlış bir model olduğunu herkes çok kısa bir zamanda anladı. Google geldi ve işte size arama kutusu, yazın ve istediğinizi, istediğiniz şekilde bulun eğer memnun kalırsanız yeniden gelin dediler. “Kendimi Şanslı Hissediyorum” arama düğmesi bence Web 2.0’i başlatan ilk yenilikti. Bu düğme, kontrolün bizim elimizde olduğunu, Google’un ikinci sayfasını bile görmeden, başka yerlere gidebileceğimizi hatırlattı bize. Web 2.0, kontrolün bittiği bir dönem. Web 2.0, AJAX, CSS, RSS ya da aklınıza gelebilecek herhangi bir teknoloji ile ilgili değil. Web 2.0, kullanıcı deneyimi ile ilgili. Bilginin nasıl, ne şekilde kullanıldığı, paylaşımın ve katılımcılığın ne şekilde dünyamızı şekillendirdiği ile ilgili. Bunu size bir örnek ile açıklamak istiyorum. Yaklaşık bir hafta sonra, Boston’da düzenlenecek User Interface 10 Konferansına katılacağım. Kısa ismi ile UI10. Burada yazdığım link, Technorati tarafından birkaç saat sonra indekslenecek. Kullanılabilirlik konusunda araştırma yapan bir kişi bu ve diğer blog yazılarına ait linkleri Technorati’de bulup, okumaya başlayacak. UI10 sitesini daha sonra ziyaret etmek için del.icio.us sitesine ekleyip, UI10, konferans ve kullanılabilirlik diye etiket koyacak. Bir başkası del.icio.us’da bakınırken, bu linki bulup, siteyi ziyaret edecek. Eğer gördükleri hoşuna giderse, konferansa kendisi de katılacak. Katılamadan önce yapacaklarını ve bununla ilgili konuları BackPack’ine koyacak. Konferanstan sonra, yaşadıklarını, öğrendiklerini bloguna yazacak, Technorati bunu indeksleyecek. Çektiği resimleri Flickr’a koyup UI10 diye etiketleyecek. Diğer katılımcılar ya da katılmayıp neler olduğunu görmek isteyenler, yazılanları Technorati ve/veya del.icio.us’da bulup okuyacak, yorum yazacak, Flickr’da ki resimlere bakacaklar. Bütün bunlar olurken, UI10 konferansını düzenleyenler, konuşmacıların podcastlarını Odeo’ya koyacaklar. İşte bu aşamada eğer siz, bu konferans ile ilgilenen bir yazılımcı iseniz, hiçbir ekstra içerik yazmadan bütün bu sitelerin sunduğu API’lerden yararlanarak yepyeni bir site yaratabilirsiniz. Bu sitede konuşmacıların podcastları (Odeo), katılımcıların çektiği resimler (Flickr), bu konferans hakkında yazılan yazılar (Technorati), bu konferansın yapıldığı yerin haritası (Google Map), konuşmacıların çıkardığı kitaplar (Amazon) ve katılımcıların yaşadığı deneyimleri paylaşabileceği bir toplantı (Upcoming ya da TadaList) ve şu an nerede oldukları (Plazes) ve bir daha ki sene UI11’e katılmak isteyenlerin listesi (43things) yer alabilir. Hem de kendi kendini oluşturan, güncelleyen ve birçok kişinin katilimi ile oluşan bir site. İşte bence Web 2.0 bu. Yani statik, bireysel ve kontrolcü bir donemden, dinamik, katılımcı ve özgür bir doneme. Mehmet DOĞAN |
|
Popularity: 4% [?]