Microsoft Press, Tası Tarağı Tim’e Devretti

Eylül 29, 2009 by mucit · 1 yorum 

Geçen hafta böyle bir haber düştü ağlara. Eskiden yayınladığı güzel kitaplarla yer dolduran Microsoft Press, yani Microsoft Yayınları, O’Reilly Media ile stratejik iş birliği yapma kararı almış. Bunu da linkte belirttiğimiz gibi, baba insan, Web 2.0‘ın mucidi, Tim O’Reilly duyuruyor.

Siz de inanmadınız değil mi iş birliği haberine? Bu devir işlemlerinin üstü kapalı cümlesidir. Microsoft, sürünmekte olan basılı yayın kolunu, bu işi online hizmetlerle de karıp güzel güzel götüren O’Reilly’e devretmiş oluyor. Tim’in de dediği gibi artık Microsoft yayınlarının kitaplarını O’Reilly yayınlayabilecek. Hatta yayınlayacak. Bence ufaktan kenarına da Microsoft Press koyar, gönül almalık. Microsoft’un yaptığı akıllıca bir hareket. Çünkü artık basılı kitap kadar elektronik kitap da konuşuluyor. Patronlar, matbu dergilere, gazetelere ömür biçmeye başlıyor. Bu dijital dönüşümde dükkanı bir profesyonele devretmek, makul bir hareket.

O’Reilly kitaplarını okuduysanız bilirsiniz. Bu adamlar her kitabın üstüne bir hayvan asarlar:

Şimdi Microsoft kitapları için yeni hayvanlar gerekecek. Kendilerine başarılar diliyoruz.

Deli İcadı Sanal Makinalar

Eylül 24, 2009 by mrok · Yorum bırakın 

Başlıkta her ne kadar “makinalar” desem de, aslında bahsedeceğim iki adet sanal makina var: JVM (Java Virtual Machine) ve CLR (Common Language Runtime). Bu iki ortamdan en az birisi için kod yazmış olduğunuzu tahmin ediyorum. (Öyle değilseniz ve sanal makinalar hakkında bir fikriniz yoksa endişelenmeye başlasanız iyi olur :) ) Java programlama dili JVM için, C# ise CLR için ipi göğüsleyen diller gördüğüm kadarıyla. Fakat sanal makinalar için bildiğiniz gibi yüksek seviyeli dillerin hiçbir önemi yok, çünkü yazılan her kod parçası CLR için IL’e (Intermediate Language), JVM için Java bytecode’a dönüştürülüyor ve sonrasında JVM ve CLR bu ara dilleri bulundukları işletim sistemi için çalıştırıyorlar.

Aramızda Java veya C# dilini kullanmak istemeyen ama bu iki sanal makinanın bize sunduğu bir çok nimetten (hafıza yönetimi vb.) faydalanmak isteyen bünyeler olabilir. İşte onlar için bu ortamları hedef alan birçok dil kullanılmayı beklemektedir. Aşağıda bu ortamları hedef alan örnek birkaç dili görebiliriz:

Read more

Havadis #4 (Eylül’09)

Eylül 19, 2009 by mucit · 2 yorum 

Efendim, bayramlar gelir geçer ama havadisler de akmaya devam eder. Size yine yazılım geliştirme dünyasından sıcak, kıpır kıpır, neşeli haberler derledik. En sevimli cinayet zanlısı, kafa koparan C.G’nin koğuşta neler yediği, kimlerle volta atacağı ve kaç yıl yatacağı gibi daha neşeli haberleri de ana akım medyadan okursunuz. Biz işize bakalım. Buyrun:

  • Apple Yazar Jailbreak Bozar – IPhone şüphesiz şu an uygulama geliştirmesi en zevkli ve en bereketli ortam. Bu nedenle dünyanın büyükçe firmaları birer birer IPhone’a özel web arayüzleri ve yetinmeyip özel uygulamaları devreye aldılar. Yapacak bir şey yok, bu platform cazibenin merkezi. Geliştiriciler de ucun köşesinden yeni bir şey yazıp cepleri dolara boğma peşinde. Müthiş bir arz ve müthiş bir talep var. Düşünün Windows Mobile yıllardır var ve bu denli hareketli ve verimli bir topluluk oluşmadı etrafında. Apple, belki cihazı alladı pulladı, iyi sattı. Ama dostlar, esas gerçek şu ki arkasını da iyi besledi. Tıpkı Wordpress’in, tıpkı Firefox’un bağımsız geliştiriciler elinde zirveye yükselmesi gibi IPhone da aynı serüveni yaşadı. Dünya yine gördü ki geliştiriciye yatırım yapan getirisini alır. Bağlantımız ise IPhone’a uygulama geliştirme odaklı Türkçe bir siteye. Site bir “Turkcell Teknoloji” personelinin elinden çıkıyor. Umut Gökbayrak, IPhone ve Android geliştirmeye dair püf noktaları ve kılavuzlar yayınlıyor. Güzel bir çalışma. Siteye aynı Wordpress temasını seçmiş olmamızdan dolayı da ayrıca ısındık. (Biz yakında değiştireceğiz Umut Bey, siz devam edebilirsiniz.)
  • MonoTouch – Novell, nereye kadar Allah rızası diyerek taşı toprağı altın Apple âlemine girdi ve işte karşınızda dokunmatik IPhone üzerinde C# diliyle kodlar yazalım, şen olalım projesi: MonoTouch. Novell bu ürünü potansiyel .NET kodcularını IPhone âlemine taşımak için konumlandırdı (bu kelimeye hastayım be!). Geliştiriciden yıllık güncelleme ile beraber 400 papel istiyor. Belki açık kaynak .NET izdüşümü olan Mono, yıllardır kıramadığı şeytanın belini bu sefer atomlarına ayırır.
  • Read more

