29 Haziran 2014 Pazar

Bilgisayar Mühendisliğine Ne Kadar Hazırsın?

Bilgisayar mühendisleri adayları için hazırladığım yazı. Yazı bilgisayar mühendisliğiyle ilgili teknik olaylara girdiği için biraz karışık olabilir bu yüzden dikkatli okuyun. Anlamadığınız yeri bana sorabilirsiniz. Unutmayın, bu yazı geleceğinizle ilgili önemli bir karar vermenizi sağlayabilir. O yüzden bu yazıyı ciddiye alın.

Not: Yazıda hata bulursanız lütfen beni uyarın.

Dikkat! Bu yazı Bilkent Üniversite Bilgisayar Mühendisliğinde 2.sınıfa henüz geçmiş bir öğrenci tarafından yazılmıştır. Bu yazı bilgisayar mühendisliğinin iş olanakları ve mezuniyetten sonra yaşayacakları vs. üzerine yazılmış bir yazı değildir, öyle olursa piyasadan habersiz bir kimse tarafından yazılmış olur ve dolayısıyla güvenilir bir kaynak olmaz. Bilgisayar mühendisliği tercih edecekler önce bu konu üzerinde düşünsün ve araştırsın. Ben, ne yalan söyleyeyim, bu tip şeyleri çok araştırmadım. Yazılımsız bir hayat düşünülemez, dolayısıyla "Türkiyede bilgisayar mühendisi asla iş bulamaz." gibi dogmatik düşüncelere katılmıyorum, illa birileri iş bulacak ve benim bölümümdekiler de ilk iş bulanlar olacak. Ama belli üniversitelerin alt seviyesindeki üniversitelerden mezun olan kişiler benim kadar şanslı olabilecek mi? Kendilerini tatmin edecek bir iş bulabilecekler mi? İşte bunu araştırmak size kalıyor.

Benim görüşüme göre, eğer bir kişi bu bölümü okumaktan zevk alırsa geleceği de parlak olur. Dolayısıyla ben okulda ne yaptığımızı yazdım, kısa bir ders yayınladım ve "kendini geliştirme" gibi bazı konulara açıklık getirdim.

Bir şeye dikkat çekmek istiyorum; bilgisayar mühendisliği gerçekten sevilebilir bir bölüm/meslek. Daha ilk senesinde androide multiplayer oyun çıkaran arkadaşlarım oldu. Adamlar hiçbir şey bilmiyordu, biraz okuldan öğrendiler biraz kendileri öğrendiler. Ve şimdi risk+bil ve fethet karışımı bir oyunları var. Müthiş. İşte bu şekilde meraklı ve çalışkan kişilerin geleceğinin parlak olacağından şüphem yok. Sorun şu ki siz meraklı+çalışkan olabilecek misiniz?

*

Öncelikle şu yazıyı okuyun:

http://www.ceng.metu.edu.tr/~ucoluk/bm/

