במקביל לסדרת הספרים Platform Studies, בה מציגים פלטפורמות מחשוב קלאסיות בהקשרים רחבים, סדרת Software Studies של MIT מתיימרת להציג את הקוד עצמו – מה שמתכנתים/ות יוצרים – בהקשרים היסטוריים, תרבותיים, כלכליים ועוד. הספר שאסקור כאן, מסדרה זו, הולך לקיצוניות גדולה עוד יותר ומתבונן בשורת קוד אחת ויחידה: תוכנת BASIC זעירה שמציירת מעין מבוך אינסופי על מסך הקומודור 64 . האם אפשר לומר על תוכנה שכזו מספיק דברים מעניינים בשביל למלא ספר שלם?
המשימה של 10PRINT (מטעמי נוחות הקלדה אני לא כותב כאן את השם המלא) היא לא מופרכת כפי שנראה אולי במבט ראשון. שפות התכנות, שאת כלליהן אנחנו רגילים לקבל כתורה מסיני, נולדו והתפתחו כתוצרים של אינספור השפעות וכוחות, ומרתק לראות איך נסיבות היסטוריות, מגבלות חומרה, החלטות של הרגע האחרון ואפילו צירופי מקרים או תקלות הפכו למערכות ולסטנדרטים שממשיכים להתקיים גם שלושים וארבעים שנים מאוחר יותר. הספר כולל לא מעט חומר כזה, שירתק כל מי שמתעניין במחשבים ישנים, בשפות תכנות ישנות ובהיסטוריה של התחום בכללותו (בין השאר, כיצד נולדה חברת מיקרוסופט, והמכונה הלומדת הראשונה – עליה אדבר בהרחבה בפוסט נפרד).
עם זאת, הספר גולש פה ושם למחוזות שהם, לפחות לטעמי, קצת יותר מדי רחוקים. הוא נכתב על ידי עשרה(!) מחברים, ולא כולם כותבים "באותו ראש". הניסיונות לחבר את התוכנה הקטנה לתפיסה תרבותית של מבוכים ושל אקראיות לאורך ההיסטוריה, למשל, או הקישור לאסכולות באמנות ולאמנים ספציפיים, מרגישים בדרך כלל מאולצים. גם בקטעים האלה אפשר למצוא דברים מעניינים, ועדיין התחושה היא שהספר לא מצליח להחליט מי קהל היעד שלו ויורה לכל הכיוונים בלי הבחנה. המבוא ודברי הסיום במיוחד נכתבו, כנראה, כדי לשכנע את הקוראים בחשיבות ובתועלת של ניתוח קוד בהקשר רחב, וזה הופך אותם לפילוסופיים ומשעממים למדי עבור מי שבא מהצד הטכני.
מעבר למה שכבר הוזכר, הספר כולל גם גרסאות של התוכנה שנכתבו על ידי המחברים למספר פלטפורמות אחרות, תוך דיון במאפיינים הייחודיים של כל פלטפורמה וכיצד הם משפיעים על הפרקטיות ואסתטיקה של הקוד ושל המבוך שנוצר, וכן תוכנית שלמה בשפת BASIC (עם הסברים כמובן) שנועדה "לצלם" את המבוך ולפתור אותו אוטומטית.
לסיכום, מדובר בטקסט לא אחיד, ובלי ערך פרקטי מיידי. הוא לא יהפוך אתכם למתכנתים טובים יותר (אפילו לא בשפת BASIC) ולא ייתן לכם כלים שימושיים להתמודדות עם פרויקטים וקוד. הוא דומה יותר לספר היסטוריה, שפה ושם משולבים בו גם פרטים טכניים. ככזה הוא מתאים בעיקר לאנשים עם רקע טכני מסוים, שזוכרים ואוהבים את הפלטפורמות הישנות ורוצים להרחיב את הידע הכללי על העולם שבו הן נולדו והתפתחו.
כהערת שוליים, יש לציין לטובה את איכות הנייר של הספר, ובעיקר את העיצוב שלו (גם מבחינת המבנה, כגון שמות הפרקים, וגם מבחינת הגרפיקה – פונטים, צבעים וכו') שמתכתבים ישירות עם הטכנולוגיה ההיסטורית שבה הוא עוסק.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
Montfort et al.
The MIT press, 2013
309 עמודים, כולל מקורות ואינדקס. להשיג, למשל, כאן.
אני זוכר שהיה טרנד כזה,בתקופת המחשבים האישיים הראשונים שעבדו עם Built in BASIC לכתוב תכניות של שורה אחת (ברוב המחשבים זה היה מוגבל ל 255 תווים), שעושות כל מיני דברים מעניינים.
התופעה מוזכרת בספר (מסתבר שזה היה טרנד גם במגזינים), ומובאות כמה דוגמאות. מה שמיוחד בתוכנה הזעירה כאן זה שהיא תופסת רק שורה אחת על המסך של ה-C64 – מגבלה משמעותית הרבה יותר.
ביקורת מעניינת, וזה נשמע כמו ספר טוב..אולי אקנה בעתיד.
תודה על הביקורת המעניינת!