بایگانی دسته: ترفند

معرفی نرم‌افزار WebMatrix: ویرایش سایت و کار کردن با کلی زبان برنامه‌نویسی

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

فکر کنم از سال ۲۰۱۰، مایکروسافت نرم‌افزاری به اسم WebMatrix رو معرفی کرد که برای ویرایش سایت‌ها بود. یعنی شما سایت‌تون رو بهش اضافه می‌کردید (از طریق لوکال، Web Deploy یا چندتا تکنولوژی دیگه) و بعد با استفاده از اون می‌تونستید سایت‌تون رو ویرایش و به‌روز رسانی کنید.

مثلا من با Web Deploy به سرور وصل می‌شم و کدهای دو برنامه‌نویس رو با کمک وب‌ماتریکس ویرایش می‌کنم که خیلی راحت‌تر از ویرایش‌گر وردپرسه!

Screenshot (19)

و چون این نرم‌افزار مال مایکروسافته (!) بعیده که خیلی از آدم‌ها باهاش کار کرده باشن. ولی نرم‌افزار خوبیه و ارزش امتحان کردن رو داره. حداقل یک ویرایش‌گر خوب برای فایل‌های وب‌تون خواهید داشت :)

پی‌نوشت با CTRL+ K و بعد CTRL + D می‌تونید کدتون رو مرتب کنید و این امکان بیش‌تر از چیزی که فکر می‌کنید کاربردیه :)

پاک‌سازی ایمن فضای هاست

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

نتیجه جالب بود: هاست ۲۰۰ مگ فضا داشت و ۷۲مگ اون رو پوشه‌ی public_html تشکیل می‌داد. قضیه چیه؟

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

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

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

حالا شما هم اگه به اون اطلاعات (مثل لاگ هاست‌تون) نیاز دارید می‌تونید ازشون روی کامپیوتر خودتون بک‌آپ بگیرید و بعد اونا رو از روی هاست پاک کنید.

جالبیش اینه که سرویسی که به عادل هاست می‌ده هم نامردی نکرده و سه‌تا سیستم آمارگیری روش فعال کرده (و خوب این خودش باعث پر شدن فضا و در نتیجه خریده‌شدن فضا می‌شه دیگه! نمی‌شه؟)

 

حل مشکل فونت توی آپدیت جدید کروم بتا (احتمالا فقط توی ویندوز ۸)

کروم بتا چند روز پیش آپدیت شد و از اون به بعد دیگه فونت تاهوما رو درست نشون نمی‌داد. منم اعصابم داغون شد و برگشتم به فایرفاکس. ولی مهدی (که احتمالا گزینه‌ی جایگزین نداشته :) ) دنبال راه‌حل مشکل گشت و پیداش کرد.

برید توی chrome://flags و Disable DirectWrite رو پیدا کنید و فعال‌ش کنید. بعد کروم رو ری‌ست کنید و از فونت تاهوماش لذت ببرید :)

پی‌نوشت: مثل این‌که این مشکل توی ویندوز ۸ پیش میاد. چون من توی سرور کروم بتا ریختم و فونتش سالم بود. (و مهدی هم به اعتبار همین قضیه کروم رو ریخت)

مواظب کرک‌ها باشید!

این مقاله راجع به کرک‌ها چیزای جالبی میگه (لینک‌ش رو مهدی به من داد!). دلیل این‌که صرفا توی «پیوندهای خوشمزه» نبود این بود که من MD5 نرم‌افزار IDMای که از سافت‌گذر دانلود کردم رو با کمک ابزار مایکروسافت با خود نرم‌افزار مقایسه کردم و MD5هاش فرق داشت!

این MD5 برنامه‌ی اصلیه: 5d5b33608cf168caaab4d8dfe537d552

و این MD5 فایل سافت‌گذره: 6d7fe5aea7bad9740f07d77da0c2a8f4

چجوری از یه برنامه مثل دستور Command Line ویندوز استفاده کنیم

خیلی دنبال این موضوع می‌گشتم و حالا که پیداش کردم این نوشته رو می‌نویسم هم به عنوان یادداشت شخصی و هم شاید به درد یکی دیگه هم بخوره.

هدف اجرای این کار این بود که مثل لینوکس با aria2c از برنامه‌ی aria2 برای دانلود فایل استفاده کنم. البته من این رو نتونستم با کلیدواژه‌هایی که به ذهنم میرسید تو بینگ یا گوگل پیدا کنم و امروز که می‌خواستم پایتون رو بتونم توی CMD اجرا کنم نصب کنم بهش رسیدم :)

برای اضافه کردن دستور به CMD فقط کافیه کد زیر رو توی Windows Power Shell اجرا کنید.

[Environment]::SetEnvironmentVariable("Path", "$env:Path;DIRECTORY", "User")

و جای DIRECTORY هم آدرس پوشه‌ای که فایل exe توش هست رو بنویسید.

دانلود مستقیم فایل از شبکه‌ی تورنت بدون هیچ دردسری!

دیروز که بخش «فیلم روز» رو معرفی کردم قرار بود این فیلم‌ها رو توی مگا براتون آپلود کنم چون فکر می‌کردم مگا مشکل کپی‌رایت نداره و لینک‌ش هم مستقیم بود. اما فهمیدم که توی مگا هم نباید کپی‌رایت رو زیر پا بذاریم برای همین هم یه راه خوب برای دانلود تورنت بدون مشکل بهتون معرفی می‌کنم.

توی اینترنت چندتایی سایت هستند که براتون تورنت رو دانلود می‌کنن و به‌صورت لینک مستقیم در اختیارتون قرار می‌دن و یکی از بهترین‌های اونا که قبل از سرور دو برنامه‌نویس من از اون استفاده می‌کردم سایت zbigz هست‌ش. این سایت با محدودیت ۸ گیگ فایل رو براتون دانلود می‌کنه و تا یک هفته هم از اون نگهداری می‌کنه. و چون حجم فیلم‌هایی که معرفی می‌کنم از ۱.۵ گیگ بیش‌تر نمی‌شه این سرویس کاملاً مناسب این کاره و هیچ مشکلی باهاش نخواهید داشت.

image01

برای استفاده از zbigz باید اول توی سایت‌ش ثبت‌نام کنید که ثبت‌نام توش رایگانه. بعد از ثبت‌نام برای دانلود تورنت لینک magnet تورنت رو (معمولاً توی سایت‌های اشتراک‌گذاری تورنت از جمله kath.ph و yify-torrents لینک مگنت به‌شکل آهنربا نمایش داده می‌شه) یا لینک فایل تورنت رو توی کادر متنی وسط صفحه وارد می‌کنید و یا از گزینه‌ی Upload .torrent file برای آپلود فایل تورنت‌تون استفاده می‌کنید و بعد از اون GO! رو می‌زنید و روی Free Account کلیک می‌کنید تا در حالت رایگان براتون فایل رو دانلود کنه.

 zbigz

و پس از اون هم منتظر می‌شید تا سایت تورنت رو براتون دانلود کنه (فکر کنم صفحه‌ی مرورگر موقع دانلود فایل تورنت باید باز باشه تا فایل دانلود بشه) و فایل رو با استفاده از گزینه‌ی Download دانلود می‌کنید ویا تمام محتویات فایل تورنت رو با گزینه‌ی Zip به فرمت زیپ در میارید (براتون این کار رو می‌کنه) و بعد دانلود می‌کند. سرعت دانلود فایل در حالت رایگان حداکثر ۱۵۰کیلوبایت برثانیه‌ست که به نسبت فیلترنت ایران مناسبه ولی ممکنه سرورهای رایگان‌ش به دلیل شلوغی گاهی جواب ندن که این کم اتفاق می‌افته. تقاوت‌های پریمیوم و رایگان رو می‌تونید این‌جا ببینید.

به همین سادگی، به همین خوشمزگی!

به گوگل کمک کنید تا سایت‌های اسپم رو شناسایی کنه

