בערוץ
 
 
 
 
 
 
 
לפרק את הבייט 
להתחרות בתכנות 
 
 מוכנים? היכון, תכנת!    צילום: GettyImages    
לפרק את הבייט |
 

מאלגוריתמים סופר-מתוחכמים ועד למשחקים זוועתיים: כל התחרויות שבהן תוכלו להפגין את כישורי התכנות שלכם

 
 
 
 
 
 
 
 
 
 
 
בעקבות סיומה של תחרות התכנות של גוגל לשנת 2009, עליה דיברנו בעבר, החלטנו לקבץ עבורכם את תחרויות התכנות הגדולות ו/או המעניינות האחרות שמתקיימות ברחבי העולם. אם תמיד רציתם לדעת עד כמה באמת אתם מוכשרים כמתכנתים, או להוסיף לקורות החיים שלכם משהו שיקפיץ אותם לראש הערימה, רשימה זו היא מקום מצוין להתחיל בו.
 

עקרונות כלליים

כמעט כל תחרויות התכנות פונות למתכנתים רבים שעובדים במגוון סביבות פיתוח, ומיועדות להימשך זמן מוגבל וקצר. לכן השאלות שבהן ממוקדות באלגוריתמים מבודדים וקצרים יחסית, הן בסיסיות מאד מבחינת קלט/פלט, ומצריכות רק את כלי העבודה הפשוטים ביותר – כל זאת בניגוד לרוב עבודות התכנות בעולם האמיתי. כמעט תמיד מוטלת מגבלה מהותית גם על זמן הריצה של התוכנית, כדי להבטיח שהמתחרים לא מסתמכים על המהירות של המחשב לביצוע אלגוריתמים גסים אלא ממציאים פתרונות יעילים.
 
 

סטודנט? בוא ל-ACM-ICPC

תחרות תכנות זו היא אולי הותיקה בעולם, ומאז שנת 1997 היא נערכת בחסות חברת IBM. קבוצות של סטודנטים ממוסדות אקדמיים בכל העולם יכולות להירשם, ולהתחרות במקצים האזוריים או העולמיים. כל קבוצה (3 משתתפים, לפי התקנות הנוכחיות) מקבלת מחשב אחד, חמש שעות ושמונה עד אחת-עשרה שאלות אותן עליה לפתור בשפות C, ג'אווה או C++. התכנות עצמו מתבצע, כמובן, בשטח ולא מהבית.

הדרישות הקפדניות של ניהול התחרות מרחיקות אותה מהמתכנת המצוי וגם, כנראה, מהסטודנט הארצישראלי – לא מצאנו באתר כל התייחסות לישראל. אם בכל זאת אתם חולמים על הגביע הספציפי הזה, הנה השאלות שהופיעו בגמר של 2009.
 
לקבוצות מכל העולם
 לקבוצות מכל העולם   צילום: GettyImages 
 

האולימפיאדה לאינפורמטיקה

תחרות מפורסמת אחרת היא ה-IOI, האולימפיאדה הבינלאומית לאינפורמטיקה שרצה מדי שנה מאז 1989. גם כאן, משלחות מכל העולם מתקבצות בארץ המארחת ליומיים או שלושה של תכנות אינטנסיבי (חמש שעות לארבע שאלות בכל יום). התכנות נעשה בשפות פסקל, C או C++ על גבי מחשבים מטעם המארגנים. תחרות זו אינה מוגבלת לסטודנטים דווקא, אך הכניסה אליה אינה חופשית – יהיה עליכם להתגבר קודם כל על המשימה הקשה ביותר: למצוא דרך להתברג למשלחת הישראלית. בינתיים, הנה שאלות ופתרונות מהשנה האחרונה.
 

קודגורו: לבני נוער ישראלים

קודגורו. לבני נוער
 קודגורו. לבני נוער 
 צילום: flickr, Nic's events, cc by sa 
 
אם אתם בני חמש-עשרה עד שמונה-עשרה, תוכלו לנסות את מזלכם בתחרות קודגורו. אתר התחרות אינו מסגיר הרבה מידע על אופן הרישום ועל אופי התחרות עצמה, אך גם כאן יהיה עליכם לעבור מיון מקדים ולהתייצב באתר התחרות הפיזי – לבד או בקבוצות – כדי לפתור בזמן אמת בעיות תכנות. קיימת תחרות מקבילה בשם קודגורו אקסטרים למתכנתי אמסבלי, ככל הנראה בני כל הגילאים, בה עליהם לכתוב תוכנית שתנסה להשמיד את התוכניות המתחרות האחרות ב"זירה" וירטואלית, בדומה למשחק Corewar הוותיק והידוע. כתבה על תחרות זו הופיעה ב-nana10 לפני מספר שנים. חידות לדוגמה אפשר למצוא בפורום האתר.
 

Codechef

Codechef
 Codechef 
 צילום: מתוך אתר הבית 
 
אתר תחרויות מקוון חדש יחסית, גדול ומושקע במיוחד הוא Codechef ההודי (בשפה האנגלית), שכולל תרגילים רבים ברמה קלה, בינונית וקשה, תחרות חודשית עם פרסים וכן הבטחה לתחרות שנתית עתידית כלשהי בשם Codechef Cup. שלא כמו תחרויות מקוונות אחרות, המתחרים (או המתרגלים) אינם מורידים קובץ קלט ומגישים קובץ פלט, אלא מעלים למערכת את התוכנית עצמה, בכל אחת מ-35 שפות לא-קנייניות שונות – חלקן מוכרות ומודרניות וחלקן עתיקות, נידחות ו/או מטורפות כמו Intercal. המערכת מריצה את התוכניות בכוחות עצמה על קלט ופלט משלה, ומחזירה כמעט באופן מידי את התשובה (או את הודעת השגיאה, אם היתה כזו). יש גם מדריכים לעזרה בפתרון, מערכת פורומים, בלוג הודעות רשמיות ומה לא.
 

