Jump to content
  • הצטרפו למשפחה

    היי, היי אתה (או את) שם!

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

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

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

ספר לשפת תכנות


dir="rtl" style="text-align:right;"> שימו לב! השרשור הזה בן 3837 ימים, שזה ממש ממש הרבה ולכן הוא ננעל.

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

פוסטים מומלצים

פורסם

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

 

:roll:

SAY MY NAME | www.alonadler.com

פורסם

אפשר להתעלק בבקשה ?

בעוד 10 ימים אני מתחיל עבודה חדשה כמפתח ג'אווה בלי נסיון.

האם אפשר עצות על איך לבזבז את הימים הקרובים אלה?

יש ידע בסיסי בשפה כמובן אבל אין נסיון.

האם לקרוא ספר? (איזה?) ? להירשם לאתר?

איך אפשר לעבור בצורה הכי יעילה מ"מתחיל" ל "מתחיל+"\ "בינוני-" בתקופה הזאת?

פתגם סיני אומר: "אנשים ג'אחרים מזהים תגובות כג'אחריות."

פורסם (נערך)

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

 

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

תרבות ההשקעות וההערכות בעולם הסטארטאפים יצאה מכלל שליטה לפני מספר שנים טובות והיא תתפוצץ ובענק, השאלה היא רק מתי. כשיש חברות שמכניסות פחות מ1% מהשווי המוערך שלהן, יש פה בעיה רצינית. לפני כמה זמן נתקלתי בחברה ששווה כמעט 15 מיליארד דולר, על הנייר, והיא אכן מתנהגת כך - רק שהיא מרוויחה פחות כסף מהמסעדה מתחת לחברה הזו, בה העובדים אוכלים מידי פעם. המשקיעים בעצם מנפחים את השווי ומשאירים את החשבון לאחרון שקונה כלום בהרבה מאוד כסף ובסוף הזמן יגמר - המוצר לא ימכר והחברה תסגר והבועה תתפוצץ, כי יחד עם החברה הזו גם יפוג הזמן של עוד מאות אם לא אלפי חברות אחרות באותו מצב בועתי. הגישה של החבר שלך בעייתית, היא עובדת באחוז אפסי מהמקרים אבל היא נכשלת ב99% מהמקרים. כשהוא מקים עסק - שיתרכז במוצר\הכנסות\תפוצה של העסק, ככה יקנו אותו, בטח אם אין לו IP עם פטנט מחוזק ורחב - מה שכמעט ולא קיים בעולם הזה.

 

אגב, WAZE הייתה פעם אפליקציה מצוינת (עוד למכשירי נוקיה, כשקראו לה FreeMap) והייתה עובדת הרבה יותר מהר מאשר היום, במכשירים שהמעבד שלהם פי 10 יותר מהיר והזכרון שלהם פי 6 יותר גדול מהנוקיות.

הסיבה היא הירידה הדרסטית והקטסטרופלית באיכות המתכנתים, זרמו אלפי מתכנתים לשוק שהקשר ביניהם לעולם ההיי טק הוא האמא הפולנייה שלהם. בנוסף עולם התעמולה התקשורתית בתחום ההיי טק נסק וכיום TechCrunch, The Next Web וVenture Beat הם דפי הבית של רוב המתכנתים ורוב המתכנתים לא מבינים כלום בשיווק או בתעמולה - ואין להם מושג ש99% מהכתבות שם ממומנות. הם גם לא מצליחים להבין שמשחקים איתם בכל מיני Frameworks הזויים כדי שהם יעריכו את המותג ממנו הFramework הגיע וכדי שאולי ילכו לעבוד שם מתישהו.

 

אם האמנתם לכתבות בטמפלייט הזה: "why I moved to *JS" או "10 reasons to drop *JS and move to *JS", "How I upgraded to *JS" המלאות בסופרלטיבים כמעט בלתי ניתנים להוכחה (Scalable/Extensible/Hartable) נפלתם לכתבה ממומנת במסווה של ידיעה עיתונאית עם גיבוי טכני...

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

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

 

לא הייתי מעז להכליל על מוצרים ישראליים, להיפך, נעשים פה דברים מדהימים ברמת ה-backend/it

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

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

 

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

 

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

כל מפתח ג׳אווה יומיים רוצה לכתוב מובייל ולוקח את אותן פרדיגמות.

באיזשהו מקום זה גם נהיה יותר גרוע כי המכשירים נהיים יותר חזקים אז על פניו כל עוד המוצר פשוט - זה רץ - וכשזה מתחיל להסתבך ולהיות יותר עמוס - זה מתרסק בפנים. (באנדרואיד - בעיות זיכרון של Heap מול Stack - טוענים פתאום כמות תמונות - וביי ביי - כי ה4 גיגה זיכרון של המכשיר לא משנים את זה שיש להם 64 מגה לResourceים ואיך תמונה נפרסת בזיכרון , בiOS זה בגלל הניהול זיכרון שהוא Reference counting ולא Garbage collection ואנשים לא טורחים להבין. שלא לדבר עם ההתקדמות קדימה של פיתוח לכיוון הפונקציונאלי ופרדיגמות MVC שהם ממש חובה כדי להכין מוצר שמשהו יכול לפתח לאורך זמן).

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

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

 