قبلنا یه زمانی بود که هرچی سرچ می‌کرد اولین سایت‌هایی که می‌اومدن سایت‌های تبلیغ بودن. سایت‌هایی مثل پیامسرا و کلی سایت مسخره که هرچی که سرچ می‌کردید اون‌جا بود. اون موقع‌ها حتی اگه دو برنامه‌نویس رو تو گوگل سرچ می‌کردید اون سایت‌ها می‌گفتن که بله! ما می‌دونیم دو برنامه‌نویس چیه!‌ بیاید تبلیغای ما رو ببینید می‌فهمید دو برنامه‌نویس چیه و از این حرفا.

خدا رو شکر گوگل کلی ایده زد و کلی الگوریتم به کار برد و از قطب شمال و جنوب تا چین رو هم زیرپا گذاشت تا با این سایتا رو از فهرست نتایجش پاک کنه و الان هم اگر سرچ‌تون معقول باشه توی نتایج جست‌وجو سایت اسپمی نمی‌بینید. البته یه جاهایی سایت‌هایی مثل تای‌لانگ دوباره می‌پرن اول نتایج جست‌وجو و کاوشگر (کاربر جست‌وجو کننده!) مورد نظر رو که با کلی امید و آرزو اومده چیزی در بیابه رو کلا ناامید می‌کنن.

یک‌سری آدم خیّر هستند که به گوگل کمک می‌کنن که تای‌لانگ‌ها رو بشناسه و… خوب دیگه توی نتایج‌ش اونا رو نشون نده. خود گوگل هم به کاربراش می‌گه که اگه سایتی رو می‌شناسید که تای‌لانگ بازی در میاره به من معرفی‌ش کنید (تا شاخ‌شو بشکونم!) و ابزارهای مختلف‌ش رو هم به کاربراش می‌ده تا بهش کمک کنن.

منم که از گوگل استفاده می‌کنیم از دوست داریم بهش کمک کنم و همین‌طور از شما هم درخواست کنم که به گوگل کمک کنید. برای این‌کار هم افزونه‌هایی توی گوگل کروم و فایرفاکس هستش که ما قرار بود اینا رو به شما معرفی کردیم (خوب دیگه معرفی شد. برید استفاده کنید!).

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

پی‌نوشت: قضیه‌ی قطب شمال و جنوب الگوریتم پنگوئن گوگله:

googlepenguinقضیه‌ی چین هم الگوریتم پاندای گوگله که دوستان از کونگ‌فو پاندا به‌عنوان نماد این الگوریتم استفاده می‌کنن:

google-panda-update-2011

 

و خوب تای‌لانگ هم دشمن پو توی انیمیشن Kung Fu Panda بوده دیگه (انصافا عکس‌ش هم به سایت‌های اسپمر می‌خوره!)

Tai_Lung_Kung_Fu_Panda_1023

 

چگونه بدون نیاز به هیچ نرم‌افزاری کامپیوترمان را توسط گوشی آندرویدی‌مان کنترل کنیم.

برای کنترل کامپیوتر از طریق پلت‌فرم‌های دیگر مثل آندروید یا آی‌اواس اپلیکیشن‌های زیادی وجود دارد که البته نیاز به نصب نرم‌افزار آن در کامپیوتر مقصد نیز دارید. اما ویندوز به‌صورت توکار ابزاری به اسم Remote Desktop Connection دارد که همان‌طور که از اسم‌ش پیداست برای ارتباط به سیستم دیگری به‌صورت ریموت است.

برای استفاده از این سیستم هم کافیه Remote Desktop Connection را در ویندوز ویستا به بعد در استارت سرچ کنید و در XP هم استارت رو باز کنید و به All Programs یا Programs برید و Accessories و اون‌جا می‌تونید Remote Desktop Connection رو پیدا کنید.

