DCSIMG
February 2008 - Posts - Dotmad (on .Net)

Dotmad (on .Net)

Just Another Web 5.0 Blog

Podcasts

Blogroll

February 2008 - Posts

Scrum in Microsoft Israel?

האם במייקרוסופט ישראל עובדים עם Scrum?

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

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

נשמע מוכר?

If Search Engines Where Girls

From the SEO article "On-page SEO for small Companies": 

  • Google is the bombshell who everyone drools over. She knows this and lords it over everyone. You’ve really got to work to get Google’s trust. She also has a weird fascination with blogging.
  • Yahoo is wild and erratic.
  • MSN is the world’s cheapest date, who will practically faint if you show any interest in her at all.
Posted: Feb 28 2008, 05:21 AM by Dotmad | with no comments
תגים:

אמור 'סוטה' והיכנס

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

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

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

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

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

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

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

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

New Technologies Trends

I have written before a short comparison between "old" and newer technologies, but at the beginning of that post I state that part of the choice of a new technology is the market trend towards that technology.

After reading Justin's post showing that moving to ASP.NET is beneficiary because it's becoming a prominent technology I decided to implement his research methods (using Google) on different technologies.

I began by searching for file types

However, this reflects only on files shared on the web, and since JAVA is a web technology (unlike Delphi) the results don't say much.

But Google trends provides a clearer picture - while C# remains stable, other languages are on the decline:

Focusing on the .Net world, you can clearly see new technologies are dominant in Google searches:

WPF vs. Winforms

WCF vs. Remoting

 

 The rise of Framework 3.0 technologies

With Silverlight being the "Hot New Thing" (maybe because it's a web-based technology)

So maybe choosing a new technology is a logical move even if it doesn't offer a significant technological advantage - since keeping older technologies means you are working against the market trend.

So consider switching from Winforms to WPF, from various communication technologies to WCF and from VS 2003 or 2005 to VS 2008 - in the long run the market trend will force you to do it anyway, either through the job market or through customers demands.

Hebrew vs. English Blogging - The Statistics

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

משם המשכתי לGoogle analytics, ולסטטיסטיקה לפי מבקרים מישראל מהווים 37% מכלל המבקרים באתר:

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

או זמן שהייה באתר

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

Microsoft Goes Open Source?

In a recent announcement Microsoft declared a "Strategic Change" in their relationship with the open source community:

  • Publishing on MSDN over 30,000 pages of documentation for Windows client and server protocols and API. Protocol documentation for additional products, such as Office 2007, will be published in the upcoming months.
  • Microsoft is providing a covenant not to sue open source developers for development or non-commercial distribution of implementations of these protocols. These developers will be able to use the documentation for free to develop products.
  • Microsoft will design new APIs for the Word, Excel and PowerPoint applications in Office 2007 to enable developers to plug in additional (OS?) document formats

However, although the company said developers will not need to take a licence or pay a royalty or other fees to access this information, those covered by patents will still be subject to a royalty from developers who want to use them for commercial applications (Microsoft said these royalty rates would be "reasonable and non-discriminatory").
Red Hat seems to think this is a move designed to "foreclose competition from the open source community", making Microsoft's move "too little, too late".

According to Steve Ballmer "There were certainly things we did to get into compliance with the European (Union) Commission’s decision". However, the EU regulators are expressing skepticism regarding this statement.

Real change or a hoax? we'll have to wait and see....

Is Hebrew blogging the new Zionism?

Guy started the debate by calling Israeli bloggers (and the blogs.microsoft.co.il platform) to write in Hebrew to encourage the creation of professional resources addressing the Hebrew reading crowd.

I disagreed by stating the fact I like to share my knowledge with the entire world rather than just sharing it with Hebrew readers and Omer agreed with me.

Tamir contributed to the discussion in his own unique way, demonstrating the frustration a non-English post can cause to English readers (and assuming I understood the translation he is basically saying "write in whatever language you feel comfortable with")

I would like to address Guy's second claim, saying the blogs.microsoft.co.il site should be used to encourage Hebrew blogging (and that English bloggers have alternatives such as Blogger and Wordpress).
Blogger and Wordpress are excellent platforms, but if I want a blogging site focused on IT blogs, they are wrong for me.
The unique thing about the blogs.microsoft.co.il site is that it's an aggregator for IT professionals, and unlike the MSDN blogs site - most of them are not Microsoft employees.
I think this is unique and would not like to close this special community to the rest of the world.

ציונות =! בלוג בעברית

גיא כותב שלדעתו יותר בלוגרים באתר הזה אמורים לכתוב בעברית:

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

 ואפילו חושב שזה התפקיד של מייקרוסופט עצמה:

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

אני לא מסכים.

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

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

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

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

Design patterns: I wouldn't bother reading the GOF book

I have to disagree with Gil's (welcome to the blogosphere) recommendation regarding the classic DP book:
I found it very hard to read, focusing on theory (as opposed to practice), and laking use of .Net framework features (since it was not written for .Net users).
If you are a .Net programmer and want to learn and use design patterns, I recommend going to dofactory.com - clear, real-world examples meant for C# developers.

Don't try this at work

A friend sent me the following code, meant to do simple string comparison for a standard password changing dialog:
           char buf[256]



            test_pass = 0;
            for (i = 0; i < strlen(buf); ++i)
            {
                test_pass ^= (unsigned long)buf[i] << (i%4)*8;
                test_pass = test_pass << (i%4)*8 | test_pass >> (32 - (i%4)*8);
            }

            sscanf(g_config.m_pPassword, "%08X", &old_pass);
            if (test_pass == old_pass)
            {
                // Get new password
                GetDlgItemText(IDC_EDIT_NEW_PASS, buf, 255);

                test_pass = 0;
                for (i = 0; i < strlen(buf); ++i)
                {
                    test_pass ^= (unsigned long)buf[i] << (i%4)*8;
                    test_pass = test_pass << (i%4)*8 | test_pass >> (32 - (i%4)*8);
                }

                // Check configmation
                GetDlgItemText(IDC_EDIT_NEW_PASS2, buf, 255);

                test_pass2 = 0;
                for (i = 0; i < strlen(buf); ++i)
                {
                    test_pass2 ^= (unsigned long)buf[i] << (i%4)*8;
                    test_pass2 = test_pass2 << (i%4)*8 | test_pass2 >> (32 - (i%4)*8);
                }

                if (test_pass != test_pass2)

        {
            MsgBox(".....");
            EndDailog(1)

        } 
        sprintf(buf,"%08",test_pass);
    }
Posted: Feb 15 2008, 11:00 AM by Dotmad | with no comments
תגים:

Going to TechEd

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

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

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

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

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

כמובן שזה מעלה מספר שאלות:

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

מה דעתכם?

Upgrading technologies in an existing project

We all know about the "cool new kids in town", meaning new technologies all developers want to use. Offer a developer two positions:

  1. Programming with C# 1.1
  2. Programming with WPF and C# 3.5

What do you think most developers will choose?
However, there is the question of an existing project, written in an "uncool" technology. In my experience developers tend to push towards using newer technologies, but how do you convince the people in charge?
Here are my thoughts on the subject:

Framework 2.0 vs. 1.1
Advantages: Performance boost if you are using ArrayLists with value types in them (when you switch to generic Lists)
Disadvantages: Incompatibility issues requiring code changes (should be very minor)

Framework 3.5 vs. 2.0
Advantages: Using Linq for new complex data access and query modules, otherwise I'm unsure
Disadvantages: Same as switching between 1.1 and 2.0

WCF vs. Various communication technologies
Advantages
: Much easier to configure and deploy, can drastically change the communication method without any code changes
Disadvantages: Not applicable when you do most of the communication in a non-.Net world if you remote points are not using web services protocols (example: communication with hardware sensors)

Workflow foundation
Advantages: Easier to manage complex workflows. Enables user modification of workflows.
Disadvantages: If an existing workflow code is already written - major code rewrite.

WPF vs. Winforms (with CGI+)
Advantages: Creating easily resizable forms due to vector graphics use. Customize look & feel in ways which are almost impossible to duplicate using winforms. Easier interaction between UI/graphics designers and developers.
Disadvantages: Will require serious code rewrite. Performance issues still exist (I have yet to witness a professional map engine based on WPF)

Team system vs. various source control / task management systems
Advantages: I have used SourceSafe, PVCS and Rational ClearCase/ClearQuest, and to this date I think VSTS is better is terms of performance, ease of use and customizability, especially when you need to integrate source control and task management.
Disadvantages: Requires Windows - how do you use VSTS to manage C++ code in a Unix/Linux environment?