CategoryYazılarım

Programlama Öğrencisinin Zaman Yönetimi

Zaman en çok istediğimiz ama en kötü kullandığımız şeydir.

William Penn

Başarılı insanların nasıl paradan daha çok zamana değer vermeye başlaması ilginçtir.

Üniversitede zaman, büyük önem verdiğimiz bir şeydir. Bir ödev verilene kadar veya sınav zamanları gelene kadar her öğrenicinin sürekli olarak bir döngü sürdürdüğü ve onlara yapması gereken bir sonraki şeyi hatırlatan bir iç zamanlaması vardır.

Programlama öğrencileri bu duruma daha çok dikkat eder. Çoğu zaman dersten derse girmek imrenilecek bir şirket veya kuruluşta staj yapmamıza yeterli olmaz veya aldıkları dersler bilmeleri gereken güncel framework ve programlama dillerinden bahsetmezler.

Öğrenciler boş zamanlarında kendi projelerini geliştirmek, online programala dillerini öğrenmek zorunda kalmaktadır bu durum da öğrencilerin hayatından büyük bir zamanın kayıp olmasına sebep olmaktadır ama bu sorunuda çözmek için biraz hayatımızı yönetmeyi öğrenmemiz gerekir.

Yarının Sabahı Bugün Başlar

Günün hangi saatinde uyandığın önemli değil, uyumadan önce bir sonraki gününü planla.

Bir sonraki gün için bir kaç dakikanızı çantanızı hazırlamak, çıktısını almanız gereken belgelerin o anda hazırlamak ve diğer gün için yapılacaklar listenizi kontrol edin ve tam olduğundan emin olun.

Benim için genel olarak bu süreç şu şekilde geçiyor:

  • 2 dakikamı maillerimi kontrol etmek ve yapılacak listemi kontrol etmek için harcıyorum
  • 2 dakikamı bir sonraki günde kesin olarak bitirebileceğim bir liste hazırlıyorum
  • 1 dakikamı da işlerimden ve bilgisayarımdan uzaklaşıyorum

ve hepsi aslında bu. Sadece yatmadan önce 5 dakika harcayarak bir sonraki gün panik olarak ne yapacağımı hatırlamak zorunda kalmıyorum. Bu tarz küçük işlemler zamanımızı yönetme konusunda bize bir kontrol sağlamaktadır.

Kendi Çalışma Düzeninizi Bulun

“Başarılı insanlar sabah 4 de uyanır.”

“Erken uyanmak üretken olmak için bir yoldur.”

Aa, hayır teşekkür ederim. Ben böyle iyiyim

İnsanların etrafta bu tarz şeyleri kanıtlanmış gerçekler gibi veya erkenci kuşların üretkenliklerinin sebebini bu olmasını bahsederek böbürlenmesini duymaktan sıkıldım.

Herkes farklıdır ve herkesin kendi iç saati ve vücut ritimleri vardır.

Belki sabah 4 de çalışmaya başlamak senin için iyidir ya da gece çalışmalarına daha iyi odaklanıyorsundur. Yapmanız gereken tek şey çalışmalarınıza ve planlarınıza uyan zamanı bulun.

Ben kişisel olarak gece çalışmayı tercih ederim fakat öğleden sonra çok daha rahat çalışabildiğimi farkettim. Bu sayede derslerimi biraz daha geç olucak şekilde ayarladım ve erken uyanmak zorunda kalmadım.

Eğer sabah 6 da veya öncesinden üretken hissetmiyorsunuz neden hala erken uyanmak için kendinizi zorluyorsunuz ?

Durun ve düşünün ben bunu üretken olmak için mi yapıyorum yoksa ne kadar üretken olduğumla hava atmak için mi yapıyorum ?

Eğer sabah erken uyanmak, geç uyanmaktan daha iyi değilse bunu yapmadığın zaman bir suçluluk çekmemelisin.

Diğer bir taraftan baktığımız zaman ise kendinizi olabildiğince geç saatlere kadar ayakta kalmaya zorlamakta uzun sürede size bir fayda sağlamayacaktır.

