BLOG BLOG

Category: Genel
Türkiye’de Bilgisayar Bilimleri ile ilgili konferanslar

Bilgisayar bilimleri ile ilgili hangi konferanslara gidilmeli hangileri önemli gibi sorular kafanızı kurcalıyor olabilir. Bazen konferansı buluyor ve önemli tarihleri kaçırdığımız oluyor. Böyle durumlarla karşılaşmamak adına sadece bizim alanımızla ilgili konferanslara burada yer vereceğim ve zaman zaman tarihlerini güncelleyeceğim.

Apocalyptica

Every time and everywhere, it doesn’t matter. This music group is so perfect for me and i listened to over and over this video.

Youtube Kanalı Açma Fikri

Daha önce youtube kanalı yaratma girişimlerim, yetersiz ekipman nedeniyle ilk önce beni tatmin etmediği için başarısız oldu.

Şimdi yeni ve yeniden başlıyorum.

Peki bu isteğim nereden geliyor ?

Açık Makale – ArXiv.org

Bence olması gereken zamanla gerçekleşecek ve bu sitede yayınlanan makaleler sayesinde akademisyenlerin unvanları alabilecek. hiç olmazsa öyle ümit etmek istiyorum. Hepimiz biliyoruzki Open source’un bilişim dünyasına neler yaptığını, onu arşa çıkardığını, nirvanaya ulaştırdığını gözlerimizle gördük.

Girişimin Yaşı Olmaz

Harvard’da okurken oğullarını kaybetmiş yaşlı bir çifttir Stanford’lar. Kendi halinde, mütevazi görünümlü, dış görünüşten çok ideallerine bağlı insanlar. Oğullarına olan sevgilerini oğullarının çok sevdiği Harvard Üniversitesi’ne bir anıt veya bina yaparak ölümsüzleştirmek isterler. Bu fikirlerini gerçekleştirmek için rektörle konuşmaya karar verirler. Hikaye de işte böyle başlar:

Yazılımcı olmak zor mudur?

Kısa ve net cevabı; zordur arkadaş.

Uzun ve detaylı cevabı; zordur ama! aması var işte.

Aması şu; keyiflidir.

Neden yazılımcı olmak istiyorsunuz?

Abi ben bilgisayarı çok severim? Saatlerce başında otursam bile bıkmam? diyenlerdenseniz o iş o kadar basit değil.

Gerçeklerle karşılaşmanın vakti geldi bence.

Split

Bu film hakkında yazma nedenim filmin sonunda yapmış olan göndermedir. Bu kısmı sonda olduğu için ve konuyla alakası olmadığı için spoiler kapsamında değerlendirilmez bence. O yüzden, birazdan o kısma geleceğim.

Filme gelince, en başta izlerken geriyor ve  göz kırpmadan pür dikkat izleyiciyi(yani beni) hapsediyor. Filmin psikoloji odaklı konusu ve benim gibi bu tarz filmleri sevenler için filmi daha keyifli hale getiriyor.

Golang – Map

İkili değerleri tutmamıza yarayan yapılardır. Değerleri
anahtar – değer (key – values)
şeklinde tutmakta ve dizilerde kullandığımız index değer artık tanımlamış olduğumuz anahtar değer olmaktadır.

Mapler daha önce programlama dilleri ile uğraşanlar varsa kolaylıkla anlayabilecekleri dilden anlatmak gerekirse direk dictionary demektir.

Mapleri iki farklı şekilde tanımlayabiliriz.

Birincisi değerlerini başlangıçta vermediğimiz şekliyle;

a := make(map[string]int)

a değişkeni burada map’dir.

Bir diğeri ise;

a := map[string]int{"ali": 76, "veli": 22}

Her iki a değişkeni de map olup yazdırdığımızda karşımıza

package main

import "fmt"

func main() {
	a := make(map[string]int)
   	fmt.Println(a)
	
	b := map[string]int{"ali": 76, "veli": 22} 
	mt.Println(b)
}

Çıktısı;

map[]
map[veli:22 ali:76]

https://play.golang.org/p/WHIt_4_KRjT
bu şekildedir.

Sully

Uzun zamandır yazmak istiyordum Sully hakkında bir şeyler. Hatta başladım ama taslaklara attım. Bu film için bu kadar çok yazma isteğinde olmamın nedenlerinden bir true story olması elbette.

go:missing Git command

Yeni bir linux sunucunuz var. Burayı takip ederek go yu kurdunuz. Ve github dan projenizi çekeceksiniz.

Başka diyarlara götürür

Özellikle 1:26’daki girişi çok başarılı olmuş bence. Dawes’in When My Time Comes adlı bu şarkısını gözleri kapatıp dinlemek ısrarla tavsiye edilir.

Seri port haberleşme

Mac Os veya Linux gibi unix sistemlerler seri portları öğrenmek için teminalde

