.NET Geliştiricileri Aranıyor

Etiketler 16 gün 18 saat 23 dakika önce

i-want-you-flat

Bildiğiniz veya bilmediğiniz gibi son 3 senedir Netsparker yazılımının geliştirilmesi, dünya pazarına açılması daha iyi olması vs. gibi işlerle uğraşıyorum. Teknik ekibin çoğunun Türk olduğu bir yapı altında takım arkadaşlarıyla bir çok şey öğrendik.

Bu 3 sene içerisinde öğrendiklerimizden onlarca blog postu çıkar ama o konuya başka bir zaman girelim.

Az zamanda büyük işler başardık, Allah’ın izniyle HP, IBM gibi firmalarla karşı karşıya olduğumuz bir sektörde bilinen bir isim olduk, yüzlerce mutlu müşterimiz oldu, Netsparker Community Edition 100.000’den fazla download edildi! NASA, GE, DELL, EA Games, ING, Skype ve benzeri bir çok dünya firmasında yazılımımız aktif olarak kullanılmaya başladı. Dünyanın en büyük open source firmalarında güvenlik süreçlerine girdi.

Şimdi daha fazla büyümek istiyoruz ve onun için Türkiye’deki teknik ekibimizi genişletiyoruz.

5 sene önce Hayalet Çalışan diye bir yazı yazmıştım, kendi sektörde bir çok yerde çalışmış biri olarak kendi çalışmak isteyeceğim bir firma oluşturmaya çalışıyorum hep. Bizimle çalışmanın bazı avantajları:

Evden çalışmak
O her zaman taşınmak istediğiniz balıkçı köyüne taşınabilirsiniz.

Esnek çalışma saatleri
Belli ortak saatler dışında istediğiniz saatlerde çalışabilirsiniz, bugün keyfiniz yoksa çalışmak zorunda değilsiniz, keyfiniz gelince işinizi bitirebilirsiniz (Hafif ROWE tadında).

Paranın alabileceği en iyi donanım
Eğer bir şeye ihtiyacınız varsa söylemeniz yeterli. Bunun yanında i7 6 Core, 32GB RAM gibi test amaçlı kullanabileceğiniz harika sistemlerde elinizin altında. Gerektiğinde AWS Cloud gibi yapıları da kullanabiliyorsunuz.

Paranın alabileceği en iyi yazılımlar
Bir yazılıma ihtiyacınız varsa söylemeniz yeterli.

Diğer Ekstralar
Kitap, eğitim, konferans vs. eğer bir şey sizin kişisel gelişiminize veya işinize yardım olacaksa söylemeniz yeterli.

Size Özel
Küçük bir ekipte her türlü özel duruma, isteğe anlayış vardır. Mesela geçen sene ekipten bir arkadaşımız tüm Ramazan ayında tatil aldı.

Esnek ve Yeniliğe Açık
Ekibin her bireyi herhangi bir sürecin geliştirilmesine aktif müdahale edebilir. Mesela daha önceden 2 ay boyunca haftada 4 gün çalışmayı denedik, çalışma saatlerini tamamen serbest bıraktık vs. Özetle esnek ve açık bir yapıya sahibiz, dogmatik fikirlerin olmadığı bir ortamda yaşıyoruz.

Süper Teknik Ekip
Web güvenliği konusunda dünyada çalışabileceğiniz sayılı yerlerden biri burası ve bilgi paylaşımı konusunda tamamen açık bir ekibe sahibiz.

splash[1]

Ürün Firması
Sadece tek bir ürün geliştiriyoruz ve başka hiç bir servisimiz yok. Tüm dünyada satılan, on binlerce aktif kullanıcısı olan bir ürünün parçası olacaksınız, özellikle danışmanlık firmalarından sıkılanlara bildirilir.

Gittiğiniz bir konferansta tanıştığınız insanların yazılımınızı kullanıyor olma ihtimali, stackoverflow’da bir soruya üzerinde çalıştığınız yazılımın cevap olarak yazılması ya da LinkedIn’de baktığınız bir kişinin CV’sinde deneyimli olduğu yazılımlar arasında çıkma ihtimali de popüler bir ürün geliştirmenin gizli avantajları arasında.

Transparan
İçinde açık bir firmayız, hemen hemen tüm bilgilere çalışanlar ulaşabilir ya da sorabilir. Bugün satış yaptık mı? Siteye kaç ziyaretçi geliyor? Demo kullanıcılarının kaçı İstanbul’dan? Firma, ürün ve süreç konularında herkesin fikir hakkı olduğu gibi bilgilere ulaşma hakkı da var.

Full Time Q/A Testers
Evet, yazdığınız kodun doğru çalıştığını sizden başka test edecek kişiler de var ekibimizde!

Hala buradaysanız ve bu ilginizi çekiyorsa aranılan pozisyonun detayları ve işe nasıl başvurabileceğiniz şurada:

.NET geliştirici pozisyonuna birden fazla kişi alınacak ve hemen başvurabilirsiniz.

Bu Yazılar Kaçmaz
Why platform matters in web application security?
Ücretsiz Web Güvenliği Tarayıcısı

Hayat, Bahama Adaları, Balıkçı Köyünde Yaşamak

Etiketler 28.11.2011

Cable Beach - NassauBlog yazmaya ara verdiğim en uzun süre buydu sanırım. İşlere odaklanırken kafayı yememek için hayatımdaki bazı şeyleri listemden çıkartmıştım, bunlardan biri de blog yazmaktı. Sizin haberiniz yok, blog yazmadığım sürede çok olay gelişti.

Son altı ayı Bahama Adaları’nda geçirdim, başkent Nassau’daydım. Adanın kuytu köşelerinden birinde klasik “Balıkçı Adasında Yaşama” teorisini test ettim. Hani şu kuytu adada tek başına yaşadığın, bir şey almanın gereksinim olmadığı, koşuşturmaca olmayan yerde yaşam sürmek. Hani şu işinizi yaptıktan sonra güneş kaçmadan sahile inebileceğiniz ve pembe kum – turkuaz okyanusun tadını çıkartma potansiyelini içeren yerde olmak. Hani şu etrafınızda hiç bir şey olmayan yerde Facebook olmadan, minimum Twitter ile yaşamak.

Nassau klasik Karayipler. İklimi, yolları, agaçları, insanları. İlk geldiğinizde kendinizi Küba’da çekilen bir filmde hissediyorsunuz, bahçenizden ananas yemek gibi sürreal deneyimler yaşıyorsunuz.

Altı ay sessiz sakin Bahamalar’da yaşadım, dünyanın en güzel sahillerini gördüm, yeni bir kültür tanıdım, conch salatası yiyip, Bob Marley dinledim. Cuma namazlarında Bahamalı müslümanlarla sohbet ettim, basket oynadım, komşuyla spearfishing’e gittim. Harika yeni arkadaşlar edindim, güneş gözlüğünü favori aksesuarım yaptım, 5 ay saçımı kestirmedim, turist şapkamı takıp jet-ski’ye bindim. Adadan sıkılınca Las Vegas’a (Black Hat için) gittik, Florida’ya gittik. Hatta ve hatta Hurricane Irene’i de gördüm. Sağ çıktığım doğal afet listesine kasırga’yı da ekledim, Allah başka göstermesin.

