چگونه شروع کنیم؟

گام اول

برای شرکت در چالش کافی است که شما یک Git repository روی Github, Gitlab و یا هر سرویس‌دهنده دیگه‌ای که باهاش راحتید بسازید. تنها شرط اینه که repository باید به صورت public در دسترس باشه.

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

گام دوم

مرحله بعدی ساخت یک pull request به onboarding repository برای معرفی repository است که ساختید! برای این کار لازمه که به فایل participants.yml اطلاعات مربوط به خودتون رو اضافه کنید. مثال زیر نشون میده که هر entry چه فرمتی داره:

1 nickname: soallpeach
2 profile: https://github.com/soallpeach
3 repository: https://github.com/soallpeach/sample

گام سوم

بعد از اینکه repository رو ایجاد کردید برای هر کدام از چالش‌های سوال‌پیچ نیازه که شما یک پوشه داخل repository خودتون ایجاد کنید. برای مثل اگر اسم چالش prime باشه شما می‌بایست یک پوشه با این نام داخل repository خودتون ایجاد کنید. داخل پوشه هرچالش تمام فایل‌هایی که پروژه شما برای اجرا نیاز داره رو باید قرار بدید. مواردی مثل خود کد شما، تنظیمات build tools (اگر استفاده می‌کنید)، تست‌ها و …

گام چهارم

در کنار فایل‌های پروژه‌اتون شما نیاز دارید که یک فایل Dockerfile هم ایجاد کنید که کارش ساخت یک ایمیج از برنامه شما است. سوال‌پیچ با استفاده از این فایل از پروژه شما یک ایمیج میسازه و اون رو اجرا میکنه تا چک کنه که آیا برنامه شما با توجه به ورودی‌ها درست عمل میکنه یا خیر!

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

و در آخر

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

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