(Meraklısı için burada da epey güzel bilgiler var. "Yahu ne yapıyor bu bilgisayar mühendisliği?" diye kendi kendinize soruyorsanız buradan cevabınızı alabilirsiniz:

http://www.ceng.metu.edu.tr/~ucoluk/bm/#Bilgisayar Mühendisliği)

İlk verdiğim yazı epey bir sorunuza cevap olmuştur. O yazıda dikkat çekmek istediğim birkaç nokta var:

Ücretler: Ben tercih zamanı bu yazıyı ilk okuduğumda ücret konusunda tatmin olmamıştım açıkçası. Ama gerçek dünyaya dönmekte yarar var. Mezun olduğunuzda patronların size 8-9 bin teklif etmesini beklemeyin. Aynı, üniversitede kızların teklif etmesini beklememeniz gerektiği gibi. Geçen gün bana bilgisayar mühendisliği konusunda danışan bir arkadaşa hiçbir zaman işe 8-9 bin lirayla başlayamayacağını, bunun için bir 8-10 sene iş tecrübesine ihtiyacı olduğunu yazdım. (Bu bilgi sallama, ama benim tercih yaparken okuduklarım bu minvaldeydi.) O da bana "O zaman 15 bininci olup tıp yazarım, ezberlerim, tusu bir şekilde geçerim mühendislikteki gibi çile çekmem paramı alırım vs." buna benzer bir şeyler dedi. Şimdi arkadaşlar diyorum ya gerçek dünyaya dönmek lazım diye. Öyle tıpı kazanır, dersleri geçerim tusu kazanırım asarım keserim olmuyor öyle. TUS dediğin sınav = 10000 x YGS. YGS TUS'un önünde diz çöker tövbe ister. YGS İspanya'ysa TUS Hollanda'dır. Üstelik de TUS'u bitiren doktor 30 yaşındadır ve yine ne kadar alacağı görecelidir. İnternette birinin bilgisayar mühendisi veya doktor halasının/amcasının/yedi göbekten yeğeninin altında ferrari olduğunu okuyabilirsiniz ama hayat sizin için o kadar toz pembe olmayabilir. Böyle diyorum çünkü tercih döneminde aynı ikileme ben de düştüm. Ağabeyim İTÜ denizcilikten mezun, bilgisayar mühendisine göre de, doktora göre de fazla para kazanıyor. Üstelik geziyor. Her limanda bir sevgili. 6 ay çalışıp 6 ay yatabiliyor. Ne kadar güzel değil mi? Fakat adam mesleğine küfrediyor. Üzerine çok sorumluluk bindiğinden yakınıyor. Gemide kendine ait boş zamanını anca yatmaya ayırabiliyormuş. Bir kere de Somalili korsanlarla karşılaştı. (Ama bir şey olmamış.)  Bu sene KPSS'ye hazırlanıyor kurtulmak için. Bana tercihler konusunda dediği şey: "Sen anneme babama bakma. Onların gözünde doktorsun. Ama okurken ve çalışırken ne çektiğini ancak sen bilirsin."

Uzun lafın kısası: bu mesleği tercih ederken paraya bakmayın. Severek okuyacak mısınız, işinizden biraz olsun zevk alabilecek misiniz ona bakın. (Yani paraya da bakın ama asıl sebebiniz bu olmasın, para kazandıran tek meslek bu değil sonuçta.) Tercihinizi ona göre yapın. Bu mesleğe ilginiz varsa ve programlama ve bilgisayar mühendisliğinin çalışma alanları konusunda bilgi sahibiyseniz, eee, zaten çoktan bu bölümü yazmaya kafayı koymuşunuzdur ve dolayısıyla bu yazıyı zaman geçirmek için okuyorsunuz. Fakat biliyorum ki bu yazıyı okuyanların %99'u bilgisayar kullanmayı seviyor, bir şeyler üretmek istiyor, mühendislik seçmek istiyor ve bilgisayar mühendisliği kalbine en yakın geliyor. Fakat "kod yazmak" dışında ne yaptıklarından bihaber. "Eeee?" diyor kendi kendine. "Koca mesleğin olayı bilgisayarda kod yazmak mıdır? Öyleyse dışarıdan öğrenilemez mi? Veya bu mesleği zor, mezunlarını değerli yapan nedir? Bu microsoft çalışanlarını neye göre seçiyor madem herkes kod yazabiliyor?" Hah işte bu tip sorular kafanızı kurcalıyorsa tekrar hatırlatayım, doğru yazıyı okuyorsunuz.

Ha bu mesleği sevmeden yapabilir misiniz? Evet. Meslek meslektir sonuçta, dünyada herkesin üzerine düşeni yapması gerek, sevse de sevmese de. Açıkçası sevdiği için çöpçülüğü seçen biri olacağını sanmıyorum. Sevmeden yapan bir kişinin düşüncelerini de paylaşayım, gayet güzel yazmış:
https://eksisozluk.com/entry/8053110

ODTÜ'nün yazısındaki başka bir önemli nokta ise şu:

Bilgisayarımda XXX çalışmıyordu, tanışım bir bilgisayar mühendisinden yardım istedim, çalıştıramadı, başka birisi ise geldi, birşeyler yaptı, sorun çözüldü. Nasıl bilgisayar mühendisi bu?

Arkadaşlar bizim ders programında "Şu hata nasıl çözülür? Windows mavi ekran verirse ne yapmalıyız?" tarzı bilgiler içeren bir ders yok. Varsa benim haberim yok. Peki bu tür konularda nasıl bilgi sahibi olacağız?

Cevap: Google!
Google bir bilgisayar mühendisinin en önemli silahıdır arkadaşlar. Google kullanabilen bilgisayar mühendisi her şeyi bilebilir. Fakat bilmek ister mi?

Dönem projesi yaptık geçende 4 arkadaş. (Bu konuda yazının en sonunda bahsettim.) Ben müzik koymayı öğrendim ve projeye koydum, oyundayken bilgisayarın içindeki bir text dosyasına yazı yazmayı öğrendim. Bunun gibi birkaç tane okulda öğretilmeyen şeyi öğrenip, birçok sorunla karşılaşıp hepsini çözüp projeye uyguladım.

Gruptaki 2 arkadaşa ise bir kutu üzerinde başka bir kutunun gözükmesini sağlayan bir hazır kod sayfası attım.
"Bununla da siz uğraşın." Adamlar onunla saatlerce uğraştılar. 2 kişi kod açıklamasını isteksizce okuyup deneme yanılmayla dediğim olayı yapabildi.
(Hazır kod şu: siz kod yazarken her şeyi kendiniz yazmazsınız. Bazı şeyler ya çok üstdüzey programlama bilgisi gerektirdiği için ya da kullanıcılara kolaylık olsun diye internette paylaşılır. Örneğin Unreal engine, cry engine gibi "fizik motoru" denen şeyleri duymuşsunuzdur. Hah işte bunlarla oyun yapmak için yine bol kodlama gerekir. Fakat bu fizik motorundaki "fizik" kısmı fizik motorunu yapan yapımcılar tarafından önceden yazılmıştır. Atıyorum unreal engine'e yani fizik motoruna bir bina yerleştirdiniz. Binanın çatısına bir adam yerleştirdiniz. Adam binadan atlarsa yerçekiminin onu nasıl etkileyeceği, ne hızla düşeceği ve düşme hızının ivmeden kaynaklı ne kadar artacağı. İşte bunları siz yazmazsanız. Bu bir "hazır kod" örneğidir.) 

Şimdi burada arkadaşlarıma laf mı giydirmeye çalışıyorum? Hayır. Olay şu: adamlar elektronikçi. Verilen ödev grafikli arayüz üzerine. Yani elektronikçiler için gereksiz. Dolayısıyla adamlar öğrenmeye isteksiz. Verdiğim hazır kod ise öğrenmesi zor çünkü açıklamalar upuzun. Tüm gece onunla uğraştılar. Bu olaya gerekli gözüyle bakıp motive olsalardı çok daha kısa zamanda işi kapabilirlerdi.

Burada söylemek istediğim şey ise şu: Google'da herbir şeyin bilgisi var. Bilgisayar mühendisi olacak insan ise ihtiyacı olan bilgiyi google'dan bulup uzun İngilizce metinleri (Türkçe her zaman yetersiz kalır.) sabırla okuyacak ve uygulamasını yapacak. Uygulama safhasında ilk testlerde hep hata çıkar. Gerek deneme yanılmayla, gerek de o bulduğu hazır kodla ilgili başka kaynaklar tarayacak internetten. Öğrenme safhası sıkıcıdır. Kimi zaman eğlenceli olduğu da olur tabii. Örneğin ben 14 yaşındayken RPG Maker motorundan kendi kendime oyun yapmayı öğrenmiştim hatta yapmıştım. Gayet de iyi bir oyundu. Fakat orada çalışmalarımın sonucunu hemen görebiliyordum. Yani çok çabuk "geri-bildirim" alıyordum ve aldığım olumlu sonuçlar beni daha da istekli hale getiriyordu. Fakat geri-bildirim olayını yani olumlu sonuçları hemen görmüyorsanız ve öğrendiğiniz şey zor ve karmaşıksa öğrenme safhası sıkıcı ve uzun olabiliyor. Şu an okuduğum kitap "Head First Design Patterns". 600 sayfa. Gayet uzun ve pratik ve sonuç-veren geribildirimli kısımdan önce epey yol gitmeniz gerekiyor. Ve inanmayacaksanız ama bu kitabın kodlamayla hiçbir alakası yok? Bu kitabı okuyunca daha iyi kod yazmaya başlamıyorsun, problemleri daha kısa zamanda çözmüyorsun. Peki nedir bu kitabın kerâmeti? Bu kitap size tasarım kalıplarını öğretiyor. 600 sayfanın içinde 10 tane tasarım kalıbı var. Hepsini bilmek gerekiyor ki yapacağımız program için en uygun olanına karar verebilelim. (Eğer doğru tasarımı yaparsak, yapacağımız program daha sağlıklı ve uzun ömürlü olur.) Düşünsenize! Bir program yapmak istiyorsunuz. Programın en yapacağını, arayüzünü falan tasarladınız kağıt üzerinde her şey var. Fakat kodu da tasarlamanız gerekiyor! Kodu tasarlamaktan gram kod yazamıyorsunuz! En uygun kod tasarısını bulmak için tasarım kalıplarını bilmeniz gerekiyor ve bunun için de önce 600 sayfalık bir kitap okumak zorundasınız. Daha sonra sizi uzun ve yorucu günlere sevkedecek olan programlama kısmına geçebilirsiniz. İşte sıkıcı ve uzun öğrenme safhasından kastım bu. Peki bu kalıplar okulda öğretilmiyor mu? diye sorarsanız bize okulda bir tane tasarım kalıbı gösterildi. Fakat iyi bir programcının daha fazla kalıp bilmesi gerek.

Gösterilen kalıbın adı "Model View Controller". Bunun ne olduğunu açıklayayım, kod yazma prensipleri hakkında ilk bilgilerinizden biri olsun.

Model-View-Controller üç kısımdan oluşuyor. Model verileri ve hesaplama fonksiyonlarını tutan kısım. View yani görüntü, kullanıcının gördüğü kısım. Bu ikisi arasında bir bağlantı yok yani birbirini etkileyemiyorlar. Controller adından da anlayacağınız üzere bu ikisini kontrol ediyor, yani değiştiriyor. Örneğin bir hesap makinesi yapıyoruz. Modelin içinde "toplama", "çarpma" gibi fonksiyonlar var. View'ın içinde bir kutu var, üstte beyaz ve boş bir kutu var. Altta kutular var ve kutuların üzerinde rakamlar yazıyor. Tuşlar yani. Controller'da ise "dinleyici" ismi verilen şey var. Bu dinleyici kullanıcının bastığı tuşu algılıyor ve controllera rakamı depolattırıyor. Kullanıcı çarpma tuşuna basıyor. Controllerdaki dinleyici "aha çarpacak" diyor. Kullanıcı tekrar bir rakama bastığında controller depoladığı rakamları modele gönderiyor ve modele "Model kardeş senin içinde bir "çarpma" fonksiyonu vardı hani.." diyor. "Sana zahmet şu iki rakamı çarpıp sonucu bana söyler misin?"  diyor. Model de "Hay hay." diyor ve controllera sonucu gönderiyor. "Başka bir isteğin var mı?" diye soruyor. Controller da "Model kardeş bir de rica etsem Pembe Mezarlığı çalabilir misin?" diyor. Model de "Defol buradan iğrenç liseli!" diyor. Neyse tamam kötüydü. Bundan sonra controller sonucu alıyor ve viewa gönderiyor. View'a diyor ki "Bak kardeşim bu kullanıcının istediği sonuç. Bunu yayınlama fonksiyonunu kullanarak yayınla." View sonucu alıyor ve yukarıdaki boş kutuda yayınlıyor. Hesap makinesinde girdiği iki rakamın çarpımının belirdiğini gören kullanıcı... bön bön bakıyor zil takıp oynayacak hali yok ya :)

Toparlarsak şu: hesap makinesinin içinde hesap yapmaya yarayan çip var. Bu model. View ise bizim dışarıdan gördüğümüz, üzerinde rakamlar yazan ince kutu. Controller ise tuşların altındaki dedektörler. Hesap makinesinin nasıl çalıştığını biz bilmeyiz, sadece tuşa basıp hesap yapmayı biliriz. Aynı şekilde, MVC kullanan bir programda da sadece view kısmı kullanıcıyla haşır neşir olur. Model ve Controller programcıya özeldir.

Not: Controller nasıl depo yapıyor? Model nasıl çarpıp controllera gönderiyor? Bunları şu anlık bilmenize gerek yok arkadaşlar. Yukarıdaki yazıyı bunları bilmeden de anlayabilirsiniz. Bilgisayar mühendisiyken çok kez "nasıl çalıştığını bilmediğiniz ama sonucunu bildiğiniz" şeyleri kullanacaksınız. En bariz örnek bilgisayarın ta kendisi. Şu an bu yazıları yazarken klavyenin harfleri nasıl tanıdığını ve bunu bilgisayara nasıl gönderdiğini bilmiyorum. Tek bildiğim şey "view" ve onu nasıl kullanacağım. Controller ve model bilgisayarı yapan elektronikçiye kalmış.

Model-View-Controller'ın ne olduğunu öğrendiniz... Bunu öğrenmesi sıkıcı mıydı? Bu oldukça kısa ve öz, hap bilgiydi. Model-View Controller'ı gerçekten öğrenmeniz için size ahanda şu an okumakta olduğunuz blog yazısı kadar bir yazıyı okumanız gerekebilir. Tabii sonra pratik yapmak için birkaç tane program yazmanız gerek. Tüm bunları okumak ve öğrenmek sıkıcı geldiyse bilgisayar mühendisliğinden vazgeçin demeyeceğim. Çünkü yaz ayındasınız, sınavdan yeni çıktınız, oruçlu olabilirsiniz. Okumak ve öğrenmek her meslekte mevcut. Asıl olay siz bu şeyleri okuyup iyice anladığınızda "Ben azimliyazarın öğretmeye çalıştığı şeyi anladım ve şimdi biraz bilgisayar mühendisliği konusunda bilgi sahibiyim. Tüm bunlardan çıkardığım sonuç şu: Ulan benim ne işim var burada? Kod tasarımı ne ulan? Ömür geçer mi bunlarla. Benim makine yapmam lazım, robot yapmam lazım. Ben dünyaya kod tasarlamak için gelmedim gardaş..." diyor musunuz? Bunu dürüst bir şekilde demek için yazının tamamını okuyun.

Bulmaca 1 : Yukarıda Model-View-Controllerı anlatırken View-Controller ilişkisinde atladığım bir kısım var. Eğer programı yukarıdaki gibi yazarsam çalışır, ama gerçek bir hesap makinesi gibi çalışmaz. Bakalım bu hatayı bulabilecek misiniz? Hesap makinesinin çalışma prensibini düşünün.

*

Özetlersek ODTÜ'nün yazısından yola çıkarak iki şeyden bahsettim.

1- İşinizi sevecekseniz gelin. Dolayısıyla bölümü okumayı sevecekseniz gelin.

2- Öğrenmeyi sevecekseniz gelin. Bir ömür boyunca google taraması yapmayı, araştırmayı göze alacaksanız gelin.

Bu bölümü okumayı & araştırma yapmayı sevip sevmediğiniz konusunda bu yazıdaki MVC kalıbı olayını okuyarak biraz bilgi sahibi olmuşsunuzdur.

*

Şimdi diğer bir başka yararlı siteye gelelim.
http://www.bilgisayarmuhendisleri.com/

Bu site oldukça güzel. Bu sitede ufkumu açan ve bilgisayar mühendisliğinin oldukça zor olacağını gözler önüne seren harikulade bir kavram var: "Patlak mühendis."

Nedir patlak mühendis? Kısaca şu "kendini geliştirmeyen", üniversiteyi sadece "dersleri geçmekle" geçirmiş, mezun olduğu halde kodlama yazamayan mühendis.

Özellikle burada çok iyi açıklamış admin reis: http://www.bilgisayarmuhendisleri.com/sayfa.aspx?s=165

Bakın arkadaşlar en alta, patron diyor ki bana "ananas seviyor musun?" diye soru soran program yap. Patlak mühendis patronun dediğini aynen yapıyor veya tam yapamıyor. Asıl sorun şu, ya patron program üzerinde önemli değişiklikler yapmak isterse? Örneğin atıyorum counter strike oyununa kılıç kalkan koyduğunuzu düşünün. Eğer counter strike oyununu patlak mühendisler yazsaydı kılıç kalkanla yapılacak tek şey düşmana 500 metreden ateş etmek olurdu ki bu da saçma olurdu. Super Mario'yu düşünün. İlk oyunda Super Mario uçamıyordu. Dolayısıyla yapımcılar oyunu sadece monitöre sığacak yükseklikte yaptılar. Patron geliyor, Mario'yu uçurun diyorlar. Programcılar şaşkın çünkü hiç bunu düşünmemişler. Kameranın yukarı doğru kayması var. Yer çekimini marionun uçmasına göre ayarlamak var. Maksimum yüksekliği ayarlamak var. Var oğlu var. İşte bilgisayarmuhendisleri sitesinin admini diyor ki patlak mühendis eklenebilecek özellikleri düşünmeden programlama yaparlar. Dolaysıyla yeni bir özellik ekleneceği anda eski versiyonu ya silmek gerekir ya da çok büyük bir kısmını değiştirmek.

Tasarım kalıplarının önemini anlatırken "daha sağlıklı ve uzun ömürlü" programlar yazarsınız demiştim hatırlarsanız. Hah işte kastettiğim bu. Patlak mühendis bunları bilmediği için kullanamaz. Dolayısıyla yeni bir şey ekleyeceği zaman tüm sistemin dengesi bozulur, program uzun ömürlü olmaz. Ama örneğin programa Model-View-Controller ekleyen mühendis varolan programa yeni bir View eklenmesi gerektiğinde yapacağı şeyler sadece o yeni View'u yazmak ve Controller'a o yeni bir viewla ilgili küçük bir parça kod yazmak olur. Modella View arasında bağlantı olmadığı için Model'a dokunmaya gerek kalmaz. Bu kısım biraz karışık gelmiş olabilir, anlamadıysanız aşağıda sorabilirsiniz.

Programcıları "patlak mühendis" olmadığı çok bariz olan oyunlar Skyrim, Mount&Blade, Medieval Total War gibi mod sistemini destekleyen oyunlar. (Gerçi hiçbir kaliteli oyun patlak mühendisler tarafından yazılmıyor. Ama bu oyunlardaki modül sistemi apaçık bir kanıt olduğu için örnek verdim.) Bu adamlar öyle bir ayarlama yapıyorlar ki oyunun kaynak kodunu yani kendi yazdıkları kodu vermiyorlar. Size verdikleri kısıma siz düzenleme yapıyorsunuz ve bu kısımdaki düzenlemeler kaynak kodu değiştiriyor, fakat bu değişikler kaynak kodda hasara yol açmıyor dolayısıyla oyun sessiz sedasız çalışmaya devam ediyor. Bu adamlar önceden buna uygun bir tasarım kalıbı kullanıyorlar.

Patlak mühendis olmayıp çok okur, çok araştırır, çok programlarsanız orta seviye üniversitelerden de iyi yerlere gelebilirsiniz. Alın bakın Hacettepe'den Microsoft'a:
http://www.bilgisayarmuhendisleri.com/sayfa.aspx?s=92

Kendini geliştirmekle ilgili yazıları: http://www.bilgisayarmuhendisleri.com/sayfa.aspx?s=178

Bu sitedeki makaleler gayet iyi. Yalnız bence admin üniversite seçimi konusunda fazla idealist davranıyor. "İstanbuldan başka bir yeri seçmeyin, sektörün kalbi oradadır, hem ek iş yaparsınız." gibi doğru şeyler söylüyor. Yani teorikte doğru. Pratiğe gelince söylemeliyim ki İstanbul "dikkat dağıtıcı" bir şehir. Abim gezmekten eve uğramıyordu öyle söyleyeyim. Epey para yiyen bir şehir. Bu yüzden üniversite seçimi yapacak kişiler idealist takılırken bir yandan da kendi bütçesine baksa ve insan olduğunu unutmasa iyi olur. Adminin tanımladığı gibi İstanbul'u sektöre hazırlanmak için kullanan mühendis adayının sayısının fazla olduğunu düşünmüyorum.

Bu sitedeki diğer "patlak mühendislik" yazılarını okuyun. Burada listelenmiş:
http://www.bilgisayarmuhendisleri.com/sayfalar.aspx?k=15

ODTÜ'nün yazısını yorumlarken bu mesleği seçecek kişilerin bu bölümü sevecek ve aynı zamanda üşenmeden araştırma ve google taraması yapacak + bir de bunları sabırla okuyup uygulamaya dökecek nitelikte olması gerektiğini iddia etmiştim. Yazımın bu kısmında ise böyle olmayan (bölümü sevse de sevmese de, araştırmayan, okumayan, vaktini boşa harcayan) kişilerin "patlak mühendis" olduğunu ve patlak mühendis/hakiki programcı farkını gördünüz. (Tabii eğer attığım linkteki diğer yazıları okumadıysanız göremediniz, okuyun arkadaşlar. Bilgisayarmuhendisleri sitesinin admini önemli noktalara zaten parmak bastığı için ben yazının bu kısmını kısa tuttum.)

*

Şimdi gelelim bölümde ilk sene yapacağınıza. Yani programlamayı öğrenmeye.

Size çok basit bir iki şey öğreteceğim. Sonra sizi bir soruyla test edeceğim.

İlk olarak kod yazmak / programlamak nedir ondan başlayayım. Kod yazmak yazı yazmaktır.
Kod yazarken yaptığınız şey kullandığınız dilin prensiplerine uyarak aklınızdaki şeyi bilgisayara yapmaktır. Yani Matematiksel bir yabancı dili kullanmaktır diyebiliriz. Her kod yazabilen kişi iyi bir programcı değildir, tıpkı her yazı yazabilen kişinin iyi bir romancı olamayacağı gibi. Burada önemli olan o "aklınızdaki şey"dir. Yani algoritmadır.

Peki algoritma nedir?

Algoritma: "eksiksiz olarak takip edildiğinde, önceden belirlenmiş bir işi sonlu zamanda gerçekleştiren sonlu sayıda komutlar topluluğu"

Bu tanımı ekşi sözlükten aldım, daha teknik bir tanım yapmak istemedim. Algoritma şu: patron size bir program yazmanızı istendi. Dedi ki  "Bir sayı tek mi çift mi onu kontrol eden bir program yaz." Siz önce bunu nasıl yaparım diye düşünüyorsunuz, sonra adım adım yapmanız gerekenleri yazıyorsunuz. Patron fazla detay vermediği için programı farklı şekillerde de yapabilirsiniz, bu konuda özgürsünüz. Ama yapacağınızı adım adım yazdığınızda muhtemelen şu minvalde bir şey olacak:

1. Kullanıcıdan bir sayı al. (Bu patron tarafından belirtilmemiş ama içgüdülerimize güvenerek burayı ekliyoruz çünkü tek mi çift mi kontrol etmek için bir sayıya ihtiyacımız olacak.)

2. 2'ye böl, kalanı bul/depola ve kontrol et.

3. Eğer kalan 0'sa
          Ekrana "Çift" yaz.
    Eğer kalan 1'se
          Ekrana "Tek" yaz.

4. Kullanıcıdan başka bir sayı iste.

Algoritma bilgisayar mühendisliğine has bir şey değil. Matematiğe has. Milattan önce 300 sene önce yaşamış Öklid'in bulduğu ebob hesaplayan "Öklid algoritması" birçok programlama ve matematik kitabında yer alır. E adam ne bilsin 2200 sene sonra bilgisayar diye bir dalganın icat edileceğini? Meraklısı için Öklid algoritması:
https://eksisozluk.com/euclid-algoritmasi--357583

İşte "Bilgisayar mühendisliği matematik ulan!" diyip duruyorlar ya o buradan geliyor. Bizim yaptığımız şey aslında bir problemin çözümünü bilgisayara yazdırıp sonucu bilgisayara buldurtmak. Lise matematiğinin aksine, biz çözümü yapıp sonucu bulup sınavdan 10 almıyoruz. Çözümü bilgisayara anlatır gibi kağıda yazıyoruz. Onu kontrol ediyorlar. 2x^3 ün türevini alacaksınız örneğin. Bilgisayara diyorsunuz.

1- Üstü başa düşürüp katsayıyla çarp.
2- Üstten bir eksilt.

Hah işte algoritma bu. Bu algoritmayla 6x^2 doğru cevabına ulaşırsınız. Fakat 1.adım ve 2.adımın yerlerini karıştırırsanız, yani önce üstten bir eksiltip sonra üstü başa yazarsanız, cevap 4x^2 çıkar bu da hatalı bir algoritma doğal olarak hatalı bir kodu doğurur.

(Ekleme: Bilgisayar mühendisliğinin matematikle bu bağlantısından dolayı bilgisayar mühendisleri epey bir matematik dersi görecek. Calculus (türev-integral-seriler) , ayrık/sonlu matematik (olasılık, bağıntılar, fonksiyonlar), lineer cebir, istatistik vs. Bizim bölümde zorunlu olarak okutulan 5 matematik dersi var. Anlayacağınız dışarıdan programlama öğrenen sertifikalı mühendislerin epey bir matematik kursuna gitmesi gerekiyor.)

Algoritmanın ne anlama geldiğini pratik olarak öğrendiniz sanıyorum. Özetle bir işin yapılması için adım adım yazılan küçük işler diyebiliriz. Ekşi sözlük tanımında "sonlu" demesinin sebebi eğer bilgisayar sonsuz iş verirseniz o da sonsuza kadar çalışır dolayısıyla siz de sonucu asla göremezsiniz en fazla bilgisayarın vereceği mavi ekranı görürsünüz. O yüzden sonlu deyip durmuşlar.

Algoritmayı belirledikten sonra uygun dile çevirirsiniz yani işin kodlama kısmını yaparsınız. Bunu yaptıktan sonra çıkan hataları düzeltirsiniz. Test edersiniz doğru çalışıyor mu diye.

Normalde matematik ve genel bilgisayar kitaplarında algoritmalar "pseudo code" adlı sahte kodlarla verilir. Bu sahte kodları okuyan okuyucular başka dillere uyarlayabilir. Fakat ben yazımda bu olaya girmeden öğreteceğimi direkt Javayla öğreteceğim.

Önce şu ifade (statement) ile başlayalım.

int elmaSayısı;

(Sondaki ";" javaya has bir şey, bir ifadenin bitişini gösteriyor. Cümlenin sonuna nokta koymak gibi bir şey. Önemsiz yani)

Bu javadaki en temel ifadelerden. Yaptığı şu: elmaSayısı diye bir değişken (variable) belirliyor. Matematikteki x yani. Baştaki "int" kelimesi bu değişkenin yani elmaSayısının sadece "Tam sayı" tutacağını belirtiyor. Yani burada yaptığımız şey şu; bilgisayara diyoruz ki hacı bir değişken üret. Ürettiğin bu değişkenin adı elmaSayısı olsun. Bu elmaSayısı sadece tamsayı tutsun. Yani elmaSayısı 1 , 2, -5 , +2323 filan alabilir. 1,5 (15/10) değerini alamaz.

Bunu deyince bilgisayar hafızasından bir bölümü elmaSayısı değişkeninin tutacağı değerin yani sayının kaplayacağı alan için rezerv ediyor.

Şu anda elmaSayısı bir değer tutmuyor. Tanımsız. Yani elmaSayısını başka bir değerle toplamaya çalışırsak bilgisayar hata verir. Bir değer atamak için ise şunu yapıyoruz.

elmaSayısı = 5;

Bunu diyince elmaSayısı içinde 5 yazan bir kutuya sahip oldu. Yani demek istediğim elmaSayısı direkt olarak 5'e eşit demek değil. Sonradan canımız isterse "elmaSayısı = 7" yazarak değiştirebiliriz elmaSayısı'nın tuttuğu değeri değiştirebiliriz çünkü. İkisi ayrı şeyler.

Şu ana kadar yazdığımız kodlar:

int elmaSayısı;
elmaSayısı = 5;

Bu iki satırı tek satırda da yazabilirdik. Yani:

int elmaSayısı = 5; diyebilirdik.

Resim üzerinde göstereyim:



Yani yaptığımız şey Matematik dersinde yaptığımız "x'e 5 diyelim." olayının aynısı. Burada "elmaSayısı'na 5 diyelim." demiş olduk.

Değişkenin ismini neden "elmaSayısı" koydun? Neden elma sayısı değil?
Program yazarken bazı görünmez kurallar var, görgü kuralı gibi bir şey. Bir kurala göre birden fazla kelimeden oluşan değişken isimleri birleşik yazılır ve birinciden sonra gelen kelimelerin baş harfi büyük yazılır. Ben de bu kurala uydum. (Yalnız şunu da söyleyeyim, bir değişkene isim verirken araya boşluk koyamıyorsunuz, yani "elma sayısı" hata veriyor. elma_sayısı yazabilirsiniz, ELMASAYISI yazabilirsiniz fakat bunu yazarsanız bana hakaret etmiş olursunuz ehehe.)

Şu ana kadar yazdığımız kod:

int elmaSayısı;
elmaSayısı = 5;

Şimdi bir de armutSayısı tanımlayalım ve 10 değerini verelim.

int armutSayısı = 10;

Yukarıdaki yaptığımız şeyin armut versiyonunu yaptık.
Sizce elmaSayısını armutSayısına eşitleyebilir miyiz? Tabii ki! Ama nasıl? Ahanda böyle:

elmaSayısı = armutSayısı;

elmaSayısı'nda 5 vardı. armutSayısı'nda 10 vardı. Eee ne oldu şimdi? Çorba oldu her şey, demeyin.
Bakın arkadaşlar burada kullandığımız "=" sembolü Matematikteki sembol değil. Burada hocaların problemin sonunda "Veee son olarak 2x + 5 = 15 ve buradan x = 5 çıkıyor." derken yaptığı şeyi yapmıyoruz. Burada problemi yazan, o problemde x'i 5 olarak önceden belirleyen kişi biziz.

Yani elmaSayısı = armutSayısı derken dediğimiz şey: "Az önce canım istedi elmaSayısını 5 değerini atadım. Şimdi canım istedi elmaSayısına artmutSayısı değişkeninin tuttuğu değeri atıyorum."
Ve her zaman eşitliğin sağ tarafındaki değişkenin tuttuğu değeri eşitliğin sol tarafındaki değişkene atarız. Yani armutSayı'sının kutusundaki değeri elmaSayısının kutusuna monte ediyoruz. Eğer önceden armutSayısı büyük hissediyor idiyse elmaSayısı da büyük hissetmeye başlıyor.

Bunun sonucunda elmaSayısı 10 oluyor, armutSayısı da değişmeden kalıyor:





(Neden elmaSayısı = 10 yazmak yerine elmaSayısı = armutSayısı yapıp kafamızı karıştırdık derseniz, her zaman armutSayısı'nın içinde ne var bilemezsiniz. Veya bazen kodlarınız kadar uzun ve karışık bir hal almıştır ki armutSayısı'nın içinde ne var takip etmesi zordur. Ama en önemlisi; diyelim canınız istedi ve en baştaki armutSayısına atadığınız değeri 10 değil de 8 yaptığınız. yani int armutSayısı = 8 yaptınız. Bu durumda kodlamanızı elmaSayısı = armutSayısı şeklinde yaptıysanız en başta armutSayısı'na hangi değeri atadıysanız elmaSayısı da onu alır yani bu durumda 8 olur siz de bir değişiklik yapmak durumunda kalmazsanız. Fakat elmaSayısı = 10 yaptıysanız ve hala elmaSayısı'nın armutSayısı'na eşit olmasını istiyorsanız elmaSayısı = 8 yapmanız gerekir. Bu yüzden elmaSayısı = armutSayısı yazmak daha doğrudur.

Bir değişken tanımlamayı, o değişkene bir değer atamayı ve başka bir değişkenin içindeki değeri tanımladığınız değişkenin değeri olarak atamayı öğrendiniz. Elimden geldiğince basit anlatmaya çalıştım. Muhtemelen ilk kez programlamayı öğrenirken böyle basit, "salağa anlatırmış gibi anlatan" kaynaklarla karşılaşacaksanız. Başlangıç için en iyi kaynaklar bu tip kaynaklardır. Bir dile epey aşina olduğunuzda ve tecrübe kazandığınızda ise öğrenme safhası kolaylaşır diyebiliriz. Çünkü programlama dillerinin mantığını birbirine benzer.

Biraz daha yapabileceğiniz şeylere geleyim. Canınız isterse toplama çıkarma da yapabilirsiniz bu değişkenlerle.

Şu anda elimizde halihazırda bulunan kod:
int elmaSayısı;
elmaSayısı = 5;
int armutSayısı = 10;

!!!
Bu işaret arasında kalan bütün kodlar birbirine eklemedir. Yani kod içinde armutSayısını değiştirdim 15 yaptım. Artık armutSayısı'nın asıl değeri 15 olmuş olur.

Bunu eklerseniz:

elmaSayısı = elmaSayısı + 3;

elmaSayısının mevcut değer 5. 5 e 3 eklersek 8 buluruz ve elmaSayısı = 8 demiş oluruz. elmaSayısının mevcut değeri 8 olmuş olur.

Bunu eklerseniz:

elmaSayısı = elmaSayısı + elmaSayısı;

elmaSayısı'nın değeri ne olur? 10 mu? Hayır! Bakın yukarıda elmaSayısı'nın değeri 8 idi. Sağ tarafta iki elmaSayısı var. 8 + 8 = 16. elmaSayısı = 16 yani elmaSayısına 16 değerini vermiş olduk.

armutSayısı = 7 + 8;

armutSayısı'nın yeni değeri 7 + 8 yani 15 olmuş oldu.

elmaSayısı = elmaSayısı - armutSayısı;

Bunu yapınca önce sağdaki kısmı hallediyoruz yani elmaSayısı'nın değerinden armutSayısı'nı çıkarıyoruz. elmaSayısı şu an 16. armutSayısı 15. Çıkardık 1. elmaSayısı 1 olmuş oldu.

!!! (Yukarıyla işiniz kalmadı.)

Şimdi ben size bir alıştırma vereceğim. Oldukça kolay. Eğer yukarıda anlattığım şeyi anladıysanız bunu kolaylıkla yaparsınız. (Not: Kodu kolaylıkla takip etmek için kağıt kalem alıp her satırda ne neye eşit oluyor onu yazmanızı öneririm.)

Kodumuz:

int naberLen = 2;

int iyiSenden = 5;

iyiSenden  = naberLen;

naberLen = naberLen - iyiSenden;

iyiSenden = naberLen * naberLen + 2;

naberLen = 3 + 5 * 4 - 1;

Soru: naberLen ve iyiSenden değişkenlerin kodun en sonunda tuttukları değerler nedir? Çözüme bakmadan kendiniz bi uğraşıp cevabınızı bir yere yazın.

Hadi göreyim sizi.


Çözüm:
Az önce demiştim ya programlamada görgü kuralları var diye. İşte burada o kuralları çiğniyorum ve değişkenlere çok kötü isimler veriyorum öyle ki kodumuz okunması zor bir hal alıyorum.

int naberLen = 2;

int iyiSenden = 5;

Bu iki satırda iki değişken atayım onlara değer veriyoruz.

iyiSenden  = naberLen;

iyiSenden 5 değerini tutuyordu. Fakat naberLen'deki 2 değerini iyiSenden'e verince 2 değerini tutmaya başladı. 5'ten bir daha haber alınamadı. iyiSenden'e 5 vermek gereksiz oldu, direkt olarak int iyiSenden = naberLen de yazabilirdik.

naberLen = naberLen - iyiSenden;

naberLen ile iyiSenden eşit. Bu yüzden naberLen artık 0 değerini tutuyor.

iyiSenden = naberLen * naberLen + 2;

naberLen*naberLen = 0. 0'a 2 ekliyoruz ve iyiSenden'in yeni değeri 2 oluyor.

naberLen = 3 + 5 * 4 - 1;

naberLen hakkında önceden ne yaptığımızı silip atıyoruz ve ona yepyeni bir değer veriyoruz. Programlamada da Matematikteki gibi işlem önceliği var unutmayın. Önce 5*4'ü buluruz. 20.  20 + 3 - 1 = 22.

Cevap: naberLen 22 değerini tutuyor. iyiSenden 2.


Evet arkadaşlar değişkenler üzerine yapabileceğiniz işlemleri de gördünüz. Ders burada bitti. Şimdi size bir sorum var. Bu soruyu doğru cevaplayabilmek için yeterli bilgiye sahipsiniz şu anda.

Bulmaca 2: Elimizde iki değişken var. Biri elmaSayısı. Diğeri armutSayısı. Hangi değerleri tuttuğunu bilmiyorsunuz. Şimdi öyle bir kod yazınki bu değerler yer değiştirsin. Yani en sonunda elmaSayısı armutSayısı'nın tuttuğu değeri tutacak. armutSayısı ise elmaSayısının tuttuğu değeri tutacak. Atıyorum önceden elmaSayısı 5 değerini tutuyordu. armutSayısı 10 değerini tutuyordu. Sizin yazacağınız kod şöyle bir durum yaratacak: elmaSayısı 10 değerini tutacak. armutSayısı 5 değerini tutacak. Fakat 5 ve 10'u siz bilmiyorsunuz. Doğal olarak elmaSayısı = 10; armutSayısı = 5; şeklinde bir kod yazamazsınız. elmaSayısı = armutSayısı; yazarsanız ikisi de eşit hale gelir doğal olarak elmaSayısının eskiden tuttuğu değeri kaybedersiniz. E ne yapacaksınız o zaman?

Çarkları döndürme vakti geldi :) Hadi göreyim sizi! Çözüm en aşağıda ama yanıta bakmadan önce bir yarım saat düşünün en azından.

*

Bulamacaları doğru cevaplarsanız tebrikler. Yanlış cevaplarsanız bu sizden bilgisayar mühendisi olmayacağı anlamına gelmiyor. Önemli olan şey şu: bu tip işlerle, problem çözümüyle, kod taramayla, okumakla, araştırmakla uğraşmak istiyor musunuz? Kendini geliştirmenin ne olduğunu merak etmiştiniz değil mi? İşte söyliyeyim. Ben ilk bilgisayar sınavımdan yani vizemden 59 aldım. 59 almaya alışık bir öğrenci değilimdir. Bu vizeye gelene kadar yaptığım şey konulara çok iyi çalışıp mantığını kavramam ve derste daha önce çözdüğümüz örnek soruları çözmek. Lisede matematik sınavına böyle çalışırdık sonra 85 alır rahatlardık. Fakat burası üniversite. Benim üniversitemin adına kanmayın, her yerde böyle. Finale ise www.codingbat.com daki soruları çözerek girdim. Bi 30 soru filan çözmüşümdür. Finalden 79 aldım. Bu da düşük demek ki daha fazla çalışmam gerekiyormuş. Ama kendimi geliştirdiğim çok açık. Ekşi sözlükten sürekli bilgisayar mühendisliğiyle ilgili başlıklara entry atan biriyle konuştum. Bizim okuldanmış. Microsoft'a çalışıyormuş!!! Ve çok komik, bu yazarın kendi başlığında biri bu yazar için "Birkaç sene önce bana 'Ağabey bilgisayar mühendisliği yazmayı düşünüyorum önerir misin?' diye sorduğunu dün gibi hatırlarım." minvalinde bir şey yazmış. Yani bu Microsoft'ta çalışan kişinin programlama geçmişi yokmuş. Blogunu inceledim. Kişisel projelerine günde 8 saat ayırdığı oluyormuş adamın. Şöyle bir hesap yapsak, bir kişi günde 8 saat bilgisayar çalışsa 1-2 ayda bir bilgisayar/programlama kitabını bitirebilir. 4 sene de 24 kitap demek ki 24 kitap demek 24 alan hakkında bilgi sahibi olmak demektir bu da bilgisayar olayını yemek bitirmek demek. İşte kendinizi geliştirmekten kasıt bu. Kendi kendine öğrenmek, kendi kendine projeler yapmak. Şu an için benim yaptığım yukarıda gördüğünüz tipte bulmacaların / algoritmaların / problemlerin daha zor olanlarını çözmek. İlk sene böyle şeylerle haşır neşir olacaksınız yani. Tabii bu ilk dersti, kolaydı, daha ilerisi için bir dili öğrenmek (java öneririm) ve bu dilde matematik problemleri çözmek olur.

Dil öğrenmeye şimdiden başlarsanız bu işte sıkılıp sıkılmayacağınıza karar verebilirsiniz. Ama çok da bağlanmayın, aklınızda başka mühendislikler varsa onları da araştırın.
Dil öğrenmek için: https://www.udacity.com/course/viewer#!/c-cs046
Veya www.codeacademy.com ama java yok.
Türkçe kaynak da bulabilirsiniz, benim bildiğim var ama saf videodan oluştuğu ve kişi profesyonel olmadığı için yukarıdakiler gibi eğlenceli gelmeyebilir. Ben sadece anlayamadığım kısımlarda yardım aldım bu arkadaştan:
http://www.youtube.com/watch?v=QmwC_p0OGmI
Java sorusu çözmek içinse www.codingbat.com

*

Yazı bitti. Bulmacaların cevaplarına bakmayı unutmayın!

Son olarak aklınızda bilgisayar mühendisliği varsa şu sorulara cevap verin:

1- İngilizce'yi iyi öğrenip upuzun kitaplar okuyacak, bitmek bilmeyen eğitim videoları izleyecek şevki kendinizde buluyor musunuz? ( Ekleme: İngilizce'ye çok yabancıysanız söyleyeyim, zor bir dil değil.)

2- Okuldan bağımsız öğrenme yapabilecek misiniz? Okulda gösterilmeyen şeyleri öğrenmek için günlerinizi, haftalarınızı harcayabilecek misiniz?

3- Zor ve karışık problemlerle uğraşıp çözüm için gerekli araştırmayı yapabilecek misiniz? Oldukça zor problemlerin çözümlerinin mantığını anlamak için uğraşmanız, çözümde hata çıkarsa nerede çıkıyor diye uzun uzun kodları satır satır taramanız gerekecek. Bunun için yeterli misiniz ? (Aslında yeterlisiniz, sadece gerekli uğraşıvermeniz lazım.)

4- Program yazmayı hobi olarak yapabilecek misiniz?

Aslında bu soruların çoğunu herhangi bir mühendis adayı "Evet" olarak cevaplamalı. Yani bu sorulara hayır diyorsanız başka bir mühendislik alanı size göre olabilir diyemem pek. Kodlama elektronikçilere de lazım. Karışık problemler çözme, bağımsız öğrenme, İngilizce bunlar tüm mühendislere lazım. Tabii patlak mühendis olmak istemiyorlarsa.

Son soru: Saatlerce program yazabilecek misiniz?

Bundan bahsedecektim ama unutmuşum. Arkadaşlar ben bu mayıs ilk oyunumu çıkardım. Dönem ödeviydi, mayısın 1'inde başladım, 16'sında bitirdik. 4 kişiydik, fakat herkesin eşit çalıştığını söyleyemeyeceğim, bunda grup arkadaşlarımın elektronikçi olması dolayısıyla bilgisayar dersini fazla sallamaması, benim liderlik yapmaya çalışıp çok fazla sorumluluk almam ve sonunda fail olmam var. 16 gün boyunca kod yazdım ama 16 günün 5 gününde geceli gündüzlü yazdık. Sabah 9'da oturuyordum başına gece 11'de kalkıyordum. Her gün babama dert yanıyordum. Psikolojim bozulmuştu. Üstüne bir de grip oldum ve finallere hasta girdim.

Hocalar programı incelediler ve programlama açısından zayıf buldular. 7/10 verdiler, kahroldum. Fakaat;

16 günün sonunda her şey bitince ve program daha doğrusu oyun tıkır tıkır tam istediğiniz gibi çalışınca yaşadığınız mutluluk paha biçilemez arkadaşlar. Düşünsenize az önce bir şey ürettiniz. Sizin fikriniz, sizin emeğiniz. Ki benim oyun orjinal bir fikir üzerineydi. Şu anda elimde MEB'e satabileceğim bir proje var. Ha, oyunu javadan körlemesine yazdığımız için baştan kaybetti. Unity2D'te tekrar yazacağım, orada nesneleri sürükleyerek de program yazabiliyoruz çünkü. (Java sırf yazıdan ibaret) Özetle ben 5 gün geceli gündüzlü kod yazdığıma memnunum çünkü bilgisayar mühendisliği yazarken içimde olan "bir şeyler üretme" arzusunu çok kısa bir sürede tatmin ettim. "Nasıl katlanıyorlar bu insanlar bu kadar uzun süre bilgisayar başında oturmaya" derseniz işte böyle. (Gerçi abim bankada yönetici o da sürekli bilgisayar başında oturuyor. Masabaşı olmayan iş bulmak zor, sırf bilgisayar mühendisliğine has değil masa başı iş.)

İyi tercihler:

Bulmaca 1 Cevap: http://pastebin.com/T2Wkjrud

Bulmaca 2 Cevap: http://pastebin.com/YyQim47u

Edit: Siteler engelliymiş. O zaman buraya yazayım direkt:

Bulmaca 1:
  1. Kullanıcı rakam tuşuna bastığında dinleyici rakamı algılıyor dedik. Bir hesap makinesinde bir rakama basarsanız ne olur? Yukarıdaki boş kutuda rakamı görürsünüz değil mi? Yani atladığım kısım şu; kullanıcı rakam tuşuna basınca controller rakamı algılamalı daha sonra ikinci rakamı beklemeden hemen viewa rakamı göndermeli ki view da söz konusu rakamı boş kutuda yayınlasın.
  2. Yani 5 tuşuna bastık. 5 rakamını hemen hesap makinesinde görmeliyiz. Fakat blogta bu kısmı atladım. Blogta yazdığım yönergelere göre kullanıcı anca 5'e çarpıya ve 6'ya basınca hesap makinesinde 30'u görüyoruz. Çünkü sadece burada controller view'ı güncelliyor.

Bulmaca 2:
  1. Cevap: Atıyorum elmaSayısı 5 olsun. armutSayısı 10 olsun.
  2. Üçüncü bir değişken belirleyelim. Bunun adı "geçiciDeğişken" olsun.
  3. int geçiciDeğişken;
  4. geçiciDeğişken = elmaSayısı;
  5. Böylelikle geçiciDeğişken elmaSayısı'nın tuttuğu değeri aldı. Yani 5 oldu.
  6. elmaSayısı = armutSayısı;
  7. elmaSayısı da armutSayısı'nın tuttuğu değeri aldı. Yani 10 oldu. Üçüncü bir değişken belirlemeseydik elmaSayısı'nın eski değerini yani 5'i kaybederdik. Fakat elmaSayısı'nın eski değerini "geçiciDeğişken" adındaki değişkende yedeklediğimiz için 5'i tarihin tozlu sayfalarına gömülmekten kurtarmış olduk.
  8. armutSayısı = geçiciDeğişken;
  9. Yani kod şu;
  10. int geçiciDeğişken = elmaSayısı;
  11. elmaSayısı = armutSayısı;
  12. armutSayısı = geçiciDeğişken
  13. Bunun sonucunda elmaSayısı ve armutSayısı değişkenlerindeki değerler yer değiştirmiş oluyor. geçiciDeğişken neyi tutuyor önemsiz. Adı üzerinde geçici o.
  14. DURUN! Daha bitmedi. Microsoftta çalışan ekşi sözlük yazarından bir kitap önerisi almıştır. Bu kitapta şöyle bir soru var:
  15. elmaSayısı ve armutSayısı isimli iki değişkenimiz olsun. Bu değişkenlerin tuttuğu değerler yer değiştirsin. Yani yine aynı soru. Fakaaat.
  16. 3. bir değişken kullanamazsınız. geçiciDeğişken kullanamazsınız yani.
  17. Bu soruyu çözebilecek bilgiye kesinlikle ama kesinlikle sahipsiniz arkadaşlar. Cevabınızı bloga gönderebilirsiniz. Hadi göreyim sizi! İyi kodlamalar :)
  18. İpucu: Matematiksel düşünün.

