Programcılık sanat mıdır?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla

Programcılık sanat mıdır?

Anket 11 Oca 2005 10:06 tarihinde bitecek

Evet, sanattır
18
26%
Hayır, zanaattır
5
7%
Hem sanattır, hem zanaat
31
46%
Kararsız kaldım
0
Oy yok
Ben programımı yazarım, gerisine karışmam
14
21%
 
Toplam oy: 68

Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Programcılık sanat mıdır?

Mesaj gönderen mussimsek »

Merhaba,


evet şimdi de bu konudaki fikirlerinizi soruyoruz. Sizce program yazma işi bir sanatmıdır, yoksa bir zanaat (meslek, geçim kaynağı) mıdır?

Kolay gelsin.
En son mussimsek tarafından 10 Oca 2005 04:15 tarihinde düzenlendi, toplamda 2 kere düzenlendi.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Hocam Zanaat ile Sanat ın manaları aynı değilmidir?


Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
muskut
Kıdemli Üye
Mesajlar: 1118
Kayıt: 22 Ara 2003 09:50
Konum: Sandalyemden
İletişim:

Mesaj gönderen muskut »

Zanaat ile sanat arasında anlam farkı var mıdır?


Zanaat, insanların maddeye dayanan ihtiyaçlarını karşılamak için yapılan işe verilen isimdir. Zanaat, öğrenimle birlikte el alışkanlığı sonunda elde edilen el becerisini ve ustalığı gerektirir. Mesela, demircilik, çömlekçilik, kaportacılık, marangozluk birer zanaattır. Zanaatkar ise, belli bir zanaatın becerisine sahip olan ve o zanaatı meslek edinmiş emekçidir.

Her ne kadar sanatın ne olduğunu tarife lüzum olmadığına kanisem de, yeri gelmişken değinelim. Sanat, bir şeyi kurallarına uygun yapma tarzına verilen Arapça bir isimdir. Türk Dil Kurumu'nun Türkçe sözlüğünde sanat hakkında şöyle denilmektedir. "Sanat, bir duygunun, tasarının veya güzelliğin anlatımında kullanılan yöntemlerin tamamı veya bu anlatım sonucunda ortaya çıkan üstün yaratıcılıktır." Sanatkâr ise, Arapça "san'at" ile Farsça kâr kelimelerinden oluşan bileşik bir kelime olup güzel sanatların herhangi bir dalında eser veren kişidir.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Açıklayıcı bilgilerinizden dolayı teşekkür ederim.

Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
tuanna
Üye
Mesajlar: 582
Kayıt: 06 Ara 2004 05:01
Konum: Ankara
İletişim:

Mesaj gönderen tuanna »

Bu sorunun en doğru cevabı hem sanat hemde zanaat tır...

şimdi zanaat olan kısmı bir programcı geçimini sağlaması lazım ona her ne kadar bilgisayarı yeterli olsa.....

geldi sıra sanat olan kısmına ...program bir sanattır...neden sorusunu duyar gibiyim....

Çünkü sanatta su nitelik vardır...herkes farklı düşünebilir....Programcılıktada sen bir programı yazarken farklı başkası farklı düşünür....Önemli olan yapılacak iş ise bunu en kısa yoldan ve en güzel ve en işlevsel şekilde yaptırmak gerekir...

örnek: 10 basamaklı bir merdiven olsun ...1.basamaktan 10.basamağa çıkmak ile ilgli bir program yazalım...
bu programı yapıp satmak bir zanaat....

ama bunu diğer insanlardan farklı yazıp ona kendinden bir syeler katman sanattır...sanat olması da su soruda gizli

Buprogramı sen nasıl yazarsın?
cevap:
Eminim herkes farklı cevap verecektir....
Siz hayal edin...Biz yapalım TuannaSoft...
csyasar
Üye
Mesajlar: 646
Kayıt: 25 Şub 2004 10:14
Konum: Tokat

Mesaj gönderen csyasar »

bir insanın sanat icra ediyor olması için; o işten herhangibir gelir beklememesi ve sadece ruhunu okşaması için yapması gerekmektedir.bir programlamadan para kazanmayı bekliyoruz. bu sebeple programcılığı sanat haline gertiren(para beklemeyen) insan yoktur, varsa da çok azdır. hepimizin bu meslekten beklentilerimiz< var
En son csyasar tarafından 01 Oca 2005 08:29 tarihinde düzenlendi, toplamda 2 kere düzenlendi.
Kullanıcı avatarı
ALUCARD
Üye
Mesajlar: 1270
Kayıt: 27 Eyl 2003 10:12
Konum: Samsun
İletişim:

Mesaj gönderen ALUCARD »

program yazmak sanat üstüne sanattır bence
dışardan kolay görünen bu işin içine girince girince aslında o kadar da kolay olmadsığı anlaşılmaktadır. :lol:
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz

Erkan ÇAĞLAR
Kullanıcı avatarı
aveysel
Üye
Mesajlar: 151
Kayıt: 16 Mar 2004 03:53
Konum: Internet
İletişim:

Mesaj gönderen aveysel »

Eyer Araklamacı programcılık yapıyorsanız Zanaat

Kendiniz farklı tasarımlar ve çözümler geliştirebiliyorsanız Sanat yapıyorsunuzdur.

Bence..
Select * From LiFe Where Your EYES
http://Www.Gebze.Org
Kullanıcı avatarı
kefukar
Üye
Mesajlar: 705
Kayıt: 22 Kas 2004 03:08
İletişim:

Mesaj gönderen kefukar »

Aşağıdaki yazı sanırım olayı anlatıyor...
Programcılıkta sabahlamanın verdiği huzur ve tatmin çok meşhur. Programcılar sabaha kadar çalışma konusunda herkesi şaşırtan derecede istekli ve beceriklidir. Bu gece çalışması boyunca beyin bir "akış" yakalayarak saatlerin su gibi geçtiği bir çalışma ortamı oluşur. Bu çalışma sırasında beyin en derin konsantrasyon düzeylerine erişir ve genellikle zor programlar bu kesintisiz, onlarca saat süren çalışmalarda ortaya çıkar. Beyin bu stilde çalışırken kişilerin mutlu oldukları, mutluluk düzeylerinin arttığı bilimsel çalışmalarla gözlemlenmiştir. Bu çalışmalar eski Chicago Üniversitesi Psikoloji Bölüm Başkanı Mihaly Csikszentmihalyi tarafından yapılmıştır. Çalışmalarda çeşitli disiplinlerden yüzlerce kişinin günlük uğraşları incelenmiş ve bu sırada "mutluluk" düzeyleri gözlemlenmiştir. Bu çalışmaların programcılar tarafındaki bulguları ise ilginçtir. Her ne kadar programcılık bir bilim dalı (Computer Science), bir mühendislik (Software Engineering) olarak düşünülse de programcıların beyninin sanatçıların çalışma stiline sahip olduğu ortaya çıkmıştır. Programcılık sırasında beyin bir "akış" moduna geçmekte, etraftan ilişkisini kesmekte ve bir probleme günlerce konstantre olabilmektedir.


Başarılı programcıların çoğu konsantrasyon yetenekleri ile çevrelerini şaşırtır. Saatlerce sıkılmadan bir ekran başında vakit harcayabilirler. Bu saatler bir çok kez günlere kadar uzayabilir. Yaşamsal faaliyetler dışında hemen hemen her şeyden izolasyon gereklidir. Microsoft'ta Office yazılım geliştirme ekibinden bir programcının kendini odasına kilitleyip "bitmeden çıkmayacağım" demesi, Bill Gates'e bile kapıyı açmaması meşhurdur. Bu olay daha sonra Douglas Coupland'ın Microserfs (1996) kitabına konu olmuştur. Bu sırada kendini odaya kilitleyen programcının arkadaşlarının süper marketten gidip yassı yiyecekler alması ve kapının altından odaya atmaları, programcılar arasındaki dayanışmanın güzel ve sevimli bir örneği.


