23
Mar

TuxHam_blog.jpg (200×173)Bilenler bilmeyenlere anlatsın. Linux Kullanıcıları Derneği ve İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü tarafından ortaklaşa gerçekleştirilen Özgür Yazılım ve Linux Günleri 30-31 Mart 2012 tarihinde İstanbul Bilgi Üniversitesi Dolapdere Kampüsü’nde gerçekleştirilecek.

2 gün sürecek olan etkinlikte Telsiz ve Radyo Amatörleri Cemiyeti (TRAC) orada bulunacak. Cumartesi günü de  amatör telsizcilik ve linux konusunda kısa bir konuşma yapacağım. Linux veya amatör telsiz konusuna ilgi duyan herkesi bekliyoruz!

 

Etkinlik anasayfasına buradan, etkinlik programına ise buradan ulaşabilirsiniz.

73! DE TA1AET

(Fotoğraf: http://www.linuxjournal.com/content/amateur-radio-forums-now-tech-support-i-hope)


12
Ara

Dün birçok havacılık meraklısı insanın yanısıra otellerin ve havayolu şirketlerinin çeşitli havalimanlarına iniş yapacak olan uçakları görebildikleri, kule ile aralarında olan telsiz konuşmalarını dinleyebildikleri iststatus.com kapatıldı. Kapatılma sebebi ise “güvenlik”. Devlet Hava Meydanları İşletmesi, VIP uçakların içerisindeki yolcuların, uçak kodunun, havadaki pozisyonunun herkes tarafından açık olarak görülmesinin bir güvenlik zaafiyeti oluşturduğunu düşünmüş ve öyle görünüyor ki teröristlerin bir saldırı yaparak uçağı düşürmelerinden korkarak kapatılmasını sağlamış [0]. Bu düşünce tarzının yanlış olduğunu, kafamıza kuma gömmek olduğunu ve doğru olanın ne olduğunu bir şekilde DHMİ’ye anlatmak gerekiyor.

Konuyu daha iyi anlayabilmek için iststatus.com ‘un bu servisi nasıl sağladığına fazla teknik detaya inmeden bir bakalım. Radar sistemlerinin nasıl çalıştığını hepimiz az çok biliyoruz. Bir radar sinyali göndererek objelerden seken sinyali işleyip bu objelerin bize olan uzaklığını hesaplayarak objelerin konumunu belirleyebiliyoruz. Havacılıkta bu radara Birincil Radar (Primary Radar) deniyor ve genel olarak yedek olarak kullanılıyor. Ancak şöyle bir sorun mevcut, uçakların kuleye olan uzaklık bilgisinin yanısıra yerden olan yüksekliği, uçak kodu gibi bilgilerin de bilinmesi gerekiyor. Bunun için birincil radar yetersiz kaldığı için İkincil İzleme Radarı (Secondary surveillance radar) kullanılıyor. Basit olarak her uçak gerekli bilgileri içerisinde barındıran bir alıcı/verici (transponder) taşıyor. İkincil izleme radarı bir sinyal gönderip bilgi istediği zaman uçaklarda bulunan bu alıcı/verici gerekli bilgiyi kodlanmış (şifrelenmiş değil) bir biçimde 1090 MHz‘den yayınlıyor.  DHMİ’nin söylediğinin aksine şunu belirtmek gerekir ki bu bilgi uçağın içerisindeki yolcu bilgilerini kapsamamaktadır.

IstStatus‘un yaptığı şey zaten herkes tarafından görülebilen, şifrelenmemiş ve 1090 MHz’de gönderilen veriyi anlamlı bir veri haline getirip 3 dakika gecikme ile insanlara sunmak. Telsiz konuşmaları da tek bir kanal değil, birden fazla kanal dolaşılarak veriliyor. Bu kanallar, benim bildiğim kadarıyla, yer, yaklaşma, ve kule. Burada konuşulanlar ise tamamiyle havacılıkla ilgili ve anormal bir durum olmadığı sürece “TK 321, yüksekliğini aaa’ya çıkar, hızını bbb’ye düşür, baş kısmını da ccc’ye yönelt” şeklinde ve herhangi bir önemli bilgi içermiyor. Tekrar hatırlatmak gerekiyor ki bu telsizler de herkes tarafından rahatlıkla dinlenebilir.

IstStatus türünün tek örneği değil tabi ki. Dünyanın birçok yerinde, görünüllü insanlar evlerinin çatılarına basit bir telsiz anteni ve az önce bahsettiğim 1090 MHz’de yayınlanan veriyi anlamlı hale getirecek cihazı koyarak (ADS-B Receiver) insanlara havaalanında neler olduğunu sunuyor. Bunun çeşitli yararları mevcut. Birincil olarak havacılıkla ilgilenen çeşitli insanlar kuleyi takip ederek muhabere konusundaki bilgilerini genişletiyorlar. Bu, aynı zamanda kulede ya da uçakta meydana gelen bir olumsuzluk durumunda otokontrol sağlıyor. Bir diğer yararı ise oteller ve misafirlerini havalimanında karşılayacak olan oluşumlar bu sayfayı takip ederek uçağın nerede olduğuna bakarak araçlarını zamanında çıkarıyorlar ve havalimanındaki gereksiz trafik engellenmiş oluyor. Bunu, iststatus kapandığından beri Atatürk Havalimanında yaşanan araç trafiğinden anlayabiliriz.

Herhangi bir terörist eylemi gerçekleştirme planı olan bir insan, 3 dakika gecikme ile aldığı bilgiyi kullanmayacaktır ve daha sofistike düşünmesi gerekir. Elinde yaklaşık olarak 400-500€ maliyeti olan ADS-B alıcısı olan bir insan bu bilgileri zaten görebilecektir. Şu anda alınan karar kafamızı kuma gömmekten başka bir şey olmamakla birlikte otokontrolü ve havacılık meraklılarının çalışmalarını engellemektedir. Öyle görünüyor ki kuledeki insanlar ve DHMİ, bu otokontrolden rahatsız oluyorlar. Dilerim ki havacılık meraklıları, telsiz meraklıları ve bir şekilde iststatus’den yararlanmış insanlar bu konunun peşini bırakmaz.

[0] http://www.airporthaber.com/iststatus-susturuldu–36590h.html


25
Eki

Veri Yapıları ve Algoritmalar (COMP231) dersinin bu haftaki projesinde sıralama algoritmalarının implementasyonu ve analizi yapılması istendi. Proje Quick sort ile beraber ders kitabı olarak kullandığımız Cormen’in Introduction to Algorithms kitabındaki Merge sort algoritmasının yazımını bize bırakmış ve Insertion sort ile beraber birtakım yardımcı fonksiyonları hazır olarak vermişti.

Güzel bir pazar günü başlangıcında quick sort’u yazıp diğer kısımlarını akşama bırakmış idim. Sanırım eğlence akşam vaktini bu işe ayırmamla başladı. Gece 10.30 – 3.30 arası Cormen’in Merge sort algoritmasını yazmakla,  toplamda 4 tane algoritmanın analizini yapıp anlamlı veri elde eden programcığı yazmakla ve gnuplot öğrenmekle geçti. Sonunda gnuplot ile sonucu elde ettim ancak twitter’da bahsettiğim üzere bir problem vardı. Gecenin o vaktinde artık ekrana bakacak halim kalmadığı ve proje teslimine 5 saat kaldığı için projenin o hali ile gönderip sabah labda bakmaya karar verdim.

Sabah problemi reb’e söylemem ile beraber durumun hocaların bulunduğu e-posta listesine atılması bir oldu :) Şimdi bulduğum sonucu ve olması gereken sonucu yan yana koyalım.

İlk analizde görüyoruz ki harika bir gariplikte O(n^2) çalışması gereken insertion sort O(n) çalışmakta. Normalde O(n . lgn) çalışması gereken merge sort neredeyse O(n^2) çalışıyor gibi görünüyor.

Tabi ki hata bu veriyi üreten kodda meydana geliyor. Sıralama algoritmalarının çalışmasında herhangi bir sıkıntı mevcut değil. Sakin kafa ile düşününce anlıyoruz ki durum tamamiyle mutation, yani bir dizinin (array) ortak kullanımından kaynaklanıyor. Alınan kahve oranı ve gecenin ilerleyen saatleri ile yazılan kod kalitesi arasında bir ilişki olabileceğini düşünürsek ilk veriyi üreten kodun kirli bir biçimde yazıldığına şaşırmamak gerek. Kod tek bir liste alıp o liste üzerinde tek tek sıralama algoritmalarını çalıştırıyor. Yani ilk sıralamadan sonra elimizde sıralı bir liste oluyor ve devamındaki 3 algoritma sıralı liste üzerinde sonuç veriyor. Durum böyle olunca, insertion sort çalışması gereken bir biçimde sıralı liste üzerinde O(n) zamanda çalışıyor. Merge sort sıralanmamış liste üzreinde ilk olarak çalıştırıldığı için onun dışındaki diğer algoritmalar da aynı şekilde sıralı listeler üzerinde sonuç veriyor.

Sabah veri üreten programığı düzgün bir biçimde yazdıktan sonra doğru olan yukarıdaki sonuçları elde ettim. Sağda görüldüğü üzere insertion sort O(n^2) zamanda çalışıyor ve diğer algoritmalar yok denecek kadar az bir sürede işlemi tamamlıyor. Soldaki grafikte ise kalan algoritmaların analizi mevcut. Görüldüğü gibi 25.000.000 elemanlı listeye kadar analizi mevcut ki bu kadar büyük bir rakamda insertion sort’u beklemek çok uzun süreceği için çıkarmak zorunda kaldım.

Yanlış veriyi üreten programcığı buradan görebilirsiniz. Farkedeceğiniz üzere getAnalysis metodu tek bir liste üzerinde işlem yapmakta. Düzgün ve temiz haline ise buradan ulaşılabilir. getAnalysis artık bir metod ve liste alarak, önce listeyi kopyalıyor, ardından da zamanı döndürüyor. Bu işlemi 4 algoritma için tekrarlayıp zamanlarını aldıktan sonra dosyaya yazdırıyorum.

Ne öğrendim? 

Temel olarak yorgunken bir problemin içinden çıkılamadığında dinlenilmesi gerektiğini öğrendim. İşin teknik kısmında ise mutation konusunda dikkatli olunması gerektiğini, sıralama algoritmalarının nasıl davrandığını düzgün bir biçimde aklımda yazdım. Tabi sonucunda bölüm içerisinde eğlence konusu olmam ve “Eren The Sorter” olarak adlandırılmamın kaçışı olmadı :)

Not: Grafikleri geç bir saatte oluşturduğum için yazım yanlışı yaptım. Grafiklerin sadece başlığının düzeltilmiş hali ile uğraşacak ve görselleri tekrar yükleyecek gücü bulamadığım için grafikleri okurken comprasion kelimesini comparison şeklinde okumanızı rica ediyorum efem.

23
Eyl

Ofis içerisinde, ya da evinizde bir bilgisayardan diğerine dosya almak istiyorsunuz diyelim. Bunun için Samba, Scp (secure copy), FTP gibi yöntemler mevcut ancak bunların önceden ayarlanması ve üzerinde zaman harcanması gerekiyor. Bunun yerine basit olarak bri dizindeki dosyaları HTTP üzerinden sunmaya yarayan ve python ile beraber gelen basit bir sınıf mevcut, SimpleHTTPServer.

Tek yapmanız gereken bir konsol açmak ve dosyalarını paylaştırmak istediğiniz dizine girmek. Sonrasında konsola python -m SimpleHTTPServer 8080 yazarak o dizindeki dosyaları 8080 numaralı porttan sunmaya başlayabilirsiniz.


21
Eyl

6-9 Ekim’de TÜYAP’ta gerçekleşecek CEBIT etkinliğinde ben de dahil olmak üzere birkaç amatör telsizci aktif katıılmcı olacağız. AMD Geode platformu ile beraber Pardus üzerinde çalışan amatör telsizcilik yazılımları ve bunların uygulamalarını sergileyeceğimiz Pardus standımıza hepiniz davetlisiniz. Eğer RoIP (Radio Over Internet Protocol), APRS (Automatic Packet Reporting System) ve genel anlamda amatör telsizciliğe meraklıysanız, standımıza gelmenizi tavsiye ederim. CEBIT’te görüşmek üzere!


9
Haz

Sn. Huzeyfe ÖNAL,

Anonymous konusunda birçok yerde çeşitli haberler çıktı. Kimimiz bu
oluşumu yeni duydu, internet teknolojileri alanında çalışan insanlar
olarak bazılarımız da onları Sony, Wikileaks vb. gibi operasyonlarda
yakından takip etti.

Öyle görünüyor ki, siz de Anonymous konusunda röportaj verecek kadar
yakından takip etmişsiniz ve bu konuda bilgi sahibisiniz. Röportajınızı
aynen alıntılıyorum;

Anonymous’un anlık mesajlaşma kanalında gruba destek veren çok sayıda
Türk ile karşılaştık. İdeolojik söylemleri ile yurt dışındaki binlerce
Anonymous taraftarını Türkiye’ye karşı kışkırtan bu kişiler, bazı önemli
hedeflere saldırılması önerisinde bulundu.

