לדף הכניסה של ישרא-בלוג
לדף הראשי של nana10
לחצו לחיפוש
חפש שם בלוג/בלוגר
חפש בכל הבלוגים


"וכל אימת אשר גאון אמיתי יגיח אל אוויר העולם, ידוע תדע אותו, שכן החולירעות כולם יבואו בברית כנגדו."

Avatarכינוי: 

בן: 43

Google:  iggyjacrei

תמונה





מלאו כאן את כתובת האימייל
שלכם ותקבלו עדכון בכל פעם שיעודכן הבלוג שלי:

הצטרף כמנוי
בטל מנוי
שלח

RSS: לקטעים  לתגובות 
ארכיון:


12/2017

שעתי היפה ביותר (או: איך כמעט והצלתי את ישראבלוג במו ידי) (וגם הזמנה למסיבת פרידה מקוונת)


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


חברי ישראבלוג הנכבדים!

 

כידוע, האתר עומד להסגר בקרוב. עוד כידוע, ב-30 בחודש יתקיים אירוע בתל אביב לציון המאורע. עוד יותר כידוע, יש לא מעט בלוגרים ובלוגריות שלא מתכוונים להגיע לאותו אירוע (אני דווקא כן. סתם לידע כללי), ומחזיקים בדעה שמדובר בהתכנסות שחוטאת לאופי האתר ולטבעו. בנוסף, מכיוון שמדובר בפאב, בני הנוער מודרים מהאירוע, והמבוגרים שבינינו עשויים שלא לחוש בנוח בסביבה צעירה, דינאמית ומתודלקת אלכוהול. אי לכך, ברצוני להציע דרך אלטרנטיבית להתאסף כקהילה ביום הגזירה, ובאופן שיותר קולע לדרך שבה התרגלנו לעשות דברים ב-15 השנים האחרונות: באנונימיות, כל אחד בביתו, לבד, מול המחשב, רצוי בחושך.

 

לצורך העניין פתחתי חדר צ'אט ב-IRC ואליו מוזמן כל מי שרוצה להרגיש שהוא לא לבד בזמן שהשרתים מפסיקים לעבוד (או יותר נכון, מפנים אותנו לאתר של ערוץ 10). היתרון שבצ'אט רום לעומת פייסבוק, וואטסאפ או פלטפורמות אחרות? אנונימיות וקלות גישה. אין צורך להירשם: בכניסה לחדר הצ'אט תתבקשו לבחור כינוי, ובמידה והוא פנוי, זה יהיה שמכם. הוא צריך להיות באנגלית, וזה יהיה נחמד אם הוא ירמז על זהותכם כאן (אני, למשל, Ignatius). אם לא בא לכם לחשוף אפילו את זה, לא צריך. הרעיון הוא פשוט לשרוץ בתחושת פסאודו-קהילתיות עד שיימאס.

 

לכניסה, יש ללחוץ כאן: http://chat.mibbit.com/?channel=%23Israblog&server=irc.mibbit.net

 

לא חובה לחכות ל-31 בחודש. אפשר להיכנס כבר עכשיו, או מתי שרק בא לכם.

 

ועכשיו, לפוסט:

 

 

שעתי היפה ביותר (או: איך כמעט והצלתי את ישראבלוג במו ידי)

 

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

 

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

 

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

 

איווט, למי שלא קרא את הפוסטים שעסקו בה, ופספס את זה שהיא מופיעה ברשימת "הנפשות הפועלות" היתה בלוגרית שהכרתי מהסיבוב הראשון שלי בישרא באיזור 2004-7, וסוג של נשארנו בקשר רופף גם בשנים שלאחר מכן. היא התאבדה ב-25/05/15, ואני מקווה שהיא לא בחרה את התאריך הזה בגלל כל החמשים שמופיעים בו, כי זה דיי דבילי. הבלוג שלה זה כל מה שנשאר ממנה, ולאבד את זה לתהום הנשייה בגלל שמישהו בערוץ 10 הגיע למסקנה שעלות השרת זה מה שיעשה את ההבדל הגדול, זה בלתי נסבל.

 