Balıkçı Köyünde Yaşam

İtiraf etmem gerekli ki Nassau bir balıkçı köyü değil ama benim bulunduğum kısmı daha sakin tarafıydı, bir de bu durum benim yaşam stilim ile birleşince balıkçı köyü hissiyatını aldım. İşin ironik kısmı şudur ki bu balıkçı köyü fantazisi tamamen fantazi. Şehirde büyümüş veya bir süre yaşamış birinin hayattan basit beklentileri bile o kadar yüksek ki maalesef güzel bir sahil bu açığı kapatamıyor. Ben hep kendimi Beliz ya da Karayipler’deki tuhaf bir adada yaşadığımı hayal ederdim ama o sadece bir fantaziymiş, gerçekte bu tip bir yerde altı aydan yaşamak herkesin harcı değil. O yüzden sizinde böyle fantazileriniz varsa bir gözden geçirin. Veni, vidi...

NYC

İnşallah Çarşamba günü New York’a gidiyoruz, sanırım İstanbul, Londra’dan sonra Nassau’yu denemek saçma bir fikirdi, bakalım Manhattan bu seriyi nasıl takip edecek.

Bahamalarda geçirdiğim vakitte çok şey öğrendim, hayallerine ulaşmanın mümkün olduğunu ama hayallerini doğru seçmenin gerektiği, insanın aslında ne istediğini çoğu zaman bilmemesi, Martı Jonathon olmanın kolay olmadığı.

İyisiyle, kötüsüyle bir maceranın daha sonuna geldik, yeni maceralara yelken açtık.

Beni mi Bağlar Ferruh?

Bağlamaz değerli okur sen de haklısın, bir gün gelecek senin de ilgini çeken şeyler yazacağım. Bu süre içerisinde senin ilgini çekecek şeyler de öğrendim. İş hayatını öğrendim, Predictably Irrational gibi acayip süper kitaplar okudum, hatta inanmayacaksın ama SEO konusunda bile söyleyeceklerim var. Belki bir gün bunlar hakkında da yazacağım, belki bir gün bu siteyi açtığınıda, RSS güncellendiğinde benim geyiğe bağladığım bir yazıyı değil de aylardır görmek istediğin o teknik konuyu göreceksin, bir gün o da olacak sevgili okur, bir gün o da olacak...

Mutluluğun Anahtarı: Umursamamak

Etiketler 30.04.2011

Sanırım 30 yaşına merdiven dayamış olmak, 10 yıldır evli olmak gibi faktörler kendimde belli arayışları tamamlamama yardımcı oldu. “Yolun yarısına geldim hala belli temel şeyleri çözemedim” dememek için son üç beş senede hayatınızı değiştirecek 62 öneriler gibi bir dizi kısa sonuca vardım.

Mutlu olmayı da bu süreçte çözdüm ve çözümün aslında ne yapmakla değil ne yapmamakla alakalı olduğunu farkettim. Umursamamanın üç boyutu var, izolasyon, göz ardı etmek, tevekkül.

İzolasyon

Bu benim düzenli olarak bahsettiğim konulardan biri, haber, spor, politika, popüler medya, gündem, trend vs. sizi mutlu eden hobilerinizden değilse bunlardan izole kalmak en verimlisi. Japonya’ya bir şekilde yardım etmiyorsanız ve yardım etme durumunuz yoksa oradaki depremi takip etmenin bir anlamı yok. Genel  kültür çağımızın en büyük yalanı. Olabildiğince izole olmak hayatı daha kolay hale getiriyor. Sosyal ağlarda bu kategoride ve maalesef ben hala onlardan tam kopamadım.

Göz ardı etmek

İzolasyonu hep biliyordum ama pratik şekilde uygulamaya son senelerde yoğunluk verdim, göz ardı etmek ise çok daha yeni keşfettiğim şeylerden. Uygulaması çok basit, size gelen şeyleri göz ardı ediyor ve hiç bir şey yapmıyorsunuz.

Mesela birisi size bir email gönderiyor, email’ın sonu iyiye çıkacak bir şey değilse herhangi bir cevap vermek yerine hiç cevap vermiyorsunuz, oradaki “Delete” butonunu boşuna konulmamış, bir amacı var. Mesela biri size salak bir soru soruyor, soruyu cevaplamıyor, göz ardı ediyorsunuz. Daha da ısrar ediyor, direk o insanı göz ardı ediyorsunuz. Telefonunuz çalıyor, cevap vermek istemiyorsunuz ve cevap vermiyorsunuz. Bu kadar basit. İnsanları, olayları, hatta çok aktif içinde bulunduğum durumları bile göz ardı edebileceğimi keşfetmek çok büyük bir şeydi benim için. Göz ardı ettiğiniz herşey için, hiç bir şey yapmıyorsunuz, hiç bir şey düşünmüyorsunuz ve hiç bir efor harcamıyorsunuz.

Tevekkül

Neyi kontrol edip, neyi kontrol edemeyeceğini bilmek. Yapabileceğinizi en iyi şekilde yapın, gerisi sizin elinizde değil. Kasmanın, tekrar tekrar aynı konular üzerinden geçmenin, her olasılığı irdelemenin hemen hemen hiç bir faydası yok. Bunu idrak etmek benim için çok uzun sürdü, hala beceremiyorum ama inşallah bir gün bu konuda daha da iyi olacağım.

Bunları yaptığınızda hayatınızın ne kadar hızlı ve güzel değişebileceğini düşünün… ve yapın.

IstSec 11

Etiketler 24.04.2011
istsec_1

IstSec ‘11 İstanbul Bilgi Güvenliği Konferansı 3-4 Haziran’da İstanbul’da yapılacak. Bu sene maalesef ben katılamayacağım ama Netsparker ekibinden arkadaşla orada olacak inşallah.

Mekan: Bilgi Üniversitesi Dolapdere Kampüsü

Konferansın bu seneki ana teması “Yeni teknolojiler, yeni güvenlik riskleri” imiş.

Daha detaylı ve katılım bilgisine IstSec sitesinden ve LifeOverIP sitesinden ulaşabilirsiniz.

Startup Fikri Bulmaca

Etiketler 20.03.2011

İnsanların yeni ürünler için fikirler bulamıyor olması bana çok ilginç geliyor. Her gün kullandığım yazılımlardan en az %50 si kötü, yanlış ya da tamamen saçma, eğer bunlardan bir tanesini bile daha iyi yapabileceğinizi düşünmüyor, eğer bu sorunların bir tanesini bile daha iyi çözebileceğinizi düşünmüyorsanız zaten ortada başka sorunlar var.

Biz firmada bir süredir SalesForce müşteriyiz, SalesForce o kadar iğrenç, 90’lardan kalma bir yazılım ki SalesForce yerine Excel ile CRM yapmak bize daha mantıklı geliyor, nitekim biz de SalesForce’u bırakıyoruz. SalesForce sadece iğrenç bir yazılım değil aynı zamanda “süper-kapitalist” firma imajının altını doldurabilen firmalardan. Kendi ürünlerinin kötü olduğunu bildiklerinden SalesForce’a aylık ödeme yapamıyorsunuz, yıllık anlaşma yapmak zorundasınız. Bunun nedeni bariz olarak bizim gibi bir çok firmanın onların ne kadar kötü olduğunu hemen anlaması ve hesaplarını 1-3 aydan sonra kapatıyor olmalarıdır.

Birine ben CRM yazıp satacağım deseniz muhtemelen size “Manyak mısın? Onlarca CRM yazılımı var piyasada.” der. Gel gör ki 2009’da Bantam Live bunu yaptı ve iki sene içerisinde başka bir firma tarafından satın alındı. O kadar bariz bir şekilde iyiydiler ki ben Kasım 2010’ da ben piyasadaki en iyi CRM yazılımlarından biri olacağınız yazmıştım. Gidip şu an SaaS CRM çözümü bulamaya çalışırsanız karşınıza 2-3  tane kabul edilebilir kalitede CRM çıkıyor ve hepsinin CRM’e bakış açısı farklı. Dünyada kaç firmanın CRM’e ihtiyacı olduğunu düşünürseniz CRM yazılımı yazmamak ya da CRM ile ilgili çözümlerde çalışmamak direk saçma gibi.

Yeni bir şey bulmanıza gerek yok, yapılmamışı yapmanıza gerek yok, sadece daha iyi yapmanıza gerek var*

Ben her gün kullandığım web siteleri, yazılımlara bakınca ağlamakla sinir krizi geçirmek arasında gidip geliyorum. Kaliteli yazılımlar kullandıkça, kalitesizliğe toleransınız azalacak, toleransınız azaldıkça bunları kullanırken daha çok acı çekeceksiniz, bu acıları dindirdiğiniz an elinizde yeni bir ürün var demek.

*Aslında bazen buna da gerek yok ama bambaşka bir blog konusu

Korkuları Yenmek

Etiketler 12.03.2011

Genelde arkadaşlar konferanslarda konuşma vs. konularında konuşurken benim çok cesur olduğumu söylüyor. Aslında bunun cesaret ile pek alakası yok, olay tamamen alışmak.

Benim Hakkımda Bilmediğiniz ve Bilmek İstemeyeceğiniz 5 Şey de yazdığımı gibi alfabenin sadece 28 harfini kullanabilenlerdenim. Yaşınız 28 olunca “R“ leri söyleyememek ciddi bir sorun olmuyor* ama yaşınız 13 iken “R” leri söyleyemiyorsanız hayatınız o kadar kolay olmuyor, sınıfın karşısında konuşmayı sevmiyorsunuz, yeni insanlara isminizi yanınızdaki birinin söylemesi gerekiyor, insanlara küfrederken bile kurduğunuz cümleler kulağa komik geliyor. Bu durumda topluluk karşısında konuşmaktan otomatik olarak korkuyorsunuz. Dolayısıyla benim için topluluk karşısında konuşmak ilk başlarda çok zordu.

Bu ve benzeri aslında korkutucu olayların üzerinden gelmek için iki şeye ihtiyaç var:

İlk Adımı Atmak

Genelde bir şeyi planlamak değil yapmak korkutucui bungee jumping yapmak için bilet alırken korkmuyorsunuz ama atlarken ödünüz gereksiz şeylere karışabilir. Gel görki o bileti aldıysanız son dakikada caymanız çok daha zor olacak. Dolayısıyla gidin o bileti alın, bir konferans’ta konuşmaya karar verin ve herşeyi planlayın, kendi işinizi kuracaksanız gemilerinizi yakın, istifa email’ini yazıp “Send” tuşuna basın.

Yapmak istediğiniz şeyden eminseniz yapmanın ne kadar zor olacağını düşünmeyin ve sadece ilk adımı atın.

Olabilecek En Kötü Şey?**

Eğer gidip 1000 kişinin karşısında konuşmayı beceremezseniz olabilecek en kötü şey nedir? Rezil olmak? Komik duruma düşmek? Gerçekten bunların bir önemi var mı? Bu kadar basit bir kaç şey yüzünden istediğiniz bir şeyi ya da uzun vadede işinize çok yarayacak bir şey yapmayacak mısınız?

Bunu zaten 1-2 defa yaptığınızda korkularınızın yersiz ve saçma olduğunu tamamen anlıyor, olaya alışır hale geliyor ve o korkunuzu yenmiş oluyorsunuz.

JFDI.

 

* İngilizce konuşurken böyle bir derdimin olmaması güzel bir olay ama isim sorununu hala çözemedim :)
** Bungee Jumping olayı için bu mantık ile düşünmek pek yardımcı olmayabilir :) Malum olabilecek en kötü şey 127 parçanızın olay yerinden toplanacak olması.

Startup, Ürün, Reklam ve Para ama özellikle Para

Etiketler 04.03.2011

Diyelim ki bir fikriniz var, hayata geçirdiniz ve şimdi de bunu ticari bir şekilde satmaya başladınız.

Buraya kadar herşey basit, web sitesi geliştirmek kolay, kod yazmak kolay, ürünü piyasaya çıkarmak kolay, bedava bir şeyler vermek te kolay ama size para ödeyen müşterilere sahip olmak zor. Ya da yeterli sayıda müşteriye sahip olmak zor.

Startup ve Rakamlar

Firmanızda bilmeniz ve takip etmeniz gereken rakamlar;

Aylık Gider (burn rate)
Host masrafı, maaşlar, ofis giderleri, rutin ekstralar, reklam gideri, kullandığınız servisler, yıllık lisans ücretlerinin aylık ortalaması vs. Özetle her ay bankadan çıkmasını beklediğiniz para.

Aylık Gelir
İşin başında bilmediğiniz (iş planlarının feci derecede sıçmasının ana nedeni) ama her ay topladığınız data ile tahmin kalitesini yükseltebileceğiniz bir rakam.

Örnek olarak son 6 ayda 100$’dan 120 ürün sattıysanız aylık geliriniz (120/6)*100$=2000$’dır. 6 aydan daha çok süredir satış yapıyor olsanız bile son 6 ayı almak genelde daha sağlıklı sonuç verecek çünkü tanınma oranınız genelde hızlı bir şekilde yükseliyor olacak ve 1-2 sene önceki rakamlar şu an gidişatı tam yansıtmayacaktır.

Beklenen Büyüme Oranı
Genelde satışlara baktığınızda bir ivme göreceksiniz, eğer yukarı doğru bariz bir trend yoksa zaten ciddi bir sorun var demek, eğer beklendiği gibi bir yükseliş varsa iyi bir yoldasınız demek. Bu trend kendi başına çok anlam ifade etmiyor olabilir özellikle internet dünyasının hızı ve iniş çıkışları düşünülünce dolayısıyla yeni bir yatırım yapacakken buna çok bel bağlamayın, gerçek data ile hesaplanmış Aylık Gelir üzerinden çalışın. Hayal kurarken buna istediğiniz kadar yüklenebilirsiniz :)

