jQuery למתחילים

שלום לכולם,

כבר הרבה זמן שאני רוצה ומתכוון להקליט ScreenCast על jQuery.

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

אשמח לתגובות

מעבר על jQuery from Avi Tzurel on Vimeo.

ולידציה לתעודת זהות ישראלית בC#

שלום חברים,

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

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

תיהנו

   1: public static bool validateID(string idNumberString)

   2: {

   3:     if (idNumberString.Length < 9)

   4:         return false;

   5:

   6:     int int1 = Convert.ToInt32(idNumberString.Substring(0, 1)) * 1;

   7:     int int2 = Convert.ToInt32(idNumberString.Substring(1, 1)) * 2;

   8:     int int3 = Convert.ToInt32(idNumberString.Substring(2, 1)) * 1;

   9:     int int4 = Convert.ToInt32(idNumberString.Substring(3, 1)) * 2;

  10:     int int5 = Convert.ToInt32(idNumberString.Substring(4, 1)) * 1;

  11:     int int6 = Convert.ToInt32(idNumberString.Substring(5, 1)) * 2;

  12:     int int7 = Convert.ToInt32(idNumberString.Substring(6, 1)) * 1;

  13:     int int8 = Convert.ToInt32(idNumberString.Substring(7, 1)) * 2;

  14:     int int9 = Convert.ToInt32(idNumberString.Substring(8, 1)) * 1;

  15:

  16:     if (int1 > 9) int1 = (int1 % 10) + 1;

  17:     if (int2 > 9) int2 = (int2 % 10) + 1;

  18:     if (int3 > 9) int3 = (int3 % 10) + 1;

  19:     if (int4 > 9) int4 = (int4 % 10) + 1;

  20:     if (int5 > 9) int5 = (int5 % 10) + 1;

  21:     if (int6 > 9) int6 = (int6 % 10) + 1;

  22:     if (int7 > 9) int7 = (int7 % 10) + 1;

  23:     if (int8 > 9) int8 = (int8 % 10) + 1;

  24:     if (int9 > 9) int9 = (int9 % 10) + 1;

  25:

  26:     int sumOfAllInts = int1 + int2 + int3 + int4 + int5 + int6 + int7 + int8 + int9;

  27:

  28:     sumOfAllInts = sumOfAllInts % 10;

  29:     if (sumOfAllInts > 0)

  30:         return false;

  31:     else

  32:         return true;

  33: }

הקוד המקורי מאתר ASP תרגמתי אותו לc# והוספתי ולידציה לאורך של 9 תווים בהתחלה.

שיהיה בכיף!

אם אתם משתמשים בקוד שימו איזה תגובה כדי שאני אדע :-)

פתרון גיבוי מלא וחינמי למחשב באמצעות SyncBack

שלום לכולם,

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

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

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

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

תודה

גיבוי מלא למחשב באמצעות Syncback from Avi Tzurel on Vimeo.

סקיילינג – או איך לא תענשו בחומרה – פתרון אמיתי

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

במה הפוסט יעסוק?

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

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

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

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

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

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

לחברת בניית האתרים VVV יש כ150 לקוחות, חלק מהלקוחות הינם לקוחות עם חנות וירטואלית אתרי תדמית ומערכות אחרות, חלק בנויות בAsp.Net וחלק בClassic ASP.

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

המטרה: להגיע ל7 שניות ללא שיפורי קוד ומשם לשפר את הקוד עד ל1-3 שניות.

טוב, יאללה לעבודה.

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

סליחה עם ניפצתי למישהו איזה בועה

עכשיו באמת אפשר להתחיל

שלבי העבודה:

קוד

  • 1. בדיקת איכות הקוד
  • 2. בדיקת טיוב שאילתות בסיס נתונים
  • 3. בדיקת גישות לבסיס נתונים מרמת האפליקציה
  • 4. בדיקה גישות לדיסק דרך הקוד (כתיבת וקריאת קבצים)

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

בדיקת איכות הקוד

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

בדיקת איכות הקוד הראשונית אומרת לבדוק את שיטת העבודה, במידה ומדובר בAsp.Net לבדוק שימוש יתר בViewState, שמירה של אובייקטים גדולים מדי בזיכרון או שמירה של אובייקטים לא מתאימים.

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

עוד…

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

רגע זה לא Refactoring???

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

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

בדיקת טיוב שאילתות בסיס נתונים

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

הכול מנותב דרכו, יש לוגיקות שהוא מנהל ויש מקרים שהוא סתם Data Storage Center, עכשיו מה זה אומר טיוב…?

