written by: abdullah@abdullah-salloum.de
سحر البرمجة: شغف، تفكير، وإبداع


البرمجة بالنسبة لي ليست مجرد مهارة، بل عالم ساحر أعيش فيه بشغف كل يوم.
 أحبها لأنها تمكّنني من مواجهة التحديات وحل المشكلات بطريقة مبتكرة وذكية.
 هي هواية أمارسها للاستمتاع، ومهنة أعمل بها لتحقيق الطموح والتقدّم.
 كل سطر كود أكتبه يجعلني أُعمل عقلي، وأغوص في أعماق التفكير والتحليل.
 تعلمت من البرمجة الصبر، والنظر للأمور من زوايا متعددة.
 اخترت لغة Ruby لأنها تجمع بين البساطة والقوة، وتمنحني حرية التعبير البرمجي بسلاسة.
 ومع إطار Rails، أصبحت عملية بناء التطبيقات ممتعة وسريعة، وكأنني أرسم أفكاري على لوحة رقمية.

written by: abdullah@abdullah-salloum.de
what is Rails ?

Rails is a full-stack framework. It ships with all the tools needed to build amazing web apps on both the front and back end.

Rendering HTML templates, updating databases, sending and receiving emails, maintaining live pages via WebSockets, enqueuing jobs for asynchronous work, storing uploads in the cloud, providing solid security protections for common attacks. Rails does it all and so much more.

Active Records make modeling easy.
Databases come to life with business logic encapsulated in rich objects. Modeling associations between tables, providing callbacks when saved, encrypting sensitive data seamlessly, and expressing SQL queries beautifully.

Action Controllers handle all requests.
Controllers expose the domain model to the web, process incoming parameters, set caching headers, and render templates, responding with either HTML or JSON.

Action Views mix Ruby and HTML.
Templates can use the full versatility of Ruby, excessive code is extracted into helpers, and the domain model is used directly and interwoven with the HTML.

Action Dispatch routes URLs.
Configure how URLs connect to the controllers using the routing domain language. Routes expose the bundle of actions that go together as a resource: index, show, new, create, edit, update, destroy.


source: https://rubyonrails.org/

written by: abdullah@abdullah-salloum.de
Install Ruby on Rails Guide (Linux)

Install Ruby on Rails Guide

This guide will walk you through installing the Ruby programming language and the Rails framework on your operating system.

While your OS might come with Ruby pre-installed, it's often outdated and can't be upgraded. Using a version manager like Mise allows you to install the latest Ruby version, use a different Ruby version for each app, and easily upgrade to new versions when they're released.

Alternatively, you can use Dev Containers to run Rails without installing Ruby or Rails directly on your machine. Check out the Getting Started with Dev Containers guide to learn more.

1. Install Ruby on Ubuntu/Debian

You'll need Ubuntu Jammy 22.04 or newer to follow these instructions.

Open Terminal and run the following commands:


sudo apt update
sudo apt install build-essential rustc libssl-dev libyaml-dev zlib1g-dev libgmp-dev
curl https://mise.run | sh
echo 'eval "$(~/.local/bin/mise activate)"' >> ~/.bashrc
source ~/.bashrc
mise use -g ruby@3

2. Verifying Your Ruby Install
Once Ruby is installed, you can verify it works by running:

ruby --version

3. Installing Rails
A "gem" in Ruby is a self-contained package of a library or Ruby program. We can use Ruby's gem command to install the latest version of Rails and its dependencies from RubyGems.org.

Run the following command to install the latest Rails and make it available in your terminal:

gem install rails
To verify that Rails is installed correctly, run the following and you should see a version number printed out:

rails --version

written by: abdullah@abdullah-salloum.de
GitHub and Git

About GitHub

GitHub is a cloud-based platform where you can store, share, and work together with others to write code.

Storing your code in a "repository" on GitHub allows you to:

  • Showcase or share your work.
  • Track and manage changes to your code over time.
  • Let others review your code, and make suggestions to improve it.
  • Collaborate on a shared project, without worrying that your changes will impact the work of your collaborators before you're ready to integrate them.
Collaborative working, one of GitHub’s fundamental features, is made possible by the open-source software, Git, upon which GitHub is built.

About Git

Git is a version control system that intelligently tracks changes in files. Git is particularly useful when you and a group of people are all making changes to the same files at the same time.

Typically, to do this in a Git-based workflow, you would:

  • Create a branch off from the main copy of files that you (and your collaborators) are working on.
  • Make edits to the files independently and safely on your own personal branch.
  • Let Git intelligently merge your specific changes back into the main copy of files, so that your changes don't impact other people's updates.
  • Let Git keep track of your and other people's changes, so you all stay working on the most up-to-date version of the project.
To try using Git yourself, see Getting started with Git.

How do Git and GitHub work together?

When you upload files to GitHub, you'll store them in a "Git repository." This means that when you make changes (or "commits") to your files in GitHub, Git will automatically start to track and manage your changes.

There are plenty of Git-related actions that you can complete on GitHub directly in your browser, such as creating a Git repository, creating branches, and uploading and editing files.

However, most people work on their files locally (on their own computer), then continually sync these local changes—and all the related Git data—with the central "remote" repository on GitHub. There are plenty of tools that you can use to do this, such as GitHub Desktop.

Once you start to collaborate with others and all need to work on the same repository at the same time, you’ll continually:

  • Pull all the latest changes made by your collaborators from the remote repository on GitHub.
  • Push back your own changes to the same remote repository on GitHub.
