Hackathon-2 haqda

Baku GTUG və İlkaddımlar-ın birgə reallaşdırdığı Hackathon-2 Android proqram yarışması başa çatdı. Bu dəfəki müsabiqədə app-lar ilə tanış oldum, ona görə də istədim fikirlərimi yazam. Ümumi qənaət müsbət oldu, az sayda da olsa istedadlı və kreativ developerlərin yetişməkdə olması sevindirməyə bilməz. Bu tip müsabiqələr isə bu prosesə ciddi katalizator rolunu oynayır.
İndi app-lar haqda qısa fikirlərimi və subyektiv ballarımı yazacam, yəqin ki kimsə inciməz 🙂 Çünki burada developerlərin istedad və bacarığına yox, hazırladığı app-a qiymət verilir. App keyfiyyəti isə tək bacarıqdan yox, ayrılan diqqət və zamandan, stimuldan, həvəsdən və.s. faktorlardan asılıdır.

Gombuless:
İdeya – 3/5 – İdeya yaxşıdır, bu tip app-lar çoxdur amma.
Dizayn – 5/5 – Dizaynı çox səliqəli, ürəkaçan, hətta az qala burdakı app-lardan ən yaxşısı.
Funksionallıq – 2/5 – Bir az qarışıqlıq var, ilk daxil olanda çətinlik yaranır ki hardan başlayım necə başlayım. Bir də crash olur tez-tez.
Faktiki faydalılıq  – 3/5 – Reallaşdırılması normaldır, ona görə də maraqlı auditoriya faydalana bilər. Amma update-ə ehtiyacı var.

Kub
Bu proqram sadəcə bir OpenGL kubdan ibarətdir deyə qiymət vermək mümkün deyil.

Polidroid
5/5 – İdeyaya söz ola bilməz, çox lazımlı və çatışmayan bir sahədir.
2/5 – Dizayn elə də ürəkaçan deyil.
1/5 – Funksionallıq pis həll olunub. Ümid edirəm update ilə inkişaf edər, çünki çox lazımlı app-dır.
2/5 – Hazırki durumda faydalılığı elə də çox deyil, çünki çox narahatdır. Amma inkişaf etsə tam faydalı 5/5 bir app olar.

Azdroid
3/5 – İdeya pis deyil, normal fikirdir.
3/5 – Dizayn da play store tərzindədir, bənzədilib, normaldır.
2/5 – Standartdır, maraqlı yanaşma yoxdur, sadəcə düzülüş var, statiklik var.
2/5 – Hazırki vəziyyətdə tam yararlı hesab edilə bilməz, amma gələcəkdə maraqlı funksionallıqlar əlavə edilsə əlaya çevrilə bilər(content auto-translate, user submission və.s.)

Sağlam qida
5/5 – İdeyaya söz ola bilməz, əladır.
2/5 – Dizayn qaneedici deyil
2/5  Funksionallıq da minimaldır
2/5 Potensial olaraq 5/5 faydalıdır, amma hazırda bir az narahatdır.

Catch me if you can
3/5 – Bu tip proqramlar hədsiz çoxdur, yeni nəsə yoxdur ideyada. Amma filmlə assosasiya rəng qatıb.
5/5 – Dizayn çox xoşuma gəldi, qəşəngdir, tam peşəkar app-da hiss edirsən özünü.
4/5 – Funksionallığın da üzərində ciddi işlənildiyi hiss olunur, bəzi kiçik çatışmazlıqlar gözə dəysə də.
2/5 – Bu tip proqram çox olduğuna görə faydalılıq elə də yüksək deyil, amma xaricə çıxarılası app-dır, ümumən qəşəng alınıb.

Xəritə-Guide
4/5 – İdeya maraqlıdır, yığcam app formasında informasiyanı çatdırmaq, maraqlı naviqasiya ilə
2/5 – Vizual yanaşma düzgün olsa da, dizayn realizasiyası zəif təsir bağışlayır.
2/5 – Funksionallıq kafidir, daha da yaxşı ola bilərdi.
4/5 – Faydalılıq hazırki durumda belə yaxşıdır, dizayn və funksional daha yüksək səviyyədə olsaydı lap yaxşı olardı.

