İŞ HAYATI 6 Şubat 2023
55b OKUNMA     366 PAYLAŞIM

Güvenlik Görevlisi İşinden İstifa Edip Yazılım Öğrenmeye Başlayan Birinin Başından Geçen Şeyler

Mesleğini bırakıp yazılım kursuna kaydolan ve kod yazmaya başlayan bir Sözlük yazarının tecrübeleri, benzer şeyler planlayanlara yardımcı olabilir.
iStock

kod yazmaya başlayacaklara tavsiyeler... 6 aylık kodlama öğrencisiyim, başımdan neler geçtiğini anlatayım, toplanın newbie'ler. yazı uzun olacak, okumaya üşenen kodlamaya hiç dalmasın zaten :)

nisan 2022'de, özel güvenlik görevlisi olarak çalıştığım kurumdan ayrılmayı iyice kafama koymuştum

özel güvenlikten front-end'e nasıl geldiğimi sormayın, o bambaşka bir hikaye olacak ileride :) neyse, beni bir sene geçindirecek kadar parayı toplayıp kenara koydum, ağustos 2022'de istifa ettim, aynı ay içinde direkt olarak yazılım ve bilgi teknolojileri kurslarına başladım. peki ne yaptım bu altı ayda ve neden front-end olarak başladım, anlatayım.

etrafımda, ilki kuzenim olmak üzere 5-6 yazılımcı var. birkaç tanesi back-end, bir tanesi robotik kodlama, bir tanesi front-end olarak ayrı alanlarda çalışıyorlar halihazırda. ben aslında yola it çalışanı olabilmek için çıktım. yani işim yazılım değil daha çok donanım üzerine olacaktı, hayalim buydu ama bir şekilde front-end'e başlarken buldum kendimi. bu arkadaşlarla konuşmalarımda bana en rahat edeceğim yerin front-end olacağını söylediler, başlangıç için. ben de iyice araştırıp onlarla aynı kanıya vardım.

IT: Information technologies, yani bilgi teknolojisi. Her türlü veri ve bilgiyi oluşturmak, işlemek, depolamak, almak ve değiş tokuş etmek için bilgisayarların kullanılmasıdır.

peki niye front-end?

çünkü arkadaşlar, bir yazılım dilini direkt öğrenmeye girişmek yerine önce hafif ılık sularda yüzmek size özgüven veriyor. nedir bu ılık su diye tabir ettiğim şey? html ve css tabii ki. bunlar yazılım dilleri değiller ama size özgüven kazandırmak için birebir şeyler. neden biliyor musunuz? en dandiğinden de olsa sadece html yazdığım ilk hafta sonunda tarayıcıda kendime ait bir şeyleri görebilmek müthiş güzel bir duyguydu. bakın yazdığım şey dümdüz html dosyasıydı :) ama bu bile size yeni şeyler öğrenmek için gaz veriyor. ben 6 ay önce html'in h'sinden anlamayan biriyken, derslere başlayıp html ile ilk sitemi yazıp oturup karşısında sigara içtim lol. daha sonra css öğrenince biraz üstünden geçtim, akrep nalan vol.2 gurur kaynağım için tıklayın ahaha.


sonra, css denen nane geldi

bana ilk başlarda dediler ki html öğrenmen 1 haftadan fazla sürdüyse mal olman lazım. doğru mu, doğru :) semantic öğrenseniz bile 1 haftayı aşmasın çünkü zaten bu işlerle uğraşacaksanız ömrünüz ilk önce html yazmakla geçecek. o yüzden en çok tekrar edeceğiniz şey de bu olacak. neyse, ne diyorduk? css...

css, tam bir baş belasıydı ilk zamanlar. git html elementine class ver, başka dosya aç, onu html template'ine tanıt, orada css yaz, renk ver kutuları oynat animasyon yap bilmem ne... css anlaması çok kolay ama uzmanlaşması imkansıza yakın bir şey gözümde. çünkü sadece animasyon yazan biri gelip ben css'te uzmanım dese elini öperim, ağzımı açıp bir şey demem. bu dipsiz bir kuyu adeta. peki bize ne kadar lazım? çok lazım arkadaşlar :) flexbox bilmeyen front-end yok mesela. hover bilmiyorum diyemezsiniz, css ile çoğu şeyi bilmek zorunda kalıyorsunuz. ben burada bir hata yaptım, onu anlatayım sonra da başka bir baş belası olan javascript'e geçeceğim.

