نسمع ما يقال دائما بخصوص شركات تطوير البرمجيات في ظل الحصار المفروض على غزة، أنه يمكنها العمل أونلاين عبر الإنترنت ولا عوائق لها، وهذه خطوة ممتازة للشركات لتخطي الحصار والإنتاج والإبداع، ولكن إلى أي مدى هذه الجملة صحيحة؟
في العمل التقليدي، حيث يكون صاحب العمل هو كل شيء، والأجير مجرد عامل يمكن استبداله أو التخلي عنه بمجرد إنتهاء المهمة يمكن لنا كشركات تحت الحصار أن نعمل بسهولة مع الخارج، فالشركات في الخارج تريد مدخل بيانات، أو مبرمج، أو مصمم، أو مترجم أو أي تخصص بسيط متواضع فإنها تجده بسهولة.
كلمتي في أحد مشاريع تحسين قطاع التكنولوجيا في غزة(المزيد…)
حسنا، هنالك الكثير يجب أن
يقال قبل هذا المقال عن مشاكل شركات البرمجيات في قطاع غزة، وهو ما سيتم في مقالات
أخرى، ولكن لأن الخطر الشركة الدولية يداهم الشركات فجأة فسأتطرق له
في الفقرات التالية.
هنالك شركة دولية تحاول أن تفتح فرع لها في غزة، وهي تحاول أن تلطف الأمور بقولها أنها قد تستثمر في إحدى الشركات الحالية، ولن تفتح مقر لها، وهذا أمر في ظاهره جيد، فأينما حلت شركة دولية في سوق صغير إلا وأنعشته كما هو معروف في العالم، ولكن هل نحن كبقية العالم ؟ لذلك دعونا نناقش بند بند المشاكل المتعلقة بهذا الأمر.
أعقتد أن الدوت لها طفرات وقفزات في الهواء من حين لآخر، والدوت نت 5 ستكون الطفرة الرابعة في عالم الدوت نت، الطفرة الأولى كانت في إنشاء الدوت نت، الثانية كانت مع الإصدار الثاني، الثالثة كانت مع قدوم الدوت نت كور، وهذه ستكون الرابعة.
ما يميز الدوت نت 5 أنها ستعمل على Windows, Linux, macOS, iOS, Android, tvOS, watchOS and WebAssembly وغيرها أيضا.
كان الهدف من الإصدار الثالث من الدوت نت كور (.NET Core 3.0) هو تقليل الفجوة بين الدوت نت كور، والدوت نت فريموورك 4.8 ، حيث أصبحت الدوت نت كور 3 تدعم Windows Forms, WPF and Entity Framework 6. وغيرها من الأمور الجميلة التي كنا نفتقدها.
بالمناسبة الإصدار 4.8 من الفريموورك سيكون آخر إصدار في حياة الدوت نت التقليدية 🙂 ، ستكون هنالك حتما تحديثات وترقيعات، لكن هذا المسار بالنسبة لمايكروسوفت انتهى.
من 3.x إلى 5.x
أما الإصدار التالي وهو الإصدار 5، وأكيد مش 4 حتى لا يحدث لبس مع الاصدار 4.0 الحالي من الدوت نت فريموورك، الذي سيصدر في November 2020 سيردم الفجوة كاملة.
الثلاث أهداف الرئيسية للإصدار القادم هي
Produce a single .NET runtime and framework that can be used everywhere and that has uniform runtime behaviors and developer experiences.
Expand the capabilities of .NET by taking the best of .NET Core, .NET Framework, Xamarin and Mono.
Build that product out of a single code-base that developers (Microsoft and the community) can work on and expand together and that improves all scenarios.
وما نعرفه الآن عن الدوت نت كور سيبقى مثل
Open source and community-oriented on GitHub.
Cross-platform implementation.
Support
for leveraging platform-specific capabilities, such as Windows Forms
and WPF on Windows and the native bindings to each native platform from
Xamarin.
High performance.
Side-by-side installation.
Small project files (SDK-style).
Capable command-line interface (CLI).
Visual Studio, Visual Studio for Mac, and Visual Studio Code integration.
وما سيكون جديد هو
You will have more choice on runtime experiences (more on that below).
Java interoperability will be available on all platforms.
Objective-C and Swift interoperability will be supported on multiple operating systems. وهذا منطقي لكي تعمل التطبيقات بكفاءة
CoreFX will be extended to support static compilation of .NET (ahead-of-time – AOT), smaller footprints and support for more operating systems.
وهذه هي خطة مايكروسوفت في الفترة القادمة للدوت نت.
1- ما يزال الهدف الأساسي لأي شركة هو أن تباع في فترة الخمس سنوات، ولكي تباع الشركات الناشئة التي لم تبدأ برأس مالي كبير، عليها أن تبحث عن مستثمر لكي يدفع مبلغ مناسب لكي تكبر الشركة وتكون جاهزة للشراء، وهذه بعض النصائح عند الجلوس مع المستثمر.
2- في اللقاء الأول مع المستثمر (حيث يعتبر لقاءً مصيرياً لاستمرار العلاقة معه). من المتبع أن تجهز طريقة عرض تجارية موضوعية ومهنية، تعرض فيها باختصار المنتج أو الخدمة التي تقدمها المصلحة، واستطلاع السوق والمنافسين، وأسس البرنامج الاستراتيجي، وطريقة التسويق والبيع، والتخطيط المالي وبالطبع صاحب المصلحة يعرض نفسه.
من الشائع في الوسط البرمجي وجود فكرة أن المبرمج لا يستطيع أن يفحص النظام الخاص به، وهذا أمر صحيح، فالمبرمج يعرف مداخل ومخارج النظام، إذا كتبت هنا 3 سيعمل البرنامج، وإذا كتبت 5 لن يعمل، فبالتالي حينما يقوم بتجربة النظام الخاص به، مباشرة يدخل 3 أو 5 ويختبر النظام إما نجاح أو فشل العملية، وتنتهي المشكلة.
من الشائع في الوسط البرمجي وجود فكرة أن المبرمج لا يستطيع أن يفحص النظام الخاص به، وهذا أمر صحيح، فالمبرمج يعرف مداخل ومخارج النظام، إذا كتبت هنا 3 سيعمل البرنامج، وإذا كتبت 5 لن يعمل، فبالتالي حينما يقوم بتجربة النظام الخاص به، مباشرة يدخل 3 أو 5 ويختبر النظام إما نجاح أو فشل العملية، وتنتهي المشكلة.
كشركة برمجيات ( Developers Plus ) يتكون فريقها من 30 شخص بدوام كامل، وما يقرب من 10 آخرين بدوام جزئي، وما يزيد عن 40 متدرب سنويا في الشركة، وزبائن قدماء وزبائن جدد، كان لابد من الانتقال من البرامج الصغيرة التي تدير المشروع، إلى أنظمة تدير الشركة كاملة، واستخدام نظام أكبر وأرقى والاستعداد للتوسع القادم للشركة، وقد وقع اختيار الشركة بعد عدة اجتماعات على Microsoft Sharepint ، وهذه الرحلة سنأخذكم في التجربة التي مررنا بها، أملا في تحقيق الاستفادة
كان وقع استخدام الشيربوينت في الأساس يعود للأسباب التالية:
1- اعتمادنا على TFS في إدارة الكود، وكانت كل الإصدارات السابقة منه قبل الإصدار اعتقد 2017.3 يجب أن تعتمد على الشيربوينت، وهو ما لغته مايكروسوفت.
2- وجود Workstation بمعالج Xeon ومواصفات مناسبة في الشركة يعمل 24 ساعة، عليه ويندوز سيرفر عليه قاعدة بيانات SQL Server ويستخدم للأرشفة وعمليات صغرى، وهو ما شجعنا على تنصيب باقي البرامج.
3- وجود تراخيص كاملة لدينا لكل منتجات الشركة لأننا كنا مشتركين في Microsoft BizSpark وهو ما يسهل العملية.
4- رغبة الشركة في أن تكون من الشركات في الشرق الأوسط وخصوصا في فلسطين وغزة تحديدا مختصة بالشيربوينت، وفعلا في غزة لم تكن إلا شركتنا، وكانت رغبتنا في الدخول في مجالين Sharepoint Administration ، و Sharepoint Development بحكم أن 10 على الأقل من فريق الشركة الحالي هم مبرمجين ASP.NET
5- والأهم تنظيم العمل باستخدام برمجيات عريقة ولها وزنها تمكن الشركة من الخطو خطوة نحو طريقة عالمية، ولتعاملنا الشديد مع منتجات مايكروسوفت، كان الشيربوينت الأنسب.
وبحثا عن المزيد من الخطوات الآمنة في عالم غير آمن، قمت باستخدام Microsoft Bitlocker، وهو من الخيارات السهلة وسريعة الاستخدام في عالم الويندوز، التي تجعلك تقوم بتشفير بياناتك على قرصك الصلب بالكامل، خوفا من سرقة القرص واستخدام بياناته.
استغرقت عملية التشفير وقتا لا بأس به، وكنت قد بدأت أعتاد في كل مرة أفتح الويندوز أن أقوم بإدخال كلمة مرور القرص في كل مرة، وكنت قد حفظت مفتاح الاسترداد على الone drive في حالة الطوارئ .
وبدأت الفاجعة حينما قمت بتغيير القرص الصلب وشبكت قرصاً غيره لعدة ساعات، وثم أعدت القرص المشفر بالbitlocker وما إن أدخلت كلمة المرور، إلا وظهرت الصورة التالية:
حيث مظهر القرص يوحي بوجود مشكلة، وعند الولوج إليه تظهر رسالة : bitlocker the file or directory is corrupted and unreadable ، وفي مواضع أخرى ظهرت هذه الرسالة : bitlocker device is not ready
وهذا القرص أحفظ عليه كل أكوادي وملفاتي وسنوات عمري، وهو ما كان كارثة كبرى بالنسبة لي، وبدأت رحلة البحث عن حل لإصلاح هذا المشكلة، وتقريبا جربت كل البرامج، وكنت الأفكار النهائية لحل المشكلة كالتالي، وسأرتبها لكي يمكن الاستفادة منها.
حسنا، وكما تقول الأسطورة فإن الإنسان كان قد تطور من قرد، لا بل أقصد أن الإنسان والقرد قد تطورا من سلف مشترك، والدليل الجيني أن الإنسان يشترك مع الشيمبانزي بما يقارب ال 84 % من جيناته، والدليل الإضافي أن الإنسان والقرد لديهم نفس الخلل الجيني الذي يمنعهم من إنتاج فيتامين سي في الخلايا، ولدينا نفس جينات الكسوة التي لدى القرود إلا أنا تبعتنا حدث لها عيب ما لاحقا، وهذا ما لا يدع مجال للشك وبشكل علمي ومنهجي.
ولطالما كانت العلوم تصلح نفسها بنفسها فإن العلماء العظماء يقولون أنه لدينا دراسات جديدة الآن أقوى من السابق، وهي تعطينا مؤشر أفضل، فدراسات أحدث تشير إلى أن الإنسان يشترك مع الفأر بنسبة 90% من جيناته، والدراسات الأحدث تشير إلى أن أننا نشترك مع الكلب بما نسبته 95% من جيناتنا، وأن الإنسان فعلا أصله كلب.