درباره مسابقه‌ی مقدماتی کدکاپ

سلام مجدد به همه‌ی دوستان

این متن رو بعد از خوندن همه‌ی پیام‌ها توی بلاگ و تلگرام و پیامک و ایمیل‌ها می‌نویسیم.

مسابقه‌ی مقدماتی کدکاپ با همه‌ی خوبی‌ها و بدی‌هاش ساعت ۱۲ شب پنج‌شنبه به اتمام رسید.

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

به محض بروز این مشکل، تیم فنی به سرعت شروع به مقابله با این مشکل کرد. اقداماتی به صورت همزمان برای افزایش توان سرور در پاسخگویی به درخواست‌ها و همچنین شناسایی آی‌پی‌های حمله‌کننده و بستن آن‌ها انجام شد و سرانجام توانستیم مشکل را تا حد خوبی کاهش دهیم و امکان دسترسی به سایت مجدداً فراهم شد. همچنین با توجه به این که زمان تیم‌ها در حال از دست رفتن بود تمام تلاشمان را کردیم تا سؤال‌های مسابقه را (از طریق ایمیل و کانال تلگرام مسابقات) به دست شرکت‌کنندگان برسانیم تا بتوانند تا زمان حل مشکل، سؤالات مسابقه را حل کنند. علاوه بر این، برای این که تأثیر منفی زمان از دست رفته شرکت‌کنندگان را کم کنیم، مسابقه را به مدت ۳ ساعت تمدید کردیم و تأثیر «زمان ارسال پاسخ» و «ارسال‌های تکراری به خاطر refresh صفحات» در رتبه‌بندی را حذف کردیم. (جدول رتبه‌بندی مسابقه، بر اساس قوانین جدید رتبه‌بندی، محاسبه خواهد شد)

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

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

