"

SiberKültür 101: Internet kültürü, web dedikoduları ve web tasarımı ve geliştirme konusundaki tüm açlığınızı giderir.

Twitter'dan açık kaynak paylaşımlar

Twitter blogunda open source kelimelerini görünce insan bir heyecanlanıyor, acaba tamamen mi açık kaynak oldular diye düşünmeden edemiyor insan. Öyle olmadılar tabi ki de.

Ancak Twitter alt yapısında iki önemli sayılabilecek aracı github üzerinden açık kaynak olarak dağıtmaya başladılar. Aşağıdaki iki araç da Ruby on Rails üzerinde geliştirilmiş.

Birincisi Kestrel's Wonderful Plumage. Bu araç bir kullanıcı twitlediğinde, SMS ile güncellemeleri farklı operatörlere göre dağıtılmasını sağlıyormuş. Türkiye'de SMS ile güncelleme dağıtan servisler pek fazla olmasa da belki işine yarayacak birileri vardır aramızda. Proje github üzerinde.

Diğer araç ise As Good as Cache-Money. Bu da RoR için gelişmiş bir önbellek aracıymış. Yeni veya güncellenen içerik önce hafızada önbelleğe atılıyor ardından veritabanına yazılmasını sağlıyormuş. Böylece daha hızlı bir önbelleklemenin yanında veritabanında oluşabilecek kısa süreli laglar da engellenmiş oluyormuş. Bu proje de github üzerinde.

Twitter'ın başarılı olmasının nedenlerinden birisi ise bu. Gerek API'si gerekse de bu tür paylaşımları ile geliştiricileri kendi sahasına çekmesi.

www, www1, www2... Peki farkı?

Bu yazı, SiberKültür benim için yazsın ısmarlama yazılar uygulamasının meyvesidir. Tuğca Eker tarafından ısmarlandı.

Tuğca'nın merak ettiği konu, çoğu web sitesine www.site.com yazarak girilebilirken, bazen aynı siteye www1.site.com veya www3.site.com olarak da girilebiliyor olmasının altında yatan neden. Yani bu www'lerin farkı ne?

Büyük uygulamalar haliyle birden çok sunucu kullanırlar. Bir sunucuda yoğunluk olduğunda kullanıcıların zorluk yaşamaması için başka sunucuya yönlendirme yaparlar. Veya içerik dağıtım ağı kullanıyorsa www ile giriş yapsanız bile kendinizi tr.site.com'da bulursunuz.

Yani ya içerik dağıtım ağından dolayı, ya da bir sitenin farklı sunucularına yönlendirilmenizden dolayı farklı alt alanadlarına yönlendiriliyorsunuz. Tek bir alanadı üzerinden farklı sunuculara yönlendirilemediğiniz için bu farklılığı da alt alanadları üzerinden yaşıyoruz.

Y!OS !

Y!OS

Geliştiriciler koşun, Yahoo! kendini açtı!

Y!OS 1.0 yani Yahoo! Open Strategy 1.0, yani Yahoo! Açık Strateji 1.0. Yahoo!'nun geliştiricilere saygısını ve sevgisini hepimiz biliyoruz. Özellikle son 1-2 sene içerisinde çıkardığı araçlarla hem geliştiricilere kolaylıklar sağlıyorlar hem de yeni çalışma alanları açıyorlar.

Konuya geri dönersek, Y!OS şimdilik dört araçla kapılarını geliştiricilere açtı. Bu araçlar sizlere kolaylıkla Yahoo! servislerine ulaşmanızı ve güçlü uygulamalar geliştirmenizi sağlıyor.

Yahoo! Sosyal Platformu (YSP)

YSP sayesinde Profiles, Connections, Updates, Contacts ve Status servislerine kolaylıkla erişebiliyor, veri alabiliyorsunuz. Bu sayede kendi sosyal uygulamalarınız Yahoo! bilgileriyle daha sosyal olabilecek.

Yahoo! Sorgu Dili (YQL)

YQL diğer web servislerine SQL sorguları gibi sorgular yapmanızı sağlıyor. Yahoo! Pipes servisinin daha gelişmişi olarak düşünebilirsiniz.

Yahoo! Uygulama Platformu (YAP)

