Showing Posts From
Genel
- February 7, 2013
1. Ders – Python 2.7.3 Kurulumu – Videolu Python Dersleri
Merhaba arkadaşlar. Videolu Python derslerine bu video ile başlıyorum. İlk derste kurulum yapıldı ve Python 2.7.3 kuruldu. Ayrıca path’e eklendi. Sorularınızı her zaman buradan ya da: ### [http://www.ufakseyleratolyesi.com/sorucevap/](http://www.uf...
- July 11, 2012
1 – Matlab ile Değişken Tanımlama ve Yorum İşlemleri
Matlab yazılarını belirli bir sırayla ve düzenli olarak yazma ihtiyacı duydum. Bu başlangıç yazısında Matlab üzerinde değişken tanımlamadan ve yorum satırlarından bahsedeceğim. Öncelikle, değişken tanımlama konusunda tür belirtmemiz gerekmediğini sö...
- February 18, 2014
10. Ders – Python’da List Comprehension
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/ders5_1.jpeg)Python’da liste, demet ve sözlük gibi yapıları döngü ile oluştururken, hem kodu kısaltacak hem verimi artıracak bir yapı mevcut. Buna list comprehension deniyor. Bu videoda bu k...
- July 23, 2012
10 – Matlab ile Denklem Çözme ve Döngüler (For ve While Döngüsü)
İlk olarak, elimizde bir polinomun olduğunu varsayalım. Bir polinomun köklerini bulmak için Matlab altında roots() isimli bir fonksiyon kullanıyoruz. Şimdi o fonksiyonun çıktısını bir örnekle görelim. (x+2)^2 ifadesinin açılımını zaten biliyoruz. Bu...
- February 18, 2014
11. Ders – Python’da Koşullu İfadeler & if Yapısı
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/ders5_1.jpeg)12. video, 11. konuda Python’da koşullu ifadeleri, if yapısını işliyoruz. Ayrıca mantıksal ifadeler de burda kullanıldığı için giriş yapmış oluyoruz. Görsel Python eğitiminde ya...
- January 21, 2012
1’den 360’a Kadar Tüm Sayıların Sinüs, Cosinüs, Tanjant ve Cotanjant Değerleri
Daha önce yazdığım math modülü fonksiyonlarından trigonometrik olanları kullanarak birkaç satır kodla uzun bir listeyi Python yardımıyla nasıl hazırlayacağımızı görelim. Range fonksiyonu sayesinde 1’den 360’a kadar olan sayıları sıra sıra for döngüs...
- February 7, 2013
2. Ders – Temel Hesaplamalar ve print İfadesi
Merhaba arkadaşlar. 2. dersimizde Python ile temel hesaplamalara bakıyoruz. 4 işlem ve bunlara ek olarak mod ve üs alma işlemlerine bakıyoruz. Ayrıca print ifadesi ve tırnak kullanımına da giriş yapıyoruz. Sorularınızı her zaman buradan ya da: ### ...
- July 11, 2012
2 – Matlab Değişkenlerine Değer Atama ve Basit Matematik İşlemleri
İlk yazının devamı gibi olacak olan bu yazıda, değişkenlerde tutulan değerleri kullanma üzerinde duracağız. Yani bir değişkenin değerini başka bir değişkene atamak, onun farklı bir versiyonunu atamak gibi. Gelin ne demek istediğime biraz daha detayl...
- February 10, 2013
3. Ders – Kullanıcıdan Veri Alma ve Tamsayı Bölmesi
Türkçe videolu Python dersleri adı altında başladığımız videolarda 4. videoya ulaştık. Bu aşamada, ilk program dosyamızı oluşturmaya başlamadan bir önceki dersteyiz. Kullanıcıdan nasıl veri alacağımızı görüyoruz. Ayrıca Python’da iki tamsayı bölünün...
- July 11, 2012
3 – Matlab Üzerinde Format Özelliği ile Çıktı Formatını Düzenlemek
Matlab üzerinde yaptığımız bir işlemden elde edeceğimiz çıktının her zaman 0.2323 şeklinde olmasını istemeyebiliriz. Burada en yaygın olarak kullanıldığına inandığım çıktı formatlarından bahsedeceğim. Öncelikle, format niteliğinin nasıl kullanıldığı...
- February 26, 2013
4 Dakikada Android/iOS Uygulaması [Videolu]
4 dakikada iOS/Android/Windows/Linux/MacOS platformlarında çalışabilen bir uygulama geliştiriyoruz. Uygulama şu anlık oldukça basit bir halde. Bir butondan oluşan ufak bir sayaç uygulaması. Butona her basıldığında sayaçtaki sayı artıyor ve bu sayı y...
- February 15, 2013
4. Ders – İlk Örnek ve Program Dosyası Oluşturmak
Bu Python dersinde ilk örnek programımızı yazıyoruz ve program dosyaları(.py) oluşturmayı öğreniyoruz. Python program dosyalarının kullanımı ve örnek programımız hakkındaki sorularınızı burdan sorabilirsiniz. Sonraki derslerde yapacağımız uygulamala...
- July 11, 2012
4 – Matlab’da Bilimsel Yazım (10 üzeri gösterimi) ve Basit Matematik Fonksiyonları
Matlab üzerinde işlem yaparken 4.23* 10 üzeri 43 sayısını girmek için elbet de bu sayıyı 1000….000 ile çarpmamız gerekmiyor. İşte bu 4. yazıya bunu kısa yoldan nasıl yapacağımızla başlayıp kök alma, sinüs, kosinüs değerleri bulma, yuvarlama, mutlak ...
- February 16, 2013
5. Ders – Listelere Giriş, dir() ve help() Fonksiyonları
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/ders5_1.jpeg)5. görüntülü Python anlatım dersimizde Python’da liste veri türünü görüyoruz. Farklı türlerden değişkenleri içerisinde tutabilen listelerde herhangi bir boyut sınırlaması yok. İ...
- July 14, 2012
5 – Tanımlanan Değişkenleri, Türlerini Listeleme ve Stringler
Daha önceki yazılarda Matlab üzerinde birçok değişken tanımlayıp bunlarla basit işlemler yapmıştık. Şimdi, tanımladığımız değişkenlerin bir listesini görmek istediğimizde, ya da herhangi bir filtreleme uygulayarak görmek istediğimizde (mesela, “a” i...
- February 15, 2014
6. Ders – Python’da Liste Methodları
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/ders5_1.jpeg)6. videolu Python eğitimi(tutorial’ı ders olarak çevirmekten vazgeçtim, eğitim diyorum) videosunda listelere yaptığımız girişin ardından, listelerin methodlarını inceliyoruz. Ön...
- July 14, 2012
6 – Matlab’da İstenen Değişkeni veya Tüm Değişkenleri Sıfırlama, Ekranı Temizleme
Matlab yazılarına, artık gittikçe büyümeye başlayan kodlar, uzayan komut ekranları ve tekrar kullanmayacağımız halde oluşturduğumuz değişkenleri nasıl daha sade hale getireceğimizi veya nasıl tamamen sileceğimizi öğrenerek devam ediyoruz. Bu yazı di...
- February 15, 2014
7. Ders – Python’da Değişken Silmek ve Yer Değiştirmek
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/ders5_1.jpeg)Herkese merhabalar, eğitimin 7. videosunda, Python’da bir değişkeni silmekten ve iki değişkenin değerlerini kendi aralarında nasıl değiştireceklerinden bahsediyoruz. Python’da t...
- July 14, 2012
7 – Sin(pi) Neden 0 Çıkmaz?
Merhabalar, bu yazıda Matlab veya herhangi bir programlama dilinde karşılaşmamızın olası olduğu bir sorundan bahsedeceğim. Daha önce hesaplamadıysanız, değerlerini zaten bildiğimiz sin(pi) ve cos(pi/2) yi hesaplayın. Hatta cos(3*pi/2) ve sin(2*pi)’y...
- February 15, 2014
8. Ders – Python’da range() Fonksiyonu ile Liste Oluşturmak
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/ders5_1.jpeg)Python videolarının 9.’su, eğitimin 8. kısmında, ileride özellikle for döngüsünde çok işimize yarayacak olan range() fonksiyonunu ve kullanımını örneklerle görüyoruz. Ek olarak ...
- July 15, 2012
8 – Matlab’da Vektör ve Matris İşlemleri, Linspace Fonksiyonu
Lafı uzatmadan, vektörlerin tanımlanması ve üzerlerindeki temel işlemler ile başlayalım. Öncelikle, x isimli bir vektöre, 1’den 10 a kadar olan sayıları nasıl vereceğimizi görelim: ``` >> x = 1:10 x = 1 2 3 4 5 6 7 ...
- February 18, 2014
9. Ders – Python’da Döngülere Giriş, For Döngüsü ve Örneği
[](http://www.gurayyildirim.com.tr/wp-content/uploads/python-multithreading.png)Python videolarının 10.su, derslerin 9.sunda döngülere giriş yapıyoruz. ilk olarak for döngüsünü anlatarak başlıyoruz. While döngüsü ilerleyen derslerde olacak, araya ba...
- July 19, 2012
9 – Matlab Dosyası Oluşturma, Vektör Örneği ve Temel Grafik Çizimi
Merhaba, bu 9. yazıda, önceki yazının sonunda da belirttiğim üzere ilk olarak Matlab ortamında yazdığımız programları nasıl kaydedeceğimizi göreceğiz. Öncelikle, birkaç satır kod yazalım ve bunun neden gerekli olduğunu söyleyelim. Ardından da nasıl ...
- May 8, 2013
Android İçin Online Satranç Oyunu
[](http://www.gurayyildirim.com.tr/wp-content/uploads/2.png)Asgard Projesi için yazdığım Android uygulaması, proje yalan olunca ne zamandır elimde bekliyordu. Bu hali, geliştirilmeye açık olduğuna inandığım baştan yazılmış şekli. chess.py’nin yapımc...
- January 12, 2013
Android Satranç Uygulaması – Asgard Projesi
[](http://www.gurayyildirim.com.tr/blog/android-satranc-uygulamasi-asgard-projesi-849.html/asgard-android-projesi-oyun)Asgard Projesi için hazırlamakta olduğum Android uygulamasının kaynak kodları. İlk mobil uygulama olduğu için kodlar çok dağınık. ...
- February 16, 2013
Arduino İle İlk Adım – Başlangıç
Arduino’nun adını şu ana kadar duyduysanız muhtemelen ilginizi çekmiştir. Bu yazıda, elinize aldığınızdan itibaren nasıl bir başlangıç yapmanız gerektiğini inceliyoruz. Arduino, normalde yeni başlayan birinin oldukça yoğun bir öğrenme sürecinden son...
- June 17, 2014
Arduino ile Python İletişimi
Arduino videolarına ara verip, Python ile Arduino arasındaki iletişime geçerek 8 yeni video yayınladım. Bu videolarda, pyserial modülünün kullanımından başlayıp, bilgisayar üzerinden görsel bir Python arayüzüyle 2 servo motorun kullanımına kadar gel...
- March 2, 2014
Arduino Videoları – 1: Arduino nedir? Arduino UNO’nun incelenmesi
Arduino videolarının ilkinde, Arduino’nun ne olduğundan kısaca bahsettik. İlerleyen videolarda kurulum yapıp kod yazmaya ve devre hazırlamaya başlayacağız. Video aşağıdadır. ...
- March 4, 2014
Arduino Videoları – 2: Arduino Kurulumu, Hafıza Kullanımı ve Satır Numaraları
Arduino video serisinin ikinci videosunda, Arduino IDE’nin kurulumu, kurulumdan sonra açılacak arayüzü inceleyip hafıza kullanımı ve satır numaralarının nasıl takip edilebileceğine baktık. Sorularınızı burdan veya video altından sorabilirseniz elimd...
- March 4, 2014
Arduino Videoları – 3: Arduino LED Yakma, Kod Derleme, Yükleme ve Fritzing
Bu videoda Arduino üzerine nasıl kod yükleyeceğiniz, LED yakma uygulaması ve Fritzing programından bahsettik. Arduino UNO’nun 13 numaralı pinine bağlı olan LED’i yarım saniye yakıp 1 saniye söndüren kodu yazdık. Arduino LED yakmak için gereken minim...
- March 6, 2014
Arduino Videoları – 4: Breadboard’da LED Kullanımı ve Akım Hesaplaması
Arduino videolarının dördüncüsünde, breadboard üzerindeki temel bağlantıları tanıdık, bir önceki videoda 13 numaralı pine bağlı olan LED’e yaptığımız işlemin bir benzerini 5 numaralı pine kendimiz LED bağlayarak yaptık. Videolar yazının devamındadır...
- March 16, 2014
Arduino Videoları – 5: Buton İle Giriş ve LED Kontrolü
Videolu Arduino anlatımının 5. kısmında butondan veri okumayı, yani digitalRead() fonksiyonunu ve bir fonksiyonu nasıl input olarak tanımlayacağımızı görüyoruz. Ayrıca butondan okuduğumuz girdiye göre LED’i kontrol ediyoruz. Basit açıp kapatma işlem...
- April 8, 2013
Bağlantılı Listeler (Linked Lists)
Veri yapıları için temel niteliğinde olan bir başka konuysa bağlantılı listeler. Aslında veri yapılarının temeli desem daha doğru olacak. Çünkü diğer veri yapılarını elde ederken kullanılan en temel yapılardan birisi. Oldukça güçlü bir yönetim sağlı...
- August 27, 2011
Bind() Fonksiyonu ile Eyleme Göre Hareket Eden Programlar
Mause tuşlarından hangisine bastığımıza bağlı olarak programımızın tepki vermesini sağlayabiliriz. Farenizin 3 tuşlu olduğunu varsayarak sağ, sol ve orta tıka göre tepki veren bir program oluşturalım. ``` #-*-coding:utf8-*- from Tkinter import * #...
- August 27, 2011
Bind Fonksiyonu ile Kullanılabilecek İfadeler
Bind fonksiyonu ile farklı kullanıcı hareketlerine farklı tepkiler veren programlar yapabilmemiz mümkün. Bu yazıda bunlara elimden geldiğince değineceğim. ile mause üzerindeyken neler yapılacağı, ile mause üzerinden giderken neler yapılacağı, ile...
- October 9, 2012
Blogun Sunucusu Değişti
Uzun bir süredir aklımda olan sunucu değiştirme olayını sonunda yapabildim. Artık [Fatih](http://www.fatihpense.com)‘in sunucusunda barınıyor sitem. Daha hızlı olduğunu da belirtmek zorundayım:) Alt siteler şu an aktif değil, onlara zaman ayırmadan ...
- January 4, 2013
C Çalışması Uygulamaları
Sınav öncesi yaptığımız C çalışmasının örnek kodları. Tek ve çok boyutlu diziler, dosya okuma, yazma, fprintf, fscanf, bit işlemleri, struct, union ve enum örnekleri gibi konular var. ``` #include <stdio.h> void topla(int aktar[]){ int i, toplam...
- October 14, 2012
C ile Basit Hesap Makinesi
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/C-programlama1.png)C ile dört işlemi yapan basit bir hesap makinesi yazmak istedim. Belki bir gün birilerinin işine yarar. İçerisinde farklılık olsun diye switch case(her ne kadar sevmiyor d...
- October 16, 2012
C ile Matris Tanımlanması ve Çarpımı
Bu yazıda vereceğim kod kullanıcıdan iki matris için önce boyutlarını alıyor, sonra onlara göre birer dizi oluşturup kullanıcıdan matris elemanlarını alıyor. En son da matrisleri çarpıp sonucu yine bir matris şeklinde ekrana yazdırıyor. Bir arkadaşı...
- November 18, 2012
C ile Mükemmel Sayı Hesaplama
Mükemmel sayı hesaplayan basit bir C fonksiyonu hazırladım. Belki işine yarayan olur diye bloga koymak istedim. Program kaça kadar mükemmel sayıları hesaplamak istediğinizi soruyor. Daha sonra mukemmel isimli fonksiyonu çağırıp ona hesaplattırıyor. ...
- August 23, 2011
Çalışılan İşletim Sistemini Öğrenmek
Os modülünün çok kullanılan özelliklerinden biri de çalışılan işletim sistemini öğrenmeye yarayan os.name() fonksiyonudur. Windows için “nt”, Linux için “posix” sonucunu verir. If yapısıyla kullanılarak işletim sistemine göre muamele yapılması mümkü...
- April 20, 2013
C++’da Bağlantılı Listelerin Türleri (Types of Linked Lists)
Veri yapıları kategorisine yazdığım önceki yazılardan birinde, bağlantılı listeleri (linked lists) anlatmıştık. Bu yazıda, bu listelerin farklı türlerini ele alacağız. Halkalı listeler, çift bağlantılı listeler (doubly linked lists) ve çok boyutlu b...
- April 8, 2013
C++’da Dinamik Bellek Yönetimi (Dynamic Memory Allocation)
Hazır veri yapıları dersini alıyorken, ders için çalışırken slaytlardan hazırladığım uygulamalara ve aldığım notlara bir anlam katar belki deyip, onları buraya eklemeye başladım. Data structures alanına girmek için ilk olarak dinamik bellek yönetimi...
- April 20, 2013
C++’da Diziler ve İşaretçiler (Pointer ve Arrayler)
Bu yazıda yine derste tuttuğum notlardan, C++ ile çalışırken dizi ve işaretçilerin nasıl kullanılacağı hakkında örnek üzerinden anlatım yapalım. Gerekli açıklamalar yorum satırları içerisinde yer almaktadır. Kodları yazının devamında bulabilirsiniz....
- October 21, 2012
C’de Programı Argümanla Çağırmak
C’de yazdığım hesap makinesinin farklı basit bir örneğini yazdım. Programı çağırırken verilen argümanlara göre işlem yapıyor. Yani komut satırında program topla 3 5 denince sonucu 8 olarak veriyor. Şu anlık integerlarla çalışıyor, floatlara uyarladı...
- January 5, 2018
Statik bir Web Sitesini AWS CloudFront ve S3 kullanarak CDN Üzerinden Yayına almak
# Amaç Tüm dünyadan giriş yapılan sitelerin sunucularının veya dosya sunucularının fiziksel konumlandırılması ciddi emek gerektirmekte. Bu noktada, CDN yapıları kullanıcıları kendilerine en yakın konumdaki sunucuya yönlendirme işini DNS yardımıyla ...
- April 22, 2013
[Çözüm] Result Code: NS_ERROR_FAILURE (0x80004005) Virtualbox Hatası
Linux Mint 14 altında Virtualbox çalıştırmak istediğimde şöyle bir hata almıştım: ``` Failed to open a session for the virtual machine ll. The virtual machine 'll' has terminated unexpectedly during startup with exit code 1. Result Code: NS_ERROR...
- September 26, 2016
Creating Local CentOS Repository
In many Linux distros, package management tools are utilized for getting new packages and their dependencies. They are also used for In environments that has many boxes, updating packages and installing new packages may lead tremendous bandwidth con...
- September 3, 2011
Değişiklikler ve Gelişmelerle En Çok Ziyaret Ettiklerimiz: Sosyal Medya
Sosyal medya konusunda takip ettiğim onlarca kaynak, en çok da kendi kullanımımda gördüğüm kadarıyla yaptığım yorumlamalara bir yenisini bu yazıyla eklemek istedim. Öncelikle yazının daha öncekilerle paralel gideceğini, aynı konulardaki yeni gelişme...
- April 20, 2013
Dizileri Kullanan Yığınlar (Stacks Using Arrays)
C++’da yığınlara başlarken, ilk olarak bir dizi kullanarak yığın oluşturmayı göreceğiz. Bu kodta, bir yığının ne olduğu ve neden ona ihtiyaç duyduğumuzla ilgili açıklamayı main() fonksiyonu içerisinde bulabilirsiniz. Ayrıca, yığın oluşturulurken str...
- January 26, 2017
Docker 1.13 Swarm Mode with Raspberry Pi: Setting up a Cluster
## Intro Docker 1.13 has been released recently. It includes a lot of improvements and new features. There is a new compose file format which allows deployment on swarm with a YAML file and making rolling updates with the same file, Docker Secret w...
- January 10, 2018
Docker ile Redmine Kurulumu
# Amaç Redmine, proje yönetiminde sık kullanılan araçlardan birisi. Eklenti ve tema desteğiyle özelleştirilebilir yapısı sayesinde istenilen çalışma şeklinde ayak uydurması oldukça kolaylaşıyor. Bu yazıda, Redmine kurulumunu Docker kullanarak nasıl...
- June 28, 2017
Docker Multistage Build Örneği: Caddy Web Sunucusunun Dockerlaştırılması
Docker’ın şu an(Haziran 2017) sadece son birkaç CE Edge sürümünde yer alan (Güncelleme) 17.06 CE’den itibaren stabil olarak açıklanan multistage build özelliği, imaj boyutlarının küçülmesi ve build işleminin kısalması/optimizasyonu için kolaylık sağ...
- May 1, 2017
Docker Swarm, Telegraf, InfluxDB, Grafana ile Metrik İzleme (MQTT Örneğiyle)
Bu yazıda sunucuların, servislerin yada çok farklı gözükse de aslında yakın olan sensörlerin verilerini canlı olarak takip edip görselleştirmeye, görselleştirmeleri de özelleştirmeye olanak sağlayan birkaç teknolojiden bahsedeceğiz. Kullanacağımız t...
- August 26, 2011
Dos Ekranı Görünmeden Çalışan Program Oluşturmak
Python’da program yazarken en çok karşımıza çıkacak isteklerimizden biri programımızı çalıştırırken çıkan komut satırını çıkarmadan programımızın çalışmasını sağlamaktır. Bunu yapabilmek için çok kolay bir isim değiştirme işlemi uygulamamız gerekiyo...
- April 19, 2012
Elde Telefonla Karşıdakini Dinlemek
İmkansızdır, imkansızımdır, asla olacağına inanmadığımdır. Yeni bir durum değil tabii. Uzun zamandır yapılıyor. Belki ben de yapmışımdır şimdi biri çıkıp söylerse inkar edemem. Yaptıysam pişmanım ama belirtmeden geçemem. Ya nasıl bir fantezidir bu?...
- July 19, 2012
Elektronik Notlarını Paylaşmaya Başlıyorum
Kısa bir süre önce başlamış olmamın etkisidir belki, bilinmez ama sürekli bir bilgi yığılması oluyor konulara baktıkça. Böyle olunca da ister istemez notlar almam gerekiyor. Bu notların daha kalıcı olması ve başkalarının da işine yarayabilmesi için ...
- July 7, 2012
ETohum Kampındayız
Bir arkadaşımla birlikte E-Tohum’un üniversite öğrencileri için hazırladığı yaz kampına seçilmişiz. Program içeriği oldukça yoğun ve dopdolu. Umarım oldukça çok şey öğreniriz. Orada olacak arkadaş varsa iletişime geçebiliriz. Görüşmek üzere. ...
- August 24, 2011
Euler Sabiti’nin Kuvvetini Alma
Python’da normal üs alma yöntemi yardımıyla(** kullanarak) istediğimiz sayının üssünü alma şansımız var. Aslında e sayısının üssünü alırken de bunu kullanabiliriz ancak bu yazımızda e sayısının kuvvetini alma işlemini yapacak bir fonksiyon kullanaca...
- September 23, 2023
Evaluating cloudnative-pg
https://github.com/cloudnative-pg/cloudnative-pg/ Also the alternative: https://github.com/zalando/postgres-operator I believe they provide similar features, yet faced multiple problems with each. More to come later on this. ...
- July 15, 2012
Fibonacci Serisinin 100000. Elemanı ve Python3 ile Altın Oran Hesabı
Python3 ile Altın Oran’ı hesaplamak için ufak bir kod yazdım. Daha doğrusu [Fatih](http://www.fatihpense.com) Go kullanarak yazmıştı, Python ile de ben yazayım dedim. Kodlarını alta ekliyorum. Python2 kullanan varsa da değişken isimlerini düzeltip p...
- April 18, 2012
Fonksiyon Tanımlama ve Sinüs Alma
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/C-programlama1.png)C’de fonksiyon tanımlama ve bu fonksiyonla sinüs alma işlemi için ufak bir kod hazırladım. Şöyle ki: Fonksiyonu main fonksiyonundan sonra tanımladım. Dolayısıyla öncesind...
- April 18, 2012
For döngüsünde aynı anda birden fazla değişken değiştirmek
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/C-programlama.png)Bloga koyduğum ilk programda, daha önce kodlarda gördüğüm ancak bugün uygulamaya geçirdiğim bir özellikten bahsetmek istedim. İşleyişi şu şekilde gerçekleşiyor: for(başlan...
- August 23, 2011
FTP’de Dizin Listeleme
Python ile ftplib modülünü kullanarak FTP’ye bağlanabilir ve burada işlemler yapabiliriz. İşlem yapmadan önce içeride olan dosya ve klasörleri görmenin bize büyük katkısı olacaktır. Bunun için daha önce birçok yerde kullandığımız ftplib.dir() fonksi...
- August 23, 2011
FTP’ye Kullanıcı Adı ve Şifreyle Giriş Yapmak
FTP’ye bağlanırken ftplib.FTP() foksiyonunu kullanıyorduk. Ancak her zaman anonymous FTP’lere bağlanma şansımız yok. Mesela kendi sitemizi düzenleme amaçlı FTP’ye gireceğimizi varsayarsak bir kullanıcı adı ve şifremiz olacak ve bunu gireceğimiz bir ...
- August 29, 2011
Gün Seçimi ve Seçimleri Ekranda Gösterme Programı
Haftanın 7 günü arasından istediklerimizi seçmemizi sağlayan bir program. Şu anlık döngü kullanarak yapmadım, o şekilde de yapılabilir tabii ki. Bu şekilde daha anlaşılır olduğunu düşünüyorum ileride döngülü halini de ekleyebilirim. Checkbuttonlarda...
- October 22, 2012
Günün C Uygulamaları
Bugün yaptığım C uygulamalarının çözümlerini, ne işe yaradıklarını 1 cümleyle belirtip burada toplayayım dedim. Amaçlarından kısaca bahsedip kodları yazarak ilerliyorum. Yazar kasa programı için ufak bir şablon: ``` #include <stdio.h> // Yazar kas...
- November 29, 2013
How to Make a Screencast in Ubuntu
In Linux, there may exist a need to prepare a screencast to tell something to somebody or make a screencast for public, etc. To make this, there are several alternatives. I have tried a couple of them and RecordMyDesktop have become my favourite. T...
- September 21, 2015
[HowTo] Install Kivy and Buildozer on Fedora 22 and Making APK
In a previous post, installing Kivy on Ubuntu 15.04 was issued. Today, there is a main development which is using SDL2 instead of Pygame. You can find why this is significant on Google. I cannot find Kivy and Buildozer installion document for Fedor...
- July 2, 2015
[HowTo] Install Kivy and Buildozer on Ubuntu 15.04
Installing Kivy and building an apk file is the fundamental step of coding Android applications with Python. In this post, Buildozer is used for building apk, installing sdk, ndk and other dependencies automatically. All commands on this post are a...
- July 2, 2015
[HowTo] [Python/Kivy] Building APK With Buildozer
In the [previous post](http://www.gurayyildirim.com.tr/howto-install-kivy-and-buildozer-on-ubuntu-15-04-1169.html), how to install Kivy and Buildozer on Ubuntu is examined. In this post, you will find stages making APK files on Ubuntu with Python an...
- October 11, 2012
İleri ve Geri Farklar Yöntemi İle Türev Hesabı
``` from decimal import Decimal from math import e def turev(h,x): return (f(x+h)-f(x))/h fonk = input("Fonksiyonu giriniz: ") calis = """def f(x): return %s""" %fonk exec(calis) x = Decimal(input("x değeri: ")) for i in range(10,100,...
- September 15, 2011
İlk Projemiz: Matematik Problemi Çözelim
Python ile adam akıllı ilk projeye yavaştan başlıyorum. Bu projede yapacağımız şey tam olarak kullanıcıdan işçi ya da havuz problemi alıp önce yazılanın işçi mi havuz mu olduğunu belirlemek, daha sonra ise o problemdeki verileri ayrıştırarak sonuca ...
- December 14, 2015
IoT, MQTT ve Mosquitto – Devfest Düzce Sunum Videoları
Geçen hafta Devfest için Konya ve Düzce’de iki oturumda konuşmacıydım. Ufak farklılıklar olması dışında, konu olarak MQTT ve Mosquitto’yu seçtim. Internet of Things’de uygulama geliştirirken sıkça kullandığımız protokol olan MQTT’yi ve bu protokolün...
- July 4, 2015
Kivy Course #1 – Introduction With a Basic App
At the first code of the Kivy course consists of a button which covers the entire screen and does nothing. You can just click the button and see that it is clicked with interaction. The code is: ``` from kivy.app import App from kivy.uix.button imp...
- July 9, 2015
Kivy Course #10 – User Login System With Kivy
In many applications, a login system is applied. As a result of this, in a Kivy course, we believe that we should teach how to make a basic login system with Kivy. To achieve this, the code in following is written. After the login, the program conne...
- July 4, 2015
Kivy Course #2 – More Buttons With Kivy Language
At the second part of the course, more buttons are added to root widget and Kivy Language is utilized while adding them. From this part, view section of the codes are seperated in a .kv file. You can find the codes below. Our main python file: ```...
- July 4, 2015
Kivy Course #3 – Grid Layout Example
In this section, layouts are introduced with more details and images of them are shown. Grid layout is one of the most known widgets and the code may be found below. The main Python file: ``` from kivy.app import App from kivy.uix.gridlayout impor...
- July 4, 2015
Kivy Course #4 – Box Layout Example
This part is continuing with BoxLayout class of Kivy. BoxLayout is another common layout which is used frequently. It supports both vertical and horizontal orientations and size hints to spare the widgets at specific ratios. The Python code is: ``...
- July 4, 2015
Kivy Course #5 – Properties and Clock Definitions
At the fifth part of Kivy course, properties and Clock are introduced and an example counter application is made. This application counts with seconds and have abilities to start, pause and reset the timer. At the first stage the Python file is: `...
- July 5, 2015
Kivy Course #6 – Text Input and Input Handling
At the sixth part of the course, we are talking about text input and handling the text in text input box. To make a input chance to the user, TextInput class can be used. Here, a login system is made by making username and password check and afterwa...
- July 9, 2015
Kivy Course #7 – Introduction to Slider: Changing Background
In this example, a code changing background color of application according to slider position is written. In Kivy, color values are changing from 0 to 1 and as a result floating point numbers are used in order to give color value to canvas. All red...
- July 9, 2015
Kivy Course #8 – Multiple Screens in Kivy With ScreenManager
In this part of course, you will find how to make applications for desktop or mobile consisting of two or more different screens. There can be menus, tutorials, question-answer sessions or any other requirements that can be solved with multiple scre...
- July 9, 2015
Kivy Course #9 – Multiple Screens in Kivy With ScreenManager [Part 2]
In this example, we improved and reviewed the code we have written in the previous post. Screen, ScreenManager and Builder are also used in this example, too. The code is: ``` #-*-coding:utf-8-*- from kivy.app import App from kivy.lang import Buil...
- July 23, 2012
Kod Paylaşımı İçin Güzel Bir Paste Sitesi
Daha önce birine kod göndermek istediyseniz, kopyala-yapıştır sonucunda kodun oldukça sorunlu bir hal aldığını yaşamış olma ihtimaliniz yüksektir. Dosya olarak göndermek burada bir çözüm olsa da birden çok kişiye gönderecekseniz bu da sıkıntı olabil...
- August 29, 2011
Kullanıcıdan Veri Girişi Almak
Python’da kullanıcılardan HTML’de yaptığımız input text şeklinde veri girişi almak için Entry widgetini kullanırız. Kullanımı oldukça kolay olan bu widgeti ufak bir örnek üzerinde görelim. Ayrıca alınan verilerin get metoduyla alındığını da belirtel...
- August 29, 2011
Kullanıcıya Birden Fazla Satırlı Mesaj Gösterme – Tkinter.Message() Fonksiyonu
Tkinter ile kullanıcıya uzun bir metin gösterceğiniz zaman her defasında bir label etiketi oluşturup bunu satırlara bölmek bir süre sonra bir işkence haline gelebilir. Ayrıca bir metin dosyasını direk ekrana yazdırmak istemeniz de oldukça normaldir....
- August 24, 2011
Math Modülünü Kullanarak Üs Alma
Python’u normalde kullanırken ****** işlemini kullanarak işlemle ilgili yazıda belirttiğimiz gibi kolayca üs alabiliriz. Ancak float olarak üs sonucunu elde etmek istersek ve bunu bir fonksiyona döküp daha kullanışlı hale getirmek istersek math modü...
- September 7, 2011
Math Modülüyle Faktöriyel Almak – math.factorial() fonksiyonu
Python’da faktöriyel hesabı için fonksiyon yazma imkanımız olduğu gibi(ki zor bir işlem değil) istersek bunu math modülünün factorial() fonksiyonu ile de kolayca yapabiliriz. Hemen bir örnek üzerinde görelim. ``` import math math.factorial(543) ```...
- December 26, 2013
Matlab ile Inline Fonksiyonlar
Uzun zamandır Matlab hakkında bir şeyler yazmamıştım. Hazır bir ödev için lazım olunca, Inline fonksiyonların Matlab üzerinde nasıl kullanıldığından bir örnekle bu yazıda bahsedeyim. İlk olarak, inline fonksiyonu ne için kullandığımıza bir bakalım....
- July 31, 2012
Messenger v0.2 Kodları – Geliştirilme Aşamaları ve Çalıştırılabilir Hali
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/logo.gif)Messenger v0.1 i hatırlayanınız varsa, üzerinden çok uzun bir süre geçmeden v0.2 ye başladım. Kullanıcı kayıt sistemi, sadece listede olanlarla konuşma, ikili sohbetler, kullanıcı g...
- August 5, 2012
Messenger v0.3 İstemcisi ve Kaynak Kodları
Messenger v0.3’ün sunucu kaynak kodlarını [bu adreste](http://www.gurayyildirim.com.tr/blog/messenger-v0-3-sunucusu-hazir-574.html) 2 gün önce yayınlamıştım. Ardından vakit kaybetmeden birkaç satırlık veri gönderme-alma şeklinde test eden bir progra...
- August 4, 2012
Messenger v0.3 Sunucusu Hazır
Başlıkta v0.3 dedim, aslında oturup yeni bir messenger yazdım. Hatta IRC, Messenger arası bir program, ya da program olma yolunda ilerleyen kodlar oluştu. Kodlar dedim çünkü tamamlanınca sistemde kayıtlı olan kişilerin toplu konuşmasını sağlayan bir...
- August 22, 2011
Metni İstenilen Karaktere Göre Listelere Bölmek
Python’da re modülünü kullanarak metinleri istediğimiz gibi bölüp parçalama şansına sahibiz. Bunun için re.split() fonksiyonunu kullanacağız. Hemen bir örnek üzerinden inceleyelim. ``` import re metin="Bu metin boşluklara göre ayrılsın." x=re.split...
- July 4, 2012
Modüler Yapıda Program Yazmak
Birkaç gündür aklımda yazdığım uygulamaların düzenlemesini bir hayli kolaylaştıracak bir teknoloji olan modüler programlama mevcutken neden hiç kullanmadığım ya da neden baktığım örneklerin çoğunda da kullanılmadığı vardı. Hakkında pek belge de şu a...
- July 1, 2015
Multiple Sliders Controlling Background Color in Kivy
In this example, three independent sliders are used to control background color and they are in order of red, green and blue. All the values are written at the buttom of the application window in the precision of 0.001. You can change the precision ...
- July 4, 2012
Müzik Dinlemek ve Çalışmak
Bazıları müzik dinlerken başka hiçbir iş yapamadıklarını söylüyorlar. Hatta bir öğretmenim lisedeyken yaptığınız işe odaklanın, gerisini boşverin demişti. Biraz daha açıklayarak, sinemaya gittiğinizde o zamanki sorunumuz olan üniversite sınavını düş...
- August 26, 2011
MySQL’den Sözlük Şeklinde Veri Almak
MySQL’den veri alırken aldığımız verilerin sözlük şeklinde olmasını istiyorsak bunu basit birkaç satırlık kodla rahatça halledebiliriz. Hemen örnek bir kod üzerinde görelim. ``` import MySQLdb vt=MySQLdb.Connection(host="localhost",user="root",pass...
- July 18, 2012
[Notlar/Yorum] E-Tohum Üniversiteliler İçin Girişimcilik Fabrikası
Geçen hafta perşembe günü Özyeğin Üniversitesi E-Tohum kampına gitmiştik(kabuledildiğimizin maili geldiğinde yazmıştım). Bu yazıda orada yaptıklarımız ve oradan notlar yer alacak. Öncelikle, yarın akşama kadar evde olamayacağım için notları yarın a...
- August 11, 2013
Obligasyon
Uzun zamandır teknik içerikli olmayan bir yazı yazmamıştım bu bloga. En az bir tane yazmak istedim, çünkü aklımda konu birikti. Bu yazının konusu “obligasyon”. Sebebi ise bir türlü anlam veremediğim İngilizce kelimelerin Türkçe’de kullanılması. Kul...
- September 8, 2011
“OperationalError: no such column:” Hatası ve Çözümü
Python’da sqlite3 modülü ile çalışıp ufak bir telefon rehberi yazmayı denerken şöyle bir hata alıyordum: Hatanın çözümü ile uğraşırken hem sqlite ile veritabanı güvenliği için istihza.com da okuduğum Fırat Özgül’ün yazısı hem de aynı hatayı alanlar...
- July 3, 2015
Playing Videos With Kivy
Kivy has a video player which supports common requirements such as play,pause and stop buttons and images, texts can be used as subtitles or displaying messages to user, streching etc. For the full list, you can check [here](http://kivy.org/docs/api...
- August 28, 2011
Programa Ek Pencere Oluşturmak – Tkinter.Toplevel() fonksiyonu
Yaptığımız programlardaki menü ve işlevlerin tamamını tek pencerede toplamamız her zaman aynı kullanılabilirliği getirmeyebilir. Programla birlikte açılmasını istediğimiz başka pencereler varsa ve bu pencerelere koymak istediğimiz öğelerimiz bulunuy...
- August 15, 2013
Programlama Dili Seçimi
Youtube’da yer alan Python derslerinden dolayı olsa gerek, birçok kişi Facebook üzerinden veya mail ile dilin ne işe yaradığı hakkında sorular sormaya başladı. Bunun üzerine ben de toptan bir cevap niteliğinde bu yazıyı yazma gereği duydum. İlk ola...
- July 3, 2012
Programlamaya Başlamak İçin, Başlayamayanlar İçin
Programlamaya en doğru başlangıç şekli nasıldır bilmem. Ben en iyi olduğuna inandığımı yazıyorum. Ayrıca nasıl başlanamayacağıyla ilgili ilginç acı tecrübelerimi paylaşayım. Aslında bu bir başlangıcın değil, başlayamayışın öyküsü olacak. Ayrıca anla...
- September 8, 2011
“ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory…” Hatası ve Çözümü
Python’da sqlite3 modülü ile çalışırken veri girişi sırasında alttaki gibi bir hata aldım. Neyse ki programı çöpe atmadan olayı çözebildim. Şimdi neden olduğunu kısaca anlatayım. Bildiğimiz üzere Python Türkçe karakterleri vs. “u” harfini kullandığ...
- August 13, 2012
PyGame İçin Program İskeleti ve Anlamları
Python ile oyun dünyasına giriş yapmak istiyorsanız muhtemelen ilk durağınız pygame olacak. Bu konuda çok fazla sayıda Türkçe döküman olmadığı için öğrendiklerimi aktarmak istiyorum. Ayrıca, Python ile oyun yazma hakkında bir kitabın çevirisi için ş...
- July 4, 2012
Python Blogu Buraya Taşındı
Yaklaşık 1 senedir Python.GurayYildirim.com.tr adresinde bulunan blogu artık güncellememe kararı aldım. Yeni kod örnekleri ve programlar artık buradan paylaşılacak. Bunun dışında, hazırlamayı planladığım video anlatımlar da ufakşeyleratölyesi üzerin...
- July 7, 2012
Python ile Aynı Anda Birden Çok İşlem (Multithreading)
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/python-multithreading.png)Bazı durumlarda ana programın çalışmasını etkilemeden, arkaplanda başka işlemlerin yapılmasını isteyebiliriz. Bunun en iyi örneği, bir dosya indirme programı yazdığ...
- July 21, 2012
Python ile Bilimsel Hesap Makinesi
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/python-multithreading.png)Bugün kulüp yapılandırması için toplandığımızda Python 2 ve 3 ile ayrı ayrı bilimsel hesap makinesi yazdık. exec komutunun(Python3 de fonksiyonunun yapısında da öne...
- August 23, 2011
Python ile Chmod Değeri Ayarlama
Linux altında Python ile çalışıyorsanız dosya ve dizinlerin yazma izinlerini kontrol etmek istemeniz oldukça doğaldır. Python’un basitliklerinden ve fonksiyon zenginliğinden chmod da nasibini almış olacak ki os.chmod() fonksiyonu bu ihtiyacımızı tam...
- August 23, 2011
Python ile Ftp’ye Bağlanmak
Python’da bulunan ftplib modülü yardımıyla istediğimiz bir FTP sunucusuna bağlanabilir ve giriş yapabiliriz. Bu yazıda bağlantının nasıl oluşturulabileceğini kısaca anlatalım. ``` import ftplib a=ftplib.FTP("www.gurayyildirim.com.tr") ``` Aslında ...
- February 5, 2012
Python ile Lineer Cebir – Ayrışımlar (2. Kısım)
SciPy modülünün linalg sınıfını incelemeye devam edip bugün ayrışımlar (decompositions) konusunda bildiklerimi elimden geldiğince açıklayacağım. Yanlışlarım olabilir şimdiden özür dilerim. # 1. Özdeğer ve Özvektörler (Eigenvalues and Eigenvectors) ...
- February 5, 2012
Python ile Lineer Cebir (SciPy Kullanarak)
Numpy üzerine inşaa edilmiş olan scipy modülü lineer cebir konusunda bize birçok fonksiyon ve imkan sağlıyor. Özellikle matris tersleri, ayrışımlar ve denklem çözümlerini bulacağımız sınıfın adı ise scipy.linalg. Matris tanımlamayı anlatarak işe baş...
- February 14, 2014
Python ile Metinlerde Frekans Analizi
Elimizdeki bir metinde hangi karakterlerin olduğunu, hangi karakterin kaç kere geçtiğini ve metnin yüzde kaçını oluşturduğunu ölçmek için kullanabileceğimiz bir sınıf oluşturdum. Sınıfın yaptığı, Python’da yer alan veri yapılarını kullanarak girilen...
- August 26, 2011
Python ile MySQL’e Bağlanmak
Python kullanarak yaptığımız ve shelve modülüne yaptıramadığımız işlemler için MySQL’i kullanmamız faydamıza olacaktır. MySQL’i Python altında kullanabilmek için gerekli fonksiyon ve değişkenleri içeren modülümüz MySQLdb modülüdür. Hemen bir örnek ü...
- September 15, 2011
Python ile Negatif Sayıların Kökünü Almak(Karmaşık Sayı)
-4 gibi bir sayının kökünü alırken kullandığımız karmaşık sayı mantığını buraya da geçirmek istedim. karmasikkok ismini verdiğim fonksiyona gönderdiğimiz negatif sayı, mesela -5 diyelim, – ile çarpılarak pozitif yapılıp kökü alıyıyor ve sonuna i ekl...
- July 20, 2012
Python ile Ortalama Hesaplama Fonksiyonu
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/python-multithreading.png)Python’da ortalama hesaplama amaçlı olarak bir fonksiyon yazacağız. Kodları hem Python 2.x hem de Python 3.x sürümü için 2 şekilde yayınlıyorum. Ortalama hesaplamak...
- September 16, 2012
Python ile Paralel Port Kontrolü – Video
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/python-multithreading.png)Pyparallel modülü yardımıyla Python’u kullanarak bilgisayarımızın paralel portunu kullanabiliriz. Bu yazıda bunun hakkında bilgi vereceğim. Öncesinde, paralel port ...
- August 24, 2011
Python ile Radyanı Dereceye ve Dereceyi Radyana Çevirme
Python kullanarak birimler arasında istediğimiz değişikliği yapabilmemiz için fonksiyonlar mevcut. Bu yazıda fonksiyonları verecek ve elimizle çevirerek bir deneme yapmış olacağız. Hemen başlayalım. ``` from __future__ import division import math, ...
- February 11, 2014
Python ile Sezar(Ceasar) Şifrelemesi – Kullanıcı Arayüzü
Şifreleme yaparken karşılaşılabilecek en basit algoritmalardan birisi Sezar(Ceasar) algoritması. Bu algoritmanın anlatımına [buradan](http://en.wikipedia.org/wiki/Caesar_cipher) ulaşabilirsiniz. Basit anlamda harfleri 3’er kaydırarak uygulanıyor. Ko...
- August 24, 2011
Python ile Silindir Hacmi Hesaplama
Pi sayısının kullanımı ile ilgili işe yarar bir döküman hazırlamak amacıyla bir silindirin hacmini Python ile hesaplamaya karar verdim. Amacımız kullanıcıdan taban yarıçapını ve yüksekliği alarak (pi*(r^2)*h) ifadesi yardımıyla silindirin hacmini bu...
- September 11, 2011
Python ile Tek Bilinmeyenli Denklem Çözme
Bugünüme mal olan çalışma oldu aslında. Regular expressions ile biraz sıkıntı yaşamamı sağlamış olsa da sonunda çalıştığını görmek gerçekten mutlu etti. Tabii sorunlar olabilir çok fazla test edemedim bildirirseniz becerebildiğim kadarıyla düzeltiri...
- September 9, 2011
Python ile Telefon Rehberi Programı (sqlite3,Tkinter,canlı arama sonuçları,ekleme+arama)
Python ile ne zamandır hayalini kurduğum telefon rehberi programının ilk versiyonunu yayımlamak istedim. Aslında üzerinde yapılması gereken birçok işlem var ama bu haliyle de geliştirilmeye açık. Örnek olarak silme işlemi ekleme fırsatım olmadı, ayn...
- February 4, 2012
Python ile Türev ve İntegral Almak, Polinom İşlemleri
Python ile türev, integral almak, bir polinomu kolayca tanımlayabilmek ve bir polinomun birden çok noktadaki değerini aynı anda hesaplayabilmek için Scipy modülünün poly1d sınıfını kullanacağız. Poly1d, scipy modülünün diğer sınıfları gibi ayrı bir ...
- September 3, 2011
Python ile Üçgen Prizma, Dikdördgen Prizma ve Kürenin Hacmini Hesaplama Programı Kodları
Python 2.7 ile yazdığım program sayesinde math modülünden alınan ayrıntılı pi değeri ile kürenin hacmini detaylarıyla hesaplayabilirsiniz. Ayrıca üçgen prizmanın hacmini üç kenar uzunluğunu ve yüksekliğini verdikten sonra u formülüyle hesaplıyor. Wi...
- September 16, 2011
Python ile What to do tomorrow? (Sonraki günün planı) Programı – 1. Aşama
Aslında kendi ihtiyacım üzerine hazırlamaya başladığım bir program. Arada Tkinter ile öğrenmem gereken birçok özellik olduğunu görmeme sebep olan, aynı zamanda qt çalışmalarına başlamamın gerekliliğini ve Pardus ya da Ubuntuya geçişimi hızlandıracak...
- August 25, 2011
Python ile Zip Dosyasını Okumak ve İçindekileri Listelemek
Python’da bulunan zipfile modülü yardımıyla zip dosyaları üzerindeki işlemlerimizi kolayca gerçekleştirebiliriz. Öncelikle oluşturduğumuz bir zip dosyasını açalım ve içindekileri listeleyelim. ``` import zipfile zipdosyamiz=zipfile.ZipFile("zipim.z...
- June 29, 2015
Python Kivy Button, Property and BoxLayout Example
In this post, you are able to find an example of Kivy Framework consists of a button and two text label in a boxlayout oriented vertically. There are two files and both are required to run this program. This program is suitable for both mobile and d...
- June 30, 2015
Python Kivy Slider, Color and Canvas Example
Working with kivy often requires writing canvas codes which are managing the appearance before, during and after the content is drawn. In this example, one Kivy Slider is used for getting color value between 0 and 1 and in the same time there is a K...
- February 3, 2014
Python SystemRandom ile Rastgele Sayı Üretmek
Python’da rastgele sayı üretebilmek için halihazırda random modülünden faydalanabiliyoruz. Bu modül rastgele sayı üretirken öncelerden Mersenne Twister adlı bir yöntem kullanıyormuş.[1] Dökümantasyonunda belirtildiğine göre 53 bit kesinlikte float t...
- September 14, 2011
Python ve Urllib ile Bot Yapımı
Kullanmak nasip olmadı ancak bir siteden verileri çeken bir bot yapmıştım. Kodları verip kısaca açıklayayım. Tkinter kullanmıştım ancak ekleme sayısı düzgün çalışmıyor. Başlangıç numarasının verildiği dosyadan veriyi alıp program kapatılana kadar se...
- December 6, 2016
Python ve Selenium Denemeleri
Selenium ile karşılaşmışken, nasıl kullanılır diye biraz kurcalamak istedim. Yaptığım aşamaları, aldığım sonuçları falan da ufaktan paylaşayım dedim. Selenium, WebDriverları kullanarak farklı tarayıcılarda, sürekli tekrar ettiğimiz testleri otomati...
- July 30, 2012
Python3 ile Değişken ve Diğer Nesnelerde Tür Kontrolü
Elimizdeki bir değişkenin sayı/yazı olma durumunu kontrol etmek istediğimizde uygulayabileceğimiz 3 alternatif var, en azından şu ana kadar karşılaştığım ve aklıma direk gelen 3 alternatif şekil var. Bunları birer örnek üzerinde görmeden önce, kulla...
- July 25, 2012
Python3 ile Messenger Uygulaması (Sunucu+İstemci Birlikte)
Merhabalar, bu yazıda geçen günlerde derlediğim sunucu, istemci uygulamasını paylaşacağım. Öncelikle ilk sürüm olduğu için eksikleri olabilir. Çalışması ise kısaca, sunucu uygulamasını istediğiniz bir sunucu bilgisayarda başlatıyorsunuz(özel bir bil...
- July 15, 2012
Python3 ile MySQL Bağlantısı ve Sorgulama Yapmak (PyMySQL modülü)
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/python-multithreading.png)Python 2.x sürümü ile MySQL bağlantısı yapmayı denediyseniz, muhtemelen fazla uğraşmadan bağlantıyı sağlamış ve istediklerinizi yapmışsınızdır. Yine de, en çok anla...
- July 7, 2012
Python 3 İle Sunucular Arasında Liste, Sözlük vb. Aktarımı
Python 2.x sürümü ile çalışıyorsanız(mesela 2.7.3 ile denediğim kodlardan bahsediyorum) socket modülünün send() fonksiyonu ile karşı tarafa elinizdeki bir string’i rahatça gönderme şansınız var. Ancak Python3 ile çalışacaksanız bu aşamada bir şeyler...
- October 13, 2012
Python3 Kullanarak Merkezi Farklar Yöntemiyle Sayısal Türev
``` # Merkezi Farklarla Sayısal Türev # @Author: Güray Yıldırım - www.gurayyildirim.com.tr # @Date: 13.10.2012 from decimal import Decimal function = input("Enter the Function in Python Format: ") request = """ def f(x): return %s """ %function...
- November 23, 2012
Python’da Decorator Ne İşe Yarar?
Python ortamında decorator tanımlamak için örnek kod. Amaç, fonksiyon tanımlayan fonksiyon oluşturmak ve daha sonra bu fonksiyonu her çağırdığımızda bir değişkene yeni fonksiyon tanımlamış olmak. Burada, kullanıcının kendi fonksiyonunu tanımlaması d...
- September 11, 2011
Python’da İşçi Problemi Çözüm Programı
Matematik dersinin vazgeçilmezlerinden olan işçi problemlerini çözen ufak bir program yapmak istedim. Çok fazla deneme şansım olmadı hata/sorun vs. olursa bildirirsiniz. Genel çalışma yapısını kısaca açıklayayım. Program önce kullanıcıdan soruda ve...
- August 24, 2011
Python’da Kosinüs ve Sinüs İşlemleri
Python’da sayıların cosinus ve sinus değerlerini elde etmek için kullanabileceğimiz fonksiyonlar math.cos() ve math.sin() fonksiyonlarıdır. Dikkat etmemiz gereken Python’un varsayılan olarak radyan değerleri kullanıyor olmasıdır. Bunu ortadan kaldır...
- August 29, 2011
Python’da Onay Kutuları
Kullanıcıdan her zaman bilgileri onay pencereleriyle almak hem bizim için hem kullanıcı için oldukça yorucu ve zaman alıcı bir işlemdir. Alternatif olarak internet sitelerinden de alışık olduğumuz kutu işaretleme de diyebileceğimiz onay kutuları, in...
- August 22, 2011
Python’da Sınıf(Class) Tanımlama
Python’da sınıf tanımlama olayı oldukça basittir. Genel olarak kalıbı vermemiz gerekirse class yapısı hakkındaki örneğimize bakalım. class sinifin_adi: #YAPILACAK FONKSİYON VE DEĞİŞKENLER Aslında yapacağımız işlemler gördüğünüz kadar basit, başlard...
- August 22, 2011
Python’da Yapıcı Fonksiyon __init__
Python’da bir nesne çağırdığınızda otomatik olarak çalışacak ve sadece nesneyi ilk oluşturduğunuzda çalışacak olan bir fonksiyon tanımlayabilirsiniz. Bu fonksiyonun adı Python yapımcıları tarafından __init__() olarak belirlenmiş. Dışarıdan ulaşılmas...
- February 22, 2015
Raspberry Pi 2 Kurulumu & İlk Kullanım ve Kablosuz Bağlantı Ayarları
Raspberry Pi 1 için hazırlamaya başladığım ancak [devamı gelmeyen bir yazı](http://www.gurayyildirim.com.tr/raspberry-pi-baslangic-rehberi-975.html) vardı. Elime [+Onur Kasemlar](https://plus.google.com/+OnurKasemlar2)‘ın Raspberry Pi 2’si deneme ve...
- February 24, 2015
Raspberry Pi 2’ye Kivy Kurulumu
Kivy Framework sayesinde, 2 veya 3 boyutlu uygulama ve oyunların Python ve Kivy dillerinde programlanması ve platform bağımsız olarak çalıştırılabilmeleri mümkün olmakta. Bu yazıda Raspbian kullanıcıları için, Raspberry Pi için desteği sonradan gele...
- April 25, 2013
Raspberry Pi Başlangıç Rehberi
Bu yazıda, Raspberry Pi’nin ne olduğunu merak edenler için açıklayıcı bir giriş; ben biliyorum, sipariş edicem/ettim ama şimdi ne yapacağımı bilmiyorum diyenler için de detaylı bir açıklama bulacaksınız. Raspberry Pi hakkında artı ve eksileri dilim ...
- September 14, 2013
Raspberry Pi’nin inittab Dosyası
Raspbian Whezzy işletim sistemini Raspberry Pi’ye kurduğumuzda, eğer açılışta gelen ayar menüsünden başlangıçta görsel arayüzün çalışmasını seçmediysek, konsolla karşılaşmamız şaşırtıcı olmayacaktır. Bu durumda çözümümüz her ne kadar “startx” yazıp ...
- September 23, 2011
SEO (Arama Motoru Optimizasyonu), Önemi, Gereklilikleri ve Geleceği
Hakkında yapılmış binlerce tanım olmasına rağmen, kısa bir tanımla başlayalım. SEO, İngilizce Search Engine Optimization denilen arama motoru optimizasyonu olarak çevirdiğimiz bir işlemler topluluğudur. Genel olarak sitenizin içinde veya dışında yap...
- August 25, 2011
Shelve ile Veritabanı Oluşturmak
Ufak tefek işlemlerimiz için, yüzbinleri veya milyonları bulmayan, çalışan sistemleri kasmayacak işlemler için shelve modülünü kullanabiliriz. Kullanımı oldukça basit olan shelve veritabanı modülü ile hemen bir veritabanı oluşturalım. ``` import sh...
- August 25, 2011
Shelve ile Veritabanından Veri Silmek
Shelve kullanrak oluşturduğumuz veritabanlarından veri silmek için del veri[“anahtar”] yapısını kullanırız. Hemen bir örnek üzerinde görelim. ``` import shelve baglan=shelve.open("dbmiz.db") baglan["Anahtar"]="Değer" print baglan["Anahtar"] del bag...
- August 25, 2011
Shelve Veritabanına Veri Girişi
Python’da shelve modülü yardımıyla veritabanı oluşturduktan sonra veritabanına veri eklemek için uygulayacağımız oldukça basit bir yöntem var. Bu yöntemi sözlüğe öğe eklerken de kullanmıştık. Şimdi kısaca hatırlayalım. ``` import shelve baglan=shel...
- September 17, 2012
Solution: cannot verify github.com’s certificate, issued by `/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert High Assurance EV CA-1′:
I was trying to making an .APK file for Android using python-for-android provided by tito on Github. When I completed the installation of prequisities and start the process of makin the .apk file of example kivy application(see [www.kivy.org](http:/...
- April 19, 2012
Switch – Case Örneği
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/C-programlama1.png)Hazır el atmışken, amaçsız da olsa bir kod hazırlamış oldum. Onu da buraya ekleyeyim dedim. 1 veya 2 girildiğinde oralardaki mesajı, bunların dışında bir giriş yapılırsa d...
- August 30, 2011
Tarayıcıda Yeni Pencere ya da Sekme Açmak webbrowser.open_new() ve webbrowser.open_new_tab()
Python un modül zenginliğinden tarayıcıda program çalıştırma da nasibini almış. webbrowser modülü ile sadece bir siteyi yeni pencerede açmakla kalmayıp isterseniz pencere yerine bu siteyi yeni bir sekmede de açabilirsiniz. Bu arada, bazı tarayıcılar...
- August 27, 2011
Tkinter Destekli Rastgele Sayı Üretme Programı
Açık kaynak kodları bölümünde kendi yazdığım programlardan birini paylaşmak istedim. Program 0 ile 100 arasında, ister herhangi bir doğal sayı, ister 3 ün katı ister 5 in katı isterseniz de 10 un katı olan herhangi bir doğal sayıyı rastgele seçiyor....
- August 28, 2011
Tkinter ile Dosya Seçtirme İşlemi – tkFileDialog.askopenfilename() Fonksiyonu
Programlarımızda kullanıcılara dosya seçtirmek isteyebiliriz. Her kullanıcının dosya yolunu yazacak bilgisayar bigisine sahip olmayı bekleyemeyeceğimizden veya bu işlem oldukça uzun sürebileceğinden dolayı dosya seçmeye yarayacak modülümüz olan tkFi...
- August 26, 2011
Tkinter ile Pencere Başlığı Ayarlama – Tkinter.title() Fonksiyonu
Tkinter ile yaptığımız programların direk çalışması işimizi görüyor olabilir ancak görsellik açısından pencerenin bir başlığının bulunması önemlidir. Ayrıca sadece görsellik açısından değil aynı zamanda programın anlaşılabilmesi için de başlık yazma...
- August 26, 2011
Tkinter ile Pencere Oluşturma ve Yazı Yazdırma
Tkinter modülü ile yapabileceğimiz en basit işlemlerden biri şüphesiz ki bir pencere oluşturup bu pencere üzerine yazı yazmaktır. Hemen dediğimizi yapıp bir pencere oluşturalım ve pencere üzerinde bir yazı etiketi tanımlayarak bunu ekrana yazdıralım...
- August 28, 2011
Tkinter ile Renk Seçimi
Bulunduğunuz işletim sisteminin renk seçim aracını kullanarak istediğiniz rengi seçmenizi sağlayan tkColorChooser modülü altındaki askcolor() fonksiyonu sayesinde işimizi rahatça yapabiliriz. Hemen bir örnek üzerinde kullanımını görelim. ``` #-*-co...
- August 28, 2011
Tkinter ile Uyarı Pencereleri
Tkinter ile yaptığımız programlarda uyarı pencerelerine ihtiyacımız olması oldukça normaldir. Bunların başında dosya seçimi, sonuç bildirimi, evet hayır soruları gelmekle birlikte bu listeyi istediğimiz kadar uzatmamız mümkündür. Bu işlemler sırasın...
- August 28, 2011
Tkinter ile Widget Boyutları
Tkinter ile kullandığımız widgetlerimizin boyutlarını istediğimiz şekilde ayarlayıp programımızın farklı pencere boyutularına uyumunu arttırma şansına sahibiz. Bunu yapmak için basitçe HTML’deki gibi width ve height ifadelerini kullanıyoruz. Hemen u...
- August 28, 2011
Tkinter ile Widget Kenarlıklarını Belirleme
Tkinter kullanarak elimizdeki widgetlerin kenarlıklarına istediğimiz değerleri verebiliriz. Bunu yapabilmek için config() fonksiyonuna bd ifadesini ekleriz. ``` dugme.config(bd=2,relief=SOLID) ``` bd ile ne kadar genişlikte bir kenarlık olacağını,...
- August 27, 2011
Tkinter Programa Buton Ekleme
Tkinter modülü ile yaptığımız programlara hemen her programın olmazsa olmazı olan butonları eklemeden olmaz sanırım. Bunu yapabilmek için Tkinter.button() fonksiyonunu kullanacağız. Hemen bir örnek kod üzerinde görelim. ``` #-*-coding:utf8-*- from ...
- August 28, 2011
Tkinter Yazı Fontu ve Boyutlarını Ayarlamak
Tkinter modülü ile yazı fontunu değiştirme ya da boyutunu belirleme gibi işlemleri kolayca yapabiliriz. Ayrıca renklerin ingilizce isimleri ya da HTML renk kodlarını kullarak istediğiniz renkle yazıları boyama şansına sahibiz. Hemen bir Tkinter örne...
- June 13, 2017
Traefik Proxy Temelleri
Bu yazıda, mikroservisler özelinde hazırlanmış olan Traefik ters vekil sunucunun temel kavramlarından bahsedeceğim. Traefik, Docker, Mesos, Consul, Kubernetes gibi birçok altyapı ile birlikte çalışabilen ve dinamik olarak servis ekleme/çıkarma olana...
- July 31, 2012
True, False ve Karşılıkları ile Matematiksel Denemeler
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/python-multithreading.png)Python altında çalışırken True’nun 1, False’ın da 0’a karşılık geldiğini biliyoruz. Bunu type() ile onaylayamasak da, şöyle de bir gerçek var: Python altında 0 olma...
- December 13, 2015
Ücretsiz ESP8266 ile Nesnelerin İnterneti Kitabı
[](http://gu.ray.kim/esp/kitap.pdf)Nesnelerin interneti (Internet of Things, IoT) konusunda uzun zamandır projeler geliştiriyorum. Bunları yaparken birçok farklı teknolojiyle birlikte çalışmak gerekebiliyor. Sağladığı yenilikleri ve kolaylıkları da ...
- July 4, 2012
Ufak Şeyler Atölyesi – Küçük Üyemiz
Artık minicik, şirincik bir şey var zaman ayırılabilecek ve bu sefer bir yavru kediden de bahsetmiyorum. Ufak şeyler atölyesi isimli bir internet sitesi açtım. Yazdığım programları, özellikle işe yarar olanları paylaşmaya çalışıyorum. Yakın zamanda ...
- September 17, 2011
Urllib ile Proxy Kullanarak Site Açmak
Urllib modülünü kullanarak elimizdeki proxy’ler yardımıyla sitelere giriş yapabiliriz. Bunun için önce proxy’leri Python’un istediği şekilde bir sözlüğe koyup ardından FancyURLopener() fonksiyonu ve en son da open() fonksiyonunun elinden geçirerek s...
- August 23, 2011
Urllib ile Sitenin ve Sunucunun Bilgilerini Sözlük Halinde Almak
Urllib modülü sayesinde site ve sunucu hakkında işlem yapmaya ve bilgi almaya açık bir hale gelen Python sayesinde bilgi alma işlemini biraz inceleyelim. Sitemizi urllib.urlopen() ile açtıktan sonra headers ifadesi yardımıyla sunucu ve site hakkında...
- January 23, 2012
Urllib2 Modülü İle Python Kullanarak Sitedeki Tüm Dosyaları Çekmek
Sitede yer alan 1’den 10000’e kadar olan fotoğrafları bilgisayarımıza indirmek istediğimizi varsayalım. Ya da html gibi not defteriyle açıldığında anlamlı sonuç vermeyen yani binary modda olan dosyaları indirmek için kullanabileceğimiz bir program. ...
- July 10, 2012
Windows ve Linux üzerinde Python’a Pip yükleme (Python Installer Package)
Birkaç modül sayfasını ya da modüllerle ilgili yazıları içeren sayfaları gezdiyseniz muhtemelen karşınıza yükleme linklerinin yanında şöyle bir komut ile de yükleyebileceğinizi söyleyen bir ifade çıkmıştır: pip install paketadı Bu komut Python’a d...
- June 15, 2017
WordPress + MySQL with Isolated Network Deployment in 30 Seconds with Docker Swarm Mode
WordPress is using as a blog CMS for a long time. As a result, it is a huge project and it can be classified as monolithic WEB application. Due to this reason, its deployment could be a little bit different than new fashion deployments with microser...
- September 9, 2012
Yazılım Özgürlüğü Günü 2012 Kutlamaları
[](http://www.gurayyildirim.com.tr/blog/wp-content/uploads/banner.png) Blog üzerinden ilk defa bir katılım çağrısı yapıyorum sanırım. Ama gerçekten güzel bir çağrı olduğunu düşünüyorum. Yazılım Özgürlüğü Günü 2012 kutlamalarına, yazılıma ilgi duyan...
- October 9, 2012
Yenilikler
Uzun zamandır oturup bir blog yazamadım. Son zamanlarda olanları bir özet geçeyim: Şu anlık bunlarla sınırlıyım. Bazıları zaman aldığı için, ve başka birçok sebepten dolayı çok fazla ilerleme şansım olmuyor. Bugün blog yazmayı işsizlik olarak değer...
- April 23, 2013
Yorum Satırı ve Değişken İsmi Kullanımı Hakkında
Geçenlerde bir raporun bir kısmını okumuştum, ****özgür yazılımcılar için özetle şöyle diyordu: bu kişilerin kodlama bilgileri oldukça gelişmiştir fakat görsel arayüzlerle ve dökümantasyonla pek araları yoktur. Başlığı ya da yazarı hakkında hiçbir ş...
- August 25, 2011
Zip Arşivinden Dosya Çıkarmak
Zip arşivlerinden dosya çıkarabilmek için öncelikle boş birer dosya oluşturup içerikleri aktarmamız gerekmekte. Bunu yapabilmek içinse basit olarak bir dosyayı open() fonsiyonunu kullanarak oluşturalım ve ardından diğer işlemlerimizi yaparak sonucu ...
- August 25, 2011
Zip Arşivine Dosya Eklemek
Python ile istediğimiz bir zip arşivine dosya eklemek için yapacağımız işlemlere bir göz atalım. Tabii ki yine zipfile modülü ile çalışıyoruz. ``` zipimiz=zipfile.ZipFile("zipim.zip","a") # Yazacağımız için a modunda açtık. dosya.write("okunacak.tx...
- August 25, 2011
Zip Dosyasının İçerik Bilgilerini Almak ve Ekrana Bastırmak
Python ile okuduğumuz zip dosyasının içerisindeki dosya ve klasörleri listelememize rağmen sadece isimlerini bilmek bazen yeterli olmayabilir. Dosyaların ve klasörlerin bilgilerini içerisinde bulunduran zipfile.infolist() fonksiyonu bu esnada işimiz...