\frac{\# Submissions}{\# Problems \times \# Participants}

در شرایط مشابه در مقدماتی کدکاپ ۱، عدد شاخص برابر با ۱.۶۸ بوده است، در حالی که همین شاخص در این مسابقه ۲.۰۳ بوده است. این یعنی شاخص فوق بهبود یافته است و در چنین شرایطی برگزاری مجدد مسابقه و یا بی‌اعتباری مسابقه کاملا بی‌معنی است. لازم به ذکر است که دیروز ۸۰۲۰ بار کد ارسال شد که روی ۷ سرور Quera کامپایل و اجرا شدند.

 

56 دیدگاه در “درباره مسابقه‌ی مقدماتی کدکاپ

  1. حسین می‌گوید:

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

  2. A می‌گوید:

    واقعا امارتون هم جالب بود
    چطور وقتی من تازه اولین سوال رو دیدم بعد۲ ساعت ، ۱۰۰ تیم ۴ سوال رو پاسخ داده بودن؟
    وقتی همه داشتن اعتراض میکردن که چرا ما صفحه لاگین رو نمیبینیم
    واقعا از نظرتون این نوع برگزاری نابرابر مسابقه درست هستش؟

  3. محمدامین رییسی می‌گوید:

    سلام
    تاثیر زمان رو به کل حذف کردید؟!!!!!!!
    الان یکی نصف شب بیاد سوال حل کنه ملاک برتری ما که چهار ساعت زودتر حل کردیم، چی هست پس؟
    یعنی اگه تعداد سابمیت های ما بیش تر باشه اون رتبه اش بهتره؟!!!!!
    میشه ملاک های رتبه بندیو بگید؟

  4. Mm می‌گوید:

    شما ۱۰۰ نفر میخواستید که بیان و فقط شما چند تا عکس بگیرید دیگه
    کیفیت مسابقه چه اهمیتی داره
    چه اهمیتی داره خیلیا تا مسابقه رو اینجوری دیدن بیخیال شدن و رفتن
    موفق باشید…

  5. مهدی نیکوسخن می‌گوید:

    تکلیف آقایونی که ساعت ۵ سوالات رو گرفتن چی میشه؟
    حرف از تمدید زمان میزنند وقتی ساعت ۷ با تلگرام به شما خبر میدن سایت ما سالمه، مسابقه هست، ما هنوز هستیم.

    عقل سلیم میگه سوالات باید عوض میشدن و مسابقه دوباره برگزار بشه.
    چه تضمینی هست که دوباره این مشکلات پیش نیاد؟ هیچ

    تو شرایط فورس ماژور اول باید مشکل آیپی ها رو رفع می کردید (البته دو ساعت اول متوجه شدم تخصص این کار رو ندارید).

    نه تنها شایستگی برگزاری مسابقه در این سطح رو ندارید، مدیریت بحران هم نمدانید.

  6. مهدی نیکوسخن می‌گوید:

    اگر موقع ثبت نام قاعده و قانونی داشتید، بررسی میکردیم نهایتا عذری نبود و اگر بعد از مسابقه به

    \frac{\# Submissions}{\# Problems \times \# Participants}
    ​#Problems×#Participants

    ​#Submissions
    ​​
    میگن اطوار.
    ​​

  7. N7M3 می‌گوید:

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

    • محمد می‌گوید:

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

  8. مهدی نیکوسخن می‌گوید:

    البته بازم می گم بعید میدونم ddos بوده باشه. احتمالا ضعف ساختاری دارند مثل بیرونش (front end) که هزار و یک ایراد داره چون خطاهای دسته ۵۰۰ کلا قضیه شون جداست.

    ولی خب آقایون چون نمیدونن از کجا خوردند خودشونو به twitter میچسبونند.

    به هر حال خوش حال شدم از این که توفیق دست داد و به مسابقه ای که میزبانش بی سواده راه نیافتم. انشالله راه میافتید.

    به امید روز های بهتر. یا حق.

    • محمد می‌گوید:

      به نظرم خیلی منطقی نیست که بگیم مسابقه معتبره. خیلی ها بعد از نیم ساعت یا بیشتر که میبینن سایت بالا نمیاد با خودشون می گن خیلی منطقیه که بعدا برگزار بشه و میرن. و خوب لزومی نداره تا ۱۲ شب بفهمن برگذار شده و خوب اینکه برای مسابقه ارزش قائل بودن انتظار دارن که مسابقه نرمال برگذار شه. و خوب ایمیل نزدید که صبر کنن :دی
      نمی دونم ولی از نظرم بهتر بود دوباره برگزار شه.
      با تشکر 🙂

  9. علی می‌گوید:

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

  10. حسین می‌گوید:

    مسابقه کیفیت مورد نیاز برای انتخاب تیم‌های برتر برای مرحله‌ی حضوری داشته است

    کلمه (کیفیت) آزاردهنده هست

  11. تحلیل گر نحوی می‌گوید:

    با برگزاری مجدد این مسابقه، صدای اون ۱۰۰ تیم اول در میاد
    با کوالیفای شدن همین ۱۰۰ تیم توی همچین شرایطی، حتی ممکنه صدای نفر آخرم در بیاد و اعتراض کنه
    در هر دو صورت بنظرم هم حق با ۱۰۰ تیم اوله هم حق با بقیه!!!
    پیشنهاد بنده برای حل این مشکل اینه که یا تعداد تیم های کوالیفای شده رو مستقیماً بیشتر کنید مثلا دو برابر کنید، یا مسابقه رو مجدداً برگزار کنید و همزمان با این کار، تعداد تیم های کوالیفای شده رو یه مقدار بیشتر کنید (مثلا ۱۵۰ تیم)
    و اینکه میتونید با حذف تاثیر زمانی، حداقل پنالتی هارو مد نظر قرار بدید(البته با حذف کدهای مشابهی که چند بار اشتباهاً سابمیت شدن)
    اما به هر حال به نظرم در کل یه نظرسنجی گذاشته بشه بهتره و اینکه با یک معذرت خواهی و سعی در روی آوردن به فرافکنی و مغلطه، نه تنها چیزی درست نمیشه بلکه سابقه یک همچین مسابقه ای که تازه به دومین دوره خودش رسیده به شدت تحت تاثیر قرار میگیره (که البته شاید این قضیه خدای نکرده برای مسئولین برگزاری مهم نباشه)!
    موفق باشید

    • Mm می‌گوید:

      بله دقیقا
      اون ۱۰۰ نفر اول واقعا زحمت کشیدن و حق حضور صد در صدی دارن شکی توش نیست
      اما اینکه دانشگاه شریف جا داره یا نداره اصلا برای ما اهمیتی نداره
      ما یک ماه با این مسابقه همراه بودیم و مقامای خوبی آوردیم حالا این مشکل پیش اومد و ما بیخیال شدیم و گفتیم قطعا دوباره برگذار میشه
      پس یقینا باید گنجایش ۱۰۰ نفر دیگه رو محیا کنن و به جز نفرات برتر ۱۰۰ نفر دیگه رو از بین بقیه انتخاب کنن
      یا اینکه ۱۰۰ نفر اول بشن سطح ۱ و ۱۰۰ نفر دوم بشن سطح ۲

      واقعا این بی عدالتی و بی انصافی غیر قابل تحمله

  12. دانش می‌گوید:

    یه کار منطقی اینه که همه ی تیم هایی که ۶ سوال اسکپت کرده اند رو بگیرید که حدود ۷۵ تا هستن. هم تعدادشون معقوله. هم سر ۵ اکسپته ها دعوا نمیشه به خاطر زمان و تعداد سابمیت و … که کدوماشون انتخاب شدن و کدومشاون نشدن

    • AI می‌گوید:

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

  13. pooya می‌گوید:

    زحمت کشیدن دلیل خوبی برای انتخاب شدن نیست(فقط ۱۰۰ تیم اول زحمت نکشین)مهم توانایی تیم ها هستش که با وجود اینکه از ۲۰دقیقه‌ی اول مسابقه بعضیا موفق به دیدن صورت سوال شدن این مسابقه اصلا اعتبار نداره. اون ۱۰۰ تیم اولم اگه واقعا لایق بالا رفتن هستن دوباره مسابقه میدن و قبول میشن.

  14. امیر می‌گوید:

    سلام و خسته نباشید
    آقا حالا که اینطوری شده لااقل تعداد بیشتری بگیرید یا مسابقه رو دوباره برگزار کنید.
    مسابقه رو که دوباره برگزار نمیکنید پس لااقل ۲۰۰ تا تیم اول رو بگیرید حداقل.

  15. حسین می‌گوید:

    تعیین کردن تعداد نفرات اصلا درست نیست برای این مسابقه ، در حال کلی یا مسابقه مورد تایید شما بوده و باید همون تعدادی که خودشون میگن انتخاب بشن ، یا اینکه شما هم مثل خیلیا مسابقه رو عادلانه نمیدونید،تایید نمیکنید و باید برای همه مجددا برگزار میشه (مطمئنا اگر مسابقه در شرایط عادلانه برگزار باشه و نفرات برتر این مرحله شایستگی انتخاب داشتند تو مسابقه دوم هم انتخاب میشن)

  16. تحلیل گر نحوی می‌گوید:

    البته ناگفته نماند که خودِ اسم کدکاپ و شرحش به عنوان لیگ برنامه نویسی دقیقاً اون چیزی نیست که دارین اجرا میکنین!
    شما میتونستین نهایتا ۴۰-۵۰ تیم رو به صورت حضوری در شریف بپذیرید و قبل از اون یک سری مسابقات اینترنتی برگزار می شد که در هر مرحله تعداد مشخصی به مرحله بعد راه پیدا می کردن و در نهایت از بین مثلا ۲۰۰ تا تیم یه آزمون غیرحضوری برگزار می شد و ۴۰-۵۰ نفر اول میتونستن به مرحله حضوری راه پیدا کنن
    میتونستین به کل تیم های راه یافته به مرحله نهایی غیرحضوری هم یه تی شرت به رسم یادبود اهدا کنین
    به هر حال این پیشنهادیه که میتونه برای دوره های بعدی روش فکر بشه(البته اگه با این وضعیت دوره بعدی ای هم در کار باشه)
    دوره کنونی یعنی دومین دوره رو یه جوری هندل کنین که نه سیخ بسوزه نه کباب
    بالاخره واسه به دست آوردن یه سری از ارزش ها، باید از یه سری ارزش های کم اهمیت تر گذشت و به نظرم بازی با حروف و اعداد و نشون دادن یه شاخص و اعتراف به حملات مختلف نمیتونه راه مناسبی واسه هندل کردن این قضیه باشه

  17. M.H می‌گوید:

    با سلام و خسته نباشید
    وقتی که با همچین مشکلی مواجه میشید باید مسابقه رو قطع کنید تا یک روز دیگر برگزار کنید تا شرایط برای همه یکسان باشه شخص تیم ما مثلا ۳ ساعت اخر سایت برایمان باز شده و این کاملا نا عادلانه بود چون بعضی ها از ۳ ساعت قبل وارد سایت شده بودند لطفا ی تجدید نظری در قبول کردن تیم ها به مرحله ی حضوری انجام دهید با تشکر
    ممنون

  18. یکی می‌گوید:

    اینکه حمله ddos ای که به شما شده رو با حمله ای که به توییتر و اسپاتیفای و … شده بود مقایسه می کنید دیگه خیلی جو دادنه!
    مسلمن حمله ای که به سایت شما شده بود توسط یک یا چند تا دانش آموز یا نهایتن دانشجو بوده… نه آدمای گنده ای که به Dyn حمله کردند!!!
    حداقل کاری که از دستتون برمیومد این بود که سایت رو پشت claudflare بزارین و احتمالن جلوشون گرفته میشد.

  19. mfs می‌گوید:

    با وجود اینکه رتبه تیم ما خوب شد اما به نظرم این مسابقه اصلا عادلانه نبود و باید تکرار بشه.
    برای مسابقه حضوری هم پیشنهاد میکنم همه چیز رو نذارید برای صبح روز مسابقه (مثل کد کاپ ۱) از حالا به فکر اینترنت و … باشید مسابقه برنامه نویسی حضوری با دسترسی آزاد به تمام سرویس های اینترنت مثل ایمیل و … یکم مضحک به نظر میرسه.
    اجازه استفاده از دو تا لپتاپ هم دیگه کار تیمی نیست.
    به فکر جمر هم باشید که از دیتای موبایل نشه استفاده کرد.

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

  20. مهدی می‌گوید:

    تقریبا میتونم حدس بزنم که چه استرس و فشاری رو روز مسابقه تحمل کردین
    ولی واقعا غیر منطقی بود این که مسابقه رو تمدید کردین
    خیلی بهتر میشد اگه یه مسابقه دیگه میزاشتین
    ولی خوب شما صد تیم خودتون رو پر کردین انگار و مهم هم همین بوده به ظاهر 🙂

    • مهدی می‌گوید:

      و اینم بگم هم تیمی من هیچ کاری نمیتونست بکنه و بیخیال شد و رفت و خودم موندم منم ۴ تا زدم و سر ۵ امی تایم تموم شد که مطمءنا من لایق نیستم با ۴ تا سوال بیام بالا
      ولی وقتی میبینم این کار تاثیر مستقیم داشته تو بالا نیومدن من خوب یکم بی عدالتی طور میبینم مسابقه رو دیگه
      و اینکه انصافا من داشتم رفرش میکردم که پس n بار رفرش صورت سوال ۱ رو تونستم ببینم که بازم نمیشد سابمیت کرد این در صورتی هست که وقتی من با هزار بار رفرش جدول رو اوردم n تا تیم ۴-۵ تا سوال سابمیت کرده بودن و من روی سوال دوم رو هم حتی نداشتم که روش فکر کنم 😐
      مسابقه برگذار شد ولی بی عدالتی توش مشخص بود .

  21. MS می‌گوید:

    میتونید مبدا زمان هر تیم رو بذارید اولین سابمیت اون تیم. اینجوری عدالت واسه اونایی که یه مدت مسابقه رو رها کردن برقرار میشه.

    یه راه دیگه هم اینه که بین ۵تایی ها یه مسابقه دیگه برگزار کنید.

    • AI می‌گوید:

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

  22. محمد تقی دباغها می‌گوید:

    بد نیست به فکر این هم باشید که ی ملتی منتظرن تا همچین نظرات تندی روی این سایت گذاشته بشه

  23. ناشناس می‌گوید:

    به نظر من تغییر قانون مسابقه، بعد از برگزاری مسابقه، مسخره است (مثلا من کنکور بدم بعد بیان بگن درس ریاضی ضریبش از فیزیک کمتره). قانون باید چیز ثابتی باشه.
    یا مسابقه کاملا تأیید بشه، یا کاملا رد بشه، مسخره‌اش رو در نیارین.

  24. Mo می‌گوید:

    ممنون بابت فرصت دوباره ، ولی کاش تعداد تیم ها رو یکم بیشتر میکردید
    لطفا این مورد رو هم بررسی کنید
    ممنون

  25. A.H می‌گوید:

    سلام و عرض ادب
    خواهشا سوالات رو طوری طرح کنید هم سطحش یه کم سخت باشه و تو یک ساعت اول ۳۰ نفر مشخص نشن،که بقیه مسابقه دیگه بی ارزش بشه
    و برای دانشجویانی که از پایتون استفاده میکنند اینقدر به مشکل محدودیتی برنخورن؛درسته زمان و حجم مسئله مهمی هست ولی اینجا مسابقه برنامه نویسی هست،وقتی میبینی تمام سوالات رو درست کد زدی ولی مشکل محدودیت داری بنظرم این خیلی بی انصافیه
    تو مقدماتی یک من هر هفت سوال رو درست کد زدم اما متاسفانه دوتاش با همین مشکل محدودیت مواجه شدم و نتونستم جز ۷۰ نفر باشم
    تو تمرینی یک هم که برای اکثر بچه ها همین مشکل بود

    • M می‌گوید:

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

  26. يكي می‌گوید:

    سلام
    این که تاثیر زمان رو حذف کردید اصلا منطقی نیست!

    تکلیف ما که زیر ۵ دقیقه ۴تا سوال فرستادم و بعدش هم فقط یه سوال حل کردیم چیه؟

    اینکه دوباره مسابقه بدیم!
    خیلی منصفانه است!!!!!!!!!!!

  27. ff می‌گوید:

    خب هم ما و هم خودتون میدونید که تو این مسابقه هم دوباره سایتتون میخوابه پس پی دی اف سوالات رو یا ایمیل کنید همون اول یا بذارید تو کانال تلگرامتون که تعداد رفرش ها کمتر بشه بتونیم آپلود کنیم:/

Leave a comment

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *