روزنوشته‌های یک توسعه‌دهنده

پروژه‌ی دیتاکسیوم: ترک شبکه‌های اجتماعی به کمک بزرگان تاریخ

۲۴ دیدگاه‌ها

من طرفدار شبکه‌های اجتماعی نیستم. بارها در این مورد نوشتم، مثلا اینجا اینجا اینجا و اینجا.  ساختاری که این شبکه ها برای ایجاد اعتیاد در ما استفاده میکنند رو میشناختم و میخواستم با مهندسی معکوس از همون ساختار استفاده کنم تا ترک کردن این شبکه‌ها رو حداقل برای خودم راحت‌تر کنم.

نتیجه‌ی اون شد دیتاکسیوم. یه اپ اندرویدی که با استفاده گیمیفیکیشن فرایند عادتی که شبکه‌های اجتماعی بوجود می‌آرند رو میشکنه و کمک میکنه کمتر برای دست کشیدن از اون شبکه‌ها اذیت بشیم.

به زبون خیلی ساده، دیتاکسیوم یک ویجت کاملا شبیه به آیکون شبکه‌ی اجتماعی که شما میخواید ازش خلاص بشید روی صفحه‌ی اصلی‌تون میسازه اما با کلیک روی اون به جای وارد شدن به اون شبکه‌ وارد دیتاکسیوم میشید یه روتین کوچیک تقریبا اعتیاد آور انجام میدید و بعد رها میشید.جلوتر بیشتر توضیح میدم.

GIF

حقیقتش اینه که من مطلقا هیچگونه قصد بیزنسی در مورد دیتاکسیوم ندارم و جامعه استفاده کنندگانش رو زیر صد نفر در نظر گرفتم و خب خبر واضح اینه که رایگان و اپن سورسه، تبلیغات نداره و همچنین هیچ نیازی به مارکتینگ و تبلیغش نیست، اگر حس کردید کمکتون میکنه میتونید دانلود کنید و استفاده کنید.

انگیزه‌ی اصلیم در مورد انجام دادن پروژه بیشتر پیاده سازی  ۱)سیستم گیمیفیکیشن ساده و ۲) داشتن یک پروژه‌ی اپن سورس اندروید که از دگر۲ و ری‌اکتیوپروگرمینگ و تا احد امکان کامپوننت های جدید گوگل استفاده میکنه و تحت معماری ام وی پی نوشته شده تا برای مینی کورس‌هایی که احتمالا درباره‌ی این موضوعات درست خواهم کرد کمک دستم باشند.

در ادامه فرایند تولیدش رو توضیح میدم چرا که شفافیت پدرمادر همه‌ی خوبی‌هاست. به دو بخش تقسیمش میکنم، در بخش اول سیستم گیمیفیکیشنش رو میشکافم و در بخش دوم در این که از نظر فنی چه اتفاقی افتاده غور میکنیم. فکر میکنم خوندشون خالی از لطف نباشه.

دانلود دیتاکسیوم از بازار

مخزن دیتاکسیوم در گیتهاب


 

گیمیفیکیشن

سیستم بازی‌سازی خیلی از شبکه‌های اجتماعی ساده کار میکنه. در واقع پیاده‌سازی کمی پیچیده‌تری هست از همون چرخه‌ی عادتی که بارها صحبتش رو انجام دادیم.

تکنیک پومودورو و زنجیره عادت

چرخه‌ی عادت از سه بخش تشکیل شده:

۱)نشانه: شما آیکون توییتر رو میبینید و دلتون دوپامین توییت‌های جدید میخواد، شما آیکون اینستاگرام رو میبینید ودلتون اون نوتفیکیشن قرمز رو میخواد. شما میرید لب پنجره و دلتون سیگار میخواد. شما براتون یک سوال پیش میاد بلافاصله یاد گوگل میفتید. به این‌ها میگن نشانه، میتونه بیرونی باشه یا درونی، اکسترنال یا اینترنال.

