29 Kasım 2011 Salı

ORA 12546: TNS:Onay Reddedildi

Başlıktaki hatayı alan azınlıktaki şanslılardan biri olma şerefine nail oldum geçenlerde. :) Maalesef hiçbir detayı bilgi güvenliği kapsamında veremeyeceğim ama olayın özünden bahsetmek gerekirse, daha önceden statik IP ile sorunsuzca eriştiğim veritabanına erişememeye başladım. Ve tns:permission denied hatası fırlamaya başladı. Gerek statik IP'in tanımlamaları yapılmış, gerekse de ilgili yerlerden tüm izinler verilmişti. Ancak yine de hatayı aşamadım. Fakat hatanın sebebi Personal Firewall çıktı. McAfee sağolsun, bizi biraz uğraştırdı. :) Önce Personal Firewall özelliğini kapatmanız(disable Personal Firewall), ardından da gerekirse policy ayarlarınızı ilgili ekiplere yaptırmanız gerekmekte.
Görüşmek dileğiyle..

ShrewSoft VPN Hatası

Geçenlerde ShrewSoft'u makinama kurmak istediğimde "a corresponding inf file in the driver store could not be found" hatası aldım. Tabi inf dosyalarının altını üstüne getirdim ve hangi numarayı denediysem kurulumu gerçekleştiremedim. 3G Vınn ile denedim bu arada.
Sonradan aklıma kabloluda denemek geldi. Ve kablolu bağlantı ile denediğimde sorunsuz bir şekilde kurulumu gerçekleştirdim. Shrew'i daha önce kullanan birisi değilim, o yüzden neden böyle olduğu konusunda fikrim yok ama aynı hatayı alanların işine yarar belki.
Görüşürüz..

26 Kasım 2011 Cumartesi

Weblogic - J2EE

Eskiden BEA firmasının olan, Oracle'ın yeni silahı... Application Server'ların arasında en iyisi olarak gösterilmekte. Üzerinde çeşitli uygulamaların çalışmasına olanak veren bir Java uygulamasıdır en basit ifadeyle.

Dışarıdan baktığınızda tek bir process olarak görürsünüz ama içinde birçok uygulama barındırır.
Şimdi önce şu soruyu soralım kendimize: bir bilgiyi kendinde değil de, bir veritabanında tutmak istersem ne olur? Bilgiyi üzerimde tutsam, istek geldiğinde direkt veririm. Ama veritabanındaysa bilgi, birçok teknik detay gerekecek. Yani bir standartizasyon sorunu belirecek. Bu sorunu ortadan kaldırmak için J2EE standartları ortaya çıkmış. Şirket olarak bu standartın üzerine çıkabilirsiniz ama en azından bunları sağlamakla yükümlüsünüzdür.


Diyelim ki müşteriden istek geldi ve bize maç sonucunu sordu. Ama sen, application server olarak, bunu senin yerine başka biri yapsın istiyorsun. Tam tabiriyle herkese "iş çakmak" esastır. :) Veritabanına gitmesi için JDBC kullanıyorsun. Bu görevlendirme, az önce bahsettiğim, J2EE standardıdır. Yoksa bu işi kendin de yapabilirsin. JDBC'ye, Beşiktaş - Sarıyer maçının skorunu getir diyorsun. O da getiriyor. Sen de bunu göstermek için bir sayfa ayarlıyorsun ve skoru gösteriyorsun.
Ama sayfayı neden sen yapıyorsun? Onu da başkasına itelemek lazım. :) Bu iş için de, yine J2EE  standatı gereği, JSP'yi görevlendiriyorsun. JSP'ye, JDBC'nin getirdiği bilgiyi alıp sayfalamasını söylüyorsun.
Peki ama bunların bilgiyi getirtmesiyle neden uğraşıyorsun? Bir istek geldiğinde, birine o isteği ver. Kim ne yapar, nasıl yapar ilgilenme. İşte EJB de tam da bunun için var.
Ancak bunların nerede olduğunu, adresini bilmen lazım ki JNDI da bu iş için emrinize amade. :)

Yani en baştan kısaca toparlamak gerekirse.. :) İstek size geldi. Bu işi yapacak EJB'nin adını biliyorsunuz, tanıyorsun ama adresini bilmiyorsunuz. JNDI'dan adresini alıyorsunuz(JNDI'ı katalog gibi düşünebilirsiniz). İşi EJB'ye verdik. O da ilgili JDBC adresi için, JNDI'ın kapısını çalar ve o da JDBC'ye işi verir.

Buraya kadar tamam isek, şu soruyu soralım: istek direkt gelebiliyor mu? Tabi ki hayır. JAAS isimli bir diğer bileşen de güvenlik işlerini yürütmekte. İstek authenticator'a gidiyor. Authenticator da token var mı diye elinde bakar. Yoksa login gibi bir güvenlik işlemine yönlendiriyor. Login olunca, isteğin artık bir token'ı oluyor. Authenticator'a tekrar gidiyor ve bu kez içeri giriyor ve isteği size iletebiliyor.

Daha çok kavram var ama kısaca mimarisinden de bahsedeyim. Clientı en üstte düşünecek olur isek, arada DMZ bölgesi vardır(kimseye ait olmayan bölgedir bu; production ortamında clienttan korumak içindir). Araya web server da konabilir. Bu ilk kısma web katmanı denmekte. Akabinde, application server'ların bulunduğu App Server katmanı var. En altta da backend katmanı(db'nin olduğu) bulunmakta. Yani güvenlik amacıyla 3 katmanlı bir mimari tasarlanmış oldu. Application server birden fazla olabilir. Ama bunun için web server'ın sayısını da arttırmanız lazım. Tabi web server sayısı artınca, client'ın nereye gideceğini bilebilmesi için Load Balancer'ı da client'ın peşine yerleştirmeniz gerekir. :) Bunlar uzar gider. :)

Domain, proxy gibi kavramlar da var ama onlara belki diğer yazımda girerim, şimdilik bu yeterli.

Görüşürüz birazdan.

And the oscar goes to Eboue..

Malumunuz geçenlerde Beşiktaşımız gs ile oynadı ve maçı maalesef berabere bitirdi. Bu maçta tribünleri tahrik etmesi beklenen ilk isim Ayhan idi ancak durum çok farklıydı. Başta Oscar'lık performansı ile Eboue olmak üzere, Melo ve Engin gibi oyuncular(futbol mu yoksa sinema mı karar sizin) sürekli taraftarlar ile etkileşim halindeydi. Koro filmindeki müdürün dediği gibi: aksiyon-reaksiyon. :)
Tribünlerle bu kadar oynayınca da, keşke atılmasaydı desek de, ufak tefek cisimler atıldı. Ancak her sahada görebildiğimiz bu olayı Eboue adlı tiyatral yetenek oldukça abarttı. Ve bunca zamandır her türlü sosyal projeye destek vermiş, öncülük etmiş ve ırkçılık karşısında adeta son barikat olmuş Büyük Beşiktaş Taraftarına çirkin ithamlarda bulunulmaya çalışılmıştır. Tüm bu beyhude çabaların maksatlı olduğunu düşünmekteyim. Bu taraftar, İspanya'daki tipitipler Etoo'yu ıslıklayıp, maymun sesleri çıkardığında, Etoo için yürüyüş yapmış ve pankartlarla tepkisini ortaya koymuştur. Ferdinand'lar, Amokachi'ler, Madida'lar ve Nouma'lar yine bu tribünlerin hep en sevdiği isimler olmuştur. 
Bu mesnetsiz iddialara karşı İnönü'deki ilk maçta tepki gösterilecektir. Ve çeşitli organizasyonların yanısıra ilginç pankartlar da tribünleri süsleyecek. Çok hoş ve hazır olan bir pankartı sizlerle paylaşmak istiyorum.
Oyuncularının tavrına ve taraflı medyanın tüm bu iğrenç haberlerine tepki göstermeyen galatasaray yönetimini de eshefle kınıyorum.

19 Kasım 2011 Cumartesi

We Don't Need No Education

Ülkemizdeki eğitim yapısını anlatması bakımından, bu resmi sizlerle de paylaşmak istiyorum.

Biraz Uyu (Cem Adrian)

Zakkum'un yeni albümünü geçenlerde dinledim ve çok ilgimi çekmedi açıkçası. Ama bir şarkısı var ki öyle böyle değil. Anason'dan bahsetmiyorum, Biraz Uyu adlı parçayı kastediyorum. :)
Cem Adrian düeti şarkıyı dipten zirveye taşımış diyebilirim. :) Nakaratı dışında Cem'in okduğu bir yer var ki, öyle böyle değil. Şarkıyı açın ve direkt Cem Adrian'ın kısmına gelin derim. :D
Bahsettiğim kısım aynen şöyle:

Sadece çocukken uyanıksındır bunu bil
Herşeyin farkındasındır, her sese dönüp bakarsın
Büyümek, uyumak ve unutmak gibidir
Ve büyüklerin dediği gibi;
Uyuman gerekir büyümen için
Sağır ediyorsa sessizlik ve kör ediyorsa aydınlık
Sadece sana görünen ve kimseyi inandıramadığın bir hayalet gibi
Yanıbaşında otuyorsa yalnızlık bu gece
Hep aynı saatte kapını çalan bir düşman gibi bekliyorsa seni
Ve canına kast edecek bir kılıç gibi sallanıyorsa tepende
Unutabilmek için hepsini
Biraz uyu..

WebP Resim Formatı

Teknolojiden haberdarız diye geçinsek de, aslında bihaber olduğum gerçeği ile bir kez daha karşı karşıya kalmış bulunmaktayım. :) 2010'da duyurulan webp resim formatını az önce öğrenmiş bulunmaktayım. Benim gibi cahil arkadaşlar vardır diye bu kaydı girmeye karar verdim. :)

Efendim, WebP formatı; png formatından %28, jpek formatından %25-34 oranında daha az yer kaplıyormuş. Ben ölçmedim, Google Amcam söyledi, bkz. http://code.google.com/intl/tr-TR/speed/webp/docs/webp_lossless_alpha_study.html#results
Hatta alfa kanalı falan filan ölçümleri var da, o işlerden hiç anlamam, ilgili olanlar bakmak isterse yine verdiğim bağlantıya gidebilirler.
Bu minik şey sayfanızın yükünü de azaltır, sitelerinizde kullanmanızı tavsiye ederim.

Nasıl çalıştığını da bilmiyorum, ilgilenen olursa:
WebP uses predictive coding to encode an image, the same methodology used by the VP8 video codec to compress keyframes in videos. Predictive coding uses the values in neighboring blocks of pixels to predict the values in a block, and then encodes only the difference (residual) between the actual values and the prediction.
The residuals typically contain many zero values, which can be compressed much more effectively. The residuals are then transformed, quantized and entropy-coded as usual. WebP also uses variable block sizes.
A WebP file consists of VP8 image data, and a container based on RIFF. The standalone libwebp library serves as a reference implementation for the WebP specification and is available at this git repository and as a tarball .

Tahmin edeceğiniz üzere Chrome ile entegre ama IE ve Opera ile de çalışabilmekte gerekli pluginleri kurduğunuzda. Hayır, olay o kadar ileri gitmiş ki, png ve jpeg'den webp'ye dönüştüren yazılım bile varmış. :) Buyrun bu da bağlantısı: http://code.google.com/intl/tr-TR/speed/webp/download.html

Hemen denemesini yaptım ben de. :) Google'da görsel armaya gidip, Gelişmiş Arama Seçeneklerine tıkladığınızda, şu resmi görmüş olmalısınız:

İyi akşamlar herkese.

12 Kasım 2011 Cumartesi

Facebook'ta Kız Olmak :)

Yukarıdaki resim çok şey anlatıyor. :) Gerek facebook'un ülkemizde ve çoğu yerde hangi amaca hizmet ettiği, gerekse de insanların aslında olaya değil de farklı yönlere konsantre olduğu. :):) Hayır o denli yalakalık ve yavşama var ki, kızlar da kendilerini Victoria Secret mankeni sanarlar. :D:D
Daha komik ve "laf çarpıtıcı" cümleler var aklımda ama resim herşeyi özetliyor. :):)

5 Kasım 2011 Cumartesi

Arena?

Bu akşam dağınık yazıyorum ama ne zamandır paylaşmak istediğim bir konu vardı. Meşhur "arena" kelimesi. Malum, her yere bu isim verilir oldu artık. Allianz Arena, Beşiktaş Milangaz Arena, TT Arena falan filan... Bilenleriniz vardır ancak bilmeyen arkadaşlar için açıklayayım: arena latince bir kelimedir ve "kumluk" anlamına gelir birebir çeviri ile.
Arena kelimesinin kullanımı ise eski dönemlerden gelir ve gladyatörlerin dövüştüğü amfitiyatroların zeminine dökülen, asıl amacı kan emmek olan kumlardır. Sadece insanların değil; hayvan dövüşlerinde de bu amaçla kullanılmakta idi. Yani Arena'da insanlar ve hayvanlar öldürülürdü. Biz ise her yaptığımız yere bu takıyı koyuyoruz. Tahminimce yabancı kelime kullanma arzusu ve açlığından, yabancı hayranlığından, iç ezikliğini yabancı kelimelerle örtüp statüsünü yüksek gösterebileceğini düşünme gafletinden ileri gelmekte. Ama çok ilginç bir bakış açısı tabi..

Madrid Kilometre Sıfır Taşı

Madrid'in kilometre sıfır taşı oluyor imiş, yukarıda görmüş olduğunuz eser. Şehirlerin merkezine konan, bir yere olan uzaklığın, o noktayı sıfır noktası baz alarak, hesaplandığı eserlerdir bunlar. Malumunuz kilometre taşı dendiğinde akla gelen ilk yer Roma'dır. Ünlü Milliarium Aureum'u duymuşsunuzdur mutlaka. Akabinde bu yapıdan esinlenerek İstanbul'a da kilometre taşı yapılıştı. Bu taş hala şehrimizde mevcut ancak bunu bilen pek kişi yokmuş öğrendiğim kadarıyla. :) İşin komik yanı sürekli görülebilecek bir yerde aslında. Sultanahmet'te. :) Yerebatan Sarnıcı'nın kapısının hemen sol tarafında kalıyor. Eskiden görkemli bir yapı imiş ama maalesef günümüze ufacık bir taş parçası kalmış. Yine de muhafaza edilmesi görüşündeyim.