Kas 102016
 
5.802 views

Golang Notları 001

Bir yazılım dilini öğrenirken nasıl bir yol izlediğinizi bilemiyorum. Benimki biraz parçalı bulmaca çözmek gibidir. Tek bir kaynağı başından başlayarak düzenli şekilde izleyerek öğrenmek gibi bir alışkanlığım yoktur. Ben daha çok oradan buraya atlayarak, o an ilgimi çeken şeylere öncelik vererek öğrenmeyi tercih ederim. Bu amaçla, bulabildiğim, konuya ilişkin her türlü kaynağı bilgisayarıma depolarım. Artık internet yoksunluğu eskisi gibi değil. Ama, yine de kaynakların elimin altında olması bana güven duygusu verir.

Golang Notları

Tüm kaynakları yerel bilgisayara indirmek mümkün değil elbet. Zaten bu kadarına gerek te yok. Şahsen ben bile, bilgisayarıma heyecanla indirmiş olduğum bazı kaynakları aslında hiç kullanmamış olduğumu zaman zaman farkederim. (Özellikle sabit diskimde kıpırdayacak yerin kalmadığı zamanlarda… 🙂 )

İster indirin, isterseniz sadece linklerini not alın. Ya da link deposu olarak benim yazılarımı kullanın. Hiç farketmez!.. Ama zamanınızı iyi değerlendirin ve bulabildiğiniz her türlü kaynaktan olabildiğince yararlanın!

Bazıları için tutarsız gibi gelebilir ama, zaman içinde, bu bulmacanın parçaları yavaş yavaş tamamlanır ve tablo bir bütün olarak karşımıza çıkar. Benimki, bana göre, eğlenceli bir öğrenme yöntemidir.

Şimdi size benim listemdeki linklerden bir kaçını vereyim:

Bunlar da youtube üzerindeki bazı dersler:

Eğer facebook kullanıyorsanız, kısa bir süre önce Savaş Doğan arkadaşımızın kurduğu Golang Türkiye grubuna mutlaka katılın. En azından izleyici olun. Çok şey öğreneceğinizden eminim.

https://github/com üzerinde binlerce golang projesi bulabilirsiniz. Basit bir arama yapmanız yeterli olur.

Golang için uygun IDEler

Bir golang programının kaynak kodunu yazmak için -diğer pek çok dilde olduğu gibi- sadece basit bir metin düzenleyici yeterlidir. Ubuntuda gedit, vim, nano gibi programları kullanabilirsiniz.

Ama yazdığınız kodların otomatik olarak ve düzgün şekilde formatlanmasını isterseniz daha seçici olmanız, en azından go ile ilgili bir eklentiyi (plugini) metin düzenleyicinize yüklemeniz gerekir.

Go için kullanabileceğiniz bazı metin düzenleyici ve IDEler şunlardır:

  • Atom
  • Eclipse
  • Emacs
  • Gedit
  • Geany
  • IntelliJ IDEA
  • Net Beans 8.1
  • Vim
  • VisalStudio Code
  • GNU nano

Yukarıdakilerden “geany”, son sürümlerinde go eklentisi önceden yüklenmiş bir uygulamadır. Diğerlerine “go plugin” eklentisinin yüklenmesi gerekir. Ancak Net Beans 8.2 sürümü için uygun bir go eklentisi yoktur. Bu nedenle, isteniyorsa, sürüm 8.1 kullanılmalıdır.

Kullananların önerilerini dikkate aldığımızda, Intellij IDEA Community sürümü, go için en kullanışlı araçlardan biri olarak karşımıza çıkmaktadır.

Yine çok laf ettik. Arayı biraz kapatalım. Bir komut penceresi açın ve aşağıdaki komutları verin:

Bu komutu go sistem değişkenlerinin durumunu görmek için kullanıyoruz.

Go sürüm numaramızı öğrenmenin yolu.

Golang Notları

