Nasıl Programcı Olunur

0
yalcink01
Robert L. READ tarafından yazılmış olan ve ESR'nin "Nasıl Hacker Olunur?" kılavuzunda da bahsi geçen "How to be a programmer" kılavuzunun "acemiler" için olan kısmının çevirisi bitti. Hem çevrilen kısmın imla, yazım, mantık ve bilumum hatalarının kontrolü için hem de programlamaya merak saran acemi vatandaşlara yol yordam göstersin diye bu kısmı yayınlamaya karar verdik. Çevrilmiş kısım hakkındaki fikir ve eleştirilerinizi bekliyorum. Hata ayıklama konusundaki yardımlarınız için şimdiden teşekkürler.

Saygılarımla,

Yalçın KOLUKISA
yanmasın diye kaz çevirmeye giden adam

Görüşler

0
FZ
Bu çok önemli belgeyi tercüme etme işine giriştiğiniz için çok teşekkürler!

Bir iki hata:

- "Loop" için "düğüm" denmiş, doğrusu "döngü" olacak. Bildiğim kadarı ile "düğüm" sözcüğü halihazırda "node" sözcüğünün karşılığı olarak kullanılıyor.

- Aralıklı hata lafı biraz garip bir laf, yani mekanda aralık mı, zamanda aralık mı, burası çok kafa karıştırıcı. Okuduğum kadarı ile kast edilen düzenli olarak oluşmayan ve bu yüzden yakalanması zor olan hatalar, bundan ötürü daha uygun bir terminoloji kullanmakta fayda var.

- Bir yerde "proğram" yazılmış, yani yumuşak g ile. Buna dikkat edilirse iyi olur.

Tekrar tekrar teşekkürler. Bu tip bir kılavuzun bir an önce tamamlanması dileği ile.

Bu kılavuzdan sonra tercüme ya da orjinal bir başka belgeye daha ihtiyacımız olduğunu düşünüyorum. O da "Hangi Tür İşler İçin Hangi Tür Programlama Dilleri/Ortamları/Sistemleri Uygundur" konu başlıklı kılavuz olmalı. Alt başlık olarak da "İmperatif, Nesneye Yönelik, Fonksiyonel, Deklaratif Programlama" kullanılabilir.
0
yalcink01
Aralıklı hata lafının garipliği konusunda hem fikiriz. Arada bir ortaya çıkan /* zamanda aralık*/ sorunlardan bahsediliyor. Sanırım "nadiren ortaya çıkan hatalar" diye düzenleyeceğim. Ama her türlü fikire açığım.

Kılavuza, her paragraf başına numara vereceğim. Bu numaralar ile hata bildirimi yapabilirseniz, düzeltmesi daha kolay olabilir./* sanki en başta niye koymadıysam*/

Geri besleme için teşekkürler.

Yalçın KOLUKISA
0
robertosmix
Başarılar. Çok büyük bir işi, yoğun çalışmalarınızla sona erdirdiniz. Bildiğimiz gibi nasıl programcı veya hacker olunacağı konusunda hiç kimse hiç birşey bilmiyor. Hatta aramızda hiç programcı da yok. Yabancı dillerde yazılmış eserler muhtemelen bizim yazmaya çalışacaklarımızdan daha iyidir. Çünkü biz her zaman daha yeteneksiz bir toplumuz, bu konuda. Aslında her milletin çevirmeni yok, bizim var ama... Bununla da övünebiliriz. Ne güzel çeviriyoruz metinleri. Helal olsun bize.
0
malkocoglu
Aramızda yazılım muhendisleri var zannediyorum (sahsimiz buna dahil), XP ve mimari hakkındaki yazılarımıza FM'den dolu ziyaret (hit) geldi. Mesela Mimari [www.bilgidata.com] hakkındaki yazi da teknik liderler, hem de programcilar icindir.


Proje idaresi ve tasarim genel konulari icin suraya [www.bilgidata.com] bakabilirsiniz.
0
malkocoglu
Genel hatlari ile guzel bir yazi olmus, kutlarim.