YAP, geliştirdiğiniz tüm Yahoo! destekli uygulamaları kitlelere ulaştırmanız için tek platform olmayı amaçlıyor. YAP sayesinde kullanıcılar uygulamalarınızı alıp kolaylıkla anasayfalarına da ekleyebilecekler.

QAuth

Yukarıdaki tüm servislere erişim QAuth sistemi sayesinde olacak.

Tüm bu açılımlar, Yahoo!'nun olmadığı kadar paylaşımcı olmasının sadece ilk sinyalleri. Yani daha bir sürü araç yolda diyebilirim. Mesela OpenSocial desteği ilk adımlardan birisi olacak.

Güle güle: alert('debug');

Blackbird

JavaScript ile haşir neşir olanların eminim ki dert yandıkları bir konu da çoğu zaman debug işlemleri için alert() komutunu kullanmak zorunda olmalarıdır.

Diğer dillerin aksine JavaScript gelişmiş bir debuggera sahip olmadığı için ek programlara ihtiyaç duyarsınız. Bu gibi durumlarda oldukça pratik ve şık bir çözüm olan Blackbird'ü tavsiye edebilirim (tabi hali hazırda bir Firefox eklentisi kullanmıyorsanız).

Blackbird, açık kaynak bir JavaScript debug aracı, sayfanıza ekleyeceğiniz bir JavaScript dosyası ile çalışıyor. Kullanıldığında ekrana yandaki resimdeki gibi bir pencere yaratan script, basit komutlarla istediğiniz debug işlemini kolaylıkla yapmanızı sağlıyor; sıkıcı mesaj kutuları olmadan.

Ücretsiz SEO analizi

Ben Volkan Görgülü'den gördüm, o da Fatih Turan'dan görmüş: Raven SEO araçları web sitenizi belirli kriterlere göre sorguluyor ve bir SEO skoru çıkartıyor.

Daha önce karşımıza çıkan araçlardan pek bir farkı olmasa da, genel bir hatırlatma ve farklı araçlarla testlerinizi yapmak adına güzel bir uygulama. Skor verirken belirlediği kriterlerin açıklaması ve nasıl daha iyileştirebileceğinizi söylemesi denemeniz için bir neden olabilir.

SiberKültür'deki SEO makalelerini merak ediyorsanız tıklayın.

Planlı dosyalama yazı serisi

Yakın zamanda SiberKültür iletişim formu aracılığıyla sevgili M. Can Kaymaz benimle iletişime geçti ve proje yönetimi & dosya düzeni hakkında bir röportaj yapmak istedi.

Oldukça keyifli geçen röportajı blogunda yayınlamış. Benden sonra da Volkan Görgülü ile yine aynı konuda bir röportaj yapmış. İşte size dosya planlama konusunda 3 bölümlü bir yazı dizisi:

Eğer hala okumadıysanız Volkan Görgülü'nün benimle yaptığı röportajı da buradan okuyabilirsiniz.

Bu röportajlara bir ek de SiberKültür'ün çok eskiden Altı Üstü Tasarım'ın kurucusu Mehmet Doğan ile yaptığı röportajı da okuyabilirsiniz. Sevgili Mehmet ne yazık ki artık yazmıyor.

SVN nedir?

SVN nedir

Uzun zamandır aklımda olan, uzun zamandır kullandığım ve anlatmak istediğim hayat kurtaran bir fikir: SubVersioN (SVN).

SVN'i anlatmanın en kolay yolu bir örnek üzerinden gitmek. Bir proje geliştirdiğinizi düşünün. Ekibiniz küçük veya büyük farketmez, aynı dosyalardan çalışmak ve hızla ilerlemek zorundasınızdır. Bu tür çalışmalarda en fazla rahatsızlık veren durum her zaman takımdaki kişilerin yaptığı düzenlemelerin, yine takımdan birisinin yaptıklarıyla çakışmasıdır. Sizin yaptığınız bütün değişiklikler, bir başka kişide var olmayacağı için o dosyayı farkında olmadan sizin yaptıklarınızın üzerine atar ve bir anda tüm yaptıklarınız ezilir.

