Builder

web application developer blog

Hybrit Data Model 2. Bölüm: PostgreSQL’de JSON sorguları

Hibrit Datamodelin ne olduğuna dair daha önceki yazımı kaçıranlar şuradan başlayabilirler. Bu yazımda kullandığım örneklerde, öncekinden farklı olarak JSONB veri tipi var. JSONB Postgresql’de Binary JSON veri tipidir ve 9.4 versiyonundan itibaren desteklenmektedir. Hibrit Datamodel’de JSON sorgusu örneklerine başlamadan önce, örnek bir tablomuz olması lazım:

Bir de bu tabloda sql sorguları yapabileceğimiz örnek kayıtlara ihtiyacımız var.

Üç telefon…

Github kapatıldı, kodlarınıza nasıl erişirsiniz? Projenizi nasıl devam ettirirsiniz?

Aslında bambaşka bir blog hazırlığı içerisindeydim ama aniden gelişen bu olay nedeniyle bu konuyu yazmak zorunda kaldım. Anladığım, kadarıyla DNS ile ilgili bir engelleme yok. Sadece https ile ilgili bir ağ erişiminin bozulması söz konusu. Bu nedenle https yerine ssh ile erişmeyi denedim ve işime kaldığım yerden devam etmeyi başardım. Adım adım anlatmak gerekirse: Github, SSH erişim bilgilerini öğrenme. repository’nizi…

Kullanışlı Python Kestirmeleri- Python Cheat Sheet

Python, kestirmeleri ile ünlü bir dildir. Python, C syntax’ını kullanan dillerden geçenler için sürprizlerle doludur. Bu yazıda kısa kısa bu kestirmelerden bahsetmek istiyorum. Bu blog yazısı bir nevi cheat sheet olsun. Veri Değiştokuşu

Teksatırlık if

Birleştirmeler

Sayılar İçin Kestirmeler

Ondalıklı sayılarla bölme yaparken dikkatli olmak lazım

Sayıların Karşılaştırılması Python’un ile iki sayı aralığında olma durumu…

Relax Coding

Yazılımcılar, yüksek sesle müzik dinlemeyi severler. Hatta çoğunlukla dinledikleri müzik oldukça gürültülüdür de. Bu konu hakkında daha detaylıca yazmayacağım ama şuradan Özkan Erener’in yıllar önce yazdığı “Yazılım Geliştirmeye Değişik Bir Bakış” başlıklı blogun, orijinal sitenin bu gün aktif olmaması sebebiyle başka bir blogger tarafından araklanmış yazısını, okumanızı tavsiye edebilirim. Ayrıca yazımın bundan sonraki kısmında bu bloga atıflarım olacak 🙂 Yazılımcıların “müzik,…

SQL ve NoSQL modelleme, Hibrit Data Model

Bilişim okutulan okullarda yıllardır, ilişkisel veri modeli ve RDMS (Relational Database Management System) programlar okutuluyor. Bunlardan en popülerleri Açık Kaynak tarafında, MySQL, diğer tarafta MS SQL server ve Kurumsal alanlarda da Oracle. PostgreSQL, ülkemiz için pek popüler olmasa da bilhassa Python programcıları başta olmak üzere dünyada saygın yeri olan bir başka RDMS. Ülkemizdeki Oracle müptelaları için şunu da hemen belirteyim…

Symfony ile üretim ortamından ekran görüntülü ve dataylı hata raporlarını email yoluyla almak

Üretim ortamında hata olmaz. Olursa da haberimiz olmaz. Çünkü hata mesajlarını ekranda göstermek tehlikelidir. Zaten son kullanıcı hata mesajını görse de size raporlamaz. Raporlasa da o rapor bizim bir işimize yaramaz. “Aynı hatayı tekrar oluşturup, problemin sebini anlamaya çalışıyoruz” denir, ürüne değer kaybettirilir. Biraz daha tecrübeli geliştiriciler, hemen log dosyasını tarar ama o kadar veri içinden gerçek hatayı bulup çıkarmak…

Project Euler Problem 4: En büyük Palindromik Sayı, PHP ve Python ile Çözüm

Bir palindromik sayı sağdan ve soldan okunduğunda aynıdır. iki basamaklı sayıların çarpımı ile elde edilebilen en büyük palindormik sayı: 9009 = 91 × 99 dır. 3 basamaklıların çarpımı ile elde edilebilen en büyük palindromik sayı kaçtır? Burada en büyük sayı sorulduğu için döngüyü tersten kurmak daha mantıklı olacaktır. en büyük 3 basamaklı sayı 999. Eğer 999’dan geriye doğru gidersek bulduğumuz ilk…

PHP generator function – yield

Python’u yada C#’ı iyi bilenler, daha başlığı okuduklarında, aa PHP’de de mi yield var demişlerdir. Evet PHP de de yield var ama 5.5 versiyonundan itibaren var. Yani daha yeni eklendi sayılır. yield’i yeni duyanlar için örneklerle yield nedir nasıl kullanılır anlatayım. Bunu yaparken en sevdiğim eğitim metodu olan “Bilinenden bilinmeyene” metodunu kullanacağım. Efendim, PHP de fonksiyon yazmayı biliyoruz. Fonksiyonların herhangi biryerde…

SQLAlchemy Model Class Generator for PostgreSQL

Şu üç teknolojiyi bir arada kullanıyorsanız: Python SQLAlchemy (zaten Python‘suz olmaz 🙂 ) PostgreSQL ve benim gibi, önce model class’ı yazmak yerine veri tabanı tablolarını oluşturmayı seviyorsanız. Model class’larını oluşturacak bir reverse engineering scripti zorunlu oluyor. Özellikle de büyük projelerde her bir modeli tek tek yazmak tam bir işkence ve hata yapma ihtimali çok yüksek. Oysa veri tabanı tabloları ER diagramında oluşturulmalı diye…

Twig şablonu içinde mod işlemi

Aslında PHP’de olduğu gibi twig içinde de % operatörü çalışabilir.

işlemi doğrudan twig tarafından işlenebilir. Ancak uzun olmakla birlikte daha anlaşılabilir olan divisibleby fonksiyonu twig içinde vardır. Döngü içinde kullanımı şöyle:

bu tek olan index değerleri için çalışacak bir şart oldu. Not kullanmaz isek de çift olanlar için çalışacaktır. Benzer şekilde şöyle de yapabilirdik:

daha detaylı bilgi…