Bir tavsiyeyi, "representation" ve "temsilleme" kelimelerinin sunulus sirasi hakkinda yapacagim. Tercume dogru. Sunus sirasi olarak, bir kez yabanci kelimeyi Turkcesi ile sundugunuz zaman, yazinin geri kalan kisminda Turkcesini kullanmaya devam etmek iyi olabilir.

Boylece okuyucunun zihninde yer eden, ve zaten yazinin Turkce yapisina daha iyi uyan (akici yapan) kelime Turkce kelime olacaktir.
0
FZ
1.8 I/O´LARI NASIL DAĞITACAKSINIZ bölümü çok sorunlu göründü bana. Yazım hatalarının yanısıra bu bölümde kullanılmış dile dikkat etmekte ve mümkünse yeninden tercüme etmekte fayda var.

Bunun dışında:

Search: sarmallamak
Replace: gruplandırmak, birlikte yazmak, vs.

Ayrıca şu cümle:

Tekrar hesaplayan indekslerden ziyade işaretçileri gönderin.

Tekrar tekrar hesaplanan dizi indisleri yerine işaretçileri kullanın.

Bu arada yazıyı okuyacak çok farklı arkaplanlara sahip arkadaşlar için yazarın genellikle C dilini kullanarak teknik açıklamalara giriştiğini en başta hatırlatmakta fayda var diye düşünüyorum. Böylece `işaretçi´ gibi sözcüklerin varlık sebebi daha iyi anlaşılacaktır.

1.9. HAFIZA YÖNETİMİ NASIL YAPILIR? bölümü ile ilgili olarak:

İlk paragrafta Çöp Toplayıcısı (Garbace Collector - GC) kavramının ne olduğu daha düzgün şekilde açıklanabilir. Çöp, çöp denip duruyor ama ilk paragrafta bu `çöp´ün ne olduğu tanımlanmıyor! Özellikle teknik konular açıklanırken yapılan benzetmelere çok dikkat edilmelidir, insan beyni bunları gayet kolay şekilde yanlış anlayabilir ;-)

`Alışılagelmiş usullerden ...´ diye başlayan cümle bana hiçbir şey ifade etmedi.

`Hiç bir şey...´, ile başlayan cümlede `Hiçbir´ bitişik yazılmalı.

`Testlerde hiç yorulmayan(exhausted) ...´ cümlesinde yorulmak yerine tükenmeyen, bitmeyen denmeli.

Metnin yeniden bir elden geçirilmeye ihtiyacı var diye düşünüyorum.
0
yalcink01
orjinal kılavuzda çöp ve çöp toplayıcı için ayrıntılı bir açıklama mevcut değil. yaptığım çevirilerde, kendi bilgi alanımın dışındakiler için, herhangi bir ekleme veya düzeltme yapmak gibi bir huyum yoktur. ama siz veya programlamayı bilen bir FMci bu iki terim için açıklamalar yaparsa kılavuza ekleriz. böylece yanlış anlamaları önleyebiliriz.

belirttiğiniz diğer hatalar için gerekli düzeltmeleri yaptım.

bölüm1.8 e tekrar göz atacağım.
Metnin yeniden bir elden geçirilmeye ihtiyacı var diye düşünüyorum.


bu yarım çeviriyi yayınlamaktaki amacım zaten buydu: bir programcı olmadığım için, teknik konularda yapacağım hataları yolun başında iken düzeltmek, orta ve ileri düzey programcılara yönelik bölümde hata oranını mümkün mertebe aşağı çekmek. verdiğiniz destek için teşekkürler.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Knoppix Rehberi

yuxel

Knoppix'e yeni başlayanlar için bir rehber : Knowing Knoppix.

GNU/Linux'un ne olduğundan, Knoppix'in ne olduğuna; açılış parametrelerinden, KDE'ye; yerel ağ kurulumundan, yazdırma işlemlerine kadar pek çok konuyu basit bir dille anlatan faydalı bir eser.

