الجمعة، 31 أغسطس 2012

كل قرار في آخر سنتين!

شيء لاحظته مؤخراً، إفري سنجل قرار في آخر سنتين!

الشيء الجيد إني بوصل للنتيجة في النهاية، الشيء السيء إني مش بوصل من أول مرة وغالبا النتيجة مش بتكون المطلوبة من الأول.

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

في بعض الاحيان بسأل ليه مش من مرة واحدة ونخلص؟ ... له في ذلك حكم :)


السبت، 25 أغسطس 2012

على مفترق الطرق

من حوالي أربع سنين تقريباً، عملت ما يسمى بالسوات أنالسز SWOT Analysis
هي طريقة تحليل غالباً بتستعمل في تحليل حاجات تبع الأعمال ... مثلاً مشروع جديد، شركة جديدة، صفقة جديدة!

SWOT هي اختصار لأربع كلمات (Strengths - Weaknesses - Opportunities - Threats)

Strengths
نقاط القوة وهي حاجة مستمدة أو صادرة من من موضوع التحليل نفسه.
Weaknesses
نقاط الضعف، وبرده مستمدة من موضوع التحليل نفسه.
Opportunities
الفرص، مميزات لكن من الخارج يعني مش من موضوع التحليل.
Threats
االتهديدات، عيوب وبرده من الخارج مش مستمدة من موضوع التحليل.

SWOT analysis - Wikipedia, the free encyclopedia


فعلياً هي مش مقتصرة على البزنس، إنما هي ببساطة ممكن استعمالها في تحليل أي حاجة تقريباً، وعليه هي بتستعمل كمان في تحليل الشخصية.

من أربع سنين تقريباً جربت أعمل الموضوع ده، ببساطة بتعمل محورين سيني وصادي (س،ص)، زي بتاع الرسوم البيانية، ساعتها ركزت على نقاط القوة ونقاط الضعف، بتعمل رسم لكل واحد. (طبعاً من الناحية الإحصائية ممكن نخليهم في رسم بياني واحد، لكن تسهيلاً بنعملهم منفصلين). االمحور السيني (الأفقي) بيكون الخطورة أو الأهمية، والمحور الصادي (الرأسي) بيعبر عن القوة.

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


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

في كذا مشكلة كنت شايف إنهم محتاجين وقت مش أكتر، يعني مهما حاولت أحل فيها ساعتها مكنتش هوصل لنتيجة! وفعلاً الحمد لله ده كان صح، ويادوبك لسه متخلص منهم من فترة قريبة :-)

دلوقتي أنا عندي ثقة بنفسي أكتر من أي وقت عدى، اتعلمت حاجات كتير، زودت قدراتي واتخلصت من كتير من نواقصي، ومريت ببعض التجارب اللي ممكن نقول عنها "أساسية" قبل الدخول للمرحلة اللي بعدها ... دولوقتي بقيت جاهز لمرحلة تانية تماماً.

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

من كام سنة مثلاً كنت بقول إن في حاجات كتير لا يمكن أعملها لإنها مش مناسبة ليا! مثلاً لا يمكن إني أشتغل في التسويق أو المبيعات! لإني كنت شايف إنه مش مناسب ليا، أو بالأحرى أنا اللي مش مناسب ليه ومعنديش القدرات اللازمة لإني أكون كوالفيد ومتميز فيه!

كل ده اتغير! حاجات كتير -جداً!- اتغييرت في الكام سنة اللي فاتوا دول، يمكن ده طبيعي خصوصاً في العمر ده، أو حتى بالنسبة للبني آدم بشكل عام، بس كل ده ميهمنيش! اللي يهمني دلوقتي حاجة واحدة!


دلوقتي أقدر أقول إني على مفترق الطرق.
الحمد لله على كل شيء :-)

تدوينة سريعة

يوم جميل آخر .... الحمد لله :-)

ومعنديش غير إني أقول على رأي الست فيروز ...

"إيه في أمل" : )

الجمعة، 24 أغسطس 2012

فرس النبي