Satış Tüneli

İnternet üzerinden ürünü genelde 3 adımda satarsınız,

1. Müşteri siteye gelir

2. Ücretsiz Üye olur

3. Para Öder ve Ücretli Üye Olur

Burada 1.000.000 tane 2. Adıma gelmiş müşteriniz olabilir ama bu para kazanıyorsunuz anlamına gelmez (maalesef üye olduklarından dolayı ama hiçbir zaman paralı üye olmadıklarından dolayı para kaybetmenize bile neden olabilir. Reklam vs. gibi community üzerinden para kazanan firmalar hariç). Önemli olan müşteriyi gerçekten para kazandıracak adıma getirmek.

Aşağıda örnek 1000 ziyaretçiden kaç kişiye satış yapabileceğinizi gösteren bir tünel var. Buradan anlaşılması gereken şu sitenize gelen 1000 ziyaretçinin 33 tanesine satış yapabiliyorsunuz.

clip_image002

Eğer ürününüz çok ucuz değilse (<10$) hemen hemen her zaman bir 3 adımlı bir tünel var demek. Ziyaretçi > (Deneme/Okuma/Başvruma/Ligth Version) > Satın Alma

Yukarıdaki grafikterki iki rakam önemli,

Üye Conversion’ı ve Satın Alma Conversion’ı. Özetle ürün fiyatınız 100$ ise bu örnek conversion oranları ile 1000 ziyaretçiden 33*100=3300$ kazanacaksınız. Bunun anlamı sitenize 1000 ziyareçi çekmek için 3300$ a kadar para harcayabileceğinizdir. Tabii ki burada kar oranını ve bir müşterinin size hayat boyu getirisini hesaplamanız gerekli.

Mesela her ürün sattığınızda AWS üzerinde yeni bir cloud sistemde kod çalıştırıp 10$ harcıyorsanız maksimum harcayabileceğiniz rakam (100-10)*33=2970$ olmalı. Ama aynı zamanda bir müşterinin size hayat boyu kazandıracağı para (mesela aylık bir servis ise ya da ek servisler satma şansınız varsa) ortalama 250$ ise o zaman ürünün sadece ilk üyelik ücretini değil bu hayat boyu kazandıracağı ücrete göre hesap yapmanız lazım.

Bu örnekteki ziyaretçiden satışa conversion oranınız ise şu şekilde: 0.12*0.28=%033

Bu oranların hepsini takip edip bulmanız gerekli, bunları verimli tahmin etmek genelde mümkün değil. Conversion oranlarını takip edebilmek için Adwords, Google Analytics, GetClicky gibi ürünleri kullanabilirsiniz.

Satışı Arttırma

Birkaç temel konuyu yazdıktan sonra esas olaya gelelim, elinizde rakamlar var, yukarıdaki oranları da buldunuz. Aylık ne harcadığınızı, ne kazandığınızı, büyüme oranınızı, conversion oranlarını biliyorsunuz. Nasıl daha çok satabilirsiniz?

Yukarıdaki tünele bakarak şunu anlayabiliriz, tünelde ya ilk adımın rakamını yükselteceksiniz (yani daha çok ziyaretçi çekeceksiniz) ya da 2. veya 3. adımdaki conversion oranını yükselteceksiniz.

Tünelin Ağzı, Daha Fazla Ziyaretçi

Otomatik olarak aklınıza şunlar gelecek:

  • Adwords / Banner ve benzeri reklam yöntemleri
  • “Ücretsiz” Inbound Marketing ( blog vs.) / Sosyal Medya

Bunlar kesinlikle önemli ama unuttuğunuz bir şey var

  • ÜRÜNÜN KENDİSİ

Adwords vb. CPC tabanlı reklam

Adwords, Banner reklam gibi klasik reklamcılık yöntemlerinde ROI hesabı basit bir iş, tıklama başına 2$ ödediniz, 1000 tıklama satın alıp, 2000$ verdiniz, gelen tık sayısını ziyaretçiden satışa conversion oranınızla çarpın 1000*0.033=33 kişi satın alacak, bunu da müşterinin hayat boyu kazandıracağı para ile çarpacaksınız.

2$ CPC den 2000$ lık internet reklamı yatırımında (33*100$)-2000$=1300$ kar ediyor olacaksınız. Dolayısıyla bir müşteriyi bu conversion oranı olan bir reklam kanalından kazanabilmeniz için harcamanız gereken para:
(1/Müşteri Conversion Oranı)*CPC
(1/0.033)*2$ = 60$

Farklı reklam kanallarının conversion oranları ve CPC oranları değişebilir, dolayısıyla farklı kanalları deneyin ve ona göre hangi kanal en iyi çalışıyorsa oraya daha çok para yatırın. Bu farklı kanallar içerisinde farklı reklam metinlerinin de conversion kalitesinin değişebileceğini unutmamak lazım, o yüzden Adwords’de de birden farklı reklam metnini deneyip hangisinin daha iyi conversion oranı sağladığını saptamak mantıklı bir hareket.

“Ücretsiz” Inbound Marketing / Sosyal Medya

Herşeyden önce “ücretsiz marketing” diye bir şey yok, bu sadece bir şehir efsanesi. Henüz kimse “ücretsiz marketing“ ile tanışmadı, olduğu iddia ediliyor, hep bir arkadaşın bir arkadaşı ücretsiz marketing yapmış oluyor…

Teorik olarak sosyal medyada reklam yapmak, blog yazmak, SEO ile ziyaretçiyi çoğaltmak ücretsiz gibi gözükse de ücretsiz değil. Ücreti sizin değerli vaktiniz ve vakit bir internet startup’ının en az elinde olan şeylerden bir tanesi hatta ilk aylarınızı geride bırakmışsanız muhtemelen vakitten çok paranız var demek.

Dolayısıyla SEO, sosyal medya, blog vs. vs. gibi reklam kanallarını kullanırken elinizdeki limitli vakti başka işler yerine bunlara yatırdığınızı bilin, bunun sonucunda ürünü daha az geliştirebildiğinizi, müşteri desteğini geciktirdiğinizi, dokümantasyondaki sorunları düzeltmediğinizin bilincinde olun. Eğer değer hesabı olarak bu kanallardan reklam yapmak mantıklı ise o zaman yapın. Ama sakın o hayatının 18 saatini twitter’da her haltı twitleme ile geçiren ve “Doçent Sosyal Medya Uzmanı” ünvanını kendine yapıştıran arkadaşın “ücretsiz” reklam hikayelerine inanmayın.

Tünelin Devamı, Giriş Adımı

Bu tüneldeki ikinci adım, bir nevi müşteriye kanca attığınız adım. Ürünün demosunu download etmek olabilir ya da ücretsiz üyelik olabilir. Bu adım genelde öyle bir adımdır ki müşterilerinizin %95’i bu adımdan geçer.