Öğrenmeyi Uyandıktan Sonraki Önceliğiniz Haline Getirin

Sürekli öğrenmek, herhangi bir alanda başarı için en az gereksinimidir.

Brian Tracy

İzin gününüzün ilk 30 dakikasını online bir kursta veya öğrenmeye çalıştığınız yeni programlama diline harcayın.

Bu bilginin sizin öncelik olmasında yardımcı olacaktır. Bu da yetenekli genç bir yazılımcı olmanın önemli bölümüdür.

Eğer bunu başaramazsınız, kendinizi bir ödevin veya bir projenin başında bulursunuz ve aslında asıl yapmak istediğiniz şeyi hiç bir zaman öğrenemeyebilirsiniz. Bunu başarmak ise size her gün öğrenmeye iten bir rutine sokar ve her zaman yapmak istediğiniz şeye zaman olmasını sağlar.

Bu zamanla ne yapacağınız tamamen size özel. Benim özelimde kullandığım yöntem şu

Sahip olduğum zamanda öğrenebileceğim gerçekçi 1 – 2 şey seçerim.

Bu öğrenmek istediğin yeni bir yazılım dili hakkında izleyebileceğin bir youtube videosu olabilir veya aldığınız Udemy kursundan 2 bölüm bitirmek olabilir.

Ben normalde günümün ilk 20 dakikasında Udemy derslerimi izler ve kalan 10 dakikada öğrendiklerimi gözden geçirir veya pratik yaparım. Eğer daha fazla zamana sahipsem, ders izleme süremi ve gözden geçirme / pratik yapma zamanımı artırırım.

Bu düzen kodlama yapmak için çok fazla zamana sahip olan kişiler tarafından değil daha çok kodlama & okul ikilisi arasındaki zamanlama dengesini iyi ayarlamak isteyen ve günlük hayatında kodlama yapan kişilerin yapması gereken bir düzendir.

Öğren, Üret, Tekrarla

Herhangi birinin kodlamasını izleyerek veya kodlarını gözden geçirerek programlama yeteneklerinizi mükemmel hale getirebilecek bir büyü yoktur. (Olsa efsane olurdu.)

Çoğu genç yazılımcı, takip ettiği bir derste takıldığı zaman hayal kırıklığına kapılabilir veya cesareti kırılabilir ve aldığı kursun onlara düzgün bir şekilde “Nasıl spesifik problemlerle başa çıkabileceğini” öğretmediğini düşünmeye başlar. Benim tahminim bu öğrencilerin çoğu öğrendiği şeyleri kendi kodlarına nasıl entegre edilebileceği konusunda fazla zaman harcamıyor.

Ne kadar çok ders videosu izlediyseniz, kod kopyaladıysanız veya bir profesörden ders aldıysanız bile bu sizi çok az ileriye taşır.

ve aldığınız ders bittiğinde farkedeceksiniz ki başladığınız yerden çokta ileriye gidememişsiniz.

Bu yüzden zamanınızı ne kadar küçük olsa bile projeler geliştirmek çok önemli. Küçük veya büyük çaplı projeler geliştirmek size öğrendiklerinizi pratiğe dökmenizi ve anlayışınız somutlaşmasını sağlar.

Ben genel olarak aldığım kurs sırasın 3 – 4 adet küçük proje yapıp kurs bitince ise büyük bir proje geliştiriyorum.

Bunun önemini yeterince anlatamadığımı düşünüyorum. Bir kaç yıl önce bir CSS kursu tamamlamıştım ve farkettim ki CSS kullanarak bir proje yapmadan kendimi CSS kullanırken rahat hissetmiyorum. Bu da şunu kanıtlarki, hiçbir şey problemle kendiniz uğraşmadığınız sürece kodlamayı size öğretmez.

Bu tam olarak bir zaman yönetimi sorunu çözümü olmayabilir ama gerçekten farkettim ki zamanımın çoğunu bir şeyler geliştirmek gerekirken, sırtımı yaslayıp kodlama videosunu izleyerek geçiriyordum. Bir şeyler geliştirmek varken sırtınızı yaslayıp daha fazla zaman kaybetmeyin. Düşündüğünden daha fazla şey öğrendin.

Kodlama Aşamalarını Organize Etmeyi Öğrenin

Kodlama yaparken zaman yönetiminin büyük zorluklarından biri de biribirinden farklı işlemleri projenizde birleştirmektir.

Genellikle kendimi back-end kodlamasında çok odaklanmışken. Bir bölüme eklemem gereken uygun bir fotoğraf bulmam gerektiğini farkediyorum ve tüm konsantremi kaybedip uygun fotoğraf arayışında buluyorum. Fotoğrafı bulduktan sonra ise uygun CSS kodlarını yazmak zorunda kalıyorum. Bu durum kodlama aşamasında çok fazla zaman kaybettiren bir durum çünkü zamanında yapmanız gereken bir işi daha sonra farkedip geri dönüp düzeltip tekrar devam etmeye çalışıyoruz.

Diyelim ki bir web sitesi kodluyorsunuz ve kullanıcının satın alımlarını listelemek istiyoruz. <table> elementini veritabanı ile bağlıyoruz ve CSS kodlaramızı yazarak devam ediyoruz.

Küçük çaplı projelerde bu çok büyük bir problem olmaz ama büyük çaplı bir projede çalışıyorsunuz sürekli olarak geriye dönüp bir şeyler eklemek ilerlemeyi yavaşlatıcak ve olması gerekenden daha fazla zaman harcamanıza sebebiyet verecektir.

Bu süreç nasıl ilerlemeli

  • Yapıcağınız projenin taslak bir görüntüsünü oluşturun. Böylece neyin gerekli olduğunu görün ve ona göre ilerlemenizi yapın. Bu bir kaç dakikanızı alacak fakat gerçekten çok kritik bir adımdır.
  • Fotoğrafları hazırlayın ve dışarıdan yapılacak tüm bağlantıları yapın böylece her şey web sitenize bağlanmak veya eklenmek için hazır olsun. Eğer hali hazırda bir veri veya fotoğraf elinizde yoksa, oradaki boşlukları doldurabilecek sahte veri veya fotoğraflar ile web sitenizde boş bir tablo veya beyaz boşluklar görmeyin.
  • Basit bir başlangıç kodu yazın (bu konuda bir tablo oluşturun) ve onun hazır da olan basit sitilleri ile bırakın.
  • Şimdi back-end kodlarınız düzgün çalıştığından, veritabanı bağlantılarınızın düzgün bir şekilde çalıştığından emin olun
  • Son olarak ise CSS ile sitilleme işlemlerinizi yapın.

Bu sıra sizi aşırı zaman harcamanızı engelleyecektir.

Ne Zaman Yardım İsteyeceğimizi Bilmeliyiz

Önce Google’da aradın mı ?

Her Yazılımcı

Kodlama yapıyorsun, mükemmel bir şey, projen mükemmel gözüküyor ve bir yerde sıkıştın. Bu hepimizin başına geliyor, fakat bu yeni yazılımcıları hayal kırıklığına uğrayıp projeyi yarıda bırakmaya itebilir. Bir yerde takılı kalmak tam bir zaman kaybıdır. Bu yüzden bu önerileri bu yazıya ekledim

Peki ne zaman problemi çözmeye çalışacağımız ve ne zaman çalışmayacağımızı nasıl bileceğiz ?

Şimdi size başlangıç olarak biraz daha Web Geliştiricilerinin işine yarıyacak ve onların sorunu çözmede deneyebilecekleri veya sorunun çözümüne ulaşabilecekleri 3 öneride bulunacağım

Echo Echo Echo

PHP & SQL öğrenirken “echo” benim en iyi arkadaşımdı. Back-end kodlamasın da projenin nerede sorun yaşadığını anlamak zordur. Eğer echo gibi ekrana çıktı veren bir komut kullanmıyorsanız kör bir şekilde kodlama yaptığınızı ve bu durumun sorununu çözmede büyük bir problemi olacağını söyleyebiliriz.

echolamanın bir çok kez bir döngümdeki veya bir kodumdaki bir işlemin sonucunu ekrana yansıttığını ve hayal kırıklığına uğramaktan kurtardığını söyleyebilirim.

Yorum Satırı Ekleyin

Yorum satırları, kodunun nerede hata verdiğini bulmak için güzel bir yoldur. İnsanların yorum satırı kullanarak hatalı kodu silmeyip hataya çözüm olacak şekilde yeni bir kod yazdıklarını bir çok kez görmüşümdür.

Eğer VSCode kullanarak kodlama yapıyorsanız seçili olan kodu Maclerde CMD + K + C kombinasyonu ve Windows bilgisayarlarda ise Control + K + C komutu ile yorum satırı içine alabilirsiniz.

Google’da Arayın

Çok fazla açıklamaya gerek yok. Eğer bir yerde takıldıysanız ve kolay bir çözümü olacağına inanıyorsanız sadece araştırın. Online kaynaklarda araştırma yapın ve problemleri kendi problemleriniz ile karşılaştırın ve başkalarının yaptığı hataların yapıp yapmadığınızı kontrol edin.

Genellikle sizin takıldığınız yerde takılan insanlarla karşılaşmanız yüksek. Bu yüzden kendinizi yıpratacağınıza biraz araştırma yapın.

Diyelim ki kodun çıktısını aldınız ve Google’da aradınız ve mümkün olmasa bile bir çözüm bulamadınız. En az 25 dakika boyunca oradan uzaklaşın veya başka bir şey ile uğraşın.

Bir çok kez çözülemeyecek gibi gözüken bir kodlama hatasıyla karşılaştım ve daha sonra tekrar bununla uğraşmaya karar verdiğimde bana mantıklı gelen en kolay çözümler aklıma gelmeye başladı. Bu kodlamayı sevmeme sebeb olan şaşırtıcı duygulardan bir tanesi.

Hiçbir şey sizi bir hata ile mücadele edip kendi çözümünüzü bulduğunuz zamanlarda ki gibi gerçek bir programcı gibi hissettirmeyecek.

Eğer geri döndüyseniz ve hala bir çözüm bulamadıysanız ki başıma bir çok kez geldi. Tüm işlemleri tekrar deneyin önce kodlarınızın çıktılarını alın , kodunuzu gözden geçirin ki emin olun basit bir hata olmadığından ve hala bir çözümünüz yoksa başkalarına danışın.

Bu yazı Amerikalı bir geliştirici olan Julia Johnson’un Medium platformu üzerinde yazmış olduğu “Managing Your Time as a Programming College Student” adlı yazısından çevrilmiştir. Bazı yerlerinde ise kendi yorumlarımı katmış bulunmaktayım. Ayrıca kendi yazdığım veya çeviri olan diğer yazılarımı incelemek için buraya tıklayınız.

SwiftUI: İlk Bakış

Merhaba arkadaşlar bu yazımda sizlere SwiftUI üzerinde yapmış olduğum ilk izlenimlerden bahsedeceğim. Bildiğiniz üzere SwiftUI, Apple tarafından WWDC19 konferansında duyuruldu.

En başta tekrardan bir yeni bir dil mi öğrenicem diye düşünürken SwiftUI üzerinde araştırmalar yapmaya başladım ve Apple’ın sitesinde gördüğüm kod parçacığı aslında çok komplike olan işleri az kod yazarak halledebileceğimizi göstermiş oldu.

Apple SwiftUI sayfasından alınmıştır.

SwiftUI Nedir ?

Better apps, Less Code

SwiftUI, tüm Apple cihazları için az kodla çok iş yapmamızı araçlar ve APIler ile gelişmiş kullanıcı arayüzleri oluşturmamızı sağlayan bir Framework olduğunu söyleyebiliriz.

SwiftUI Üzerinde İlk Denemelerin

