by

Bir Yazılımcı Kendini Nasıl Geliştirmelidir?

Bir Yazılımcı Kendini Nasıl Geliştirmelidir?Kendini sürekli geliştirmeyi seven bir yazılımcı olarak, sürekli kendimi nasıl daha iyi geliştirebilirim sorusuna cevap ararım. Bu konuda edindiğim tecrübeleri burada paylaşmak istiyorum. İlerde edineceğim tecrübelere bağlı olarak da bu yazıyı sürekli güncel tutmayı amaçlıyorum. Burada bahsedilenlerin hepsi tamamen şahsi fikirlerimdir.

Tecrübeye Kulak Verin

Her şeyden önce genç yazılımcıların daha tecrübeli yazılımcıların tecrübelerine kulak vemeleri gerekmektedir. İki tip tecrübeli yazılımcı modeli vardır. Bunlardan birincisi size balık verir, diğeri ise balık tutumayı öğretir. Genç yazılımcıların yanında ne kadar fazla balık tutmayı öğreten tecrübeli yazılımcı olursa o kadar şanslıdırlar çünkü bir sorunla karşılaştığınızda balık vermeyi seven tecrübeli yazılımcıdan yardım istediğinizde bu yazılımcı sorununuzu o an için çözmeye yardımcı olur ve hayatınızı kurtarmış olur ancak size ne sorunu nasıl çözdüğünü doğru dürüst anlatır, ne de bu tarz sorunlarla karşılaştığında izlenmesi gereken adımlardan bahseder. Balık tutmayı öğreten tecrübeli yazılımcı ise sorunu çözerken izlemeniz gereken adımları anlatır ve bu tarz sorunlarla karşılaştığında ne tür adımlar izlemeniz gerektiği konusunda sizi bilgilendirir. Ayrıca sorunu çözememenizin nedeninin herhangi bir konuda bilgi eksikliğinden kaynaklandığını farkederse sizi bu konuda uyarır ve kendinizi geliştirmenizde katkıda bulunmuş olur.

Eksiklerinizi Tespit Edin

Etrafınızda her zaman balık tutumayı öğreten yazılımcılar olmayabilir bu bir şansızlık ancak dünyanın sonu değil. Bir sorunla karşılaştığınızda bu sorunu çözemiyorsanız kendinize neden sorunu çözemediğinizi sorun. Hangi konuda eksik olduğunuzu tespit ederek o konuda kendinizi geliştirmeya çalışın.

Yenilikleri Takip Edin

Yazılımcıların kendilerini geliştirmek için yapması gereken şeylerden birinin de sürekli yenilikleri takip etmektir. Yazılım konusunda önemli bilgi ve tecrübeye sahip olduğuna inandığınız kişilerin bloglarını okuyun, onları sosyal medyada takip edin. Özellikle Twitter da takip etmenin faydalarını sürekli gördüğümü belirtmek istiyorum.

Kitap Okuyun

Kendimi geliştirmek için edindiğim en iyi alışkanlıklardan bir tanesinin yazılım geliştime ile ilgili kitaplar okumaktır. Türkçe çok az nitelikli kitap bulabileceğinizden yabancı kitapları okumanız gerekecektir. Bunun için de ingilizce okuduğunuzu anlama yeteneğinizi geliştirmeniz çok önemlidir. Okulda tüm ders kitaplarımızın ingilizce olması sayesinde ingilizce okuduğumu anlama yeteneğimi geliştirdim. Başlarda ne kadar zorlandığımı hatırladığımdan bunun sizin için de zor olacağını biliyorum ancak iyi bir yazılımcı olmayı hedefliyorsanız ingilizce biliyor olmanızın olmazsa olmaz şartlardan bir tanesi olduğunu unutmayın.

Nesne Yönelimli Programlama Prensiplerini İyi Benimseyin

Yazılım geliştirme konusunda yolun başında olan arkadaşlara en önemli tavsiyem nesne yönelimli programlama prensiplerini çok iyi benimsemeleridir. Hangi yazılım dilini kullanırsanız kullanın bu size her yerde gerekli olacaktır. Bu nedenle altyapınızın sağlam olmasını istiyorsanız nesne yönelimli programalama prensiplerini çok iyi öğrenin.

StackOverflow’da Yüksek Puanlar Elde Etmeye Çalışın

Yazılım konusunda 1 numaralı bilgi kaynağı hiç şüphesiz ki StackOverflow‘dur. Dünyadaki neredeyse tüm yazılımcılar bu siteyi aktif olarak kullanmaktadırlar. Bu sitede aktif olarak soru sormak ve bildiğiniz konularda da cevap yazmak size gelişmeniz açısından kesinlikle artı değer katacaktır. Sitede cevaplarınızla puanınızı sürekli arttırmaya çalışın. Burada cevap yazmak veya başkalarının cevaplarını okumak bilgi seviyenizi yükseltecektir. Ayrıca aradığınız bir cevabı bulduktan sonra cevaba olumlu oy vermeyi unutmayın. Bu cevap veren kişiyi kesinlikle çok mutlu edecektir. Birçok kez uzun araştırmalar sonucu cevabını bulamadığım soruları bu platform üzerinden sorarak cevaba ulaşmışımdır. Size tavsiyem çekineden soru sormanızdır. Bu platform sayesinde ingilizceniz de ciddi bir şekilde gelişecektir.

Başkalarının Kodlarını İnceleyin

Başka yazılımcıların kodlarını okumak bir yazılımcının ufkunu genişleten en önemli aktivitelerin başında gelmektedir. İş yerinde diğer yazılımcıların kodlarını okurken her zaman yeni birşeyler öğreniyorum. Ayrıca açık kaynak projelerdeki kodları incelemek de oldukça faydalıdır. Bu projeler sayesinde birçok yeni şeyler öğrenmiş olursunuz. Açık kaynaklı projelerin çoğu GitHub üzerindedir. Bu sitede bolca vakit geçirmenizi tavsiye ediyorum.