28 Haziran 2014 Cumartesi

Geri Gelen Mektup Şiirinin Hikayesi

Hüseyin Nihal Atsız öğretmen olarak atandığında gençliği fikir ve dava yolunda geçmiştir, bu yüzden hiçbir kadınla duygusal bağ kurmaya vakit ayıramamıştır. Atandığı okulda ise meslektaşı bir kadın dikkatini çeker, yeşil gözleri vardır. Atsız o zamana kadar hiçbir kadına ilgi duymamışken, gün geçtikçe bu kadına kendini kaptırır ve en sonunda kendiyle uzun mücadeleler sonucunda açılmaya karar verir. Bir şiir yazar ve sevdiği hanımın dolabına koyar. Sevdiği hanım ise zarfı bulduğunda Nihal Atsız’dan olduğunu anlayarak, zarfı açmadan, mektupta ne olduğunu merak etmeden, olduğu gibi Nihal Atsız’a geri verir.

Atsız sonraları çıkardığı şiir kitabında, bu şiire “Geri Gelen Mektup” ismini koyarak yayınlar. O yeşil gözlü hanım ise Atsız ile mezara bir sır olarak gider.

Şiir ise şöyledir;
GERİ GELEN MEKTUP
Ruhun mu ateş, yoksa o gözler mi alevden? 
Bilmem bu yanardağ ne biçim korla tutuştu? 
Pervane olan kendini gizler mi hiç alevden? 
Sen istedin ondan bu gönül zorla tutuştu. 