That said - זו גם רעה וחולה שאני רואה בWeb.

אנשים מוסיפים Gemים בלי היכר וספריות JS ללא קץ בלי שמץ של מושג מה כתוב בהן.

 

זה בא באיזשהו מקום מהמחשבה שזהו - לומדים 2 שניות בקטנה ואז יודעים הכל.

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

רוב הגרועים זה אנשים שאמרו - יאללה נעשה קורס ונביא מכה :)

If living is for learning

Then dying is forgetting

פורסם

לא להאמין :) אני ושבלול דיי מסכימים.

 

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

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

אני אוהב את הקורסים בLynda.com בתור מקום סביר ללמוד ממנו עם קורסים גם תיאורטים וגם פרקטיים.

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

 

אם אתה רוצה לקרא ספר סביר להתחלת פיתוח בכלליות - הייתי מתחיל ממשהו בסיסי כמו הספר C הבסיסי של קרניגן וריצ׳י.

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

 

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

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

פיתוח לומדים דרך האצבעות.

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

 

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

 

ליביו

If living is for learning

Then dying is forgetting

פורסם

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

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

פורסם

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

המטרה היא לפתח דברים עצמאית לשימוש עצמי.

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

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

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

 

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

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

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

פורסם (נערך)

פיתוח לומדים דרך האצבעות.

 

זה נכון לכל דבר, בטח לדברים טכניים כמו פיתוח. כדי ללמוד לפתח צריך לפתח.

 

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

 

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

 

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

עריכה אחרונה על ידי Alon_A

SAY MY NAME | www.alonadler.com

פורסם (נערך)

הספר עצמו כבר חינמי:

לינק 1

http://www.ime.usp.br/~pf/Kernighan-Ritchie/C-Programming-Ebook.pdf

 

לינק 2

https://hassanolity.files.wordpress.com/2013/11/the_c_programming_language_2.pdf

 

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

ג׳אווה לא דומה ל-c, אם כבר, להיפך, איבדו שם כמה דברים. מבחינת syntax, רוב השפות שתיתקל בהם בימי חייך נובעות מ-c.

עריכה אחרונה על ידי hans

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

פורסם
הספר עצמו כבר חינמי:

http://www.ime.usp.br/~pf/Kernighan-Ritchie/C-Programming-Ebook.pdf

 

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

ג׳אווה לא דומה ל-c, אם כבר, להיפך, איבדו שם כמה דברים. מבחינת syntax, רוב השפות שתיתקל בהם בימי חייך נובעות מ-c.

 

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

פורסם

כמו שידידי האנס פירסם - זה אכן הספר.

אם לא מצאת בקלות:

http://www.amazon.com/gp/product/0131103628/ref=s9_simh_gw_g14_i1_r?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=desktop-1&pf_rd_r=0NY3WV125V1H9S1JTX40&pf_rd_t=36701&pf_rd_p=2079475242&pf_rd_i=desktop

 

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

 

ויזואל בייסיק לא באמת שונה מרוב השפות האחרות , אבל אם למדת אותה פעם - בעיקר הפרדיגמה של איך שהפונקציות רצות (Interface builder וEventים שעושים טריגר) שונה. (ודומה יותר למה שהולך בMobile בהרבה מהUI).

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

גם הסביבה (דוס , Windows , Mac או לינוקס) לא באמת משנה כשאתה מרמה מסוימת.

(מזכיר לי איך הרבה חטפו חום כשהקורס פיתוח בC שלנו היה על שרת linux מרוחק אחרי שכולם התרגלו ל.net וJava בשנה השניה. מי ישמע)

 

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

 

תחלק את הלמידה שלך ל3 לדעתי:

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

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

3. הגעת עד לפה - יש אוסף נושאים מסביב שטוב לדעת:

הראשון הוא Debug - איך להתמודד עם התרסקויות , לצפות אותן , להריץ בדיקות Performance וכו.

הנושא השני היותר מדעי מחשב קלאסי זה כל מני אלגוריטמים ומבני נתונים - http://www.amazon.com/Introduction-Algorithms-Edition-Thomas-Cormen/dp/0262033844 , בלי קצת מתמטיקה ברמה גבוהה זה עלול לעוף לך מעל הראש - הוא מיועד לתלמידי מדעי מחשב בשנה שניה , שלישית.

הנושא השלישי הוא ללמוד כל מני מבנים ופרדיגמות שתראה הרבה תוך כדי הפיתוח - Design patterns - כמו פה לדוגמא http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612 אתה תתקל בזה המון תוך כדי הפיתוח וכדי לא לעשות דברים שהם טעויות פיתוחיות קלאסיות - שווה לדעת לפחות את הבסיס והתיאוריה של זה.

If living is for learning

Then dying is forgetting

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

 

השפה שיותר חייה אם כבר זה C++ שבמירוץ מתמיד של עדכון גירסאות ופיצ׳רים (שאגב בXcode במק - הם עוקבים אחריהם קצת יותר קרוב מבVisual studio - אבל שתי הפלטפורמות עושות עבודה יפה סה״כ בשנים האחרונות) וכבר הפכה לדבר סבוך למדי :)

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

If living is for learning

Then dying is forgetting

×
×
  • תוכן חדש...