Bu gibi durumlarda ya takım arkadaşlarınızla çok iyi bir iletişime sahip olmalısınız ya da her zaman elinizde yaptıklarınızın yedeği bulunsun ki bir sürü zaman harcayarak çakıştığınız noktaları birleştirmeye uğraşın.

Tortoise SVN

Tüm bunlar bir işkence değil mi?

O zaman SVN kullanabilirsiniz. Üstelik bir takım çalışması da olmak zorunda değil, tek başınıza çalışsanız bile. SVN basit olarak belirlediğiniz klasörleri, içindeki dosyaları versiyonluyor. Bir SVN sunucusu sayesinde (bu kişisel bilgisayarınız da olabilir) proje üzerinde yapılan en ufak değişiklik bile versiyonlanıyor ve veritabanına kaydediliyor. Ekip çalışanları bu dosyalara ulaşmak istediğinde bir SVN programı sayesinde dosyaları bilgisayarlarına çekip, çalışmalarını yapabiliyorlar. Güncelleme işlemi tamamlanınca tüm ekip uğraşmadan yeni dosyalara erişebiliyor.

Neler gerekli?

SVN Mac de dahil bir çok platformu destekliyor. Dilerseniz bir SVN sunucu yazılımını web sitesinden indirebilirsiniz.

Ekip çalışanları SVN sunucusundaki dosyalara erişmek için bir SVN yazılımı kullanmak durumdadırlar. Benim tercihim TortoiseSVN'den yana.

Nasıl çalışıyor?

Tortoise SVN nedir

SVN üzerinde çalışma mantığı ise oldukça basit. SVN sunucusuna tanımlanan bir proje, çalışanlarda bulunan TortoiseSVN yardımıyla kendi bilgisayarına indiriliyor. Yani sunucudaki dosyaların birer kopyası çalışan insanlarda oluyor. Çalışan kişi dosyalarda istediğini değişikliği yaptıktan sonra TortoiseSVN yardımıyla dosyaları SVN sunucusuna atabiliyor. Böylece diğer çalışanlar SVN projesini güncellediğinde o kişinin yaptığı tüm değişiklikler onların da bilgisayarlarına yansıyor.

Eğer iki kişi aynı dosyada çalıştıysa ve bir şekilde çakışma yaşandıysa TortoiseSVN bu çakışmayı gidermek için elinden geleni yapıyor. Eğer değişiklikler dosyada aynı satırlarda değilse (mesela birisi en üstte, diğeri en altta çalışıyorsa), TortoiseSVN bunları rahatlıkla birleştirebiliyor. Eğer çalışma aynı satırlardaysa bu sefer bir uyarı alıyorsunuz ve size çakışan yerleri gösteriyor. Ancak birleştirme işlemini yapamadığı için size gösterdiği farklılıklardan birleştirmeyi sizin yapmanız bekleniyor, çok daha kısa süren bir işlem.

Kimler için?

İster bir ekip çalışması olsun, isterseniz tek başınıza çalışın her türlü web projesi için kullanmanız oldukça faydalı olacaktır. Versiyonlama sistemi saysinde çakışmaları engellediği gibi, geriye dönüp tüm yapılan değişiklikleri de görebiliyorsunuz. Bundan 2 ay önce yaptığınız, fakat kaybettiğiniz bir dosyayı SVN üzerinden çıkarmak oldukça basit.

Son olarak popüler çevirim içi geliştirme platformları SourceForge ve Google Code da SVN kullanıyor.

Microformats nedir?

SiberKültür benim için yazsın ısmarlama yazılar uygulamasının ilk meyvesi Microformats nedir yazısı olacak.

Bilgi, webde şu sıralar yönetilmesi en zor şey. Eğer böyle devam ederse gelecekte bir kaos görünüyor. Elimizde yığınla bilgi var, fakat bu ham bilgiyi düzenleyip, organize etmek oldukça zor. Sorun burada başlıyor.

Microformats

Microformats, bir topluluk olarak bu karmaşayı gidermek için kafa yoruyor ve bazı standartlar yaratıyor. Kullanılan dil yine HTML ve tüm web standartlarına uyuyor. Sadece verilerinizi girerken bazı formatlamalar yaparak microformats'a destek olabiliyor ve öncelikle bilgisayarların, ardından insanların bu bilgileri doğru yorumlayabilmesini sağlayabiliyorsunuz.

