Saturday, August 20, 2016

How to become a Web Developer (First Step)



Web developer တစ္ေယာက္ျဖစ္လာဖို႔ ပထမဆုံး သင့္အေနနဲ႔ web development ဆိုတာ ဘာလဲ အရင္ သိထားသင့္ပါတယ္။ ဒီအသုံအႏွုန္းဟာ ေတာ္ေတာ္ က်ယ္က်ယ္ျပန္႔ျပန္႔ သုံးစြဲေနၾကပါပီ၊ တစ္ေယာက္နဲ႔ တစ္ေယာက္ အဓိပၸါယ္ ဖြင့္ၾကပုံခ်င္းလည္း ကြဲျပားေကာင္း ကြဲျပားနိုင္ပါတယ္။ ေယဘုယ်သေဘာ ေျပာရမယ္ဆိုရင္ web development ဆိုတာ website တစ္ခုရဲ့ နည္းပညာပိုင္းနဲ႔ ပတ္သက္တဲ့ အလုပ္ ျဖစ္ပါတယ္။ ဒါကိုေျပာမယ္ဆိုရင္ web designer ဆိုတာလဲ ခ်န္ထားခဲ့လို႔ မရပါဘူး။ Web designer ဆိုတာဟာလဲ website ရဲ့ မ်က္ျမင္နဲ႔ဆိုင္တဲ့ ပုံပန္းသ႑န္ေတြ အျပင္အဆင္ အခင္းအက်င္းေတြကို ႀကီးၾကပ္ေပးရတဲ့ လူ ျဖစ္ပါတယ္၊ Web Developer က်ေတာ့ ဒီ website ရဲ့ Visual design နဲ႔ layout ေတြကို လွုပ္ရွား အသက္ဝင္လာေအာင္ တကမၻာလုံးကေန ဖြင့္ၾကည့္နိုင္တဲ့ တကယ့္ကို အလုပ္လုပ္တဲ့ website တစ္ခုျဖစ္လာေအာင္ ေဆာင္ရြက္တာျဖစ္ပါတယ္။
မိမိကိုယ္တိုင္ ဆြဲထားတဲ့ website design နဲ႔ မိမိတို႔ကိုယ္တိုင္ website ကို ျပန္ပီး တည္ေဆာက္ၾကရတဲ့ အခါမ်ိဳးမွာေတာ့ web designer ေတြဟာလဲ web developer ျဖစ္တက္ၾကပါတယ္။ Web designer နဲ႔ web developer ဆိုတာကို တခါတေလမွာလည္း ေရာေထြးၿပီး သုံးစြဲေနၾကပါတယ္။ သို႔ေပမဲ့ မတူညီတဲ့ ေဝါဟာရ (၂)ခုျဖစ္ပါတယ္။
တခ်ိဳ႕ web developer ေတြခံယူထားၾကတာက်ေတာ့ သင္ဟာ programming language နဲ႔ပတ္သက္ၿပီး (သို႔) သက္ဆိုင္ရာ နည္းပညာေတြနဲ႔ ပတ္သက္ၿပီး ဆရာမက်ေသးဘူးဆိုရင္ တကယ့္ web developer တစ္ေယာက္ မဟုတ္ေသးဘူးလို႔ ယုံၾကည္ေနၾကတာပဲ၊ သို႔ေပမဲ့ ဒီလို အဆင့္အတန္းခြဲျခားမွုဟာ သူတို႔ရဲ့ အထင္အျမင္ပဲျဖစ္ပါတယ္ လက္ေတြ႕မွာက် အေထာက္အကူ မျဖစ္ပါဘူး။ တကယ္လို႔သာ သင့္ဟာ ကိုယ္နားလည္တက္ေျမာက္ထားၿပီး ျဖစ္တဲ့ အရာ ကိုလည္း ပိုၿပီးေတာ့ ကၽြမ္းက်င္ေအာင္ ၿပီးျပည့္စုံေအာင္ ႀကိဳးစားေနတယ္၊ တဖက္ကလည္း new coding skill ေတြကို ေလ့လာသင္ယူေနတယ္ဆိုရင္ သင္ဟာ တကယ့္ web developer တစ္ေယာက္ပဲလို႔ ယုံၾကည္ထားလိုက္ပါ။
လက္ေတြ႕အားျဖင့္ေတာ့ Website တစ္ခုျဖစ္ေျမာက္သြားေအာင္ အလုပ္လုပ္နိုင္ေအာင္ စြမ္းေဆာင္ေပးတဲ့ မိမိတို႔ရဲ့ ဘယ္လုပ္ေဆာင္ခ်က္ကိုမဆို web development လို႔ ထင္ျမင္ယူဆ နိုင္ပါတယ္။ ဥပမာ- ရိုးရိုးရွင္းရွင္း page တစ္ခုအတြက္ content ေတြ ထည့္သြင္းျခင္းကစလို႔ Themes ေတြဖန္တီးတဲ့ ရွုပ္ေထြးတဲ့ project ေတြလုပ္တာလိုမ်ိဳးထိေပါ့။
Coding Knowledge
HTML နဲ႔ CSS ဟာဆိုရင္ Web development ရဲ့ အေျခခံေတြပဲျဖစ္ပါတယ္။ ဒါေၾကာင့္မို႔ ဒီနည္းပညာ (၂)ခုကို ေကာင္းေကာင္းသိေနဖို႔ လိုပါတယ္။ ေအာင္ျမင္တဲ့ web developer တစ္ေယာက္ျဖစ္ဖို႔ဆိုရင္ေတာ့ သင့္အေနနဲ႔ ဒီထက္ပိုၿပီး သိဖို႔ လိုေကာင္းလိုပါလိမ့္မယ္၊ ဒါေပမဲ့ အနည္းဆုံးေတာ့ ဒီေကာင္(၂)ခုကၽြမ္းက်င္ဖို႔ လိုပါတယ္။ က်န္တာေတြထက္ သူတို႔ (၂)ခု ဘယ္လို ပူတြဲအလုပ္လုပ္ သလဲဆိုတာ နားလည္ဖို႔အေရးႀကီးတယ္။ ေျပာရမယ္ဆိုရင္ HTML ဟာ page တစ္ခု ဘယ္လိုဖြဲ႕စည္းမလဲဆိုတဲ့ structure ကို ခ်မွတ္တာျဖစ္ၿပီး CSS ကေတာ့ သူ႔ရဲ့ပုံပန္းသ႑န္နဲ႔ပတ္သက္ၿပီး ဘယ္လိုအလွဆင္မလဲဆိုတဲ့ style ကို သတ္မွတ္ေပးတာျဖစ္ပါတယ္။
HTML နဲ႔ CSS ဟာ Web development ရဲ့ ကုန္ၾကမ္းေတြလို႔ေတာင္ သတ္မွတ္နိုင္ပါတယ္။ Developer တိုင္းဟာ သူတို႔နဲ႔ စရပါတယ္၊ သူတို႔ကိုပဲ နည္းလမ္းအမ်ိဳးမ်ိဳးနဲ႔ ကိုင္တြယ္ အသုံးခ်ၿပီး website အမ်ိဳးမ်ိဳးကို ဖန္တီးေနၾကတာျဖစ္ပါတယ္။ ဒါကဘာနဲ႔တူလဲဆိုေတာ့ ပန္းပုဆရာနဲ႔ သစ္သားတုံးလိုပါပဲ၊ သစ္သားတုံးဟာ ကုန္ၾကမ္းပဲ သူ႔ကို နည္းလမ္းမ်ိဳးစုံ ကိရိယာမ်ိဳးစုံနဲ႔ ထြင္းထုၿပီး ပန္းပု႐ုပ္အမ်ိဳးမ်ိဳးကို ဖန္းတီးတာျဖစ္ပါတယ္။
အဓိက ကေတာ့ ကိုယ့္ကို အလုပ္အပ္တဲ့သူရဲ့ လိုအပ္ခ်က္ကို ျဖည့္ဆည္းေပးနိုင္တဲ့ ကၽြမ္းက်င္မွုမ်ိဳးရွိရမွာေပါ့။ ဒီထဲမွာ HTML နဲ႔ CSS ဟာ အျမဲပါဝင္ပါတယ္ သို႔ေပမဲ့ ေနာက္ပိုင္းမွာေတာ့ သင့္အေနနဲ႔ ကိုယ္က ဘယ္လိုမ်ိဳး clients ေတြနဲ႔ အလုပ္လုပ္ခ်င္တာလဲ၊ ဘာ websites ေတြ applications ေတြကို ေရးသားခ်င္တာလဲ ဆိုတာ ဆင္ျခင္သုံးသပ္ဖို႔လိုလာပါၿပီ။ ဒီအေပၚမွာ မူတည္ၿပီး သင့္အေနနဲ႔ ကၽြမ္းက်င္ဖို႔လိုအပ္တာေတြကို စတင္ျဖည့္ဆည္းရမွာျဖစ္ပါတယ္။ ဥပမာ အားျဖင့္ -
o တကယ္လို႔ သင္ဟာ လက္ဝတ္ရတနာ ဒီဇိုင္နာ တစ္ေယာက္အတြက္ online store တစ္ခု တည္ေဆာက္မယ္ဆိုရင္ သင့္အေနနဲ႔ e-commerce platform တခ်ိဳ႕နဲ႔ပတ္သက္ၿပီး သိဖို႔လိုပါတယ္၊
o တကယ္လို႔သာ ကိုယ့္ရဲ့ clients ေတြဟာ အရြယ္အစားအမ်ိဳးမ်ိဳး Device အမ်ိဳးမ်ိဳးနဲ႔ လိုက္ေလ်ာညီေထြစြာ အလုပ္လုပ္နိုင္မယ့္ responsive websites ေတြကို အလိုရွိၾကတယ္ဆိုရင္ သင္ဟာ media queries ေတြအေၾကာင္းလဲ ေလ့လာသင္ယူဖို႔ လိုပါဦးမယ္၊
o တကယ္လို႔ သင္ဟာ WordPress sitesေတြနဲ႔ အျမဲထာဝရ အလုပ္လုပ္သြားမယ္ ဆုံးျဖတ္ထားရင္ သင့္အေနနဲ႔ ေလ့လာရမွာက WordPress Themesေတြကို ဘယ္လို ေရးသားရသလဲ ဆိုတာကိုပါပဲ။ ဒီေတာ့ PHP နဲ႔ပတ္သက္ၿပီး knowledge ရွိဖို႔ လိုလာပါၿပီ၊ PHP ဟာ WordPress development အတြက္ပဲျဖစ္ေစ Dynamic Websites ေတြ ေရးသားဖို႔ပဲျဖစ္ျဖစ္ သိထားသင့္တဲ့ language တစ္ခုပါပဲ။
ေ နာက္ထပ္ ဘာေတြေလ့လာဖို႔လိုသလဲဆိုတာ စဥ္းစားဆုံးျဖတ္တိုင္းမွာ သင့္အေနနဲ႔ စဥ္းစားရမွာက ကိုယ္က ဘယ္လို sites မ်ိဳးေတြကို လုပ္ခ်င္တာလဲ (သို႔) ကိုယ့္ clients ေတြလိုအပ္မယ့္ sites မ်ိဳး ေရးသားတဲ့အခါမွာ အေထာက္အကူျဖစ္တဲ့ language၊ ဒါနဲ႔ပတ္သက္ၿပီး ကၽြမ္းက်င္မွုမ်ိဳး စသည္တို႔ကို ဦးစားေပးေရြးခ်ယ္ ေလ့က်င့္သင့္ပါတယ္။
ကိုယ္လိုတဲ့ အခ်က္အလက္ကို ရွာေဖြစူးစမ္းနိုင္စြမ္းဟာလဲ Developers ေတြ အတြက္ မရွိမျဖစ္ ရွိသင့္တဲ့ skill တစ္ခုပါပဲ။ ကၽြန္ေတာ္တို႔ဟာ ကိုယ္ေရးေနတဲ့ language နဲ႔ပတ္သက္ၿပီး အားလုံးအကုန္အစင္ မွတ္မိေနဖို႔ အလြတ္ရေနဖို႔ မလိုပါဘူး ဒါေပမဲ့ ကိုယ့္လက္က ေရးလို႔ မထြက္ေတာ့ဘူး အမွတ္မရဘူးဆိုတဲ့ အခါမ်ိဳးမွာ ဒါနဲ႔ပတ္သက္ၿပီးေတာ့ ဘယ္မွာ ရွာၾကည့္လို႔ရမလဲ သိနိုင္မလဲ ဒါကို သိေနရပါမယ္။
အဲဒီလိုပဲ ကိုယ္လုပ္ေနတဲ့ language အသီးသီးနဲ႔ သက္ဆိုင္တဲ့ သူတို႔ရဲ့ manuals ေတြ၊ resourses ေတြကိုလည္း ဘယ္မွာရွာလို႔ရနိုင္မလဲ သိထားသင့္တယ္၊ ဒါမွသာ သက္ေသာင့္သက္သာနဲ႔ အလုပ္လုပ္ရတာ အဆင္ေျပမယ္။ ဥပမာ အေနနဲ႔ လမ္းညႊန္ရမယ္ဆိုရင္ HTML, CSS or JavaScript ျပႆနာေတြကို Mozilla Developer Network မွာ သြားဖတ္လို႔ရတယ္ ေမးျမန္းလို႔ရပါတယ္။ PHP နဲ႔အလုပ္လုပ္ေနလို႔ သူနဲ႔ပတ္သက္တဲ့ Manual ေတြဖတ္ခ်င္တယ္ ဆိုရင္ေတာ့ php.netမွာဝင္ဖတ္ပါ။
တခါတေလက်ေတာ့လည္း Google search လုပ္တာဟာ manual ေတြလိုက္ၾကည့္ဟဲျပဳဟဲနဲ႔ ရွာတာထက္ စာရင္ျမန္ျမန္ဆန္ဆန္နဲ႔ လိုခ်င္တဲ့အေျဖတန္းရတာမ်ိဳးလဲ ရွိတက္ပါတယ္။ ဥပမာ - PHP script ထဲမွာ mail function အသုံးျပဳဖို႔ လိုေနတဲ့အခါ PHP နဲ႔ mailing လုပ္လို႔ရတယ္ဆို သိေတာ့သိတယ္ ဒါေပမဲ့ ဘယ္လိုစေရးလို႔ ေရးရမွန္းမသိဘူး ျဖစ္ေနတယ္၊ အဲလိုအခ်ိန္ Google မွာ ‘php mail function’ လို႔ ရိုက္ရွာလိုက္ရင္ w3schools.com မွာ ရွင္းျပထားတာေတြ တန္းၿပီးေတြ႕ရပါမယ္။ syntax နဲ႔ အသုံးျပဳပုံေတြ၊ definition and usage ေတြ ေနာက္တခါ ဥပမာနဲ႔လည္း ရွင္းျပေပးထားပါတယ္။ အဲေတာ့ အခ်ိန္မကုန္ဘဲ ကိုယ့္ရဲ့လိုအပ္ခ်က္နဲ႔ ကြက္တိျဖစ္တာကို တန္းၿပီးေတာ့ ရသြားတယ္။ ဒါနဲ႔ တဆက္တည္းေျပာလိုတာက ကိုယ္သိခ်င္တာကို ရွာတဲ့အခါ ျမန္ျမန္ဆန္ဆန္နဲ႔ကြက္တိရေအာင္ queries နည္းေတြလဲ သိထားသင့္ပါတယ္။
Going Directly to the First Result - ကိုယ္ေမးထားတဲ့ ေမးခြန္းနဲ႔ အမ်ားဆုံးဆက္စပ္တဲ့ ပထမ result တစ္ခုကို တန္းရဖို႔ Google ရဲ့ I’m Feeling Lucky ဆိုတဲ့ option ကို အသုံးျပဳပါ။ ဒါဟာ page ေတြအမ်ားႀကီးကို တန္းစီၿပီး ျပမေနေတာ့ဘဲ ကိုယ့္လိုခ်င္တဲ့ အေျဖနဲ႔ အနီးစပ္ဆုံးျဖစ္မယ့္ resultကို တန္းၿပီးေတာ့ ရွာေပးပါတယ္။ ေနာက္တစ္ခုက ရွာခ်င္တဲ့ အေၾကာင္းအရာထဲကေန စကားလုံးေရြးခ်ယ္တက္ဖို႔ မိမိသိလိုတာကို sentence ပုံစံ ေမးခြန္းပုံစံ ရွည္ရွည္ေဝးေဝးေတြ ရိုက္တာကိုေရွာင္ပါ။ အဓိကက်တဲ့ key word ေလာက္ကို ထုတ္ၿပီးရိုက္ပါ။ ဥပမာ - အေပၚမွာ ေျပာခဲ့သလို mail function အသုံးျပဳပုံနဲ႔ ပတ္သက္ၿပီးသိခ်င္တဲ့ အခါ How to use mail function in PHP? ဒီလိုမ်ိဳး မေရးပါဘူး PHP mail function လို႔ရိုက္လိုက္တာပါပဲ။ ေနာက္တမ်ိဳးက တိတိက်က် စကားလုံးအစဥ္အတိုင္း၊ စကားစုေလးတစ္ခု၊ အမည္ တစ္ခု၊ စာစု တစ္ခု ဒါမ်ိဳးကို ရွာခ်င္ရင္ double quotes ကို သုံးပါ။ ဥပမာ - နာမည္အတိအက်ကို ရွာမယ္ဆို “Julia Robinson” , “Rio de Janeiro” အတြဲလိုက္ဟာမ်ိဳးဆို “top ten songs 2016” “favorite Hollywood movies” ဒီလိုေပါ့ ေနာက္တစ္ခါ Star Wars episode one အေၾကာင္းသိခ်င္တဲ့အခါ Star Wars I လို႔ မေရးရပါဘူး I ဟာ stop word ျဖစ္တယ္၊ ဆိုလိုတာက သူကို ရွာရမယ့္ထဲမွာ ထည့္တြက္မွာ မဟုတ္ပါဘူး။ သူ႔ကိုမွ အတိအက်ရွာခ်င္တဲ့အခါ Star Wars “I” ဒီလိုမ်ိဳး double quotes အတြင္း ထည့္ေရးေပးရပါတယ္။ ဒီေလာက္ပါပဲ query နဲ႔ပတ္သက္ၿပီး ထပ္သိခ်င္ေသးရင္ query input google guide လို႔ရိုက္ရွာၿပီးဖတ္နိုင္ပါတယ္။
ဒါပါပဲ သင့္အေနနဲ႔ web developer ျဖစ္ခ်င္တာနဲ႔ ပတ္သက္တဲ့ ေမးခြန္းေတြရဲ့ အေျဖဟာလဲ သင့္လက္ေခ်ာင္းေလးေတြပါပဲ၊ ရိုက္ၿပီးရွာတက္ဖို႔ပဲ လိုပါတယ္။ သိၿပီးရင္ေတာ့ ႀကိဳးစားရမယ့္အပိုင္းပဲ က်န္ေတာ့တာေပါ့။ အဂၤလိပ္စာ အသင့္အတင့္ဖတ္နိုင္ဖို႔လဲ လိုပါတယ္။ နည္းပညာနဲ႔ ပတ္သက္တာေတြဟာ ျမန္မာလို စထြက္တာမရွိပါဘူး။
အခ်ဳပ္အားျဖင့္ေတာ့ -
• Web developer တိုင္းဟာ HTML, CSS က စတင္ရပါတယ္။
• အဲကေနမွတဆင့္ အနာဂတ္မွာ မိမိလုပ္မယ့္ projects အမ်ိဳးအစားေတြနဲ႔ ကိုက္ညီမယ့္ languages မ်ားကို ေဖာ္ထုတ္ ေရြးခ်ယ္ရပါတယ္။
• အားလုံးကို သိေနရမယ္လို႔ေတာ့ မဟုတ္ပါဘူး၊ သိခ်င္တာကို ရွာနိုင္ရပါမယ္။
We don’t have to know all the answers, we have Google.

Credit to C# and programming languages for beginners

0 comments:

Post a Comment