Learning or Betting on Technology

ဘဝမွာ computer development နဲ႔ ပတ္သက္ၿပီးေတာ့ စၿပီး ထိေတြ႕ခဲ့ရတာ HTML ပဲ။ ငယ္ငယ္ကတည္းက computer ကို ဖြင့္ၿပီး ဟိုႏွိပ္ ဒီႏွိပ္။ ဟို click ဒီ click လုပ္ရင္း ေလ့လာခဲ့တယ္။ ၁၀ တန္းေလာက္မွာမွ Microsoft Office မွာ ပါလာတဲ့ FrontPage ဆိုတာကို စၿပီး ေတြ႕ဖူးခဲ့တယ္။ အဲဒီတုန္းကလည္း internet ဆိုတာ ဘာမွန္း တကယ္ ကို မသိခဲ့တာ။ ေနာက္ၿပီး connection က dial up ေလာက္ပဲ ရွိၿပီးေတာ့ ဘာ website မွ ေထြေထြထူးထူး ၾကည့္လို႔ မရတာ ေၾကာင့္လည္း စိတ္မဝင္စားတာ ပါတယ္။

FrontPage ကေန ၿပီးေတာ့ HTML အေၾကာင္း အနည္းငယ္ သိခဲ့တယ္။ HTML ဆိုတာ ဘာလဲ ဆိုတာကို သိခ်င္စိတ္ စျဖစ္ခဲ့ၿပီး ဘဝမွာ developer တစ္ေယာက္ ျဖစ္လာဖို႔ ပထမဆုံး ခ်ေပးခဲ့တဲ့ မ်ိဳးေစ့ ပဲ။ FrontPage နဲ႔ website ေတြ ကို လုပ္ၾကည့္ ၊ HTML code ေတြကို ေလ့လာၾကည့္နဲ႔ အဲဒီတုန္းက ကိုယ့္ကိုယ္ကို ေတာ္ေတာ္ ဟုတ္လွၿပီ ထင္ေနတာ။ ေနာက္ၿပီးေတာ့ code ကို copy ကူးၿပီး text editor နဲ႔ စမ္းေတာ့ တခ်ိဳ႕ code ေတြက အလုပ္မလုပ္ေတာ့ဘူး။ အဲဒီတုန္းက HTML code နဲ႔ FrontPage က component ေတြ မတူဘူးဆိုတာ မသိဘူး။ HTML က FrontPage နဲ႔ပဲ ရတယ္ဆိုတဲ့ အထင္ ျဖစ္ခဲ့ဖူးတယ္။

၁၀ တန္းၿပီးေတာ့ ဗိုလ္တေထာင္ ေက်ာင္းမွာ diploma သြားတက္ျဖစ္တယ္။ ေက်ာင္းလည္း မဖြင့္ေသးခ်ိန္မွာ အားေနတာနဲ႔ သြားတက္ျဖစ္တယ္။ ပုံမွန္ သင္တန္းေတြ ထက္ programming အေျခခံေတြ ကို အဲဒီမွာ ေကာင္းတယ္ဆိုၿပီး computer ျပင္ေနက် အစ္ကိုေတြက ေျပာတာနဲ႔ တက္ျဖစ္ပါတယ္။

အေျခခံနဲ႔စၿပီး အေကာင္းဆုံး နဲ႔ မေကာင္းတာ ႏွစ္ခု ကို စၿပီး ႀကဳံရတယ္။ အေကာင္းဆုံးကေတာ့ ဗိုလ္တေထာင္ ေကာလိပ္မွာ pesudo, flowchart ေတြ သင္တာ အေတာ္ကို ေကာင္းတယ္။ သင္သည့္ ဆရာမ ေကာင္းတယ္ ဆိုရမယ္။ မေကာင္းတာကေတာ့ VB 6 နဲ႔ Access ကို programming အေျခခံ အေနနဲ႔ သင္လိုက္ရတာပဲ။

