Forum: Diğer Konular RSS
Programcılık bir zanaattır
acehreli (Moderatör) #1
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: Programcılık bir zanaattır
Derslere tartışmaya açık bir sayfa ekledim:

  http://ddili.org/ders/d/programcilik.html

Katılıyor musunuz? :)

Ali
Avatar
esatarslan52 (Moderatör) #2
Üye Haz 2009 tarihinden beri · 142 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Sanat mı? Zanaat mı ?
Ben sanat kısmında bahsedicem.
Geçen yıldı yanlış hatırlamıyosam nette dolanırken bir yazı okumuştum programcılıkla ilgili. Hatta Bill Gates ile programcılarından biri arasında geçen bir anıyıda anlatıyodu. O yazıyı bulana kadar kendimi sanat konusunda hep yetenek özürlü olarak görmüşümdür. Çünkü ilgi alanıma baktığımda sanata dair hiçbir kalıntı yok :D. Fakat o yazı programcılığında kökünde yaratıcılık olduğunu ileri sürerek programcılarında sanatçı olduğunu ileri sürüyodu. Ben buna inanıyorum. Açıkcası inanmakta işime geliyo :D . Yazıyı bilgisayarıma yedeklemiştim fakat harddiskimdeki verileri bir kaza sonucu kaybettiğim için burda yayınlıyamıyorum. Nette tekrar bulursam burayada koyarım.

Linkteki başlıkları okuduğumda katılmadığım tek bir madde var "Yeteneğe değil, öğrenmeye dayalıdır". Sınıfımdaki bir çok kişye programlama anlattım. İçlerinde haftalarca çalışanlar vardı. Defalarca(hatta yıllarca demek daha doğru :)) döngüleri,if'leri,fonksiyonları (class ları hiç hesaba katmıyorum) anlattım. Sorun benim anlatmamda desem sadece ben de anlatmıyorum programlaması iyi olan başka arkadaşlarda anlatıyo ve tabi hepimizden önce derste hocadan dinliyor. Fakat yinede farklı bir tarz soru ile karşılaştıklarında bu bildiklerinden yola çıkarak soruyu çözüm getiremiyolar. Farklı dediğimede bakmayın, ekrana 1-10 arasındaki sayıları düz yazdırmakla tersten yazdırma arasında olduğu gibi farklılık. Bunu adamlar geri zekalı mı, tabiki değil hatta bir çoğu benden daha yüksek puanlarla üniversiteye gelmiş. Bu yüzden programcılık bence yetenek işi hatta algoritmik zeka gerektiren bir iş.
acehreli (Moderatör) #3
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Ben üniversitedeyken bir orta okul öğrencisine şunu anlatamamıştım: buradan bakkala 100 metreyse ve bakkaldan manava 200 metreyse, buradan manava 300 metredir. Ama şimdi düşünüyorum, ben semt isimleri kullanmıştım ve çocuk o yüzden anlamamış olabilir. :D

Bu yatkınlık olayı ilginç... Bana da tam bir nedensellik gibi geliyor: bilgisayarcılıkta "bunu yaparsan şu olur" gibi bir mantık dışında bir şey göremiyorum çünkü. Yani bilimde olan gibi bir bilinmezlik yok. O yüzden herkesin öğrenebileceği bir iş olarak görüyorum.

Belki de bu dersleri başkalarına açınca daha iyi anlayacağım... ;) Bana çok anlaşılır gibi geliyor, aranızdan kimse de "burası zor olmuş; öğrenci anlamaz burasını" demiyor... ;) Kaptırdım, gidiyorum bakalım...

Ali
Mengu (Moderatör) #4
Kullanıcı başlığı: NONSERVIAM
Üye Tem 2009 tarihinden beri · 347 mesaj · Konum: Dersaadet
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
benim bir dil ogrenirkenki felsefem, dili uc gunde ya da uc ayda ogrenemeyecegimi bilerek, ihtiyacim oldugu kadarini bilmektir. php'yi boyle ogrendim ben. java'yi, c#'i ve tabii ki en sevdigim dil python'u boyle ogreniyorum. yazilim dili ogrenmek isteyenlere tavsiyem de budur. bir dili butunuyle ogrenmek cok uzun zaman alir. ne yapilir? once dilin yapisi ogrenilir. bir kere bu basli basina vakit alan bir sey. mesela deitel'in kitaplari bu konuda mukemmeldir. once konuyu anlatir, ardindan direkt soru - cevap ve egzersiz kismina gecer. ardindan yeni konu.

dilin yapisi ogrenildikten sonra da dilin icerisindekiler ogrenilmeli. mesela tur donusumleri nasil yapilir? overloading nasil yapilir? dosya okuma, yazma islemleri nasil olur? xml dosyalari nasil okunur? feedler nasil parse edilir? gibi gibi ogrenilen dili cozmeye yonelik yiginla sey. ve bunlar bir kac ay icinde olacak seyler degil. uzun bir sure icerisinde olacak seyler. tabii ki dil 3 ayda ogrenebilirsiniz, hatta bu bahsettiklerimi bile. fakat pratige dokemedikten sonra sizin icin bunlarin hicbir manasi kalmayacak.

yazilimcilik ince bir istir. hem sanat hem de zanaattir. ben bunu demir dovmeye benzetiyorum. sabir ister, emek ister ve hic nankor degildir. siz nasil islerseniz demiri, o kilic o kadar guzel ve kullanisli olur. dolayisiyla yazdiginiz program da o kadar guzel ve kullanisli olacaktir. hele ortaya bir seyler cikartmanin verdigi haz, ortada olan o somut materyal cok onemli. belki bir ressam kadar guzel bir resim cizemiyor olabilirsiniz ama bir ressama aklini oynattiracak bir yazilim yapabilirsiniz. ve bu cok buyuk bir keyif.
http://www.mengu.net - some kind of monster
Avatar
esatarslan52 (Moderatör) #5
Üye Haz 2009 tarihinden beri · 142 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #3
acehreli:
"bunu yaparsan şu olur" gibi bir mantık dışında bir şey göremiyorum

Evet aslında olay o kadar basit, en azından senin için :D. Üniversiteyi bilgisayarla ilgisi olamayan bir bölümünde okumuşsun ama şimdi silikona vadisinde programcı olarak çalışıyosun ve Türkiyede C++ deyince önde gelen isimlerdensin(kıskandım  <_<   :-D ). Yine aynı şekilde Fox decompiler'ı yazan eleman Üniversite Kimya 3.Sınıf terk mesela. Bu bence yetenekten başka bir şey olamaz.

Mengu:
dilin yapisi ogrenildikten sonra da dilin icerisindekiler ogrenilmeli
Bencede önce yapısı öğrenilmeli. Ben bunun için öğreneciğim dil ile ilgili bir kitap varsa alır önce hızlı bir şekilde göz gezdirerek kitabı okurum. Daha sonra ayrıntıya girerim.
Bu mesaj esatarslan52 tarafından değiştirildi; zaman: 2009-08-04, 15:06.
li-han #6
Üye Ağu 2009 tarihinden beri · 8 mesaj · Konum: Denizli
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
herkese selamlar. D dili ile ilgili Türkçe bir site görünce şaşırdım. diğer
sitelerden tandığım üstadları da burada görmek sevindirici. güzel bi ortam olmuş.
programcılıkta 5. yılını doldurmuş biri olarak sanat-zanaat konusunda bir iki şey
yazayım dedim. ben programlamanın bir sanat olduğunu düşünüyorum.
programcının yeteneği, programlama dilinin yeteneği ve programı satın alacak müşterinin
istekleri arasında denge kurma sanatı. bu denge iyi kurulurda ortaya çıkan ürün başarılıysa
herkes mutludur. programcı mutlu, programlama dili mutlu, müşteri mutlu.
yani sanat = mutluluk.
acehreli (Moderatör) #7
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Hoşgeldin li-han! :)

Sitenin bilmeden bulunabiliyor olması güzel bir şey. :) Şu anda "d programlama dili" ve "d dili" aramaları için Google'da ikinci sırada çıkıyor. Birincisi de zaten Vikipedi sayfası ve oradan buraya bağlantı var...

Sanat Aslında hiçbirimiz sanat sözcüğünü güzel sanat anlamında kullanmıyoruz galiba. Yani aslında bu noktada anlaşıyoruz. Ben hâlâ deneyime dayalı bir beceri olarak görüyorum.

Yetenek Bugün öğle yemeğinde buradaki bir arkadaşa programlamanın yetenek kısmı konusunda ne düşündüğünü sordum. Genelde öğrenmeye dayalı olduğuna katıldığını söyledi.

Çünkü ikimiz de yetenek dediğimiz şeyin ne kadarının insanın doğasından, ne kadarının sonradan öğrenilen şeylerden olduğundan emin olamadığımızı görüyoruz ve her tür yeteneğin öğrenilebileceğini düşündük.

Tabii burada insanın yapısını da gözardı etmiyoruz. Örneğin müzik yeteneği sıfatı çok geniş bir kavram ve geliştirilebilir. (Kendimden biliyorum. :D) Ama ancak az sayıda insanın mükemmel kulağı oluyor. (Gerçi o bile küçük yaştaki günleriyle ilgili; çünkü Çince gibi notalı dillerle büyüyen insanlarda mükemmel müzik kulağı daha çok bulunuyor.)

Yöntem eksikliği Aynı arkadaş, programlamanın zor bir şey olarak algılanmasının nedenini yöntemlerin adının konmuş olmamasına bağladığını söyledi. Başka alanlarda "şunu şöyle yaparsın" diye adı olan yöntemler programcılıkta yok. Programcılıkta "şöyle bir problem var; çözümünü bul" diye veriliyor. Bu yüzden de problem çözmeye yatkın insanlar daha başarılı oluyorlar. Halbuki "şöyle bir problemle karşılaşınca şöyle yap" denmiş olsa belki de herkese aynı derecede kolay gelir.

Aslında programcılıktada yöntemlerin adı konabiliyor ama bu, çoğunlukla deneyim kazandıktan sonra kişinin kendisi tarafından bulunuyor.

Biliyorum, fikirler derli toplu değil... :)

Ali
acehreli (Moderatör) #8
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Elime ACCU'nun CVu dergisinin Temmuz 2009 sayısı geçti. Yazarlardan birisi Nisan ayındaki ACCU konferansının bir özetini verirken konuşmacı (ve ünlü) Robert Martin'in "Yazılım Zanaatı [Software Craftsmanship]" konuşmasında şunları söylediğini anlatmış:

"Kendimizi bilimci, mühendis, veya mimar olarak tarif etmeye çalışmamız ne bize yarar sağlamıştır ne de müşterilerimize."

Ben zanaat (veya el sanatı) tanımında ısrarlıyım. :)

Ali
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-19, 19:41:40 (UTC -08:00)