TimeZoneInfo İle Tarih Dönüştürme İşlemi ve Yaz Saati Uygulaması

C# `da TimeZoneInfo sınıfı altındaki ConvertTimeToUtc methodu ile kullanıcıdan gelen tarihi UTC biçimine dönüştürürken TimeZoneInfo altındaki AdjustmentRule sınıfına dikkat etmek gerekli.

Örneğin; UTC +3 olan bir ülkenin belli tarihler arasında uyguladığı (eskiden bizim ülkemizde de olduğu gibi) saatleri geri veya ileri alma durumlarını tarih aralığı ve ne kadar saat ileri ya da geri alınacağı bilgisi AdjustmentRule sınıfında saklanıyor.

ConvertTimeToUtc ya da benzer diğer methodları kullanırken sistem otomatik olarak AdjustmentRule`da yer alan verilere göre tarihi dönüştürme işlemini yapıyor. Test yaparken çıkan değer bu sebeple ilgili zaman diliminin tanımındakine göre farklı olabiliyor, yani verdiğiniz tarihe +3 ekleneceğini beklerken +2 eklenebiliyor.

İlan Karşılaştır

ilankarsilastir.com ya da ilankiyasla.com

Sahibinden.com`da araba ilanlarına bakarken beğendiğim birkaç ilanın özelliklerini karşılaştırmak ve hangisi daha iyi, birinde olup diğerinde olmayan neler var gibi sorularıma cevap bulmak adına İnternet`te uygulama, site vs aramış ama bulamamıştım.

Sahibinden.com`daki karşılaştırma özelliği ise araçların fabrika verileri üzerinden bu işi yapıyor ki bu da işimi görmüyordu maalesef. Baktığım araçlarda, km`si az ama abs`si olanla, km`si fazla ama fiyatı daha ucuz olanı karşılaştırabilmek isteyince buna cevap vermiyor sundukları karşılaştırma hizmeti.

Excel dosyası hazırlayayım dedim ama o kadar çok özellik varki ilanlarda, bunları tek tek bir dosyaya aktarsam da excel`den karşılaştırma yapmak kolay değil. Zaten özelliklerin başlıklarını yazıp dokümanın sağa doğru iyice uzamaya başlamasıyla bu yöntemi bırakmam da bir oldu.

Sonra dedim kendi kendime; “madem yazılımcısın, kaldır kıçını da iki satır kod yaz da ihtiyacını karşılayacak bir şeyler yap”.

Önce yapmam gerekenleri belirledim.

  1. ilan numarasına göre sahibinden.com`daki ilan sayfasını alıp, sayfadaki belli alanlarda yazan verileri okumam gerekliydi.
  2. Sonra eldeki verileri e-ticaret sitelerindeki ürün karşılaştırma tabloları gibi sunmalıydım.

İlk adım olan sayfadaki verileri okuma için “crawler” yazmam gerekliydi fakat daha önce bu taraz bir çalışma yapmamıştım, yüzeysel bilgim vardı. Neyse, biraz araştırınca “CsQuery” adında harika bir şey buldum.

CsQuery, jQuery`nin .net port`uymuş. Yani jQuery`yi html tarafında nasıl kullanıyorsak, CsQuery`i de .net kodu tarafında aynı şekilde kullanabiliyoruz. Bir html elementi bulmak için jQuery`de nasıl “selector” yazıyorsak burada da aynı şekilde yazıyoruz. Tüm detayları GitHup`daki proje sayfasından öğrenebilirsiniz.

İşin zor kısmı olan ilan verilerini okumak kısmını bu şekilde kolayca halletmiş oldum. Bundan sonrası ilan verilerini gruplayarak, ortak olanların hangi ilanda olduğu, hangisinde olmadığını göstermek kalmıştı. Bu kısımda özel bir şey yok, standart .net kodları ile ilanlardaki özellikleri tekilleştirerek bir değişkene atayıp, sonra da sayfaya yazdırırken her bir özelliğin karşılığını sadece dolu olanları “var” şeklinde yazdırarak kullanıcıya gösterdim.

İlanları karşılaştırırken ilan kategorilerine göre değil sayfadaki tüm özelliklere göre dinamik olarak karşılaştırma tablosunu hazırladığım için araba ile ev ilanını da karşılaştırabiliyorsunuz, tabi sonuç çok tatmin edici olmuyor :D

Hızlı ilerlemek adına da projenin arayüzünde bootstrap kullandım.

Arayüz, ilanlarda çok fazla özellik olduğu ve bir çoğunun ya hiç karşılığı olmadığı ya da tüm ilanlarda da dolu olmasından dolayı kafa karıştırıcı görünüyordu. Bu sebeple, özellik isimlerine tıklayarak seçilebilir yaptım ve ilk seçimden sonra görünen “Sadece seçtiklerimi göster” butonu ile seçilmeyen tüm alanların gizlenmesini sağladım. Böylece ziyaretçi sadece ilgilendiği özellikleri rahatça karşılaştırabiliyor.

Buraya kadar olan tüm süreç yaklaşık üç akşamımı aldı. Bu süre sonunda ilankarsilastir.com`un ilk beta versiyonunu yayına açmış oldum.

Öncelikli olarak kullanılabilirlik tarafında yapılacak bir kaç çalışma var not aldığım, ayrıca ilandaki fiyatı sayfada göstermeyi unutmuşum :)

Sizin de önerileriniz varsa yorum olarak paylaşırsanız çok sevinirim.

İki scooter, iki adam ve kısa bir tatil

18 – 23 Ağustos 2014 tarihleri arasında İstanbul, Bozca ada, Ayvalık Sarımsaklı, İstanbul şeklinde bir haftalık kısa tur ve tatil yaptık Uğur ve Onur`la. Aslında Onur Ayvalık`da kendi yazlıklarında bizi bekliyordu, öncesinde Uğur ve ben birlikte seyahat ettik. Uğur Honda Pcx, ben de Yamaha Xmax kullanıyordum.

Toplamda 20 saat motor kullanmışız ve 1116 km`de yol yapmışız. Yaklaşık yakıt tüketimim; 160 TL, 32 lt. 100 km`de ortalama tüketim 2.8 lt.

1116 km Okumaya devam et

Ofix.com`a veda

Ofix.com - Ofise ne lazım?9 Temmuz 2012 yılında çalışmaya başladığım, iki yıl boyunca da çok keyifle ve severek çalıştığım Ofix.com`dan Cuma günü itibariyle ayrıldım.

Severek ayrılanlar vardır ya hani, benimki de öyle oldu biraz :)

Cuma günü mesai sonuna doğru iş arkadaşlarımın yaptığı küçük veda toplaşkası benim açımdan bol sulu gözlü ve duygusal geçti. Ne kadar “ağlamam yeaa” desem de tutamadım kendimi.

Ayrılma sebebim tamamen kişisel planlarım doğrultusunda oldu, uzun vadeli olarak düşündüğüm projelerime daha fazla vakit ayırabilmek düşüncesi en büyük etkendi. Ofix.com`dayken bunu yapabilirdim tabi ama köklü bir değişikliğe ihtiyacım olduğunu düşündüğüm için böyle bir karar aldım, umarım her şey iyi olur.

İki yıl boyunca birlikte çalıştığım o güzel insanlara buradan da teşekkür etmek istiyorum; iyi ki sizi tanımış ve iyi ki sizinle çalışmışım. Bir çoğunuz zaten hayatımda olmaya devam edeceksiniz o yüzden mutluyum.

Sevgiyle kalın.

2012’den ne gördüm ki 2013’den bişey dileyeyim

2012 yılı hiç te hayal ettigim gibi geçmedi benim için. Kötü başlayıp iyi yönde gelişti olaylar diye düşünüyorum şuan geriye dönüp baktığımda.

Yılın baslarında ufak bir saglık problemi sebebi ile evde geçirilen yaklaşık iki ay ve işlerden uzak kalma. Bu esnada bir türlü istediğimiz noktaya getiremediğimiz işler yüzünden şirketi (monofact) kapatma kararı almamız. Ardından iyileşip, iş arama süreci, işe girme hayatta köklü bir değişime sebep oldu, sonrasında tanıştığım ve hayatıma giren insanlar, ofix.com’daki işe girişine kadar sürekli hayatımın dinamikleri değişiyordu. Ofix.com’daki işimden önce anadolu yakasına taşınma süreci de yaşadım :) Şuan Avrupa yakasında hayatıma devam etsem de çok güzel biri için bir ayağım Anadolu yakasında sürekli ;)

2012’de aldığım Honda pcx scooter’ımdan da bahsedeyim tabi :) telefondan yazdığım için fotoğraf yükleyemiyorum.

Kısaca 2012’de bir çok bitiş ve bir çok da başlangıç yaşadım :)

2013 yılından dileğim; daha düzenli, sakin bir yıl olması öncelikle. Sonra tabi sağlık, huzur, mutluluk ve para :), soğuğu az, sıcağı bol bir yıl diliyorum.

Herkese iyi seneler :)

Not: yazıyı telefondan yazdım. Yazım hataları vs. için özür dilerim.

Döncem Ben Sana

Bir sürü bir sürü şey oldu, çok şey değişti kısa zaman içerisinde…

Yeni bir hayat başladı bir yerlerde…

Eskisinden kalanları temizlemekle meşgulüm…

İlk fırsatta anlatmak için geri geleceğim : )

Döncem ben sana : )

Böyleyken Böyle

Twitter`da gerçek anlamda birilerini takip etmek imkansız. Bir haber sitesinin haberlerini, markanın duyurularını, sevdiğiniz bir blogger`ın yeni yazılarını, konser duyurularını gibi gibi. Hesabınıza giriş yapıyorsunuz, ekranınızdakileri hızlıca inceliyorsunuz hadi belki biraz daha eskilere göz atıyorsunuz daha da ötesi yok. Sonra bir kaç “tweet”`i “RT” yaptınız, iki kişiye “mention” yazdınız, iki tane de özlü söz yazdınız mı tamamdır :)

Bazı şeyler 2 ya da 3 şarkı boyunca sürüyor (ya da su soğuyuncaya kadar) bazıları da başka şehirlerde şarkılarda geçen saçma bir şeyi gerçekleştirerek hayatlarını daha da dayanılmaz kılıyorlar. Şarkıyı her dinleyişinde acısı ve pişmanlığı biraz daha büyüsün diye.

İnsan sağlık ile ilgili problem yaşadığında daha net düşünmeye başlıyor hayatındakileri, daha kesin kararlar alıyor, daha acımasız oluyor (kararları uygulamak açısından) biraz bencillik ile birlikte. Her şeyin öncelik sırası değişiyor, iyi de oluyor.

Şimdi Ne Yesek? adında uzuuuuun (neredeyse 2 yıl) bir süredir Monofact çatısı altında hayata geçirmeyi planladığımız ama bin bir türlü sebepten dolayı bir türlü hayata geçiremediğimiz bir projemiz vardı. Proje temelde siteye girdiğiniz saate (öğüne) uygun yemek tavsiyesi vermek üzerine kurulu ve şuan bu görevini layıkıyla yerine getiriyor. Bunun dışında bir kaç özellik daha olacak bunlarda zaman içerisinde netlik kazanacak. Çok yakın zamanda içerik (özellikle yemek görselleri için), projeye özgü bazı özellikler ve reklam konuları ile ilgili görüşmelerini yapıyor olacağız, bize şans dileyin :)
Bu görüşmeler öncesinde kapalı test yayınımızda kullanıcı olmak isterseniz simdineyesek.com adresine girerek e-posta adresinizi bırakmanız yeterli. Test yayını başladığında giriş yapabilmeniz için size bir kullanıcı hesabı oluşturacak ve bıraktığınız e-posta adresinize giriş için gerekli bilgileri göndereceğiz.

5 Yıllık Emektar ile Yollarımız Ayrıldı

Cuma akşamı çalışmanın tam ortasında bilgisayar kapanır ve bir daha açılmaz, Halil Sezai`den geliyor efendim; iiisssyyeeeeeeaaaaaaaaaannnnn

Daha önce 4 kere aynı sebeple (Ekran kartı ile ilgili bir problem) onarım gören 5 yaşındaki HP Pavilion dv9630 bilgisayarım hakkı rahmetine kavuşmuş bulunuyor.

Cumartesi günü apar topar gidip bilgisayar satın aldım. Önceki gece arkadaşların da önerileri ile birlikte bir iki tane model belirlemiştim kendimce, öncelik Dell markalı bir üründü.

Bilgisayarı satın aldığım Elektroworld mağazasında Dell`in ürülerinin kasalarının hiçte güven vermediğini gördüm özellikle klavyenin orta kısmında tuşlara basınca hissedilen bir boşluk vardı ki eyvahlar olsun. İşim yazılım ağırlıklı olduğu için o tuşlar bana lazım diyerek uzaklaştım ve Yusuf isimli satış temsilcisi arkadaşın da önerisiyle Samsung`un bir ürününe yöneldim. Kısa bir ürün incelemesi, Teknosa ziyareti internette hızlıca yapılan bir araştırma (benim telefonun yetmediği noktada Seçkin`den yardım istedim :) ) ardından Elektroworld`e geri dönüp bilgisayarı aldım.

Bilgisayar oldukça iyi; gerek donanımsal özellikleri olsun gerekse dış görünümü, ergonomisi özellikle klavyesini (şuan keyifle kullanıyorum o klavyeyi :) ) çok beğendim. Bir de “Enter” tuşu büyük, bir çok dizüstü bilgisayardaki gibi küçücük bir “Enter” tuşu altında virgül tuşu yok geniş geniş ferah ferah bir “Enter” tuşuna sahibim ki bu konuda takıntılıyımdır :) Ekranının mat olması ve arkanızdaki, tepenizdeki lambaların ya da açık alanda güneş yansımalarını görmüyorsunuz ve rahatça çalışabiliyorsunuz :) Bu bilgisayarı tercih etmemin en büyük etkenlerinden biri de bu özelliği oldu :)

Önceki bilgisayarımın ekranı 17″`di bu ölçüdeki bilgisayarların çoğunun fiyatı 3,500`den aşağı değildi bu sebeple 15,6″ olan modellere yönelmiştim. Tek çekincem attan inip eşeğe binmek gibi olmasa da çalışırken küçük ekran yüzünden biraz sıkıntı çekme düşüncemdi ama şimdilik her şey yolunda görünüyor. Zaten ekranın çerçevesi çok ince ve ekranın kullanılabilir alanı incelediğim ve gördüğüm 15,6″`ler arasında en büyük olanı.

Tek kötü şey ekrandaki “bir adet ölü piksel”, bunun dışında her şey dört dörtlük :)

Satın aldığım ve incelediğim ürünlerin marka / model bilgilerini, teknik özelliklerini ve satın aldığım bilgisayarın bir kaç görselini yazıya daha sonra eklerim, takipte kalın efendim :)