اما توی آندویدتون باید اپلیکیشن Xtralogic Remote Desktop Client رو از دانلود‌ها دانلود کنید و روی گوشی‌تون نصب کنید. و در ضمن توی کامپیوتر مقصد هم به کامپیوترهای دیگه اجازه بدید که به اون کامپیوتر وصل بشن. یعنی باید System Properties رو باز کنید. توی ویندوز ویستا به بعد روی Computer کلیک راست کنید و Properties‌ رو بزنید و گوشه‌ی سمت چپ صفحه Advanced Settings رو بزنید.

RD
و توی ویندوز XP هم روی My Computer راست‌کلیک کنید و Properties رو بزنید. با صفحه‌ای مثل صفحه‌ی زیر مواجه می‌شید

RD3

حالا به بخش Remote برید و تیک Allow Remote Assistance connections to this computer رو فعال کنید.

RD2خوب حالا اپلیکیشن رو باز کنید. با صفحه‌ای مثل صفحه‌ی زیر روبرو می‌شید (بعد از Accept کردن و Cancel کردن Google Login)

Screenshot_2013-04-03-19-56-31حالا Next‌ رو بزنید و RDP رو انتخاب کنید (روش یه باز بزنید!)

خوب توی صفحه‌ی بعدی توی بخش آدرس باید آی‌پی کامپیوتری که می‌خواید بهش وصل شید رو بزنید. برای پیدا کردن آی‌پی‌ش می‌تونید صفحه‌ی Command Line رو باز کنید و ipconfig رو بزنید و توی نوشته‌هایی که نوشته می‌شه اسم آداپتوری که باهاش به اینترنت وصلید (مثلا Local area network یا Wireless Lan adapter wi0fi) رو پیدا کنید و اون نوشته که روبروی IPV4 Address هست که یه چیزی مثل ۱۹۲.۱۶۸.۰.۱۰۳ هست می‌شه آی‌پی اون کامپیوتر.

RD4

حالا توی بخش Address توی اپلیکیشن IPای که بالا پیدا کردیم رو بنویسید. (اگر بخواهید به کامپیوترهایی که خارج از شبکه‌ی خونه‌تون هستند وصل بشید یه ذره دردسرش بیش‌تره. مثلا باید به اون کامپیوتر یه آی‌پی اختصاصی (یا یه آدرس اختصاصی) بدید تا بتونید بهش وصل بشید) و توی بخش User Name باید User Name یه اکانت توی اون کامپیوتر و تو بخش Password هم پسورد همون اکانت رو بنویسید

Screenshot_2013-04-03-20-14-26

و خوب حالا Connect رو بزنید تا به اون سیستم (که در مثال بالا می‌خواهیم به سرور دو برنامه‌نویس وصل شیم) وصل بشید.

اینم از نتیجه‌ی کارمون.

Screenshot_2013-04-03-20-19-30

آيا شما از این نرم‌افزار استفاده کرده‌اید؟ آیا نرم‌افزار مناسب‌تری برای این کار می‌شناسید؟ دیدگاه خود را بیان کنید!

گزارش اختصاصی از مسابقه‌ی برنامه‌نویسی بیان (ویرایش: عکس‌ها اضافه‌شدند)

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

بنر کانتست بیان
بنر کانتست بیان

از آنجا که بنده هم فرصت شرکت در این مسابقه‌ی برنامه‌نویسی (کانتست) را داشتم، تصمیم گرفتیم که در اینجا گزارشی از نحوه برگزاری و رویدادهای شنبه را بنویسم.

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

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

روند گزینش
روند گزینش شرکت‌کنندگان مرحله‌ی حضوری

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

  • گنادی کوروتکویچ (tourist) از بلاروس، دارنده‌ی 6 مدال طلای المپیاد جهانی کامپیوتر که دوتای آن‌ها را با حدّاکثر نمره‌ی ممکن کسب کرده است. همچنین نفر اوّل جهان در سایت Codeforces
  • میخاییل کِوِر (cerealguy)، نفر 24ام جهان در سایت Codeforces (مطمئن نیستم، ولی احتمالاً در ACM هم مقام آورده‌است)
  • ماکوتو سوجیما (rng_58) از ژاپن، نفر دوم جهان در سایت Codeforces
  • پیتر شیه (peter50216) از تایوان، نفر ششم جهان در سایت Codeforces
  • ایگور کولیکو (Egor) از روسیه، نفر پنجم جهان در سایت Codeforces

