آنچه در 10 سال در Stack Overflow آموختم

آنچه در 10 سال در Stack Overflow آموختم
من به دهمین سالگرد خود در Stack Overflow نزدیک می شوم. با گذشت سالها رویکرد من در استفاده از سایت و برداشت من از آن بسیار تغییر کرده است و می خواهم تجربه خود را با شما به اشتراک بگذارم. و من در این مورد از دیدگاه یک کاربر معمولی می نویسم که چندان درگیر زندگی جامعه سایت یا فرهنگ آن نیست. این روزها فقط به سوالات مربوط به VS Code پاسخ می دهم، محصولی که روی آن کار می کنم. با این حال، من قبلاً به طور فعال در بحث ها در مورد طیف گسترده ای از موضوعات شرکت می کردم. در 10 سال من حدود 50 سوال پرسید و 575 پاسخ داد، تعداد بی شماری از نظرات دیگران را بررسی کرد.

جان اسکیت فرهنگ Stack Overflow را تشریح کرد بسیار بهتر و معتبرتر از آن چیزی که من هرگز قادر به انجام آن خواهم بود. انتشار آن بر برخی از فصل‌های این مقاله تأثیر گذاشت، اما به طور کلی اینها بازتاب‌های صریح من درباره تجربیات من در Stack Overflow، خوب و بد بودن سایت و نحوه استفاده امروزی از آن است. این بحث نسبتاً سطحی خواهد بود، بدون غواصی عمیق در عملکرد سایت یا تاریخچه آن.

بنابراین در اینجا چیزی است که من از 10 سال استفاده از Stack Overflow یاد گرفتم.

شما باید بتوانید سوال بپرسید

در نگاه اول، هیچ چیز نمی تواند ساده تر باشد: چند کلمه را در قسمت متن وارد کنید، روی "ارسال" کلیک کنید، و اینترنت به طور جادویی به حل همه مشکلات شما کمک می کند! اما تقریباً 10 سال طول کشید تا بفهمم چه کلماتی را در آن زمینه لعنتی تایپ کنم تا واقعاً به نتیجه برسم. در واقع، من هنوز در مورد آن هر روز یاد می گیرم.

پرسیدن سؤالات خوب مهارتی است که واقعاً دست کم گرفته شده است (همانطور که نوشتن یک گزارش مشکل خوب است). اول، چگونه می توانیم تعیین کنیم که آیا یک سوال "خوب" است؟ Stack Overflow پیشنهاد می دهد اشاره، که ویژگی های زیر یک سوال خوب را فهرست می کند:

  • آیا با موضوع سایت مطابقت دارد؟
  • متضمن پاسخ عینی است.
  • هنوز سوال نشده است.
  • تحقیق شده است.
  • به وضوح مشکل را توصیف می کند، معمولاً با یک مثال حداقلی که به راحتی قابل تکرار است.

بسیار خوب، اما "بیان مشکل واضح" در عمل چگونه به نظر می رسد؟ چه اطلاعاتی مرتبط است و چه چیزی نیست؟ گاهی اوقات به نظر می رسد که برای پرسیدن یک سوال خوب، ابتدا باید پاسخ آن را بدانید.

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

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

سوالات بد و نه چندان خوب یکسان نیستند

من قرص را شکر نمی کنم: برخی از سؤالات فقط بد هستند.

یک سوال شامل یک اسکرین شات و عبارت "چرا این کار نمی کند!؟!" - بد چرا؟ بدیهی است که نویسنده تقریباً هیچ تلاشی نکرده است. این خیلی یک سوال نیست بلکه یک خواسته است: "این کار را برای من انجام بده!" چرا باید این کار را انجام دهم؟ وقت من برای کمک به کسی که نمی‌خواهد از ابتدا یاد بگیرد و قدر کمک من را نمی‌داند، هدر دهد. یاد بگیرید که Stack Overflow چیست.

اکنون یک سوال با عنوان "چگونه مرزهای آبی را در صفحه من حذف کنیم" در نظر بگیرید که شامل چندین پاراگراف متن است که در مورد ویژگی کلی CSS صحبت می کند، اما بدون ذکر صریح کلمات "CSS" یا "Outline". در حالی که سؤالی مانند این ممکن است برخلاف بسیاری از دستورالعمل‌های Stack Overflow باشد، من مخالفم، سؤال بدی نیست. نویسنده حداقل سعی کرد اطلاعاتی را ارائه دهد، حتی بدون اینکه بداند چه چیزی باید بدهد. تلاش و تمایل به درک و یادگیری اهمیت دارد.

