اذهب إلى المحتوى

Mustafa Suleiman

الأعضاء
  • المساهمات

    14543
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    385

كل منشورات العضو Mustafa Suleiman

  1. سأشرح لك الأمر وحاول تطبيقه على مشروع لتستفيد، أولاً تثبيت مكتبة django-pwa: pip install django-pwa ثم في ملف settings.py في الجزء الخاص بـ installed apps قم بإضافة pwa: ثم في ملف urls.py الذي بجانب settings.py ضع المسار التالي: path(“, include(‘pwa.urls’)) ثم في مجلد js قم بإنشاء ملف باسم serviceworker.js وضع التالي: let staticCacheName = 'djangopwa-v1'; self.addEventListener('install', function(event) { event.waitUntil( caches.open(staticCacheName).then(function(cache) { return cache.addAll([ '', ]); }) ); }); self.addEventListener('fetch', function(event) { let requestUrl = new URL(event.request.url); if (requestUrl.origin === location.origin) { if ((requestUrl.pathname === '/')) { event.respondWith(caches.match('')); return; } } event.respondWith( caches.match(event.request).then(function(response) { return response || fetch(event.request); }) ); }); الآن في ملف settings.py ضع التالي بأي مكان: PWA_SERVICE_WORKER_PATH = os.path.join(BASE_DIR, ‘static/js’, ‘serviceworker.js’) ثم ضع التالي أيضًا: PWA_APP_NAME = 'hsoub' PWA_APP_DESCRIPTION = "hsoub PWA" PWA_APP_THEME_COLOR = '#000000' PWA_APP_BACKGROUND_COLOR = '#ffffff' PWA_APP_DISPLAY = 'standalone' PWA_APP_SCOPE = '/' PWA_APP_ORIENTATION = 'any' PWA_APP_START_URL = '/' PWA_APP_STATUS_BAR_COLOR = 'default' PWA_APP_ICONS = [ { 'src': 'static/images/icon-160x160.png', 'sizes': '160x160' } ] PWA_APP_ICONS_APPLE = [ { 'src': 'static/images/icon-160x160.png', 'sizes': '160x160' } ] PWA_APP_SPLASH_SCREEN = [ { 'src': 'static/images/icon.png', 'media': '(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2)' } ] PWA_APP_DIR = 'ltr' PWA_APP_LANG = 'en-US' بالطبع لا تنسى وضع أيقونات في مجلد static/images لاحظ في الكود نقوم بتحديد أيقونة باسم icon.png وغيرها بمقاسات مختلفة كأيقونة لتطبيق PWA، تستطيع توليد تلك الصور من خلال https://redketchup.io/icon-converter. وسيقوم إطار جانغو بإنشاء ملف manifest.json من خلال تلك البيانات. والآن في قالب الصفحة الرئيسية ضع التالي بعد عنصر <html>: {% load pwa %} {% progressive_web_app_meta %} والآن عند تشغيل المشروع سترى أيقونة لتثبيت PWA في شريط العنوان على اليمين.
  2. تطبيقات الهاتف الأمر مختلف، يتم منح الإذن للتطبيقات وليس للمواقع، مثلاً يتم السماح لمتصفح جوجل كروم بالوصول لوحدة التخزين، بالتالي المواقع إذا قمت بالضغط على زر رفع صورة سيتم عرض الصور المتاحة على هاتفك وذلك من خلال جوجل كروم وليس الموقع. سبب ذلك أنّ التطبيقات مثبتة على هاتفك بينما المواقع غير مثبتة، فور مغادرة الموقع ليس هناك صلة بينك وبينه، على عكس التطبيق الموجود على هاتفك لذا يجب التحكم في الصلاحيات الممنوحة له. وهناك لغات مختلفة لتطوير التطبيقات، وعامًة تستطيع تطوير تطبيق من خلال جافاسكريبت وHTML, CSS من خلال إطار React Native أو ionic.
  3. بالنسبة لمواقع الويب أفضل طريقة هي استخدام إضافة wappalyzer على المتصفح، ستعرض لك أغلب التقنيات المستخدمة بالموقع. توجد إضافات ومنصات أخرى لكن تلك أفضلهم. ستتجه إلى الموقع الذي تريد التعرف على التقنيات المستخدمة به ثم تقوم بالضغط على أيقونة الإضافة وسيتم عرض ما تم التعرف عليه. بعدها تستطيع استخدام موقع builtwith إن لم تحصل على ما تريد، فهو يوفر نفس الخدمة.
  4. Big Interview من اسمها منصة عبر الإنترنت توفر أدوات وموارد لمساعدة الأشخاص على التحضير لمقابلات العمل. ستجد بها مجموعة واسعة من أسئلة المقابلات الممارسة، مع ملاحظات فورية من الذكاء الاصطناعي، وتقدم نصائح وإرشادات حول كيفية التحضير لمقابلات العمل، بما في ذلك كيفية كتابة سيرة ذاتية قوية، وكيفية الإجابة على أسئلة صعبة، وكيفية التفاوض على الراتب. أيضًا خدمة مراجعة سيرة ذاتية من قبل خبراء في مجال التوظيف، وميزة ممارسة مقابلات الفيديو مع محاكاة بيئة مقابلة حقيقية. بينما Byteboard منصة توفر مقابلات تقنية ممارسة لطلاب علوم الكمبيوتر والمهندسين، أي تركيزها على مقابلات تقنية. ستجد بها مجموعة واسعة من أسئلة المقابلات التقنية، بما في ذلك أسئلة البرمجة، وأسئلة تصميم البيانات، وأسئلة حل المشكلات، مع ملاحظات فورية على أداء المتقدمين، بما في ذلك حلولهم للأسئلة. أيضًا تتوفر ميزة ممارسة مقابلات الفيديو مع محاكاة بيئة مقابلة حقيقية. ويوجد منصات مشابهة مثل Pramp التي توفر ممارسة مقابلات تقنية مجانية. و LeetCode لممارسة حل أسئلة البرمجة مع التركيز على أسئلة المقابلات.
  5. ستجد أسفل فيديو الدرس في نهاية الصفحة صندوق تعليقات كما هنا، أرجو طرح الأسئلة أسفل الدرس وليس هنا في قسم الأسئلة البرمجة حيث نطرح الأسئلة العامة الغير متعلقة بمحتوى الدورة أو الدرس، وذلك لمساعدتك بشكل أفضل.
  6. من المفترض أن تصل لجميع الدورات الخاصة بالشهادة، تأكد من أنك قمت بتسجيل الدخول من نفس الحساب الذي تم الدفع منه.
  7. اختر البلد الخاصة بك وليس الخاصة بالبطاقة. لكن الاسم عليك كتابة الاسم الموجود على البطاقة، أي اسم صاحب البطاقة نفسه. والـ CVV هي 3 أرقام ستجدها في خلف البطاقة وهي أرقام سرية.
  8. ابحث عن وسيط مالي قم بالسؤال على الجروبات المختصة بالمدفوعات الإلكترونية، لكن احذر من عمليات النصب، عليك إختيار أشخاص مشهود لها بالثقة.
  9. تركز شهادات جوجل على أدوات تحليلات البيانات من جوجل وهي أكثر ملاءمة لمن يعمل في مجال التسويق الرقمي والتجارة الإلكترونية، بينما تركز شهادات ميتا على منصات الإعلان وتحليلات فيسبوك، وهي مناسبة للأفراد العاملين في مجال تسويق وسائل التواصل الاجتماعي والإعلان. وتغطي شهادات آي بي إم مجموعة أوسع من أدوات وتقنيات تحليلات البيانات، وهي أكثر ملاءمة للأفراد العاملين في مجموعة متنوعة من الصناعات، بما في ذلك المالية، والرعاية الصحية، والتجزئة. بالتالي شهادات جوجل وميتا بشكل عام أكثر ملاءمة للمبتدئين، بينما شهادات آي بي إم أكثر تقدمًا. بمعنى الفرق في التخصص، فشهادة تحليلات البيانات من جوجل صُمّمت لمن يرغب في إثبات مهاراته في تحليل البيانات، بما في ذلك تنظيف البيانات، وتصورها، وتعلم الآلة، وتغطي أدوات تحليلات البيانات من جوجل، مثل Google Analytics و Google Sheets و Google Data Studio. وأيضًا تركز على تقنياتها مثل Google Cloud Platform (GCP) و BigQuery و Dataflow. بينما شهادة Facebook Blueprint هي خاصة بمن يهتم بالعمل على منصة الإعلان والتحليل الخاصة بفيسبوك، بما في ذلك Facebook Ads Manager و Facebook Insights و Facebook Analytics. في حين شهادة IBM تغطي أدوات تحليلات البيانات من آي بي إم، مثل IBM SPSS و IBM Cognos و IBM InfoSphere.
  10. أية مدفوعات خارج دولتك هي بعملة الدولار غالبًا، فتلك هي العملة الدولية الأولى، ستجد كلمة USD أو رمز $ في المبلغ وذلك يعني الدولار الأمريكي. وفي حال أنك من مصر، ستحتاج إلى بطاقة تقبل الدفع بالدولار، وهي بطاقة من نوع Credit Card فقط، أي بطاقة إئتمانية وهناك رسوم 14% تدبير عملة في حال كان الحساب بالجنيه المصري، أو أن يكون لديك حساب دولاري وليس بالجنيه المصري، كلاهما يصح. تستطيع الدفع من خلال وسيط مقابل رسوم 3% غالبًا.
  11. باديء الأمر لغة برمجة، والمستخدم في تحليل البيانات هما بايثون و R، لديك أيضًا لغة الاستعلام الخاصة بقواعد البيانات وهي SQL. ثم عليك فهم كيفية الوصول إلى البيانات، واستخراجها، وتنظيمها من قواعد بيانات مختلفة (مثل MySQL، PostgreSQL، MongoDB). ما تحتاجه بعد الإنتهاء من الدورة هنا والتي ستتعلم بها تحليل البيانات بلغة برمجة الـ Python وتعلم المكتبات الخاصة بذلك مثل Pandas و NumPy و Matplotlib وغيرهم. ستحتاج إلى دراسة دورة CS50 على اليوتيوب وهي مجانية وستعطيك فكرة أولية عن علوم الحاسوب والخوارزميات. بعد ذلك الالتحاق بدورة عامة لتعلم أساسيات برنامج الـ Excel، وبالأخص دوامل ومعادلات SUM, AVERAGE, VLOOKUP, INDEX, و MATCH. ثم دورة لتعلم الإحصاء.والإحتمالات، Khan Academy مصدر جيد. ثم دورة أخرى متخصصة في تحليل البيانات باستخدام برنامج الـ Excel. ثم تعلم قواعد البيانات ولغة الـ SQL، وبالأخص SQL for Data Analytics. الخطوة التالية هي تعلم أحد برامج التحليل والتصوير المرئي للبيانات مثل Bower BI أو Tableau أو Google Looker Studio، وأنصحك ببرنامج Bower BI. كما أنه يجب عليكِ الاستمرار في التطبيق بكثافة على بيانات حقيقية لتحليلها كلما تقدمتِ في المسار التعليمي، ومن أشهر المواقع التي يمكنك الحصول منها على بيانات لتقم بتحليلها هو موقع Kaggle الشهير، ولديكِ أيضًا Data.gov اليوتيوب مصدر جيد للتعلم لكن ستحتاج إلى البحث عن مصادر أخرى أيضًا في بعض الأحيان. للتبسيط الصورة التالية جيدة:
  12. ما تحتاجه هو تصميم بسيط ويعطي شعور بالدفء والأريحية للزوار، ثم كتابة مقالات وإنشاء محتوى بالفيديو عن الأمور التي يهتم بها من يبحثون عن الخدمات التي تقدمها. واجعل المحتوى بغرض الإفادة أكثر منه كتسويق، فلو قمت بإفادة الزوار سيبحثون عن الخدمات التي تقدمها، بالطبع عليك ذكر ما تقدمه بشكل سلس في المقالات والمحتوى المرئي. في مجالك المحتوى المرئي هو الأهم، وتستطيع نشر السكريبت الخاص بالفيديو مثلاً كمقالة (ملخص مثلاً) ثم تضمين الفيديو في المقالة وبذلك تغطي كل من المحتوى النصي والمرئي. وعليك استهداف القنوات الصحيحة للجمهور الذي تستهدفه، هل هو على تويتر أم فيسبوك أو تيك توك أم يوتيوب؟ من الأفضل إنشاء قناة على اليوتيوب وإضافة محتوى طويل بها، ثم نشر مقاطع قصيرة منه على فيسبوك وتيك توك وانستجرام. واجعل الأمر بسيط، كلما كان أبسط كان أفضل، وبالطبع بشكل إحترافي.
  13. بالنسبة للإصدار 4 من بوتستراب والذي يتم شرحه هنا، فترتيب الروابط مهم، حيث تعتمد بوتستراب على jQuery لذا يجب وضع رابط jQuery قبل رابط مكتبة بوتستراب أي كالتالي: <script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js" integrity="sha384-w1Q4orYjBQndcko6MimVbzY0tgp4pWB4lZ7lr30WKz0vr/aWKhXdBNmNb5D92v7s" crossorigin="anonymous"></script> وسيكون الكود كالتالي: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css" integrity="sha384-TX8t27EcRE3e/ihU7zmQxVncDAy5uIKz4rEkgIXeMed4M0jlfIDPvg6uqKI2xXr2" crossorigin="anonymous" /> <script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous" ></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js" integrity="sha384-w1Q4orYjBQndcko6MimVbzY0tgp4pWB4lZ7lr30WKz0vr/aWKhXdBNmNb5D92v7s" crossorigin="anonymous" ></script> </head> <body> <nav class="navbar navbar-expand-md"> <a class="navbar-brand" href="#">Logo</a> <button class="navbar-toggler navbar-dark" type="button" data-toggle="collapse" data-target="#main-navigation" > <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="main-navigation"> <ul class="navbar-nav"> <li class="nav-item"> <a class="nav-link" href="#">Home</a> </li> <li class="nav-item"> <a class="nav-link" href="#">About</a> </li> <li class="nav-item"> <a class="nav-link" href="#">Contact</a> </li> </ul> </div> </nav> </body> </html> وستعمل بشكل سليم لديك. أما بالنسبة للإصدار 5 من بوتستراب فلا حاجة لتضمين jQuery فلم يعد يتم الإعتماد عليها.
  14. من خلال الضغط على الشحنات ثم اختر تعديلات المخزون: وستنتقل بعدها إلى صفحة تعديلات المخزون، إذ ستُعرض جميع تعديلات المخزون السابقة بالإضافة إلى المنتجات الموجودة في المخزون وكمياتها. يمكنك النقر فوق أي من التعديلات لإعادة تكوينه.
  15. هل عند نسخ الملف على جهازك يعمل البرنامج بشكل سليم؟ أيضًا حاول تحديث البرنامج.
  16. قم بتفقد الاستجابة من خلال أداة مثل postman، هل يستجيب البوت للطلبات المرسلة؟ إن كان يستجيب، قم بإختباره بشكل منفصل في جروب منفصل، فربما هناك تضارب في الأوامر بين البوتات.
  17. لا يوجد مرجع عربي شامل، لكن أقرب مثال لما تريده هو arabflutter، وستجد على اليوتيوب دورات عربية تشرح فلاتر، لكن كنصيحة أنت تدور في دائرة مفرغة، تحتاج إلى تحسين لغتك الإنجليزية إلى الحد الذي تستطيع به الاستماع والقراءة بشكل جيد، فاللغة الإنجليزية هي لغة البرمجة.
  18. شركة الاستضافة تعتمد على حجم الزورار المتوقع، عامًة لو كان المشروع في بدايته وعدد زوار قليل، فيكفي رفع المشروع على vercel أو netlify أو GitHub pages أو Cloudflare pages ثم شراء domain خاص وربطه ليبدوا المشروع بشكل إحترافي. وتلك أقل تكلفة، وللعلم الأسهل في نشر المشروع هي vercel أو netlify. بالنسبة لتحسين الـ SEO من خلال الكلمات المفتاحية، عليك البحث عن meta tags وستحتاج إلى استخدام مكتبة React Helmet. ولو أردت تحسين الـ SEO بشكل أفضل، ابحث على اليوتيوب عن React SSR، وذلك ما يتم في المشاريع التي بحاجة إلى أرشفة جوجل أي الظهور في نتائج جوجل. وستوفر عليك الكثير من المجهود لو قمت ببناء المشروع من خلال Next.js، لكن حاليًا أنت في مرحلة التعلم والقيام ببناء مشاريع React فقط أمر واجب لفهم آلية عمل المكتبة والأساسيات. بالنسبة لتكلفة المشروع، فأنت وحدك من تستطيع تقدير الأمر حيث يربطك صلة قرابة، والمشاريع الخاصة بالشركات تكون تكلفتها مرتفعة عن المشاريع الخاصة بالأفراد، أيضًا ضع في إعتبارك أنّ المشروع ليس بالجودة الأفضل فأنت ما زلت تتعلم، أرجو مشاهدة التالي: وما قمت به في المشروع مجهود ممتاز حقًا أحسنت، لكن التصميم بحاجة إلى تحسين، وأيضًا الـ Navbar بحاجة إلى توضيحه فنص الروابط غير واضح بسبب الصور في الخلفية، والنموذج الخاص بالتواصل عليك إلغاء التنسيق الذي يجعله متدلي فذلك غير إحترافي، عليك الموازنة بين التأثيرات والإحترافية وراحة المستخدم. أيضًا خلفية الصفحات نفسها من الأفضل أن تكون بيضاء أو مائلة للبياض، أو خلفية سوداء.
  19. برنامج الحماية من الفيروسات لديك يمنع عملية التثبيت، قم بتعطيله أثناء التثبيت لتجنب تلك المشكلة، ثم إعادة تفعيله.
  20. ستجد أسفل فيديو الدرس في نهاية الصفحة صندوق تعليقات كما هنا، أرجو طرح الأسئلة أسفل الدرس وليس هنا في قسم الأسئلة البرمجة حيث نطرح الأسئلة العامة الغير متعلقة بمحتوى الدورة أو الدرس، وذلك لمساعدتك بشكل أفضل. وأرجو إرفاق صورة للمشكلة لمعرفة ما يحدث والخطأ الذي ظهر لك، عامًة إليك مثال بسيط لعمل scraping: import requests from bs4 import BeautifulSoup url = "http://quotes.toscrape.com/" response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') quotes = soup.find_all('div', class_='quote') for quote in quotes: quote_text = quote.find('span', class_='text').text author = quote.find('small', class_='author').text print(f"Quote: {quote_text} - Author: {author}")
  21. معنى ذلك أنه يوجد تحديثات لمحتوى ذلك المسار، أي الفيديو جديد غالبًا، وللعلم لو قمت بالضغط على زر جعل الموقع كمقروء سيتم تحديد جميع محتوى الموقع كمقروء أو شاهدته بما في ذلك دروس الدورة، فتجنب ذلك.
  22. لا أنصحك بالبحث عن استضافة عربية، الاستضافات الأفضل من حيث التكلفة والأداء هي أجنبية، ويوجد سيرفرات في الدول الأسيوية والأوروبية بها، ولكن ليس الدول العربية. ما هي تفاصيل المشروع لديك، هل تريد استضافة مجانية أم لديك مشروع صغير؟ عامًة أقرب استضافة لما تريده هي AWS لأنها تمتلك مركز بيانات في البحرين.
  23. الأمر ليس له علاقة، فالدورات المقدمة من أي شركة لا تعني الإنضام إليها، فتلك دورة تقدمها Google و جامعة ميشيغان، وتهدف إلى مساعدة الطلاب على تطوير مهاراتهم في تحليل البيانات وتحضيرهم للعمل في ذلك المجال. لذا عليك تطوير مهاراتك بشكل قوي لكي تتمكن من الوصول إلى شركات كبيرة مثل جوجل والأمر صعب وليس بالسهل، وتلك هي طبيعة أي شيء ذو قيمة.
  24. ستجد أسفل فيديو الدرس في نهاية الصفحة صندوق تعليقات كما هنا، أرجو طرح الأسئلة أسفل الدرس وليس هنا في قسم الأسئلة البرمجة حيث نطرح الأسئلة العامة الغير متعلقة بمحتوى الدورة أو الدرس، وذلك لمساعدتك بشكل أفضل.
  25. أرجو التعليق أسفل فيديو الدرس الذي تواجه به مشكلة لمساعدتك وتفقد هل يوجد مشكلة أم لا
×
×
  • أضف...