30 Aralık 2019 Pazartesi

Yazdım da ne oldu ? (100. Yazı - Ustalara Vefa)

     S.A. Arkadaşlar,
     İlk defa teknik olmayan bir yazı yazıyorum. Bunun sebebini başlıktan anlamışsınızdır :) Hem mutluluğumu hem de bana sıkça sorulan "yazıyorsun da ne oluyor veya yazmanın sana katkısı nedir?" gibi soruların cevabını sizlerle paylaşmak. Ayrıca yazmak isteyip de bir türlü başlayamayan arkadaşlara da başlamalarına vesile olur.
      Yazılarıma kabaca göz attığımda genel hatlarıyla java ile başlayıp C# ile devam ettiğim göze çarpıyor. Son dönemlerde ise Angular yazıları ön plana çıkmaktadır. 2020'deki hedefim de ağırlıklı olarak Angular yazıları ile devam etmektir. Bu bile benim hakkımda önemli ip uçları vermektedir.

      Yine ilk yazılarıma baktığımda daha basit yazıları ele aldığımı fark etmekteyim. Hem sektöre yeni giren biri olarak hem de yazmaya yeni başlayan biri olarak bunun doğal olduğu kanısındayım. Yıllar geçtikçe hem yazıların olgunluğu hem de içerik seviyesi olarak belirli seviyeler kat ettiğimi görmek beni mutlu ediyor.

     Özellikle ilk yıllarımda yazdığım yazılar genelde teorik bilgiye dayanan yazılardı. Bunun asıl sebebi Java'da OCP adlı sertifika sınavına hazırlanıyordum. Belirtilen kitap doğal olarak İngilizce'ydi. Oradan devam ederken aynı zamanda Levent Erguder'in yazıları bana fazlasıyla yardımcı oldu. Daha sonra iş değiştirmek sebebiyle bu hedefimden uzaklaştım, ama teorikte öğrendiğim tüm o bilgiler çok işime yaradı. Bir çok mülakatta hem kod çıktıları hem de sorulan sorulara daha rahat cevap verebildim. Zamanla bu teorik bilgiler pratikle harmanlanarak piştiler. Benim bazen denk geldiğim, arkadaşların da zaman zaman rahatsız olduğu "alt yapıyı tam öğrenmeden kodlamaya başlama" konusunu bu vesileyle daha sağlıklı geçirdiğime inanıyorum (bu konuyla ilgili Özcan Acar'ın bu yazısına bakmanızı şiddetle tavsiye ederim). Teorik kısmı merak etme ve öğrenme alışkanlığını da bu vesileyle elde ettiğime inanıyorum. Daha sonra yazılan bazı yazılarıma da yansımıştır ( neden try catch ve neden static keyword yazılarına göz atabilirsiniz).

    Daha sonraki yıllarıma ise C# ile devam ettim. Geçiş döneminde yazıların azalmasından da anlayabilirsiniz :) Geçişin özel bir sebebi yoktu, başladığım projenin java ile başlayıp C# ile devam etmesinden kaynaklandı. İki dilin de OOP tabanlı olması, daha önceden de C#'a aşina olmam vesilesiyle o şekilde devam ettim. Bunun lezzetini her daim alıyorum. Yeni bir konuyu araştırdığımda acaba Java'da nasıl yapılıyordur diye hala soruyorum kendi kendime. Aradaki farkı gözlemleyebiliyorum. Bu bana farklı bir bakış açısı katıyor (yine Özcan Acar'ın başka bir yazısına atıfta bulunalım:). Bu belki başka bir yazının konusu olur diye şimdilik geçiyoruz.

    C#'a masaüstü programlama ile başlamamın baya faydalı olduğuna inanıyorum. Java SE aşina olmam işimi daha da kolaylaştırdı. Web'den farklı olarak tasarımın daha kolay olması yaptığın işe (backend) daha iyi odaklanmanı ve daha hızlı yol almanı sağlıyor. .net dünyasına alışma konusunda Batuhan'ın bana çok yardımları dokundu. Kendisini sevgiyle selamlıyorum.

    Java tarafından web ve mvc yapısına aşinaydım. Spring MVC ile ilgili yazı serim de mevcut. .net tarafında da mvc'ye nihayet geçiş yaptım ve burada hem java'dan gelen web bilgim hem de C#'ta oluşturduğum alt yapı itibariyle kısa vadede adapte olabildim. MVC ile ilgili de bazı yazılarım mevcut. Bunlardan biri de öğrenme sürecinde karşılaştığım hataları derlediğim yazımı sizlerle paylaşmak isterim. İlk öğrenmeye başladığım gün itibariyle karşılaştıklarımı blogumda taslak olarak not aldım, daha sonradan da bunları çözdüğümde de nerelerden yararlandığımı, nasıl çözüm bulduğumu da yanına not ederek bunu blog haline getirebildim. Bu aslında hem çözdüğün problemleri daha iyi anlamanı sağlıyor hem yine aynı problemle karşılaşan insanların işini kolaylaştırabiliyor. Bu konuda Özcan Acar'ın "copy paste programcı" adlı yazısına göz atmanın faydalı olduğunu düşünüyorum. Bu yazıyı okuduğunuzda beni daha iyi anlayacağınıza inanıyorum.

    Yazılarımın arasında bir de kitap çevrisini (birebir değil, okuyup anladıklarımı yorumlayarak) ele aldığım bir seri de mevcut. Beni tanıyanlar hemen anlarlar hangi kitaptan bahsettiğimi: Kod basitliği. Bu çeviri vesilesiyle kitabın yazarı Max Kanat Alexandar ile tanışma şansı yakaladım linkedin üzerinden. Kendisinin kitabını çevirdiğimi ve izni olursa bunu yayımlamak istediğimi söyledim, bunu duyunca çok memnun oldu ama çevirinin maalesef birebir olmaması sebebiyle kabul etmedi.Bu kitabı da ilk defa, oldukça faydalı yazı ve çeviriler paylaşan, İbrahim Kürce'den duymuştum.

    Belki de proje geliştirip hakkında yazım olmayan tek konu da Node.Js'dir. Bu konuda oldukça üzgünüm. Yazılarımı gözden geçirdiğimde benle ilgili bazı bilgiler vermektedir. İyisiyle kötüsüyle bir kaç şey yazmışlığım vardır. Maalesef Node.Js bunların dışında kalmış. Projenin ortasından girip bitirme telaşı olunca bunu ihmal ettim. Aslında orada da karşılaştığım hataları not aldım ama bir yazı olgunluğuna erişmedi, hala da taslaklar arasında beklemektedir. Bir sonraki projeye neden olmasın diyelim ...

    Bunu yazarken kısa süre geliştirdiğim ve hakkında 3 yazım olan vaadin çatısı aklıma geldi. İşe başvurma süreci ile ilgili olan bir projeydi. Proje tamamlayıp hazır ettiğimde bunla ilgili bir şeyler yazma ihtiyacı hissettim. Çünkü diğer Java konularında olduğu gibi burada da Türkçe kaynak çok azdı hatta neredeyse hiç yoktu. Ben de belki daha sonra uğraşan birilerine yardımcı olabilirim düşüncesiyle paylaşmıştım. Bunu paylaşmanın asıl sebebi çok değer verdiğim Cem Ikta'nın yazımı beğenmesiydi. Hala kendisinin bu mesajını saklarım. Bu tarz takdir veya tebrikler almak insanı gerçekten mutlu edip onurlandırmaktadır (Canlı yaşanan bir olay, onure etmek yazdığımda bu kelimenin altı çiziliydi ve araştırdığımda doğrusunun onurlandırmak olduğunu öğrendim, burada bile yazmanın faydasını görebiliyoruz).

     Son dönemlerde yazdığım Angular yazıları ile ilgili bir kaç şey söylemek istiyorum. İlk yazılarım yine teorik oldu. Aldığım notları elden geçirip bunları paylaşmak istedim. Bunu yaparken bile ciddi zamanlar harcadım, fakat bunları yazarken yerli yabancı bir çok kaynaktan faydalanıyorum. Kısaca göz attıklarım, not aldıklarım, daha ayrıntılı okumam gerekenler diye her birini ayrıştırıyorum. Demem o ki, öğrendikçe yazıyorum, yazdıkça öğreniyorum. Benim gibi okumayı çok seven biri için çok güzel bir döngü. Yine burada Burak Selim Şenyurt gibi örnek aldığım, yazı makinesi olan bir insanın yazımı beğenmesi beni çok mutlu etmişti. Ayrıca Angular konusunda beni yazmaya teşvik eden Gökhan Manduz'a da teşekkürler. 


     Şimdiye kadar yazdıklarım genel olarak yazma sürecimi anlattı. Biraz da beni nasıl geliştirdiğini anlatarak yazımı tamamlamak istiyorum.

    Yazı yazmak zor olsa da eğlencelidir. Zor olmasının sebebi bol bol okumanı, araştırmanı ve öğrenmeni gerektirir. Bardak dolmadan taşmıyor. Ve bu yönüyle beni bol okumaya sevk ediyor. Özellikle medium ve linked'in üzerinden çok güzel yazılar okuyorum, notlar almaya çalışıyorum. Nitelikli yüzlerce yazı okuyorum ve bunlar bir bakıma beni de yazmaya zorluyor. Sadece tüketmek değil üretmenin de gerekliliğini gösteriyor. Eğlenceli olmasının sebebi ise insanların sizin yazılarınızı okuması, takdir etmesi ve onlar yararlanmasıdır. Yüz yüze tanışmasak da bir çok meslektaşımla irtibat kurdum, muhabbet ettik, bilgi alış verişinde bulunuyoruz.

   Her daim öğrenmenin verdiği lezzetle birlikte öğretmenin de ayrı bir lezzeti olduğuna inanmışımdır. Birebirde sayılı kişilerle bilgi birikimi konusunda alış verişte bulunabiliyoruz, fakat yazarak ve okuyarak hem bir sürü insana ulaşabiliyorsunuz, bildiklerinizi aktarabiliyorsunuz hem de aynı şekilde bir sürü bilgi birikiminden yararlanabiliyorsunuz. O açıdan yaptığım mesleği gerçekten çok seviyorum. Her daim öğrenip öğretmek benim için çok kıymetli. Bunun yaşayan canlı örneği olan Manduz kuzenlere selamlar ...
   
    Benim hem 100.yazım hem de yılın sonu yazısı olma vesilesiyle böyle bir yazı yazmak istedim. Hem hayatımda iz bırakan insanlara birer teşekkür hem de geriye dönük bir iç muhasebe yapmak maksadıyla tüm bunları ele aldım. Diğer yazılımlardan farklı öznel bir yazı oldu, umarım sıkılmadan okumuşsunuzdur.

    Herkese güzel seneler dilerken, daha fazla okuyup yazdığımız nice senelere...

3 yorum: