اولین آنالیز طوفان توییتری و هشتگ توسط من و توسعه نرم افزار Barandazstorm

اولین آنالیز طوفان توییتری و هشتگ #ProtestAgainstNIACتولید شده توسط نرم‌افزار Barandazstorm

اولین آنالیز طوفان توییتری و هشتگ #ProtestAgainstNIACتولید شده توسط نرم‌افزار Barandazstorm

به روز رسانی [۳۱ تیرماه ۱۳۹۸]: خانم مانا مستطابی مدیر ارتباطات نایاک گزارش ارسالی از سوی توییتر برای جعفر گلبرگ مبنی بر تخلف و ساسپند شدن اکانت به دلیل سواستفاده از پلتفرم توییتر را در پروفایل توییتر خود منتشر نموده است. سوال اینجاست که گزارش ارسالی از سوی توییتر برای جعفر گلبرگ مبنی بر تخلف و ساسپند شدن، دست مدیر ارتباطات نایاک چه می کند؟ آیا توییتر به خانم مانا مستطابی رونوشت زده است؟

برای کاربران توییتر فارسی نام #جعفر_گلبرگ با نام واقعی Geoff Golberg، معادل با گراف‌های رنگارنگ و کلمه بات یا ربات می‌باشد. از طرفی او کاربران شرکت کننده در طوفان‌های توییتری را بات می‌خواند و از طرف دیگر برخی کاربران معتقدند که او عامل نایاک یا جمهوری اسلامی است. قضیه زمانی جالب‌تر می‌شود که او با سعی در بامزه جلوه دادن خود، خود را آیت الله جعفر یا ده برابر ملا (10x Mullah) می‌نامد.حتی جالب‌تر اینکه در لیست بات‌های منتشر شده او نام دونالد ترامپ و مایک پومپئو نیز به چشم می‌خورد.

ناگفته نماند که او به دعوت #آیت_الله_بی_بی_سی به عنوان کارشناس در این رسانه نیز ظاهر شده است.

با توجه به جنجال‌های فوق، افسانه‌ای در مورد او رواج گرفته که او را یک دانشمند کلان داده یا بیگ دیتا سرشناس جلوه می‌دهد تا آنجا که او در بیو توییترش ماموریتش را Trying to unfuck social media نامیده است.

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

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

سوال بسیار خوب و بجایی است؛ دلایل من به شرح ذیل می‌باشند:

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

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

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

۲. دریافت داده‌های توییت‌ها در قالب JSON.

۳. ذخیره آن‌ها در پایگاه داده‌ای مانند PostgreSQL با قابلیت پشتیبانی از JSON و JSONB

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

۵. نوشتن این داده ها در قالبی پرتابل مانند Graph Modelling Language یا به اختصار GML.

۶. گشودن فایل خروجی GML در نرم‌افزارهای تخصصی و منبع باز ترسیم گراف مانند Gephi، Cytoscape و …، سپس انجام تنظیمات درست بر روی گراف.

۷. رندر و گرفتن خروجی در قالب‌های تصویری نظیر PNG و یا SVG.

حالا، پس از اشاره کلی به مراحل و چالش‌های فنی انجام این کار، اجازه دهید رازی را برایتان افشا سازم. به منظور رسیدن به گراف فوق حتی نیاز به طی این مراحل نیز نخواهید داشت. به عنوان نمونه، یک قالب برای نرم افزار اکسل مایکروسافت به نام NodeXL وجود دارد که پس از نصب آن بر روی اکسل، فقط با یک کلیک می‌توانید کل توییت‌های مربوط به یک هشتگ را دریافت نموده، سپس با یک کلیک دیگر آن را در قالب GML برای استفاده در Gephi یا Cytoscape صادر نمایید (البته در نسخه رایگان تعداد توییت ها محدود است و امکان خروجی گرفتن به GML را ندارند). تبریک! شما بدون حتی یک خط کد نوشتن می‌توانید خود را دانشمند بیگ دیتا بنامید!

در پایان می توانید فایل با کیفیت آنالیز انجام شده برای هشتگ و طوفان توییتری #ProtestAgainstNIAC را دریافت نمایید:

نسخه بسیار با کیفیت تر از اولین آنالیز طوفان توییتری و هشتگ #ProtestAgainstNIACتولید شده توسط نرم‌افزار Barandazstorm

نسخه بسیار با کیفیت تر از اولین آنالیز طوفان توییتری و هشتگ #ProtestAgainstNIACتولید شده توسط نرم‌افزار Barandazstorm