şimdi, html öğrendik, css kursunu yaladık. sonra gittik hadi hemen javascript öğrenelim dedik. noldu? öğrenemedik tabii ki.


peki neden?

arkadaşlar, romalılar ve burhaniyeli dostlarım, proje yapmadık. hem de neredeyse hiç. bana bu div'i ortalamayı öğretin diye ortalıkta gezdik durduk, kendimiz öğrenmeye çalışmadık, nasılsa öğreniriz be dedik. noldu? öğrenemedik :)

bir bakımdan iyi oldu, css öğrenemedik ama neyi öğrendik biliyor musunuz? sevgili gürcan abi (arin yazılım/youtube) umarım okuyacaksın, senin tabirinle balık tutmayı öğrendik :) arkadaşlar 6 ayda öğrendiğim en iyi şey şu. tutorial hell denen naneye düştünüz, 50 tane video 126 tane kitap okudunuz sonra biri gel hadi şu div'i ortala dedi ama ortalayamadınız değil mi? çünkü proje yapmadınız babacım. oturup hayvan gibi proje yapmanız lazım. sokakta gördüğüm bakkala kadar proje yaparak bunu aştım mı? evet kısmen, hala sorunlu içerikler olduğunu düşünsem de html vs css'te şöyle bir durum var, hiçbir şeyin tek çözümü yok. yani yaptığın şey sana yanlış gibi de gelebilir ama gördüğün şey doğruysa - (öyle dedi yazılımcı abilerim, hatta bu frontendmentor.io'nun çözümler bölümünde de yazar.) - muhtemelen doğruymuş. (pixel perfect yapmadığımızı varsayıyorum.)

sonra, biri gelip dedi ki abi bootstrap diye bişey var, amele gibi css media query yazman gerekmiyor dedi. ana dedim o neymiş lan, hemen gidip öğreneyim. hemen kurslar bilmem neler falan, abi çok güzel bir şey, çabuk proje çıkartmak istiyorsan birebir. çoğu şeyi cart diye halledeceğin ve akılda kalması çok kolay bir kütüphane. öğrenmeden geçmeyin, çok lazım olacak.

peki, html5-css3-bootstrap yaptık. çok tatlı projeler yazıyoruz, gördüğümüz hemen her şeyi yazabilir hale geldik. bunu kısa zamanda nasıl yaptık? çok proje ile. ama bir sorun var, hiçbir şey dinamik değil. yani buton var ama o sana bakıyor sen ona. tıklıyorsun hiçbir şey olmuyor. e nasıl olacak abi? javascript ile...

başladık javascript'e. 1 hafta bitti eğitimler ile. sonra dedim ki abi buraya kadar güzeldi ama yolun sonu gözüktü bana. beni ne yaparsınız bilmem ama ben bunu öğrenemem dedim. açık konuşmak gerekirse hala tam anlamıyla öğrenebilmiş değilim :))


peki neden?

çünkü bana göre javascript yazması zor bir dil abi. bir tane harfin büyük veya küçük olması, bir tane virgül, bir tane süslü parantez komple kodunu çöp ediyor. önce syntax alışmak lazım. sonra döngüleri, fonksiyonları, ve data tiplerini öğrenmek lazım, sonra sonra sonra sonra.....

çok fazla şey var. bir dili öğrenmek ingilizce/almanca falan öğrenmek gibi bir şey. ilk başlarda hiçbir şey anlamayacaksın, çok normal, sonra yavaşça yazılan kodu anlamaya başlayacaksın, gözün alışacak ve en son da kendi kodunu yazmaya başlayacaksın ki bu da en uzun ve acılı sürecin sonunda olacak. neyse, dönelim başa.

javascript ilk kurs bitti, anlamadım. ikinci kurs bitti, anlamadım. dedim ki öğrenme şeklim yanlış. üçüncü kursu not defteri ile yazarak bitirdim, yine anlamadım. dedim ki gerizekalıyım. dördüncü kursu hem not defterine yazarak hem her gördüğümü not alarak yazdım. ezber yapmayın dediler, oturdum ezber de yaptım ama hala anlamadığım, kafamın basmadığı yerler vardı. bunlar yazarak alıştığım veya hala alışamadığım yerler çünkü artık js'yi az kullanıyorum, buna da daha sonra değineceğim.

nasıl css ile hayvan gibi proje yapmak lazımsa, js için de aynısı geçerli. aslında bu kadar basit. gidin en basitinden en artık yapamıyorum dediğiniz yerine kadar js ile uğraşın ama vanilla js bilmeden herhangi bir kütüphaneye atlamayın. ben hiç react öğrenmedim, hiç vue dersi almadım, hiç angular çalışmadım çünkü hala js iyi seviyede değil. ha şu var, yazamıyorum ama bir şekilde benden istenen şeyi bulmayı öğrendim. yapmayı öğrendim, bu da başka bir yazının konusu. özetle, ya artık tamam dediğiniz yere kadar react falan atlamayın, paşa paşa geri döneceksiniz çünkü.

neyse, ben buraları atlıyorum, kendi yolumda ne yapıyorum oradan devam edeyim. uzadıkça uzuyor çünkü konu hep.

ne yapmıştık?

- html5,
- css3,
- bootstrap,
- javascript.

sonra, tanıdıklarımdan biri vanilla js'in zor geldiğini fark edince bana jquery öğrenmemi tavsiye etti. lan oğlum, bootstrap ne kadar kolaysa bu jquery'de de o kadar kolay geldi js yazmak. artık 5 satırda yazdığım kodu 2 satırda yazabiliyorum karman çorman değil ortalık. kullanımı azalmış, yok jquery mi kalmış falan diyenlere bakmayın abi. js öğrenmek ya da en azından anlamak istiyorsanız bence react falan öğrenmeden önce jquery öğrenin. en azından nasıl çalıştığına hakim olun. bunlar kağıt üzerinde birbirine benzemiyor ama mantığı öğrenmek zorunda kalıyorsunuz.

jquery ile işleri biraz daha güzel hale getirdik mi? getirdik. artık butonlarla mal gibi bakışmıyoruz en azından :) tıklayınca laf dinleyen şeyler yaptık mı yaptık ama bir sorun var abi. mesela ben blog yazmak istiyorum, benim gibi öğrenme yolunda olan insanlarla bir şeyleri paylaşmak istiyorum ama html css ve js bunu yapmama yetmiyor dediler. dediler ki, back end diye bişi var. hay a... abi bitmiyor mu bu yolculuk? bitiyor bitiyor dinle lol.