Microsoft’u Utandıran Gelişme

Eylül 17, 2009 by mrok · 3 yorum 

Sevgili dostlar, bugün teknoloji haberlerinde, dünyanın 3. büyük borsası olan “London Stock Exchange” in daha önce bir Microsoft başarısı olarak yayınlanan teknolojilerini (.NET & SQL Server) bırakıp, Oracle/Unix ikilisine geçmeye karar verdiklerini okuyunca bir durdum şöyle. Daha önce 15 aylık .NET tabanlı uygulama ve SQL Server, kendilerini yarı yolda bırakıp büyük bir sistem kilitlenmesine sebep olmuşlar. (ayrıca bkz. Reuters) 7 saatlik bir kesinti onlara pahalıya patlamış, müşteriler kaçışmış. Aslında yakın zamana kadar hatanın kaynağını saklamışlar ama sonunda pes edip söylemişler, hata sistemin kendisiymiş :) Microsoft teknolojisinin arkasındaki LSE CEO’su başarısızlığın ardından sessiz sedasız işten ayrılmış. LSE, satın aldıkları MilleniumIT adlı şirketin ürünü olan ve Oracle/Unix (vaya Linux) üzerinde çalışan yazlıma geçme kararı almış. Microsoft teknolojileri yoğun işlem hacmine sahip bu borsanın, bir şekilde transaction sayısını kaldıramadı demek ki. Durumun vahim olan tarafı, eski uygulamanın geliştirilmesinde Microsoft’un da katkısının olması. Microsoft bu durumdan çok utanmıştır herhalde :)

Havadis #3 (Eylül’09)

Eylül 13, 2009 by mucit · 1 yorum 

Bu haftaki havadisimizde başlık formatını (Gökçe’nin teklifini dikkate alarak) azıcık değiştirdik. Mâlum olduğu üzere, bu sitede hep yazılım geliştirme vakalarıyla ilgileniyoruz. Bununla beraber yaşadığımız ülkenin sorunları için de en az yöneticiler ve yurttaşlar kadar tasamız, gamımız mevcut. Lafı dolaştırmayalım. Sel felâketinde hayatını kaybedenler için derin üzüntü yaşıyor ve İstanbul’un “anti-pattern”lerle oluşan şu anki hâlinin bir an önce silinmesi ve yerine daha yaşanabilir bir kentin kurulması için ses veriyoruz. Bu iş, yıkıp yeniden yapmadan, silip yeniden kodlamadan düzelmez abiler.

  • Google Earth 5.1 Geldi – Google’ın coğrafi keşif cihazı “Earth” (arz, yeryüzü) 5.1 sürümüne ulaştı. Neden mi ilgimizi çekti? Çünkü link ile gideceğiniz resmi blog sayfasında, Earth’ün hızlandırıldığı anlatılıyor. Yani bir uygulama, yeni sürümünde performansı öne çıkarıyor. Bu genel bir adet. Önce yavaş olan uygulamalar, her sürümde hızlanma iddiasıyla sürülürler. Google, “hızlı, yavaştan evlâdır” bizim kurumsal tasarım prensimiz diyerek 5.1 pazarlamasını güçlendiriyor. Performans derin konu. Craig Russell’in bir kitapta verdiği örnek geliyor aklımıza. Saatte en fazla 10 km gidebilen ileri derecede lüks aracı kim ister?
  • MS’in yeni Open Source hamlesi: CodePlex Vakfı – Microsoft’un açık kaynak projelere ev sahipliği yapan sitesi CodePlex adını artık bir vakfa verecek, yeni bir açık kaynak destekleme vakfına. Bu vakıf, Microsoft’un hamlesiyle kurulsa bile organizasyonel olarak tamamen bağımsız gösteriliyor. Yönetici listesinde Microsoft’çular dışında, Novel’den “Mono Beylerbeyi” Miguel de Icaza ve DotNetNuke’den Bruce Walker‘in adı var. Bu vakfın amaçları ve gidişatı konusunda müstakil bir yazı yazmayı planlıyoruz. O nedenle şimdilik bu kadar konuşalım. Siz bu arada alakalı yorumlara başvurun: Haacked, Ayende ve Miguel.
  • Read more

