10 Aralık 2013 Salı

Bitcoin

Bitcoin, deneysel olarak başlatılmış dünyanın herhangi bir yerindeki herhangi bir insana kolayca ödeme yapmayı sağlayan sanal bir para birimidir. Bitcoin teknolojisi, noktadan noktaya dağıtımlı bir ağ üzerinde çalışır. Böylece merkezi bir kuruluşa ihtiyaç kalmaz. Para oluşumu ve transfer işlemleri ağ üzerinde kollektif olarak gerçekleşir. Bitcoin ayrıca bu para biriminin oluşmasını sağlayan yazılımın da adıdır.

Neden?

  • Bitcoinler üçüncü bir şahsın ya da kuruluşun onayına gerek kalmaksızın internet üzerinde kolayca gönderilir.
  • Transferler;
    • Tasarım gereği geri dönüşümsüzdür.
    • Hızlı ve geri harcanması dakikalar içinde gerçekleşir.
    • Diğer ödeme şekillerine göre çok az masraflıdır.
  • Para arzı, yazılım ve sistem kullanıcılarının anlaşması üzerinden gerçekleştiği için, herhangi bir hükümet, banka, organizasyon ya da şahıs tarafından manipüle edilemez. Bitcoin sisteminde oluşan kısıtlı enflasyon, ağın güvenliğine yardımcı olan kullanıcılara (madencilere) eşit şekilde dağıtılır.
  • Bitcoinler hali hazırda 100,000′den fazla insan tarafından kullanılmaktadır.

Nasıl Çalışır?

  • Bitcoin, yapılan ödemelerin doğrulanması için açık anahtarlı şifreleme (asimetrik şifreleme), noktadan-noktaya ağ bağlantısı ve proof-of-work gibi teknolojiler kullanır. Bitcoinler ödemeyi yapan adresten alıcı adrese imzalanarak gönderilir. Her kullanıcı çok sayıda adrese sahip olabilir. Her işlemin ağa duyurulumu yapılır ve blok zincirinde yerini alır. Böylece eklenen bitcoinler birden fazla kere harcanamaz. Her bir işlem bir veya iki saat içinde, blok zincirini uzatmaya devam eden büyük işlem gücü tarafından o anda kilitlenmiş olur. Bitcoin bu teknolojileri kullanarak, herkesin kullanabileceği hızlı ve son derece güvenilir bir ödeme ağı sağlamaktadır.

6 Ağustos 2013 Salı

8. Kolektif Yaz Kampı

Evet arkadaşlar, biraz geciktim. Yorgunluğuma verin demek isterdim ama kampta yorulmak diye bir şey yok. Kolektif Yaz Kampı'na ilk kez bu yıl katıldım. Kamp 27 Temmuz - 2 Ağustos 2013 tarihleri arasında Dikili/İzmir'de gerçekleşti. Liseliler için 190, üniversiteliler için ise 240 TL. Paraya gerçekten değdi. Kampa Karmate ve Yeni Türkü'nün yanında bir çok ünlü isim ve grup katıldı. Hemen her gün Halk TV canlı yayın yaptı.Her gün deniz, kum, güneş üçlüsünün yanında birbirinden zevkli atölyeler ile kamp programı doldurulmuştu. Kesinlikle sıkılmıyorsunuz. Bungalovda veya çadırda kalma seçeneğiniz var. Kendi çadırınız yoksa hiç dert etmeyin. Orada bol bol var :) Ben çadırda kaldım. Aşırı derecede memnunum.
Kampın en büyük özelliği ise her şeyi katılımcıların kendilerinin yapması. Her gün bir il görevli. Görevli il kendi içinde görev dağılımı yapıyor. Bu görevler; tuvalet temizliğinden yemek yapmaya, gece bekçiliğinden plaj temizliğine kadar geniş ve zevkli işler :D Her akşam ya bir konser ya film gösterimi ya da ikisi birden oldu. Benim gibi uyku düzenini bozmak istemeyen erken uyumayı seven biri bile olsanız üçe dörde kadar süren etkinlikler ve arkadaş sohbetleri buna izin vermeyecek.
9. Kolektif Yaz Kampı'nda görüşmek üzere.