Git figures out how to intelligently merge this flow of changes, and GitHub helps you manage the flow through features such as "pull requests."


Source:  About GitHub and Git

written by: abdullah@abdullah-salloum.de
سنون تعاد ودهر يعيد -قصيدة لأحمد شوقي

سُنونٌ تُعادُ وَدَهرٌ يُعيد . . . . لَعَمرُكَ ما في اللَيالي جَديد

 أَضاءَ لِآدَمَ هَذا الهِلالُ . . . . فَكَيفَ تَقولُ الهِلالُ الوَليد

 نَعُدُّ عَلَيهِ الزَمانَ القَريبَ . . . . وَيُحصي عَلَينا الزَمانَ البَعيد

 عَلى صَفحَتَيهِ حَديثُ القُرى . . . . وَأَيّامُ عادٍ وَدُنيا ثَمود

 وَطيبَةُ آهِلَةٌ بِالمُلوكِ . . . . وَطيبَةُ مُقفِرَةٌ بِالصَعيد

 يَزولُ بِبَعضِ سَناهُ الصَفا . . . . وَيَفنى بِبَعضِ سَناهُ الحَديد

 وَمِن عَجَبٍ وَهوَ جَدُّ اللَيالي . . . . يُبيدُ اللَيالِيَ فيما يُبيد

 يَقولونَ يا عامُ قَد عُدتَ لي . . . . فَيالَيتَ شِعري بِماذا تَعود

 لَقَد كُنتَ لي أَمسِ ما لَم أُرِد . . . . فَهَل أَنتَ لي اليَومَ ما لا أُريد

 وَمَن صابَرَ الدَهرَ صَبري لَهُ . . . . شَكا في الثَلاثينَ شَكوى لَبيد

 ظَمِئتُ وَمِثلي بَرِيٍّ أَحَقُّ . . . . كَأَنّي حُسَينٌ وَدَهري يَزيد

 تَغابَيتُ حَتّى صَحِبتُ الجَهولَ . . . . وَدارَيتُ حَتّى صَبِحتُ الحَسود

written by: abdullah@abdullah-salloum.de
برز الثعلب يوماً - قصيدة لأحمد شوقي

بَرَزَ الثَعلَبُ يَوماً . . . في شِعارِ الواعِظينا

 فَمَشى في الأَرضِ يَهذي . . . وَيَسُبُّ الماكِرينا

 وَيَقولُ الحَمدُ لِل . . . هِ إِلَهِ العالَمينا

 يا عِبادَ اللَهِ توبوا . . . فَهوَ كَهفُ التائِبينا

 وَاِزهَدوا في الطَيرِ إِنَّ الـ . . . ـعَيشَ عَيشُ الزاهِدينا

 وَاطلُبوا الديكَ يُؤَذِّن . . . لِصَلاةِ الصُبحِ فينا

 فَأَتى الديكَ رَسولٌ . . . مِن إِمامِ الناسِكينا

 عَرَضَ الأَمرَ عَلَيهِ . . . وَهوَ يَرجو أَن يَلينا

 فَأَجابَ الديكُ عُذراً . . . يا أَضَلَّ المُهتَدينا

 بَلِّغِ الثَعلَبَ عَنّي . . . عَن جدودي الصالِحينا

 عَن ذَوي التيجانِ مِمَّن . . . دَخَلَ البَطنَ اللَعينا

 أَنَّهُم قالوا وَخَيرُ ال . . . قَولِ قَولُ العارِفينا

 مُخطِئٌ مَن ظَنَّ يَوماً . . . أَنَّ لِلثَعلَبِ دينا

written by: abdullah@abdullah-salloum.de
حاجة الطّواغيت إلى معاوية بن أبي سفيان



يقول محمّد رشيد رضا في بحثٍ له حول نظام الخلافة الإسلاميّة: (وقد قال عالمٌ ألمانيٌّ لشريفٍ حجازيٍّ في الآستانة: إنّه كان ينبغي لنا أن نضع لمعاوية تمثالاً من الذّهب في عواصمنا؛ لأنّه لو لم يحوِّل سلطة الخلافة عمَّا وضعها عليه الشّرع، وجرى عليه الرّاشدون، لمَلَكَ العربُ بلادنا كلها وصيّروها إسلاميّة عربيّة)، انظر: مجلّة المنار، المجلد 24، ص35-36.
وقال في موضعٍ آخر من المقالة بعد أن ذكر كلام الحسن البصريّ في إفساد معاوية والمغيرة أمرَ النّاس بترسيخ المَلَكيّة الاستبداديّة: (وهذا الذي قاله الحسن البصري - من أئمة التابعين - موافق لما قاله ذلك السياسي الألماني لأحد شرفاء الحجاز من أنه لولا معاوية لظلت حكومة الإسلام على أصلها، ولساد الإسلام أوروبا كلها، وقد تقدم).

