Archive for the ‘JAVA’ Category

ATLASSIAN GİBİ OLABİLMEK… November 23rd, 2008

İbrahim DEMİR

Merhaba;

Uzun bir aranın ardından tekrar blog yazmaya çalışıyorum. Zaten cümleleri kurmakta yaşadığım zorluk ne kadar uzun zamandır blog yazmadığımı yüzüme vuruyor. Bakalım becerebilecke miyim?

Geçtiğimz hafta izlediğim ve çok beğendiğim bir video linkini paylaşmak istiyorum. “Atlassian Core Values” . Videoda Atlassian firmasının ne şekilde çalıştığını ve hangi değerleri baz aldıklarını görebilirsiniz.

Genelde bu gibi videoları izleyenlerde 2 tür fikir belirir:

1-Yok böyle birşey. Sırf video çekiliyor diye böyle bir ortam yapıp dümenden “Çok Mutlu, Çok Dürüst ve Arkadaş Canlısı” bir ortam oluşturuyorlar.

2- Vay beee. Türkiye ‘de ne mümkün. Gelin de bizim şirketin haline bakın. Keşke olsa da yesek…

(Sizde bunların dışında bir düşünce belirdiyse yazıya yorum olarak ekleyebilirsiniz.)

Ama şunu söyleyebilirim ki ufak bir Youtube ve Google araması ile Atlassian firması hakkında pek çok eğlenceli videoya ulaşabilirsiniz.

Atlassian ürünlerini yoğun olarak iş hayatımda kullanıyorum. Her ofis çalışanı gibi “Milliyet.com.tr” adresini açtıktan sonra şirketimize ait JIRA ve CONFLUENCE sayfalarını açıyorum. Bu ürünleri kullanmayı alışkanlık haline getirirseniz zaten vazgeçme gibi bir lüksünüz kalmıyor. Tabi alışkanlık haline getirmek , getirtmek biraz aman alıyor. (Bknz: Yeni Müşteriler) .

Ürünlerin başarısı zaten ortada. Dünyada kullanan firmalara bakarsanız, yada Open-Source bir ürünle ilgili bir hataya denk geldiyseniz er geç aramanızda bir Jira Issue sayfasına düşersiniz. Ve zaman içerisinde ürünlere kazandırılan özellikleri de göz önüne alırsak firma çok iyi bir şekilde ilerliyor diyebiliriz.

Bu başarının arkasında doğru zihniyet, iyi niyet ve düzgün çalışma koşulları olduğuna innaıyorum ben. Çalıştığınız ortamın fiziksel koşulları, aydınlatması, havalandırması, sıcaklığı, gürültü seviyesi yazılım gibi yüksek konstrasyon gerektiren işlerde çok önemli. Bunun yanına ortamın psikolojik rahatlığı da eklemek gerekir. Çalışana güvenmek, sorunmluluk vermek, tek hayatının işi olmadığını kabullenmek, gaza getirip iş yüklemekle motive etmek arasındaki çizgiyi bilmek bu başarının kriterlerinden olsa gerek.

Tabi video içerisinde geçen DFTC (Value 3) kavramı var ki başlı başına bir blog yazısı olur. İşimizi böyle yapabilecek olgunluğa ne zaman sahip oluruz bilemiyorum. Ama üstlerimizin, yöneticilerimizin yaklaşımının bizi büyük ölçüde etkisi altına aldığıortada. Yani üst taraf müşteri memnuniyetini (görsel değil gerçek memnuniyet) ne akdar önemserse alt taraf da işini o kadar iyi yapma sorumluluğunu üzerinde hisseder. Ama biz de genelde işporta usulü ürünü satana kadar “Beyim,ağam,paşam” sonra da çantayı al ve kaç yaklaşımı hakim.. (Aksini görenler güzel örnekler verip içimizi açabilirler.)

Belki bizler de uygulama geliştiricilerimize bu imkanları sağlarsak ve yönetim tarafında daha olgun bir zihniyetle çalışırsak bir gün Atlassian gibi firmalar çıkarabiliriz..

Mutlu pazarlar…

Continue reading...


 

BİZE DE LAZIM… June 13th, 2008

İbrahim DEMİR

Bu sektörde olup da herhangi bir e-posta grubuna üye olmayanınız yoktur sanırım. Nice umutlarla üye olup sonra da mesajlar arasında kaybolduğum e-posta gruplarının haddi hesabı yok. Hatta bazı gruplarda moderatörlük yaptığım için bu gibi ortamların amaçları dışında kullanımına pek çok kez şahit oldum.

Sorulan ciddi sorular cevap bulamazken , kişilere yönelik atışmalar günlerce durmak bilmiyor. Yada ortaya atılan saçma sapan bir kod bloğu insaların günlerine mal olabiliyor. Hoş ortaya kod bloğu atılmasında sorun yok ama verilen cevaplar bir süre sonra asıl sorunun unutulduğu yönünde bir izlenim bırakıyor.

Tüm bunlara rağmen takip ettiğim ve TDD (Test Driven Development) hakkında çok güzel şeyler öğrendiğim JUnit e-posta grubu var. Geçtiğimiz günlerde belirli aralıklarla yayınlanan JUNit Etiquette yine yayınlandı. Bakın bir e-posta grubunda olmaması gerekenleri ne şekilde ifade etmişler:


Dear members and readers of the JUnit mailing list,


Around here, we love testing. Not only do we love testing, we love to
discuss any and all aspects of testing, often with enthusiasm and
passion. This is good, This is the reason that this mailing list
exists. On top of all this, we are very keen to help others understand
this strange affliction we have; medical name “testus infectus”,
better known as being test infected. We love to answer questions and
help those new to the joy move further down the road towards test
enlightenment. In the classic spirit of hospitality, our list is your
list, our test cases are your test cases. Please make yourself at home
and enjoy the journey. :-)

That said, there are some things that we don’t love, so sit tight and listen up.

We don’t love people who haven’t, or won’t, read the JUnit Frequently
Asked Questions (FAQ) document, lovingly maintained by Mike Clark or
the “Smart Questions” document written and maintained by Eric S.
Raymond. Here are the links, go forth and read …

http://junit.sourceforge.net/doc/faq/faq.htm

http://www.catb.org/~esr/faqs/smart-questions.html

We don’t love people who think that we’ll do their homework
assignments for them. Back when I was a lad, we didn’t have the
Internet and we had to do our own homework assignments without the aid
of all the knowledge and information that you have available to you
today. (And yes, now that you ask, I did walk uphill both ways to
school through the snow.)

We don’t love people who are incapable of using a search engine, but
are yet somehow capable of signing up onto this mailing list so that
they can ask questions that ten seconds of searching would reveal the
answer to. Learn how to use a search engine. Around here, Google seems
quite popular. Here’s a link; learn to love it and use it.

http://www.google.com/

We don’t love job postings. We do love having jobs (or at least, we
like the pay) and we do like to look at job postings, but we like to
look at them in more logical places like job websites. So, please
don’t be upset when a moderator deletes your carefully worded prose
describing yet another testing job.

We don’t love thread hijacking. That’s when you start a different
subject by replying to a previous conversation and not even changing
the subject line. We like to discuss a variety of subjects, so please
feel free to be inspired to ask side-questions during ongoing
conversations. Just do so by starting a fresh thread with a unique
subject line.

Lastly, we don’t love people who whine, moan and generally sound like
petulant children after they’ve been told that they have violated one
of the “laws of the land” around here. It’s a big old Internet; feel
free to take your questions and/or tantrums somewhere else if you
don’t like the way we do things around here.


Görüldüğü üzere e-posta gruplarının amaçlarının dışında kullanılması bazı kişileri tatmin ederken diğer üyeleri madur edebiliyor. (Hatta şu sıralar etrafımda X grubundaki bozuk kodun düzeltilmesi konusunda gereksiz yere zaman kaybedildiği şeklinde yorumlar duyuyorum.)

Özetle bizdeki e-posta grupları için de bu tür bir uyarı yazısı lazım… Tabi okuyan ve uyan olursa…

(Bloguma gönderdiğim postlar yüzünden hayrete düşen eşin dostun hayretlerini ve “Aaa İbrahim hangi dağda kurt öldü ” şeklindeki şaşkınlık ifadelerini gizlemelerini rica ediyorum :) )

Continue reading...


 

KONFİGÜRASYON ve DEĞİŞİKLİK YÖNETİMİ YAHOO GRUBU February 25th, 2008

İbrahim DEMİR

conf.jpgBu yazı ile sizleri üyesi olduğum Konfigürasyon ve Değişiklik Yönetimi Yahoo Grubu ‘ndan haberdar etmek istedim.

Özellikle iş hayatının içine girince gördüm ki kod yazmanın yanı sıra bu kodları çekip çevirmek ve yüzlerce uygulama geliştiricinin havuza eklediği kodlardan ortaya bir ürün çıkarmak ayrı bir yetenek. Hatta işi o boyuta götürmeden yazdığımız ufacık kodları kendi makinamızda çekip çevirmek bile bir sanat oldu. (2 kişi proje yaparken aynı proje dizinini network üzerinde paylaştığım günler geldi aklıma :) ) (more…)

Continue reading...


 

ŞİRKETİÇİ GÖREV DEĞİŞİKLİĞİ February 25th, 2008

İbrahim DEMİR

arrow-circle.JPG 11 Haziran 2007 tarihinde Kurumsal Krediler ekibinde başladığım CyberSoft macerama, tam 8 ay sonra 11 Şubat 2008 ‘de Altyapı Ekibi ‘ne geçiş yaparak devam ediyorum. Yaklaşık iki haftadır blogumu sahipsiz bırakmamın nedenlerinden biri de bu görev değişikliği oldu.

8 ay boyunca bankacılık ekranlarıyla uğraştıktan sonra artık daha çekirdek işlerle uğraşma vakti gelmişti. Bundan sonra kullandığımız framework ‘un (Aurora) geliştirilmesi ve konfigurasyon yönetimi konularında çalışıyor olacağım. Ama bu işlerle tam olak uğraşmaya başlamadan evvel altyapıda bitirilmeyi bekleyen UBS (Uyarı Bildirim Sistemi) projesine de destek olmam gerekiyor. Sanırım UBS beni Nisan ayına kadar daha fazla meşgul edecek.

Bu görev değişikliğiyle bilikte J2EE dünyasında da ufak ufak adım atmak beni çok mutlu ediyor. İlk hafta iBatis-Websphere entegrasyonundaki sorunla uğraşırken pek çok şey öğrenme ve deneme fırsatım oldu. Umarım bundan sonraki zamanlarda da bir yandan öğrenir bir yandan da öğrendiklerimi uygulama fırsatı bulurum. Hatta bu öğrendiklerimi blogumda da paylaşabilirsem hem benim adıma hem de sizler adına ortaya yararlı birşeyler çıkacağı inancındayım.

Görev değişikliğim konusunda bana destek olan herkese, eski çalışma arkadaşlarıma (tüm Kurumsal Krediler ekibine) ve bana alışmak durumunda kalan :) yeni ekip arkadaşlarıma teşekkürlerimi sunuyorum..

Continue reading...


 

SQL SERVER JDBC DRIVER 1.2 CTP September 26th, 2007

İbrahim DEMİR

Geçtiğimiz ay Microsoft SQL Server için Type 4 özelliklerini sağlayan yeni JDBC sürücüsünün 1.2 sürümünü yayınladı. Yayınlanan bu sürücü hem SQL Server 2005 hem de 2000 sürümüyle uyumlu olarak çalışabilen bu yeni sürücü JDBC 3.0 spesifikasyonunyla tamamen uyumlu olarak hazırlanmış.

Sürücünün Type 4 özelliklerini sağlaması performans konusunda ciddi avantajlar getirecektir. Pure Java Driver yada Thin Driver denilen bu tipteki sürücüler istemcilerden (yazdığımız Java uygulamalarından) gelen JDBC çağrılarını DBMS ‘in anlayacağı şekilde network çağrılarına çevirerek veritabanına doğrudan erişim sağlar. Arada database middleware olmadığı için de diğer sürücülere göre daha hızlı çalışır. (Ne kadar az katman o kadar çok performans) Özellikle intranet uygulamalarında bu tip bir sürücüyü tercih etmek avantajlı olacaktır diye düşünüyorum.(Tabi ne kadar az katman o kadar az kontrol ?? Ondan ötürü kullanım öncesi iyi bir analiz şart.)

Bu sürücü ile uygulama geliştirmek için JDK 1.4 veya daha ileri bir sürümünün makinanızda kurulu olması gerekiyor. Yapılan açıklamalara göre BEA WebLogic, IBM WebSphere, JBoss, and SunBu gibi uygulama sunucuları ile sürücünün sorunsuzca çalıştığı görülmüş. Ama her Microsoft ürününe olduğu gibi bu sürücüye de şüpheyle yaklaşıp kendim de denedim ve ben de SQL Server 2005 Enterprise Edition üzerinde önceden yazdığım ufak uygulamayı sorunsuzca çalıştırdım . Fakat bu herşeyin yolunda olduğu anlamına gelmiyor elbette. Bu adresteki gibi stored proc. içerisinde geçici tablo kullandıklarında sorun yaşayanlar da var. (Final sürümüne ulaşmadan kritik uygulamalarda Mcirosoft ürünlerini kullanmayı Microsoft çalışanları da tavsiye etmiyorlar.)

Bu ücretsiz sürücü ile sağlanan Adaptive Buffering ve SSL Encription gibi özelliklerden uygulamalarınızda faydalanmak isterseniz mutlaka bir test sürüşü yapmalısınız. Adaptive Buffering özelliği sayesinde büyük boyutlu verilerle yaşadığınız performans darboğazlarını aşabilme şansınız var.

Aslında JDBC Type 4 sürücülere çoğumuz büyük umutlar bağlamıştık ama nedense DBMS üreticileri bu konuda beklenen çevikliği gösteremediler. Fakat Microsoft herkesten hızlı davranıp Type 4 sürücüsünü herkesten önce çıkarmıştı. Hatta JDBC-TR mail grubunda bunun önemli bir şirket stratejisi olduğunu daha doğru güzel bir Microsoft Uyanıklığı örneği olduğunu konuşmuştuk.

Yazının sonuna Type 4 sürücülerle ilgili iki tane kısa ve öz yazıyı ekledim. Özellikle de devx.com ‘daki yazıya göz atmanız sürücü seçimi sırasında doğru kararı almanızda faydalı olacaktır.

Şimdilik benden bu kadar. Yaşadığım bir dolu aksilikten sonra blogumu güncellemeye kaldığım yerden devam ediyorum. İlerleyen zamanlarda özellikle de üzerinde çalıştığım Test Driven Development ve Unit Testing konularında keyifli paylaşımlarda bulunmaya çalışacağım.

Types of JDBC technology drivers
JDBC Drivers: How Do You Know What You Need?
Microsoft SQL Server 2005 JDBC Driver 1.2 Community Technology Preview August 2007

Continue reading...