<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx</link><description>Yeah.. Krzysztof have finally blogged about the controversial naming guidelines around TimeZone2! Check it out: http://blogs.msdn.com/kcwalina/archive/2006/10/06/TimeZone2Naming.aspx Also, I'd like to repost one of my responses to the names suggested:</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>TimeZones</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#799191</link><pubDate>Sat, 07 Oct 2006 05:08:52 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:799191</guid><dc:creator>Community Blogs</dc:creator><description>&lt;p&gt;Right now, there is no easy way to convert a time from one arbitrary timezone to another arbitrary timezone&lt;/p&gt;
</description></item><item><title>re: Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#803676</link><pubDate>Sun, 08 Oct 2006 13:07:29 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:803676</guid><dc:creator>Dave Griffiths</dc:creator><description>Whats wrong with TimeZoneInfo? .. short, sweet, keeps to the same naming convention as RegionInfo, CultureInfo .. "insert any other typename here"Info

Using a 2 seems daft and goes completely against any class naming conventions .. thought the primary goal of naming something is that the name is self-describing of what it does/contains.  TimeZone2 just says that it's version 2 of TimeZone. And that hasn't been done in many other places in the BCL (with maybe the exception of a few interface names)

</description></item><item><title>Should Humans Be Called Ape2?</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#814154</link><pubDate>Tue, 10 Oct 2006 23:21:26 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:814154</guid><dc:creator>Omer van Kloeten's .NET Zen</dc:creator><description>&lt;p&gt;Ever since Kathy Kam announced on her weblog that a new type named TimeZone2 will be introduced into&lt;/p&gt;
</description></item><item><title>re: Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#815100</link><pubDate>Wed, 11 Oct 2006 01:12:23 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:815100</guid><dc:creator>diegocanepa</dc:creator><description>&lt;p&gt;What about TimeRegion?&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;
</description></item><item><title>re: Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#816801</link><pubDate>Wed, 11 Oct 2006 15:01:44 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:816801</guid><dc:creator>Matt Ellis</dc:creator><description>&lt;p&gt;Hi Kathy. Interesting topic. I've got a suggestion to sidestep the whole -2 suffix completely. This new class doesn't really add any new functionality to TimeZone. The TimeZone class describes an actual time zone, and (as I understand it) the new functionality is to return an instance of TimeZone based on an id (factory pattern), get a list of known time zones and to convert from one timezone to another.&lt;/p&gt;
&lt;p&gt;Creating a TimeZoneFactory class could solve both the first and second problems and a TimeZoneConverter class would solve the other one . Any other methods that add functionality to TimeZone itself can be added on - adding methods/properties isn't a breaking change. A method on TimeZone could be used to convert a date from one timezone to another.&lt;/p&gt;
&lt;p&gt;This solves your versioning problem, and also keeps the responsibility of TimeZone(2) to a single responsibility.&lt;/p&gt;
&lt;p&gt;What do you think? And conversely, what was the thinking behind adding these extra responsibilities to TimeZone(2)?&lt;/p&gt;
&lt;p&gt;Cheers!&lt;/p&gt;
&lt;p&gt;Matt&lt;/p&gt;</description></item><item><title>re: Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#817646</link><pubDate>Thu, 12 Oct 2006 00:34:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:817646</guid><dc:creator>KathyKam</dc:creator><description>&lt;P&gt;Hi Matt,&lt;/P&gt;
&lt;P&gt;Thanks for the suggestion! However, this is incorrect...&lt;/P&gt;
&lt;P&gt;"Any other methods that add functionality to TimeZone itself can be added on - adding methods/properties isn't a breaking change."&lt;/P&gt;
&lt;P&gt;Actually, we changed the behaviour of methods like IsDaylightSavingTime. Read &lt;A class="" href="http://blogs.msdn.com/kathykam/archive/2006/10/05/Designing-System.TimeZone2-_2D00_-Part-2-_2800_Dynamic-Time-Zone-support_2900_.aspx"&gt;Part 2&lt;/A&gt; of my "Desiginng TimeZone2" for more detail. If you have more questions or comments after that. Please let me know.&lt;/P&gt;
&lt;P&gt;Regarding adding these extra responsibilities to TimeZone2. Once we realize we need a new type regardless, we need to make a decision on how many new types we should add. We decided to add one. Usability studies shows that it is easier for our users to deal with only one type for all their need. That said, I want to emphsis that API design is all about tradeoffs. No one design is perfect, and there are of course arguments to say 2 (or even 3) types are better. I'd love to know why you think 2 or even 3 types are better than 1!&lt;/P&gt;
&lt;P&gt;Thanks,&lt;/P&gt;
&lt;P&gt;Kathy&lt;/P&gt;</description></item><item><title>re: Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#821423</link><pubDate>Fri, 13 Oct 2006 07:48:45 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:821423</guid><dc:creator>David M. Kean</dc:creator><description>&lt;p&gt;When you see TimeZone and TimeZoneInfo next to each other in intellisense, how do you know which one to use?&lt;/p&gt;
&lt;p&gt;If you say TimeZone and TimeZone2 next to each, I think it is a lot more clearer that TimeZone2 is the later version.&lt;/p&gt;</description></item><item><title>re: Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#837107</link><pubDate>Wed, 18 Oct 2006 02:58:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:837107</guid><dc:creator>KathyKam</dc:creator><description>&lt;p&gt;Glad you think TimeZone2 is better! :) I wonder does anyone else thinks it is better. &lt;/p&gt;
</description></item><item><title>re: Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#1140932</link><pubDate>Fri, 24 Nov 2006 17:03:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1140932</guid><dc:creator>diegov</dc:creator><description>&lt;p&gt;Kathy, I read the guidelines and I think the TimeZone2 name is the least harmful ;) &lt;/p&gt;
&lt;p&gt;Anyway, what I don't find explained in detail is why you had to create a new type instead of &amp;quot;stuffing&amp;quot; the new features in the original class (and possibly marking part of its remains as obsolete). I am sure it was because you found some road block there and not because of a matter of taste. What was it?&lt;/p&gt;
</description></item><item><title>re: Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#1140936</link><pubDate>Fri, 24 Nov 2006 17:06:41 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1140936</guid><dc:creator>diegov</dc:creator><description>&lt;p&gt;Ah, now I read your comment. So you changed behaviors... I will read the rest in your &amp;quot;Designing TimeZone2^2&amp;quot; ;). Thanks!&lt;/p&gt;
</description></item><item><title>re: Naming Guideline Discussion</title><link>http://blogs.msdn.com/kathykam/archive/2006/10/06/Naming-Guideline-Discussion.aspx#1405584</link><pubDate>Wed, 03 Jan 2007 21:23:37 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1405584</guid><dc:creator>Ben Siêu Nhân</dc:creator><description>&lt;p&gt;@David M. Kean &amp;amp; Kathy: if you insist that TimeZone2 beats &amp;nbsp;TimeZoneInfo in indicating it is a &amp;quot;new&amp;quot; one, how about putting Obsolete attribute to TimeZone to imply that it is an &amp;quot;old&amp;quot; version of TimeZoneInfo?&lt;/p&gt;
&lt;p&gt;Just imagine some day they want to &amp;quot;upgrade&amp;quot; such things as Int32... there you go, we got Int322 !!! Now, tell the innocent why it is &amp;quot;Int32 version 2&amp;quot; but not &amp;quot;Int version 322&amp;quot; ???&lt;/p&gt;</description></item></channel></rss>