Kaçınız hiç kullanmadan Photoshop lisansı satın aldınız? Ya da kaç kişi daha hiç LinkedIn’e üye olmadan LinkedIn PRO satın alır? Sıfır.

Ziyaretçiden bu adıma geçerken ki conversion oranını yükseltmek için yapılması gereken şey üründen ürüne ve siteden siteye çok farklı. Muhtemelen yapılabilecek en iyi şey yapabildiğiniz kadar A/B Splitting yapmak ve gerçek müşterileri izlemek, rakamlar yükselene kadar bu döngüyü devam ettirmek.

Tünelin Sonu

İkinci adımdaki ürününüzü denemeye karar veren kişileri gerçekten para ödeyen müşterilere çevireceğiniz bu üçüncü adımdaki en önemli faktör kesinlikle ürünün kendisi.

Eğer ürün gerçekten dandikse buraya kadar zar zor getirdiğiniz potansiyel müşterilerin bir çoğu deneme süresinden sonra çekip gidecek. Eğer buradaki oran düşükse ürünün kalitesi ve buraya kadar gelen müşterilerde oluşturduğunuz beklentiler üzerine ciddi şekilde düşünmeye başlamalısınız.

Ürün

Satışı arttırmak için tüneldeki üç adımdan birini arttırmanız gerekiyor, burada en mantıklı adım ürün adımı yani ürünün kensini geliştirme. Ürünü geliştirmek sadece “yeni özellikle eklemek“ demek değil hatta bazen özellik çıkarmak anlamına geliyor.

Ürünü geliştirmenin bariz ikinci adımdan üçüncü adıma geçerken ki faydaları harici birinci adıma yani daha fazla ziyaretçi çekme adımına da ciddi bir katkıları var.

Ürünün güzel olması insanların birbirlerine tavsiye etmesi anlamına geliyor, bu da daha çok ziyaretçi anlamına geliyor hem de bunların conversion kalitesi daha yüksek ziyaretçiler olması mümkün, bunun anlamı ürünün kalitesinin tüm tünel adımlarını etkiliyor olması.

Bununla da yetinmeyip ürün kalitesi sosyal medya, blog gibi ortamlarda otomatik reklama neden olacak. Ürününüzü çok seven kullanıcılar twitter,linkedin gibi yerlerde ürünü tavsiye edecekler hem de bu kanallar sizin firmanız tarafından oluşturulmadığından etkisi daha çok olacak. Her ürünün buradan alacağı nasip farklı, B2B uygulamaları bu işten daha az verim alacakken B2C uygulamaları her zaman “viral” olma ihtimalini taşıyor olacak.

Son bir rakam

Son olarak birkaç diğer takip edilmesi faydalı rakam,

Ölüm Günü
En önemli rakamlardan biridir,
Kaç Yaşayacağınız = Bankadaki Nakit Para / (Aylık Gider - Aylık Gelir)

Mesela bankada 10000$ varsa ve ayda 2000$ gelir, 3500$ gider varsa, 10000/(3500-2000)=6.6 ay sonra paranız bitecek demek. Bu rakam eksi ise, Oooo Happy Day….

Daha öncelerden siteden yazmadığım bir konuda konuşma hakkımı kullanarak yazmak istedim, bu bahane ile aylar sonra bir blog yazmış oldum.

AnkaSEC '10 - Ankara Bilgi Güvenliği Konferansı

Etiketler 09.12.2010

AnkaSEC 2010’dan haberi olmayan arkadaşlara duyurmak amaçlı:

Türkiye'de eksikliği hissedilen ürün/teknoloji bağımsız güvenlik  anlayışına katkı amacıyla her yıl Bilgi Güvenliği AKADEMİSİ tarafından Aralık ayında gerçekleştirilen  Ankara'ya özel Bilgi Güvenliği Konferansı AnkaSEC bu yıl 23 Aralık'da Tubitak'ın ev sahipliğinde yapılacak.

Türkiye'nin her köşesinden konusunda söz sahibi bilgi güvenliği uzmanları ve BT meraklılarını buluşturacak olan AnkaSEC '10 bu yıl "Güvenlik lüks değil, gereksinimdir" ana temasıyla gerçekleştirilecek.

Konferans Programı:
Konferans boyunca sanallaştırma güvenliği, bulut bilişim güvenliği, siber istihbarat toplama yöntemleri, adli bilişim analizi , mobil telefon güvenliği, yeni nesil tehditler ve çözüm önerileri, ve yeni nesil hacking yöntemleri gibi konular yer alacaktır.

Konferans programı http://www.ankasec.org/?page_id=24 adresinden edinilebilir.

Etkinlik Sponsorlarımız:
AnkaSEC '10 Bilgi Güvenliği Konferansı HP, Verisign, Microsoft, EnderSYS, Labris, Kaspersky,  ADEO , Teknoloji Bilgilendirme Platformu ve Bilgi Güvenliği AKADEMİSİ sponsorluğunda gerçekleştirilmektedir.
Katılım & Kayıt:
Konferansa katılım ücretsiz olup kayıt yaptırılması gerekmektedir. http://www.ankasec.org/regform.html adresinden kayıt işlemi tamamlanabilir.

İletişim:
Konferansla ilgili tüm geribildirimler için web sayfamızdaki iletişim formunu kullanabilirsiniz.

Katılımcılara konferans katılım belgesi dağıtılacaktır.

Ulaşım:
TÜBİTAK Başkanlık Binası
Feza Gürsey Salonu
Tunus Cad. No:80
Kavaklıdere / Ankara

AnkaSEC Düzenleme Kurulu
http://www.ankasec.org

Ek olarak Netsparker takımından Onur Yılmaz’da orada olacak ve 2 tane de Netsparker Professional hediye edeceğiz.

Okuduklarım

Etiketler kitap, book, kindle, 14.11.2010

Drive: The Surprising Truth About What Motivates Us by Daniel H. PinkSon 6 ay süresince çok fazla kitabı yarım-yarım okudum, geçen gün gaza gelip kendime bir de Kindle edindim, öyle olunca Kidnle’ın tadını daha çok çıkarabilmek için elimdeki yarım kitapları bir an önce bitirmeye çalışıyorum.

Şu an yarısında kaldığım 3 kitap var:

Drive zevkli bir kitap zaten bitirmeme az kaldı, özellikle psikoloji ile ilgileniyorsanız gayet keyifli gelebilir. Coders at Work, Founders at Work’ün aksine dandik bir kitap çıktı (sanırım bunun nedeni programcıların genelde girişimcilerden daha sıkıcı insanlar olması). Henüz çok okumadım çünkü okuduğum kadarının geneli çok sıkıcıydı. Gene de bir defa daha zorlayacağım. The Undercover Economist bayağı ilginç bir kitap, özellikle benim gibi ekonomi temeli sıfır olan biri için gayet faydalı da. Onun da sonlarına gelmiş durumdayım zaten.

