Category: Startups

  • Beware of the agile nonsense !

    Warning: This article is highly opinionated !

    Spending the first few years in my career as an engineer, and wanting to break into project management and leadership. I started to prepare by taking online degrees in product management and ownership, agile, and scrum. When I got a team assigned to me, i started immediately to apply scrum, and harnessing some of its benefits, by putting my team into a timebox and ensuring that they continuously deliver every 2 weeks which was a very good measure to introduce order and maximise the team’s value, however, we fell into one of its traps by having a scrum master who wasted solid 30-45 mins every morning from the whole team in our supposed to be 15 mins daily standup.

    One year later, new team and a new company, I grew much familiar with scrum and had a different situation by teaming up with a great scrum master. This time we I will finally do scrum right -that’s what I told myself- , our best highlight was that we always could deliver and demo to our stakeholders. We were very keen on continuously making something and shipping it out and that attitude put us in a very good position within our organisation. However, we still spent hours and hours of retros and backlog refinement, our team tried really hard to do scrum right, to timebox meetings, to prepare as much as we can. We tried many measures, but it always ended the same : A meeting with 7 – 10 people where you have mostly half of them engaged and the rest are just chilling, listening or maybe even sleeping in the background with their cameras off. It was pandemic time and online was the default.

    In my next role, i started to reflect about the essence of agile, i was (and am still) lucky having a colleague who applied subconsciously all the agile principles as i understand them without sticking to any book or following any process.

    We immediately matched together ! Let’s not follow any process ! Here is our playbook

    • Short direct conversations using phone calls or chat messages : as short daily standup as possible, cancel all other regular ceremonies
    • Working software over extensive documentation : we used a very loose process of defining teams tasks using formatted texts into our team channel, only created docs when the customer or the situation required it
    • Respond very quickly and dynamically to change (principles 1 and 2 above will help in being lean enough to do that)
    • Collaborate always very early with the customer and involve them in our steps ( and even some of the team channels)

    Turns out to be that we are agile , and this is agile.

    Now , don’t get me wrong, agile is good , agile is necessary unlike what my click-bait title may suggest, but please be careful about all the nonsense certificates , ceremonies and courses surrounding it. Call it scrum , SaFe, LeSS or whatever, based on my personal experience: it was mostly a waste of time multiplied by the number of the good engineers which I had in the team.

    Your experience can be different but I advise you to think really hard next time about the cost vs benefit before bringing your best engineers into the weekly backlog refinement to label your tickets with story points.

    Extra reading: https://www.svpg.com/process-police/

  • Yet Another Thread about ChatGPT: Possible Application into ISO26262 Certification Process?

    Problem Statement

    There is a growing demand of automotive OEMs for a POSIX software OS that is capable of powering up a complex centralized multimedia ECU that drives multiple usecases including safety ones such as Instrument Cluster, ADAS, and others, in addition to non-safety applications for entertainment as Navigation , phone ..etc.

    This demand is met with a shortage of solutions in the market, leading to the necessity of combining multiple OSes from different vendors which yields a complex software architecture , and a cumbersome  integration process by design.  Moreover, in most cases the market is monopolized by a single or a few players, putting most OEMs in a vendor lock-in situation , on top of finding it very expensive to get the right talent from the market for closed source technologies.

    These factors put legacy OEMs in a vulnerable position against rising threats from the US and China. The latter can deliver new software solutions at a much higher speed by relying on open source, adopting simpler architectures, disregarding some of the existing standards, and taking bolder decisions.

    The legacy OEMs need a software solution that enables them to develop software with higher speed while still abiding to the legal frameworks and the existing automotive standards. They need to break free from the vendor lock-in situation and explore new technologies that offer more flexibility, cost-effectiveness, and efficiency.

    Overview of some solutions in the market

    QNXNEW! Redhat Vehicle OSAdding a separate AUTOSAR controlloer
    Battle tested in AutomotiveOne known automotive customer Battle tested in Automotive
    * Closed-source
    * Less talent in the market
    * Expensive
    * Monopoly
    * Open source
    * Big pool of talent
    * Will it be expensive too ?
    * Open standard, open-source-when-you-pay
    * Big pool of talent
    * Expensive
    * Complex architecture
    * Nearly a Monopoly
    * Outdated tools and workflows

    Using ChatGPT to develop a safe Linux distribution

    Can we employ the power of ChatGPT to establish a fast and simplified certification/recertification process to deliver a safe Linux distribution according to the ISO26262? ChatGPT usecases to investigate:

    • Can ChatGPT write software requirements from a given code implementation?
    • Can ChatGPT write software requirements from a high level description of a software package?
    • Can ChatGPT create architectural diagrams? 
    • Can ChatGPT write unit tests from a given code implementation?
    • Can ChatGPT increase test coverage?
    Usecase for investigation CPPRESTSDK (medium size software package)
    • There is no way (so far) to give a whole git repo to be analyzed by ChatGPT
      • However, OpenAI has promised to release several plugins that will allow ChatGPT to read files and/or access the internet
    • It doesn’t seem that ChatGPT can build the context of the whole project and it gets lost when the code snippet provided to it is too long
      • For example, it selectively explained a subset of functions when I provided a file of 500 lines
      • It couldn’t process a larger file ~ 1k lines
      • When I asked it to give a really detailed analysis , it started spitting out description of imaginary functions that I didn’t ask about at all!
    • ChatGPT was able to provide an explanation to a piece of code in the form of requirements specifications
    • ChatGPT was able to perform on a much higher level when presented with a single simple c function , it could come up with 2 high quality test cases

    Conclusions

    • For any kind of realistic results, a code needs to be broken down into smaller pieces before feeding it into ChatGPT, then the output still also needs human supervision and review.
    • Humans will need to create context and analyse the workpackages. Detailed plan of work to be created as if a team will do it with no AI assistance.
    • AI can then kick in and speed up the execution of single tasks and improve the overall timeline of the project.
    • The final output shall be orchestrated and delivered by humans
    • ChatGPT is a resourceful and a smart assistant, but in a complex narrative I would regard it as a supporting character or a “CoPilot”
    • ChatGPT can spit out completely wrong information with a very confident tone
    • Software Engineers can rest assured that their jobs are not being replaced anytime soon, however the expectations of the efficiency of someone will drastically change, and the gap between a SWE+Copilot vs an old school SWE will be tremendous
  • تجربة ستارت اب بيكويتي pequity و ازاي فشلنا فيها ، و ايه اللي اتعلمته ؟

    تجربة ستارت اب بيكويتي pequity و ازاي فشلنا فيها ، و ايه اللي اتعلمته ؟

    مقدمة

    مع الظرف الاقتصادي الصعب اللي بتمر بيه مصر و العالم و حيرة الناس في انهم يقدروا يحافظوا على قيمة ما تبقى من مدخراتهم انا حابب النهاردة أتكلم عن تجربة اشتغلت عليها مع صديقي ياسر فتحي لمدة ٦ شهور متواصلة تقريبا من اواخر ٢٠٢٠ لحد منتصف ٢٠٢١ بنحاول نحل مشكلة بالرغم من ان التجربة ممكن بشكل موضوعي نحكم عليها بالفشل أو أنها لم ترتقي لمستوى توقعاتنا و لكن في تفاصيل كتيرة حصلت في الفترة دي ممكن نتكلم عليهم

    طيب ليه انا باكتب ؟ السبب الرئيسي أنا مازلت مقتنع انها مشكلة كبيرة و محتاجة شغل كتير و ممكن حد يستفيد من تجربتنا او يحاول يكررها بشكل مختلف و السبب التاني إني باحب شخصيا الكتابة و التوثيق و باحاول دايما اكتب اذا اتيحت الفرصة ، السبب الاخير أننا نشرنا كل السورس كود اللي اشتغلنا عليه الفترة دي برخصة مفتوحة المصدر و بالتالي من المهم اننا ننشر تفاصيل اكتر لاي حد حابب يعيد استخدامها و الروابط موجودة في اخر المقال

    ايه هي المشكلة و ازاي حاولنا نقدم حل ؟

    احنا شفنا ملايين من الناس مش قادرين يلاقوا فرص مجدية و آمنة انهم يستثمروا أي فوائض ادخارية و بالتالي بيتجهوا للمستريحين او على أفضل الأحوال العقارات او شهادات بنكية مش بتحميهم من التضخم بشكل كبير و في نفس الوقت في ملايين من المشروعات الصغيرة والمتوسطة اللي بتدخل أرباح معقولة و قدامها فرصة كويسة للتوسع لو توفر سيولة كويسة

    طيب هل المشكلة دي حاجة في خيالنا بس؟ الحقيقة في ارقام كتيرة جدا بتتكلم عن حجم السوق الضخم زي مثلا ان المشاريع الصغيرة والمتوسطة بتمثل حوالي ٩٨٪ من الاقتصاد المصري و ٩٧٪ من الاقتصاد الجزائرى ، دي مشاريع راس مالها بيكون صغير جدا و بتشغل عدد افراد محدود زي كشك سجاير او مخبز او ورشة نجارة بسيطة …الخ

    رقم تاني مهم جدا هو ٦٪ نسبة المستثمرين الأفراد في البورصة المصرية و الفارق مهول ٥٥٪ للبورصة الامريكيه و لو بصينا مع الرقم ده على كم الشقق المغلقة يقوي جدا فرضيتنا

    الحل

    احنا اتفقنا مبدئيًا على حاجة الناس لسوق يربط بين مستثمر و صاحب بيزنس صغير او متوسط لكن اتناقشنا كتير عن دورنا في السوق كوسيط لان ده كان من أهم القرارات اللي هتاثر على اسلوب الشغل و قررنا اننا نقدم الحد الادني بدون اي تداخل بين الطرفين عشان نبعد في البداية عن المعوقات القانونية و اي مسؤولية مباشرة في عملية البيع و الشراء لكننا في نفس الوقت طورنا ادوات بتمكن صاحب اي مشروع انه يقيم مشروعه ماليا بناءً على مدخلات كتير و ده يعتبر أسلوب مختلف عن السائد ان الناس بتقيم المشروع بقيمة الارض فقط مع المعدات و الاجهزة او بشكل عرفي ، كانت فكرتنا انه عن طريق الادوات اللي وفرناها للتقييم ممن نوفر نقطة بداية ايجابية بين البايع و الشاري

    اخترنا اننا نركز شغلنا على مصر و شمال افريقيا و دول العالم التالت اللي فيها كثافة سكانية عالية و هيكل اقتصادي مشابه لينا عشان ننفذ بروتوتايب واحد نقدر نجرب بيه فكرتنا في أماكن مختلفة في وقت واحد

    بدانا نشتغل بالتوازي على تطبيق اندرويد و شغل التسويق عن طريق إعلانات الفيسبوك و قدرنا نوصل ل بروتوتايب كويس في وقت قليل جاهز للنشر على متجر بلاي و زودنا دعم للغات مختلفة تغطي مجموعة الدول اللي كنا بنستهدفها زي اللغات العربية و الانجليزية و الفرنسية و التركية و الاوردو و غيرها ..

    مجرد ما رفعنا التطبيق قدرنا بميزانية تسويق محدودة جدا على Google و Facebook (اقل من الف دولار) نوصل لاكتر من الف داونلود و ٤٠٠ تسجيل مستخدم جديد و شفنا اهتمام من دول في الشرق الأوسط اكتر من مصر و خاصة شمال افريقيا و كان في البداية مؤشرات ايجابية كويسة زي انه كان بيوصل لنا كم كبير من الرسايل على صفحتنا مهتمين بالموضوع

    دقات الساعة

    دخلنا في الجد و المرحلة اللي بتنطلق فيها الفكرة من فكرة لبيزنس على أرض الواقع و اهم مؤشر كنا بنبص عليه هو عدد الشركات اللي سجلت في الموقع عشان تدور على توسع و مشتري و لكن للأسف ما قدرناش نحقق نمو في قاعدة بياناتنا

    بدأنا نحاول في كذا اتجاه زي اننا نعمل استطلاعات رأي على الفيسبوك أو اننا نعين موظف يكون مختص انه يتواصل مباشرة مع أصحاب البيزنس اللي ممكن يكونوا مهتمين

    بدأنا كمان نتواصل مع الرسايل الكتيرة اللي وصلت لينا سواء تليفونيا أو عن طريق الفيسبوك و لكن ظل حجم ردود الفعل بعد ما تواصلنا مع أصحاب الرسائل ضعيف و غير كافي انه يساعدنا نقدم في أي مسرع من مسرعات الشركات الناشئة و كانت نقطة ضعف قوية اننا مش قادرين نبين عدد كبير من المستخدمين في ملف التقديم لما قدمنا في كذا برنامج عشان تاخد الفكرة لقدام

    و طبعا بما اننا احنا الاتنين عندنا وظيفة رئيسية و مغامرة بيكويتي كانت بعد وقت العمل بدأ مخزون الطاقة و الحماس يقل تدريجيا مع قلة رد الفعل من السوق و مع الوقت بدأنا نتخلى عن محاولات التقديم المختلفة اللي عملناها ده غير طبعا أماكن تانية قدمنا فيها و اترفضنا للسبب اللي قلته قبل كدة

    الختام .. ايه اللي اتعلمته ؟

    من أهم الدروس اللي أنا شايفها مهمة انك دائما تعمل ال bootstrapping طالما تقدر على كل التاسكات المطلوبة للستارت اب بتاعتك ، ٩٩٪؜ من المشاريع و الأفكار الجديدة بتفشل و بالتالي للأسف مهما كانت شطارتك ف احتمالية الخسارة أقل من المكسب و في الحالة دي الخبطة هتكون أقل بكتير لو استثمرت مجهودك و وقتك ( و ده عن تجربة شخصية أخرى ممكن أكتب عنها مرة تانية) مقارنة بانك تغامر بفلوسك أو فلوس حد تاني و كمان إنك اكتر واحد عندك شغف لفكرتك و هتحاول توصل أعلى جودة تقدر عليها و اعتقد اننا كنا راضيين جدا عن البروتوتايب اللي اتنفذ في وقت قليل و بجودة كويسة

    من النقط اللي أنا شايف انها فرقت معانا اننا ما كانش عندنا علاقات في مجال ريادة الأعمال و ال fintech ، و في ظني لو عندنا شبكة كويسة كانت هتفرق معانا بشكل كبير و عشان كدة حاولنا نقدم في برامج ريادة أعمال مختلفة و ياسر التحق بمنحة لريادة الأعمال في المجال و لكن في النهاية يظل حكم السوق هو الحقيقة الأكيدة و السوق ما تفاعلش مع فكرتنا بالشكل اللي قدمناه

    من المشاكل التانية اللي انا شايف أنها كانت هتواجهنا لو حصل رد فعل قوي اننا ما كناش محددين استراتيجية واضحة لتحقيق الأرباح و كنا مركزين بشكل أساسي ننمو و نجمع أكبر عدد مستخدمين و لكن ما فكرناش بعد كدة في نموذج محدد للربح و كان عندنا تصور مبدأي اننا هنطبق فكرة ال freemium

    ختاما أقدر أقول انها كانت تجربة ممتعة جدا لمسنا فيها جوانب كتير جدا من المشروع على العكس من الشغل في شركة بيكون اكتر تخصصا و اتمنى لو الواحد يقدر يكررها تاني في مجال آخر مع فكرة تانية و يمكن التجارب الجاية تلاقي النجاح الكافي ، يمكن اللي كان ينقصنا أننا نشوف رد فعل كويس و نتواصل أكتر مع ناس مهتمة

    Sources

    اداة التقييم كانت مكونة من ٣ مكونات و الباك اند كانت ٢ منهم الجزء الأول كان ماتلاب مودل بيحسب قيمة البيزنس عن طريق مجموعة مدخلات و المكون التاني كان REST API للموديل معمولة عن طريق python flask و الفرونت بتاعنا كان تطبيق اندرويد بالنسبة لمكونات الباك اند ف رفعناها على GitHub برخصة Apache مفتوحة المصدر اللي بتتيح لأي حد مهتم يعيد استخدامهم

    https://github.com/Pequity-me/PequityIntrinsicValuation

    https://github.com/Pequity-me/pequity-rest