Myanmar 3 Multi OS font

အခု မြန်မာ ၃ က Mac OSX အတွက်ပါရသွားပါပြီ။ ttf file တစ်ခုတည်းနဲ့ Linux , Windows , Mac မှာ အသုံးပြုနိုင်ပါပြီ။ သို့ပေမယ့် ကျွန်တော့် ဆိုတဲ့ စာကို ရိုက်တဲ့အခါမှာ –့ နဲ့ –် က နေရာ ကွဲသွားပါတယ်။ mywebfont မှာလည်း updated လုပ်ပြီးသွားပါပြီ။ နောက်ပြီးတော့ mywebfont ကို သုံးထားတဲ့ website တွေအနေနဲ့ Mac OSX chrome နဲ့ ကြည့်နဲ့ အခါ Myanmar3 ကို embed လုပ်ပေးလိုက်ပါတယ်။ ဒါကြောင့် ကျွန်တော့် blog အပါအဝင် mywebfont အသုံးပြုထားတဲ့ site တွေမှာ chrome mac osx သာဆိုရင် font မရှိပဲနဲ့ ဖတ်နိုင်ပါပြီ။ သို့ပေမယ့် Windows Chrome အတွက်တော့ မရသေးပါဘူးဗျာ။

font embed on mac

Download

CSS for starter

ဒီစာအုပ်ကို ရေးတာ ဘယ်လောက် ကြာလို့ ကြာသွားမှန်းတောင် မသိတော့ဘူး။ သေချာတာကတော့ ၁ နှစ်ကျော်သွားပြီဆိုတာပဲ။ ၁ နှစ်အတွင်းမှာ အားတဲ့ အချိန်တွေမှာ တဖြည်းဖြည်းခြင်းရေးခဲ့တာ အခုတော့ ပြီးသွားပါပြီ။ ကျွန်တော် ရေးတဲ့အချိန်တုန်းက CSS 3 က ပေါ်ကစဖြစ်ပြီး browser အားလုံး support မလုပ်သေးပါဘူး။ ဒါကြောင့် အခု CSS စာအုပ်မှာ CSS 3 အကြောင်းမပါလာခဲ့ပါဘူး။ စာလုံးပေါင်းမှားနေတာ ရေးထားတာမှားနေတာတွေကို ဝေဖန်ထောက်ပြနိုင်ပါတယ်ဗျာ။

Download

Lion that made me cry

Lion ကို ထူးမြင့်နောင် သွင်းပြီးတော့ facebook မှာ တင်ထားတဲ့ ပုံတွေပါ။ font ၂ မျိုးပါပါတယ်။ Myanmar MN နဲ့ Myanmar Sangam MN ပါ။ font ကတော့ Unicode 5.0 ဖြစ်နေတော့ လက်ရှိ စာလုံးတွေကို ကောင်းကောင်းမြင်ရမှာမဟုတ်ဘူး။ မယ့် ဆိုရင် –် နဲ့ –့ က နေရာလွဲပြီး တွေ့နေရမယ်။ font ရေးဆွဲပေးထားတဲ့ company ကတော့

Copyright (c) 2010 by Murasu Systems Sdn. Bhd. Malaysia. All rights reserved.

နောက်ပြီးတော့ default keyboard ပါပါတယ်။ သို့ပေမယ့် အရမ်းကို အိုဟောင်းနေတဲ့ keyboard ပါ။ k = က , t = တ ဆိုပြီး ဟိုးအရင်တုန်းက Mac မှာ သုံးခဲ့တဲ့ keyboard ပေါ့။ နောက်ပြီး Regional Option ကိုလည်း မြန်မာလို support လုပ်ပေးထားပါတယ်။ ကဲဗျာ.. ပုံလေးတွေ ကြည့်လိုက်ရင် သဘောပေါက်သွားမှာပါ။ Lion version မှာတော့ အပြည့်အဝ support မလုပ်ပေမယ့် နောက်ပိုင်း version မှာ ပြုပြင်ပေးမယ်လို့ မျှော်လင့်ရပါတယ်။ အခုအချိန်ထိတော့ Lion အတွက် feedback ပေးလို့မရသေးပေမယ့် Lion တရားဝင် ထွက်ပြီးရင်တော့ feedback စပေးလို့ရပါလိမ့်မယ်။ အဲဒီ အခါမှာ မြန်မာစာနဲ့ ပတ်သက်တဲ့ bugs တွေကို တင်ကြတာပေါ့။
Continue reading