Yakın dönemde de şunları okuyup bitirmiştim:

Ek olarak başlamaya hazır kitaplıkta bekleyen bir sonraki okuyacaklarım;

dün de şu kitabın ilk bölümünü okudum

Gayet hoşuma gitti, onu da okuma listeme aldım. Okunacak listemdeki son kitap ise, 50 Great Myths of Popular Psychology.

Bu arada not düşmem lazım Kindle kitap dağıtım modeli ve Electronic Paper dikesinlike kitap sektörünün geleceğini şekillendiriyor. Sanırım bir noktada iPad / Electronic Ink Display arası güzel cihazlar kullanıyor olacağız.

Fikir - Açık Todolist

Etiketler fikir, idea, web20, 07.11.2010

EpicWin iPhone için geliştirilmiş zekice bir todo list uygulaması. Yapılacak listenizi oluşturuyor sonra da yaparak puan kazanıyorsunuz, arka planda da RPG havasında bir hikaye devam ediyor.

Todo List olayının ne kadar önemli olduğunu biliyoruz, aynı zamanda bir şeyleri tamamlamanın ve bunun karşılığında hızlı şekilde sanal dahi olsa bir başarı hissi almanın bağımlılık edici olduğuna da biliyoruz (bakınız XBOX Achievements, FourSquare vs.), açık bir şekilde blog gibi yerlerde bir şeyi yapacağınızı ilan etmenin o işin tamamlanmasına pozitif etkisi olduğunu da biliyoruz. Bütün bunları birleştiren basit bir uygulama olsa mesela ne güzel olurdu.

Küçük bir web sitesi, insanlar yapılacak listesiniz yazacak, daha sonra bunları tamamladıkça hem EpicWin / FourSquare / Stackoverflow tadında bir puan toplama olacak hem de bu tüm yapılacak listesi güncellemeleri de Facebook/Twitter/Blog Widget’ları gibi yollar ile açık şekilde gözükebilecek ve takip edilebilecek.

Özetle EpicWin’i web’e koyup, üzerine sosyal ağ etkisini yapıştırmak lazım. Bundan sonrası zaten zekice gelişebilir, mesela basit keyword analizler ile en popüler listeler ortaya çıkabilir ya da ünlü bir kaç celebrity/web celeb’in listelerini featured todo list’ten insanlar izleyebilir. Hatta sistem open source yazılımların road map’lerinin takibi için bile kullanılabilir.

The Social Network

Etiketler film, movie, social-network, web20, zucky, 04.11.2010

Son zamanlarda ciddi sayıda kötü film izledim ama The Social Network kesinlikle herkesin dediği gibi süper bir film. Şiddetle tavsiye edilir,her güzel hikaye gibi gerçek ile kurgu iç içe ama kesinlikle izlenesi.

Sadece film'e dayanarak Mark hakkında hem iyi hem de kötü duygular oluşuyor içinizde

Hayat 2.0

Etiketler 03.11.2010

Sosyal medyanın gelişmesi ile insanlar herşeyi paylaşır oldu, ne yaptıkları (twitter), ne gördükleri (flickr,youtube), ne okudukları (librarything), ne yedikleri (mekanist), nerede oldukları (four square) ve kimle birlikte oldukları (facebook)…

Bazılarına bu tuhaf, saçma, hatta aptalca gelebilir ama aslında bu benim seneler önce ilk blog yazmaya başladığımda aklımdaki şeydi. İlk sitemi yayınladığımda (~11 sene önce) ve daha sonraları blog yazmaya başladığımda (~8 sene önce) benim de aklımda hep bu vardı, o zaman çok ütopikti şimdi ise gerçek. İnsan belli şeyleri paylaşmanın tadına varınca daha fazlasını istiyor.

Psikolojik olarak durumun açıklamasını yapacak bir bilgim yok ama muhtemelen bunlar bilinme arzusu ve kendini ifade etme arzusunun sonuçları. Belki gözden kaçırdığımız şey 10 kişi bunu yaparken iyiydi ama 10 milyon kişi bunu yapınca o kadar anlam ifade etmiyor faktörüdür. Bu da otomatik olarak sosyal medyayı 3 bölüme ayırdı. Geyik yapan arkadaşlar ve onları takip eden diğer geyik yapmak isteyen sanal ya da gerçek dünyadan arkadaşları. Sosyal medyayı diğer benzer profesyoneller ile birlikte iletişimde kalmak, kariyer, bilgi vs. konusunda yukarıda olmak isteyenler, bir de son olarak sosyal medyayı tamamen inbound marketing amacı ile kullananlar. Bir de not düşmek lazım pek aktif olarak katılmayan ama sadece kendine başarılı bir figür olarak gördüğü ya da tarzını, bilgisini beğendiği insanları takip eden bir grup var ki bunu da kariyer / bilgi grubunun içerisine sokabiliriz. Inbound tayfası ile kariyer tayfası birbirine çok yakın ve hatta bazen iç içe olduğundan onları kategorilere ayırırken dikkatli olmak lazım.

Benim yıllar önce aklımda olan şey çok dağılmış bir şekilde oluştu, benim kafamda ki şu şekildeydi:

  • Blog’a widgetlar eklenir
  • Tray de çalışan bir uygulama şu şeylerin paylaşımını çok kolay hale getirir
    • Okuduğun kitap ve şu anki durumu, Bu ebooklar vs. için otomatikLibrary Thing, Good Reads
    • Dinlediğin Müzik, otomatik Media Player’dan alınır – Last.fm
    • İzlediğin Film, Dizi ve puanın, gene mümkünse otomatik media player’dan alınır – ??? Get Glue?
    • Giydiğin Kıyafet (marka vs. olarak) – ?…
    • Oynadığın Oyun – Steam
    • Kısa olarak şu an ne halt yediğin – Twitter
    • Aktif olarak kullanılan program ve ne kadar vakit harcandığı – Wakoopa
    • Girdiğin ve paylaşmak istediğin siteler – Delicious
  • Bu tray uygulamasının otomatik keşfettiği herşey ve elle girilen herşey otomatik sitede gözükecekti

Nerede bulunduğunu yayınlama gibi şeyler o zaman hiç aklıma gelmemişti, sonuçta internet kullanıcılarının her zaman bilgisayar başında olacağını varsaymıştım.

Bu tray uygulamanın adı “Life” olacaktı. Şimdi bakıyorum da aslında bunların, hepsi ve çok daha fazlası efektik olarak yapıldı (tek bir parça olarak değil ama). Açıkçası ben kullanmıyorum, iki nedeni var nedense eskisi kadar bir şeyleri paylaşma isteği kalmadı, ikincisi bu sistemlerin hepsi çok dağınık ve pratik değiller. Eğer pratik olsalar bir istatistik manyağı olarak gittiğim her yeri, attığım adım sayısını, hasta olduğum günleri, her gün giydiğim kıyafetleri, bastığım tuş sayısını, yazdığım kelime sayısını, emailda harcadığım süreyi, bulunduğum şehirleri, dinlediğim müzikleri, izlediğim filmleri, izlediğim dizileri, gördüğüm siteleri, tanıştığım insanları vs. vs. hepsini kayıt altına alırdım. Ondan sonra hasta olduğum günlerde ki hava durumu ile giydiğim kıyafet dataları karşılaştırıp boğazlı kazağın bana yaramadığını anlayabilirdim, izlediğim ve puanladığım 500 filmi başka insanlar ve film dataları ile karşılaştırıp bir sonraki izleyeceğim filmin dandik olmamasını sağlayabilirdim, dinlediğim müzikler sayesinde Sibirya’daki küçük bir grubu müzik grubunu bulabilirdim…