مش عارف إذا قولت ده قبل كدا ولا ﻷ! لكن واحد من أكتر الحشرات المفضلة عندي هو حشرة "السرعوف" أو زي ما بنسميه في مصر "فرس النبي"!

في الانجليزية بيسمى Mantodea أو mantises أو mantii أو Praying Mantis لإن شكله بيبقى عامل زي الشخص اللي بيصلي/بيدعي في الكنيسة.


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

كنت بستمتع بإني أمسكه وأنا صغير D: (ومازلت D:)

معلومات أكتر عنه:

فرس النبي (حشرة) - ويكيبيديا، الموسوعة الحرة
Mantis - Wikipedia, the free encyclopedia


وكمان في منه نوع متحور بيشبه الورق اسمه يعسوب الورقة الميتة Dead leaf mantis، مثال تاني رائع في تخفي:

Dead leaf mantis - Wikipedia, the free encyclopedia
Dead Leaf Praying Mantis - Deroplatys desiccata.


وهنا قايمة بأشكال وأنواع فرس النبي المختلفة:

List of mantis genera and species - Wikipedia, the free encyclopedia




أخيراً ألبوم فيه بعض الصور الظريفة ليه D:



الخميس، 23 أغسطس 2012

مقياس شدة حرارة الطعم الحار.

مقياس سكوفيل لقياس شدة حرارة الطعم الحار (الحراق/الحريف) زي اللي في الفلفل والشطة DDDDD:

Scoville scale - Wikipedia.

بس قشدة يعني طلعت عارف كام نوع ابن ناس ... هالبينيو وتاباسكو وتاي تشيلي ^_^
أنا نفسي ألاقي محل زي اللي في الصورة دي D:


الثلاثاء، 21 أغسطس 2012

العيد الرائع السعيد! ١٤٣٣.

أنا قولت من الأول دول أفضل رمضان وعيد عدوا عليا من خمس سنين تقريباً!

امبارح كان يوم خزعبلي بهبل! من أشد الأيام في حياتي فعلا!
عملت كمية حاجات وقابلت كمية ناس رجعوني بالزمن مابين ٦ لـ ١٢ سنة! وحصلت كمية حاجات في اليوم ده!

ناس بقالي كتير جداً مشفتهمش وناس بقالنا كتير متجمعناش مع بعض بالشكل ده وبالروقان ده من فترة كبيرة جداً!
ضحكنا لحد الثمالة، فرحنا لحد الثمالة، استمتعنا لحد الثمالة ... وحتى أكلنا لحد الثمالة D: ... (والأكل كان جااااااامد فحت!)

أنا أكيد شخص سعيد :-)
حقيقي الحمد لله على نعمه الكتير ... الحمد لله :-)

الأحد، 19 أغسطس 2012

شل سكربت باستخدام Case.

تقريباً أنا وقعت في حب الشل السكربتنج D:
امبارح كتبت سكربت بسيط خالص -وبدائي خالص برده D:- بقالي يومين منشكح وليا مزاج أعمل حاجة جديدة انهارده، فقولت اكتب شوية عن السكربت ده (وﻷ مش ناوي أستمر في الكتابة اللي من النوع ده، مجرد تغيير ليس إلا) وبكره العيد يعني ده وقت المرح :-)

متأكد إنه ممكن يتحسن عن كدا، وكمان أكيد في طرق تانية تؤدي نفس الغرض، بس أنا وصلت للطريقة دي ... على قدي يعني :-)

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

* * * * *

عباس عنده تلات عيال، شادي وفادي وهادي D: مشكلة عباس مع عياله بسيطة جداً وفي نفس الوقت رخمة جداً! المشكلة هي إن عياله مش بتنضف الأوض بتاعتها بانتظام، وبالتالي أمهم هي اللي بتشيل الليله وتكون مضطرة للتعامل مع ٣ غرف لـ ٣ مراهقين! وما أدراك ما الشباب المراهقين!

