Ankara JUG Mart 2013 Etkinliği

Ameleler,

Ankara JUG Mart etkinliğine rahatsızlığım sebebi ile katılamadım. Galiba, şimdiye kadarki en popüler etkinliği kaçırdım. Yine de, blog yazısı eksik olmasın diye, etkinliğe katılan arkadaşlarımdan görüşlerini yazmalarını rica ettim. İki kişiden bir ses çıkmadı, fakat bu çağrıma cevap veren Erkan Taşkın’a teşekkür ediyor ve yazısını paylaşıyorum.

Ankara JUG 2013 Mart ayı etkinliğinin bu güne kadar katıldığım Ankara JUG etkinlikleri içinde en çok keyif aldığım etkinlik olduğunu açıkça söyleyebilirim. Önceki etkinlikler de elbette ki güzeldi ama Amerika’da Silikon Vadisi’nde yıllarca çalışmış, sektörde oldukça tecrübeli Hale Hanım’ın eğlenceli sunumuyla Mart ayı etkinliği farklı bir boyut kazandı bence 🙂

Peki etkinlikte ne oldu da bu kadar beğendin, keyif aldın derseniz biraz açıklamaya çalışayım. Öncelikle Hale Hanım Silikon Vadisi’nde, yani teknoloji işlerinin en üst seviyeye ulaştığı bir yerde, 10-15 yıl çalışmış, sektörde oldukça tecrübeli bir kişi. Yaklaşık 1.5 saat süren sunumunun başında iş hayatının kısa bir özetini yapıp bulunduğu yerlerden bahsetti. Ardından son 2-3 yıldır görev yaptığı şirketin ve içinde yer aldığı projenin evrimleşme hikayesini anlatmaya başladı. Çalışmakta olduğu şirketin okullarda kullanılan, install edilen offline bir ürünleri varmış. Bu ürünü online, daha fazla insan tarafından kullanılabilir, raporlarına ulaşılabilir bir hale getirmeye çalışmışlar. Projeye başladıklarında önlerinde 1 yıl gibi kısa bir süre varmış, şirketlerindeki yönetim kadrosu ve pazarlama ekibi ile yaptıkları toplantı sonunda 1 yıllık sürede yapabilecekleri, katma değeri yüksek olacak parçaları seçip (bazı parçaları ileriki süreçte yapmak üzere ertelemişler) işe koyulmuşlar. 1 yıl içinde yaşadıkları zorlukları, kullandıları teknolojileri, minimum maliyetli testleri tamamlamak için şirketteki pazarlama ekibi dahil nasıl kullandıklarını motive olmak için yaptıkları küçük şeyleri çok hoş bir dille bize anlattı. Aklımda kalan bir örneği de paylaşayım; projelerinin kod adı Everest olarak belirlemişler. Projenin son aylarına doğru işler sıkışmaya başladığı zamanlarda, her gün masalarında farklı farklı notlar/eşyalar bulmaya başlamışlar. Bir gün bir Everest dağı biblosu ve altında bir not “zirveye az kaldı, dayanın”, başka bir gün everest resimli kupa… 🙂 Böyle birşey çok hoşuma gitti benim. mount-everest
Bu konuşmaların içinde elbetteki teknik konulara da girdik, hangi teknolojileri kullandılar, süreç yönetiminde hangi araçlar kullanıldı, Agile, Scrum konularından da konuşuldu.
Güzel sunumu için Hale Hanım’a ve bu etkinliği gerçekleştiren Ankara JUG ekibine de teşekkür ediyorum 🙂
Diğer etkinliklerden sonra görüşmek üzere.
Reklamlar

Java Kural Dışı Durumlarının Açıklamaları

Ameleler, Java Kullananlar, Romalılar,

Java dilinde çok karşılaşılan kural dışı durumlar (exception) için güzel, eğlenceli açıklamalar hazırlamış birisi ve paylaşmış. Bağlantıyı aşağıda paylaşacağım.

Java Logo

Buraya, beğendiğim birkaç tanesini yazıyorum. Tabi bu arkadaş İngilizce hazırlamış, Türkçe’ye çevirmedim.

IllegalMonitorStateException
Please turn your computer screen back on.
 
InstantiationException
Not everything can happen instantly. Please be more patient.
 