Gün, senden ışık alsa da bir renge bürünse; 
Ay, secde edip çehrene, yerlerde sürünse; 
Herşey silinip kayboluyorken nazarımdan, 
Yalnız o yeşil gözlerinin nuru görünse... 

Ey sen ki kül ettin beni onmaz yakışınla, 
Ey sen ki gönüller tutuşur her bakışınla! 
Hançer gibi keskin ve çiçekler gibi ince 
Çehren bana uğrunda ölüm hazzı verince 
Gönlümdeki azgın devi rüzgarlara attım; 
Gözlerle günah işlemenin zevkini tattım. 
Gözler ki birer parçasıdır sende İlahın, 
Gözler ki senin en katı zulmün ve silahın, 
Vur şanlı silahınla gönül mülkü düzelsin; 
Sen öldürüyorken de vururken de güzelsin! 

Bir başka füsun fışkırıyor sanki yüzünden, 
Bir yüz ki yapılmış dişi kaplanla hüzünden... 
Hasret sana ey yirmi yılın taze baharı, 
Vaslınla da dinmez yine bağrıdaki ağrı. 
Dinmez! Gönülün, tapmanın, aşkın sesidir bu! 
Dinmez! Ebedi özleyişin bestesidir bu! 
Hasret çekerek uğruna ölmek de kolaydı, 
Görmek seni ukbadan eğer mümkün olaydı. 