همچنین برنامه‌نویسان دیگری از چین، لهستان، ایالات متّحده و اوکراین نیز برگزیده‌شدند که در نهایت، برخی از آن‌ها در مرحله‌ی حضوری شرکت‌کردند.

فهرست شرکت‌کنندگان کانتست بین‌المللی و رتبه‌هایشان را در اینجا و فهرست شرکت‌کنندگان ایرانی و رتبه‌های آن‌ها را در اینجا می‌توانید ببینید.

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

امّا پس از این مقدمه‌ی طولانی، به اصل ماجرا و مرحله‌ی بین‌المللی مسابقه می‌رسیم.

شنبه صبح که وارد هتل شدم، علاوه بر شماری از شرکت‌کنندگان ایرانی، شرکت‌کنندگان خارجی نیز در لابی مستقر بودند. متأسّفانه تصویر مناسبی از شرکت‌کنندگان خارجی در لابی پیدا نکردم، امّا ایوان رومانوف تصاویر خوب (و زیادی!) تهیه کرده که می‌توانید آن‌ها را در بلاگ او در Codeforces ببینید. بر اساس آنچه که رومانوف در بلاگش نوشته، شرکت‌کنندگان خارجی از پنجشنبه تا یکشنبه در ایران بوده‌اند.

چند نفر از شرکت کنندگان ایرانی در لابی هتل - Codeforces.com
چند نفر از شرکت کنندگان ایرانی در لابی هتل – Codeforces.com

افرادی که در عکس بالا دیده می‌شوند (از راست به چپ):

فرزاد عبدالحسینی (مدال طلای کشوری المپیاد کامپیوتر) – سیّد حامد ولی‌زاده (مدال طلای جهانی المپیاد کامپیوتر و نفر سوم مسابقه بیان در ایران) – نمی‌شناسم – حامد صالح (مدال طلای کشوری المپیاد کامپیوتر) – علیزضا فرهادی (مدال نقره‌ی جهانی المپیاد کامپیوتر) – نمی‌شناسم

لابی هتل از بالا - Codeforces.com
یلابی هتل از بالا – Codeforces.com

در سمت راست تصویر، شرکت‌کنندگان خارجی قرار دارند. (آن‌هایی که تی‌شرت زرد پوشیده‌اند)

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

Egor, cerealguy, peter50216, liympanda, watashi, kelvin, Dmitry_Egorovanrieff, ivanromanov

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

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

در این مسابقه، شرکت بیان رایانه‌ای را به شرکت‌کنندگان ارائه نمی‌داد و همه با لپتاپ شرکت می‌کردند. به همین دلیل، برای تنظیم سیستم‌ها نیز زمانی در نظر گرفته‌شده‌بود. بر اساس برنامه، مسابقه باید در ساعت 10 صبح آغاز می‌شد؛ اما با تأخیر روبه‌رو شد و (پس از تحویل تی‌شرت‌ها و تنظیم سیستم‌ها) ساعت 12:32 دقیقه آغاز شد.

Codeforces.com
Codeforces.com

در این مسابقه، 7 سوال برای 3 ساعت درنظرگرفته‌شده‌بودند که یک ربع پیش از پایان این زمان، کانتست به مدّت نیم‌ساعت تمدید شد و در نهایت سه‌ساعت و نیمه برگزار شد. سوال‌ها سخت بودند، به گونه‌ای که بسیاری از شرکت‌کنندگان 0 تا 1 سوال حل کردند! طبق آماری که بعداً اعلام شد، نفر نخست جهان 4 سوال و نفر نخست ایران 2 سوال حل کرده‌اند. سوالات مسابقه هنوز در سایت بیان قرار نگرفته‌اند، ولی احتمالاً به زودی در آنجا قرار خواهند گرفت.

