هشام رزق الله
-
المساهمات
1442 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
31
إجابات الأسئلة
-
إجابة هشام رزق الله سؤال في كيف أحوّل فيدوهات لصيغة يقرؤها برنامج DVD Maker والحفاظ على الجودة؟ كانت الإجابة المقبولة
يمكنك استخدام أي برنامج لتحويل صيغ الفيديوهات ومن ثم تحويل الفيديو إلى صيغة يقبلها البرنامج مثل MP4...
فيمكنك على سبيل المثال استخدام برنامج Handbrake وهو أحد البرامج السهلة والمجانية ويعمل على عدة منصات ويدعم عدة صيغ مثل MP4 و MKV وغيرها.
عند فتح البرنامج، اضغط على زر Source لاستيراد ملف الفيديو الذي ترغب بضغطه.
ثم من خانة Destination حدّد مسار ملف الفيديو الناتج
الآن من خيارات تصدير الفيديو فعّل خيار Web Optimized، انظر الصورة التالية:
ثم اضغط على زر Start في الأعلى لتبدأ عملية التحويل.
بالتوفيق
-
إجابة هشام رزق الله سؤال في كيف يمكنني التحكم بكاميرا الهاتف الذكي عن طريق الحاسب؟ كانت الإجابة المقبولة
نعم هذا ممكن بالطبع عن طريق عدة طبيقات والتي من أشهرها تطبيق AirDroid وهو تطبيق للتحكم بالهاتف الجوال من خلال المتصفح، فعند تثبيت هذا التطبيق فستتحكم إلى جانب الكاميرا بالملفات والقوائم والإتصالات وغيرها.
بعد تثبيت البرنامج على هاتفك الأندرويد، وتشغيله، سيعطيك رقم يُطلب منك وضعه في المتصفح ثم الموافقة على طلب الدخول من الهاتف مجددًا.
ستظهر أمامك في متصفح الحاسب شاشة مشابهة لما يلي:
بعد الضغط عليها سيتم عرض كاميرا هاتفك:
إذا لم يعحبك التطبيق الأول فيمكنك استخدام هذا التطبيق Camera Remote المختص بشاشة الهاتف والكاميرا,
-
إجابة هشام رزق الله سؤال في ما سبب هذه المشكلة في tkinter مع qpython؟ كانت الإجابة المقبولة
الرسالة تخبرك أنك لم تقم بتثبيت tkinter، لأنه لا يُثبّت بشكل افتراضي مع QPython على عكس SL4A و Kivy، لذلك يجب أن تثبته بنفسك وذلك عن طريق استخدام pip والتي ستجدها بين بقية السكربتات.
إذا كنت مبرمج وتريد برمجة لأندرويد باستخدام QPython فأنصحك باستخدام مكتبة Kivy أو SL4A فهي أفضل من tkinter على أجهزة الهاتف.
-
إجابة هشام رزق الله سؤال في كيف أسرّع استجابة سيرفر mysql وأحسّن أداءه؟ كانت الإجابة المقبولة
أعتقد أنه من الأفضل أن تغيّر الخادم لآخر أقوى وأسرع، فالطلبات كثيرة والجدول ضخم للغاية.
توجد العديد من الطرق لتحسين عمل طلبات MySQL وجعلها أسرع من قبل، لكن احذر عند استخدامها فقط تحدث لكن الكثير من المشاكل ويتوقف على اثرها الخادم لبعض الوقت.
يمكنك الإطلاع على هذه الطريقة لتحسين خادمك، والتي تعمد على القيام بتغييرات على الجداول وفي كتابة الطلبات وبذلك ستصبح الاستجابة أسرع قليلا.
يمكنك الإطلاع على هذه الطريقة أيضا والتي تعتمد أساسا على تحسين كتابة الطلبات لزيادة السرعة، أو هذه المقالة حول 10 نصائح للتحسين.
-
إجابة هشام رزق الله سؤال في ما هو الفرق بين openCart أم magneto؟ كانت الإجابة المقبولة
يتشابه كلا السكربتين بأنهما مفتوحي المصدر ومشهورين ولديهما قاعدة ضخمة من المستخدمين لذلك ستجد الدعم لهم بسهولة، ويمتلك كلاهما مجموعة كبيرة من الإضافات والقوالب المتنوعة.
في الوقت الحالي يُستعمل Magneto في حوالي 30% من المتاجر الالكترونية وبذلك فهو أكثر السكربتات استخدما في المتاجر، لكن عربيا، أعتقد أن OpenCart مشهور أكثر من Magneto.
أنصحك بالبدء بـ OpenCart إذا كان مشروعك جديد، فهو يوفر لك متجر رائع وموثوق مع أدوات رائعة بدون أن تصرف الكثير من الأموال عليه.
أما بالنسبة لـ Magneto فيمكنك تخصيصه بشكل أكبر من OpenCart ولديه مميزات وخيارات أكثر من الأخير، فالخيارات المتوفر في OpenCart أقل بكثير من Magneto بالإضافة إلى مشاكله مع SEO والروابط.
-
إجابة هشام رزق الله سؤال في كيف تُدار الألعاب على الهواتف الذكية؟ كانت الإجابة المقبولة
يمكن للمبرمج أن يصنع لك لوحة تحكم باللعبة وبذلك ستتحكم بلعبتك على مدار الساعة عن طريق موقع أو برنامج أو حتى تطبيق (حسب ما برمجه المبرمج).
عندما تريد إضافة أشياء ومميزات جديدة إلى اللعبة ستحتاج إلى المبرمج (من الأفضل أن يكون نفس المبرمج) ليضيفها لك.
من الافضل أن يكون لديك مبرمج يساعدك على إدارة اللعبة لأنه قد تحدث مشاكل في اللعبة في أي وقت وستتوقف اللعبة عن العمل حتى يتم إصلاح الخطأ.
-
إجابة هشام رزق الله سؤال في كيف أصنع روم أندرويد خاص بي؟ كانت الإجابة المقبولة
إذا أردت مصدر شامل لإنشاء روم أندرويد فأنصحك بهذه السلسلة من الدروس والتي ستشرح كيفية إنشاء روم أندرويد بسهولة للمبتدئين ثم ستجد مصادر متعددة للتقدم واحتراف التعديل وإنشاء رومات أندرويد.
قد تحتاج إلى معرفة لغات برمجية مثل جافا وسي وسي بلس بلس وأسمبلي حسب نوع ودرجة التعديلات التي تريد القيام بها.
قد يساعدك هذا الموضوع أيضا في إنشاء الروم.
-
إجابة هشام رزق الله سؤال في ما سبب هذا الخطأ في برنامجي بلغة جافا؟ كانت الإجابة المقبولة
الخطأ في ++i، والتي يجب أن تكون i++ لأن الأولى ستغير قيمة i لكن سيتم إرجاع قيمة i الأصلية قبل الزيادة وأما i++ فإنها ستغير قيمة i وستُرجع قيمة i الجديدة للمقارنة.
هذا مثال للحالة الأولى:
i = 1; j = ++i; (i is 2, j is 2) وهذا مثال للحالة الثاني:
i = 1; j = i++; (i is 2, j is 1) لذلك يجب أن تغيّر سطر الجملة الشرطية إلى التالي ليعمل كما تريده:
if ((++i)%2 == 0)
-
إجابة هشام رزق الله سؤال في كيف أمنع ضغطة الزر الأيمن للفأرة في صفحة HTML؟ كانت الإجابة المقبولة
يمكنك فعل ذلك بسهولة باستخدام لغة جافا سكربت كما في المثال التالي:
<script language="javascript"> document.onmousedown=disableclick; status="Right Click Disabled"; function disableclick(event) { if(event.button==2) { alert(status); return false; } } </script> وتحتاج إلى بعض التغييرات على body ليصبح كما في المثال التالي:
<body oncontextmenu="return false"> ... </body> نصيحة: لا تفعل هذا الأمر على موقعك، فالمستخدم يستطيع تجاوز تعطيل الضغط بالزر الأيمن للفأرة بطرق عديد من أبسطها تعطيل جافاسكربت في الصفحة، فهذا الأمر سيزعج المستخدم كثيرا وسيكره موقعك ولن يعود لزيارته مرة أخرى.
-
إجابة هشام رزق الله سؤال في ماذا يعني أن تكون قيمة margin صفر في الـ css ؟ كانت الإجابة المقبولة
لديها فائدة كما أخبرتك في وضع هامش، فمثلا أنظر لهذا المثال من موقع W3schools لو حولت جميع قيم margin إلى 0 ووضعت margin: 0px; إلى p ستجد أن العناصر أصبحت متلاصقة.
عدّل الشيفرة البرمجية في المثال السابق لتصبح كما في المثال التالي لترى الفرق:
<!DOCTYPE html> <html> <head> <style> p { background-color: yellow; margin: 0px; } p.ex { border:1px solid red; margin-top: 0px; margin-bottom: 0px; margin-right: 0px; margin-left: 0px; } </style> </head> <body> <h2>Using Individual margin Properties:</h2> <p>This is a paragraph with no specified margins.</p> <p class="ex">This paragraph has a top and bottom margin of 100px, a left margin of 80px, and a right margin of 150px.</p> </body> </html> أرجو أن أكون قد وفقت في توضيح الفرق بين المثال السابق وهذا المثال.
للمزيد من المعلومات حول margin أنصحك بالإطلاع على دروس w3schools.
-
إجابة هشام رزق الله سؤال في ما هي طرق مسح textarea باستخدام جافا سكربت؟ كانت الإجابة المقبولة
توجد عدة طرق لفعل ذلك باستخدام جافا سكربت فيمكنك على سبيل المثال انشاء دالة تغيّر قيمة textarea إلى لا شيء كما في المثال التالي:
function clearCon(element) { element.value = ''; } حيث ستكون الشيفرة البرمجية بلغة HTML للدالة السابقة هي التالية:
<textarea onfocus="clearCon(this);">Test Test Test</textarea> أو يمكنك فعل ما هو أفضل ووضع باللون الرصاصي سيختفي عند الضغط على textarea وذلك عن طريق استخدام placeholder كما في المثال التالي:
<textarea placeholder="Test Test Test"></textarea>
-
إجابة هشام رزق الله سؤال في ما هي أفضل مكتبات فيجوال بيسك لبناء تطبيقات أندرويد؟ كانت الإجابة المقبولة
أفضل مكتبة يمكنك استخدامها مع فيجوال ستوديو هي Xamarin فهي تتميز بإمكانية إنشاء تطبيقات لأنظمة أندرويد و ios وويندوز فون بسهولة تامة لكن عيبها الوحيد أنك ستحتاج إلى تعلم سي شارب أو سي بلس بلس، للمزيد من المعلومات يمكنك الإطلاع على هذه الصفحة.
توجد طريقة لاستخدام مكتبات فيجوال بيسك VB.NET في Xamarin لكن من الأفضل تعلم لغات سي شارب أو سي بلس بلس بدلا من ذلك لأنها أكثر دعما والأكثر شرحا.
-
إجابة هشام رزق الله سؤال في لماذا لا يعمل height مع الوحدة المئوية في css ؟ كانت الإجابة المقبولة
هذا بسبب أن النسبة المئوية لـ height تعود إلى الكتلة (Block) الأكبر منها لذلك يجب تحديد إرتفاع حجم الكتلة الأكبر منها بالبيكسل قبل أن تقوم بوضع نسبة مئوية.
فمثلا النسبة المئوية 50% لكتلة height:200px فهو 100 بيكسل كما في المثال التالي:
<div id="a" style="width: 100px; height: 200px; background-color: orange"> <div id="aa" style="width: 100px; height: 50%; background-color: blue"></div> </div> لكن نسبة 50% من الحجم الافتراضي height:auto هو 0 بيكسل لذلك لن يزداد الحجم كما في هذا المثال:
<div id="b" style="width: 100px; background-color: orange"> <div id="bb" style="width: 100px; height: 50%; background-color: blue"></div> </div>
-
إجابة هشام رزق الله سؤال في ماذا تعني File Permissions الموجودة بالسيرفير؟ كانت الإجابة المقبولة
صلاحيات الملفات على أنظمة لينكس سهلة، ف Write معنها صلاحية الكتابة على الملف وRead معنها صلاحية قراءة الملف وأما Execute فهي صلاحية تنفيذ/تشغيل الملف.
صلاحية التنفيذ يرمز لها بالرقم 1.
صلاحية الكتابة يرمز لها بالرقم 2.
صلاحية القراءة يرمز لها بالرقم 4.
كود 777 يتكون من ثلاثة أجزاء فـ 7 الأولى ترمز إلى صلاحيات مالك الملف و 7 الثانية إلى صلاحيات المجموعة وأما الأخيرة فترمز إلى صلاحيات الآخرين.
الرقم 7 هو جمع الأرقام 1 + 2 + 4 = 7 أي لديه صلاحيات التنفيذ والقراءة والكتابة.
أما 5 فهو جمع الأرقام 1 + 4 + 5 أي لديه صلاحية التنفيذ والقراءة.
وهكذا دواليك.
-
إجابة هشام رزق الله سؤال في كيف أستطيع رفع الملفات على الإنترنت؟ كانت الإجابة المقبولة
توجد العديد من المواقع المجانية لرفع الملفات بدون الحاجة إلى تثبيت أي شيء على جهازك، بل إن بعض المواقع تدفع لك مقابل رفع ملفاتك حسب عدد مرات تنزيلها.
أشهر مواقع مزامنة الملفات في الوقت الحالي هي dropbox و google drive، كما يعتبر موقع mega أيضا من المواقع المعروفة وأوسعها مساحة مجانية مقارنة بالخدمتين السابقتين.
إذا كنت سترفع صور عامة فأنصح باستخدام موقع صور العربي.
-
إجابة هشام رزق الله سؤال في ما الفرق بين أنظمة ريدهات ودبيان في الخوادم؟ كانت الإجابة المقبولة
أنظمة ريدهات (Redhat, Centos, Fedora,..) هي الأكثر استخداما على مستوى الخوادم والأجهزة في الشركات الكبيرة، وستتلقى دعم كبير إذا استخدمت توزيعة Redhat (الدعم مدفوع) وتتميز أنظمة ردهات كذلك بعمل لوحة cpanel عليها دون الأنظمة الأخرى.
إذا أردت توزيعة ريدهات لكن بدون أن تدفع مقابل الدعم الفني استخدم Centos
إذا أردت أن تحصل أحدث الإصدارات استخدام فيدورا Fedora والتي تُبنى عليها توزيعة ريدهات الرسمية.
أما بالنسبة لنظام دبيان فيتميز بأنه مجاني بشكل كامل ولا يملك أي دعم بمقابل مالي (يستثنى من ذلك نظام أوبنتو المبني عليه).
تتشابه أنظمة لينكس كثيرا، أي أنه عند تعلمك العمل على إحدى التوزيعات ستكون أغلب الأوامر تعمل على جميع التوزيعات الأخرى.
في العموم التوزيعات الريدهاتية (Redhat, Centos, Fedora) تُعرف بتوزيعات الأعمال وتملك الحصة الأكبر في سوق خوادم الأعمال والشركات الكبيرة والحكومات، ويمكنك الثقة بها والاعتماد عليها، وهذا ما أنصحك به.
-
إجابة هشام رزق الله سؤال في كيف أحل هذه المشكلة في الطباعة باللغة العربية في بايثون 3؟ كانت الإجابة المقبولة
سبب هذا الخطأ أنك لم تُعرّف الترميز المناسب لملفك، فإذا كانت النصوص في نفس ملف شيفرة بايثون البرمجية فضع هذه الشيفرة في السطر الثاني من ملف:
# -*- coding: utf-8 -*- حيث سيعرف بايثون أنك ستستخدم ترميز utf-8 في ذلك الملف، أما لو أردت فتح ملف بترميز معين فاستخدم السطر:
with open('filename', 'w', encoding='utf-8') as f:
-
إجابة هشام رزق الله سؤال في كيف استطيع مبادلة محتويات متغيرين دون استخدام متغير ثالث؟ كانت الإجابة المقبولة
إذا كنت تستخدم لغة بايثون فسيكون الحل سهل للغاية بسطر واحد كما في المثال التالي:
a, b = b, a أما لو كنت تستخدم لغة برمجة أخرى فتوجد طريقتين لفعل ذلك، فإما تستخدم الجمع كما في المقال التالي:
A = A + B B = A - B A = A - B أو تستخدم عملية الضرب في حال كان المتغيرين لا يساويان 0:
A = A * B B = A / B A = A / B
-
إجابة هشام رزق الله سؤال في كيف أضمّن إمكانية التحقق برقم الهاتف على تطبيق اندرويد؟ كانت الإجابة المقبولة
لن تستطيع فعل ذلك بشكل مجاني، فإما أن تبحث عن موفر خدمة SMS وتشترك معه على ارسال رسالة بثمن معين مثلا كل 1000 رسالة، وستجد قائمة طويلة من الشركات التي توفر هذه الخدمات في جوجل أو يمكنك استخدام موديم GSM وهذا الأمر قد يكون مكلفا للغاية حيث يجب أن تشتري هذه الموديم وتصْرِفَ على خدمات الرسائل مبالغ طائلة.
-
إجابة هشام رزق الله سؤال في هل يمكنني حجب اليوتيوب من الراوتر؟ كانت الإجابة المقبولة
نعم يمكنك حجب أي موقع من خلال راوتر TP-LINK حسب هذه الخطوات:
قم بفتح المتصفح وادخل إلى اعدادات الراوتر من خلال عنوان 192.168.0.1 أو 192.168.1.1. بعد ذلك اذهب إلى Access Control-Host ثم انقر على “Add New…”. ادخل المعلومات التالية لتطبيق أمر الحجب على جميع الأجهزة في الشبكة: اذهب إلى Access Control ثم Target وانقر على "Add New...". ادخل المعلومات التالية لحجب أي موقع يحتوي على كلمة google مثلا: اذهب إلى Access Control ثم Rule وفعّل خيار "Enable Internet Access Control" واختر " Deny the packets specified by any enabled access control policy to pass through the Router". انقر على "Add New..." ثم أدخل أي اسم في مربع "Rule Name:" و اسم المضيف الذي اخترناه في الخطوة الثالثة في مربع "Host:" وفي مربع "Target:" ضع الهدف الذي اخترناه في الخطوة الخامسة، وبعد ذلك اختر "Anytime" في "Schedule:" و "Deny" في "Action:" و"Enabled" في "Status:". جرب الآن فتح الموقع وستجد أنه لا يعمل.
المصدر
-
إجابة هشام رزق الله سؤال في أيهما أفضل للموقع www أو بدون؟ كانت الإجابة المقبولة
لا لن يعتبر جوجل ذلك، فكلاهما يشيران لنفس الموقع لذلك لا تقلق من هذه الناحية.
في شركات الاستضافة الحديثة، إذا وضعت www إلى دومين (نطاق) الموقع فيمكنك الولوج إلى الموقع حتى بدون كتابة www ويمكنك تجربة ذلك وسترى أنه لا فرق.
بعض الشركات الأخرى تحتاج إلى تفعيل هذه الميزة.
-
إجابة هشام رزق الله سؤال في هل تغني Node.js تماماً عن Php ؟ كانت الإجابة المقبولة
يمكنك إنشاء مواقع باستخدام Node.js والاستغناء عن PHP، لكن في الوقت الحالي، يُفضّل تعلم لغة PHP إلى جانب لغة Node.js لأن دعمها أكبر من Node.js، بالإضافة إلى أن أغلب المواقع على شبكة الإنترنت مبرمجة بلغة PHP لذلك ستحتاج في بعض الأحيان إلى معرفة بلغة PHP لقراءة شيفرة برمجية لموقع ما أو لتطوير أدوات لإحدى منصات إدارة المحتوى (مثل ووردبريس...).
أتوقع أنه في السنوات القادم سيتم الاستغناء عن PHP لصالح JavaScript و Node.js وغيرها، لأن استخدامهم يزداد يوما بعد يوم.
-
إجابة هشام رزق الله سؤال في كيف أضع مهلة لـ socket في روبي؟ كانت الإجابة المقبولة
إن أبسط خيار وجدته لفعل ذلك هو عن طريق استخدام Timeout::timeout حيث سنمرر لهذا التابع عدد الثواني التي نريد وضعها كمهلة لـ socket في برنامجنا و من ثم نضع داخل كتلة (block) هذا التابع الأوامر التي نريد تنفيذها في هذه المهلة كما يظهر في المثال التالي:
require 'timeout' ... begin timeout(5) do message, client_address = some_socket.recvfrom(1024) end rescue Timeout::Error puts "Timed out!" end
-
إجابة هشام رزق الله سؤال في كيف أستخدم JavaScript في unity 3d؟ كانت الإجابة المقبولة
يمكنك في يونتي برمجة ألعاب باستخدام لغة برمجية تشبه لغة جافا سكربت (بها بعض الفروقات البسيطة عن جافا سكربت الأصلية)، وذلك باستخدام UnityScript.
من أهم الفروقات بينهما أن UnityScript تفرض عليك استخدام رمز ; في نهاية بعض الأوامر على عكس جافا سكربت بالإضافة إلى أنه لا يمكنك تعريف أكثر من متغير في نفس السطر عند استخدام UnityScript.
للمزيد من المعلومات حول الفرق بين جافاسكربت وunityScript أنصحك بقراءة هذا المقال.
أما لو أردت بعض الدروس الأساسية في UnityScript فأنصحك بالبدء بهذا الدرس.
-
إجابة هشام رزق الله سؤال في كيف أدمج السلاسل النصية دون استخدام عامل + في بايثون؟ كانت الإجابة المقبولة
نعم، فعلى سبيل المثال حسب توثيق بايثون الرسمي، فإن السلاسل النصية المفصولة بفراغات سيتم اعتبارهم سلسلة نصية واحدة وسيكون معناها متشابه كأننا استخدمنا معامل الجمع أي أن "hello” 'world'سيتم اعتبارها "helloworld” كما في المثال التالي:
>> string1 = 'Hello' 'World' 'HelloWorld' ولاحظ أنك لا تستطيع استخدام هذه الطريقة مع المتغيرات أي أنه يجب وضع السلاسل النصية للدمج وليس المتغيرات التي تملك السلاسل النصية.