Bir gün oraya gelecek miyiz, yoksa düzenli şekilde 20 farklı servisi ayrı ayrı kullanmak zorunda kalacak mıyız emin değilim. Bir gün birileri inanılmaz bir XML formatı, bir protokol ile bu datanın efektif paylaşılmasına farklı yerlerde farklı cihazlarla iki yönlü iletişim yapmayı ve bu datayı işlemeyi mümkün kılabilecek mi, emin değilim, ama emin olduğum tek şey var oraya doğru gitmemizin gerekli olduğu. Dünyada bu kadar data oluşturulurken hemen hemen hiç birinin özellikle bireyler açısından kollektif anlam ifade etmemesi acı bir durum, bu kadar data verimli işlendiğinden, büyüyen trendleri hatta ekonomik krizleri bile tahmin etmek çok kolay olabilirdi, belki de Google’un geleceği tahmin edebileceğini iddia etmesi bu datayı efektif olarak korrele edebileceğine inanmasıdır.

AnkaSec’10 Bilgi Güvenliği Konferansı

Etiketler 27.10.2010

ankara_sec_master23 Aralık’ta tahmin ettiğiniz gibi Ankara’da AnkaSec’in 2. düzenlenecek. Maalesef ben orada olamayacağım ama oralardaysanız gitmeyi ihmal etmeyin derim.

Ramazan Ayı Mübarek Olsun

Etiketler ramazan, tebrik, 11.08.2010

Bir süredir yaz(a)mıyorum, Ramazan ayı vesilesiyle hala hayatta olduğumu hatırlatayım dedim…

Bu yazıya da biraz anlam katmak için sizi Sorularla İslamiyet sitesinin Ramazan Sayfaları’na gönderiyorum.

IT Sektöründe Kişisel Gelişim ve Kariyer Semineri

21 Haziran’da İstanbul’da Genç Girişimciler Kulübü’nde IT Sektöründe Kişisel Gelişim ve Kariyer isimli bir konuşma yapacağım. Açıkçası bugüne kadar yaptığım güvenlikle alakalı olmayan ilk konuşma olacak.

Etkinlik ücretsiz, siteden kayıt olmanız yeterli.

5. Kamu Kurumları Bilgi Teknolojileri Güvenlik Konferansı

25 Haziran’da Ankarada 5. Kamu Kurumları Bilgi Teknolojileri Güvenlik Konferansında konuşuyor olacağım, genelde demo ağırlıklı bir şekilde web uygulamalarındaki güvenlik açıklarından bahsedeceğim.

Konferansa katılım ücretsiz ama sitesinde belirtildiği şekilde kayıt olmanız gerekli.

Hakin9 Röportajı

Bir süredir yazamıyorum bu da yazamadığım vakitlere denk geldi. Hakin9 benimle bir röportaj yaptı, ek olarak Hakin9 artık ücretsiz olarak internet yayınlanmaya başladı, şuradan download edilip okunabilir.

Minimum Ürün

Maalesef geliştiriciler olarak “kabul edilemez” listemiz gereğinden çok daha fazla ve esas gerçeği düzenli şekilde unutuyoruz. “Ürün çözmek için geldiği sorunu en iyi şekilde çözüyor mu? Size diğer tüm eksik ve hataları göz ardı etmenizi sağlayacak birşeyler sunabiliyor mu?”

Bakalım neler yapmadan da bir yazılım yapabiliyormuşuz ve başarılı olabiliyormuş, benden iki örnek:

  • Google Chrome
    • Otomatik update ekranı yok, (hakkında sayfasında çok basit bir göstergesi var)
    • Proxy desteği yok (sadece SYSTEM proxy’ sini kullanıyor)
    • Normalde ihtiyacınız olabileceği ama olmadan da yaşayabileceğiniz bir milyon özellik yok (Firefox / IE ayarları ile Chrome’ un ayarları arasında 10 kat kadar fark var)
  • Hacker News
    • Şifrenizi unutursanız hatırlatma desteği yok,
    • Arama yok
    • Kategori, tag vs. yok

Bu tip özellikler ileride gerekebilir ama v1.0 de gerçekten o özelliğe ihtiyacınız var mı? Şimdi kesinlikle olması gerekenler listenize tekrar bakın ve yarısını silip aslında abarttığınızı itiraf edin.

Unutmadan insanların bir özelliği istemesi o özellik olmayınca yazılımı kullanmayacağı anlamına gelmiyor.

Sizin bildiğiniz bu şekilde başarılı ama çok bariz özellikleri olmayan ürünler var mı?

Süper Makale Why platform matters in web application security?

I wrote this article about 2 years ago in Turkish. Recently Whitehat released a quite nice paper about vulnerability counts per programming language/framework. That report kind of backs up this article however many took and advertised it wrongly as it sounded like “choice of framework has virtually no effect on security”. So I decided to write it in English again.

One of the oldest clichés in web application security is:

"Choice of framework doesn't matter"

I say bullshit!

Good Developers Always Develop Secure Applications

Yes, one can write a secure web application using brainfuck in 1 year and after 250 iterations. She can start by "implementing her own session handling and make it secure". That sounds funny, right? But when I say "All you need to do is implement your own CSRF protection", it doesn't sound funny because that's what everyone is keep doing. However to me it's still wrong, just like a secure session implementation a secure CSRF protection implementation should be one of the responsibilities of the framework not the developer.

Security of the Language, Security of the Framework

There is no perfect framework, vulnerabilities identified in all frameworks just like vulnerabilities identified in all applications. However just like some applications security track of some frameworks are much better. ASP.NET Request Validation Bypass, PHP Zend_Hash_Del_Key_or_index overwrite issues, Struts Validation Bypass are good examples of these vulnerabilities.

PHP is a perfect example of this. PHP itself has so many vulnerabilities (such as Zend_Hash_Del_Key_Or_Index Vulnerability, month of PHP bugs and others) even when the developer codes everything securely it still can be vulnerable. I don't even mention the terrible design issues such as GLOBALS Overwrite problems, magic quotes, providing not one but several different functions to do the very same job.

If you set a directory as protected and if your framework can't protect you because the attacker used a different HTTP Method then that's not the developer's fault, it's framework's fault.

That's why framework matters, even when you build the most solid application when your framework is weak, there is a higher possibility of getting owned.