فراح عاملهم جدول شهري وحدد فيه أيام معينه، كل واحد منهم - اللي هم شادي وفادي وهادي D:- يقوم بتنضيف غرفته فيها، بس الأيام دي مش زي بعض كل شهر، يعني فادي ممكن ينضف الشهر ده يوم ٣ والشهر اللي بعده يوم ٧ والشهر اللي بعده يوم ٢٧! وهكذا فالجدول ده بيتغير كل شهر.


شهر في التاني في التالت، الغرف لسه زي ما هي! شادي وفادي وهادي D: كانوا ديماً بيقولوا لأبوهم إنهم نسيوا اليوم اللي عليهم يقوموا فيه بتنضيف الأوض بتاعتهم!

اممممم إيه العمل؟ عباس صاحبنا ده كان كمبيوتر جيك (Geek) ومبياكلش معاه الكلام ده D:
عباس راح عمل إيه بقى؟ كتب برنامج صغير (سكربت) بلغة شل (Shell Script)، اللي هي موجودة بشكل أساسي في كل أنظمة اليونكس/اللينوكس. عباس عنده سرفر عليه الموقع بتاعه في ألمانيا، وبطبيعة الحال السرفر ده شغال ٢٤ ساعة وبالتالي هو مكان مناسب جداً عشان يحط عليه السكربت بتاعه بحيث يضمن إن جهاز الكمبيوتر (السرفر) ديما شغالً عشان يشغل السكربت اللي كتبه.

المشهور في شل سكربت لما حد يجي يتحقق من قيمة أو حاجة معينة بيستخدم قاعدة IF، لو كذا حصل، إعمل كذا لو محصلش إعمل كذا ... مثلاً لو انهاردة يوم ١٨ في الشهر ابعت إيميل للعنوان الفلاني، أبسط شكل لقاعدة IF في الشل سكربت بتكون بالشكل ده:
if [ الشرط ]
 then
       في حالة تحقق الشرط نفذ أمر معين
 else
       في حالة عدم تحقق الشرط نفذ أمر تاني
       (أو ممكن مينفذش حاجة)
fi
لكن للأسف في الحالة اللي عندنا دلوقتي مش مناسبة مع IF، بالرغم من إننا ممكن نستعمل IF لكن هنضطر نكرر أجزاء كتيرة على الفاضي، ليه؟ عشان في كذا شرط (كل واحد من أولاد عباس ليه كذا يوم في الشهر مش يوم واحد)، وفي كذا فعل (أمر معين يتنفذ لكل ابن من أبناء عباس)

عشان كدا عباس استخدم تركيب تاني في الشل سكربت وهي case، الشكل البسيط لـ case بيكون بالشكل التالي:
case $متغير in
 حالة١|حالة٢|حالة٣)
      الأمر المطلوب تنفيذه إذا تطابق المتغير مع واحد من الحالات.
   ;;    
esac

وعلى ذلك، كتب عباس السكربت بتاعه بالشكل ده:
#!/bin/bash

todaydate=`date +%m-%d`
ftodaydate=`date +%F`
cmonth=08

shady="Shady Abbass"
fady="fady Abbass"
hady="Hady Abbass"

case $todaydate in
 "$cmonth-10"|"$cmonth-18"|"$cmonth-25")
 echo -e "\nDear $shady, please remember you have to clean your room today (w ela enta 3arf eh elly ha7ssalk!). \n\nBob!" | mail -r "Room Cleaning Reminder! " -s "$shady, Remember! You have to clean your room today. ($ftodaydate)" shady.abbas@gmail.com abbas@gmail.com
   ;;
 "$cmonth-7"|"$cmonth-16"|"$cmonth-25")
 echo -e "\nDear $fady, please remember you have to clean your room today (w ela enta 3arf eh elly ha7ssalk!). \n\nBob!" | mail -r "Room Cleaning Reminder! " -s "$fady, Remember! You have to clean your room today. ($ftodaydate)" fady.abbas@gmail.com abbas@gmail.com
   ;;
 "$cmonth-2"|"$cmonth-11"|"$cmonth-20")
 echo -e "\nDear $hady, please remember you have to clean your room today (w ela enta 3arf eh elly ha7ssalk!). \n\nBob!" | mail -r "Room Cleaning Reminder! " -s "$hady, Remember! You have to clean your room today. ($ftodaydate)" hady.abbas@gmail.com abbas@gmail.com
   ;;
 *)
 exit 0
esac

الاول نبدأ بالمتغيرات، المتغيرات في شل عبارة عن قيمة بتحددها لعنصر لقيمة تانية، يعني مثلاً انت بتحتاج تكتب عنوان بيتكم كذا مرة في السكربت وطبعاً عنوان بيتكم ده طويل (البيت رقم كذا في الشارع الفلاني في المنطقة الفلانية في الحي الفلاني ... إلخ) وبالتالي مش كل شوية هتقعد تكتب فيه؟ هتكتبه مرة واحدة وتستعمل المتغير بتاعه اللي انت حددته، كدا يعني:
myaddress=("101 Paul st, first call, Islets of Langerhans, Pancreas.")
وبعد كدا تستعمل القيمة اللي انت حددتها وقبلها علامة الدولار $ ، يعني مثلاً بعد تحديد المتغير اكتب الأمر ده:
echo "My Address Is: $myaddress"
الناتج هيكون كدا:
My Address Is: 101 Paul st, first call, Islets of Langerhans, Pancreas.


المهم، نكمل مع السكربت، عرفنا فكرة المتغيرات، نعرف بقى المتغيرات اللي استخدمناها في السكربت، أول حاجة هي:
todaydate=`date +%m-%d`
الأمر date بيعرض التاريخ بتاع انهارده، بالشكل ده Sat Aug 18 10:57:49 EET 2012 طبعاً إحنا مش عاوزين كل ده.

مخرجات الأمر date ليها كذا هيئة، مثلاً إنت مش عاوز كل ده، عاوز بس تاريخ انهارده بالارقام فتكتب date +%F أو عاوز بس يوم فتكتب date +%d وهكذا (تقدر تعرف كل حاجة عن أي أمر بكتابة (man date في الترمينال بتاعت الشل). اخدنا بس %m %d عشان يطلعلنا الشهر واليوم بس.

تاني حاجة هي ftodaydate وزي ما قولت، ده التاريخ كامل بالارقام زي كدا 18\8\2012
ftodaydate=`date +%F`

تالت حاجة cmonth أو الشهر الحالي، وده عشان لما نحب نغير الأيام بالشهر في السكربت منقعدش نجري ورا كل يوم كتبنا فيه الشهر، تغيير واحد ونستخدم المتغير ده بدل الشهر (أو القيمة %m مع الأمر date)
cmonth=08

بعد كدا أسماء العيال، لإن زي ما قولت، ليه نكتب اسم كبير كل مرة طالما نقدر نستخدم متغير صغير؟
shady="Shady Abbass"
fady="fady Abbass"
hady="Hady Abbass"

التوضيح بتاع بقية السكربت: هكتب السكربت بدون متغيرات، إذا تطابقت القيمة 08-18 (يوم ١٨ من شهر ٨) مع أي قيمة من القيم اللي بعد كدا ( يوم ١٠ أو ١٨ أو ٢٥ من شهر ٨)، هيبعت إيميل باسم الابن اللي عليه الدور في التنضيف.
case 08-18 in
08-10 | 08-18 | 08-25 )
echo -e "\nDear $shady, please remember you have to clean your room today (w ela enta 3arf eh elly ha7ssalk!). \n\nBob!" | mail -r "Room Cleaning Reminder! " -s "$shady, Remember! You have to clean your room today. ($ftodaydate)" shady.abbas@gmail.com abbas@gmail.com
;;
esac

