Concurrency နှင့် Parallelism ဘာကွာလဲ

ဒီ Concurrency နှင့် Parallelism ဆိုတဲ့ concept ကိုအတော်များများ နားလည်သလိုလို နားမလည်သလိုလိုဖြစ်တက်ကြလို့ သေချာရှင်းပြပါ့မယ်။ Concurrency နှင့် Parallelism ဆိုတာတွေကိုမျက်လုံးထဲမြင်အောင် အမြဲတမ်းသုံးတဲ့ စားသောက်ဆိုင် ဥပမာနှင့်ရှင်းပြမယ်။ chef တယောက်နှင့် စားပွဲထိုးတွေအများကြီးရှိတဲ့စားသောက်ဆိုတခုကိုမျက်လုံးထဲမြင်ကြည့်လိုက်မယ်။ Non-Concurrent (Single Task Execution) ဒီမှာ Chef ကတချိန်ထဲမှာ ဟင်းတမျိုးဘဲချက်နိုင်တယ်။ ဟင်းတမယ်ချင်ပီဆိုရင် အဲ့ဟင်းပီးမှနောက်ဟင်းတမျိုးကိုချက်တယ်။ ဒါက Non-Concurrent (Single Task Execution) Concurrency Concurrency is about dealing with lots of things at once. Parallelism is about doing lots of things at once. https://go.dev/blog/waza-talk ဒီမှာကြတော့ Chef ကဟင်းအိုးတအိုးတည်မယ်။ […]

Range, Mean, Median, နှင့် Mode

ဒီနေ့ကျနော်ရေးမယ့်အကြောင်းအရာကတော့ range, mean, median နှင့် mode ဆိုတာဘာလဲ သူတို့ကိုဘယ်လိုတွက်ရလဲဆိုတာတွေကို ရေးသားဖော်ပြမှာဖြစ်ပါတယ်။ ဒီစကားလုံးတွေကို statistic course တွေတက်တဲ့အချိန်တွေမှာအတော်လေးအတွေ့များပီး စကားလုံးတွေက ခပ်ဆင်ဆင်ဖြစ်ပီးတော့ confuse ဖြစ်ဖြစ်သွားတက်လို့သေချာမှတ်ထားပီး YGNCode ကစာဖတ်သူတွေအနေနှင့်လဲ စိတ်ဝင်စားတယ်ဆိုရင် မြန်မာလိုလွယ်လွယ်ကူကူဖတ်နိုင်အောင်ရေးသားလိုက်ပါတယ်။ Range, Mean, Median နှင့် Mode ဆိုတာတွေကတနည်းအားဖြင့် Average မျိုးကွဲတွေလို့ပြောလို့ရမယ်။ ဒါဆို Average ဆိုတာဘာလဲ… မြန်မာလိုဆို ပျမ်းမျှ ဆိုပီးသုံးကြတယ်။ ပုံမှန် average အကြောင်းပြောတာတွေစဥ်းစားကြည့်မယ်ဆိုရင် average tempature (ပျမ်းမျှ အပူချိန်), average rainfall (ပျမ်းမျှမိုးရွာသွန်းမှု) ဆိုပီးသုံးကြတယ်… နောက်ထက် average ကို data အများကြီးကိုကိုယ်စားပြုတဲ့အချိန်တွေမှာလဲသုံးကြတယ်။ ဥပမာကိုတချက် ကြည့်ကြည့်ရအောင်။ ထားပါတော့ ကိုယ်အားပေးတဲ့ဘောလုံးအသင်း […]

အထင်နှင့် အမြင်

တော်တော်များများကို data/number တွေနှင့်ကြည်တက်တဲ့အကျင့်တခုရှိဖို့ အရေးကြီးတယ်ဆိုတာကို အထင်နှင့် အမြင် ဆိုတဲ့ခေါင်းစဥ်နှင့် ပြန်လည်ဝေမျှလိုက်ပါတယ်။ Programmer/Software Engineer စကာစ လူငယ်တွေက တခုခုဆိုထင်တိုင်းလုပ်တက်ကြတယ်။ ကျနော်အလုပ်စလုပ်ကာစတုန်းကလဲ ကိုယ်တိုင်လဲ အဲ့လိုထဲပါတယ်ပြောလို့ရတယ်။ ဘယ်လိုအထင်နှင့် လုပ်တာလဲဆိုရင် ထားပါတော့ ရုံးမှာ Marketing Campaing တခုရှိတယ်ဆိုရင် အဲ့ campaing ကပေါက်ရင် traffic အများကြီးလာမှာ။ ဘယ်လောက်များမှာလဲတော့မသိဘူး။ ကိုယ့်အထင်နဲ့ကိုယ် 100K users တွေလာတယ်ဆိုရင် Load Balancer နောက်မှာ EC2 20 လောက်နဲ့မှ အဆင်ပြေမယ်ထင်တယ်ဆိုပီးတော့ EC20 လောက်တခါထဲဖွင့်ပီး auto scale တွေဘာတွေထည့်တာပေါ့။ ဒါကအထင်နှင့်လုပ်တာ။ အထင်နှင့်လုပ်တော့ဘာဖြစ်လဲ မသေချာဘူး။ တကယ့် result နှင့် similar တောင်ဖြစ်ချင်မှဖြစ်တယ်။ ကျနော်တို့ဥပမာမှာဆို မလိုအပ်ဘဲပိုက်ဆံကုန်မယ်။ […]

Graph Algorithms

ကိုယ်တိုင် Graph နဲ့ပတ်သတ်တဲ့ Leetcode တွေရှင်းတဲ့အချိန်မှာ နဲနဲအခက်အခဲဖြစ်နေလို့ သေချာလိုက်ကြည့်ဖြစ်လို့ မြန်မာလိုရေးထားတာလဲမတွေ့မိလို့ ကိုယ်တိုင်လိုက်လေ့လာရင်းနှင့် တခြားကိုယ့်လိုသိချင်တဲ့သူတွေလဲ မြန်မာလိုလွယ်လွယ်ကူကူဖတ်ပီးနားလည်ပါစေဆိုတဲ့ စိတ်နှင့်ရေးထားတာပါ။ မှားယွှင်းနေတာ လွဲနေတာတွေရှိရင် comment မှာထောက်ပြပေးဖို့ပြောလိုပါတယ်။ ကျနော် reference ယူထားတဲ့ video တွေစာအုပ်တွေကိုအောက်ဆုံးမှာဖော်ပြထားပါတယ်။ ဒီ Graph အကြောင်းကိုမဖတ်ခင်သိထားရမယ့်ဟာလေးတွေရှိပါတယ်။ Basic Data structure နှင့် Recurssion လိုမျိုးပေါ့။ အခြေခံ Data structure တွေအကြောင်းကို ကျနော်ဒီမှာ ဘာသာပြန်ထားတာရှိပါတယ်။ ဒီမှာ ကျနော်ရေးထားတာမြန်မာလိုရေးထားပီးတော့ စကားလုံးတော်တော်များများကို ကျနော်ဘာသာပြန်ဖို့မကြိုးစားထားပါဘူး။ ဘာလို့လဲဆိုရင် ကျနော်တို့ leetcode problem တွေဖြေရှင်းတဲ့အချိန်မှာဘဲဖြစ်ဖြစ် တခြားစာအုပ်တွေဖတ်တဲ့အခါမှာလဲ ဒီစကားလုံးတွေကသုံးနေရမှာမလို့ပါ။ တက်နိုင်သလောက်တော့ ဘာသာပြန်ပီးထည့်ထားပါတယ်။ Graph ဆိုတာဘာလဲ graph = nodes + […]

Valid anagram

