yazılım / Aranel Surion'un Blogu
taxonomy.module dosyası 21 satırında Can&#039;t create/write to file &#039;/tmp/#sql_36a_0.MYD&#039; (Errcode: 28)
Bilişim, fix, geliştirme, linux, yazılım
Sublime Text 2: Hayalimdeki IDE
Arabalara, balıklara, hatta posta pullarına ilgi duyabilecekken, evet şu bir gerçek ki benim hobilerimden biri IDE’ler. Hatta bazı günler, ortaya bir iş çıkarmaktansa sadece açıp onların arayüzüne bakmak, sağını solunu kurcalayıp çalışmayı takdir etmek geliyor içimden. Öyle ya, rahatınıza düşkünseniz, hesap makinesi yazmak için bile, a ile b ‘yi toplamak için bile rahat bir koltuğa, 23″ er inç iki ekrana, üst seviye mouse/klavye ikilisine, hızlı bir bilgisayara ve Linux’unuzun üzerinde koşan sağlam bir IDE’ye ihtiyaç duyabiliyorsunuz. Her ne kadar göze takım elbiseyle araba tamir etmek gibi gelse de gerçek bu, uğraştığınız işi eğlenceli bir aktiviteye dönüştürmenin yolu, içine birazcık lüks katmaktan geçiyor.
Sadece bunlar da değil, sanırım bugüne kadar piyasaya çıkmış, bir şekilde birileri tarafından kullanılmış çoğu editörü denemişimdir; NetBeans, Geany, Eclipse, Qt Creator (bunun amacı farklı tabii), hatta Kate, Nano ve kısa süreliğine Vim de, bunların arasına Windows ‘da kullandıklarımı, bir gün kurcalayıp attıklarımı, bugünlerde yeni yeni sayıları artan WebIDE ‘leri de eklerseniz, evet, IDE kurcalamak bence bir hobi. En azından geçen birkaç haftaya kadar böyle düşünüyordum.
Ve sonra.. Ve sonra hayatıma Sublime Text girdi, anladım ki IDE değiştirmek bir hobi değil, bir arayış. Yukarıda saydığım kamyon yüküyle editör, pek çok farklı amaca ve kullanıcıya hizmet peşinde, Nano bu listedeki belki de en özelliksiz, sade editörken, NetBeans ‘in özelliklerinin %10 ‘u kadarını keşfettiğimi sanıyorum. Hepsini bağlayan ortak nokta nedir? Hepsi kötü görünüyor! Yazılım da yazsanız, roman da yazsanız (niye romanı bir editörde yazacağınız bu yazının konusu değil) bu editörlerin arayüzleri bir felaket. Üstelik hepsi çok ağır, açılışları da, çalışmaları da, hantallığı illa ki hissediyorsunuz. Hantal olmayanları da neredeyse hiçbir özelliğe sahip değil, şanslıysanız sentaks renklendirme yapıyorlar sadece, gerisi size kalmış. Sadece bunlar da değil, bu editörler kendi aralarında kamplaşmış gibiler, ya özelliksizler, ya da korkunç karmaşık arayüzleri ve işlevsellikten tamamen uzak yaklaşımlarıyla özelliklerini kullanasınız gelmiyor bile.
Bilişim, geliştirme, linux, tanıtım, yazılım
myTinyTodo ile Yapılacakları Yönetmek
Yaklaşık 3 gündür, yapılacak listesi sorunuma bir çözüm arıyordum. Bunun bir sorun halini almasının asıl sebepleri; hem N9’daki TO-DO uygulamalarının yetersizliği, hem de benim bu alanda hiçbir çözümü tam olarak benimsememem oldu. Uygulamaların kimi yetersiz, kimi fazla yeterli/karmaşık, kimisi de fazlasıyla “fantastik” geldiler ki, kendi basit liste tutma amacıma hizmet ettiremedim bunları. myTinyTodo ise, şimdiye kadar bulduğum en iyi çözüm, ve her anlamda işimi görüyor. Peki, yapılacaklarımızın listesini tutacaksak, neden myTinyTodo?
myTinyTodo, basit bir PHP betiği. Sunucunuza kurup, dileğinize göre SQLite veya MySQL üzerinden kullanabiliyorsunuz. İlk avantajı da burada, diğer bir çok çözümün aksine, Web ‘de çalıştığınız için platform-bağımsız çalışabiliyorsunuz, üstelik tüm veriler sunucunuzda saklanıyor, ve kodlar açıkta olduğu için kendinize göre bir yön verme şansınız mevcut. Son derece basit bir kurulumdan sonra, myTinyTodo ile hemen çalışmaya başlamak mümkün, üstelik oldukça da yetenekli.
Ayrı listeler ve etiket mümkün. İsterseniz benim gibi, tüm yapılacaklarınızı Genel adında bir listede toplayabileceğiniz gibi, çok yapılacak işiniz varsa, bunları farklı listelere dağıtabiliyorsunuz. Daha önemlisi, her yapılacak notunuza bir etiket verip, etikete göre arama yapabiliyorsunuz. Mesela “Blog”, “MeeGo”, “ITStuff”, “Angarya” gibi etiketler yaratıp, basitçe sadece angaryaları, veya blog işlerini takip edebiliyorsunuz.
Bütün yapılacak maddelerine bir deadline verebiliyor, öncelik belirtebiliyorsunuz. Verdiğiniz bitiş süresi size “3 gün içinde”, “yarın” gibi mantıklı kelimelerle sunuluyor. Önceliklerde ise daha da mantıklı bir şekilde, +2, +1, 0 ve -1 seçenekleri mevcut. Böylece neyin önemli olduğunu bildiğiniz gibi, neyin önemli olmadığını da bilip, dikkatinizi dağıtmamış oluyorsunuz. İsterseniz maddelere not eklemeniz de mümkün.
Yapılacaklar size son derece sade bir arayüzde, gerekli her şeyi (öncelik,madde,bitiş tarihi ve not) tek satırda, renklendirilmiş şekilde veriliyor. Anlamak için bir bakış yeterli.
Listelerinizi isterseniz parola korumalı hale getirebiliyorsunuz, ayrıca yine isterseniz, bazı listeleri halka açık hale getirmek, hatta RSS üzerinden besleme vermek de mümkün. Böylece, kapalı kapılar ardında kalması gerekmeyen işlerinizi, etrafınızdakilerle paylaşmanız mümkün hale getirilmiş.
MyTinyTodo ‘nun harika uyumlu bir mobil versiyonu da var, http://kurulumunuz.com/?pda yapıp, akıllı cihazlarınızdan bu kullanımı son derece kolay arayüze erişebiliyorsunuz ki, büyük bir artı. N9 için konuşursam, şimdiye kadar gördüğüm en iyi TO-DO web arayüzü bu yazılımda. Daha da iyisi, arayüzün tamamı dinamik, sayfalar arasında gezinmiyorsunuz. Üstelik eklediğiniz yeni maddelerde “/” işaretiyle akıllı özellikler kullanmak mümkün. Mesela, “/+1/ MyTinyTodo’dan bahset /Blog/” yazıp, Blog etiketine +1 öncelikte bir madde eklemek mümkün.
Bunların dışında, myTinyTodo, isterseniz yapılacaklarınızı sıralama ve CSV veya iCalendar olarak dışa aktarma yeteneğine de sahip. Türkçe dil desteği de myTinyTodo ‘da mevcut.
Özetlemek gerekirse; myTinyTodo son derece sade, pratik, oldukça fonksiyonel ve de güvenli. Üstelik senkronizasyon derdiniz olmadığı gibi, mobil kullanmak da mümkün.
Beni myTinyTodo ‘ya kadar getiren yol oldukça sıkıcıydı, açıkçası MTT ‘ye de fazla güvenmemiş, kurduktan sonra kendime göre yeniden dizayn etmeyi düşünüyordum. Biraz kullandıktan sonra, işin gerçeği şu ki, bu küçük web yazılımında ihtiyacım olan her şey, fazlasıyla iyi düşünülmüş ve entegre edilmiş bile! myTinyTodo, yaklaşık 1 yıldır yeni sürüm vermemiş olmasına rağmen, benim nezdimde en başarılı TO-DO uygulaması.
Demo ve indirmek için: myTinyTodo.net
Bilişim, geliştirme, tanıtım, yazılım
Python Mechanize ile Hayatı Kolaylaştırmak
3-5 satır Python yazmayı bilen herkesin ilk öğrenmesi gereken şey, bana kalırsa Mechanize kütüphanesi. Mechanize hem hızlı, hem etkili, hem çok kolay hem de Python üzerinde kullanıyorsunuz, ki bu da onu daha da kolay yapıyor. Peki nedir Mechanize? Mechanize, -daha çok benim onu kullandığım ve öğrendiğim haliyle- web tabanlı işlemlerinizi, 10 satırlık kodlarla otomatikleştirebileceğiniz bir araç. Tamamen metin tabanlı, sisteminize en ufak bir etki etmeden, bir tarayıcıymış gibi sayfalara bağlanıp, istediğiniz yerlere tıklıyor, formları doldurup gönderebiliyor.
Kullanım alanları neredeyse limitsiz. Mesela bir veriyi sürekli kontrol etmeniz gereken bir sayfa var, Mechanize ile otomatik bağlanıp o veriyi her seferinde kontrol ettirebilir, basit bir Python koduyla değişmeleri günlükleştirebilir, kendinize mail atabilir, wall komutu (ve KDE’nin wall komutlarını okuması) yardımıyla tek satır kodla uyarı kutuları oluşturabilirsiniz. Sadece değişimleri takip etmek ya da bir veriyi okutmak değil, onu bir monitoring aracı olarak da kullanabilirsiniz. Ya da sizin için ısrarla bir sayfayı zorlayıp, formları doldurmasını sağlayabilirsiniz, mesela dershanelerde, üniversitelerde vardır bu, gecenin bir saati açılan sistemlere uyumaksızın girip ders almak. Mechanize sizin için gecenin bir saatine kadar bekler, defalarca kez ardı ardına dener ve diğer adaylar tek tek formu doldururken, formu saniyede doldurup gönderir, ne isterseniz onu almış olursunuz. Ki bu da neredeyse her daim çöken devlet sitelerinde sizin baş yardımcınız olabileceği demek oluyor.
Bunlar sadece bazı örnekler. Bir başka örnek olarak, benim N900 için yazdığım VodaSMS, Mechanize yardımıyla Vodafone’un sitesine giriş yapıp bedava SMS hizmetini tüm o menüler, reklamlar arasında dolaşmadan tek tıkla yapabilmenizi sağlıyordu mesela. Bu basit bir örnek, isterseniz mechanize ile fatura detaylarını okutursunuz, isterseniz onu bir site için istemci yapmakta kullanırsınız. Gzip sıkıştırma, cookieler, HTTP refresh gibi badireleri sorunsuz atlattığı gibi, isterseniz User-agent ‘ı bir satırla değiştirir, kendisini bir Firefox veya Chrome olarak göstermesini sağlarsınız ki, ısrarlı denemeleriniz loglarda göze çok batmasın. Örnek arttırılabilir, bir web örümceği de yapmaya çalışabilirsiniz, YemekSepeti’nden sipariş de verdirebilirsiniz.
Bilişim, geliştirme, linux, yazılım
linux, maemo, mobil, telefon, yazılım