Kampa Katılan Ünlü Kişi ve Gruplar

  • Batu Mutlugil Band
  • Karmate
  • Yeni Türkü
  • Semih Saygıner
  • Grup Praksis
  • Can Dündar
  • Şebnem Sönmez
  • Barış Atay
  • Handan Koç
  • Güven Erkin Erkal
  • Burak Kuru
  • Mehmet Karlı
  • Oktay İnce
  • Sevgi Türkmen
  • Tuncay Korkmaz
  • İzmir Duvara Karşı Tiyatro Topluluğu
  • Emre Canpolat
  • Masis Aram Gözbek
  • Burak Ersemiz
  • Tugay Tanülkü
  • Sezai Sarıoğlu
  • RitimArt Perküsyon Topluluğu
  • Özcan Yaman
Karmate Konseri
Gezi Parkı ve İsyan Günleri Söyleşisi

26 Temmuz 2013 Cuma

Programcılık ve Yan Etkileri



Dünyada Programcılık denildiğinde insanların kafasında genelde Bilgisayar Manyakları olarak bir düşünce belirir. Çünkü programcı sabahlara kadar kodlar içinde kaybolur, kafa yormadığı varyasyon kalmaz. Oysa bir programcı için sabahlamanın verdiği rahatlık ve tatminlik meslektaşlarımız arasında çok meşhurdur. Programcılar için zaman ve mekan önemlidir. Bu yüzden genellikle sabah ezanını duymadan yatmazlar. Bu açıdan sürekli bir şekilde çevresindeki kişilerin tepkilerini alırlar. Gece yarısı çalışma süresince beyin sürekli bir fırtına estirmekte olup saatlerin su gibi akmasını sağlamaktadır. Beyine konsantrasyon iyice nüfuz etmiş durumdadır ve bu konsantrasyon ne kadar kaliteliyse yapılan programlar da o oranda kaliteli olur.

Programcının beyni bu şablonda çalışırken elde edilen huzur bilimsel deneylerde gözlenmiştir. Deneylerde çeşitli iş sektörlerinden denekler kullanılıp mutluluk düzeyleri ölçülmüştür. Bu deneyler sonucunda programcıların bulguları çok ilginçtir. Programcılık her ne kadar Mühendislik kategorisine girse de aslında, beyinlerinin sanatçıların çalışma tarzı gibi olduğu yapılan araştırmalarla kanıtlanmıştır.

Programcılık ile konsantrasyon ve izolasyon bir bütün hale gelmiştir. Başarılı bir programcının bu yetenekleriyle öne çıktıkları gözlemlenmiştir. İzolasyon olmadan ise konsantrasyonun sağlanamayacağı kesindir. İzolasyon arttıkça projeye olan odaklanma derinleşir. Bu sebeple bir programcıyı aramak istediğinizde onu yalnız başına bir odada ya da mağarada bulma olasılığınız yüksektir. :) Olasılık diyorum çünkü bulabileceğiniz bile şüphelidir. Saatlerce sıkılmadan ekran başında zaman geçirebilirler.

Programcı kendisini izole edecek bir mekân bulduktan sonra tüm hayati faaliyetlerini askıya alır. Proje öncesi düşünme aşamasında monitörde gözü Google'dan başkası görmez. Projeye uygun ön araştırmalar yapar. Bu durum günler sürebilir. Bu yönüyle programcı tıpkı bir ressama benzer. Beyninde yazılacak programın altyapısını oluşturur. Hayal gücü zirvededir. Çoğu zaman onları bir noktaya dalmış halde görebilirsiniz. Beyninde sürekli bir düşünce savaşı vardır. Savaştan galip çıkan en iyi fikirleri alır ve değerlendirir. Bu süreçte beyinden parmaklara ve bilgisayara doğru adeta bir göç başlamıştır. Beyin bu işi sürdürürken bir yandan da yazılan kodların yöntem tercihini yapar. Yoğun çalışma dönemlerinde beyni iflas ederse, deneme-yanılma planı devreye girer.

Bir programcıyı en yoğun ve en derin çalışma zamanında bile olsa ona bir selam vermek ya da bir şeyler ikram etmek istediğinizde onun için mola zamanı gelmiştir; çalışmadaki konsantrasyonunu bozdunuz da onun için. Sosyal antenler açılıp kişiyle iletişim sağlanır. Bu iletişim esnasında çoğu zamanlar kesintiler yaşanabilir. Kişiyle, çalışmak arasında gidip gelen programcı bir tutarsızlık yaşayabilir. İletişim kurulan kişi birinci derece yakın dahi olsa programcının kişiyi farkında olmadan proje hakkındaki düşüncelerini kaybetme korkusuyla tersleme ihtimalini göz ardı etmemek lazımdır. Bu yüzden genellikle programcıları ukala olarak tanımlayanlar vardır. Zaman zaman ukala ve takmaz tavırları olsa da aslında bunun altında karşısındakinin menfaatçi tavırlarını yok etme düşüncesi yatmaktadır.

