Otomatik Mühendis

Zor Yoldan Ruby Öğrenin

Zor yoldan öğrenme serisine devam ediyoruz. Artık LCodeTHW (Learn Code The Hard Way) ismiyle anılan bu seri diğer programlama dillerinde de eğitimler hazırlıyor. Serinin devamında Ruby dili üzerine egzersizler hazırlanmış ve yine ücretsiz olarak tüm içerik http://learnrubythehardway.org/book/ adresinde sunulmuş.

Serinin devamında C, SQL ve Regex olacağı sitede belirtilmiş. Bunların alpha sürümlerini sitede bulabilir, hatta bunlara katkıda bulunabilirsiniz.

Okumaya devam »


MD5 Kodu

MD5 (Message-Digest algorithm 5) dosya bütünlüğünü korumak amacıyla sağlama yapmamızı sağlayan tek yönlü şifre algoritması. Büyük boyutlu dosyalar bu algoritma ile şifrelenerek 128 bitlik özete çevrilir. Bu işlemin tersi mümkün değildir.

md5("otomatikmuhendis.com") = "81113b2060edbbc3721679cd6fdd2b39"

Genellikle işletim sistemi dağıtıcıları kurulum dosyasının MD5 checksum (sağlama) kodlarını da paylaşırlar. İndirme sırasında veri kaybı oluşmuş mu diye kontrol etmek için indirdiğimiz dosyayı MD5 Checker gibi bir uygulamadan geçirir ve 128 bitlik özetini oluştururuz. Üreticiden aldığımız kodla karşılaştırır, denk olması durumunda dosyada eksik olmadığını anlarız.

Örnek olarak Pardus’un son sürümünün MD5 kodunu paylaşmak istedim ama sitesinde bulamadım. Benim gibi başkalarının da bulamadığını gördüm. Öğrenince buraya da yazarım.

Okumaya devam »


Zor Yoldan Python Öğrenin

Online eğitimler genelde başlangıç seviyesi için hazırlanır ve isminde veya açıklamasında bir yerlerde kesinlikle “kolay yoldan öğrenin” yazar. Bu eğitim seti ise bir başka. İsmi bu sefer bir farklılık yapın ve zor yoldan öğrenin diyor.  Bunu da teorik eğitimden daha çok pratik egzersizlerle sağlıyor.  Kafanızı karıştıracak büyük ilerlemeler yerine küçük küçük her şeyden bahsediyor.

Bu arada başlangıç seviyesi için zor olacağını düşünmeyin çünkü eğitim editör kurulumundan başlıyor. Yolun zorluğu sadece farklı bir yöntem kullanmasından kaynaklanıyor.

Eğitim set olarak ücretli, ama sadece kitabını okumak isterseniz bunu online olarak ücretsiz yapabilirsiniz: http://learnpythonthehardway.org/book/

Okumaya devam »


Kilitli Tablolar

Bazen veritabanından bir veri çekerken yanıt alamayız. O sırada ilgili tablo başka bir işlem tarafından güncellenmektedir ve veritabanı sunucusu bize en güncel halini sunabilmek için bizi bekletir. Bu durumu tablo yerine satır bazlı kilitlerle veya hiç veriyi kilitlemeden çözebiliriz.

Aşağıda bu duruma düştüğünüzde sizi kurtaracak scriptler mevcuttur. Hangi tabloların neden kilitlendiğini öğrenebilirsiniz. İyi bir ekipte bunu yazılımcı yerine db adminlerin kontrol ediyor olması gerekir. Yazılımcı tabloları kilitlemeyecek şekilde kodunu yazmalıdır.

Okumaya devam »


Joel Testi

Joel testi, 2000 yılında Joel Spolsky tarafından bilişim literatürüne kazandırılmış 12 soruluk bir testtir. Bu test yazılım ekiplerinin kalitesini belirlemek amacıyla kullanılır. Ben, stackoverflow kariyer sayfasında öğrendim ve bir kaç senelik tecrübemle bu soruların günümüzde geçerliliği bir yana, bir yazılım ekibi ne yapmalıdır konusunda yol gösterici olduğunu söyleyebilirim.

Joel Test

stackoverflow kariyer sayfasında kullanımı

Soruları ele almadan önce Joel Spolsky kimdir sorusunu cevaplayalım. Joel, 2000 yılında internet dünyasına adım atan, eski bir Microsoft çalışanı. 2008 yılında ortağı Jeff Atwood ile birlikte stackoverflow‘u kuruyorlar. Stackoverflow her yazılımcının uğrak noktası olan bir soru&cevap sitesidir. Daha sonrasında Stack Exchange adında bir soru&cevap siteleri ağına dönüşüyor. Kısaca günümüz programcılığını hızlandıran bir etkisi olmuştur.

Şimdi sorular: Toplam 12 sorudan oluşmaktadır ve her biri de bir diğeri kadar önemlidir.

  1. Kaynak kodu kontrol sistemi kullanıyor musunuz?
  2. Tek bir adımda sistemi oluşturabiliyor musunuz?
  3. Derleme (build) işlemi günlük yapılıyor mu?
  4. Hata veritabanınız var mı?
  5. Yeni bir kod yazmadan önce hataları düzeltiyor musunuz?
  6. Güncel iş takviminiz var mı?
  7. İş tanımlamalarınız var mı?
  8. Programcıların sakin bir çalışma ortamı var mı?
  9. Paranın alabileceği en iyi araçları kullanıyor musunuz?
  10. Test elemanınız var mı?
  11. İş görüşmelerinde adaylara kod yazdırılıyor mu?
  12. Koridor kullanım testi yapıyor musunuz?
Okumaya devam »