Bu çalışma sırasında programcı en derin düşüne moduna geçer ve etraftan kendini izole etmeye çalışır. Bir çok programcı bu amaçla müziği kullanır. Ancak müziğin programcılık sırasında beyne olan etkileri üzerine yapılan çalışmaların bulguları şaşırtıcıdır. Kreatif programlama ile müzik dinleme sırasında kullanılan beyin bölgesi aynıdır. Beyin bir müziğe konsantre olmuşken çok derin programcılık yapılamıyor. Ya da yeteri kadar iyi yapılamıyor. Programcının müziği kapatınca etraftaki gürültünün etkisi ile müziği dinlediğinde beynin gerekli bölgesinin meşgul edilmesi arasında bir tercih yapması gerekir. Tahminen bu nedenle izolasyon amaçlı müzik kullanımında elektronik müziğin, hard rock, alternatif rock ve heavy metal gibi müzik türlerinin daha fazla tercih edildiği görülür. Müzik, beyin ve programcılar üzerinde çalışmalar halen sürüyor, bu derin konu araştırılmaya devam ediyor. Şu anki bulgular, kritik kodların geliştirilmesi ve müzik dinleme sırasında kullanılan beyin bölgelerinin aynı olduğunu gösteriyor. Monoton kodlama (maintenance) diyebileceğimiz program geliştirme kısmı ise beynin başka bir bölümünde gerçekleşir. Bu tür kodların geliştirilmesi sırasında müziğin programlamaya herhangi bir negatif etkisi görülmemiştir.


Programcının kritik kodları yazmak için ihtiyaç duyduğu "akış" modunu koruyabilmesi için izolasyona ihtiyacı bulunur. Bu izolasyon arttıkça çalışma derinleşir, ilk önce beyinde yazılmak istenen programın çatısı oluşur, problem önce beyinde çözülür, daha sonra beyinde çözülen bu problem koda çevrilir. Programcının beyni pencereden dışarıyı seyrederken ya da gözler sabit bir yere bakıp dalıp gittiği zaman bu problem çözülmeye çalışılır. Hatta programcının beyni bu problemi uyurken, araba sürerken ve diğer başka monoton işleri yaparken ele almaya devam eder. Bu durumda sıfırdan ve baştan yazılan bir programa bakıldığında kodlama toplam sürenin oldukça az bir bölümünü almaktadır.


Bu çalışma sırasında beyin son derece karmaşık bir aktivite içerisine girmiştir. Var olmayan bir çözümü oluşturmak için "kreatif" süreç başlamıştır. Bu süreç duyu organlarını izole etmiş ve yaratıcılığa yoğunlaşmıştır. Bu süreç sırasında programcı onlarca konuda karar vermektedir. Değişken isimlerinden, akış yöntemlerine, parametrelerin cinsinden, kullanıcı ara birimine kadar bir programcı sürekli bir "karar alma" uğraşısı içerisindedir. Programcılar bu nedenle bir günde yüzlerce kararın altına imza atma becerisine sahip iyi birer karar vericidirler.


Tam bu yoğun programlama sırada birisinin programcının omzuna dokunduğu zaman bir "ara verme" operasyonu başlar. Bu ara verme operasyonu tam gaz giden bir arabada aniden frene basma gibidir. Derinleşen "kreatif" süreç derinliğini yitirir ve duyu organları "açılarak" omuza dokunan kişi ile iletişime geçilir. Bu geçiş çoğu zaman o kadar kolay olmamakta ve programcılar bu nedenle zor iletişim kurulan kişiler olarak görülmektedir. Bir soru sorulmaktadır. Eğer bu soru şu an üzerinde çalışılan konuyla ilgili ise mevcut kreatif süreç bu soruyu cevaplamakta kullanılır. Sorunun "bağlam" ile ilgili olması, sürecin durdurulmasını gerektirmez. Örneğin bir veri tabanı tasarımında yandaki programcı bir tablodaki alanın ne işe yaradığını sorduğunda süreç durdurulmadan cevap verilebilir. Cevabın verilmesi için gerekli bütün malzeme, zaten o sırada beynin çalışma bölgesine getirilmiş hazır halde bulunmaktadır.


