Yarob | يعرُب 💻
Yarob | يعرُب 💻

@YarHmm

18 تغريدة 47 قراءة Apr 21, 2022
- بعد حديثي البارحة عن الـ CI/CD و الـ DevOps في @TechniyaCom وردني عدد من الاستفسارات عن مصادر للدخول في هذا المجال و التعلم، سأحاول جمع مجموعة من المصادر لتساعدك في ذلك باختلاف مجالك البرمجي.. 👇🏻
- في البداية لا بد من التنويه على النقطة التالية.. لا تبدأ بتعلم ال CI/CD أو الدخول في مجال ال devops عموما دون أن تكون خبيرا في مجال برمجي محدد ابتداءً..
frontend - backend - App Dev.. etc
أي من المجالات، المهم ان هناك أساس تنطلق منه و تمثل فيه الأتمتة دورا هاما.
- النقطة الثانية التي تستحق الذكر، عمليات الأتمتة و تطبيق ال CI/CD و بناء ال pipeline بشكل كامل لأول مرة ليس بالأمر السهل، و ستحبطك العديد من الأخطاء في تجاربك الأولى قبل أن تصل لنتيجة نهائية ناجحة، لكن الأمر يستحق، إضافة كبيرة لخبراتك، و إضافة فعالة لمشاريعك.
- النقطة الثالة و هي نقطة مهمة: قبل أن تقوم بأتمتة أي شيء فعليك أن تفهم بالتفصيل كيف يتم هذا الشيء بطريقة يدوية دون أتمتة، و إلا ستعاني كثيرا في حل المشاكل التي ستظهر حتممما في بداياتك في بناء ال pipeline لل CI/CD.
لمبرمجي التطبيقات.. لديك أداة رهيبة يمكنك أن تبدأ بها و هي التي أستخدمها شخصيا و هي bitrise، كيف تتعلمها؟ لا شك أن هناك العديد من المصادر التعليمية، لكني شخصيا تعلمتها من ال documentation الخاصة بهم.
devcenter.bitrise.io
- أحد الأمور المهمة التي يجب على مبرمج التطبيقات استيعابها جيدا هي ال signing و ال certs / provisioning التي تخول أي مبرمج أو أداة من عمل build للتطبيق و نشره على ال app store أو ال Google Play. و هذا الموضوع يتطلب فهم كامل و مستقل قبل أتمتته،
- هنا أحد المقالات عن ذلك في @medium و التي تتحدث عن ال signing في تطبيقات ال IOS:
medium.com
- و هنا مقالة أخرى من أحد أفضل مواقع مقالات ال IOS Dev و هو raywonderlich و التي تتحدث كذلك عن ال signing و ما يتعلق بها بالتفصيل.
raywenderlich.com
- لمبرمجي ال frontend و ال backend عموما.. قبل الدخول في عمل ال CI/CD يجب أن يكون لديك خبرة جيدة في رفع موقعك و تشغيله على السيرفر أو كصفحة static في حالة ال frontend كاستخدام s3 على سبيل المثال. تعلم العملية يدويا بالتفصيل ثم فكر في طريقة أتمتتها.
- في ال frontend و ال backend لديك العديد من خيارات الأدوات لتبدأ بها، لكن الجميل أن تعلم أي أداة سيسهل عليك التعامل مع أية أداة أخرى مستقبلا.. و اقتراحي أن تبدأ ب github actions.
- تعلم أساسيات ال github actions و طريقة البدء بها، كذلك من أفضل المصادر التي تعلمت منها شخصيا كانت ال documentation الخاصة بال github actions.. التي تشرح الأساسيات بالتفصيل:
docs.github.com
- و اذا كنت تفضل التعلم من خلال الفيديوهات فإليك اختياري لهذا الكورس على يوديمي، لم أتعلم منه شخصيا لكني تصفحته و تأكدت من مواضيعه.
- و هي مناسبة تماما للبدء ✅
- و تقييمه ممتاز ✅
- مدته الزمنية معقولة جدا ( ٨ ساعات) ✅
و أهم جزء في هذا الكورس هو الجزء التطبيقي الذي يشرح فيه بناء مشروع بسيط باستخدام react js و من ثم بناء ال CI/CD لهذا المشروع (لاحظ الصورة)
رابط الكورس:
udemy.com
- بعد ذلك للتعمق أكثر في مجال ال devops عموما يمكنك تقوية أساس الفهم و التعامل مع الخدمات السحابية و على رأسها aws.
- تعلم ال AMI، ال EC2، ال Route 53، ال S3 , الElastic Beanstalk. و من ثم ابدأ بإدخال ال CI/CD flow و ربطه معها.
- ربطه فيها يكون بإدخال الخدمات و السيرفرات المستخدمة في ال pipeline لرفع المشاريع عليها مباشرة، أو حتى بالتعمق أكثر عن طريق التعرف على أدوات ال IaaC:
- IaaC: Infrastructure as a code
و التي لن أفصل فيها الآن لكن تعلمها يمثل الانتقال لمرحلة احترافية أخرى في ال devops عموما.
- كلمحة عن ال IaaC فيمكن اعتبارها كطريقة لبناء البنية التحتية باستخدام أكواد مكتوبة بدلا من عملها يدويا. تماما كما تبني موقع باستخدام الكود، يمكنك اليوم أن تحدد احتياجك من ال hardware عن طريق مشروع مبني بالكود، من أشهر أدوات ال IaaC بلا منازع هي Tarraform.
terraform.io
- و بالتالي لتعلم خدمات aws السحابية، ربطها في ال devops و المرور على ال IaaC، أرشح لك هذا الكورس من udemy:
udemy.com
- و لا شك أن الطريق لا ينتهي عند هذا الحد بل يمكنك التخصص و الاحتراف أكثر عن طريق فهم ال containerization بأدواتها المختلفة و على رأسها docker و kubernates و من ثم الانتقال لبناء بنية تحتية بمعمارية ال microservices باستخدام الأدوات المذكورة، و من ثم استخدامها مع ال devops
- لا شك أن الطريق طويل بعض الشيء، لكنك لست مطالبا بالوصول لآخر ما وصلت إليه المنتجات الرقمية في ال devops. تعلم بناء ال CI/CD حسب مجالك و هذا فقط سيكون كافيا لأن تتميز عن غيرك في سوق العمل.
- أتمنى أن السلسلة كانت مفيدة لك 😄🙏🏻، انتهى.

جاري تحميل الاقتراحات...