29 Mart 2018 Perşembe

Perl'ün Düşüşü Neden?


Son yıllarda Perl'ün popülaritesi iyice düştü. 2000'li yıllarda Web'deki krallığını PHP'ye kaptıran Perl 2010'dan sonra programming, scripting ve hacking alanındaki otoritesini de malesef Python ve Ruby'ye kaptırmış görünüyor.

Gerçek şu ki, ne Python ne de Ruby; Perl'den daha iyi, daha güçlü ve daha hızlı programlama dilleri değil. Ancak kullanıcı eğilimleri farklı tercihlere yönelmiş bulunuyor.

Ben eski ve sadık bir Perl programcısı olarak geçmişte PHP'ye geçemediğim gibi günümüzde de Python'a yada Ruby'ye geçemiyorum. Çünkü bu dillerin bana Perl'ün vermediği bir şey verebileceğine pek tanık olmadım. Eğer illa bir dil değişikliği yaparsam C/C++'a geçmeyi yeğlerdim.

Diğer yandan da Perl'ün düşüşünün ve diğer dillerin yükselişinin ardındaki nedenleri merak ediyorum.

Benim tespit ettiğim bir kaç sorun var:

Birincisi Perl 6 beklenilenin aksine çok uzun sürdü ve hala kararlı bir sürümde değil. Perl 5 de sürekli güncellenmekle birlikte Perl 6 beklentileri bir hayal kırıklığı yaşattı.

İkincisi CPAN karmaşasıdır. Hemen her gün CPAN'a onlarca yeni modül yazılıyor ve yükleniyor. Ancak eğer Unix/Linux bir işletim sisteminde değilseniz modül kurmak ciddi bir sıkıntıya dönüşmektedir. Ben deneyimli bir Perl programcısı olduğum halde bazen bir modülü yüklemek saatlercemi almaktadır. Perl'ün daha iyi ve daha sorunsuz bir modül yönetim sistemine ihtiyacı var. Python ile yazılmış olan YUM gibi kararlı paket yükleyicisi şart.

Üçüncüsü bazı modüller ve projeler çok kararlı olabilir, ancak yine de yenilenmeyecekleri anlamına gelmez. Örneğin CGI.pm modülü 10-15 yıldır neredeyse hiç yenilenmemiş. Neden yeni versiyonları yok? Halbuki Web'in (http ve cgi) standartları o zamandan beri çok köklü değişikliklere uğradı.

Dördüncüsü yeterince açık kaynak perl projesi yok. Bir alışveriş scripti, bir haber portalı, bir Worldpress gibi bir program Perl'de neden yok? Burada PHP'deki Worldpress, Magento, Opencart, Python'daki Django, Rubydeki Ruby on Rails gibi projelerin 2000 yılından beridir Perl'de karşılığı yok.

Beşincisi, çalışma ortamı tools ve IDE'ler. Malesef bu konuda da Perl geride kaldı. 2012'de bu ihtiyacı karşılamak için yine Perl ile Padre isimli bir editor geliştirildi. Ancak Padre de 2012'den beri geliştirilmiyor.

Altıncısı, Perl camiası yeterince paylaşımcı değil. Paylaşım grupları yok denecek kadar az. Türkiye'de doğru düzgün bir Perl grubu bile yok.

Belki bunlara Frameworkler de eklenebilir. Ancak Perl'deki zengin modül varlığı frameworklere ihtiyaç hissettirmeyebilir.
Paylaş:

8 Ocak 2018 Pazartesi

E-Devlet Soyağacı Uygulaması Üzerine Eleştiriler

E-devlette Nüfus Müdürlüğüne bağlı sürpriz bir uygulama geliştirildi. Bu uygulama açıkçası beni bir kaç açıdan hayal kırıklığına uğrattı.

Şecere Mantığı Hatası

E-devletin verdiği şecereye baktığımız zaman;
  • Annesinin Annesinin Babasının Babası ...
  • Annesinin Annesinin Babasının Annesi ...
  • Babasının Annesinin Babasının Annesi ...
  • Annesinin Annesinin Annesinin Babası ...
Şecerenin bir mantığı var ve burada bu mantığa aykırı bir işlem yapılmış. Herşeyten önce şecere baba tarafından izlenir. En nihayetinde bütün insanlar birbirinin akrabasıdır. Ancak akrabalık ve soy bağı aileler ile yürümektedir.

Anneler, anneanneler aileye dışarıdan katılırlar. Annemin annesinin babasının annesi benim akrabam bile sayılmaz. Şecere baba üzerinden takip etmeli. Annenin, anneannenin anneannesi üzerinden şecere takibi olmaz. Her baba zikredilirken onun babası ve annesi zikredilmeli. Ama onun annesinin soyunun şeceresi üzerinde devam edilmemeli.

Burada maksimum 5 kuşağa kadar gidiyor. Halbuki baba üzerinden gidilseydi bu sayı iki katına kadar çıkabilirdi.
Benim şeceremde zikredilen en eski dedem 1887 doğumlu Sarıkamış gazisi büyük dedem Ahmet Çetin. 1974 yılında vefat etmişti. Halbuki biz aile olarak en az bunun üç atasını biliyoruz.
Vatana millete hayırlı olsun. 😄
Teknik Aksaklıklar

Herkes eski kayıtlar üzerinden kendi üst ve alt soy ağacı şeceresini sorgulayıp görüntüleyebilecekti.

Ancak ilk dakikadan itibaren sorunlar patlak verdi. Aşırı talep bir anda sistemin çökmesine sebep oldu. Çünkü bu sorgunun üretilebilmesi için öngörülen süre 3 dakika olarak görünüyordu. Bu da bir anda kuyrukta bekleyen yüzbinlerce talebin yığılmasına ve sistemin kilitlenmesine sebep oldu.

Şöyle düşünün. Apache veya e-devlette de halen kullanılmakta olan Ngix sunucusu standart olarak aynı anda (anlık olarak) 300 paralel işlemi yapar. 300 sayısı ön tanımlıdır bu arttırılabilir yada azaltılabilir. Sunucunuz çok güçlü ise ve çok fazla ziyaret alıyorsanız bu sayıyı arttırabilirsiniz. Lakin şu hesabı yapmanız gerekir. Gelen isteklerin (request) bitirilme bitirilme süresi (proces time) kuyruktaki yığılma (queue) arasındaki dengeyi hesaplayamazsanız sunucunuz doğal olarak çöker.