وهنا استخدمنا حاجتين، echo و mail ...
إيكو، ببساطة بيطبع الكلام اللي إنت حددته، بياخد -e عشان يقدر يفهم علامة "\" اللي بيجي معاها حرف n يعني يطبع الكلام على سطر جديد مش نفس السطر.
أما ميل، فهو البرنامج المسئول عن إرسال الرسالة، نص الرسالة بياخده من مخرجات الأمر إيكو، عنوان الرسالة بيجي بعد - ‎(subject) ‎ ‎s‎ واسم المرسل وإيميله بيكون بعد -r (بنفس الصيغة دي) أخيراً الإيميل اللي هيتبعتله الرسالة، وطبعاً هنا عباس كتب إيميل ابنه وإيميله عشان مفيش حد من عياله يحاول يلعب بديله ويقول "أصل الرسالة موصلتليش!" وبالتالي حطهم في خانة اليك!

وكمان عباس استخدم المتغير بتاع اسم كل ابن من ابناءه في عنوان كل رسالةبحيث يظهر اسم الابن اللي اتبعتله الرسالة في عنوان الرسالة، عشان عباس في آخر الشهر ميلاقيش الإيميل بتاعه فيه ٢٠ رسالة بنفس العنوان وميعرفش كل رسالة بتاعت مين بالظبط.

بعدين الـ ٢ سيمي كولون أو الفاصلة المنقوطة ";;" بيهم تنتهي الفقرة الأولى وتبدأ فقرة تانية بحالات تانية.
أخيراً esac دي كلمة case لكم معكوسة واللي بتدل على نهاية بناء جملة case، ودي طريقة شائعة في صدفات يونكس/لينوكس.


طيب لحد كدا وكويس أوي، بس ازاي السكربت ده هيشتغل؟ هيفضل شغال طول اليوم؟ لمدة شهر؟ لأ طبعاً! هنستعمل الأداة الرائعة في لينوكس اللي اسمها Cron ودي ببساطة بتقوم بتشغيل أو تنفيذ حاجة معينة في فترة معينة كل (كل يوم أو كل أسبوع أو كل شهر مثلاً) وبالتالي هنخليها تشغل السكربت كل يوم الساعة ١.٠٠ صباحا (الفجر)، السكربت يتأكد إذا كان في حد عليه ترتيب غرفته انهارده ولا ﻷ، إذا لقى حد يبعت الميل، إذا ملقاش حد يقفل نفسه زي الشاطر.

هنعدل الكرون جوبز (cron jobs):
crontab -e

هنضيف السكربت فيه كدا:
* 1 * * * /root/room_cleaning_reminder.sh

بكدا السكربت هيشتغل كل يوم الساعة ١,٠٠ الفجر ويتأكد إذا اليوم ده يوافق يوم من الأيام اللي المفروض الأوض تتنضف فيها وبعد كدا السكربت يتقفل لحد اليوم التاني الساعة ١,٠٠ وهكذا.

كرون ده موضوع طويل عريض، فمفيش نية للدخول فيه، هكتفي بالصورة اللي فوق دي للتوضيح، واللي عاوز يستزيد فيه ممكن يشوف التالي:

HowTo: Add Jobs To cron Under Linux or UNIX?
Scheduling Tasks with Cron Jobs.

معلومات أكتر عن Case بالإنجليزي:

The case statement - Linux Shell Scripting Tutorial - A Beginner's handbook


وبكدا المشكلة تكون اتحلت، شادي وفادي وهادي هينضفوا اوضهم بمزاجهم أو غصب عنهم، لإن زي ما احنا عارفين، مفيش حد بيعرف يسد قصاد الجييكس ... عشان كدا زي ما بقول ديماً لا تفكر في إغضاب جيك فالعواقب ربما تكون أسوء مما تتصور D:


بس كدا ... عيد فطر رائع عليكم، حاولوا تستمتعوا على قد ما تقدروا! :-)

السبت، 11 أغسطس 2012

في بيتنا قنفذ!

الصورة لـ Cath Schneider

شوفت الصورة دي إنهارده ... صورة ظريفة جداً وفكرتني بموقف قديم D:
بالقنفد الصغير اللي وصل بيتنا بطريقة غريبة جداً D:

كنت في اعدادي تقريبا، لقيت قنفد قريب من أرض زراعية على حدود منطقتي، قررت آخده البيت، وفعلاً جبت كيس وحطيه جواه، كان في حجم كورة قدم صغيرة (يمكن مقاس ٣ أو ٤)، وده خلاني أغير الكيس يجي أربع مرات عشان كل شوية بيتقطع من شوكه D:

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

بعدها بكام شهر، سمعنا صوت جاي من حوش بيتنا ... لقينا عرسة ومخلفة عرستين صغيرين ... مش دي المشكلة لإننا كنا عارفين بيهم، بل ساعات كنت أنا واخواتي نرميلهم أكل D:

العرسة كانت بتتخانق مع حاجة! حزر إيه هي الحاجة؟ ﻷ مش القنفد اللي جبته!
قنفد صغير! في حجم كورة البيسبول تقريبا. فتحنا باب الشقة اللي تحت لقينا واحد تاني كمان ... بس ميت، ويبدوا أنه لسه ميت حديثاً :(

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


أنا ممتن جداً لوالدي ووالدتي إنهم كانوا بيسمحوا بدخول الحاجات دي البيت، أهالي تانين كانوا ممكن يتبروا من عيالهم لو جابوا حاجة زي دي البيت D:


يا لهوي! كانت أيام! D":
DDDDDDDDDDDDDDDDDDD:

الاثنين، 6 أغسطس 2012

حل مشكلة فونت فيس وفاير فوكس!

يا لهوي D:
شعور استثنائي لما تكون بتواجه مشكلة من سنتين خلتك تشد في شعرك وبالصدفة -بعد سنتين- تعرف إيه سبب المشكلة D:

مكنتش فاهم ليه فاير فوكس الوحيد اللي مش بيعرض خطوط الويب على الموقع بتاع عن طريق خاصية @font-face في css
كل حاجة تشتغل تمام ويجي مع فاير فوكس يقف! ليه؟ مش عارف! فين المشكلة؟ مش عارف؟ إيه الحل؟ أكيد مش عارف برده xD

افتراضياً الباشا طلع بيعمل بلوك لخطوط الويب اللي مش على نفس الدومين (أوحتى السب دومين)! ولإني كنت بتستعمل بلوجر فمكانش ينفع أرفع ملفات تكون على نفس الدومين.
يعني لو الموقع بتاعك كدا

#www.yourdomain.com

لازم الخطوط تكون تحت الدومين .... يعني كدا مثلاً

www.yourdomain.com/fonts/font.ttf


لكن لو استعملت أي دومين تاني (او حتى سب دومين على نفس الدومين الرئيسي) الخطوط مش هتظهر ... كدا يعني:

files.yourdomain.com/fonts/font.ttf
www.anotherdomain.com/fonts/font.ttf


الحل إنك يا إما تخلي الخطوط على نفس الدومين، أو إنك تعدل في الكونفجريشن بتاع الويب سيرفر بحيث تفهمه إنه مفيش مشاكل إن حد يستعمل أي ملفات بامتداد معين زي الخطوط مثلاً على دومين تاني.
ضيف في ملف .htaccess

<filesmatch "\.(ttf|ttc|otf|eot|woff)$">
<ifmodule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
</FilesMatch>

برده في حل تاني مقترح تستعمل وانت بتعمل الخطوط base64 encoding

font-face fonts only work on their own domain - stackoverflow
Cross domain workaround for @font-face and Firefox

D:

شل سكربت

أحبيبي ألينوكس! xD

كتبت شل سكربت وفر عليا بتاع ١٠ ساعات شغل فحت وردم D:
الشغل ده لو اتعمل يدوي ممكن أول مرة ياخد حوالي ١١ لـ ١٢ ساعة

مع السكربت خلصت الشغل في ساعتين D:

يا لهوي يا جدعان! لينوكس ده نعمة بجد!

بس أحسن حاجة في الموضوع إني رجعت أكتب سكربتات شل تاني بعد أكتر من سنة ونص توقف! :-)