WM Dergi - 2.SAYI | Page 64

WM Dergi WM Dergi Türkiye ‘nin En Büyük ve Kapsamlı Webmaster Dergisi Türkiye ‘nin En Büyük ve Kapsamlı Webmaster Dergisi Bu makaledeki asıl amaç programcılık ve öğrenim süreci üzerine aldığım farklı soruları yanıtlandırmaktır. Bana gelen maillerde; farklı platform üzerinde çalışan kişilerin yeni bir dili öğrenme süreci, programcılık üzerine sorular, eğitim kuruluşları hakkında bilgi, yazılım dillerinin zorluğu gibi sorular yer almakta. Bu yüzden bu makalenin yeni başlayanlara ya da başlamak isteyenlere bir noktada yardımcı olacağını düşünüyor. Profesyonellik ise her zaman daha iyi iş ortamı belirli çalışmalar demektir. Bunu şöyle düşünebilirsiniz, ben temelde bir web tasarımcısıyım. Kullandığım yazılım ve işaretleme dilleri temel olarak CSS, HTML, PHP, MySql, JavaScript. Uzmanlık alanım ise Actionscript 3.0. Flash, Flex veya AIR alanında herhangi bir müşterim proje aldıklarında uzmanlık alanım olduğu için benimle görüşüyorlar. Engin YÖYEN [email protected] PROGRAMCILIK ve EĞİTİMİ ÜZERİNE Programcılık ve Yazılım Dilinde Profesyonelleşme Programcılık temelde kolay olmayan ama zevkli bir iştir. Tabii kullanılan yazılım dili yapılan işlem ve uygulamalar da birbirinden farklı olduğu için buradaki ölçü göreceli oluyor. Diğer taraftan bana göre programcılık bir yazılım dilini öğrenmek değil programlamayı öğrenmektir. Kullanılan yazılım dilinin bir hedef değil de araç olarak görülmesi gerektiğini düşünüyorum. Genele baktığınızda zaten bir 64 programcı yazılım diline bağımlı kalmadan farklı platformlarda çalışabilir. Yani eğer Actionscript 3.0 kullanıyorsanız Java veya JavaScript kullanmamanız için hiçbir neden yok. Tabii bu diller yapı olarak birbirine benzeyen diller, ama benim varmak istediğim nokta eğer bir dilde programlama yapabiliyorsanız, bu dilden bağımsız tamamen alakasız olan bir dili de kullanabilirsiniz. Farklı dil kullanımlarında önemli olan nokta dilin yapısını öğrenmektir, diğer bir deyişle dilin sözdizimini öğrenmektir. Geriye kalan parçalar ise ihtiyacınız oldukça yerine oturacaktır.Burada bir noktayı yanlış anlamanızı istemem, programcılığa yatkın olmakla bir programlama dilinde profesyonelleşmek birbirinden farklı şeyler. Programcılıkta iyi olmanız farklı platformlara daha kolay uyum sağlayabilmeniz demektir. Bir programlama dilinde profesyonelleşmek ise bir çalışma alanında gelişmeniz demektir. Aldığım işlerin hemen hemen %60 ından fazlasında ise yukarıda saydığım platformları kullanıyorum. Aradaki farka gelirsek, kimse beni PHP’de çok iyiyim diye arayıp iş teklif etmeyecektir. Ama dinamik bir Flash sitesi yaptığımda ve bu sitenin arka planını PHP ile oluşturma kabiliyetine de sahip olmam gerekir. Web programcılığı ile masaüstü programcılığı arasındaki farklar çok büyük. Web programcılığında bir alanda uzmanlaşmış olabilirsiniz ama diğer alanlarda da gelişmeniz bazen kaçınılmazdır bazen gereklidir. Eğer Flash ve Actionscript ile çalışıyorsanız muhtemel olarak aşağıdaki platformlara bir şekilde ihtiyacınız olacak ve kullanmak zorunda kalacaksınız;PHP, MySql, JavaScript, XML, CSS, HTMLYukar ıda sayılanlar web tasarım ve programlamanın temelleri sayılır. Belki PHP, Mysql yerine Asp.net ve Mssql olabilir ama diğer platformlara da her halükarda ihtiyacınız olacaktır. Öğrenim Süreci Programcılık bir süreçtir. Bir kitabı okuyarak programcı olamazsınız, bir kursa giderekte programcı olamazsınız. Maalesef üniversite bilgisayar bölümlerine giderekte programcı olamazsınız. Umarım yanlış anlaşılmam, bana göre programcının gelişme süreci çok uzundur. Yani Amerika ve İngiltere’de yayınlanan ve 24 Saatte Php, 24 Saatte Javasciprt ve benzeri kitaplardan 24 saatte hiçbir şey öğrenemezsiniz.24 Saatte bir dili öğrenme yeteneğine sahipseniz zaten o kitaba ihtiyacınız yoktur. Programcı uzun yıllar sonucu programcı olur.Bence ideal süre 7 ila 10 yıl arasındadır. Bir dili çok iyi öğrenebilirsiniz, tüm zayıflıklarını, hatalarını, eksikliklerini, artılarını ama bu sizi daha iyi bir programcı yapmaz. İyi programcı geçmişte yazdığı kodu beğenmez. Yani yaptığınız uygulamanın aynısını 5 ay geçtikten sonra tekrar yapmanız gerektiğini düşünelim. 5 ay önce yazdığınız kod ile yeni yazdığınız kod arasındaki farka bakıp eski kodu beğenmeyen kişi iyi yazılımcıdır bence. Tabii buradaki ana mantık programcının mantıken sürekli olarak kendini geliştirmesidir. Geliştikçe daha önce yaptığınız hataları görüp yenileri yapmamaya ayrıca yeni yöntemlerle kodları daha kısa yazmaya başlayacaksınız. Mesela bir yıl önce 800 satırda yaptığınız uygulamayı bir yıl sonra 300 satırda yapmak gibi. Programcılık Eğitimler Üzerine Yazılım dilleri ile ilgili eğitimleri birçok kurumdan alabilirsiniz. Hangi eğitim kurumunun daha iyi ya da daha bilgili olduğu konusunda tarafsızım. Ama 1,5 yıl eğitim merkezinde a dan z ye her şeyin eğitimini alıp sonra hiç bir şey yapamayan insanlarla da çok karşılaştım.Programcılık eğitimi; eğitimi alan kişiye göre göreceli şekilde değişir. Kimi 6 ay eğitim alır ama bilgisi çok az bir şekilde artmıştır, kimisi 6 aylık eğitimi 4 ayında bırakır çünkü eğitimin yeterli olmadığını düşünür. Burada unutmamanız gereken sizin kişisel kapasiteniz ve öğrenme sürecinidir. Eğer kendi başınıza öğrenebileceğinizi düşünebiliyorsanız kitap ile de herhangi bir yazılım diline giriş yapabilirsiniz. 65