Ama eğer bu soru bambaşka konularla ilgiliyse: "Bu iş ne zaman bitecek"ten tutun da , "dün maçı seyrettin mi?" ye kadar değişik açılardan gelen bir soru olabilir. Bu durumda ancak bu kreatif süreç durdurularak bu soruya cevap verilebilmektedir. Ya da çoğu programcı bu soruyu "duyacak" ama "algılamayacaktır". O an durumu kurtaracak bir cevap vereceklerdir: "yarına biter" vs gibi. Yapılan
basittir: kreatif süreç bölünmeden çalışmaya devam etmek istenmektedir. Bu sırada soruyu soran kişi doğal olarak programcıların zor iletişim kurulan kişiler olduğunu düşünecektir. Oysa programcının beyni hız kesmemeye çalışmaktan başka bir şey yapmamaktadır.


Programcılar çoğu zaman konuşmayı pek sevmeyen ve zor iletişim kuran kişiler olarak bilinmektedir. Bu yanlış inancın temelinde, programcıların konsantre olma yetenekleri ve bölünmelere karşı geliştirdikleri iletişim "önlemleri" yatmaktadır. Oysa yazılım geliştirme ekipleri oldukça konuşkan olabilirler. Fark konuşulan konularda yatmaktadır... "Windows mu iyidir, Linux mu?" tartışmalarını dinleseniz programcıların az iletişim kurdukları konusundaki fikirleriniz tam tersi yönde değişecektir.


Eğer bölündüğü sırada programcı soruyu tam olarak algılayıp doğru bir cevap vermeye çalışırsa, soru "bağlam" dışı ise kreatif sürecin durması gerekmektedir. Duran bu akışın yeniden eski kaldığı noktaya geri dönebilmesi, kişiye çok bağlı olmakla beraber, on beş dakikaya kadar çıkabilmektedir. Konsantre olma yeteneği yüksek olan programcılar bölünen bu süreci daha hızlı bir sürede eski noktaya getirebilmektedir.


Programcılık sırasında beynin bu çalışma stilinin anlaşılması programlama ortamlarının ne kadar özenle seçilmesi gerektiği konusunda önemli ipuçları sağlamaktadır. Programcıların bu bölünmelerden korunması gereklidir. Daha da önemlisi programcıların kendilerini bu bölünmelerden korumaları gerekmektedir. Csikszentmihalyi ve ekibin yaptığı çalışmalar bu derin çalışma sürecinin ne kadar kırılgan olduğunu ve izolasyona ihtiyaç duyduğunu açığa çıkarmaktadır.


Kanımca bir çok yazılım hatası (bug) bu bölünmeler sırasında ortaya çıkmaktadır. Televizyonda bir motor yağı reklamını izlediğimi hatırlıyorum. Reklamda "motor ısınıncaya kadar olan sürede aşınır yıpranır oysa bu motor yağı mıknatıs özelliklerine sahiptir ve motor çeperine yapışık kalarak ısınma sırasında bile motorun yıpranmasını önler" diyordu. Bu reklamda anlatılan olayı programcılıkta çok gördüğümüzü düşünüyorum. Yeteri kadar ısınmadan, soğuk bir "beyinle" yapılmaya başlanılan programcılık sonucunda oldukça "hatalı (bogus)" kodlar üretildiğini düşünüyorum.


Meslek hayatımda karşılaştığım binlerce yazılım hatasını masaya yatırdığımda bu tür hatalarla karşılaştığımı görüyorum. Hataların bu kreatif sürecin hangi aşamasında yazılmış olabileceğini tahmin etmeye çalışıyorum. Bir programcı bölünme ile karşılaştığı zaman -üstelik bu bölünme bir SMS mesajı yazmak gibi zor ve zahmetli olup, beyni oldukça uğraştıran cinsten ise- programlama sürecinin beyinde eski aktivite düzeyine yükselmesi çoğu zaman yaklaşık 15 dakika sürecektir. Bu süreç sırasında hatasız bir kod üretimi için programcının kritik bir kod yazmaması gereklidir. Konsantrasyonun tam sağlanamayacağı bu ısınma dönemi, unutulan kontroller, atlanan olasılıklar ve hiç kodlanmayan program akış dallarına neden olacaktır.