နည္းပညာတစ္ခုကို ေလ့လာေတာ့မယ္ဆိုရင္ ေနာင္တခ်ိန္မွာ ဒီနည္းပညာဟာ ေအာင္ျမင္ႏိုင္မလား ဒါမွမဟုတ္ ေပ်ာက္သြားႏိုင္မလား ဆိုတာကို မသိဘူး။ ကြၽန္ေတာ္တို႔ အေနနဲ႔ ေလာင္းကစား လုပ္ၿပီးေတာ့ ရွိသည့္ အခ်ိန္ေတြ အကုန္ ဒီ lanuage တစ္ခုကို ထည့္ေလာင္းမလား ဒါမွမဟုတ္ ခြဲခြဲၿပီး အကုန္ေလ့လာမလား စသည္ျဖစ္ ပုံမွန္ ႀကဳံရတာပဲ။ VB နဲ႔ Access စသင္လိုက္ေတာ့ ကြၽန္ေတာ့္ အေနနဲ႔ OOP ဟာ မလိုအပ္ဘူး။ UI အတြက္ Visual Studio နဲ႔ ခ်လိုက္ရင္ ရၿပီ။ ဘာလို႔ code ေတြနဲ႔ တည္ေဆာက္မွာလဲ စသည့္ အေတြးေတြ ဝင္ခဲ့မိတယ္။ ပထမဆုံး language ျဖစ္ၿပီးေတာ့ အမ်ားႀကီးလည္း မသိေသးတာေၾကာင့္ C++ , Java ေတြထက္စာရင္ VB 6 ဟာ development လုပ္ရတာ လြယ္တယ္ထင္ၿပီး အဲဒီ အေပၚပုံေအာ ေလာင္းမိၿပီး အခ်ိန္ေတြ ေပးၿပီး ေလ့လာျဖစ္တယ္။

ပထမဆုံး language ျဖစ္သည့္ VB 6 ဟာ .NET လည္း ေပၚလာေကာ အကုန္လုံး ေျပာင္းလဲသြားတယ္။ VB.NET ဟာ OOP ကို မျဖစ္မေန သုံးဖို႔ လိုအပ္လာၿပီး ကြၽန္ေတာ့္ အေနနဲ႔ လုံးဝကို မလိုက္ႏိုင္သည့္ language တစ္ခု ျဖစ္သြားတယ္။ ကြၽန္ေတာ္ အရင္တုန္းက ထင္ထား သလို VB 6 ဟာ လူသုံးမ်ားသည့္ အတြက္ ဒီ အတိုင္းပဲ ဆက္ရွိေနမယ္ဆိုတဲ့ အေတြးဟာ လုံးလုံးမွားသြားခဲ့တယ္။ VB.NET ကို မေလ့လာေတာ့ပဲ C# ကို ေျပာင္းၿပီး ေလ့လာခဲ့တယ္။ သို႔ေပမယ့္ အခ်ိန္ေတြ အကုန္ C# ကို မေပးခဲ့ဘူး။ ကြၽန္ေတာ္ C# ဟာ ေနာင္တခ်ိန္မွာ အသုံးမ်ားတဲ့ language ျဖစ္မယ္လို႔ မယုံၾကည္ခဲ့ဘူး။

UCSY ကို တက္ေတာ့ C++ ကို သင္ရတယ္။ VB 6 အေျခခံေၾကာင့္ C++ ဟာ ဘာမွ လုပ္လို႔ မရဘူး။ ပုံမွန္ code ေတြ ေလာက္ပဲ ေရးလို႔ ရမယ္ ထင္ခဲ့တယ္။ နည္းနည္းပဲ သိတာဟာ အေတာ့္ကို အႏၲရာယ္မ်ားမွန္း အဲဒီ တုန္းက သေဘာမေပါက္ခဲ့ဘူး။ အဲဒီ အေတြးဟာ အေတာ့္ကို အႏၲရာယ္မ်ားၿပီေတာ့ ကိုယ့္ ပတ္ဝန္းက်င္ကိုပါ အေတြးမွားေတြ ဝင္ေစတယ္။ C++ အသုံးဝင္ပုံကို ေနာက္ပိုင္း cocos2d ကို သုံးမွပဲ သေဘာေပါက္ေတာ့တယ္။

ေက်ာင္းတက္ေနတုန္းမွာ language ေတြ tool ေတြ အမ်ားႀကီးကို ေလ့လာမိတယ္။ Flash, Flash action script , HTML , CSS , Javascript , Java , PHP , python, scriptaculous, prototype, Jquery စတာေတြ အျပင္ Photoshop , 3dsmax အျပင္ အျခား video editing , sound editing အကုန္လုံးကို ဟို စပ္စပ္ဒီစပ္စပ္ ေလ့လာျဖစ္ခဲ့တယ္။

တကယ္တန္းက ဘယ္ဟာကို အသုံးျပဳမလဲ။ ေလ့လာမလဲ ဆိုတာ အဲဒီ အခ်ိန္တုန္းကေတာ့ တကယ့္ကို ေလာင္းကစား တစ္ခုပဲ။ ေက်ာင္းတက္ေနတုန္းက ေလ့လာထားၿပီး ေက်ာင္းၿပီးသည့္ အခ်ိန္မွာ အဲဒီ language လူ မသုံးေတာ့ရင္ ဘယ္လို လုပ္မလဲ ဆိုသည့္ အေတြးက ရွိေနတယ္။ အဲဒါက အေတာ့္ကို ခက္တယ္။ အထူးသျဖင့္ jquery နာမည္ မႀကီးခင္က javascript library ေတြ အမ်ားႀကီးပဲ။ prototype , jquery , scriptaculous , dojo စသည္ျဖင့္ အမ်ားႀကီးပဲ။ အခုအခ်ိန္မွာေတာ့ jquery သာ ေအာင္ျမင္ၿပီး က်န္တာေတြကေတာ့ လူ အနည္းအက်ဥ္းပဲ ရွိေတာ့တယ္ ဆိုရမယ္။ သို႔ေပမယ့္ အဲဒီ အခ်ိန္မွာ ဘယ္ဟာကို ေလ့လာသင့္ သလဲ ဆိုတာ တကယ့္ကို စိန္ေခၚမႈပဲ။ library တစ္ခု မေအာင္ျမင္ခင္မွာ ေလ့လာၿပီးေတာ့ ေအာင္ျမင္သြားသည့္ အခါမွာ ကိုယ္က အျခားလူေတြထက္ ပိုသိေနၿပီ။ သို႔ေပမယ့္ ကိုယ္ ေလ့လာထားသည့္ library က လူမသုံးေတာ့သည့္အတြက္ ေအာင္ျမင္သည့္ library ကို ျပန္ေလ့လာမယ္ဆိုရင္ တျခားလူေတြက ကိုယ့္ထက္ စာရင္ အကုန္သိေနၿပီးေတာ့ ကိုယ္ကေနာက္ကေန အေတာ့္ကို ျပန္လိုက္ရလိမ့္မယ္။

နည္းပညာေလာကမွာ ေလ့လာဖို႔ နည္းပညာ အသစ္ တစ္ခုကို သုံးဖို႔ဆိုတာက တကယ့္ကို စိန္ေခၚမႈ ေလာင္းကစား တစ္ခုနဲ႔ တူတယ္။ ေက်ာင္းတုန္းက ကြၽန္ေတာ္ ျဖစ္ခ်င္ရာျဖစ္ကြာ ဆိုၿပီး သေဘာက်လို႔ တစ္စိုက္မတ္မတ္ ေလ့လာျဖစ္တာကေတာ့ HTML , CSS , Javascript , PHP နဲ႔ prototype javascript framework ပဲ။ Web ပိုင္းကို desktop ပိုင္းထက္ ပုံေအာ္ၿပီးေတာ့ ေလာင္းခဲ့တယ္ ဆိုရမယ္။ C#, Java , Python ေတြကို ဖတ္ရင္ နားလည္သည့္ အဆင့္ကေန မတက္ေတာ့ပဲ ထားျဖစ္ခဲ့ လိုက္တယ္။ အခ်ိန္ေတြ အကုန္ web ပဲ ေလ့လာျဖစ္တယ္။ Desktop app ကို မေရးျဖစ္သေလာက္ပဲ။ ေက်ာင္းၿပီးသြားသည့္အခါမွာ prototype ကို လူမသုံးေတာ့ပဲ jquery ေအာင္ျမင္လာတာနဲ႔ jquery ကို အစကေန ျပန္ေလ့လာျဖစ္ခဲ့တယ္။

