expr:class='"loading" + data:blog.mobileClass'>

Thursday 20 March 2014

C++ ပရိုဂရမ္ႏွင့္ ပရိုဂရမ္မာမ်ားအတြက္ သိထားသင့္သည့္ လွ်ဴိ ့၀ွက္ခ်က္မ်ား

ပရိုဂရမ္ ဆိုသည္မွာ အလုပ္တစ္ခုခုကို လုပ္ေဆာင္နိုင္ရန္အတြက္ညြန္ၾကား ခ်က္မ်ားကိုစု
စည္းထားေသာ ညြန္ၾကားခ်က္ အစုအေဝးကို ေခၚဆိုပါသည္။

အဆိုပါညြန္ၾကားခ်က္ အစုအေဝမ်ားေပါင္း စုထားေသာ ပရိုဂရမ္အစုအေဝးကို ကြန္ျပဴတာ
ေဆာ့ဝဲဟု ေခၚဆိုပါသည္။

ကြန္ျပဴတာ ပရိုဂရမ္မ်ားသည္ ယခု အခ်ိန္ဆိုလ်င္ စတုတၳမ်ိဳးဆက္သို့ တိုင္ေရာက္လာခဲ့ျပီျဖစ္
သည္။ ကြန္ျပဴတာ ပရိုဂရမ္တစ္ခု အခုအလုပ္လုပ္နိုင္ရန္အတြက္ စက္မွ နားလည္နိုင္ရန္အ
တြက္ ေျပာင္းလဲေပးေသာ ၾကားခံပရိုဂရမ္တစ္ခု လိုအပ္ျပန္ပါသည္။

ပရိုဂရမ္ ဆိုသည္မွာ အမိန့္စာေၾကာင္းမ်ားစြာ (Instructions) ပါဝင္ေသာ (သို့)ကြန္ျပဴတာကို
ခိုင္းေစနိုင္ေသာ အမိန့္စာေၾကာင္းမ်ား ပါဝင္ေသာ ကြန္ျပဴ တာက နားလည္နိုင္တဲ့ ဘာသာစ
ကား တစ္မ်ဳိး ျဖစ္သည္။ ကြန္ျပဴတာရဲ့ လုပ္ေဆာင္မႈ အားလံုးကို ထိန္းခ်ုပ္ ကိုယ္တြယ္ ခိုင္းေစ
နိုင္စြမ္းရွိေသာ ဘာသာရပ္ျဖစ္သည္။ ကြန္ျပဴတာနည္းပညာတြင္ ပရိုဂရမ္ဘာသာရပ္ ေျမာက္
မ်ားစြာ ရွိသည္။

လူတစ္ေယာက္ ၏ ေတြးေခၚမႈ ၊ စိတ္ပံုေဖာ္မႈ မ်ားကို ကြန္ျပဴတာ နားလည္နိုင္ေသာ comm-
and word (or) instruction (အမိန့္စာေၾကာင္း) မ်ားျဖင့္ ပံုေဖၚျခင္း နည္းပညာ ျဖစ္သည္။
သခၤ်ာနည္းပညာ တြက္ခ်က္မႈမ်ားအား မ႑ဳဍိင္ထား၍ လုပ္ေဆာင္မႈ အမ်ဳိးမ်ဳိး တြက္ခ်က္မႈ အ
မ်ဳိးမ်ဳိး ရုပ္ပံုအမ်ဳိးမ်ဳိးကို ဖန္တီးနိုင္ျခင္းမ်ား လုပ္ေဆာင္နိုင္ေသာ Language ဟုလည္း အၾကမ္း
အားျဖင့္သိရွိနိုင္သည္။ Programming of Computer ကို အသံုးျပဳသည့္နယ္ပယ္မ်ားမွာ အ
ေျမာက္အမ်ား ရွိသည္။ မည္သည့္နယ္ပယ္တြင္ အသံုးျပဳသည္ကိုေတာ့ ေအာက္တြင္ ေဖၚျပ
ထားေသာ ကြန္ျပဴတာ သိပၸံနယ္ပယ္ မွ ေရြးထုတ္ ေဖာ္ျပရမည္ ျဖစ္သည္။

  1. Theoretical computer science( သီအိုရီ ပိုင္းဆိုင္ရာ)
  2. Algorithms and data structures(သခၤ်ာနည္းပညာမ်ားအား ပံုစံခ် ေရးဆြဲျခင္း)
  3. Programming methodology and languages(ပရိုဂရမ္ လုပ္ရိုးလုပ္စဥ္နွင့္ ၎
    တို႔၏ ဘာသာရပ္ မ်ား)
  4. Computer elements and architecture(ကြန္ျပဴတာ ၏ အီလက္ထေရာနစ္ဆိုင္
    ရာ ဖြဲ႕စည္းတည္ေဆာက္ပံု နွင့္၎တို့၏ လုပ္ေဆာင္ခ်က္မ်ား)
  5. Numerical and symbolic computation(သခၤ်ာဂဏန္း နွင့္ သေကၤတမ်ားကို အ
    သံုးျပဳၿပီး သိပၸံဘာသာရပ္မ်ားတြင္ တြက္ခ်က္မႈစနစ္ မွတဆင့္ ပံုေဖာ္ေရးဆြဲျခင္း)
  6. Applications(ကြန္ျပဴတာတြင္ အမ်ားျပည္သူသံုး အျဖစ္ အသံုးခ် ေဆာ့ဖ္ဝဲမ်ား ေရး
    ဆြဲတည္ေဆာက္ျခင္း)
အထက္ပါ နယ္ပယ္မ်ား အားလံုး သည္ field of Computer Science (ကြန္ျပဴတာ သိပၸံ
နယ္ပယ္) ၌ ပါဝင္ ပါသည္။ သို့ျဖစ္၍ ကြန္ျပဴတာ ပရိုဂရမ္သမား တစ္ေယာက္သည္ အီ
လက္ထေရာနစ္ နည္းပညာ၊ ယုတၱိ တန္ေသာ ေတြးေခၚမႈ ပိုင္းဆိုင္ရာ နွင့္ သခၤ်ာနည္းပ
ညာ ကို အေျခခံ နွင့္ အထက္ တတ္ေျမာက္ထား မွ သာလွ်င္ အထစ္အေငွာ့ မရွိ အဆင္
ေခ်ာ မည္သာ ျဖစ္သည္။

လူ၏ စိတ္ခံစားမႈ စဥ္းစားေတြးေခၚမႈမ်ားကို ပံုေဖာ္ျခင္း ျဖစ္သည့္အတြက္ လူ႔စိတ္ကဲ့သို႔
ေျပာင္းလြယ္ ျပင္လြယ္ ျဖစ္နိုင္စြမ္း ရွိသည္။ ဆိုလိုသည္မွာ ပရိုဂရမ္အား စတင္ေလ့လာ
လိုက္စားသည္နွင့္ တျပိဳင္နက္ မိမိသင္ထားေသာ အေျကာင္းအရာမ်ားကို ပံုေသ မမွတ္
ေစလိုျခင္း ျဖစ္သည္။

ထပ္မံ၍ ရွင္းလင္းရေသာ္ ဥပမာ။ ။ ပရိုဂရမ္ တစ္ပုဒ္ ၌ a=100; ဟု ေရးထားလွ်င္ a ၏
တန္ဖိုးသည္ တစ္ရာ နွင့္ ညီသည္။ သို့ေသာ္ a ၏ တန္ဖိုးသည္ အၿမဲတမ္း တစ္ရာ နွင့္
မညီေၾကာင္းသိရွိထားရမည္။ a သည္ ပထမအေျခအေနတြင္ တစ္ရာနွင့္ ညီထားေသာ္
လည္း ပရိုဂရမ္အရ ဒုတိယအေျခအေနတြင္ တစ္ေထာင္ ၊တစ္ေသာင္း ၊တစ္သိန္း၊ တစ္
စသည့္ တန္ဖိုးမ်ားအျဖစ္လည္း ေရာက္ရွိသြားနိုင္သည္။ ပရိုဂရမ္ ၏ လိုလားခ်က္ အရ
ကိန္းရွင္ ျဖစ္ေသာ a ၏ တန္ဖိုးကို လိုအပ္သလို လွည့္စားေျပာင္းလဲတြက္ခ်က္နိုင္ ျခင္း
ကို ဆိုလိုသည္။
ပရိုဂရမ္သဒၵါ

programming language မ်ားလည္း သဒၵါဆိုတာ ရွိသည္။ ဆိုလိုသည္မွာ ပရိုဂရမ္၏
အမိန့္စာေၾကာင္းမ်ားကို ေရးသားရာတြင္ စည္းစနစ္မွန္ကန္မႈ အဓိကလိုအပ္ပါသည္။

မိမိေရးသားေသာ ပရိုဂရမ္တြင္ စဥ္းစားတြက္ခ်က္နည္းစနစ္မွန္ကန္ေသာ္လည္း မိမိအ
သံုးျပုေသာပရိုဂရမ္၏ သဒၵါစည္းစနစ္မွန္ကန္မႈမရွိခဲ့ပါက မိမိ၏ ခိုင္းေစေသာ အမိန့္စာ
ေၾကာင္းပါ အမိန့္မ်ားအတိုင္း ကြန္ျပဴတာက အလုပ္လိုက္ လုပ္ေပးမည္မဟုတ္ပါ။ Prog-
ramming Language မ်ားစြာထဲမွ C++(C double plus) ဟုေခၚေသာ programmi-
ng Language တစ္ခုကိုက်ေနာ္တို႕စၿပီးေလ့လာၾက ရေအာင္။

C++ programming language ျဖစ္ေပၚလာပံု သမိုင္းေၾကာင္းကိုေတာ့ မေရးေပးေတာ့
ပါဘူး။ သမိုင္းေၾကာင္းကို ေလ့လာျခင္း မဟုတ္သည့္အတြက္ အဓိကထားၿပီး မရွင္းျပနိုင္
ျခင္း ျဖစ္ပါတယ္။

ပထမဦးစြာ က်ေနာ္ေတာ္တို့ programming language တြင္ အသံုးအမ်ားဆံုး စကား
လံုးမ်ားကို နားလည္ေအာင္ ဖတ္ရႈပါ့မယ္။သတိျပဳရန္- အမိန္႕စာေၾကာင္းမ်ား မဟုတ္။
အေခၚအေဝၚမ်ားသာျဖစ္သည္။

♠ Data types(မိမိအသံုး အျပဳ လိုေသာ အခ်က္အလက္မ်ား အမ်ဳိးအစားမ်ား။ ဥပမာ
(ကိန္းဂဏန္းအမ်ိုးအစားလား(သို့)ဗ်ည္းအကၡရာလား စသည္ျဖင့္)။

♠ Keyword (အေရးပါေသာ စကားလံုး(သို့) ၎ Language တြင္ လိုအပ္သလို ထည့္
သြင္းသံုးစြဲခြင့္ ရွိေသာ စကားလံုး။၎စကားလံုးမ်ားတြင္ ကိုယ္ပိုင္လုပ္ေဆာင္မႈမ်ား စြမ္း
ေဆာင္နိုင္မႈမ်ား ရွိသည္။

♠ Operator (ပရိုဂရမ္အတြင္းသံုး သခၤ်ာပိုင္းဆိုင္ရာ တြက္ခ်က္မႈ သေကၤတ အသံုးအႏူန္း
မ်ား)။

♠ Expression (အသံုးအနံႈးမ်ားသတ္မွတ္ျခင္း (သို႕) အတိအလင္း ျဖစ္ျခင္း)။
♠ Logical (ယုတၱိတန္ေသာ။(သို႕) အမွား၊အမွန္ ခြဲျခားနိုင္ေသာ)။
♠ British (ကြန္ျပဴတာသံုး အေသးဆံုးယူနစ္တြက္နည္းမ်ား)။
♠ Arithmetic (ဂဏန္းသခၤ်ာနွင့္ဆိုင္ေသာ)။
♠ Relational (ဆက္သြယ္မႈ၊ ဆက္စပ္မႈ၊နွိုင္းယွဉ္ျခင္း)။
♠ Assignment (ေရးပံုေရးနည္းစနစ္)။
♠ Single quote (အဖြင့္အပိတ္(‘a’))။
♠ Double quote (အဖြင့္အပိတ္(“a”))။
♠ Conditional (အေျခ အေနတစ္ရပ္ကို မူတည္ေသာ။ အေျခအေနအရ ျဖစ္ေသာ။)။
♠ Statement ( ေရးသားပံု။စာေၾကာင္း)။
♠ Syntax (ပရိုဂရမ္၏ အမိန္႕စာေၾကာင္းမ်ား ေရးသားတည္ေဆာက္ပံု(သို႕) စာေၾကာင္း အထားအသိုပံုစံ)။
♠ Variable (ေျပာင္းလဲနိုင္ေသာအရာ။ ကိန္းရွင္။)။
♠ Identifier (ေရြးထုတ္သည္။ ခြဲျခားနိုင္သည္။ေဖာ္ထုတ္နိုင္သည္။)
♠ Expression (ကိန္းေသမ်ား၊ ကိန္းရွင္မ်ားနွင့္ အျခားေသာ အခ်က္အလက္မ်ားကို Operator နွင့္ ဆက္စပ္ထား ျခင္းျဖစ္သည္၎ အေနအထားအား ေျဖရွင္းလိုက္ပါက တန္ဖိုးတစ္ခုခု (သို႕) အေျခအေနတစ္ရပ္ ျဖစ္ေပၚေစမွာ ျဖစ္သည္။ တနည္းအားျဖင့္ အေျဖတစ္ခုရေအာင္ Program နည္းလမ္းက်က် ဖြဲ့စည္းတည္ေဆာက္ထားေသာ ေဖၚျမဴလာပံုေသနည္းျဖစ္သည္။
♠ Default (အတိအက် (သို)့ ေျပာင္းလဲနိုင္စြမ္း မရွိ)

ပရိုဂရမ္မာမ်ားအတြက္ လွ်ိဳ႕၀ွက္ခ်က္မ်ား

Programming နဲ႕ပက္သက္ျပီး ေလ့ေလာေနဆဲျဖစ္တဲ့ Beginner မ်ား သိထားသင့္တဲ့ လွိ်ဳ႕၀ွက္ခ်က္အခ်ိဳ႕ကို ေျပာျပခ်င္ပါတယ္။ ဒီလွ်ိဳ႕၀ွက္ခ်က္ေတြကို မသိလို႕ လမ္းေပ်ာက္ေနသူ၊ စိတ္ပ်က္ေနသူ ပရိုဂရမ္မာ အမ်ားအျပားကို ေတြ႕ဖူးတဲ့အတြက္ အခုလိုေျပာျပရျခင္း ျဖစ္ပါတယ္။ တစ္ခ်ိဳ႕လည္း ပရိုဂရမ္ေရးစားတာထက္ အင္တာနက္ဆုိင္မွာ လုပ္တာကမွ ပိုက္ဆံရေသးတယ္လို႕ ေျပာေနၾကသလို တစ္ခိ်ဳ႕လည္း ကြန္ျပဴတာတကၠသိုယ္ေတြတက္၊ သင္တန္းေတြတက္ျပီး အခ်ိန္ေတြ ေငြေတြသာ ကုန္လာတယ္ ဘာမွမျဖစ္လာလို႕ဆိုျပီး နယ္ျပန္ ေစ်းေရာင္းေတာ့မယ္ေျပာေနတာေတြ ေတြ႕ဖူးေနပါတယ္။

ဒါေတြဟာ အခုေျပာမယ့္ လွ်ိဳ႕၀ွက္ခ်က္ေတြကို မသိလို႕ ျဖစ္ေနတဲ့ ျပႆနာေတြျဖစ္ပါတယ္။ ဒီလွ်ိဳ႕၀ွက္ခ်က္ေတြကို မသိထားရင္ ပရိုဂရမ္မာတစ္ေယာက္အဖို႕ ရပ္တည္ဖို႕ေတာင္ ခက္ခဲတက္ေပမယ့္၊ သိထားမယ္ဆိုရင္ေတာ့ ပရိုဂရမ္မာဆိုတာဟာ အေကာင္းဆံုး Career လမ္းေၾကာင္းတစ္ခု ျဖစ္လာမွာပါ။ လွိ်ဳ႕၀ွက္ခ်က္ေတြလို႕ ေျပာေပမယ့္ ျဖတ္လမ္းေတြ၊ Cheat ေတြ မဟုတ္ပါဘူး။ ဘယ္အရာမွာမွ ျဖတ္လမ္းဆိုတာ မရွိပါဘူး။ မွန္ကန္တဲ့နည္းလမ္း ဆိုတာပဲ ရွိပါတယ္။

တစ္ခုနဲ႕တစ္ခု ဆက္စပ္ေနတဲ့ လွ်ိဳ႕၀ွက္ခ်က္ (၃) ခုအေၾကာင္းကို ေျပာျပခ်င္ပါတယ္။ ပထမတစ္ခုက အလုပ္ရလြယ္ကူေစမယ့္ လွ်ိဳ႕၀ွက္ခ်က္ေတြျဖစ္ပါတယ္...

အလုပ္ရလြယ္ကူေစမည့္ လွ်ိဳ႕၀ွက္ခ်က္မ်ား

လွ်ိဳ႕၀ွက္ခ်က္ေတြကို မေျပာခင္ လက္ရွိ Software Industry မွာ ၾကံဳေတြ႕ေနရတဲ့ အလုပ္အကိုင္အခြင့္အလမ္းအေျခအေနေတြကို အရင္ေျပာခ်င္ပါတယ္။

ကြ်န္ေတာ္နဲ႕သိတဲ့ လုပ္ငန္းရွင္တစ္ခ်ိဳ႕ကို "ခင္ဗ်ားတို႕ဆီမွာ 'လူ' မလိုဘူးလား" လို႕ ေမးၾကည့္ျဖစ္ပါတယ္။ သူတို႕ျပန္ေျပာတာက "လိုတာေပါ့ဗ်ာ... 'တစ္ကယ္' လုပ္ႏုိင္တဲ့သူရွိရင္ လႊတ္လိုက္စမ္းပါ” လို႕ ျပန္ေျပာေလ့ရွိပါတယ္။ လုပ္ငန္းေတြအေနနဲ႕ အမွန္တစ္ကယ္ လုပ္ႏုိင္တဲ့သူေတြ အျမဲလိုအပ္ေနတာကို ေတြ႕ရပါတယ္။ ဒါနဲ႕ တစ္ျပိဳင္နက္ထဲမွာ လူငယ္ေတြဆီက -- "အလုပ္ေလးမ်ားရွိရင္ ေျပာပါဦး... အလုပ္ရွာရခက္လြန္းလို႕” ဆိုတဲ့ အသံေတြကိုလည္း ၾကားေနရပါတယ္။ လုပ္ငန္းေတြဘက္က အျမဲတမ္း 'လူ' လိုေနတဲ့အခ်ိန္မွာ လူငယ္ေတြအတြက္ အလုပ္ရွာရခက္ေနတယ္ဆိုေတာ့ ဒီၾကားထဲမွာ တစ္ခုခုလြဲေနပါျပီ။

ဒါဟာ ကြန္ျပဴတာေလာကမွာ လက္ရွိျဖစ္ေနတဲ့ အျဖစ္အပ်က္ပဲ ျဖစ္ပါတယ္။ ဒီလို ဘာေၾကာင့္ ျဖစ္ေနလည္းဆိုတာကို ကြ်န္ေတာ္ နားလည္းထားတဲ့အတုိင္း ရွင္းျပခ်င္ပါတယ္။

ကြန္ျပဴတာတကၠသိုလ္ေတြနဲ႕ သင္တန္းေတြကေန ကြန္ျပဴတာသိပၸံဘြဲ႕ရေတြ၊ ႏုိင္ငံတကာ အသိအမွတ္ျပဳ ကြန္ျပဴတာဘြဲ႕ရဆိုသူေတြ တစ္ႏွစ္ တစ္ႏွစ္ကို မနည္းဘူး ေမြးထုပ္ေပးေနပါတယ္။ ေက်ာင္းဆင္းျပီး ဘြဲ႕ရလာေသာ္ျငားလည္း အဲ့ဒီေက်ာင္းသားေတြဟာ လက္ေတြ႕လုပ္ငန္းခြင္၀င္ဖို႕ အသင့္မျဖစ္ေသးဘူးဆိုတာ အေသအခ်ာပါပဲ။ ေက်ာင္းသားေတြရဲ႕ ပထမဦးဆံုးအမွားက "ငါ ေက်ာင္းဆင္းျပီး ဘြဲ႕ရလာျပီ၊ အလုပ္လုပ္ေတာ့မယ္” လို႕ ဆံုးျဖတ္ခ်င္းပဲျဖစ္ပါတယ္။ ဒါဟာ ဘာနဲ႕တူလဲဆိုရင္ ေရကူးနည္းစာအုပ္ဖတ္ျပီး ငါ ေရကူးလို႕ရျပီဆိုျပီး ေရထဲခုန္ခ်တာနဲ႕ တူေနပါတယ္။ ဒါကိုေသခ်ာသေဘာမေပါက္လို႕ လုပ္ငန္းခြင္၀င္ဖို႕အသင့္မျဖစ္ေသးတဲ့ ေက်ာင္းသားေတြ ပံုေနတာ ျဖစ္ပါတယ္။

လူၾကီးမိဘတစ္ခ်ိဳ႕ရဲ႕ အျပစ္လည္း ပါ ပါတယ္။ "ဘာ... သင္တန္းတက္ခ်င္တယ္ ဟုတ္လား... (၃)ႏွစ္ေတာင္ ေက်ာင္းတက္လာျပီးမွ သင္တန္းထပ္တက္ဦးမယ္ဆိုေတာ့ မင့္ဟာက မလြန္လြန္းဘူးလား... သြား အလုပ္ရွာေတာ့... ဒီေလာက္ပညာေတြသင္လာျပီးမွ အလုပ္ေလးတစ္ခုေတာင္ ျဖစ္ေျမာက္ေအာင္ မရွာႏုိင္ဘူးဆိုရင္ ေတာ္ေတာ္အသံုးမက်တာပဲ...” လို႕ ေျပာတာမ်ား ၾကားဖူးၾကပါသလား... “ဘာ... တစ္လ ေလးေသာင္းဟုတ္လား... ရပ္ကြက္ထဲက ဘတ္စ္ကားစပါယ္ယာေတာင္ တစ္ေန႕ ေလး၊ ငါးေထာင္ ရတယ္... မင္းသင္လာတဲ့ ကြန္ျပဴတာဆိုတဲ့ ပညာက ဒီေလာက္ပဲတန္သလား...” လို႕ ၾကိမ္းေမာင္းတာေတြေကာ ၾကားဖူးၾကပါသလား... ဒါေတြဟာ လူၾကီးမိဘေတြရဲ႕ မသိနားမလည္မွဳေၾကာင့္ျဖစ္ျပီး ကေလးေတြဘက္ကလည္း ဒီလိုအေျပာခံရဖန္မ်ားေတာ့ စိတ္ဓါတ္ေတြက်ျပီး လမ္းေၾကာင္းမွန္ကို မေရြးခ်ယ္ႏုိင္ေအာင္ ျဖစ္ၾကရပါတယ္။ ပညာမစံုမလင္နဲ႕ CV ေလးေတြကိုင္ျပီး အလုပ္ေလွ်ာက္ရွာေတာ့တာပါပဲ။ မရတဲ့အခါမွာ ေစာေစာကေျပာခဲ့သလို နယ္ျပန္ ေစ်းေရာင္းရမလား စဥ္းစားတဲ့ ဘ၀ ေရာက္ကုန္ရတာျဖစ္ပါတယ္။

အမွန္ေတာ့ ေက်ာင္းေတြ သင္တန္းေတြက သင္မေပးႏုိင္တာေတြအမ်ားၾကီးရွိပါတယ္။ ဥပမာ -

* Coding ဆိုတာ Software Development တစ္ခုလံုးရဲ႕ ၂၀% ေလာက္ပဲ ရွိတယ္
* Customer ဆိုတာမ်ိဳးက စိတ္ကူးပဲ ရွိျပီး သူတို႕ဘာလိုခ်င္လဲဆိုတာ အေသးစိတ္ကို သူတို႕ကိုယ္တုိင္ (ဘယ္ေတာ့မွ) မသိဘူး
* လက္ေတြ႕ေလာကမွာ Customer က နံပါတ္တစ္ပဲ
* Bug မရွိတဲ့ Software ဆိုတာမရွိဘူး
* စာရြက္ေပၚမွာခ်ထားတဲ့ Plan ေတြ Design ေတြဟာ လက္ေတြ႕မွာ အသံုးမ၀င္ဘူး
* ျပီးမယ္လို႕ ေမွ်ာ္လင့္ထားတဲ့ အခ်ိန္အတြင္း အခ်ိန္မွီေအာင္ျပီးတဲ့ Software ဆိုတာ မရွိသေလာက္ရွားတယ္

စတဲ့အခ်က္ေတြဟာ ဘယ္ေက်ာင္း၊ ဘယ္သင္တန္းကမွသင္မေပးႏုိင္တဲ့အရာေတြျဖစ္ပါတယ္။ ေနာက္ထပ္လည္း ဒါမ်ိဳးေတြ အမ်ားၾကီးက်န္ပါေသးတယ္။ ဒါေတြကို ထိုက္သင့္တဲ့ လက္ေတြ႕ အေတြ႕အၾကံတစ္ခ်ိဳ႕ရွိလာျပီးမွသာနားလည္လာမွာျဖစ္ပါတယ္။ ဒါေၾကာင့္ မယံုမရွိပါနဲ႕။ ေက်ာင္းဆင္းလာစသူေတြဟာ လက္ေတြ႕ လုပ္ငန္းခြင္မွာ အသံုးမ၀င္ေသးပါဘူး။ အသင့္မျဖစ္ေသးပါဘူး။

လုပ္ငန္းေတြအေနနဲ႕ကလည္း အဲ့ဒီလို အသံုးမ၀င္ေသးတာကို သိေနတဲ့အတြက္ အလုပ္အေတြ႕အၾကံဳမရွိတဲ့သူဆိုရင္ မခန္႕တာပါ။ အမွန္ေတာ့ သူတို႕လိုခ်င္တာ "အရင္က တစ္ျခားမွာ အလုပ္လုပ္ဖူးတယ္" ဆိုတာၾကီးကို လိုခ်င္တာမဟုတ္ပါဘူး။ "Software Development ကို အမွန္တစ္ကယ္နားလည္ျပီး လက္ေတြ႕အေတြ႕အၾကံဳ အထုိက္အေလွ်ာက္ရွိတယ္" ဆိုတာကို လိုခ်င္တာပါ။

ဒါေၾကာင့္ အလုပ္ရလြယ္ေစမယ့္ ပထမဦးဆံုးလွ်ိဳ႕၀ွက္ခ်က္ကို ေျပာပါမယ္။ အဲ့ဒါကေတာ့...

“သက္ဆုိင္ရာ ပညာရပ္ကို အမွန္တစ္ကယ္ တက္ကြ်မ္းထားျခင္းျဖစ္ပါတယ္”

အဟုတ္ေျပာတာပါ။ ေနာက္တာမဟုတ္ပါဘူး။ ဒါဟာ သိသိနဲ႕ နားမလည္ခ်င္ေယာင္ေဆာင္ေနၾကတဲ့ အခ်က္ျဖစ္ပါတယ္။ ဒီအခ်က္ကို အမွန္အတိုင္းနားလည္လက္ခံထားဖို႕ လိုပါတယ္။

တစ္ကယ္မကြ်မ္းက်င္ပဲနဲ႕ေတာ့ ဘယ္လိုမွ အလုပ္လြယ္လြယ္ရမွာမဟုတ္ပါဘူး။ ကံေကာင္းျပီးရလဲ ခဏပါပဲ။ လက္ေတြမွာ တစ္ကယ္မတက္ေတာ့ ျပဳတ္ရင္လည္းျပဳတ္မယ္၊ မျပဳတ္ရင္လည္း ကုိယ့္ဟာကိုယ္ စိတ္ညစ္ျပီး ထြက္မွာပါပဲ။ အဲ့ဒါဆိုရင္ ပိုဆိုးသြားမယ္။ ကိုယ့္ကိုယ္ကိုလည္း ယံုၾကည့္မွဳေလ်ာ့က်မယ္။ အဲ့ဒီအလုပ္မွာလည္း ေနာက္တစ္ေခါက္ထပ္ေလွ်ာက္လို႕ မရေတာ့တဲ့အတြက္ အလုပ္အကိုင္အခြင့္အလမ္းတစ္ခုပိတ္မယ္။ ဒါေၾကာင့္ အလုပ္လုပ္မယ္စိတ္မကူးခင္ တစ္ကယ္လုပ္ႏုိင္ျပီလား ကိုယ့္ကုိယ္ကုိ အရင္ေမးဖို႕လိုပါတယ္။ ထပ္ေျပာပါဦးမယ္ ေက်ာင္းမွာသင္ထားတာေလးေလာက္နဲ႕ေတာ့ တက္ျပီလို႕ မထင္ပါနဲ႕ဦး။ သင္တန္းေပါင္း ေသာင္းေျခာက္ေထာင္ေလာက္ တက္ထားယံုနဲ႕လည္း မတက္ေသးပါဘူး။

တစ္ကယ္ကြ်မ္းက်င္တဲ့ သူတစ္ေယာက္အတြက္ေတာ့ ဘယ္ေတာ့မွ အလုပ္ရဖို႕ မခက္ပါဘူး။

ဒါဆိုရင္ တစ္ကယ္ကြ်မ္းက်င္ေအာင္ ဘယ္လိုလုပ္ရမလဲ?

အဲ့ဒါကို မၾကာခင္ကြ်န္ေတာ္တို႕ေျပာေတာ့မွာပါ။ ေလာေလာဆယ္ ၾကားျဖတ္ျပီး အလုပ္ရလြယ္ေစတဲ့ ေနာက္ထပ္လွိ်ဳ႕၀ွက္ခ်က္တစ္ခု ကိုအရင္ေျပာခ်င္ပါတယ္။ အဲ့ဒါကေတာ့...

“ကိုယ့္အေၾကာင္း လူေတြသိေနေအာင္ လုပ္ထားျခင္းပဲျဖစ္ပါတယ္”

ကိုယ့္အေၾကာင္းကို လူေတြသိထားမွ ကိုယ္ဘာတက္လဲ၊ ဘာလုပ္ႏုိင္လဲဆိုတာ လူေတြ (တနည္းအားျဖင့္ အလုပ္ရွင္ေတြ) သိမွာပါ။ ဒီေတာ့မွ ကိုယ္နဲ႕ သင့္ေတာ္တဲ့အလုပ္ရွိလာတဲ့အခါ ကိုယ့္အတြက္ အခြင့္အလမ္းျဖစ္လာမွာျဖစ္ပါတယ္။တစ္ခ်ိဳ႕ မိမိအရည္အခ်င္းကို မိမိသိရက္နဲ႕ အင္တာဗ်ဴးေျဖတာမကြ်မ္းက်င္လို႕၊ကိုယ့္အရည္အခ်င္းကို မျပလိုက္ရလို႕ အလုပ္မရလိုက္ပါဘူးဆိုတဲ့သူမ်ား ဒီအခ်က္ကို သတိထားသင့္ပါတယ္။ ကိုယ္နဲ႕ အမွန္တစ္ကယ္ထုိက္တန္တဲ့ အလုပ္ေတြရဖို႕ ကိုယ့္အေၾကာင္း လူမ်ားႏုိင္သမွ်မ်ားမ်ား သိေနေအာင္ လုပ္ထားသင့္ပါတယ္။

အမ်ားစုကေတာ့ ကိုယ့္အေၾကာင္းလူေတြသိဖို႕ Certificate ေတြကို အသံုးျပဳၾကပါတယ္။ Certificate ဆိုတာဟာ လူတစ္ေယာက္ သက္ဆုိင္ရာနယ္ပယ္မွာ အမွန္တစ္ကယ္ တက္ကြ်မ္းေၾကာင္းေထာက္ခံခ်က္လက္မွတ္ျဖစ္ပါတယ္။ ဒါေပမယ့္ ကြ်န္ေတာ္တို႕ဆီမွာ Certificate တစ္ခု ရဖို႕ဆိုတာ သိပ္လြယ္ပါတယ္။ အဲ့ဒီ Certificate ေတြကို စာေမးပြဲေျဖျခင္းအားျဖင့္ ရႏုိင္ပါတယ္။ အဲ့ဒီလိုစာေမးပြဲေျဖတဲ့အခါမွာ အမွတ္ျပည့္နဲ႕ေအာင္ျပီး လက္မွတ္ရဖို႕အတြက္ နည္းလမ္းေတြရွိပါတယ္။ ပြင့္ပြင့္လင္းလင္းေျပာရရင္ တစ္ကယ္မတက္ပဲနဲ႕လည္း ကြ်မ္းက်င္ေၾကာင္း လက္မွတ္ေတြကိုရႏုိင္ေနပါတယ္။

ဒီေနရာမွာ အေပၚမွာေျပာခဲ့တဲ့ျပႆနာ ျပန္ေပၚလာပါတယ္။ အမွန္တစ္ကယ္ မတက္ကြ်မ္းပဲနဲ႕ ကြ်မ္းက်င္ေၾကာင္း လက္မွတ္ေတြယူထားတဲ့အခါ အလုပ္ရဖို႕အခြင့္အလမ္းေတာ့ နည္းနည္း ပိုမ်ားလာပါတယ္။ ဒါေပမယ့္ လက္ေတြ႕လုပ္ငန္းခြင္ေရာက္တဲ့အခါ တစ္ကယ္မလုပ္ႏုိင္လို႕ ျပန္ျပဳတ္တာေတြ၊ မႏုိင္၀န္ကိုထမ္းမိသလိုျဖစ္ျပီး လုပ္ငန္းခြင္စိတ္ဖိစီးမွဳ၀င္လာတာေတြျဖစ္လာျပီ ကိုယ္ကိုယ္တုိင္ပဲ နစ္နာရတက္ပါတယ္။

ဒီလိုေျပာလို႕ တက္ကြ်မ္းေၾကာင္းသက္ေသခံဖို႕အတြက္ Certificate ေတြကို အသံုးမျပဳသင့္ဘူးလို႕ ေျပာတာမဟုတ္ပါဘူး။ သက္ဆုိင္ရာနယ္ပယ္အတြက္ ကြ်မ္းက်င္ေၾကာင္း Certificate ယူထားတာနဲ႕တစ္ျပိဳင္နက္ အဲ့ဒီနယ္ကို အမွန္တစ္ကယ္ ကြ်မ္းက်င္ေနဖို႕ လိုအပ္တယ္ လို႕ ဆိုလိုတာျဖစ္ပါတယ္။

Certificate ေတြရွိထားျခင္းအားျဖင့္ အလုပ္အကိုင္အခြင့္အလမ္း ပိုေကာင္းလာတယ္ဆိုတဲ့အခ်က္ဟာ ျငင္းလို႕မရတဲ့ အမွန္ျဖစ္ပါတယ္။ ဒါေၾကာင့္လည္း ျပည္ပသြားအလုပ္လုပ္ေတာ့မယ့္သူတုိင္း Certificate ရဖို႕ စာေမးပြဲေတြ အေျပးအလႊားေျဖျပီးမွ သြားၾကတာျဖစ္ပါတယ္။ ဟိုေရာက္တဲ့အခါလည္း လက္ေတြ႕အသံုး၀င္တာကို ေတြ႕ရပါတယ္။ Certificate ေတြ ဘယ္ေလာက္ ေပါေပါေလာေလာရႏုိင္ေနပါေစ၊ ပိုက္ဆံေပး၀ယ္လို႕ ရတဲ့အမ်ိဳးေတာ့ မဟုတ္ပါဘူး။ အနည္းဆံုး စာေမးပြဲေတာ့ေျဖရပါတယ္။ လက္မွတ္ရထားျပီဆိုတာနဲ႕ အဲ့ဒီနယ္ပယ္ကို အမွန္တစ္ကယ္ မကြ်မ္းက်င္ရင္ေတာင္မွ တီးမီးေခါက္မိေတာ့ ရွိထားတယ္လို႕ သတ္မွတ္လို႕ရႏုိင္ပါတယ္။ ဒါေၾကာင့္လည္း လုပ္ငန္းရွင္ေတြအေနနဲ႕ Certificate ရွိထားတဲ့လူနဲ႕ မရွိထားတဲ့လူ ႏွစ္ေယာက္မွာ တစ္ေယာက္ကိုေရြးျပီး အင္တာဗ်ဴးရမယ္ဆိုရင္ ရွိထားတဲ့သူကိုပဲ ေရြးမွာျဖစ္ပါတယ္။

ဒါေၾကာင့္ Certificate ေတြရွိထားျခင္းဟာ ကိုယ္အေၾကာင္းကို လူေတြသိေအာင္လုပ္နည္းေတြထဲက တစ္ခုပဲျဖစ္ပါတယ္။

ကိုယ့္အေၾကာင္းလူေတြသိေအာင္လုပ္လို႕ရတဲ့ ေနာက္ထပ္ နည္းလမ္းတစ္ခုကေတာ့ (သက္ဆုိင္ရာနယ္ပယ္မွာ က်င္လည္ေနတဲ့) အေပါင္းအသင္းမိတ္ေဆြ ေပါမ်ားျခင္းပဲျဖစ္ပါတယ္။ ဒီလိုအေပါင္းအသင္းမိတ္ေဆြေတြကို ေက်ာင္းေတြမွာ ရွာလို႕ရပါတယ္။ ဒါေၾကာင့္ ကြန္ျပဴတာတကၠသိုလ္ (သို႕မဟုတ္) လူအမ်ားၾကီးတက္တဲ့ နာမည္ၾကီးသင္တန္းေတြမွာ တက္ေရာက္ေနတဲ့ ေက်ာင္းသားေတြအေနနဲ႕ ဒီအခ်က္ကိုနားလည္ထားျပီး ေနာင္တစ္ခ်ိန္မွာ Professional ျဖစ္လာမယ့္ အေပါင္းအသင္းမိတ္ေဆြ မ်ားမ်ားရေအာင္လုပ္ထားသင့္ပါတယ္။ ဒါဟာ ေက်ာင္းကသင္ေပးတဲ့ ပညာေတြလိုပဲ တန္းဖိုးရွိတဲ့ အရာ ျဖစ္ပါတယ္။ ဒီမိတ္ေဆြေတြက တစ္ခ်ိန္မွာ ကိုယ္နဲ႕သင့္ေတာ္တဲ့အလုပ္ေတြ႕တဲ့အခါ အသိေပးႏုိင္သလို ကိုယ္ဘာတက္လဲဆိုတာကိုလည္း ေထာက္ခံေပးျခင္းအားျဖင့္ အကူအညီေပးႏုိင္ပါလိမ့္မယ္။ ဒါနဲ႕ပက္သက္ျပီး သိပ္အမ်ားၾကီးေျပာစရာမလိုပါဘူး။အဆက္အသြယ္ေကာင္းရွိထားျခင္းဟာ အစစအရာရာလြယ္ကူေစတယ္ဆိုတာကို လူတုိင္းသိထားျပီးသားပါ။

ေနာက္ထပ္ အလြန္ေကာင္းမြန္တဲ့ နည္းတစ္ခုလည္း ရွိပါေသးတယ္။ ကေန႕ေခတ္ဟာ အင္တာနက္ေခတ္ျဖစ္တဲ့အတြက္ေၾကာင့္မို႕လို႕ မိမိအေၾကာင္း လူေတြသိေနေအာင္ အင္တာနက္ကို အသံုးခ်လို႕ရပါတယ္။ ဒါကို Online Identity တစ္ခု တည္ေဆာက္တယ္လို႕ ေခၚခ်င္ပါတယ္။ Software ေရးတဲ့အလုပ္ကို Professional အျဖစ္လုပ္မယ္လို႕ စိတ္ကူးထားသူတုိင္း Online Identity တစ္ခု (မျဖစ္မေန) ရွိထားသင့္ပါတယ္။

အင္တာနက္မွာရွိတဲ့ Professional Community ေတြမွာ တက္ၾကြစြာ ၀င္ေရာက္ပါ၀င္ျခင္းျဖင့္ မိမိရဲ႕ Online Identityကို တည္ေဆာက္လို႕ရပါတယ္။ Facebook လို Social Network ေတြကလည္း ကိုယ့္အေၾကာင္း လူေတြသိေအာင္ တစ္နည္းအားျဖင့္ ကူညီေပးႏုိင္ပါတယ္။ ဒါေပမယ့္လည္း Facebook ဟာ ရိုးရိုး Social Community မွ်သာျဖစ္တဲ့အတြက္ သိပ္မေလးနက္ပါဘူး။ သက္ဆုိင္ရာနယ္ပယ္အတြက္ အထူးျပဳဖြဲ႕စည္းထားတဲ့ Professional Community က ပိုထိေရာက္ပါတယ္။

ဒီေနရာမွာ IT နဲ႕ပက္သက္ျပီး အလုပ္လုပ္ေနတဲ့ ျမန္မာလူမ်ိဳးတုိင္းအတြက္ အေကာင္းဆံုး Professional Community တစ္ခုျဖစ္တဲ့ Myanmar IT Pro ကို မိတ္ဆက္ေပးခ်င္ပါတယ္။ အဲ့ဒီ Community မွာ လူေပါင္းစံုရွိပါတယ္။ ကြန္ျပဴတာလုပ္ငန္းရွင္ေတြပါသလို၊ သက္ဆုိင္ရာနယ္ပယ္မွာ တစ္ဖက္ကမ္းခတ္ကြ်မ္းက်င္တဲ့ Professional ေတြလည္းရွိပါတယ္။ ေလ့လာဆဲ ေက်ာင္းသားေတြရွိသလို သူတုိ႕ကိုကူညီေနတဲ့သူေတြလည္း ရွိပါတယ္။ ျပည္တြင္းျပည္ပမွာ ျပန္႕ႏွံ႕ေနတဲ့ ျမန္မာလူမ်ိဳး အုိင္တီသမားေတြအတြက္ အေတာ္ေကာင္းမြန္တဲ့ Community တစ္ခုျဖစ္ပါတယ္။

ကိုယ့္အေၾကာင္း လူေတြသိဖို႕ Professional Community ေတြက ဘယ္လို ကူညီလည္းဆိုတာကို ကြ်န္ေတာ့္ကိုယ္ကြ်န္ေတာ္ ဥပမာထားျပီးေျပာခ်င္ပါတယ္။ ကြ်န္ေတာ္ဟာ Myanmar IT Pro မွာ Web Development နဲ႕ Open-source အေၾကာင္းကို တစ္စိုက္မတ္မတ္ေျပာဆိုေဆြးေႏြးလာခဲ့တာ ၾကာပါျပီ။ အခုခ်ိန္မွာဆိုရင္ အဲ့ဒီ Community မွာရွိေနတဲ့လူအားလံုး (လုပ္ငန္းရွင္ေတြနဲ႕ ျပည္ပေရာက္ပညာရွင္ေတြအပါအ၀င္) ကြ်န္ေတာ္ Web Site ေရးတက္ေၾကာင္း သိေနၾကပါတယ္။ ဒီလိုသိထားတ့ဲအတြက္ သူတို႕မွာ Web Site ေရးဖို႕အတြက္ အလုပ္ေတြရွိတဲ့အခါ ေရးေပးဖို႕ အပ္ၾကပါတယ္။ လူခ်င္းမျမင္ဖူးေပမယ့္ ကြ်န္ေတာ္ဘာလုပ္ႏုိင္လဲဆိုတာကို လူေတြသိေနၾကပါတယ္။ ဒီလိုနဲ႕ လုပ္ခြင့္ရခဲ့တဲ့အလုပ္ေတြ မနည္းပါဘူး။ ျပီေတာ့ အခုအခ်ိန္မွာ ကြ်န္ေတာ္ကသာ Web Development နဲ႕ပက္သက္ျပီး အလုပ္လိုခ်င္ရင္ လုပ္ငန္းရွင္ေတြအေနနဲ႕ ကြ်န္ေတာ့္ကို "တစ္ကယ္တက္ရဲ႕လား" လို႕ ေမးခြန္းထုပ္ေနမွာမဟုတ္ပါဘူး။ ဒါဟာ Professional Community မွာ ကိုယ့္ရဲ႕ Identity ကို တည္ေဆာက္ထားျခင္းအားျဖင့္ ရရွိလာတဲ့အက်ိဳးျဖစ္ပါတယ္။

ျပည္တြင္းအလုပ္အကိုင္အတြက္မဟုတ္ပဲ တစ္ကမၻာလံုးအတိုင္းအတာထိေပါက္ေရာက္ႏုိင္တဲ့ Identity တစ္ခုတည္ေဆာက္ခ်င္တယ္ဆိုရင္လည္း Stack overflow လို Web Site မ်ိဳးေတြ ရွိေနပါတယ္။ Stack overflow ဆိုတာဟာ Programming နဲ႕ပက္သက္တဲ့ ေမးခြန္းေတြ အေမးအေျဖ လုပ္လို႕ရတဲ့ Web Site တစ္ခုျဖစ္ပါတယ္။ အဲ့ဒီ Web Site မွာ ကိုယ္ေမးတဲ့ေမးခြန္းက သိပ္ေကာင္းတယ္ဆိုရင္ အမွတ္ (Reputation) ရပါတယ္။ သူမ်ားေမးတာကို ေျဖမယ္ဆိုရင္လည္း ကိုယ့္အေျဖေကာင္းရင္ေကာင္းသလို အမွတ္ရပါတယ္။ Stack overflow မွာ Reputation ျမင့္ေနတဲ့လူတစ္ေယာက္ကိုလည္း ပရိုဂရမ္ေရးတက္ရဲ႕လားလို႕ ဘယ္သူကမွ ေမးခြန္းထုပ္ေနမွာမဟုတ္ပါဘူး။

ဒါေၾကာင့္ Online Identity တစ္ခုတည္ေဆာက္ထားျခင္းဟာ အလုပ္အကိုင္အခြင့္အလမ္းေကာင္းေတြ ရရွိဖို႕အတြက္ အလြန္ေကာင္းမြန္တဲ့ နည္းလမ္းတစ္ခုျဖစ္တယ္ ဆိုတာကို ေျပာခ်င္ပါတယ္။ ဒါေပမယ့္ သတိခ်ပ္သင့္တာက ဒီနည္းလမ္းဟာ ကြ်မ္းက်င္ျပီးသူေတြအတြက္ အဓိကအားသာတဲ့နည္းလမ္းျဖစ္ပါတယ္။ သက္ဆုိင္ရာနယ္ပယ္မွာ အမွန္တစ္ကယ္ ကြ်မ္းက်င္ဖို႕ကို အရင္လုပ္ရမွာပါ။ [ ... ]

[ အျပည့္အစံုကို Attachment Document တြင္ ဆက္လက္ဖက္ရွဳႏုိင္ပါသည္ ... ]

မွတ္ခ်က္ ။ ။ ဤ Email သည္ Durosoft မွ ေပးပို႕သည့္ သင္တန္းေၾကာ္ျငာျဖစ္ပါသည္။ သို႕ေသာ္ Durosoft ၏ "မူ" အရ၊ လက္ခံရရွိသူအတြက္ မည္သို႕မွ်အက်ိဳးမရွိသည့္ ေၾကာ္ျငာမ်ားကို ေပးပို႕မည္မဟုတ္ပါ။ ထို႕ေၾကာင့္ "ေလ့လာဆဲ Programmer / Web Developer မ်ားအတြက္" အက်ိဳးရွိမည္ဟု ယူဆသည့္ ဂ်ဴလုိင္လထုပ္ Personal Computer Magazine တြင္ ေဖာ္ျပခဲ့သည့္ အထက္ပါ ေဆာင္းပါးကို ထည့္သြင္းေပးပို႕လိုက္ရပါသည္။

ျပန္လည္မွ်ေဝေပးျခင္းမွ်သာ ျဖစ္သည္။

No comments:

Post a Comment