Fihrist

21 Temmuz 2017 Cuma

Bilgisayar Muhendisligi Tercihi

Sorular ve cevaplar

Soru: Bilgisayar muhendisi, programcisi, teknisyeni... bunlar ne is yapar? Biri digerinin isini yapabilir mi?

Cevap: Hepsi bilgisayarla alakali olmakla beraber aslinda yazilim islerinin farkli uclarindan tutarlar. Her yerde bunlar gecerli olmasa da genel olarak su sekilde calisirlar:

Muhendis, isin algoritma, veri yapilari, verimlilik kisimlari ile ilgilenir, programin tasarlanmasi, gerektiginde anlik milyonlarca kisiye hizmet verebilmesini saglayacak sekilde tasarlar. Verimli, okunabilir, zekice dusunulmus kodlar yazmasi gerekir, matematik, istatistik bilmesi elzemdir.

Programcinin daha fazla satir kod yazmasi muhtemeldir. Farkli kutuphaneleri ogrenmesi gerekebilir. Onlari iyi ogrenip hizlica kullanmasi lazimdir. Iyi ve hizli kod okumalidir. Hatasiz kod yazmalidir. Ayni zamanda okunakli yazmalidir. Muhendisler kadar matematik bilmek veya yazilim tasarimindan anlamak zorunda degillerdir. Kullandiklari kutuphaneler onlara bu imkanlari saglar.

Teknisyenler ise isin daha cok alyapisi ile ilgilenirler. Mesela muhendisin bilgisayarinin SSD'si yandi. Onun siparisini verir, onu takar, isterse ona isletim sistemini ve programlarini yukler. Envanter takibini yapar. Yeni versiyonlari takip eder. Hemen hemen hic matematik bilgisine ihtiyaclari olmaz ve kod yazmazlar. Belki linux gibi isletim sistemlerinde script tarzi isleri yapabilirler. Isletim sistemini guncel tutarlar vs.

Soru: Bilgisayar muhendisi gelecek vadeden bir sey mi?

Cevap: Evet. Fakat artik nasil Word, Excel, Powerpoint bilmek bilgisayar bilmek anlamina gelmiyorsa ilerde biraz kod yazmayi bilmek de muhendis olmayi gostermeyebilir. Bilgisayar dunyasinin kaydigi alanlari takip edip ona gore kendini sekillendirmek lazim. Bunlara ragmen muhendis ve programci acigi Amerika'da bile yuzbinlerle ifade ediliyor. Yalniz iyi yerler acigi olsa da herkesi almiyor. Yetenekleriniz iyi ise, yaptiginiz isten hoslaniyorsaniz, kendinizi surekli gelistiriyorsaniz bilgisayar muhendisi veya programcisi olarak is imkani cok ve de cok ciddi paralar kazaniyorlar. Isin ilginc tarafi ise diger meslek dallari daralmaya gidecek zamanla, cunku bilgisayarlar cogu insani isinden edecek. 1970'lerden beri bu boyle. O yuzden uzun lafin kisasi aslinda cok mantikli bir meslek.

Soru: Peki Turkiye ne durumda?

Cevap: Su an cok bilmiyorum ama eskiden muhendislik adina cok ciddi isler yapilmiyordu. Genelde programcilik yapilabiliyordu. Su an muhtemelen cok ciddi gelismeler vardir.

Soru: Maaslar?

Cevap: Yerine gore cok degisebilir. 2011 mezunu olup 2014'te Istanbul'da 10bin kazanan da vardi. Yine ayni donemde mezun olup 2017'de 6bin'e is degistiren de. Amerika'da cok daha ciddi para kazanabiliyorlar. Ucuz sehirlerde baslangic maaslari senelik 70-80 bin dolar iken pahali sehirlerde 120bin dolara kadar cikiyor.

Soru: Peki ya her bilgisayar muhendisi bunu yapabilir mi?

