تبي تسوي تطبيق؟ 📱
ما تدري من وين تبدأ، صح؟ 😅
طيب، بحاول اسرد لك أشياء ممكن تهمك عشان ما تجيب العيد، أو يجيبون العيد فيك. 👍🏽
ممكن كلامي يزعّل البعض، لكن الهدف التوعية عشان نحمي الروّاد الجدد من النصابين ومصاصي الدماء. 🙏🏼
ركز معي 👇🏽
ما تدري من وين تبدأ، صح؟ 😅
طيب، بحاول اسرد لك أشياء ممكن تهمك عشان ما تجيب العيد، أو يجيبون العيد فيك. 👍🏽
ممكن كلامي يزعّل البعض، لكن الهدف التوعية عشان نحمي الروّاد الجدد من النصابين ومصاصي الدماء. 🙏🏼
ركز معي 👇🏽
راح أغطي أهم النقاط اللي اعرفها، ولو أخطأت، فضلا صححوني 🙏🏼.
١. التكلفة. 💰
٢. اختيار الجهة المنفذة. 👨🏻💻👩🏻💻
٣. التشغيل والصيانة. ⚙️
٤. اختيار التقنية المناسبة. 🛠
١. التكلفة. 💰
٢. اختيار الجهة المنفذة. 👨🏻💻👩🏻💻
٣. التشغيل والصيانة. ⚙️
٤. اختيار التقنية المناسبة. 🛠
التكلفة 💰
حط في بالك أن البرمجة مكلفة، وأن أي مبرمج أو شركة يعطونك سعر رخيص، فغالبا يكون تنفيذهم رخيص.
لكن، هذا لا يعني أن بعض الشركات أو المبرمجين يُغالون في الأسعار، وغالباً يكون لسبب منطقي.
ما يستفاد، لا تختار الرخيص، ولا تختار الغالي مرة، خذ الوسط. شوف الخيارات ولا تستعجل
حط في بالك أن البرمجة مكلفة، وأن أي مبرمج أو شركة يعطونك سعر رخيص، فغالبا يكون تنفيذهم رخيص.
لكن، هذا لا يعني أن بعض الشركات أو المبرمجين يُغالون في الأسعار، وغالباً يكون لسبب منطقي.
ما يستفاد، لا تختار الرخيص، ولا تختار الغالي مرة، خذ الوسط. شوف الخيارات ولا تستعجل
التأكد من المصداقية ✅:
راح تواجه مبرمجين نصابين، يقولون لك احنا سوينا التطبيق الفلاني (كذب).
لا تؤمن بصدق كلام المبرمج مباشرة، لازم تتأكد بنفسك.
كيف؟
روح اسأل صاحب التطبيق، هل فعلياً هذا المبرمج هو سواه؟
⚠️ لا تفترض، الافتراضات تسبب لك خساير على المدى القريب والبعيد.
راح تواجه مبرمجين نصابين، يقولون لك احنا سوينا التطبيق الفلاني (كذب).
لا تؤمن بصدق كلام المبرمج مباشرة، لازم تتأكد بنفسك.
كيف؟
روح اسأل صاحب التطبيق، هل فعلياً هذا المبرمج هو سواه؟
⚠️ لا تفترض، الافتراضات تسبب لك خساير على المدى القريب والبعيد.
التأكد من الجودة 💎:
اذا تأكدت من كون المبرمج هو فعلياً اللي سوى التطبيق، اسأل عنه. 💭
ما في أفضل من الزبون يعطيك رأيه في التجربة معاه. 👍🏽
اذا تأكدت من كون المبرمج هو فعلياً اللي سوى التطبيق، اسأل عنه. 💭
ما في أفضل من الزبون يعطيك رأيه في التجربة معاه. 👍🏽
أهم ما يجب أن تعرفه 💡:
١. 👻 طريقة التعامل (محترم، قليل حيا).
٢. ⏳ الالتزام بالوقت والوعود (يماطل، والا ملتزم).
٣. 🔓الشفافية عند التعثرات (يسحب، والا يقترح حلول).
٤. 🧸 المرونة في التغييرات (كل حرف بريال، والا ياخذ ويعطي معاك).
٥. 💆🏻♀️ الاهتمام (يبي يخلص منك، والا يبي يساعدك).
١. 👻 طريقة التعامل (محترم، قليل حيا).
٢. ⏳ الالتزام بالوقت والوعود (يماطل، والا ملتزم).
٣. 🔓الشفافية عند التعثرات (يسحب، والا يقترح حلول).
٤. 🧸 المرونة في التغييرات (كل حرف بريال، والا ياخذ ويعطي معاك).
٥. 💆🏻♀️ الاهتمام (يبي يخلص منك، والا يبي يساعدك).
٦. 💪🏽 المبادرة (مب شايل همك، والا مب شايل همك).
٧. 🤕 الاستيعاب (يقدر يخدمك، والا بينضغط ويظلمك).
٧. 🤕 الاستيعاب (يقدر يخدمك، والا بينضغط ويظلمك).
المقدرة والاستيعاب 🤕:
لو كان مبرمج، لازم تعرف اذا عنده مشروع/زبون قائم. لأن الآدمي ما يقدر يشتغل اكثر من ١٠-١٢ ساعة بدون ما يهلك
اذا كانت شركة، لازم تعرف اذا مبرمجهم مخصص لك، والا مشترك مع مشاريع ثانية.
⚠️ هذا مهم عشان القدرة الاستيعابية تؤثر كثير على الالتزام بالوقت والوعود.
لو كان مبرمج، لازم تعرف اذا عنده مشروع/زبون قائم. لأن الآدمي ما يقدر يشتغل اكثر من ١٠-١٢ ساعة بدون ما يهلك
اذا كانت شركة، لازم تعرف اذا مبرمجهم مخصص لك، والا مشترك مع مشاريع ثانية.
⚠️ هذا مهم عشان القدرة الاستيعابية تؤثر كثير على الالتزام بالوقت والوعود.
التشغيل والصيانة ⚙️:
في أغلب العقود التعبانة، الشركة أو المبرمج بيسلمك التطبيق ولا بتسمع منهم خبر بعدها.
⚠️ لذلك، اذا كان تطبيقك يتطلب التشغيل والصيانة الدورية (بزنس كامل يعتمد عليه)، لازم تحط في بالك الحاجة لهذا الشي.
كيف؟
في أغلب العقود التعبانة، الشركة أو المبرمج بيسلمك التطبيق ولا بتسمع منهم خبر بعدها.
⚠️ لذلك، اذا كان تطبيقك يتطلب التشغيل والصيانة الدورية (بزنس كامل يعتمد عليه)، لازم تحط في بالك الحاجة لهذا الشي.
كيف؟
عندك خيارين:
الأول، التعاقد مع الشركة أو المبرمج المنفذ للصيانة سواءاً بالكم أو بالوقت. وهذا الشي يكون مستمر، طوال حياة تطبيقك.
الثاني، أن تاخذ الموضوع بشكل جدّي وتوظف لك مبرمج براتب شهري مستمر تكون مسؤوليته تشغيل/صيانة التطبيق.
الأول، التعاقد مع الشركة أو المبرمج المنفذ للصيانة سواءاً بالكم أو بالوقت. وهذا الشي يكون مستمر، طوال حياة تطبيقك.
الثاني، أن تاخذ الموضوع بشكل جدّي وتوظف لك مبرمج براتب شهري مستمر تكون مسؤوليته تشغيل/صيانة التطبيق.
التقنيات:
☯️ لكل خيار مزايا وعيوب.
لكن، لازم تعرفها عشان تقرر صح.
عند برمجة التطبيقات، أشهر خيارين تقنيين هما:
البرمجة باللغة الأصلية (native)
البرمجة عبر المنصات (cross platform)
☯️ لكل خيار مزايا وعيوب.
لكن، لازم تعرفها عشان تقرر صح.
عند برمجة التطبيقات، أشهر خيارين تقنيين هما:
البرمجة باللغة الأصلية (native)
البرمجة عبر المنصات (cross platform)
البرمجة باللغة الأصلية (native):
هنا تقوم ببرمجة تطبيق كامل (منفصل) لكل منصة، باستخدام اللغة الأصلية.
للiOS، تستخدم swift.
و للAndroid تستخدم Kotlin أو Java.
المزايا 👇🏽
هنا تقوم ببرمجة تطبيق كامل (منفصل) لكل منصة، باستخدام اللغة الأصلية.
للiOS، تستخدم swift.
و للAndroid تستخدم Kotlin أو Java.
المزايا 👇🏽
مزايا البرمجة باللغة الأصلية:
١. بشكل عام أداء أفضل (على افتراض أن المبرمج شغله كويس، لأن اللغة مجرد أداة، اذا ما يعرف يستخدمها زين بيجيب العيد).
٢. دعم تقني أفضل (لأنها اللغة الأصلية، آبل وجوجل راح يدعمونها بالتحديثات والخصائص أسرع بكثير من الخيارات الثانية).
يتبع 👇🏽
١. بشكل عام أداء أفضل (على افتراض أن المبرمج شغله كويس، لأن اللغة مجرد أداة، اذا ما يعرف يستخدمها زين بيجيب العيد).
٢. دعم تقني أفضل (لأنها اللغة الأصلية، آبل وجوجل راح يدعمونها بالتحديثات والخصائص أسرع بكثير من الخيارات الثانية).
يتبع 👇🏽
٣. سهولة وضمانة التكامل مع خدمات نظام التشغيل، لوجود الربط الرسمي من الشركة المصنعة نفسها، مثال، استيراد جهات الاتصال، الكاميرا، الحساسات. إلخ.
العيوب 👇🏽
العيوب 👇🏽
عيوب البرمجة باللغة الأصلية:
التكلفة أعلى، خاصة إن كنت بتدعم عدة منصات (iOS و Android) حرفيا بتسوي تطبيقين
ℹ️ ما يستفاد، اختر اللغة الأصلية اذا تحتاج أداء مرة عالي، وتحتاج ضمانات توافقية عالية مع نظام التشغيل وما تهمك التكلفة المرتفعة
لو بتسوي تطبيق لمنصة واحدة، هو أفضل خيار لك
التكلفة أعلى، خاصة إن كنت بتدعم عدة منصات (iOS و Android) حرفيا بتسوي تطبيقين
ℹ️ ما يستفاد، اختر اللغة الأصلية اذا تحتاج أداء مرة عالي، وتحتاج ضمانات توافقية عالية مع نظام التشغيل وما تهمك التكلفة المرتفعة
لو بتسوي تطبيق لمنصة واحدة، هو أفضل خيار لك
البرمجة عبر المنصات (cross platform):
هنا تقوم ببرمجة تطبيق واحد وب code واحدة ويعمل على منصات متعددة. وهناك عدة تقنيات، أشهرها:
١. React native من فيسبوك.
٢. Flutter من جوجل.
٣. Hybrid بتقنيات الويب.
⚠️ لكل تقنية عيوبها ومزاياها، استزد وابحث عنها قبل اتخاذ القرار لأحدها.
هنا تقوم ببرمجة تطبيق واحد وب code واحدة ويعمل على منصات متعددة. وهناك عدة تقنيات، أشهرها:
١. React native من فيسبوك.
٢. Flutter من جوجل.
٣. Hybrid بتقنيات الويب.
⚠️ لكل تقنية عيوبها ومزاياها، استزد وابحث عنها قبل اتخاذ القرار لأحدها.
مزايا البرمجة عبر المنصات (cross platform):
١. تكلفة أقل (بشكل عام)، لكونك تبرمج تطبيق واحد يعمل على منصات متعددة.
٢. خيارات أكثر (للبرمجة باللغات الأصلية خيارات محدودة).
٣. إمكانية تخصيص أجزاء من التطبيق لنظام معين، وترك الباقي مشترك بين الأنظمة.
العيوب 👇🏽
١. تكلفة أقل (بشكل عام)، لكونك تبرمج تطبيق واحد يعمل على منصات متعددة.
٢. خيارات أكثر (للبرمجة باللغات الأصلية خيارات محدودة).
٣. إمكانية تخصيص أجزاء من التطبيق لنظام معين، وترك الباقي مشترك بين الأنظمة.
العيوب 👇🏽
عيوب البرمجة عبر المنصات:
١. أداء أقل نسبياً (مرة أخرى، يعتمد على مهارة المبرمج، فهناك تطبيقات عبر المنصات أداؤها أفضل من تطبيقات باللغة الأصلية).
٢. تأخر في دعم الخصائص الجديدة في نظام التشغيل، أو دعم محدود عن طريق طرف ثالث (ليس من الشركة المصنعة لنظام التشغيل).
... يتبع
١. أداء أقل نسبياً (مرة أخرى، يعتمد على مهارة المبرمج، فهناك تطبيقات عبر المنصات أداؤها أفضل من تطبيقات باللغة الأصلية).
٢. تأخر في دعم الخصائص الجديدة في نظام التشغيل، أو دعم محدود عن طريق طرف ثالث (ليس من الشركة المصنعة لنظام التشغيل).
... يتبع
هذا الخيار مناسب لك لخفض التكاليف الأساسية في بداية مشروعك.
وأيضاً يعتبر خيار جيد إذا رغبت بدعم عدة منصات من أول يوم (رغم أني لا أنصح بذلك لأنه ممكن يشتت انتباهك في بدايات مشروعك، مو شرط لكن ممكن).
وأيضاً يعتبر خيار جيد إذا رغبت بدعم عدة منصات من أول يوم (رغم أني لا أنصح بذلك لأنه ممكن يشتت انتباهك في بدايات مشروعك، مو شرط لكن ممكن).
التصميم:
المبرمج ليس مصمم، وليس المصمم مبرمج، لذلك لما تتعامل مع مبرمج أو شركة، حط في بالك هذا الشي.
لأنها راح تكون تكلفة إضافية عليك لو رغبت في تصميم خاص وفريد. سواءاً بالتعامل مع مصمم كطرف ثالث من جهتك، أو من جهة اللي راح يبرمج.
المبرمج ليس مصمم، وليس المصمم مبرمج، لذلك لما تتعامل مع مبرمج أو شركة، حط في بالك هذا الشي.
لأنها راح تكون تكلفة إضافية عليك لو رغبت في تصميم خاص وفريد. سواءاً بالتعامل مع مصمم كطرف ثالث من جهتك، أو من جهة اللي راح يبرمج.
أمور مهمة لازم تتأكد منها:
١. ملكية الكود للتطبيق، المفترض من أول يوم يكون عندك نسخة منه، وهذا يكون مذكور في العقد.
٢. ملكية التطبيق على متجر التطبيقات، سو لك حساب مطورين، وأعطي الصلاحية المبرمج أو الشركة انهم يحملون التطبيق عليه. هذا يكون مذكور في العقد.
١. ملكية الكود للتطبيق، المفترض من أول يوم يكون عندك نسخة منه، وهذا يكون مذكور في العقد.
٢. ملكية التطبيق على متجر التطبيقات، سو لك حساب مطورين، وأعطي الصلاحية المبرمج أو الشركة انهم يحملون التطبيق عليه. هذا يكون مذكور في العقد.
ملكية الكود والتطبيق لحمايتك وحماية مشروعك عند النزاعات لا سمح الله مع المبرمج أو الشركة، ولضمانة امتلاكك نسخة منه في حال انسحب عليك لا سمح الله.
توظيف مستشار 👨🏻💼👩🏻💼:
اذا كنت شخص غير تقني، وتقدر تتكفل مادياً بتوظيف طرف ثالث عن طريقك أنت، وظيفته يتأكد من جودة المخرجات والكود اللي يسويه المبرمج.
📐 تخيل كأنه مكتب اشراف هندسي على مشروع بناء بيتك، يشرف على المقاول، ويتأكد من جودة أعماله.
اذا كنت شخص غير تقني، وتقدر تتكفل مادياً بتوظيف طرف ثالث عن طريقك أنت، وظيفته يتأكد من جودة المخرجات والكود اللي يسويه المبرمج.
📐 تخيل كأنه مكتب اشراف هندسي على مشروع بناء بيتك، يشرف على المقاول، ويتأكد من جودة أعماله.
طيب وين أحصل مبرمج كويس أو شركة كويسة؟ 🤔
ممكن أفضل طريقة هي أنك تشوف التطبيقات اللي تعجبك وحاول تجيب معلومات عن مين نفذها 😅.
الطريقة الثانية هي تشوف الشركات اللي تقدم خدماتها وتقارن ما بين الخيارات المناسبة لك حسب الكلام اللي فوق كله:
ممكن أفضل طريقة هي أنك تشوف التطبيقات اللي تعجبك وحاول تجيب معلومات عن مين نفذها 😅.
الطريقة الثانية هي تشوف الشركات اللي تقدم خدماتها وتقارن ما بين الخيارات المناسبة لك حسب الكلام اللي فوق كله:
الطريقة الثالثة:
أنك توظف مبرمج براتب عن طريق أحد المواقع اللي توفر لك هذا الشي وتحميك مثلا:
UpWork.com
Freelancer.com
Toptal.com
عند التوظيف عن بعد، تأكد من فرق التوقيت بينك وبين المبرمج، لا يكون الفرق مرة عالي ويسبب لك مشاكل في التواصل.
أنك توظف مبرمج براتب عن طريق أحد المواقع اللي توفر لك هذا الشي وتحميك مثلا:
UpWork.com
Freelancer.com
Toptal.com
عند التوظيف عن بعد، تأكد من فرق التوقيت بينك وبين المبرمج، لا يكون الفرق مرة عالي ويسبب لك مشاكل في التواصل.
طبعاً كوووووول الكلام هذا مبني على تجاربي السابقة.
حاولت أبسّط واختصر قد ما أقدر، من الوارد أني ما غطيت تفاصيل معينة إما لعدم معرفتها أو لأنا ما خطرت على بالي.
لو عجبتك السلسلة، سو إعادة تغريد ♻️.
ولو عندك سؤال، اسأل، وبجاوبك على قدر معرفتي 👍🏽🙏🏼.
وبالتوفيق 🤲🏽
حاولت أبسّط واختصر قد ما أقدر، من الوارد أني ما غطيت تفاصيل معينة إما لعدم معرفتها أو لأنا ما خطرت على بالي.
لو عجبتك السلسلة، سو إعادة تغريد ♻️.
ولو عندك سؤال، اسأل، وبجاوبك على قدر معرفتي 👍🏽🙏🏼.
وبالتوفيق 🤲🏽
⚠️⚠️⚠️⚠️
أخيرا وليس آخراً...
لازم تعرف وش التطبيق اللي تبي تسويه، وتكون تطلعاتك معقولة لميزانيتك ولقدرات المبرمج المختار.
ومب شرط تغطي كل النقاط اللي ذكرتها في السلسلة، إنما الهدف هو تقليل المخاطر عليك، عشان ما يكون التطبيق هو سبب فشل مشروعك.
وبالتوفيق يا بطل 👍🏽🤲🏽
أخيرا وليس آخراً...
لازم تعرف وش التطبيق اللي تبي تسويه، وتكون تطلعاتك معقولة لميزانيتك ولقدرات المبرمج المختار.
ومب شرط تغطي كل النقاط اللي ذكرتها في السلسلة، إنما الهدف هو تقليل المخاطر عليك، عشان ما يكون التطبيق هو سبب فشل مشروعك.
وبالتوفيق يا بطل 👍🏽🤲🏽
جاري تحميل الاقتراحات...