What is Packet Switching

Packet Switching ဆိုတာဘာလဲ?

Packet Switching အကြောင်းမရှင်းမှီ၊ သူ့အရင်ရှိခဲ့ ပြီး၊ လက်ရှိလည်း တွင်ကျယ်စွာ သုံးနေကြတဲ့ Circuit Switching အကြောင်းကိုအရင်ရှင်း ပြလိုပါတယ်။

ဝါယာကြိုး (သို့မဟုတ်) wireless frequency အသေထားပြီး ဆက်သွယ်ရတဲ့ telephones, mobile phones, fax, teleprinters, television, radio, walki-talkie စတဲ့ ကရိယာ တွေဟာ Circuit Switching စနစ်နဲ့ အလုပ်လုပ် ကြပါတယ်။

၁၉၆၂ ခုနှစ် ခန့်က USA နဲ့ Soviet Russia တို့ဟာ စစ်အေး တိုက်ပွဲ (Cold War) ဆင်နွှဲ နေကြ ပါတယ်။ အနုမြူ စစ်ပွဲ ဖြစ်ပြီး ဆက်သွယ်ရေးတွေ ပြတ်တောက် မှုမဖြစ်အောင် ဘယ်လိုလုပ် မလဲဆိုတာ ကို အဖြေရှာနေ ကြပါတယ်။

Paul Baran နဲ့ Donald Watts Davies တို့မှ packet switching ကိုအခြေခံ တဲ့ ဆက်သွယ်ရေး စနစ်တရပ် တည်ဆောက်ဖို့ သီးခြားစီ တင်ပြခဲ့ ကြပါတယ်။ ၄င်းတို့ နှစ်ဦး တင်ပြ ခဲ့တဲ့ Packet Switching စနစ်ကို အခြေခံပြီး၊ APPRANET ကွန်ယက် (နောင်တော့ Internet) ပေါ်ပေါက် လာခဲ့ ပါတယ်။

အခုခေတ် ကျွန်တော်တို့ သုံးနေတဲ့ Intenet ကွန်ယက်ကြီး တစ်ခုလုံးဟာ packet switching စနစ် ကို အခြေခံပြီး တည်ဆောက်ထားတာ ဖြစ်ပါတယ်။

Packet Switching စနစ်မှာ တစ်နေရာက တစ်နေရာကို ပိုမဲ့ message (data) ကို :-
+ အပိုင်းပိုင်း ဖြတ်ပါတယ်
+ အပိုင်းတွေကို နံပါတ်စဉ် ထိုးပါတယ်
+ တစ်ပိုင်းစီကို packet တွေအဖြစ် ထုတ်ပိုးပြီး from/to လိပ်စာ တပ်ပေး ပါတယ်
+ packet တွေကို သူ့ဟာ ကိုယ့်ဟာ မခွဲခြားဘဲ internet ကွန်ယက် ထဲကို သွန်ထဲ့ လိုက် ပါတယ်
+ packet တွေ လိုရာ ခရီးရောက်ဖို့က၊ ကွန်ယက်ထဲမှာ ရှိနေတဲ့ router အဆင့်ဆင့် ရဲ့တာဝန် ဖြစ်ပါတယ်။

What is Client Side Scripting

Client side scripting ဆိုတာ ဘာလဲ

Client ဆိုတာ ဈေးသည် စကားနဲ့ ပြောရရင် ဖေါက်သည် ပါဘဲ။ Server က ဈေးသည် ဆိုရင်၊ သင့်ရှေ့မှာရှိ နေတဲ့ browser က ဖေါက်သည် (client) ပါ။

ဒီတော့ client side scripting ဆိုတာ သင့်ရှေ့မှာ ရှိနေတဲ့ browser ထဲမှာ program တစ်ခုကို run ခိုင်းတာ ကို ဆိုလို တာပါ။

Browser ထဲမှာ run တဲ့ code တွေက သိတ် မရှုပ်ထွေ တဲ့ program အသေးလေးတွေပါ၊ browser ထဲမှာ မ run ဘဲ အဝေးက server ဆီပြန် ပို့ပြီး program ကို run လို့လည်း ရပါတယ်၊ server ထဲမှာ program ကို run တာကိုတော့ server side scripting လို့ခေါ်ပါတယ်။ ဒီလိုလုပ် ရင်တော့ server မှာဝန်ပိ ပါတယ်။

ဥပမာ ပြရရင်၊ user name password သုံးပြီး login လုပ်တဲ့ အခါမှာ၊ submit မလုပ်မှီ အချက်အလက် တွေမှန် မမှန်ကို စစ်ဆေးဖို့ လိုပါတယ်။ ဒါကို form validation လုပ်တယ်လို့ ခေါ်ပါတယ်။

Validation အလုပ် ကို အဝေးက server ဆီပို့ပြီး လုပ်ခိုင်း လို့ရပါတယ်။ ဒါပေမဲ့ google လိုဆိုက် မျိုးမှာ စက္ကန့်တိုင်း သန်းချီတဲ့ user တွေ ရဲ့ login form validation ကို google servers တွေက လုပ် ရမယ် ဆိုရင်၊ server တွေ ဝန်ပိမှာ ဖြစ်ပါတယ်။

Form Validation ကို browser ထဲမှာ client side scripting နဲ့လုပ်ခိုင်း တာက ပိုပြီးသင့်လျှော်မဲ့ နည်းလမ်း​ဖြစ် ပါတယ်။

ယခင်က client side scripting languages အများအပြား အပြိုင်အဆိုင် ရှိခဲ့ကြပေမဲ့၊ အခု အချိန်မှာတော့ JavaScript ကိုဘဲ သုံးကြပါ တော့တယ်။

Client side scripting နမူနာ example အချို့ကို အောက်ပါ link မှာ download လုပ်ပြီး လေ့လာ နိုင်ပါတယ်။
js-example

What Is Variable

Variable ဆိုတာ ဘာလဲ

Programming Language တွေမှာ သုံးတဲ့variable ဆိုတာ ဘာလဲ? အရပ်စကား နဲ့​ပြော ရရင် variable ဆိုတာ data ထည့်တဲ့ ခွက်ပါဘဲ။

Data အမျိုးအစား(type) အမျိုးမျိုး ရှိပါတယ်၊ data type ပေါ်မူတည်ပြီး memory သုံးစွဲမှု မတူကြပါ။ ခွက် အကြီးအသေး ကွာတဲ့သဘောပါ။

ဆန်လေး လက်တဆုပ် ကို ရာဝင်အိုးနဲ့ ထည့်ရင် နေရာပုပ် တာပေါ့၊ ဆန်တစ်အိတ် ကိုရာဝင် အိုးနဲ့ ထဲ့ပြီး၊ ဆန်လေး လက်တဆုပ် ကို ပလပ်စတစ် အိတ် လေးနဲ့ ထည့်တာ ကုန်ကျစရိတ် သက်သာမယ်။ (computer မှာတော့ memory အသုံး နည်းမယ်)။

Programming languages တွေမှာ၊ loosely typed language နဲ့ strictly typed language ဆိုပြီး၊ နှစ်မျိုး ကွဲသွား ပါတယ်။

Strictly typed language တွေမှာ integer, decimal, characters,  boolean စတဲ့ data type တွေကို ကြိုတင် သတ်မှတ် (declare) ရပါတယ်။ မသတ်မှတ်ဘဲ သုံးရင် error ပြပါတယ်။ (ဥပမာ Java, C, Visual Basic)။

Loosely typed language တွေမှာတော့ data type တွေကို ကြိုတင် သတ်မှတ်ရန် မလိုပါ။ (ဥပမာ PHP, Python, Perl, JavaScript )။

Variable တွေ အတွက် နာမည် ပေးနည်း တွေရှိ ပါတယ်၊ programming languages အလိုက် နည်းလမ်း ကွဲကြပါတယ်။ နာမည် ပေးနည်း တွေကို စည်းကမ်း တွေ ချထား ကြပါတယ်။ ဒါကို variable naming convention လို့ ခေါ်ပါ တယ်။