مع غضّ النّظر عن توقّعات رشيد رضا أو ذلك السياسيّ الألمانيّ حول مستقبل الإسلام من دون معاوية فقط، حيث إنّ معاوية ثمرة من ثمرات خطايا كبرى سابقة، ولكن مع تجاوز ذلك وغضّ النّظر عنه، كيف لسياسيّ غربيّ أن يبصر بحقيقة الفجوة الحقيقيّة في نظام الحكم في تاريخ الإسلام، والآثار المدمّرة التي نتجت عن تطويره لمنظومة الاستبداد التي ورثها، ولا يراها العرب أنفسهم؟ وما الشيء الذي أحدثه معاوية بحيث استحقّ هذا "الامتياز"؟ 
القراءة المنصفة للتّاريخ تبيّن مدى النّقلة النوعية لدور معاوية في تحريف الدّين وإطلاق يد الرواة للكذب على رسول الله -صلى الله عليه وآله-، بالإضافة إلى ترسيخ حالة الاستبداد في الحكم، ولأجل هذا استحقّ بنظر بعض الغربيين تماثيل من ذهب؛ لأنّه أفقد هذه الأمّة نقاط قوّتها، حيث أفسد عليها علمَها -بالكذب والتحريف- وأفسد عليها دنياها وآخرتها بإفساد نظام الحكم وتكريس الاستبداد السياسيّ الذي يمثّل معاوية أحد أركانه في تاريخ الإسلام.
ولذلك؛ يحتاج الطواغيت إلى تقديم معاوية بصورة السياسيّ القويّ والحاكم الدّاهية الذي يحسن تدبير الأمور، فهو قدوتهم ومثلهم الأعلى، وهم مستعدون لتبييض صورته حتى لو أنفقوا ملايين الدّولارات، فإنّ الأمّة لو أبغضت معاوية واستبداده، فلن تقبل بأمثاله في العصر الحاضر.
كان بعض علماء السّلفيّة يردد قائلاً: "معاوية سِتر أصحاب رسول الله؛ فإذا كشف الرجل الستر اجترأ على ما وراءه"، وذلك أنّ نقد معاوية يفتح أبواباً لانتقاد سلوك الصّحابة في القرن الهجريّ الأوّل، ويبدو أنّه تم استنساخ قاعدة مماثلة لها في عالم السياسة؛ فأصبح معاوية سِتر الطّواغيت، فمن أبغضه واجترأ عليه فلن يقبل بأمثاله من طواغيت العصر.

المصدر: قناة حزب التجديد الإسلامي تليغرام 

written by: abdullah@abdullah-salloum.de
This 7-day plan is designed for a web developer with no prior mobile app development experience, aiming to learn Android app development using Flutter

# 7-Day Android App Development Course Plan for Web Developers

This 7-day plan is designed for a web developer with no prior mobile app development experience, aiming to learn Android app development using Flutter. Each day includes 1.5 hours of focused learning and practice, leveraging your existing web development skills. The plan assumes you have Android Studio and Flutter pre-installed on your PC. The goal is to build a simple Android app by the end of the week.

---

## Day 1: Introduction to Flutter and Setup
**Duration**: 1.5 hours  
**Objective**: Understand Flutter, set up your environment, and create your first Flutter project.

- **0:00–0:20**: **Introduction to Flutter**
  - Watch a beginner-friendly video on Flutter (e.g., "Flutter in 100 Seconds" on YouTube or Flutter’s official intro on flutter.dev).
  - Understand key concepts: Widgets, Dart, and cross-platform development.
  - Compare Flutter to web development (e.g., widgets vs. HTML/CSS, Dart vs. JavaScript).
- **0:20–0:40**: **Verify and Explore Development Environment**
  - Open Android Studio and confirm Flutter and Dart plugins are installed.
  - Run `flutter doctor` in the terminal to check setup (ensure Android SDK, emulator, and Flutter are correctly configured).
  - Explore Android Studio’s interface (similarities to web IDEs like VS Code).
- **0:40–1:10**: **Create Your First Flutter Project**
  - Create a new Flutter project in Android Studio (select “Flutter Application”).
  - Run the default counter app on an Android emulator or physical device.
  - Explore the project structure: `lib/main.dart`, `pubspec.yaml` (similar to `package.json`).
- **1:10–1:30**: **Homework/Practice**
  - Read the official Flutter “Getting Started” guide (flutter.dev).
  - Modify the counter app’s text (e.g., change “Counter” to “My First App”) to get familiar with editing `main.dart`.

**Key Outcome**: A running Flutter app and a basic understanding of Flutter’s structure.

---

## Day 2: Dart Basics for Web Developers
**Duration**: 1.5 hours  
**Objective**: Learn Dart’s syntax and core concepts, leveraging your JavaScript knowledge.

- **0:00–0:30**: **Dart Fundamentals**
  - Use DartPad (dartpad.dev) to experiment with Dart code.
  - Learn key Dart concepts: variables (`var`, `final`, `const`), functions, classes, and async/await (similar to JavaScript promises).
  - Compare Dart to JavaScript (e.g., null safety, type system).
- **0:30–1:00**: **Hands-On Dart Practice**
  - Write a simple Dart program in DartPad:
    - Create a class `Todo` with properties `title` and `isDone`.
    - Write a function to print a list of todos.
    - Use async/await to simulate fetching todos with a delay.
  - Experiment with lists and maps (similar to JS arrays/objects).
- **1:00–1:30**: **Apply Dart in Flutter**
  - Return to your Flutter project from Day 1.
  - Modify the counter app to store the counter value in a Dart class.
  - Practice debugging in Android Studio (set breakpoints, inspect variables).
  
**Key Outcome**: Comfort with Dart syntax and ability to write basic logic in Flutter.

---

## Day 3: Building UI with Flutter Widgets
**Duration**: 1.5 hours  
**Objective**: Learn Flutter’s widget system and build a basic UI, drawing parallels to HTML/CSS.

- **0:00–0:30**: **Understanding Widgets**
  - Read Flutter’s “Introduction to Widgets” (flutter.dev/docs/development/ui/widgets-intro).
  - Learn key widgets: `Scaffold`, `AppBar`, `Text`, `Container`, `Column`, `Row`.
  - Compare to web dev: Widgets ≈ HTML elements, properties ≈ CSS styles.