TurboTranslate
4/5 – İdeya yaxşıdır, bu tip proqramlar olsa belə.
2/5 – Dizayn zəifdir, standart Android kompontentlərindən kənara çıxılmayıb, ümumi düzülüş də ürəkaçan deyil.
2/5 – Funksional ideyanı tam yansıda bilmir, nə nədir nə nəyə xidmət edir aydın deyil, (məsələn 2 mətn sahəsindən hansına yazmaq, birinci nəyi basmaq və.s. ilk öncə qaranlıq qalır)
2/5 – Faydalılıq 4/5 olmalı idi, amma hazırki duruma görə 2/5

Speedfinger
2/5 – Şərhsiz
1/5 – Şərhsiz
1/5 – Şərhsiz
2/5  – Şərhsiz

Herfler(Yarışaq)
2/5 – İdeya çox standartdır, maraqlı gəlmədi şəxsən mənə.
3/5 – Dizayn orta yaxşıdır.
4/5 – Funksional yaxşıdır, drag-drop və.s. yaxşı qoşulub.
1/5 – Faydalılıq haqda yaxşı nəsə deyə bilmərəm.

EMakler
4/5 – İdeya qəşəngdir, məhdud sahənin işçiləri üçün yaxşı app ideyasıdır(hərçənd praktiki olaraq bizim maklerlər çətin ki belə bir şey istifadə edə 🙂 )
3/5 – Dizayn ortababdır, ortadan bir az da zəif demək olar.
3/5 – Funksionallıq yaxşıdır əslində, sadəcə narahatlıq var, qarışıqlıq var. Hər şey var, amma nə hardadır, çətin əlyetərlidir.
3/5 – Faydalılıq orta səviyyədədir.

EasyAzeri
4/5 – İdeya çox yaxşıdır, bu tip app-lar kaş çox ola.
3/5 – Dizayn ortababdır, üstündə işləyib əla səviyyəyə çatdırmaq olar.
2/5 – Funksional qaneedici deyil.
3/5 – Faydalılıq 5/5 ola bilər, update-də optimizə edilsə.

BullsandCows
2/5 – İdeyanı anlamaq üçün haqqındaya baş vurursan, burada isə çox qəliz cümlələr var.:) Nə deyilmək istənildiyini anlayınca bir neçə dəfə oxumaq lazım
2/5 – Dizayn elə də ürəkaçan deyil.
3/5 – Sadə app olduğuna görə funksional normal reallaşdırılıb.
2/5 – Arabir baş qatmaq olar 🙂

Offline tests
Bu öz app-ımdır, ortabab hesab edirəm ona görə də hər bir bəndə 3/5.

Beləliklə bütüb app-ları dəyərləndirdikdən sonra ən yüksək bal verdiklərimi sıralayım:

Gombuless-13,Kub-?,Polidroid-10,Azdroid-10,Sağlam qida-11,Catch me -14, Xəritə-12, Turbotranslate-10, Speedfinger-6, Yarışaq-10,Emakler-13,EasyAzeri-12,BullsandCows-9, Offline tests-?
Yekun nəticəyə görə ilk üçlüyüm:
1.  Catch me if you can
2. Gombuless
3. Emakler

Təbii ki bu subyektiv nəticədir, hər halda bir neçə münsifin birgə qərarı obyektivə daha yaxın olmalıdır.
Qalibləri təbrik edirəm 🙂

Box.net qovluğunuzu Ubuntu-da sinxronizə edərək açın.

Bu barədə bir neçə gün öncə Twitterdə müzakirə getdi, Mac və Windows üçün həllər təqdim edildi. Ubuntu üçün həlli də mən paylaşdım. Sonradan bəzi problemlərin olduğu barədə məlumat aldım, test edərək həqiqətən də qovluğun yalnız readonly olaraq açıldığını gördüm. Ona görə də tələsik bir həll olaraq hazırki unix kodları paylaşıram.
İmkan olsa bu kodları shell skript formasına salaraq launcher düzəldib hazır bir kliklə Box.net-i Ubuntuya qoşan bir həll hazır edəcəm.
Qısaca məlumat verim ki Box.net cloud file storage sistemidir(Bulud fayl saxlama sistemi) Bu sistem sizin qovluqlarınız kompüterinizdə yox, internet üzərindən başqa serverlərdə saxlanılır, bu sizi tək kompüterdən azad edir, istənilən kompüterdən öz fayllarınıza ulaşa bilirsiniz.) Box.net-dən başqa bu sahədə əsas məşhur servis Dropbox-dur.
İndi isə kodlara keçək.  Ubuntuda ctrl+alt+T ilə Terminalı açırıq. Bu 3 sətri ardıcıl icra edirik:

sudo mkdir /media/box.net
sudo mount -t davfs https://www.box.net/dav /media/box.net 
sudo chown -R sizin_user_adiniz  /media/box.net

Burada sizin_user_adiniz hissəsinə öz Ubuntu istifadəçi adını yazın. Məsələn mən default olaraq elvin:elvin yazıram. İstifadəçi adı:İstifadəçi qrupu adı.
İkinci sətrin icrası zamanı sizdən box.net login parolu istəniləcək ki, onları daxil etmək lazımdır. Bir də kimdə ki davfs quraşdırılmayıb(hansı ki default quraşdırılmış olmalıdır) ondan davfs quraşdırılması tələb olunacaq. Onu da bir sətirlə həll edə bilərsiniz:

sudo apt-get install davfs2

Vəssalam. Hər hansı problem çıxsa şərhlər bölməsində yaza bilərsiniz.
Shell skriptdə təcrübəsi olanlar bu kodu launcher formasına salıb linkini şərhlər bölməsində yazsa, daha əla olar 🙂 (Sadə shell kod lazımdır, launcherə basanda .SH faylını çağırsın, prompt ilə Ubuntu root parolu, boxnet login parolu tələb olunsun, submit etdikdə yuxarıda yazdığım 3 sətir icra olunsun, vəssalam)

Sadəcə daha bir WordPress aləti

Bu gün WordPress-də əksəriyyətin nəzərindən qaçan, amma əslində faydalı ola biləcək bir alət olan Bookmarklet haqda yazıram. Bayaq Launchpad-da WordPress tərcüməsində redaktə apararkən adına rast gəldim deyə xatırladım və yazmaq qərarına gəldim.

Bookmarklet bir düymədir, düyməni görməkçün WordPress idarə panelində Alətlər bölməsinə keçirik, orada “Kliklə”(Press this) adlı düyməni sürüşdürüb brauzerin seçilmişlər(bookmark) panelinə atırıq və orda qalır. Daha sonra istənilən bir saytı açırıq və həmin seçilmiş keçidə klikləyirik. Bu zaman yeni pəncərədə WordPress redaktoru açılır. Bu redaktor yazıya ad və qısa mətn düzəltmiş vəziyyətdə olur.
E-Haci.net baş səhifəsi üçün bu əməliyyatı etdim. Daha sonra İnsert image düyməsinə klik etdim. Və aşağıdakı durum yarandı:

Göründüyü kimi redaktorda yazının başlığı və kiçik giriş informasiya artıq yaranıb. Üstəgəl bizə lazım olan səhifədəki bütün şəkillər sıraya düzülərək yazıda istifadəyə hazır vəziyyətə gətirilib.

Elektron ödəməylə bağlı kiçik bir sorğu və nəticələri

Bu yaxında Xaricidil.net Conversation səhifəsində olan sorğu bölməsində elektron ödəməyə istifadəçilərin münasibətini öyrənmək üçün sorğu keçirmək qərarına gəldim. Səsvermədən bir müddət keçib artıq 400-ə yaxın gənc(əsas auditoriya tələbələrdir) münasibətini bildirib. Nəticəyə baxaq:

Sorğuda sevindirici cəhət odur ki, elektron ödənişə olan münasibət ümumən pozitivə doğru dəyişib. İştirakçıların təxminən 56%-i bu müasir, zəruri tələbata müsbət yanaşır. 26% artıq bunu reallaşdırıb, 30% isə bu fikirdədir.