“merhaba.go” kod dosyamızı çalıştırma kodu (Aslında hem build, hem de run işlevi vardır.)

“merhaba.go” dosyasındaki kod satırlarının derlenerek çalıştırılabilir hale gelmesini sağlar. Derlenen dosya tek başına çalıştırılabilir hale gelir.

Şimdilik açıklama vermeyeceğim. Ama bu komutla, komut satırından hata denetimi yapabilen bir araca sahip olacaksınız. İleride “errcheck” komutunu oldukça çok kullanacağız.

Beni izlemeye devam edin. Yeni Golang Notları bölümlerinde daha fazla kod olacak.

Ahmet Aksoy

Golang Notları 001

Kas 092016
 
9.487 views

Golang Öğreniyorum

Yazılım üzerine asıl uzmanlık alanım Python. Hem basit, hem güçlü. Neredeyse bütün alanlarda çok etkili kütüphanelere sahip.

Golang Öğreniyorum

https://golang.org

Buna rağmen, “şeylerin interneti” (Internet of Things) gibi konularda henüz yeterince güçlü değil. Bu boşluğu aşmak üzere “micropython” gibi yeni girişimler var.

Python çalışmalarıma eskisi gibi, hatta daha da yoğunlaşarak devam edeceğim. Ancak bu durum, yeni alanlara da el atmama engel olacak değil!…
Golang, ya da kısaca go bu yeni alanlardan biri.

En etkin öğrenme yöntemlerinden birinin “öğretmek” olduğunu biliyorum. Çünkü bildiğiniz bir şeyi başkalarına aktarmak isterseniz, önce o bilgiyi içselleştirmek zorundasınız. Aksi halde sadece papağan tekrarı yapmış olursunuz ve konuyla ilgili çok basit soruları bile yanıtlayamazsınız.

Buna ilaveten, golang dilinin yakın gelecek açısından büyük bir potansiyel taşıdığını düşünüyorum. Golang bir yandan pythonun kullanım kolaylığını, bir yandan da javanın donanım sistemlerine yakınlığını bünyesine toplamış. Sınıf sistemlerini, “struct” yapılarıyla kolaylaştırmış. C’den pointer mekanizmasını devşirmiş. Aslında derlenen bir dil. Buna rağmen yorumlamalı bir dille çalışır gibi rahatsınız.

İşte bu nedenlerle, ara sıra da olsa go hakkında öğrendiklerimi burada sizlerle de paylaşacağım. Ama ders yapar gibi değil, bilgiyle harmanlanmış bir sohbet yapar gibi…

Eğer yazılım dillerine ilgi duyuyor ve kendinizi daha da geliştirmek istiyorsanız, ara sıra bu sayfalara sizi de beklerim.

Go, 2007 yılında Google bünyesinde geliştirilmeye başlanmış. İlk çıkışı, sistem programlamaya yönelik. 2009 yılı sonunda açık kaynaklı olarak genel kullanıma sunulmuş.

2015’te, mobil uygulamaları çok daha güçlü bir şekilde destekleyen kararlı sürüm go 1.5 yayınlanmış. Dil konusundaki gelişmeler hızını kesmeksizin devam ediyor.

Bu bir giriş yazısı olduğu için sözü fazla uzatmayacağım. Yine de Ubuntu 16.04 üzerine nasıl kurulduğunu tek bir satırla aktarayım:

Hoşçakal mesajımı da go ile vereyim:

Ahmet Aksoy

Golang Öğreniyorum

Kas 012016
 
6.621 views

OpenCV ve Python ile Grafik İşlem Örnekleri

OpenCV kütüphanesi, canlı grafik işlemler için gereken fonksiyonları kullanıma açıyor.

Ana siteden OpenCV2 veya OpenCV3 paketlerini yükleyebilirsiniz.

https://github.com/opencv/opencv adresinde ana sitenin bir çatalı yer alıyor. Tüm kodları ve örnekleri buradan da indirebilirsiniz.