با این حال، بسیاری از مشارکت کنندگان Stack Overflow احتمالاً با هر دو سؤال به یک روش برخورد می کنند: رأی منفی و بستن. این ناامید کننده است و بسیاری از کاربران بی تجربه را قبل از اینکه یاد بگیرند سؤالات بهتری بپرسند و حتی نحوه عملکرد سایت را بفهمند، خاموش می کند.

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

یک سوال خوب تضمین کننده پاسخ نیست

Stack Overflow معمولاً پاسخ های سریع تری به سؤالات ساده ای ارائه می دهد که بسیاری از افراد می توانند به آنها پاسخ دهند. آیا در مورد جستجوی باینری در جاوا اسکریپت یا در مورد HTML سوالی دارید؟ فوق العاده! در کمتر از یک ساعت پنج پاسخ دریافت کنید. اما هر چه سوال پیچیده تر یا خاص تر باشد، بدون در نظر گرفتن کیفیت عبارت، احتمال کمتری برای دریافت پاسخ وجود دارد.

احتمال دریافت پاسخ نیز در طول زمان به سرعت کاهش می یابد. وقتی یک سوال چندین صفحه به عمق فید می رود، گم می شود. یک هفته بعد، فقط می توانید دعا کنید که فردی با دانش درست به سؤال شما برخورد کند (یا سخاوتمندانه روی آن کلیک کنید).

ممکن است پاسخ های صحیح را دوست نداشته باشید

هر ماه چندین رای منفی برای پاسخ های به اصطلاح نامحبوب دریافت می کنم. این‌ها انواع پاسخ‌هایی هستند که اساساً می‌گویند: «دلیل این است که به این شکل طراحی شده است» یا «امکان ندارد زیرا...» یا «این یک اشکال است که ابتدا باید برطرف شود». در تمام موارد فوق، نویسندگان راه حل یا حتی راه حلی دریافت نمی کنند. و من گمان می کنم که وقتی مردم از چیزی که یک پاسخ می گوید خوششان نمی آید، به آن رای منفی می دهند. من حتی آنها را درک می کنم، اما این به معنای اشتباه بودن پاسخ ها نیست.

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

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

به طور کلی، با وجود رأی منفی ماهانه، من معتقدم که انجمن Stack Overflow منصفانه رأی می دهد. ما به این مسیر پایبند خواهیم بود.

من تقریباً هرگز در Stack Overflow سؤال نمی‌کنم

هر چه بیشتر از این سایت استفاده می کردم، کمتر در آن سؤال می پرسیدم. این تا حدودی به دلیل رشد حرفه ای من است. بسیاری از مشکلاتی که من در محل کار با آن مواجه می شوم آنقدر پیچیده هستند که نمی توان آن ها را با سوالات ساده بیان کرد، یا خیلی خاص هستند که اصلاً کسی نمی تواند به من کمک کند. من به محدودیت های سایت پی برده ام، بنابراین از پرسیدن سوالاتی که تقریباً مطمئناً جواب خوبی برای آنها نخواهم گرفت، اجتناب می کنم.

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

مشاهده سوالات دیگران یک راه عالی برای یادگیری چیزهای جدید در مورد محصول شما است.

الان دارم کار میکنم کد VS، بنابراین من عادت کردم به سؤالاتی با برچسب vscode نگاه کنم. این یک راه عالی برای مشاهده نحوه استفاده از کد من در دنیای واقعی است. کاربران با چه مشکلاتی مواجه می شوند؟ چگونه می توان اسناد یا API را بهبود بخشید؟ چرا چیزی که من فکر می کردم کاملاً واضح است باعث این همه سوء تفاهم می شود؟

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

اگر محصولی را برای توسعه دهندگان نگهداری می کنید، Stack Overflow را به عنوان محل تخلیه (یا بدتر از آن، گورستان سوال) در نظر نگیرید. مرتباً بررسی کنید تا ببینید چه سؤالات و پاسخ هایی ظاهر شده است. این بدان معنا نیست که باید خودتان به هر سوالی پاسخ دهید، اما سیگنال‌های Stack Overflow بسیار مهم هستند که نمی‌توان آنها را نادیده گرفت.

خطوط بین یک سوال، یک گزارش اشکال و یک درخواست ویژگی محو است.

چند سوال در مورد VS Code در Stack Overflow در واقع گزارش اشکال بودند. و بسیاری دیگر در واقع درخواست ویژگی های جدید هستند.