မှတ်ချက် – ဒီ Post သည် Algorithm Interview Preparation အပိုင်းဆက်ဖြစ်သည်။ ကျွန်တော်တို့ဒီနေ့ solve လုပ်မယ့် problem ကတော့ Valid anagram ဘဲဖြစ်ပါတယ်။ Leetcode က Question တစ်ခုဘဲဖြစ်ပါတယ်။ ပထမဦးဆုံး Question ကိုတစ်ချက်ကြည့်လိုက်ရအောင် string နှစ်ခုပေးမယ် s နှင့် t ဆိုပြီးတော့။ အဲ့ဒါကိုကျွန်တော်တို့စစ်ကမှာက t is an anagram of s ဖြစ်လားဆိုတာကိုပါဘဲ။ Question မှာမှတ်ချက်ပါသေးတယ်။ ဘာလဲဆိုရင် string တွေက lowercase alphabets တွေဘဲပါပါ့မယ်တဲ့။ Follow up မေးနိုင်တာကတော့ input မျာ unicode characters တွေပါရင်ဘယ်လိုဖြေရှင်းမလဲတဲ့။ အဖြေမစခင် Anagram ဆိုတာဘာလဲနှင့် Example တစ်ချို့ကိုအရင်ကြည့်လိုက်ရအောင်။ […]

Logarithms ဆိုတာဘာလဲနှင့် O(log n) ဘယ်လိုတွက်မလဲ

Big O အကြောင်းရေးတော့ O(log n) အကြောင်းပါတစ်ခါတည်းရှင်းပြမလို့ဘဲ။ ဒါပေမယ့် Logarithms ဆိုတာဘာလည်းရှင်းပြရဦးမယ်ဆိုပြီး နောက်ထပ် Post တစ်ခုလုပ်ဖို့ဆုံးဖြတ်လိုက်တာ။ ဒီ Post မှာ Logarithms ကို ရှင်းပြရင်းနှင့် O(log n) ပါတစ်ခါတည်းရှင်းပြပါ့မယ်။ ကျောင်းတုန်းကတော့ Logarithm ကိုသင်ခဲ့ဖူးတယ်။ ကျွန်တော်တော့မေ့ကုန်လို့ Khan Academy ကပြန်ကြည့်ရတယ်။ ပထမဆုံး Logarithms ဆိုတာဘာလဲကအရင်စရှင်းကြရအောင်… အထက်ဖော်ပြပါပုံရဲ့ ပထမ line မှာဆိုရင် 2 ^ 4 (2 power 4) က (2 x 2 x 2 x 2) 2 ကိုလေးခါမြှောက်တာနှင့်တူတယ်။ ဒုတိယ line မှာဆိုရင် 2 […]

DNS Record, what are A, CNAME, MX Records…?

ပထမဆုံး DNS Record အကြောင်းမပြောခင်… ကျွန်တော်တို့ပုံမှန်အသုံးပြုနေတဲ့ web browsing အကြောင်းကိုအရင်ပြောလိုက်ကြရအောင်။ ဥပမာ ygncode.com ကို browser URL မှာရိုက်ရှာလိုက်ပြီဆိုတာနှင့် ကွန်ပျူတာက ygncode.com ရဲ့ server ဘယ်မှာလဲဆိုတာသိဖို့လိုတယ်။ အဲ့လိုသိဖို့လုပ်တဲ့နည်းကို Domain Name System (DNS) လို့ခေါ်တယ်။ DNS ဘယ်လိုအလုပ်လုပ်လဲ အသေးစိတ် သိချင်တယ်ဆိုရင် အောက်ဖော်ပြပါ YouTube Video မှာလေ့လာနိုင်ပါတယ်။ ကာတွန်းလေးတွေနှင့်ရှင်းပြထားတဲ့ How DNS Work ဆိုတဲ့ website လည်းရှိတယ်… အတော်လေးကိုပြည့်စုံတယ်။ ကျွန်တော်တို့ domain name တစ်ခု register လုပ်လိုက်ပီဆိုရင် DNS Records တွေကိုအများကြီးထည့်လို့ရတယ်။ ကျွန်တော်တော့ Cloudflare နှင့် Digital Ocean […]