Can framework handle unicode characters correctly? Do functions unexpectedly effected by null bytes? Does it spill out all the details when you send one character in the cookie?

All of these are problems of the framework. If you are wise enough you should choose a framework with a good track of security.

Framework Specific Issues

You won't see much RFI (Remote File Inclusion) in ASP applications because there is no easy way to introduce such vulnerability in ASP. You can't see code execution problem ( such as eval() ) in ASP.NET applications because there is no easy way to do it however in Classical ASP you have this problem. Heck, in PHP application even preg_replace can evaluate code with /e modifier. And yes that happens in real world application, PHPBB was vulnerable to this.

Framework specific problems matter.

Secure by Default - Design of the Framework

Some part of some frameworks designed in a "secure by default" way. For example it's quite rare to see HTTP Header Injection (CRLF/HTTP Response Splitting) problems in ASP.NET because by default all related .NET functions will not accept new lines. Therefore as a developer you should push your limits to introduce this vulnerability, yet if you are stupid enough you'll succeed. Developer's stupidity is something that a framework can't fix. Sorry about that.

Stupid features of a framework can hurt as well. For example Magic Quotes in PHP. Loads of application burned by that, it's such a mess. It shouldn't have been there in the first place that's why finally they decided to deprecate it.

Inbuilt Security Features

I think everyone knows that rolling your own crypto is idiotic but somehow it's OK for people roll their own CSRF protection, SQL Injection filter, XSS protection library etc. Yet all penetration testers observe that these developers keep failing miserably. That's why projects like ESAPI should be employed by more developers.

When it comes to frameworks some of the questions we need to ask;

  • Does it support parameterized SQL Queries?
  • Does it provide a way to separate data and the HTML and carry out the required encoding based on the output location?
  • Does it provide a secure session implementation?
  • Does it provide a secure authentication mechanism?
  • Does it provide a secure way to execute OS commands? (separating parameters and the executable to avoid injections just like parameterized SQL Queries)
  • Does it provide secure storage options? Path normalization functions?
  • Does it provide a way to avoid email header injections?
  • Is there any function which can protect against new line injections to write safe logs without worrying about new lines?
  • Is there any inbuilt feature to apply whitelisting on inputs?

I can go on but you got the point. Unfortunately there is no framework which does all but some frameworks are clearly better.

Take a look at Secure Web Application Framework Manifesto for many other ideas and see what frameworks should bring to the table in means of security by default and as inbuilt security features.

Also ASP.NET's built-in membership feature is also is the right direction and more frameworks should do the same.

Documentation, Culture, Sample Code etc.

Documentation and culture around a framework also quite important. Take a look at Tomcat JSP examples and IIS 6 ASP examples. All of them have several serious vulnerabilities out of the box. Like it's not enough to write vulnerable applications as samples they even deployed them by default so your environment can be vulnerable by default!

For example many examples in .NET documentation uses parameterized SQL Queries which is very good thing although .NET documentation got so many other flaws and terrible code snippets in many places. Generally most of the vendors are terrible about documentation and providing secure code snippets. Some of these sample codes stripped from security checks as they stripped from error checks to increase clarity in the example. I still not a good enough excuse.

Finally when it comes to the culture there are some factors such as what are the best practices among developers. For example you can see more OS Command Injections in Perl applications than potentially any other framework because that's how Perl guys roll. Pass it to an OS command, parse the output and spill it out to the screen. This is a quite rare practice in many other frameworks*.

Required Time, Effort and Knowledge for a Secure Application

All of these discussed factors affect the required time, effort and required security knowledge to develop a secure application.

If framework provides built-in security for CSRF with one line of code than it decreases the complexity of the application, required development and testing time. Finally developers don't need to be a security expert to implement such a check.

Do you really think a junior developer would know that it's possible to do CSRF against a web service. Believe me they don't. Also they don't know that you can do XSS in CSS, they don't know if content-type is "plain/text" XSS is still possible in IE, they don't know that they need to mark cookies as secure, they don't know you can bypass many *clever* XSS protections by using XSS Tunnel or BeeF, they know jack-shit about security especially when it comes to corner cases.

They don't know and they will never know many of these and I don't expect them to know** , that's why framework should care of this stuff and that's why framework matters.

Framework Matters

Now please don't tell me that framework doesn't matter because it bloody does. However the problem is; there is no perfect framework and there won't be anytime soon although it's getting there. Right now you can still choose a better framework instead of choosing arbitrarily by claiming that all of them are same anyway.

My examples were mostly about PHP, ASP and ASP.NET because those are the frameworks that I'm pretty familiar with. You can think of many other frameworks such as Ruby on Rails, Struts or CppCMS and observe similar benefits or framework specific problems.

* Although I need to note that due to many other configuration requirements that task might not be that easy in some frameworks hence not that popular. For example .NET might require several permissions to properly run an executable from an ASP.NET script.

** OK, they need to know about "Secure Cookies" but funny enough many of them still don't. So why not mark all cookies set over SSL as secure and when their code doesn't work they can fix(!) it, at least this way it'll be secure by default and maybe developer will ask herself "What the hell is a secure cookie? and why would I need it?"

Süreç mi Sonuç mu?

Geçen gün Timecrimes - Los cronocrímenes i izledim. Film boyunca eğlenceli bir süreç var, süreç devam ediyor, ediyor, ediyor ve film hiç bir sonuç olmadan aynı Lost’ un bölüm sonu gibi havadaki soruları da cevaplamadan bitiyor. Bu noktayı görünce ben tabii ki ağzımda sonu hiç bir yere bağlanmayan eski Türk filmi tadı kalmış şekilde küfrediyorum.

Timecrimes’ta benim için diğer sofistike olma taklidi yapan filmler arasında yerini alıyor. Başka neler var o listede? Cube serisi başı çekiyor o kesin ama Matrix’te listenin dibinde bir yerlerde, arada da onlarca adını bile hatırlayamadığım film var. Hani şu altında bir çok anlam varmış gibi yapan ama aslında yönetmeninin bile ne halt olduğunu bilmediği filmler. Zaten bu filmler de Deus ex machina da vardır hep, bir şey vardır ama o bir şey hep şeydir çünkü yazar ve yönetmen onu tam anlamıyla sıkmıştır (TDK daki 8. anlamında sıkmak).

Şimdi kimi der ki filmin sonu değil süreci önemli ben film boyunca eğlendim, kimi de derki aynı bir fıkra gibi bir çok filmin süreci sadece son andaki espriye hazırlıktır eğer son anda bir espri yoksa o süreç sadece adama batar.

Şimdiye kadar okuduklarınızdan anlamışsınızdır ki benim sanatsal film kültürüm düşüktür. Elephant gibi “sanat filmlerini“ izlemem hasbel kader izlediğimde de sevmem. Buradaki teori bir çok şeye uygulanabiliyor, bir şey tüketirken süreçmi yoksa ağızda kalan tat mı önemli diye.

Hmmm ilginç bu blog da bir çok gıcık olduğum film gibi hiç bir sonuca ulaşmadı…