SwiftUI sadece iOS 13’ü destekliyor ve iOS 13 üzerinde geliştirmek için XCode 11 Beta sürümünü kurmamız gerekiyor fakat XCode 11 Beta sürümünü kurmak için de macOS Catalina Beta sürümünü kurmamız gerekiyor.

İlk örnek kodlara baktığımda herhangi bir fikrim yoktu fakat SwiftUI üzerinde çalışmalara başlayınca aslında öğrenmenin kolay olduğunu ve yazdığımız kodların temiz ve basit olduğunu farkettim.

SwiftUI Kullanmaya Başladıktan Sonra Farkettiğim Yenilikler

Kendi yaptığım denemelerde UIKit ile SwiftUI arasında oluşan bariz farkları ve özellikleri listelemek gerekirse şu şekilde olur,

AutoLayout Artık Yok

Bildiğiniz üzere UIKit kullanırken tasarımlarımızdan AutoLayout yani sürükle bırak özelliği vardı fakat SwiftUI ile birlikte storyboardlarımızı tamamen kodlayarak hazırlıyoruz.

Karanlık Mod

Açık tema haricinde artık uygulamalarınız geceleri gözlerinizi yormayacak karanlık temaları olabiliyor. Artık geliştiriciler uygulamalarına karanlık tema ekleyebiliyorlar.

Canlı Önizleme

XCode 11’de SwiftUI kullanırken yazdığımız kodların canlı önizlemesini herhangi bir build işlemi yapmadan görebiliyoruz. Bu durum işlemcilerimizi biraz zorlasada bize zamandan kar ettiriyor fakat şu anda işlemcilerimizi zorlama durumu beta süreci içinde geçerli olacak bir durum olabilir.

SwiftUI ve UIKit’i Birlikte Kullanabilirsiniz

Üzülmenize gerek yok SwiftUI’in alması gereken çok yol var. Bu yüzden de UIKit’e tamamen elveda demiyoruz. Ayrıca Xcode 11 ile SwiftUI ile UIKit’i birlikte kullanabiliyoruz

Özet,

Bence SwiftUI’in herkes tarafından kullanılmaya başlaması için en azından bir 2-3 yıl var çünkü şu anda göründüğü kadarıyla sadece iOS 13 için ve macOS Catalina ile kullanılabiliniyor fakat bizim gibi geliştiricilerin bu SwiftUI’ı hızlıca öğrenmeye başlaması gerekiyor.

Şunu da unutmamak gerekiyor ki SwiftUI konusunda öğrenebileceğimiz bir çok şey bulunmaktadır. Bence bu yeni teknolojiyi projelerimizde kullanmamıza daha zaman var fakat erkenden öğrenmeye başlamak ise bize avantaj sağlayacaktır. SwiftUI hakkında daha fazla bilgi edinmek için buraya tıklayabilirsiniz.

Eğer bu yazımı beğendiyseniz ve Apple teknolojileri hakkında yazmış olduğum diğer yazıları merak ediyorsanız buraya tıklayınız.

Bilgisayar Mühendisliğinde 1 Yıl

Merhaba arkadaşlar uzun süredir yazı atmadığım bloğuma tekrardan paylaşım yapmaya karar verdim ve Nisan’dan beri paylaşım yapmadığımı düşünürsek bu 2.5 aylık süreçte neler yaptığımı ve Kocaeli Üniversitesinde Bilgisayar Mühendisliği bölümünden sizlere biraz bahsetmek istedim.

Öncelikle bu bölümde ilk yılımı kısaca özetleyecek olursam az okula gidip kendime daha çok bir şeyler katmayı düşündüğüm bir yıl oldu. Şimdi dönem dönem bu üniversite ve bu bölümde neler yaşadığımdan bahsetmeye başlayayım.

Okulda İlk Gün

