Elle Tutulan .NET

Şubat 26, 2010 by mucit · Yorum bırakın 

TinyCLR, gömülü sistemlerde çalışmak üzere geliştirilmiş .NET Micro Framework‘ün çekirdek kısmını ifade ediyor. GHI Electronics firması, bu çekirdeği alıp sıkıştırmış ve biraz işlevsellik de katıp minicik bir yonga setine gömmüş: USBizi.

Sonra da bu yonga setini kullanan kartlar üretmişler ki FEZ diye adlandırılıyor. Bu bileşenlerle, .NET kodu çalıştıran minik sistemler üretebiliyorsunuz. Örneğin ufak bir GPS log’lama cihazı. Taktığınız USB’ye o anki konumu, sıcaklığı ve ne lazımsa onu log’luyor:

Elbette böyle şeyler yapmak yeni değil. Ancak yeni olan ve dikkat çeken, bu gömülü sistemlere artık C# diliyle ve Visual Studio 2008 (Express de dahil) ile kod yazabiliyor olmanız.

Daha fazla karıştırayım derseniz şu adreslere bir bakın:

VS 2010′un En Çarpıcı Yeniliği

Ocak 28, 2010 by mucit · 1 yorum 

Visual Studio 2010, bizi şaşırtarak “Add Reference” ekranındaki sancıyı gidermiş. Sancı neydi?

Aşağıda Visual Studio 2008′e kadar aynı mantıkla yolculuk etmiş “Add Reference” ekranı var. Bir bakın hele:

add reference

Bu ekranın, Visual Studio projesinin üzerinde sağ tuş ile “Add Reference…” emri ile açılması gerekiyor fakat gelin görün ki bir süre sizi ağaç ediyor. Çünkü ekranın ilk sekmesindeki .NET assembly dizisi sistem kaydından o an okunuyor ve bu UI thread’ini okuma işlemi bitene dek blokluyor. Siz de sürüyle bileşene sahipseniz ve GAC’ınızla övünen biriyseniz, karşılığını burada bekleyerek alıyorsunuz.

Bu hiçbir UI geliştirme pratiğinde önerilmeyen uygulama, neden uygulama geliştirdiğimiz cihazda uygulanmış, anlamak mümkün değil. Bakın bir MSDN dokümanına ne diyor: “Uzun ve pahalı işler yapacaksanız, UI’ı bloklamamak için başka thread üzerinden asenkron çağrılar yapın“.

Bu garabet durumun üstesinden gelmek için yerli eklentiler bile yazıldı!

Neyse, buraya kadarmış. 7 senelik yara kapandı ve artık Visual Studio “Add Reference” ekranı asenkron çalışıyor. Müjdeler olsun:

addreference2010

İlk açışta üçüncü sekmenin açılışı da ayrı bir kural dışılık olarak sırıtsa da ekranın hızlı açılması şerefine, bu kusuru sümen altı ediyoruz.(Önce Projects’in açılması güzel ancak üçüncü sıradaki bir sekmenin açılması kullanıcı için olağan dışı bir ön tanım.)

Windows 3.1′e Dönmek İsteyen?

Ocak 24, 2010 by mucit · Yorum bırakın 

Fiilen olmasa da sanal olarak dönmeniz için gereken yapılmış. Michael Vincent adlı fantastik bir şahsiyet, Windows 3.1′i internet tarayıcı üzerinde taklit etmiş. Adres: www.michaelv.org.

Çok başarılı bir uygulama olduğunu söylememiz gerek. 3.1 ile yaşadığınız tüm hisleri, tekrar, ücretsiz yaşayabilirsiniz. Boş sistem kaynağının %314 olarak gösterilmesi ve sitenin en iyi Firefox‘ta çalışacağının söylenmesi işin hicivli kısımları.

Ha… Mayın tarlası, yani minesweeper oynamayı ve komut satırını kurcalamayı unutmayın.

msdos

“System” Olarak Konsol Açmak: RunAsSys

Ocak 7, 2010 by mucit · Yorum bırakın 

Windows sistemlerde, özellikle Vista ve 7‘de System kullanıcısı, bir takım işlemlerde ön tanımlı olarak tek yetkili oluyor ve size, “administrator” yetkilerinde olsanız dâhi pabuç bırakmıyor. Buna en güzel örnek, arka plan servislerinden bazılarını (tasksched, group policy client gibi) kapatamamanız. Çünkü o servisleri ancak “system” yönetebiliyor.

Peki “system” ile Vista ve 7′de nasıl process açacaksınız?

Biraz dolambaçlı da olsa bu işi birileri API üzerinden yapmış ve ihtiyaç sahiplerine sunmuş. RunAsSys, “system” olarak konsol açan minik ve işe yarar bir açık kaynak uygulama. Kodlara web’den gözatabilirsiniz.

Program, Delphi ile yazılmış ve Windows security yapısının nesne yönelimli bir modellemesi olan JWSCL kütüphanesinin ufak bir şovu. Çok yaşasın Christian Wimmer.

Biz demiştik ya bir zamanlar… bir delphi varmış!

C#’ta Tuple