Cevap: Muhtemelen hayir. Amerika'da da bitirilen universiteye cok teveccuh olmasina ragmen Google mesela diploma dahi aramiyor. Onemli olan onlarin sinavini gecmek. Turkiye'de cok ciddi bir sinav mekanizmasi yok, o yuzden universiteniz cok onemli. Gerci yavas yavas bu da degisiyor, yani 4-5 sene sonra, su an universiteye girenler mezun olurken durum nasil olur bilinmez. Fakat son siradaki bilgisayar muhendisligi bolumunu bitirip memleketlerinde ayda 10bin kazanmayi dusunen arkadaslar hayal kirikligina ugramasin sonra.

Soru: Peki orta halli bir universiteye gitsek kendimizi gelistirip iyi bir muhendis olamaz miyiz?

Cevap: Evet, olabilirsiniz. Su an eskiye nazaran cok fazla kaynak cok daha erisilebilir durumda. O sebeple eger azimli iseniz yaparsiniz.

Soru: Peki dusuk siradaki universiteler her zaman daha mi kotudur?

Cevap: Hayir ama genel anlamda bir fikir verir. Puani dusukse oradaki ogrenci kalitesi de dusuktur. Yani daha az azimli, daha az zeki, daha az calisan ogrenciler vardir. Bu kisiler sizin 4 sene boyunca beraber ders alacaginiz, beraber proje yapacaginiz, beraber sinava calisacaginiz, birbirinizi gaza getirip tesvik edeceginiz kisiler olacak. Ayni zamanda hocalar da ders kalitesini ogrenci ortalamasina gore ayarlayacak.

Soru: Peki hocalari kaliteli ise?

Cevap: Hocalar da cok onemli. Ozellikle doktoralarini hangi ulkelerde ve hangi universite yaptiklarina bakin. Onlarin doktora hocalarina bakin. Yurt disi deneyimleri var mi ona bakin. Evet, tek tek oturup listesini cikarip puanlayin cunku bu sizin geleceginiz olacak. 6 sene sonra yurtdisinda doktora basvurulariniz, is basvurulariniz reddedilmeye basladigi zaman oturup dusunursunuz ama cok gec olmustur.

Soru: Dusuk universite ama kaliteli hocalar, yuksek siralamali universiteden iyi midir?

Cevap: Bilmem, ikisi de iyi olabilir. Kisi icten yanmali ise, kendi kendine calisip projeleri yapip, hocalarla iletisim kurum onlarin kapisini asindirabiliyorsa ilkine gidebilir ama akintiya kapilip yuvarlaniyorsa ogrenci ortalamasinin iyi oldugu bir yere gitmesi daha iyi olabilir.

Soru: Hocanin PhD'si, yurt disi tecrubesi neyi etkiler ki?

Cevap: Her seyi. Yarin onlarla makale yazip uluslararasi dergilere, konferanslara gondereceksiniz. Onlarin ingilizce anlattigi dersler ile kendinizi gelistireceksiniz. Onlar size ufuk olacak.

Soru: Peki baska il ve aileden uzaga gitmeye deger mi?

Cevap: Deger. Ailenin yaninizda olmasi size cok yardimci olur. Dersinize odaklanirsiniz. Yoksa ders disinda da bir suru seyle ugrasabilirsiniz. Tek odali kaliteli yurtlar varsa o ayri tabi. Ama genelde 6-12 kisilik tikis tikis oluyordu, hic kalma daha iyi. Aileden uzakta olunca da hayati ogreniyor insan tabi ama derslerle birlikte bir de hayati ogrenmek zor olabilir. Universiteler esit ise aile yani, yoksa daha iyi universite secilmeli bence.

9 Ocak 2017 Pazartesi

IDE'da Debug'a Basinca 5-10sn "Finished, saving caches..." Yazisini Beklemek

Jetbrains firmasinin populer urunu olan IntelliJ IDEA'yi kullaniyorsaniz ve Debug'a bastiktan sonra 5-10sn arasinda beklemek zorunda kaliyorsaniz, durum cubugunda "Finished, saving caches..." yaziyorsa, en son JDK ve IDEA versiyonlari para etmediyse, "File | Invalidate Caches / Restart" da sorunu cozmuyorsa...


(Mac sistemlerinde) /etc/hosts dosyasina resimde gordugunuz son satiri kendi hostname'inizi yazarak ekleyin.


Not 1: Kendi hostname'inizi "Settings | Sharing" altindan goruntuleyebilirsiniz. Unutmayin, orada hemen altta gorundugu sekli ile yazmalisiniz. Mesela tirnak isareti olmayacak ve bosluk yerine kisa cizgi gelecek. Not 2: Terminale "sudo vi /etc/hosts" yazip kendi oturum sifreniz ile hosts dosyasini duzenlenebilir sekilde acabilirsiniz.

1 Kasım 2014 Cumartesi

IDEA SVN Checkout

IDEA'da SVN'den checkout yaparken, mesela svn server'da iki farkli klasor var diyelim, src ve web, bir JAVA web projesi icin. Once src'yi almak istiyorsunuz. src'yi secip checkout derseniz, serc klasorunun kendisini degil altindakileri alacaktir. Yani ne yapmak lazim? Bu dosyalarin gelecegi klasoru secerken de buna gore hareket etmek lazim. Projenizin adi MyProject olsun. MyProject altina gelsin derseniz MyProject/com/uslu... seklinde olacaktir. O yuzden MyProject/src'ye gelsin bu svn'deki dosyalar demek daha mantikli. Bu sekilde MyProject/src/com/uslu... seklinde iner. Ama web'i src'nin altina koymak sitemiyorsak onun inecegi yeri secerken MyProject/web demeliyiz. web adli klasoru kendimiz olusturabiliriz. Muhtemelen bu iki klasoru ayni anda alma sekli de vardir belki, veya svn'e koyarken daha structured bir sekilde konabilir, bu biraz kullaniciya kalmis. Gerci zaten src'yi secip ekle dediginizde size src ile beraber ekleme secenegi de sunuyor bir adim sonrasinda yani hic kendiniz klasor olusturmaniz gerekmeyebilir. Yani src'yi sectiginizde altindakileri aliyor demistik ya, o biraz secmeli olmus oluyor.

13 Nisan 2014 Pazar

JSTL ile JAVA bean'in property'lerine ulasmak

Daha once burda JSP icinde JSTL kullanarak nasil JAVA objelerine ulasabilecegimizi gostermistik. Bu objenin (bean) property'lerine ulasmak icin 'get' metoduna ihtiyac duyariz. Yani eger
private String username;
seklinde bir property varsa
public String getUsername() {
 return username;
}
seklinde get metodu da olmasi lazim. Aksi takdirde 'property not found' tarzinda bir hata alirsiniz.

21 Ekim 2013 Pazartesi

Guid

C#'ta JAVA'daki UID gibi Guid (globally unique identifier) kullanmak isterseniz
new Guid()
şeklinde değil de
Guid.NewGuid()
şeklinde kullanın. Aksi halde hepsi 0 (yazıyla sıfır) olarak gelecektir.

27 Eylül 2013 Cuma

SharpZipLib ile atılan ZIP'in java.util.zip ile doğrulanması

Corrupt ZIP file hatası alıyorsanız, ZIP'i kontrol edin. 7zip ile açıp içideki bir dosyanın bilgilerini incelediğinizde Version:45 varsa zip64'tür, ki bunu JAVA desteklemiyor. O yüzden
myZipOuputStream.UseZip64 = UseZip64.Off;
yapıp atın. Artık Version:20 olduğunu göreceksiniz. Şu halde o hatayı almıyor olmanız lazım.

11 Eylül 2013 Çarşamba

HP 2311x HDMI problemi çözümü (Mac mini)

Mac OS 10.8.3 Mac mini'de HDMI üzerinden HP 2311x monitörüne bağlandığında görüntü net gelmiyorsa ve ekrana sığmıyor biraz taşıyorsa Image Control -> Custom Scaling -> Overscan -> Off yapın.