Skeleton Screen Animation nedir?

Klasik temel animasyonlar yerine kullanıcıyı bekleme süresini azaltıp tüm verinin yüklenmesi yerine yüklenenen verilerin gösterildiği ve bu süre zarfında bir loading animasyonu yerine geçebilecek bir düzende bahsediyoruz.

Progressive Web Apps nedir?

Kısaca dertlerden kurtulma olarak tanımlayabilirim. Tamam tamam kendi içinde dertleri olabilir ama 5 yıllık Android geliştirme hayatımda bir türlü isteyerek ve severek yapmadığım design modundan kurtulmamı sağlayacak nane gibi gözüküyor.

Bilgisayar Bilimleri okuma listesi

Veritabanı Yönetim Sistemleri 

  • Database System Concepts 6e By Abraham Silberschatz, Henry Korth and S Sudarshan
R Kurulum

Ben OsX kullandığım için osx ye yönelik kurulumu analtacağım. Eğer windows platformu kullanıyorsanız web de yeteri kadar kurulum linkleri mevcut, kurulum adımlarını oradan takip edebilirsiniz.

https://cran.r-project.org/bin/macosx/

adresine giriyoruz.

Derin Öğrenme (Deep Learning)

Size ilk önce Tesla desem. İlk aklınıza gelen nedir diye sorsam? Nikola Tesla mı yoksa Elon Musk’ın Tesla arabaları mı? Hangisi gelirse gelsin farketmez. İkisinde de hayır vardır. Yalnız bizim burada değineceğimiz Tesla arabaları.

Büyük Veri (Big Data)

Büyük veri kavramına girmeden önce  veri boyutlarını ele almakta fayda var.

Hadoop

Hadoop bir java paketidir. Açık kaynaktır. Apache tarafından geliştirilmiştir.

Büyük verileri işlemek için kullanılır.

HDFS ve Mapreduce’den oluşur.

HDFS (Hadoop Distributed File System)  = Dağıtık dosyalama sistemi
Mapreduce = Veri Analiz Yöntemi

Burada projenin geliştiricilerinden Tom White’ın kitabı bulunmaktadır. https://www.amazon.com/Hadoop-Definitive-Guide-Tom-White/dp/0596521979

Tabi hadoop u anlamak için Büyük Veri (Big Data) ve Map Reduce kavramlarına da bakmak gerekiyor.

Sıralama Algoritmaları

Basit tanımıyla bir liste halinde verilen karışık sayıları sıralamak için kullanmış olduğumuz algoritmalardır. Bu kadar basit tanımdan sonra sayıları sıralamak için neden bu kadar uğraştığımızı düşünecek olursanız nedeni şöyle; sıralama algoritmaları çoğu algoritmaların temelinde kullanılırken aynı zamanda kişilerin algoritmik düşünme yeteneğini de artıracaktır.

Çoğu algoritmaların temelinden kullanmak?

Bilgisayar bilimlerinden elimizdeki veriler çoğu zaman düzensizdir ve gelişigüzel elde edilmiştir. Bu elde ettiğimiz verileri yada veritabanından çektiğimiz bilgileri belirli bir düzen içinde görmeyi isteriz. Düzen kavramını çoğu durumda kullanılan bir kavramdır ve sıralama algoritmaları bize bu düzeni en verimli nasıl sağlayabiliriz onu önerecektir.

Algoritmik düşünme yeteneğini artırmak ?

Size elimizde 8,3,4,1,5 şeklinde bir sıralı sayılar var desem ve bunu sıralayın desem; hemen orada 1 gözümüze çarpacak ve en başa koyacağız ardından 3,4 ve böyle giderek 1,3,4,5,8 şeklinde hiç de zor olmayan bir beyin aktivitesi ile bunu başarırız. Peki bunu bilgisayara yaptırın desem?

Bilgisayar için aslolan kıyaslamadır. birbirleri ile kıyaslayıp sayıların büyüklüğünü küçüklüğüne bulacağız. Tıpkı beynimizde yaptığımız ve farketmediğimiz şekliyle.

Velhasıl siz bunların nasıl kıyaslanarak sıralanacağını düşündüğünüzde muhtemelen bir iki yol bulacaksınız. Ama aşağıda sıralama için oldukça farklı algoritmalar var ve bunları incelemenizi tavsiye ederim.

Zamanla aşağıdaki sıralama algoritmalarının tek tek içeriğine bakacağız.

  • Araya sokma sıralaması (Insertion Sort)
  • Seçerek Sıralama (Selection Sort)
  • Hızlı Sıralama (Quick Sort)
  • Birleştirme Sıralama (Merge Sort)
  • Yığın Sıralama (Heap Sort)
  • Sayarak Sıralama (Counting Sort)
  • Kabarcık Sıralama (Bubble Sort)
  • Taban Sıralama (Radix Sort)