İlk büyük saldırılarını bugün saat 18.00′de gerçekleştirmeyi planlayan
grup, 12 Haziran akşamı da YSK’nın sistemini etkisiz hale getirmeye
çalışacak. Bu sayede büyük yankı uyandırmayı ve seçime şaibe düşürerek
devlet kurumlarını yıpratmayı amaçlayan hackerlar, saatlerce sisteme
veri girişini engellemeyi hedefliyor. [0]

Anladığım kadarıyla irc.anonops.li #opturkey kanalındaki konuşmalardan
bahsediyorsunuz. Orada bir siyasi partiye saldıralım, YSK’ya saldıralım
vs. diyen kişilerin daha Anonymous’un ne olduğundan haberdar
olmadıklarını siz de ben de tahmin edebiliriz. Dikkat ettiniz mi
bilmiyorum ancak Anonymous oluşumu o kanalda ve diğer birçok yerde de
hiçbir politik, dini, ırkçı yaklaşımları olmadığını belirtmiştir. Zaten
sonrasında gönderdikleri bildiride, iddialarınızın hepsi
yalanlamışlardır. [1]

Bu noktada benim aklıma 2 olasılık geliyor. Ya gerçekten Anonymous oluşumunu
yakından takip etmediniz, ya da yukarıda belirtilen IRC kanalında
söylenen “bu politik değil, amacımız sadece *SANSÜR* konusuna dikkat
çekmek” cümlelerini kaçırdınız.

Bu noktadaki tek sorum şu: böyle bir zamanda, güvenilir
kaynaklara dayanmadan, bu şekilde bir iddiayı nasıl ortaya
koydunuz ve bu açıklamadaki amacınız ne idi?

[0] http://www.gelecekonline.com/metin/huzeyfe_onal_siber_saldirinin_hedefi_12_haziran-11757
[1] http://www.ntvmsnbc.com/id/25221300/

Teşekkürler,
Eren TÜRKAY


30
Mar

1 Mayıs 2011 yaklaşıyor. Geçen sene LKD ve BITDER ile beraber çok sayıda denilemeyecek bir katılımla  güzel bir 1 Mayıs geçirmiştik. Umuyorum bu sene daha fazla katılım gerçekleşir ancak şimdiye kadar  bloglarda ya da başka ortamlarda konu hakkında bir haber duy(a)mamak beni biraz üzdü doğrusu.

1-2 Nisan Özgür Yazılım ve Linux Günleri‘nde konuşulabilecek konu olarak bunu da hatırlamakta yarar  var. Özgür Yazılım ile ilgilenen insanlar olarak yüzyüze konuşmanın ve birbirimizle tanımanın organize olmamızda yardımcı olacağını düşünüyorum.

Linux Günleri’nde ve 1 Mayıs’ta görüşmek üzere!


22
Şub

Giriş

Son 5 aydır eski adı ile PLT-Scheme, yeni adı ile Racket kullanarak problemler çözüyor ve fonksiyonel programlamanın güzelliklerini görüyoruz . Her programcının hayatının belli bir bölümünü fonksiyonel programlama ile geçirmesi gerçek anlamda çok yararlı oluyor ve düşünce yapısını değiştiriyor. Bu konu farklı bir blog girdisinin konusu olacağı için konuya fazla eğilmeden başlıkta da belirttiğim şeyler hakkında bir şeyler karalamayı planlıyorum.

Bu blog girdisinde map, fold ve lambda’nın ne olduğuna ve nasıl çalıştığına değinip, bunları kullanarak çözülebilecek güzel bir problem yazacağım. Bahsedilen fonksiyonlar birçok programlama dillerinde mevcut ve hepsinin altında yatan mantık aynı. Yazının daha rahat anlaşılır olabilmesi adına Racket’in sözdizimine değinmek yararlı olacak. Genel olarak Racket’a giriş, high-order fonksiyonların tanımı üzerine yoğunlaşan bir yazı olacak.

(Kodların renklendirilmemesinden ötürükusura bakmayınız. Anladığım kadarıyla WordPress Racket için kod renklendirmesi desteklemiyor)

Racket, infix prefix notation diye tabir edilen, prosedürlerin önce geldiği, sonrasında parametrelerin yer aldığı bol parantezli bir dil. Tipik bir toplama işlemi

(+ 2 3)

(+ 2 3 4 5 6)

şeklinde yapılıyor. Burada +, iki veya daha çok sayı cinsinden parametre alabilen ve sayıların toplamını döndüren bir fonksiyon. Tıpkı matametikte olduğu gibi, iç içe geçmiş fonksiyonlar da yazabiliyoruz. 3 4 ve 5 sayılarını toplayıp, sonrasında elde edilen rakamı 2 ile çarpmak istersek;

(* 2 (+ 3 4 5))

yazmamız yeterli olacaktır. Bir fonksiyon tanımlamayı define prosedürü ile yapıyoruz. iki parametre alan ve bunları birbiri ile çarpan basit bir fonksiyonu aşağıdaki gibi tanımlayabiliriz.


(define (carp bir iki)

(* bir iki))

Daha fazlası için How to Design Programs kitabını okuyabilirsiniz. Şimdilik bu kadar işimizi görecek.

Lambda

Yukarıda, bir fonksiyon tanımladık ve buna bir isim verdik. Ancak her fonksiyona bir isim vermek zorunda mıyız? Hayır. Lambda bu noktada işimize yarıyor. Lambda’yı bize bir fonksiyon döndüren anonim bir fonksiyon olarak adlandırabiliriz. Örneğin bir parametre alan ve bunun karesini döndüren bir fonksiyon elde etmek istiyorsak


(lambda (x) (sqr x))

yazmamız yeterli olacaktır. Bu yukarıda yaptığımız toplama işlemindeki gibi kullanabiliriz. Hatırlayın, prosedürler önce ve parametreler sonra geliyor. Eğer lambda bize bir fonksiyon döndürüyorsa, bu fonksiyonu direkt olarak çağırabilir ve işimizi halledebiliriz. Öyleyse;

((lambda (x) (sqr x)) 2)

bize 4 sonucunu verecektir. Lambda, high-order fonksiyonları kullanırken çok işimize yarayacak. Devam etmeden önce bildiğiniz bir programlama dilini kullanarak bunun üzerinde biraz pratik yapmanız yararlı olacaktır.

High-Order Functions

High-order fonksiyonlar, genel olarak, en azından parametre olarak bir fonksiyon alan veya çıktı olarak bir fonksiyon döndüren fonksiyonlardır. Fonksiyonumuz bir veri almak yerine, bir fonksiyon alabilir ve bununla harikalar yaratabiliriz. İşte Racket’taki map, foldr, foldl, filter gibi fonksiyonlar bu kategoriye girer. Diğer programlama dillerinde de map, fold ve filter mevcut.