စကၤာပူေရာက္ေတာ့ PHP နဲ႔ အလုပ္ရတယ္။ အဲဒီ အခ်ိန္မွာ iPhone app ေတြက စၿပီး ေခတ္စားလာတယ္။ သိပ္မၾကာခင္မွာ Android ကလည္း ေပၚလာတယ္။ Android နဲ႔ iOS ၂ ခုမွာ Apple ကို သေဘာက်ၿပီး Java ကို အေၾကာင္းျပခ်က္မရွိပဲ သေဘာမက်သည့္ ကြၽန္ေတာ့္ အေနနဲ႔ Objective-C ကို ေ႐ြးျဖစ္ခဲ့တယ္။ Java ဆို ထိေတာင္ မထိဘူးလို႔ ဆုံးျဖတ္ၿပီးေတာ့ Objective-C ကို ေလ့လာျဖစ္ခဲ့တယ္။ Objective-C ကို ေလ့လာသည့္ အခါမွာ OOP ပိုင္းကို အေျခမခိုင္ခဲ့သည့္ အျပင္ VB 6 , PHP စတာေတြက OOP logic ေတြ မပါပဲ function ေတြႀကီး အသုံးျပဳၿပီး code ေတြ ေရးလို႔ရခဲ့ေတာ့ Objective-C ကို ေလ့လာသည့္ အခါမွာ အေတာ္ေလးကို ဒုကၡေရာက္ခဲ့တယ္။ ေနာက္ၿပီးေတာ့ Cocos2d ကို သုံးေတာ့ အေတာ္ေလးကို စိတ္ဒုကၡေရာက္ မိတယ္။ တခ်ိဳ႕အပိုင္းေတြက C++ အပိုင္းေလးေတြ ပါလာေတာ့ ေရးရတာဟာ စိတ္တိုင္း မက်ဘူး။ Objective-C မွာ by reference , by value ေတြကို ေသေသခ်ာခ်ာ သေဘာမေပါက္ပဲ ေရးခဲ့တဲ့ code ေတြ ေနာက္ၿပီးေတာ့ အဲဒီတုန္းက ARC မရွိေသးပဲ manual retain , release ေတြ လုပ္ခဲ့တာေၾကာင့္ အဆင္မေျပပဲ မနည္းႀကီး လုပ္ခဲ့ရတာ အမွန္ပဲ။

Objective-C ကို ၂ ႏွစ္ေလာက္ လုပ္ၿပီးေတာ့ နည္းနည္းသေဘာေပါက္လာတယ္။ Objective-C ရဲ႕ အက်ိဳးေက်းဇူးေၾကာင့္ OOP ကို သေဘာေပါက္သြားတယ္။ By refrene , by value ေတြ သုံးတတ္လာတယ္။ Java ကို လြယ္လင့္တကူ ေလ့လာလို႔ ရသြားတယ္။ C++ ကို နည္းနည္းပါးပါး ဖတ္တတ္ ေရးတတ္သြားတယ္။ Objective-C အေပၚမွာ ပုံေအာၿပီး ေလာင္းခဲ့တာ မမွားဘူးဆိုရမယ္။ သို႔ေပမယ့္လည္း Apple က Swift ကို ေၾကျငာခဲ့ၿပီး Swift က အခု အခ်ိန္မွာ version 3 ေတာင္ ေရာက္သြားခဲ့ပါၿပီ။ Swift version တစ္ခု နဲ႔ တစ္ခု အကူးအေျပာင္းမွာ ေလ့လာခဲ့တာေတြ သိတာေတြ ေတာ္ေတာ္မ်ားမ်ား သုံးမရ ျဖစ္ကုန္တာေတြ ရွိေနေပမယ့္ Swift ဟာ ေအာင္ျမင္မယ့္ language လို႔ ယုံၾကည္ဆဲပဲ။

Ornagai.com ကို version 3 လုပ္ေတာ့ Javascript framework တစ္ခုနဲ႔ လုပ္မယ္လို႔ ဆုံးျဖတ္ခဲ့တယ္။ Javascript framework ေတြ အမ်ားႀကီးထဲက Angular ကို ေ႐ြးခဲ့တယ္။ သို႔ေပမယ့္ ကြၽန္ေတာ္ မွားသြားျပန္ၿပီလို႔ ဆိုရမယ္။ Angular 2 ဟာ Angular 1 နဲ႔ တျခားစီပဲ။ Angualr 1 ကေန Angular 2 ကို ေျပာင္းဖို႔ဟာ အေတာ့္ကို မလြယ္တာ။ ေနာင္တခ်ိန္မွာ ornagai.com ကို အျခား framework တစ္ခုနဲ႔ အစကေန ျပန္ေရးရမယ့္ ပုံပဲ။

အခုအခ်ိန္မွာ ဘယ္ javascript language ကို ေလ့လာသင့္သလဲ ေမးရင္ေတာ့ တကယ့္ကို စိန္ေခၚမႈ တစ္ရပ္ပါပဲ။ ဘယ္ဟာ ေအာင္ျမင္မလဲ။ Facebook ရဲ႕ react လား ၊ Google ရဲ႕ Angular 2 လား Vue.js လား ဒါမွမဟုတ္ aurelia လား။ တကယ္ ဘာမွကို မသိႏိုင္ေသးဘူး။ React ကေတာ့ အခုအခ်ိန္မွာ လူအသုံးမ်ားဆုံးပဲ။ သို႔ေပမယ့္ ကြၽန္ေတာ့္ အေနနဲ႔ react ဟာ web technology လို႔ မခံစားရဘူး။ Javascript ကို အားျပဳၿပီးေတာ့ UI ကို တည္ေဆာက္သည့္ အတြက္ေၾကာင့္ မူရင္း web အရသာဟာ ေပ်ာက္ဆုံးသြားတယ္လို႔ ခံစားမိတယ္။ Vue.js ကိုေတာ့ သေဘာက်တယ္။ web development ရဲ႕ အရသာကို ခံစားလို႔ ရတယ္။ Angualr ကိုေတာ့ ကြၽန္ေတာ္ ယုံၾကည္မႈ မရွိလွဘူး။ Aurelia ကေတာ့ ES 6 ​ေၾကာင့္ တကယ့္ကို စိန္ေခၚမႈ တစ္ခုပဲ။

Mobile development လုပ္ေတာ့ database ပိုင္းကို ေ႐ြးခ်ယ္ရတာေတြ ရွိတယ္။ NoSQL ကို သေဘာက်သည့္ ကြၽန္ေတာ့္အတြက္ NoSQL မွာ Mongodb ကို ေ႐ြးျဖစ္ခဲ့တယ္။ ကြၽန္ေတာ္ စေလ့လာတုန္းက NoSQL မွာ ေ႐ြးခ်ယ္စရာေတြ အမ်ားႀကီးပဲ။ facebook က cassandra သုံးတယ္ဆိုၿပီး နာမည္ႀကီးၿပီး အျခားသူေတြက ေလ့လာၾကတယ္။ ဒါ့အျပင္ couchdb က လြယ္တယ္ဆိုၿပီး ေျပာေနၾကသည့္ အခ်ိန္။ Mongodb ကေတာ့ marketing ေတြ အရမ္းလုပ္သည့္ အခ်ိန္မွာ foursquare က mongodb ကို သုံးတယ္ဆိုတာနဲ႔ Mongodb ကို သုံးဖို႔ ဆုံးျဖတ္ခဲ့တာပဲ။ အခုေနာက္ပိုင္းမွာ realtime ရၿပီးေတာ့ query ေရးရတာ လြယ္သည့္ rethinkdb ကို သုံးျဖစ္တယ္။ အခုအခ်ိန္မွာ mongodb က လူအသုံးမ်ားဆုံးျဖစ္ေနၿပီးေတာ့ ေလ့လာဖို႔ resource ေတြ အမ်ားဆုံးပါပဲ။

နည္းပညာတစ္ခုကို ေလ့လာမယ္လို႔ ဆုံးျဖတ္လိုက္တာနဲ႔ အဲဒီ နည္းပညာေပၚမွာ ေလာင္းေၾကးထပ္လိုက္တာပဲ။ ေနာင္ အနာဂတ္အတြက္ ဘယ္ lanuage ကို ေလ့လာသင့္သလဲ ဘယ္ technology ကို ေလ့လာသင့္သလဲ ဆိုရင္ အခုအခ်ိန္မွာ အေတာ့္ကို စဥ္းစားရတယ္။ လူ အေတာ္မ်ားမ်ားက အလုပ္အကိုင္ အခြင့္အေရးမ်ားသည့္ နည္းပညာကို အားေပးၾကတယ္။ ကြၽန္ေတာ္ကေတာ့ ကိုယ္တိုင္ သေဘာက်ၿပီး ေနာင္တခ်ိန္မွာ ေအာင္ျမင္လာမယ္လို႔ ထင္သည့္ နည္းပညာကို ေလ့လာတာ မ်ားတယ္။ သို႔ေပမယ့္ အဲဒါဟာ စြန႔္စားရာက်ပါတယ္။


 
33 Kudos
Don't
move!
4 Comments

Leave a Reply