Bilgisayarınızdan yapılan isteklerin içeriğini taşıyan ağ paketlerinin internetteki sayfaya erişip geri dönüşünün 250-300 milisaniye'den daha az olmayacağını farzedersek bu durumda sunucunun 1 saniye içinde işleyebileceği bağlantı (istek) sayısı 1000 cıvarındadır. Bu durumda eğer saniyede bin kişi bağlanıyorsa yapılan istek/işlemlerin 250-300 milisaniye'yi geçmemesi gerekir. Peki geçerse ne olur? Yığılma olur. Eğer işlem kuyruğunda giderek artan bir yığılma olursa 250-300 milisaniye içinde gerçekleşebilecek bir işlem dakikalar hatta saatler içinde askıda kalabilir.

Peki çözüm önerisi ne?

Bununla ilgili paylaşımları bir kaç gün önce Facebook sayfamda yazmıştım.

Sorgulama yapılması gereken işlemlerde sadece sorgulama yapılmalıdır. Hesaplatma ve üretme işlemi yapılmamalıdır. Yani önceden bütün şecere kayıtları oluşturulup veritabanına kaydedilir. Sorgulama yapıldığında da hemen sorgunun cevabı verilir. Bunun da bir takım dezavantajları yok değil. Veriler statik hale gelir. Verilerin güncellendiği durumlarda çok işlevsel olmayabilir. Bazen cache de kullanılabilir.

Alternatif olarak da şöyle yapılabilir. Kullanıcı istek yaptığında yani örneğimizde olduğu gibi şeceresini görmek istediğinde bu işlem 250-300 milisaniye içinde bitebilecek gibi olmadığından talebi kaydedilir ve hazır olduğunda eposta ile indirme/görüntüleme linki gönderilir.


Paylaş:

10 Kasım 2017 Cuma

Suudi Arabistan Hariri'yi mi kaçırdı?

Lübnan Başbakanı Hariri'nin Suudi Arabistan'a gidip istifasını orada sunması ve İranı suçlaması, Şii paramiliter güçlerinin yarattığı tehlikenin ne kadar ciddi boyutlarda olduğunu gösteriyor. 2005 yılında da 1 tonluk TNT bombası ile babasını havaya uçurmuşlardı.

Kendisi, Şii kaynaklarının iddia ettiği gibi Suud tarafından alıkonulmuş değil. Geçen Cumartesi basın toplantısı yaptı ve üç gün sonra da Fransa Başkonsolosu ile görüştü. Dubai'den Riyad'a geçmesi beklenen Fransa Cumhurbaşkanı Macron ile de bir gönüşme yapacak.

İki üç hafta önce İran Cumhurbaşkanı Ruhani bir televizyon kanalında şöyle bir açıklamada bulunmuştu: "İran'ın günümüzde bölgedeki rolü ve etkisi geçmişe göre çok daha güçlüdür. İran'ın pozisyonunu dikkate almadan Irak, Suriye, Lübnan ve İran Körfezi'nde belirleyici bir karar vermek mümkün değildir." demişti.

Bunun üzerine Saad Hariri bu açıklamanın kabul edilemez olduğunu söylemişti. Hariri "Ruhani'nin konuşması kabul edilemez. Lübnan, vesayet kabul etmeyen ve onurunun ihlal edilmesini reddeden bağımsız bir Arap devletidir." demişti.

İran Cumhurbaşkanı Ruhani'ye cevap verdikten bir hafta sonra ülkesinden kaçıp Suudi Arabistan'a sığınan ve İran'ı zehir zemberek suçlayarak istifa eden bir Lübnan başbakanından bahsediyoruz.
Paylaş:

4 Ekim 2017 Çarşamba

Dinozorlar ve Maymunlar

Evrim hayatın akışıdır. Evrim kelimesi sizi rahatsız ediyorsa buna "gelişim" de diyebiliriz. Değişim ise varlığın özündeki devinimden, gelişimden kaynaklanan bu gelişime bizim verdiğimiz tepkidir.

Evrim yasasında iki kadim hayvan ön plana çıkar: Dinozorlar ve maymunlar...

Dinozor kime denir? Çok eski olan, değişmeyi kabullenmeyen, köhne anlayıştaki ve inatçı kişiye dinozor denir. O zaman şöyle demek mümkün. Dinozorlar yeniliği değişimi ve evrimi kabullenemedikleri için yok oldular. Çünkü tabiatın yaşamın özünde bir değişim ve devinim sürekliliği vardır. Kendilerini yenileyemeyen anlayışlar zaman içinde köhneleşir ve hükmen yok olur.

Ancak maymun bu konuda dinozorun tam tersidir. Maymun iştahlılık, her değişimin her yeniliğin üzerine atlamak demektir. Değişimin ve evrimin, değişenin bünyesi ve yapısı ile uyumlu olması gerekir. Uyumlu ve gerekli olmayan her değişim bir bozulma ve yozlaşmadır. Bu yüzden maymun, bozukluğu ve yozlaşmışlığı temsil eder.

Dini, sosyal ve kültürel yaşamda da hayatın akışına göre bir evrim vardır.

Bir tarafta hurafeci bir gelenekçilik her türlü değişimi reddediyor. Manayı kaybetmiş, sembolleri manaların yerine ikame etmiştir. Kadim putperestlik de tam olarak böyledir. Öteki tarafta ise ilkesiz bir yenilikçilik tüm temel değerlerde savrulacak düzeyde bir yozlaşma yaşıyor.

Ancak dengede durabilen insandır. İnsan olmak dinozorun köhneliğinden ve maymunun yozlaşmacılığından uzak durmayı, dengeyi sağlamayı gerektirir.

Paylaş:

16 Eylül 2017 Cumartesi

Kürt Devleti'nde Sorun Ne?

Kürt devleti sorun değil, Arap Türk Fars devletleri olduğu gibi pekala Kürt devleti de olabilir, olabilmeli. Ancak ırka dayalı yayılmacı bir devlet tasavvuru var. Kabul edilemeyen kısmı burası.

Irak'ın özerk bölgesi Kürdistan Bölgesel Yönetimi'nde Eylül 2017'de yapılan referandumda seçmenlere "Kürdistan Bölgesi ve Kürdistan Bölgesi dışında kalan Kürt yerleşimlerinin bağımsız bir devlet olmasını istiyor musunuz?" sorusu sorulmuş ve seçmenlerin %92.73'ü referanduma "Evet" oyu vermiş.[1]  Kendi yaşadığı egemenlik alanı olan bölgeyi bağımsızlık referandumuna tabi tutması doğal da "Kürdistan Bölgesi dışında kalan Kürt yerleşimlerinin bağımsız bir devlet olması" ne demek kardeşim? Yani Türkiye'deki Suriye'deki, İran'daki hatta Gürcistan'daki bölgelerin de bağımsız bir devlet olmasını talep ediyor. Kuzey Irak'taki Kürdistan'ın sınırları belli, ama onlar Kürtlerin yaşadığı her yeri dahil edecek şekilde genişletiyorlar. Böyle aleni bir yayılmacılık var mı?

Bugün Türkiye "filan bölgede Türkmenler yaşıyor, orası da Türkiyedir" diye iddia ediyor mu? Etmiyor. Yada Araplar İran'ın Huzistan bölgesinde Araplar yaşıyor orası Arabistan'dır diye hak iddiasında bulunuyor mu? Hayır. O zaman Kürdistanın sınırlarını Kürtlerin yaşadığı her bir yeri kapsayacak şekilde genişletmeni kim niye kabul etsin?

Bugün Barzani'nin kurduğu Kürt devleti, bütün komşularından zımmen hatta alenen toprak alma iddiasında bulunuyor.

Irak'ın Kuzeyine Güney Kürdistan diyor. Bunun Kuzey'i de Türkiye'nin Doğusu İran'ın Batısı da Suriye'nin toprağı oluyor. Bu kadar aleni bir tecavüzkarlığı İsrail bile yapmamıştır.

Barzani'nin yapması gereken şey, Kürdistan'ın sınırlarını sabitlemektir, komşularının topraklarında gözü olmadığını "Büyük Kürdistan" gibi bir emeli olmadığını açıkça ilan etmelidir. Yoksa bütün komşuların öyle veya böyle sana savaş açar. Nitekim açtılar da.

Paylaş:

19 Ağustos 2017 Cumartesi

Bankalar Google Analytics kullanıyor mu?

E-Devlette Yandex Skandalı ünvanlı yazım sosyal medyada büyük bir yankı uyandırdı. Yazıdan iki gün sonra da turkiye.gov.tr sitemizdeki o meşum kod kaldırıldı. Destek veren ve hassasiyet gösteren herkese teşekkür ediyorum.

Yine de bazı söylediklerim bazılarına abartılı geldi. Yazıda daha ziyade "potansiyel" den bahsettim. Olabilecek şeyleri anlattım. Olan şeyi bilemem. Belki de Yandex Metrica turkiye.gov.tr sitemizdeki kullanıcı bilgilerini çalmıyordur. Ancak güvenlik olabilecek şeylere göre yapılır. Olan şeye göre değil. Kapını kilitlersin, çünkü (potansiyel olarak) hırsız gelebilir. Ama kapını kilitsiz bırakırsan da illa hırsız gelecek demek değildir.

Şimdi yapılan eleştirilerden bazılarına istatiksel bir cevap vermek istiyorum. Benim "Bankalar kullanmaz" sözüme bazıları itiraz etti. Ben de bankaları tek tek inceledim. İşte durum.

Banka Adı Sitede İnternet Bankacılık Panelinde
A&T Bank yok yok
Abank var (analytics) var (globalsign)
Adabank var (jquery) panelsiz
Akbank var (analytics) var (analytics)
Aktifbank var (linkedIn) yok
Albaraka var (analytics, facebook) yok
Anadolubank yok yok
Bankasya var (muhtelif) panelsiz
Burganbank var (analytics, facebook) yok
Citibank sayfası göçmüş
Denizbank var (analytics) yok
Deutsche Bank Türkiye yok yok
Dilerbank yok yok
Eximbank yok yok
Fibabanka var (analytics) var (globalsign)
Fonbank yok yok
Garanti var (facebook) yok
Habibbank yok yok
Halkbank var (analytics) yok
HSBC var (cloudfront) var (verisign)
ICBC Turkey yok yok
ING Bank var (analytics, facebook) var (analytics, demdex, omtrdc)
İşbankası var (analytics, facebook) yok
J.P. Morgan (Türkiye) var (analytics) yok
Kuveytturk var (analytics, facebook) var (analytics)
Nurolbank yok yok
Odeabank var (analytics, facebook) yok
Pasha Bank var (analytics) panel arızalı
PTT var (analytics, facebook) var (rackcdn)
Radobank var (jquery) panelsiz
QNB Finansbank var (analytics) yok
Şekerbank var (analytics, facebook) (var globalsign)
T-Bank yok yok
Takasbank var (analytics) yok (ancak panel hata veriyor)
TEB var (analytics, facebook) yok
Turkish Bank var (muhtelif) yok
Türkiye Finans var (analytics) yok
Türkiye Kalkınma Bankası var (analytics) panelsiz
Vakıfbank var (analytics, muhtelif) yok
Yapı Kredi var (analytics, muhtelif) yok
Ziraat Bankası yok yok
(Not: Bu raporun yazının yazıldığı tarih itibarıyla olduğu unutulmamalı.)

%2,44    1 tanesinin tüm sayfası göçmüş (citibank)
%9,76    4 tanesinin internet bankacılık paneli yok
%4,88    2 tanesinin internet bankacılık paneli var ama biri açılmıyor öteki hata veriyor.
%7,33    3 tanesinde internet bankacılık panelinde Google analytics vardır.
%53,66    22 tanesinde normal sitede google analytics vardır, ancak internet bankacılık paneline geçince 19 tanesi analytics'i ve diğer tüm harici scripleri kaldırıyor.
%26,83    11 tanesinde hiçbir şekilde harici dosya yoktur
%17,07    7 tanesinde muhtelif CDN vardır ama Analytics hiç yoktur
%9,76    4 tanesinde internet bankacılığı kısmında verisign ve globalsign vardır. Güvenliği sağlaması için kullanılıyor.
%41,46    17 tanesinde normal sitede analytics, sosyal medya kodları ve diğer cdn frameworkleri mevcut iken panel kısmında bunlar kaldırılmaktadır.
%0    Yandex Metrica kullanan hiç yok.

