
خلاصه رزومه آقای جِیسون آربون: جیسون آربون مدیر عامل شرت Appdiff است، که تعرف جدیدی از چگونگی توسعه، تست و انتقال اپلیکیشنهای موبایلی در سازمانها با مقدارِ صفرِ کد و صفرِ تنظیماتِ مورد نیاز، ارائه کرده است. وی سابقا مدیریت مهندسی و تولید در Applause.com/uTest.com را عهدهدار بوده است، که ایجاد استراتژی برای تحویل تست جمعسپاریشده(Crowdsourcing) با استفاده از یک جامعه ۲۵۰٫۰۰۰+ نفری را رهبری میکرده است. همچنین وی سرویس App Store Data Analytic را نیز ایجاد کرده است. آقای آربون دارنده پستهای سرتیم مهندسی در گوگل، مایکروسافت، و نویسنده کتاب How Google Tests Software and App Quality: Secrets for Agile App بوده است.
مصاحبه پیش رو در تاریخ ۳۰ دسامبر ۲۰۱۶(۱۰ دی ماه ۱۳۹۵) با آقای جِیسون آربون(Jason Arbon) صورت گرفته است، که ترجمه آن در اینجا ارائه شده است. بعلاوه فیلم آن نیز در انتهای پست ضمیمه شده است.
خلاصه مصاحبه: در این مصاحبه، جیسون آربون مدیرعامل Appdiff، بهترین روش برای ایجاد استراتژی کیفیت اپلیکیشن موبایل را مورد کند و کاو قرار میدهد. خواه شما یک اپلیکیشن وب داشته باشید یا ترکیبی، و یا بومی، ایجاد یک استراتژی کیفی و تست به معنی دانستن این موضوع است که شما در چه دادهها و ابزارهایی برای اتخاذ تصمیمات Agile توامند هستید.
-خبرنگار: ما با یک مصاحبه مجازی دیگر در حاشیه کنفرانس STARWEST بازگشتیم. من خیلی خوشحالم [چون] جیسون یکی از افراد مورد علاقه من برای انجام مصاحبه است. به همین دلیل ما خیلی مسروریم که او را دوباره در این سال میبینیم. جیسون، خیلی خوشحالم که اینجا هستی.
-آربون: متشکرم. خیلی خوشحالم از اینکه شما را میبینم.
-خبرنگار: برای آن دست از افرادی که خارجِ اینجا هستند، میگویم که چرا خوشحال و هیجانزده هستم. جیسون شرکتی را به نام Appdiff ایجاد و کار آنرا آغاز کرده است. افرادی که نام این کمپانی را نشنیدهاند، باید گوش کنند که جیسون چه کاری انجام داده و اینکه این کمپانی چه کاری میکند، چون فوقالعاده است. اگر شما اپلیکیشنهایی موبایلی دارید که بیرون از اینجا آنرا برای سازمانتان اجرا کردهاید، جیسون شخصیتیست که باید از وجود او آگاه باشید و با او صحبت کنید. جیسون، ممکن است چشماندازی از Appdiff به ما ارائه بدهی.
-آربون: متشکرم. بله. ایجاد Appdiff واقعا کار سختی بود، اما استفاده از آن خیلی ساده است. در واقع ما در حال حاضر با دو تا از بزرگترین مشکلاتی که امروزه برنامههای موبایلی به آن دچار هستند، مقابله میکنیم. یکی از این مشکلات اندازهگیری Performance اپلیکیشنهاست. این کار واقعا مشکل است. اکثر افراد به سختی به این موضوع رسیدگی میکنند. کار بزرگی که آنها میخواهند انجام بدهند، سرعت بخشیدن به سیکلهای Agileشان میباشد. آنها بیشتر به Buildهایشان میپردازند تا اینکه قادر به ادارۀ آنها باشند.
کاری که ما انجام میدهیم این است که اساسا دستهای از روباتهای کوچکی که در Cloud زندگی میکنند ایجاد میکنیم. کاری که همه شما باید انجام دهید این است که اپلیکیشنهایتان را آپلود کنید، یا میتوانید به ما بگویید، که آن [اپلیکیشن] در App Store بوده و ما هم فقط با آن کار میکنیم. ما یک تحلیل کامل روی Performance اپلیکیشن شما انجام میدهیم و به شما میگوییم کندترین Pageها کجا هستند، و سریعترین Pageها کدام هستند. اساسا غذای آماده شده را در دهان شما میگذاریم. هیچ چارت و نموداری هم وجود ندارد. البته شما میتوانید این موارد را از ما بگیرید، اما ما بالواقع تصویری از کندترین قسمتهای اپلکیشنتان را به شما نشان میدهیم تا به این ترتیب افراد به فکر رفع مشکل محصول خود بیفتند.
در مرحله دوم، ما یک مجموعه اتوماتیک و عمومی از رگرسیون را انجام میدهیم. چیزی که اتفاق میافتد این است که روباتها هر چیزی را در اپلیکیشن شما دیده و آنرا رصد میکنند. ما بین ده تا سیهزار Data Point را به صورت میانگین برای هر Build بررسی میکنیم. اتفاق جادویی زمانی رخ میدهد که شما Build دوم را میدهید. در Build دوم هم همین کارها انجام میشود، و این بار روباتها همه چیز را از طریق اپلیکیشن شما اجرا میکنند. ما برای اینکه روباتها را به یک انسان که به هدفی و برای کلیک کردن چیزی هوشمند و نه کودن آمده است، شبیهتر کنیم، Machine Learning و چیزهایی فانتزی از این قبیل را انتخاب کردیم. این موضوع هنوز خیلی برجسته نیست، اما آنها خوب هستند. در واقع این [سیستم] یک کودک ۵ یا ۷ ساله است. این چیزیست که ما آنرا توصیف میکنیم.
-خبرنگار: بله. شما میتوانید کودکانتان را که این مسائل را تست میکنند، داشته باشید. گاهی اوقات آنها با تکنولوژی از بزرگسالان هوشمندتر هستند.
-آربون: درسته. نمیدانم. من آنرا با فرزندانم مقایسه میکنم. ممکن است اینچنین باشد.
-خبرنگار: فرزندان شما احتمالا پیشرفته هستند.
-آربون: نه. نمیدانم. نمیدانم. آنها در گیج کردن من و دزدیدن iPhone من پیشرفته هستند. در واقع ایده ما این است که عملیات از طریق دومین Build با همان روش و با ۱۰ تا سیهزار Data Point اجرا شود، و اینجاست که کاری متفاوت صورت میگیرد. نکته جالب این است که این [سیستم] به شما میگوید آیا چیزی در اپلیکیشن شما کندتر یا سریعتر شده است یا خیر. علاوه بر این اگر چیزی جدیدا اضافه شده است را نیز مییابد. بدترین چیز برای یک تستر یک Build جدید است که در صبح ایجاد میشود و شما نمیدانید آیا چیزی برای تست وجود دارد یا نه. آیا چیزی از دست رفته است. آنها[روباتها] نمیدانند رفتار درست چیست. من اداعا نمیکنم که آنها همه این مشکلات را حل میکنند. ماشینها در حال حاضر تمام دنیا را به دست نگرفتهاند[و نمیتوان از آنها انتظارات عجیب و غریب داشت]، اما حداقل کاری که میکنند این است که ظرف ۱۵ دقیقه بعد از ساخت یک Build موارد تغییر کرده را به تستر اطلاع میدهند.
-خبرنگار: درسته. این ابزار فقط نقشه راه را به آنها[تسترها] ارائه میدهد، درسته؟
-آربون: آره.
-خبرنگار: این یک نقشه راه برای تسترها و توسعهدهندههاست برای سرعت بخشیدن به زمانی که آنها برای تحلیل و پژوهش صرف میکنند.
-آربون: دقیقا. خجالتآورترین موضوع برای یک تستر این موضوع است که تستر یک یا دو روز بعد از اینکه Featureای که آنها[توسعه دهندهها] در سیستم درج کردهاند را تازه کشف کند.
-خبرنگار: دقیقا. پس این راهیست که شما را مطمئن میکند. نکته جالب دیگر درباره این موضوع مقدار زمان زیادیست که شما این Buildها را به دست میآورید، و قصد دارید به Build بعدی بروید، و زمانی برای پایان دادن به تست Build قدیمی ندارید. حالا شما قصد دارید بدانید کدام Build تغییر کرده، چرا که این ابزار میخواهد همین را به شما بگوید. شما نمیخواهید مجبور به گفتن چیزی شبیه به این باشید: “اوه. این دو یا سه Build قبل بود که چنین تغییری دَرِش اِعمال شده؟”
-آربون: درسته. در دنیای توسعهدهندگان جدید، اگر شما با یک CI System-Continuous Integration System کار کنید، جاییکه ما این تغییرات را در ۱۵ دقیقه به دست میآوریم، تسترها قادر خواهند بود چند دقیقه بعد این اطلاعات را مرور کنند. شما این[اطلاعات] را بدست میآورید. آنها میتوانند قبل از اینکه به ناهار بروند آنرا عودت دهند. ما این موضوع را سناریوی رفتن به ناهار(Go-To-Lunch) نامیدیم. شما میخواهید چیزهای مهمتری قبل از رفتن به ناهار یا شام بدست آورید.
-خبرنگار: بله. این واقعا فوقالعادست. شبیه این مشکلاتی را که با موبایل گفتی، همه ما میدانیم. زمان ما برای یافتن تغییرات کم است، اماهنگامیکه ما آنرا بیرون میدهیم، افراد این مسائل را فورا پیدا میکنند. ما میخواهیم قادر باشیم تغییرات آنها را با حداکثر سرعتِ ممکن بدست آوریم، اما با کیفیت خوب.
-آربون: دقیقا همینطور هست. تراژدی امروز… من گاهی اوقات دراماتیک هستم. تراژدی این است که همه ما افرادی واقعا هوشمند داریم که Test Case را دستی یا اتومات انجام میدهند، اما کارهایی که آنها برای تمام روز انجام میدهند را با وجود CI و CD- Continuous Development فرض کنید. آنها هر روز کارهای کوچکی را انجام میدهند.
-خبرنگار: هر روز، بارها و بارها.
-آربون: هر Buttonای روی Menu Item باید هر روز بررسی شود. در واقع رباتها فقط چیزهای پایهای را انجام میدهند. آنچنانکه افراد هوشمند واقعا میتوانند از مغزشان استفاده کرده و موارد سخت را پیدا کنند، کارهای پیچیده را انجام دهند، و یا کارهای مرتبط به Business[سیستم] را در یابند.
-خبرنگار: آیا شما در حال اجرای کار روی iOS، Android هستید؟ آیا این برنامه روی تمام آنها اجرا میشود؟
-آربون: آره. iOS و Android. آره. تمام OSها.
-خبرنگار: تمام OSها.
-آربون: زبانهای مختلف، سرعتهای مختلف شبکه.
-خبرنگار: وقتی با افرادی که در این رابطه چالش دارند صحبت میکنم یکی از چیزهایی که پررنگ میشود این است که، حتی اگر آنها iOS و Android داشته باشند، با نگاه، حس، و Navigation موجود در Android تصمیمگیری میکنند، که ممکن است به نسبت Navigation موجود در iOS متفاوت باشد. آنها به روال دستی بیشتر علاقه دارند، چرا که اگر تستهای اتومات را اجرا کنند، دو مجموعه اسکریپت که آنها نگهداری میکنند به دست خواهد آمد. بررسی هر دو دسته اسکریپت زمان زیادی از آنها میگیرد. به نظر شما، آنها این کار را دو بار باید انجام دهند. تسترهای دستی میتوانند آنرا برای هر یک از این دو iOS و Android چندین بار انجام دهند. شما میگویید این رباتها به شناسایی این موضوع کمک خواهند کرد. آنها میتوانند [به این مساله] ورود کنند.
-آربون: آنها Android را در مقابل Android مقایسه میکنند؛ شما یک Test Suite دارید. نکته جالب این است که شما حتی یک Test Suite برای مسائل اولیه ندارید. این فقط اجرا میشود. جالبترین چیز در این مورد، تست آمارتوریست. تست آماتوری آنجاییست که یک امکان جدید در اپلیکیشن وجود دارد. حتی اگر شما ندانید این امکان چی هست، باز هم میتوانید آنرا تست کنید.
-خبرنگار: چه عالی.
-آربون: تستهای رگرسیون سنتی، فراموش میکردند که شما باید همه چیز را بنویسید و اجرا کنید…
-خبرنگار: شما باید چیزی که وجود دارد را بدانید. این یعنی تشخیص چیزهایی که حتی وجود ندارند.
-آربون: شما باید بدانید چه چیزهایی وجود دارند تا آنها را بررسی کنید. این سیستم حتی چیزهای جدید در Build را تشخیص میدهد.
-خبرنگار: واو. چیزهایی که شما از وجود آنها اطلاع ندارید… این برای ما تسترها چیز خوبیست. ترس آنها در شب از اینکه چه چیزی را باید ادامه دهند[و اینکه مرتب از خود میپرسند]: “چه اتفاقی خواهد افتاد اگر ندانم چه چیزی رخ خواهد داد؟ چه چیزی از دست رفته است؟”
-آربون: آنها چیزهای گم شده هستند.
-خبرنگار: شما نمیتوانید بخوابید. احساسی که در شب دارید را میدانم. خیلی جالبه. میدانید چه چیزی واقعا جالب خواهد بود؟ اینکه من یک وبسایت دارم. چه میشود اگر من بخواهم این را روی وبسایتم اجرا کنم؟
-آربون: من در این باره به صورت رسمی صحبت نمیکنم. ما به صورت رسمی وب را پشتیبانی نمیکنیم، اما روی وب اجرا میشود. ما فقط روی اپلیکشنها متمرکز شدهایم. چرا که اپلیکیشنها مشکلات حادتری دارند. اگر من درباره وب صحبت کنم، احتمالا نمیتوانم رضایت غالب سرمایهگذاران را به دست آورم.
-خبرنگار: بله. این میتواند برای انجام، بسیار هیجان انگیز باشد. همانطور که شما هم گفتید، اکنون سرمایهگذارانی دارید. افرادی هستند که این موضوع را در نظر میگیرند، سازمانهای بزرگی وجود دارند که میدانند به آن نیاز دارند. قطعا برای بعضی از شما بینندگان که روی موبایل کار میکنید و خارج از اینجا به نظاره نشستهاید، و برخی از این چالشهای اولیه را که میدانیم هر کس با آن مواجه است، دارید، باید موضوع این جلسه را بررسی کنید. جیسون، آنها کجا میتوانند اطلاعاتی بیشتر بدست آورند، و کمپانی شما را پیدا کنند؟
-آربون: www.Appdiff.com . و من هم از طریق این آدرس: Jason@appdiff.com . دسترسی به من هم خیلی ساده هست، من در سالن سرگردان هستم، البته ما در این نمایشگاه یک تیم کوچک خوب هم بدست آوردهایم. ما امسال یک غرفه کوچک هم در نمایشگاه داریم. من حس میکنم [این نمایشگاه] خیلی حرفهایست.
-خبرنگار: بله. برای افرادیکه خارج از اینجا هستند، [باید بگویم] چیزهای خوبی برای بررسی وجود دارد، چیزهاییکه صاحبان سیستمهای موبایلی باید بدانند. جیسون [در صحبت] خیلی سریع پیش میرود، و نمیتوانم باور کنم که ما به آخر جلسه رسیدیم.
-آربون: بسیار عالی.
-خبرنگار: هر چیزی که تو دوست داشته باشی با دیگر افراد خارج از اینجا در دنیای مجازی به اشتراک بگذاری وجود دارد؟
-آربون: بله. بزرگترین موضوعی که مرا شگفت زده کرد، این بود که مردم این روزها تحلیلهای رقابتیتری انجام میدهند. تعداد زیادی از افرادی که من امروز با آنها کار میکنم، میگویند “فوقالعادست. شما میتوانید اپلیکیشن مرا اتومات کنید. فوقالعادست. شما میتوانید تمام متریکهای Performance را بدست آورید”. آنها خیلی هیجانزده هستند.
-خبرنگار: میخواهم درباره آنها بدانم.
-آربون: آنها میخواهند درباره رقبای خود اطلاعات داشته باشند، و آنها را بشناسند. چیز جالبی که ما انجام میدهیم این است که ما میتوانیم روی رقبای شما هم برنامه خود را اجرا کنیم، و میتوانیم این کار را به شکلی انجام دهیم که تفاوتها مشخص شود. ما میتوانیم بگوییم: “Functionality شما در مقابل Functionality دیگران، چه کسی سریعتر است و برنده/بازنده کی هست”.
-خبرنگار: عالیه. فوقالعادست.
-آربون: من فکر میکنم تحلیل رقابتی موج بعد از اتوماسیون باشد.
-خبرنگار: واقعا؟ حالا شما میخواهید بگویید: “بسیار خوب. من موضوعات را به ترتیب گرفتم، اما آنها چه میکنند؟” درسته؟
-آربون: شما چگونه در تیم خود ایجاد انگیزه میکنید، و همینطور چگونه خودتان را نشان میدهید؟ اگر شما واقعا سریع هستید به کل شرکت خود این موضوع را میگویید؟
-خبرنگار: این را بلند جار میزنید. درسته؟
-آربون: به آنها میگویم باگ نداریم، ما سریعتر هستیم و آرام و شاد باشید.
-خبرنگار: دقیقا. جیسون واقعا ازت متشکرم.
-آربون: خواهش میکنم. ممنونم، ملاقات با تو خیلی خوب بود.
-خبرنگار: جیسون و شرکتش را به خاطر داشته باشید. شما بچهها ناامید نمیشوید. جیسون مجددا از اینکه با ما بودی ازت متشکرم.
-آربون: ممنونم. قدر این آرزوی خوب را میدانیم.
-خبرنگار: بسیار عالی.
-آربون: بسیار خوب. دوباره شما را سال بعد میبینم. مطمئن هستم. خیلی هم خوب و متشکرم.