به عنوان مثال، یک سوال با عنوان "چرا VS Code وقتی من ... خراب می شود؟" - این یک گزارش اشکال است. VS Code نباید در شرایط مختلف خراب شود. پاسخ دادن به سوالاتی که گزارش اشکال هستند معکوس است زیرا ممکن است نویسندگان از یک راه حل راضی باشند و هرگز گزارش اشکال واقعی را ارسال نکنند. در چنین شرایطی، من معمولاً از کاربران می‌خواهم که یک گزارش باگ در Github ارسال کنند.

در موارد دیگر، تفاوت ها ممکن است کمتر آشکار باشد. به عنوان مثال، سوال "چرا JavaScript IntelliSense در VS Code کار نمی کند؟" بسته به اینکه چگونه جاوا اسکریپت IntelliSense کار نمی کند، این مشکل می تواند به یکی از سه دسته تقسیم شود:

  • اگر این یک مشکل پیکربندی کاربر است، پس واقعاً یک سؤال برای Stack Overflow است.
  • اگر در مورد توصیف شده IntelliSense باید کار کند، اما این کار را نمی کند، پس این یک گزارش باگ است.
  • اگر در مورد توصیف شده IntelliSense نباید کار کند، این یک درخواست برای یک ویژگی جدید است.

در پایان روز، اکثر کاربران به این تفاوت‌های ظریف اهمیتی نمی‌دهند—آنها فقط می‌خواهند JavaScript IntelliSense کار کند.

و اگرچه این تفاوت ها برای من به عنوان مسئول پروژه مهم است، اما به طور کلی نباید برای من مهم باشد. زیرا سؤالات، گزارش‌های اشکال و درخواست‌های ویژگی، همه راه‌هایی برای بیان یک ایده هستند: کاربر چیزی از کد من انتظار دارد و آن را دریافت نمی‌کند. اگر محصول عالی بود، کاربران هرگز در مورد آن سوال نمی پرسیدند، زیرا همه چیز برای آنها واضح بود و دقیقاً همان کاری را انجام می داد که آنها می خواهند (یا حداقل به وضوح به آنها می گفت که چرا نمی تواند).

توسعه دهندگان نیز مردم هستند

مردم احساساتی هستند. مردم غیر منطقی هستند. مردم احمق هستند البته نه همیشه، اما گاهی! و باور کنید یا نه، توسعه دهندگان نیز مردم هستند.

یک فانتزی وجود دارد که ما توسعه دهندگان دوست داریم به خود بگوییم: «ما با رایانه کار می کنیم، بنابراین باید منطقی باشیم. ما نمادهای مرموز را درک می کنیم، بنابراین باید باهوش باشیم. نرم افزار دنیا را گرفته است، پس باید خونسرد باشیم! سرد! رو به جلو!!!"

این اشتباه است. و اگر چنین بود، پس خدا به بقیه مردم کمک کند. حتی در Stack Overflow، ابزاری که برای حرفه‌ای‌ها به‌عنوان یک پایگاه دانش عینی طراحی شده است، حتی در گوشه بسیار خاص خود VS Code، من همچنان با انواع خشونت‌ها مواجه می‌شوم: مغالطه‌های منطقی، توهین، ذهنیت گله و غیره.

خودتان را گول نزنید: احتمالاً آنقدر که فکر می کنید کامل نیستید. اما این بدان معنا نیست که ما نباید سعی کنیم از کمبودهای خود خلاص شویم.

رفیق، من کسی هستم که این را ایجاد کردم

من هم یک انسان هستم و هر از گاهی اتفاقاتی که در Stack Overflow می افتد مرا آزار می دهد. به عنوان مثال، زمانی که کاربر با اطمینان، مزخرف می نویسد یا به سادگی به یک سوال مربوط به VS Code پاسخ اشتباه می دهد، محصولی که من ایجاد کرده ام و به خوبی می شناسم. عجیب است، به نظر می رسد که هر چه پاسخ اشتباه تر باشد، احتمال بیشتری وجود دارد که کسی آن را یک واقعیت غیرقابل انکار بنامد.

وقتی این اتفاق می افتد، من مانند تصویر عمل می کنم و پاسخ صحیح را می نویسم.

آنچه در 10 سال در Stack Overflow آموختم

و چندین بار این منجر به موضوعات طولانی شد: وای بر من که جرأت کنم دانش آنها را از آنچه من خلق کرده ام زیر سوال ببرم! سعی نکنید همیشه حق با شما باشید، بچه های باهوش لعنتی! چون حق با منه!!!

بدبین شدن در این ناامیدی آسان است

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

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

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

اگرچه Stack Overflow کارهای زیادی برای کمک به تازه واردان انجام داده است، هنوز کارهای بیشتری باید انجام شود. سعی کردم تعادلی بین رعایت استانداردهای سایت و ملایمت با کاربران بی تجربه پیدا کنم. این ممکن است شامل توضیح این باشد که چرا به بستن سوال رای دادم یا ارسال نظری که کاربر را تشویق به ارائه اطلاعات بیشتر می کند. من هنوز جا برای رشد دارم.