Çağımızda bu bölünmelerin başlıca sebepleri cep telefonları, gelen SMS mesajları ve Instant Messaging programlarıdır. Bölünmemek için iletişimsizliğe ihtiyacımız varken çağımız bir iletişim çağı olmuştur. Watts Humprey, Software Engineering Institute tabanlı Personal Software Process'in (Kişisel Yazılım Süreci - PSP) geliştiricilerinden birisidir. Kendisi uzun yıllar IBM'de çalışmış, OS390 projesinde yer almış ve yazılım geliştirmenin önemli duayenlerinden birisi olmuştur. PSP bir programcının iyi program yazması konusunda kendini nasıl geliştireceğinin ana hatlarını çizer. Humprey'in PSP'yi anlattığı "Introduction to PSP" kitabını aldığımda şaşırdığım bir konu olmuştu. Kitabın ilk bölümlerinin zaman yönetimi ve bu bölünmelere karşı mücadele olduğunu görüp şaşırmıştım. Humprey, programcıları bu bölünmelerle mücadele konusunda bilinçlendirmeye çalışıyordu.


Yazılım geliştirme sürecinin tam verimiyle çalışması için bu sürecin korunmaya ihtiyacı olduğu çok açık. Bir programcının etrafında oturanlar, yöneticileri, ona SMS gönderenler bu sürecin geç cevap alacaklarının farkında olmalıdır. Böyle bir zihinsel durumdaki yazılım geliştirmeciyle olan iletişim senkron (eş zamanlı) değil asenkron (farklı zamanlarda) olmalıdır. Şu sıralar programcılıkta popüler olan yeni bir akım var. Entegre edilen sistemlerin birbirleriyle senkron bağlantılar yerine "loosely coupled" (gevşek eşleştirme) dediğimiz asenkron yöntemlerle bağlanması. Sanırım "akış" anını yakalamış bir programcı ile iletişimin de en sağlıklısı "loosely coupled" türden olacaktır.

Programcılık Üzerine
Programlama konusunda deneyim kazanmadan önce "iyi bir programcı olmak için hangi özelliklere sahip olmalıyım?" sorusunu kendinize sormanızı istiyorum. İyi programcı, düşünen, uğraştığı problemleri en küçük ayrıntısına kadar irdelerken bu problemlerin temeline inebilen ve yaratıcı çözümler geliştiren kişidir. Ayrıca bu özelliklerinin yanısıra bilgisayar teknolojileri alanında yeterli bilgiye sahip ve sorunların çözümü konusunda deneyimli olmalıdır. Tabi bütün bu saydıklarımı tamamlayan en önemli özelliklerinden biri de sabrıdır.

Düşünmeyi bilen insan herzaman yaratıcı olamayabiliyor ama yaratıcılık bilinçli bir eğitim ve çalışmayla da kazanılabilir. Aynı şekilde bilgisayar teknolojileri hakkında bilgi ve deneyim sahibi olmak için de yine çok çalışmak gerekmektedir. Bulabildiğiniz bütün kaynaklardan(bilgisayar kitapları, dergiler, internet, vs.) yararlanıp bol bol uygulama yaparak bir programlama dili öğrenmek için gerekli olan alt yapıyı kazanabilirsiniz. Bu alt yapıyı sağlamlaştırdıktan sonra da yaşayacağınız deneyimler sonucu problemleri soyutlama ve irdeleme yeteneğine kavuşmanız, tamamen doğal bir sürecin ileri aşamalarıdır. Bu süreç hız kazanırken sabırlı olmayı da öğreneceğinizi söylemek kehanet olmaz sanırım!..