غرق در کانتست! - Codeforces.com
غرق در کانتست! – Codeforces.com

یکی از حواشی مسابقه‌ی اصلی این بود که صورت سؤال‌ها تنها به زبان انگلیسی موجود بود و ترجمه‌ی فارسی ارائه نشد. با وجود این که این مسئله مشکل‌ساز نشد، ولی از مسابقه‌ای که یک شرکت ایرانی در ایران برگزار می‌کند، انتظار می‌رود که سؤالات به زبان فارسی هم موجود باشند.

ویرایش: حاشیه‌ی جالب دیگر این بود که به ازای هر مسئله‌ای که یک نفر حل می‌کرد، بادکنکی با رنگی خاص (ویژه‌ی آن مسئله) جایزه می‌گرفت. این رسم مربوط به مسابقات ACM است. نویسندگان 2برنامه‌نویس قبلاً این رسم را در H2PL (لیگ برنامه‌نویسی راهنمایی حلّی 2)، KPL (همان لیگ که بعداً نامش تغییر کرد) و حلّی‌نت (مسابقه‌ی برنامه‌نویسی دبیرستان علّامه‌حلّی که سال گذشته پس از تأخیری چندین ساله برگزار شد و امسال برگزار نمی‌شود) دیده‌اند.

پس از این مسابقه و صرف نهار، چالش Funkoders (با k!) قرار بود برگزارشود که ماهیت آن را هنوز اعلام نکرده‌بودند، ولی شایعاتی وجود داشت مبنی بر آن که قرار است در این مسابقه، ایرانیان هم بتوانند در برابر رقبای خارجی قد علم کنند. در اصل، این برنامه هم یک کانتست با شیوه‌ی قضاوتی مشابه کانتست اصلی بود، ولی با این تفاوت که 15 سوال آسان و 42 دقیقه وقت داشت. البته در برنامه‌ی اصلی قرار بوده که این کانتست 2 ساعت به طول بینجامد؛ ولی به دلیل تأخیر در آغاز برنامه‌ی اصلی، زمان آن کاهش یافت.

ویرایش: یکی از حواشی مسابقه‌ی Funkoders حضور دو بازیگر بود که نقش مجسمه را ایفا می‌کردند و البته هر چند دقیقه یک بار هم تغییر وضعیت می‌دادند.

مجسمه‌ها - Codeforces.com
مجسمه‌ها – Codeforces.com

این مجسمه‌ها واقعاً به خوبی از پس نقششان برآمدند؛ چراکه با وجود خنده‌ها و تلاش‌های مجدّانه‌ی بنده و دوستان، مرتکب هیچ اشتباهی نشدند!

مجسمه‌ها - nardebaan.ir
مجسمه‌ها – nardebaan.ir

 

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

در مراسم اختتامیه، پس از پخش چند قطعه موسیقی زنده و غیرزنده و سرود ملی و تلاوت سوره‌ی حمد و سخنرانی مدیرعامل شرکت بیان، نوبت به اعلام برندگان رسید:

  • پیتر شیه از تایوان نفر اوّل جهان شد و به او مدال طلا، سه سکّه‌ی تمام بهار آزادی و صنایع دستی ایرانی (یک کوزه که فکر می‌کنم میناکاری شده‌بود) تعلّق گرفت. 
  • میخاییل کِوِر نفر دوم جهان شد و مدال نقره، دو سکّه‌ی تمام بهار آزادی و صنایع دستی ایرانی برد.
  • بر خلاف انتظارات، ایگور کولیکو اوّل نشد و سوم شد و مدال برنز، یک سکّه‌ی تمام بهار آزادی و صنایع دستی ایرانی هدیه گرفت.
سه نفر اوّل جهان - nardebaan.ir
سه نفر اوّل جهان – nardebaan.ir

از راست به چپ: پیتر شیه، میخاییل کِوِر، ایگور کولیکو

 

