المحتوى عن 'مدير'.



مزيد من الخيارات

  • ابحث بالكلمات المفتاحية

    أضف وسومًا وافصل بينها بفواصل ","
  • ابحث باسم الكاتب

نوع المُحتوى


التصنيفات

  • التخطيط وسير العمل
  • التمويل
  • فريق العمل
  • دراسة حالات
  • نصائح وإرشادات
  • التعامل مع العملاء
  • التعهيد الخارجي
  • التجارة الإلكترونية
  • مقالات ريادة أعمال عامة

التصنيفات

  • PHP
    • Laravel
    • ووردبريس
  • جافاسكريبت
    • Node.js
    • jQuery
    • AngularJS
    • Cordova
  • HTML5
  • CSS
    • Sass
    • إطار عمل Bootstrap
  • SQL
  • سي شارب #C
    • منصة Xamarin
  • بايثون
    • Flask
    • Django
  • لغة روبي
    • إطار العمل Ruby on Rails
  • لغة Go
  • لغة جافا
  • لغة Kotlin
  • برمجة أندرويد
  • لغة Swift
  • لغة R
  • لغة TypeScript
  • سير العمل
    • Git
  • صناعة الألعاب
    • Unity3D
  • مقالات برمجة عامة

التصنيفات

  • تجربة المستخدم
  • الرسوميات
    • إنكسكيب
    • أدوبي إليستريتور
    • كوريل درو
  • التصميم الجرافيكي
    • أدوبي فوتوشوب
    • أدوبي إن ديزاين
    • جيمب
  • التصميم ثلاثي الأبعاد
    • 3Ds Max
    • Blender
  • مقالات تصميم عامة

التصنيفات

  • خواديم
    • الويب HTTP
    • قواعد البيانات
    • البريد الإلكتروني
    • DNS
    • Samba
  • الحوسبة السّحابية
    • Docker
  • إدارة الإعدادات والنّشر
    • Chef
    • Puppet
    • Ansible
  • لينكس
  • FreeBSD
  • حماية
    • الجدران النارية
    • VPN
    • SSH
  • مقالات DevOps عامة

التصنيفات

  • التسويق بالأداء
    • أدوات تحليل الزوار
  • تهيئة محركات البحث SEO
  • الشبكات الاجتماعية
  • التسويق بالبريد الالكتروني
  • التسويق الضمني
  • استسراع النمو
  • المبيعات

التصنيفات

  • إدارة مالية
  • الإنتاجية
  • تجارب
  • مشاريع جانبية
  • التعامل مع العملاء
  • الحفاظ على الصحة
  • التسويق الذاتي
  • مقالات عمل حر عامة

التصنيفات

  • الإنتاجية وسير العمل
    • مايكروسوفت أوفيس
    • ليبر أوفيس
    • جوجل درايف
    • شيربوينت
    • Evernote
    • Trello
  • تطبيقات الويب
    • ووردبريس
    • ماجنتو
  • أندرويد
  • iOS
  • macOS
  • ويندوز

التصنيفات

  • شهادات سيسكو
    • CCNA
  • شهادات مايكروسوفت
  • شهادات Amazon Web Services
  • شهادات ريدهات
    • RHCSA
  • شهادات CompTIA
  • مقالات عامة

أسئلة وأجوبة

  • الأقسام
    • أسئلة ريادة الأعمال
    • أسئلة العمل الحر
    • أسئلة التسويق والمبيعات
    • أسئلة البرمجة
    • أسئلة التصميم
    • أسئلة DevOps
    • أسئلة البرامج والتطبيقات
    • أسئلة الشهادات المتخصصة

التصنيفات

  • ريادة الأعمال
  • العمل الحر
  • التسويق والمبيعات
  • البرمجة
  • التصميم
  • DevOps

تمّ العثور على 7 نتائج

  1. قد يكون الاجتماع الذي يجب أن يعقده المدير مع الموظف حول الراتب هو أحد الاجتماعات غير المتوقعة على مدار العام، فهذا الموضوع حساس قليلًا سواء كان في محيط العائلة أو العمل أو الأصدقاء. ويجب أن يلعب المدير دورًا في المنتصف بين قسم الموارد البشرية والموظفين في مناقشة الزيادات في الرواتب، وفرص الحصول على علاوات -أوعدمها-، وكذلك عليه أن يتّبع خطوطًا حازمة في ذلك، لكن مع الحفاظ على سعادة الموظف في نفس الوقت. وقد ذهب فريق من Officevibe إلى أوستن -عاصمة تكساس- لحضور مؤتمر Compference الذي يقام لمدة يومين وينظمه فريق من خبراء المجال في PayScale، وسنلخص لك في هذا المقال ما تعلمناه في ذلك المؤتمر كي تتخلص من المشاكل التي تواجهك أثناء مناقشة الأجور. لاحظ أن الكلمات التي يجب أن تبقيها في ذهنك هي “السياق، والتواصل”، كما أني أريد أن أخبرك قبل أن نبدأ أنه حين نخوض نقاشات صعبة مع الموظفين، فليس المهم ما نقوله فقط، بل كيف نقوله أيضًا. أهمية التواصل بالسياق حول الأجور انظر معي إلى هذه الأرقام من PayScale كي تدرك أهمية السياق أثناء الحديث عن الأجور: يظن77% من الموظفين أن قرارات الأجور تبنى على بيانات قليلة. يظن 54% من الموظفين ذوي الأداء العالي أنهم يتقاضون رواتب أقل مما يستحقون. يظن 50% من الموظفين أنهم يتقاضون رواتب أقل من باقي السوق لمثل وظائفهم، وإن كانوا يتقاضون رواتب مثل السوق أو أعلى. إن الكلمة التي تكررت معنا في النقاط السابقة هي “يظن”، فما هي إﻻ افتراضات ﻷنهم ﻻ يملكون بيانات أو معلومات عن السياق، وهذه هي المشكلة. دعنا الآن ننظر في أهمية ذكر السياق في معادلة الحديث حول الأجور. أولًا: ذكر السياق يضع الأمور في نصابها ويشرح السبب وراء الأرقام المطروحة ولماذا تم اقتراحها. ثانيًا: ﻻ يوجد أحد يحب أن يبقى في الظلام، خاصة حين يتعلق الأمر بالطريقة التي يقيّمك بها شخص آخر. تخيل أن تُعطى رقمًا لكنك ﻻ تفهم معناه وﻻ دلالته، إن ذلك قد يدفع الموظف للجنون، ويشغل حيزًا كبيرًا في حقل أفكاره اليومية. ثالثًا: تخيل شعور المدراء حين يضطرون إلى إعطاء رقم -راتب- لموظف مع تقديم دلالة له، لكن دون معرفة حقيقية لكيفية تفسير دلالته، إن الأمر يشبه طلب التعليق على مباراة هوكي من شخص لم يشاهد مباراة في حياته. اﻷجر مسألة حساسة إن مسألة الأجور تحمل قدرًا عاليًا من الحساسية بذاتها، لذا فإن إعطاء معلومات خاطئة أو حتى التعبير عن المعلومات الصحيحة بطريقة خاطئة قد يؤدي إلى فقدان موظفيك للثقة فيك. ذلك أن مناقشة قيمة أحدهم بأي شكل كان لا تدور حول معادلات وحسابات فقط، فهناك مشاعر بشرية تتدخل في الأمر، لذلك يجب أن يكون المدراء قادرين على أن يقدموا تفسيرات صحيحة ومفصّلة. وتؤكد مجلة هارفارد بيزنس ريفيو بشدة على الحاجة لذكر السياق في مسألة الحديث حول الأجور مع الموظفين: ما هي مخاطر عدم النقاش حول الأجور؟ ببساطة، سيصل الموظفون إلى افتراضاتهم الخاصة حول الأجر الذي يتقاضوه، وحين تترك عقولنا طليقة فإنها تخرج بافتراضات قد تشطح بعيدًا بصاحبها. يقول مايكل ميتزيجر، المدير التنفيذي لpayScale: هذا يعني أن المشكلة لا تتعلق بمقدار المال فحسب، بل بالطريقة التي نتحدث بها عنه أيضًا، فهناك انفصام كبير بين الواقع وفهم واستقبال ذلك الواقع حين نتحدث عن اﻷجور، ونتيجة غياب هذه الشفافية أن الموظفين يتركون الشركة بحثًا عما يظنوه أفضل. الأمور الأساسية التي يجب أن يفهمها المدراء قبل الحديث حول الأجور حان الوقت لجعل المحادثة تسد تلك الفجوة بين ما يفهمه قسم الموارد البشرية عن الأجور، وبين ما يجهله الموظفون، وهنا يأتي دورك أيها المدير، وما سيلي هو ما يجب أن تعرفه، فإن لم تكن تتلقى تفسيرات حول الأجور فاطلب هذه التفسيرات وراء تلك الأرقام التي يُطلب منك إعطاؤها للموظفين، ﻷنها ستحدث فارقًا في علاقتك معهم. 1. فلسفة أجور الشركة ترتبط فلسفة أجور الشركة بأهدافها والقِيَم التي بُنِيَت عليها، ويجب أن يكون المدراء قادرين على الإجابة عن أي أسئلة لدى الموظفين حول الأجور بالتناسق مع تلك الفلسفة كي تتفق وجهات النظر عند الطرفين. الأسئلة المعتادة من الموظفين حول الأجور: لماذا تلك النسبة بالتحديد في الزيادة؟ لماذا حصلت على هذه العلاوة تحديدًا؟ كم سيزيد راتبي في العام المقبل؟ واعلم أنه كلما حصل الموظف على بيانات حول هذه الأسئلة كان سفيرًا لشركتك بدلًا من منتقِصٍ منها، فحيثما كان الفهم فإن التقدير ملازم له. 2. منظور تسعير السوق يجب تدريب المدراء على فهم موضع الشركة في السوق، فالقدرة على شرح هذه النقطة للموظفين الحاليين يعمل كأداة استبقاء لهؤﻻء الموظفين، تذكّر أن السياق يرجح بكفة أي شيء. إليك بعض العناصر المهمة التي يجب أن تبقى على اطلاع بها في شأن الأجور: كيف تضع الشركة أجورها تحديدًا. كيف تحافظ الشركة على تنافسيتها. من الذي تقارن نفسها به في السوق. هل للشركة سبق في السوق أم أنها متخلفة عن الركب. 3. منظور الشركة لتعديلات الأجور يجب أن يوفّر قسم الموارد البشرية في الشركة دليلًا لمناقشة الأجور مع كل الموظفين، سواء الجدد منهم حال توظيفهم في الشركة أو أولئك الحاليين الموجودين في الشركة، فقد تجذب بعض الأيدي العاملة إليك، ويجب اﻵن أن تحافظ عليهم، والطريقة التي تحافظ بها عليهم هي أن تبقى مطلعًا أنت وفريقك على نظرة الشركة للأجور، من خلال النقاط التالية: كيف تناقش زيادة الراتب مع الموظفين الحاليين. كيف تناقش الترقيات. كيف تناقش خفض درجة الموظف. كيف تناقش العلاوات. كيف تناقش تغير دور الموظف أو تغير المسمّى الوظيفي له. كيف تناقش إعادة تصنيف الوظائف. الحقيقة حول الأجور وتفاعل الموظفين لقد استنتجنا من الأبحاث الأخيرة أن الناس -خاصة جيل الألفية- ﻻ ينظرون إلى المال فقط حين يبحثون عن وظيفة، فهم يرغبون في التعلم والنمو والتواصل مع زملائهم، وأن يكونوا جزءًا من كيان أكبر، ويريدون أن يجدوا دافعًا وقيمة في كل يوم لهم في العمل. لكن هذا ﻻ يعني أن المال غير مهم أو أن الموظفين سيرضون بأقل مما يستحقون، بل يعني أنهم ما إن يحصلوا على أجر عادل ويشعروا بأن الشركة تقدّرهم، فسيهتموا أكثر بالنمو عوضًا عن المال. فالأجر في النهاية يحكي الطريقة التي تنظر بها الشركة إلى العاملين لديها، ولو رأى الموظف أن الأجر غير عادل ومجزئ فإنه سيغادر تلك الشركة، وتتحدث هارفارد بيزنس ريفيو عن تلك النقطة قائلة: الصلة بين الأجر وثقافة الشركة كما أن كل فرد في أي مؤسسة مسؤول عن تمثيل ثقافة الشركة وقيمها، فإن كل فرد فيها يجب أن يفهم أسلوب الشركة في الأجور، ﻷن ذلك جزء من الثقافة أيضًا داخل الشركة. هل لديك نصائح تشاركنا بها حول اﻷجور في التعليقات؟ كيف تتحدث مع الموظفين حول ذلك الموضوع؟ ترجمة -بتصرف- لمقال The secret to discussing pay with employees لصاحبته Ali Robins حقوق الصورة البارزة محفوظة لـ Freepik
  2. تبدأ خدمة الزبائن الجيدة من الطريقة التي تعامل بها موظفيك.كما أن الاهتمام بالموظفين ينعكس إيجابيًا على الخدمة المقدمة من قبلهم. كان لدي أيضًا مشرف يراقب العمل من خلفي. كان علي أن أقدم أفضل خدمة للعملاء مهما كان المزاج العام؛ حيث كان مزاج العملاء يتأرجح بين الجيد والسيء في أغلب الأوقات. فعندما تتعلق الأمور بالمال يصبح الإنسان أكثر حساسية في التعامل معها. استمتعت بالعمل مع المشرف، فرانك.فقد كان يتجاوز الإجراءات الروتينية. لقد وثق بي. كان يهمس لي خلال العمل "عمل جيد يا أنَا" أو "سأكون في حمايتك مع ذلك العميل". كان في معظم الوقت، هادئًا، مسالمًا و مجاملًا. كنت أشعر بالأمان والدعم معه لكن بدون مراقبة منه. فهمت قاعدًة مهمًة من قواعد خدمة العملاء خلال عملي مع فرانك، كنت هادئًة بالتعامل مع العملاء لأنه كان هادئًا في التعامل معي ؛ فتلعب العلاقة والمشاعر دورًا مهمًا في عملنا. تضع مشاعرك قاعدة لعملك في خدمة العملاء أظهرت العديد من الدراسات في علم النفس العصبي أن المشاعر معدية. فمزاج شخص واحد قد يغير مزاج الآخرين. تنتقل المشاعر من الشخص المسؤول إلى الأشخاص الآخرين. إذًاعندما تكون في موقع الإدارة، ستكون هناك فرصة كبيرة لإبراز مشاعرك. عندما تكون محبطًا أو ببساطة غاضبًا من موظفيك، ستكون السبب في إضعاف قدرتهم على القيام بعمل جيد. بعدها سينتقل الموظف إلى أقل حالاته التفكيرية في التعامل مع العملاء وبالمقابل ستكون قد صنعت مشاكلك بنفسك. تساهم في خلق جو ومزاج إيجابي عندما تقوم بتقدير موظفيك، مما يؤدي إلى نتائج أفضل في الأداء. من الجيد أن تكون مهتمًا بغيرك وأن تسمعهم عبارات صادقة مثل: "أنت مهم" , "أنت جوهري", "أنت مأخوذ بعين الاعتبار", وبهذه الإطراءات في داخلك ستذهب إلى عملائك وتخدمهم بأفضل ما لديك. يصنع الموظفون السعداء العملاء السعداء.أظهرت الدراسات أن الموظفين يستطيعون نقل حالتهم المزاجية عن طريق مشاعرهم. والمشاعر معدية كالفيروسات. تذكر تلك المرات التي رأيت بها طفلًا مبتسمًا وابتسمت تلقائيًا بعد ذلك. هذا هو فيروس المشاعر. يؤثر الموظفون ذوي المشاعر الإيجابية على العملاء إيجابيًا. ومع ذلك، عليك أن لا تحول ذلك إلى إجراء روتيني. يعتمد التأثير بالمشاعر على حماس الموظف في حواره مع العميل، فإذا كان الموظف يصطنع الحماس ففيروس المشاعر لن يعمل. اجعل فريقك سعيدًا بحق، وساعدهم على البقاء في هذا المزاج. والطريقة الأسهل لتحقيق ذلك، هي أن تبدأ بنفسك لتكون سعيدًا. الاهتمام بمشاعرك وجعلها بأفضل حالة كفيل بإسعاد موظفيك وكنتيجة لذلك سيقومون بعملهم بأفضل حال. السعادة المطبقة طُبّق هذا النهج في التعامل من قبل مؤسس خطوط الطيران الجنوبية الغربية والمدير التنفيذي لها "هيرب كيلهر". فقد جعل موظفيه سعداء وآمنين من خلال الاهتمام والاعتناء بهم. نتج عن ذلك، مستوى غير متوقع من الحرفية في خدمة العملاء المقدمة. فقط في هذا العام، اختيرت خطوط الطيران الجنوبية الغربية كواحد من أفضل الأماكن للعمل بها وذلك ضمن جائزة " Glassdoor’s Employees". وفي العام الماضي حصلت على المركز الأول في خدمة العملاء (أقل معدل لشكاوي المستهلكين) في تقييم خطوط الطيران لعام 2013. وهذه تغريدات واضحة من الزبائن: بوضعه الموظفين أولًا, كان "هيرب كيلهر" قادرًا على الحصول على التعاطف والاهتمام من موظفيه، الذي نتج عنه خدمة عملاء مميزة. هنا ما كان يقوله عن نهجه: جعلتني أفكار "هيرب" أكثر ثقة وتأكدًا بأن خدمة العملاء الجيدة تبدأ بعلاقة المدير بموظفيه. يستطيع المدير بالاهتمام، المجاملة، والاهتمام بالمشاعر أن يُخرج أفضل ما عند موظفيه. وبالتالي، يستطيع هؤلاء أن يخرجوا الطاقة الإيجابية إلى عملائهم. يبدأ كل شيء من عندك إذا كنت مديرًا. ترجمة وبتصرف للمقال Happy leaders make for happy customers لكاتبته Anna Tomalik حقوق الصورة البارزة محفوظة لـ Freepik
  3. يختلف المدير عن القائد؛ فالمدير هو الشخص الذي يطلب منك القيام بعملٍ ما ويتسائل لمَ لم تنهه بعد.هل يستطيع مديرك أن يكون قائدًا؟ بالتأكيد يستطيع. لكن أن تكون قائدًا يتطلب منك أن تكون أكثر من مجرد شخص يدير أناسًا حوله. دعني أقربك أكثر إلى بعض المقتبسات المشهورة عن القيادة التي سأحاول من خلالها شرح الفرق بين المدير والقائد. أتمنى أن تلهمك لتكون قائدًا عظيمًا. يكون القائد في معظم الأحيان هو المدير التنفيذي للشركة. هذا في حالتي أيضًا، ولكن من الممكن أن يكون القائد المشرف عليك أو زميلك في الفريق. كيف تعرف أنك قائد؟ من الصعب في بعض الأحيان أن تعرف أنك مصدر إلهام للآخرين.لقد تعلمت أن الأشخاص غير متحمسين للحديث عن ذلك. وأفضل طريقة لمعرفة ذلك هي سؤالهم عن الذي يشعرون به عند وجودهم بقربك. هل يشعرون بأنهم متحفزين أم يفضلون التذمر أمامك من العمل؟ من الممكن أنهم يشعرن بأنك تحبس حريتهم؟ أن تكون قائدًا يجعل الأشخاص حولك يرغبون أكثر بالإنجاز، أن يقوموا بأعمال أكثر وأن يصبحوا أفضل بها. عندما تدرك وجود العلاقة الجيدة، ستعلم حتمًا بأن هناك قائدًا حولك. في الوقت الذي يلتزم به المدير بالقواعد والقوانين في تعامله مع الناس، يقوم القائد بإظهار مواهبهم أو أهوائهم. وبالرغم من أنهم أشخاص محبوبون لكنهم لا يسعون إلى ذلك. فهم يعلمون قيمتهم وما الذي يتوجب عليهم فعله. يقومون في بعض الأحيان بأفعال لا يوافق عليها الموظفون أو يعتقدون بأنها غير مقبولة. لكن في النهاية، هذا ما يجب القيام به حتى تتطور المؤسسة وأنا أعتقد بأن علينا أن نثق بما يقومون به. ألا تفضل أن تتبع قائدًا يخاطر بحياته لأجلك؟ ويعطي السمعة الحسنة والثقة لفريقه عندما يكون الوقت مناسبًا. لا يشعر الكثير من الفِرَق بالتقدير، في الوقت الذي يحصل فيه المدراء على السمعة الحسنة والتقدير لنجاحهم في الشركة. يكون نجاح الشركة دائمًا مبنيًا على التزام الموظفين وعملهم الجاد والذين يقفون خلف قائدهم يوميًا. يؤكد مديرنا التنفيذي دائمًا على عملنا المخلص ويشدد عليه وهذا يشعرنا دائمًا بأننا مقدرون. كنت أرى في كثير من الأحيان كيف تتدمر معنويات الموظفين. أيضًا اختبرت سعادتهم، التي تكبُر بجملة واحدة فقط من مديرهم أو قائدهم. رأيت كيف يقومون بعملهم وهم منزعجون وغير مستقرين، وكيف يرتفع مستوى أدائهم عند تقديرهم. من الرائع معرفة ما يستطيع أن يحقق الناس أو أنهم يعتقدون أنه باستطاعتهم اإنجازه عندما يؤمنون ويحترمون أنفسهم ويقدرونها. في الوقت الذي يركز فيه المدير عادةً على الأرقام والنتائج، يرى القائد متى يكون الموظف بحاجة إلى كلمات لرفع معنوياته ومزاجه. كن قائدًا عظيمًا هناك اختلاف بين المدير والقائد. يعطي المدير دائمًا الأوامر وهو من الأشخاص الذين يعتقدون بأنهم يعرفون كل شيء. يشعل القائد الحقيقي شرارةً فيك لتقوم بالمزيد من العمل. يسعون دائمًا ليتعملوا وينصتوا. ليس سرًا أنه عندما تريد أن يتبعك الناس، ستحتاج إلى لمس أحاسيسهم، عليك أن تظهرالعطف وتفهم وجهة نظرهم. عليك أيضًا أن تسمع أكثر مما تتكلم.هكذا تنال ثقتهم. وكما قال اليانور روزفلت:"لتتحكم بنفسك، استخدم رأسك. لتتحكم بالآخرين،استخدم قلبك." ترجمة وبتصرف للمقال : Famous Leadership Quotes لكاتبه : OLGA KOLODYNSKA حقوق الصورة تابترزة محفوظة لـ Freepik
  4. نحن نعمل في أزمنة مثيرة للاهتمام، ندرك فيها ونتقبّل أنّه عندما ترغب في الحصول على ترقية في شركة ما، يجب أن تصبح مديرًا. لذلك تعني ترقية المنصب أن تُقلل من العمل الذي ستُصبح مسؤولًا عنه. وهذا يعني، بالنسبة لمدير التصميم، قضاء وقتٍ أكثر على البريد الإلكتروني وEvernote، ووقتٍ أقلّ على فوتوشوب وSketch. قد لا يبدو الأمر منطقيًا، ولكن هذا هو ما عليه الحال. لا أقول أننا لسنا بحاجة إلى المدراء، بل نحن في أمسّ الحاجة إلى الأكفاء منهم. لكنّني بدأتُ أفكّر بتسليمنا الأعمى بهذا الركن الأساسي من الشركات الحديثة، وأتحيّر فيما إذا كانت هناك طريقة لإنشاء نظام يقدّر قيمة العمل بقدر الإدارة، مع تحسين مهارات كلتي المجموعتين في نفس الوقت. لقد تحولّتُ إلى منصبي الإداري الأول منذ حوالي 6 سنوات. لا يمكنني أن أتذكر جيدًا الدافع وراءه، لكنّه كان مزيجًا من احتياجات الشركة ورغبتي في تطوير مهنتي (وربما القليل من الحيرة والتساؤل). كما كنتُ وافر الحظ بالعمل مع مدير بارع في إحدى وظائفي الأولى. وهذا كلّه فتح عينيَّ على التحديات والفرص في الإدارة، وجعلني أرغب في المساهمة في ذلك. كان هذا المنصب تجربة تعليمية عظيمة ومتواضعة، وأنا مسرور لخوضها. لكن، قبل بضع سنوات، أصبحت متضايقًا من عملي كمدير. كان في البداية مجرّد صوت داخلي منخفض يسألني: كيف يمكنك أن تصبح مدير تصميم جدير إن لم تعد تصمّم؟ حاولت أن أتجاهله، لكنّ ذلك الصوت بدأ يصبح أعلى بمرور الوقت، وفي نهاية المطاف كان عليّ أن أواجه هذا السؤال بشكل مباشر.المشكلة هي أنّك تملك فرصًا وظيفية أكثر إذا كنت مديرًا. فالمدير يترقّى إلى مدير أقدم، ومن ثم إلى رئيس، رئيس أقدم، وهكذا. أما إذا كنت مصممًا، فمعالم طريقك ستُصبح أقل وضوحًا. بالتأكيد هناك مناصب عليا وقيادية للمصممين، لكنّها نادرًا ما تكافئ التقدم الوظيفي الحقيقي. وهنا تكمن المشكلة. حيث يُجبر بعض المساهمين الأفراد على أن يصبحوا مدراء حتّى لو كانوا يفضّلون تولّي القيادة من قبل شخص آخر، مما يخلق ثقافة إدارية يمكن لها أن تصبح منقطعة الصلة بأنشطة التصميم اليومية إلى حد كبير. لهذا السبب بدأتُ بالتغيّر منذ نهاية العام الماضي؛ لأنني كنتُ متعبًا من ناحية، ولاختبار هذه النظرية من ناحية أخرى. بدأتُ بالابتعاد عن الإدارة، وأصبحتُ مجرّد مصمم من جديد. شعرتُ بالغرابة في البداية. أين ذهبت كل تلك الاجتماعات؟ ما هو ذلك السطح المنبسط الذي كنت أجلس عليه وأعمل في معظم أوقات اليوم؟ ولكن بعد ذلك سَكَنتْ الغرابة، وأصبح الأمر مبهجًا أكثر. أقضي الآن معظم أيامي في تصميم المنتجات، والحديث عن مساعدة الفرق في تنفيذ تلك التصاميم. أدركتُ أنّ مهاراتي في التصميم تراجعت قليلًا، لذا توجّهت إلى مرحلة التعلّم، وقد كان الأمر ممتعًا. ما معنى هذا؟ هل يعني أنني سئمتُ من الإدارة؟ هل كلّ من يختار حياة الإدارة محكوم عليه بالصداع واليأس؟ بالطبع لا! بل العكس، فالعودة إلى كوني مساهمًا فردًا عززّت اعتقادي بأنّ المدراء الأكفاء مهمّون، ونادرون أيضًا. وأتمنى بالتأكيد أن أشغل هذا المنصب مجددًا في المستقبل. لكن ليس الآن. إليك كيف يمكن أن تتماشى الإدارة مع العمل. أعتقد أنّنا بحاجة إلى نظام مهني يشجّع الناس على التأرجح بين دور المساهم الفرد، ودور المدير. ربّما يمكننا توفير "إجازة إدارية" حيث يمكن للمدير أن يصبح مساهمًا فردًا في الفريق لمدة 6 - 9 أشهر. أو ربّما يتسلّم المساهم الفرد دور المدير لمدة من الزمن (أو لمدة مشروع بأكمله) خلال إجازة المدير. لا أعلم على وجه اليقين كيف سيبدو عليه الأمر، لكنّني أعتقد أنّه من المهم أن ندرسه.أن تكون مساهمًا فردًا سيجعلك مديرًا أفضل لأنك تفهم بشكل أفضل ما يمرّ به الفريق يوميًا، كما يضمن تطوير مهاراتك الفنيّة باستمرار. أمّا أن تكون مديرًا فسيجعلك مصممًا أفضل لأنّك تفهم احتياجات قيادة الفِرق بشكل أفضل، مما يتيح لك التواصل بفعّالية أكبر. الإدارة والعمل أحدهما يغذّي الآخر، لذا يجب ألّا نُجبر على اختيار واحد فقط من المسارين. بالطبع هناك بعض التحذيرات، يجب ألا يُكرَه الناس على الإدارة بالادعاء بأنّ الإدارة فقط تساوي التقدّم الوظيفي. فبعض المدراء ليست لديهم الرغبة في أن يصبحوا مساهمين أفراد مجددًا، ولا يجب عليهم ذلك. الأمر كلّه يتمحور حول الاختيار. إذا قمنا بتشجيع (ومكافأة) الناس على حرية استكشاف أنواع مختلفة من الأدوار، فلا شك من أن ذلك سيعود بالنفع على الشركة، والأهم من ذلك، على المستخدمين. ترجمة-وبتصرّف-للمقال Managing and Making: It Doesn’t Have to Be One or the Other لصاحبه: Rian Van Der Merwe حقوق الصورة البارزة محفوظة لـ Freepik
  5. الدعم الفني عمل مليء بالتحديات، إذ أنّه يتطلب امتلاك المرء لعاطفة غير متقلّبة، ومهارة كبيرة في التواصل مع الآخرين، وغير ذلك من الخصائص التي تساعد موظف الدعم الفني في التعامل مع العملاء على اختلاف مشاربهم، ولمّا كانت وظيفة الدعم الفني مليئة بالتحديات، فهذا يعني بالضرورة أن إدارة فريق الدعم الفني مليئة بالتحديات أيضًا. على الرغم من توفّر الكثير من المصادر والدروس التي تتحدّث عن مهارات الإدارة العامة، إلا أنّ المعلومات المتوفّرة عن إدارة فرق الدعم الفنّي شحيحة جدًّا. وتواجه مدراء هذه الفرق العديد من الأسئلة مثل: كيف أحافظ على سعادة فريقي بالرغم من أن وظيفة الدعم الفني تستنزف الجهد؟ كيف أقدم الدعم إلى موظّفي الدعم الفني ليتمكنوا من الاستمرار في عملهم دون أن يشعروا بالتعب والإرهاق؟ إليك بعض الدروس التي تعلّمها عدد من مدراء الدعم الفني بعد أن أمضوا عدة سنوات في هذا المجال. 1. كرس الجزء الأعظم من طاقتك في الاعتناء بفريق الدعم الفني قد يبدو هذا غريبًا للوهلة الأولى، ولكن مدير الدعم الفني المحنّك يعرف حقّ المعرفة أن فريقه يأتي في المقام الأول، وحتى قبل عملاء الشركة. يقول Teri Bayrock مدير عمليات قناة دعم العملاء في Hootsuite: ويتحدّث Roger Penguino مدير قسم تجربة العميل في Airbnb عن هذا الموضوع في الشركات الناشئة فيقول: 2. تجنب التدخل في عملهم بشكل مستمر لا بد أنّ يمرّ فريق الدعم الفني ببعض الحالات الطارئة، فقد يواجه قائمة طويلة بالأسئلة والطلبات التي تنتظر الإجابة عنها منذ ساعات (أو ربّما أيام) فما يلبث مدير الفريق أن يشمّر عن ساعديه ويساهم في معالجة هذه الحالة الطارئة. في الواقع هذا التصرّف غير صحيح، وعلى المدير الجيّد أن لا يتدخّل في عمل الموظفين بهذه الطريقة. إن تقديم المساعدة عند الحاجة إليها أمر لا بأس به، ومن الضروري كذلك أن يطّلع مدير الدعم الفني على الأسئلة التي يطرحها العملاء وعلى الجوانب التي يتعامل معها فريقه يومًا بيوم. ولكن عندما يبدأ المدير بالتدخّل في عمل موظّفيه ويتولى زمام الأمور لمدة تزيد عن 20% من وقته، لن يبقى أمامه متّسع من الوقت للتركيز على الأهداف طويلة الأمد وعلى الفريق كذلك. يقول Jeff Vincent من شركة Wistia: عندما تشعر بأنك قد أصبحت تتدخل في كل شاردة وواردة، توقف للحظة واسأل نفسك: هل أحتاج إلى تغيير طريقة العمل، أم علي توظيف شخص ما؟ يقول Justin Seymour من Help Scout: 3. امنح جميع الموظفين القدرة على مساعدة العملاء من خلال مستندات الدعم الداخلية نستخدم في Help Scout مستندات توثيق نهدف من خلالها إطلاع جميع الأفراد في الشركة على طريقة سير العمل، وتتضمن هذه المستندات معلومات شاملة ابتداءً من سياسة استرجاع الأموال الخاصّة بالشركة وانتهاء بالأدوات اللازمة لإنجاز العمل. هذه المستندات مفيدة جدًّا لتهيئة الموظّفين الجدد وتعريفهم بنظام الدعم الفنّي في الشركة. أذكر كم أذهلتني هذه المستندات عندما بدأت العمل في Help Scout لأنّني كنت أجد إجابة وافية لمعظم الأسئلة التي كانت تراودني، وكانت هذه الأجوبة موثّقة بشكل جيد ويمكن الوصول إليها بكل سهولة. إن توثيق نظام الدعم الفني المتّبع في شركتك يعنّي أنّ موظّفي الدعم لن يكونوا مضطرّين للتعامل مع الأسئلة ذاتها مرارًا وتكرارًا، فالأجوبة موجودة وجاهزة. وعندما يكون جميع الأفراد في الشركة قادرين على مساعدة العملاء بشكل جيّد، سيكونون قادرين على تقديم المساعدة عند تأزّم الأوضاع (وسيتيح لك هذا توجيه تركيزك من صندوق الرسائل الواردة إلى التحضير لكتابة إعلان متميّز للوظيفة القادمة). 4. امنح بقية الأفراد في الشركة فرصة العمل في الدعم الفني حاول قدر المستطاع أن تمنح بقية الموظّفين في شركتك فرصة التعامل مع العملاء من خلال العمل في قسم الدعم الفنّي. إنّ إتاحة الفرصة لجميع أفراد الشركة في التعامل مع العملاء والشعور بمعاناتهم أمر ضروري جدًّا، ولكن قد لا يكون هذا متاحًا بشكل كامل، لهذا يمكن لبعض الخطوات أن تترك أثرًا في نفوس الموظّفين منها مشاركة تقارير عامّة عن الشركة وبصورة منتظمة، وتوجيه بعض المحادثات مع العملاء إلى المهندسين، أو منحهم فرصة التعامل مع الأمور الطارئة أو المستعجلة. وكمدير لقسم الدعم الفنّي، يجب أن تكون بمثابة المرشّح الذي ينتقي ما يصل إلى فريقك من المشاكل والأمور الأخرى، فوجودك في هذا الموقع يحتّم عليك اتخاذ القرارات التي تضمن لفريقك التمتع بأعلى قدر ممكن من الفعّالية. 5. ابحث عن الدعم في فريقك وفي المجتمعات التي تقدّم الدعم لما تتولّى إدارة فريق دعم فني وأنت قادم من شركة أخرى فعليك حينها زيادة وتيرة التعلّم لكي تحقق النجاح في منصبك الجديد. وفي مثل هذه الحالة عليك أن تصغي وتلاحظ أكثر مما تتكلّم. يقدّم Penguino النصيحة في هذا الصدد فيقول: يتحدّث Bayrock عن هذا الأمر فيقول: ويضيف Seymour: قد تقدّم إليك الكتب والدروس المتوفّرة على الإنترنت شيئًا من الخبرة، ولكن لا يمكن لها أن تضاهي الخبرة العملية التي اكتسبها الأشخاص العاملون في هذا المجال؛ لذا شارك في الملتقيات والمؤتمرات، وتواصل مع هؤلاء الأشخاص عن طريق Twitter و LinkedIn. وأفضل ما في الموضوع، أن العاملين في مجال الدعم الفني يقدّمون المساعدة بالفطرة، لذا لا تقلق فأنت لست وحيدًا. ترجمة -وبتصرّف- للمقال 5Big Lessons Support Managers Wish They’d Learned Sooner لصاحبته Emily Triplett Lentz. حقوق الصورة البارزة: Designed by Freepik.
  6. يعتبر التواصل بين مدير الشركة والموظفين من الأمور الجوهرية التي تتطلب الإدامة، إذ أنّه سيتلاشى ببطء إذا لم تولِه الرعاية والاهتمام. تتغير ممارساتك كمدير مع نمو شركتك وتوسعها لتضم المزيد من الموظفين، وما كان ينجح من الممارسات مع مجموعة من 6 أشخاص لا يمكن أن ينجح مع 20 شخص. إلا أن هناك ممارسة يجب ألّا تتغير مهما توسعت شركتك، والتي تعتبر الحل الأفضل لمعالجة تلك المشاكل، ألا وهي المحادثات الثُنائية مع الموظفين (one-on-one). ومهما كانت المسؤوليات على عاتقك كمدير، يجب ألا يكون عذرك هو عدم توفر الوقت لتلك المحادثات، لأنّك بذلك تعترف أنّ شؤون الآخرين لها الأسبقية على موظفيك. فيما يلي بعض الطرق لبدء المحادثات المباشرة، إدامتها، والحصول على الفائدة القصوى منها. حدد موعدها وتجنب إلغاءها حاول قدر استطاعتك ألّا تلغي المحادثة، وإذا اضطررت إلى تغيير الموعد، يجب أن تبرر ذلك بسبب وجيه. لا تستخدم عذرًا مثل "لا أظن أنّ لدينا الكثير من الأمور لنناقشها"، فهذا سيعود على الشخص المقابل بالضرر، وعليك أيضًا. ستُجرى المحادثة بالفعل إذا قمت بوضعها على تقويمك. أمّا نظام إجراء المحادثات دون سابق إعداد فهو غير محبّذ ولا أؤيّده؛ هل أنت على استعداد للمخاطرة واعتماد سياسة الباب المفتوح، حيث تقدم وعودًا بكل شيء ولا تنفذ منها أي شيء؟ سمها "محادثة ثنائية" لا غير قد تبدو لك هذه النقطة شكلية فقط ولا قيمة لها، لكن التسميات تخلق الروايات. تُعنى المحادثات الثُنائية بالحديث بين شخصين، وقول أي شيء يريدان قوله مهما كان؛ أي أنّ كل شيء مسموح. حيث أنّ الحديث المباشر الذي يجعل الأمر يبدو وكأنّه مناقشة مفتوحة هو الذي يساعدك على تحقيق التقدم. فإذا كان الغرض من المحادثة مناقشة موضوع معين، يجب أن يستعد كلا الطرفين لذكر كل ما يتعلّق بذلك الموضوع. استخدم الوسيلة ذات الطابع الشخصي أجر المحادثات شخصيًا ووجها لوجه إذا كنت تستطيع فعل ذلك. أمّا إذا كان فريقك يعمل عن بعد، أكّد على أن يتحدث الجميع عبر الفيديو. حيث أن رؤية الأشخاص الذين تتعامل معهم من الأمور الإيجابية، فلغة الجسد تختصر الكثير وتوضّح الكثير. يستحق التواصل الإنساني القيام بمحادثة إضافية لمرة واحدة في الأسبوع، حتّى وإن لم تكن لغرض معيّن. انظر إلى الناس الذي تتحدث معهم، قد يكون هذا الطلب صغيرًا ولكنّه يؤتي ثمارًا عظيمة. احرص على احتساب نسبة الإجراء لكل قرار Action Per Decision وهذا ما ينصح به Michael Lopp في كتابه Managing Humans: في المحادثات المباشرة، ليس هناك أسوأ من الحديث عن نفس النّقاط والمشاكل في أكثر من لقاء. في كثير من الأحيان ستُنهي المحادثة متحمسًا ولديك الكثير من الأمور للنظر فيها، لكن لا فائدة من كل ذلك إذا لم تكن تُنفّذ أيّا مما تم الحديث والاتّفاق حوله في اللّقاء السّابق. ومن دون هذه النّتائج فلا فائدة من عقد هذه اللّقاءات التي لن ينتج عنها سوى هزّ للثّقة ما بين طرفي اللقاء بسبب عدم الوفاء بالوعود المُتفّق عليها في اللقاءات السّابقة. يجب أن تنتهي المحادثة المباشرة باتفاق على تنفيذ القرارات. وهذا ما يؤكّد عليه Jason Evanish ، فلا تعتبر المحادثة مجدية ما لم تتم متابعة القرارات التي اتخذت خلالها. يقترح Jason أن تبدأ بطرح هذين السؤالين: ما الأمر الذي يمكنني أن أحاسبك على تنفيذه في محادثتنا القادمة؟ ما الأمر الذي يمكن أن أكون محُاسَبًا على تنفيذه في محادثتنا القادمة؟ وفي بداية المحادثة القادمة، أكّد على مناقشة التقدم الذي تم إحرازه؛ هل نفذتما القرارات التي اتفقتما على تنفيذه؟ فإذا كانت الإجابة بالإيجاب ستؤدي إلى تحقيق التقدم، التحفيز، والثقة بين الطرفين. تحدث عن المسارات المهنية Careers بين فترة وأخرى في بداية تأسيس الشركات يشغل الموظفون أكثر من منصب ويحملون الكثير من المسؤوليات على عاتقهم بغض النظر عن تخصصاتهم، ولا بد من أنّك تعرف هذا الشعور إذا كنت تنتمي إلى شركة ما منذ أيامها الأولى. لكن مع تطور الشركات، وعند مرحلة معينة سيقتضي النمو أن تتشكل الأقسام، عندها يصبح الموظفون بحاجة إلى معرفة وجهة الشركة ووجهتم داخل الشركة، وسيبدؤون بالتساؤل عن العمل المرجو منهم وكيف ستتطوّر مسمياتهم الوظيفية. عندما تغض النظر عن هذا النوع من المناقشات سيبدأ الموظفون بالقلق لأنّ مسار حياتهم المهنية هو من المسائل المهمة حتى في الشركات الراسخة. وإذا كان دور القيادة لا يصلح للجميع (أو لا يرغب الجميع بأخذ دور القائد)، من الذي سيطرح هذه المسألة خلال المحادثة المباشرة؟ إنّها مهمتك أنت كمدير أو قائد للفريق. حضر للمحادثة بشكل مناسب من الصعب توصيل الأفكار الوليدة التي لم تتخذ شكلًا محددًا بعد. ولذلك يجب على كلا طرفي المحادثة إعداد التفاصيل التي ستساعد على توضيح الاقتراحات المجرّدة. في الأسبوع الماضي، قمت بإنشاء نموذجين سريعين mockup قبل المحادثة المباشرة وقمت بإرسالها إلى مديرة التّسويق. كنت أعرف أنّه بفعلي لذلك سأتجنّب النقاش الذي لا طائل منه والحاجة إلى شرح الكثير من التفاصيل. وبلفتة صغيرة كهذه، استطعت توفير الوقت لمناقشة المسائل التي حلت محل توضيح النماذج لمدة 15 دقيقة. استغل شتى الوسائل مهما كانت بسيطة لجعل القضايا الأساسية للمحادثة واضحة ومفهومة. قلل وقت الحديث حول تحديثات الحالة لا يعني هذا أن تحديثات الحالة أو الحديث عما يجري خلال الأسبوع/الشهر يجب أن يُلغى نهائيًا في المحادثات المباشرة، لكن قضاء الكثير من الوقت في مناقشتها سيتلف المغزى من هذه المحادثات. يعتمد الفريق في Help Scout على فيديو يتم تقديمه يوم الإثنين من كل أسبوع بواسطة المسؤولة عن قسم الموارد البشرية، وبعدها يعقد قسم التسويق لقاءً نهاية كل يوم إثنين. يتيح لنا هذا النوع من الاجتماعات الاطلاع على تحديثات الحالة ومعرفة الأمور التي تتطلب المناقشة، بالإضافة إلى الاستمتاع برؤية بعضنا البعض. لكن ما الذي نقصده بـ "تحديثات الحالة": باختصار، جميع المعلومات المُتعلّقة بسير الشّركة والتي تهم الجميع أو فريقا بأكمله. بعبارة أخرى قلّل المعلومات التي يمكن الحديث عنها مع المجموعات لإتاحة المزيد من الوقت لإجراء مناقشة شخصية أثناء المحادثة الثُنائية. كن على استعداد لإجراء المحادثات الصعبة من الصعب التصديق أنّ جميع الأمور على ما يُرام إذا لم تكن لديك محادثات صعبة بين حين وآخر؛ على الأرجح سيكون السبب هو خوف الناس من التحدث. يصف Michael Lopp في كتابه Managing Human مثل تلك اللحظات بـ "فوهة البركان". ومع أنّها ليست بخطورة الكوارث أو الانهيارات، لكن ينبغي لك أن تبدأ في التعامل معها عندما يبدأ شيء ما بالانبعاث. في البداية استمع فحسب، دع الطرف الثاني ينفّس (يتحدّث)، واترك التنفيس يأخذ مجراه، إلّا إذا بدأ الأمور تأخذ منحنى تكراريًا وأصبح الطّرف الثاني يُكرّر نفس الأفكار. وبعد أن ينفّس عن كل شيء، أظهر تجاوبك بسرعة لكي تستطيع إعادة التركيز على تحقيق نتائج إيجابية. في بعض الأحيان يكفي أن تستمع فقط، لكن عندما تُقابَل الشكوى الحقيقة بوعود لا تقوم بالوفاء بها، فأعلم أنّ هذا سيكون سببًا للعديد من المشاكل القادمة. وفي هذه الحالة يجب أن تكون مسؤولًا عن القرارات المتفق عليها أكثر من أي وقت مضى. وأخيرًا، تذكّر أنّك بأصغر الأفعال يمكن أن تُشعِر الشخص المقابل بأنّك تُصغي لحديثه (كتدوين ما يقوله ذلك الشخص). قدر المجهود دائما الانشغال ليس عذرًا لتأجيل أو رفض فكرة المحادثات المباشرة. والوقت الذي تقضيه بالاستماع إلى الناس في شركتك هو الوقت المستثمر بصورة جيّدة. وبخلاف ذلك ستقضي وقتك في التعامل مع النتائج العرضية لعدم الاستماع إليهم وكلفة فقدان مُوظّف ساهم بشكل كبير في الشركة. التواصل مهم للغاية، لذلك خصص وقتًا للحديث مع الناس في شركتك. ترجمة -وبتصرّف- للمقال A Brief Guide to Better One-on-Ones لصاحبه: Gregory Ciotti.
  7. إنّ كل مكتبات بايثون (مثل حزم التّطبيقات application packages) التي نقوم بتنزيلها باستخدام مدير الحزم package manager (مثل pip) يتمّ توزيعها باستخدام أداة مساعدة مُخصصة لهذا العمل، تقوم هذه الأدوات المساعدة بإنشاء توزيعات بايثون Python distributions والتي هي أساسا عبارة عن ملفات أرشيف مرقمة بإصدار ومضغوطة، تحتوي هذه الملفّات على جميع العناصر المتعلقة بما يتم توزيعه، مثل ملفات المصادر source files وملفات الموارد resource files. سنقوم في هذا الدرس بالتحدث عن الأدوات الضرورية للتوزيع، وسنتطرق إلى الخطوات الأساسية التي تسمح لنا بحزم المكتبات المفيدة الخاصة بنا، الوحدات modules، أو حتى التطبيقات applications والتي ستكون مفيدة لنا عند توزيع المشروع الخاص بنا على خادوم أو مشاركته على الإنترنت. توزيعات وحزم بايثونحتى ولو كنا قد عملنا قليلًا فقط مع بايثون، فنحن متآلفون مع مفهوم استخدام مدير الحزم (مثل pip ،easy_install) لتنزيل الوحدات والمكتبات (مثل هياكل تطوير التطبيقات application development frameworks) والتي يتم بعدها استيرادها واستخدامها لإنشاء واحدة جديدة. تقوم أدوات إدارة الحِزَم هذه -والتي تعمل محليا- بالاتصال إلى مصدر بعيد source (مثل دليل حزم بايثون Python Package Index – PyPI) وتنفيذ الإجراء المطلوب (كالبحث والتنصيب). تتكوّن طريقة توزيع تطبيق ما من تغليف الدليل directory الخاص به ببعض الملفّات الضّروريّة (مع القليل من الملفّات المُوصى بها)، تحديد العناصر المرتبطة (كالموارد resources والاعتماديات dependencies، إلخ) وإصدارها أو استخدامها في مكان آخر ببساطة. ملاحظة: نشجعك بشدة على العمل على بيئات افتراضيّة لعزل تنزيلات بايثون، الوحدات والتطبيقات التي تعمل عليها. 1. حزم بايثونالحزمة في بايثون هي تقنيا عبارة عن دليل قابل للاستيراد (باستخدام init__.py__ ) يحتوي على ملفات المصادر (كالوحدات)، ولا يجب الخلط بينها وبين حزم نظام التشغيل والتي هي تقنيًّا تطبيقات فعلية (مثل حزمة Debian)، ومع ذلك يجب أن نُلاحظ أنّ توزيعات بايثون في الواقع تدعى أيضًا بالحزم. مثال على بنية الحِزمة: package | |-- __init__.py2. تطبيقات بايثونعلى الرّغم من أنّه يُمكننا اعتبار أي شيء في بايثون كتطبيق وذلك ابتداء من ملف واحد وحتى مئات الملفات المُبعثرة عبر الحزم المُختلفة، فإنّ التطبيق في أغلب الحالات الواقعيّة يتكوّن من العديد من الوحدات والبعض من الاستيرادات الخارجيّة (من المكتبات). مثال على بنية التّطبيق: myapp | |-- __init__.py |-- amodule.py |-- anothermod.py |__ tests | | | |-- __init__.py | |-- .. | |-- . | ..3. مكتبات وأدوات توزيع بايثوننظرا لطبيعة شعبية لغة بايثون ووجود كميّة وافرة من مكتبات وتطبيقات الطرف الثالث third-party المكتوبة لأجلها فقد كان من الضّروري دوما إيجاد طريقة مُوحّدة وأبسط لتوزيعها، تُوجد العديد من المكتبات والأدوات المختلفة المُستخدمة لإنشاء توزيعات بايثون. تمّ إنشاء مجموعة الأدوات المساعدة لتوزيع بايثون والتي تدعى distutils من أجل التعامل مع مهام التوزيع. 4. دليل حزم بايثون (Python Package Index (PyPIدليل حزم بايثون أو PyPI هو مستودع مركزي (على الإنترنت Online) للمشاريع (توزيعات بايثون)، حيث تستخدم أدوات إدارة الحِزم مثل pip هذا المستودع من أجل استضافة، إيجاد وتثبيت الحِزَم. البدءفلنقم في البداية بإنشاء تطبيق بايثون بسيط وعام باستخدام إطار العمل المصغّر flask (إنشاء البنية) والذي يُمكننا لاحقًا تحزيمه. التطبيق عبارة عن تطبيق ويب بسيط جدا، ﻷن الهدف من الدرس هو كيفية التحزيم وليس التطبيق في حد ذاته. إنشاء بنية التطبيقنهدف إلى إنشاء مثال يشابه معظم مشاريع العالم الحقيقي، ولهذا من الأفضل أن نتخيّل حالة تحتوي على وحدات. بُنية المثال: /MyApplication |-- run.py |-- config.py |__ /app |-- __init__.py |-- /module_one |-- __init__.py |-- controllers.py |-- models.py |__ /templates |-- module_one |-- hello.html |__ /static |__ .. |__ .1. إنشاء المجلدات:/MyApplication |-- run.py |-- config.py |__ /app |-- __init__.py |-- /module_one |-- __init__.py |-- controllers.py |-- models.py |__ /templates |-- module_one |-- hello.html |__ /static |__ .. |__ .2. تعديل الملف run.py باستخدام برنامج nano:nano ~/MyApplication/run.pyنضع المحتويات التّالية بداخله: # Run a test server. from app import app app.run(debug=True)نقوم الآن بحفظه والخروج منه باستخدام CTRL+X ومن ثم تأكيد ذلك باستخدام Y. 3. تعديل الملف config.py باستخدام برنامج nano:nano ~/MyApplication/config.pyنضع المحتويات التّالية بداخله: DEBUG = True THREADS_PER_PAGE = 4 CSRF_ENABLED = True CSRF_SESSION_KEY = "secret"نقوم الآن بحفظه والخروج منه باستخدام CTRL+X ومن ثم تأكيد ذلك باستخدام Y. 4. تعديل الملف app/init.py باستخدام برنامج nano:nano ~/MyApplication/app/__init__.pyنضع المحتويات التّالية بداخله: from flask import Flask, render_template app = Flask(__name__) app.config.from_object("config") from app.module_one.controllers import module_one app.register_blueprint(module_one) نقوم الآن بحفظه والخروج منه باستخدام CTRL+X ومن ثم تأكيد ذلك باستخدام Y. 5. تعديل الملف app/module_one/controllers.py باستخدام برنامج nano:nano app/module_one/controllers.pyنضع المحتويات التّالية بداخله: from flask import Blueprint, request, render_template module_one = Blueprint("auth", __name__, url_prefix="/auth") @module_one.route("/hello") def hello(): return render_template("module_one/hello.html")نقوم الآن بحفظه والخروج منه باستخدام CTRL+X ومن ثم تأكيد ذلك باستخدام Y. 6. تعديل الملف app/templates/module_one/hello.html باستخدام برنامج nano:nano app/templates/module_one/hello.htmlنضع المحتويات التّالية بداخله: <DOCTYPE html> <html lang="en"> <head> <title>{% block title %}My Site{% endblock %}</title> {% block css %} {% endblock %} <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> Hello, world! </body> </html>نقوم الآن بحفظه والخروج منه باستخدام CTRL+X ومن ثم تأكيد ذلك باستخدام Y. البدء بتوزيع وحزم التطبيقبعد إنشاء بنية التطبيق المثالية لموقع ويب يستخدم flask، نستطيع المتابعة بالقيام بالخطوة الأولى في إعداد التوزيعة. 1. تبديل بنية المجلدمن أجل حَزْم تطبيقنا بشكل جيّد نحتاج للقيام ببعض الإضافات لبُنية مجلّدنا. /MyApplication |-- run.py |__ /app |-- __init__.py |-- /module_one |-- __init__.py |-- controllers.py |-- models.py |__ /templates |-- module_one |-- hello.html |__ /static |__ .. |__ . |-- setup.py # Distribution setup file |-- README.txt # Read-me file |-- MANIFEST.in # Distribution manifest file |-- CHANGES.txt # Changes logفلنقم بتبديل بنية المجلد لإنشاء الملفات الضروريّة: touch ~/MyApplication/setup.py touch ~/MyApplication/README.py touch ~/MyApplication/MANIFEST.py touch ~/MyApplication/CHANGES.py mv ~/MyApplication/run.py ~/MyApplication/bin/run2. إنشاء الملف setup.pynano ~/MyApplication/setup.pyنضع المحتويات التّالية بداخله: from distutils.core import setup setup( # Application name: name="MyApplication", # Version number (initial): version="0.1.0", # Application author details: author="name surname", author_email="name@addr.ess", # Packages packages=["app"], # Include additional files into the package include_package_data=True, # Details url="http://pypi.python.org/pypi/MyApplication_v010/", # # license="LICENSE.txt", description="Useful towel-related stuff.", # long_description=open("README.txt").read(), # Dependent packages (distributions) install_requires=[ "flask", ], )نقوم الآن بحفظه والخروج منه باستخدام CTRL+X ومن ثم تأكيد ذلك باستخدام Y. 3. إنشاء الملف MANIFEST.inإن كنا نحتاج إلى شحن دلائل إضافية (ثابتة static أو قوالب templates) يجب علينا التصريح عنها في manifest لكي يتمّ حَزْمها، سنقوم بفعل هذا في MANIFEST.in. nano ~/MyApplication/MANIFEST.inنضع المحتويات التّالية بداخله: recursive-include app/templates * recursive-include app/static *نقوم الآن بحفظه والخروج منه باستخدام CTRL+X ومن ثم تأكيد ذلك باستخدام Y. هذا هو كل ما نحتاجه ، الآن حِزمة توزيعة بايثون جاهزة ليتمّ تثبيتها وشحنها. 4. ملفات إضافيةيجب دومًا أن نتذكّر أنّه من أجل الحصول على توزيعة كاملة يجب أن يكون الملف/الدليل محتويًا على الملفّات التالية ومربوطًا بها: README.txtMANIFEST.inLICENSE.txtالتعامل مع التطبيق الجاهز للتوزيعبعد أن انتهينا من إنشاء تطبيقنا ومن ثم أجرينا التبديلات الضرورية لبنية الملف لتحضيره لبناء توزيعة لا تحتوي على أيّة أخطاء، نستطيع الآن البدء بالمرور على عمليّات الحَزْم. 1. كيف نقوم بإنشاء ملف التوزيعمن أجل توليد نسخة ملف التوزيع، نقوم بتنفيذ الأمر التالي: cd ~/MyApplication python setup.py sdistسيذهب هذا الأمر إلى إعداداتنا، يطبع العمليات التي يتمّ تنفيذها ويُوَلِّد ملف أرشيف tar داخل الدليل الجديد diet، مشابهًا لما يلي: # root@hostname:~/MyApplication# ls dist # MyApplication-0.1.0.tar.gzملاحظة: بما أنّنا لم نقم بتأهيل جميع المجلدات الفرعية (مثل static) وتعاملنا مع ملفات إضافية (مثل README.txt)، فقد نحصل على بعض التحذيرات أثناء عمليّة الإنشاء. 2. كيفية تثبيت التطبيقيستطيع الآخرون من الآن فصاعدًا تثبيت واستخدام التّطبيق باستخدام ملف setup.py الذي أنشأناه. من أجل تثبيت التطبيق نقوم بتنفيذ الأوامر التالية: python setup.py installإن كان هذا التثبيت من أجل التطوير وأردنا تثبيت المُتطلّبات سنقوم بتنفيذ ما يلي: python setup.py develop3. كيفية مشاركة التطبيقإن أردنا مشاركة الشيفرة على دليل حِزَم بايثون، نستطيع فعل ذلك عن طريق بدء الإجراء register كما يلي: python setup.py registerنستطيع إكمال هذا الإجراء عبر اتّباع التّعليمات التي تظهر على الشّاشة. وإن كنّا نملك تسجيل دخول مسجل registered login من أجل الرفع Upload فقط نستطيع استخدام الأمر التالي: python setup.py sdist upload4. كيفية إنشاء حزم من الإصدارات الجديدة للتطبيقنقوم بتحرير الملف setup.py عن طريق مُحرّر نصوص (مثل nano) وتعيين رقم الإصدار الجديد "version="0.1.1.نقوم بتحرير الملف CHANGES.txt لنعكس التغييرات.نقوم بإجراء التّعديلات الضّروريّة على الملفين LICENSE.txt و README.txt.رفع الشّيفرة بعد الخطوة السّابقة.ترجمة -وبتصرّف- لـلمقال How To Package And Distribute Python Applications لصاحبه O.S. Tezer. حقوق الصورة البارزة: Designed by Freepik.