اگر شما هم جز دستهی برنامه نویسان باشید، حتما اسم سایت استک اورفلو یا Stackoverflow را شنیدهاید. من این سایت را به عنوان بهشت برنامه نویسان و یا بهترین دوست برنامه نویسان میدانم. با کمک این سایت شما میتوانید در کمتر از ۱ دقیقه (!) به پاسخ سوالات خود دست پیدا کنید. این سایت برای برنامه نویسان مثل اکسیژن برای انسانهاست. در این مقاله بصورت کامل با استک اور فلو (Stackoverflow) آشنا میشویم و به سوال Stack Overflow چیست؟ بصورت کامل پاسخ میدهیم. با تا انتهای این مقاله همراه باشید.
در گذشته در مقاله بصورت کامل توضیح دادیم که برنامه نویسی چیست؟ طراحی وب چیست؟ برنامه نویسی وب چیست؟ Front-End چیست و BackEnd چیست. الان میخواهیم بصورت کامل توضیح دهیم که Stack Overflow چیست؟
اگر جز هرکدام از این دسته ها هستید و یا کلا در حیطهی طراحی یا برنامه نویسی فعالیت میکنید، Stack Overflow
آن چیزی است که باید با آن آشنایی داشته باشید و از نان شب برای شما واجب تر است.
Stackoverflow.com یک مرجع برای پرسش و پاسخ تخصصی در زمینهی برنامه نویسی میباشد. استک اورفلو یک فروم مثل دیگر فروم های برنامه نویسی نیست. بلکه یک سرویس پرسش و پاسخ است که به شما کمک میکند که نهایتا در چند دقیقه به جواب هر سوالی که دارید برسید.
معمولا در کلاسها و کارگاههایی که برگزار میکنیم، همیشه میگوییم بهترین دوستان برنامه نویسان اینگونه معرفی میکنیم:
اگر بخواهیم بگوییم که Stack Overflow چیست، به اعتقاد من Stackoverflow و گوگل، بهترین دوستان هر برنامه نویسی میباشد و برای برنامه نویسان یک بهشت محسوب میشود. این سایت تمام آن چیزی است که هر برنامه نویس و طراحی به آن نیاز دارد.
در حین طراحی، برنامه نویسی و یا حتی یادگیری برنامه نویسی، ممکن است سوالات و مشکلاتی برای شما بوجود بیاید. وقتی برایتان یک سوال یا مشکل جدید پیش میآید اینطور فکر کنید:
«حتما قبل از من نیز کسی در جهان به این مشکل برخورده و آن را حل کرده است!»
حقیقت این است که بیش از ۹۹ درصد سوالات و مشکلاتی که برای شما حین طراحی یا برنامه نویسی پیش میآید، قبلا برای شخص دیگری نیز پیش آمده است.. آن شخص سوال مربوط به آن مشکل را عنوان کرده است و به جواب رسیده است.
پس تنها کاری که شما باید بکنید این است که مشکلی که برایتان پیش آمده و یا سوالتان را در گوگل سرچ کنید.
وقتی که سوالات و مشکلات برنامه نویسی خود را سرچ میکنید، در اکثر مواقع اولین سایتی که برای شما ظاهر میشود، سایت Stackoverflow است. اینگونه شما میتوانید در کمتر از ۱ دقیقه به جواب بیش از ۹۹ درصد سوالها و مشکلاتتان برسید. در تصویر زیر نمونه یک جستجو گوگل را میبینید که اولین سایت، Stack Overflow را معرفی کرده است.
پس در پاسخ به سوال Stack Overflow چیست میتوانیم بگوییم که:
Stackoverflow تمام آن چیزی است که هر برنامه نویسی به آن نیاز دارد!
ممکن است شما فروم یا انجمن های برنامه نویسی بسیاری را بشناسید. چندین فروم برنامه نویسی قدیمی هم در ایران داریم که معمولا با سرویس هایی مثل vbulletin راه اندازی شده اند. در سیستمهایی مثل vbulletin شما یک فروم کلی دارید، سپس در هر فروم چندین اتاق مختلف هست و در هر اتاق تاپیک های مختلفی وجود دارد.
اما سرویس های پرسش و پاسخی مثل Stackoverflow کاملا با فروم ها و انجمن ها متفاوت هستند. در استک اورفلو، شما بعد از ورود به سایت، آخرین سوالات پرسیده شده را مشاهده میکنید و خیلی سریع میتوانید سوال خود را بپرسید. سوالات در اتاق های مختلف وجود ندارند و شما میتوانید با استفاده از سیستم تگ گذاری سوالات، سوالات مربوط به هر حیطهی خاص را مشاهده کنید.
در ادامهی پاسخ به سوال Stack Overflow چیست، میتوانیم بگوییم چیزی که باعث شده که Stackoverflow از دیگر سایت های پرسش و پاسخ، فروم ها، انجمن ها و... پیشی بگیرد، ویژگی های منحصر به فردی است که Stackoverflow دارد و زندگی را برای برنامه نویسان شیرین میکند!
در ادامه میخواهیم بهترین ویژگی های Stack Overflow را بررسی کنیم.
یکی از ویژگی های فوق العاده استک اورفلو این است که شخصی که سوالی را میپرسد، میتواند یک پاسخ را به عنوان بهترین پاسخ انتخاب کند. در واقع شما با انتخاب بهترین پاسخ، میتوانید این پیام را به سایر کابران بدهید که «این پاسخ بهترین پاسخ بود و مشکل من را حل کرد.»
به نظر من یکی از بهترین ویژگی های Stackoverflow این است که برنامه نویسان بسیاری در آن فعال و آمادهی پاسخگویی به شما هستند.
بارها برای من پیش آمده است که سوالی را در استک اورفلو مطرح کرده ام و در کمتر از ۵ دقیقه، به پاسخ رسیدهام و مشکلی که داشتم برطرف شده است. شما وقتی سوال جدیدی در Stackoverflow میپرسید، میلیونها برنامه نویس هستند که آمادهی پاسخگویی به شما میباشند و مشتاقانه دوست دارند به شما جواب دهند. به همین دلیل بعد از پرسش یک سوال جدید، معمولا در کمتر از ۱۰ دقیقه، میتوانید به جواب سوال خود برسید!
ممکن است برایتان سوال پیش بیاید که چرا میلیون ها برنامه نویس در این سیستم فعالیت میکنند و بصورت رایگان به سوالات پاسخ میدهند؟ در ادامه به این سوال نیز پاسخ میدهیم.
یکی دیگر از ویژگی ها و قابلیت های جذاب Stackoverflow این است که کاربران میتوانند به سوال ها و پاسخ های دیگران رای دهند. با استفاده از این ویژگی، اگر یک سوال، پاسخ و یا نظر، تعداد زیادی رای منفی بگیرد، بصورت خودکار پاک میشود. این ویژگی باعث میشود که سوالها، پاسخ ها و نظرات بی اهمیت پاک شوند و فقط محتواهای مفید و بدردبخور باقی بمانند. به همین دلیل شما در Stack Overflow هیچ محتوای بی استفادهای نمیتوانید پیدا کنید. این فوق العادهست!
ممکن است شما بخواهید یک سوال جدید در Stackoverflow مطرح کنید. عالی است. اما قبل از پرسش سوال، استک اورفلو یک کار فوق العاده انجام میدهد.
هنگام پرسش سوال جدید، Stackoverflow از شما میخواهد که عنوان سوالتان را وارد کنید. بعد از وارد کردن عنوان سوال خود، با استفاده از یک سیستم بسیار هوشمند، تمام سوالاتی که میتواند مرتبط با سوال شما باشد به شما پیشنهاد داده میشود. در واقع Stack Overflow با این کار میخواهد از انتشار سوالات تکراری جلوگیری کند. در تصویر زیر میبینید که بعد از ورود عنوان، چه سوالاتی را به ما پیشنهاد داده است.
همینطور قبل از پرسش سوال، Stackoverflow از شما میخواهد که حتما اول Search, and research داشته باشید و سپس سوال جدید مطرح کنید. به این معنا که ممکن است سوال شما قبلا نیز پرسیده شده باشد، فقط کافی است سرچ بهتری داشته باشید.
اگر بخواهیم بگوییم که Stack Overflow چیست و چه چیزی آنرا قدرتمند کرده است، سیستم امتیازدهی آن است. سیستم امتیازدهی Stackoverflow ساختار تقریبا پیچیدهای دارد و چند نوع امتیاز مختلف به هر کاربر میدهد. امتیاز شما نیز بصورت مستقیم به نحوهی کار کردن شما در Stack Overflow بستگی دارد.
هرچقدر کاربر مفید و قانونمندی باشید امتیاز بیشتری دریافت میکنید، ولی اگر قوانین سایت را رعایت نکنید، Stackoverflow شما را بسیار محدود میکند.
در استک اورفلو شما برای انجام اکثر کارها، نیاز به یک حداقل امتیاز دارید. اگر امتیاز شما از یک میزان خاصی پایین تر باشد، امکان انجام بعضی از کارها از شما گرفته میشود.
برای مثال اگر در گذشته چندین سوال را بدون توجه به قوانین Stackoverflow پرسیده باشد و یا کاربران دیگر به سوالات و پاسخ های شما امتیاز منفی داده باشند، ممکن است Stackoverflow برای مدتی به شما اجازه پرسش سوال جدید ندهد.
سیستم امیتاز دهی Stackoverflow کمک میکند که این سایت، کاملا مفید و غیر اسپم باشد و کابرانی که قصد اسپم گونه دارند و قوانین سایت را رعایت نمیکنند، از این سیستم حذف شوند. به همین است که استک اورفلو اینقدر سایت فوق العاده و مفیدی است. زیرا هیچ محتوای غیرمفیدی در آن جایی ندارد.
اگر بخواهیم بگوییم Stack Overflow چیست، نمیتوانیم بگوییم که فقط یک سایت پرسش و پاسخ ساده است.
در منوی کناری استک اور فلو، با توجه به لوکیشن و موقعیت مکانی شما، به شما پیشنهاد های کار نیز داده میشود که میتوانید از آنها نیز استفاده کنید.
سوال بسیار خوبی است. شاید برای شما هم سوال باشد که چرا کاربران و برنامه نویسان زیادی، بصورت رایگان در این سایت اقدام به پاسخ به سوالات دیگران میکنند.
یکی از دلایل میتواند این باشد که دوست دارند اطلاعاتشان را با دیگران سهیم شوند. اما دلیل مهمتری برای اینکار وجود دارد.
هر فرد در Stack Overflow دارای یک صفحه پروفایل مربوط به خودش است که اطلاعات کاری، رزومه، اطلاعات تماس و ... خود را در آن قرار داده است. وقتی که یک فرد اقدام به پاسخ به سوالات زیادی در سایت میکند، نمره و رتبهی او در Stackoverflow افزایش پیدا میکند.
برای مثال یک برنامه نویس وب را تصور کنید که با پاسخ دادن به سوالات مختلف و پرسیدن سوالات خوب، امتیاز بالایی در این سایت دریافت کرده است.
وقتی که امتیاز یک برنامه نویس در Stackoverflow بالا برود، پیشنهاد های کاری به او نیز زیاد میشود و میتواند پروژه های برنامه نویسی زیادی انجام دهد. علاوه بر این، در برخی شرکت ها، پرفایل فرد در سایت Stackoverflow یک رزومه محسوب میشود و با چک کردن آن، به عملکرد آن شخص پی میبرند.
Joel Spolsky و Jeff Atwood در ۲۰۰۸ اقدام به راه اندازی Stack Overflow کردهاند.
در وبلاگ Stackoverflow اطلاعات بسیار جالبی در خصوص ان منتشر شده است که در زیر آنها را مرور میکنیم:
همچنین رتبهی Stack Overflow طبق آمار الکسا در زمان انتشار این پست :
نکتهی جالب در خصوص استک اورفلو این است که فقط یک سایت نیست. سرویس های پرسش و پاسخ بسیار زیاد دیگری نیز وجود دارند که به سایت های خواهر Stack Overflow معروف هستند که هرکدام در موضوعات و تخصصهای خاصی فعالیت میکنند. لیست سایت های خواهر Stackoverflow را میتوانید در اینجا ببینید.