How to read Software Engineering Books?

စာအုပ်ဘယ်လိုဖတ်မလဲပေါ့။ Technical စာအုပ်ဖတ်တဲ့အခါမှာဘယ်ကနေစဖတ်ရမလဲဆိုတာကိုသိဖို့လိုပါတယ်။ ကိုယ်ကအခုဘာသိချင်တာလဲပေါ့။ ဘာလို့ဒီစာအုပ်ကိုဖတ်မှာလဲ။ ဒီစာအုပ်ရဲ့ Domain ဖြစ်တဲ့ Result ကကိုယ့်ရဲ့ Needs ကိုဖြေရှင်းပေးနိုင်လားပေါ့။

Before Reading

စာအုပ်မဖတ်ခင်ဘယ်သူရေးတာလဲသိဖို့လိုပါတယ်။ တလွဲတချော်တွေရေးထားရင်တော့စမုံတုံးပြီပေါ့။ Software Engineering စာအုပ်တွေကစဖတ်ရတာခက်ပါတယ်။ နောက်ပိုင်းကြရင်သာမန်စာအုပ်တွေထက်စာရင်ဖတ်ရတာပိုပြီး Smooth ဖြစ်တဲ့အထဲလည်းပါတယ်လို့ပြောလို့ရတယ်။ စစချင်းဖတ်ရင်တော့ Term Overwhelming ဖြစ်နိုင်ပါတယ်။

Define Your Problem's Context Boundary

ကိုယ့်ရဲ့ပြဿနာကဘာလဲပေါ့။ သာမာန်ကိစ္စတွေလောက်ကိုဘယ်သူကမှစာအုပ်ထဖတ်ဖို့စိတ်ကူးမှာမဟုတ်ပါဘူး။ သာမန်ထက်ပြဿနာကြီးလာမှစာအုပ်ဖတ်ဖို့စိတ်ကူးကြတာပါ။ သာမန်ကိစ္စတွေက Chat GPT od Google လိုက်တာနဲ့ပြီးနေတာမို့လို့ပါ။

Abstract

ပြဿနာကိုရှင်းဖို့စာအုပ်စဖတ်တဲ့အခါ ပိုခက်တာမျိုးရှိတတ်ပါတယ်။ Context မမိတာကြောင့်ဖြစ်တတ်ပါတယ်။ ဒီတော့ Visual ပုံတွေပါတဲ့စာအုပ်တွေကိုစဖတ်သင့်ပါတယ်။ Quantum for Baby လိုစာအုပ်မျိုးပေါ့။ စာအုပ်ရဲ့ ၉၀ ရာခိုင်နှုန်းလောက်ကပုံတွေနဲ့ပြည့်နေတာဖြစ်တာကြောင့်ဖတ်ရတာပိုပြီးတော့ Smooth ဖြစ်မယ်၊ နားလည်လွယ်မယ်ပေါ့။ ဒီလောက်ကိုပေါ့ပေါ့ပါးပါးဖတ်နိုင်ရင်နောက်တစ်ဆင့်ကိုတက်လို့ရပါပြီ။ များသောအားဖြင့်ဒီအပိုင်းကနားလည်လွယ်ပါတယ်။ Cartoon Books, Webtoon တွေဖတ်နေတာမို့လို့နားလည်ရခက်မယ်ဆိုတယမဖြစ်နိုင်ပါဘူး။

Dig

ဒုတိယအဆင့်ကတော့ Technical Book+ Video Course တွဲကြည့်တဲ့နည်းပါ။ Udemy က Instructor တွေဆိုများသောအားဖြင့် Reading Materials တွေပေးလေ့ရှိပါတယ်။ ဒါတွေကိုဖတ်ပြီးတော့ Course Video နဲ့တွဲကြည့်ပြီး Concept ကို Grab ဖို့လိုပါတယ်။ ဒါဆိုရင် Visual Video တစ်ဝက်၊ Text တစ်ဝက်နဲ့အကျွမ်းဝင်လာပြီဖြစ်တာကြောင့်နောက်တစ်ဆင့်ကိုတက်လို့ရပါပြီ။

Dive

Final Step ကတော့စာအုပ်ချည်းသက်သပ်ဖတ်ဖို့ပါ။ ဒီနေရာမှာ Reference အနေနဲ့ တခြား Blog တွေ၊ Documentation တွေ၊ Course Video တွေကို Reference အနေနဲ့ကြည့်လို့ရပါတယ်။ မကြည့်ရဘူးလို့လည်း Restrictions လုပ်မထားပါဘူး။

Apply

ဒီနေရာမှာတစ်ခုသိထားရမှာက Time Management ပါ။ စာအုပ်ဖတ်တဲ့အခါမှာချက်ချင်းအလွတ်ရမသွားပါဘူး။ Practice လူပ်ဖို့အချိန်လိုအပ်ပါတယ်။ Source Code တွေပါလာတဲ့အခါမျိုးပေါ့။ ဒီအခါရင် ကိုယ်နားလည်သလောက်ဖတ်၊ လက်တွေ့ပြန်လုပ်။ Project တစ်ခုနဲ့ Apply ပြန်လုပ်ဖို့လိုပါတယ်။ နောက်ပြီးတော့ခက်တဲ့အပိုင်းမှာပဲ Struggle မနေသင့်ပါဘူး။ သက်ဆိုင်ရာ Reference တွေကနေအဆင့်ဒီအဆင့်ကိုရအောင်ကျော်နိုင်ဖို့လိုပါတယ်။ ဒါမှ Technical Book တစ်ခုပြီးအောင်ဖတ်နိုင်မှာပါ။

Recommended Books for Beginners

  • Impatient JavaScript
  • Deep Dive Typescript
  • Dive Into Design Patterns
  • Refactoring Patterns