البنية التقنية
الواجهة الأمامية (Frontend)
- أعمل في الواجهة الأمامية منذ 20 عامًا؛ طوال سنوات عديدة أتنقّل بالتناوب بين ReactJS وVueJS، وبين الأطر المبنية فوقها — NextJS وNuxtJS.
- أحبّ بشكل خاص بناء التخطيطات: CSS وHTML الدلالي أقرب إليّ من JS أو TS.
- Astro أستخدمه لأول مرة، تحديدًا لهذه المدونة — ويبدو أنّه حبّ من أول نظرة.
الواجهة الخلفية (Backend)
لستُ مهندس backend، لكن مع خبرتي في الويب لم تكن لديّ فرصة لتجنّب هذا الجانب. لذلك أعمل لمشاريع ناشئة صغيرة ومشاريع شخصية بأسلوب fullstack كرجل أوركسترا واحد.
- للأشياء البسيطة جدًا — HonoJS + SQLite.
- لمشاريع أكثر تعقيدًا — FastAPI وPostgreSQL داخل Docker.
الأدوات
أنا كسول، لذلك:
- أحاول تغطية الكود بالاختبارات؛
- أُحمّل المشاريع بمختلف الـ linter-s و الـ formatter-s؛
- بفضل ذلك، تجري فحوص جودة الكود تلقائيًا ولا تأكل وقتي.
مساعدو الذكاء الاصطناعي
- GitHub Copilot — الأساسي حاليًا، لكن مع الإعلان عن تغييرات في سياسة التسعير، من المرجّح أن يخرج قريبًا من الترسانة.
- Claude Code — في المقام الأول للتخطيط والعمل مع النصوص.
- Codex — للبرمجة.
- Opencode — لتجارب مع نماذج مفتوحة المصدر.
- Hermes — للأتمتات.
العتاد
- أعمل على MacBook.
- تجارب النماذج المحلية تجري على سطح مكتب Windows ببطاقة رسومات قوية.
- أنشر المشاريع على Linux.
سير العمل (Workflow)
كل feature يمرّ تقريبًا بالدورة نفسها:
-
تثبيت الهدف والقيود في
CLAUDE.md/AGENTS.md، حتى يكون لدى الوكيل سياق مستقرّ. - إجراء brainstorming عبر Superpowers والحصول على مواصفة تصميم.
- ترجمة المواصفة إلى خطة تنفيذ بخطوات محددة؛ تفصيل الـ stories يحدث في Openspec.
- تنفيذ subagent-driven في وَضعَيْ TDD وSDD، مع مراجعة من مرحلتين لكل مهمة (التوافق مع المواصفة أولًا، ثم جودة الكود).