Çalışma esnasında bir problem yaşadıklarında o sorunu çözmek için, inatçı bir şekilde bilgisayar ile haşır neşir olmaya devam ederler. Bu inatçılığın normal yaşantılarına yansıması kaçınılmazdır. İş başında hiçbir zaman sıkıcı bir ortamda olmadıklarından genellikle sıkıntıyı sevmezler, anlayacağınız zora pek gelmezler. Çoğu vakit rahat elbiselerle çalışırlar.

Tecrübeli bir programcı için ise sosyallik daha aktiftir. Acemi programcı bir problem için haftalarca düşünüp araştırmalar yapabilir. Ancak daha önce birçok sorunla yüzleşmiş tecrübeli programcımızın beyninden işe yaramaz problemi çözme fikirleri elenmiş haldedir. Onun için sadece çözümü gerçekleştirecek 1-2 fikri uygulamak kalır. Bu da kısa zamanda halledilir ve onun için mutluluk seviyesi maksimuma ulaşır. Kendini izole ettiği mekândan çıkartır. İlk yaptığı şey biran evvel kendisini dışarıya atmaktır.

Eğer bir programcıya sürekli aynı işi yaptırıyorsanız, o bir formülünü bulup bu işi en kısa yoldan nasıl bitirebileceğini mutlaka düşünmüş ve uygulamaya başlamıştır. :) Unutmayın, programcı olmak hayatınızın yarısını bilgisayara vakfetmek demek, programcı olmaya karar verdiyseniz, siz en iyisi yakınlarınızla ve sevdiklerinizle en kısa zamanda helalleşmeye çalışın. Belki ekrandan başınızı kaldırıp bir daha görüşme fırsatınız olmayabilir. :)
Abdullah Tekin'in 24.04.2008 tarihinde yazdığı yazıdan alıntıdır.
Programcılık ve Yan Etkileri

9 Temmuz 2013 Salı

Esperanto

Esperanto

Esperanto Nedir?

Esperanto yapay bir dildir. Asıl adı Lingvo Internacia(Uluslararası Dil)'dır.  1887 yılında bir göz doktoru olan Ludwik Lejzer Zamenhof tarafından yapılmıştır. Zamenhof 1905 yılında Fundamento de Esperanto(Esperanto'nun Temelleri) kitabını yayımlayarak dilin yapısını ve kurallarını belirlemiştir. Esperanto, "espera" > umut eden kelimesinden türemiştir. Dilin adının Esperanto olarak yayılmasının sebebi Zamenhof 1887 yılında Esperanto'yu tanıtmak için yazdığı Unua Libro(İlk Kitap) adlı kitabında kendisinden Doktoro Esperanto(Dr. Umut Eden) şeklinde bahsetmesidir.
Zamenhof

Esperanto'nun Amacı Nedir?

Esperanto halklar arasındaki iletişi kolaylaştırmayı hedeflemektedir. Uluslararası ve tarafsızdır. Hiçbir kültüre, politik, dinsel ya da ekonomik egemenliğe bağlı veya eğilimli değildir. Esperanto'nun amacı dünya üzerindeki dillerden kaynaklanan anlaşmazlık sorunlarını, dünyanın tek ve ortak dili olarak çözmektir. Bu amaçla dünyanın en kolay öğrenilebilen, en az kural ve istisna bulunduran dilidir.

Esperantist Nedir?

Esperantist; Esperanto olarak akıcı bir şekilde konuşup, anlaşabilen kişilere denir. Esperantistler dili öğrenmekle yetinmezler. Başkaları öğretip, duyurmayı hedeflerler.

Esperanto Nasıl Öğrenilebilir?

Esperanto öğrenmenin en kolay ve en popüler yolu internettir. Bunun için en iyi site lernu! sitesidir. Program olarak ise kurso de Esperanto adlı program çok kullanılmaktadır.

Kaynak: Esperanto - https://www.ozanselte.com/esperanto/

30 Haziran 2013 Pazar

Bilgisayar Programcılığı

Bilgisayar Programcılığı Nedir?

Bilgisayar bilimini ve bu bilim çerçevesinde oluşturulan araçları kullanan, bilgisayarın istenilen işi yapması için problem yaratmayı ve çözmeyi hedefleyen, çok zevkli ve çok tatmin edici, öğretmesi ve öğrenmesi zor bir iştir.

Öğretmek ve Öğrenmek Neden Zordur?

Programcılık 1950'lerden beri gelişmekte fakat daha doğru düzgün öğretim şekli bulunamamış bir uğraştır. İnsanların çoğunluğu bilgisayar programcılığına yatkın değillerdir. Yatkın olanlar ise anlamadıkları bir durumla karşılaştıklarında kendi kafalarında doğru ya da yanlış bir çözüm üretebilenlerdir. Şimdi kısaca tarihsel öğretim sürecine bakalım:
  • Programlama 1950'lerde başladı.
  • 1960'lardan sonra programlamanın nasıl öğretilmesi gerektiği sorgulandı.
  • İngiltere'de %30-%60 üniversite birinci sınıf öğrencisi ilk programlama dersinden kaldı.
  • Altı ülkedeki birinci sınıf bilgisayar bölümü öğrencilerinin sene sonunda programlayamadıkları görüldü.
  • Başka bir araştırma 7 diğer ülkede de aynı sonucu buldu.
Sorun öğrencilerin ya da öğretmenlerin motivasyonu değildi. Öğrenciler bu işe yatkın olmayanlardı. Olsalar zaten derslerin işleyişinden ve yavaşlığından şikayet ederlerdi. Bilgisayar camiası her yolu denedi. Hiçbir yöntem işe yaramadı.
Bir Deney:
Üç grup öğrenci gerçek programlama sınavlarının sonuçlarını, baştan hiçbir şey bilmeden verdikleri tahmini yanıtlarıyla karşılaştırmışlar:
  1. %44 hemen hemen bütün sorulara kafalarında aynı modeli canlandırarak yanıt vermişler: "tutarlı" grup
  2. %39 sorulara değişik modeller kurarak yanıtlar vermişler: "tutarsız" grup
  3. %8 çoğu soruyu yanıtlamayı reddetmişler: "yanıtsız" grup
Konu burada ilginçleşiyor... Bu sonuçları konuyla ilgisi olmayan bazı insanlara gösterdiklerinde (ama hangi grubun programcılıkta başarılı olan grup olduğunu söylememişler), o insanların bazı varsayımlarda bulunduklarını görmüşler:
  • Sonuçlara bakan kişi bilgisayar bilimci veya programcıysa: en başarılı grubun "yanıtsız" grup olduğunu düşündüklerini söylemişler; onlara göre, anlamadıkları soruyu yanıtlamayarak erdemli olduklarını göstermişler.
  • Sonuçlara bakan kişi programcı olmayan sosyal bilimlerle ilgili biriyse: en başarılı grubun "tutarsız" grup olacağını düşünmüşler; onlara göre, her probleme uyan ayrı yöntem bularak akıllı oldukları göstermişler.
  • Çok az kişi "tutarlı" grubun programcılıkta en başarılı grup olduğunu tahmin etmiş.
Doğru sonuç: O kişilerin tahminlerinin tersine, "tutarlı" grup programcılıkta en başarılı olan grup çıkmış.

Programlama Dilleri Nelerdir?

Programlama dilleri programcının bilgisayarla arasında kurduğu iletişimin dilidir. Amaç programcının istediği şeyi bilgisayara anlatabilmesidir.

Programlama Dilleri Sınıflandırmaları

Programlama dilleri iki şekilde sınıflandırılır.
  1. Seviyelere göre: Bu seviyeler dili bilgisayarın mı yoksa insanın mı daha kolay anlayabildiğine göre değişir. İnsan diline yakın programlama dilleri yüksek seviyeli(high level), bilgisayara yakın diller düşük seviyeli(low level) olarak kabul edilir. Şimdi bu dilleri görelim.
    • Çok yüksek seviyeli diller: Visual Basic, VB .Net, Access, Foxpro
    • Yüksek seviyeli diller: D, Pascal, Basic, Fortran, Java
    • Orta seviyeli diller: C, C++, Ada
    • Düşük seviyeli diller: Assembly
    • Makine dilleri: Binary
  2. Kullanım alanlarına göre: Bu dillerin hangi alanda kullanmak için geliştirildiğine bağlı olarak değişen sınıflandırmadır. Genel olarak aşağıdaki gibidir.
    • Bilim ve mühendislik: Pascal, C, C++, D, Java, Fortran
    • Veritabanı programcılığı: Dbase, Access, Foxpro, Sql
    • Yapay zeka programcılığı: Prolog, Lisp
    • Sistem programcılığı: Assembly, C, C++, D