Ocak 3, 2010 by mucit · 2 yorum 

Tuple” matematikten bilgisayar bilimine hoplayan, karışık tipteki elemanlar bulunduran dizileri temsil eden bir terim. Fonksiyonel diller bunu önceden beri destekliyor. Ama C# kıyılarına, dördüncü .NET‘te geliyor.

var data = new Tuple("bulutlararası", 2010);

Koda kulak verelim: farklı türde iki verinin peşpeşe bir constructor‘a verildiğini anlıyoruz. Oluşan tip, anonim tiplere benziyor. Bir farkla ki bunu az sonra anlatacağız.

Constructor yerine static metodumuz da var.

var data = Tuple.Create<string, int>("bulutlararası", 2010);

Tip çıkarımı, işe yaramaz mı:

var data = Tuple.Create("bulutlararası", 2010);

Şimdilik en kısa oluşturma şekli bu. Gelelim anonim tipler ile farka. Anonim tipler, metodun dönüş değeri olamıyor. Yazıldığı metodda mahpus; metodun kapsamına mahkum. O nedenle çok dar bir kullanım sahası var. Linq sorgusundan gelenleri almada problem yok ama sonrasında anonim tipler yanınızdan uzaklaşıveriyor.

Elemanlara ulaşalım:

var item1 = data.Item1; // "bulutlararası"
var item2 = data.Item2; // 2010

Tuple, bundan ibaret. Bir dördüncü .NET yeniliği. Mono de Icaza, hemen desteklemiş. Kereveti bize kalmış.

PDC Mektupları #2

Kasım 26, 2009 by mucit · 1 yorum 

Mektup serisinin ilkini okumadıysanız buyrun.

PDC’nin ikinci ve son günü, ilk güne göre nispeten daha sakindi. Yalnız bazı oturumların salon seçimleri çok kötü olduğundan, dışarıda kalabilmeyi başardığım oldu. Örneğin Exception Management ile ilgili teknik bir oturumu kapıdan bile izleyemediğim için üzüldüm. Oturum salonunda ekran yoktu gördüğüm kadarıyla. Konuşmacı tahtayı kullanıyordu.

İkinci günün girizgahını iki Microsoft yöneticisi Steven Sinofsky ve Scott Guthrie yaptılar. Steven’in tek tek Windows yüklü dizüstülerin üzerinden geçmesi ve en son Acer’in bir modelinde durması, durdukça durması ve en sonunda da hepinize bir tane hediye demesi tüm PDC katılımcıları için sürpriz oldu. Ben şahsen, Acer’e varana kadar masanın diğer ucundaki Vaio X’te durmasını tercih ederim.

Ve Scott Bey, kırmızı tişörtünü giyerek Silverlight 4′ü hem ilân etti ve hem anlattı. Gördüğüm kadarıyla geliştiriciler için yeni bir kafa karışıklığı oluşturuluyor. Silverlight, yetenekli internet uygulaması yazma platformu yolunda ilerliyor. Çünkü üzerine istemci makinenin kaynaklarını kullanacak fasülyeler ekleniyor. Halbuki buna benzer şekilde WPF ile de istemci taraflı uygulamalar yazılıp ClickOnce ile internet üzerinden dağıtılabiliyor. Platform açısından Silverlight her yerde çalışıyor ve daha ufak bir motora ihtiyaç duyuyor diyebiliriz. Velhâsıl tüm bunların yanında bir de saf yetenekli MVC ürününün ilerlemesi geliştiricileri arayüz kaosuna doğru sürüklüyor. Bu kaosun farkında olan C1 adlı bileşen firması da hemen mesajı vermiş ve bir kere yazın hem Silverlight hem WPF olsun diyerek soyutlama satmaya başlamış. Aynı gün akşamlarda bizim duymadığımız ve duysak da ilgi de duymayacağımız bir “Underground PDC” etkinliği tertip edilmiş. Scott Bey, yine aynı tişörtle Silverlight anlatmış. Read more

PDC Mektupları #1

Kasım 18, 2009 by mucit · 1 yorum 

Bulutlararası’nın sevgili okurları için Microsoft’un Los Angeles’ta tertip ettiği Professional Developer Conference 2009′ta duyduklarımıızı, kendi görüşlerimizle beraber ifade etmeye çalışacağız. Bu yazı, serinin ilki oluyor ve de ilk günkü “workshop” ve sonraki günde gerçekleşen ilk oturumları kapsıyor.

Workshop Paralelizmi

PDC toplamda üç gün süren bir etkinlik. Haftanın ortasına denk geliyor. Ancak isteyenler için Pazartesi ısınma turu tadında “workshop” etiketli tüm gün süren oturumlar bulunuyor.

Biz takım olarak workshop’lardan birer tane seçip katılmayı planlamıştık. Gün yaklaşırken farkettik ki Windows 7 Developer Bootcamp başlıklı Mark Russinovic üstadın katıldığı oturum tulum çıkarmış. Hem bedava olması hem de doğrudan teknik üstadların bulunması nedeniyle kontenjanı tükenmiş.
Read more

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.

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 :)

Sonraki sayfa »