Programming ဘယ္လိုေလ့လာမလဲ

ပုိ႔စ္တင္ခ်ိန္ - 9/27/2013 02:00:00 PM





Programming ကို စိတ္ဝင္စားေပမယ့္ ဘယ္ကေန စလို႔ ဘယ္လို ေလ့လာ ရမွန္း မသိသူမ်ား အတြက္ wikihow က ေဆာင္းပါးကိုပဲ ဆီေလ်ာ္သလို ဘာသာျပန္ေပး လိုက္ရ ပါတယ္။


Decide your goal

Programmer လို႔သာ ေခါင္းစဥ္တပ္လိုက္တာ။ ေရြးစရာလိုင္းေတြက အမ်ားၾကီးပဲ။ Web လား၊ Software လား၊ Desktop Application လား၊ System လား အစရွိသျဖင့္ ေရြးစရာေတြ အမ်ားၾကီးပဲ။ ကိုယ္က စက္ရုပ္ တီထြင္တဲ့ ပညာရွင္ျဖစ္ခ်င္တာလား၊ OS လုပ္ခ်င္တာလား၊ ဖုန္း Application လုပ္ခ်င္တာလား၊ Web application လုပ္ခ်င္တာလား အစရွိသျဖင့္ သီးသန္႔လမ္းေၾကာင္းတစ္ခုကို အရင္ဆံုး Choice လုပ္ရပါအံုးမယ္။ အဲဒါလုပ္ျပီး ပန္းတိုင္ကို ေသခ်ာ ခ်ထားမွ အေကာင္းဆံုး လုပ္ႏိုင္မွာ ျဖစ္ပါတယ္။


Choose a programming language

အကယ္၍ ကိုယ္က Web Programming ကိုေလ့လာမယ္ဆုိရင္ေတာင္ PHP, Java, C++, .Net အစရွိသျဖင့္ ေျပာမကုန္ေအာင္ မ်ားျပားလွတဲ့ Language ေတြ ရွိေနပါေသးတယ္။ တစ္ခုတည္းကို အရင္ဆံုး Specialized လုပ္မွ ေအာင္ျမင္မွာေလ။ ေနရာတစ္ခုေရာက္မွာေလ။ ဒီေတာ့ ကိုယ္သြားခ်င္တဲ့ လမ္းကို ေရြးျပီး ပန္းတိုင္ကို ေသ ေသခ်ာခ်ာ သတ္မွတ္ထားဖို႔ လိုပါတယ္။


Fall in Love in mathematics

ကြန္ျပဴတာနဲ႔ ပက္သက္တဲ့ အလုပ္လုပ္ျပီဆုိရင္ သခ်ၤာကို မခ်စ္လို႔ မရေတာ့ဘူး။ Fibonacci, Floyd triangle, Fourier Seiries အစရွိသျဖင့္ Mathematical series မ်ားကို ထိေတြ႔ထားဖို႔လိုအပ္ပါတယ္။ သခ်ၤာဥာဏ္စမ္း ေလးေတြကိုလည္း အားတဲ့အခ်ိန္တိုင္း ေလ့က်င့္ျပီးေျဖျဖစ္ ရင္ေတာ့ အေကာင္းဆံုးေပါ့။ Programmer ျဖစ္ဖို႔ ဆံုးျဖတ္ လိုက္သူက သခ်ၤာနဲ႔ ခ်စ္သူ ျဖစ္ဖို႔ ခံယူလိုက္သလိုပါပဲ။


Be self-motivated

Rome was not built in a day တဲ့။ ဒီေန႔မွ စလုပ္ျပီး မနက္ဖန္ အကုန္တတ္ျပီလို႔ ဘယ္ေျပာလို႔ရမလဲ။ ဒါကို သိထားျပီး အျမဲတမ္း ကိုယ့္ကိုယ္ကို Motivate လုပ္ေနရ မယ္။ စိတ္အားတက္ၾကြမွု ရွိေနရမယ္။ ယံုၾကည္ခ်က္ လည္း ရွိေနရပါမယ္။


Take your time

မေအာင္ျမင္တဲ့ ပရိုဂမ္မာေတြရဲ ႔ အားနည္းခ်က္က အခ်ိန္မေပးတာပါပဲ။ Error ေတြ႔ေနေပမယ့္ ဒီ Error ကို အေျဖရွာဖို႔အတြက္ ေကာင္းေကာင္း အခ်ိန္မေပးျပီး Project ျပီးဖို႔သာ ေခါင္းခဲျပီး လုပ္ေတာ့၊ အိုင္ဒီယာ ေကာင္း မထြက္တဲ့အျပင္ အမွားလည္းမ်ားပါတယ္။ Problem Solving ဆုိတာ Programming မွာ ဘာသာရပ္တစ္ခုလုိပါပဲ။ Programmer တစ္ေယာက္ဟာ code ေရးတဲ့အခါမွာတင္မကပဲ တကယ့္ လက္ေတြ႔ ဘဝမွာပါ ျပႆနာကို ေခါင္းေအးေအးထား ေျဖရွင္းတတ္သူ တစ္ေယာက္ ျဖစ္လာပါတယ္။ ဒီေတာ့ အခ်ိန္ေပးျပီး လုပ္ဖို႔ေတာ့ လိုအပ္ပါတယ္။


