PROGRAMMING AND ME

အခုရေးမယ့် အကြောင်းအရာတွေက မကြာသေးခင်ကမှ computer science နဲ့ ကျောင်းပြီးထားပြီး IT လောကထဲ ရောက်ခါစ junior programmer တစ်ယောက်ရဲ့ အတွေ့အကြုံနဲ့ အမြင် သက်သက်ပါ။

၂၀၀၂ - လွန်ခဲ့တဲ့ ၆နှစ် computer college စတက်ကာစတော့ C, C++ နဲ့ စခဲ့တာပေါ့။ အဲဒီ အချိန်က အင်တာနက်ဆိုတာကလည်း လက်လှမ်း မမှီသေးတော့ IT world မှာ ဘာတွေ ဖြစ်နေတယ် ဆိုတာ ကို သိလည်း မသိခဲ့ဘူး။ စိတ်လည်း သိပ်မဝင်စားခဲ့ဘူး။ (ဘာကြောင့် IT ယူခဲ့သလဲဆိုတာတော့ ပြောရရင် အရှည်ကြီးဘဲ။ တိုတို ပြောရရင် အဲဒီအချိန်မှာ လူတိုင်းက IT… IT… ဆိုတော့ နည်းနည်း စိတ်ပါသွားတာပေါ့။) C, C++ ရဲ့ logic တွေကို သိပြီး compile လုပ်လို့ run သွားရင်ဘဲ ပျော်နေခဲ့တယ်။


၂၀၀၃ - Visual Basic ကိုတော့ သင်တန်း တက်ခဲ့ဖူးပေမယ့် သိပ်စိတ်မဝင်စားခဲ့ဘူး။

၂၀၀၄ - နောက် university ရောက်တော့ HTML, CSS, JavaScript အခြေခံတွေကို သင်ရတယ်။ အမှန်တော့ အဲဒီ HTML, CSS, JavaScript တွေကို programming languages လို့တော့ မခေါ်ဘူး။ (ထားလိုက်ပါ။ off-topic ဖြစ်သွားဦးမယ်။) ဒီလိုနဲ့ဘဲ ဒုတိယနှစ်ရောက်လာတဲ့အခါ database programming ဆိုပြီ SQL နဲ့ စတင် ရင်းနှီး ခဲ့ရတယ်။ ကျောင်းစာအပြင် တစ်ခြားစာတွေ ဘယ်လောက်ဖတ်သလဲဆိုရင် အဲဒီအချိန်အထိ C++ ရယ် HTML ရယ် SQL ရယ်ဟာ ပြဒါးတစ်လမ်း သံတစ်လမ်းလို့ဘဲ ထင်ထားတာ။
artificial intelligence အတွက် PROLOG သင်ရတော့ AI ဘက်ကို နည်းနည်း လိုင်းကြောင်းမလိုလိုတောင် ဖြစ်ခဲ့သေးတယ်။ နောက်တော့လည်း မေ့မေ့ပျောက်ပျောက်ဘဲ။ ခက်တာကိုး။

၂၀၀၅ - JAVA ဆိုတာ coffee နဲ့ ကျွန်း သာမဟုတ်ဘဲ programming language တစ်မျိုးလည်းဖြစ်တယ် ဆိုတာ သိလာတဲ့ အချိန်မှာတော့ SQL ကို ဘာကြောင့် သင်ခဲ့ရတယ်ဆိုတာ နည်းနည်း သဘောပေါက်သလို ရှိလာတယ်။ ဒုတိယနှစ် ပြီးခါနီးမှဘဲ Java နဲ့ SQL ကို JDBC နဲ့ ချိတ်ပြီး application ပိစိ တစ်ခုကို ဖြစ်မြောက်အောင် လုပ်ဖူးတော့တယ်။

အဲဒီမှာ programming ပိုးက နည်းနည်းဝင်သွား တော့တာဘဲ။ training တွေ လိုက်တက် ပြိုင်ပွဲလေးတွေ ရှိရင် ဝင်ပြုင်နဲ့ C++ နဲ့ Java ဘက်ကို ပြန်ရောက်သွားတယ်။ ၂၀၀၅ လောက်မှာ ACM-ICPC ဆိုတဲ့ ACM နဲ့ IBM က sponsor လုပ်တဲ့ ပြိုင်ပွဲအကြောင်း ကြားဖူးလာတယ်။ ကျောင်းမှာ ACM-ICPC regional အတွက် training ပေးတော့ တက်ဖြစ်ခဲ့တယ်။ အဲဒီမှာ programming အပေါ် အမြင် တစ်မျိုးပြောင်းသွားခဲ့တယ်။ Programming ကို အရမ်း စိတ်ဝင်စားတယ် ဆိုရင် ACM-ICPC problems set တွေကို download လုပ်ပြီး solve လုပ်ကြည့်ပါ။ (သူ့ problem set တွေက အများအားဖြင့် maths နဲ့ logic problem တွေ များပါတယ်။ တစ်ခု ထူးခြားတာက သူ့ rules မှာ problem တစ်ခုကို solve လုပ်ပြီး program ရေး run ပြီးလို့ အဖြေထွက်ရုံနဲ့ မပြီးပါဘူး။ memory usage နဲ့ run-time limit တွေ သတ်မှတ်ထားလို့ အဖြေမှန်တိုင်းလည်း အမှတ်မရနိုင်တာက သူ့ရဲ့ challenge ပါ။) လေးလလောက် လေ့လာဖြစ်ပြီး ကျောင်းက trainer အခက်အခဲကြောင့် ACM ရောဂါက အဲဒီမှာ ဘဲ တစ်ခန်း ရပ်သွားခဲ့တယ်။

၂၀၀၆ - ကွန်ပျူတာကျောင်းသား သက်တမ်းကလည်း နည်းနည်း ရလာပြီဆိုတော့ ကြားဖူးသမျှ language တွေကို လိုက်ဖတ်ဖြစ်ခဲ့တယ်။ Flash actionscript, Shell script, XML, AJAX ဟိုစပ်စပ် ဒီစပ်စပ်ပေါ့။ တတိယနှစ်ရောက်လာတော့ web-programming ဆိုပြီး ဘာသာရပ်တစ်ခုကို ယူရတယ်။ အဲဒီမှာ PHP နဲ့ mySQL ကို သင်ပြီးမှဘဲ ဟိုစပ်စပ် ဒီစပ်စပ် လုပ်တဲ့ အလုပ် ခဏရပ်သွားတယ်။ Dreamweaver လို IDE ကောင်းကောင်းတွေ ရှိနေပေမယ့် ဘာကြောင့် HTML codes တွေကို ကောင်းကောင်းသိသင့်တယ်ဆိုတာလည်း သဘောပေါက်လာတယ်။