- **0:30–1:00**: **Build a Simple UI**
  - Modify your Flutter project to create a new screen:
    - Use `Scaffold` with an `AppBar` (title: “My Todo App”).
    - Add a `Column` with three `Text` widgets (e.g., todo items).
    - Style with `Container` (padding, margin, color) to mimic CSS.
  - Run and test on the emulator.
- **1:00–1:30**: **Homework/Practice**
  - Experiment with `Row` and `ListView` to display todos horizontally or in a scrollable list.
  - Explore Flutter’s hot reload (similar to live server in web dev) to iterate quickly.

**Key Outcome**: A basic Flutter UI with styled widgets.

---

## Day 4: State Management and Interactivity
**Duration**: 1.5 hours  
**Objective**: Add interactivity to your app using state management, similar to JavaScript frameworks.

- **0:00–0:30**: **State Management Basics**
  - Watch a short video on Flutter state management (e.g., “setState in Flutter”).
  - Learn `StatelessWidget` vs. `StatefulWidget`.
  - Understand `setState` for updating UI (similar to React’s useState).
- **0:30–1:00**: **Add Interactivity**
  - Modify your app to make todos interactive:
    - Convert your main widget to a `StatefulWidget`.
    - Add a `FloatingActionButton` to increment a counter or add a todo.
    - Use `setState` to update the UI when the button is pressed.
  - Test with different inputs (e.g., add multiple todos).
- **1:00–1:30**: **Homework/Practice**
  - Add a checkbox (`Checkbox` widget) to mark todos as done.
  - Store the todo list in a Dart `List<Todo>` and update it with `setState`.

**Key Outcome**: An interactive app with dynamic UI updates.

---

## Day 5: Navigation and App Structure
**Duration**: 1.5 hours  
**Objective**: Implement navigation and organize your app, similar to web routing.

- **0:00–0:30**: **Flutter Navigation**
  - Read Flutter’s “Navigation Basics” (flutter.dev/docs/cookbook/navigation).
  - Learn `Navigator`, `MaterialPageRoute`, and named routes.
  - Compare to web routing (e.g., React Router).
- **0:30–1:00**: **Add a Second Screen**
  - Create a new screen (e.g., “Add Todo” screen) with a `TextField` and a “Save” button.
  - Implement navigation:
    - Push to the new screen from the main screen’s `FloatingActionButton`.
    - Pop back with the entered todo title.
  - Pass data between screens (similar to props in React).
- **1:00–1:30**: **Homework/Practice**
  - Organize your code: Move widgets to separate files (e.g., `todo_list.dart`, `add_todo_screen.dart`).
  - Add a named route for the new screen in `main.dart`.

**Key Outcome**: A multi-screen app with navigation and data passing.

---

## Day 6: Persisting Data
**Duration**: 1.5 hours  
**Objective**: Save todos persistently, similar to localStorage in web dev.

- **0:00–0:30**: **Introduction to Local Storage**
  - Read about the `shared_preferences` package (pub.dev/packages/shared_preferences).
  - Compare to `localStorage` or cookies in web dev.
  - Add `shared_preferences` to `pubspec.yaml` and install it.
- **0:30–1:00**: **Implement Persistence**
  - Modify your app to save the todo list:
    - Save todos as JSON strings using `shared_preferences`.
    - Load todos when the app starts.
  - Test by restarting the app to ensure todos persist.
- **1:00–1:30**: **Homework/Practice**
  - Add a “Clear All Todos” button that resets the saved data.
  - Handle edge cases (e.g., empty todo list).

**Key Outcome**: A functional todo app with persistent storage.

---

## Day 7: Polishing and Deployment
**Duration**: 1.5 hours  
**Objective**: Polish your app and prepare it for deployment.

- **0:00–0:30**: **Polish the UI**
  - Add consistent styling (e.g., use `ThemeData` for colors, fonts).
  - Use `ListTile` for todos to improve layout (with checkbox and title).
  - Add input validation for the “Add Todo” screen (e.g., no empty todos).
- **0:30–1:00**: **Test and Debug**
  - Test the app thoroughly on the emulator (try different screen sizes).
  - Fix any bugs (e.g., navigation issues, state not updating).
  - Use Android Studio’s profiler to check performance (similar to Chrome DevTools).
- **1:00–1:30**: **Prepare for Deployment**
  - Read Flutter’s “Build and Release an Android App” guide (flutter.dev/docs/deployment/android).
  - Build a debug APK (`flutter build apk --debug`) and install it on a physical device.
  - Plan next steps: Explore publishing to Google Play or adding features like notifications.

**Key Outcome**: A polished, functional todo app ready for further development or deployment.

---

## Additional Notes
- **Resources**:
  - Flutter documentation: flutter.dev
  - Dart codelabs: dart.dev/codelabs
  - Pub.dev for packages
  - Stack Overflow and Flutter’s community on Discord for troubleshooting.
- **Next Steps**:
  - Explore advanced topics: Provider for state management, Firebase for backend, or animations.
  - Build a more complex app (e.g., a weather app or note-taking app).
- **Tips**:
  - Use hot reload to speed up UI development.
  - Break down complex widgets into smaller, reusable ones (like web components).
  - Leverage your web dev skills (e.g., structuring code, debugging) to learn faster.

By the end of this week, you’ll have a working todo app and a solid foundation in Flutter, ready to tackle more advanced Android app development projects!