MissingResourceException
You are too poor to be using Java. Switch to a cheaper language (such as Whitespace, Shakespeare, Cow, Spaghetti or C#).
 
HeadlessException
Java thinks you are too stupid to be a programmer.
 
IntrospectionException
You are too introverted. Be more extroverted. Stop being such a nerd and go out and meet some people!
 
BindException
Java programming and bondage don’t mix.

Geri kalanını da siz buradan okuyun:

http://www.dzone.com/links/r/explanations_to_common_java_exceptions.html

Ankara JUG – Şubat Etkinliği Ardından

Ameleler,

Yine geç kalmış bir Ankara JUG yazısı daha. 28 Şubat’ta yapılan Ankara JUG toplantısı sonrasında, hemen o haftasonu yazmaya niyetlendim, ama etkinliğin üzerinden 10 küsur gün geçmeden yazı yazamama gibi bir durum oluştu bende.

Neyse, konumuza gelelim.

Bildiğiniz gibi, Kasım 2012’den beri, Ankara JUG düzenli aylık etkinlikler yapıyor. Şubat 2013 etkinliği de, öncekiler gibi bir Perşembe günü, Bilkent Cyberpark’da yapıldı. Konuşmacı Mert Çalışkan, bizlere yazılım testi ile ilgili çok güzel, biraz da yoğunlaştırılmış bir sunum yaptı. Akşam iş çıkışı biraz dikkat toplamakta zorlansak da aradan birşeyler kapabildik.

Test konusunda, Türkiye’deki yazılım şirketlerininin çok eksikliği olduğunu düşünüyorum. Belirli kurumsal ve özellikle çok yüksek bütçeli projeler dışında, otomatikleştirilmiş test süreçleri yazılım geliştirme süreçlerine çok fazla entegre edilmiyor. Genelde, projeler “deadline” adı verilen o belirli gün ve haftalara yetiştirlmeye çalışıldığı için, çıkacak yeni bir özellik eklemeyen kodlardan olan birim testler için hiç vakit ayrılmıyor, ayrıldıysa bile ilk taciz edilen zaman birim test zamanı oluyor. Halbuki, sunumda Mert Çalışkan’ın belirttiği gibi, kodumuzu denemek için gerekli gereksiz yerlere “System.out.print()” yazmak yerine o kodu test eden bir birim test yazsak, kendimizi bir sonraki denemeye de hazırlamış ve zaman kazanmış oluruz. Tabi bu biraz da alışkanlıktan kaynaklanıyor, birim test yazarak ürün geliştirmeye alışmamış bünyelerde test yazmak biraz gaz yapabiliyor.

Birim test dışında entegrasyon testleri de sunumun konusuydu. Çok fazla detaya girmeyeceğim, etkinlikteki sunuma buradan ulaşabilirsiniz.

Mart etkinliği de duyuruldu, bekleriz.

Ubuntu ve Çift Ekran Kartı

Ameleler,

Günümüz dizüstü bilgisayarlarında, güç tasarrufu amacı ile çift ekran kartı kullanımı oldukça yaygın. Mesela, benim kullandığım Dell L502X bilgisayarda, yerleşik Intel ekran kartının yanı sıra, harici bir NVidia kart da mevcut. Windows ortamında, sürücü ve/veya Windows desteği sayesinde hiç bir ek ayar yapmadan bu iki ekran kartı birlikte kullanılabiliyor. Günlük işler için yerleşik ekran kartı kullanılırken, oyun ya da video gibi yoğun grafik gücü gerektiren işlemlerde otomatik olarak harici ekran kartı seçiliyor.

Linux tarafında ise, ekran kartı geliştiricileri sağolsunlar, düzgün sürücü çıkaramadıkları için bu özelliği doğrudan kullanma şansımız olmuyor. Camiadaki yetenekli arkadaşlar ise, NVidia grafik kartları için, “Project Bumblebee” adında bir proje geliştirerek, çift ekran kartı kullanımına bir çözüm üretmişler. Kurulumu ve kullanımı çok basit olan bu proje, Linux üzerinde oyun oynamayı olanaklı hale getiriyor. Hele ki, Steam’in Linux sürümünün çıktığı bu günlerde, ekran kartı kullanımı önemli olacaktır.

project-bumblebee

Bumblebee sürücülerini kurmak çok basit. Öncelikle, Bumblebee kaynağını apt uygulamamıza eklememiz gerekiyor:

$> sudo add-apt-repository ppa:bumblebee/stable

Daha sonra, güncel NVidia sürücülerini yükleyebilmek için, aşağıdaki kaynağı da tanıtmamız lazım:

$> sudo add-apt-repository ppa:ubuntu-x-swat/x-updates

Bu kaynakları ekledikten sonra, paket listesini güncellememiz gerekli:

$> sudo apt-get update

Güncellemeden sonra, aşağıdaki komut ile bumblebee ve ilgili paketleri yükleyebiliriz:

$> sudo apt-get install bumblebee bumblebee-nvidia linux-headers-generic

Bu yükleme işlemleri bittikten sonra, Linux’u yeniden başlatmamız iyi olacaktır.

Yükleme tamamlanınca, maalesef çalıştırdığımız uygulamalarda otomatik olarak grafik kartı seçimi yapılamıyor. Bunun için, çalıştıracağımız uygulamayı, “optirun” komutu ile çalıştırmamız gerekli. Mesela, grafik sürücülerini test için kullanılan glxgears uygulamasını (sudo apt-get install mesa-utils komutu ile kurulabilir) normalde şu şekilde çalıştırırız ve ortalama fps çıktısı şu şekilde olur:

$> glxgears
299 frames in 5.0 seconds = 59.705 FPS
299 frames in 5.0 seconds = 59.624 FPS
299 frames in 5.0 seconds = 59.625 FPS
299 frames in 5.0 seconds = 59.642 FPS

Bu uygulamayı, güçlü ekran kartı ile çalıştırmak içinse optirun komutunu kullanmamız gerekli. fps sonuçları arasındaki fark kendisini belli ediyor:

$> optirun glxgears
3789 frames in 5.0 seconds = 757.724 FPS
3469 frames in 5.0 seconds = 693.529 FPS
3738 frames in 5.0 seconds = 747.387 FPS
3473 frames in 5.0 seconds = 694.523 FPS

Kısayol ile kullandığımız uygulamalarda ise, kısayolu modifiye ederek çalıştırılan komutun başına “optirun” ekleyerek güçlü grafik kartı kullanımını sağlayabiliriz:

optirun steam

Hadi gidin şimdi Linux üzerinde biraz oyun oynayın bakalım.

Kaynak: https://wiki.ubuntu.com/Bumblebee

Facebook ve Google+ Sayfaları Açıldı

Ameleler,

Sosyal medya üzerindeki Twitter varlığı üzerine Facebook ve Google+ sayfalarını da ekledim. Artık bu iki platform üzerinden de takip edebilirsiniz yazdıklarımı. Takip edin, yani takip ederseniz sevinirim. Hatta paylaşırsanız sizi öpebilirim bile 🙂

Facebook: https://www.facebook.com/YazilimAmelesi

Google+: https://plus.google.com/110060776650369997645

Şimdilik şu meşhur resmi logo olarak kullanıyorum, sıkılırsam ya da başım belaya girecek gibi olursa değiştireceğim:

Code HTML for Food

Code HTML for Food

Önerilerinize de açığım tabi logo için..

Kolay gele..

Düzenleme: Yeni logo hazırladım, yukarıdaki resim artık emekli oldu.

Ankara JUG, Ocak 2013 ve Sonrası

Ameleler,

Her ay yazdığım gibi, bu ay da Ankara JUG etkinliğinden sonra etkinlik ile ilgili gayrı resmi yazımı yazayım dedim. Biraz geciktim, çünkü kafamda tam tasarlayamadım yazacaklarımı.

Ocak 2013 etkinliğinin konusu HTML 5 idi. Murat Can Alpay’ın yaptığı sunum ile HTML 5 teknolojilerinin içine daldık. Kendi açımdan HTML 5, her zaman orada bir yerde duran, var olduğunu bildiğim fakat hiç kullanmadığım bir teknoloji. Hangi derde çare olduğunu, nerelerde seçilmesi gerektiğini biliyorum ama bir canvas tag’i açmışlığım yoktur açıkçası. Ankara JUG sayesinde HTML 5’in tarihçesinden detaylarına kadar girdik. Arada, sorulan soruyu yanıtlayarak 3 aydır gözümü diktiğim Oracle Academy mug’ını da kazandım 🙂 İşin ironik kısmı, hiç sevmememe rağmen Microsoft sayesinde bu mug’ı kazanmış olmam..

HTML5

Asıl anlatacağım, etkinlik ve sunum değil, etkinlik sonrası buluşma, ve aslında Ankara JUG’un kendisi. Ankara JUG kurucuları ve benim gibi bir kaç daha katılımcı ile, güzel bir ortamda muhabbet ettik. “Optimus Prime” sağolsun, ilk içkilerimizi ısmarladı. Ankara JUG’un kuruluş hikayesini, motivasyonunu ve hedeflerini birinci ağızlardan öğrenme şansı buldum. Bu şekilde başlayan organizasyonların en büyük eksikliği tanınma ve bilinirlik. Sosyal medya üzerinden elimden geldiğince desteklemeye çalışıyorum. Aynı şekilde, diğer katılanların da desteklemesi gerektiğini düşünüyorum, yapılacak şey de aslında çok basit. Ankara JUG etkinliğine katıldığınızı bir şekilde sosyal medya üzerinden paylaşın yeterli. Takipçilerinizin, arkadaşlarınızın arasında Ankara JUG adı bilinmeye başladıktan sonra, yapılanları merak edenler olacak, bu da etkinliğe olan ilgiyi artıracaktır. Ben elimden geldiğince gönüllü çığırtkanlık yapıyorum, Twitter üzerinden, bu blogdan birşeyler karalamaya çalışıyorum.

Peki neden bu organizasyona ilgiyi artırmaya çalışıyoruz? Büyük JUG’lar, çok katılımcılı, bir kaç gün süren etkinlikler gerçekleştirebiliyorlar. Bu, hem biraz maddi kaynağın artıyor olması (sponsorlar vs.) hem de katılımcıların kalitesinin ve çeşitliliğinin artması sebebiyle ilgi alanlarının artmasından kaynaklanıyor. Bir başka sebep de, JUG’ların, bazı JSR (Java Specification Request) üretimine giriyor ve bunları Java sürümlerine ekleyebiliyor olmaları. Yıllardır kullandığımız platforma destek olabilme fikri bile heyecan verici.

Şubat etkinliği için http://ankarajug.blogspot.com adresini takip edin. Bu organizasyonu beraber büyütelim, Ankara JUG olarak bir adımız olsun.