Eğer bir programlama dili öğrenmeye karar vermişseniz neden programcı olmak istediğinizi de biliyor olmalısınız. Bilgisayar programları sadece işletmelerde ve resmi kurumların bilgisayarlarında karşımıza çıkmıyor. Bugün hemen hemen aklınıza gelebilecek her konuda bir ya da birden fazla program mevcut. Ama ister ticari ister genel amaçlı olsun bütün programların hazırlanış amacı ortak : Bilgisayarda yürüttüğümüz işleri kolaylaştırıp hızlandırmak ve bir düzene oturtmak. Tabi eğlence ve hobi amaçlı hazırlanan program(cık)ların sayısı da azımsanmayacak kadar çok. Programcı olmak istemekteki amacınız sadece parasal kazanç sağlamak ve her geçen gün dünya ekonomilerindeki pazar payını arttıran bilişim sektöründe adınızı duyurmaksa, hiçbir zaman gerçek bir kod yazarı olamayacağınızı üzülerek söylerim.

İyi bir programcı, profesyonel olmak için konusunda uzmanlaşırken amatör kalmayı başarabilir. Bu noktada amatörlüğü, profesyonelliği ve acemiliği birbirinden doğru bir şekilde ayırmanın önemi üzerinde biraz durmak gerekiyor; yaygın kanının aksine amatörlük, 'bir konuda yeterli bilgi ve deneyime sahip olmama' anlamına gelmez. Örneğin, eğer bir program yazarken herhangi bir disk dosyasını açmaya çalışırken zorluk yaşıyor ve hata mesajları alıyorsanız, ve de bu mesajlara anlam veremiyorsanız sizin için 'acemi' uygun bir sıfat olacaktır. Eğer dosyayı açarken hata sizden değil de işletim sisteminden kaynaklanıyor ve bunu programı derler derlemez anlayabiliyorsanız... Veee yazdığınız programı, sadece kendi işlerinizde kullanmak için hazırlıyorsanız siz bir amatörsünüz. Bu program, başka bilgisayarlarda çalışmaya başlarken sizin cebinize para giriyorsa ve bir zamanlar hobi amaçlı, kendinizi geliştirmek için ilgilendiğiniz bir alanda edindiğiniz bilgileri değerlendirerek maddi kazanç elde etmek size keyif veriyorsa, amatör bir profesyonel olduğunuz için de sevinmelisiniz!

Bu açıklamaların ışığında özet olarak diyebiliriz ki, iyi bir programcı düşünen, araştıran, öğrenen, problem irdeleyen ve çözen, geliştiren ve paylaşan kişi olmanın yanında eğer hazırladığı programlardan para kazanan bir profesyonelse, teknik bilgi ve yeteneğini artıracak denemeler yapmaktan kaçınmayıp kendini yeniliklere açık tutan ve bu sayede amatör yönünü koruyabilen programcıdır...

Yaratıcılık Üzerine
Yaratıcılık, en kısa tanımıyla kalıpların dışına çıkma yeteneğidir. Diğer bütün yetenekler gibi yaratıcılık da bazı insanlarda çok, bazı insanlarda yok denilebilecek kadar azdır ama zamanla kazanılabilen bir özellik olduğunu rahatlıkla söyleyebiliriz. Yaratıcılığı arttırmak için düşünce yöntemleri üzerine eğilmeliyiz. Belli kalıplar içinde düşünmeye, çalışmaya, yaşamaya alışmış olan insan kendi kendini geliştirmeye, problemlerin çözümünde klasik kuralların ve yöntemlerin dışına çıkıp kendine özgü çözüm yolları aramaya açık değildir.

Kişiler nasıl yaratıcılığa sahip olmadan yaşamlarına devam edebiliyorlarsa, program hazırlarken de yaratıcı düşünme yöntemlerini kullanmak zorunda değildirler. Programların çoğu komutların kullanımı ve kod dizimi bakımından birbirine benzerler, programa dilinin yazım kurallarını ve fonksiyonlarını iyi derecede biliyor olmak, istenilen programı hemen yazmaya başlamak için çoğu kez yeterli olabiliyor.