written by: abdullah@abdullah-salloum.de
يا أيها الرجل المعلم غيره - قصيدة المتوكل الليثي

يا أَيُّها الرَجُلُ المُعَلِّمُ غَيرَهُ . . . هَلا لِنَفسِكَ كانَ ذا التَعليمُ

 تَصِفُ الدَّواءَ لِذي السَّقامِ وَذي الضَّنا . . . كيما يَصحّ بِهِ وَأَنتَ سَقيمُ

 وَتَراكَ تُصلِحُ بالرشادِ عُقولَنا . . . أَبَداً وَأَنتَ مِن الرَّشادِ عَديمُ

  فابدأ بِنَفسِكَ فانهَها عَن غَيِّها . . . فَإِذا اِنتَهَت عَنهُ فأنتَ حَكيمُ

 فَهُناكَ يُقبَلُ ما تَقولُ وَيَهتَدي . . . بِالقَولِ منك وَينفَعُ التعليمُ

 لا تَنهَ عَن خُلُقٍ وَتأتيَ مِثلَهُ . . . عارٌ عَلَيكَ إِذا فعلتَ عَظيمُ

written by: abdullah@abdullah-salloum.de
وَقَدْ عَلِمَ القَبَائِلُ مِنْ مَعَدٍّ - قصيدة عمرو بن كلثوم

 وَقَدْ عَلِمَ القَبَائِلُ مِنْ مَعَدٍّ . . . إِذَا قُبَبٌ بِأَبطَحِهَا بُنِيْنَا

 بِأَنَّا المُطْعِمُوْنَ إِذَا قَدَرْنَا . . . وَأَنَّا المُهْلِكُوْنَ إِذَا ابْتُلِيْنَا

 وَأَنَّا المَانِعُوْنَ لِمَا أَرَدْنَا . . . وَأَنَّا النَّازِلُوْنَ بِحَيْثُ شِيْنَا

 وَأَنَّا التَارِكُوْنَ إِذَا سَخِطْنَا . . . وَأَنَّا الآخِذُوْنَ إِذَا رَضِيْنَا

 وَأَنَّا العَاصِمُوْنَ إِذَا أُطِعْنَا . . . وَأَنَّا العَازِمُوْنَ إِذَا عُصِيْنَا

 وَنَشْرَبُ إِنْ وَرَدْنَا المَاءَ صَفْواً . . . وَيَشْرَبُ غَيْرُنَا كَدِراً وَطِيْنَا

 أَلاَ أَبْلِغْ بَنِي الطَّمَّاحِ عَنَّا . . . وَدُعْمِيَّا فَكَيْفَ وَجَدْتُمُوْنَا

 إِذَا مَا المَلْكُ سَامَ النَّاسَ خَسْفاً . . . أَبَيْنَا أَنْ نُقِرَّ الذُّلَّ فِيْنَا

 مَلأْنَا البَرَّ حَتَّى ضَاقَ عَنَّا . . . وَظَهرَ البَحْرِ نَمْلَؤُهُ سَفِيْنَا

 إِذَا بَلَغَ الفِطَامَ لَنَا صَبِيٌّ . . . تَخِرُّ لَهُ الجَبَابِرُ سَاجِديْنَا

written by: abdullah@abdullah-salloum.de
بَناتُ آوَى وَ عَربْ - فرانز كافكا(1883-1924)

 بَناتُ آوَى وَ عَربْ


فرانز كافكا(1883-1924)
ترجمة: كامل يوسف حسين 

كنا قد ضربنا خيامنا في الواحة، وقد غفا رفاقي.
مرَّ بي القوام الأبيض الشامخ لرجلٍ عربي، كان يتفقَّد الإبل، ويمضي في طريقه إلى مرقده.

استلقيت على ظهري، فوق العشب، حاولت التماس الكرى، لكن النوم جفاني.
 في البعيد عوت بنت آوى، فاقتعدت الأرض ثانية، فجأة دنا مني، كأشد ما يكون الدنو، ما كان نائياً، فقد تدفقت بنات آوى حولي، وعيونهن تلمع بذلك البريق الأصفر الكئيب، وتعاود الاختفاء مجدداً، وأجسادهن اللدنة تتحرك، بتحفز، وعلى نحو منتظم، كما لو كان ذلك يحدث استجابة، لقرقعة سوط.

أقبلت إحدى بنات آوى من خلفي، مندفعة تحت ذراعي مباشرة، ضاغطة نفسها باتجاهي، كما لو كانت بحاجة إلى أن تلتمس الدفء مني، ثم وقفت أمامي، وراحت تحدثني وجهاً لوجه على التقريب.


 إنني كبرى بنات آوى في كل البقاع، ويسعدني أن ألقاك ها هنا، أخيراً، فقد كنت على وشك أن افقد الأمل، إذ انتظرتك سنوات لا تنتهي، وانتظرتك أمي وأمها، وكل أمهاتنا، منذ الأم الأولى لبنات آوى كافة، هذا صحيح، صدقني !

قلت: ناسياً في غمار حديثي إذكاء جذوة كوم الخشب الجاثم قاب قوسين أو أدنى، والذي يمكن استخدامه في طرد بنات آوى بعيداً:
 أمر عجيب!يدهشني أشد الدهشة أن أسمع هذا، فالمصادفة المحضة هي التي ألقت بي إلى هنا من الشمال البعيد، كما أني أقوم بجولة قصيرة فحسب في هذه البلاد، فما الذي تردنه إذن يا بنات آوى؟!
 أطبقت حلقة بنات آوى علي، كما لو كان قد أثار فيها الجرأة هذا التساؤل، الذي ربما كانت نغمة الود فيه قد تجاوزت ما ينبغي، و رحن جميعاً يلهثن، وقد فغرن أشداقهن.

أنشأت كبراهن تقول:إننا نعرف أنك جئت من الشمال، وهذا هو على وجه الدقة ما نعلق آمالنا عليه، فأنتم معشر الشماليين تتمتعون بذلك الفهم الذي لا نظير له في صفوف العرب، وأصدقك القول أنه ما من شرارة واحدة يمكن أن تقدح من صلفهم البارد. إنهم يذبحون الحيوانات، ليصنعوا طعاماً منها، ويزدرون الجيف.
 قلت: لا ترفعي صوتك هكذا! فهناك عرب يرقدون غير بعيد عنا.
 قالت بنت آوى: إنك غريب ها هنا حتماً، وإلالعرفت أنه لم يحدث في تاريخ العالم قط أن خافت بنت آوى من عربي. لماذا ينبغي ان نخشاهم؟ أليس في نفينا بين ظهراني تلك المخلوقات ما يكفي من سوء الطالع؟
 قلت: ربما، ربما، فمثل هذه الأمور البعيدة إلى هذا الحد لا أجدني مؤهلاً للحكم عليها، ويبدو لي الأمر عراكاً بالغ القدم، وأحسب أنه أمر يجري مجرى الدم، وربما لن ينتهي إلا بسفكه.
 إنك أريبٌ للغاية.
 قالتها ابنة آوى العجوز، ورحن جميعهن يلهثن بمزيد من السرعة، فيتدفق الهواء من رئاتهن، على الرغم من إنهن ساكنات في مواضعهن.
 انبعثت رائحة نتنة من أشداقهن، اضطررت لكي أحتملها إلى أن أصر على أسناني.
 مضت ابنة آوى تقول:
 إنك أريب للغاية، فما قلته تواً يتفق مع أعرافنا القديمة، فإننا سنلغ في دمائهم فينتهي النزاع.
 قلت بصرامة تفوق ما كنت اقصده:
 آه، لسوف يدافعون عن أنفسهم، ويطلقون النار من بنادقهم عليكن، فتسقطن بالعشرات.
 قالت ابنة آوى:
 ها أنت تسيء فهمنا، وتلك خصلة بشرية، يبدو إنها توجد حتى في أقصى الشمال، فنحن لا نقترح قتلهم: إذ ليس بمقدور ماء نهر النيل كله ان يطهرنا من ذلك، بل إن مجرد مرأى لحمهم الحي يجعلنا نولي الإدبار، ساعيات وراء هواء أنقى، إلى الصحراء، التي هي لهذا السبب عينه ملاذنا.

وخفضت بنات آوى الملتفات حولي جميعهن، بما في ذلك كثيرات أقبلن لتوهن، أخطامهن بين قوائمهن الأمامية، ورحن يمسحنها ببراثنهن، كما لو كن يحاولن إخفاء شعور غلاب بالاشمئزاز، إلى الحد الذي دفعني إلى الرغبة في الوثوب فوق رؤوسهن والهرب بعيداً.

ما الذي تقترحن القيام به إذن؟
 قلتها متسائلاً، وأنا أحاول الوقوف، لكني لم أستطع النهوض، فقد أطبقت ابنتا آوى فتيتان أنيابهما على معطفي وقميصي.
 أوضحت ابنة آوى عجوز الأمر، بجدية تامة، بقولها:إنهما وصيفتاك، خصصتا من أجلك، تكريماً لك.
 صحت، متلفتاً تارة نحو ابنة آوى العجوز، وتارة نحو بنتي آوى اليافعتين:
 لا بد لهما من تركي وشأني!
 قالت ابنة آوى العجوز:
 ستفعلان هذا بالطبع، بما أن تلك هي رغبتك، لكن ذلك سيستغرق بعض الوقت، ذلك أنهما أحكمتا إطباق أنيابهما كما هي عادتنا، ويتعين عليهما أن ترفعا أشداقهما قليلاً قليلاً.
 وفي غضون ذلك أصغ إلى ملتمسنا:
 قلت: لم يجعلني تصرفكن أميل إلى هذا تماماً.
 قالت، وقد لجأت إلى الكآبة الطبيعية في صوتها:
 لا تأخذ علينا افتقادنا للدماثة، فنحن مخلوقات بائسة لا حول لنا إلا بأنيابنا وكل ما نريد إتيانه، سواء كان شيئاً طيباً أم شيئًا سيئاً، نقوم به مستخدمات أنيابنا.
 تساءلت، دون أن تسكن ثائرتي كثيراً:
 طيب، ما الذي تردنه؟
 صاحت، وقد راحت بنات آوى تعوين معاً، على نحو ناء، بدا الأمر معه كما لو كن يعزفن لحناً متسق الأنغام.
 سيدي، سيدي، إننا نريدك أن تنهي هذا العراك الذي يقسم العالم، فأنت بالضبط الرجل الذي تنبأ أسلافنا بأنه سيولد للقيام بهذه المهمة، ونحن لا نريد بعد اليوم أن يكون العرب مصدر ضيق لنا، نريد مجالاً لالتقاط الأنفاس، أفقاً تم تطهيره منهم، لا مزيد من ثغاء الخراف التي يذبحها عربي، أن ينفق كل حيوان نفوقاً طبيعياً، ولا تدخل إلا بعد أن نستنزف الجثة و نلعق عظامها بعد أن نسلبها اللحم. حياة نظيفة فالنظافة هي كل ما نريد.
 عندئذ غرقن جميعهن في النواح والبكاء، مضت كبراهن قائلة:
 كيف تتحمل الحياة في مثل هذا العالم، أنت يا صاحب القلب النبيل والنفس المرهفة، قذارة بياضهم، وقذارة سوادهم، وفظاعة لحاهم، و مرأى محاجر أعينهم يدفع المرء إلى الرغبة في البصق، حينما يرفعون ذراعاً تتثاءب ظلمة الجحيم في آباطهم، ولذا يا سيدي العزيز بيديك القويتين جز أعناقهم بهذا المقص!

