Köy Enstitüleri ve Çevik Dönüşüm Arasındaki Benzerlikler

Köy Enstitüleri ve Çevik Dönüşüm Arasındaki Benzerlikler

Yaklaşık iki yıl kadar önce çevik dönüşümden esinlenerek toplumların kültür değişimlerini incelemeye karar verdim. Sonuçta çevik dönüşümle yapılmak istenen bir kültür değişimidir. Nereyi okumam gerek, hangi kültür değişimini incelemem gerek diye düşünürken hakkında okumayı ve bilgi sahibi olmayı çok istediğim Köy Enstitüleri aklıma geldi. Geçtiğimiz iki yıl içinde Köy Enstitüleri hakkında araştırmalar yaptım ve aşağıdaki kitapları okudum. Ayrıca bugünlerde kariyerimdeki ikinci çevik dönüşümü yaşıyorum. Bu bağlamda şimdi Köy Enstitüleri ve Çevik Dönüşüm Arasındaki Benzerlikleri anlatmaya çalışacağım.

 

  • Türkiye’de Köy Enstitüleri – Fay Kirby, Çeviri: Niyazi Berkes
  • Özgürleşme Eylemi Köy Enstitüleri – Mehmet Başaran
  • Eğitim Mirasımız Köy Enstitüleri, Uygulanabilirliği ve Model Çalışmalar – KAVEG
  • 100 Soruda Köy Enstitüleri – Dr. Hüseyin Karakuş
  • Deneyim ve Eğitim – John Dewey, Çeviri: Sinan Akıllı

 

Kitaplar hakkında kısa bilgi vermek isterim. Türkiye’de Köy Enstitüleri kitabı aslında Fay Kirby’nin Columbia Üniversitesi’ne verdiği doktora tezidir. Doktora tezinin adı: The Village Institute Movement of Turkey: An Educational Mobilization for Social Change’tir. Yaklaşık 2000 sayfadan oluşan bu teze internet üzerinden erişim sağlanamıyor. Ne yazık ki basılmış haline de ulaşamadım. Fay Kirby’nin eşi olan Niyazi Berkes tarafından Türkçe’ye çevrilen hali kesilmiş bölümleriyle beraber yaklaşık 550 sayfalık bir kitaptır. Bu yazıda Köy Enstitüleri’nin siyasi yönüne girmek istemiyorum fakat alt bilgi olarak şunu verebilirim: Fay Kirby tezini 1960 yılında Columbia Üniversitesi’ne sunuyor ve doktorasını alıyor. Sonrasındaysa Amerikan vatandaşlığından çıkıyor ve Kanada vatandaşı olarak Kanada’da yaşamaya başlıyor. Yine Niyazi Berkes’te Türk vatandaşlığından çıkıyor ve Kanada vatandaşı olarak yaşıyor.

Continue reading Köy Enstitüleri ve Çevik Dönüşüm Arasındaki Benzerlikler

Sürekli Entegrasyon 4

Sürekli Entegrasyon 4

 

10. Herkes Ne Olduğunu Görebilir

Sürekli Entegrasyon iletişimdir. Böylece herkes sistemin son halini ya da şimdiye kadar neler yapıldığını rahatça görebilir. İletişimin yapıldığı birinci konu ise ana branch üzerinde gerçekleştirilen build işleminin durumunun ne olduğudur. Sürekli Entegrasyon için kullanılan araçlar bir web sitesi ile gelirler ve yapılan build’i, bu web sitesi üzerinden herkes izleyebilir. Kimi kurumlar bunun daha da görselleştirmek isterler başarılı build’ler için yeşil ışık sorunlu build’ler için kırmızı bir ışık yakarlar. Kimi kurumlar daha eğlenceli yaklaşırlar olaya ve build yapan yazılım geliştiricinin makinesinin üzerinde plastikten bir horoz bulunur. Herkes build yapıldığını ve kim tarafından yapıldığını bilmiş olur.

Web sitesinin diğer bir avantajı ise aynı ofiste çalışmayan kişilerin build’in son durumu hakkında kolayca bilgi edinebilmesidir. Ayrıca tarihçesi tutulan sistemlerin hangi build’lerinin başarılı olduğu hangilerinin olmadığı ve neden olmadığı bilgisi de bulunmaktadır.

Continue reading Sürekli Entegrasyon 4

Sürekli Entegrasyon 3

Sürekli Entegrasyon 3