Dünyayı boğup mahşere döndürse denizler, 
Tek bendeki volkanları söndürse denizler! 
Hala yaşıyor gizlenerek ruhuma 'Kaabil' 
İmkanı bulunsaydı bütün ömre mukabil 
Sırretmeye elden seni bir perde olurdum. 
Toprak gibi her çiğnediğin yerde olurdum. 

Mehtaplı yüzün Tanrı'yı kıskandırıyordur. 
En hisli şiirden de örülmez bu güzellik. 
Yaklaşması güç, senden uzaklaşması zordur; 
Kalbin işidir, gözle görülmez bu güzellik...

Sonuçlarınız Hayırlı Olsun

:)

26 Haziran 2014 Perşembe

Tekrar Yapmakla İlgili

Daha önce tekrar yapmanın çok önemli olduğundan bahsetmiştim fakat bu konuda herhangi plan/programdan bahsetmemiştim. (Malesef benim de düzenli bir programım olmadığından dolayı böyle bir işe girişmemiştim.)

Okuyucularımdan biri kişisel ricamı değerlendirdi ve kendi tekrar programını paylaştı. Ekin'e çok teşekkür ederim. :) Kendisi bu programı uygulamış ve memnun kalmış.

*

Arkadaşlar bu program bir ders programı değil sadece sizin bilgilerinizi kalıcı hale getirebilmek için uygulayacağınız bir sistem. Genellikle sene başında hatta daha öncesinde yazın çalışılan konular 3 - 4  aya unutulur ve öğrenciler sanki hiç bilmiyormuş gibi konuyu baştan çalışır. Bu tamamen vakit kaybıdır. Her dersten en az 10 konu olsa sadece ygs için en az 10 × 8 = 80 konu çalışmanız gerekiyor ( daha bunun lys si var ) siz bu 80 konuyu çalışıp , unutup üstüne tekrar çalışmak isterseniz işin içinden çıkamazsınız. Işte bu tekrar programı bunun için. 