php... gittim kurs aldım, yarısında aslında js ile aynı şeyler gibi geldi. bakın o kadar malım ki her yazılım dili apayrı falan sanıyorum hala. lan oğlum fonksiyon, döngü bilmem ne her dilde benzermiş, syntax değişirmiş ama dilin temeli değişmezmiş diye öğreniyorum. sonra sıkılıyorum. daha da sıkılıyorum ve php'ye değil python'a devam etmeye karar veriyorum. orada aklımı çelen bir şey var çünkü, ismi django...


front-end macerası bende böyle

eksik-gedik, tonla şeyin olduğunun farkındayım. belki yeni başlayacak birileri olursa bir şeyler sormak isterlerse veya benden tecrübeli birilerinin önerileri olabilir diye yazmak istedim, bu hesabı da adım soyadım ile birlikte anonim olmayacak şekilde kullanacağım. bu yüzden gidip 1300 tane entry'i silip hesabı başa sardım. öğrendiğim şeyleri hep çok hoşuma giderek öğrendim, 6 aydır neredeyse her gün en az 5-6 saat ekran başındayım, dersi bırakınca oturup okuma yapıyorum, milyar tane şey var ve sonsuz uçsuz bucaksız kodlama dünyası. ben biliyorum diyenin aklını alacak şeyler var. neyse, başladık bakalım yazmaya da, takip etmek isteyen veya sorusu olan her zaman yazsın, tavsiyelere de açığım, birlikte gelişelim :)

bu zamanda bazı github repolarım da oldu-öyle ahım şahım şeyler yok daha-, benden tecrübeli arkadaşlar da bakıp değerlendirmek isterse seve seve dinlerim :)

lütfen, hem yazıyı hem de kodlarımı değerlendirirken daha 6 aylık olduğumu unutmayın. buraya kadar okuduysanız teşekkür ederim bundan sonra öğrendiğim şeyler ilgili bir sürü şey yazacağım, bu ilk oldu.

hepimize başarılar :)

https://github.com/bkaan7