Şimdi bunların ne anlama geldiğini biraz daha açayım.

Bankaların yarısı normal sitelerinde Analytics kodu kullanırken İnternet Bankacılığı düğmesine tıkladığınızda bunları kaldırmaktadırlar. Sadece üç sitede (Akbank, Kuveytturk ve ING Bank) panelde de Analytics devam etmektedir. Burada Analytics'e güven duyulduğu kesin. Yandex'i ve ürünlerini hiçbir yerde kullanan banka bulunmamaktadır. Ancak bu gerekli mi? Buna biraz sonra geleceğim.

Şimdi sitesi bile çalışmayan, İnternet Bankacılığı paneli açılmayan bankalar bile olduğuna göre 41 banka içinden 3 bankanın panelde de Google Analytics kullanmasına şaşırmıyorum. Yine de bunu kullananların oranı bazı arkadaşların iddia ettiği gibi %90'lar filan değil, %7,3'dir.

Açıkçası bankanın bunu kullanma sebeplerini bilemem. Belki de yabancı ortakları bu sayede yapılan işlem ve hareketleri bir tür Google Analytics ile onaylatma durumdadırlar. Analytics'in en önemli gerekçesi şeffaflıktır. Lakin bunun yerine BDDK Analytics gibi bir sistem oluştursun ve bütün bankalar bunu dahil etsin. Böylece bankanın içinden bir raporlama hatasını BDDK izlesin.

4 tane bankanın panelinde verisign ve globalsign JS'leri koşmaktadır. %9,76. Efendim şimdi bu Verisign ve Globalsign güvenlik sertifikaları üreticileridir. Müşteri ile mağaza arasında SSL sertifikası kullanılırken Mağaza ile banka arasında da SET kullanılmaktadır. SSL i sağlayan mazağa, SET'i sağlayan ise bankadır.

Normal şartlarda sertifikayı alıp sunucuya yüklersiniz. Sertifikanın sağlayıcısının kodunu panele eklemek gerekmez. Ancak panele bunları dahil etmek müşteriye "bakın sizi bununla koruyoruz" demek anlamına gelmektedir. Bunun banka açısından bir güvenlik zaafiyeti teşkil edeceğini sanmıyorum. Yine de ben olsam kullanmazdım. Dikkat ederseniz bankaların çoğu da bunu kullanmamaktadır. Her fazlalık bir yüktür.

Bir banka Analytics kullanmalı mı?

Tabi ki hayır. Hatta bırakın paneli, bir bankanın sitesinde bile bunu kullanması gereksizdir. Açıkçası bir bankanın Analytics kullanması son derece mantıksız ve gereksiz.Analytics'in yada Metrica'nın bir özelliği yok. Onun sağladığı tüm bilgiler zaten sizin sunucunuzda var. Günümüzün yeni yetme Seocuları ve programcıları Analytics'in hangi kelimelerle aranarak gelindiğini söylemesini büyük bir matahmış gibi anlatabilir. Bu basitçe tarayıcının (browser) çevre değişkenlerinin REFERER parametresinde zaten mevcuttur. Ancak dikkat edin Analytics size hangi kelime ile hangi kişilerin geldiğini, geldikten sonra üye olup olmadığını, sisteme giriş yapıp yapmadığını o müşterinin giriş yaptıktan sonra hangi işlemlerle ilgilendiğini, hangi yorumları yaptığını hangi ürünleri sepete attığını, satın aldığını, favorilerine eklediğini ve daha yüzlerce şeyi Google Analytics size söyleyemez. Ama siz bunları kendi sunucunuzda yapacağınız programlar ile takip edip detaylandırabilirsiniz.

Ayrıca Google Analytics dahil edilmediği sayfaları izleyemez. Bu durumda vereceği rapor eksik ve sağlıksız olabilir.

Daha önce yazdığımı tekrar ediyorum. Google Analytics'in en önemli kullanım alanı şeffaflıktır. Eğer sitenizde reklam yayınlamak istiyorsanız reklamverenler sitenizin hitleri konusunda sizden Analytics gibi üçüncü tarafın sağlayacağı raporları isteyeceklerdir. Bir de kendi yazılımınızı yapmak istemiyorsanız, yapamıyorsanız buna benzer programlar kullanabilirsiniz.

E-Ticaret sitesinde kullanılabilir mi?

Bir okurum eticaret sitesinde kullanıldığında kredi kartı bilgilerinin çalınabileceğini söyledi. Teknik olarak doğrudur. Size tavsiyem tüm frameworkleri indirip kendi sitenizde yükleyerek kullanın. Sitenizde indexlenecek ve indexlenmeyecek bölümleri ayırın. Sitedeki tüm katalog ve ürün bilgilerinin olduğu sayfalar indexlenmeli. Ancak admin, login, sepet, checkout ve ödeme gibi bölümler indexlenmemeli ve yalıtılmalıdır. İndexlettiğiniz sayfalarda istediğinizi kullanılabilirsiniz. İndexletilmeyen sayfalarda bunu kullanmak gereksiz ve hatta tehlikelidir.

Paylaş:

15 Ağustos 2017 Salı

Bulut Sistemleri, Bireysel ve Kolektif Mahremiyet

E-Devlet platformundaki Yandex açığından bahsettiğimde bazı arkadaşlar bunu benim kişisel pimpirikliğime yorumladı. Halbuki öyle değildir.

Sosyal medya ve bulut sistemleri olan Facebook, Google, Hotmail, Yandex, Yahoo Dropbox gibi sistemleri ben de kullanıyorum. Bu kaçınılmaz. Hatta çoğunuzdan daha çok kullanıyorum. Mesela Cep telefonu adres defteri olarak SİM kartını yada telefon hafızasını değil, doğrudan Google Rehberi'ni kullanıyorum.

Bir ara şirketim varken kimlik resmi, imza sirküsü, vergi levhası, ticaret sicil kaydı vb dosyaları Google Driver üzerinde kaydediyordum. Bu konuda Google, Yandex yada Dropbox farketmez. Kişisel olarak beni takip edeceklerini sanmıyorum, ederlerse de etsinler. Yediğimiz önümüzde yemediğimiz arkamızda. :D