Yaratıcılık etkin olarak, genellikle programın temel çalışma aşamalarına karar verdikten sonra, yardımcı yordamlar geliştirmekte, kafa karıştırıcı teknik problemlerin pratik çözümlerinde ve programın performansını arttıran yöntemlerde karşımıza çıkar. Yaratıcı düşünme yöntemleri kullanılarak hazırlanmış olan programlar, kod dizilişi ve yoğunluğu bakımından benzerlerine göre daha hafif ve kolay anlaşılır olurlar, çalışma performansları yüksektir.

Yaratıcı insanları şu özellikleriyle tanırız : Meraklı, ilgili ve çevrelerine karşı duyarlıdırlar. Başkalarının çözümlemekte zorlandığı problemler üzerinde uğraşmaktan ve çözüm yöntemleri geliştirmekten kaçınmazlar. Bu yöntemlerden biri başarısızlığa uğradığı zaman, neden başarısız olduğu üzerinde düşünüp, vardıkları sonuçlardan yeni çözümler hazırlarken faydalanırlar. Hayal güçleri ve mizah anlayışları gelişmiştir ama bu kendilerini gerçeklerden soyutladıkları anlamına gelmez. Hayal gücü olmadan, kişilerin yaşam gerçekleriyle yüzleşirken zorluklarla karşılaşacağına inanırlar. Neşeli ve enerjiktirler...

Sonraki bölümde yaratıcılık için büyük önem taşıyan düşünme teknikleri üzerinde duracağız.

Düşünme Üzerine
Program hazırlanırken karşılaşılan sorunları çözmek için, bu sorunları bir araştırmacı gibi incelemek gerekmektedir. En zor problemi çözerken bile eğlenceli bir oyunu ele alıyormuş gibi rahat olmalı, belli bir plana uyup görsel ve yazılı modeller(çizgi, şekil, vs.) hazırlayarak düşüncemizi toparlamalıyız. Bu süreci geliştirmek için sözel simgeler ve ilişkili sözcükler, adlar kullanılabilir.

Kısaca, karşılaştığımız sorunları çözümleme aşamasında problemi mantıklı ve birbiriyle ilişkili parçalara ayırıp şekiller ve sözcükler ile ifade ederek yorumlamamız ve sonra doğru bir şekilde çözümlenmiş bütüne ulaşmamız gerekmektedir. Tüm bu süreci eksiksiz tamamlamak için doğru düşünme tekniklerini uygulamalıyız. Etkin düşünme için bilgileri düzenleyip mantığa uygun değerlendirmeler yapma, düzenti(belli bir kurala göre sıralanan öğeler bütünü) kurabilme, düzentinin herhangi bir öğesi üzerinde yoğunlaşıp kurallar belirleyebilme, sıralama, zihinsel esneklik, yaratıcı düşünebilme, başlangıç-sonuç ilişkisi kurabilme, çokboyutlu değerlendirme ve benzetmeler yapabilme özelliklerine sahip olunmalıdır.

Düşünme sürecinde karşımıza çıkan her problemi olabildiğince şekiller ve modellerle ifade etmemiz gerektiğini daha önce de belirtmiştik. Programlamada çok kullanılan algoritmalar ve akış diyagramları bu ihtiyaca bir örnektir. Beyin bir problem üzerinde uğraşırken bu problemin öğelerini simgeler, şekiller ve benzetmelerle tanıyarak daha rahat ve etkili çalışabilir, ilişki kurması kolaylaşır. Bu yüzden, bir oyuna benzetebileceğimiz bu teknikler düşünme becerisini zamanla en üst seviyeye çıkarabilir.

Son olarak programlama süresince yapmamız gerekenleri şu şekilde sıralayabiliriz :

