JWT

JWT ကို သိတာကတော့ ကြာလှပါပြီ။ သို့ပေမယ့် သေသေချာချာ မသိဘူး။ Laravel မှာပါသည့် library ကိုပဲ သုံးလိုက်တာပဲ။ အခုမှ JWT ဆိုတာ ဘာလဲ ဆိုတာကို သေချာ ပြန်ဖတ်ကြည့်မိတယ်။ ကျွန်တော်တို့တွေ api authentication တွေကို သုံးသည့် Method တွေကတော့ HTTP Basic Authentication API Key or Token OAuth စတာတွေ အသုံးပြုကြပါတယ်။ JSON Web Token (JWT) ဟာ နောက်ပိုင်း လူ အသုံးများလာပြီး လက်ရှိ API အသုံးပြုထားသည့် project တိုင်းနီးပါး JWT ကို သုံးထားတယ်။ သို့ပေမယ့် အများစု က […]

Function Types in Swift

Swift မှာ သဘောကျသည့် နောက်တစ်ခုကတော့ function type ပါ။ အရင်တုန်းကတော့ delegate pattern သုံးခဲ့ပေမယ့် Swift မှာ function type ပါလာသည့်အတွက် ကြောင့် function ကို variable အနေဖြင့် သုံးနိုင်တယ်။ delegate pattern ကနေ callback pattern ကို ပြောင်းပြီး ရေးလာနိုင်ပါတယ်။ ဥပမာ setting view ဆိုပါစို့ ။ ကျွန်တော် တို့ လက်ရှိ view ကနေ နောက်တဆင့် ကို ထပ်ဝင်ပြီးတော့ data ကို ရွေးရတယ်။ country လိုမျိုး data ရွေးသည့် အခါမှာတော့ country list view ကို […]

Support Default Zawgyi in Mac OS 10.15

Mac OS 10.15 မှာ zawgyi font အတွက် Noto San Zawgyi ပါလာပါတယ်။ သို့ပေမယ့် Language က encoding ကို iOS မှာလို Zawgyi ပြောင်းလို့ မရပါဘူး။ ဒါနဲ့ iOS မှာ ပါသည့် language setting အတိုင်း စမ်းကြည့်လိုက်တော့ ဇော်ဂျီ ကို global fallback အနေနဲ့ support လုပ်ထားတာ တွေ့တယ်။ ဒါကြောင့် Mac OS 10.15 မှာ ဇော်ဂျီ font သွင်းဖို့ မလိုဘူး။ မြန်မာစာ fallback က Zawgyi အနေနဲ့ ပါတယ်။ App တွေ အကုန်လုံး […]

Payment Systems in Myanmar

App တစ်ခု website တစ်ခုမှာ payment ထည့်မယ် ဆိုရင် အခြားနိုင်ငံနှင့် မတူပဲ မြန်မာနိုင်ငံမှာ ကတော့ အဓိကအားဖြင့် telephone operator ကို သာအသုံးများပါတယ်။ နိုင်ငံတကာမှာတော့ Master/Visa ရှိသည့်အတွက်ကြောင့် လွယ်လင့်တကူ အသုံးပြုနိုင်ပေမယ့် iOS/Android အတွက် IAP ကို အသုံးပြုနိုင်ပေမယ့် ပြည်တွင်းမှာတော့ အဆင်မပြေပါဘူး။ ပြည်တွင်းမှာ အဓိအားဖြင့် Operator နှင့် ဘဏ်ကို အဓိက ထားသုံးကြပါတယ်။ လက်ရှိ ပြည်တွင်းများ အသုံးများသည့် စနစ်တွေကတော့ Phone Bill Cash On Delivery ဘဏ်/wave မှ ငွေလွှဲခြင်း 123 services iBanking မှ ပေးချေခြင်း (quick pay) MPU […]

SSH login with key

ပုံမှန် SSH ကို login ဝင်ရင် ကျွန်တော်တို့တွေ password ကို အသုံးပြုကြပါတယ်။ Password ကို အသုံးမပြုပဲ လက်ရှိ device ဆိုရင် အလိုအလျောက် login ဝင်လို့ရအောင် ဖန်တီးနိုင်ပါတယ်။ ကျွန်တော်တို့တွေ အနေနဲ့ ပထမဆုံး ssh key တစ်ခု ဖန်တီး ဖို့ လိုပါတယ်။ ssh-keygen ဆိုပြီး terminal မှာ ရိုက်လိုက်ပါ။ Mac နှင့် Linux အတွက် အဆင်ပြေပေမယ့် Windows မှာဆိုရင်တော့ putty အသုံးပြုရလိမ့်မယ်။ အဲဒီ အခါမှာ ~/.ssh/ ထဲမှာ id_rsa.pub နဲ့ id_rsa file ၂ ခု တွေ့ရပါလိမ့်မယ်။ id_rsa.pub ကတော့ […]

OpenSSH Private Key to RSA Private Key

ssh-keygen လုပ်လိုက်ရင် ထွက်လာတာက OpenSSH Private Key ဖြစ်နေတယ်။ Mac OS Mojave မှာ စပြီးပြောင်းသွားတာနဲ့ တူတယ်။ RSA Private key မဟုတ်တော့ SFTP , SSH တွေ ချိတ်မရတော့ဘူး။ အဓိကပြဿနာက OpenSSH Private Key ဖြစ်နေတာ ဖြစ်နေတာကြောင့်ပါ။ အကယ်၍ SFTP ကို key နဲ့ ချိတ်မရရင် RSA private key ပြန်ပြောင်းဖို့ လိုပါတယ်။ ပြောင်းဖို့က ssh-keygen -p -m PEM -f ./tpay_production

Blockchain

Blockchain ဆိုတာ ဘာလဲ သိချင်လို့ ဖတ်ကြည့်တော့ Block Chain နှင့် distributed ledger မတူဘူး ဆိုတာကို နားလည်လာတယ်။ Blockchain ကတော့ ရိုးရိုးရှင်းရှင်းလေးပါပဲ။ Block တစ်ခု နဲ့ တစ်ခု ကို ချိတ်ဆက်ထားသည့် သဘောလေးပါပဲ။ Block တိုင်းမှာ hash တစ်ခုပါတယ်။ နောက်ပြီး အရှေ့ဘက်က hash ပါရှိတယ်။ idea လေးက ရိုးရှင်းပြီး တကယ်ကို အသုံးဝင်ပါတယ်။ crypto currency တွေဖြစ်သည့် bitcoin, ethereum အကြောင်းကိုတော့ ထည့်ပြီး မပြောတော့ပါဘူး။ Code လေးကို တစ်ချက်လောက်ကြည့်ကြည့်ရအောင် class Block { public $data = array(); public […]

Active User Count By Date in Mongodb

Active user ကို သိချင်သည့် အခါမှာ user app ကို login ဝင်တိုင်း log မှတ်ပါတယ်။ id user_id created_at 1 1 2019-04-12 2 1 2019-04-13 3 2 2019-04-12 4 2 2019-04-13 5 3 2019-04-13 6 4 2019-04-13 7 4 2019-04-13 8 1 2019-04-13 9 3 2019-04-13 MySQL အရ အောက်ပါ အတိုင်း ရေးပါတယ်။ SELECT COUNT(DISTINCT user_id),created_date From login_user where created_date >= […]