Akıllı Telefon/Fotoğraf Makinesi Satın Almadan Önce…

Bugünlerde ben de dahil bilgisayara ve tüketici elektroniğine ilgisi olan çoğu kişinin aklında akıllı telefon almak var. Hele ki eğer bu kişinin bir de fotoğraf çekmeye ilgisi varsa, DSLR ya da kaliteli bir kompakt fotoğraf makinesi akmak hep aklının bir köşesindedir. Ancak gün gelip de buna imkan bulduğumuzda onlarca marka, yüzlerce model arasında boğulmaya adeta mahkumuzdur.

Karar vermek çok zordur, çünkü satın almak istediğimiz ürün hiçte ucuz değildir. İşte tam bu noktada bize gereken şey doğru karar vermemizi sağlayacak verileri bize sunan güvenilir bir kaynak…

Size, geçenlerde fotoğraf makinelerini araştırırken rastladığım bir (aslında üç) siteden bahsetmek istiyorum:

http://snapsort.com/

Siteye girdiğinizde sol-üst tarafta iki menü seçeneği göreceksiniz: recommend ve compareContinue reading

Nedir? : Hibernate

Hibernate, Java için yazılmış bir ORM (Object/Relational Mapping) aracıdır.

Akla hemen şu soru geliyor: Peki ORM nedir? ORM, nesne (object) yönelimli dillerdeki nesnelerin, ilişkisel (relational) veritabanlarındaki kayıtlarla eşlenmesi (mapping) işlemidir.

Ne Gereği Var?

Hibernate gibi ORM araçlarıyla, bir nesneyi veritabanına kaydetmek, kayıtları güncellemek ve sorgulama yapmak geleneksel yöntemlere göre çok kolaydır. Ancak, ORM araçlarının en önemli faydası, kod yazımını kısaltmaktan ve kolaylaştırmaktan öte, yazılım bakımını kolaylaştırmasıdır. Bakımın en maliyetli süreç olduğu kurumsal uygulamalarda, kodun büyük bölümü veritabanı erişimine yöneliktir. Veritabanındaki bir kolonunun tipinin değişmesi, yeni bir kolon eklenmesi gibi değişiklikler, veritabanı ile ilişkili kodların baştan aşağıya gözden geçirilmesini gerektirir. Hibernate yani ORM kullanılan yazılımlarda ise, böyle bir değişiklik meydana geldiğinde nesnelerle tabloların birbirine nasıl eşlendiğinin gözden geçirilmesi -çoğu zaman- yeterlidir. Continue reading

Nedir? : Java

Bazıları için farklı anlamlar ifade etse de, bir yazılım geliştirici için Java; nesne yönelimli, mimariden bağımsız ve yorumlanan bir programlama dildir.

Şimdi de taşı kaldıralım ve bakalım altından neler çıkacak:

Java’nın Kısa Tarihçesi

Java dilinin ilk versiyonu Sun Microsystems bünyesinde 1991 yılanda başlatılan bir ARGE projesi sonucunda geliştirilmiştir. Bu ilk versiyon “Oak“ olarak adlandırıldı ve 1995’te adı “Java” olarak değiştirilene kadar da bu adla anıldı. Java, 1.0 versiyonun duyurulmasının ardından beraberinde bir çok yenilik getirerek hızla gelişmeye devam etti. Java’nın gelişmesindeki en büyük etki ise kuşkusuz Web’in o yıllardaki hızlı yükselişidir. Eğer Web hızla gelişmeseydi Java elektronik cihazları programlamada kullanılan bir dil olarak kalabilirdi. Diğer taraftan, elektronik cihazların programlamasında karşılaşılan taşınabilirlik problemlerinin Web’de de olduğunu gören Java geliştiricileri onu bu yönde geliştirmeye devam etmişlerdir.

Java 1.0’ın duyurulmasından kısa bir süre sonra Java 1.1 oluşturulmuştu bile. Bu versiyonla Java’ya pek çok yeni özellik eklendi, ve bunun yanında bazıları ise çıkarıldı.

Java’nın dönüm noktası ise 1.2 versiyonudur. Pek çok konuda yenilikler getiren ve dili büyük ölçüde geliştiren bu versiyondan sonra Sun, Java ürününü J2SE (Java 2 Platform Standard Edition) olarak adlandırdı ve sonraki versiyonlar buna göre adlandırılmaya başlandı. Java’nı gelişimi bundan sonra da zamanının ve zamanın ötesinin gereklerine uygun şekilde sürmeye devam etti.