Problemin doğru bir tanımını yapmak.
Problemi anlamlı ve birbiriyle ilişkili parçalara ayırmak.
Ayırdığımız parçalara ait, bütünden kopuk olmayan yeni alt parçalar geliştirmek.
Parçaları düzenli bir şekilde birleştirip başlangıcı ve sonu belli bir düzenti kurmak.
Vardığımız sonuç üzerinde son düzenlemeleri yaparak, fazlalık olarak göze çarpan bölümleri çıkarmak.
Yani delikanlı programcı (her şeyiyle emeğini ortaya koyan) önce sanatçı sonra zanaatcı,, ama kıytırık programcı (emeğe saygı duymadan çalan çırpan, yama, boya cila yapan kişi) önce zanaatcı çok arza sanatcı.. Bence, benim görüşüm... SAYGI duyunuz... :wink:
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Mesaj gönderen sadettinpolat »

bence programcılık zanaat , programlama sanattır.
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Merhaba...

- Hem Sanat hem de zanaattir oyu kullandım. :)

- Bir program değil, programcılık hayatımızda yaptığımız/yapacağımız her bir programı düşünmeliyiz diyorum. Yani bugün kendimiz/başkalarının faydalanması için proje üretiriz yarın vaşka bir programı ticari olarak hazırlar satarız.

- Hedef kitleye göre değişken olan bir durum söz konusu 8)
Resim
Resim ....Resim
Abrak
Üye
Mesajlar: 189
Kayıt: 18 Kas 2004 05:30

Mesaj gönderen Abrak »

Programcılıktan maddi gelir sağlanabildiği için zanaat,
Zanaatı icra ederken kişinin özelliklerine veya tarzına göre yöntemler değişebildiğinden dolayıda Hem sanaat hemde zanaat olarak oyumu kullandım hayırlı uğurlu olsun :lol:
Başkasına Olan Saygımız.. Kendimize Olan saygıdır..
Kullanıcı avatarı
Bil_Bakalım
Üye
Mesajlar: 61
Kayıt: 31 Ara 2004 01:45
Konum: İzmir
İletişim:

Mesaj gönderen Bil_Bakalım »

program yazdıktan sonra insanların söylediklerini neden anlamıyorum diye düşünürdüm hep. Kefukar arkadaşımızın sayesinde doktora gitmeden nedenini anladım. :lol: Açıklayıcı bilgiler için teşekkür ederim.

Bence programcılık bir sanat. Çünkü zanaatcı para kazanırken sattığı şeye bir şeyler katmayabilir ama programcı yaptığı programa kendinden bir şeyler koyar ve çıkan üründe para kazanmanın getirdiği duygudan daha farklı şeyler hisseder. Bu hisleri hepimiz biliyoruz. :) Yoksa kim bizleri 14-18 saat bilgisayarın başında tutabilir ki
Kullanıcı avatarı
kefukar
Üye
Mesajlar: 705
Kayıt: 22 Kas 2004 03:08
İletişim:

Mesaj gönderen kefukar »

Bil_Bakalım yazdı: Kefukar arkadaşımızın sayesinde doktora gitmeden nedenini anladım. :lol: Açıklayıcı bilgiler için teşekkür ederim.
* EYVALLAH.. :wink:
Kullanıcı avatarı
pentiumkivanc
Üye
Mesajlar: 350
Kayıt: 19 Şub 2004 10:24
İletişim:

Mesaj gönderen pentiumkivanc »

Bazen program yazdıktan sonra uyuduğumda (ki buna uyumak denebilirse) sabaha kadar kodlarla uğraşıyorum. Ama bu durumdan şikayetçi değilim. Bu işin sanat olduğu kanısındayım. Yazdığım çoğu program ticari amacın dışındaki programlardı. Birçok kişi bu işe hobi olarak başlıyor. Programcılık hakkında "öğren boşver kolunda altın bilezik olur" söylemlerini son bir iki yıldır duyuyorum. Bu işle uğraşan öğrenciler genellikle bitirme ödevlerini bitirmek için uğraşıyor. Tabi onlarda programcı sayılıyorsa bu durumda zanaat olur. İlginç bir durum.
Cevapla