אני אגיד מה זה לא אומר… זה לא אומר לבדוק 2 שניות או 1.5 שניות, זה אומר לבדוק מקרים שבהם יש TimeOut.

סיפור אמיתי, אני נשבע!

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

שמירה לטבלה הזו לקחה 2 שניות, משיכה ממנה לקחה 7, לעיתים אפילו הSQL קיבל TimeOut.

רגע, אז מה אני עושה במקרה כזה? או… גם המתכנת שאני לקחתי דרך אתר XYZ עשה את זה, מה אני יכול לעשות עכשיו.

אם יש לכם Sql Server 2005 או 2008 ואפילו 2000 (אלוהים יודע למה) עם רישיון מלא אתם יכולים להגדיר Jobs, אצל הלקוח VVV אני הגדרתי JOB שבודק את התאריך (שגם הוא לא היה) של השמירה, היות ונתוני Session נמחקים לאחר 20 דקות בכול מקרה ברמת השרת פשוט וידיתי מחיקה גם מבסיס הנתונים.

100 מוצרים בדף, 20 דפים

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

לא הגיוני נכון?

אז ככה, אני מוכן לעשות התערבות שאם יש לכם אפליקצית Dot NET שמישהו בנה לכם הדפדוף הוא בצורה כזו ב95% מהמקרים מה שאומר שהשרת שלכם מבזבז עשרות אלפי בייטים מבוזבזים של מידע שעולים לכם בNetwork עולים לכם בSystem.IO ועוד.

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

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

בואו נגיד שעד 10 זה בסדר (לא מצוין אבל בסדר)

14-08-2009 15-09-28

מה זה הציור הזה?

ראשית הקרדיט לבלסמיק :-)

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

עכשיו בואו נראה מה קורה בתרשים גישות מאוד ציורי :-)

with_arrows

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

בדיקה גישות לדיסק דרך הקוד (כתיבת וקריאת קבצים)

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

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

יש להשתמש בDisk Caching ולא ליצור את התמונה On Demand במידה וכבר יש אותה.

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

אבל רגע, השרתים עדיין מראים בניטור ניצול מלא כמעט של זיכרון, ניצול מעבר ליכולות הדיסק הקשיה ו20% ניצול CPU (במושגים של שרת זה די אומר שאתם בזבל :-) )

חומרה, אבל לא עונש

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

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

אבל לפני הכול, שיקולים שיש לקחת בחשבון

1. זמן Uptime
2. שרידות מערכת אפליקטיבית
3. קצבים (לא butcher אלא pace :-) )

זמן Uptime

המון חברות אכסון שבהן אני נתקל באינטרנט מתגאים ב99.9% זמן Uptime, זה ברור :-) אבל לא לזה אני מתכוון.
זמן Uptime מבחינתי אומר – כמה שפחות Down time.

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

שרידות אפליקטיבית

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

קצבים

קצב קריאות אפשרי לבסיס הנתונים, קצב כתיבה לדיסקים, קצב רשת

זול וטוב, או… נחשוב עוד שנתיים שוב

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

14-08-2009 15-35-18

מה יש לנו כאן

יש לנו שרת SQL יחיד שמתבסס על Dell R610

14-08-2009 15-38-04 שני מעבדי Quad Core
8 GB זכרון פנימי 1333MHZ DDR3
6 דיסקים קשיחים 73GB SAS
שני ספקי כוח בRedundancy כלומר פתרון Fail Safe

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

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

שרת נוסף IIS נועד להחזיק את האתרי ASP, אין יותר מדי מה להתעמק בו

שרתי הIIS לא צריכים להיות סופר חזקים כמו שרת הSQL ויכולים להיות מבוססים על R410.

רגע רגע, חסר מלח לא?

חסר כאן משהו נכון?
חסר כאן פתרון גיבוי לשרתים נכון?

ובכן לא, כרגע אין צורך ברכישה של אכסון חיצוני מכיוון שהשרתים מגבים בינם לבין עצמם, שני שרתי הIIS הם Mirror ולכן אין צורך בגיבוי של אך אחד מהם מכיוון שהם זהים ותמיד "יראו" אותו דבר.

הסיכוי לכישלון חומרה בין שניהם קטן מהסיכון בחוסר גיבוי ולכן בשלב זה מוותרים (זה הפתרון הזול זוכרים)

שרת הIIS מגבה לSQL וההיפך, הגיבוי הזה קובץ פעם בלילה בין שני שרתי הIIS האחרים.

פתרון גיבוי מלא, לא מיטבי ולא Best Case אבל מלא.

אני הייתי שם בחווה HD חיצוני 2TB של Western Digital שמחובר בUSB או ברשת לאחד השרתים ויחזיק את הגיבויים, אחת לשבוע הייתי עושה גיבוי גם ברמת החווה.

