Kompozisyon için öğeler

Bu bayram tatili boyunca sanırım benim yazılarımdan bıkacaksınız. Daha önce karşıma çıkıp ta paylaşmak istediğim şeyleri paylaşamadım, uzun zamandır zamansızlıktan dolayı internet üzerinde takip edemediğim bazı günlükleri, siteleri ve güncelleştirmelerini bayram tatili vesilesiyle inceleyebildim (netvibes kullanmama rağmen zamansızlıktan o günlüklerin, sitelerin feedlerindeki güncellemeleri kaçırıyordum). Güzel şeylerle karşılaştıkça sizinle paylaşamadan duramayacağım. Bu yazı çılgınlığımı mazur görün.

Gelelim bu yazının konusuna. Fırsat buldukça takip ettiğim ve güncellemelerini incelediğim ve size daha önce bağlantısını verdiğim (bütün sitedeki yazıları tek tek inceledim, yeni yazıları incelemem ancak bu tatili bulabildi) dps sitesinin günlüğünden iki parça yazıyı paylaşmam gerekiyor. Bu sitenin en çok sevdiğim yanı yazıları güzel fotoğraflarla daha açıklayıcı bir hale getirmesi.

Orada bahsettiği kompozisyon öğelerinin ben sadece adlarını yazacağım (hatta bu paranteze yazayım: örüntü, simetri, desen, alan derinliği, çizgiler-doğrular, çerçeveleme, perspektif, boşluk-uzay, denge, renk), sizin girip bağlantılardaki resimlerle beraber öğeleri anlamaya çalışmanız daha iyi olacaktır:

5 Elements of Composition in Photography

5 More Elements of Composition in Photography

Yazılardaki yorumlar da bu öğeleri arttırmak ve kompozisyon için yeni fikirler edinmek için faydalı oluyor, söylemeliyim.

JDBC Programlama için 5 Öneri

Java ile veritabanı erişimi için JDBC kullanmayı daha önce anlatmıştım. Bu anlatım yeni başlayanlar için bazı basit ve temel bilgileri içeriyordu. JDBC'yi artık sıklıkla kullandığınızı düşünelim, ve bir günlük yazısında karşılaştığım önemli önerileri paylaşalım:

1. Bağlantıları kapatın: Ne olursa olsun, hata ile karşılaşsanız bile sql bağlantılarını kapatın, kapatmayı unutmayın. Bu pratiği unuttuğunuzda programınızın hiç beklemediğiniz sorunlarla karşılaştığını görebilirsiniz. Elbette bu pratik yerine kullanılabilecek başka bir çözüm de bağlantı havuzu kullanımıdır. Böylece izin verilen bağlantı sayısını ve bunların kontrolünü sağlayabilirsiniz.

Kod Örneği:

Connection con;
try {
  con = …
} finally {
  try { if(con!=null) {con.close();}}
  catch (Exception e1) {}
}

2. Standart "Statement" yerine "PreparedStatement" kullanın: PreparedStatement kullanımı size bir çok avantaj sağlayacaktır (sağlıklı sorgular, düzenli girdi/çıktı şeklinde sorgular, başarım artışı). Bu yüzden sağlıklı bir şekilde PreparedStatement kullanmak gereklidir:

Örnek:
Statement statement = con.createStatement();
statement.executeQuery(“SELECT name FROM widgets WHERE type = ‘WidgetB’”);

Yerine:
final String widgetType = “WidgetB”;
Statement pStatement = con.prepareStatement(“SELECT name FROM widgets WHERE type = ?”);
pStatement.setString(1,widgetType);
pStatement.executeQuery();

3. Veritabanı platformu değişimlerine hazırlıklı olmak: Her zaman kullanıcıların isteği veya kendi kararınızla veritabanı değiştirebilirsiniz. Buna her zaman hazırlıklı olmanız gerekir. Yarın öbür gün MySQL kullandığınız bir program için PostgreSQL kullanmaya karar verebilirsiniz (Bkz: En sondaki yorumum)

4. Hiç bir zaman veritabanı sistemine özgü kütüphanedeki sınıfları kullanmayın: OracleCallableStatement cst = (OracleCallableStatement)conn.prepareCall şeklinde bir kullanım yaptığınızda bilin ki eğer Oracle'dan vazgeçmek zorunda kalırsanız kodu da aynı şekilde değiştirmeniz gerekecektir. Bu yüzden sadece JDBC tarafından sağlanan ve Java ile her zaman dağıtılan genel sınıfları kullanın.