۲) روتین: شما بعد از دیدن نشانه یک فعالیتی رو انجام میدید. اپ رو باز میکنید. در گوگل سرچ میکنید. پاکت سیگار رو برمیدارید و سیگار رو روشن میکنید و قس الی هذه.

۳) جایزه: نقطه‌ی کانونی داستان اینجاست. اونجا که تو ذهنتون دوپامین ترشح میشه بخاطر دیدن این که کراشتون تو توییتر ریتوییتون کرده یا لایک فلانی روی فلان عکس اینستاگرامتون(یا مثلا دوز دوپامین کامنت تو اینستاگرام یادمه بیشتر بود اون زمان که اکانت داشتم) یا مثلا اون حس آرامشی که نیکوتین سیگار میده. اینا همه پاداش هایی هستند که این چرخه رو کامل میکنند و اعتیاد ایجاد کنند.

اما خب شرکت‌های تکنولوژی خبیث‌تر از این هستند که به همین چرخه اکتفا کنند، و یکسری عناصردیگه به این چرخه اضافه میکنند تا مطمئن‌شن قلابشون طعمه رو گرفته.

۴)اولین و مهم‌ترین چیزی که به چرخه‌ی عادت اضافه میکنند، پیشبینی ناپذیر کردن جایزه هست. ظاهرا نه تنها ما بلکه تمام موجوداتی که تونستیم تو آزمایشگاه روشون آزمایش کنیم، به چرخه‌های تصادفی علاقه‌ی بیشتری نشون میدن به نسبت چرخه‌های قابل پیشبینی. شما هردفعه که اینستاگرام رو باز میکنید مطمئن نیستید که قراره جایزه بگیرید، ممکنه توییت کنید و هیچ انتراکشنی نبینید و اما همونقدر هم ممکنه که توییتی کنید و بیاید ببینید وایرال شده. همین باعث میشه به توییت کردن معتاد بشیم. این غیرقابل پیشبینی بودن هسته‌ی همون فرایندیه که قمار رو تبدیل به یک کار خطرناک و اعتیادآور میکنه وگرنه یه شرط بندی ریز که این حرفارو نداره.

۵) عنصر دیگه‌ای که به سرویس‌هاشون اضافه میکنند برای نگه داشتن ما، ایجاد کردن توهم سرمایه گذاری هست. با خودمون میگیم اوه من در توییتر هزارتا فالور دارم، تاحالا ده هزارتا توییت کردم چطوری میتونم ترکش کنم؟ من همه‌ی خاطرات سالهای گذشته‌م رو توی اینستاگرام ریختم چطوری ببندمش؟ { اینجور مواقع من خودم به این که در هرحال یه روز میمیرم فکر میکنم و این که هیچکس اونقدری که ممکنه توهمش رو داشته باشم در مورد من فکر نمیکنه و اهمیتی نمیده که فلان اکانتم رو پاک کنم یا نه}. کلید سرمایه گذاری اعداد هستن همون اعدادی که تحت عنوان فالوور، فالووینگ تعداد پست بالای هراکانت کنار عکس زیبای خودمون میبینیم.

۶) عنصر آخر هم مرتبط بودنه. شبکه‌های اجتماعی سعی میکنند به شخص خود ما مرتبط باشند، دوستانمون رو بهمون نشون بدند. اگر کسی چیزی درباره‌ی ما گفت سریع بهمون اطلاع بدند. ارجاع میدم به یک سکانس از فیلم سوشال نتورک فینچر، زاکربرگ (قبل از ساخت فیسبوک) میگه دنبال یک ایده‌ام که آدم‌ها رو به خودشون نشون بدم. آدم‌ها عاشق اینن که خودشون رو ببینند و بعد فیس‌مش رو میسازه.

 