Digg’den MySQL’e Veda Partisi

Eylül 10, 2009 by mrok · 2 yorum 

digg

Digg, yaptığı son açıklamayla verilerini MySQL’den Cassandra‘ya taşıyacağını duyurdu. Cassandra, Facebook tarafından açık kaynak dünyasına kazandırılmış bir anahtar-değer saklama deposu. Dağıtık sistem teknolojisini Dynamo‘dan, veri modelini ise Google’ın BigTable‘ından almış diyebiliriz. Digg’in günlüğünde, zaman içerisinde Cassandra’ya geçişin tamamiyle gerçekleşeceğini ve bu süreç içerisinde Cassandra’nın gelişimine de maddi ve manevi destekte bulunacaklarını yazmışlar. Bu gelişme Cassandra projesi için güzel bir reklam kampanyası ve sponsorluk oldu diyebiliriz.

Güncelleme: Bu konuda detaylı bilgi almak isteyen arkadaşlar “Building Scalable Databases: Denormalization, the NoSQL Movement and Digg” makalesini okuyabilirler.

Balsamiq Çılgınlığı

Eylül 9, 2009 by mucit · Yorum bırakın 

Balsamiq Mockups, kendine Balsamiq Stüdyoları adını vermiş yeni yetme bir firmanın çok konuşulan UI modelleme ürünü.

Kısaca, size kağıt kalemi unutturmayı amaçlıyor. Müşterilerinize anlatmak için yırtındığınız uygulamanızın kara kalem çizimlerini saniyeler içerisinde yapacağını vaad ediyor:

Balsamiq ilginç bir ürün. İddiasına göre verimliliğe odaklanmamızı sağlayacak.

Read more

Havadis – 2

Eylül 6, 2009 by mucit · 6 yorum 

Havadis’leri paylaşmaya devam ediyoruz. Bakalım geçtiğimiz günlerde programlama dünyasında neler olmuş. Hep aynı yakadan haberler veriyorsun diyenler olabilir. Doğrudur. Sebebi anladığımız, tanıdığımız şeyleri yorumlama isteğimizdendir. Size hiç tecrübemiz olmayan bir dünyadan, mesela uzaydan veya metafizikten bahsetmiyoruz. Ben şunu biliyorum ve bunu da yazacağım diyenleri de geri çevirmiyoruz. Şimdi devam edelim:

  • GMail Erişim Problemi ve Delikanlı Google – Eylül’ün ilk günü GMail’in bazı yörelerde açılmaması internetin flaş konusu oldu. Hatta Microsoft’un arama motoruna girip hasbelkadar gördüğüm popüler arama “gmail problem” idi. Erişim kesintisini ben yaşamadım ama anlaşılan baya ademoğlu mağdur olmuş. Neyse, olabilir. Yazılım insan yapıtıdır, arıza yapar, tökezler, düşer, kalkar ve bir gün ölür. Ancak yazılımcı ve işletimci, hataya nasıl yaklaşır? Müşteriye ne anlatır? İşte GMail ekibi, verdiğimiz linkte oluşan arızayı nasıl giderdiklerini anlatıyor. Anlatırken süreçleri ve sistemleri hakkında da tevazü dolu ayrıntılar veriyor. Güzel bir bilgilendirme örneği. Evde kullanabilirsiniz.
  • PHP’den Python’a Neden Geçtim? – Joe, PHP ile 11 senelik yolculuğundan sonra âni bir kararla Pyhton’a geçer. Peki neden? (Bu haber Gökçe’nin hoşuna gitmeyip Murat’ın hoşuna gidecektir.) Yazısında PHP’ye ve onun disiplinsizliğine verip veriştiriyor. Yoruldum diyor arkadaş! Bakalım siz ne diyeceksiniz Joe’nin gerekçelerini dinleyince. Kendinizi Pyhton’u download ederken bulursanız, dediklerinde hakikat payı var demektir.
  • Su Gibi Aziz, Fluent NHibernate 1.0 – NHibernate ve Hibernate camianın ağır toplarından. NHibernate için söylersek… ne o config dosyalarındaki eşlemeler? Devlet bu işe bir çözüm bulmalı. Derken, Fluent NHibernate’çiler çıkagelir. İnsan gibi otomatik eşlemeler yaparlar, bizi config cehenneminden kurtarırlar. Fluent, 1.0 RTM olmuş, sokağa bırakılmış. Meraklısına duyrulur. Read more