5. Veritabanı stored procedure'leri kullanmayın: Yaşadığım özel sektör deneyimlerinden ve kişisel projelerimden yola çıkarak söyleyebilirim ki, en nefret ettiğim şey stored procedure kullanımıdır. Sizi veritabanı sistemine mahkum eder, değiştirmek zordur uzmanlık ister. Projenize özgü ve Java ile yapabileceğiniz hiç bir şeyi stored procedure ile yapmayın.

6. JSP içerisinde JDBC kodu kullanmayın: Bu herkesin bilmesi gereken bir şeydir. Dinamik web dosyalarınızın içerisine (PHP olsun, JDBC olsun) veritabanı sorgularını koymamak gerekir. Bunun için soyutlama yaparak başka sınıfları sorumlu tutup, işleri o sınıfta yapmanız makbul olan yoldur (Araştırınız: MVC, Üç katmanlı mimari, vb.).

Ek yorumum: Yukarıdaki zorluklardan bir kısmından kurtulmak istiyorsanız kalıcı katman kullanmaya çalışmalısınız. Başlangıç için

Açık Standartlar: İlkeler ve Pratik (Çeviri)

Açık Standartlar:İlkeler ve Pratik
Açık standart bir belirtimden daha fazlasıdır. Standartın ardındaki ilkeler ve standartın işletilmesi ve önerilmesindeki ilkeler o standartı açık yapan nedenlerdir.

İlkeler
Elde edilebilirlik (Availability): Açık standartların herkesin okuyabilmesi ve gerçekleştirebilmesi için elde edilebilirdir.

Son kullanıcının seçeneklerini arttırma: Açık standartlar gerçekleştirimler için adil, rekabete dayanan bir pazar yaratırlar. Müşteriyi (kullanıcıyı) belli bir marka veya grubun egemenliğine sokmazlar.

Telif hakkı yok: Açık standartlar herkesin gerçekleştirmesi için ücretsizdir, telif hakları yoktur. Standartlar kuruluşu tarafından verilen uygunluk sertifikası bir ücret gerektirebilir.

Ayrım yok: Açık standartlar ve standartları yöneten kuruluşlar bir gerçekleştiriciyi diğer gerçekleştiricilere göre sağlayıcının gerçekleştiriminin teknik standartlara uyması dışında bir nedenle tercih edemezler, kayıramazlar. Sertifikasyon kuruluşları düşük veya sıfır maliyetli gerçekleştirimlerin doğrulanması için bir yöntem sağladıkları gibi, gelişmiş sertifikasyon hizmetleri sunabilir.

Genişletme veya Alt Küme: Açık standartların gerçekleştirimleri genişletilebilir veya alt kümeler biçiminde önerilebilir. Ancak, sertifikasyon kuruluşları alt küme gerçekleştirimlerini sertifikalandırmayı reddedebilir, ve genişletmeler için gereksinimler koyabilir (Bkz: Yağmacı Pratikler).

Yağmacı Pratikler: Açık standartlar standartın kabul et ve genişlet (embrace-and-extend) biçimindeki tahriplere karşı standartı koruyan lisans şartları içerebilir. Standarta iliştirilmiş olan lisanslar genişletmelerin referans bilgisini yayınlamayı ve diğerlerinin genişletmelerle uyumlu yazılım yaratma, dağıtma ve satmasına yönelik lisans gerektirebilir. Bir açık standart genişletmeleri başka türlü yasaklamaz.

Pratik
Elde edilebilirlik: Açık standartlar herkesin okuması ve gerçekleştirmesi için elde edilebilir durumdadır. Bu nedenle
1.Standartın metni ve referans gerçekleştirimleri internet üzerinden ücretsiz olarak indirilebilir bir şekildedir. ,
2.Herhangi bir yazılım projesi standartın bir örneğini (kopyasını) herhangi bir zorlukla (mali, yasal) karşılaşmadan elde edebilmelidir. Maliyet bir üniversite ders kitabının maliyetini aşmamalıdır.
3.Standart belgelerine eklenmiş lisanslar, standartın gerçekleştirimini herhangi bir yazılım lisansı kullanarak üretmeyi kısıtlamamalıdır.
4.Yazılım referans platformlarını lisanslamanın en iyi pratiği (yöntemi) yazılım lisanslarının tüm türlerini, özgür yazılım olsun sahipli yazılım olsun, desteklemesidir. Ancak, yazılım referans platformları için uygun olabilecek lisans kısıtlamaları için “Yağmacı Pratikler” i tekrar incelemek gereklidir.

