Aşağıdaki metin Jared C. tarafından yazılmış bir blog yazısıdır.Bilgisayar Mühendisleri için Problem Çözme Yöntemi yazıma ek olarak bunu çevirme isteği duydum (aslında bu ikisi oldukça benzer yazılar), gerekli gördüğüm yerleri sadeleştirdim ve bir şeyler de ekledim, umarım faydalı olur.Eğer kodlamayı öğrenmek ve bir şeyler ortaya çıkarmak istiyorsanız ve başkasına ne yapmanız gerektiğini soruyorsanız zaten yanlış düşünüyorsunuz demektir.
Hemen şimdi, hiçbir hazırlığa gerek duymadan, göz açıp kapayıncaya kadar bu sorunuza bir cevaba ihtiyacınız olmadığını fark ederek hedefinize büyükçe bir adımla yaklaşabilirsiniz.Çünkü her şeyi kendiniz yapabilirsiniz. İhtiyacınız olan her şey bir yerlerde sizi bekliyor. Gidin alın, kimse sizi durduramaz. Hazır mısınız?
Google‘a gidin ve sorular sormaya başlayın. Web sitesi mi yapmak istiyorsunuz? Sorun. Hangi programlama dillerini öğrenmeniz gerektiğini mi merak ediyorsunuz, sorun. Bir şeyler yapmaya başladınız, mesela bir yere kenarlık ekleyeceksiniz, rengini değiştireceksiniz, form ekleyeceksiniz, hatayı düzeltmeniz gerek, bir program kurmanız lazım, sitenizi bir yerde barındırmak istiyorsunuz? Sorun. Her sorunun cevabı orada mevcut. Bunu en iyi mühendisler bilir ve en iyi mühendisler bile Google’a bir sürü soru sorar. Bir mühendisle aranızdaki fark işte bu zihniyet.
Doğru zihniyeti edindikten sonra, şimdi bu sistemi nasıl işleteceğimizi görelim:
Google’a sorular sormaya başladığınızda sizi bir sürü StackOverflow, Quora sayfasına ve milyonlarca blog ve siteye yönelendirecek. Web sitesi örneği için aradığınızda, oldukça iyi 20 HTML ve 9 CSS dersi bulacaksınız ve beğendiklerinizi takip edebileceksiniz (örneğin bu veya bu). Sonra ücretsiz bir text editör programı indirip bir şeyler ortaya çıkarmaya başladığınızda gerçekten her şeyin internette olduğunu göreceksiniz.
Sitenize havalı bir şeyler eklemek istiyorsunuz. Google size sitelerdeki düğmelerin üzerine geldiğinde nasıl renklerinin değişebileceğini söylüyor. Sonra CSS’in gücünü öğreniyor ve bu videoları izlemeye başlıyorsunuz. Sonradan bir anda kendinizi Javascript ve jQuery dünyasına girmiş buluyorsunuz ve bulduğunuz tutorial’lar ile çok kısa zamanda büyüleyici görünen şeyler yapmaya başlıyorsunuz.
Sonradan yalnız başınıza öğrenme aktivitenizden sıkılıyorsunuz ve blogları, forumları takip etmeye, başka tasarımcılarla, programcılarla oralarda veya Twitter gibi yerlerde, hatta şehrinizdeki toplantilarda etkileşmeye başlıyorsunuz.
Sonra bir MacBook alıyorsunuz, çünkü o zamana kadar daha önce başka bir şey kullandığınızdan ötürü utanıyorsunuz. İvmenizi geliştirmeye devam ediyorsunuz ve mühendislik işleri aramaya başlıyorsunuz. Sonra fark ediyorsunuz ki aslında arayüz yetenekleriniz oldukça iyi ama bir web geliştiricisi olmak için yeterli değil ve Ruby on Rails gibi bir backend dili (veya framework’u) öğrenmeniz gerektiğini anlıyorsunuz. Sonra bunu, bunu ve bunu buluyor, bunları, izleyip öğrenmeye başlıyorsunuz.
Şimdi bir şeyler üretmeye başladınız ve yapmak istediğiniz şeyi başkasına sormadan kendi kendinize yapabilecek güveniniz geliyor (bkz. en son insana sorun) ve şimdi sizi kimse durduramaz!
İnternette ücretsiz olarak bulduğunuz bu kadar bilgi kaynağına minnettarsınız ve siz de bir şekilde katkıda bulunmak istiyorsunuz. Bunun için blog veya bir site açabilirsiniz, veya kodlarınızı Github‘a koyup twitter’da tanıtıp herkesin kullanmasını ve bunlardan bir şey öğrenmesini sağlayabilirsiniz.
Artık oldunuz.
“Beni kim durdurabilir?” ile “Bunu nasıl yaparım?” zihniyeti arasındaki fark öğrenmeye ve hayata bir çok şekilde etki ediyor. Kendi kendinize bir şeyler başarabileceğiniz hangisiyse onu seçin, fark etmez, çünkü kendinizi hedeflediğiniz şeyi yapmaya adamalısınız. Bunun sonucunda ne kadar çok şey öğrendiğiniz ve ne kadar ileri gittiğinize siz bile şok olacaksınız.
“Liderler, çoğu zaman düşündüğümüz gibi, kendilerini takip eden dev kalabalıklarla aynı fikirde değillerdir. Liderler etraflarına, hatta birilerinin kendilerini takip edip etmediğine bile bakmadan, kendi yollarını çizip oradan giden insanlardır. ‘Liderlik vasıfları’ insanları etrafınıza toplayabilmekten ziyade onlarsız yapabilme yeteneğidir. İçlerinde en azından cesaret, tahammül, sabır, espri anlayışı, esneklik, beceriklilik, inatçılık, keskin bir gerçeklik anlayışı ve işler kötü giderken bile sakin bir kafayla durabilme yeteneği bulunur. Gerçek liderler, kısaca, sadece insanları peşinden sürüklemez, onların da birer lider olmasını sağlarlar.”
– John Holt*
Netice olarak, “Kodlamayı öğrenmek istiyorum, ne yapmalıyım?” sorunuza cevap:
Kodlamayı öğrenin.
Çeviri: Ahmet Alp Balkan
(This post is originally written on ItsJaredC and entitled The wrong question: “I want to learn to code, what should I do?”.)
Very nice site!