علاوه بر آن، به نفرات برگزیده‌ی ایران نیز جوایزی اهدا شد:

  • سهیل احسانی نفر نخست ایران شد. به او مدال طلا و یک و نیم میلیون تومان وجه نقد تعلّق گرفت.
  • علی فیوج نوملی نفر دوم ایران شد و مدال نقره و یک میلیون تومان وجه نقد برد.
  • سید حامد ولی‌زاده نفر سوم ایران شد و مدال برنز و پانصدهزار تومان وجه نقد جایزه گرفت.
سه نفر برتر ایران - nardebaan.ir
سه نفر برتر ایران – nardebaan.ir

نتایج نهایی را در این نشانی می‌توانید ببینید. البته برخی شرکت‌کنندگان در این جدول حضور ندارند که احتمالاً هیچ سوالی حل نکرده‌اند. (من هم در این جدول حضور ندارم!) نکته جالب این که تمامی 5 نفر نخست ایران، 2 سوال حل کرده‌بودند! و تفاوت میان نفر سوم و چهارم ایران کمتر از یک نمره بود!

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

سخن پایانی

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

مسئله‌ای که بیش از همه جای تأمّل داشت، این بود که در میان پنج نفر برتر جهان، خبری از ایرانیان نبود که با توجه به شرایط، این یک باخت در خانه به حساب می‌آید. البته با توجه به این که شرکت‌کنندگان خارجی از میان برترین برنامه‌نویسان جهان انتخاب شده‌بودند، واقعاً این پدیده قابل پیش‌بینی بود؛ ولی باز هم باید تلاش کنیم و امیدوار باشیم که در مسابقه‌های بعدی، بدون درنظرگرفتن سهمیه برای ایرانیان، سه نفر از آن‌ها رتبه‌های برتر را تصاحب کنند.

منبع: در نوشتن این مطلب، علاوه بر مشاهدات شخصی، از تصاویر و مطالب وبلاگ رسمی شرکت بیان و وبلاگ و سایت کانتست بیان نیز استفاده کردم. علاوه بر آن، از برخی مطالب موچود در سایت Codeforces، به ویژه بلاگ ایوان رومانوف، نیز استفاده کردم. برای عکس‌ها، علاوه بر این منابع، از سایت نردبان نیز استفاده‌شده‌است.

شما از چنین کانتستی چه انتظاری دارید؟ آیا مسابقه‌ی امسال به نظر شما رضایت‌بخش بود؟

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

یک نرم‌افزار تقریبا کاربردی: File and Folder renamer

گاهی اوقات آدم نیاز پیدا می‌کند که کارکتر یا کارکترهایی را از تعداد زیادی فایل حذف کند یا با کارکتر دیگری جایگزین کند. مثلا کارکتر ـ که در فایل‌های دانلودشده معمولا به‌جای فاصله استفاده می‌شود. یا مثلا اسم سایت‌ها که در انتهای فایل دانلودشده می‌بینیم مثل softgozar.com یا downloadha.com که حال آدم را به هم می‌زند (حرکت خزی است. قبول ندارید؟!؟)

در این مواقع آدم پیر می‌شود اگر بخواهد همه‌ی این کارها را دستی انجام دهد و من هم برنامه‌ای برای این کار نیافتم. پس دست به کار شدم و برنامه‌ی ساده‌ای برای این نوشتم. البته این برنامه مدت‌ها پیش (حدود ۱ سال) نوشته شده ولی هنوز هم گاهی اوقات کار راه‌انداز است. البته قرار بود این برنامه در تابستان به برنامه‌ی جامع‌تری با نام FAssist تبدیل شود که به دلایلی نشد پس خود برنامه را به تنهایی منتشر می‌کنیم برود پی کارش!

شما هم می‌توانید برنامه را از همین جا دانلود کنید.

برنامه را باید Run as administrator کنید و همین‌طور .Net Framework 2 روی سیستم خود نصب داشته باشید.

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

FileAndFolderRenamer

فکر نمی‌کنم توضیح بیش‌تری نیاز باشد. در هر صورت اگر مشکلی دارید یا هر چیز دیگر دیدگاه‌تان را بیان کنید!