لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 01/12/16 في كل الموقع
-
نعم أصبح الآن من الممكن تصميم منزلك و معاينته بخاصية ثلاثية الأبعاد من خلال موقع http://www.homestyler.com المقدم من طرف شركة أوتوداسك. الموقع بسيط و يتيح لك خيارات و إعدادات متنوعة تتوافق مع مختلف الأذواق و التصاميم.2 نقاط
-
الإصدار 1.0.0
76188 تنزيل
هذا الكتاب ليس وصفةً سريعةً للثّراء! وهو لا يَعِدُكَ بجنيِ آلافِ الدولاراتِ منْ خلالِ بقائكَ نائمًا في البيت. لا يُقدّم الكتاب وَصفاتٍ سحريّةً للحُصولِ على 500$ خلالَ ساعتين من خلال مواقعَ خطيرة. ولا يعرض نماذجَ لأناسٍ حصلوا على مليون دولار في عامهم الأوّل بعد قراءة الكتابْ! هذا الكتاب، كتابٌ واقعيٌّ. يلامسُ الحقيقةَ الصعبة بأنّهُ مِن الصّعبِ الحُصولُ على وظيفة في الكثير من الدُّولِ العربيّة. ويخبرك بأن هناكَ أملًا وبديلًا. بل بديلًا قويًّا قَد يكون أفضل من الوظيفة بمراحل. ويبرهن على ذلك بعرض قصص نجاحٍ لأشخاصٍ مثلك، عاشوا ظروفك نفسها، ومن بلدك، ويعانون من جميع المصاعب التي تعاني منه، وبدأوا بمؤهِّلاتٍ قريبةٍ جدًا من مؤهلاتك، وامتلكوا بعضَ المهاراتِ التي تَمتلكها، ولربما كنتَ تُحسِنُها أكثر مِنْ بَعضِهم. ولكنَّ الفرقَ الوحيد (ليس طبعا أنّهم قرأوا الكتاب)، الفرقُ الوَحيدُ أنّهُم وَجَدوا طَريقَهُم للعملِ عَبْر الأنترنت وتحقيقِ مصدرِ دخلٍ كافٍ ومستمرٍّ لأنفسهم، بعضهم – بل الكثير منهم – يحقِّقُ ضِعف الرّاتِبِ الّذي تَحلُمُ بِه شَهريا. يَستعرضُ الكِتابُ قِصصَ النَّجاح بغرضِ إلهامكَ ومَنحِكَ الدَّافِع لتنجح كما نَجحُوا. ويؤكد أنّهم نجحوا ليس لأنّهم تعلّموا المُعادلة السِّحرية للنَّجاح، وليس لأنّهم وجدوا الوصفة السّرية لعصيرِ النّجاح فأعدّوه وشربوه، وليس لأنّ هناك (واسطةً) أخدتْ بأيديهم وعبرت بهم إلى طريقِ النّجاح. إنّما نجَحوا لأنّهم عَمِلوا وتَعبوا وصَابروا وواصَلوا حتّى وَصَلوا. يعرض عليك الكتابُ فرصةَ أنْ تنجح كَما نجحوا، بَل ويَضَعك في ظروفٍ أَفضَل مِن ظُروفهم. وذلك بشرحِ الخُطواتِ اللّازمِ اتّخاذها لبدءِ عملكَ عبر الأنترنت. فالكثير مِنهم لم تُتَح لَه فرصة الحصول على تلك المعلومات، وإنما جرّبوا فأخطأوا فتعلّموا فجرّبوا ثانيةً فنجحوا. وهنا – في هذا الكتاب – نختصر عليك الطّريق، فنعرضُ لكَ تجارِبَهم وأخْطاءَهُم وأَفْضلَ ما حقَّقُوه. يبدأ الكتاب بتعريفِ العمل الحرّ، ومجالاتِه، ومُميّزاتهِ وعُيوبِه. ثمّ يُرشِدُكَ إِلى الكيفيّةِ التي تَبدأُ بِها عملكَ الحُرّ بخطواتٍ بسيطةٍ وسهلةِ التّطبيق. ويُتابِع معك هذِه الخُطوات خُطوة بخطوة. فيقدّم لكَ النَّصائِحَ حولَ إِنشاءِ ملفِّكَ الشّخصيّ، ويُحدثك عَن الطّريقة التي تُقدّمُ بها عروضَ العمل، ويُعلّمكَ كيفيّة تحديدِ السِّعرِ المُناسِب للمشروع، وكيفيّة تَقدير الزّمن اللّازِم لتنفيذه. ويُواسيكَ في حال عدمِ حُصولِكُ عُلى مَشاريع. يَعرضُ الكتابُ عَددًا مِنَ المَهاراتِ اللّازِمة للعَملِ الحُرّ عبرَ الأنترنت، فيستعرضُ مهاراتِ التّواصلِ معَ الزّبائن، ومهاراتِ التّفاوُضِ والإِقْناعْ، ومهاراتِ إدارةِ وتنظيمِ الوقتْ. الكتابُ لا يَدّعي أنّهُ المرجعُ الشاملُ لكلِّ ما لهُ علاقةٌ بالعملِ الحُرّ، إنَّما يرجو مُؤلّفُ الكتابِ أنْ تَكونَ كلماتُهُ قُد لامستْ مَواطنَ الإرادةِ فِي قَلبك. وفُصولَه قدْ شَقّتْ لكَ طريقًا واضحًا للعملِ الحرِّ عبر الأنترنت. وأن يَكونَ ركيزةَ البدايةِ والخُطوة الأولَى في عملكَ عبْر الأنْترنَت. أُمنِيَتُنا في هَذا الكِتاب، أَنْ تَكونَ قِصّةَ نجاحٍ ملهمةً يُحتَفَى بِها، وتُذكَرُ في إصْداراتٍ لاحقةٍ مِنَ الكِتاب. ضَعْ ذَلكَ نُصبَ عَيْنيكْ خِلالَ قِراءتِكَ للكِتابْ.1 نقطة -
تحدثنا في الأجزاء السابقة من سلسلة مقالات "كيف تُصبح مُستقلاً ناجحًا" عن العمل المُستقل عمومًا موضحين أبرز ميزاته، ثُمّ عرّجنا على الخطوات العملية الأولى للعمل المُستقل وتعرفنا على أدواته اللازمة وتوسعنا إلى مجموعة من الأساسيات للترويج عن الأعمال المُستقلة وأفضل الطرق لإيجاد العملاء. ثُمّ انطلقنا معكم مُرتكزين على توجيه العروض وسياسات التسعير المُتّبعة في هذا العمل، وشرحنا تفاصيل إدارة العمليات والحصول على التقييمات وطرق استقبال الأموال. كما هو الحال في جميع الأعمال فإنه لا يكون الطريق مُسهلًا في الغالب، والعمل المُستقل له مشاكله كذلك، وقد تُسبب بعض تلك المشاكل مُعاناة حقيقية لمن يُمارسونه. إلّا أن الوقوف على تلك المشاكل وبناء حلول فعّالة لها سوف تُسهم بشكل مُباشر في سير العجلة نحو الأمام والاستمرار نحو ترسيخ القاعدة التي سيُبنى عليها النجاح. سنُعرّفكم في هذا المقال إلى أكثر مشاكل وعيوب العمل المُستقل شيوعًا مع تقديم أكثر الحلول فاعليّة لتجاوزها أو الحد منها على أقل تقدير. أولًا: المشاكل العشرة الأبرز للعمل المُستقل والحلول المُقترحة لكل مُشكلة-1- عدم الاستقرارمن أكثر الإشكالات التي يُعانيها العامل المُستقل هو عدم وجود بيئة عمل مُستقرة للأسباب التالية: - عدم وجود ديمومة واستمرارية في الحصول على الأعمال بشكل دائم: فالعمل الحُر قد يكون موسميًَا أحيانًا، وقد تحصل انقطاعات في تلقي أعمال جديدة خلال فترات مُتفاوتة. - دخل غير متوازن: المعروف عن العمل الحُر عمومًا بأنه يُحقّق لصاحبه دخل أعلى بالمُقارنة مع دخل الأعمال الوظيفية التقليدية، إلّا أن طبيعة هذا العمل تُضفي إلى عدم وجود دخل ثابت بشكل دائم كنتيجة حتمية لعدم وجود تواتر ثابت في تلقي العروض أو بيع المُنتجات. - طلبات غير متوازنة وإنتاجية غير متوازنة: كونك مُستقل فبكل بساطة ستجد نفسك مضغوط بشدّة خلال فترة مُعينة، الأمر الذي سيُشكّل عليك عبئًا قد يكون غير مُتوقّع مما يضطّرك إلى التقصير وعدم الالتزام مع عملائك أو تقديم الاعتذارات لهم. الحل- ينبغي عليك كمُستقل أن تتوقّع تفاوتات في تلقي العروض وأيضًا في تحصيل الأموال وبالتالي يجب ترتيب نظامك المالي وفق أساس سليم مبني بشكل أساسي على الادّخار وعدم الصّرف بشكل عشوائي. - يجب عليك كمُستقل أن تُفرّغ جزءًا من وقتك في التسويق لنفسك ولأعمالك وطرح خدمات ومُنتجات جديدة بالتماشي مع حاجة طلب السوق وبالتالي المُحافظة –بقدر المُستطاع- على استمرار تلقي العروض أو بيع المُنتجات. (راجع فقرة روّج لنفسك كمُستقل في مقال الأدوات والخطوات اللّازمة لانطلاقة صحيحة في عالم العمل الحر) - عوّد نفسك على أن تقول (لا) وأن تعتذر قبل استلام العروض عندما تشعر بأنك غير قادر على تلبية طلبات عملائك، أو إعلامهم بكل صراحة بصورة وضعك والتواريخ الحقيقية البعيدة القادر خلالها على تسليم مُتطلباتهم، فالوضوح مطلوب لتدارك أي خلافات مُستقبلية. تلميح: بعض منصات العمل الحُر (خمسات على سبيل المثال) توفّر إمكانية التحكّم بإيقاف تلقي الخدمات بشكل مؤقت وبالتالي التوقف عن تلقي مزيد من الطلبات. - التخطيط الجيّد: سنُفصّل لكم في وقتٍ لاحق أفضل الطرق لإدارة الوقت والتخطيط لأعمالك كمُستقل. 2- العُزلة الاجتماعية رغم أن أكبر ميزات العمل المُستقل هي الحرية التامة في استغلال الوقت كما يراه ممارسيه، إلّا أن مُعظم من يعملون وفق هذا النمط من الأعمال هم من الأشخاص الذين يُعانون من ضعف التواصل الاجتماعي وانعزالهم عن الآخرين وقد تصل بهم الحالة إلى مُشكلة مرضية (اكتئاب – فقدان الحافز للعمل ... الخ). الحلينبغي على المُستقل أن يُخصّص وقتًا لكل شيء والأهم أن يلتزم به. (الجلوس مع الأصدقاء كل فترة – زيارة الأقارب بشكل أسبوعي – السفر – حضور ندوات ومؤتمرات لها علاقة بالعمل أو في مجالات أخرى ...الخ). 3- افتقاد العمل الحُر للتشريعات القانونية والتنظيميةنتيجة حداثة هذا النمط من الأعمال (الأعمال الحُرّة على مستوى الإنترنت) وصعوبة ضبطه، فإن التشريعات التي تضمن حقوق المُستقلين ما زالت متواضعة للغاية في بعض الدول وغير موجودة في دول عديدة، الأمر الذي قد يُسبب مشاكل فعلية وتخوف حقيقي لدى العاملين بشكل مُستقل. الحلالحلول المُثلى دومًا تكون مبنية على الأسس القانونية لكل بلد وبحسب تشريعاته، وإن انعدمت تلك الحلول فهنا يأتي دورك كمُستقل في العمل وفق مبادئ واضحة تكون ضامنة لحقوقك دون انتقاص، وأيضًا اختيار منصات العمل الأمثل التي تكون ضامنة لحقوق جميع الأطراف. 4- مشاكل صحيةيُعاني المستقلون العاملون عبر الإنترنت تحديداً من مشاكل صحية ناجمة عن الجلوس أمام شاشة الحاسب لفترات طويلة للغاية. (مشاكل سمنة – مشاكل في النظر – اختلال في التركيز – آلام في الرقبة والظهر.. ومشاكل صحية أخرى). الحليكمن الحل في يدك كمُستقل، بحيث يتوجّب عليك تنظيم وقت عملك وفق فترات مُتقطعة يتخللها فترات راحة. تلميحات: - سجّل في مركز رياضي صحي وواظب عليه. - اختر مكانًا مثاليًا للجلوس مع كرسي مُناسب مُريح. - اختر ملابس مُريحة أثناء العمل. - أكثر من شرب الماء والسوائل. - اختر شاشة حاسب مُريحة للنظر مع إضاءة جانبية مُوزّعة بشكل مُريح. - توقف عن العمل كل فترة ومارس مجموعة من التمارين الرياضية البسيطة. 5- أوقات عمل طويلة دون وجود ضوابط إحدى أكبر الفروقات بين العمل الحُر والعمل الوظيفي التقليدي هو أن هذا الأخير مُحدّد بساعات دوام، بينما العمل الحُر لا يمتلك ضوابط لهذا المجال والمُشكلة ستكون كبيرة إن لم يكن لدى المُستقل قدرة على الانضباط. الحلعند اتخاذك لقرار الاستقلال في عملك يجب أن تكون على قدرٍ كافٍ من المسؤولية بحيث أنك تضبط وقتك وتلتزم به وتُخصّص لكل شيء وقته. بالإمكان الاستعانة بتطبيقات وبرامج كثيرة مُتخصصة بضبط الوقت وإدارة المهام، إنما الدور الأكبر يأتي إلى التزامك بها كمُستقل. (حدّد أوقات ثابتة للعمل والتزم بها بقدر المُستطاع). 6- بيئة عمل غير مُناسبةفي الغالب فإن بيئة العمل للمُستقلين الذين يعملون من خلال الإنترنت تكون (منازلهم). أثبتت تجارب الكثير من المُستقلين بأن المنزل ليس المكان المُناسب للعمل (حتى وإن كان العمل يعتمد على حاسب مُرتبط بالإنترنت فقط) وذلك للأسباب التالية: - اختلاط العمل بالواجبات المنزلية وصعوبة الفصل بينهما. - التشتّت وقلة التركيز. - الانغلاق والعُزلة وعدم وجود دوافع للمُثابرة والاستمرار. - صعوبة إدارة وقت العمل وضبطه. الحلإذا كان منزلك هو الخيار الوحيد: الكثير من المُستقلين يُفضلون العمل من منازلهم وآخرين لا تتوفّر لديهم أماكن عمل بديلة عن منازلهم. في هذه الحالة فإن أفضل الحلول لهم لضمان تأدية أفضل عمل في المنزل تتم باتّباع ما يلي: 1- خصّص مساحة للعمل الخاص بشكل مُريح وابتعد قدر الإمكان عن الأصوات والأمور التي تُحرّض على التشتت (مكتب خاص في إحدى الغرف قد تكون فكرة مُناسبة – ساحة عمل بسيطة في إحدى الزوايا التي توحي بالإلهام ..الخ). 2- اجعل كُل شيء قد تحتاجه خلال العمل إلى جانبك. 3- حدّد أوقات العمل وأوقات الراحة والتزم بها بقدر المُستطاع. إن كُنت مُستعداً لتجربة خيارات بديلة: لدى المُستقل مجموعة من الخيارات البديلة التي تُمكنه من الابتعاد عن المنزل وخلق جو العمل خاصته، نذكر منها: 1- مكتب عمل خاص مُنفصل تمامًا وبعيد عن المنزل مُريح ويتوفر على كافة احتياجات العمل الأساسية. 2- الاستفادة من أماكن العمل الجماعي Co-Working: تنتشر في عدد من البلدان مقرات للعمل الجماعي تقوم بمبدئها على توفير مكاتب مُريحة مع جميع الأدوات والمُستلزمات للمُستقلين بحيث تُمكنهم من العمل بكل أريحية وضمن جو مثالي. من أبرز ميزات تلك المقرات وجود نوع من التفاعل ومُشاركة الخبرات بين المُستقلين المُتواجدين هُناك وبالتالي هو مكان مثالي للإلهام والاستفادة إلى جانب العمل. 3- العمل ضمن المكتبات العامّة وبعض المقاهي أو الأماكن العامّة التي توفّر أجواءً مُريحة. 7- صعوبة الحصول على العميل الأوليُعاني الكثير من المُستقلين من صعوبة الانطلاق وتحصيل أول عميل، والسّبب في ذلك كما أشرنا في مقالات سابقة من السلسلة هو أن الإنسان بطبيعته يميل إلى اختيار الناجحين ومن لديهم أعمال وتقييمات إيجابية أو من كانت مبيعاتهم كبيرة. الحليتمثل الحل بالصبر والاجتهاد في التسويق والإيمان بأنّ أول طلب شراء سوف يأتي لا محالة طالما أن الأسس جميعها صحيحة، فكل من نجح بدأ بنفس تلك الفترة. 8- السمعة على المحكيعاني المُستقلّون ممّن يُنفذون الخدمات بوجود طلبات شراء وتساؤلات من طرف العُملاء على مدار الساعة الأمر الذي يُسبّب لهم الاستنفار بشكل دائم للرد بأقرب وقت على جميع الطلبات والتساؤلات قبل الشراء، وإن أي خلل أو تقصير بهذا الأمر قد يضعهم في موقف مُحرج مع زبائنهم وقد يؤثر بشكل مُباشر على سمعة عملهم. الحل:العمل من خلال الإنترنت تعني استقبال الطلبات والاستفسارات والرسائل على مدار الساعة وفي أي وقت، والحل يكمن في يد المُستقل وحده من خلال وضع أوقات مُحدّدة واضحة يلتزم بها مع نفسه ومع زبائنه بحيث يكونوا على علمٍ مُسبق وبالتالي يكون الجميع سُعداء. تلميح: كأي عمل آخر فإن الصّدق والصراحة التامّة مطلوبة لنجاح هذا العمل، كما أن المُجاملة قد تتسبب في إشكالات في أحيان كثيرة. لذلك ينبغي عليك كمُستقل أن تضع ضوابط لعملك وأوقات تواجدك والأهم أن تلتزم بها. لكن يجب أن تكون تلك الضوابط منطقية وتتماشى مع الطّبيعة السريعة التي يفرضها هذا العمل وعدم إيجاد مدخل للمُنافسين المُتربّصين. (على سبيل المثال: أخبر عملائك بأنك ستُجيب على جميع استفساراتهم خلال 12 ساعة على الأكثر وليس خلال ثلاثة أيام والتي تُعد فترة طويلة للغاية). 9- مُنافسة على أشدهاوجود أشخاص كُثر ضمن نطاق العمل المُستقل هو أمر حتمي نتيجة لأهمية هذا النوع من الأعمال كخيار حقيقي فعّال لكثير من الأشخاص، الأمر الذي أوجد مُنافسة شديدة خاصّة ضمن تخصصات مُعينة. الحل:المُنافسة في عالم الأعمال أمر طبيعي للغاية، إنما الاستسلام لها هو ما ليس بطبيعي. يجب عليك كمُستقل أن تسعى وتجتهد بسعيك وتُقدّم أفضل خدمة مُمكنة وبالتالي بناء اسمك وسمعتك، كما ينبغي البحث بشكل دائم عن خيارات ومنصات عمل بديلة مُتوفرة وتقديم أساليب تسويقية فعّالة، إضافة إلى تقديم مُنتجات تتماشى مع الطلب. 10- صعوبة فهم طبيعة العُملاءطبيعة العمل الحُر من خلال الإنترنت تفرض على المُستقل التعامل مع الأشخاص بشكل افتراضي ومن كافّة بقاع العالم ولكل شخص منهم طبيعة مُختلفة وخلفيات ثقافية مُختلفة، أيضًا أوقات تواجد مُختلفة. الحلإن فهم طبيعة كُل عميل مُهمّة أشبه بالمُستحيلة، والحل الأمثل لضمان نجاح العمل مع الجميع هو السير وفق نظام وضوابط واضحة مُحددة. على المُستقل أن يتعلّم الاستفسار والسؤال عن كل تفصيل قبل البدء بتنفيذ العمل للحد من أي سوء للتفاهم وبالتالي عدم هدر جهد ووقت الطرفين. ثانيًا: المشاكل التي تعترض المُستقلين في تعاملهم مع العملاء كأي عمل في هذا العالم فإن الطريق ليس مفروشًا بالورود وستعترضك خلال مسيرتك كمُستقل مجموعة من الإشكالات والمواقف في تعاملك مع عملائك، فاختلاف الناس في طبائعهم وأخلاقهم هو أمر طبيعي وعليك كمُستقل أن تحمل من سعة الصدر الكثير وأن تكون على دراية بتلك الإشكالات بغرض أن تكون مُستعدًا لمواجهتها وتتدارك أي مواقف قد تعترضك لاحقًا بكل أريحية وسلاسة. التالي قائمة بأبرز المشاكل التي تعترض المُستقلين خلال تعاملهم مع العملاء1- طلبات غير منطقية وبعيدة عن تخصصك: قد تعترضك بعض الأحيان خلال مسيرة عملك كمُستقل طلبات غير منطقية من عملاء يستغلون مرحلة التعامل معك أو علاقتهم الطيبة بك (مثلاً إن كُنت تعمل ككاتب مُستقل لا تستبعد بأن يأتي لك أحدهم بعد التعاقد ويطلب منك أن تُساعده في تنصيب موقعه الخاص على الخادم بكل بساطة). في مثل هذه الحالات اجعل إجابتك حاضرة واعتذر منه واكتف بتلبية طلباته ضمن نطاق الاتفاق بأفضل شكل ممكن، ولا مانع في التعامل معه في طلبه الآخر بشكل تعاقد مُنفصل إن كانت لديك إمكانية في تنفيذه وكُنت قادرًا على الاستفادة من ذلك. 2- عدم الرضى بالخدمة رغم أنها ممتازة: هُناك فئة من العملاء بالإمكان تصنيفهم كسلبيين، فببساطة بعد التعب الطويل في تلبية أحدهم قد تجده يُخبرك بأن ما قدمته له سيء رغم أنه على معرفة تامّة بأسلوبك ومُطّلع على نماذج ونتائج من عملك قبل الشراء. أسباب هذا التصرف قد يكون نوع من التلاعب من طرف العميل لأجل عدم تسديد باقي المبلغ المُترتب، أو لربما تعرّض عمله لمُستجد مُعيّن وبالتالي لم يعد بحاجة إلى هذه الخدمة، أو قد يكون بالفعل غير مُعجب بالنتيجة. بكافة الأحوال فإن التصرف الأمثل بهذه الحالة هو بالتوجّه بشكل مُباشر إلى العميل بخطاب هادئ وإعلامه بكل رحابة صدر بأنك تقف إلى جانبه وتود أن تسمع منه عن أسباب رفض هذه النتيجة، ثُم وبحسب سياق الموقف وطبيعة الرد من طرف العميل بإمكانك توجيه الموضوع دون الضرر بمصلحتك أو الإخلال في حقوق العميل الموضوعة ضمن الشروط، وإن كان العميل مُتعصّبًا لموقفه فبكل بساطة أنهِ العمل هُنا ووفقًا للشروط الموضوعة وكُن صارمًا في تحصيل حقوقك طالما أنك قدمت له المُتفق بشكل كامل. 3- طلب إلغاء الخدمة من منتصفها: قد تتعرض لمواقف من عملاء يطلبون منك ببساطة إلغاء تنفيذ الخدمة بعد التعاقد والبدء بتنفيذها من طرفك. بحسب الخبرة فإن أفضل تصرّف في هكذا موقف هو التماشي مع العميل مُباشرة دون جداله على أن تتقاضى قيمة ما نفذته بشكل كامل. (الإشكالات من هذا النوع تُظهر وضوحًا أهمية وجود عقد مكتوب واضح بينك وبين عميلك قبل البدء بالعمل). 4- عدم تسديد المُستحقات في أوقاتها: العاملون المُستقلون قد يتعرضون أحيانًا إلى إشكالات في التحصيلات المالية من طرف بعض العملاء غير الجدّيين. من الجيد أن تحمي نفسك كمُستقل بأفضل شكل ممكن قبل البدء بالعمل ومن الأفضل أن تتقاضى جزءًا كبيرًا من المبلغ قبل البدء بالتنفيذ وتتقاضى باقي المبلغ عند أو قبل التسليم مُباشرة، أيضًا فإن الاعتماد على إحدى منصات العمل الحُر ستكون وسيلة جيدة للغاية في ضمان حقوقك وحقوق عميلك في ذات الوقت، لذلك لا مُشكلة أبدًا بأن توجّه عميلك الجديد إلى التعاقد على إحدى المنصات (منصة مستقل على سبيل المثال توفّر خدمة توجيه عرض لمُستقل بشكل خاص بالإمكان الاستفادة منها بسهولة). 5- طلب التعديلات المُتكررة: قد تتعرض أثناء عملك كمُستقل إن كان مجالك في تقديم الخدمات من طلب تعديلات مُتكررة وقد تكون كثيرة وغير منطقية أحيانًا. الحل الأمثل لتفادي تلك المُشكلة هي بوضع عقد واضح مكتوب بين الطرفين يتضمن بندًا حول عدد التعديلات ونوعيّتها (التعديلات التي يُمكن تنفيذها إن طُلبت عقب تسليم الخدمة)، وإن ظهرت طلبات التعديل بشكل مُخالف للاتّفاق المنصوص (كأن يُطلب تعديلًا جذريًا غير منصوص عليه) بإمكانك بهذه الحالة الاعتذار من العميل وإعلامه بضرورة شراء الخدمة مُجددًا (أو فتح مشروع جديد/إرسال وظيفة جديدة). 6- الضغط من أجل التسليم المُستعجل: لا تتفاجأ حينما يأتي عميلك بعد يومين من الاتّفاق المُبرم معه لمُدة أسبوعين ويُخبرك بأنه مُستعجل لتسلّم مشروعه. سيبدأ حينها مُسلسل الضغط النفسي والمُراسلات المُتكررة. عند التعرض لمُشكلة من هذا النوع عليك أن تكون صارمًا وصريحًا مع عميلك بحيث توضّح له كل التفاصيل وتُحدّد له أقرب وقت تسليم بدقة حتى وإن وصل الأمر إلى إيقاف العمل على المشروع، وعليك العودة إلى الاتفاق المُبرم وتحصيل حقوقك إن تم تنفيذ بعضًا من العمل كون أن الخلل تم من طرف العميل. 7- أكاذيب مُتكرّرة وكلمات مُحبطة: للأسف فإنك كمُستقل قد تسمع مجموعة من الأكاذيب الشائعة والتي يكون الغرض منها تحصيل أكبر فائدة مُمكنة من طرف العميل، ولعل أشهر تلك الأكاذيب والمقولات (سأدفع لك باقي مُستحقاتك عندما أستفيد أو بمُجرد أن أحصل على تقييمات إيجابية لهذا العمل – مشروعنا بسيط وخيري وموجه للشباب لذلك خفّض لنا السعر – إذا خفّضت لنا السعر حاليًا سنتعامل في مشاريع كبيرة سوية في المُستقبل – لاحظنا أسعارًا أفضل من أسعارك بكثير ....الخ). وقد يلجأ بعضهم -وللأسف- إلى الكلمات المُحبطة أو التخفيف من قيمة عملك لغرض تمكنه من تخفيض السعر أو تحصيل ميزات أكثر. في هذه الحالات وبالعموم عليك أن تثق بنفسك وبعملك كامل الثقة وأن تكون كلمة الاعتذار حاضرة لديك ولا تبخس أبدًا عملك وقيمته. 8- العميل المُتذمر: وهو من أصعب أنواع العملاء على الإطلاق والتّفاهم معه يكون صعبًا غالبًا، لا يُعجبه أي شيء وينتقد على الدوام. كنصيحة تجنب التعامل مع هكذا نوع وإن اضطّررت كُن مُنتبهًا لأدق التفاصيل معه ودوّنها واشحن نفسك بالهدوء طيلة فترة التعامل. تلميحات ونصائح - النّصيحة الأساسية التي يجب تبنيها خلال التعامل مع عملائك المُختلفين هي أن تُعبّر عن نفسك دومًا بأفضل شكل، أن يكون أسلوبك مُنضبطًا، وأن تثق بنفسك وبعملك إلى أبعد حد. - اجعل كل شيء مكتوب واضح مهما صغر العمل أو كبر. - لا تخش من أي أمر مُطلقًا إن كان ضمن نطاق الحق ولا تخجل من المُطالبة بحقوقك. - استفد من منصات العمل الحُر المتوفرة لبناء التعاقدات فهي أفضل وسيلة لضمان الحقوق. تطرّقنا في هذا المقال إلى أكثر مشاكل وعيوب العمل المُستقل شيوعًا مع تقديم أكثر الحلول فاعليّة لتجاوزها أو الحد منها على أقل تقدير. انتظرونا في الجزء القادم والذي سنُعرّج خلاله على آلية العمل وأفضل طرق إدارة الوقت للمُستقلين.1 نقطة
-
السلام عليكم... أتمنى ان لا تكون الإجابات غامضة مثل اذهب لكذا وسجل كذا... فقط أريد خطوات بسيطة وسريعة وبدون تعقيد حتى يمكن لرائد الأعمال طرح منتجه وهو مطمئن طبعا إذا افترضنا ان مميزات منتجه مختلف تماما ومميزات جديدة يعني يمكنك القول انها براءة اختراع <------ كيف يمكن تسجيلها بأقل مجهود؟1 نقطة
-
يوفر تهجير قواعد البيانات Database migration في Laravel آليات لإنشاء الجداول Tablesوالتعديل عليها بغض النظر نظام إدارة قواعد البيانات المستخدم. يعني هذا أنك لن تضطر للاهتمام بالاختلافات بين نظم إدارة قواعد البيانات في صياغة أوامر SQL. يمكّن التهجير أيضا من التراجع والعودة إلى ما كانت عليه قاعدة البيانات قبل آخر التعديلات. هذا الدرس جزء من سلسلة تعلم Laravel والتي تنتهج مبدأ "أفضل وسيلة للتعلم هي الممارسة"، حيث ستكون ممارستنا عبارة عن إنشاء تطبيق ويب للتسوق مع ميزة سلة المشتريات. يتكون فهرس السلسلة من التالي: مدخل إلى Laravel 5.تثبيت Laravel وإعداده على كلّ من Windows وUbuntu.أساسيات بناء تطبيق باستخدام Laravel.إنشاء روابط محسنة لمحركات البحث (SEO) في إطار عمل Laravel.نظام Blade للقوالب.تهجير قواعد البيانات في Laravel. (هذا الدرس)استخدام Eloquent ORM لإدخال البيانات في قاعدة البيانات، تحديثها أو حذفها.إنشاء سلة مشتريات في Laravel.الاستيثاق في Laravel.إنشاء واجهة لبرمجة التطبيقات API في Laravel.إنشاء مدوّنة باستخدام Laravel.استخدام AngularJS واجهةً أمامية Front end لتطبيق Laravel.الدوّال المساعدة المخصّصة في Laravel.استخدام مكتبة Faker في تطبيق Laravel لتوليد بيانات وهمية قصدَ الاختبار. يمكن النظر إلى تهجير قواعد البيانات كما لو كان نظام إدارة نسخ خاص بقواعد البيانات، إذ يتيح لفريق العمل سهولة تغيير مخطّط Schema البيانات وتشاركه. نكمل في هذا الدرس اعتمادا على ما أنشأناه في الدروس السابقة من السلسلة. يغطي الدرس المواضيع التالية: متطلبات التهجير.أمر Artisan لتهجير قواعد البيانات.بنية التهجير.إنشاء جدول بآلية التهجير.استخدام آلية التهجير للتراجع Rollback عن التعديلات.بذر قواعد البيانات Database seeding.بنية قاعدة البيانات الخاصة بمشروع Larashop.ملفات التهجير لقاعدة بيانات Larashop.متطلبات التهجيريجب أولا إنشاء قاعدة بيانات في نظام إدارة قواعد البيانات المستخدم (MySQL في حالتنا) وإعداد معطيات الاتصال بها في Laravel ولدى أداة سطر الأوامر Artisan. إنشاء قاعدة بياناتنفذ الأمر التالي في سطر أوامر MySQL أو استخدم التطبيق المفضّل لديك (PHPMyAdmin مثلا) لإنشاء قاعدة بيانات larashop: CREATE DATABASE `larashop`;إعداد Laravel للاتصال بقاعدة البياناتأعددنا Laravel في الدرس الأول من هذه السلسلة للاتصال بقاعدة بيانات باسم larashop. في ما يلي تذكير بخطوات الإعداد. افتح الملف config/database.php واعثر على الأسطُر التالية: 'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', 'localhost'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, ],حدّث القيم التالية لتوافق إعدادات MySQL لديك: 'database' => env('DB_DATABASE', 'larashop'), 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', 'melody'), إعداد معطيات اتصال Artisan بقاعدة البياناتيواجه الكثير من المطورين رسالة الخطأ التالية عند العمل على تهجير قواعد البيانات باستخدام أداة Artisan: Access denied for user 'homestead'@' localhost' (using password: YES)ستظهر الرسالة أعلاه حتى ولو كانت معطيات الاتصال في الملف configuration/database.php صحيحة. يعود السبب في ذلك إلى أن Artisan يستخدم المعطيات الموجودة في الملف env.. الحل هو إذن تحرير الملف env. الواقع في مجلد التطبيق، ستجد ما يلي: APP_ENV=local APP_DEBUG=true APP_KEY=aqk5XHULL8TZ8t6pXE43o7MBSFchfgy2 DB_HOST=localhost DB_DATABASE=homestead DB_USERNAME=homestead DB_PASSWORD=secret CACHE_DRIVER=file SESSION_DRIVER=file QUEUE_DRIVER=sync MAIL_DRIVER=smtp MAIL_HOST=mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null حدث المتغيرات التالية: DB_HOST=localhost DB_DATABASE=homestead DB_USERNAME=homestead DB_PASSWORD=secretلتصبح: DB_HOST=localhost DB_DATABASE=larashop DB_USERNAME=root DB_PASSWORD=melody احرص على موافقة اسم قاعدة البيانات، اسم المستخدم وكلمة مروره للمعطيات لديك. احفظ التعديلات. تهجير قواعد البيانات بأداة Artisanينشئ أمر artisan ملفا على المسار database/migrations لكل عملية تهجير. يمكن تغيير المسار الخاص بحفظ ملفات التهجير إن أردت ولكننا هنا سنكتفي بالمسار المبدئي. ننفذ الأمر التالي لإنشاء أول ملف تهجير: php artisan make:migration create_drinks_tableتظهر رسالة باسم ملف التهجير الجديد. اخترنا اسم create_drinks_table للدلالة على أن التهجير ينشئ جدولا باسم drinks في قاعدة البيانات. نتيجة الأمر هي إنشاء ملف للتهجير بنفس الاسم الذي أعطيناه مع إضافة ختم زمني قبله، مثلا: 2015_12_21_215845_create_drinks_table.phpبنية ملف التهجيرندرس الآن محتوى ملف التهجير الذي أنشأناه للتو. افتح الملف التالي لرؤية محتواه (انتبه إلى أن اسم الملف يبدأ بختم زمني للحظة إنشائه): database/migrations/2015_12_21_215845_create_drinks_table.phpنجد ما يلي: <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateDrinksTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { // } /** * Reverse the migrations. * * @return void */ public function down() { // } }يعرف ملف التهجير صنفا جديدا باسم CreateDrinksTable يمدد الصنف Migration: CreateDrinksTable extends Migrationداخل الصنف CreateDrinksTable توجد دالة باسم up. تنفّذ تعليمات الدالة up عند تشغيل التهجير. توجد أيضا دالة باسم down في الصنف CreateDrinksTable. تنفذ تعليمات الدالة down عند التراجع عن تغييراتِ تهجير.ملف تهجير لإنشاء جدول بقاعدة البياناتليمكن إنشاء جدول في قاعدة البيانات فجيب تعريف حقوله في ملف التهجير. نعيد فتح ملف التهجير السابق ونعدله ليصبح محتواه التالي : <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateDrinksTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('drinks', function (Blueprint $table) { $table->increments('id'); $table->string('name',75)->unique(); $table->text('comments')->nullable(); $table->integer('rating'); $table->date('juice_date'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('drinks'); } }في الدالة up: نستدعي الدالة create المعرَّفة في الصنف Schema ونمرر لها معطيين، الأول اسم الجدول الذي نريد إنشاءه drinks، والمعطى الثاني دالة غير محدّدة الاسم تعرّف حقول الجدول. نستخدم كائنا من صنف Blueprint لتعريف الجدول.نعرف أول حقل من الجدول وهو الحقل id. تعرف الدالة increments التابعة للصنف Blueprint عددا طبيعيا (عدد صحيح إشارته موجبة) يزداد تلقائيّا مع كل إدخال للبيانات في الجدول.الحقل الثاني هو حقل الاسم name، الذي نعرفه بالدالة string. تنشئ الدالة stringحقلا من سلسلة محارف مع تحديد طول السلسلة (75 في المثال). نعلّم الحقل name بالدالة unique \لجعله وحيدا وهو ما يعني أنه لا يمكن لتسجيلتين في الجدول أن تحويا نفس القيمة بالنسبة لهذا الحقل.الحقل الثالث comments نصي، وتستخدم الدالة text لتعريفه. نتيح إمكانية ألا يحوي الحقل بيانات باستخدام الدالة nullable.الحقل الرابع rating للتقيمات. نستخدم الدالة integer للإشارة إلى أنه عدد صحيح.ثم نضيف حقلا لتخزين تاريخ المشروب juice_date ونستخدم الدالة date لهذا الغرض.تُستخدم الدالة timestamps لإضافة حقلين هما created_at وupdated_at في الجدول تلقائيا. الحقلان عبارة عن ختم زمني ل، على التوالي، تاريخ إضافة التسجيلة إلى قاعدة البيانات وتاريخ آخر تحديث عليها.في الدالة down نحذف الجدول drinks من قاعدة البيانات في حالة وجوده.ننفذ بعد حفظ ملف التهجير الأمر التالي: php artisan migrateستظهر مخرجات في سطر الأوامر على النحو التالي: Migration table created successfully. Migrated: 2014_10_12_000000_create_users_table Migrated: 2014_10_12_100000_create_password_resets_table Migrated: 2015_12_21_215845_create_drinks_tableإن نظرت في جداول قاعدة البيانات الآن فستجد التالي: ستلاحظ وجود أربعة جداول من بينها جدول drinks. الجداول الأخرى أنشأها Laravel لأن ملفات تهجيرها تأتي مبدئيا مع Laravel. التراجع عن التعديلاتيوفر التهجير إمكانية التراجع عن تعديلاته والعودة إلى حالة قاعدة البيانات قبل تنفيذه. أنشأنا في الفقرة السابقة جداول في قاعدة البيانات، ننفذ الأمر التالي للتراجع عن ذلك: php artisan migrate:rollbackتظهر الرسائل التالية: Rolled back: 2015_12_21_215845_create_drinks_table Rolled back: 2014_10_12_100000_create_password_resets_table Rolled back: 2014_10_12_000000_create_users_tableإن أعدت التحقق في MySQL سترى أن الجدول drinks لم يعد موجودا. نعيد إنشاء الجدول بتنفيذ التهجير مرة أخرى: php artisan migrateتمكن ملاحظة أن تنفيذ التهجير يكون بالتسلسل الزمني التصاعدي لتاريخ إنشاء ملفات التهجير (من الأقدم إلى الأحدث)، في ما يكون التراجع بتنفيذ ملفات التهجير حسب التسلسل الزمني التنازلي (من الأحدث إلى الأقدم). إدارة جداول البيانات في Laravel باستخدام التهجيرسنرى في هذه الفقرة كيفية استخدام التهجير للقيام بأشغال شائعة على جداول قواعد البيانات. إدراج بياناتسنرى الآن كيفية استخدام التهجير لإدراج بيانات في جدول أثناء إنشائه. ننشئ جدولا بالموظفين employees وندرج فيه 33 تسجيلة بالاعتماد على مكتبة Faker (سنخصص درسا لتفصيل استخدام Faker). نفذ الأمر التالي لإنشاء ملف تهجير لجدول employees: php artisan make:migration employeesنفتح الملف المنشأ للتو ونضيف الشفرة التالية: <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class Employees extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('employees', function (Blueprint $table) { $table->increments('id'); $table->string('name'); $table->string('email')->unique(); $table->string('contact_number'); $table->timestamps(); }); $faker = Faker\Factory::create(); $limit = 33; for ($i = 0; $i < $limit; $i++) { DB::table('employees')->insert([ //, 'name' => $faker->name, 'email' => $faker->unique()->email, 'contact_number' => $faker->phoneNumber, ]); } } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('employees'); } } ننشئ كائنا من صنف Faker بالتعليمة $faker = Faker\Factory::create();نحدد عدد التسجيلات التي نود إدراجها: limit$. نستخدم حلقة for التكرارية لإضافة التسجيلات إلى الجدول. تولد التعليمة faker->name$ اسما وهميّا، faker->unique()->email$ اسم بريد وحيد وfaker->phoneNumber$ رقم هاتف وهميا.الأمر التالي ينفذ التهجير: php artisan migrateتظهر الرسالة التالية دلالة على تهجير الجدول employees: Migrated: 2015_12_21_225233_employees إن بحثت الآن عن محتوى الجدول employees، مثلا بتنفيذ الاستعلام التالي في سطر أوامر MySQL: SELECT * FROM employees;ستحصُل على أسماء الموظفين، عناوينهم البريدية وأرقام هواتفهم. نتراجع عن إنشاء الجدول employees بتنفيذ الأمر: php artisan migrate:rollbackتظهر رسالة دلالة على التراجع عن إنشاء الجدول. نفتح ملف التهجير للتعديل عليه ثم نضع الشفرة الخاصة بإدراج بيانات وهمية بين علامتي تعليق، هكذا: /* $faker = Faker\Factory::create(); $limit = 33; for ($i = 0; $i < $limit; $i++) { DB::table('employees')->insert([ //, 'name' => $faker->name, 'email' => $faker->unique()->email, 'contact_number' => $faker->phoneNumber, ]); } */احفظ ملف التهجير ثم نفذ الأمر: php artisan migrateسيُنشأ جدول employees من جديد ولكن هذه المرة دون إدراج تسجيلات في الجدول. إضافة عمود إلى جدول أو حذفه منهنفرض أننا نود إضافة عمود جديد gender لتخزين جنس الموظّف، مباشرة بعد العمود contact_number. ننفذ الأمر التالي لإنشاء ملف تهجير باسم add_gender_to_employees مع تحديد الجدول الذي نريد العمل عليه وهو employees: php artisan make:migration add_gender_to_employees --table=employeesتشير التعليمة table=employees-- إلى أننا نريد العمل على الجدول employees الموجود في قاعدة البيانات. افتح ملف التهجير المنشأ بعد الأمر السابق، وعدله ليصبح على النحو التالي: <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class AddGenderToEmployees extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::table('employees', function (Blueprint $table) { $table->string('gender')->after('contact_number'); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::table('employees', function (Blueprint $table) { $table->dropColumn('gender'); }); } } في الدالة up أضفنا حقلا جديدا من نوع string (سلسلة محارف) وحددنا مكانه بأنه بعد العمود contact_number.في الدالة down نحذف الحقل gender.الآن عند تنفيذ أمر التهجير php artisan migrate ستلاحظ إضافة عمود جديد باسم gender بعد عمود contact_number. تغيير نوع عموديحتاج تغيير نوع العمود لتثبيت حزمة Doctrine Database Abstract Layer, DBAL. تُستخدم هذه الحزمة لتهجيرات التعديل على الجداول Alter table. سنستخدم أداة إدارة الاعتماديات Composer لتثبيت الحزمة. افتح ملف composer.json الذي يوجد في مجلد التطبيق. ابحث عن مقطع require: "require": { "php": ">=5.5.9", "laravel/framework": "5.2.*" },توجد في هذا المقطع حزم المكتبات التي يحتاجها تطبيقنا. حتى الآن توجد حزمتان فقط هما php وlaravel. يشير الجزء الأول (قبل النقطتين) إلى اسم الحزمة، في ما يشير الثاني لإصدارها. نضيف حزمة dbal` إلى هذه الاعتماديات، وذلك على النجو التالي: "require": { "php": ">=5.5.9", "laravel/framework": "5.2.*", "doctrine/dbal": "v2.4.2" }, لاحظ الفاصلة اللاتينية التي أضفناها بعد حزمة Laravel. نفذ الأمر التالي لتحديث المشروع: composer updateعند إنشاء العمود gender لم نحدد طول الحقل، أي أنه سيأخذ الطول المبدئي للحقول من نوع string وهو255 محرفا. ننشئ ملف تهجير جديدا لتعديل طول الحقل ليصبح 5 كحد أقصى. نعدل الملف على النحو التالي: php artisan make:migration modify_gender_in_employees --table=employeesقبول فراغ الحقول في الجدوليفترض Laravel عند إنشاء الحقول أنها لا تقبل فراغ القيمة، أي أنه يجب ذكر قيمة للحقل عند إدراج تسجيلات في الجدول. يمكننا تغيير هذا الإعداد المبدئي وجعل قيمة حقل ما اختيارية. سنأخذ الحقل gender للتمثيل به. ننشئ ملفا للتهجير: php artisan make:migration make_gender_null_in_employees --table=employeesثم نعدله على النحو التالي: <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class MakeGenderNullInEmployees extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::table('employees', function (Blueprint $table) { $table->string('gender', 5)->nullable()->change(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::table('employees', function (Blueprint $table) { $table->string('gender', 5)->change(); }); } } تجعل الدالة nullable الحقل gender يقبل قيما فارغة.php artisan migrate إضافة مفتاح خارجي Foreign keyنصنف موظفينا حسب القسم الذي يعملون فيه. ننشئ جدولا للأقسام depts ثم نضيف مفتاحا خاريجا في جدول الموظفين employees. الأمر أدناه ينشئ ملف تهجير لجدول الأقسام: php artisan make:migration deptsعدل ملف التهجير: <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class Depts extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('depts', function (Blueprint $table) { $table->increments('id'); $table->string('name'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('depts'); } }ثم ننفذ أمر التهجير لإنشاء الجدول: php artisan migrateيُشترط لتصح علاقة عبر مفتاح خارجي بين جدولين أن يكون المفتاح الخارجي والمفتاح الرئيس Primary key متطابقين في النوع. استخدمنا في تعريف المفتاح الرئيس idضمن الجدول depts دالة increments التي تعطي النوع عددا طبيعيا من عشرة أرقام ;(unsigned integer INT(10 وهو ما يعني أننا سنعطي نفس النوع للمفتاح الخارجي الذي سننشئه في الجدول employees. الفرق أن المفتاح الخارجي لا يزداد تلقائيا لذا سنستخدم الدالة unsignedInteger التي لها نفس مفعول increments من حيث نوع الحقل وطوله، مع فرق أنها لا تضيف الازدياد التلقائي. ملحوظة: حتى تمكن إضافة مفتاح خارجي في الجدول employees يجب أن يكون الجدول فارغا (بدون تسجيلات). لهذا السبب علقنا في فقرة ماضية الشفرة الخاصة بـFaker. نفذ الأمر التالي لإنشاء ملف تهجير لإضافة حقل المفتاح الخارجي dept_id إلى الجدول employees: php artisan make:migration add_dept_id_in_employees --table=employeesثم نعدل ملف التهجير: <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class AddDeptIdInEmployees extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::table('employees', function (Blueprint $table) { $table-> unsignedInteger ('dept_id')->after('gender'); $table->foreign('dept_id') ->references('id')->on('depts') ->onDelete('cascade'); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::table('employees', function (Blueprint $table) { $table->dropColumn('dept_id'); }); } }ثم ننفذ التهجير: php artisan migrate بذر قواعد البياناتيشير مصطلح البذر Seeding إلى عملية إضافة بيانات وهمية لأغراض الاختبار في قواعد البيانات. نطبق هذا الإجراء على جدول drinks الذي أنشأناه في أول الدرس. نفذ الأمر التالي لإنشاء ملف للبذر: php artisan make:seeder DrinksTableSeederينشئ الأمر ملفا باسم DrinksTableSeeder.php على المسار database/seeds. افتح الملف: <?php use Illuminate\Database\Seeder; class DrinksTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { // } } يمدد الصنف DrinksTableSeeder الصنف Seeder ويعرّف الدالة run التي تُنفّذ عند تشغيل أمر البذر في Artisan. عدل الملف ليصبح محتواه التالي: <?php use Illuminate\Database\Seeder; class DrinksTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { DB::table('drinks')->insert([ 'name' => 'Orange Juice', 'comments' => 'Rich in C vitamin', 'rating' => 9, 'juice_date' => '2015-12-20', ]); } أضفنا في الدالة run أمر إدراج في جدول البيانات drinks ومررنا مصفوفة توافق عناصرها حقول الجدول مع تحديد قيم عناصر المصفوفة. ننفذ الأمر أمر البذر لإضافة التسجيلة أعلاه إلى الجدول: php artisan db:seed --class=DrinksTableSeederنمرر لأمر البذر php artisan db::seed اسم الملف المراد تنفيذه. الآن عند التحقق نجد في جدول قاعدة البيانات التسجيلة التالية: قاعدة البيانات الخاصة بمشروع Larashopتعرفنا في الفقرات الماضية على أساسيات التهجير في Laravel. سنجعل هذه المعرفة موضع التطبيق لإنشاء قاعدة بيانات لمشروع Larashop. ستشنرك جميع الجداول في الحقول التالية التي أنشأناها لأغراض الفحص والتدقيق. التسلسلالحقلنوع البياناتالوصف1created_at Timestamp ختم زمني لتاريخ إدراج التسجيلة2updated_at Timestamp ختم زمني لتاريخ تحديث التسجيلة3created_at_ip (Varchar(45 عنوان IP المستخدم لإدراج التسجيلة4updated_at_ip (Varchar(45 عنوان IP المستخدم لتحديث التسجيلةجدول منشورات المدونةالتسلسلالحقلنوع البياناتالوصف1id INT مفتاح رئيس (AUTOINCREMENT) عدد طبيعي يزداد تلقائيا2url (Varchar(255 رابط الصفحة3title (Varchar(140 عنوان الصفحة4description (Varchar(170 وصف يظهر في محركات البحث5content Text محتوى الصفحة أو المنشور 6conblogtent (Tinyint(1 يحدد ما إذا كان المنشور صفحةجدول التصنيفاتالتسلسلالحقلنوع البياناتالوصف1id INT مفتاح رئيس (AUTOINCREMENT) عدد طبيعي يزداد تلقائيا2name (Varchar(255 اسم التصنيفجدول العلامات التجاريةالتسلسلالحقلنوع البياناتالوصف1id INT مفتاح رئيس (AUTOINCREMENT) عدد طبيعي يزداد تلقائيا2name (Varchar(255 اسم العلامة التجاريةجدول المنتجاتلكل منتج تصنيف وعلامة تجارية وحيدين. التسلسلالحقلنوع البياناتالوصف1id INT مفتاح رئيس (AUTOINCREMENT) عدد طبيعي يزداد تلقائيا2name (Varchar(255 اسم المنتج3title (Varchar(140 عنوان المنتج4description (Varchar(500 عنوان المنتج5price int ثمن المنتج6category_id int معرف تصنيف المنتج7brand_id int معرف العلامة التجارية للمنتجملفات التهجير لجداول قاعدة بيانات المشروعسننشئ في هذه الفقرة ملفات تهجير لجداول البيانات المذكورة أعلاه؛ سنضيف أيضا بعض البيانات الوهمية إلى الجداول باستخدام آلية البذر التي تعرفنا عليها سابقا. توليد ملفات التهجيرافتح سطر الأوامر ونفذ الأوامر التالية لتوليد ملفات الجداول: جدول منشورات المدونة: php artisan make:migration create_posts_table جدول تصنيفات المنتجات php artisan make:migration create_categories_tableجدول العلامات التجارية للمنتجات php artisan make:migration create_brands_tableجدول المنتجات php artisan make:migration create_products_tableتحرير ملفات التهجيرننتقل لتحرير كل ملف من ملفات التهجير. جدول منشورات المدونة <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreatePostsTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('posts', function (Blueprint $table) { $table->increments('id'); $table->string('url', 255)->unique(); $table->string('title', 140); $table->string('description', 170); $table->text('content'); $table->boolean('blog'); $table->timestamps(); $table->string('created_at_ip'); $table->string('updated_at_ip'); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::drop('posts'); } } جدول التصنيفات <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateCategoriesTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('categories', function (Blueprint $table) { $table->increments('id'); $table->string('name', 255)->unique(); $table->timestamps(); $table->string('created_at_ip'); $table->string('updated_at_ip'); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::drop('categories'); } } جدول العلامات التجارية <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateBrandsTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('brands', function (Blueprint $table) { $table->increments('id'); $table->string('name', 255)->unique(); $table->timestamps(); $table->string('created_at_ip'); $table->string('updated_at_ip'); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::drop('brands'); } } جدول المنتجات <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateProductsTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('products', function (Blueprint $table) { $table->increments('id'); $table->string('name', 255)->unique(); $table->string('title', 140); $table->string('description', 500); $table->integer('price'); $table->unsignedInteger('category_id'); $table->unsignedInteger('brand_id'); $table->timestamps(); $table->string('created_at_ip'); $table->string('updated_at_ip'); // مفتاح خارجي على جدول التصنيفات $table->foreign('category_id') ->references('id')->on('categories') ->onDelete('cascade'); // مفتاح خارجي على جدول العلامات التجارية $table->foreign('brand_id') ->references('id')->on('brands') ->onDelete('cascade'); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('products'); } }بذر قاعدة بيانات المشروعندرج بيانات وهمية في جداول قاعدة البيانات قصدَ الاختبار. أنشئ ملفات البذر بتنفيذ الأوامر أدناه على التوالي: php artisan make:seeder CategoriesTableSeeder php artisan make:seeder BrandsTableSeeder php artisan make:seeder ProductsTableSeederيحوي جدول المنتجات مفتاحين خارجيين لجدولي التصنيف والعلامة التجارية. لذا يجب البدء بهما (لا يصح إدراج مفتاح خارجي لتسجيلة غير موجودة في الجدول الذي مثل المفتاح الخارجي مرجعا إليه). بذر جدول التصنيفات <?php use Illuminate\Database\Seeder; class CategoriesTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { DB::table('categories')->insert(['name' => 'MENS']); DB::table('categories')->insert(['name' => 'WOMENS']); DB::table('categories')->insert(['name' => 'KIDS']); DB::table('categories')->insert(['name' => 'FASHION']); DB::table('categories')->insert(['name' => 'CLOTHING']); } } بذر جدول العلامات التجارية<?php use Illuminate\Database\Seeder; class BrandsTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { DB::table('brands')->insert(['name' => 'ACNE']); DB::table('brands')->insert(['name' => 'RONHILL']); DB::table('brands')->insert(['name' => 'ALBIRO']); DB::table('brands')->insert(['name' => 'ODDMOLLY']); } } بذر جدول المنتجات<?php use Illuminate\Database\Seeder; class ProductsTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { DB::table('products')->insert(['name' => 'Mini skirt black edition', 'title' => 'Mini skirt black edition','description' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna','price' => 35,'category_id' => 1,'brand_id' => 1,]); DB::table('products')->insert(['name' => 'T-shirt blue edition', 'title' => 'T-shirt blue edition','description' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna','price' => 64,'category_id' => 2,'brand_id' => 3,]); DB::table('products')->insert(['name' => 'Sleeveless Colorblock Scuba', 'title' => 'Sleeveless Colorblock Scuba','description' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna','price' => 13,'category_id' => 3,'brand_id' => 2,]); } } ثم ننفذ أوامر البذر لكل جدول. خاتمةتعرفنا في هذا الدرس على تهجير قواعد البيانات وبذرها في Laravel. كما أننا حددنا هيكلة قاعدة بيانات المشروع الذي نعمل عليه. في الدروس القادمة سنتعرف على إطار عمل Eloquent الذي سنعتمد عليه للتخاطب مع قاعدة البيانات وعرض محتوياتها عند الاقتضاء. ترجمة -وبتصرّف- لمقال Laravel 5 Migrations لصاحبه Rodrick Kazembe.1 نقطة
-
في بعض الأحيان تكون هناك حاجة إلى الصراحة المباشرة بخصوص بعض الأمور، لذلك دعوني أخبركم أنّ خدمة العملاء ليست بذلك العمل المبهج حيث يتفاعل موظف الدعم مع العميل بانشراح ويفهمه. لقد تناول الكاتب Jason Pargin، والذي يعرف أيضا باسم David Wong هذا الموضوع بصورة رائعة، مع لمسة من الفكاهة في مقال من أكثر المقالات انتشارا في عام 2013 بعنوان "Harsh Truths that Will Make You a Better Person" (حقائق قاسية ستجعلك شخصا أفضل). في هذا المقال يتطرّق Pargin للحديث (وبلغة فضّة) حول العديد من التصورات الخاطئة التي نؤمن بها فيما يتعلّق بما يتوقعه الناس منا. الأمر نفسه في مجال خدمة العملاء، إذ يحتاج إلى نظرة صادقة على مدى صعوبة أن يصبح الشخص "بطل العملاء"، بالرغم من أنّني قد لا أتمكّّن من صياغة الأمر كما فعل Pargin. فيما يلي بعض الحقائق القاسية حول العمل في فريق الدعم والتي يجب على الجميع إدراكها: أنت لست ضمن مجال علاقات العميل"Monkeysphere" أو ما يعرف بعدد دُنبار Dunbar's number، هو الحد المعرفي (النظري) لعدد العلاقات المستقرة أو المنتظمة التي يستطيع الإنسان امتلاكها. وفي هذه النظرية مضامين مذهلة: اقترح عالم الانثروبولوجيا البريطاني Robin Dunbar من خلال استخدام متوسط حجم الدماغ البشري والاستنباط من نتائج بعض الرئيسات (كالقردة)، أنّ البشر لا يمكنهم الحفاظ على أكثر من 150 علاقة مستقرة ومريحة. ويؤكد مؤيدو هذه النظرية أنّ الأعداد التي تتجاوز 150 تتطلب قواعد، قوانين، وأعرافًا أكثر تقييدا للحفاظ على مجموعة مستقرة ومتماسكة. يبدو أنّنا نملك حدود معرفية لعلاقاتنا تماما مثلما نواجه صعوبة في استيعاب مدى بعد "مليون سنة ضوئية". يشرح David Wong باختصار كيف يمكن أن يتأثر سلوكنا عند التعامل مع أناس لا يخطرون على بالنا كثيرا: يروي لنا الصحفي الشهير Tim Russert قصة رائعة عن والده في كتابه Big Russ and Me. اعتاد والد Russert أن يستقطع نصف ساعة من وقته ليوضّب قطع الزجاج المكسرة بعناية قبل أن يرميها إلى القمامة، لماذا؟ "لأنّها قد تؤذي يديّ عامل النظافة". كان هذا الفعل من الأفعال غير الاعتيادية لتوضيح وجهة نظري حول MonkeySphere. لا أحد منا يقضي وقته في التفكير والقلق في صالح عامل النظافة، وبالرغم من ذلك، هو يؤدي دورا هاما في عدم إجبارنا على العيش وسط أكوام من القمامة التي نخلفها. نحن لا نفكر عادة في سلامته وراحته، وإن فعلنا، فليس بنفس الطريقة التي نفكر فيها في أصدقائنا أو أفراد عائلتنا، أو حتى حيواناتنا الأليفة. ما علاقة ذلك بالعمل في دعم العملاء؟لهذا الأمر علاقة وثيقة بالعمل في الدعم، فموظف الدعم هو، مجازيا، مثل عامل النظافة ذاك، يهتم بجميع المشاكل ويساعد العملاء في حلّها، لكن في كثير من الأحيان لا يُلاحَظ وجوده، ويُساء تقدير جهوده. السبب في ذلك ليس لأنّ العميل يحمل ضغينة تجاه موظف الدعم، وإنما ذلك الموظف ليس ضمن مجال علاقات العميل فحسب (ليس ضمن الدّائرة التي يُطلق عليها اسم MonkeySphere). إذ أنّه يتم التواصل معه مرّة أو مرتين، وفي بعض الأحيان تُساء معاملته بنفس الطريقة التي قد يرمي فيها أصحاب المنازل الزجاج المكسّر في سلة القمامة بلا مبالاة. لماذا أذكر هذا الأمر؟ لأنّه عقبة نفسية، وببساطة لا يمكن للكثير من الناس التعامل معها. موظفو الدعم المميزون يُعتبرون من أكثر الشخصيات الصبورة، العطوفة، والثابتة، وهذا ببساطة ما يتطلبه النجاح في هذه الوظيفة. يعتبرك العديد من العملاء كـ "موزع الحلول"ولعل عصر "اضغط الرقم 1 لمزيد من الخيارات" في خدمة العملاء أصبح له تأثير بافلوف (Pavlov) علينا كمستهلكين. لكن العديد من العملاء الذين يتصلون بالدعم يعتبرون الموظف كآلة لبيع الحلول المرغوبة؛ يقومون بإدخال الطلب، ومن ثم يخرج الحل، ولا يفكر ذلك العميل فيما إذا كان يستحق تلك الخدمة التي تلقاها أو لا. شكرا لك لتوضيح أفكارك بطريقة واضحة، منمّقة، ومهنية أمّا في الدعم عبر الويب، فالوضع أسوء بكثير. فبفضل تأثير عدم التحفّظ عبر الإنترنت Online Disinhibition Effect، حيث الهوية شبه مخفية، والشخصيات غائبة (أنت ترى الشاشة وليس الشخص)، والمشاعر العابرة أو الألفة المُؤقّتة ("لن أقابل هذا الشخص مجددا") أصبح الناس يتصرفون بقلّة أدب واحترام. اعترف أنني تصرفت بهذه الطريقة من قبل، إذ كنت أغلق نافذة المحادثة المباشرة للدعم حالما أحصل على الإجابة بدون كلمة شكر أو تحية، أو حتّى "طاب يومك". هل يمكنك أن تتخيل هذا النوع من التصرف إذا كانت المحادثة وجها لوجه؟ هذا التصرف غير مقصود من قبل أغلبية العملاء، من ضمنهم أنا، لكن لا يعني ذلك أنّه ليس فظا. يُدرك موظفو الدعم الرائعون أنّ هذا التصرف غير مقصود ويتفهمون أنّه لا يمكنهم أخذ الأمر على محمل شخصي، وأنّه مجرد جزء من عملهم. لا مكافئة إلا لمن نجح في إنهاء محادثة الدعممن صفات موظف الدعم الجيد أنّه يحافظ على هدوئه في المواقف حيث يفقده الآخرين. وبعبارة أخرى، أنّه يجب أن ينهي المحادثة بطريقة هادئة، مهنية، وعملية، وكذلك، برضى العميل حتى وإن كان ذلك العميل مزعجا. قد يبدو هذا الأمر سهلا، لكن عندما تمر بشكل مباشر بما يواجهه موظف الدعم على الطرف الآخر من الخط ستدرك أنّه ليس سهلا كما يبدو. يجب على الشركات أن تحب عملاءها حتى مع وجود أشخاص غير مهذبين. فما يجعلك عظيما في الدعم هو أداء عملك بالرغم من كل الشتائم، التصرفات الطفولية، والأنانية العامة لأغلب الناس. سينتشر الخبر سريعا على الإنترنت وسيعلم الجميع عندما يخطئ أحد موظفي الدعم بحق أحد العملاء، لكنّنا نادرا ما نسمع عن الكيفية التي يعامِل فيها العميل ذلك الموظف والتي دفعته إلى ارتكاب الخطأ؛ ما نسمعه هو الشكاوى فقط. لذلك فمهمّتك كموظف في فريق الدعم هي إنهاء المحادثة برضى العميل وإيصاله إلى الحل المنشود، حتى وإن لم تكن ترغب في ذلك، أو إذا كان العميل لا يستحق التعامل معه بأفضل أساليبك. ومن ثم تستيقظ في اليوم التالي وأنت على استعداد لإنهاء محادثة أخرى ولقول "أنا في خدمتك". وظيفتك هي من أكثر الوظائف المساء تقديرها في أي شركةأنا أعني ذلك بصراحة، وبالرغم من أنّني أوّجه مقالي هذا إلى جمهور يتكون من العديد من الأشخاص الذين يعملون في خدمة الدعم، إلّا أنّ ذلك لا ينفي صحة الأمر. لقد سمعت أنّ كون الشخص رئيسا هو مثل كونه ظهيرًا رباعيًا quarterback في فريق كرة القدم الأمريكية؛ يتحمل كل اللوم عندما تسوء الأمور، ويحصل على مدح أكثر مما يستحق عندما تسير الأمور بشكل جيّد. والوضع ذاته مع موظف الدعم، فيما عدا الجزء الذي يتعلّق بالحصول على "المدح والاعتراف". يُشار دائما إلى المهندسين والمسوقين بـ "النينجا" أو "الروكستار"، إلا أنه يبدو أنّ فرق الدعم لم تبدأ في الحصول إلّا مؤخّرًا على نصيبها العادل من الأضواء. ينطوي جزء من يومي على التعامل مع التحليلات، وقد يُحني المهندس رأسه لساعات لكتابة شيفرة ما، لكنّ فريق الدعم يقضي كامل يومه عند خط المُواجهة الأمامية، يتعامل مع كل فئات العملاء حتى أولئك المجانين منهم. لكم كل الاحترام، لأنه بالتأكيد لا يمكنني أن أفعل ذلك. يتطلب العمل في الدعم مهارات يملكها القليل من الناس، وهو ليس بالسهل أبدا. وإذا اعتبرنا المهندسين في المجال التقني كلاعبي وسط الميدان أو المُهاجمين في فريق كرة قدم، سيكون فريق الدعم هو دفاع الفريق أو حارس مرماه؛ ربما لن يحصل على تقدير أفضل كالمُهاجمين مثلا، لكنه ما يزال جزءا أساسيا في الفريق. نعم، هذا المقال يمدح أبطال الدعم في الشركات في كل مكان، وهم جديرون بذلك، فوظيفتك هي تلك التي لن تحصل على التقدير التي تستحقه أبدا. ملاحظة: إن لم تكن تعمل في خدمة العملاء، اشكر موظف الدعم في المرة القادمة التي تتحدث فيها معه ويُتم عمله على أكمل وجه، وتمنى له يوما سعيدا، فهو بالتأكيد يستحق ذلك. وإذا كنت مديرا لشركة، اذهب واثنِ على فريق الدعم الخاص بشركتك. ترجمة -وبتصرّف- للمقال Harsh Truths That Will Make You a Better Support Rep لصاحبه: Gregory Ciotti. حقوق الصورة البارزة: Designed by Freepik.1 نقطة
-
يمكنك أيضًا استخدام برنامج Protected Folder والذي يعمل بشكل مضمّن مع متصفح الملفات في ويندوز، اكسبلورر، البرنامج سهل الاستخدام للغاية ومجاني أيضًا.1 نقطة
-
الصّور بلاحقة png ضغطها أقل من jpg.. لا شيء آخر يمكنك فعله!1 نقطة
-
ملف htaccess. هو ملف وصول تشعبي Hypertext Access وهو ملف تكوين configuration file يُستخدم من قبل خوادم الويب القائمة على Apache. يحوي كل المعلومات التي تُفهَّم للـPHP مثل المعلومات التي لها علاقة بالتخزين المؤقت Cashing أو إعادة التوجيه Redirecting (عمليات إعادة توجيه للخادوم حتمية) يجب أن يحوي الدليل أو المجلد الأساسي ملف htaccess. واحد فقط ولا يجب أن يكون لديك أكثر من htaccess. في نفس المجلد. ولكن يمكن أن يكون لديك أكثر من ملف htaccess. في مجلدين مختلفين. في حال كان لديك أكثر من ملف htaccess. في نفس مسار المجلد يجب أن تتأكد أي من الملفين هو المستخدم وأي من تعليمات الملفين هي التي تستخدمها. ملاحظة: في حال قمت بتعديل ملف htaccess. أو قمت بإنشاء واحد آخر يجب عليك التأكد من أنك في النهاية ستستخدم مسار ملف واحد. أهم التعليمات الموجودة في الملف htaccess : - يشمل ملف htaccess. القدرة على حماية المجلدات عن طريق كلمة مرور. - حظر المستخدمين أو السّماح لمستخدمين يستخدمون عنوان IP معين بالوصول. - استخدام دليل القوائم directory listings. - إعادة توجيه المستخدمين إلى صفحة أو دليل directory آخر تلقائيًا. - إنشاء واستخدام صفحات الخطأ. - تغيير طريقة استخدام الملفات للاحقات extensions معينة. - استخدام ملف آخر كملف مؤشر عن طريق تحديد لاحقة الملف.1 نقطة
-
1 نقطة
-
نصحني صديقي بإجراء امتحان شهادة CompTIA Security لاختبار قدراتي في الأمن الإلكتروني فما تفاصيل هذه الشهادة؟ وكم تبلغ تكلف إجراء امتحانها؟وهل سأستفيد منها حقا؟1 نقطة
-
من أساسيات الحياة أنّ الإنسان لا يمكن أن يمضي يومه بأكمله في العمل، وإن صادف ووجدت شخصا يعمل بشكل متواصل طيلة اليوم فاعلم أنه سيصاب بنوبة من الإرهاق والتعب من المجهود المبذول، وذلك لأنه يعمل بطريقة ستوصله إلى أقرب مستشفى لتلقي العلاج، لذلك ينصح المتخصصون في هذا المجال بضرورة الموازاة بين العمل والراحة، وكطريقة أجدها فعالة بشكل جيد -من خلال تجربة شخصية-، طريقة POMODORO، حيث تعتمد هذه التقنية على مبدأ أساسي بسيط: أعمل 25 دقيقة وخذ مدة راحة تساوي 5 دقائق.ثم أعد العملية بشكل متواصل إلى أن تنتهي ساعات العمل.خلال 5 دقائق، يمكنك الذهاب إلى الحمام، أو إعداد كوب القهوة خاصتك، أو المشي في أرجاء مكتبك لتنشط دورتك الدموية، وتخرج من روتينية العمل. هذا ستجدد نشاطك وتبقى حيوياً لوقت أطول مما يساعدك على الاستمرار في العمل بشكل أفضل. بالنسبة لـ POMODORO يمكنك اقتناء هذا المؤقت الذي سيساعدك على ضبط أوقات العمل والراحة: تقنية pomodoro1 نقطة
-
في العموم ليس هناك وقت محدد لرفع السعر، بمعنى آخر لن يقدّر أحد سواك الحاجة والوقت المناسب لفعل ذلك، حيث أنّه مغامرة يجب حساب عقباتها جيداً قبل الإقدام عليها، فمثلاً من الممكن أن تفقد عميلاً مهما بسبب هذه الزيادة إذا لم يلمِس في عملك الأحقّية للسعر المعروض مقابل الساعة الواحدة، أضف إلى ذلك إمكانية مصادفة نوع من العملاء مستعد للمجادلة في أي شيء وبالتحديد في السعر. كوقت أعتبره مناسبا لرفع السعر بشكل تقريبي - وهنا لن أتحدث عن مهارتك، سأعتبرك ماهراً ومحترفا في عملك - فهو وقت زيادة الطلب على العرض أي عندما تشعر أن هناك إلحاحا على طلبك للعمل وأنك بصدد العمل على مشروعين أو أكثر، يمكنك هنا رفع سعر ساعتك، مع مراعاة أن تكون درجة رفع السعر معقولة وغير مبالغ فيها، حيث ستضع حداً للمتلاعبين في عرض المشاريع وتعمل مع الجادين. ولا تنسى المحافظة على العملاء المداوِمين على العمل معك، فتجعل رفع السعر هو الغاية القصوى من عملك فتفقد عملاءك المخلصين للعمل معك.1 نقطة
-
في النسخة الحديثة من FFmpeg، استعمل crop filter. عن طريق ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4 حيث : out_w: هي عرض المستطيل الناتج.out_h: طول المستطيل الناتج.xو y :إحداثيات النقطة الأعلى جهة اليسار للمستطيل الناتج، أي نقطة بداية عملية القص.الصورة الأصلية(320x240): مثال1: لقص 60*80 ابتداءً من النقطة(200،100): ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4 مثال2: لقص الجزء السفلي جهة اليمين: ffmpeg -i in.mp4 -filter:v "crop=in_w/2:in_h/2:in_w/2:in_h/2" -c:a copy out.mp4 أو: ffmpeg -i in.mp4 -filter:v "crop=320/2:240/2:320/2:240/2" -c:a copy out.mp4 أو: ffmpeg -i in.mp4 -filter:v "crop=240:120:240:120" -c:a copy out.mp4 مثال3: قص وإزالة 20px من أعلى الشريط و20أخرى من أعلاه: ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp41 نقطة
-
هممم لماذا لاتكتبها بهذي الطريقة <?php for ($i = 0; $i < 3; $i++) { echo "<input type='text' value='varb $i' name='var $i'> <br>"; //or //echo "<input type='hidden' value='var $i' name='var $i'> "; } for ($i = 0; $i < 3; $i++) { echo "var $i" . "<br>"; } ?>1 نقطة
-
شاهدت مؤخرًا العديد من التصاميم ثلاثية الأبعاد للافتات نيون إعلانية تم تصميمها باستخدام برامج التصميم ثلاثي الأبعاد. أميل أكثر للتّصاميم ثنائية الأبعاد لذلك أريد أن أنتج تأثير نيون مشابه باستخدام الإليستريتور وفوتوشوب ولكن مع إضافة الحركة بواسطة صيغة GIF المتحركة. اتبع هذا الدرس لتتعلم عملية تصميم لافتة إعلانية لكوكب البيتزا مُستخدمًا أدوات فكتور الإليستريتور لإنشاء التصميم الأوّلي للافتة ثم فوتوشوب لإضفاء الحيوية على التصميم عبر أنماط الطبقات المتنوعة وتشكيل الحركة للملف. تأثير لافتة النيون سيتم إنشاؤه في الفوتوشوب باستخدام أنماط الطبقات عبر إنشاء توهجات نيون ملوّنة كما سيكون هناك طبقة قاتمة تكون عند إطفاء الأنوار والتي ستُضاف في إطار أثناء سير الحركة للملف لإضفاء الشعور بالواقعية على التأثير. لافتات النيون تعتمد على الأنابيب المنحنية لتشكيل أشكال التصميم لذلك سنستخدم الإليستريتور لصياغة مسارات فكتور بحيث لا تتقاطع الخطوط مع بعضها. افتح برنامج الإليستريتور وابدأ ملفًّا جديدًا. ارسم دائرة على لوح الرسم باستخدام أداة القطع الناقص Ellipse tool، ثم ألغِ لون التعبئة واترك فقط الحدود السوداء ظاهرة. غيّر إعدادات الحدود إلى 5pt مع نهايات مستديرة وزوايا مستديرة أيضًا. استخدم أداة النص Type tool لإضافة أي نص إلى لافتة النيون. أنا استخدمت خطًّا اسمه Darwin لكتابة Pizza Planet. اضبط حجم النص ليتوسط الدائرة ويتقاطع مع حدودها الخارجية ثم أمِلهُ بزاوية -10 درجة عموديًّا من القائمة: Object > Transform > Shear option ألغِ لون التعبئة للنص وأضف حدودًا سوداء مستخدمًا ذات الحجم 5pt مع النهايات المستديرة والزوايا المستديرة أيضًا. بالزر الأيمن اختر Convert to Outlines. ارسم دائرة صغيرة وقصّ المسار باستخدام أداة المقص Scissors tool في الجزء العلوي الأيسر. استخدم أداة التحديد المباشر Direct Selection tool لحذف المسار من النقطة السفلية إلى هذا القطع الجديد. اصنع نسخًا عديدة من هذا الشكل الأخير مع تعديل أحجامها وذلك لتعبئة المساحات الفارغة داخل الدائرة لتكوين فوهات وفتحات الكوكب. حدّد الدائرة الرئيسية للكوكب وانسخها CMD+C ثم ألصقها في المقدمة CMD+F. استمر بالضغط على ALT أثناء تمديد وضغط الشكل لتشكيل الحلقة حول الكوكب. ضاعف هذا الشكل الأخير وصغّر حجمه قليلًا بشكل يوازي الأصلي. ارسم شكلًا بيضويًّا في مكان ما على لوح الرسم ثم اسحب النقطة العلوية للأعلى باستخدام أداة التحديد المباشر Direct Selection tool لتمديد الشكل. استخدم أداة Convert Anchor Point tool الموجودة ضمن أدوات القلم لإزالة مقابض البيزير وترك النقطة حادة. أضف دوائر أخرى إلى الشكل لبناء شكل صاروخ بسيط. استخدم لوحة المحاذاة Align panel لتوسيط جميع العناصر مع جعل شكل جسم الصاروخ العنصر المفتاح عبر منحه نقرة إضافية. اصنع نسختين من الصاروخ وعدّل حجمها ودوّر كل صاروخ وضعهُ في موقعه في مدارٍ حول الكوكب مع جعلها أكبر في كل مرّة. التصميم يحوي العديد من المسارات المتداخلة فوق بعضها لذلك دعونا ننشئ المزيد من نماذج أنماط لافتة النيون. حدّد دائرة الكوكب الرئيسية ثم اذهب للقائمة: Object > Path > Offset Path ثم أدخل القيمة 3mm. انقر بالزر الأيمن على المسار الإضافي الجديد واختر Make Guides. تأكد من ظهور الأدلة عبر الضغط على CMD+; ومقفلة عبر الضغط على CMD+Alt+; استخدم أداة المقص Scissors tool لقص مسارات حلقات الكوكب في موقع تقاطعها مع الأدلة الجديدة. استخدم الأدلة الذكية Smart Guides عبر الضغط على CMD+U لتُسهّل عملية مطابقة هذه المنطقة. على الجانب الآخر فإن حرف P يتقاطع مع حدود الكوكب أيضًا لذلك ألغِ تجميع النص Ungroup من أجل تحديد هذا الحرف فرديًّا ثم أضف مسار إضافي بقيمة 3mm. الحرف P بشكل خاص بحاجة لخطوة إضافية من أجل إنشاء الأدلّة. انقر بالزر الأيمن ثم اختر Release Compound Path ثم احذف الجزء الداخلي قبل تحويل الخطوط الرئيسية إلى أدلّة. قص حلقات الكوكب عند تقاطعها مع المسار الإضافي لحرف P ثم احذف الأجزاء غير المرغوبة من المسارات. سنستخدم ذات التقنية في كل التصميم لإزالة جميع المسارات المتقاطعة ولكن بالنسبة للجزء السفلي من الحلقة فإن النص هو من يحتاج للتعديل للسماح للحلقة بالالتفاف حول الكوكب. ألغِ تجميع Ungroup عناصر النص الأخرى وأضف مسار إضافي للحرف الأول والأخير ثم أنشئ أدلّة من النتائج. تذكّر أن تحرر المسار المركب لحرف P ليصبح قابلًا للتحول إلى دليل. استخدم هذه الأدلة الجديدة لقص أي مسارات متداخلة مع بعضها وأزِل التداخلات في كل أنحاء التصميم. بالنسبة للمنطقة التي يتداخل فيها النص مع الحلقة سنحتاج إلى أدلة إضافية من مسارات الحلقة نفسها. استخدم أداة المقص Scissors tool لقص وحذف مناطق تواجد الحروف تحت الحلقة عبر خطوط الأدلة. من الضروري في بعض الأحيان تحرير المسارات المركبة للحروف من أجل تحديد وحذف الأجزاء غير المرغوبة من المسار. بعد إزالة جميع المسارات المتداخلة سيكون التصميم قد أخذ شكلًا أكثر واقعية كلافتة نيون. حدّد المسارات التي تُشكّل جزءًا محددًا وامنحها ألوانًا برّاقة للحدود كالأزرق، الأحمر، الأصفر والأبيض. افصل الألوان المختلفة داخل طبقاتها الخاصة عبر استخدام القائمة: Select > Same > Stroke Color ثم انسخ التحديد وألصقه في المقدمة. وضع الأجزاء التي ستكون متحركة في طبقات خاصة بها كالعناصر التي تُكَوِّن الصواريخ الثلاثة. اذهب إلى القائمة: File > Export وضع نوعية الملف PSD Photoshop وتأكّد من تفعيل خيار Write Layers. افتح الملف الذي تم تصديره من برنامج الإليستريتور في برنامج الفوتوشوب ووسِّع حجم العمل قليلًا. لوِّن الخلفية بالأسود وأضف خامة جدار الطوب. حدّد كل طبقات عناصر لافتة النيون ثم اضغط CMD+J لمضاعفتها ثم اضغط CMD+E لدمجها في طبقة واحدة. أعِد تسمية هذه الطبقة 'Off'. أضف سلسلة من أنماط الطبقة لجعل هذه الطبقة تبدو كالأنابيب بدون إضاءة، أي (تراكب لوني) Color Overlay، (توهج داخلي) Inner Glow و (الظلال) Drop Shadow. ضع هذه الطبقة أسفل جميع الطبقات بحيث لن تكون ظاهرة أثناء إضاءة العناصر وستظهر أكثر في العناصر المتحركة حيث ستنطفئ هذه العناصر عدة مرات. شَغِّل طبقة النيون الأولى عبر سلسلة من أنماط الطبقة. أضِف التوهُّج الداخلي لإضافة الأبيض البرّاق إلى المركز، والتوهُّج الخارجي لإطلاق الهالة الملونة، تليها المزيد من الظلال لتراكب التوهُّجات بأحجام مختلفة. كل هذه الأنماط للطبقات تُنتِج تأثيرًا واقعيًّا إلى حد كبير مشابهًا لإضاءة النيون وتأثيرات التوهُّج والتفاعل مع خلفية جدار الطوب. انسخ وألصق نمط الطبقة إلى الطبقة التالية ثم عدّل إعدادات التوهُّج حتى تناسب لون العنصر. وفّر الوقت عبر نسخ نمط الطبقة إلى باقي الطبقات التي تحمل ذات اللون. لافتة النيون ستبدو رائعة عند الانتهاء من وضع كافة أنماط الطبقات ولكننا سنضيف بعض الحركة على التصميم. اجمع عناصر كل صاروخ معًا بحيث سيكون من السهل تشغيل وإيقاف أي صاروخ أثناء الحركة. أظهر لوحة Timeline من قائمة Window ثم أنشئ إطار جديد New Frame Animation. في هذا الإطار الأول ستكون اللافتة متوقفة عن العمل لذلك سنُظهر فقط الطبقة الداكنة مع خلفية جدار الطوب. عدّل المدة الزمنية لهذا الإطار الأول إلى ثانية واحدة. أضف إطار جديد تظهر فيه أول طبقة نيون. لا تضف أي زمن لظهور هذا الإطار وبذلك سيظهر هذا الضوء على الفور. أضف إطارين بعدها بدون مدة زمنية لإضافة الأضواء الحمراء والزرقاء بحيث ستضيئ اللافتة تباعًا بسرعة. في الإطار التالي أظهر طبقة الصاروخ الأول مع جعل المدة الزمنية لعرض هذا الإطار ثانية واحدة. في الإطار التالي أخفِ الصاروخ الأول وأظهر الثاني لإعطاء الانطباع عن حركة الصاروخ. أضف إطار جديد للصاروخ الثالث من أجل إظهاره وإخفاء الصاروخ الثاني. ضاعف هذه الإطارات الثلاثة الأخيرة لتُطيل مدة الحركة. أو بدلًا من ذلك يمكن جعل هذه الطبقات الثلاثة تضيء باستمرار إلى ما لا نهاية بدون وجود الطبقة الأولى للافتة المتوقفة عن العمل. قم بتصدير العمل كملف GIF من خلال Save for Web أو أرسله إلى برنامج تعديل فيديو لتصنع حركة مستمرة أفضل. ترجمة -وبتصرّف- للمقال: How To Create an Animated Neon Sign Effect لصاحبه: Chris Spooner.1 نقطة
-
السلام عليكم يمكنكم مراجعة المقالة التالية: المدخل إلى تنمية العميل1 نقطة
-
تحدثنا في المقالات السابقة من سلسلة "كيف تُصبح مُستقلاً ناجحًا" عن العمل المُستقل عمومًا موضحين أبرز ميزاته، ثُمّ عرّجنا على الخطوات العملية الأولى للعمل المُستقل وتعرفنا على أدواته اللازمة وتوسعنا إلى مجموعة من الأساسيات للترويج عن الأعمال المُستقلة وأفضل الطرق لإيجاد العملاء. ثُمّ انطلقنا معكم مُرتكزين على توجيه العروض وسياسات التسعير المُتّبعة في هذا العمل. سنكمل معكم ما بدأنا بالوقوف على مجموعة من تفاصيل إدارة العمليات والحصول على التقييمات وطرق استقبال الأموال والتي لا بُدّ ألا يغفلها أي مُستقل لنجاح سير عمله. إدارة عملياتك كمُستقل أولاً: إدارة العمليات الخاصة بمُقدمي الخدمات على منصات العمل الحُر1- مرحلة تلقي العروضوهي مرحلة الاحتكاك الأولى مع الزبائن والتي تأتي مُباشرة بعد بناء ملفك الشخصي وتعريف الآخرين به وأساس هذه المرحلة "التواجد والمُتابعة"، فإذا كان عملك كمُستقل ضمن موقع لبيع الخدمات (أي أنك قد طرحت مُسبقًا خدمة أو مجموعة خدمات تتقنها - مثل العمل على موقع خمسات للخدمات المُصغرة) فإنه عليك أن تتوقع مُراسلة من طالبي العمل باستفساراتهم قبل الطلب، أيضًا عند شراءهم للطلب بشكل مُباشر ستصلك إشعارات منهم بتفاصيل طلباتهم، لذا عليك في الحالتين أن تكون جاهزًا ومتواجدًا للإجابة بأسرع وقت ممكن ومُتابع لطلبات واستفسارات زبائنك. أما إن كان عملك ضمن منصات يطرح بها طالبي العمل طلباتهم على شكل عروض (أي أن صاحب العمل يطرح طلبه مع ميزانيته لإنجاز هذا الطلب ثم يقوم المُستقلين بطرح عروضهم لصاحب العمل بالشكل المُناسب لهم - كالشكل الذي يعمل عليه موقع مُستقل على سبيل المثال) وعليك في هذه الحالة أن تكون أيضًا على استعداد لتقديم عرضك الأنسب ومُتابعة هذا العرض، وأن تتوقّع مُراسلة من طرف صاحب العمل بمجموعة من الاستفسارات التي يحتاج معرفتها قبل الموافقة على عرضك، لذا فإن التواجد المستمر والرد السريع مطلوب في هذه المرحلة. تلميح: قد يطول الانتقال إلى هذه المرحلة (مرحلة تلقي العروض والبيع الفعلي) خاصة مع وجود مُنافسة أو خدمات شبيهة، لذا ينبغي عليك الصبر والإيمان بأن الوقت المُناسب سوف يأتي ويجب ألّا تُغفل الأساس الصحيح الذي عليك اتباعه والذي تعرفنا على خطواته في الجزء الثاني من السلسلة ستتلقى بسعادة عرضك الأولي وعندها عليك أن تُحضّر نفسك بسرعة إلى بداية العمل الجاد، والتالي قائمة بأهم الوسائل التي عليك اتباعها لإنجاح تجربتك: 1- الالتزام ثُم الالتزام: ويُقصد هُنا الالتزام الكامل بتلبية الطلب وفق الشروط المُتفق عليها. 2- احترم الوقت والتزم به. 3- كُن على تواصل دائم بالزبون واطلعه بالمُستجدات ولا تُهمل أي رسالة أو استفسار من طرفه. 4- التزم حسن الخُلق ولباقة التعامل وعبّر عن نفسك بأفضل شكل مهما حدث. 4- اعتذر عند الاضطرار إلى مُخالفة إحدى الشروط مع الزبون وكُن صريحًا وواضحًا دون اختلاق أية أعذار واهية. 5- قدّم خدمة مُميّزة بالفعل وليس مُجرد خدمة أخرى. 6- لا تغفل تقديم أي نصيحة أو التشاور مع زبونك لأي أمر تجد فيه مصلحة له فهذا الأمر سيُقدره لك. 2- التواصل الأمثل مع العملاء (آليات المُتابعة والتعامل مع العملاء بعد تثبيت الطلبات)يجب أن تُولي كل زبون اهتمامًا خاصًا دون أن يؤثر ذلك على سير عملك كمُستقل. الطبيعة الخاصة لأي مُشترٍ مُسدّد لقيمة مالية - مهما صغرت القيمة أو عظمت – أنه يتوقّع منك ردًّا على الفور وأن توليه كُل الاهتمام بغض النظر عن أي التزامات قد تكون مُرتبطًا بها. التّالي خلاصة الخبرة نسردها لك على هيئة مجموعة من نصائحٍ عشر والتي ستضعك أنت وزبائنك وفق مسارٍ صحيح بحيث يكون الجميع سُعداء: 1- احترم التواصل مع زبائنك ولا تُهمل أبدًا أي استفسار أو تساؤل مهما عظم أو سخف واجعل ردودك واضحة مفهومة. 2- اجعل من مُهمة التواصل مع الزبائن عملًا آخر وخصّص له بعضًا من وقتك. من الجيّد أن تضع ضوابط وأوقات للرد بحسب ما تراه مُناسبًا ولا يضر بأداء أعمالك دون أن تكون الأوقات مُتباعدة. (على سبيل المثال: فرّغ نفسك مرتين يوميًا بأوقات مُحدّدة صباحية ومسائية لغرض مُتابعة استفسارات زبائنك والرد عليها، التنظيم بهذا الشكل سيُبعدك عن التشتّت ويزيد إنتاجيتك وبنفس الوقت يبقيك على اتصال معقول مع زبائنك). 3- كُن حريصًا على إطلاع الزبون بمُستجدات سير العمل فهذا الأمر سيُسعده ويُقدره لك. 4- حافظ على اللباقة مهما حدث واحترم وعبّر عن نفسك بشكل جيّد تحت أي ظرف. 5- كُن صريحًا وواضحًا بعيد عن المُجاملة والعاطفة التي قد تنعكس عليك سلبًا. 6- لا يوجد عمل جيّد ومجهود دون مُقابل، لذا عوّد نفسك على الاعتذار عن تقديم أي خدمة تحتاج وقتًا ومجهودًا منك وليس لها مُقابل مادي. (تذكّر بأنك كمُستقل تقود أعمالك الخاصة لأجل الرزق وبأنك لست هاوٍ تسعى إلى تعبئة وقت فراغك). 7- احترم الاتفاق المُبرم بشكل كامل وقدّم أقصى خدمة مُمكنة. 8- تذكّر بأنك مسؤول تمامًا على تقديم الخدمة بشكلها المُتفق، وفي حال أشار زبونك بعد التسليم لأي طلبات تصحيح مُحقّة لصالحه فعليك بعد الاعتذار منه أن تؤديها له بالسرعة المُمكنة. 9- للأعمال التي تقبل تعديلات (كالتصميم – والبرمجة .. الخ) عليك أن تضبط ضمن الاتفاق عدد التعديلات التي بإمكانك تنفيذها عقب انتهاء الخدمة. (بإمكانك الإشارة صراحة عند شرح خدمتك بأن أي تعديلات جذرية تُطلب عند انتهاء الخدمة فإنها تتطلّب مُقابلًا مادّيًّا لها، كذلك يُفضّل حصر التعديلات البسيطة إن وجدت لدى الزبون ضمن عدد مُحدّد. هذا الأمر مُهم للغاية ويحد من أي خلافات أو هدر للوقت). 10- تواصل مع الزبون عند انتهاء العمل واشكره على اختياره لك، كذلك أدعه للتعامل معك مُجددًا. 3- الحصول على التزكيات والتقييمات الإيجابية: كُنا قد تحدثنا في جزءٍ سابق من السلسلة على أن الجميع يبحثون عن الناجحين دومًا وهي حقيقة لا يُمكن تجاهلها، لذا فإن مُعظم من يطلب أشخاصًا مُستقلّين للتعامل معهم لا يتردّد بتصفح الملفات الشخصية لهم وتفقّد درجة التقييم إضافة إلى الاطّلاع على تعليقات الزبائن السابقين وآرائهم حول التعامل معه، لذلك احرص على الدوام وبعد الانتهاء من العمل على أتم وجه بأن تطلب من زبونك أن يترك انطباعه حول خدمتك. لعلّ من أهم الفوائد التي تنالها كمُستقل جراء التقييمات والتعليقات الإيجابية على خدماتك وزيادة تلك التقييمات والتعليقات طردًا مع زيادة المبيعات هي شهرة ملفك التعريفي ضمن منصة العمل الحُر والوصول إليه من طرف الباحثين عن الخدمات بشكل أفضل، والسبب بذلك أن مُعظم منصات العمل الحُر وعبر خوارزمياتها البرمجية الخاصة تُصنف البائعين بحسب درجات الأهمية مُقدمة فائدة لزبائنها وأيضًا للمُستقلين المُجتهدين على حدٍ سواء. سوّق لنفسك دون استحياء، اجتهد في أداء عملك ولا تتردّد أبدًا من طلب تقييم هذا العمل شاكرًا لزبائنك ذلك وموضحًا لهم بأنك تسعى إلى أداء الأفضل، أيضًا لا بأس بأن تطلب من زبائنك المُخلصين بأن يتحدثوا عن مُنتجاتك وخدماتك لمعارفهم ممّن يجدوا فيهم الحاجة لما تُقدّم. ثانيًا: إدارة العمليات الخاصة ببائعي المُنتجات الإلكترونية بنسخ مُتعددةتُعدّ عملية بيع المُنتجات الإلكترونية الجاهزة (كتب إلكترونية – تصاميم جاهزة – خطوط – قوالب ..الخ) أبسط من حيث المُتابعة مُقارنة بتقديم الخدمات حسب الطلب، وبإمكاننا التحدث عنها بأبسط شكل بالعبارة "ضع مُنتجك المميّز بشكل تعريفي مُميز ضمن المنصة المُناسبة ثُم ابدأ بتحصيل الأرباح أثناء نومك" لكن هذا لا يعني أبدًا بأنها لا تتّبع إلى مجموعة من المراحل والتي سنُعرّج عليها بحسب الآتي: 1- البيع ومتابعة المبيعاتبعد تحضير المُنتَج المُناسب ووضعه بالشكل المُناسب (تحدثنا عن ذلك في الجزء الثالث من السلسلة)، وبعد التسويق الجيّد للمُنتَج فمن الطبيعي أن تأتي مرحلة البيع الفعلي كخطوة أولى. تُساهم مُتابعة نسبة وحجم مبيعات المُنتَج من طرف المُستقل إلى دراسته لوضع سوقه (أفضل الأوقات لطرح مُنتجات جديدة شبيهة – قياس رغبة الزبائن باقتناء مُنتجات شبيهة ..الخ). تلميح: قد توفّر بعض المنصات للزبائن خيار إجراء تواصل مع صاحب المُنتج قبل الشراء وأيضًا بعد أن يُصبح المنتج لدى الزبون وهُنا يجب عليك كمُستقل أن تُتابع طلباتهم واستفساراتهم حول المُنتج وأن تكون إجاباتك عن المُنتج واضحة وصريحة. 2- الحصول على التزكيات والتقييمات حول المُنتَجتوفّر بعض المنصات خاصية تقييم المُنتجات من طرف الزبائن بعد الشراء، لذلك يجب عليك أن تحرص على تقديم الأفضل على الدوام من أجل الحصول على التقييمات الإيجابية والتي ستُساهم برفع قيمة مُنتجك وزيادة في المبيعات كتحصيل حاصل. تلميح: إن توفّر لديك خيار التواصل مع الزبائن بعد الشراء قُم بدعوتهم بشكل صريح إلى التعبير عن رأيهم بكل موضوعيّة حول المُنتَج، أيضًا احرص على مُساعدتهم وتواصل معهم بعد الشراء لأي أمور مُتممة قد يكونوا بحاجة لها، وبعد رضى الزبون التام عن المُنتَج لا بأس أن تسوّق لنفسك بإعلامه عن مُنتجات أخرى تمتلكها وتجد بأنها مُفيدة له. استقبال الأموال استقبال الأموال هي الخطوة الأخيرة في دورة العمل المُستقل وهي المُكافئة التي ينتظرها أي مُستقل بعد أداء عمله على أتم وجه. التالي أبرز طرق استقبال الأموال التي تتبعها منصات العمل الحُر والتي عليك أن تكون على دراية بها: 1- نظرًا لكون العمل المُستقل عبر المنصات يتم عبر الإنترنت فمن الطبيعي أن يكون الاعتماد الأولي والرئيسي على الخدمات المصرفية الإلكترونية. هُناك عدد من الخدمات العالمية الموثوقة وسنذكر لكم أكثرها انتشارًا في عالمنا العربي والتي تعتمدها مُعظم منصات العمل في إرسال الأرباح للمُستقلين: - خدمة PayPal: هي خدمة نقل الأموال عن طريق الإنترنت ويتم استخدامها للتسوق الإلكتروني الآمن ومن أبرز ميزاتها توفير خدمات لحظية لتحويل الأموال إلكترونياً بين المُستخدمين المُنتسبين إليها، لذلك فإن مُعظم منصات العمل الحُر تعتمدها كوسيلة فعّالة رئيسية تُمكّن المُشترين أو طالبي الخدمات من الشراء باستخدامها، وفي ذات السياق تتمكن تلك المنصات من إرسال الأرباح أو عوائد العمل المالية للمُستقلين، وتتم هذه الإجراءات من خلال اقتطاع نسبة من المبالغ المُحولة وتُعّد هذه النسبة بسيطة مُقارنة بالخدمة السريعة والسهلة المُقدمة إضافة إلى ميزة أساسية مُتمثلة بعامل الأمان الذي تمتلكه باي بال مُقارنة بالبطاقات الائتمانية المصرفية. بإمكانك كمُستقل التوجّه ببساطة إلى موقع paypal.com والاطّلاع على كافة شروطهم وما هي خدماتهم المُتاحة بالنسبة لدولتك، ثُم التسجيل بحسب البيانات التي ستُطلب منك. تلميح: كما ذكرنا فإن PayPal وسيلة دفع وأيضًا وسيلة إيداع، أي بإمكان المُستقل التعامل به للشراء وأيضًا لتحصيل الأموال، ويتطلّب التنشيط الكامل للخيارين أن يتم تفعيل الحساب من خلال بطاقة ائتمانية صادرة عن حسابك المصرفي وذلك بحسب قوانين الخدمة والصلاحيات المُمكنة بحسب دولتك. - خدمة Payza: بنك إلكتروني شبيه بعمل PayPal بحيث أنه مُتخصّص بالتعاملات المالية من خلال الإنترنت وهو الآخر آمن ومُعترف به في كثير من بلدان العالم كما أنه يوفّر دعم فني داخلي باللغة العربية. يتميّز Payza بسهولة الاستخدام وتستطيع خلاله كمُستقل استقبال وتحويل الأموال فوراً عبر المنصات التي تدعمه. - هُناك العديد من البنوك الإلكترونية الأخرى حول العالم نذكر منها Perfect Money، Skrill، Neteller والتي تتشابه بألياتها مع البنوك الإلكترونية آنفة الذكر. 2- عن طريق الحسابات المصرفية التقليدية: هُناك عدد جيّد من منصات العمل الحُر التي تقبل تحويل المُستحقات إلى حساب مصرفي تقليدي شريطة أن يتم تجاوز المبلغ لحدٍ مُعيّن. 3- تقبل عدد من المنصات تحويل المُستحقات من خلال خدمات تحويل عالمية مثل Western Union و Money gram التي لها مكاتب وشُركاء في مُعظم دول العالم. 4- عن طريق الوسطاء أو الوكلاء: للأسف فإن بعضًا من الدول العربية غير مدعومة من طرف البنوك الإلكترونية كما أن الحوالات الخارجية قد تكون صعبة وغير مُباشرة، أيضًا ونظراً لارتباط العمل المُستقل بالمهارة فإنه يوجد عدد جيد من المُستقلين ممّن هُم دون السن القانوني والذين لا يُسمح لهم فتح حسابات مصرفية أو القيام بالتحويلات دون الاستعانة بذويهم، لذلك بالإمكان بهذه الأحوال الاستعانة بالوكلاء أو الوسطاء. موقع خمسات على سبيل المثال ساعد بتوفير أسماء مجموعة من الوكلاء الذين بإمكان المُستقل الاتصال بهم على مسؤوليته لغرض تحويل وسحب الأرصدة من وإلى المنصة لقاء الاتفاق معهم على مُقابل مالي بسيط. تلميح: الوكلاء أو الوسطاء قد يكونوا أصدقاء لك، أقارب ومعارف يمتلكون وسائل استقبال الأموال وبإمكانهم تسليمهم أموالك باليد أو إرسالها بوسائل أخرى مُتاحة لك. تناولنا معكم في هذا الجزء مجموعة من التفاصيل الخاصة بإدارة العمليات والحصول على التقييمات للأعمال المُستقلة، إضافة إلى طرق استقبال الأموال التي تعتمدها منصات العمل المُستقل. انتظرونا في الجزء القادم والذي سنُعرّج خلاله على أبرز المشاكل التي تعترض العمل المُستقل عمومًا مع أبرز الحلول والمُقترحات لها.1 نقطة