Builder

web application developer blog

Yazar: Ahmet Erkan ÇELİK

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. {{ 23 % 7 }} 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: {% if loop.index is not divisibleby(2) %} bu tek olan index değerleri için çalışacak bir şart oldu. Not kullanmaz isek de çift olanlar için…

Hangi Programlama Dili?

Aslında sırada bekleyen yazı, çok daha teknik ve deneysel bir yazı idi. Ancak işler yolunda gitmeyince o yazının çıkması uzadı. Tam da bu esnada, youtube’da bambaşka bir meseleyi araştırırken aşağıdaki videoya rastladım. Öğrencilerim yada eski öğrencilerim hep bana hangi programala dilinin daha iyi olduğunu yada hangi programlama dilleri ile daha kolay iş bulunabileceğini soruyorlar. Aklıma bir blog yazısı ile bu…

Tornado Framework ile subdomainleri tek çatı altında geliştirme

Şu yapı kalsiktir. Bir siteniz vardır örneğin: www.domain.com ve birde bu sitenin yönetimi için admin.domain.com sitesi varıdır. Özünde her iki site de aynı veri tabanını kullanır ve eğer ORM kullanıyorsanız, her iki proje için de ayrı ayrı model sınıfları tanımlamanız gerekir. Tabi eğer iki projeyi tek bir proje olarak geliştirmiyorsanız. Tornado framework, bir Python frameworküdür ve sadece bir framework değil…

font awesome, entypo gibi font ikonları nasıl özelleştirebilir ve dosya boyutunu küçültebiliriz?

font awesome, entypo gibi font ikonları kullanmak, pek çok geliştiricinin hem projeleri daha hızlı geliştirmesine, hemde css yazımında daha esnek davranabilmesine olanak sağlamaktadır. Bu da kaçınılmaz bir şekilde her gün daha fazla geliştiricinin font ikon kullananlara katılmasını sağlamaktadır. Ancak ne var ki bu yöntem, geliştirme maliyetini azaltıyor olsa da, geliştirme sonrası, sürdürülebilirliği yani sunucu maliyetini arttırmaktadır. Çünkü özel bir fontu…

Project Euler Problem 3: En büyük Asal Çarpan, PHP ve Python ile Çözüm

13195’in asal çarpanları: 5, 7, 13 ve 29. 600851475143 ‘ün en büyük asal çarpanı nedir? Not: Sorunun çözümüne geçmeden önce asal sayıların bulunması ile ilgili bir bilgi paylaşmak isterim. Genellikle okullarda asal sayılı tespitinde bir sayının kendisinden küçük tüm sayılara bölünüp bölünemediğine bakılır. Örneğin 17 saysının asal olup olmadığına bakmak için 1-16 arasındaki tüm sayılar denenir. Oysaki, bir sayının çarpanları…

Project Euler Problem 2: Çift Fibonacci Sayıları, PHP ve Python ile çözüm

Project Euler Problem 2: Her bir fibonacci sayısı, 1 ve 2 ile başlayarak, önceki iki terimin toplamıyla elde edilir. İlk 10 fibonacci sayısı: 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, … Dğeri dört milyonu aşmayan fibonacci sayılarının çif olanlarının toplamı nedir? Python İle Çözüm: from datetime import datetime def main(): f0,f1,total=1,1,0 while f1<4000000: f0,f1=f1,f0+f1 if f0 %…

Project Euler Problem 1: 3’ün ve 5’in ortak katları

Eğer 3’ün ve 5’in ortak katı olan ve 10’dan küçük doğalsayıları, listelersek 3,5,6 ve 9 olur. Bu sayıların toplamı 23’dür. 1000’den küçük 3’ün ve 5’in ortak katı olan sayıların toplamını bulunuz: Python İle Çözüm from datetime import datetime def main(): total = 0 for n in range(3,1000): if n % 3 == 0 or n % 5 == 0: total+=n…

Div’in yüksekliğinin sayfa genişliği ile orantılı değişmesi

Html ve CSS yazarken, bazen, böylesine basit ve temel ihtiyaçların nasıl olup da düşünülemediğini herkes kendi kendine sormuştur. Evet malesef, div için 100% gibi bir yükseklik değeri çalışmamakta. Bu noktada küçük hileler ile bunu biz yapmak zorunda kalıyoruz. Şöyle bir html’imiz olsun <div class=”ratio-4-3″> <h3>Başlık</h3> <p>Lorem ipsumm dolor sit amet</p> </div> Bu div için ürettiğimiz css ise şöyle olsun: .ratio-4-3{…

Python mu Java mı?

2012 yılında, o sırada gerçekleştireceğiniz bir projede hangi dili kullanacağımız konusunda kararsız kalmıştık. Ben Python yanlısıydım ve görüşümü desteklemek için aşağıdaki sunumu hazırlamıştım. Benzer kararsızlıklar yaşayanlara faydalı olmasını umuyorum.