Lion support Myanmarsar

Twenty new font families for document and web display of text provide support for the most common languages in the Indian subcontinent, including Bengali, Kannada, Malayalam, Oriya, Sinhala, and Telugu. Devanagari, Gujarati, Gurmukhi, Urdu, and Tamil have been expanded. And three new font families support Lao, Khmer, and Myanmar.

Node.js Tutorial

Mongodb နဲ႕ Node.js ကို ပေါင်းပြီး todo list လေး တစ်ခုဆောက်တဲ့ tutorial လေး စရေးနေပါတယ်။ ၁ ပတ်လောက်တော့ ကြာမယ်ထင်တယ်။
http://blog.mysteryzillion.org/article/making-todolist-with-node-js-and-mongo-part-i/
http://blog.mysteryzillion.org/article/making-todolist-with-node-js-and-mongo-part-ii/

Redis

Redis ဆိုတာကတော့ NoSQL Database နောက်တစ်ခုပါပဲ။ သူက Key Value storage ကို အသုံးပြုပါတယ်။ ကျွန်တော် How did I learn ? မှာ ရေးခဲ့သလို NoSQL နဲ့ PHP မဟုတ်တဲ့ အခြား language တစ်ခုကို လေ့လာချင်တာကြောင့် project တစ်ခု ဖန်တီးထားလိုက်တယ်။ Language ကိုတော့ Node နဲ့ သုံးမယ်။ Database ကို ဘာသုံးမလဲ စဉ်းစားတဲ့ အခါမှာ Mogodb နဲ့ Redis ကို သွား တွေ့တယ်။ Mongodb အကြောင်းကိုတော့ ကျွန်တော် ဒီမှာ ရေးဘူးပါတယ်။ နောက်ပြီးတော့ Cassandra ကို လည်း သုံးဖူးတယ်။ သူက setup လုပ်ရတာ နည်းနည်း ခက်တယ်။ နောက်ပြီး java သုံးထားတာကို သဘောမကျတဲ့ အတွက်ကြောင့် cassandra ကို ထပ် မသုံးပါဘူး။ ( java ကို အလိုလို နေရင်း ဘာကြောင့် မကြိုက်မှန်းကို မသိပါဘူး ) ဒါကြောင့် Redis ကို စမ်းကြည့်မယ်ဆိုပြီး ဆုံးဖြတ်လိုက်တာ။ မစမ်းခင် ဘာ အရင် ရှာလဲဆိုတော့ Node.js driver ရှိမရှိပဲ။ မရှိရင်တော့ မလေ့လာဘူးလို့ စဉ်းစားထားပေမယ့် Node.js driver အသင့် ရှိနေတာကို တွေ့ပါတယ်။ အခုနောက်ပိုင်းမှာ Node.js driver က တော်တော် များများ ရှိလာကြတယ်။ Node.js က c နဲ့ module တွေ ရေးလို့ ရတဲ့အတွက် လက်ရှိရှိနေတဲ့ driver ကနေ Node.js ကို ပြောင်းဖို့ လွယ်တာကြောင့်လည်း ပါမှာပါ။
Continue reading

Math & Programming