Son kullanıcının seçeneklerini arttırma: Açık standartlar, standartın gerçekleştirimleri için adil, rekabetçi bir pazar yaratırlar.Bu nedenle
1.Geniş çerçevede; özel sektör, akademi ve kamu projeleri olabilecek gerçekleştirimlere izin vermelidirler.
2.Çok pahalıdan, maliyetsiz üretime kadar geniş bir aralıkta ücretlendirme politikasına da izin vermelidir.

Telif hakkı yok: Açık standartlar, herkesin geliştirmesi ve gerçekleştirmesi için ücretsiz olmalıdır, telif hakkı veya ücret istememelidir. Uyumluluk sertifikası standart organizasyonu tarafından bir ücret karşılığı verilebilir. Bu yüzden;
1.Standart içerisindeki patentler telif hakkı istemeyen bir şekilde lisanslanmış olmalıdır ve herhangi bir ayrımcı şart içermemelidir.
2.Sertifika programları düşük veya sıfır maliyetli sertifikalandırma içermelidir, ancak yüksek maliyetli geliştirilmiş markalı programlar da içerebilir.

Ayrım yok: Açık standartlar ve standartları yöneten kuruluşlar bir gerçekleştiriciyi diğer gerçekleştiricilere göre sağlayıcının gerçekleştiriminin teknik standartlara uyması dışında bir nedenle tercih edemezler, kayıramazlar. Sertifikasyon kuruluşları düşük veya sıfır maliyetli gerçekleştirimlerin doğrulanması için bir yöntem sağladıkları gibi, gelişmiş sertifikasyon hizmetleri sunabilir. Bu nedenle,
1.Kendisini sertifikasyon markalandırması yöntemiyle kendisini desteklemek isteyen bir standart organizasyonu bir özel yöntem (“premium track”) sunduğu gibi düşük maliyetli veya maliyetsiz bir yöntemde sunmalıdır. Özel yöntem sağlayıcının gerçekleştirimini ve geliştirilmiş markalandırmasını doğrulamak için sağlayıcının tesislerinin dışında bir sertifikalandırma laboratuvarı sağlayacaktır. Sertifika işareti daha standart için yüksek oranda bir doğrulama ve finansal desteği gösterecektir. Düşük maliyetli veya maliyetsiz yöntem, sağlayıcı ve temel markanın kendi kendini sertifikalandırmasını kastetmektedir.

Genişletme veya Alt Küme: Açık standartların gerçekleştirimleri genişletilebilir veya alt kümeler biçiminde önerilebilir. Ancak, sertifikasyon kuruluşları alt küme gerçekleştirimlerini sertifikalandırmayı reddedebilir, ve genişletmeler için gereksinimler koyabilir (Bkz: Yağmacı Pratikler).

Yağmacı Pratikler: Açık standartlar standartın kabul et ve genişlet biçimindeki tahriplere karşı standartı koruyan lisans şartları içerebilir. Standarta iliştirilmiş olan lisanslar genişletmelerin referans bilgisini yayınlamayı ve diğerlerinin genişletmelerle uyumlu yazılım yaratma, dağıtma ve satmasına yönelik lisans gerektirebilir. Bir açık standart genişletmeleri başka türlü yasaklamaz.
1.Standart organizasyonu Sun Industry Standards Source License'a benzeyen bir antlaşmayı standart belgesine ve beraberindeki referans gerçekleştirime uygulamak isteyebilir. Sun antlaşması referans gerçekleştiriminin (asıl ticari gerçekleştirim değil) herhangi bir gerçekleştirimle beraber yayınlanmasını gerektirir. Bu yöntem, standart organizasyonunun yenilikçiliği boğmadan birlikte çalışabilirliği korumasına olanak sağlar.

Sözlük
Kabul et ve genişlet (embrace-and-extend): Pazardaki hakim durumdaki standart sağlayıcı bir firmanın kullanabildiği bir yağmacı pratiktir. Diğer sistemler (gerçekleştirimler) pazardaki büyük çoğunluğu oluşturan ve hakim durumdaki firmanın ürettiği sistemlerle uyumsuzluğa düşmüş olurlar. Hakim durumdaki firma patentleri veya telif hakkını kullanarak diğer firmaların yeni genişletmelerle uyumlu sistem gerçekleştirmelerini engellemeye başlar. Bu standart üzerinde bir tekel kilidi yaratmış olur. Kullanıcı böylece diğer kullanıcılarla uyumlu olabilmek için hakim sağlayıcının gerçekleştirimini kullanmaya zorlanmış olur.

