@cbae: if that's the rule, everybody who didn't buy the game will eventually get the achievement.
@BitFlipper: the problem with your implementation is that while you correctly check that it's an Enum type, you don't check if it has the FlagsAttribute. Without that check, the logic is easily broken.
To be fair, that's exactly the same issue you get with regular enums, but at that point I wonder if it makes sense to pay for all the reflection and boxing.
The bottom line is that if you are not concerned with performance, I would suggest you use a HashSet<T>, which provides lots of power (at a price); otherwise, you could just go with some convenience extension methods of the "use at your own risk" variety.
I believe they implicitly do, as that code is unambiguous.
At some point in your code, you trigger the execution of A().
As per specifications, before B.Foo gets evaluated, B() gets called. At this point, A() is already executing, so the evaluation of A.Bar doesn't trigger A()'s execution because it's not the first time A is referenced (it couldn't anyway, as static constructors are guaranteed to be called only once).
This may or may not lead to unexpected behavior, depending on whether A() got a chance to initialize A.Foo before B() got called, but that's not a problem the compiler will or can figure out deterministically.
It would be even nicer if VS were able to copy code using Word styles instead of using colors and fonts from the VS settings. Producing code snippets for B/W printing is a pain in the back.
@OrigamiCar: I see the same behavior. You can get the start screen to appear on any monitor, but once you dismiss it, the Win key will always make it appear on the primary monitor.
This isn't a big deal for me: I have two monitors and I set one to be my "desktop monitor" (not the primary screen) while the other is mostly dedicated to outlook and modern apps (the primary screen). In this setup, not being able to dismiss the start screen accidentally by clicking on the desktop is an improvement IMO.
Also, I replicated the taskbar on all the monitors: looks busier, but it's convenient enough that I don't mind the wasted pixels. This also has the added bonus that it's really easy to get the start screen to appear on any given monitor: I just have to click on the corresponding start button (hey, it's actually useful!).
I think that's a myth. These days the syntax is a minor hurdle in getting to be proficient in a language; the bulk of the work is getting to know the libraries and frameworks at your disposal and, I would add, the platform. I suspect it's a lot easier for a VB.NET programmer to learn C#, despite the alien syntax, than it would be for a Java programmer to do the same.
Also, even though the two languages were very similar at the beginning, they went their own separate ways. You can probably still morph a Java program and make it compile in C#, but the result is not necessarily good C# code.
For the first time in a long while, I used "Metro" messaging for more than a few lines and it almost drove me nuts.
The problem is I have a Hotmail account that got merged with Skype, and I was chatting with someone in a similar situation. The net result was that every message sent on messaging was echoed via Skype (which produces a flurry of blue notification toaster) and on my phone, complete with notification sound and vibration (and often badly out of sync). Closing Skype didn't help and turning off my phone wasn't an option.
Ideally, I would like Skype to notice I'm following the conversation on a different app/device and be quiet, but I would settle for being able to turn it off manually.
I assume there's a problem with my configuration, but I cannot figure out what. Any clues?
@cbae: I suppose it's more of a PR move than a business one.
If you buy a tablet and you cannot do much because there are no apps, you blame the tablet maker and its poor app store.
But if you own a tablet and you can do pretty much everything you need except for accessing your Windows machine remotely, you blame Microsoft for not making the app.
Easy as that: not getting people mad at you is the first step in making a sale. Someday.