הדבר הראשון שעשיתי היה להריץ כמה חיפושים בגוגל ולראות מה יש לו להציע בתחום גיבוי אתרים. מספר תוכנות חינמיות עלו ברשת, אבל כשניסיתי להריץ אותן זה לא עבד. עכשיו, בניגוד אולי לרושם שקיבלתם כאן במשך השנים, יש הרבה דברים שאני לא יודע. למעשה, יש לי חורים דיי מביכים בהשכלה. למשל, אני לא מבין כלום בביולוגיה. יש לי אפס הבנה בכימיה. ועוד פחות מזה אני יודע איך עובד האינטרנט. טוב, זה לא לגמרי נכון; יש לי מושג מסוים בנוגע לרשתות ושרתים, ולמעשה (ואני לא חושב שציינתי את זה בבלוג בעבר) אני MCSA מורשה של מייקרוסופט. בפועל זה אומר שעברתי שלושה מבחנים שונים שזיכו אותי בתעודה כלשהי. עוד יותר בפועל זה אומר שאני דיי טוב בלעשות מבחנים. זה לא אומר שאני באמת יודע משהו מהחיים שלי. בכל מקרה, בין שאר הדברים שאני לא מבין בהם כלום נכללים גם HTML ו-JavaScript.

 

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

 

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

 

כתובת לדף כלשהו נראית בצורה הזו: israblog.co.il.....blog#....year....month....day.....page. למה יש שם day, אין לי מושג. הוא תמיד שווה לאפס. אבל אפשר פשוט לרוץ על כל השנים הרלוונטיות, ובכל שנה על כל החודשים, ובכל חודש על כל הדפים, ולהוריד את כולם. אבל רגע, איך אפשר לדעת כמה דפים יש בכל חודש? פשוט, מורידים דף ראשון, דף שני, דף שלישי וכן הלאה, עד שמגיעים לדף ריק, כזה בלי פוסטים. כשמגיעים לדף ריק מוחקים אותו (שלא ישב לנו סתם על הכונן) ועוברים לחודש הבא. פרפקט, רק... איך מזהים דף ריק?

 

הרעיון הראשוני שלי היה להוריד דף שאני יודע שהוא ריק (נגיד להוריד דף מלפני שישרא היה קיים, או ממתישהו בעתיד) "ולשקול" אותו. אחר כך כל דף שאוריד אוכל לשקול ולהשוות למשקל הדף הריק.

מצוייד באלגוריתם הבסיסי הזה פתחתי את פנקס הרשימות והתחלתי לממש את הרעיון בצורת סקריפט Batch. ולמה בחרתי דווקא ב-batch? דבר ראשון, זה נראה לי מתאים לגבות אתר ישן ואנאכרוניסטי באמצעות שפת הסקריפטינג הכי ישנה ופרימיטיבית שאני מכיר. זה גם היה כיף, כי זה הזכיר לי את ילדותי כשהמחשבים עבדו על דוס, ואם לא ידעת פקודות דוס בסיסיות לא יכולת להפעיל אף משחק.

 

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

 

הבעיה היא שזה לא עבד. אני לא בטוח בדיוק למה לא, כי רק התחלתי להתעמק בזה  כשהבנתי שיש דרך הרבה יותר פשוטה מאשר לשבור את הקוד ולכופף אותו בזוויות שהוא לא אמור להתכופף בהן. הצצתי בקוד ה-HTML של דף ריק ובקוד של דף עם פוסטים, והבנתי שבדפים עם פוסטים מופיעה המילה "postedit", עם הגרשיים (בדף ריק היא מופיעה רק בלי). ב-batch, לבדוק אם מילה כלשהי מופיעה בקובץ טקסט זה הרבה יותר פשוט מאשר לנסות ולקבל מידע אודות המשקל של הקובץ, אז זנחתי את הרעיון המקורי וכתבתי את הקוד מחדש. הפעם זה עבד, וקשה לי לתאר את תחושת הפליאה והתרוממות הרוח שחוויתי כשהדפים פשוט הופיעו בספרייה המיועדת.

 

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

 

למחרת הכנתי סרטון שמסביר איך להשתמש בסקריפט שהכנתי. מכיוון שזה הצריך להוריד את wget בנפרד, ואז להריץ קובץ בתוך ספריה מסוימת, חששתי שאנשים שלא הכי מתמצאים בתחום יסתבכו. להקליט סרטון התברר כקשה יותר מלכתוב את הסקריפט, וגם לקח יותר זמן (אפשר לראות איך השעון של המחשב קופץ בחצי שעה-שעה מדי פעם), בעיקר כי המחשב שאני משתמש בו הוא לפטופ דיי מזובל שבקושי הצליח לסחוב את התוכנה של ההקלטה. מאיזושהי סיבה נתקע לי רעיון שמוזיקת הרקע לסרטון תהיה The End של הדלתות, ושבסוף יופיע הלוגו של ישראבלוג עם איזה כיתוב מצחיק ורק ישמעו את ג'ים מוריסון צועק שזה הסוף. בקטע מטורף לגמרי גם יצא שהסרטון היה באורך של השיר. אבל אחרי שהדבקתי אותם ביחד, הבנתי שקשה מאוד להבין אותי כשמישהו שר ברקע (גם ככה הקול שלי נשמע כאילו מושבה של חייזרים התמקמה לי באף). אז החלטתי שאחתוך כמה קטעים אינסטרומנטליים מהשיר ואנגן אותם בלופ. וכך מצאתי את עצמי בשלוש לפנות בוקר מנסה נואשות לחתוך קבצי אודיו ככה שהם לא יעשו קליק מעצבן בנקודת החיבור.

 

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

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

 

כמו שאנחנו יודעים, ישראבלוג חזר מקץ 24 שעות מורטות עצבים, ויכולתי לפרסם את הסקריפט שהכנתי. אבל עד שזה קרה כבר ידעתי שאני רוצה לקחת את זה יותר רחוק. זה כבר לא היה עניין של לקחת מה שאפשר מהבניין הבוער ולברוח אל תוך הלילה. זה כבר הפך לאישי, ומה שעמד כנגד עיניי היה גיבוי מלא ומוחלט של הבלוג, כזה שישאיר אותו כמה שיותר קרוב למה שהוא היה בחייו. כבר היה לי מושג כללי איך אני מתכוון לעשות את זה, אבל מה שברור היה זה שאני חייב להחליף שפת סקריפט. לקחתי את ה-batch הכי רחוק שיכולתי, והגיע הזמן להחליף את הכפית באת חפירה. אז עברתי ל-VBScript, מתוך שיקול ש-א. זה יעבוד על כל מחשב שמריץ ווינדוז בלי טראראם מסביב, ו-ב. זה יהיה הרבה יותר קל לשימוש מאשר, נגיד, לקחת עכשיו C או ג'אווה ולנסות להיזכר בכללי התחביר חצי יום. אומנם מעולם לא כתבתי שום דבר עם VBScript לפני כן, אבל כן יצא לי להשתמש בסקריפטים מוכנים ולהציץ בקוד שלהם, וזה נראה די self-explanatory.

 

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

 

ופה אני חושב שצריך לומר כמה מילים על הרקע שלי בתכנות. בכיתה ז' מישהו הראה לי איך לצייר צורות באמצעות qbasic, ומצויד בידע הזה חזרתי הביתה וכתבתי את התוכנה המגניבה הראשונה שלי: אתה עיגול לבן שצריך להגיע מצד אחד של המסך למשנהו, ובדרך יש כל מיני עיגולים אדומים שזזים באופן אקראי ואסור לך שיגעו בך. אחרי זה לא ממש נגעתי בשפת תכנות עד שהגעתי להנדסת חשמל ושם למדתי C. זה היה אחד משני הקורסים היחידים שעברתי, והוא בא לי ממש בקלות. שלוש או ארבע שנים לאחר מכן למדתי Java כחלק ממספר קורסים שלקחתי במדעי המחשב. זה היה דיי נחמד. אבל צריך להבין שלמרות שסקריפט הגיבוי הוא פשוט מאוד לעומת הדברים שהייתי צריך לעשות בג'אווה ובסי, הדברים שעשיתי באוניברסיטה היו מאוד תיאורטיים ולא קשורים לכלום. הדבר הכי מוחשי שעשיתי היה לתכנת לוח שחמט עם "k מלכות" ולחשב כמה צעדים יידרשו להגיע למט. וגם זה, אפילו אם אתה שחקן שח נלהב, לא בדיוק רלוונטי לחיים שלך. בקושי ראיתי משחקי שח שמגיעים בהם למצב של שתי מלכות מאותו צבע, ואף פעם לא ראיתי משחק עם שלוש. אז כמה שהסקריפט לא היה מרשים מבחינה חישובית, העובדה שהוא עבד ועשה משהו אמיתי וחשוב היתה מדהימה בעיניי.

 

ולא רק מבחן התוצאה שימח אותי. גם התהליך. מאז ומתמיד התקשיתי להושיב את עצמי לעשות דברים, גם כאלו שרציתי לעשות. וכשכבר הצלחתי לשבת עליהם, הייתי מאבד ריכוז מהר מאוד. היוצאים מן הכלל היו קריאה ומשחקי מחשב, שבהם יכולתי לשקוע שעות על גבי שעות ולשכוח מכל העולם. הבעיה עם הדברים הללו היא שהם לא פרודוקטיביים. כשאתה משחק במחשב, אתה לא "עושה משהו", אתה "נמנע מלעשות משהו". עם הסקריפט, זאת בעצם היתה הפעם הראשונה (שאני זוכר) ששקעתי כל כך חזק במשהו שאשכרה אפשר לסווג אותו כ-"לעשות משהו". זה היה לא פחות מנפלא. הלוואי ואצליח להגיע למצב דומה באופן הכתיבה שלי. אילו יכולתי לקום בבוקר, להתיישב על המחשב ופשוט לכתוב בלהט עד לארוחת הצהריים, ואז לשכוח ממנה והמשיך רצוף עד לארוחת הערב, ואז לקום ולבחון בסיפוק את מעשה ידיי, אני חושב שביום ההוא אני אהיה באמת ובתמים מאושר.

 

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

 

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

 

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

 

גיבוי הלינקים זה איפה שהתחלתי להסתבך. דבר ראשון, האופן שבו הסקריפט מגבה את הבלוג בדפים הופך קישורים לפוסטים ספציפיים ללא פעילים. הרי אין יותר פוסט ספציפי, הכל שמור על דפים סטטיים. הפתרון שחשבתי עליו היה דיי מבריק, לדעתי: אפשר לשלוח קישור לדף HTML באופן שהוא ייפתח במקום מסוים במסמך על ידי שימוש בתגיות. מה שתכננתי לעשות הוא שבכל דף שיורד ליצור תגית בתחילת כל פוסט, וגם ליצור אינדקס שזוכר איזה פוסטים מופיעים בכל דף. לאחר מכן (אחרי שכל הדפים כבר ירדו) התכוונתי לרוץ על כולם מחדש, ובכל מקום שיש לינק לפוסט ספציפי להחליף את הלינק כך שיצביע על הדף שמכיל את הפוסט הזה, עם הקפצה לתגית האישית שלו (באמצעות האינדקס ששמרתי). התוצאה היתה אמורה להיות שכשלוחצים על לינק לקישור ספציפי (נגיד, יומן מסע ליפן, פרק 7) במקום שייפתח הפוסט הספציפי, ייפתח כל הדף שמכיל אותו, וייקפוץ ישירות לתחילת הפוסט המבוקש.

 

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

 

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

 

השעה כבר היתה דיי מאוחרת בלילה. בעודי נאבק, קיבלתי התראה על תגובה חדשה בבלוג. היה זה Aldurama שפרסם סקריפט גיבוי משלו. חשתי לבדוק אותו וגיליתי שהוא עושה באלגנטיות את מה שאני מנסה לעשות בכוח גס. בגדול, אפשר לומר שהגישה שלי היתה להתעלם מה-JS איפה שרק אפשר, ולהחליף אותו ב-HTML איפה שאי-אפשר. המניע העיקרי לכך היה שמעולם לא התעסקתי עם JS לפני כן, וכמה שהידע שלי ב-HTML לוקה בחסר, ב-JS אני יודע הרבה פחות. הגישה של Aldurama, לעומת זאת, היתה לעבוד עם ה-JS. הוא לא ניסה לריב איתו, להחליף אותו או לשבור אותו לחלקים קטנים. הוא פשוט השתמש בו, וזה הפך את עניין הלינקים הבין-דפיים ל-non-issue .

 

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

 

לאחר מכן פרסם איתי~ כלי גיבוי נוסף שגם גיבה את הרשימות וגם פתר את בעיית הלינקים לפוסטים ספציפיים: הוא נקט באותה שיטה של שימוש ב-JV הקיים, אבל לקח את זה צעד אחד הלאה בכך ששמר לא רק את הפוסטים כפי שהם מופיעים בדפים, אלא גם את הפוסטים בנפרד, ולמעשה הגיע לדרגת שימור כמעט מושלמת של הבלוג בצורתו המקורית. (חוץ מזה שהרשימות לא מוצגות כראוי, אבל הן כן נשמרות על הדיסק המקומי, ואפשר לתקן את זה עם בדיעבד עם סקריפט אחר שכתבה מגיבה בשם מיס ג', שבעצם עושה את מה שהסקריפט של עשה: קובע אורך שרירותי לרשימות) (עדכון: הוא סידר את הרשימות, הידד!)

 

אז לסיכום החוויה: היה כיף. קודם כל, אני שמח שיש פתרון לגיבוי הבלוגים שעושה את זה בצורה הכי טובה שיכולתי לבקש. אני גם דיי מרוצה מכך שהצלחתי להגיע קרוב לשם בכוחות עצמי, גם אם בדיעבד אני מבין שלא ניגשתי למלאכה בצורה הכי חכמה. אבל מדברים כאלו לומדים. בכלל, זו היתה חוויה מאוד לימודית עבורי. למדתי לעבוד עם VBS, התעמקתי קצת ב-HTML ואפילו רכשתי היכרות בסיסית (מאוד) עם JS. יצא לי, בפעם הראשונה, לעשות משהו מועיל ומעשי בתכנות. ואולי יותר מכל – היתה לי מטרה שהעסיקה אותי באופן כזה שהרגשתי שאני עושה משהו חיובי עם הזמן שלי. אפילו מצאתי את עצמי עם מספיק מוטיבציה לפתוח NetBeans ולהתחיל לעבוד על משהו בג'אווה שחשבתי עליו בפעם הראשונה בפאקין 2010, אבל לא היה לי כוח ליישם אותו בפועל.

 

ומי יודע, אולי בעוד 30 שנה אשב ואספר לנכדים (של אחותי, כנראה) על הפעם ההיא שדוד איגנציוס כמעט והציל את ישראבלוג, לגמרי לבדו, אל מול כוחות השחור והרשע של ערוץ 10, נענע והמערכת המטרית. על מי אני עובד, סביר להניח שאעשה את זה בכל פעם שאראה אותם, שזה כנראה יהיה פעם בשנה, באיזה מחסה מט לנפול לאנשים זקנים השוגים באשליות גדולה לא-להם.

 

 

נכתב על ידי , 26/12/2017 23:41  
38 תגובות   הצג תגובות    הוסף תגובה   הוסף הפניה   קישור ישיר   שתף   המלץ   הצע ציטוט



17,198
הבלוג משוייך לקטגוריות: 30 פלוס , מדע בדיוני ופנטזיה , ספרות
© הזכויות לתכנים בעמוד זה שייכות לאיגנציוס אלא אם צויין אחרת
האחריות לתכנים בעמוד זה חלה על איגנציוס ועליו/ה בלבד
כל הזכויות שמורות 2026 © עמותת ישראבלוג (ע"ר)