Pazar, Aralık 09, 2007

jmeter'a hızlı başlangıç

java, php, perl, python, ruby, lisp ve javascript için birim test örnekleri

konsoldan ve emacs'ten basit gdb ve perldb kullanımı

parkyeri'nde çalışmak

neredeyse 2 yılımı geçirdiğim parkyeri'nden askerlik nedeniyle ayrılmak durumunda kaldım. türkiye'de başka herhangi bir şirkette bu kadar kısa bir sürede bu kadar fazla deneyim edinebileceğimi sanmıyorum. bunda parkyeri'nde toplanmış insanların ve çalışana istediğini yapma özgürlüğünün tanınmasının payı büyük.

parkyeri'nde; kişisel gelişiminizi, alanınız hakkında sizin kadar fikir sahibi olması mümkün olmayan insan kaynakları elemanlarının eline bırakmıyorsunuz. bir eğitime, ya da bir seminere katılmak istediğinizi belirtiyorsunuz, sizinle birlikte gelmek isteyenlerle birlikte gidebiliyorsunuz. insan kaynakları da sizin için işin organizasyon kısmını hallediyor. çalışma saatleri ve ücretsiz izinler konusundaki rahatlık işiniz dışındaki gelişmeleri de rahatça takip edebileceğiniz bir ortam sunuyor. tabi herşeyden önemlisi birlikte çalıştığınız insanlar ve bilgi paylaşımı üzerine kurulu bir düzen. insanlar çok hızlı bir şekilde aynı seviyeye geliyorlar. özetle yeni mezun iseniz ve türkiye'de iş arıyorsanız, parkyeri en iyi seçimlerden biri olur.

ancak herkes için hayat o kadar toz parlak değil. parkyeri'nde yetki yok, sorumluluklar var. ve içerideki düzen sorumlulukların paylaşımı üzerine kurulu. insanlara iş seçme özgürlüğünün verildiği bir ortamda, bazen kendi sorumluluğunuzdaki işin ilerlemesi için insan bulamayabiliyorsunuz. etrafta bağıran çağıran bir müdürün olmadığı bir ortamda kişisel disiplinler ön plana çıkıyor. insanların verdikleri sözü tutmama gibi öz disiplin eksiklikleri göstermeleri, zaman zaman canınızı fena halde sıkabiliyor. klasik yönetimsel yaklaşımlarla ilerlemek çok mümkün değil. herkesin herşeyden haberdar olmasına güvenen, yönetimde şeffaflığı hedefleyen bir sisteme en çok zararı yayılan asparagazlar ve asılsız dedikodular veriyor. herkesin herkese istediğini söyleme hakkının tanındığı bir ortamda düşünülmeden yapılan konuşmalar insanların canını sıkmaya ve motivasyon kayıplarının oluşmasına yetiyor. Diğer yandan düzen bu dedikodular üzerinde ayakta duruyor. Sürekli ortama birşeylere geç kalındığına, yeterli çalışılmadığına, müşterinin memnun olmadığına, böyle giderse batacağımıza dair bir stres pompalanıyor, ve pompanın başında da kimse yok, kendiliğinden oluşan stres dolu bir ortam. Örneğin Deloitte tarafından Türkiye'de en hızlı büyüyen şirket olduğumuz sırada bile şirket içinde "ne zaman batacağız acaba" sohbetleri dönüyordu. uygulama geliştirme bölümü sorumluluğum sırasında şirketimize teşekkür için gelen müşterilerle yapılan bir toplantıda duyduklarıma inanamamıştım. o an anladım ki çalışanlar olarak çıtamızı çok yukarılara koyuyoruz, halbuki çalıştığımız sektörde o kadar kötü örnekler var ki, müşterilerin koyduğu çıta bizim kendimizin koyduğunun çok çok aşağısında kalıyor.

parkyeri'nde iki ana fikir akımı sürekli bir çatışma halindedir: "çalışana daha çok özgürlük diyenler" ve "disiplin olmadan ilerlenemeceğini düşünenler". aslında bunlar tarih boyunca değişik çatılar altında defalarca tartışılmış, insanlık tarihi kadar eski konular. insan özgürlük mü ister? yoksa liderlik mi? kişisel düşüncem, işin insanda bittiği, doğru insanlarla her iki düzende de başarı elde etmek mümkün ki tarih her iki düzenin de başarı hikayeleriyle dolu.

