مكتب العقارات يعمل بذاكرة صاحبه: يعرف أن أبا أحمد يبحث عن دار في المنصور، ويعرف أن دار سعد معروضة منذ شهرين. وحين يغيب صاحب المكتب يوماً، يتوقّف نصف العمل — لأن المعلومة ليست مكتوبة في مكان، بل في رأسه.
في هذا الدليل نبني نظام إدارة مكتب عقارات: سجل عقارات بالمنطقة والمساحة والسعر وحالة كل عقار، وسجل زبائن بما يطلبه كل واحد وميزانيته، وشاشة مطابقة تخبرك أي عقار يناسب أي زبون بدرجة مئوية، وسجل معاينات بنتائجها، وحساب العمولات. بلا كتابة كود.
كل الصور من النظام وهو يعمل على سيرفر حقيقي. الأسماء والعناوين والأسعار من نسج الخيال.
إن لم يكن عندك سيرفر وأداة مفعّلة، ابدأ من الدليل الأساس. وأمثلة أخرى: المبيعات · الحسابات · المتجر الإلكتروني · المطعم.
كيف تطلب السيرفر؟ خمس دقائق
لا تحتاج معرفة تقنية لطلب السيرفر — الخطوات أقرب إلى شراء اشتراك إنترنت منها إلى أي شيء تقني:
- افتح صفحة باقات VPS واختر الباقة المناسبة (الجدول أدناه يساعدك).
- في صفحة الإعداد اختر نظام التشغيل — اختر
Ubuntu-24، فهو ما تعمل عليه الأدوات بأقل مشاكل. - اختر دورة الفوترة: شهري، أو سنوي بخصم يقارب السُّبع.
- أضف إلى السلة، وادفع بالدينار العراقي عبر زين كاش أو بطاقة فيزا وماستركارد.
- خلال دقائق تصلك رسالة فيها عنوان الجهاز واسم المستخدم وكلمة المرور — ومنفذ الدخول
2026.
أي باقة تختار؟
| الباقة | الموارد | الشهري | هل تصلح للعمل مع الوكيل؟ |
|---|---|---|---|
| S-VPS 2 | نواة · 2 غيغابايت | 8 دولارات | لا للبناء. تصلح لاستضافة البرنامج بعد أن يكتمل ويخفّ. |
| S-VPS 3 | نواتان · 4 غيغابايت | 17 دولاراً | الحد الأدنى العملي. يعمل، مع بطء محسوس في المهام الطويلة. |
| S-VPS 4 | 4 أنوية · 8 غيغابايت | 29 دولاراً | المريح — وهو ما بنينا عليه كل مقالات هذه السلسلة. |
لماذا لا تكفي أرخص باقة؟ لأن الوكيل لا يكتب سطراً وينتظر: يقرأ عشرات الملفات، ويشغّل التنصيب، ويرفع الخادم، ويختبر — في اللحظة نفسها. بنواة واحدة وغيغابايت واحد ستختنق الجلسة قبل أن تُنهي الطلب الثالث، وستظن أن الأداة ضعيفة بينما المشكلة في الجهاز.
كيف تستخدم الأداة وأنت لست مبرمجاً؟
هذا هو السؤال الذي يوقف أكثر الناس. والجواب أبسط ممّا تظن: أنت لا تقرأ الكود، بل تقرأ الوصف وتجرّب النتيجة. الوكيل يشرح ما سيفعله بلغة بسيطة قبل أن يفعله، ويطلب إذنك، وينفّذ، ثم يخبرك بما جرى.
كيف تجري الجلسة عملياً؟
تدخل إلى سيرفرك، وتنتقل إلى مجلد المشروع، وتكتب اسم الأداة — فتفتح شاشة تكتب فيها طلبك بالعربية. ثم تتكرّر أربع خطوات:
- تكتب الطلب وتضغط Enter.
- يعرض عليك خطة قبل التنفيذ في المهام غير البديهية — اقرأها. إن رأيت فيها ما لم تطلبه، قل «لا تفعل كذا» قبل أن يبدأ.
- يطلب إذنك عند كل عملية حسّاسة: إنشاء ملف، تعديل ملف، تشغيل أمر. هذه لحظتك — الموافقة ليست شكلية.
- تفتح الصفحة في متصفحك وتجرّب. ما لم تجرّبه بنفسك لا تعتبره منجزاً، مهما قال لك إنه انتهى.
الأوامر التي تحتاجها فعلاً
الأدوات فيها عشرات الخيارات، لكن ما ستستعمله يومياً لا يتجاوز هذه:
أهمّها --continue وresume: الجلسة تحتفظ بذاكرتها، فتستطيع أن تغلق حاسبتك وتعود غداً وتكمل من حيث توقّفت — والوكيل يتذكّر المشروع كله.
أربع قواعد تغنيك عن تعلّم البرمجة
| القاعدة | التطبيق |
|---|---|
| اطلب مهمة واحدة | شاشة واحدة أو ميزة واحدة في كل طلب — لا «ابنِ لي النظام» |
| جرّب بعد كل خطوة | افتح الصفحة واضغط الأزرار. خمس دقائق تجربة توفّر ساعة تصحيح |
| صف العطل لا الحل | «أضغط حفظ فتختفي الفاتورة» أفضل بكثير من «غيّر الدالة الفلانية» |
| خذ نسخة قبل الطلبات الكبيرة | نسخة من مجلد المشروع، أو git init مرة واحدة — فتكون تكلفة أي خطأ صفراً |
وإن تعطّل شيء ولم تفهم السبب؟ انسخ رسالة الخطأ كما هي والصقها في الجلسة واكتب: «هذا ما ظهر لي، ما المشكلة وكيف نصلحها؟». الوكيل يقرأ الأخطاء أفضل ممّا يقرأها كثير من المبرمجين — ورسالة الخطأ هي نصف الحل.
الخطوة 1 قواعد المشروع
# قواعد نظام المكتب العقاري - الواجهة عربية من اليمين إلى اليسار، والعملة دينار عراقي بلا كسور. - Node.js + SQLite في ملف واحد. - سعر البيع يُعرض مبلغاً، وسعر الإيجار يُعرض «شهرياً» بعده. - أرقام الهواتف تُعرض داخل عنصر باتجاه من اليسار إلى اليمين. - بعد كل تعديل شغّل البرنامج وتأكّد أنه يعمل.
السطر الرابع وُلد من خطأ حقيقي وقعنا فيه. رقم الهاتف 0770 556 1122 كان يظهر في الجدول 1122 556 0770 — مقلوباً. السبب أن الرقم المكوّن من عدة مقاطع بينها مسافات يتبع اتجاه الصفحة العربية، فتنقلب مقاطعه. الحل سطر واحد في التنسيق:
.tel { direction: ltr; unicode-bidi: isolate; display: inline-block; }
هذا النوع من الأخطاء لا يكتشفه الوكيل ولا الاختبارات — الصفحة تعمل والرقم مخزّن صحيحاً، والعطل في العين فقط. انظر إلى شاشتك، لا إلى رسائل النجاح.
الخطوة 2 سجل العقارات مع بحث
أنشئ تطبيق ويب بـ Node.js. شاشة «العقارات»: بطاقات بثلاثة في الصف، كل بطاقة فيها رمز تعبيري كصورة مبدئية، ونوع العقار (دار/شقة/محل/أرض/مخزن) ونوع الصفقة (بيع/إيجار) والمنطقة والعنوان، والمساحة وعدد الغرف وملاحظة، والسعر بخط بارز، وحالته (متاح/محجوز/مؤجّر) بشارة ملوّنة، وفي الأسفل اسم المالك ورقم هاتفه. وفوق البطاقات بحث بثلاثة حقول: نوع الصفقة، والمنطقة، وأعلى سعر. أدخل ثمانية عقارات في مناطق بغداد بأسعار واقعية بالدينار.
الخطوة 3 سجل الزبائن وما يطلبونه
أضف شاشة «الزبائن»: جدول فيه لكل زبون الاسم والهاتف والمطلوب (دار للبيع، شقة للإيجار...) والمنطقة المفضّلة والميزانية وعدد معايناته وملاحظة. ونموذج فوقه لتسجيل زبون جديد بالحقول نفسها.
الخطوة 4 المطابقة — الميزة التي تميّز النظام
هنا يتحوّل النظام من دفتر إلى مساعد. والسرّ في وصف طريقة الحساب لا في طلب «مطابقة ذكية»:
أضف شاشة «المطابقة»: لكل زبون اعرض أفضل ثلاثة عقارات تناسبه. احسب درجة المطابقة هكذا: - نوع الصفقة مطابق (بيع/إيجار): 40 نقطة - نوع العقار مطابق: 25 نقطة - المنطقة مطابقة: 25 نقطة - السعر ضمن الميزانية: 10 نقاط اعرض فقط ما تجاوز 65 نقطة، ورتّب من الأعلى. اعرض الدرجة رقماً وشريطاً، وضع رقم هاتف الزبون بجانب اسمه لتكون الشاشة قائمة اتصال جاهزة. واكتب تحت الشاشة سطراً يشرح طريقة الحساب.
لا تطلب «ذكاءً»، اطلب قاعدة. «رتّب العقارات حسب مناسبتها» طلب غامض يعطيك نتيجة لا تفهمها ولا تستطيع تعديلها. أما توزيع النقاط أعلاه فقاعدة تفهمها، وتغيّرها متى شئت: ارفع وزن المنطقة إن كان زبائنك يهتمّون بها أكثر من السعر.
وشرح طريقة الحساب تحت الشاشة ليس زينة: هو ما يجعل الموظف يثق بالنتيجة بدل أن يتجاهلها.
الخطوة 5 المعاينات ونتائجها
في الشاشة الرئيسية اعرض: أربع بطاقات (العقارات المتاحة من الإجمالي، الزبائن، الصفقات، العمولات المحقّقة). ثم جدول «آخر المعاينات ونتائجها»: التاريخ والعقار والزبون وهاتفه ونتيجة المعاينة بنصّ حرّ مثل «أعجبه — يفاوض على السعر». ثم جدول «عقارات معروضة منذ أطول مدّة» واكتب تحته أن العقار الذي طال عرضه إمّا سعره مرتفع أو وصفه ناقص.
جدول «العقارات المعروضة منذ أطول مدّة» سؤال إداري مهم: العقار الراكد يستهلك وقت المكتب بلا عائد، وغالباً يحتاج مراجعة سعر مع المالك — لا مزيداً من المعاينات.
الخطوة 6 الصفقات والعمولات
أضف شاشة «الصفقات والعمولات»: لكل صفقة التاريخ والعقار والزبون وقيمة الصفقة ونسبة العمولة والمبلغ. وفوقها أربع بطاقات: إجمالي العمولات، وعدد الصفقات، ومتوسط العمولة، وأعلى صفقة. واكتب تحت الجدول أن عمولة البيع عادةً 2% من قيمة العقار، وعمولة الإيجار نصف أجرة شهر من كل طرف.
الخطوة 7 التشغيل والحماية
1. أضف تسجيل دخول، وامنع فتح أي صفحة بلا تسجيل — أرقام الملّاك هي رأس مال المكتب. 2. اجعل البرنامج خدمة نظام تعمل عند الإقلاع وتعيد تشغيل نفسها. 3. نسخة احتياطية يومية لقاعدة البيانات مع الاحتفاظ بآخر 30 نسخة.
دروس هذا النظام
| الدرس | التفصيل |
|---|---|
| انظر إلى شاشتك | انقلاب رقم الهاتف لا يكشفه الوكيل ولا الاختبار — تكشفه عينك |
| اطلب قاعدة لا ذكاءً | توزيع نقاط المطابقة يجعل النتيجة مفهومة وقابلة للتعديل |
| اشرح الحساب للمستخدم | سطر تحت الشاشة يحوّل النتيجة من «رقم غامض» إلى أداة يثق بها |
| نصّ حرّ حيث يلزم | نتيجة المعاينة لا تُحصر في قائمة — الواقع أوسع من خياراتك |
| اعرض الراكد | ما طال عرضه يحتاج قراراً لا جهداً إضافياً |
ماذا بعد؟
التوسعة: رفع صور العقارات، وصفحة عامة يتصفّحها الزبون بنفسه، ومشاركة العقار برابط أو عبر واتساب، وعقود الإيجار وتواريخ تجديدها مع تنبيه قبل انتهائها، وخريطة للمناطق.
وفي المقالات القادمة: نظام إدارة العملاء، ونظام شركة إنترنت، ونظام الحجوزات والمواعيد.
للبدء: اختر باقة VPS ثم دليل التنصيب والتفعيل.