Təəssüf doğuran məqam isə 44%-in elektron ödəməyə olan neqativ münasibətidir. 44% kifayət qədər yüksək göstəricidir və səbəbləri barədə düşünməmiz lazımdır.
Səbəblər sırasına nələr aid ola bilər?
1. Mühafizəkarlıq – hər şeyi nəqd alıram, belə şeylər mənlik deyil fikri.
2. Məlumatsızlıq – elektron ödəmə filan deyirlər, nədirsə mənlik deyil yəqin, çətin bir şeydir.
3. Etibarsızlıq – İnternet üzərindən kart məlumatlarımı daxil etsəm, bankdan pulumu çəkərlər və.s. kimi fikirlər.
4. Və.s. digər ümumi və fərdi səbəblər.
Dünyada vaxtı az olan insanlar ərzaq bazarlığını belə internet üzərindən edirsə, bizdə hələ elektron kart əldə etməyə neqativ yanaşan insanların olması təəssüf doğurur. Əminəm ki, sorğunu bir il öncə keçirsəydik, xoşagəlməz göstərici 44 yox, minimum 50-55% olardı. İldən ilə irəliləyiş var, sadəcə bu irəliləyiş zəif sürətlə gedir.

WordPress-də email başlıqlarını dəyişmək

wp
Wordpress CMS-i istifadə edən developerlər yəqin ki, php-dəki wp_mail() funskiyasından xəbərdardırlar. Funksiyanın adı tanış gəlməsə belə gördüyü iş hamıya məlumdur. Bu funksiya vasitəsilə sistem emailləri göndərilir. Yəni yeni şərh olduqda, yazınıza şərh yazıldıqda, qeydiyyatdan keçdikdə, parolu unutduqda və.s. emailləri bu funksiya göndərir.

Bu funksiyanın header-başlıqları(Göndərənin adı, email ünvanı) WordPress-in nüvə fayllarından birində yerləşdiyindən(konkret desək wp-inclueds/pluggable.php) onu redaktə etmək əlverişli deyil, çünki redaktə etsək belə WordPress-in növbəti update-ində nüvə faylları yeniləri ilə əvəz olunacaq və əziyyət hədər gedəcək. Ona görə də bu məsələni ya pluginlə həll etmək lazım, ya da theme-in functions.php faylında hook filterlər(hook filter CMS-lərə aid termindir və izahı bu mövzuya aid deyil deyə üstündə dayanmayaq) yazmaq lazım. Biz 2-cini seçərək asan yolla bu problemi həll edək.

Ümumiyyətlə niyə buna problem kimi baxırıq, default(susmaya görə) başlıqların nə pis cəhəti var ki? Cavab bu: Default başlıqlar sizin istəyinizə uyğun qurulmayıb. Belə ki göndərənin adı olaraq WordPress, emaili olaraq wordpress@sizin_sayt_unvani.com göstərilir. Təsəvvür edək sizin istifadəçiyə məktub gedir sizin saytdan, istifadəçi mailini açır görür ki WordPress adlı şəxsdən ona məktub gəlib.
Yəni “WordPress” wordpress@sizin_sayt.com. 
Bu heç də yaxşı deyil. İstifadəçi belə bir başlıqla qarşılaşmalı:
“Sizin saytın adı, başlığı və ya adminin adı” sizin_saytin_adi@sizin_sayt.com

Bunu etmək üçün admin paneldən(Dashboard) Appearance->Themes->Editor bölməsinə daxil olun və theme-nizin functions.php faylını açıb bu kodu ora yerləşdirin.

function website_email() {
    $sender_email= 'Sizin saytın emaili buraya'; //məsələn [email protected]
    return $sender_email;
}
function website_name(){
    $site_name = 'Sizin saytın adı-başlıq və ya hər hansı ad-soyad buraya'; //məsələn Filankesov Filankes
    return $site_name;
}
add_filter('wp_mail_from','website_email');
add_filter('wp_mail_from_name','website_name');

Vəssalam, bu əməliyyatdan sonra sizin istifadəçilər sizin saytdan normal başlıqlı emaillər alacaqlar.