پرانتز طولانی: مضرترین بخش چرخه‌ی عادت روتین هست. نه جایزه. کسی با آرامش بعد سیگار مشکلی نداره اما مشکل اصلی هزینه‌ای هست که بابت اون آرامش میدیم و ریه‌هامون رو داغون میکنیم. ترشح دوپامین تو مغز ضامن سلامت روانمونه اما ساعت‌ها وقت تلف کردن در اینستاگرامه که مضره.

خب پرحرفی بسه، دیتاکسیوم چطوری میخواد جلوی این فرایند پر خط و خال بایسته؟

بهترین راه ترک عادت، ول کردن ناگهانی اون یا ول کردن تدریجی اون نیست، بهترین راه ترک عادت اینه که نشانه و جایزه رو نگه داریم اما روتین رو عوض کنیم. این رو من نمیگم، این رو آقای چارلز داهیگ تو کتاب قدرت عادت میگه. بذارید بیشتر توضیح بدم.

اگر سیگاری هستید نشانه شما ممکنه سیری بعد ناهار باشه، اوکی مشکلی نداره اما به جای سیگار کشیدن روتین رو عوض کنید، برید چوب شور مصرف کنید(یه آرامش عجیبی به ادم دست میده بعدش:)

همه‌ی کاری که دیتاکسیوم انجام میده اینه که جای نشانه و پاداش میشینه اما روتین رو عوض میکنه.

۱)شما در ابتدا همونطوری که در گیف بالا میبینید یک ویجت شبیه به شبکه‌ی اجتماعی که میخواید ترکش کنید میسازید. این میشه نشانه. مغزتون گوشی رو آنلاک میکنه میخواد تلگرام رو چک کنه. رو آیکون تلگرام کلیک میکنه و میره تو یک اپ دیگه.

۲)فرایند تو دیتاکسیوم خیلی شبیه به شبکه‌های اجتماعیه، هردفعه که شما اپ رو باز میکنید تعداد غیرقابل پیشبینی نوتفیکیشن دارید، این نوتفیکیشن‌ها تعداد شانس‌های شما هستند برای انجام یک بازی کوچیک. بازی چی هست؟ کلیک کردن روی یک انیمیشن.

Screenshot from 2017-12-03 07-00-45Screenshot from 2017-12-03 07-01-29

۳)وقتی روی دکمه کلیک میکنید دوتا اتفاق میفته، بسته به شانس یا تلاشتون ناموفقه که صفحه قرمز میشه و ازتون میخواد که دوباره تلاش کنید و یا تلاش موفقیت آمیزه که وصل میشه به سرور و جایزه‌تون که یک گفتار از یکی از بزرگان تاریخ هست رو براتون نمایش میده:)

(صفحه سبز میشه، ویبره میزنه و بعد باتوم شیت میاد بالا از اون پایین)

Screenshot from 2017-12-03 07-02-44

خب، تقریبا ساده بود، شما نشانه دیدید روتین انجام دادید و پاداش گرفتید در کمتر از یک دقیقه(همین فرایند در توییتر یا اینستاگرام میتونن تا ساعت‌ها طول بشن)

ما تا اینجا چهارتا از عناصر گیمیفیکیشن رو پیاده کردیم، نشانه(لوگو)، روتین(بازی ساده با انیمیشن)، پاداش (ویبره،سبز شدن صفحه و گرفتن گفتار)، غیرقابل پیشبینی بودن (تعداد شانس‌های بازی و موفق بودنشون برتوابع رندوم بنا شده).

 

میمونه بخش سرمایه گذاری. آیا یوزر میتونه اینجا سرمایه گذاری کنه؟  تقریبا. در بخش آرشیو زمان به یوزر تعداد بارهایی که دیتاکسیوم رو به جای هر اپ باز کرده رو نشون میدیم و محاسبه میکنیم اگر اون اپها رو باز کرده بود چقدر از وقتش تلف شده بود و الان چقدر ذخیره کرده(زیاد دقیق نیست). و در بخش آرشیو کلام هم گفتارهایی که یوزر بدست آورده و براش جذاب هست رو ذخیره کردیم که میتونه اونها رو مدیریت کنه(در یک اپ که واقعا قراره پول دربیاره مشخصا نیاز به لنگرهای محکم‌تری داریم اما فعلا همین برای ما کفایت میکنه)