၂၀၀၆ အကုန် ၂၀၀ရ အစ - Final year first sem မှာ training ဆင်းရတယ်။ training အတွက် လိုက်လျှောက်တုန်းကတော့ ASP.NET မတတ်ဘူးဆိုလို့ အလုပ်မခန့်ချင်တဲ့ ကုမ္ပဏီက ခပ်များများရယ်။ နောက်ဆုံး တကယ်လုပ်ဖြစ်တဲ့ ကုမ္ပဏီမှာကြတော့လည်း ASP.NET (C#) နဲ့ ရေးနေတဲ့ project အောက်မှာ သင်ယူရင်း လေ့လာရင်း ငါးလပြီးသွားခဲ့တယ်။

၂၀၀၇ - ကျောင်းမှာ assembly language ကို သင်ရတယ်။ machine language ဆိုတော့ တွေ့ဖူးသမျှ ထဲမှာ အခက်ဆုံးဘဲ။ Cနဲ့ ရေးရတဲ့ code ၅ကြောင်းလောက်ကို assembly language နဲ့ အကြောင်း ၂ဝ လောက် ရေးရတယ်။ assembly language နဲ့ C နဲ့ ပေါင်းပြီး embedded system programming သင်ရတဲ့အခါကြမှ ဘာကြောင့် ဒီလောက်ခက်တဲ့ data structures တွေ သင်ခဲ့ရသလဲဆိုတာ နားလည်တော့တယ်။

Final year final semester မှာတော့ web-programming ဘာသာရပ် နောက်တစ်ခု ဖြစ်တဲ့ JSP, Servlet, JavaBean စတဲ့စတဲ့ Java web programming ကို သင်ရတယ်။ အဲဒီတော့ ကျမသိတဲ့ web-programming သုံးမျိုး (PHP ရယ်၊ ASP.NET ရယ်၊ JSP ရယ်) ကို ယှဉ်ကြည့်မိတယ်။ ဘယ်ဟာအကောင်းဆုံးလဲဆိုတာတော့ အခုချိန်ထိ ဘယ်သူမှ ပြောလို့ မရသေးဘူး။ ဘာလို့လဲဆိုတော့ အားလုံးက သူ့ကောင်းကျိုးဆိုးကျိုး ကိုယ်စီ ရှိကြလို့ဘဲ။

Final year project အတွက် simulation တွေ ရေးဖို့ TCL/TK scripting တွေကိုလည်း မထင်မှတ်ဘဲ လေ့လာဖြစ်သွားတယ်။ (ကိုယ့်ဒုက္ခ ကိုယ်ရှာမိတာဘဲ။) simulation output တွေဖြစ်တဲ့ text file တွေကို process လုပ်ဖို့ AWK scripting ကိုလည်း နည်းနည်း ပါးပါး သိလာတယ်။ SUSE ကိုသုံးဖြစ်တာများတော့ open-source ဖြစ်တဲ့ Perl တို့ Python တို့ Rubyတို့ ဆိုတာကို အမြဲကြားနေပေမယ့် မလေ့လာဖြစ်ခဲ့ဘူး။ C နဲ့ C++ ကို ကောင်းကောင်းရရင် အဲဒါတွေက သိပ်အခက်အခဲ ရှိမယ်တော့ မထင်ဘူး။ သေချာတာကတော့ language တစ်ခုကို သေသေချာချာ သိထားပြီဆိုရင် တစ်ခြား language တွေကို အချိန်တိုအတွင်း လေ့လာ တတ်မြောက်နိုင်တယ်ဆိုတာဘဲ။

၂၀၀၈ - အလုပ်စဝင်တော့ ပထမဆုံးရတဲ့ project က PHP & Postgresql.. PHP framework တွေထဲက တစ်ခုဖြစ်တဲ့ CodeIgniter ကို လေ့လာနေဆဲ။

ကျမဘဝမှာ ဖြတ်သန်းဖူးခဲ့တဲ့ programming history ကတော့ ဒီလောက်ပါဘဲ။ နောက်များမှာတော့ အခွင့်အရေးရခဲ့မယ်ဆိုရင် လူတွေ ပြောပြောနေတဲ့ Ruby-on-Rails(ROR) နဲ့ project တစ်ခုလောက်တော့ လုပ်ချင်သေးတယ်။ J2ME သုံးပြီ mobile apps တွေ ရေးချင်ပါတယ်။ J2EE နဲ့ enterprise application ကြီးကြီး လုပ်တဲ့ team ထဲက တစ်ယောက်လည်း ဖြစ်ချင်တယ်။ Assembly နဲ့ embedded systems တွေကိုလည်း program လုပ်ချင်သေးတယ်။ အရင်ကလည်း ဟိုစပ်စပ် ဒီစပ်စပ် နောက်လည်း ဟိုစပ်စပ် ဒီစပ်စပ် လုပ်ချင်နေဦးမယ်လို့ ထင်တာဘဲ။

အမှန်တော့ ဒီလို ဟိုမရောက် ဒီမရောက် ဖြစ်နေသေးတာ ကောင်းလား မကောင်းဘူးလားတော့ ကျမ မပြောတတ်ဘူး။ ဒါပေမယ့် language အများကြီးကို နည်းနည်းစီဘဲ သိတာနဲ့စာရင် language နည်းနည်းလေးကို အများကြီးသိတာကတော့ ပိုကောင်းတာပေါ့။

~Happy Programming~

8 comments:

Layma said...

ဖတ်ရတာမူးသွားတာပဲ..။မူးမှာပေါ့..။ အစ်မက တစ်ခုမှမှ မသိတာ..။

Mhaw Sayar said...

သိပ်ကောင်းတဲ့ ပို့စ်ပဲဗျာ။ မသိသေးတာတွေ အများကြီး သိလိုက်ရတယ်။
အားမနာတမ်း တောင်းဆိုရရင် မသဉ္ဖာကို အချိန်ရတဲ့အခါ ဒီလိုပို့စ်မျိုးလေး တွေများများရေးပေးဖို့ တောင်းဆိုချင်တယ်ဗျာ။
မသဉ္ဖာ ၆-နှစ်လောက် ရင်းနှီးခဲ့တဲ့ အတွေ့အကြုံတွေ ကိုပြန်လည်မျှဝေတဲ့ သဘောပေါ့။

ကျွန်တော်ကတော့ တက်နေတဲ့ ကျောင်းနဲ့ မသက်ဆိုင်ပေမယ့် အဲဒီ Field ကို အရမ်းစိတ်ဝင်စားလို့ Programming ကို Self-study လုပ်နေတဲ့သူပါ။ Java ကို Crazy ဖြစ်မိပါတယ်။

စကားမစပ်ပြောရရင် လက်ရှိ Web Developer လောက မှာ တွင်ကျယ်နေတဲ့ Web Programming Language တွေ ကတော့ PHP နဲ့ Ajax လို့ပဲကျွန်တော်တော့ ယူဆမိတယ်ခင်ဗျ။ ဘာလို့လဲဆိုတော့ လက်ရှိ စီးပွားရေးအရရော၊ အသုံးတွင်ကျယ်မှုမှာရော အောင်မြင်နေတဲ့ Web Platform မှန်သမျှက PHP နှင့် My SQL ကိုအခြေခံထားကြတာ တွေကိုပဲ တွေ့နေရလို့ပါ။ ဥပမာပြောရရင် - Blog အတွက်ဆိုရင် WordPress, CMS မှာ ဆိုရင် Joomla, Mambo , Forum မှာဆိုလဲ PHP BB စသဖြင့်ပေါ့ဗျာ။

နောက် Ajax ကလည်း အခု Yahoo တို့၊ Goolge တို့ကအစ Ajax Base Mail Box တွေ ပြောင်းကုန်ကြပြီဆိုတော့ ဒီနေ့ သူ့ရဲ့ အရေးပါမှု Level က ဘယ်လောက် အထိရှိနေပြီလဲဆိုတာကို ခန့်မှန်းလို့ရပါတယ်။

ကျွန်တော် သိသလောက် ဝင်ဆွေးနွေးကြည့်တာပါခင်ဗျား။ မသဉ္ဖာ ဆောင်းပါးတွေ ကိုထပ်မျှော်နေမယ်ဗျို့။

:)