PHP’ye dair

Eylül 3, 2009 by gokce · 7 yorum 

[ Bu yazı, Bulutlararası'ndaki yeni yazarımız Gökçe Yalçın tarafından kaleme alınmıştır. Kendisine "aramıza hoşgeldin" diyoruz. ]

PHP ile doğrudan alakalı ilk yazımda, öncelikle dilin nereden gelip, nereye doğru ilerlediği ve özellikle oturmuş ‘Java’, ‘C++’, ‘Phyton’ gibi dil cambazlarının PHP dünyasına niye yukarıdan baktıklarına değinmek istiyorum.  Bunu yazmaktaki amacım ise web programlama dünyasına giriş yapanların PHP’ye karşın yazılmış bir çok yarım-argümanlı eleştrileri önyargıyla benimseyerek yol çizmesinden ve anti-PHP timlerinin gençlik örgütlerinde yerlerini almalarından rahatsızlık duymam.  Sanırım bir programcı için elde etmek istediği en önemli çalışma koşullarından birisi ‘zorlanmamak ve kısıtlanmamaktır’. Peki niye bu programlama dili, yapıyla ilgili bile size sınırlamalar koymazken, bu sert eleştirileri alıyor? Yorumlama gücümüzü pekiştirdiği için konuya biraz tarihle başlayacağım.

Yeni Pazar

Web’in dinamik kısmı bu güzel yazıda bahsedildiği gibi ‘ziyaretçi defteri’ ve ’sayfa sayaçlarından’ ibaretken, PHP, ‘insanlar kendi ziyaretçi defterlerini kendileri yapsınlar’ sloganıyla çıktı. O zamanlar özgür yazılımcı guruları daha çok GNU’nun unix ile güreşiyle ilgilenirken, Microsoft ve diğer big blue şirketleri ‘internet’in büyük bir geleceğinin olduğunu düşünmüyorum’ vizyonunu savunuyordu; dolayısıyla o zamanlar açılımı ‘Personal Home Page’  (blog? :-) ) olan PHP’nin, web alanında çıkışı pek dikkat çekmedi. Fakat Perl’ün yazınsal işleme gücü (text processing) ve C’nin yapısal güzelliklerinden yararlanan ve kendini sadece web geliştirmeye adayan PHP, kısa sürede birkaç büyük sistemlerin arayüz yardımcısı haline geldi. Ama asıl çığır, amatör durağan websitelerinde yaşandı; varolan birkaç dinamik sisteme özenen on binlerce site, PHP’nin sunduğu her imkanı sonuna kadar kullanarak, olabildiğince aktif siteler haline geldiler. İnsanlar ‘web programlamadaki’ gelişmeleri konuşur oldu, dikkat kesildiler. Artık yeni bir pazar doğmuştu, ve “amatörce” desteklenmiş, kurgulanmış PHP lider gibi gözüküyordu.  Java, C++ gibi oturmuş dillerle ve milyon dolarlık yatırımlarıyla enterprise düzeyde işler çıkaran firmalar için, bu bayrağı almak çocuktan şekeri almak gibi olmalıydı…  Basitliği ve ‘component’ ler sayesinde yetenekleriyle savunulan VBasic daha yeni ‘componentlerle’ şişirilerek arenaya atıldı.. fakat…

Read more

Programlama Dillerini Anlamak

Eylül 1, 2009 by mrok · 1 yorum 

Yıllarca forumlarda, usenet ve bilimum mecralarda programlama dillerinin, geliştirme ortamlarının fanatikliğini yapıp, tartışıp durduk. Ruby ve Python taraftarları, C# ve Java müdavimleri ve diğer dil sevdalıları birbirlerini yediler, yüzlerce blog yazıları yazıldı. Bir zaman böyle geçti gitti. Daha sonra sahneye Ruby on Rails açık kaynak web geliştirme framework’u çıkıverdi birden, Martin Fowler dayının P of EAA kitabında bahsettiği pattern’ler bu framework ile birlikte ağızdan ağıza dolaşmaya başladı. İnsanlar 1995 yılından beri sahnede olan Ruby‘nin adını ilk defa duydular. Daha önce tartışmalarda hiç denk gelmemişlerdi halbuki. Rails ile birlikte Java dünyasını kasıp kavuran Struts, Spring gibi framework’ler eleştirilmeye başlandı, Convention over configuration kavramı insanların gönlünü fethetti. Rails’in farklı platformları hedef alan benzerleri çıktı. Güneş batıdan doğmuşdu bu defa, insanlar yepyeni bir akım ile karşı karşıyaydılar.

Bu yeni akım programlama dillerinin bir amaç olmadığını, sadece bir araç olduğunu ifade ediyordu. Nitekim Rails ile, Ruby gibi bir dilin web uygulamaları geliştirilmesine nasıl da yatkın olduğunu ve Ruby ile hızlı bir şekilde nasıl prototip geliştirilebileceğini gördük. C# ve Java kıskacından biraz olsun kurtulduk bu yeni akımla. Sonra blog sayfalarını Google’ın Python kullandığına ilişkin haberler doldurmaya başladı. Evet dünyada arama motoru pazarı birincisi, insanların günlük hayatının vazgeçilmez bir parçası olan Google’dı bu. Nasıl olur da Google Python gibi bir dili kullanabilirdi? Halbuki Python sade ve basit bir dildi, içerisinde öyle kocaman özellikler barındırmıyordu. Yeni yetme programcıların kafası karışmıştı. Fakat sonra anladık ki Python kullanmasını bildiğinde çok kullanışlı, okunabilirliği yüksek ve hızlı öğrenme eğrisine sahip esnek bir dildi. Google, testlerini, test harness’ını yazmak ve sistemsel görevleri yönetmek için bol bol Python kullanıyordu. Aslında eski toprak system administrator arkadaşlar için Python veya Perl çok yabancı diller değildi. Fakat yeni nesil, Python dilini hafızasına kazımış oldu böylece. Django, Pylons ve TurboGears ile Python daha çok pekişti kafalarımızda. Bu gelişmelerle insanlar farklı amaçlar için farklı araçların olduğunu ve uzun zamandır da kullanıldığını net bir şekilde görmüş oldular.

Web servislerinin günlük hayatımıza girmesiyle beraber Flickr, Wikipedia veya Facebook gibi sitelerle tanıştık. Flickr gibi muhteşem bir servisin PHP ile kodlandığını biliyor muydunuz? veya Wikipedia’nın? Evet ikinci sınıf bir dil gibi görülen PHP (şahsen öyle olmadığını düşünüyorum) böyle muhteşem servislerin kodlanmasında kullanıldı ve kullanılmaya devam ediyor. At binenin kılıç kuşananındır prensibiyle asıl dilden daha çok, bu servisleri yazan sağlam geliştiricilere bakmak gerekiyor. Biliyoruz ki bu servislerin arkasında muazzam framework’ler var, bu framework’lerin belirli yerlerinde belirli diller kullanılıyor. Örnek vermek gerekirse Facebook, PHP dilini arayüz kodlamada kullanırken, Erlang‘ı chat altyapısında kullanıyor, Twitter arayüz geliştirmede Ruby (Rails) kullanırken, servis tarafında Scala kullanıyor. Farklı amaçlar için farklı araçlar kullanılıyor yani. Çünkü tek bir dil, framework veya teknoloji her hedefe uymayabiliyor.

Tek bir teknoloji bilmek ve onu iyi bir şekilde kullanmak elbette çok güzel bir meziyet fakat gerçekçi olmak gerekirse tek bir teknoloji, dil veya framework içerisinde sıkışıp kalmak, bize yeterli ufku ne yazık ki sağlayamaz. Hiç görmediğimiz farklı güzellikler bir yerlerde keşfetmemiz için bizi bekliyor olabilir. Bu yüzden sadece önümüze bakmak yerine arada bir etrafımıza bakıp yeni diller yeni ortamlar tanımalıyız. Farklı problemlerle karşılaştığımızda, İsviçre çakısında olduğu gibi uygun aracı (dil, framework vb.) bulup, o problemin çözümünde kullanmalıyız. Böylece hayat bizim için daha kolay olacaktır.

* Sevgili mucit’in yazmış olduğu “Web Programlamanın Şaşkın Paradigmaları” yazısı nedense bende böyle bir yazı yazma isteği uyandırdı :) Hem tarihin tozlu sayfalarını karıştırmış olmak hem de programlama dilleri üzerine bu seriyi devam ettirmeyi istedim.