TopCoder: מנצלים אותך בכיף

האתר TopCoder מציע תחרויות שונות, שהן בעצם כיסוי קלוש לעבודת פרילאנס נצלנית. לא מדובר רק בתכנות אלגוריתמי – ישנם גם אתגרי עיצוב, בניית רכיבי תוכנה לעולם האמיתי ועוד. אתגרים אלה מגיעים ברוב המקרים מחברות חיצוניות, שמתכנתי הבית שלהן כנראה עסוקים מדי או לא מספיק מוכשרים, ולכן הן מממנות את הפרס עבור הזוכה המאושר ומשתמשות בתוצרים שהגיש. אם הרעיון לא מרתיע אתכם, עקבו אחר החדשות – ייתכן שיצוץ משהו שמתאים לכם.
 
TopCoder. עבודת פרילאנס במסווה של תחרות
 TopCoder. עבודת פרילאנס במסווה של תחרות   צילום: צילומסך מאתר הבית 
 

מינימום ג'אווה

מתכנתים משחקים בג'אווה? ייתכן שהתחרות השנתית Java 4K תעניין אתכם: המטרה היא ליצור משחקי מחשב שכל גודלם (בייטקוד + משאבים) אינו עולה על 4 קילובייט. לא ברור אם התחרות עדיין מתנהלת – המשחקים האחרונים שמוצגים הם משנת 2007 – אך בהתחשב בפרסים ובחשיפה המינימליסטיים, נראה שעצם האתגר יכול להיות מעניין הרבה יותר מאשר השתתפות בתחרות עצמה.
 

תחרויות היתוליות

אי אפשר לדבר על תחרויות תכנות בלי להזכיר שתי תחרויות מיתולוגיות, אם כי לא סדירות במיוחד: הראשונה היא IOCCC, התחרות הבינלאומית לקוד C מעורפל. המטרה של תחרות זו היא ליצור את הקוד המכוער, המשונה והבלתי-קריא ביותר שאפשר בשפת C, שעדיין יהיה בעל משמעות, יקומפל בלי בעיה ויפיק תוצאה מועילה (במובן הרחב של המילה). התוכנות הזוכות הן כולן בלתי-קריאות לחלוטין, אך חלק מהמתחרים מגדילים לעשות ומעצבים את הקוד עצמו בעזרת רווחים כך שייראה כמו צורות גאומטריות, מבוכים ושאר עיצובים.
 
הנה, המצאתי שפת תכנות חדשה
 הנה, המצאתי שפת תכנות חדשה 
 צילום: GettyImages 
 
התחרות השניה, פחות מוכרת אך לא פחות מצחיקה, היא ה-CSSCGC – תחרות כתיבת המשחקים המחורבנים (תרגום מילולי) עבור האמולטור של מחשב סינקלייר העתיק והמיתולוגי כשלעצמו. התחרות החלה בשנת 1996 בקבוצת הדיון comp.sys.sinclair, בעקבות זכרונות מרים שהועלו שם מקלטת משחקים בשם Cascade Cassette 50 שנמכרה למשתמשי סינקלייר תמימים והכילה חמישים משחקים איומים ונוראים במיוחד. האתגר בתחרות זו, שמיועדת לכל מי שמוכן לטרוח ולהשתתף, הוא לכתוב את המשחק המופרך, המטופש, המכוער והכי לא ידידותי למשתמש שאפשר – מבלי לאבד את הרוח החמקמקה של משחק אמיתי. ניקוד נוסף מוענק לתיאורים מפוצצים ונלהבים, להיעדר הוראות משחק, למסכי פתיחה מרשימים במיוחד שאין להם שום קשר למשחק עצמו ובעיקר למקוריות. מספר דוגמאות מהתחרות של 2009: יונארי-דוקו, הסודוקו בעל המשבצת האחת; סימולטור של טייס עיוור; ומשחק בו צריך לנחש אם המספר במיקום הבא בזיכרון המחשב גבוה או נמוך מזה שבמיקום הנוכחי.

לרוב, הביקורות שנכתבות על המשחקים מצחיקות עוד יותר מהמשחקים עצמם. הטובות ביותר, אולי, הופיעו בשנת 2004, שהעלתה יבול מרשים של משחקים מחורבנים כגון "פונג: הרפתקת הטקסט", "אדון הטירה המחורבנת" התלת-ממדי שרץ בקצב של 37 פריימים לשעה, או "מצא את הנקודה" בו צריך למצוא איזה פיקסל מתוך כמה מאות פיקסלים אקראיים על המסך הוא הנכון. אפשר גם להוריד את המשחקים, למצוא אמולטור מתאים ו...לסבול.
 
 
 
@@@@@@@@@@@@@@@@@@@ ilan @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 
@@@@@@@@@@@@@@@@@@@ ilan @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 
 
תגובות
הוסף תגובה0 תגובות
הוספת תגובה
מאת
 
נושא
 
תוכן
 
 
 
 
תודה! תגובתך התקבלה.
התגובה תתפרסם בכפוף לתנאי האתר.
 
 
 
 
 

כל הזכויות שמורות 2011 © נענע 10 בע"מ
 
 
 
 
כל הזכויות שמורות © Nana10 בע"מ
Video powered by