Özgür yazılım: Bilgisayar yazılımı veya diğer ortam üreticilerinin özgürce kullanma, dağıtma ve değiştirme haklarını diğerlerine aktardığı bir paradigmadır. Bu, bu tür işler üzerinde herkese açık geniş bir işbirliğini doğurur. Özgür yazılım tarafından kullanılan lisanslama Açık Kaynak Tanımıyla uyumludur. Ancak Özgür Yazılım ve Açık Kaynak aynı şeyin iki farklı yüzüdür. Özgür yazılım promosyonu, yazılım kullanıcılarının sivil özgürlüklerinin üzerinde dururken, Açık kaynak promosyonu gücünü iktisadi faaliyet (“business”) içerisinde kullanıma yoğunlaştırmıştır.

Açık Kaynak: Özgür yazılıma benzer, ancak iktisadi faaliyette kullanıma odaklanmış, bilgisayar kullanıcısı veya geliştiricisinin sivil özgürlüklerine vurgusu azdır. Açık Kaynak Tanımı : http://www.opensource.org/docs/definition_plain.html Bruce Perens'in (bu yazının yazarı) bu konudaki görüşleri : http://perens.com/OSD.html 

Açık Standartlar: İlkeler ve Pratik, Açık Kaynak Tanımını ve Debian Sosyal Antlaşmasını da hazırlayan Bruce Perens tarafından hazırlanmıştır.

Metnin Aslı: Open Standards: Principles and Practice

Metin Yeğin

"Altın yerli kızların saçlarından yapılır" ve "El-Mahalla -Canım Ciğerim İşçi Kerim" isimleri size bir şey çağrıştırıyorsa Metin Yeğin ismini daha önce duymuşsunuz demektir. Dünyanın ezilen halklarını "amatör" bir kamerayla belgesel halinde anlatan bir yönetmen ve yazar. "Dünyanın Sokakları"ndan verdiği haberlerle ilgi alanımıza giriyor. Bir çok belgeseli İşçi Filmleri Festivali'nde yayınlanıyor.

Kübalı sanatçıların bildirisi

Bana gelen bir postayı paylaşıyorum :
"Kübalı sanatçılar 18 Eylül'de http://www.concubahoy.cult.cu sitesinde bir kampanya başlatarak dünyadaki tüm aydınları Küba ile dayanışmaya çağırdılar. Devrim tarihinin en büyük felaketiyle karşı karşıya olan ülke, hala süren ambargo koşulları altında, yıkılan evlerini, enerji altyapısını onarmaya, ağırlaşan gıda sorununu çözmeye çalışıyor. Kübalı aydınların bu kampanyasına kurumsal ve kişisel imzalarla katılarak destek verebilirsiniz. Maddi yardımda bulunmak isteyenler için de Küba hükümeti kısa süre önce bir çağrı yayınladı.

Kübalı sanatçıların bildirisi:

Gün Küba İle Birlik Olma Günüdür

Dünyanın Sanatçı ve Entelektüellerine Çağrı

Bizim ülkemizde bugün dramatik bir durum yaşamakta. Güçlü Ike ve Gustay kasırgaları, adadan geçişi esnasında, sadece sekiz günlük bir sürede, ülkenin gıda üretimine ve ulusal topraklarda bulunan, ekonominin temel direği sektörlerin tamamını vurdu. Can kayıpları asgari düzeyde olmasına rağmen, konutlar harabeye döndü, okullar ve kültürel kurumlar şok edici bir şekilde yıkıldı.

Bu trajik durum karşısında bile Amerika Birleşik Devletleri, bu ülkede yaşayan Kübalıların, adadaki ailelerini ziyaret etme ve yardım gönderme taleplerini, sert bir şekilde engellemeyi sürdürüyor. Küba, elektrik hatları ve konutların onarımı için gerekli malzemenin bu ülkeden satın alınmasına ve gıda ürünlerini tedarik edebilmemiz için Amerikan şirketlerine, bizim ülkemize ticari kredi açma izninin, en azından böyle bir dönemde verilmesini talep etti. Bu talebe karşılık Bush yönetimi, ekonomik ve finansal ambargo politikasını öne sürerek, bize komik bir yardım teklifinde bulundu. Bu cevap, içinde bulunduğumuz özel durumda öncekilerden daha ahlaksız ve daha fazla acımasız oldu.

Ülkemize yardım etmeye, bizim ile dayanışma eylemlerini yükseltmeye, Amerika'nın ülkemize uyguladığı cezai ablukayı acilen kaldırmasını talep etmeye, dünyanın her tarafındaki sanatçı ve entelektüelleri duyarlı olmaya çağırıyoruz.

http://www.concubahoy.cult.cu"