Beyin öğrendiği bilgiler 24 saat içinde tekrar edildiğinde % 80 ini kaydeder. Sonraki bir hafta içinde bilgiler yine unutulmaya başlar fakat tekrar edildiğinde yine % 80 lik kısmını asıl hafızaya atar. Aynı bilgi 1 ay , 3 ay ve 5 ay içinde de tekrar edildiğinde kalıcı hafızaya yerleşmiş oluyor. Bu bilgilerden hareketle oluşturulmuş bir program bu. Şu şekilde işliyor : Bir konuyu çalıştığınız gün tarihi not ediyorsunuz. Bir çizelge hazırlıyorsunuz ve bu çizelgeye de 1 gün sonranın 1 hafta sonranın 1 ay sonranın 3 ay sonranın ve 5 ay sonranın tarihlerini not ediyorsunuz. Bu şekilde her gün çizelgeden  kontrol edip o gün yapacağınız tekrarı yapıyorsunuz. Ilk tekrar 5 - 7 dakika daha sonrakiler 3-5 dakika olacak şekilde tekrar yapmak gayet yeterli. Bu yüzden bu program max yarım saat sürüyor ve bunu kendi çalışma programınıza rahatlıkla dahil edebilirsiniz diye düşünüyorum. Ben şahsen sabahları normal uyandığım saatten yarım saat erken uyanıp yapıyordum ve çok faydasını gördüm özellikle sözel derslerde. Matematik geometri gibi derslerde ise konuyla ilgili 6 -7 soru çözmek hatırlamak için yeterli olacaktır. Hepinize başarılar dilerim umarım istediğiniz yerleri kazanırsınız.

Ekin

*

Azimliyazardan ekleme: Sayısal dersler için yapamayıp hocanıza sorduğunuz, çözümü aşırı zor veya uzun olmayan, sınavda çıkabilirliği olan soruları da mantığını kavradıktan sonra not edin ve bu tekrar aşamalarında onlara da bakın. Özellikle geometri de, soru çözmeden önce bir takım örnek soru görmek işe yarar. 

Blog İçeriklerinizi Paylaşırken Yardımcı Olacak 3 Yöntem

İçerik takviminizi hazırladınız, harika bir blog postu için beklediğiniz gün geldi ve yazınızı hazırlayıp yayınladınız. Peki ama, gerçekten de blog postunuzdan istediğiniz geri dönüşü alacak mısınız? Eğer doğru bir şekilde paylaşmazsanız ne yazık ki hayır. Blog içeriklerinin büyük bir kısmı hedef kitleye ulaşamadan internetin ışık hızındaki yenilenen içerik havuzunda derinlere doğru gitmeye başlıyor. Bunun önüne geçmek için hazırladığınız içeriği doğru biçimde paylaşmak bir şart. İşte bu konuda size yardımcı olacak 3 yöntemle blog içeriklerinizi daha verimli kullanabileceksiniz. Blog içeriklerinizi paylaşırken size yardımcı olacak 3 yöntem:

Her postu birkaç defa paylaşın
Alışılagelmişin dışında hazırlanan blog içeriğinin bir kere paylaşılması aslında hedeflediğiniz kullanıcı tabanına ulaşmak için karşınıza çıkan ilk büyük engel oluyor. Bu durumun önüne geçmekse doğru bir şekilde kullanıldığına mucizeler yaratacak kolay bir çözümde yatıyor: Her içeriği birkaç defa paylaşmak. Peki, bu “birkaç”tan kastedilen ne? Kullanıcı kitlenizin aşırı paylaşım olarak yorumlamayacağı şekilde arada bir ya da iki gün zaman geçtikten sonra blog içeriğinizi paylaşmak en mantıklısı.

Sosyal medya araçlarını yaygın kullanın
Eğer blog içeriklerinizin altında bir like ve share butonu yoksa hemen edinmelisiniz. Yoksa paylaştığınız içeriğin sosyal medyada okurlar tarafından tekrar paylaşılması çok düşük bir ihtimal.

Daha paylaşılabilir içerik üretmeye odaklanın
“İnsanlar sosyal medyada neler paylaşıyorlar?” sorusu blog içeriğinizi hazırlarken aklınızın bir kenarında durması gereken sorulardan. Blog içeriğinizi hazırlarken mutlaka sosyal medyada da bir paylaşım öğesi olacak niteliğe sahip olmasına dikkat edin. Video ve görseller bu konuda en büyük yardımcınız olacak.

Kaynak :

Blog Yazarı Ramazan'ı Nasıl Verimli Kullanabilir?

Mübarek Ramazan ayının en iyi şekilde değerlendirilmesi şüphesiz ki ibadetler, iyilikle, hayırla geçirilmesidir. Ancak Blog Yazarı olarak blogunuzun da Ramazan'da değer kaybetmemesi aksine değerlenmesi için yapılması gereken bazı küçük değişiklikler ve bazı küçük gayretler gerekmektedir.
Ramazan'da blogunuzu en iyi şekilde, en verimli şekilde kullanmalısınız. Bazı Blog Yazarları Ramazan'ı bahane ederek 1 ay boyunca bloguna uğramayacak, hiç bir yeni içerik üretmeyecektir.

Blogunuzda Ramazan'a Özel bazı güzel etkinlikler başlatabilirsiniz. Ben birazdan aşağıda SRGZ Blog'un Ramazan takvimini açıklayacağım. Ramazan ayında blogumda ne gibi değişikler yapacağımı, nasıl içerikler gireceğimi anlatacağım. Size de fikir olması açısından bu yazıyı önemli buluyorum.

Logo Yanına Ramazan Feneri; Logomun hemen soluna gelecek şekilde bir ramazan feneri ekledim. Bu ramazan feneri blogger'a bir eklenti sayesinde eklenebiliyor. Ramazan fenerinin nasıl ekleneceğini ''Blogger Ramazan Feneri Eklentisi'' isimli yazımda anlatmıştım. Dileyenler yazıyı okuyup kendi blogunda uygulayabilir.

Ramazan'a Özel İçerik; Ramazan ayı için özel olarak derlediğim bazı başlıklara ait içerikler hazırlayacağım.


  • Ramazan Duvar Kağıtları,
  • Ramazan İkon Setleri,
  • Ramazan'a Özel Android Uygulamaları,
  • Ramazan'da Nasıl İçerik Üretilir,
  • Her güne özel bir Ramazan Hikayesi,
  • Sosyal Medya ve Ramazan,
  • Ramazan'da etkinlik düzenlemek vs.


gibi başlılar üzerine yeni makaleler hazırlayıp okuyucularıma sunacağım.