FailSafe – מיידי (בגיבוי)

חסרון הפתרון

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

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

image002
בשביל לעשות סדר, בואו נחלק את הפתרון לשלושה חלקים

with_icons

קצת סדר בבלאגן

1. DATA
שני שרתי SQL עם Active/Passive כלומר רק אחד מהם פועל כול הזמן, השני נכנס לעבודה במקרה של קריסה אפליקטיבית או חומרתית.
מה זה הקטן לידם אתם שואלים? :-)
השרת הקטן לידם הוא זה שאחראי להעביר את המידע בין השניים ואת הקבצים, כך שניהם תמיד "נראים" אותו דבר מבחינת האפליקציה ויכול להיות מצב שגולש ישהה בדף ואפילו לא יבחין בנפילה של בסיס הנתונים.

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

3. IIS קטן
לאתרים הקטנים יותר שלושה שרתים שפשוט מחלקים בינהם את העומס בצורה מאוד פרימיטיבית, חלק מהאתרים יושבים על X חלק על Y וחלק על Z

גיבוי

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

שיקולי תקציב

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

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

הפתרון הראשון יוריד כ30% מזמני התגובה של המערכת באופטימום ועוד כמה אחוזים בעומס מכיוון שיש כאן יותר חומרה

הפתרון השני יעשה הבדל של בערך פי 2

כתבו עלי בYnet עכשיו, מה אני עושה

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

זהו.

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

אשמח לשמוע ולקרוא תגובות שלכם

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

כלים ושירותים בהם אני משתמש – חלק ג'

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

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

שוב, הנה אנחנו מתחילים, זוכרים שאין סדר הגיוני נכון?

Xenu – Link sleuth

800px-xenu_screenshot_zi2

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

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

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

התוכנה מוציאה דו"ח התקדמות ודוח סופי, מאוד יעילה ומהירה.

זוהי פעולתה הרשמית של התוכנה :-)

הפעולה הלא רשמית היא Load test מאוד פרימיטיבי, התוכנה יכולה לפתוח מספר Threads ובכך לדמות עשרות משתמשים שגולשים לאתר. לא הייתי מסתמך על זה, אבל זו יכולה להיות בחינה ראשונית מאוד יעילה, אני פעם כך עליתי על Connection שנשאר פתוח.

להורדה כאן

Keepass – Password safe

KeePass Password Safe(6)_1

סיסמאות, סיסמאות ושוב סיסמאות.

בכמה אתם משתמשים? אחת? שתיים? שלוש? שקרנים.

התוכנה הזו תקל עליכם מאוד. אני למשל מנהל 8 שרתים עם עשרות חשבונות, SQL, mySql חשבונות בPaypal ועוד.

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

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

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

התוכנה קלה מאוד הן במשקל הפיזי והן בשימוש.

להורדה כאן

PassPack

passpack-online-privacy-manager_1185598891103

אתם בטח אמרתם לעצמכם (בלב) שזה ממש 90's להשתמש בתוכנת Desktop לשמור סיסמאות, אני יכול לעשות את זה באינטרנט.

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

האתר PassPack נותן לכם את כול האפשרויות שהתוכנה נותנת (כמעט) רק אונליין וזמין מכול מקום.

האתר מאובטח מאוד (לעיתים יותר מדי, אתם תבינו למה אני מתכוון כשתכנסו לאתר)

האתר כאן

Windows Live Writer

windowslivewriter2008

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

התוכנה הזו מבית מיקרוסופט פשוט מדהימה בניהול הבלוג שלכם.

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

התוכנה עשירה בפונקציות ובplugins שניתן להוריד בחינם.

חבל לפרט עוד, פשוט תורידו ותתקינו

הורדה מכאן (חינם)

VLC Media player

vlc_media_player-400-400

לעיתים אני עוסק בעבודה עם קבצי מדיה, בין אם זה mp3 או mp4, לפעמים אפילו עם סרטונים מטלפונים ניידים.

התוכנה הזו היא נגן שיש שמנגן בערך הכול אבל עם יכולות המרה של הקבצים השונים לפורמטים השונים, כך למשל תוכלו להפוך קובץ WAV כבד מאוד לקובץ mp4 בקידוד h.264 דיגיטלי בערך ב10 שניות בלי ידע קודם.

התוכנה קלה מאוד לשימוש ולתפעול ותעבוד על גרסאות חלונות השונות שלכם (XP-7 אני אישית בדקתי)

להורדה כאן

Pure Text

puretext_options

עכשיו ברצינות, אתם לא חושבים שהCTRL+V של חלונות הוא פשוט מסריח?

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

לא הייתם רוצים ש-CTRL+V פשוט ידביק את הטקסט, בלי שטויות?

הנה, בשבילכם :-)

להורדה מכאן

זהו, אלה בינתיים

אולי יהיו עוד פוסטים כאלה בעתיד.

תיהנו, תגיבו, רטווטו עצמכם לדעת!

כלים ושירותים בהם אני משתמש – חלק ב'

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

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

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

VSO Image Resizer

VSO Image Resizer-20081017-071709 מי מכם משתמש במצלמה דיגיטלית?

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

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

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

התוכנה "מתלבשת" על הShell של חלונות (נבדק על כולן מXP ועד 7)

10-08-2009 00-21-39

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

לינק להורדת התוכנה אתם מבקשים בטח לא? הנה כאן

TeamViewer

TeamViewer_full

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

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

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

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

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

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

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

טופין אמיתי

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

SyncBack

syncback-logo

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

אז אני אכתוב חלק.

גיבבבבבבבבבבבבווווווווווויייייייייייםםםםםםםםםםםם!!!

מכירים את זה?

עושים את זה מספיק?

שקרנים!

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

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

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

חלון הגדרת פרופיל מתוך התוכנה:

10-08-2009 00-42-40

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

העתק – הדבק של קוד

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

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

השירות שאני הולך להמליץ עליו (חינמי גם הוא) הוא http://snipt.org/

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

אתם עושים Paste של הקוד שלכם לתוך התיבה, בוחרים את השפה ואת הTheme ומקבלים URL שאתם יכולים לשלוח לחבר שלכם.

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

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

10-08-2009 00-56-38

כלים ושירותים בהם אני משתמש – חלק א'

שלום לכולם,

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

הבה נתחיל.

Get Drop Box

dropbox

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

השירות הוא חינמי עד לגבול של 2GB, מעבר לכך ישנם תמחורים אחרים, כול כך התרשמתי מהנוחות ומהקלות של העבודה עם השירות הזה שפשוט רכשתי אותו לשנה ב50GB, מה שאני עושה זה מגבה אליו את הRepository של כול הקוד שלי פעם בשבוע.

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

ההתקנה של השירות היא פשוטה מאוד, והוא מתאים גם לחלונות וגם לMAC.

http://www.getdropbox.com

Box.Net

icon_boxlogo מה? עוד קופסה?

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

כך למשל, אם אתם רוצים לשלוח לחבר שלכם קובץ, ורוצים את השליטה עליו יותר מבאתרי RapidShare וכאלה, תוכלו לעשות את זה בקלות עם Box.net

Toggl

toggl1

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

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

הכלי הזה http://www.toggl.com הוא מעולה לכך, זוהי אפליקציה למדידת זמנים, אתם מזינים לקוח / פרויקט / משימה ופשוט מודדים את הזמנים שלוקח לכם לבצע אותה.

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

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

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

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

08-08-2009 21-16-14

SVN

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

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

“תגיד… שלחת לי למייל את הגירסה האחרונה של הפרויקט?”

“כן”

“בטוח?, כי עשיתי מלא שינויים בקוד USerManager”

“בטוח בטוח,… אתה יודע מה… תן לי לבדוק”

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

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

Server

setup4

אחד השירותים שאני נותן ללקוחות שלי הוא שרת SVN, אני מחזיק שרת במיוחד בשביל זה, השרת הוא מחשב סטנדרטי שמחובר בקו סופר מהיר לאינטרנט ועליו מותקנת התוכנה Visual Svn Server

ניתן למצוא את התוכנה כאן

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

ניתן לנהל הרשאות פנימיות, משתמשים, Trunks ועוד.

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

כך זה נראה (האתר)

08-08-2009 21-25-01

Client

המלך הבלתי מעורער של הלקוחות לSVN הוא לטעמי tortoisesvn, התוכנה מתלבשת על הShell של הWindows (מתאים אפילו לחלונות 7) ומאפשרת לכם להתחבר בקלות לRepositories בכול מקום בעולם.

בין אם זה שרת שלכם או שרת של גוגל שעובדים גם הם עם SVN, תוכלו להוריד את הקוד אליכם בקלות רבה, לבצע Commit, לשלוח הערות והארות לחברים שלכם שמשתמשים באותו CodeBase ועוד.

08-08-2009 21-30-55

מומלץ מאוד לייצר לעצמכם Build, Commit וUpdate אוטומטיים, כי אם לא מבצעים את הדברים האלה, סתם יהיו Conflicts וכול הרעיון של CodeBase יזרק לאשפת המשרד הוירטואלי שלכם