Örnek olarak, kurumsal sitenizde firma adres bilgilerinizi <p> veya <address> arasında yazabilirsiniz. Bunda bir sakınca yok, ancak bu veri bir arama motoru tarafından adres bilgisi olarak algılanamayacaktır. <address> içinde yazdığınızda dahi, neresi firma ismi, neresi telefon bilgisi bunu ayırt ettirebilecek bir isimlendirme mevcut olmadığı için bilgi anlamsız olacaktır.

Microformats burada devreye girerek bizlere oluşturdukları standartları kullanmamızı söylüyor. Böylece Microformats'ı yorumlayabilen uygulamaların (arama motorları, Firefox eklentileri) veriyi doğru yorumlayabilmesini ve kategorizasyonunu yapabilmesini sağlayacak.

Microformats Şeması

Örnek bir Microformats hCard

<div id="hcard-Eren-Emre-Kanal" class="vcard"> <a class="url fn n" href="http://www.erenemre.com"> <span class="given-name">Eren</span> <span class="additional-name">Emre</span> <span class="family-name">Kanal</span> </a>
<div class="org">SiberKültür</div>
<a class="email" href="mailto:e-at-deneysel.net">e-at-deneysel.net</a>
<div class="adr">
<div class="street-address">Adres satırım No: 13</div>
<span class="locality">Ankara</span> , <span class="region">Eryaman</span> , <span class="postal-code">06000</span> <span class="country-name">Türkiye</span> </div>
<div class="tel">0312 282 0000</div>
</div>

Bu örnekte benim bilgilerim id ve class'larla etiketlendi. Böylece bir arama motoru bu bilgiyi gerçekten yorumlayabilecek, neyin ne olduğunu anlayabilecek.

Microformats tipleri

Microformats şuanda 9 şablon oluşturmuş, 12 şablon üzerinde de çalışmakta.

  • hCalendar, belirli tarihlerde yapılan/yapılacak etkinlikleri (konferans, randevu, toplatı, vs) etiketlemek için kullanılıyor. Çevirimiçi hCalender yaratıcı.
  • hCard, kişisel/firma adres, telefon, e-posta ve benzeri bilgilerinizi yukarıdaki örnekte olduğu gibi etiketlemek için kullanılıyor. Çevirimiçi hCard yaratıcı.
  • rel="license", bir içeriğin lisans bilgilerini etiketlemek için kullanılıyor.
  • rel="nofollow", aslında bir çoğumuzun bildiği gibi bir bağlantıyı arama motorlarının takip etmemesini istediğimiz zaman kullanılıyor.
  • rel-tag, bir bağlantının etiket olduğunu ve bu etiketlerin toplandığı sayfayı belirtmek için kullanılıyor.
  • XFN, Xhtml Friends Network, yani XHTML arkadaşlar ağı bir bağlantı verirken, yazdığınız adresin sizinle olan ilişkisini etiketlemek için kullanılıyor. Yani ben SiberKültür üzerinde arkadaşımın bloguna bağlantı verdiğimde bu bağlantının sahibinin benim arkadaşım olduğunu belirtebiliyorum (veya aileden birisi, iş arkadaşım, okulan arkadaşım, vs). Çevirici XFN yaratıcı.

Genellikle en çok tercih edilen Microformats standartları bunlar. Daha fazlasını buradan, henüz taslak olanları ise buradan görebilirsiniz.

Microformats'ın geleceği

Microformats alacağı destek kesinlikle kaderini belirleyecek. Şu anda Technorati dahil bir çok web sitesi desteğini veriyor. Ayrıca Wordpress de destekleyenler arasında. Geleceğin anlamlı web üzerine kurulduğunu düşünürsek, Microformats anlamlı web içeriklerini etiketlemek adına önemli bir rol oynuyor olacak.

Apple'dan sonra şimdi 37signals de IE6'yı istemiyor

16 Haziran'da Apple yeni ürünü MobileMe'nin artık Internet Explorer 6'ya uyumlu olmayacağını açıklamıştı.

Bilmeyenler için MobileMe uygulaması PC, Mac, iPhone gibi birçok platform üzerinden bilgilerinizin senkronizasyonunu sağlayan bir servis. Dolayısıyla halen istatistiklerde %30 gibi bir oranın IE6 kullanıcısı olduğunu düşünürsek, Apple'ın attığı bu admın oldukça cesur olduğunu söyleyebilirim.

Ağustos 15 itibariyle, 37signals de Internet Explorer 6 desteğini kaldıracağını söyledi. 37signals, Basecamp, Highrise, Backpack, Campfire gibi birçok popüler web uygulamasının yaratıcısı firma. Özellikle Basecamp Türkiye dahil oldukça hatırı sayılır bir kitle tarafından proje yönetim uygulaması olarak tercih ediliyor.

2001 yılında çıkmış bir tarayıcı, Microsoft'un standartlaştırma hissiyatı içerisinde tam 7 yıl sonra halen büyük bir popülasyona sahipse bu şüphesiz Microsoft'un -iyi veya kötü- başarısıdır. Keşke aynı başarı en azından IE6'dan kurtulmak adına IE7 ile de gerçekleşebilse.

Adobe'dan çevirimiçi ofis

Adobe yakın zamanda çevirimiçi Photoshop dediğimiz Photoshop Express'i yayına sokmuştu. Halen geliştirilmeye devam edilen sistem, kullanıcılara verdiği 2gb alan üzerinde fotoğraflarını saklama ve çeşitli fotoğraf düzenleme işlemlerini yapma imkanı sağlıyor.

Adobe Acrobat.com programları

Adobe, web uygulamalarında kararlılığını sürdürüyor ve şimdi de PDF formatını web'e taşıdı. Acrobat.com sitesi üzerinde yayınlanan uygulama 5 farklı bölümde işlem sunuyor:

  1. Adobe Buzzword, Microsoft Word gibi metin belgelerinizi düzenlemenizi ve çevirimiçi olarak kaydetmenizi sağlıyor. Flash arayüzü üzerinde sistem yazı tipleri dışında estetik görünen Adobe yazı tipleriyle dökümanlarınızı oluşturabiliyor, düzenleyebiliyor ve başkalarıyla paylaşabiliyorsunuz.
  2. Adobe ConnectNow, bilgisayarınız üzerinden sunum gerçekleştirmek istediğiniz zaman size yardımcı oluyor. Dilerseniz ekranınızdaki görüntüyü, dilerseniz webcaminizdeki görüntüyü, yazılı ve sesli sohbet imkanlarıyla Adobe ConnectNow toplantınıza katılmış insanlarla paylaşabiliyorsunuz.
  3. Create PDF uygulaması belki de en çok sevinmemiz gereken uygulama. Çünkü Adobe, PDF dosyaları oluşturmanız için masaüstü Adobe Acrobat uygulamasını satın almanızı (veya 3. parti başka uygulamaları kullanmak da çözüm) istiyordu. Create PDF sayesinde -umarım şimdilik- 5 taneye kadar PDF dökümanını yaratabiliyoruz.
  4. Share, Acrobat.com üzerinde oluşturduğumuz herhangi bir dökümanı başkalarıyla paylaşmaya imkan sağlıyor. Özellikle dosyaları önizleme ve PDF dosyalarında Adobe Acrobat Reader olmadan aynı sayfada görüntüleyebilme özellikleri sayesinde oldukça kullanışlı.
  5. My Files ise tüm bu Acrobat.com üzerinde yapıp, kaydettiğimiz dökümanları organize etmemizi sağlıyor. Dosyaları ismine göre, oluşturan kişiye göre, tipine göre, boyutuna göre gibi bir çok şekilde sıralamaya ve önizlemeye imkan veriyor.

Tüm uygulamalar şuanda kişisel kullanım için bedava. Ancak ileride kurumsal kullanım için daha gelişmiş özellikler ve kapasitelerle ücretli planlar da olacak. Gelecek için düşünülen bir diğer özellik ise tüm bu yapılanlara Adobe Air uygulamaları sayesinde çevirimdışı olarak da erişebiliyor olacağımız.

Herşey çok iyi çok güzel ancak bazı uygulamaları Windows üzerindeki Safari'de çalıştırmak istediğimde "üzgünüz bu tarayıcı desteklenmemektedir" hatası almam oldukça üzücüydü.