SOFTWARE ARCHITECTURE & REFACTORING 3 Domain-Centric Architectures Every Software Architect Should Know The first concern of the architect is to make sure that the house is usable; it is not to ensure that the house is made of brick. — Uncle Bob The expression domain is occurring in software bibles for a very long time now and is heavily discussed in the book Domain-Driven
Namespace ဆိုတာကို အရိုးရှင်းဆုံး အဓိပ္ပာယ်ဖွင့်ရရင်တော့ ကုဒ်တွေကို စနစ်တကျ စုစည်းသိမ်းဆည်းထားတဲ့ "ကွန်တိန်နာ (Container)" သို့မဟုတ် "နာမည်ပေးစနစ်" တစ်ခု ဖြစ်ပါတယ်။ အောက်ပါ အချက်အလက်တွေနဲ့ အကျယ်တဝင့် လေ့လာကြည့်ရအောင် - ၁။ ဘာကြောင့် Namespace ကို သုံးရတာလဲ? (The "Why") • ကွန်ပျူတာထဲမှာ Homework.docx ဆိုတဲ့ နာမည်တူ ဖိုင်နှစ်ခုကို Folder တစ်ခုတည်းမှာ သိမ်းလို့မရပါဘူး။ • ဒါပေမဲ့ English ဆိုတဲ့ Folder
using System; namespace TourOfCsharp; class Program { static void Main() { // This line prints "Hello, World" Console.WriteLine("Hello, World"); } } အထက်ပါ "Hello, World" ပရိုဂရမ်သည် System namespace ကို ရည်ညွှန်းသည့် using directive တစ်ခုဖြင့် စတင်ထားပါသည်။ နိမ့်မြင့်စဉ်အလိုက် ဖွဲ့စည်းပုံ (Namespaces) ဥပမာအားဖြင့်- System namespace ထဲတွင် ပရိုဂရမ်ထဲမှာ အသုံးပြုထားသေ
Compiler နဲ့ Interpreter ဘာကွာလဲ Compiler နဲ့ Interpreter နှစ်ခုလုံးဟာ ကိုယ်ရေးထားတဲ့ High-level code (C#, Python, Java) တွေကို ကွန်ပျူတာနားလည်တဲ့ Machine code အဖြစ် ပြောင်းပေးတဲ့ "ဘာသာပြန်ဆရာ" တွေ ဖြစ်ကြပါတယ်။ ဒါပေမဲ့ သူတို့ ဘာသာပြန်ပုံချင်းကတော့ အခြေခံအားဖြင့် ကွာခြားပါတယ်။ ၁။ အလုပ်လုပ်ပုံ (Process) • Interpreter: ကုဒ်ကို တစ်ကြောင်းချင်းစီ ဖတ်ပါတယ်။ ပထမတစ်ကြောင်းကို ဖတ်တယ်၊ ဘာသာပြန်တယ်၊ ချက်ချင်
Vibe coding is a good starting point, but it is not where serious AI-assisted development ends. The next step is agentic engineering: using AI coding agents inside a controlled engineering workflow, with context, tests, review and clear boundaries. Vibe coding often focuses on the generated output: Ask for feature -> get code -> run it -> ask for fixes Agentic engineering focuses on the system ar
Or: what broke on my first three attempts so you don't have to repeat it I've built two prediction markets from scratch. The first one crashed on testnet. The second one launched but had zero users for two months. The third one? Actually works. Here's what I learned in the process. Ask yourself three boring but critical questions: Binary outcomes (Yes/No) or multiple choices? Who decides the trut
What Should Humans Design When AI Can Write Most of the Code? AI can now write code. Not perfectly. Not always safely. Not without review. But it can write a great deal of code. It can generate functions, create tests, call APIs, build UI components, handle common errors, and produce large amounts of implementation detail at a speed no human developer can match. This changes the meaning of prog
80% of the time, coding is a performance. The other 20% is doing real coding. Performance means Scrum ceremonies, meetings, and JIRA: A meeting to present tickets for the next two weeks A meeting to answer questions from the previous meeting A meeting to watch someone enter a number in a text box. Read: poker planning and story points Meetings to watch someone move a ticket between JIRA lanes. Rea