တစ်ခါတစ်လေတော့လည်း ၉ တန်း ၁၀ တန်းမှာ သင်္ချာ စိတ်ပါဝင်စား လုပ်ခဲ့တာ တော်တော်အကျိုးရှိပါလားလို့ တွေးမိတယ်။ အခုနောက်ပိုင်း iOS တွေ ရေးရတော့ Game ပိုင်းမှာကော UI Development အပိုင်းမှာပါ သချင်္ာက အသုံးဝင်လာတယ်။ Law of cosines ကို မေ့သွားလို့ wiki က Triangle မှာ သွားဖတ်ရသေးတယ်။ အနား ၃ နား သိရင်တော့ တြိဂံရဲ့ ထောင့် ၃ ထောင့်ကို သိရမှာပေါ့ လို့ ဆိုပေမယ့် ဘယ်လို တွက်ရမှန်း မသိတော့ဘူး။ wiki မှာ ဖတ်လိုက်တော့ အော် … Law of cosines ပါလား ဆိုပြီး ပြန်မှတ်မိသွားတာပဲ။ Pythagorean theorem က point ၂ point အကွာ အဝေးကို သိဖို့အတွက် တွက်လာတာ ကြာပြီဆိုတော့ သုံးတတ်တယ်။ ဘာပဲ ပြောပြော ကျောင်းက သင်္ချာတွေ အခုအချိန်မှာ ပြန်သုံးလို့ရတာ သင်ခဲ့ပေးတဲ့ ဆရာတွေကို ကျေးဇူး တင်မိတာ အမှန်ပဲ။ သင်တုန်းကတော့ ဘယ်မှာ သုံးရမှန်း မသိ။ တွက်ရတာ ပျော်ဖို့ ကောင်းလို့တာ တွက်လာခဲ့တာ။ အခုမှပဲ အကောင်အထည်နဲ့ကို မြင်ရတော့တယ်ဗျာ။ အဲဒီ အကြောင်းကို ဒီမှာ ရေးထားပါတယ်။

How did I learn ?

လွန်ခဲ့တဲ့ ၂ ပတ်လောက်က Django အကြောင်းရေးဖြစ်ခဲ့သလို စာအုပ်လည်း ဖတ်ဖြစ်ခဲ့တယ်။ စာအုပ် ဖတ်တာကတော့ ထွေထွေထူးထူးရယ်တော့ မဟုတ်ပါဘူး။ iPad ထဲထည့် ရုံးသွားရုံးပြန်ဖတ်။ သောကြာနေ့ည ရောက်ရင် ပြန်စမ်းကြည့်။ တစ်ခါတစ်လေ ရုံးက စောရောက်ရင်တော့ ​လမ်းမှာ ဖတ်ထားတာ ပြန်စမ်းကြည့်ပေါ့။ စာအုပ် တစ်အုပ်လုံး ဖတ်တာက ၁ ပတ် လောက်ပဲ ကြာတယ်။ Django ကို မတတ်ပေမယ့် သိသွားတယ်။ Django ကို သိသွားပေမယ့် သဘောမကျဘူး။ ဘာလို့ သဘောမကျလည်းဆိုတော့ ကောင်းလွန်းလို့ပဲ။ အရမ်းပြည့်စုံလွန်းတယ်။ အဲဒီတော့ ကျွန်တော်တို့ အနေနဲ့ သူ့ rule တွေကို လိုက်ရတော့တယ်။ သူ့မှာ ပါတဲ့ Ready Made တွေကို သိချင်လာတယ်။ စာပိုဖတ်ရလာတယ်။ ကျွန်တော်က အဲဒါကို သဘောမကျဘူး။ ဒါကြောင့် symfony ထက် CodeIgniter ကို ရွေးခဲ့တာပဲ။ Django ကို သိသွားပေမယ့် ​ရေးမယ့် project မှာ မသုံးချင်တော့ဘူး။

ဒါနဲ့ Light Weight Python framework နောက်တစ်ခုဖြစ်တဲ့ Pyramid ကို လေ့လာဖြစ်တယ်။ Pyramid ကိုတော့ သဘောကျတယ်။ လွယ်သလို လွတ်လပ်တယ်။ သူက MVC pattern ကို အဓိက ထားပြီးတော့ ကြိုက်တဲ့ python library နဲ့ တွဲသုံးလို့ရတယ်။ ကြိုက်တဲ့ template engine ​ကို သုံးလို့ရလာတယ်။ အဲဒါကို သဘောကျတယ်။ နောက်ပြီး epub , pdf စာအုပ် free ပေးထားတယ်။ နောက်ပြီးတော့ sample tutorial တွေလည်း ပေးထားတဲ့အတွက် Django ထက်စာရင် လေ့လာလို့ လွယ်တယ်။ Pyramid ကို ၁ ပတ်လောက် ဖတ်ပြီး သကာလမှာတော့ Pyramid ပဲ သုံးတော့မယ်လို့ ဆုံးဖြတ်မိလိုက်တယ်။ Django ထက်ယှဉ်ရင် အများကြီးလွတ်လပ်တယ်။ ready made တွေ သိပ်မပါပေမယ့် ကျွန်တော့် အတွက် အဆင်ပြေတယ်။ Django ထက်စာရင် လေ့လာရလွယ်တယ်။

အဲဒါကို သုံးမယ်လို့ ဆုံးဖြတ်ပြီးကာမှ အောင်စည်သူကျော် က facebook မှာ nodejs နဲ့ ပတ်သက်ပြီး link မှာ tag လုပ်ပြီး ရေးလာတယ်။ မလုပ်တာ ကြာပြီ ဖြစ်တဲ့ node ကို ပြန်လှည့်ကြည့်ချင်စိတ်ပေါက်လာတယ်။ ဒါနဲ့ မထူးပါဘူး။ တစ်ရက်လောက်ပဲ အပျင်း​ေ​ပြ ဖတ်လိုက်ပါမယ်လို့ လုပ်ပြီး လေ့လာလိုက်တာ ရပ်မရအောင်ပဲ ဆွဲဆောင်မှုရှိတယ်။ Node က python ထက် မြန်သလားမေးရင်တော့ ဟင်အင်း လို့ပဲ ဖြေရမှာပဲ။

for (i=0;i<1000;i++){
for(j=0;j<1000;j++) {
}
}

ဆိုတဲ့ loop ကို python မှာ 1 second မကြာခင်ပြီးနိုင်ပေမယ့် node မှာတော့ ၁ စက္ကန့်ကျော်ကြာတယ်။

Node က python ထက်စာရင် သိသိသာသာ မြန်ပါတယ်။

var sys = require('sys')
var s = process.uptime();

var z = 0;
for (x=0; x < 10000; x++) {
for (y=0; y < 10000; y++) {
z += x * y
}
}

sys.puts(process.uptime() - s)
sys.puts(z)

က node မှာ 3 စက္ကန့်သာ ကြာပေမယ့် python မှာတော့ 24 စက္ကန့် ကြာပါတယ်။ ( credit to Thant Thet )

node js မှ​ာ ရှိတဲ့ module တွေနဲ့ impact တွေကတော့ ကြောက်စရာကောင်းလောက်အောင် တိုးတက်မြန်ဆန်လှတယ်။ Nodejs ဟာ Unix-like platform တွေပေါ်မှာ Google V8 JavaScript engine အတွက် event-driven I/O framework တစ်ခုပါ။ နောက်ပြီး javascript ကို သုံးပြီး server side တွေရေးလို့ရတယ်။ Database access တွေ လုပ်လို့ရတယ်။ တနည်းပြောရင် server side web app တစ်ခု ကောင်းကောင်းရေးလို့ရတယ်။ နောက်ပြီး Real Time app တွေ ရေးလို့ရတယ်။ javascript ဆိုတာက web developer တိုင်း သိတဲ့ language ပါ။ တော်တော်များများသိခဲ့တာက javascript ဆိုတာ client side အတွက် လို့ ဆိုတာပဲ သိကြတယ်။ အခုတော့ Nodejs နဲ့ server side ပါ ရေးလို့ရပြီ။ javascript သင်တဲ့အခါမှာ client side script ဆိုပြီး သင်လို့ မရတော့ဘူး။ Server Side မှာ Nodejs ကို အသုံးပြုပြီး ရေးလို့ရတယ်ဆိုပြီး ပြောင်းပြီး သင်ရတော့မယ်။ Nodejs က ကျွန်တော့် လေ့လာမှုကို ရပ်တန့် မရခဲ့ဘူး။ Nodejs ကနေ ဆက်ပြီးတော့ Redis , Mongod တွေပါ ဆက်ကာ လေ့လာဖြစ်သွားတယ်။ Redis , Mongod တွေ အကြောင်း ပြောရင် ပြီးတော့မှာ မဟုတ်တဲ့အတွက် Django, Pyramid , Nodejs တွေကို ဘယ်လို တွေ လေ့လာဖြစ်ခဲ့သလိုဆိုတာလေး ​အရင် ပြောပြရစေ။
Continue reading