လူနာမည် ပေးကြ ပုံနဲ့ ဥပမာပေးရ မယ်ဆိုရင်၊ မြန်မာမှာ ဦး၊ဒေါ်၊ကို၊မ၊မောင် တို့နဲ့ စပြီး first name, last name မရှိပါ။ အနောက်တိုင်း မှာတော့ Mr, Mrs, Miss, Ms တို့ဖြင့် စပြီး၊ first name, middle name, last name လို့ သတ်မှတ် ချက်တွေ ရှိပါတယ်။

Variable ခွက်ထဲကို data ထည့်တဲ့ အခါ၊ ညီမျှခြင်း လက္ခဏာ ကိုသုံးပါတယ်။ (equal sign =)

ထိပ်မှာ ပြထားတဲ့ ပုံမှာ rollnumber=55 ဆိုရင်၊ rollnumber ဆိုတဲ့ variable ခွက်ထဲကို 55 ဆိုတဲ့ data ထည့်လိုက် ခြင်းပါဘဲ။ သုံးချင်တဲ့ အခါ rollnumber ကို call လုပ်လိုက်ရင်၊ 55 ဆိုတဲ့ data ထွက်လာပါမယ်။

What Is A Cookie

Cookie ဆိုတာ ဘာလဲ

Cookie သို့မဟုတ် HTTP Cookie, Magic Cookie, Web Cookie, Internet Cookie, Browser Cookie စသည်စသည်ဖြင့် အမျိုးမျိုး ခေါ်ခဲ့ကြပြီး အခုကာလ မှာတော့ cookie လို့ဘဲ ခေါ်ကြ ပါတော့တယ်။

Cookie ကို Mosaic Netscape Browser ၏ အမှုထမ်း တစ်ဦး ဖြစ်သူ Louis J. Montulli II မှ တည်ထွင်ခဲ့ပါတယ်။ ကွတ်ကီ ကို ၁၉၉၄ အောက်တိုဘာ ၁၃ ရက်နေ့မှာMosaic Netscape 0.9 beta တွင်စတင် ထည့်သွင်း အသုံးပြုခဲ့ ပါတယ်။

HTML ပေါ်စက server တွေမှာ သုံးတဲ့ memory တွေဟာ အလွန်ဈေးကြီးပါတယ်။ စာမျက်နှာ တွေကို ဘယ်ကလှမ်း တောင်းတယ်၊ ရှေ့စာမျက်နှာ နဲ့နောက်ထပ် တောင်းတဲ့ စာမျက်နှာ၊ ဘယ်လို ဆက်စပ်နေတယ်၊ စတာတွေကိုသာ မှတ်သားနေရမယ် ဆိုရင်၊ memory တွေ အမျာအပြား ထပ်လိုမှာ ဖြစ်လို့၊ စာရိတ်ကြီးပြီး မွဲဆေး ဖေါ်သလို ဖြစ်နေပါမယ်။ ထို့ကြောင့် စွန်းဦးတည်ထွင် သူတွေက browser ရာဇဝင် ကို မှတ်မထားဖို့၊ ဆုံးဖြတ်ခဲ့ကြ ပါတယ်။

ဒီတော့ HTML Pages တွေဟာ လူမသိသူမသိ နိုင်ငံမဲ့ တွေလို့ တင်စားခဲ့ ပါတယ်။ (HTML Pages are anonymous and stateless)

သို့သော် browser ရာဇဝင် ကိုသိပြီး ဆက်စပ်မှု ရှိမှဖြစ်မဲ့ ကိစ္စမျိုး ကျတော့ အခက်တွေ့ပြန်ရော။ ဥပမာ username password သုံးပြီး login လုပ်၊ နောက်စာမျက်နှာ ထဲဝင် ဖို့ကျတော့ anonymous and stateless ဖြစ်နေလို့၊ အဆင်မပြေ ပြန်တော့ပါ။