7

در نهایت فوت کوزه‌گری هم این که، اگر فرایند گیمیفیکیشن طراحی میکنیم یادمون باشه که یوزر باید جایزه‌های اولیه‌ش رو خیلی سریع بگیره و پابند بشه توی اپ. پس اولین تلاش‌ها همیشه باید موفقیت آمیز باشند. میگن قماربازهای حرفه‌ای وقتی میبینن یه نوب اومده سر میز، میذارن دست اول رو ببره 🙂

دو نکته:

الف) یکی از مهمترین بخش‌های گیمیفیکیشن رو پیاده نکردیم. شخصی سازی و ارتباط داشتن. یوزر در اپ ما چیزی که مستقیما مرتبط به خودش باشه نمیبینه(مگه این که یهو نیچه  برگرده مستقیم باهاش صحبت کنه:) )  و همین باعث میشه اعتیادی براش ایجاد نشه. دوتا دلیل داره پیاده نشدن این موضوع تو اپ. یک) راه حل ساده‌ای براش پیدا نکردم و پیاده کردنش غیرمنطقی میکرد تولید اپ رو ۲) نمیخوایم که یوزر واقعا معتاد شه، میخوایم از شر این بلای خانمان سوز راحت شه:)

ب) یادآوری دوباره درباره‌ی این که این اپی نیست که به قصد منافع مستقیم تولید شده باشه و هدف اصلی پیاده سازی یه سری چیزا بوده که تو ذهن خودم بوده لذا اگر فرایند در شان یک سرویس واقعی نیست بر من ببخشایید.


فنی:

 

برای دپندنسی اینجکشن از دگر۲ استفاده کردم، فورک گوگل:). نظر شخصیم؟ به عنوان کسی که علاقه‌ی زیادی داره روی هرچیزی یه لایه ابسترکت بکشه و زیاد درباره‌ی معماری فکر کنه دگر رو دوست دارم اما واقع گرایانه اگر نگاه کنیم زیادی بویلرپلیت داره و پیاده‌سازی این پترن میتونه ساده‌تر هم باشه. ایشاا… که آقای جیک وارتون بعدا یه فکر میکنه براش:))

دونکته درباره‌ی دگر.

یک) چون تو پکیج di یه زیرمجموعه به اسم اسکوپ دارم گفتم شاید بد نباشه توضیح بدم که چرا از سینگلتون استفاده نکردم.تو سمپلهای اوپن سورس داخلی که از پیاده سازی دگر دیدم دیدم که @Singleton رو به اشتباه به جای اسکوپ ها واقعی استفاده میکنند. این کار اشتباهه چون سینگلتون یه‌دونه ابجکت در سطح اپلیکیشن ایجاد میکنه و نه اکتیویتی و فرگمنت و همین پتانسیل مموری لیک داره، بهتره که برای هراکتیویتی یا فرگمنتمون و دپندنسی‌هاشون اسکوپ های جداگانه ایجاد کنیم. احتمالا ویدیو در مورد دگر ضبط کنم و اونجا جزئیات رو توضیح بدم ولی خب ساده ست در کل به همون پکیج di میشه رجوع کرد.

 

دو) من بدلیل تسلط پایینم به دگر یه اشتباه تو پیاده سازیش انجام دادم(یا حداقل فکر میکنم که اشتباهه)‌ تقریبا برای هر اکتیویتی و فرگمنت یه کامپوننت جدا ساختم(چون حداقل به یه پرزنتر اختصاصی وابستگی دارن هرکدومشون) تنبلی کردم و روش بهتری رو نگشتم پیدا کنم اما فکر میکنم ساب کامپوننت ها روال باشن برای این هدف. میذارم تو لیست تودو‌های رپو. پول رکوئست را روی چشممان میگذاریم:).

 