Editörün Notu: Knoppix ile ne kadar acayip şeylerin yapılabileceğini merak edenlere iki adres daha: Knoppix Hacks ve True Stories of Knoppix Rescues

Yazıcıdan Güzel Kod Basmak (Pretty Print)

malkocoglu

Kod gözden geçirme (code review) toplantılarında olmazsa olmaz olan "2 kod sayfası bir yazıcı sayfasına" denk gelecek, ve her satırın numaralı olacak şekilde gosteren bir yazıcı çıktısıdır. Bunun için kullanılan enscript programının kuruluşu, Ghostview, Ghostscript ve Emacs ile yapılan bağlantılarının nasıl olacağını aşağıdaki yazıda anlatılmıştır.

http://www.bilgidata.com/yazi.jsp?dosya=a_enscript.xml

Debian GNU/Linux İçin Paket Yapımı

yuxel

Debian GNU/Linux'u en popüler dağıtımlardan birisi yapan şüphesiz ki paket yönetim sistemidir. Neredeyse tüm paketleri resmi depolardan (http://www.debian.org) veya gayri resmi yansılardan (http://www.apt-get.org) edinmek mümkün. Ancak bazen istediğiniz programı istediğiniz koşullarda paketlenmiş olarak bulamıyorsunuz. Bu durumda kendiniz kaynak koddan derlemek zorunda kalıyorsunuz. Daha sonraki kullanımlar veya arkadaşlarınızla paylaşmak için bu derleme işlemini bir paket olarak kenarda köşede bekletmek isteyebilirsiniz. Bu belgede, Debian paket yapımı hakkında bilgi bulacaksınız

O´Reilly´den 2003´ün En İyi Makaleleri, İpuçları ve Kitapları

FZ

Bilgi işlem dünyasının efsanevi yayıncısı O´Reilly ziyaretçi istatistikleri ve okur görüşlerine dayanarak Top 10 makalelerini, ipuçlarını, kitaplarını, vs. seçti. Python, Mac OS X, RegExp, PHP, Mozilla, Python, RSS, Flash MX, Extreme Programming, Java, mplayer, vs. gibi konularda sene boyunca en çok ilgi görmüş, bilgilendirici, vizyon açıcı makalelerin listesini ONLamp Best of 2003 ve O´Reilly Best of 2003 adreslerinde bulabilirsiniz.

Bu arada FM editörlerinden sundance arkadaşımızın mplayer ile ilgili makalesinin ONLamp Top 10 listesinde ikinci sırayı işgal ettiğine dikkat çekmek isterim. Gönül isterdi ki, dünya çapında network adminleri arasında infial yaratan Netcat and Reverse Telnet makalesi de listeye girsin ;-) Ama olsun, o bizim gönüllerimizde alması gereken yeri çoktan aldı :)

Web Madenciliği ile Daha İyi Bir E-öğrenme Modeli Mümkün Mü?

FZ

Web madenciliği kısaca Web sayfaları ve servislerinden otomatik olarak bilgi çekip bunlardaki kalıpları keşfetmek için veri madenciliği tekniklerinin kullanılması olarak tanımlanabilir. Acaba makina öğrenme (machine learning) ve veri madenciliği (data mining) tekniklerinin özel bir dalı olan web madenciliği yöntemleri ile daha iyi e-öğrenme sistemleri geliştirmek mümkün müdür?

Missouri-Columbia Üniversitesinden James Laffey ve Jiye Ai'nin "Web Mining as a Tool for Understanding Online Learning" başlıklı makalesi bu ve benzeri sorulara olumlu cevaplar vermenin yanısıra güzel ve pratik bir örnek de gösteriyor: Yazıda somut olarak bir Blackboard (webct) e-öğrenme sisteminin web madenciliği ile nasıl daha da faydalı ve verimli hale getirilebileceği anlatılıyor.

Araştırmacılar, makalenin başında web madenciliği tekniklerinin başlıca şu üç noktada ciddi fayda getireceğini belirtmişler: devamı burada...