Eğer sizinde Ramazan'a özel olarak Blogunuzda yapacağınız özel bir şeyler varsa yorumlar kısmından ileterek yazıya katkıda bulunabilirsiniz.

25 Haziran 2014 Çarşamba

Misafir Yazarlık Yapmanın Kuralları


Misafir yazarlık yapmanın belli başlı kuralları yoktur ancak kendime göre belirlediğim bazı prensiplerim vardır. Misafir yazarlık yapıyorsanız, yapmayı düşünüyorsanız dikkat edilmesi gereken bazı etik kurallara riayet edilmesi gerekir. Belli kurallar yoktur ancak görünmeyen, uyulması gereken kurallar vardır.

Misafir Yazı Konusu Belirleme;Misafir yazar olayım’’ ya da ‘’misafir yazarlık yapayım’’ demekle olmuyor. Misafir yazarlığa karar verdiğiniz andan itibaren hangi konu üzerine yazacağınızı düşünmeye başlarsınız.  Misafir yazı konusu belirlemek için herhangi bir konuda yazı yazabilirsiniz. Özgün içerik için can atan bir dünya blogdan birisi mutlaka yayınlayacaktır. Kaliteli ve insanları gerçekten bilgilendiren bir makale kaleme almanız enfes olur. İnsanlar misafir yazınızı okuyup faydalanmalılar.

Akıcı Bir Anlatım ve İmla Kuralları; Yazınızı yazmaya başlamadan önce kendinize ‘’en güzel yazımı yazacağım’’ diye söz vermelisiniz. Çünkü bizler Türk Milleti olarak misafirimize hep yediğimizden, içtiğimizden daha iyisini veririz. Hediyeleşirken de böyledir. Bir bakıma misafir yazıyı bir blog arkadaşınızın bloğuna hediye ettiğinizi düşünebilirsiniz. Verdiğiniz hediyenin beğenilmesini istersiniz. Yazınızı akıcı bir dil ile kolay anlaşılır bir üslup ile ve insanları sıkmayacak bir anlatım ile yazmalısınız. Yazınızı yazarken mutlaka ama imla kurallarına dikkat etmelisiniz. Şahsen ben bir yazı okuduğumda imla kurallarına uyulmamış ise, kelime hataları yapılmış ise yazıyı okumaktan vazgeçtiğim zamanlar bile oluyor. İnsanız hata yapabiliriz ancak bu hatalar bariz bir şekilde göze batmamalıdır.

Misafir Yazınız ve Kendi Blogunuzun Tasarımı; Bir blog için güzel bir yazı kaleme aldınız. Hatta o kadar özendiniz ki, sonra dönüp okuduğunuz da ‘’bu yazıyı ben mi yazdım’’ diye içinizden geçirdiniz. Belki de bu güne kadar yazdığınız en güzel yazı oldu. Yukarıdaki prensipleri yerine getiren bir yazı da olduysa mutlaka yazınızın başında ya da sonunda bulunan blog linkinize tıklayıp insanlar bloğunuzu ziyaret etmek isteyeceklerdir. Bu mükemmel yazıyı misafir yazı olarak armağan eden Blog Yazarının kim bilir kendi bloğu nasıl diye meraklanacaklar. Blogunuzu ziyaret edecekler ve sonuç hüsran… O güzelim yazıyı yazan kişinin bloğu darmadağın. Orasından burasından resimler fışkırıyor, ‘’bu misafir yazı da dikkat ettiği hiçbir güzelliğe kendi bloğundaki yazılarda dikkat etmemiş’’ diyerek okurlar hayal kırıklığına uğrayacaktır. Bu sebepten sade ama güzel bir tasarım ile kendi bloğunuzun görsel kısmını halletmelisiniz. Önce kendi bloğunuz daha sonra başka bloglara misafir yazarlık işi.

Yazınız Kadar Yazının Görseli de Özgün Olmalı; Bu hataya ben daha önce birkaç kere düştüm. Çok özenerek yazdığım bir misafir yazı için Google görsel aramalar yardımıyla bir görsel bulup yazıma iliştirdim. Daha sonra yazının yayınlandığı blogda o görselin sahibi… ‘’aa benim hazırladığım görsel kullanılmış’’yorumunu okuyunca yüzüm kızardı. O günden sonra asla ne kendi bloğumdaki yazılar için ne de misafir yazılarım için başkasına ait görseli kullanmadım. Yazılarım için az çok Photoshop bilgim ile özgün görseller hazırlamaktayım. Yazınız kadar yazıya iliştirdiğiniz görsel de özgün olmalıdır.

Misafir Yazar Kuralları Varsa Riayet Edin; Bazı bloglarda görürsünüz. Misafir Yazar olmak için bazı kurallar getirirler. Genel de bu kuralları özgün olması, güzel bir Türkçe ile yazılmış olması ve hangi konularda yazılacağı ile ilgilidir. Daha iyi bloglar için tasarım ve ipuçları ile ilgili iştigal eden bir bloga gidip de temek tarifi anlatan bir yazı yazmak abesle iştigaldir.

Misafir Yazının İçine Eski Yazı Linkleri Koymak;  Misafir yazınızın içerisine bazı eski linkleri eklemek yazınıza değer katabilir. Ancak burada da etik bir kuralı işletmek mümkündür. Yazının içerisine kendi bloğunuzun eski yazılarına ait linkleri değil, misafir olduğunuz blogda ki eski yazıların linklerine yer vermelisiniz.  O blogda daha önce yayınlanmış bir ya da birkaç yazınız varsa yazının sonuna ‘’daha önce yazdığım’’ veya ‘’bu blogda yayınlanan misafir yazılarım’’ diyerek linklerini ekleyebilirsiniz.

Misafir Yazı Hedefi için Blogun Eski Yazılarını Okuyun; Misafir yazınızın ana hedefi kendi bloğunuza ziyaretçi çekmek, backlink elde etmek ve sizin yazılarınızı daha önce okumamış insanlara adınızı duyurmak ise bunun için misafir yazar olarak yer alacağınız blogun eski yazılarını okumanız gerekir. Blogda yayınlanmış yazılara ve o yazılara yapılmış yorumlara göre bir konu belirlemeli ve bu konu üzerinden hareketle hedefinize ulaşmalısınız.

Misafir Yazar Tanıtım Yazısı; Yazınızı yazdınız, tamamladınız ve sıra bu misafir yazıyı yazan yazarın tanıtımına geldi. Bu kısımda da birçok ihmal gördüğümü söylemeliyim. Güzel bir yazıyı kaleme almış ve hakikaten etkili bir konu seçmiş ancak yazının sonuna yazının yazarı ile ilgili öyle uzun bir yazı eklemiş ki, zannedersiniz otobiyografisini yazmış. Misafir yazar tanıtım kısmı, bir veya iki cümleyi geçmemelidir. Zaten insanlar oradaki linke tıklayıp bloğunuza gelecekler ve emin olun ki, hakkımda sayfasına tıklayarak hakkınızda bilgi sahibi olmak isteyeceklerdir. Oraya yazmak istediklerinizden daha fazlasınız kendi bloğunuzun hakkımda sayfasına yazmanız daha etkili olacaktır.

Misafir Yazı Yayınlandıktan Sonra Ne Yapılmalı; Misafir yazıyı yazdınız ve yazınız yayınlandı. Yazı yayınlandıktan sonra işiniz bitmiyor. Yazınız için sık sık o yazıya gidip yapılan yorumları okumalısınız. Belki yorumlarda size yöneltilen bir soru vardır. Belki sizin anlattığınızı anlamayan bir okuyucu aklına takılan bir noktayı sormuştur. İyi bir misafir yazar yorumları takip eder. İllaki bir soru sorulmasına gerek yok. Yazınızdan memnuniyet duyan insanların yorumlarına teşekkür etmek de çok önemlidir. Yayınlanan yazınızı kendi şahsi bloğunuz sosyal medya hesaplarında paylaşmalısınız.

Ahde Vefa Örneği; Yazınızın yayınlandığı blogda artık bir backlink sahibisiniz. Sizin de yazınıza değer verip yayınlayan blog için bir ahde vefa örneği sergilemeniz önemlidir. Kendi bloğunuzda misafir yazılarım, ya da benim kendi bloğumda yaptığım gibi misafir edenler isimli bir sayfa oluşturup, buraya bu güne kadar yazdığınız misafir yazıların kısmını yazıp devamını okumak için tıklayın şeklinde bir link vererek yazınızı yayınlayan blog sahibine backlink kazandırabilirsiniz.

Sonuç; Misafir yazar olarak bir blogda yer almak gurur verici bir durumdur. Bu güne kadar birçok misafir yazı hazırladım ve hepsi yayınlandı. Reddedildiğim bir yazım olmadı. Sizin reddedilen bir yazınız varsa bunu şevk kırıcı bir olay olarak algılamayın. Yazınızı mutlaka yayınlayacak bir blog vardır. Bir başka bloga yazınızı yayınlaması için teklif götürebilirsiniz.
SRGZ Blog Yazarı Vural Egemen SARIGÖZ’ün sizin bloğunuzda misafir yazar olarak yazı yazmasını istiyorsanız ya da SRGZ Blog’da Misafir Yazar olarak yer almak istiyorsanız buradaki iletişim sayfasından iletebilirsiniz.

SRGZ Blog | Webtasarım ve Teknoloji Blogu
www.srgz.blogspot.com


23 Haziran 2014 Pazartesi

Kadın için Suçtan Önemli Şeyler Varmış?

Amerika'nın California eyaletinde polislerin prosedür gereği suçluların fotoğraflarını ibret olsun diye Facebook üzerinden paylaşması gibi bir durum var. Bu güne kadar yaklaşık 3.000 civarında suçlunun fotoğraf albümü Colifornia Eyalet polisi tarafından facebook'a yüklenmiş. Jeremy Meeks isimli bir suçlunun fotoğraflarını yükleyene kadar her şey normalmiş. Jeremy Meeks'in fotoğrafı yüklendikten saatler sonra 90.000 üzerinde beğeni toplamış ve 12.500 civarında paylaşım yapılmış.Beğeni ve paylaşım ile kalmayıp kadınlar fotoğraf albümünün altına birbirinden ilgin yorumlar yapmaya başlamışlar.

30 yaşında olan Jeremu Meeks çeşitli suçlardan arana azılı bir çetenin azılı bir üyesi. Üzerinde iki adet kaçak silah ile birlikte yakalanıp cezaevine konmuş.

Jeremy Meeks'in fotoğraf albümünün altına yapılan ilginç yorumlardan bazıları şöyle...

''İşlediğin suçları, kalbindeki acıları, çekinmeden bana getir. Sen üzülme beni bitir'' diyen bir kadın adamın bir suç makinesi olmasını umursamıyor bile.