Okulda ilk günüm aslında benim için heyecanlıydı bir önceki senemde Gazi Üniversitesinde Kimya Mühendisliği okurken içimde olan hoşnutsuzluk Kocaeli Üniversitesi Bilgisayar Mühendisliğinde olmamıştı genel olarak bu değişikliğin sebebini sorduklarında özüme döndüm diye cevap veriyordum. Aslında okuldaki ilk dersiniz de biraz heyecanlı oluyorsunuz çünkü tanıdığınız kimse yok herkes farklı yerlerden gelmiş ben genel olarak yeni insanlarla tanışmayı seven bir insanım yanıma oturan ilk kişiye “Merhaba ben Aydın” diyerek sohbet muhabbet etmeye başladığım için insanlarla tanışmam çok zor olmadı tabi okula çok fazla uğramayıp kaldığım yurtta ve ya bir kafede kendime bir şeyler katmaya çalıştığım için o tanıştığım insanlarla fazla arkadaşlık kuramadım. Genel olarak her üniversitede ilk haftanız tamamen hocalarınızla ve sınıftan bir kaç kişiyle tanışma haftası gibidir.

Bu Tanışma Haftası Faslı Geçtikten Sonra Ne Oldu ?

Başlangıçta kendime düzenli bir şekilde okula gitme sözü vermiş olsamda bunu çok yerinde tutamadım bir noktadan sonra şunu farkettim okul bana ilk sene de katacağı şey çok az çünkü direkt bölümle alakalı ders sayısı çok az bu dersler Programlama, Bilgisayar Laboratuvarı, Bilgisayar Mühendisliğine Giriş dersleri oluyordu. Bu derslerden genel olarak bahsetmek gerekirse Programlama dersinde C ile Programlama Mantığını nasıl Algoritma kurulabileceğini öğretiyorlardı daha sonra bu öğrendiğimiz bilgileri Bilgisayar Laboratuvarı üzerinde haftalık Quizz ler şeklinde pekiştirmemiz sağlanıyordu. Bilgisayar Mühendisliğine Giriş dersi ise genel olarak Bilgisayar kavramının tarihçesinden başlayıp Programlama Dilleri nedir ?, Flow Charts vb. konuları bize sözlü olarak anlatıyordu. Aslında bir nevi Bilgisayarların tarihçesini öğreniyorduk da diyebiliriz. Bunların haricinde genel olarak Matematik, Fizik, Lineer Cebir gibi dersler de gördük.

Okula başladıktan sonra şunu farketmeye başladım evet okul önemli fakat sadece bu okula devam ederek ve kendime bir şey eklemeyerek bitirmek mezun olunca ya düşük maaşla işime başlamama ya da işsizler kervanına katılmama sebeb olacağını farkettim bu durumun okulun verdiği eğitimle bir alakası yoktu aslında bu durumun temel sebebi bölümün çok fazla üniversitede olması ve fazla mezun vermesinden kaynaklıydı bu yüzden sadece bölümüne devam ederken kendine okulun dışında bir şeyler eklemeyi başaranlar ileride güzel bir maaş ve güzel bir iş sahibi olabileceğini farkettim bu da beni şöyle bir felsefeye itti “insanlar eğlenirken çalışırsam günün sonunda benim yüzüm gülecek” Bu yüzden öncelikle mezun olduktan sonra kendimi ne olarak tanımlamak istediğimi düşündüm ve kendimi bir Web Developer olarak hayal ettiğimde mutlu olduğumu farkettim ve okula başlamadan öncede sahip olduğum programlama bilgime güvenip okula fazla gitmemeyi ve bu artan zamandada kendime bir şeyler katmayı tercih ettim. Gelecekte ne geliştiricisi olduğuma karar verdikten sonra bu alandaki artılarımı ve eksilerimi belirlediğim bir liste oluşturdum ve backend konusunda bilgili olsamda frontend kısmında ise aşırı kötü olduğumu ve bu yüzden önce css deki eksikliklerimi kapatıp herhangi bir framework’e ihtiyaç duymadan kendi başıma bir tasarımı nasıl yapabilirim sorusuna bir çözüm getirdim daha sonra ise bu tasarımlara interaktif özellikler verebilmek adına javascript konusunda kendimi geliştirmeye başladım şanslıyım ki hızlı öğrenen bir insanım.