OpenCV kütüphane fonksiyonları CUDA kullanabiliyor. Hemen hemen bütün sistemlerle uyumlu bu kütüphane, “samples” dizinlerine yerleştirilen örneklerle daha kolay anlaşılabilir hale getirilmiş.

“Coherence.py” python kodunu kullanarak elde ettiğim örneklerden biri şöyle:
coherence_01_01-11-2016

gabor_threads.py kodunu çalıştırarak elde ettiğim örneklerden birisi şu:
gabor_threads

Python dizinindeki örnekleri “python3 demo.py” komutuyla açılan menü sisteminden kolaylıkla aktive etmeniz mümkün.

facedetect.py programcığı, canlı bir şekilde insan yüzünü yakalama konusunda öğretici bir örnek.

Nesne tanıma konularıyla ilgileniyorsanız, bu kütüphaneyi mutlaka portföyünüze ekleyin.

Ahmet Aksoy

Referanslar:

May 222015
 
2.169 views

LG G4, F 1.8 diyafram aralığı ve 16 MP kamera özelliği ile düşük ışık ve portreler için ideal olan ultra-parlak lensi kullanarak muhteşem netlik ve ayrıntı ile parlayan harika-profesyonel görünümlü fotoğraflar çekin.

[youtube https://www.youtube.com/watch?v=2ApzsMSo64M]

G4'ün teknolojinin son harikası, kızılötesine duyarlı renk spektrum sensörü, bir fotoğrafın çekilmesinden bir kare önce tüm görünür ışığı analiz eder ve ölçer ve bu sayede bir fotoğrafın renklerinin düşük ışık koşullarında dahi doğal ve canlı görünmesini sağlar. Aydınlık ve karanlığı ayarlayan kamera ayarlarını düzenleyerek her anı bir sanat eserine çevirin, hareketleri daha hızlı dondurun ve daha iyi düşük ışıkta fotoğraf çekin. G4'ün lazer otomatik odaklanma özelliği ve kamera titremesini azaltan gelişmiş bir görüntü sabitleyicisi olan OIS 2.0 ile hızlı ve net fotoğraflar çekin.

Mükemmel selfie'yi yakalamak için ideal olan bu sınıfının en yüksek kalitesine sahip 8 MP ön kamera, LG'nin eğlenceli ve kullanımı kolay Hareketle Çekim ve Tanıma özelliklerini barındırıyor.

IPS Quantum Ekran, zengin ve orijinal renklerde ve şaşırtıcı düzeyde aslına uygun yüksek kontrastlı canlı görüntüler üretir.  Ayrıca, ekranın gün ışığında kolaylıkla görünür olmasını sağlamanın yanı sıra, pürüzsüz ve hızlı tepki sağlayan In-cell Touch Display teknolojiden de yararlanır.

Sanatsal bir hassasiyetten esin alan G4'ün birinci sınıf arka kapakları metalik gri, seramik beyaz, parlak altın ve buğday deri şeklinde sunulmaktadır. Şık renkli arka kapaklar, dokusal olarak işlenmiş diziler şeklinde ayırt ediciliğe sahiptir ve deri seçenekleri, özel iplikle dikilmiş bir dizi ayırt edici renk ve özellik ile sunulmaktadır.

Detay için: http://www.lg.com/tr/smart-phones/lg-LGH815TR

Bir boomads advertorial içeriğidir.
boomads_offer_client = “aeeac937c1fb46288cbcfa145ffa9dd3″;
boomads_offer_id =”1173”;

Nis 172015
 
1.857 views

Telefonunuzu bir dakikada şarj edebilirsiniz

Size hala bir hayal gibi geliyor olsa da, yeni geliştirilmekte olan aluminyum temelli bir teknoloji bunu mümkün hale getiriyor.

Telefonunuzu bir dakikada şarj edebilirsiniz

Stanford Üniversitesi Precourt Enstitüsündeki araştırma grubunun yöneticisi olan profesör Hangje Dai, yeni geliştirilen bu pillerin esnek bir yapıya sahip olduğunu ve lityum iyon veya nikel-kadmiyum bataryaların yarattığı çevre kirliliği, ve darbe/yanma/patlama gibi sorunlara sahip olmadığını söylüyor. Üstelik çok da ucuz.

[youtube https://www.youtube.com/watch?v=ZKIcYk7E9lU&w=560&h=315]

Yeni piller anot olarak aluminyum, katot olarak ta grafit, yani karbon kullanıyorlar. Aluminyum-iyon bataryalar kısa sürede şarj edilebildikleri gibi, ömürleri de diğer rakiplerine kıyasla çok daha uzun. Bu piller, 7500 kez şarj edilebiliyor. Lityum-iyon pillerde ise en fazla şarj sayısı sadece 1000.

Ancak bu bataryalar halen lityum-iyon pillerin yarısı kadar voltaj üretebiliyor. Herşeye rağmen, bu konuda güçlü bir umut ışığı yaktıklarını söyleyebiliriz.

Kaynaklar:

  • http://news.stanford.edu/news/2015/march/aluminum-ion-battery-033115.html
  • http://amazing.axtelsoft.com/new-aluminum-battery-fully-charges-in-one-minute/
  • Ara 102014
     
    2.002 views

    Amerikada Üretiliyor Ama Tasarımı Kenyadan

    Amerikada Üretiliyor Ama Tasarımı KenyadanAmerika’da tasarlanıp, Tayvan’da, Malezya’da, Hongkong’da, Türkiye’de, vb üretilen ürünleri artık doğal karşılıyoruz. Amerika Birleşik Devletleri uzun zamandır “bilgi” tekelini elinde tutup, üretimini taşaron ülkelere yaptırma politikasını izliyor.

    Ancak bu kez tam tersine bir ürün var ortada. Bu ürünün tasarımı Kenya’da yapıldı. Üretimi ise Amerika Birleşik Devletleri’nde yapılıyor.

    Ürünün kod adı BRCK. Bu bir router. Mobil olarak kullanılıyor ve internet erişiminin ve elektrik enerjisinin sorunlu olduğu bölgelerde kullanılma üzere tasarlanmış. Bağlantılarını ethernet kartıyla, wi-fi ağları üzerinden veya SIM kartları aracılığıyla gerçekleştiriyor ve kendi sabit diskine depoladığı bilgileri erişimin olmadığı zaman kullanıma sokuyor.

    Radikal Blog’da yer alan yazının giriş bölümünde şunlar var:

    Kenya’da Tasarlandı  Amerika‘da Üretiliyor

    Tersine çok alışmışız. Eğer bir cihaz Amerika’da tasarlanıp, Kenya’da üretilmiş olsaydı dikkatimizi bile çekmezdi. Ama Kenya’da geliştirilp, üretimi Amerika’da yapılan bir cihaz ister istemez dikkatimizi de çekiyor.

    BRCK kod adlı bu sıradışı cihaz, mobil bir internet router. Web bağlantısını 3 farklı yöntemle sağlıyor:

    1- Ethernet kablosuyla
    2- Wi-fi kablosuz ağlar üzerinden
    3- Normal bir SIM kartııyla 3G veya 4G bağlantısı kurarak

    Sağladığı bağlantıyı aynı anda 20 kullanıcı ile paylaşabiliyor.

    Bu cihaz elektrik ve internet erişimi sorunlu olan bölgelerde çok daha işlevsel. Bu özelliği sayesinde daha şimdiden 45 ayrı ülkeden sipariş almış durumda.

    Yazının tamamına http://blog.radikal.com.tr/bilim-teknoloji/kenyada-tasarlandi-amerikada-uretiliyor-76628 adresinden erişebilirsiniz.

    ahmet aksoy