Teknoloji…

Hayatımızı tamamen değiştiren; politikadan arabaya, iletişimden yemeklere, basına kadar aklınıza neresi geliyorsa hayatımızı değiştiriyor. Teknolojiden kastım tabi ki 21. yüzyıl devrimi ve teknolojisi olan; kişisel cihazlar ve internet.

İnternette, “çocuğunuza bilgisayarı kısıtlayın” gibi kanımı donduran şeyler okuyorum. Herkes gençlerin bilgisayarda fazla vakit geçirmesinden şikayetçi ve sanıyorum 24 saatin en az 6-7 saatini ve hatta bugün olduğu gibi 10-12 saatini bilgisayarda geçiren biri olarak anlamakta zorlanıyorum.

Elinizde bıçak tutmanız, sizi katil yapmayacak! Dünyanın en leziz yemeğini de yapabilirsiniz. Olay bilgisayarı kaç saat kullandığınız değil, nasıl kullandığınızdır.

**

2000’de hiç unutmuyorum, MySite vardı Mynet’in hizmeti. Onunla internet kafede bir şeyler yapmaya başlamıştım. Ardından 2001’de eve IBM bilgisayar alınmıştı ve html-javascript ile bir şeyler yapmaya başlamıştım. Çok az bilgim vardı. Bilgisayar mühendisliğine girmeden hemen önce (hepsini süper bildiğimi iddia etmiyorum fakat) uğraştığım ve irili ufaklı projeler geliştirdiğim 14 programlama diliyle uğraşmıştım. Aralarında favorilerim javascript ve python idi. Bir de gerçek bir deneyime Delphi 7 ile başlamıştım. Seviyorum diyemem ama benim için bir dönüm noktasıydı. Linux üzerinde Python ve arayüz olarak sanıyorum PyQt ile başlamıştım.

Bilgisayar mühendisliğini 3. yılımda bıraktım. Uluslararası ilişkilere geçtim ve ilk dönem derslerimin birinde “büyük veriyi” gördüm. Bununla ilgili başlı başına konu yazacağım hatta. Propaganda gibi dersleri alırken, haliyle sosyal medyayı falan sıkça andık. İşin altyapısını da bilerek bu dersleri görmek inanılmaz eğlenceliydi.

Haliyle bu konuyu sadece sayısal çıkışlı ve bilgisayar mühendisliği ile uğraşmış biri olarak değil; aynı zamanda sosyal bilimlerde okuyan (ve 2,5 ay sonra mezun olacak biri olarak) birleştirecek gideceğim. Tek alanda uzmanlığım yok ama birbirinden bağımsız bir çok alanda deneyimlerim olduğu için bunları birleştirerek gitmek bana çok şey kattı ve umarım bu yazıda düşüncelerimi, tek bilim dalına veya tek bakış açısına göre değil; hepsinin birleşimiyle baktığım şekilde açıklayabilirim.

 

Dersler ve Hayatınız

Bölüm değiştirdikten sonra ilk bir kaç yıl pişmanlık duydum. Sayısal çıkışlı olmak ve bilgisayar mühendisliğinde bu kadar kaldığım için. Fakat yıllar geçince anlıyorum ki her şey olması gerektiği gibiymiş. Sosyal bir bölümde, sayısal çıkışlı olmanın büyük yararları var (sıkıntıların daha çok hem de!). Üstelik programlama bilirseniz, hayata bakış açınız değişiyor.

Okul hayatım boyunca derslerim iyi oldu diyemem. Çalışma isteği de hiç içimden gelmemişti. Fakat matematik ve fizik derslerinde öğrendiklerimi programlara aktarabilmiştim. Bu çok önemli. Özellikle üniversitede calculus dersleri görürken, evde programlamada kendi başıma mantığını geliştirmeye çalışıyordum. Programa aktarmaya. Bu hem beyin için güzel jimnastik oluyordu hem de programlama konusunda yaptığım birbirinin aynı şeylerin dışına çıkıyordu.

Sadece sinüs ve konisnüs örneklerine şuradaki video ile bakabilirsiniz. Alan hesaplamayı, canvası falan öğrendikten sonra; çok ilginç şeyler yapabilirsiniz, ki sonrasında yapay sinir ağları gibi konularda işinize yarayacaktır (:

 

Hayatınızı Tüketmeyin!

Bilgisayar ve internet başında durmak kötü mü? Eğer bütün gün yaptığınız instagram’dan stolklamak, CS-Go oynamak, film ve dizi izlemek ise evet kötü! Hemde çok kötü.

Sosyal medyada dolaşmak güzel, bütün gün yapmak kötü.
Film ve dizi izlemek güzel, bütün gün yapmak kötü.
Oyun oynamak güzel, bütün gün yapmak kötü.

Tropico, Hearts of Iron gibi oyunları dönem dönem bolca oynadım. Kafa dağıtmak için ara ara World of Tanks oynuyorum fakat haftada en fazla 2-3 gün oynuyorumdur ve 1-1,5 saati geçmiyor.

**

21. yüzyıldayız ve inanılmaz bir dünya. Aradığınız her şeyi internetten bulabiliryorsunuz. Hele hele İngilizce biliyorsanız; bulamayacağınız hiçbir şey yok! Fakat bütün bunlar varken, siz saçma sapan Youtubırları izliyor, youtubır olma hayali kuruyor, e-sporcu olacağım diyorsanız işte hayatınızı harcıyorsunuz demektir.

Hazırlıkta İngilizcemi geliştirmek için idolüm olan Steve Jobs sunumlarını bol bol izledim. Etkisi oldu.
Şimdi günde bir sürü video ve yazı izliyor okuyorum ki İngilizce. Politikadan teknolojiye kadar her şey.
Hatta İngilizce bilmiyorsanız sorun değil, çok güzel videolar var İngilizce öğrenmek için. Tavsiyem Türkçesinden başlamayın, tamamen İngilizce videolardan İngilizce öğrenmek daha iyi, bana inanın. Çünkü ilkokul 4’ten lise 1’e kadar İngilizce dersi görüp, hazırlıkta en alt seviyeden (beginner) başladım ve hocalar 1 sözcük bile Türkçe konuşmadan; (etrafımda gördüğüm için kıyaslama yapıyorum) Boğaziçi, Yıldız Teknik gibi bir çok üniversiteden kat kat daha iyi İngilizce eğitimi aldık. Tabi 6 bin yabancı öğrenci olmasının da avantajı. Tüm derslerim %100 İngilizce idi.

Haliyle İngilizce bilmemek bir bahane değil!

**

Programlama Kesinlikle Öğrenin

Bırakın şu CS-Go, Pubg gibi oyunları. İşte Python, işte Javascript… Kendi sitenizi yapabilirsinz! Hatta ufak tefek işler yapıp, para kazanabilirsiniz! Aklınızda güzel bir fikir varsa, onu geliştirip; geleceğinizi kurtarabilirsiniz. Oyunlarla hiçbir şey olmayacak.

Youtuber olarak özgün içerik ne üreteceksiniz? ÖZgün içerik gerek, özgün içerik için farklı bakış açıları gerek. Dünyada bilmem kaç milyon kişinin oynadığı Cs-Go ve PubG ile özgün fikirlere kapılamazsınız. Prgramlama öğrenmek, spora gitmek (salondan bahsetmiyorum, gerçek bir spora gitmek); sanatla uğraşmak, kitaplar okumak… İşte bunlar sizi geliştirecek şeylerdir. Hayatınızı tüketmeyin.

Bilgisayarı günde 2 saat açın diyerek büyük bir APTALLIK etmeyeceğim. Türk toplumuna bakınca, aile arasındaki birbirini desteklemeyen; toplum içindeki dedikoducu ve saçma yapı, üzerine aile ile salonda otururken izlenilen aptal saptal yapımları göz önünde bulundurursak; internet ve bilgisayarın sağladığı dünya eşsiz bir dünyadır.

Şu an kim bilir bu yazıyı nerede ve nasıl okuyorsunuz? Bir bölümünüz telefondan tuvalette, bir bölümünüz tablet, bir bölümünüz bilgisayar başından okuyorsunuz. Belki uzanıyorsunuz? Her birinizin farklı aile yapıları var, farklı düşünceleri, farklı karakterleri var. Şahsen gelip hepinizle tanışma ve bunları hepinize anlatma imkanım yok fakat hepimiz burada buluştuk. Ben, fikirlerimi buradan paylaşıyorum. Hepimizin farklı hayatları var; tavsiyem bakış açılarınızı ve farklılıklarınızı (hatta eleştirileri bile olabilir), blog açıp herkese yayın. Kaybedeceğiniz bir şey yok, aksine farklılıkların paylaşımızı ve farklı fikirler, farklı şeyleri görmek/duymak/okumak bizi geliştirir.

**

Yaşanılacak ve kısa olan tek hayatınızı zehir etmeyin. Başkalarının yaptığı şeylerin peşinden gitmeyin. Herkes gibi olmayın. Her insan eşsizdir fakat moda, popüler kültür vs gibi tonla şeyler bizi “benzer” yapmaya itiyor. Özellikle Türkiye gibi bir ülkede ise, farklı olanlar fazlasıyla dışlanıyor. Bu heves kırmak yerine, farklıysanız; bunu değiştirebileceğiniz anlamına geliyor. Bir göreviniz var demektir.

Haliyle “bilgisayar ve teknoloji kötüdür” diyemem. Elinizde bıçak var… Adam öldüreceksiniz anlamına gelmez. aileler için söylüyorum özellikle; eğer çocuklarınızı düzgün yetiştirirseniz, bilgisayardan korkmanıza gerek yok. Ya da üniversitede ne yapar diye korkmanıza gerek yok.

Gördüğüm şu; bir çok aile çocuğunu yetiştirirken zorlanıyor. Çünkü teknoloji her şeyi değiştirdi ve ebeveyn ile çocuk arasında inanılmaz bir farklılık oldu. Aileler, çocuklara ulaşabilmekte zorlanıyor. Teknolojiden anlamadıkları için. Fakat siz de bu dünyaya girebilir, çocuklarınızla birlikte izleyebilir ve hangisinin neden yararlı olup; neden yararlı olmayacağını tartışarak, düşünmelerini ve doğruyu bulmalarını sağlayabilirsiniz.

 

Bilgisayar Mühendisliği Maceram

Javascript… En sevdiğim dil. Hem tüm C ailesini tanıyor, hem internet tasarımında bir sürü animasyon yapmanızı sağlıyor hem de aklınızın alamayacağı kadar şeyi Javascript kodları ile yapabilirsiniz.

Bilmeyenler için ufak şekilde anlatayım: İnsan bedenini düşünürseniz iskelet HTML olur. Sayfanın temelidir, kutucuklar, butonlar vs her şey html ile kurulur. Üzerinde kaslar vardır. Hareket etmemizi ve bir sürü şeyi yapmamızı sağlayan, bunu Javascript olarak düşünebilirsiniz. Direkt görülmez ancak inanılmaz etkisi vardır. CSS dediğimiz şey ise bir nevi dış görünüştür hatta makyajdır. Tamam insan bedeni için ağız burun olacakta nerede olacak, hangi renkte olacak, hepsini CSS ile tasarlarız.

**

Nedenini bilmediğim şekilde bilgisayar mühendisliği okurken hocalar javascripti küçümseme eğilimindeydi. Aslında düşününce, ne kadar bildiklerini de şüphe ediyorum. Bir çocuk düşünün, programlama dili nedir hiçbir fikri yok. Hiçbir fikri yok! En ufak fikri yok.

Bilgisayar mühendisliği, ilk dönem ve çocukları başlattıkları şey bu:

 

 

Kütüphane çek, main foksiyonunu tanımla, argc ne, neden satır sonlarına ; koyuyoruz neden süslü parantesi {} koyuyoruz?

Bir anımı anlatayım, ilk dönem sınava girdim;

fonksiyon tanımadıktan sonra yukarıdaki gibi süslü parentezi altta başlatmadım. Yani yukarıdakine kıyasla;

main ( int argc, char** argv) {
printf();

 

şeklinde yazdım, hoca puan kırmıştı. Gösterdiği gibi yazmamışım. Tabi yıllardır benim bu şekilde yazmamın ya da bütün programı tek satırda yazsan dahi sorun çıkmamasının bir önemi yok!

Neyse, düşünün ki hiçbir şey bilmiyorsunuz ve “sonra anlatıcaz taam taam” diye geçirtiriyorlar yukarıdaki bazı şeyleri bütün bu saçma salak dil yapısını SONRA ÖĞRENMEK ÜZERE atlayıp bunları yazdığınızda gördüğünüz şey ne oluyor biliyor musunuz?

windows tuşu+r ‘ye baskın ardından cmd deyip enter’a basın ve şunu girin:

echo Hello World

ne çıktı? Kapkara bir şey içinde “Hello World”. Ne  la bu şaka mı?

**

Giriyorsunuz size input output nedir diye soruyor, cookies nedir diye soruyor ki kitaptaki tanımı yazmak önemli; benim asp, php ile bir sürü site yapıp cookie ve session özelliklerini kullanmam ve bunlara göre KENDİ CÜMLELERİMLE açıklamam tabi ki önemli değil.

 

Javascript’in Önemi

İşte bu saçma sapan siyah ekran ve bir sürü int fonksiyon falan filan gibi tonla iğrenç tanımlı ilkel C diliyle başlamamak fakat C dili ailesinin yapısını ve programlamayı öğrenmek için önerim şuydu (arkadaşlara ve hocalara defalarca söyledim); Javascript ile başlayın.

Javascript ile sadece programlama mantığını görmeyeceksiniz, aynı zamanda internet sitesi aşamasına da geçebilirler ileride ve hatta evde takılırken javascript+html ile bir sürü efekt öğrenip; saçma sapan siyah ekranda rezillik ve işkence çekmek yerine, eğlenceli bir sürü şeyler yapabilirlerdi.

Tabi ki arkadaşlarım dinlemedi, tabi ki öğrenmenlerinde burnunda(!) değildi.

 

Ve Python!

Daha üniversite gelmemişken Python’ı duymuş ve geliştirmeye başlamıştım. Mükemmeldi. Saçma sapan dil yapısı (syntax) yoktu, C ile falan kıyasladığınızda sanki konuşma dili gibiydi. Java’yı falan hiç sevmem, programlama dilinin yapısı nedeniyle fakat Python… Resmen ilaçtı.

Tabi ki hocalara ve arkadaşlara defalarca Python diye tutturdum. Şimdi dönüp bakınca, Python’ı bilen hocamız olduğundan şüpheliyim. Çünkü linux öğretelim dediğimde, bir hocamız “önce ben öğreneceğim, sonra öğreteceğim; uzun iş” demişti. Aynı hocamızdan “explorer varken chrome, firefox gibi şeylere ne gerek var” diye sözleri duymakta tabi ki süpriz değil.

**

Ben bastırdım bastırdım ve size olanı söyleyeceğim, Türkiye’de herhalde gitmek istediğim tek üniversite diyebileceğim Boğaz İçi, Python eğitimlerine başlamış!!! Şu an internet sitelerine girdiğimde (cmpe) Django var, Tengri’m rüya gibi!

Bizim Türk mantığı, DAÜ’de de çalıştı: ben ayrıldığımda Python derslerine karar vermişler. Haa sonrasında başka işlerde var, hocaların ne kadar python bildiğine dair; apar topar dersi neden kapattıklarına dair fakat kişisel olarak bana söylendiğinden aktaramayacağım.

**

Diyeceğim o ki; Python mükemmel bir dil. Bana göre Python ve Javascript’i öğrenmeniz gerekiyor. Derslere başlangıçta saçma sapan C dili (üzgünüm ama hiç bilmeyenleri başlattığınız bu ilkel dil için saçma sapan diyeceğim; öneminin farkındayım) yerine programlamanın mantığı ve syntax öğretmek amacıyla başka bir çözüm bulunabilirdi. Öğrencileri sıkmayacağınız.

Herhangi bir dil verin. Hiç bilmediğim bir dil… Bir kaç hafta içinde bir çok proje yazabilecek duruma gelirim. Uzmanlaşırım demiyorum; bir kaç günde syntaxı çözebilirsem, programlamanın mantığı aşağı yukarı aynı. Çözülür.

Javascript’i öğrendikten sonra PHP, C/C++ gibi C ailesinin yapısını taşıyan dillerde sorun yaşamazsınız.

Fakat Python… O dünya bambaşka… Hammallığın olmadığı, ilk tanıştığımda “nasıl yani bu kadar mı?” diye aşırı basit geldiği için (diğer dillere olanla, dilin yapısı), bir yerde hata yaptığımı sandığım bir dil yok mu….

Öğrenin, öğretin.

**

Python’a başlamak isteyenler bu video ile başlayabilir.