Java’nın bir sonraki büyük versiyonu Java 1.5 yani J2SE 5 oldu. Jenerikler, otomatik kutulama, annotations(notlar), enumaration(numaralandırma), for-each sitili for döngüleri, değişken uzunluklu argümanlar (varargs) gibi büyük çaplı yenilikler getiren bu versiyon dilin kapsamını ve gücünü büyük ölçüde genişletmiştir.

Sonraki versiyon ise günümüzde kullanılan 1.6 versiyonu olmuştur. Bu versiyonla birlikte Sun, adlandırma politikasını yeniden değiştirerek 1.6 versiyonunu Java SE 6 olarak adlandırmıştır. Java SE 6 dile büyük yenilikler getirmese de, J2SE 5’in yeniliklerini daha da geliştirmiş, yeni paketler ve var olan paketlere yeni sınıflar, sınıfların çoğuna da yeni metotlar eklemiştir. Continue reading

E-Atık: İyi, Kötü, Çirkin

Buzdolabı, bulaşık makinesi, çamaşır makinesi, televizyon, uydu alıcısı, ev telefonu, birkaç cep telefonu, uzatma kabloları, piller, bilgisayar ve evimizdeki, aklıma gelmeyen bin bir elektronik aletler. Hepside hayatımızı kolaylaştırmak için varlar ve maalesef çoğunun ömrü 2 ila 10 yıl arasında değişiyor. Onlarsız ne yapardık bilemiyoruz. Mesela cep telefonlarını düşünecek olursak, çoğumuzun aklından şu soru geçmiştir: “Biz cep telefonu yokken nasıl yaşıyorduk ya?”. Bu komik soru, aslında hiçte komik olmayan elektronik alet bağımlılığımızı gösteriyor bize. Ve bize, asıl bağlı, asıl sadık olmamız gereken doğayı hiçe saydırtıyor.

Öyleyse sizi şöyle düşünmeye davet ediyorum: Önce, bu elektronik aletlerin hiçbirinin var olmadığı dönemlerde nasıl yaşardık onu hayal edin. (Açıkçası ben işin içinden çıkamıyorum.) Sonrada, bu elektronik aletlerin hepsine, hatta daha iyilerine, daha pahalılarına sahip olduğunuzu düşünün; fakat mesela dünya da içme suyu kıtlığı yaşanıyor olsun. Her ne kadar absürt görünse de, elektronik alet bağımlılığından daha az tehlikeli olmayan ve gün geçtikçe boyutları büyüyen e-atık(elektronik atık) tehlikesine rağmen, dünyamızı kendi ellerimizle, kendi konforumuz için, kendi tembelliğimiz yüzünden yaşanılmaz bir yer haline yavaş yavaş getiriyoruz. Continue reading

20. İş Günü

Herhangi bir çalışan için, yeni bir ayın habercisi, hesabına yatan maaşın sevinci olabilen 20. iş günü, bir stajyer için, üzücü bir şekilde, son iş günüdür. Geriye baktığında bir ayın geçmiş olduğuna inanamaz insan. Ama geçen bir ayda yaşadığım ve öğrendiğim pek çok şey hatırlıyorum, ve uzun zamanda hatırlayacağım. Ama pek çok şey de umurumda olmayacak, mesela günde ortalama beş saat süren kıtalar arası yolculuklarım. O yorgunlukları hatırlamayacağım bile…

Evet, bugün 20. iş günüm. Fakat resmi olarak staj sürem bitmiş olsa da, projemizin(Beyin2) henüz yeterince olgunlaşmamasından dolayı önümüzdeki hafta bir iki gün daha Özgürlükİçin ofisinde olacağız. Projeye sıfırıncı adımdan, yani django öğrenmeye başlayarak giriştiğimiz için yirmi güne sığdıramadık ve neticede Qt üzerine yoğunlaşma planlarım biraz ötelendi. Yinede iyi bir iş çıkardığımızı düşünüyorum. Beyin2′nin ayrıntılarından daha sonra ayrıca bahsedeceğim. Görüşmek üzere…

Özgür Yazılım?

Pardus Geliştirici Listesi’ndeki ‘Jira’ tartışması beni, özgür yazılım ve özgür yazılım felsefesi üzerine düşünmeye ve bilgi edinmeye itti:

Özgür Yazılım Vakfı’na göre özgür yazılım kavramı, kullanıcıların, yazılımı çalıştırma, kopyalama, dağıtma, üzerinde çalışma, değiştirme ve geliştirme özgürlükleriyle ilgili bir kavramdır. “Özgür yazılım” kavramı, yazılım kullanıcıları dört olmazsa olmaz özgürlüğe sahiplerdir demektir:

  1. Her türlü amaç için programı çalıştırma özgürlüğü (özgürlük 0).
  2. Programın nasıl çalıştığını inceleme ve kendi gereksinimleri doğrultusunda değiştirme özgürlüğü (özgürlük 1). Program kaynak koduna erişim bunun için bir ön şarttır.
  3. Yeniden dağıtma ve toplumla paylaşma özgürlüğü (özgürlük 2).
  4. Programı geliştirme ve gelişmiş haliyle topluma dağıtma özgürlüğü (özgürlük 3). Böylece yazılım bütün toplum yararına geliştirilmiş olur. Program kaynak koduna erişim bunun için de bir ön şarttır.

Özgür yazılımın dört olmazsa olmaz özgürlüğünden anlıyorum ki, özgür yazılım kullanım haklarıyla ilgili bir kavram ve yazılımın nasıl geliştirileceğiyle ilgili bir kısıtlama getirmiyor.

Yoksa yanlış mı anlamışım?

En iyisi okumaya devam edeyim…

Gebze Hatıratı

Geçtiğimiz Perşembe ve Cuma günlerini TÜBİTAK/UEKAE Gebze Kampüsü’ndeki Pardus ofisinde geçirdik. O yeşiller içindeki kalede geçirdiğimiz iki günden kısaca bahsetmeden önce haftanın ilk üç günü artistanbul’da yaşadıklarımızdan bahsedeyim: Bulaşık yıkadım! Evet belki bir stajyer olarak fotokopi çekmiyoruz (hep böyle söyleniyor stajyerler için) ama bulaşık yıkıyoruz. Şaka bir yana (tabi şaka olan bulaşık yıkamam değil), bundan bahsederken amacım aslında (Ali abinin dahi bulaşık yıkadığını düşünürsek) bu işten yakınmak değil artistanbul’da gördüğüm birlikte yaşama kültürünü gözünüzün önüne sermekti. Diğer taraftan aynı ofiste, oturmuş projenizi kodlarken, ‘dünya güzelini’ de görebiliyorsunuz. Evet, geçen Azra Akın ofisteydi. Elbette Cihangir’de, Taksim’de ünlü görmeye alışıyor insan, ama onlardan birinin, üstelik dünya güzelinin ofiste olması, onunla merhabalaşmak ayrı bir tecrübe olsa gerek. Engin’in onu gördüğündeki şaşkınlığını görmeliydiniz. Kendi tabiriyle ‘exception’ fırlattı, ve bir süre kendine gelemedi. Ben ise, sanıyorum şaşkınlığın ötesinde bir şeyler oldu ki bana, kendimi hiç şaşırmış hissetmedim, kendimi bir süre hissetmemiş de olabilirim… İşte böyle zor şartlar altında çalışıyoruz artistanbul’da, ama insan zamanla her şeye alışıyor…

Pardus stajyerleri olarak Pardus ofisini de görmek adına Gebze’ye gittik. Gerçi benim gidişim ilk gün için biraz zahmetli oldu. Servise binmek için Burak Bora Anadolu Lisesi’nin önünde yarım saat beklememe rağmen beklediğim servis gelmedi. Meğerse servis, liseye yüz metre mesafedeki caddeden geçiyormuş. Hatta daha önemsiz de olsa ‘Servis Güzergahları’ listesinde bir hata daha var; Burak Bora Anadolu Lisesi yerine var olmayan bir kolej ismi, Burak Bora Koleji yazıyordu. Neyse, Harem-Gebze minibüsleri sağ olsunlar, kırk dakika gecikmelide olsa UEKAE’ye vardım. Ofise girmek için bir ziyaretçi kartı verdiler ve güvenlik gerekçesiyle telefonumu ve mp3 oynatıcımı aldılar; elini cebine götürünce telefonunu bulamamak ilk zamanlar biraz tuhaf olabiliyor… Ofise girdiğimde, Engin tam saatinde geldiği için çoktan herkesle tanışmış, oranın müdavimiymişçesine sohbete koyulmuştu. Staj Koordinatörümüz Renan Çakırerk bize bilgisayar ayarladı, onları internete bağladık filan derken yemek saati geldi. Yemek yemek için 2 kez turnikeden geçtiğimizden bahsetmeden edemeyeceğim. Günün kalan zamanını ve sonraki günü ise, ara ara sohbet ederek, birazda Beyin2 (hala başka bir isim bulunulamadı) ile ilgilenerek geçirdik.