برای ویو اینجکشن از باترنایف استفاده کردم که چیز عجیبی نیست.

 

برای نتورک از رتروفیت استفاده کردم، احمد طهانی یه دوره‌ی خوب تو فرانش درباره‌ی رتروفیت داره اگر یاد ندارید میتونید بهش رجوع کنید. چرا رتروفیت؟ به نظرم حتا خود گوگل هم والی رو رها کرده و خب چه کاریه کاسه‌ی داغ‌تر از آش بشیم؟

 

برای دیتابیس از کامپوننت روم که گوگل جدیدا معرفی کرده استفاده کردم. خیلی چیز بامزه و راه دستیه. مثل او آر ام های دیگه ست تقریبا و نکته‌ی پیچیده‌ای نداشت واقعا جز این که حین ساخت اپ کامپوننت ها از حالت آزمایشی دراومدن و نسخه‌ی یک‌شون ریلیز شد و منم گریلدم رو اپدیت کردم همین:).

 

وسط پروژه البته اندروید استودیو و گردل رو هم اپدیت کردم که مشکل خاصی بوجود نیاورد. ضمنا از جاوا ورژن هشت واقعی هم اندروید استودیو پشتیبانی میکنه و من پروژه رو اپدیت کردم که ازش استفاده کنی. کلی لامبدا و اینا ریختم تو کدا بعدش :)))

 

از RxJava RxAndroid & RxBinding استفاده کردم. در واقع نظر شخصیم اینه که استفاده از این عزیزان برای دیتاکسیوم Overengineering هست اما برای مقاصد آموزشی ازشون استفاده کردم. خیلی خیلی باحالن، اصلا هم سخت نیستند، و اگر قسمت باشه یه ویدیو نه چندان بلند درموردشون ضبط میکنم. (متاسفانه حجم اپ رو حدود یک مگابایت افزایش دادند این دوستان، منطقی بود که حذفشون کنم وقتی استفاده‌ی چندانی نداشتند اما دلم نیومد، بخاطر تقریبا ۴ مگابایتی بودن apk من رو مقصر ندونید خیلی از بهینه‌سازی‌های معقول رو انجام دادم روش)

 

معماری هم که از یه نوع من تقریبا من درآوردی از ام وی پی رو پیاده کردم، اول این رو بگم که پکیج بندی رو بر اساس فیچر انجام دادم که به نظرم معقول‌تر از پکیج بندی بر اساس نوع فایلهاست ( تو مدیوم یکی نوشته بود این که فایلها چون از یه نوعند رو بذاری توی یک پکیج مثل اینه که تو شرکت برنامه نویس ها و دیزاینر ها رو بذاری تو تیم های جدا چون نوعشون فرق میکنه)

برای هر فرگمنت و اکتیویتی یک اینترفیس کانترکت تعریف کردم. که توش برای ویو و پرزنتر و اینتراکتور اینترفیس‌های جدا تعریف شده.

مطلقا هیچ چیز اندرویدی تو پرزنتر نیست و همچنین تا جایی که شد بیزنس لاجیک رو نریختم تو ویو ها. کجاش من درآوردیه؟ این که برای هر فرگمنت یه اینتراکتور جدا تعریف کردم. اساسا ایده‌ی اینتراکتور تک مسئولیتی بودن هست اما اینجا به نظرم اینجوری کارآمدتر میومد:))

بیزنس لاجیک ها همه تو اینتراکتورها هستند، و فقط و فقط اینتراکتورها هستند که با دیتا کار میکنند حتا اگر این دیتا شیردپرفرنس باشد:).

روش‌های باحالتری هستند مثلا جدا کردن مدل و ویو در سطح ماژول که احتمالا برای اپ‌های بعدی از اون‌ها استفاده کنم اما همین هم تجربه‌ی بدی نشد:).


دو تشکر:

برای گرفتن گفتارها از api سایت قصارها استفاده کردم. قصارها یک دایرکتوری گفتار بزرگانه که یحیی ساخته. جالب بود چون دنبال ای پی آی برای چنین منظوری میگشتم به یحیی گفتم نمیشناسی؟ گفت خودم یه پروژه دارم اینطوری:). ای پی آیش پابلیک نیست و اگر دوست داشتید استفاده کنید، میتونید به یحیی ایمیل بدید:)

برای فونت اپلیکیشن‌هم از فونت آزاد و زیبای  “وزیر” صالح راستی کردار استفاده کردم.



برچسب‌ها:

دیدگاه‌ها

  1. مهدی می‌گه:

    Hi my dear sadra. I just made my first fork and pull request in your project. It feels good. It was not sth important, but FIRST FORK AND PULL REQUEST was a big step for me. I will help in this project. Maybe I write tests for it. thank you for this project. And if you are from mashhad too, and if you feel like to meet, it will be a pleasure. Have a good time.

    1. Sadra می‌گه:

      ممنون مهدی جان
      مرج کردم رکوئست هات رو:)) اگه تست بنویسی که فوق العاده میشه.
      آره من مشهدم فعلا. اتفاقا چند روز پیش یکی از دوستان رو دیدم، خواستی قرار بذاریم ایمیل بده هماهنگ میکنیم.

      1. مهدی می‌گه:

        باشه حتما. الان زیادی شلوغم. حتما باهات هماهنگ میکنم. اره چک کردم دیدم مرج کردی:-D حس خوبی هم داره مرج شدن پول ریوکویست ها:))))) موفق باشی صدرا جان

  2. ادریس می‌گه:

    سلام صدرا جان.
    خوشبختانه یا متاسفانه من گوشی هوشمند ندارم و این اپ به دردم نمی‌خوره.
    البته اگه نسخه‌ی دسکتاپش رو بتونی درست کنی، یا حداقل توی کروم بشه اجراش کرد، برای یه سری سایت‌ها از جمله sadraa.me لازمم می‌شه. (باورت می‌شه توی فیدلی وقتی می‌بینمت دوپامین رو حس می‌کنم؟ اینو چند وقت پیش متوجه شدم و برام خیلی جالب بود.)

    خیلی جالب می‌شه اگه چنین ایده‌هایی بتونن تجاری بشن، حتی با قیمت‌های بالا و برای تعداد اندکی آدم هم اگه تجاری بشن جای امیدواری هست.

    (این بخش رو پاک کن:
    فکر کنم قس علی هذا درست‌تر باشه از قص الی هذا، دو سه بار چشم‌پوشی کردم، این سه یا چهارمین بار بود :)‌ )

    1. Sadra می‌گه:

      قربونت برم عزیزم. بیا همو ببینیم دل تنگتم.
      من روی فایرفاکس از یه افزونه ی مشابه استفاده میکنم:)redirector یا یه همچین چیزی هستش فکر کنم.
      تجاری هم میگم همونطور که توضیح دادم، بیشتر قصد داشتم یه اپ این شکلی از نظر فنی داشته باشم که بعدا بتونم تو کورسی چیزی میسازم بهش ارجاع بدم. بیشتریا یه اپ سمپل معمولی میسازن برای این کار من گفتم یه واقعیش رو بسازیم حالا چه کاریه:))

      این یارو که میگی رو من یادمه اولین باری که نوشتم هم رفتم سرچش کردم:))) باشه چشم. باز نگاه میکنم اگر غلط بود اصلاح میکنم. :*

  3. روح اله می‌گه:

    خواهشا یه مدتم فنی بنویس بخونیم یا فیلم تهیه کن همونطور که قول ۱۰۰ ٪ دادی 🙂 بخصوص از اینایی که نوشتی. غیر فنی ها رو تا ته نمیشه خوند.
    راجب دسترسی ها هم برای عموم توضیحی بده، قبل از اینکه هکر مربوط بیاد افشاگری کنه (صرفاً جهت اینکه زیاد تو شبکه های اجتماعی حضور ندارید: اشاره به ماجرای فیلم بررسی دسترسی های نسخه اندروید اسنپ توسط یک هکر قدرمتند).

    1. Sadra می‌گه:

      نه اقا اون ویدیوی هکر عزیز رو دیدم اتفاقا، من نمیتونم اونقدر حرفه ای باشم واقعا:))))))))))))))))))
      این دسترسی ها تقصیر سرویس پوشه ست، ران تایم پرمیژن میگیره و من فکر کردم دسترسی های مانیفستش رو پاک کنم کفایت میکنه واقعا با بی دقتی و عجله ریلیز کردم. حذفشون میکنم تو اپدیت بعدی.

  4. سیامک می‌گه:

    خیلی ایده ی جالبیه من قبلا یکی از پستاتون رو خوندم و بعد اون تصمیم گرفتم اینستاگرام رو حذف کنم..الانم این اپ رو برا تلگرام بنصبم که یکم استفادم کمتر شه 🙂

    1. Sadra می‌گه:

      ممنون از فیدبکت سیامک جان 🙂

  5. fanboy می‌گه:

    صدرا صدرا صدرا هی صدرا صدرا هی ….

  6. محمدط می‌گه:

    سلام صدراخان.
    من یکی خیلی استفاده کردم از مقاله ی زیبا و مفیدت.
    خیلی موضوع خوبی رو مطرح کردی؛ برای من هم این قضیه سرگردانی توی شبکه های اجتماعی به خصوص اینستاگرام قبلترها اتفاق افتاده(الان خداروشکر دیگه حواسم هست)؛ بعضی وقت ها می خواستم که ۱۰ دقیقه گشت بزنم اما بعد از ی تایمی که دیدم مچم خیلی درد گرفته و چشم هامم همینطور متوجه شدم که ۵۰ دقیقه است که دارم از این صفحه و به اون صفحه میرم و این رو لایک میکنم و اون رو نه!
    البته ی نکته هم در انتهای این وقت گذرانی هست که حداقل در من بوجود میاد، اینه که بعدش به شدت از وقتی که تلف کردم متاسف میشم و از خودم بدم میاد و بعدش به خودم قول میدم که دیگه همچین کاری نکنم.!
    به نظر من اتلاف وقت مهمترین ایراد این سوشیال مدیا است. البته برای کسی که این نکته براش مهم باشه، و متوجه این اتلاف باشه.
    الان جدیدا تلگرام هم به این چرخه اضافه شده؛ دیدم بعضیا رو که شاید نیم ساعت توی تلگرام هستند و پروفایل بقیه چه مخاطبهاشون و چه توی گروه ها رو چک میکنن!!!
    یک جا باید به این چرخه پایان داد؛
    بازم از مقاله خوبت که نکته ای رو گوشزد کرد ممنونم.

    1. Sadra می‌گه:

      خواهش میکنم محمدجان.

  7. […] کسی که خیلی به این موضوع اهمیت میده، درباره‌ش نوشته، حداقل تلاشش رو  انجام داده و انتخاب شخصی کرده، به نظرم ما این جنگ رو […]

  8. آتنا می‌گه:

    برای اتصال اندروید استودیو به گیت هاب از پلاگین خاصی استفاده میکنی؟ یا از گیت سنتی؟
    برای اتصال اکلیپس به گیت پلاگین egit وجود داره ولی گاهی اذیت میکنه. کلا کدوم رو توصیه میکنی؟ کار با گیت سنتی یا استفاده از پلاگین های مبتنی بر IDE ؟

    1. صدرا می‌گه:

      سلام
      کلا از ترمینال.
      اولا که ایکیلیپس چیه دختر خوب، به قول یکی از دوستان خود دولوپرای ایکیلیپس هم ادیتور اصلی شون یه چیز دیگه ست:)). خیلی سریع و تمام قدرت سویچ کن به اندروید استودیو. امیدوارم زندگیت رو نجات بده این نصیحت.

      اونم اسمش گیت سنتی نیست:)) اسمش روش اصلیه:)) کلا روش اصلی همه کارها استفاده از ترمیناله. هر بار که یکی برای گیت یوزر اینترفیس میسازه یه لینوس توروالدز میمیره. از روش “اصلی” استفاده کن.

      1. آتنا می‌گه:

        اون زمان که اندروید استودیو نبود من از اکلیپس استفاده میکردم. دیگه حوصله سوییچ نداشتم. الان حدودا یک سالی میشه اپ اندورید نساختم. و باز به خاطر همون عادت pydev نصب کردم و پایتون هم با اکلیپس کد می زنم 😀 تنبلیه و هزار درد 😀

        1. صدرا می‌گه:

          نکن این کارارو تورو خدا. ای کلیپس آخه. پایتون به نظر من ای دی ای لازم نداره بیارو ادیتورا. حالا یا اتم یا وی اس کد. بی شوخی. اصل اول برنامه نویس بودن و اینا اینه که از تغییر نترسی و در آغوش بکشی.

          1. آتنا می‌گه:

            قبول دارم. البته دیگه فوت و فن اکلیپس اومده دستم و زیاد اذیتم نمیکنه ولی خب بحث سرعت و اینارو قبول دارم. پروژه پایتونی که روش کار می کنم سنگینه. ادیتور اذیتم می کنه. دائما نیازه سورس ماژول هایی که استفاده می کنم ببینم و کدم رو trace کنم. ادیتور جواب نمیده 😉 😀 وقتم هدر میره. حتی jupyter هم جوابگو نبود. حداقلش کنترل اسپیس و برک پوینته که نیازم میشه…

          2. صدرا می‌گه:

            تو وی اس کد همه اینایی که گفتیرو میشه انجام داد:)) ترجیحا ایمیل بده، بیشتر بتونیم صحبت کنیم.کنجکاو شدم.

          3. آتنا می‌گه:

            البته اتم هم ادیتور محض نیست. داره این ابزار رو.
            چرا اکلیپس رو نمی پسندی؟ برام جالب بود دلایلت رو بدونم

    2. عباس می‌گه:

      بنظرم برای کامیت ساده و معمولی همون رابط کاربری اندروید استودیو برای استفاده از GIT خوبه (نیاز به نصب پلاگین نیست و خودش پیشفرض داره) ولی خیلی خیلی بهتر از اون gitkraken هس که زندگی رو زیبا میکنه. البته بالاخره گاهی پیش میاد که آدم به خطایی گیر میکنه که بهترین راه در این مواقع استفاده از همون ترمینال (راه اصلی یا راه سنتی یا …) هس.

  9. عباس می‌گه:

    در رابطه با بخش غیر فنی که خیلی خیلی عالی بود😀من همیشه بلاگتو میخونم و در بیشتر موارد نظرم اینه که مطلبت “خیلی خیلی عالیه”، در نتیجه دیگه هر پست نمیام کامنت بذارم بگم عالیه. الکی بخش کامنت‌ها شلوغ میشه، شما نگفته از من قبول کن😀

    در رابطه با بخش فنی، بخصوص با دگر۲ من خیلی با روشی که استفاده کردی موافق نیستم، بحثش توی کامنت سخته، اگر خواستی بیا بیشتر صحبت کنیم که یا تو منو توجیه میکنی یا من تو رو😀

    1. صدرا می‌گه:

      خیلی ممنونم ازت عباس جان. همیشه لطف داری به من.
      در مورد دگر اصلا من خودم دارم میگم اشتباهه کارم :))). الان یه روش بهتر خوندم هنوز فرصت پیاده سازی پیدا نکردم. ضمنا من یک شنبه میام تهران تا اخر هفته هستم احتمالا با کلی از بچه ها قرار گذاشتم:)) اگر مایل باشی هم روببنیم یا هرچی هم که کلی خوشحال میشم:))

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *