3.2.2011

לחסוך בשיחות מחו"ל


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

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

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

שימוש באייפון:

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

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

אתם מוזמנים לבקר באתר ב (www.callbytext.com)


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

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


7.5.2010

Fixed Size Formatting Framework

טוב, אז החלטתי לתרום קצת קוד לקהילה...


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



אז העלתי ל CodeProject קוד שמאפשר בדרך הצהרתית להגדיר את הפרוטוקול של מבנה הקובץ ולעבוד עם אובייקטי CLR בנוחות (LINQ etc.)



איך משתמשים בזה?



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



יתרונות לשימוש



  1. קוד אסתטי
  2. קוד קל לתחזוקה ושינויים

  3. קוד שמסביר את עצמו

  4. כל היכולות המובנות של השפה כגון LINQ מעצם העבודה עם אובייקטי CLR

  5. המון אפשרויות להרחבה (EXTENSABILITY)

  6. הכי חשוב -חוסכים זמן ועבודה מיותרת !

בקיצור, נכנסים ל - Fixed Size Formatter


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




בהצלחה









2.3.2010

פיתוח אפליקציות ל IPHONE ,
מורה נבוכים לאנשי WINDOWS

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

אז נתחיל...

שאלת השאלות:

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

כיצד להרים סביבת פיתוח:

בשביל לפתח ל IPHONE אתם צריכים מערכת הפעלה OS (רצוי גרסא מתקדמת 10.5/10.6) ואת כלי הפיתוח XCODE. אל תרוצו להרים VM - כי זה לא עובד!. APPLE לא מאפשרים להריץ את מערכת ההפעלה שלהם מלבד על מכונות שלהן. לפי מה ששמעתי אפשר להריץ מערכת הפעלה שנקראית HACKINTOSH (אבל לא שמעתם את זה ממני...) . אם מדובר בהתנסות חד פעמית, אני ממליץ לחפש Mini Mac משומש עם מערכת הפעלה מתקדמת.

הסברים טכניים לאנשי דוט נט: (אם את\ה לא איש טכני דלג מעל 2 הפיסקאות הבאות.)

באופן כללי, לאנשים שבאו מעולם הדו טנט קל יהיה להתחבר לפיתוח בסביבת ה XCODE.
הפיתוח דומה מאד לפיתוח בסביבת WINFORMS , אם כי הכלי הרבה פחות בשל מ VSTS, והוא אוסף של כלים בינהם ה (Interface Builder)IB שמנסה לתת כלי ויזואלי עם חיבור מסובך בין פקדים לאירועים. אז הנה מספר הערות:

  • לתוכניות עבור ה MAC אין קובץ EXECUTABLE – אלא מדובר באוסף קבצים שנמצאים באותה ספריה ומערכת ההפעלה יודעת להשתמש בהם.
  • הכלי (XCODE) מספק TEMPLATE לפיתוח לאייפון וחשוב להבין שבהגדרה כל הפיתוח הנו תחת המודל MVC (זוכרים?...)
  • קיימת הפרדה בין ה UI לקוד. האפליקציה כוללת קובץ XML עם סיומת XIB שמסיבות היסטוריות נקרא עדיין NIB (אני לא אכנס לזה) ושניתן לערוך אותו ללא הקומפיילר.– מזכיר קצת את WPF - לא?
  • הפיתוח מתבצע בשפת Objective C שהיא הרחבה של C לשפה מונחית אובייקטים. (לא מדובר ב C++ ! , יש גם תוכניות לזה).

חשוב לדעת: נכון להיום האייפון אינו תומך ב- MULTITHREADS ולכן ברגע שנכנסת שיחה האפליקציה שלכם נסגרת!!!

קצת על Objective C:

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

  • מדובר בהרחבה של C ולכן אפשר לכתוב בשפת C קלאסית.
  • קיימת חלוקה לקבצי h וקבצי m - בדומה ל C. יש גם את התחלואים של סדר הופעת הרכיבים השונים.
  • כל מחלקה מיוצגת כ INTERFACE בקובץ ה- HEADER
  • יש קונספט של PROPRTIES עם כל מיני ATTRIBUTES כמו readonly ן retain שקשורים לגישה למשתנים ברקע ולניהול הזכרון
  • סימני פלוס ומינוס כאשר פלוס מציין מתודה STATIC
  • יש דגש, באופן טבעי, על נושא הקצאת וניקוי הזכרון מתוך המגבלות של המכשיר

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

הערה:

קיים פרוייקט שנקרא MonoTouch מאפשר למפתחי דוט נט לפתח אפליקציות לאייפון ב C# ולהשתמש בכלי פיתוח יותר מוצלח (http://www.youtube.com/watch?v=M0VoyhKFmWg)

DELIVERY:

אוקיי, סיימתם את כל הפיתוח ואתם רוצים לנסות את ה- App שלכם על אמת. הכל חייב לעבור דרך ה APP STORE. הם מאפשרים לכם לרשום מכשירים ספציפיים לטובת הטסטים. ברגע שתרצו להשיק את האפליקציה הם בודקים אותה ורואים שהיא מתיישבת עם סט חוקים שנקרא HIG (Human Interface Guidence) לא הסתכלתי לעומק, אבל מדובר בכך שהאפליקציה תהיה "צפוייה" עם UI סטנדרטי.

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

קצת על הביזנס:

  1. APPLE מטילה המון מגבלות ובקיצור "הם לא נחמדים" (ג.מ.) 2
  2. APPLE גובה מהמפתחים תשלום של מנויים וגם 30 אחוז מעלות המכירה
  3. בשביל פיתוח חד-פעמי, אפשר למצוא Mini MAC
  4. טווח המחירים של האפליקציות נע בין דולר ל 5 .

הכי חשוב:

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

אחרית דבר

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

קישורים