به تماشای نبرد تایتانها خوش آمدید! در این متن میخواهیم دو زبان برنامهنویسی محبوب بین دیتاژورنالیستها را به شما نشان دهیم و آنها را باهم مقایسه کنیم: R و Python
در این متن به شباهتهای این دو زبان میپردازیم و اینکه آیا امکان تسلط به هر دو زبان وجود دارد یا خیر. هدف این گزارش، آموزش یا بیان نمونه مثال برای زبانهای برنامهنویسی نیست. زبان برنامهنویسی را در متنهای آینده آموزش خواهیم داد. درعوض در این متن میخواهیم مقایسه مفیدی بین این دو ابزار داشته باشیم. اگر میخواهید مهارتهای برنامه نویسی خود را بالا ببرید در این متن توصیههایی برای شما داریم. همچنین ممکن است شما به یک زبان برنامهنویسی مسلط باشید اما ندانید با زبان دیگر میشود چه کارهایی انجام داد. این متن میتواند شما را راهنمایی کند.
آیا مهارت کدنویسی برای یک دیتاژورنالیست ضروری است؟
بیایید با این سوال شروع کنیم که: چرا یک خبرنگار داده باید نحوه کدنویسی را بداند؟
چندین مزیت بزرگ در یادگیری این مهارت وجود دارد که بزرگترین آنها این است که مهارت برنامهنویسی میتواند انواع پروژههایی که میتوانید انجام دهید را گسترش دهد. شما میتوانید در گروه روزنامهنگارهایی باشید که مجموعه کامل دادهها را دانلود میکنند، در Excel بارگذاری میکنند و با ابزارهای خاص با آنها کار میکنند. میتوانید با استفاده از Datawrapper و Tableau آن دادهها را تصویرسازی کنید و گرافیکهای مختلفی ایجاد کنید. این نرمافزارها میتوانند کار شما را آسانتر کنند و شما را از شکار خطاهای کدنویسی نجات دهند.
با این حال کدنویسی میتواند بسیار قدرتمند باشد و در مقایسه با نرمافزار به شما نوعی کنترل و آزادی بینظیر بدهد.
پس کدنویسی چه چیزی به ما ارائه میدهد که نرم افزار نمیتواند؟
پاسخ این سوال از پروژهای به پروژه دیگر فرق میکند. پروژهها معمولاً در چهار مرحله انجام میشوند: کامپایل (جمعآوری)، پاکسازی، تصویرسازی و انتشار.
کامپایل دادهها
هرزمان که دادههای گزارش شما فورا در دسترس قرار ندارد باید آنها را جمع آوری کنید. این فرایند را میتوان با کدگذاری بسیار آسان کرد. مانند استخراج دادهها از وب یا از طریق API. چه درحال ساخت یک کاوشگر –Crawler- برای جمعآوری دادهها از صفحات وب باشید چه درحال جمعآوری دادهها از توییتر یا بانک جهانی، کدنویسی میتواند به شما کمک کند تا برخی موانع معمولی برای دسترسی به دادهها را دور بزنید. شما میتوانید دادههایی را که به راحتی در دسترس نیستند جمعآوری کنید و البته زمان این جمعآوری را کاهش دهید.
پاکسازی دادهها
هرزمان که حجم دادهها زیاد باشد، کدنویسی فرایند پاکسازی دادهها را سریعتر میکند. مجموعه دادهها در اکسل محدودیت دارد. در نسخه ۲۰۲۱ این نرم افزار ۱.۰۴۸.۵۷۶ ردیف و ۱۶.۳۸۴ ستون وجود دارد. کار کردن با مجموعههای عظیم دادهها فقط با برنامهنویسی ممکن است.
تصویرسازی دادهها
این مرحله، مرحلهایست که بدون دانستن کدنویسی کمترین آسیب را میبینید. در متنهای گذشته فهرستی از برنامههای تصویرسازی را به شما معرفی کردیم که میتوانید با آنها به راحتی تصویرسازیهای جذاب داشته باشید.
با نرمافزار تصویرسازی کنید/ برنامههایی که هر دیتاژورنالیست باید بشناسد
دستیارانی برای دیتاژورنالیستها/با این سایتها حرفهای تصویرسازی کنید
با این حال بسیاری از تیمهای دیتاژورنالیست در سازمانهای خبری برای ایجاد نمودارهای خود به برنامهنویسی متکی هستند. هم The Economist و هم The Times of London از R استفاده میکنند. New York Times هم به برنامهنویسی متکی است. The Washington Post از ترکیبی از برنامهنویسی و نرمافزار استفاده میکند. کدنویسی امکان سفارشیسازی را برای اتاقهای خبر فراهم میکند که از طریق آن اجازه میدهد هر اتاق خبر سبک خاص خودش را تعریف کند.
انتشار دادهها
برنامهنویسی R و Python در درجه اول برای پردازش دادهها در اتاقهای خبر استفاده میشوند. تجزیه تحلیل دادهها بسیار بر کدنویسی متکی است. SQL به شما امکان میدهد که پایگاه دادهها را مدیریت کنید درحالی که Java زبانی دارد که به شما امکان ایجاد دادههای تعاملی بهتری میدهد.
برنامهنویسی R و Python چه هستند؟
R
R یک زبان برنامهنویسی است که در دهه ۱۹۹۰ به دلیل تمایل زیاد برای توسعه و تجزیه تحلیل دادهها و مدلسازی آماری پدید آمد. از آن زمان تا کنون این زبان بیشتر در دانشگاهها و توسط متخصصین آمار مورد استفاده قرار گرفت. این زبان، یک زبان خاص با کارکردی خاص است. بدین معنی که یادگیری آن برای کسی که تجربه برنامهنویسی ندارد دشوار است.
اگر به RStudio مراجعه کنید میتوانید با زبان برنامهنویسی R، بستههای مختلف و انواع نمودارها آشنا شوید. با این حال R بیش از ۱۸۰۰۰ بسته دارد که کدنویسی را برای شما تسهیل میکند. بستهها مجموعهای از توابع هستند که هنگام بارگذاری، عملیاتهای قدرتمند را بدون نیاز به تعیین عملیات تولید میکنند. متخصصین برنامهنویسی میگویند: «در R بستههایی برای تقریباً همه چیز وجود دارد!» یکی از این بستهها ggplot۲ است که احتمالاً محبوبترین بسته تصویرسازی دادههاست.
بسیاری از سازمانهای خبری از این زبان برای برنامهنویسی استفاده میکنند. برای مثال BBC یک بسته خاص خود در R ایجاد کردهاست که به روزنامهنگاران اجازه میدهد نمودارهایی با سبک این سازمان خبری ایجاد کنند.
Python
زبان برنامهنویسی پایتون یک زبان برنامهنویسی همهمنظوره است که آن را به زبانهای دیگر مانند Java، C++ و C نزدیکتر میکند. پایتون هم مانند R در اوایل دهه ۹۰ میلادی توسعه یافت. جذابیتهای پایتون زمانی درک میشود که این قابلیت را در نظر بگیرید: خوانایی بیشتر و کوتاه کردن کدها.
از آنجایی که پایتون همهمنظوره است، در مقایسه با R از کاربردهای گستردهتری برخوردار است. میتوان از آن هم برای تجزیه تحلیل دادهها و هم برای توسعه برنامه استفاده کرد.
به دلیل کاربردهای گسترده پایتون، این زبان برنامهنویسی پایگاه کاربران بزرگتری در سرتاسر جهان دارد و میشود گفت بسیار محبوب و مورد توجه است. بهویژه این زبان برای یادگیری ماشین و هوش مصنوعی استفاده میشود و به همین جهت برای روزنامهنگاران بسیار جالب است.
کنسرسیوم بینالمللی روزنامهنگاران تحقیقی (ICIJ) اعلام کردهاست که برای پردازش دادهها از پایتون استفاده میکند.
تغییر زبان برنامهنویسی
اگر به یک زبان برنامهنویسی مسلط هستید، یادگیری زبان جدید نباید برای شما مشکل زیادی ایجاد کند. دنیای این دو زبان از یکدیگر جدا نیستند. اما همچنان توصیه میشود که برای یادگیری با یکی از آنها شروع کنید و وقتی به استفاده از آن عادت کردید به سراغ دیگری بروید. اگر میخواهید بصورت عمومیتر برنامهنویسی را یاد بگیرید ما زبان R را به شما پیشنهاد میکنیم. اگر میخواهید بصورت بسیار جزئیتر دادهها را تجزیه تحلیل کنید، یادگیری پایتون بسیار باارزش است.
باید بگوییم احتمالاً نیازی نداشته باشید که هردو زبان را یاد بگیرید؛ اما زمان ارائه رزومه، تسلّط به هردو زبان رزومهی شما را بسیار جذابتر خواهد کرد و تعداد سازمانهایی که میتوانید با آنها همکاری کنید گسترش پیدا میکنند.
به عنوان یک دیتاژورنالیست میتوانید بدون برنامهنویسی زنده بمانید! نرمافزارهایی وجود دارند که به شما در تمامی مراحل جمعآوری تا انتشار دادهها کمک میکنند؛ با این حال برنامهنویسی دنیایی از امکانات و آزادی عمل را به شما ارائه میدهد.
در آینده احتمالاً اتاق خبرهای بیشتری از برنامهنویسی استفاده خواهند کرد. این دو زبان با یکدیگر متفاوت هستند اما شما را به نتایج مشابهی خواهند رساند. اگر تصمیم ندارید زمان زیادی را صرف مقایسه این دو زبان کنید در اینجا توصیه میکنیم به سؤالهای زیر فکر کنید:
- همکاران شما از کدام زبان استفاده میکنند؟
- آیا فقط به تجزیه تحلیل علاقه دارید یا میخواهید برنامههای کاربردی را گسترش دهید؟
- آیا میخواهید یک برنامهنویسی عمومی یاد بگیرید یا آمار تمرکز اصلی شماست؟
- اتاق خبر مورد علاقه شما از کدام زبان استفاده میکند؟
در ادامه به برخی نقاط ضعف و قوت R و Python خواهیم پرداخت.
نقاط قوت R :
- بهترین زبان برای تصویرسازی دادهها
- آسان شدن کار با بستهها
- جامعه فعال
- کاربردهای گسترده در آمار و علم داده
- افراد بیشتری به طور یکسان از این زبان استفاده میکنند: با استفاده از IDE یکسان و گردش کار مشابه با Tidyverse
نقاط ضعف R:
- کدی که ضعیف نوشته شده روی سرعت آن تأثیر میگذارد
- توسعه برنامهها میتواند زمانبر باشد
- زمانی که بیش از یک بسته وجود دارد که وظیفه یکسانی را انجام میدهد، انتخاب مناسبترین بسته ممکن است سخت باشد
- درک و کمک به کار همکاران که از زبان برنامهنویسی دیگری استفاده میکنند دشوارتر است
نقاط قوت Python:
- بهترین گزینه برای کدنویسان باتجربه است
- بهترین زبان برای یادگیری ماشین
- بهترین زبان برای مبتدیانی که میخواهند دنیای برنامهنویسی را کشف کنند
- پایگاه کاربران جهانی بزرگتری دارد
- همکاری با برنامهنویسان دیگر در تیم آسانتر است
- بهترین برای کار با الگوریتمها
نقاط ضعف Python:
- امکان تصویرسازی جذاب دادهها کمتر است
- بستههای تخصصی کمتر برای تجزیه و تحلیل آماری دارد (در مقایسه با R)
- دانستن اینکه از کدام IDE استفاده کنید و کدام کتابخانه را انتخاب کنید سختتر است
درنهایت با گذشت زمان، تسلط شما بر هردو زبان امکانپذیر است. اگر هردو را ادغام کنید میتوانید از مزایای هردو زبان بهرهمند شوید. مخصوصا با توجه به آنکه هر زبان نقاط ضعف و قوت خاص خود را دارد. اما اگر نمیخواهید هردو را یاد بگیرید، حتی یکی از آنها هم میتواند بسیار کمککننده باشد.
نظر شما