CSS ve JS üzerindeki eksikliklerimi tamamlayınca listemdeki eksiler backend teknolojileri olarak sadece PHP bilmek oldu bu yüzden NodeJS öğrenerek bu adımda bir adım attım ve aslında farkettim artılarım listesine koyduğum backend tecrübesinin aslında sadece PHP kullanarak yapılacak şeylerle sınırlı olduğunu gördüm. NodeJS, bu konuda ufkumu açan bir teknoloji oldu daha sonra Django’yuda listeme ekleyerek kendimi web sektöründe iyi bir yer edinebilecek bir kişi haline gelmeye başladığımı hissetmeye başladım.

İlk Dönem Bitti İkinci Dönemde Neler Oldu ?

İkinci dönemin başında aslında kendimi yeni teknolojilerle eğitmeye başladığımı ve ufkumun biraz daha açıldığını farketmiş olsam bile hala bir şeyler geliştirmemiş olmak içimde bir dert olmuştu. Tam da bu zamanlarda Okulda bulunan Gömülü Sistemler Laboratuvarında direkt olarak okulun kullanacağı bir projede kendimi bulmak aslında beni mutlu etti. O kadar zaman harcayıp öğrendiğim bilgileri sonunda birinin işine yarayabilecek şekilde kullanabiliyordum. Proje temel de basit olsa bile karmaşıklığı olan bir projeydi ve projenin bana ilk gelen hali gerçekten kötü haldeydi hem orada yazılmış kodları düzeltmek hem de projeyi ilerletmeye devam ettim. Tabi bu arada proje ile uğraşırken az olan arkadaş sayımı Laboratuvarda gönüllü olarak çalışan öğrenciler ile tanışma fırsatı yakaladım.

Genel Olarak Bilgisayar Mühendisliğinde 1 Yılda Bana Neler Kattı

İlk olarak Yazılım Sektörünün aslında çok büyük olduğunu ve geleceğe de yön vericek olan sektörlerden bir tanesi olduğunu farkettim. Bir Yazılımcı olarak yapabileceğimiz şeylerin bir sınırı olmadığını ve bölüm içinde tanıştığım bilgili insanlardan asıl başarının çalışmaktan ve yeni teknolojileri sürekli olarak takip etmekten ibaret olduğunu ve öğrendiğim her yeni teknoloji ile ufkumun biraz daha genişlediğini farkettim.

2019’da Öğrenilecek 4 Yazılım Dilli

Merhaba, bu yazımda sektörde popülerliği, maaş ve potansiyellerini dikkate alarak 2019’da Öğlenilecek 4 Yazılım Diliden bahsedeceğim.


Java

James Gosling tarafında 1991 yılında yaratılmıştır.

Büyük ve küçük şirketlerin yazılımları ve ya geliştirdikleri yazılımlar hala Java kullanmaktadır. Java’nın bu kadar popüler olmasında ki en büyük etkenlerden bir tanesi 1 kez çalıştır ve her yerde çalıştır sistemine sahip olmasıdır ve tabi ki Java hala Android uygulamaları geliştirmek için kullanılan birincil yazılım dili olması Java’nın sektördeki önemli dillerden biri haline getiriyor.

Şunu söylemeden de geçmemem gerek JetBrains firması tarafından geliştirilen Kotlin, bir çok şirketin sevgisini kazanmış olsa bile hala Java kullanarak mobil yazılım geliştirlen bir çok şirket bulunmaktadır.

Stack Over Flow’un 2018 anketlerinde insanların %45.3’ü hala Java kullanmaktadır fakat Javanın zaman içinde kullanım oranı ise düşüş yaşamaktadır.

Go Lang

2012 yılında Google’da çalışan mühendisler tarafından yayımlanan Go Lang. Bu mühendisler Go Lang’ı geliştirirken kullandıkları yazılım dilllerindeki beğenmedikleri özellikleri listelediler ve bunları daha kolay hale getirecek şekilde geliştirildi.

Facebook, Dell, Facebook gibi şirketler kendi yazılımlarında Go Lang’ı kullanmaya başladılar.