"Bir susun da, ne kadar kefalet lazım onu söyleyin," diyen bir başka kadın var.

"Demir parmaklıklar arkasında çürümeyecek kadar güzel bu adam." diyende var.

Amerika'nın gelecekteki top modeli olarak ilan eden de var, Bu gece ona mektup yazıp ceza evine yollayacağım diyende...

Ashley Pruitt isimli  kullanıcı, “Suçu ne?! 1. derece seksilik mi?! Beni de onunla kelepçeleyin” diye bir yorum yaparak en beğenilen yorum oldu.

Jeremy Meeks için açılan hayran sayfası bir kaç gün içinde 169.000 beğeni alarak bir rekora koşuyor.

Mahkeme, Jeremy Meeks'in 900.000 dolar kefalet sonucu serbest kalabileceğini kararlaştırdı. Jeremy Meeks'in annesi de krizi fırsata çevirme hamlesi olarak oğlunun kefalet parasını toplayabilmek için bir banka hesabı açarak bağış toplamaya başladı ancak internette yorum da kalan ahkamlar 200 doları ancak toplayabildi. Şimdi yeni bir kampanya ile kadınlar kendi aralarında 900.000 dolarlık kefaleti toplamaya çalışıyorlar.

Kadınlara akıl sır erdirmek imkansız... Kim bilir belki Adnan Oktar bu duru güzelliğe sahip olduğu iddia edilen adamın kefaletini ödeyerek Türkiye'ye getirir.

Güncelleme : Annesinin açtığı banka hesabındaki para 6.000 dolara ulaştı.Bir çok modellik ajansı Meeks ile çalışmak istediklerini belirtip, teklif götürdüler.

Jeremy Meeks'in bazı fotoğrafları aşağıdadır.





Doğrulanmış Facebook Sayfası Nedir?

Bazı tanınmış kişiler ve yüksek sayıda takipçisi olan Sayfalar, Facebook tarafından kimliklerinin gerçek olduğu yönünde doğrulanır. Doğrulanmış bir profil veya Sayfanın adının yanında mavi bir kart
 görürsünüz. Bu profiller ve Sayfalar arasında şunlar bulunabilir:


  • Ünlüler
  • Gazeteciler
  • Devlet yetkilileri
  • Popüler markalar ve işletmeler

Profil veya Sayfaların iddia ettikleri kişiler olduklarından emin olmanız için profilleri ve Sayfaları doğruluyoruz. Tüm gerçek profil ve Sayfaların doğrulanmadığını ve profilinizin ve Sayfanızın doğrulanmasını talep edemeyeceğinizi unutmayın. Sizi, işletmenizi veya markanızı taklit eden sahte hesapları şikayet edebilirsiniz.

Profiliniz veya Sayfanız doğrulanmazsa, kimliğinizin gerçek olduğunu sizi takip eden veya Sayfanızı beğenen kişilere bildirmenin başka yolları da vardır. Örneğin şunları yapabilirsiniz:

Resmi internet sitenizde Facebook profilinizin veya Sayfanızın bağlantısını verebilirsiniz
Daha fazla bilgi vermek için profilinizin veya Sayfanızın Hakkında kısmını doldurun

Kaynak;

21 Haziran 2014 Cumartesi

Bilkent Üniversitesi Soru-Cevap

Kapsamlı bir tanıtım yazısı yazacağım, okulun iyi ve kötü yanlarını detaylıca yazacağım, okulda zamanımın nasıl geçtiğini yazacağım fakat şu an yaz okulundayım, haftaya Matematik vizem var. Bu yüzden bu yazı bir hafta gecikebilir. (Çalışmaktan bunaldığım bir vakit de yazabilirim belli olmaz.)

Fakat şimdiden soru alayım da benim de yazacağım yazı konusunda kafamda net bir şeyler oluşsun.

Not: Bu arada gelmeyi düşünen varsa çay kahve içmeye beklerim.

Kişisel sorular için: dolkrutos@gmail.com
Ama yine de sorunuzu buraya yazsanız daha iyi olur.

Siz sormadan şunlara cevap vereyim:

Sık Sorulan Sorular 
(Cevapları kısa tutmaya çalıştım, merak ettiğiniz/anlamadığınız kısımları sorabilirsiniz. İleriki yazımda daha detaylı yazabilirim.)

"Okuldan memnun musun?"

Evet

"Burslu burssuz ayrımı var mı?"

Okulun ücreti orta gelirli ve tek çocuk okutan bir aile için makul bir ücret. (yılda 24 bin lira) Bu yüzden çok zengin ve havalı bir ortam olduğunu söyleyemeyiz. Bu konuyla ilgili uzun uzun yazacağım ama eğer bu konu aklınıza takılıyorsa sizi korkutanın ne olduğunu açık açık yazın, çekinmeyin. Cevaplarım. Bu arada burası okuduğum ilk özel okul. 

"Burs kesiliyor mu?"

Hazırlıkta 2 sene okuma hakkınız var. Bunu geçince kesiliyor. Fakat bu normal. ODTÜ'de 2'yi geçerseniz başka okula gönderiyorlar. Bölümde ise 7 yıl kalma hakkınız var, fazlasında yine kesiyorlar. 2 + 7 = 9 yıl içinde bitirmeye bakın okulu. :))) Ha bir de kapsamlı burs 5 yıldan sonra kesiliyor.

Kapsamlı Burs nedir?

Bilkent'in ilk 10 bine giren tam burslulara verdiği burs. 2 kişilik oda beleş. Ayda 570 lira da harçlık. 

"Kampüs nasıl?"

Kampüs güzel. Çiçekler, yeşillikler felan. Yurtlar ile fakülteler arası mesafe çok az. Ben yurttan çıktıktan 5 dakika sonra derste oluyorum. Malesef çok bayır. Az düz bir yere kurulaymış iyiymiş. Şehre uzak diyorlar, evet uzak. Ama burası Ankara. İstanbul kadar büyük değil. Öyle çok aşırı bir uzaklık da yok yani. Bilkentten Kızılay 30 dakika, ama trafiğe göre azalabilir ya da artabilir.

"Ulaşım nasıl?"
Kampüs içi, şehirden gelen, şehre giden otobüsler var. Beleş. 

"Yemek?"
Bilkent'in en kötü yanlarından biri. Yemekhane var ama parasını devlet karşılamadığı için biraz pahalı. 3 çeşit; Ana yemek (Tavuk çok sık çıkıyor) + Çorba/Pilav/Makarna + Salata/Tatlı/Meyve/Yoğurt vs. bu 3,15 lira. Ne alacağınızı siz seçmek ve yanında 1 kap daha almak isterseniz 6 lira. Yemekhaneyi ben beğeniyorum diyebilirim ama çoğu kişi beğenmiyor. Bence bir lise yemekhanesine göre iyi. Ve kabul etmek lazım, 3 liraya yenilen yemek bu kadar olur. Okuldaki diğer yemek satan yerler evlere şenlik. Bizim arkadaşlarla arada yediğimiz bir mekan var ortada 3 kap yemek 8.5 lira. Ha yemekler daha güzel o ayrı. 
Yemekleri merak ederseniz: http://kafemud.bilkent.edu.tr/monu_tr.html

"Yurtlar?"
Bilkent'in bence iyi yanlarından. 1, 2, 3, 4 kişilik yurtlar var. Odalar dayalı döşeli; kişisel dolap, buzdolabı, çalışma masası mevcut. (Bunları yazıyorum çünkü bazı devlet yurtları sırf ranzadan oluşuyor.) Her yurtta bir veya birden fazla mutfak ve çalışma odası (kişi sayısına göre), 1 LCD, 1 Çamaşır Odası, 1 Oyun odası (Bilardo, masa tenisi) mevcut. Mutfakta buzdolabı, mikrodalga fırın, kettle, tost makinesi ve ocak var.
Yurtlar devlet yurtlarına göre biraz daha pahalı malesef. (Tabii bana beleş olduğu için benim tuzum kuru.) Fakat Bilkent'in şöyle bir güzelliği var; en kalabalık yurt 4 kişi ve parayı basan istediği kadar kişiyle kalabiliyor. Üniversitelilerin eve çıkmak istemelerinin bir nedeni de bu zaten, devlet yurtları kalınacak gibi değil. Genelde tecrübe usulüyle ve çekilişle oda seçebiliyorsunuz. Birinci sınıflara kalabalık yurtlar veriliyor, orada 1 sene sabretmeniz gerek. Abimden biliyorum, 8 kişilikte kalıyordu ilk sene, dayanamadı eve çıktı. Burada o sorun yok.
Odalarda haftada bir ücretsiz temizlik var. Tuvaletler her sabah temizleniyor. 

"Dersler zor mu?"
Malesef çok zor. Eşek yüküyle ödev veriyorlar. Burslu gelecekler; "Orası özel okul nasıl olsa, benim seviyem diğerlerine göre yüksek olur, çalışmasam bile ortalama bir öğrenci olurum dersleri geçerim." diye düşünmeyin. Nah geçersiniz. Burssuz gelecek arkadaşlar da önce neyle karşılaşacaklarını öğrenseler iyi olur.
Ödevden kastımın ne olduğunu açıklayayım. Bu sene Türkçe 1 ve Türkçe 2 derslerinden toplam 10 kitap okuyup 10 tane eleştiri yazısı yazdım. (300 kelimelik, ama ben 600-700 kelime yazdım tam puan alabilmek için), 2 tane de uzun eleştiri yazısı yazdım (1000-1500 kelimelik). (Bunların kitaplarını kendimiz seçiyoruz ben de önceden okuduğum kitapları seçtim.) 1 tane de sunum. İngilizce 1 ve İngilizce 2 var işte onlar evlere şenlik. Bunlarda da toplam 5 essay (1000 kelimelik), 1 research paper (2000 kelimelik) yazdım ve 3 sunum yaptım. Bilgisayar dersinde bile essay ödevi yaptık. Daha birsürü şey var, hepsini birdahaki yazımda sayarım.
Özetle okul beni azimle yazmaya zorladı diyebilirim.
(Yalnız Türkçe ve İngilizce sadece ilk seneye has.)

Not: Bu dersler zor mu kısmını yanlış anlayan arkadaşlar olmuş. Ben "özel olduğuna bakmayın, dersler çok zor." anlamında yazmaya çalıştım. Biri de demiş "Dersler böyle zorsa ODTÜ'ye gideyim." Güzel kardeşim mühendislik okumak doğal olarak zordur, bu Bilkent'e has bir şey değildir. :) Burada birazcık daha fazla ödev var evet, ama sanmayın ki ODTÜ'ye İTÜ'ye gidince hayat size güzel olacak.