HackerRank’in Önemi ve Zorlananlara 4 Öneri!
HackerRank kullanımının öneminden bahsettik ve algoritma geliştirmede zorlananlara 4 öneri verdik!
HackerRank, dünyada milyonlarca yazılımcının kullandığı ünlü, programlama öğrenen kullanıcılara yardımcı platformlardan biridir. Şirketler işe alım sürecinde yazılımcıların kodlama ve algoritma becerilerini HackerRank kullanarak ölçüyor. Benzer platformlar arasında CodeWars, Coderbyte, Leetcode sayabiliriz.
Algoritma kurma yeteneği bir yazılımcının geliştirmesi gereken en önemli özelliklerinden. HackerRank de tam bu noktada devreye giriyor: Kurduğunuz algoritmayı birden fazla girdi ile test ediyor ve şartları sağlayan algoritma doğru kurulduysa bir sonraki bölüme geçebiliyorsunuz. Böylece güçlü ve doğru algoritmalar kurarak yeteneklerinizi geliştirebiliyorsunuz.
Bu yüzden Patika’da sizlere birçok HackerRank alıştırması sunduk. Eğitimlerimizde HackerRank tarafından düzenlenmiş egzersiz niteliğinde sorular ve challenge ile karşılaşacaksınız. Bu egzersizler, kodlama bilginizin yanında algoritma kurma yeteneklerinizin de gelişmesine katkı sağlayacak.
“HackerRank çok zor! Ben bu konuları öğrendim ama bir türlü uygulayamıyorum! Uygulama yapmak için hangi sitelere bakmalıyım? Algoritma bilgim mi eksik? Ben yazdım çalıştı, bu site neden kabul etmiyor?” gibi cümleleri pek çok yazılımcı adayından duyuyoruz.
Bunları siz de söylüyorsanız yalnız değilsiniz! Yazılım dünyasında bir kariyer hedefleyen ve kendini geliştirmek isteyen birçok arkadaşımız benzer sorunlar yaşıyor.
Aslında HackerRank alıştırmalarında zorlanmak iyidir! Derslerde gördüklerinizin birebir aynısını çözerseniz, algoritmik düşünme yeteneklerinizin gelişmesine katkıda bulunmuş olmazsınız. Anlatılanlardan daha farklı soruların sorulmasındaki amaç sizi çaresiz bırakmak değil, problem çözme yeteneğinizi geliştirmek.
Birçoğumuz sınavlara hazırlanırken bir konuyu dinledikten sonra pratik yapmak için oldukça fazla soru çözdük. İlk anda ne kadar zorlandığımızı hemen hatırlayalım. Bu zorlanma anında bırakıp gitmeyen ve kendini zorlayarak konuların üzerinde düşünen arkadaşlar kısa süre sonra birçok problemin üstesinden gelmeyi başardı. Bazı noktalarda sorunu tam anlayamadığımızda ise daha iyi bilen bir arkadaşımıza giderek ondan yardım aldık. Yazılım dünyasındaki süreç de aslında tam olarak bu şekilde.
Ellerimizi kirletmeden, problemlerin ve sorunların üzerinde uzun uzun düşünmeden ilerleme kaydetmek maalesef pek mümkün değil. Karşınızdaki problemi çözmek için yeteri kadar çabaladıktan sonra problem çözme yeteneklerinizin zaman içerisinde geliştiğini siz de göreceksiniz! Bazen sorunu tam anlamamış ve bizden istenilen çıktıları alamamış olabiliriz, bu durumlarda başkalarının çözümlerini inceleyerek kendi cevabımız ile karşılaştırabilir ve verimli bir ilerleme sağlayabiliriz.
Unutmayın ki algoritma ve veri yapıları gibi konular sihirli değnek değil. Bu konuları temel seviyede anladıktan sonra bütün problemlerin çözülmesini beklemek biraz hayalperestçe olmaz mı? Video izlemek, yapılan projeleri incelemek katkı sağlayacaktır ama başarılı olmanın asıl sırrı asla vazgeçmemek ve problemin üzerine ısrarla gitmek olacaktır.
-Asla pes etme!
-Her problemin çözümünü başkalarından bekleme, kendin sorunun üzerinde çalış. Amaç, önceden görmediğin problemler ile algoritma düşünceni geliştirmek, çünkü iş dünyasında birçok kez bu tarz sorunlar ile karşılaşacaksın. 🙂
-Stack Overflow sitesinde zorlandığın noktaları araştır, cevapları incele ve soru sormaktan çekinme. GitHub’da daha önce yapılmış olan çözümleri incele, challenge sitelerinin forum ve tartışma kısımlarında seninle benzer sorunları yaşayan insanların çözümlerini ve yorumlarını göreceksin.
-Kodluyoruz Discord gibi topluluklardan yardım al.