အောင်မြင်ပါစေ။

သဉ်ဇာ - Thinzar said...

မလေးမ >> ဟိဟိ.. နည်းနည်းများ IT ဆန်သွားသလား မသိဘူး။

M B L 0 G G E R >> ကောင်းတယ်လို့ပြောလို့ ပျော်သွားတယ်။ အဟဲ.. အခုလို စိတ်ဝင်တစား ဖတ်ပြီး ဝင်ရောက်ဆွေးနွေးပေးတာ ဝမ်းသာပါတယ်။

အမှန်က အခု market မှာ top ဖြစ်နေတဲ့ programming languages တွေအကြောင်း လေ့လာပြီး ကိုယ့်အမြင်အရ ပို့စ်တစ်ခု ရေးနေတာ။ ဒါပေမယ့် အဲဒီလိုမျိုးပို့စ်တွေက နည်းနည်း အငြင်းပွါးစရာတွေ ပါတယ်။ ဒါကြောင့် "ကျမ ဒါ၊ ဒါ နဲ့ ဒီ programming တွေကိုသာ သုံးဖူးပါသည်" ဆိုတာကို ကြို အစီရင် ခံဖို့ ဒီပို့စ်ကို ရေးဖြစ်သွားတာ။ :D

နောက်ပို့စ်အတွက် အခု ကိုမှော်ဆရာပြောတဲ့ PHP, Ajax ရယ် ၊ နောက် top ဖြစ်နေတဲ့ ASP.NET, JSP, J2EE တွေကို ရေးနေပါတယ်။ လာပြီးဝင်ဆွေးနွေးပေးပါဦး။ (ဘယ်အခါမှ ရေးလို့ ပြီးမလဲတော့ မသိဘူး။)

Mhaw Sayar said...

ဝမ်းသာစရာပဲဗျာ။ အဲဒီလိုကြားရတာ။ ကျွန်တော့် Google Reader မှာ မသဉ္ဖာဆီက ပို့စ်အသစ်တက်လာတာနဲ့ ချက်ချင်းဒီကို လာဖတ်ပြီး ဆွေးနွေးမယ်ဗျာ။

လက်ရှိ Market မှာ Hot ဖြစ်နေတဲ့ Language တွေ အကြောင်းကို မသဉ္ဖာတို့လို ကိုယ်တိုင်လုပ်ကိုင်မြင်တွေ့ နေရတဲ့ သူက ရေးမယ်ဆိုတော့ သိပ်ကောင်းတာပေါ့ဗျာ။

ပြီးတော့ အခုက အားလုံးနီးပါး ဘာပဲဖြစ်ဖြစ် Mobility ဖြစ်မှ သုံးကြတဲ့ ခေတ်ဆိုတော့ J2EE တို့ J2ME တို့ကလည်း သေချာပေါက် အရေးပါနေဦးမှာပါပဲ။ နောက်ကို ဒီ့ထက်ပိုတွင်ကျယ်လာမဲ့ သဘောတောင်ရှိမယ်ဗျ။

ဆောင်းပါးတွေနဲ့ ပတ်သက်လို့ ငြင်းစရာရှိတော့လည်း ငြင်းကြတာပေါ့ဗျာ။ ဘာဖြစ်တုန်း။ အဓိက ကတော့ ငြင်းခုန်မှုကနေ ပိုကောင်းတဲ့၊ ပိုမှန်တဲ့ ၊ ပိုတိကျတဲ့ အဖြေတစ်ခုဆီကို ချဉ်းကပ်ကြဖို့ပဲမဟုတ်လား။

Reply ချက်ချင်းပြန်လာလို့ ကျေးဇူးပါ။
အောင်မြင်စွာနဲ့ ဆက်လက် Blogging နိုင်ပါစေ။

TZA said...

သိပ်ကောင်းတဲ့ပို့စ်ပဲဗျာ..

(ဘာရယ်မဟုတ်ပါဘူး၊ ကိုယ်နားလည်သလိုလို ဝင်ပြောတာ၊ တကယ်တမ်း ကျနော်ဒါတွေကို ဘာမှနားလည်တာ မဟုတ်ဘူး၊ ဟီးဟီး)


အဲနီးဝေး.. လာဖတ်ဖြစ်ပါတယ်၊ ဆက်ရေးပါဗျား။

သဉ်ဇာ - Thinzar said...

ကိုTZA >> တကယ်တမ်း နားမလည်လည်း.. အဲနီးဝေး ကောင်းတာက ကောင်းတာဘဲပေါ့နော်။ :D ဒီလို အားပေးသာ ဝမ်းမြောက်ကြောင်းပါ။

Myo Kyaw Htun said...

interesting . I want to write like this too.

သဉ်ဇာ - Thinzar said...

myo kyaw htun>> sure.. write it.. i can bet it'll be more interesting than mine..

Post a Comment

Please feel free to use any font to comment :)