Fakat bazı şeyler gizlilik ister. Mesela vergi borcumu, sağlık sorunlarımı, bankadaki paramı, çocuğumun eğitim seviyesini, notlarını devamsızlıklarını, yada her neyse; sosyal olmayan yönümüzün bir başkası tarafından bilinmesini istemeyiz. Halbuki devlet sistemi bundan çok daha fazla gizlilik ister. Çünkü orada sadece bireysel değil, kollektif mahremiyet de vardır. Yani devlet tek tek bütün bireylerin mahremiyetini koruduğu gibi, ayrıca tümünün bileşiminden toplumun da kolektif mahremiyetini koruması gerekmektedir. Bireysel planda bile olsa devlet bazı şeyleri kendinden bile gizler. Mesela kime oy verdiğinizi...

Demek ki korunması gereken bir mahremiyet vardır.

Diğer taraftan e-Devlet verilerinin çalınmasından, çalan ülkenin yararına sağlanabilecek muazzam bir bilgi vardır. Bunları bizim devlet olarak yapamadığımız şekilde raporlara dönüştürebilirler. Tarih ve zaman aralıklarına göre, bölgelere, illere göre filtrelenebilir bir şekilde emlak ve araç vasıta hareketleri, vergi hareketleri, sağlık işlemleri hukuk ve davalar ve daha bir çok şeyi raporlayıp belirli yerlere, makamlara sunabilirler.


Paylaş:

14 Ağustos 2017 Pazartesi

E-Devlet Sisteminde Yandex Skandalı

Çocuğun üniversite kaydı için www.turkiye.gov.tr adresine girdiğimde kaynak kodunda yandex.ru sitesinden çalıştırılan bir javascript kodu olduğunu gördüm.

Yandex Metrica tıpkı Google Analytics gibi çalışan bir sistem. Siteye gelen ziyaretçilerin bilgilerini toplayıp, topladığı bilgilerin çok önemsiz bir kısmını ülke/bölge lokasyonu, ip, tarayıcı bilgisi vs. gün, ay, yıl olarak raporluyor. Ancak bu sistemlerin topladığı bilgi bundan çok daha fazladır. Bir sitenin kaynak koduna böyle bir kod konulduğunda siteye gelen ziyaretçinin doldurduğu bütün form bilgileri, ve bütün çerezleri okuyabilir. Böylece sisteme giriş için kullanılan kullanıcı adı ve şifre de dahil pek çok bilgiyi ele geçirebilir.

Türkiye’nin tüm e-devlet uygulamalarının bel kemiğini oluşturan www.turkiye.gov.tr adresinde hem de (.ru) uzantılı yandex kodunun ne işi vardır?

Zaten bütün web sunucularının kendi ayrıntılı istatiksel raporlamaları vardır. Örneğin önceleri yönettiğim Linux tabanlı kendi sunucularımda açık kaynak Apache web sunucusunu kullanıyordum ve onunla birlikte yine açık kaynak kodlu Webalizer ve Awestats gibi raporlama programlarını yüklüyordum. Tüm sunucularda benzer programlar mevcuttur. Google Analytics veya Metrica’nın verdiği ziyaret raporlarından daha ayrıntılı raporlar veriyorlar.

Şimdi Metrica’ya yada Analytics’e neden ihtiyaç duyuluyor? Yandex’teki e-devlet kullanıcı istatistiklerini Cumhurbaşkanına, Başbakana, ilgili bakanlıklara ve ilgili birimlere yine Yandex sitesi üzerinden mi gösteriyorsunuz? Demek ki, birileri devlet sırrı ve mahremiyeti ile blog sitesinin gizliliği ve mahremiyeti arasındaki farkı kavrayamamış!!!

Ben bu konuyu sosyal medyada paylaşmaya başlayınca bazı webmaster arkadaşlarım orada basit bir sayaç olduğunu ve abartılmaması gerektiğini savundular. Mübarek insan, e-devlet sistemi senin kendi köyünün ziyaretçi defteri değil ki sayaç koyasın!!! Kendi sitelerinin Admin (Yönetim) kısmına yandex google sayacı ve arama motorları indexlemesi koymayan bu arkadaşlar devlet yönetiminin programına sayaç konulmasını savunabiliyor. Bilgisizlik ve sorumsuzluk, başka bir şey değil.

Siteye dahil edilen bir javascript kodun ne kadar zararlı olabileceğini herhalde bazıları farkedememiş.

Bu kod eklendiği zaman sitedeki tüm javascript etkinliklerini yapabilir. Sitede girilen tüm formları, formların içindeki tüm inputları ve bu inputlarda taşınan tüm değerleri alıp yine kendi sunucusu ile iletişim kurarak saklayabilir. Yani sisteme girmek için kimlik numarası ve edevlet şifresini yazıp enterladığın o form varya, o formdaki user ve password bilgilerini aynen yandex.ru adresine aktarabilir. Aynı şekilde sitenin tarayıcıya kaydettiği ve tekrar oradan okuduğu yine kullanıcı, password ve diğer bilgileri içeren çerezleri (cookie) okuyabilir, değiştirebilir ve kendi sunucusuna (yandex.ru) aktarabilir. Dahası, javascriptler sadece cookie ve form okumakla sınırlı değildir. Harici bir site ile makine dilinde de etkileşim sağlayabilir. XML ve JSON kullanarak da başka bir sunucudan bilgi alabilir ve başka bir sunucuya bilgi aktarabilir.

Yani o kod orada edevletin tüm veritabanını çekemez. Ama edevlete giriş yapan kullanıcının site ile etkileşiminden doğan tum bilgileri çalabilir. Alma işinin tümünü tabi ki kod yapmaz ama o kod giriş bilgilerini alır ve o giriş bilgilerine sahip olan kişiler botlar ile işin geri kalanını halleder.

Ben web sitelerinin yanısıra eticaret sistemleri ve otomasyon tasarlamış birisiyim. Arama motorlarında E-Devletin giriş sayfaları dışında indexlenmesi zaten doğru değildir. Vatandaşın tapu kayıtlarının olduğu sayfaları mı indexleyeceksiniz? Neyi indexliyorsun? Ama şifre ile giriş yapıldıktan sonraki vatandaşın tapu kayıtlarının olduğu sayfada da Yandex'in Metrica kodu hala aktif!!!

Yada (örneğin) adalet bakanlığı bölümündeki "devam eden davalar" dosyalarına da erişebiliyor Yandex'in Metrica kodu...

Ruslar bu kod ile e-devlet sistemine giriş yapan bütün vatandaşların edevlet platformu içinde yer alan tüm bilgilerini çalabilirler. Sadece şifresini değil, tapu kayıtlarından devam eden davalarına kadar!!!

Dikkat edin e-devlet bir site değil, bir sistemdir. Orası Hürriyet gazetesi değil. Bir haber sitesi yada bir alışveriş sitesi de değil. Devletin vatandaş ile bağlantı kurduğu ve gizlilik taşıması gereken KOMPLİKE BİR SİSTEMDİR. Bir site değil, bir program ve uygulamadır. Kurumlar arasında bilgi akışının sağlandığı bir platformdur. Oraya basitçe bir yandex sayacı koyamazsın. F16daki yazılımı değiştirdik, artık amerikan yazılımını değil %100 Türk yazılımı kullanıyoruz diye böbürlenen bizler, kalkmış F16 yazılımından bile daha önemli olan e-devlet sistemine (.ru) uzantılı bir sayaç programı dahil ediyoruz. Bu mudur yani?

E-devlet vatandaşın, eğitim durumunu, sağlık durumunu, vergi durumunu, sgk sicillerini, tapu ve araç kayıtlarını ve daha onlarca uygulamayı içeren komplike bir sistemdir.


Eğer bu kod dışardan yetkisiz bir şekilde konulmuşsa (ki bu ihtimal daha güçlü görünüyor), e-devlet sistemi hacklenmiş demektir. Yok eğer içerideki mühendisler koymuşsa, son derece bilinçsiz bir şekilde bir güvenlik açığı oluşturmuşlardır. Bunun sorumluluları bulunmalı!!!

Analytics yada Metrica gibi sistemlerin kullanılmasının tercih edilmesinin amacı, reklamverenlere doğru bir bilgi sunmaktır. Eğer bir haber siteniz varsa reklam almak için sitenizin ziyaretçi sayısı konusunda reklamverenleri ikna etmeniz gerekiyordur. Sizin kendi sitenizdeki sunucunuzdaki webalizer sonuçlarına güvenmeyebilir. Çünkü oradaki raporlarla oynama ihtimaliniz olabilir. Bu durumda Analytics üçüncü bir taraf olarak reklamverenlere ziyaretçilerin sayısı konusunda daha güvenilir bilgiler sağlar. E-Devlet sitesi reklam alan bir site midir?

Giriş için SMS Aktivasyonu Uygulansın

Çok mühim bir konu da girişteki kolaylıktır. Mevcut haliyle şifreyi ele geçirmesi durumunda sadece yetkisiz kişiler değil, aynı zamanda yazılım robotları (bot deniyor) da sisteme giriş yapabilir. Robotlar sistemi sömürür ve tıkanmasına da sebep olurlar. Çünkü bir vatandaşın sitede gezinirken açabileceği sayfalardan çok daha fazlasını açarlar.

Vatandaşların e-devlet şifreleri belirli mahfiller tarafından ele geçirildikten sonra, (ki muhakkak geçirilmiştir) bir robot yazılımı ile o vatandaşlara ait e-devlet platformu üzerindeki tüm bilgiler çok ayrıntılı olarak çalınabilir. Sanki o vatandaş siteyi ziyaret ediyor işlem yapıyormuş gibi bir uygulama yapılabilir. (Ki muhakkak yapmışlardır) Bu yüzden e-devlet giriş bölümüne acilen SMS Aktivasyonu uygulanmalıdır. Tıpkı bankalarda olduğu gibi vatandaş şifreyle giriş yaptığı zaman sistemde kayıtlı cep telefonuna SMS ile geçici aktivasyon şifresi gelmelidir. Vatandaşın sistemde kayıtlı cep telefonu yoksa, ilk girişte cep telefonunu tanımlamaya ve aktivasyonunu yapmaya zorlanmalıdır. Hatta yine bankalarda olduğu gibi giriş sırasında rastgele ve daha özel sorular da sorulmalı. Doğum yeri, doğu tarihi, anne kızlık soyadının bazı harfleri vs.

Önemli Sitelerde Bir Başka Güvenlik Sorunu

www.edevlet.gov.tr adresine bakınca da daha hafif olsa da yine güvenlik sorunu oluşturabilecek bir durumla karşı karşıyayız. Bir site başka bir siteden kod çalıştırmasına izin vermemeli. Bunu hiç bir banka yapmaz.

Yan resimdeki www.edevlet gov.tr sitesinde bizim sitenin dışında aspnetcdn.com, devexpress.com, jquery.com, onlinehtmltools.com, ajax.googleapis.com domainlerinden harici olarak kod kullanımına izin verildiği görülmektedir.

Günümüzde web tasarımında ve programlamasında önemli bir hale gelen framework'ler doğrudan kendi sitelerindeki CDN üzerinden kullanılmamalı.

Bu sitelerde çoğu açık kaynak olan bu framework'lerin indirilerek (download) sitenin içine kurulması bu konuda olası bazı güvenlik sorunlarını azaltmış olur.


Yeni Devam Yazısı ...
http://www.marufcetin.com/2017/08/bankalar-google-analytics-kullanyor-mu.html
Paylaş:

21 Temmuz 2017 Cuma

Sifil ile Taslaman tartışması üzerine notlar

Ebubekir Sifil ile Caner Taslaman nihayet kararlaştırıldığı gibi Veyis Ateş'in programında buluştu. Programın başını yetişemedim.

Program ile ilgili bazı değerlendirmelerde bulunmak istiyorum. Öncelikle ikisini de başarısız buldum. Ancak Sifil çok daha başarısız idi malesef. Sifil kendi düşüncesini savunmak yerine karşı tarafa saldırmaya töhmet etmeye, ayıplamaya karalamaya çalıştı. Elbette bunun bilimsel bir tarafı yok. Ayrıca kötürüm çocuğa beddua edildiği sütre hadisi olayında olduğu gibi hadis konusunda da vakıf olmadığını, karşısındakinin bilgisizliğinden istifade edip bol bol salladığını gördük. Ona sonra değineceğim.

Caner Taslaman bir baskı altında idi. Kendisine Arapça ve Hadis Usulü bilip bilmediği sorulacak korkusundan olsa gerek hep baskı altında kaldı. Ayrıca Taslaman'ın tüm eleştirilerini sadece hadis üzerinden yapması ciddi bir yanlışlık idi. Sözgelimi Ebubekir Sifil'e "500 ayet de getirseler kabul etmeyin" veya "bana ayet okuma" şeklindeki beyanlarının hesabını sorabilirdi.

Genel olarak Taslaman'ın görüşü şöyle idi: Kuran, akıl ve bilim ile çelişmeyen hadisleri reddetmiyor. Ancak Ehli Sünnetteki hadis'in dokunulmazlığı, varolan tüm hadislerin vahiy olduğu kabulünü reddediyor. Bana göre de fena bir çizgi değil. Taslaman bu çizgiyi savundu ve bu çizgisinde de genelde haklı çıktı. Verdiği örnekler hadis eleştirisi konusunda bilinen uç örnekler. Bu hadislerin bazılarının izahı yapılabilir, bazılarını da en azından mana ve hüküm olarak reddetmek gerekiyor. Sifil görüş olarak tüm hadisleri nas ve vahiy kabul ediyor. Sifil kendince hadisleri savunmaya çalıştı. Ancak tartışmada sıkınca ve bazı hadisleri savunamayacak hale gelince bu görüşünden ödün verdi ve bazı hadislerin zayıf ve hükümsüz olduğunu ve -Taslaman özelinden- onları kullanmanın ahlaksızlık/utanmazlık/oryantalistlik olduğunu söyledi.

Kütüb-üs Sitte'de geçen bazı hadisleri zikretmek ahlaksızlık mıdır? Ebu Davud'un kitabına almaktan utanmadığı bir hadisi, Taslaman dile getirip eleştirmekten neden utanması gerekiyor? Bu Sifil'in töhmet ve çamur atma dışında bir savunusu olmadığını gösteriyor.

Sifil kurnaz bir adam. "O bana soruyor, ben de hepsini tek tek izah etmek durumunda kalıyorum. Halbuki bana 3 kat zaman vermeniz gerekir" diyor. Tipik bir şark kurnazlığı. "Bana yeterince zaman verilmedi bu yüzden tam savunamadım" demesi için. Halbuki programda zaman sıkışması nedeniyle açıklayamadığı bir hadise olmadı. Keza cevap vermek yerine saldırıp töhmet etmesi hem usulsüzlük hem de tipik bir kurnazlık hareketi idi.

Taslaman programa deve sidiği getirdi ve "buyrun hadisin gereği olarak için" dedi. :D :D :D Sifil bunu ilmi olmamak ve seviyesizce olmak ile tanımladı ama neden öyle olduğunu da açıklayamadı. Deve sidiği ile ilgili hadiste "ey müminler deve sidiği içiniz" demiyor. Çöle özgü belirli bir hastalığa yakalanmış bazı kişilere -ki bunlar halen çölde ve müdahale etme durumu yok- devenin devenin sütünden ve sidiğinden içmelerini salık veriyor. Dolayısıyla böyle bir hadisin varlığını kabul eden kişinin bu deve sidiğini içmesi gerekmiyor. Benzer bir örnek vereyim: Modern tıpta bazı durumlarda morfin kullanımı tavsiye edilmiş. Şimdi "sen madem ki modern tıbbı savunuyorsun o zaman al şu morfini iç!" demekle aynı şey. Burada deve sidiği tamamen özel bir durumdur ve bir zaruret hali sözkonusudur. Çünkü "ez zaruratu tubihul mahzurat" (zaruretler mahzurlu olan şeyleri mübah kılar) ilkesi vardır. Diğer taraftan o deve sidiğini hadis inkarcılarının içmeleri daha doğrudur. Çünkü hadis inkarcılarına göre Kuran'daki dört şey dışında hiçbir haram yoktur. Dolayısıyla o ayet mucibince bir hadis inkarcısının deve sidiğini tahrim etmesi çelişkidir.


Sifil erkek ve kız çocuğu sidiğinin farklı koktuğunu söylemekle salladı. Çok talihsiz bir çırpınış idi.

Sifil'in kadın sünnetinin, kadının cinselliğinin yükseltilmesi amacıyla olduğunu söylemesi de tamamen sallamadır. Kadının cinsel organının iç dudaklarının yada klitoris'in alınması kadının cinsel hazzını azaltmak içindir tabi ki. Çünkü kadının organının cinsel sinir uçları iç dudaklarda ve daha da fazlası klitoriste toplanmıştır. Sifil'in tam tersini söylemesi hem cehalet hem de saptırmadır. Halbuki erkeğin sünnet edilen organının gulfesinde cinsel sinir uçları yoktur.

Gel gelelim şu sütre hadisine. Ebu Davud'ta geçen söz konusu hadiste kötürüm bir adam bir sahabeye, "ben hastaydım, eşeğin üzerinde geliyordum, sütresiz namaz kılan peygamberin önünden geçtim o da bana beddua etti kötürüm oldum" demiştir. Burada bir sıkıntı var, ama sıkıntı nerede? Sahabe yalan söylemiyor, raviler de güvenilir, onlar da yalan söylemiyor ama kötürüm kişi yalan söylüyor. Dolayısıyla hadis metninde bir sıkıntı yoktur.

Peygamber'in otuz erkek gücünde olması meselesi de imkansız olmamakla birlikte mantık dışı olduğu doğrudur. Sifil'in "böyle olması mantıksız mı" diye sorması da yanlış cevap. Tabi ki mantıksız. Peygamber bir süpermen yada bir mutant değil. Diğer Mekkeliler gibi bir beşer. Eğer bir mucize ise bunun mantıklı olması gerekmez.

Taslaman'ın şu açıklaması çok yerinde ilmi idi: Hadise yönelik eleştirileri savuşturmak için aynı eleştirileri Kuran'a yönlendirmek başka bir kurnazlıktır. Sifil bunu sık sık yaptı.

Gelelim evrim tartışmasına. Sifil Taslaman'ın "Ben evrimciyim" dediğini iddia etti. Taslaman inkar etti. "Hayır öyle bir kelime kullanmadım". Sifil "Hayır kullandın" diye diretti ve Taslaman'ın kitabından çıkarıp okudu. Fakat oradaki ifade "ben evrimciyim" şeklinde değildi. Belki o anlama gelebilecek bir ifade idi ama yine de ifade tam olarak öyle değildi. Ayrıca Sifil "şu anlama gelecek bir ifade kullandın" demiyor ki, "şu ifadeyi kullandın" diyor. Taslaman evrimin İslam ile çelişmediğini ve şimdiye kadarki en iyi bilimsel açıklama olduğunu söylüyor. Bu konuyu tartışmayı başka bir yazıya bırakıyorum.

Taslaman'ın çamurdan yaratılmaya getirdiği açıklama mantıklı. "Andolsun ki biz insanı bir sülaleden bir tin'den yarattık." (Müminin 12) Keza başka bir ayette "Kendilerini yaratmak mı daha zor, yoksa yarattığımız diğer şeyleri yaratmak mı? Şüphesiz biz onları yapışkan bir çamurdan yarattık." (Saffet 11) Görüldüğü gibi Saffet süresi 11 ayette insanlar çoğul olarak çamurdan yaratıldı diyor. Halbuki sadece ilk insan çamurdan yaratılmıştı. Demek ki insanın özünün çamurdan olması toprak bileşeninden yaratılmış olması doğru bir açıklama görünüyor.

Ademden önce meselesini de başka bir yazıya bırakıyorum. :D

Taslaman hadisin Kuranla akılla mantıkla bilimle çeliştiğini bu yüzden birilerinin bunu Peygamber adına uydurduğunu iddia ediyor. Buna karşı Sifil, "O zaman o kişinin neden bunu uydurduğunu bize anlat" diyor. :D Tam benlik bir soru, bunu daha önce de yazmıştım: "Neden" sorusu batıldır. Nedenler tam olarak bilinemez. Mesela "Neden durup dururken Sifil, Taslaman evinde çekilen bir resmin altına abuk subuk bir şiir ekleyip yayınladı? Hııı neden?"

Sifil'in tek yaptığı şey, sen Arapça bilmiyorsun, sen hadis usulü bilmiyorsun filan filan... Bunlar tabi ki bilimsel zırvalar. Bu usulsüzlüktür. Çünkü tartışmayı tartışma alanının dışına çıkarıp yozlaştırıyor. Buna bilimsel metodta "Ad hominem" adı veriliyor. Böyle bir usulsüzlük yapıp, usul bilmemek ile suçlamak safsata değil mi? Ne İbni Sina ne de Farabi Yunanca bilmiyordu. Buna rağmen Aristo'yu en iyi kavrayan kişiler Farabi ile İbni Sina'dır.

Şimdilik bu kadarlık yeterli sanıyorum. :)
Paylaş:

16 Temmuz 2017 Pazar

Ebubekir Sifil ile Caner Taslaman'ın atışması hakkında

Önce konuyu internette aktarıldığı şekliyle özetleyelim.

Bir instagram hesabından bir resim paylaşıldı. Resimde Cumhurbaşkanı başdanışmanı Hidayet Türkoğlu, Caner Taslaman, Mustafa İslamoğlu, Mehmet Okuyan ve Emre Dorman bulunuyordu. Görseldeki ev Taslaman'ın eviydi ve ifade ettiğine göre görselde başka isimler de bulunuyordu ancak fotoğrafın açısına düşmemişlerdi.

Daha sonra bu resmi Ebubekir Sifil de hem facebook'tan hem de twitter'dan imalı/sataşmalı bir yorum ile paylaştı. Caner Taslaman, Sifil'in facebook'daki gönderisine şöyle bir cevap yazdı: "Ev benim, iftara bu tanıdıklarımı davet eden benim, orada çıkmamışlar da var... Sifil bey, sen bundan niye rahatsız oldun? Benim evime, ilahiyat camiasından, çok farklı düşündüğüm kişiler de dahil olmak üzere birçok kişi gelir. Bir gün seni de beklerim. Gel, derdin nedir anlat da anlayalım. Farklı düşünenler olarak birbirimizi boğazlamamızı mı istiyorsun? Derdin ne? Farklı fikirlerimizi herkes duyuyor, basiretiyle herkes kendi kararını verecektir, bu telaş ne?"

Facebook'daki bu yorum üzerine Sifil, Taslaman'a "Sen üstüne alınmışsın Toraman. Çapsızlarla oturup kalkma adetim yok. Gücün yetiyorsa F. Çetin'e bir cevap yaz önce" deyince Taslaman da Sifil'in tweetini alıntılayarak "benim gücüm sana fazlasıyla yeter Sefil bey. Kimsenin bilmediği çomarlarının arkasına sığınma. Beklerim" yazdı. Daha sonra Sifil, taslaman'a "En iyi bildiği konuda tartışmaya" çağırarak meydan okuyunca Taslaman da "İstediğin her konuda" diyerek teklifi kabul etti.

20 Temmuz Perşembe 21.00 de Habertürk TV'de Veyis Ateş'e konuk olup tartışacaklardır.

***

Gördüğünüz gibi tartışmayı başlatan Sifil oldu. Ayrıca yine gördüğünüz gibi Sifil'in yaklaşımı son derece sataşmacı ve seviyesiz. Umarım tartışma programında daha seviyeli bir dil kullanır.

Sifil bu tartaşmayı neden başlattı? Tabi ki şöhretini arttırmak için. Bu çok klasik bir yöntemdir. Ne kadar kişiyi tahrik edip duelloya ikna edebilirseniz şöhretiniz o kadar artar.

Kim kimi yener konusuna gelince. Tartışacakları şey, abdestin sünnetlerinin mezheplere göre sıralanışı olmayacağına tabi ki Taslaman götürür diye bekliyorum. Yine de bu işte keskin sınırlar yoktur. Çünkü birini yenmek ancak onu yenildiğine ikna etmekle mümkündür ki, böyle bir durumda bir yengi çıkmayacaktır. Karşı taraf ne kadar cahil olursa olsun laf kalabalığı yaptıkça siz kazanmış olmuyorsunuz.
Paylaş:

Blog Arşivi

İletişim

Ad

E-posta *

Mesaj *