Ünlü bir borsa indikatörü olduğunu öğrendiğim ama aslında hiç ilgisi olmayan bir yerde büyük data analizi için sıradışı hareketlerle tahminler üretmek amacıyla kullandığım Kaufman ortalaması gerçekten hayat kurtarabiliyormuş. Bunu kullanmamı öneren, ufuk ve zihin açıcı ve gerçekten her açıdan fikirleri ile beni çok ciddi zehirleyen ve istikrarlı bir şekilde uykularımı kaçıran -ismini ne yazık ki yazamayacağım- kişiye de selam olsun 🙂
Şirket Bilançolarını toplu indirme – Python Güncellemesi
Geçen hafta Powershell üzerinde yaptığım “Şirket Bilançolarını toplu indirme” güncellemesine rağmen aldığım mail ve DM’ler sonucu inat edip python kodunu yazmaya karar verdim. Eleştrilerden biri Toplu Şirket olmayışı, tek tek şirket girildiği idi. Bir diğer eleştri ise fixed yıllar olduğu için değişiklik yapılamadığıydı. Her nekadar bunları baştan belirtsem de, haftasonu üzerine biraz düşünüp, kabaca anahatlarını çizdiği python temelli uygulamayı bugün yazdım ve umarım herkes çektiğim kaynak kapanana kadar rahatça kullanabilir.
Python ile Fibonacci Dizisi
Uzun zaman önce bu LINK‘te C# ile Fibonacci dizisi ile ilgili bir yazı paylaşmış, eş zamanlı olarak bir çok detay da paylaşmıştım. Eğer özel olarak ilginiz varsa orada da farklı bilgiler edinebilirsiniz. Project Euler sitesinde denk gelince basit algoritma antrenmanı olduğu için paylaşmakta istedim. Bu ve her seviyede problemleri çözmekten hoşlanıyorsanız Project Euler sitesini incelemenizi, üye olmanızı şiddetle tavsiye ederim.
Python üzerinde Ternary operatorü nasıl kullanılır
Ternary operatörü, Türkçesi ile 3 kısımdan oluşan operatör programlama dillerinde IF gibi şarta bağlı durumların kod bloklarında tek satıra indirgenmiş, pratik versiyonları olarak düşünülebilinir. Sadece Python’da değil Java, Javascript, C, C++, C#, Ruby, PHP, kotlin gibi dillerde de uygulayabilirsiniz.
Python kullanarak QR Code hazırlayalım
İşimle ilgili komut satırından göndereceğim dinamik değişkenin oluşturacağı offline çalışacak bir QR Code generator’e ihtiyacım oldu. Bir kaç paket denedikten sonra sonucu en iyi aldığım paketle oluşturduğum en temel seviyedeki kod halini burada paylaşmak istedim. Böylece uzun zamandır yazmadığım bloğuma da yazma sebebim olsun.
Python paketleri nasıl güncellenir
Gerek python öğrenme aşamasında, gerekse aktif kullanma dönemlerinde birçok paketi sistemimize kuruyoruz. Güncelliklerini takip etmek bir zaman sonra zor da gelebiliyor. Paketlerin güncelliklerini nasıl kontrol edeceğiz, paketleri nasıl güncelleyeceğiz, şimdi onların notlarını alalım. Er yada geç lazım olacaktır.
Python kullanarak basit bir keylogger yazalım
Geçen haftalarda oğlumun yaşı itibarıyla çok merak duyduğu, bilgisayar ile ilişkili illegal çalışmaların hep 16 yaşında ve kapşonlu tiplerin uğraş alanı sanması üzerine konuşmamıza istinaden hazırladığım bir uygulamayı burada paylaşmak istiyorum. Zaman bulursam hiç bir zaman aktif bulunamadığım tozlanmış, küflenmiş github hesabıma da atıp zaman içinde geliştirmeyi de amaçlıyorum.
Python ile Google aramaları
Aradığım kelime grubunun siteme etkisinin günlük performansını tutmak üzere google modulune ihtiyaç duydum. Aslında en başından ve yalınca anlatmam gerekirse google modülü olup olmadığını aramak üzere ŞU adrese girip google kelimesini arattım. “Python bindings to the Google search engine.” açıklamasıyla şu aralar güncel olarak 1.9.3 versiyonu olan ŞU modüle ulaştım.
Python ile Whois – Version#2
Birkaç hafta önce şurada paylaştığım scriptimle ilgili kullandıkça bazı eksikler baş göstermeye ve beni rahatsız etmeye başladı. Bunlardan ilki gün farkları hesaplanıyor ama bir düzende ekrana basılmıyordu. Az günden çok güne doğru olacak şekilde bir sıralama sistemi ekledim. Sonraki eksiklik ise eğer ben scripti açıp çağırmazsam yada unutursam domainlerimi sorgulamayı atlayabiliyordum. Bunun içinde bir mail fonksiyonu ekledim ve OS tarafından otomatik çalışır hale getirdim. Böylece OS scriptimi her çalıştırdığında bana bir mail ile bilgilendirme geliyor olacak. Version#2 ile birlikte kodlar artık eş zamanlı olarak github‘da da yayınlanmaktadır. Fikir, öneri ve geliştirmelerinizi bekliyor olacağım.
Python ile whois
Basit ama yoğun metin düzenleme vs. ihtiyaçlarım olduğu zamanlarda Python kullanmaya çalışıyorum. Birkaç gün arayla elimdeki domainlere bakıp kalan günlerini görmem gereken bir dönemdeyim. Haliyle bunu her gün tek tek whois çekerek yapmam, yazılım felsefeme ters düşüyor. Bunun için minik bir betik hazırladım ve hep yaptığım gibi notlarımı kaybetmekten ve sıklıkla aramaktan ziyade buraya ekliyorum. Yorum yada önerileriniz olursa lütfen ekleyin. Evet kaskınızı takın, başlıyoruz;
Docker nedir?
Ian Murdock’ın ölümü üzerine denk gelmesi üzücü tabi ama bir kaç zamandır kendime not olarak yazmak istediğim bir konuydu Docker. Docker’la ilgili bakınırken, seyahat takip listemde bulunan Emre Aladağ’ın Docker konusunda tam olarak derlemek istediğim özeti yapmış olduğunu gördüm. Kendisinin de izniyle yazıyı buraya aldım.
Docker, yazılım geliştiriciler ve sistemciler için geliştirilen açık kaynaklı bir sanallaştırma platformudur. Docker ile Linux, Windows ve MacOSX üzerinde Linux ve Windows sanal containerler(makineler) çalıştırabilirsiniz. Bu platform sayesinde web sistemlerinin kurulumunu, testini ve dağıtımını kolaylıkla gerçekleştirebilirsiniz. En önemli özelliği belki de “Benim bilgisayarımda çalışıyordu, sunucuda neden çalışmadı acaba?” sorununu ortadan kaldırıyor olması. Devamı …
Periyodik MySql ve Dizin yedekleme aracı mqBackup
Python 2.7 ile, Mint-13 (Linux) üzerinde hazırladığım Periyodik MySql ve Dizin yedekleme aracım mqBackup’la hala sorunsuz yedek almaya devam ediyorum. Günde 1 kere çalışacak şekilde Crontab üzerine eklediğim scriptimin sorunsuz çalıştığını da aldığım “yedek alındı” bilgi mailleri ile takip etmekteyim. Hatta bazen onu dahi unutmaktayım.
mqBackup ne yapıyor?
En kapsamlı ifade ile Periyodik MySql ve Dizin yedekleme işini pratik bir şekilde tek elden yapıyor. Detayında Server üzerinde koşan MySQL database’leri ve web dizinlerini (ben böyle tercih ediyorum) sıkıştırıp, lokal bilgisayarınızda gösterdiğiniz başka bir dizine yedekliyor. Bu yedeklemeleri tanımladığınız bir buffer süre ile koruyor. Belirlenen bu süre dışındaki dizin ve veritabanı yedek dosyalarını ise siliyor. Örnek vermek gerekirse, kabaca; “Bana her daim son 10 günlük yedeği tut, bu bana yeter kardeşim! Kalanı da sil!” diyebiliyorsunuz. Tüm bu yedekleme, silme işlerini yaptıktan sonra da, dilediğiniz bir smtp adresinden (default gmail) size yada ekibinize mail atarak yaptığı işlemler hakkında detaylı bilgi veriyor.