Stack OverFlow’un 2018 anketlerini incelerseniz Go Lang’ın popülerliği her geçen gün artmakta ve dünya da en çok talep edilen 3. yazılım dili olarak bahsedilmektedir. Bu da bize şunu göstermektedir ki Go Lang dünya genelin de çoktan talep edilen bir dil olmaya başlamış ve ileri de de bu taleplerin artacağı kesin gözüyle bakabiliriz.

Ayrıca Go Lang geliştiricileri, en yüksek maaşı alanlar geliştiriciler arasında Top 5’ın içindedir. Eğer erkenden Go Lang öğrenmeye başlarsanız dilin kendi de has özelliklerini daha erkenden öğrenebileceğiniz için ileride aranan kişi olabilme şansınız da artacaktır.

Python

1991 yılında yayınlanan Python, yayınlandığı zamandan beri popülerliği artmaktadır.

Python’u bu kadar özel yapan şey aslında herhangi bir ihtiyaca cevap olarak kullanılmasıdır. Sürekli olarak popülerliği artan makine öğrenmesi, veri analizi, yapay zeka gibi tüm teknolojiler Python kullanılarak geliştirilmektedir ve ilerleme kaydetmektedir(genel olarak). Web developer bile olsanız Python ile geliştirilmiş olan Django gibi frameworkler ile web sitenizi geliştirebilirsiniz.

Python’un en beğendiğim özelliği ise herhangi bir şeyi otomatikleştirmeyi sağlaması ve dünya çapında bir çok firma Python’a geçmeyi düşünürken bir çok firma ise çoktan Python kullanmaya başladı bile.

Airbnb, Google, Dropbox gibi firmalar çoktan Python kullanmaya başladı bile. Ufak bir ekleme daha yapmam gerekirse NASA bile kendi yazılımlarını geliştirirken Python kullanmaya başladı.

Tüm bahsettiklerimi bir kenara bırakırsak Python çok kolay öğrenilen bir yazılım dili olması ise onu değerli yapan özelliklerinden bir tanesi olduğunu düşünüyorum. Sadece Google’a Python yazarak bile bir çok kaynağa ulaşabiliyoruz.

Javascript

Javascript son zamanlarda çok geniş alanlara, çok farklı amaçlarda kullanılmaya başlandı. Bundan bir kaç sene önce sadece Web Sitelerini daha etkileşimli hale getirmek için kullandığım Javascript’in her geçen gün gelişmektedir ve yayınlanan frameworkleri ile farklı farklı amaçlarda kullanılmaktadır.

Javascript ile yazılabilinecek herhangi bir uygulama eninde sonunda Javascript ile yazılacaktır.

CO-Founder of Stack OverFlow, Jeff Atwood

Javascript ile geliştirilen bir ton, masaüstü uygulaması, mobil uygulaması gibi uygulamalar geliştirebileceğiniz frameworkler mevcuttur.

React Native ile mobil uygulamaları geliştirerek Android ve iOS’da çalışan uygulamalar üretebiliyoruz.

2018 Stack OverFlow anketlerine bakıcak olursak insanların %69.8’i Javascript kullanmaktadır.

Reddir, ebay, Airbnb, Instagram gibi şirketler Javascript kullanmaktadır. 2019 yılında Javascript öğrenmeye karar verdiyseniz bu kesinlikle bir hata değil hayatınızda yapabileceğiniz en iyi kararlardan biri olabilir. Tabi ki saf Javascript öğrenmesi biraz acı verici olsa bile öğrenmeye değeceği kesindir.

Javascript ile ilgili yazmış olduğum yazıları incelemek isterseniz buraya tıklayabilirsiniz.

Javascriptten de bahsettiğimize göre yazımın sonuna gelmiş oluyoruz. Bu yazımda 2019’da Öğrenilebilecek En İyi 4 Yazılım Dillerinden bahsettim. Bu yazılım dillerini seçerken sektördeki popülerliğini, maaşlarını ve ileri de başarılı bir dil olup olmamasını göz önünde bulundurarak hazırladım.