Visual Studio Plugin

כאן, ישנם שתי אופציות ושתיהם טובות, אבל לכרגע אני אבחר את החינמית בין השתיים :-)

התוכנה נקראת ankhsvn, היא עובדת עם כול גירסת Visual Studio מאז 2003, כול מה שמאפשרת Tortsite SVN ברמת התיקייה מאפשרת ankhSVN ברמת הויזו’אל סטודיו מתוך הIDE שלכם וללא צורך לצאת ממנו כלל.

solexp

(התמונה נלקחה מאתר התוכנה)

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

5x1llz-lighthouseapp-1 שאלה, אני מבקש תשובה כנה…

איך אתם מקבלים דרישות ובקשות לתיקוני באגים מהלקוחות שלכם?

במייל, בטלפון?

איך אתם מנהלים את זה?

אקסל, וורד? Google Docs

NO MORE PLEASE!!!

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

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

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

5x1llz-lighthouseapp-2

Unlocker Assistant

אויש, אתם הולכים לחבק אותי על הכלי הזה (זה לא נשמע טוב) :-)

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

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

Jing

jing1

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

מה הבעיה אם כך?

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

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

מי שלא משקיע בתוכנה, נענש בחומרה!

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

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

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

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

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

that being said… הבה ונדבר.
סיפור שהיה כך היה.
לפני כמה ימים רציתי מאוד לרכוש לאשתי ולי כרטיסים להופעה של לאונרד כהן.
מה הייתם מצפים לעשות?
עניתם נכונה, הייתם מצפים להיכנס לאתר, לרשום את מספר כרטיס האשראי שלכם וללכת לישון טובי לב לאחר שיש בידכם הדפסה של שני כרטיסים בעלות של 2,400 שקלים. נכון?
לא נכון!

20830551

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

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

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

זוועה!

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

היה מוכן להשקיע את מה שצריך להשקיע על מנת שהאתר שלך ייצג אותך נאמנה, אתר ללא תקנים או אתר שלא עומד בתקנים לא מייצג אותך נכון, שלא נדבר על איך שהוא מציג אותך ב-Google.

מקרים אמיתיים נוספים:
לפני כארבעה חודשים התחלתי Session של יעוץ ללקוח גדול.
הלקוח הוא חברה לבניית אתרים עם מערך של 3 שרתים וכ-60 אתרים מאוחסנים.
זמני העלייה הממוצעים של אתר היו אצלו 15-25 שניות לדף עם מוצרים.

ווווואוווווו, נכון?

שנתחיל איפה היו הבעיות?
הבעיות הן מאוד דומות
1. קוד לא תקני
2. שימוש לא נכון בבסיסי נתונים
3. שאילתות מקוננות
4. חיבורים נשארים פתוחים ולא נסגרים
5. בסיסי נתונים ענקיים ולא מטויבים

286892_1436

לכששאלתי אותו על תיעוד של המערכת ושל בסיס נתונים קיבלתי מבט של עגל.
המשכתי ושאלתי על תסריט Scaling אותו מבט
לאחר ששאלתי על האם האתרים עובדים על Single Point of failure וויתרתי וניגשתי לעבודה
בואו ונבצע תחקיר על מה היה אצל הלקוח.

(** אני מבטיח שחלק מכם שקוראים את זה עכשיו אומרים לעצמכם… זה כאילו הוא מדבר עלי)

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

תעשו בדיקה .
תשאלו את השאלות, תבדקו האם האנשים מרשימים אתכם במקצועיות שלהם.
תבקשו דוחות על מהירות, דוחות על נגישות, דוחות על SEO באתרים ועל איך האתרים מתקדמים ב-Google.

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

workflow

רגע אבי,
כול זה בגלל שלא הצלחת לרכוש כרטיסים?
:-) לא!

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

תענו על התשובה בעצמכם, אני לא אאכיל אתכם בכפית

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

איך תעשו את זה?
אל תתביישו לקחת יועץ, לא לא, לא את החבר של השכן שמבין במחשבים מגיל 13.
לא, גם לא את השכן מלמעלה שעובד בהייטק
גם לא את הגיס שלכם שיש לו חנות מחשבים
קחו בעלי מקצוע!
אם אתם עושים מוצר שהעיקר שלו הוא UI, קחו איש UI
רוצים מוצר שישרת עשרות אלפי לקוחות קחו מנהל פיתוח שהרים פרויקטים עם Scale של כמה שרתים
מישהו שכשאומרים לו Load Balancer ידע על מה מדובר ולא כי הוא ראה פעם Tutorial.