ဒါကိုဖြေရှင်းဖို့ ကွတ်ကီ ကိုထွင်ခဲ့ တာပါ။ ကွတ်ကီ ဆိုတာ ဆေရုံဆေးခန်း တွေမှာ လူနာကို ထုတ်ပေးတဲ့ ဆေးစာအုပ်နဲ့ တူပါတယ်။ လူနာစာအုပ်က လူနာနဲ့အတူ ထားတာပါ၊ ဆေးရုံမှာမထားပါ။

Cookie ဖိုင်ဆိုတာက text file သေးသေးလေးပါ၊ browser နဲ့ server တို့ အပြန်အလှန် ထိတွေ့မှု ရာဇဝင်နဲ့ အခြားလိုအပ်မဲ့ အချက်အလက်တွေကို ရိုးရိုး ASCII နဲ့ ရေးထဲ့ထားပါတယ်။ Cookie ဖိုင်ကို server မှာ မထားဘဲ၊ သင့် ကွန်ပျူတာ ရဲ့ browser ရဲ့ folder ထဲမှာသိမ်း ပါတယ်။ Server နဲ့ နောက်တစ်ကြိမ် ထပ်ချိတ်ဆက် တဲ့ အခါမှာ server က cookie ကိုလှမ်းတောင်း ပြီးဖတ်ပါတယ်။ ဒီအခါမှာ သင့် browser နဲ့ အဝေက server အကြားမှာ၊ HTML Pages တွေဟာ anonymous and stateless မဖြစ်တော့ပါဘူး။

ယခုခေတ် မှာတော့ browser ရာဇဝင် ဆိုတာ ရွှေပါဘဲ၊ Facebook, Google, Amazon, Apple, Microsoft စသည်တို့ဟာ browser ရာဇဝင် နဲ့ သူဌေး ဖြစ်နေကြတာပါ။

What Is ASCII

ASCII ဆိုတာဘာလဲ

ASCII (အက်စ်ကီး) သည် American Standard Code for Information Interchange ၏ အတိုကောက် ဖြစ်ပြီး October 6, 1960 ရက်နေ့မှာ စတင်ခဲ့ပါတယ်။ ၎င်းသည် အင်္ဂလိပ် အက္ခရာ များကို 8 bit binary code ဖြင့် ကိုယ်စားပြု ပါသည်။

ASCII အသံထွက် ကိုနားထောင် လိုလျှင် အောက်ပုံကို click လုပ်ပါ။

Bell Telephone Company (USA) ၏ တယ်လီပရင်တာ (teleprinter) များတွင် အသုံးပြုသော 7 bit code ကိုမှီငြမ်း ပြုပြီး ASCII ကိုရေးဆွဲခဲ့ ကြပါသည်။ ကွန်ပြူတာနှင့် လိုက်လျှော ညီထွေ ဖြစ်စေရန် 8 bit code အဖြစ်ပြုပြင် ခဲ့သည်။

ASCII code များ ကိုအောက်တွင် ဖေါ်ပြထား ပါသည်။

ကွန်ပြူတာ ပေါ်စက ကုမ္ပဏီ များသည် standard မရှိဘဲ ကွန်ပြူတာ များကို ထုတ်လုပ်နေ ကြသဖြင့် ကွန်ယက် (network) ချိတ်ဆက်ပြီး အချင်းချင်း ဆက်သွယ်ရန် အလွန်ခက်ခဲ ပါသည်။ အမေရိကန် သမတ Lyndon B. Johnson က July 1, 1969 တွင် ကွန်ပြူတာ အားလုံးသည် ASCII ဖတ်နိုင်ရမည် ဟု အမိန့်ထုတ်ပြန် ခဲ့ပါသည်။ (reference)

Tim Berners-Lee သည် ၁၉၉၀ ခုနှစ်တွင် Hypertext Markup Language (HTML)ကို တည်ထွင် ပြီး အများသုံ အင်တာနက် ခေတ်ကြီးကို စတင်ပေး ခဲ့သည်။ HTML သည် ASCII ကိုအခြေခံ ၍ရေး ထားသော language ဖြစ်ပါသည်။