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

دوتا از دوستام باهم قهر کرده بودن، با یه اسکریپت ۴۰ خطی آشتی‌شون دادم:)

۱۴ دیدگاه‌ها

جادی عزیز، قبلترها یه مجموعه نوشته‌ای داشت با عنوان “چرا گنو/لینوکس را دوست دارم؟” و در اون ها به این میپرداخت که بعضی مشکلات رو در محیط لینوکس چقدر ساده‌تر میشه حل کرد به نسبت ویندوز یا هرچی. این نوشته هم با الهام از همون نوشته‌ها نوشته شده:).

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

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

راه حل اول این بود که به رفیقم بگو ۲۴ ساعت کامل بشین پای لپتاب و تایپ کن و امیدوار باش که بالاخره ببینه و راه حل دوم این بود که یه اسکریپت بنویسیم تا این کار رو برای ما انجام بده.

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

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

 

GIF

 

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

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

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

دیشب صدای تیشه از بیستون نیامد

شاید به خواب شیرین فرهاد رفته باشد:)

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

پی نوشت: ترجیحا مردم آزاری نکنیم:).



برچسب‌ها:

دیدگاه‌ها

  1. نجمه می‌گه:

    اینجور وقتا آدم دلش میخواد بگه : اَی …..بوقققق.. حیف که آبرو حیثیت دست آدمو می بنده! هدر نری مادر جان

    1. sadra می‌گه:

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

  2. نجمه عزیزی می‌گه:

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

  3. علی زینلی می‌گه:

    خیلی خوبه، تفکرات برنامه‌نویسی گاهی می‌تونه ۲ نفر رو بهم برسونه 😁، اگر کسی خواست در ویندوز هم اینکار رو بکنه میتونه از نرم‌افزار های mouse and keyboard recorder استفاده کنه و به مدّت زمان || تعداد مورد نظرش تکرار کنه این اتفّاق رو، حتّی سرعت تایپ خودش رو به صورت مصنوعی ببره بالا یا مثل همین اسکریپت بین هر بار انجامش یه مدّت زمان خاصی رو وقفه بده

    1. sadra می‌گه:

      ممنون عزیزم:) مرگ بر ویندوز 😉

      1. sadra می‌گه:

        من اول نوتفیکیشن رو روگوشیم دیدم فکر کردم تویی:))

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

    هک قشنگی بود. خوشم اومد

  5. نیما می‌گه:

    سلام
    میشه به یه نفر که دانش برنامه نویسی نداره بگید چطور اجرا میشه؟:))

    1. sadra می‌گه:

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

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

        مرسی صدرا جان.
        چشم

  6. مهشید می‌گه:

    سلام؛ بنویس دیگه صدرای عزیز هر چند کوتاه…

  7. استعداد خوبی داری برای مخ زنی :)))))) توصیف عکس پروفایل آخه؟ :))

پاسخ دهید

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