Fandom

Scratchpad

הסבר

215,640pages on
this wiki
Add New Page
Discuss this page0 Share

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

הסבר קצר על הפרוייקט

מהו הפרוייקט?

אאור שרף, הוא SonOfLilit, מקים בימים אלה קבוצת לימוד לתכנות שתפעל דרך האינטרנט דרך ויקי ומערכות אחרות ותשים דגש:

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

כיצד יתנהל הפרוייקט?

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

מה יש לעשות כדי להשתתף?

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

מה צריך כדי להשתתף?

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

כמה השקעה תידרש מהמשתתפים?

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

ואם יש לי בגרויות?

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

למה לא צ'אט?

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

הרחבה על הדגשים

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

"המתכנת מהדור הקודם"

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

נתקלתי [SonOfLilit] בזה בהמון מקומות. לדעתי הסיבה לכך היא כפולה:

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

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

תכנות, לא שפת תכנות

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

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

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

הכלים והשיטות הנהוגים בתעשייה

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

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

תכנות כתחביב

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

הטכנולוגיות העיקריות שיילמדו

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

SILLIAC

הסיליאק היה מחשב נורות שנבנה בשנת 1956 באוניברסיטת סידני שבאוסטרליה. נלמד באמצעות אמולטור לכתוב תוכניות שיפעילו אותו.

לפרטים: http://members.iinet.net.au/~dgreen/silliac.html

COMMODORE 64

http://he.wikipedia.org/wiki/קומודור_64

הקומודור 64 היה מחשב אישי מאד פופולרי בשנות ה-80 (יצא לי לראות אישית כמה כאלה אפילו בשנות ה90 המאוחרות). הייתה לו קהילת מפתחים חובבים ענקית ורבים מחשיבים את ימי הקומודור ל"טור הזהב של משחקי המחשב".

אני עדיין לא בטוח, אבל כנראה שנלמד לתכנת בשפת

BASIC (http://he.wikipedia.org/wiki/BASIC)

על הקומודור באמצעות אמולטור.

The C programming language

http://he.wikipedia.org/wiki/C_%28%D7%A9%D7%A4%D7%AA_%D7%AA%D7%9B%D7%A0%D7%95%D7%AA%29

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

נלמד גוונים רבים של שימוש בה בסביבת מחשב אישי.

Ruby

http://he.wikipedia.org/wiki/Ruby

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

היא מהירה ונוחה ומתוכננת לפי עקרונות של "כמה שפחות הפתעות" ו"אל תחזור על עצמך".

נלמד שימוש בה בתחומים רבים מאד, החל מניהול מחשב ועד יצירת יישומי אינטרנט מתקדמים בנוחות עם חבילת

Ruby On Rails

.

http://www.ruby-lang.org/ http://www.rubyonrails.org/

שאלות?

הוסיפו כאן שאלות הקשורות לנושא (דרך

Edit

) ואענה בהקדם.


אבי שרביט:

שמתי לב שיש את אותה מערכת וויקי בעברית, נתת קישורים למקורות מידע במערכת הזאת

לא עדיף לפעול במערכת העברית?

ככה לא יהיו בעיות של טקסט לא קריא ולא נצטרך לשנות את כיוון הקריא.

נ.ב. אם אתה רוצה אני יכול לתת לך שרת מחברת

www.sharvit.net

ושתתקין עליו מערכת

GodAnubis

אתה לא הולך ללמד C++ או VB?

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



--SonOfLilit 15:56, 30 May 2006 (UTC)

Also on Fandom

Random wikia