kendi adıma ben genelde özgürlükçüler tarafında yer aldım. ülkemizdeki liberal ekonomi ve batılılaşma politikaları nedeniyle, özellikle bilgisayar sektöründe, disiplin ve hiyerarşiler üzerine iş modelleri geliştirme mücadelelerini akıntıya karşı yüzmek olarak görüyorum. özgür iradenin herşeyin önüne geçtiği bir çağı yaşıyoruz, bu gerçeği gören ve bundan faydalanan sistemlerle ilerlemek şu an için daha kolay.

parkyeri kurumsal müşterilere iş yapan ve daha çok butik işler yapan bir şirket. bu da içerideki yapıyı olumsuz bir şekilde etkiliyor malesef. içerideki rahat ortamı geren ve kavga dövüşün koptuğu kısım da hep müşteri kısmı oluyor. benim gözlemlediğim, müşteriye yaklaştıkça disiplinciler tarafına, müşteriden uzaklaştıkça da özgürlükçüler tarafına kayıyorsunuz. parkyeri'nin benim arzu ettiğm yolda devam edebilmesi için son kullanıcıya hitap eden ürünlere kayması şart. kurumsal müşterilere de ürün değil, hizmet ve danışmanlık satar hale gelmek lazım. çünkü ne yazık ki memleketimizde kurumsal müşterinin tek odağı maliyet ve zaman, kalitenin çok bir önemi yok. parkyeri çalışanları genelde kalite odaklı insanlar ve kalitesiz iş yaptıklarında mutsuz olan insanlar. son kullanıcıya gittiğinizde de kaliteden çok ödün vermeniz mümkün değil, yoğun rekabet ve yüksek müşteri beklentisi nedeniyle. açıkcası nasıl yaşar böyle bir firma, hiç bir fikrim yok, olsaydı zaten kendi işimi kurmuştum şimdiye kadar.

parkyeri'nde tırmanılması gereken kariyer basamakları da yok. parkyeri'ne geldikten bir ay sonra kendinizi proje yönetirken bulabilirsiniz. olay sizin yetkinliklerinizde ve isteklerinizde bitiyor. hiyerarşi olmadığı için hiyerarşiye dayalı bir maaş dağılımı da yok. girerken ne anlaşıyorsunuz odur. 4 ayda bir zam değerlendirmesi yapılır. aylık bir başarım değerlendirme sistemi maaşının yüzde kaçını alacağını belirler. sınırları belirleyen kesin bir kural olmamasına karşın genelde %75-150 arası bir maaş alırsınız. (tarihte %300 maaş alan insanlar da mevcuttur.) başarım değerlendirmenizi bölüm sorumlunuz yapar. çalışanın sosyal ve yasal hakları konusunda son derece duyarlı bir politika mevcuttur.

sorumluluklar bayrak yarışı gibi ilerler, yorulduğunuz zaman sorumluluklarınızı başkanıza devredebilirsiniz ve bu sorumluluk değişimleri çok doğal olarak karşılanır (bazen insanların küfretmesine de yol açmıyor değil tabi ama sizi sorumluluğunuza devam etmeye zorlayan herhangi bir otorite yok, sadece toplumsal yaptırıma maruz kalabiliyorsunuz). bu ortam, projenin gidişatından genelin haberdar olduğu bir ortam yaratıyor, klasik yönetimlerdeki tek kişiye bağımlılık, adam değiştirememe gibi dertlerin önünü kesiyor.

son 2 yıl içinde parkyeri'nde kod yazdım, testler ve destek sürecinde görev aldım, "proje" ve "uygulama geliştirme bölümü" sorumluklarım oldu. okuldan mezun olur olmaz ilk tam zamanlı işimde ve ilk 2 yılımda bana bunca tecrübeyi edinmemi sağlayacak bir ortam yarattıkları için parkyeri'nin kurucuları Giray Pultar ve Murat Avcı'ya; parkyerini ayakta tutan, büyük başarılara imza atmasında emeği geçen tüm parkyerlilere ne kadar teşekkür etsem azdır.


Pazartesi, Kasım 19, 2007

kredi kartımı kaptırdım



cevahir alışveriş merkezinde yemek yerken, ceketimin cebindeki cüzdanı alıp içinden nüfus cüzdanım ile kredi kartımı alan hırsız, aşağı kattaki teknosa mağazasından 450 YTL'lik alışveriş yapınca cep telefonuma şifresiz işlem yaptığıma dair mesaj geldi. gelen mesajı okuduğum an bu şekilde yansımış fotoğrafa.

hırsızı gayet sonuç odaklı ve soğukkanlı bulduğumu söylemeliyim. kalabalık (çarprazımda ve karşımda benle konuşan insanların olduğu) bir masada, arkamdaki ceketten cüzdanı alıyor ve kredi kartımla kimliğimi çıkartıp aynı soğukkanlılıkla geri koyuyor.