6. Bozuk Build’i Hemen Düzeltin

Sürekli build yapabilmenin anahtarı ana branch’te gerçekleştirilen bir build hata aldıysa bunu hemen düzeltmektir. Sürekli Entegrasyon ile çalışmanın amacı stabil bir ortamda geliştirme yapmaktır. Ana branch’te bir build’in hata alması kötü bir şey değildir fakat sürekli olarak yaşanıyorsa bu yazılım geliştiricilerin yeterince dikkatli olmadıklarının göstergesidir. Yine de önemli olan nokta eğer bir build hata aldıysa bunun biran önce düzeltilmesidir. Böyle bir sorun genellikle ana branch’e gönderilen son kodun geri alınması ve kodu gönderen kişinin kendi makinesinde sorunu bulmasıyla çözülebilir.

Continue reading Sürekli Entegrasyon 3

Sürekli Entegrasyon 2

Sürekli Entegrasyon 2

 

2. Otomatize Edilmiş Derleme

Kodlar, bir tane kod kaynağında çalışır duruma geldikten sonra yapılması gereken işlem bu kodların otomatize edilmiş bir şekilde derlenmesidir. Otomatize edilmiş derlemelerin içinde entegrasyon testleri ve birim testleri otomatik olarak çalışmalıdır. Otomatize edilmiş derleme için farklı yazılım dillerinin, farklı platformların, farklı toplulukların farklı uygulamaları mevcuttur.

Büyük bir derleme zaman alır. Bunun için derleme aracınızın bir önce gerçekleştirdiğiniz derleme ile şu anda gerçekleştireceğiniz derleme arasındaki farkları bulması, bu değişiklikler ile ilgili bağımlılıkları bulması ve sadece bunları derlemesi iyi bir özelliktir. Yapılan ufak bir değişiklikten sonra uzun bir derleme süresini beklemek doğru değildir. İyi derleyiciler bu tarz işlemlerle başa çıkabilir durumdadır fakat başa çıkamayanlarda bulunmaktadır. Bir yazılım geliştirici kendi bilgisayarında kullandığı yazılım dilinin IDE’sine bağlı olan derleme sistemini kullanabilir fakat onlarca yazılım geliştiricinin kodunun aynı anda derlenmesi için bir ana bilgisayar üzerinde bahsettiğim platformlardan biri kullanılmalıdır.

Continue reading Sürekli Entegrasyon 2

Çevik Pratikler’den Biri, Sürekli Entegrasyon Nedir?

Çevik Pratikler’den Biri, Sürekli Entegrasyon Nedir?

Bu yazı serisinde Çevik Pratikler’den biri, Sürekli Entegrasyon nedir, Sürekli Entegrasyon Pratikleri nelerdir, Sürekli Entegrasyon’un faydaları nelerdir konularına değineceğim. Sürekli Entegrasyon, terimi 1990’lı yıllarda ilk defa Kent Beck tarafından kullanılmıştır.(1) Kent Beck, eXtreme Programming’in yaratıcısı ve Çevik Yazılım Geliştirme Bildirisi’ni imzalayan 17 kişiden biridir.

Sürekli Entegrasyon, bir yazılım geliştirme pratiğidir. Yazılım geliştiriciler yazdıkları kodu ortak bir alana yükler. Böylece herkesin yazdığı kod ortak alanda derlenir ve çalışan ürün elde edilir. Bir yazılım geliştirici yeni bir işlevsellik geliştireceği zaman ortak alanda bulunan kodu kendi bilgisayarına çeker ve kod üzerinde çalışmaya başlar. Yazılım geliştirici işlevselliği geliştirdikten sonra yazdığı kodu ortak alana yükler. Teoride yapılan işlem bu kadar kolay gibi görünse de gerçek hayatta işler bu kadar kolay değildir. Büyük ölçekli yazılımlar geliştirmek karmaşıktır. Bu karmaşıklığı aşarken yüksek kaliteli ürün oluşturabilmek için disiplin ve koordinasyon gereklidir. Sürekli Entegrasyonla gerekli disiplin ve koordinasyonun sağlanabilmesi için bazı aktiviteler belirlemiştir. Bu aktiviteleri, Martin Fowler, Sürekli Entegrasyon hakkında yazdığı makalede belirtmiş ve bu aktiviteler yazılım dünyası içinde büyük kabul görmüştür. Continue reading Çevik Pratikler’den Biri, Sürekli Entegrasyon Nedir?