Never Back Down

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


Become a master

Programming Language တစ္ခုမွာ ဆရာက်သြားသူ တစ္ေယာက္ျဖစ္ဖို႔ဆုိ တာ အဲဒါကို အနည္းဆံုး ၂ ႏွစ္ေလာက္ေတာ့ အခိ်န္ေပးရေသးတယ္။ ၁ ႏွစ္ပဲ ၾကိဳးစားထားတဲ့ ရလဒ္က လုပ္ငန္းခြင္ဝင္ႏိုင္တဲ့ level တစ္မခုသာ ရွိေသးျပီး expert မျဖစ္ႏိုင္ပါဘူး။ ၂ ႏွစ္နဲ႔ေကာ္ ဆရာက်ျပီလို႔ ၾကိမ္းေသေျပာလို႔ရပါ့မလား။ ၄ ႏွစ္သာၾကာသြားမယ္။ သူမ်ားခိုင္းတဲ့ ပရိုဂရမ္ေတြ၊ ကုဒ္ေတြပဲ ေရးျပီး ကိုယ္ပိုင္ ပေရာဂ်က္၊ application မ်ား မလုပ္ႏိုင္ေသးရင္ Master တစ္ေယာက္ျဖစ္တ့ဲ ပရိုဂမ္မာလို႔ မဆုိႏိုင္ပါဘူး။


Be a bookworm

ပရိုဂမ္မာေကာင္း တစ္ေယာက္ကလည္း စာဂ်ပိုးပါပဲ။ စားဖတ္အား အျမဲသန္ေနရမယ္။ စာမွာေတာင္မွ Programming တစ္ခုတည္းတင္မကပဲ သုတ၊ ရသ၊ သတင္ အစံုအလင္ အျမဲ စိတ္ဝင္တစား ဖတ္ခ်င္ေန သူ ျဖစ္ရပါမယ္။ ဒါက a must ေတာ့မဟုတ္ပါဘူး။ Optional ပါ။ သုိ႔ေပမယ့္ ပရိုဂမ္မာေကာင္းတစ္ေယာက္ ျဖစ္ဖို႔ စာဖတ္အားေကာင္းဖို႔ေတာင္ recommend ေပးထား ၾကပါတယ္။


Invest on Training Centers

ကိုယ္တစ္ေယာက္တည္း ေလ့လာေနတာ အဆင္မေျပေတာ့ဘူး။ အခ်ိဳ ႔အခ်က္ေတြ နည္းပညာ က်က် သိဖု႔ိ က်ေတာ့ မလြယ္ေတာ့ဘူးဆုိရင္ သင္တန္းတက္ဖို႔ အၾကံေပးပါတယ္။ တစ္ေယာက္တည္း Self Study လုပ္တယ္ ဆုိတာ သူ႔အကန္႔အသတ္နဲ႔ သူရွိပါတယ္။ သင္တန္းတက္တယ္ ဆုိတာ ပညာတစ္ခုတည္း သင္တာ မဟုတ္ပါဘူး။ စီနီယာ ပရိုဂမ္မာမ်ားရဲ ႔ ပေရာဂ်က္မ်ား၊ လုပ္ေဆာင္ခ်က္မ်ား၊ အရည္အခ်င္းမ်ားကို ေလ့လာျခင္း လည္း ပါဝင္ပါတယ္။ ဒါေၾကာင့္ တစ္ေယာက္တည္း ေလ့လာလို႔ ေနရာတစ္ ခုမွာ တစ္ေနရင္ training center ေကာင္းေကာင္းတစ္ခု ေရြးခ်ယ္လုိ႔ Invest လုပ္ဖို႔ Recommend ေပးပါတယ္။

Programmer တစ္ဦး ျဖစ္ဖို႔အတြက္၊ အတန္းပညာ၊ ဘြ႔ဲပညာ တတ္ေနမွ မဟုတ္ပါဘူး။ သခ်ၤာတြက္ခ်က္ဥာဏ္ ရွိျပီး Programmer ျဖစ္ခ်င္စိတ္ ရွိေနရင္ Programmer တစ္ဦး ျဖစ္ႏိုင္ပါျပီ။

ေအာင္ခမ္း ( TSJ Team )
TechSpace Journal