واستجابة لإيماءة من رأسها، أقبلت إحدى بنات آوى مسرعة وهي تحمل مقص حياكة صغير، كساه صدأ قديم يتدلى من ناب في فكها الأعلى.
 صاح القائد العربي لقافلتنا، الذي كان قد زحف تحت الريح نحونا وراح الآن يفرقع بسوطه الهائل:
 هاهو المقص أخيراً وقد حان وقت التوقف!
 سارعت بنات آوى بالهرب، لكنهن تجمعن متقاربات على بعد مسافة محددة، وقد انضمت إحداهن إلى الأخرى فتصلبن على نحو بدون معه كما لو كان قد ضمهن وهج مستنقعي متضائل، في طية واحدة صغيرة.
 قال العربي، ضاحكاً، بقدر ما يسمح له تحفظ أبناء جلدته بالمرح:
 هكذا فقد دعيت لشهود هذه التسلية أيضا أيها السيد!
 تساءلت: إذن فإننا على علم بما تسعى إليه هذه الحيوانات
 قال: بالطبع فهو أمر معروف للكافة، وطالما بقي العرب على قيد الوجود فان هذا المقص سيجوب الصحراء، وسيمضي معنا إلى آخر أيامنا.
 وقد عرض على كل أوروبي للقيام بالعمل العظيم، وكل أوروبي هو بالضبط الرجل الذي اختاره القدر لهن، إن أشد الآمال جنوناً هي محط تعلقهن، هاته المخلوقات الحيوانية، وهن لسن إلا حمقاوات، شديدات الحمق، ذلك هو سبب حبنا لهن، فهن كلابنا ويفضلهن خير كلابكم، الآن راقب هذا الأمر، لقد نفق بعير ليلة أمس، قد أمرت به فأحضر إلى هنا.

أقبل أربعة رجال بجيفة ثقيلة، وألقوا بها أمامنا، فلم تكد تمس الأرض حتى عوت بنات آوى، وكما لو كن قد جذبن بحبال على نحو لا سبيل معه إلى المقاومة راحت كل منهن تتقدم باضطراب إلى الإمام، وزحفن على بطن البعير النافق.

كن قد نسين العرب، نسين مقتهن لهم، وسحرهن الحضور الذي يجب ما عداه والنابع من الجيفة كريهة الرائحة.
 ارتمت إحداهن على عنق البعير، غرست أنيابها مباشرة في أحد عروقه.
 وشأن مضخة صغيرة حادة تدفع بتصميم يعادل اليأس نحو إخماد نار تتلظى، التوت كل عضلة في جسم ابنة آوى، وكدحت لإنجاز هذه المهمة.
 في لمح البصر كن قد اعتلين الجيفة جميعاً، و رحن يعملن أنيابهن فيها، وقد تحولن إلى جبل يعلوها.

أعمل قائد القافلة سوطه الباتر، على نحو متقاطع، فوق ظهورهن فرفعن رؤوسهن، وقد أخذ بهن الخدر من فرط النشوة، رأين العرب فوق رؤوسهن، أحسسن لسع السوط على أخطامهن، قفزن وتراجعن قليلاً لكن دم البعير كان متراكماً بالفعل في بحيرات، وقد ارتفعت رائحته زاعقة وبقرت الجيفة في مواضع عديدة فلم يستطعن مقاومتها وأطبقن عليها من جديد ومرة أخرى رفع القائد ذراعه بالسوط، فأمسكت به، وحلت دون أن يهوي بالسوط.

قال: إنك على حق أيها السيد، لسوف نتركهن عاكفات على عملهن، إضافة إلى هذا فقد حان وقت الرحيل.طيب.لقد رأيتهن، إنهن مخلوقات عجيبة.ألسن كذلك؟ولشد ما يمقتننا!


written by: abdullah@abdullah-salloum.de
الأمل القادم - عبد الرحمن بن صالح العشماوي

 أَنَّى تَغيبُ ونورُ وجهِكَ ساطعُ *** وظباءُ حُبك في الفؤادِ رواتـعُ 
