این وبسایت پاسخ و پرسش (Q&A) که در سال 2008 راهاندازی شد اکنون به مرجع شماره یک برنامهنویسان تبدیل شدهاست. کمتر موضوعی در حوزه برنامهنویسی و علوم کامپیوتر یافت میشود که در این وبسایت سوال و جوابی برای آن وجود نداشته باشد. محبوبیت این وبسایت باعث شده تا اکثر جستجوهای گوگل که درباره مشکلات برنامه نویسها است کاربران را به Stackoverflow.com هدایت کند.
در این وبسایت هم سوالات باکیفیت هستند و هم پاسخها. علت اصلی این موضوع را میتوان در ساختار این وبسایت یافت. هر سوال و هر جواب از دید کاربران یک رأی دریافت میکند. سوالاتی که بیربط و تکراری هستند در کمتر از چند ثانیه از چرخه بحث و رأیگیری خارج میشوند. کاربرانی که در بحثهای خوب شرکت کنند امتیار میگیرند. مهمتر از همه اینکه این وبسایت به یک پایگاه داده گسترده کاریابی متصل است و کاربرانی که امتیاز بالایی دارند شانس بیشتری برای استخدام توسط شرکتهای فنآوری دارند.
وبسایت Mashable گفتگویی با "جوئل اسپالسکی" یکی از بنیانگذاران این وبسایت انجام داده که در ادامه ترجمه آن را میخوانید.
- فضای وبسایتهای پرسش و پاسخ برای حرفه برنامهنویسی قبل از اینکه Stack Overflow راهاندازی شود چطور بود؟
برای اینکه گریزی به تاریخ بزنیم باید بگویم برنامهنویسان همیشه برای یافتن سوالات خود به اینترنت رویآورده بودند. حتی قبل از فراگیر شدن شبکه تارگستر جهانی (WWW). در آن زمان چیزی به نام Usenet وجود داشت که شبیه گروههای بحث و گفتگوی امروزی بود. قدمت آن به 10 سال قبل از شروع شبکه تارگستر جهانی میرسد و برنامه نویسها از آن برای مطرح کردن سوالات و پاسخ دادن به آنها استفاده میکردند.
بعد از اینکه موتورهای جستجو بوجود آمدند برنامه نویسان برای یافتن سوالات به جستجوگرها پناه آوردند. اکثر نتایج جستجو موضوعات بحث و گفتگوی قدیمی در تالارهای اینترنت بود. بعضی اوقات این نتایج به درد میخورد و بعضی اوقات هم به درد نمیخورد. این تقریباً وضعیت این حوزه قبل از شروع کار Stack Overflow بود.
- چه چیزی باعث شد تا Stack Overflow حرفی برای گفتن داشته باشد؟
وقتی این وبسایت شروع به کار کرد، یک سری ایده در سایتهای دیگر وجود داشت که من احساس کردم میتوانیم از آنها کمک بگیریم و از آنها برای اینکه برنامه نویسها به سوالات خود برسند استفاده کنیم.
یک نمونه از این ایدهها وبسایت Reddit بود که کاربران میتوانستند به موضوعات مورد بحث رأی دهند. یوتیوب هم از این سیستم استفاده میکند. با این روش بهترین پاسخ به موضوعات در بالاترین جایگاه قرار میگیرد. از طرفی ویکیپدیا بود. ویکیپدیا به هرکس اجازه میدهد هر چیزی را ویرایش کنند. با خودم فکر کردم اگر این قابلیت به یک وبسایت پرسش و پاسخ اضافه شود افراد میتوانند پاسخها را بهتر و بهتر کنند.
همیشه با خودم فکر میکردم یکی دیگر در دنیا در حال کار کردن برروی این ایدههایی است که نمونههایش وجود خارجی دارد. اما ظاهراً این فکر به ذهن کسی نرسیدهبود.
- چرا فقط برروی برنامهنویسی تمرکز کردید؟
جالب است. وقتی برای اولین بار این ایده را در ذهنم داشتم قرار نبود آن را فقط برای حوزه برنامهنویسی اجرا کنم. فکر کردم این وبسایت در مورد همه چیز یا حداقل در مورد تمام حوزه IT باشد. مطمئن نبودم محدوده کار وبسایت را به چه موضوعاتی محدود کنم. اما اولین کاربران٬ موضوعات مورد بحث را به سمت برنامهنویسی بردند و بعد از مدتی بین خودشان تصمیم گرفتند هر سوال دیگری را ممنوع کنند.
به این نتیجه رسیدیم که اگر یک وبسایت در مورد برنامه نویسی راهاندازی کنیم برنامه نویسهای حرفهای هم به آن جذب میشوند. وقتی یک سایتی دارید که هرموضوعی از جمله برنامهنویسی در آن بحث میشود آن وقت دیگر حرفهایها جذبش نمیشوند.
دقیقاً مثل اینست که به یک استادیوم چند هزار نفری فوتبال بروید و یک سوال در مورد برنامهنویسی بکنید. شاید چند نفر برنامه نویس در بین جمعیت باشند اما استادیوم جای پرسیدن این سوال نیست. اما اگر در یک اتاقی که 20 نفر برنامهنویس در آن هستند چنین سوالی بپرسید احتمال گرفتن پاسخ درست بیشتر است.
چیزی که با آن روبرو شدیم که فکر میکنیم اکثر وبسایتهای پرسش و پاسخ هم را آن روبرو هستند این بود که بهترین راه برای گرفتن پاسخهای دقیق و خوب این است که حرفهایهای هر حوزهای را جذب کنیم. و برای ما تنها راه جذب حرفهایها ایجاد یک وبسایت بود که به فقط به حوزه برنامهنویسی تعلق داشته باشد.
- آیا چیزی به نام کاربر برتر هم دارید؟
یک نفر به نام "جان اسکیت" از شهر ردینگ انگلستان هست که به عنوان مهندس در شرکت گوگل کار میکند. با اینکه جزو اولین کاربران ما نبود (که مایه شرمساری ما است) اما 29612 پاسخ در وبسایت ما ثبت کردهاست.
- این تعداد پاسخ یعنی چند امتیاز؟
شما برای هر رأی مثبتی که میگیرید 5 امتیاز دریافت میکنید. یکی از پاسخهای این فرد 4406 رأی مثبت دریافت کردهاست. چیزی که باعث شد پاسخش این تعداد رأی مثبت بگیرید این بود که کسی انتظار نداشت وی پاسخ درست را بداند. (به علت پیچیدگی سوال) پاسخ دیگر وی که رأی زیادی به خود جذب کرده در مورد زبان برنامهنویسی "جاوا" است که هر برنامه نویس جاوا با آن روبرو میشود و پاسخ به آن به درد همه میخورد.
من نمیخواهم به این شخص خیلی بها بدهم. ما 6 میلیون سوال در وبسایت خود داریم. گرچه جان سوالات زیادی را پاسخ داده اما کل پاسخهایش نزدیک 30 هزار پاسخ از بین میلیونهای پاسخ به سوالات است. ما یک وبسایت جامعه محور هستیم. مثل این است که بگوییم در یک کتابخانه چه کسی بیشترین کتاب را نوشته است؟
- آیا امتیازها به کاربران در استخدام شدن کمک میکند؟
بله این موضوع جزو طراحی وبسایت ما است. خیلی از افراد امتیاز خود را در رزومهشان قرار میدهد. اگر مثلاً به شما بگویم فلان برنامه نویس در فلان جا کار و تحصل کرده ملاکی برای اینکه آیا او برنامه نویس ذبده است یا خیر ندارید. اما اگر بگویم او 15 سوال در Stack Overflow پاسخ داده میتوانید به پاسخهایش رجوع کنید و اطلاعاتی در مورد تجربه و مهارتش بدست آورید.
- آیا داستانی در مورد کسانی که از طریق Stack Overflow کار پیدا کردهاند یا به نحوی از این طریق کسب و کار خود را گسترش دادهاند شنیدهاید؟
خیلی از این اتفاقات میافتد. مثلا یکی از کاربران سایت ما دوست برنامهنویسی داشت که بیشتر وقت فراغتش را با بازی World of Warcraft پر میکرد. دوستش به وی میگوید به جای اینکه وقتت را با این بازی پرکنی بیا و سری به Stack Overflow بزن و به جای اعتیاد به Warcraft به این وبسایت اعتیاد پیدا کن! این فرد که نامش Nick Craver است بعد از مدت کوتاهی به دومین کاربر برتر سایت ما تبدیل شد و خودمان او را به عنوان برنامهنویس استخدام کردیم. او بیش از ۶ هزار پاسخ تاکنون نوشتهاست و تقریباً تمام وقت خود را با برنامهنویسی پر کرد. وی برای هر سوالی تحقیق میکند و بعد از اینکه کد مناسبی برایش پیدا کرد آن را به عنوان پاسخ ثبت میکند.
- کاربران شما خیلی با سایت درگیر هستند. چه چیزی فکر میکنید باعث جذب آنها میشود؟
فکر کنم ما برنامهنویسی را ۵ درصد برای همه مردم آسانتر کردهایم. این فقط شامل آنهایی نمیشود که از این طریق چیزی کسب کردهاند؛ همه از این سایت بهره بردهاند. برنامهنویسها به طور مداوم به Stack Overflow سر میزنند و همیشه هم به سوالات خود میرسند. برای همین هم وقتی تصمیم به کاری میگیرند ما آن را برایشان آسانتر میکنیم.
البته اتفاق خاصی هم در سایت ما نمیافتد. خیلی کار شاقی نمیکنیم. فقط هر روز وقتی که برای برنامهنویسی هزینه میکنید را ۵ دقیقه کاهش میدهیم.
این خاصیت اینترنت است. به جای اینکه از طریق ایمیل از یک نفر سوال بپرسید و دو نفر از آن سود ببرند٫آن را عمومی میکنید و یک نفر هم آن را به طور عمومی پاسخ میدهد و هزاران نفر از آن بهره میبرند.
- وبسایت Stack Overflow اکنون به Stack Exchange؛ یک شبکه از وبسایتهای تخصصی پرسش و پاسخ تبدیل شدهاست. وبسایت برجستهای در این شبکه وجود دارد؟
یکی از وبسایتهای این شبکه که برایم جالب است وبسایت ریاضی است. که البته ما چهار وبسایت در مورد ریاضیات داریم. یکی از آنها که Math Overflow نام دارد شامل ریاضیات بسیار پیچیده است. شاید اگر سری به آن بزنید چیزی از آن سرتان نشود!
یکی از کاربران در سایت نوشته بود: «اگر سوالی توسط یک استاد معمولی ریاضیات قابل پاسخ باشد برای این سایت خیلی آسان و پیش پا افتاده است!» جالب اینجاست که کاربران این وبسایت هزاران ریاضیدان هستند و تعداد ریاضیدانهایی که تحقیقات انجام میدهند اینقدر نیست. میلیونهای برنامهنویس در دنیا هستند اما فقط چند ریاضیدان محقق وجود دارند. Math Overflow یک جامعه کمیاب از ریاضیدانها است.