aslında fotoğrafta giray abi'ye banka'dan gönderilen reklam mesajlarından yakınıyordum ki sonradan çok şükrettim atılan mesaja.

olayın hemen ardından panik halinde kredi kartımı kapattırdım ve karakola giderek tutanak tutturdum.

yapılan alışveriş şifresiz olduğu için yapılan harcama kadar geri ödeme yapıldı 3 hafta içerisinde. sanırım olan teknosa'ya oldu ki bence böyle olması çok da adaletli. normalde teknosa'larda şifresiz alışverişe izin verilmezken bu teknosa'da izin veriliyor oluşu, ve aynı teknosa'da daha önce de benzer olayların yaşandığını öğrenmem "içeride adam mı var?" şüphesini insanın aklına getirmiyor değil.

gelen uyarı mesajı sayesinde olayın yaşandığı an saniyesi saniyesine bilinirken ve o kadar güvenlik kamerası olan bir alışveriş merkezinde hırsızı yakalayamamak gercekten zor. teknosa, mağazalarındakı kameranın süs olduğunu ve kayıt tutmadığını, cevahir güvenliği de kendi kameralarının döner kameralar olduğundan bu tarz anlık olayları yakalayamadıklarını belirtti. ya güvenlikler gerçekten göstermelik, ya da insanlar fazla uğraşmak istemiyor bu tip vakalarla. banka müşterinin zararını karşıladığından müşteri de çok peşinden koşturmuyor anladığım kadarıyla.

kimliğimi kaptırdığıma daha çok üzülüyorum şu an, çünkü olaydan bir hafta sonra internet üzerinden berlin'de bir alışveriş yapılmaya çalışılmış, bu da kimliğimin kart ile birlikte satıldığı şüphesini uyandırdı bende.

bu arada garanti bankası müşteri hizmetlerinden edinemeyeceğiniz bir takım faydalı bilgileri de paylaşayım tecrübe edinmişken, kredi kartınızı kapattırdıktan sonra alışveriş itirazı için bir dilekçe fakslamanızı istiyorlar bir numaraya. bu dilekçeyi elle yazmamanız gerekiyor (ki bu ayrıntıyı sizle paylaşan olmuyor), bir de tutanak göndersem olur mu demiştim ben, olur demişlerdi, buna da inanmayın, bir hafta sonra kendinizi dilekçe yazarken bulursunuz ki dilekçeyi elle yazdığınızdan 1 hafta boyunca hergün dilekçe gönderip bir türlü ekranlarına düşmesini sağlayamazsınız (neyse ki 45 günlük itiraz süresi var.)

niye bu devirde faksla iş yapılmaya çalışılıyor akıl sır erdiremedim. sürecin başlayıp başlamadığından herhangi bir şekilde haberdar olamıyorsunuz, ancak süreç sonlanınca durum belli oluyor. ve sürekli müşteri hizmetleri "dönücekler size" telkinlerine devam ederek sinirinizi zorluyor, arkadaşım süreç başlamadıysa niye dönsünler bana, soruşturmanın başlayıp başlamadığını öğrenmeye çalışıyorum.

başıma gelen her hırsızlık olayından sonra hayatıma yeni paranoyalar ekliyorum, evime hırsız girmesi ardından, yatarken cüzdanımı, telefonumu saklar olmuştum, artık cevahir'de yürürken de herkese hırsız gözüyle bakmaya başladım.

Pazartesi, Kasım 05, 2007

haftasonu ggk seminerleri

bu haftasonu ggk'nın düzenlediği iki seminer vardı:

* Kablosuz Haberleşme Ağları (Dr. Melik Şah Ertuğrul)
* Kalite mi teknikten, teknik mi kaliteden? (Özay Civelek)

ilkine bekir ve alper ile beraber gittik. kablosuz ağlar konusunda
genel bir fikir edinmek için oldukça faydalı bir seminerdi. kendi
adıma en büyük kazanımım ise ubicom diye bir şirketin varlığından
haberdar olmuş olmamdı. bu tip firmaları duymak çok kolay değil
(muhtemelen genelde devletle iş yaptıklarından), ünleri kulaktan
kulağa yayılıyor. öğrenciliğim sona erdiğinde tam zamanlı işlere
bakınırken algım daha çok haberleşme ve gömülü programlama ile ilgili
işlere açıktı. o zamanlar ubicom'un varlığından haberdar olsaymışım
ilaç gibi gelirmiş. gerçi parkyeri'ne girdiğim için de gayet memnunum.

ikinci seminere bekir ile beraber gittik. özay bey'in yaptığı sunum,
sonrasındaki tartışmanın açılış konuşması tadında geçti. seminerin isminden
olsa gerek katılımcı sayısı azdı ancak gelenler de hep sektörde
tecrübe sahibi olan insanlar olduğundan, gerek aralardaki sohbetler
gerekse tartışma sırasındaki paylaşımlar insanı geldiğine pişman
etmedi.

sektörün ne kadar farklı alanlarında çalışıyor olursak olalım
problemlerin aynı olduğunu gördüm. proje yönetimi hepimizin kanayan
yarası.

sunum sonrası tartışma'da "türkiye'de nasıl yazılım tutar" sorusuna
cevap aradık. göçebe toplum olduğumuzdan, uzun vadeli düşünenin
olmadığından, düşünmeye niyetin varsa da uzun vade plan yapılabilecek
bir ortam olmadığından dem vuruldu. ben emre sokullu'nun tespitini
gündeme getirerek, henüz türkiye'de basın-girişimci-yatırımcı
üçgeninin oluşmamasının önemli bir engel olduğunu savundum. google,
youtube, facebook'un hükümet politikası doğrultusunda çıkarılan başarı
hikayeleri olduğunu, bizde basında bir mynet'in bir ekşisözlük'ün
değerinin konuşulmadığını dile getirdim.

kişisel olarak o kadar da umutsuz bakmıyorum aslında, çünkü gördüğüm
kadarıyla düğmeye çoktan basıldı türkiye'de de. fikir patlatma odaklı
şirketler kurulmaya başlandı, kurulmuş şirketler odağını fikir
patlatmaya çevirmeye başladılar. yerli melek yatırımcılar yavaş yavaş
ortaya çıkıyor. televizyonda teknoloji kanalları çoğalıyor. yani
basın-girişimci-yatırımcı üçgeninin oluşmasına o kadar da uzun zaman
yok sanki. yakın zamanda meyvelerini toplamaya başlarız.

arada programlamaya yeni başlayacak olan bir arkadaş "hangi dili
kullanıyorsunuz? hangi dille başlasam?" gibi sorular soruyordu. RFC ve
W3C okumasını önerdim kendisine. pek önemsemedi, ben de "dilden ziyade
standartlara ve protokollere odaklanmak lazım" diye tavsiyeme devam
ettim. ama yine de çok etkili olabildiğimi sanmıyorum. bekir "birşey
yazmamış adama standart-protokol vs. okutamazsın" diye bir görüşte
bulundu. çok katılmıyorum bekir'e aslında, üniversitelerde hocalar
"C'de şunu yap" diye ödevler vermek yerine, "şu" kısmını varolan
RFC'lere bırakıp, C diye belirtmeseler ve ödevi şu şekilde verseler
"şu RFC'nin şurasının istediğin dili kullanarak uygulamasını yaz",
belki insanların düşünce yapısını değiştirmek mümkün olur. ben kendim
de önce dil öğrenen bir insan olarak, önce standartları ve
protokolleri okusaydım gelişimim daha hızlı olurdu diye düşünüyorum.

kendi adıma bir diğer kazanım da bir başka web2.0 girişimi olan
bisorusor.com'dan haberdar olmuş olmamdı. bisorusor'u forumlardan,
usenetten ve  "yahoo answers"'tan farklı kılan detaylı istatistikler

çıkarmaya odaklı olması ve kendi sitenizde yayınlayabileceğiniz
eklentiler sunması. başka bir yerden bire bir kopya olmayan bir web2.0
girişimi olduğu için heyecanlandım, hayırlısı diyorum.

Cumartesi, Ekim 27, 2007

semantic web, mikroformat vs...

1 kasim'da bilgi universitesinde bir seminer vereceğiz bekir ile, ne anlatsak ne anlatsak derken sonunda semantic web'e karar kıldık. aslında bizim niyetimiz mikroformatlar bahanesiyle biraz javascriptin nelere kadir olduğundan ve semantic web'ten bahsetmekti, ama can burak'la da konuştuktan sonra daha önce şirkette semantic web üzerine bir sunum yapmış olan ahmet'i de aramıza alıp seminer konusunu "web-3.0" olarak belirlemeye karar verdik.

webe sürüm biçme çabası biraz enteresan aslında, özellikle "web-2.0" için baya bir tanım bulmak mümkün internet üzerinde. bu tanımlardan biri de yaşanan blog çılgınlığı ve herkesin bir anda 90'larda dalga geçtiğimiz internet mahir karakterine dönüşme yarışına girişmesi.

şu an internet üzerinden ulaşılabilen verinin boyutları inanılmaz rakamlara oluştu, hal böyle olunca da veri madenciliğinin yükselen bir değer olması kaçınılmaz. www'in babası Tim Berners Lee'nin hayalinin gerçek olmasına çok uzun bir zaman kalmamış gibi görünüyor:

Web için bir hayalim var, öyle ki bilgisayarlar web üzerindeki bütün veriyi, içerikler, linkler ve insanlarla bilgisayarlar arasındaki bütün işlemler gibi, analiz etmeye muktedir olacaklar. Henüz ortaya çıkmamış olsa da, Semantic Web ortaya çıktığı zaman ticaretin günlük mekanizmaları, bürokrasi ve günlük yaşamlarımız birbiri ile konuşan makinalar tarafından yürütülecek. İnsanlığın asırlardır konuşup durduğu "akıllı ajanlar" nihayet gerçekleşecek.

yakın zamanda internet sitelerindeki veriler hem insanlar hem de makineler tarafından anlaşılabilir hale gelecek, birbirinle konuşabilen internet sayfalarından söz ediyoruz. eposta hesabınız google'da dururken kişi listeniz facebook'ta durabilecek, ve bunun için facebook ile google arasında milyon dolarlık anlaşmalar olması gerekmeyecek sadece herkesin belli standartlara uyması yeterli olacak.

senaryo çok bilim kurgu olunca hemen bir sürüm numarası vermek şart oluyor, zayıf bir yapay zekası olan bu ağı web-3.0 olarak tanımlıyor pek çok insan.

semantic web denilince akla ilk gelen anahtar sözcükler rdf (resource definition framework) ve owl (web ontology language). 

bir de tantek çelik'in mikroformat mücadelesi var tabi. tantek çelik, bekir'in deyimiyle "arkadaşım bu kadar kasmaya gerek yok, yeni diller filan yaratmaya, xhtml ve css gayet yeterli pek çok şey için".  s5 için de aynı yaklaşımı görmek mümkün (gerçi s5'te orjinal fikir opera'ya ait)

gerçekten css sınıflarını tag gibi kullanıp xpath sorgularıyla ilerleyerek gayet hoş ve basit bir çözüm üretmiş oluyoruz semantic web adına. şu an kişi listesi barındıran uygulamanızda mikroformatlara uydugunuz takdirde, kişi bilgilerini vcardlara dönüştürmek, elde ettiğiniz vcardları da herhangi bir takvim programına veya herhangi bir cihaza (cep telefonu, pda veya dizüstünüze) aktarmak çok kolay.

semantic girişimlerin takdir ettiğim bir diğer yönü de programcıyı koda girişmeden veri modellemek zorunda bırakması (normalde olması gerektiği gibi). bu durum, zamanla, tecrübesiz insanların bile gayet profesyonel işler çıkarmasının önünü açacaktır diye düşünüyorum.

özetle herşey çok güzel olacak. bilgideki konuşmamıza herkesleri bekleriz.

Pazar, Ekim 21, 2007

SCTP geliyor!

bu hafta gerek BSD konferansında gerekse barcamp istanbul'da pek çok faydalı seminere katılma imkanı buldum, kendi adıma en büyük kazınımım ise SCTP'den (yani "Stream Control Transmission Protocol" ) haberdar olmuş olmam, murat balaban'ın başarılı sunumu sayesinde.

TCP'nin yerini alacak gibi görünen SCTP birçok sıkıntıya çözüm getiriyor, benim etkilendiğim bir kaç tanesi:
  • bir "stream"den birden fazla verinin aktarılması (bir "web" sayfasında her resim için ayrı "stream" açılmasına gerek olmayacak, tüm resimler aynı "stream" üzerinden aktarılabilecek)
  • kullanıcıyı streami koparmadan başka bir sunucuya aktarmak mümkün olacak.
  • gerçek zamanlı geri beslemeli iletişime imkan tanıyacak (udp ve tcp özelliklerinin birleşimi, hem paket kaybından haberdar olma hem de paket kaybını önemsemeden devam edebilme şansı olacak, sesli ve görüntülü iletişim için oldukça gerekli.)
ajax uygulamalarındaki dertlerden biri aynı anda başlatılan birden fazla ajax isteğinden biri tıkanırsa tarayıcılardaki "aynı anda sadece iki istek" sınırlaması nedeniyle problem olmayan diğer isteklerin önünün tıkanmasıdır. bu durum özellikle "entegrasyon" projelerinde sıkıntı yaratır, bağlandığınız webservislerinden birinin aşağıya inmesi kullanıcıda hizmetin genelinde problem varmış hissi yaratabilir. tabi iyi bir tasarımla ve bir kaç takla ile bu tarz sıkıntıları aşmak mümkün.

büyük yüklere maruz kalan uygulamalarda "stream"i koparmadan kullanıcıyı başka bir sunucuya aktarabilmek gerçekten önemli bir özellik, bu sunucu problemlerinin kullanıcıya hiç yansımamasını sağlayacaktır yakın bir gelecekte ki şu anda da epey ihtiyacını hissettiğimiz bir özellik.

şu an için daha çok voip uygulamaları ile uğraşan insanların dikkatini çekmiş gibi görünüyor SCTP. artık ağ sıkıntılarında sesin ve görüntünün gecikmesi gibi kavramlar ortadan kalkacağa benziyor bu yeni protokol sayesinde. uygulamalar hem meydana gelen paket kayıplarından haberdar olacabilecek hem de gerçek zamanlı iletişime devam edebilecekler. yani tele konferanslarda cızırtı da olsa aynı anı paylaşmaya devam edebilecek taraflar. çok geniş katılımlı video destekli sohbet odaları da peydah olacaktır yakın zamanda diye düşünüyorum.

şu an için kame projesinin çatısı altında ilerliyor freebsd'deki SCTP çalışmaları, "snapshot"lar SCTP desteğini içeriyor.

neyse duyunca gerçekten heyecanlandım, paylaşmak istedim, belki başkalarının da duymasına vesile olurum.

Çarşamba, Ekim 17, 2007

ssh agent - macosx tiger - emacs tramp

hayatı ssh üzerinde geçip de linux'tan mac'e geçen insanlarda ortak bir semptom farkettim geçenlerde: "ssh agentin abuk davranışlarını algılamaya çalışma ve kulağı tersten tutan çözümler üretme mucadelesine girişme".

şahsen ssh-agenti "her defasında şifre girmek zorunda kalmayım" ya da "bash_completion'ın nimetlerinden faydalanayım" gibi sebeplerle kullanmaktayım. mac'teki problem de ssh-agent'in her defasında şifre sorması idi, şöyle bir kulağını tersten tutan çözümle ilerlemiştim vakti zamanında:

[] keychain yükledim önce, (darwinports ve fink depolarında mevcut)
[] sonra bash_profile'a şu satırları ekledim.

/sw/bin/keychain ~/.ssh/id_dsa
source /Users/ekesken/.keychain/hede.local-sh > /dev/null

yukarıdaki hedeyi bilgisayarınızın ismi ile değiştirmek gerek.

[] /Users/ekesken/.keychain/hede.local-sh betiğinin içeriği de şöyle idi:
SSH_AUTH_SOCK=/tmp/ssh-4JiIxDIab7/agent.235; export SSH_AUTH_SOCK;
SSH_AGENT_PID=237; export SSH_AGENT_PID;

yukarıda yaptığım ssh-agentin açtığı socket dosyasını ve pidini sabitleyerek sisteme duyurusunu yapmak. bu şekilde bilgisayarınız açıldıktan sonra ilk terminal açılışında bir defaya mahsus şifre soruluyor sonra da rahat ediyorsunuz.

bir de emacs'ten tramp ile uzakta çalışmanın hastası bir insan olarak yeri gelmişken belirteyim, carbon emacs'te ssh-agenti kullanabilmeniz için emacs'i çift tık ile çalıştırmak yerine ssh agent icin şifrenizi girdikten sonra terminalden aşağıdaki komut ile (sizin için farklı olma ihtimali var tabi) çalıştırmanız yeterli.
/Applications/Emacs.app/Contents/MacOS/Emacs

Pazartesi, Ekim 08, 2007

seminer vaaar, seminer var!

bu hafta içinde güvenlikle ilgili bir seminere katıldık parkyeri insanları olarak, açıkçası şu tadta birşeylerin arayışındaydık:


malasef aradığımızı bulamadık, daha çok tbd etkinlikleri tadında geçen, firmaların gövde gösterisini büyük bir sabırla izlemek durumunda kaldığımız bir etkinlik oldu. günün sonunda hiçbir kazanımım olmadı, yeni bir anahtar kelime bile çıkmadı özetle.

bu haftasonu da genç girişimciler kulubünün düzenlediği emre sokullu'nun konuşmacı olarak katıldığı bir söyleşi vardı, bu sefer keyif alabildiğimiz. benim gördüğüm ve bekir'in geçmiş tecrübelerinden anladığım genç girişimciler kulubü güzel bir ortam kurmuş ve faydalı etkinlikler düzenliyor, bilişim ile ilgili olan etkinliklerini takip etmek gerek.

söyleşi sırasında türkiye'de bir barcamp düzenleyelim heyecanı doğdu, umarım devamı gelir, bu arada youtube'de barcamp videolarını dolaşırken "tantek çelik"'e denk geldim:


ve kendisini daha önce duymamış olduğuma inanamadım, kendisi sun, oracle, apple ve microsoft'ta çalışmış, internet explorer'i mac'e port eden insanlardan, w3c'de soz sahibi, technocrati'yi kurmuş bir idol imiş.

emre sokullu'nun söyleşi sırasında dile getirdiği önemli bir gerçek var, o da ülkemizde basının bu tip insanlara sahip çıkmaması, idol haline getirmemesi.

yine söyleşi sayesinde "kenan technologies"'in varlığından haberim olmuş oldu. şirketini 1 milyar dolara satan, MIT'e 100 milyon dolar bahış yapan bir türk varmış, öğrenmiş olduk.

google'da, sun'da, apple'da çalışan o kadar türk olduğu söyleniyor, bir tanesini tanımamak üzücü gerçekten.

umarim barcamp gibi etkinlikler bizim memleketimizde de olur birgün, belki bu vesileyle bu insanları tanıma, dünyada neler oluyor bitiyor birinci ağızdan öğrenme fırsatımız olur.

Cumartesi, Temmuz 28, 2007

cankurtaran javap

genelde masaüstünde geliştirme yapmayan ve hantal idelerden uzak durmaya çalışan bir insan olarak java geliştirmelerinde en iyi arkadaşlarım emacs ve vim.

iki editorde de idelerin sağladığı otomatik tamamlama atraksiyonlarından faydalanmak mümkün, ancak bazen geliştirme yapacağım ortamda vim-7 bulamamak ya da emacs'in eklentilerini kurmaktan üşenmek gibi sıkıntılarım oluyordu.

sürekli konsolda takılan bir insan olduğumu göz anında bulundurursak "javap"'ın varlığını çok geç farkettim, o yüzden blogumda da duyurayım, başkalarının farketmesine de vesile olurum belki diye düşündüm. javap şunu yapar:

$> javap java.util.Properties
Compiled from "Properties.java"
public class java.util.Properties extends java.util.Hashtable{
protected java.util.Properties defaults;
public java.util.Properties();
public java.util.Properties(java.util.Properties);
public synchronized java.lang.Object setProperty(java.lang.String, java.lang.String);
public synchronized void load(java.io.InputStream) throws java.io.IOException;
public synchronized void save(java.io.OutputStream, java.lang.String);
public synchronized void store(java.io.OutputStream, java.lang.String) throws java.io.IOException;
public synchronized void loadFromXML(java.io.InputStream) throws java.io.IOException, java.util.InvalidPropertiesFormatException;
public synchronized void storeToXML(java.io.OutputStream, java.lang.String) throws java.io.IOException;
public synchronized void storeToXML(java.io.OutputStream, java.lang.String, java.lang.String) throws java.io.IOException;
public java.lang.String getProperty(java.lang.String);
public java.lang.String getProperty(java.lang.String, java.lang.String);
public java.util.Enumeration propertyNames();
public void list(java.io.PrintStream);
public void list(java.io.PrintWriter);
static {};
}


classpathinizde yer alan herhangi bir sınıfın hangi methodunun hangi değişkenlerle çağrılması gerektiği, ve ne döndürdüğü, sınıfın public değişkenlerinin listesi gibi faydalı bilgileri edinebiliyorsunuz çıktısından.

ayrıntılı bigi için
$> man javap

Salı, Şubat 13, 2007

istanbul için deb paketi

istanbul diye bir paket varmış dünyada:

ekesken@ahir:~/Movies$ aptitude search istanbul
p istanbul - Desktop session recorder producing Ogg Theora video

ne alaka diye bir araştırma yapınca kel alaka olduğunu anlıyorsunuz:

"Why the name Istanbul?

I named it Istanbul as a tribute to Liverpool's 5th European Cup triumph in Istanbul on May 25th 2005"
(http://live.gnome.org/Istanbul)

allah akıl fikir versin

Perşembe, Ocak 25, 2007

evet yaptım kendime bir macbook aldım!

askere gitmeden biraz para tutmuştum elimde, askere gidişim gecikince, askerden sonraya attığım planları biraz öne çekerek kendime bir macbook aldım.

çevrem pek yakıştıramadı macbook'u bana (beyaz ve 13" de kendisi, bende 103 kilo olmuştum en son, neyse askerde vericez inşallah kiloları)

bazı bazı yorumlar oldu:

- ne oldu özgür yazılım?
- steve jobs'un köpeği olmuşsun diyorlar.
- top bilgisayarı oğlum bu!

günah çıkarmam gerekirse neden macbook diye sorarsanız:

1 - merak
2 - rahat etmek
3 - "donanımın yazılımla birlikte satılması" hareketine "özgür yazılım" kadar sıcak bakıyorum ve her zaman propogandasını yapabirim.

açıkcası açık kaynaklı masaüstü ortamlarının esin kaynağı olan bir sistemi görmek ve kullanmak istedim, birçok sağlam geliştiricinin kişisel bilgisayar seçimini mac'tan yana kullanması da biraz aklımı çeldi.

ikincisi artık biraz rahat etmek istiyordum, gününün yaklaşık 12 saatini bilgisayar başında geçiren bir insanım, ve açıkcası artık kendi söküğümü dikmek istemiyorum, internette fellik fellik sürücü aramak, bu monitorun en uygun horizsynci nedir acaba diye 2 saatimi harcamak, internetlerde chipset aratmak istemiyorum.

üçüncüsü apple'in işletim sistemini ayrı satmama ve işletim sistemini sabit bir donanım için geliştirme prensiplerini gerçekten çok takdir ediyorum, umarım ileride beni hayal kırıklığına uğratmazlar. açıkcası bence yazılım ve donanım birbirinden hiçbir zaman ayrılmamalıydı, bir asansör bilgisayarına program yükleme ihtiyacımız ile kişisel bilgisayarımıza program yükleme ihtiyacımız aynı olmalıydı. "ofis uygulaması mı istiyorsun arkadaşım, al sana ofis tak usb'ne calışsın", "al şurda da veritabanı kartı var bir tane" modeli bana daha sağlıklı geliyor.

sonuç olarak tüm birikmiş paramı sıfırlamasına rağmen macbook'u aldığıma hiç pişman değilim, hatta her geçen gün daha da memnun oluyorum, daha önce hiç mac kullanmamış bir insan olarak diyebilirim ki beklentilerimin çok üzerinde bir kullanıcı tecrübesi yaşatıyor.

ve en güzeli şu ana kadar ihtiyaç duyup da bulamadığım bir açık kaynaklı yazılım olmadı, hatta apt-get bile kurdum.

görsel herhangi bir konuda gerçekten üstün performans sergiliyor, video gösterimlerinde çift monitorle bilgisayara 8 takla attırsanız da video akışında en ufak bir tekleme olmuyor ve iki işlemci de %10'u bile görmüyor. çift monitor çalışma konusunda çok başarılı, taktığınız ekranı anında tanıyor ve yaptığınız ayarları her ekran için ayrı ayrı hatırlıyor.

ancak büyük bir uygulama derliyorsanız macbook'unuzun tüm ihtişamı bir anda son buluyor çünkü 5400 rpmlik diskiniz darboğaz oluşturuyor, derleme sırasında işlemcilerden biri sürekli %100'e vuruyor.

özetle işlemci-bellek dışına çıkmayan bir iş yapıyorsanız ve yaptığınız iş görüntü ile ilgiliyse macten daha iyi bir performans alabileceğiniz bir sistem olduğunu sanmıyorum.

tek dert bellek, 512 Mb kesinlikle yeterli değil, normal kullanımda 1 saat içinde boş bellek miktarı 4-5 MB'e iniyor, ancak bellek yönetimi biraz farklı olsa gerek çünkü sizi bezdirecek bir yavaşık yaratmıyor bu durum, birkaç uygulama kapatıp belleği hafifletip sistemin toparlanmasını sağlayabiliyorsunuz.

en buyuk bellek katilleri tabi ki java uygulamaları, jmeter ve itunes'u aynı anda çalıştırıyorsanız sizin için üzgünüm. java arayüz uygulamalarında tepki hızları kullandığım linux sistemlere göre oldukça iyi, ama bellek dolmuşsa yavaşlamalar başlıyor.

özetle "evet, steve jobs'un köpeği oldum", ama elinize bir mac alıp 1-2 hafta kullanmadan beni yargılamamanızı öneririm.

umarım birgün kodunu açarlar ve şu patent saçmalıklarına bir son verirler.