أَنَّى تَغيبُ وأنتَ في عيني ضُحى *** يَزهُو وبرقٌ في خَيالي لَامـعُ 
أَنَّى تغيبُ وأنتَ بين جَوانحي *** شمسٌ وفي الظلماءِ بـدرٌ طالعُ 
أَنى تغيبُ وأنتَ ظِـلٌ عندما *** تشـتدُ رَمضائي إِليهِ أُسـارعُ 
حَاصرتَني في نصفِ دائرةِ الهوى *** وأَنا بحظي مِن حِصارِكَ قانعُ 
مِن أينَ أخرجُ والسياجُ يحيط بي *** مِن كُلِ ناحيةٍ وأمرُك قاطعُ 
وأَنا أَقـولُ لظبية الشعرِ التي *** ربيـتـها إن المسافـرَ راجعُ 
يا ظبيةَ الشعرِ اطمئني إنني *** ما زلتُ في كتبِ الـحنينِ أراجعُ 
في القلبِ شيءٌ قيلَ لي هُو لوعةٌ *** وأَنا أقولُ هُو الحريقُ اللاذعُ 
وبمقلتي نهرٌ سينقص قـدره *** لو قلت هذي في العيونِ مَدامعُ 
وأمامَ أبوابِ المشاعرِ نبتـةٌ *** في غُصنِها ثـمرُ المودةِ طالعُ 
يا ظبيةَ الشعرِ المؤجج في دمي *** تيهي فصِيتُكِ في فؤادي ذَائعُ 
عاقبتني لـما شكوتُ وإنما *** أشكو لأن الـحق فينا ضائعُ 
ولأن جدران الكرامة هدمت *** في أمتي والذل فيـها شائعُ 
وَلِأَنني أَبصرتُ ثعبانَ الهوى *** في نَابِه المشؤومِ سمٌ نَاقـعُ 
وَلِأنني أبصرتُ مَا لم تبصري *** فهناك ذئبٌ عندَ بابِك قابعُ 
إني أقولُ لمن يُعاتبني أَفِق *** فأنا بسيفِ الشعرِ عنك أُقارعُ 
أنظر إلى لون السلام وطعمه *** مُر مذاقته ولـونٌ فاقـعُ 
قَالوا السلامَ أتى فتابعنا الذي *** وصفوا فبان لنا الكلام الخادعُ
 قلنا لهم أين السلام فما نرى *** إلا أكف الواهـمين تبايـعُ 
شتّانَ بين مُسالمٍ ومتاجرٍ *** إن المُتاجر للكرامةِ بَـائعُ 
في كفِ داعيةِ السلامِ مزاهرٌ *** وبكف تجارِ السلامِ مَقامعُ 
أرأيتَ في الدنيا سلامًا عادلا *** تدعو إلـيه قنابلٌ ومدافعُ 
إني لأخجلُ حينَ أضحكُ لاهيًا *** وقد ارتمى في الأرضِ طفلٌ جائعُ 
إني لأخجلُ حِين أُشغَلُ بالهوى *** وَعَفاف ليلى البسنوية دَامعُ 
إني لأخجلُ حينَ أُبصِرُ أمتي *** تـهفو إلى أَعدائِها وتـوادعُ 
مَا زلتُ أدعوها ويجمُدُ في فمي *** صوتُ المحبِ ولا يجيبُ الخاضعُ 
مَا زلتُ أدعوها وألفُ حِكايةٍ *** تُروى عن الأهلِ الذين تقاطعُوا 
عن إخوةٍ رَكِبوا الخلافَ مطيةً *** وإلى سراديبِ الشقاقِ تدافعوا 
يا أمةً يسمُو بها تاريخها *** ويسوقها نحو الضـياعِ الواقـعُ 
يا أُمةً تُصغي إلى أهوائِها *** وتسد سمعًا حينَ يصدعُ صادعُ 
يا أُمةً ما زلتُ أسألُ حالهَا *** عنها فتنطق بالجوابِ فواجعُ 
ما لي أراكِ فتحتِ أبواب الهوى *** وقَبلتِ ما يدعو إليه الطامعُ 
يممتِ غربًا والحقائقُ كلُها *** شرقٌ وفي يدكِ الدواءُ الناجعُ 
ما لي أراكِ مددتِ للمالِ الربا *** جسرًا وفي القرآنِ عنه قوارعُ 
أنسيتِ حرب اللهِ وهي رهيبة *** أوما لديكِ من العقيدةِ رادعُ 
أوَ غاية الإسلامِ عندكِ أن يُرى *** لك في الوجودِ معاملٌ ومصانعُ 
أنسيتِ أن الناسَ فيكِ معادنٌ *** أنسيتِ أن الأرضَ فيكِ مواضعُ 
لا تُخدَعي، بعضُ الوجوهِ قبيحةٌ *** وتزينها للنـاظرين براقعُ 
وإذا أرادَ اللهُ نـزعَ ولايةٍ *** عَمي البصيرُ بها وصُمَّ السامعُ 
يا أمتي عوتبتُ فيكِ وإنما *** خشي المعاتب أن يسوءَ الطالعُ 
قالوا: تُدافع بالقصائدِ قلتُ: بل *** بيقينِ قلبي عن حِماكِ أدافعُ 
شبت عن الطوق الحروف فما بها حرف يزيف رؤيتي ويخادعُ 
أسلمتُ للرحمنِ ناصيتي فما *** تلهو القصائد أو يغيب الوازعُ 
إني أتوق إلى انتصار عقيدة *** فيها لأنهارِ النجاةِ منابعُ 
قالوا: تروم المستحيل؟ فقلت: بل *** وعدٌ من الرحمنِ حقٌ واقعُ 
والله لو جرفَ العدو بيوتنا *** ورمت بنا خلفَ المحيطِ زوابعُ 
لظللتُ أؤمن أنَّ أمتنا لها *** يومٌ من الأمجادِ أبيضُ ناصعُ 
هَذي حقائقنا وليست صورةً *** وهميةً فيها العقول تنازعُ 
أنا لنْ أملّ من النداءِ فربما *** أجدى نداء من فؤادي نابعُ

 رابط المادة: http://iswy.co/evrsd