از طرف دیگر، من هیچ تردیدی در رأی منفی به کاربرانی با شهرت 50 نفری ندارم که سؤالاتی مانند «بهترین طرح‌بندی کد VS برای توسعه جاوا اسکریپت چیست؟» یا افرادی که به‌جای متن اسکرین‌شات‌های صابونی از کد را آپلود می‌کنند، ارسال می‌کنند.

گاهی فقط می خواهم از شما تشکر کنم

فرهنگ قدردانی ضعیفی در Stack Overflow وجود دارد. به یاد دارم که یک بار سایت به طور خودکار کلمات "سلام" و "متشکرم" را از سوالات حذف می کند. شاید هنوز این کار انجام شده باشد، من بررسی نکرده ام.

امروزه، هرکسی که در بخش پشتیبانی مشتری کار کرده است، به خوبی می‌داند که ادب بیش از حد می‌تواند مانع ایجاد کند و حتی اجباری به نظر برسد. اما گاهی اوقات شخصی در این سایت کار بسیار مهمی را برای شما انجام می دهد و تنها راه تشکر از آنها این است که به آنها امتیاز مثبت بدهید. بد است.

کارآمدی نیازی به تبدیل شدن به روبات های بی روح ندارد. البته اگر خود کاربران بخواهند، یک کانال جانبی می تواند ارتباط معتبرتری بین افراد ایجاد کند.

گاهی اوقات می خواهم بدانم پس از دریافت پاسخ چه اتفاقی افتاده است

Stack Overflow بر اساس یک اصل تراکنشی عمل می کند: برخی از افراد سؤال می پرسند، برخی دیگر پاسخ می دهند. پس از دریافت پاسخ چه اتفاقی می افتد؟ چه کسی می داند؟ گاهی در این مورد تعجب می کنم. آیا پاسخ من مفید بود؟ او به چه پروژه ساده ای کمک کرد؟ سوال کننده چه آموخت؟

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

گیمیفیکیشن موثر است...

... هنگام تبدیل فرآیندها به بازی.

وقتی نماد کوچک +10 یا +25 را در نوار وضعیت می بینم هنوز کمی نگران می شوم. شاید همین لمس های کوچک گیمیفیکیشن دلیلی باشد که من به مدت 10 سال به این سایت بازگشته ام. اما با گذشت سالها، من همچنین شروع به تعجب کردم که Stack Overflow چیست و پیروزی در آن به چه معناست.

من مطمئن هستم که این سیستم با بهترین نیت ایجاد شده است: پاداش دادن به افراد برای سؤالات و پاسخ های مفید. اما به محض اینکه امتیازات بالا را اضافه کنید، اجرایی می شود قانون گودارت، و برخی از کاربران شروع به تنظیم اقدامات خود می کنند نه برای دستیابی به حداکثر ارزش، بلکه برای به دست آوردن حداکثر رتبه بندی. و این مهم است زیرا ...

شهرت به معنای آن چیزی نیست که شما فکر می کنید.

شهرت معادل شایستگی فنی، مهارت های ارتباطی، یا درک نحوه عملکرد یا عملکرد Stack Overflow نیست.

منظورم این نیست که بگویم شهرت فایده ای ندارد. این فقط به این معنی نیست که مدیران Stack Overflow به چه معنا هستند یا کلمه "شهرت" قرار است به چه معنی باشد. من متوجه شدم که شهرت معیاری برای نفوذ است. دو پاسخ فرضی منتشر شده در سایت را در نظر بگیرید:

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

در طول پنج سال، اولین پاسخ 5 میلیون بار مشاهده شد و 2000 رای مثبت دریافت کرد. پاسخ دوم 300 بار مورد بررسی قرار گرفت و دو رای مثبت داده شد.

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

بنابراین من "شهرت" در Stack Overflow را نوعی معیار نفوذ می دانم. شهرت واقعی را نمی توان صرفاً با امتیاز سنجید، بلکه از جامعه می آید. به نصیحت چه کسی گوش کنم، چه کسی به دیگران کمک کند، به چه کسی اعتماد کنم؟ شاید اینها همه افراد متفاوتی باشند، بسته به اینکه من در PHP بنویسم یا برای iOS.

با این اوصاف، من نمی دانم Stack Overflow باید در این زمینه چه کاری انجام دهد. آیا اگر کاربران به جای "شهرت" "امتیاز حیله گری" کسب کنند، انگیزه بیشتری خواهند داشت؟ آیا اگر اصلاً سیستم امتیازی وجود نداشته باشد، کاربران همچنان درگیر خواهند بود؟ بعید میدونم و این افسانه که "شهرت" در Stack Overflow معادل شهرت واقعی است، نه تنها برای خود سایت، بلکه برای فعال ترین کاربران آن نیز مفید است. خوب، واقعاً چه کسی دوست ندارد شهرت خود را افزایش دهد؟

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

من بدون Stack Overflow سازنده نخواهم بود

هر بار که نیاز به انجام کاری پیچیده در git دارم، به Stack Overflow می روم. هر بار که به چیزی ساده در bash نیاز دارم، به Stack Overflow می روم. هر بار که یک خطای کامپایل عجیب دریافت می کنم، به Stack Overflow می روم.

من بدون IntelliSense، یک موتور جستجو، و Stack Overflow سازنده نیستم. با قضاوت بر اساس برخی کتاب ها، این من را به یک برنامه نویس بسیار بد تبدیل می کند. احتمالاً در تست های زیادی مردود می شوم و بسیاری از مشکلات را در هیئت مدیره حل نمی کنم. همینطور باشد. به طور جدی، هر بار که از .sort در جاوا اسکریپت استفاده می‌کنم، باید اطلاعاتی را در مورد زمان دریافت -1، 0 یا 1 جستجو کنم و هر روز JS می‌نویسم و ​​محبوب‌ترین ویرایشگر را برای این زبان توسعه می‌دهم.

نه، Stack Overflow یک ابزار باورنکردنی است. فقط یک احمق از همه ابزارهای موجود استفاده نمی کند. پس چرا مثل من یک احمق درونی نباشیم؟ منابع مغز خود را برای دانش مهم ذخیره کنید، مانند به خاطر سپردن تمام طرح‌های سریال Seinfeld یا ساختن جناس‌های پیچیده (که در این مقاله بسیار گم شده‌اند، اما بسیاری دیگر با ماهیت کاملاً متفاوت وجود خواهند داشت).

Stack Overflow یک معجزه است

Stack Overflow به هر کسی، صرف نظر از تجربه یا دانش، اجازه می دهد تا سوالات برنامه نویسی را پست کند. این سؤالات توسط افراد کاملاً غریبه پاسخ داده می شود که بیشتر آنها زمان زندگی و حرفه خود را صرف کمک به دیگران رایگان می کنند.

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

Stack Overflow برای همیشه دوام نخواهد آورد. یک روز چیز بهتری خواهد آمد. امیدواریم این چیزی باشد که از اشتباهات Stack Overflow درس بگیرد و بهترین ها را از آن بگیرد. تا آن زمان، امیدوارم این سایت را ساده نگیریم. این یک نقطه عطف و یک جامعه زنده است که دائماً با افراد جدید پر می شود. اگر این موضوع شما را نگران می‌کند، به یاد داشته باشید که همه اینها بسیار شکننده است و حتی اقدامات کوچک - مانند کمک به افراد تازه وارد اما هنوز نادان - می‌تواند تأثیر مثبتی داشته باشد. اگر من از این سایت انتقاد می کنم فقط به این دلیل است که اهمیت می دهم و می دانم چگونه آن را بهتر کنم.

PS

وقتی به Stack Overflow آمدم هنوز یک بچه مدرسه ای بودم. من تازه شروع به نوشتن جاوا اسکریپت (ES5!) در Eclipse کرده بودم، و به نظر می رسید که 90 درصد سوالات با "استفاده از jQuery، فقط..." شروع شده اند. و با وجود اینکه نمی دانستم چه کار می کنم، غریبه ها وقت خود را صرف کمک به من کردند. فکر نمی‌کنم در آن زمان واقعاً از آن قدردانی کرده باشم، اما فراموش نکرده‌ام.

مردم همیشه می خواهند که Stack Overflow چیز متفاوتی باشد: یک سایت پرسش و پاسخ. ابزاری برای حل مشکلات خانگی؛ استاندارد زندگی برنامه نویسی و از نظر من، این سایت، با وجود رشد و کاستی هایش، در هسته خود یک جامعه باز است که در آن غریبه ها به یکدیگر کمک می کنند تا یاد بگیرند و پیشرفت کنند. و این عالی است. خوشحالم که در 10 سال گذشته بخشی از Stack Overflow بوده ام و امیدوارم به این کار ادامه دهم. من می خواهم در دهه آینده به همان اندازه که در دهه قبل یاد گرفتم چیزهای جدیدی یاد بگیرم.

منبع: www.habr.com

اضافه کردن نظر