High-order fonksiyonlar, listeleri işlemede bize büyük kolaylıklar sağlıyor.  Map, listedeki her eleman üzerinde işlem yaparak, işlem sonrasında çıkan sonucu bir liste halinde döndürür. Filter ise, her eleman üzerinde işlem yaparak, bizim belirttiğimiz kurallara uyan liste elemanlarını seçip, bir liste döndürüyor. Adından da anlaşılacağı gibi, belli bir koşula bağlı olarak liste elemanlarını filtreliyor.

Biraz daha açacak olursak. Map, kendisine ilk parametre olarak, tek bir parametre kabul eden ve sonuçta bir şey döndüren bir fonksiyon alıyor, ikinci parametre olarak da üzerinde bu fonksiyonun uygulanacağı liste alıyor. Sonrasında, listenin her elemanını teker teker alıp, o fonksiyona parametre olarak veriyor, fonksiyondan dönen sonucu yeni bir liste halinde bize sunuyor. Listedeki her sayıyı bir arttıran bir map ifadesi şu şekilde yazabiliriz;


(map (lambda (parametre) (+ 1 parametre)) (list 1 2 3 4 5))

Burada dikkatinizi lambda’ya çekmek istiyorum. Map ilk parametre olarak bir fonksiyon alıyor demiştik. Bu fonksiyonu dışarıda bir yerde tanımlamak yerine, lambda ile o fonksiyonu oluşturduk ve map’e parametre olarak verdik. İstersek listedeki her elemanın karesini de şu şekilde alabilirdik;


(map sqr (list 1 2 3 4 5))

Sqr fonksiyonu, bir parametre alan ve sonucunda o sayının karesini döndüren bir fonksiyondur. Burada lambda’nın ve map’in ne iş yaptığını daha iyi görebileceğinizi umuyorum. Genellikle high-order fonksiyonları kullanırken fonksiyonlar dışarıda tanımlanmaz ve lambda ile hızlı bir biçimde işlem yapılır.

Filter da map ile aynı mantıkta çalışıyor ancak kendisine parametre olarak aldığı fonksiyonun boolean bir veri, yani doğru veya yanlış döndürmesini bekler. Bunu her liste elemanının kontrolünü sağlıyor gibi düşünebiliriz. Eğer o liste elemanı fonksiyona giriyor, ve sonucunda True dönüyor ise, o eleman çıktıdaki listede yer alacaktır. (1 3 4 5 7 88) listesindeki 4ten büyük elemanları almak için aşağıdaki kodu kullanabiliriz.


(filter (lambda (x) (> x 4)) (list 1 3 4 5 7 88))



Tekrar hatırlatmak isterim. Listedeki her eleman sıra ile fonksiyona parametre olarak gönderiliyor, eğer fonksiyondan dönen sonuç True ise, sonrasında döndürülecek olan listeye ekleniyor, değilse zaten listede yer almıyor.

Fold, map ve filter’dan biraz daha karışık. Map gibi birinci parametre olarak fonksiyon alıyor ancak bu fonksiyon iki parametreli. Sonraki parametre olarak iterasyona başlamak için bir veri, ve en son olarak da üzerinde işlem yapacağı listeyi alıyor. Tipik bir foldr prosedürü şu şekilde;


(foldr (lambda (x y) (* x y)) 1 (list 2 3 4 5))

Foldr, listenin sağından başlayarak işlem yapıyor ve akümülatif çalışıyor. Buradaki mantık şu. Listeyi işlerken, fold’a verdiğimiz fonksiyonun ilk parametresi, yani buradaki “x”, her zaman listenin elemanları, “y” ise bir önceki fonksiyon çağrısından dönen sonuç. Listeyi işlemeye başlarken, fonksiyonun ilk çağrılışında, daha önce bir fonksiyon çağrısı olmadığı ve sonuç dönmediği için, “y” parametresi, fold’a verdiğimiz ikinci parametre oluyor. Yani fold başlarken, “x” 5, “y” 1 değerini alıyor ve fonksiyona giriyor. Bu fonksiyon da her iki değeri çağırıp “5″ sonucunu döndürüyor. Şimdi sıra listenin ikinci elemanında. “x” parametresi 4 değerini alıyor, bir önceki çağrıdan gelen 5 sonucu da “y” değeri oluyor. İkisi çarpılıyor ve 20 sonucu çıkıyor. Sıra üçüncü elemanda. “x” 3 değerini alıyor, “y” 20 değerini alıyor ve çarpılarak sonuç 60 çıkıyor. Ve sıra geldi son elemana. Son “x” 2 değerini alırken “y” 60 değerini alıyor ve foldr fonksiyonumuz 120 değerini döndürüyor.

Basit olarak lambda, map, filter ve fold bu işlere yarıyor. Geliştirip daha farklı şeyler yapmak pratikle kazanılabilecek bir şey. Kullanım alanında sınır mevcut değil. Örnek olarak, map içerisinde fold kullanıp, çıkan sonucu filtreleyebilir ve oradan dönen liste üzerinde de işlem yapabiliriz. Bu noktada “sky is the limit” :)

Soru

Elimizde içerisinde sayı listesi barındıran bir liste olsun. Örneğin ((1 2) (3) (4 5)). Tasarlayacağımız fonksiyon da bu listeyi alıp, kartezyen çarpımlarını yine sayı listesi barındıran bir liste halinde döndürsün. Yani fonksiyonumuza ((1 2) (3) (4 5)) verdiğimizde bize ((1 3 4) (1 3 5) (2 3 4) (2 3 5)) döndürmeli.

Lakin burada bazı kısıtlamalar var. Tasarlayacağımız fonksiyon sadece map, filter, fold kullanabilir ve fonksiyonun gövdesinde “if, else” gibi ifadeler kullanmamamız gerekiyor. Sadece, high-order fonksiyonlara verdiğimiz fonksiyonlar içerisinde (lambda) “if, else” kullanabiliriz. Mümkünse google’da benzer sorular için aramayın, üzerinde düşünmek gerçekten güzel bir beyin jimnastiği oluyor.

Bunu istediğiniz programlama dilinde çözebilirsiniz. Ben Racket’da yorumları silersek normalde 12 satır, biraz sıkıştırırsak 8 satırda çözdüm ve high-order fonksiyonlar konusunda çok pratiğim olmadığı için yaklaşık olarak 2 saat vaktimi aldı. Sonuçta gayet iyi bir pratik oldu tabi. Çözdüğünüz zaman yorum olarak girmenizi gerçekten isterim. Yaklaşım ve düşünce farklarını görmek ve bunun üzerinde tartışmak yararlı olacaktır.

Her listeden bir eleman, ve küçük parçalara ayırın da ipucunuz olsun :)


15
Şub

Google’a göre alfabemiz şu şekilde imiş :)

 

Akbank

Biletix

Canlı Para

Çeviri

Dizi İzle

E okul

Facebook

Garanti

Hotmail

Ikea

Java

Kral Oyun

Lig tv

Mynet

Ntv

Oyunlar

Ösym

Pegasus

Rüya Tabirleri

Sahibinden

Şans Topu

Thy

Ulusoy

Ülker

Vatan

Youtube

Zargan


2
Oca

Özgür Yazılım ile ilgili birçok etkinliğe ev sahipliği yapmış, Turing günlerini düzenleyen, aktif olarak Özgür Yazılım kullanan ve Türkiye’nin ilk Bilgisayar Bilimleri bölümü olan Bilgi Üniversitesi Bilgisayar Bilimleri bölümü kapanma tehlikesi ile karşı karşıya.

Umuyoruz ki sizlerin de desteği ile bu gidişe bir dur denecek. Daha ayrıntılı bilgi için şu adresten yararlanabilirsiniz.


29
Ara

Commodore64′e sahip ol(a)madım ancak o günlerdeki ortama büyük bir hayranlık duyuyorum. SID gibi sınırlı bir çip ile üretilen müzikler gerçekten harika ve şaşırtıcı. Çocukluğumda adını dahi hatırlayamadığım bir konsolda mario, tetris vs. oynamışlığım ve biraz da olsa o tadı alabilmişliğim var ama tabi ki bazı şeylerin yerini asla tutmayacak.

commodore-ready.gif (389×275)

7dx 2010′a katılmamla bu ortamı yaşama fırsatı buldum ve en çok keyif aldığım şey SID müziklerinin sürekli çalması idi. Öyle ki, artık akıllara kazınmış oyun müziklerinin yeniden yapılmış halleri de mevcuttu. Oradaki insanlarla biraz sohbet ettikten sonra hala aktif olarak bu tür müziklerin yapıldığını ve bir topluluk sitesinde paylaşıldığını öğrendim.

Birden fazla remix sitesi olmasına rağmen en rahat kullanılabilir ve geniş olan RKO var. (http://remix.kwed.org) Parçaları beğeni sırasına göre listeleyebiliyorsunuz ve ücretsiz olarak indirebiliyorsunuz. Yüzlerce remix var ve ben henüz ilk sayfayı dinleyebildim. En az 2 hafta kadar kafamı meşgul edecek gibi görünüyor :)

Aşağıda şu ana kadar dinlediğim ve beğendiğim parçalar mevcut. Siz de onlarla başlamayı deneyebilir ve sonrasında RKO’yu kullanıop keşfetmeyi deneyebilirsiniz. İyi dinlemeler.

Machinae Supremacy – The Great Gianna Sisters
m00g - Tristess
X-formZ – To Be On Top
Mordi - Sweet (feat Gibs)
o2 - Comic Bakery
SIDrip Alliance – From First To Last


28
Ara
ACM, Dünya çapında hesaplama ve bilgisayar alanında çalışan eğitimci, araştırmacı ve profesyonellerin oluşturduğu en köklü topluluklardan biridir. Amaçları arasında alanın sorunlarına çözümler sunmak ve üyeler arası iletişimi desteklemek bulunur.

ACM Chapter‘ları çeşitli yerel etkinlikler ve buluşma imkanları sunarak üyelerinin ve hesaplama alanında çalışan tüm topluluğun gelişimi için çalışır. (http://acm-turkey.org/)

İlki 3 Kasım 2010′da yapılmış olan ACM İstanbul buluşmaların ikincisi 5 Ocak 2011 tarihinde 17-18 saatleri arasında İstanbul Bilgi Üniversitesi, Dolapdere Kampüsü, Mahkeme Salonunda gerçekleşecek. Bu buluşmanın başlığı RobinViz- Güvenilirlik Temelli Biyoenformatik Ağ Görselleştirimi. Konuşmanın dili Türkçe olmakla birlikte eğer herhangi bir ön kayıt zorunluluğu mevcut değil.

İlk toplantıyı kaçırmış olmanız büyük bir olasılık ancak üzülmenize gerek yok, Bilgi VideoCS sayfasından konuşmanın tamamını izleyebilirsiniz.

18
Ara

Eminim ki birçoğumuz gerektiğinde, kişisel bilgilerinin güvenliği için e-postalarını şifreliyor ve bu yolla tamamiyle güvenli olduğunu düşünüyor. Açık anahtar ile şifreleme yaparken kendimizi güvende hissedebiliriz ancak bu noktada benim son zamanlarda dikkatimi çeken bir durumu paylaşmak ihtiyacı hissettim.

Her ne kadar e-postaların tamamının şifrelendiğini düşünsek de, e-posta başlıkları (header) sunucuya açık bir şekilde iletilmek zorunda. Durum böyle olunca, e-postaların başlıkları da açık bir şekilde gidiyor ve şifrelenmiyor. Eğer denemek isterseniz kendinize şifreli bir e-posta atın ve kullandığınız e-posta istemcisinin “başlıkları göster” özelliğinden faydalanarak size mesajın tam olarak nasıl iletildiğini görün. Genellikle “başlıkları göster” özelliği, e-postanın okunduğu ekranda “h” tuşuna basılarak aktif edilebiliyor. Öncelikli olarak bunu deneyebilirsiniz, eğer işe yaramıyorsa bir fikrim yok maalesef.

Bir dahaki sefere şifreli e-postaların başlığında önemli bir bilgi bulundurmamaya dikkat ediniz. Bilmeyen insanları bilgilendiriniz. Belki bu ileride bir gün hayatınızı kurtarır, kim bilir?


12
Ara

Özgür Yazılım ve Linux Günleri yine İstanbul Bilgi Üniversitesi, Dolapdere Kampüsü’nde yapılacak. Etkinlik tarihi 1 nisan 2011 Cuma ve 2 Nisan 2011 Cumartesi olarak belirlenmiş durumda.

Takvimlerinizi şimdiden ayarlayın ve kaçırmayın derim! Özgür yazılım ile ilgilenen birçok insanın yanısıra Türkiye’de bilgisayar bilimleri konusunda kaliteli eğitim veren sayılı insanlarla sohbet edebilir ve fikir alışverişi yapabilirsiniz. Semineler ve etkinlikler de cabası.

2011′de görüşmek üzere.


10
Ara

NIST tarafından 2008 yılında başlatılan ve 2012 yılında sha-3 olarak sunulacak şifreleme algoritma yarışması için finalistler birkaç gün öncesinde belli oldu. Finalistler arasında BLAKE, Grøstl, JH, Keccak, ve Skein mevcut.

Sunulan çalışmalar arasında 2. tura kadar gelmiş ancak finale kalamamış bir çalışma var ki kendisi dikkatimi çekti. Tamamen rastlantısal olarak karşılaşmamla ile birlikte hakkında pek fazla haber/bilgi olmaması dikkatimi çekmedi değil. Çalışmanın adı Hamsi, Özgül Küçük tarafından geliştirilmiş. Web sayfasında yazdığına göre Grindahl and Serpent algoritmalarını kullanmakla birlikte o alandaki yeni fikirleri de içerisinde barındırıyor. Kriptoloji konusunda derin bir bilgi birikimine sahip olmadığım için konu hakkında kapsamlı bir yazı yazamayacağım ancak eğer ilginizi çekiyorsa, bahsedilen algoritmaların analizleri ve tasarımları birkaç google araması ile ulaşılabilir.

Uluslararası bir  yarışmada böyle bir başarının elde edilebileceğini ve bu tür şeylerin yapılabileceğini görmek güzel, aynı zamanda takdir edilesi. Umuyorum ki ileride bu alanda çok daha iyi konuma gelinecektir.


10
May

logo.png (224×55)

Türkiyede yayıncılık gerçekten içler acısı bir halde. Etrafta bulunan teknoloji siteleri kaynak göstermeden habersiz, habercilik etiği nedir bilmeyen insanlardan oluşuyor.

Duymadıysanız, Twitter’da çok basit bir şekilde kullanılabilen bir açık ortaya çıktı. Web üzerinden “accept <username>” yazdığınızda “username” kişisi sizi otomatik olarak takip etmiş oluyor (idi) isteği dışında..

Bu açığı bulan ve paylaşan kişi Bora Kırca ‘dır. İncisözlük’teki şu girdisi ile paylaşmıştır. Girdinin yazıldığı saate bakarsanız 16:28′i görürsünüz. Aklınızda bulunsun bu saat, twitter ile ilgili haberi başka web sayfalarında gördüğünüz zaman saatine dikkat ederek ne kadar doğru olduğunu görebilirsiniz.

Haberi ilk anda ShiftDelete.Net kaynak göstermeden, sanki kendileri bulmuşcasına yayınladı. Haberi yayınlayan kişinin gerçekten etik anlayışını çok merak ediyorum. Orijinal içerik 16:28′de yayınlandı, 17:00′da yaptığınız bu haber için nasıl “İlk kez SDN’de” diyebiliyorsunuz? Gerçekten habercilik anlayışınız ve sunduğunuz magazinsel içerik içler acısı bir halde. Habercilik etiğini ayaklar altına alarak, insanlara magazinsel haber pompalamayı ve bundan kazanç sağlamayı çok iyi biliyorsunuz. Sağolun SDN takımı, iyi ki varsınız! Eminim ki böyle devam edeceksiniz. Gerçekten ülkenin sizin gibi insanlara ihtiyacı var.

Diğer bir içler acısı durum ise Webrazzi. SDN kadar olmasa da, haberlerinde sonradan kaynak gösterdiler. Ancak şu soru akla geliyor ki, sonradan kaynak gösterilecekse, neden haberi yazarken bu aklınıza gelmedi? Birkaç link eklemek ve 1 cümle yazı yazmak gerçekten zor değil. Şu sayfada Webrazzi’nin yayınladığı ingilizce içerik mevcut. Bu içerik ilk olarak kaynaksız yayınlandı ve Avrupa’nın büyük teknoloji sitelerinden bir tanesi olan TechCrunch ‘da yer aldı. TechCrunch makalesine bakarsanız açığı bulan kişi hakkında herhangi bir bilgi bulamazsınız. Sanki her şeyi Webrazzi bulmuş ve yayınlıyor gibi bir izlenim mevcut. İngilizce yayında da düzeltmiş olsalar da, zaten TechCrunch’da ana sayfa haberi olarak yeterince “profit” kazanıldı. Sonradan “eea, biz düzelttik ama” demek çok da mantıklı görünmüyor bana.. Yine de sonradan düzelttikleri için kendilerine teşekkür etmek gerekiyor.

Neyse ki Avrupada’ki yayıncıların bir etik anlayışı var ki, CNET Incisozluk’ten bahsetmeyi ihmal etmemiş. Haber Slashdot ‘a da düşmüş durumda. Yarın yabancı kaynaklı ana haber bültenlerinde “Türkler Twitter’ı hackledi” şeklinde haberler göreceğizdir. Şu günlerde TheRegister, NYTimes, BBC gibi sayfalara gazetelerin internet sayfalarına göz atmayı unutmayın.

Bu arada dünyanın en aptal hatası anketi yapılırsa, bana haber verebilirseniz sevinirim. Oyumu bundan yana kullanacağımdır.


29
Kas

Uzun zamandır yazamıyordum, gezegen biraz paslanmış ama bu girdi gezegenin pasını alacak gibi görünüyor :)

Birkaç gün önce PHP 5.3.1 yayınlandı, birçok hatayı ve güvenlik açığını kapatıyor. Güvenlik güncellemeleri şu şekilde:

  • Added “max_file_uploads” INI directive, which can be set to limit the number of file uploads per-request to 20 by default, to prevent possible DOS via temporary file exhaustion.
  • Added missing sanity checks around exif processing.
  • Fixed a safe_mode bypass in tempnam().
  • Fixed a open_basedir bypass in posix_mkfifo().
  • Fixed failing safe_mode_include_dir

İçlerinden en önemlisi kalın olarak belirttiğim “max_file_uploads” seçeneği. PHP 5.3.1 ‘den önceki sürümlerde bu özellik yok ve üzerinde PHP çalıştıran herhangi bir sunucu 1 dakika içerisinde isteklere yanıt veremez hale getirilebiliyor. Upload edilen dosyanın işlenip işlenmemesi önemli değil, sadece boş bir index.php barındırmanız bile yetiyor!

Açık PHP’nin dosya upload sırasında geçici dosya oluşturmasından kaynaklanıyor. Eğer art arda 16.000+ dosya upload isteği gönderirseniz, sunucu geçici dosya yaratma ve silme ile aşırı derecede meşgul olacağı için normal isteklere cevap veremez hale geliyor. Bu süre zarfında %100 ‘e yakın işlemci tüketmesi ve büyük miktarda bellek kullanması da cabası.

Bununla birlikte açığın kullanıldığına dair çok net bir işarete rastlayamıyorsunuz. Sadece log dosyanızda aynı IP adresinden gelen birkaç yüz tane POST isteği görülecek. POST isteklerinin içeriğin görülemediği için, eğer bu açıktan haberdar değilseniz dikkatinizi o yöne değil de başka yerlere vererek sunucunuzun neden erişilmez olduğunu anlayamayacaksınız. Daha da kötüsü, her zaman kolayca kullanılabileceği için sisteminiz büyük risk altında olacak :)

Açık Bogdan Calin tarafından bulundu. Daha ayrıntılı bilgi için [0] adresini okuyabilirsiniz. Kendisi kullandığı scripti vermeyeceğini yazmış ancak biraz araştırma ve deneme ile açığı exploit eden kodu yazdım ve yayınlıyorum. :) Kod [1] adresinde.

Şu anda Türkiye’de PHP içerik sunan sitelerin büyük bir çoğunluğu etkinlenir durumda. Hosting şirketleri bu açığı kapatmadığı sürece de etkilenecek…

[0] http://www.acunetix.com/blog/websecuritynews/php-multipartform-data-denial-of-service/

[1] http://www.exploit-db.com/exploits/10242

Peki nasıl korunacağız?

PHP 5.3.1 ile açık kapanıyor. Eğer güncelleme imkanınız varsa 5.3.1′e güncelleyin. Ancak PHP 5.3.1 ile birçok özellik değişmiş durumda ve PHP 5.2.x ile çalışan pek çok uygulama 5.3.x ile çalışmayacaktır. Bu yüzden büyük ihtimalle PHP 5.2.x kullanıyorsunuz. Eğer tahmin ettiğim gibiyse, 5.2.x yamaları aşağıda. Yamaları uygulayıp PHP’yi tekrar derleyin ve sunucunuzu yeniden başlatın.

http://svn.php.net/…/main/rfc1867.c?r1=272374&r2=289990

http://svn.php.net/…/main/main.c?r1=289214&r2=289990 (NOT: Buradaki 100 değeri sonradan 20 olarak değiştirildi, siz de 20 olarak değiştirip uygulayın)

Güvenli olup olmadığımı nasıl anlarım?

Çok basit. Aşağıdaki adresindeki dosyayı alıp sunucunuz üzerinde dosya uzantısı *.php olacak şekilde çalıştırın. Sizde yamanın olup olmadığını söyleyecektir.

Pardus ne alemde?

Tabi ki açık yayınlandıktan 1 gün sonra yamaları eklendi ve commit [*] edildi. Birkaç gün içerisinde de depoya alındı. Şu anda düzeltilmiş PHP paketi stable depoda. Eğer Pardus kullanıyor ve PHP içerik sunuyorsanız güvenlik açığını kapatmak için PHP paketlerini güncellemeniz yeterli:

sudo pisi ur && sudo pisi up mod_php php-common php-cli

sudo service apache restart

* http://liste.pardus.org.tr/paketler-commits/2009-November/087149.html

Sonra?

Yazdığım bu girdi ve exploit bu tür önemli şeyleri takip etmeyen sistem yöneticilerini uyandıracaktır diye umuyorum. Eğer PHP kullanıyorsanız, lütfen kullandığınız dağıtımın güncellemelerini kontrol edin. Açığın kapanıp kapanmadığına bakın. Hizmet satın alıyorsanız sunucu yöneticinize bu durumu bildirin. Ve lütfen bu girdiyi ulaştırabildiğiniz kadar insana ulaştırın, dağıtın! Böylece insanlar bu konu hakkında bilinçlenecek ve bu açık daha hızlı bir sürede kapanacabilecek..

Önemli Notlar:

Yayınlanan kod ile yapacaklarınız tamamen sizin sorumluluğunuzdadır. Yayınlanan kod sadece eğitim amaçlıdır ve böyle bir şeyin yapılabileceğini göstermek için yazılmıştır.


15
Kas

Uzun bir çalışmadan sonra UEKAE dergisi hayata geçmiş bulunmakta. UEKAE Dergisi Kurulu’na ve dergi için emekte bulunan herkese teşekkürlerimi sunuyorum. Dergiyi büyük bir keyifle okuduğumu belirtmek isterim. Gerçekten yazılanların hepsi ilgi çekici ve okuması bir o kadar zevkli. Dergi’yi http://dergi.uekae.tubitak.gov.tr/ adresinden online olarak okuyabilirsiniz.
Uluslararası Savunma Sanayi Fuarı IDEF2009 İstanbul'da Yapıldı

Değerli Okurlar,

Uzun süredir hayalini kurduğumuz UEKAE Dergisi’nin bir yılı aşkın süren titiz ve özverili bir çalışma sonucunda hazırladığımız ilk sayısını sizlerle paylaşmaktan büyük heyecan, sevinç ve gurur duyuyoruz.

Dergimiz, kuruluş tarihi 60′lı yıllara uzanan UEKAE’nin, Ulusal Elektronik ve Kriptoloji Araştırma Enstitümüzün, temel uzmanlık alanları olan bilgi güvenliği, haberleşme ve ileri elektronik alanlardaki bilgi ve deneyimini siz okurlarımızla buluşturmayı amaçlıyor. Bir diğer hedefimiz de UEKAE dergisi ile ülkemizde bu uzmanlık alanlarında güvenilir Türkçe kaynak oluşturmak.

UEKAE Dergisi’nin her sayısında sizlerle uzmanlık alanlarımızdaki konulardan oluşan yazı dizileri ile karşınıza çıkıyor olacağız. Ayrıca, her sayının kapak konusunu ayrıntılı bir biçimde ele alarak sizlere konuyu farklı yönleri ile değerlendirme fırsatı sunmayı planlıyoruz. Enstitümüz uzmanlarının ve araştırmacılarının gerek akademik, gerek profesyonel çalışmalarını yansıtan makaleler bölümünün de son derece faydalı olacağı inancındayız. Başarı öyküsü bölümünde ise, kendilerini her zaman saygı ile andığımız, hem endüstri, hem akademi hem de Enstitümüz için önemli hizmetleri bulunan kişileri tanıtma imkanı bulacağız. Ayruca dergimizde UEKAE ile ilgili haberleri ve ürünlerimize dair bilgileri de aktarıyor olacağız.

Dergimizin ülkemiz için kalıcı bir bilgi kaynağı olması ümidiyle çalışmalarımızı sürdürürken, siz değerli okurlarımıza keyifli okumalar ve esenlikler diliyoruz.

UEKAE Dergisi Yayın Kurulu


İçindekiler:

Onur Yazısı – Nüket YETİŞ

Başlarken – Mehmet Önder YETİŞ

TÜBİTAK UEKAE’nin Başarı Yolculuğu - Sermet SÜER, Eniş TÜYENİ, Çağrı KOÇ

Kapak Konusu:

Kriptoloji Tarihi – Mustafa Ümit ÇEŞMECİ

Günümizde Kriptoloji – Uğur Kaşif BOYACI

Kuantum Bilgi Güvenliğine Doğru – Şeref KALEM

Yazı Dizileri:

Elektronik İmza: Genel Bir Bakış - Ersin GÜLAÇTI

Kriptografik Cihazlar: Milli Kriptolu Cep Telefonu – Gökhan VICIL, İmran ERGÜLER

Akıllı Kartlar ve Uygulamaları: Akıllı Kart Nedir? – Mustafa Başak

Pardus: Pardus ve Kriptografi – A. Murat EREN

Elektronik Harp: Tanıtımı Kapsamı ve Türkiye İçin Önemi – S. Gökhun TANYER, M. Alper KUTAY, D. İlhan TÜFEKÇİ

Kurumsal Yönetim: Kurumsal Yönetim Sistemlerine Giriş – Suha ERSİN

Herkes İçin Proje Yönetimi: Proje Yönetimine Başlarken – Hayal ŞENYURT

Makaleler:

Dengeli Uzay-Zaman Blok Kod Seçimi İçin Bir Bit Hata Olasılığı Çözümlemesi - Selami ŞAHİN

Rasgelelik (Rastlantısallık) Kavramına Genel Bir Bakış – C. Nezih GEÇKİNLİ

Radar Antenleri – I: Yarıklı Dalga Kılavuzu Antenleri – Bahattin TÜRETKEN, Lale ALATAN, Feyzullah YAYIL

Başarı Öyküsü:

Prof. Dr. Yılmaz TOKAD – Aydın KUBİLAY

Serbest Kürsü:

İşleyen Dil Işıldar: Hatice Nur YANANLI


12
Ağu

Uzun bir aranın ardından yeniden yazma fırsatı buldum. Umuyorum ki bundan sonra daha sık yazacağım :)

Yorucu bir hazırlıktan sonra her gencin ortak kaderi ÖSS’ye girdim. Son 5 ay modemimi kaldırıp internet bağlantısını kapattım. Malum, evde internet olduğunda e-postalarımı ve rss feedlerimi okumadan duramıyordum :) İyi de oldu, rahat rahat hazırlanma fırsatı buldum.

Artık Pardus ve Özgür Yazılım ile daha çok ilgilenebileceğim. En çok buna seviniyorum :)

Türkiye’de Dil puanıyla 858. olmakla beraber Bilgi Üniversitesi’nin İngilizce Öğretmenliği bölümüne burslu olarak yerleştim. Artık ~4 senemi burada geçireceğim. Bununla beraber Computer Science bölüm başkanı olan Chris Stephenson ile tanışmayı dört gözle bekliyorum. Kendisinin 17 yaşında IBM’de çalıştığı rivayet ediliyor.

Her ne kadar bölüm olarak alakasız bir yerde okusam da, computer science derslerine zamanım oldukç girmeyi ve hocalarından mümkün olduğunca fazla yardım almayı planlıyorum. Bu yüzden Bilgi Üniversitesi çok iyi bir tercih oldu. Derslere girme konusunda herhangi bir sıkıntı mevcut değil :)

Şimdilik bu kadar efem. Umarım ÖSS’ye giren herkesin sonucu benim gibi sevindirici olur. Kendinize iyi bakın.


19
Şub

Uzun zamandır blogumu ziyaret etmediğimi fark ettim. Malum, dersanedir, okuldur, çalışmalardır, pek fazla zaman kalmıyor :) Bunun bitmesine yaklaşık 4 ay kaldı, sınav vakti gelip-geçtikten sonra eskisi gibi blog yazacağımı umuyorum.

Son zamanlarda hızlı okuma tekniklerine merak salmış durumdayım. Birkaç gün önce farkettim ki günde okuduğum RSS beslemelerinin ve e-postaların haddi hesabı yok. Daha fazla bilgiyi, daha az zamanda, daha çok anlayarak okumak bir zorunluluk haline geldi.

Araştırdığım kadarıyla ilkokuldan sonra hızlı okuma tekniği konusunda bize hiçbir şey öğretilmemiş. Hatta bilirsiniz ki okumaya yeni başlarken içimizden tekrar ederek okuruz ve bu biz farkında olmasak da hayatımız boyunca sürüp gider. İşte bu noktada okuma hızımız ciddi anlamda yavaşlıyor. Bir yazı okuduğumuzda önce içimizden seslendiriyoruz ve sonrasında beynimiz devreye giriyor. Halbuki beynimiz, seslendirerek okumamızdan 1.000 kat daha hızlı.

Hızlı okuma tekniğinde ise bunu aşmak için yollar öğretiliyor imiş. Göz ile beyin uyumluluğunu geliştirip, gözün direkt olarak beyin ile iletişime geçmesi sağlanıyor ve böylece okuma hızı arttırılıyor. Aynı zamanda göz kasları geliştiriliyor ve kelime kelime okumak yerine, 3-4 kelimeyi aynı anda okuyup anlayabiliyorsunuz. 15 saatlik bir çalışma ile okuma hızının 2-3 katına çıkarılabildiği söyleniyor. Tabi bunları söyleyenler bu işin eğitimini verenler.

Açıkcası eğitim almak istemiyorum. Araştırdığım yerlerin çoğu bunların kendi başımıza öğrenilebildiğini ve çalıştıktan sonra okuma hızımızı arttırabileceğimizi söylüyor. İşte bu noktada sizlere danışayım dedim. Şu anda 190 – 220 kelime/dakika okuyorum ortalama olarak. Dakikada 1452 kelime okuyan Mersin’li bir öğrenciyi duyduğumda gerçekten şaşırdım ve kendi kendime sordum “biz neden yapamayalım?” Şu anda hedefim dakikada 800 kelime ve %96 anlama oranı. 1.000 üzerine çıkmak için kasmayı düşünmüyorum, bana yetecek kadar hızlı okuduğumda daha fazla uğraşmayacağım.

Siz ne düşünüyorsunuz? Ne kadarlık bir zamanda bu başarılabilir ve yararı görülür? Aranızda hızlı okuma tekniğini bilen ve hızlı okumayı öğrenmek isteyenlere öneride bulunmak isteyen (kitap, alıştırma vs.) var mı? Daha önce bu tekniği öğrenirken karşılaştığı zorluklar nelerdir ve neler önerirsiniz?

Umarım görüşlerinizi esirgemezsiniz :) Herkese şimdiden teşekkürler!