Öğrendiklerinizi Not Alın

Binbir zorlukla araştırıp yanıtını bulduğunuz cevapları kesinlikle bir yerlere not almanız çok önemlidir. Daha önce de karşılaşıp çözdüğünüz sorunları her sefer baştan çözmek kimsenin hoşuna gitmez. Ben bu konuda birçok yöntem uyguladım. Deftere not aldım, bilgisayarda not tuttum ancak bu yöntemler sonucu hem gerektiğinde bu notlara her yerden ulaşma sorunu yaşadım hem de defterin kaybolması veya bilgisayara format atma gibi olaylar sonucu notlarımı kaybettim. Yaşadığım bu olumsuz tecrübeler sonucu notlarımı bloğumda tutma yöntemini uygulamaya başladım. Hala bu yöntemi uygulamaktayım ve bu yöntemden çok memnunum çünkü hem verilerime istediğim zaman internet bağlantısı olan herhangi cihazdan erişebiliyorum, hem notlarımı artık kaybetmiyorum, hem de aldığım notların diğer insanlara da faydalı olmasını sağlamış oluyorum. Bu yöntemi uygularsanız kesinlikle pişman olmazsınız. Hem de bilgilerinizi başkalarıyla paylaşmış olursunuz.

Bol Bol Pratik Yapın

Bir konuda iyi olmanın sırrı bol bol pratik yapmaktan geçer. Bol bol kod yazın. Her defasında daha iyiye gittiğinizi farkedeceksiniz.

Write a Comment

Comment

14 Comments

  1. Paylaşımınız için teşekkürler Ferid Bey, bilgi seviyesi ne olursa olsun kendisini geliştirmek isteyenler için güzel bir yazı olmuş.

  2. Ekleme yapmak istiyorum: Matematik, Fizik, Istatistik uzerine hobi olarak kitap okuyun ve ornek problemler cozun. Yazilimi en iyi yapanlar zihni en acik olan kisilerdir.

  3. Ferid abi benim adım Buğra 14 yaşındayım doğduğumdan beri bilgisayarlara doğuştan bir aşkım var. Daha sonra teknolojiyede bir aşkım başladı ama tabi bilgisayarların yeri benim için başka. 8-9 yaşımdan beridir büyüyünce yazılım geliştiricisi olmak istiyorum. Yaklaşık 10-11 ay önce yazılım yazmaya başladım, şu anda acemiyim C# dili öğreniyorum. Senin yazın ufkumu genişletti hepsini deneyeceğim ve işe yarayacağından %100 eminim. Çok çok çok teşekkürler abicim, seni seviyoruz.

    • Yazıyı faydalı bulmana çok sevindim. Gerçekten çok iyi bir yaşta başlamışsın. Bu senin için büyük avantaj olacak ileride. Bu şekilde devam edersen çok iyi yazılımcı olacağından şüphen olmasın.

  4. Hocam mükemmel bir yazı olmuş, öncelikle tebrik ve teşekkür ederim. benim sorum şu: StackOverflow aktif nasıl kullanacağız. Ben bir türlü kullanamadım. Mesela herhangi bir konuda etkin bir şekilde kullanmak için nasıl bir araştırma yapmalıyız. Kısacası etkin bir araştırma nasıl yapılır. O konuda bir yazı yazar mısın? teşekkür ederim.

    • StackOverflow’u aktif kullanmaktan kasıt sadece aradığını bulup geçmekten ziyade. Gerektiğinde orada soru sormak ve insanların sorularını yanıtlamaktır. Millet olarak genelde sadece işimize yarayanı alıp hiçbir katıkı sağlamıyoruz. Oysaki herkes bu şekilde davransaydı Stackoverflow diye bir şey olmazdı. Ben şahsen elimden geldiğince bilgili olduğum konularda insanların sorularını yanıtlamaya çalışıyorum. Üniversitedeyken arkadaşlarla Stackoverflowda bu hafta kim daha çok puan toplar yarışması yapardık. Gerçekten çok zevkliydi. Tavsiye ederim kesinlikle.

      • Hocam bir de kitaplar okuyun diyorsunuz ya, şimdi C# ilgili yabancı bir kaynak okuduk diyelim.Sonra Gene c# ilgili başka bir yabancı kitap mı okuyalım yoksa direk uygulamalı projoler yazıp takıldığımız da c# ktaplarına mı bakalım.

        • Kitap okumanın esas amacı konuyla ilgili genel bir edinmektir. Daha sonraki aşamalarda takıldığın yerlerde sorunun çözümünü internette arayıp bulman gerekiyor. Bunun için de arama motorlarıni etkili kullanma yöntemleri çok önemli. Hangi keyword ile arama yapacağını tecrübe kazandıkça daha iyi anlayacaksın

  5. Merhaba Ferid kendimi yazılımda geliştirmekten çok kendimi yazılım dünyası ve tekniklerine giriş yapmak istiyorum lakin ne yapacağımı nasıl yapacağımı bilmiyorum. Bir YouTube kanalım var oyun olsun vlog olsun müzik olsun bu konuda kendimi YouTube üzerinden tanıtmaya çalışıyorum ve bu konuda da edit yapmamı kolaylaştırıcak programlar lazım. Her iki konuda da bana yardımcı olursan teşekkür ederim şimdiden..
    Ulaşabilmen adına kanal ve kişisel e-mail hesabımı veriyorum;

    oyundakiadam.by@gmail.com
    berkyildirim.by20@gmail.com