Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Discussions

William Kempf wkempf
  • Think for ​yourselves..​.

    Chinmay007 wrote:
     PaoloM, wkempf:

    Of course this isn't scientific or anything , but I'm seeing no problem finding negative posts on this forum and very hard time finding anything positive.

    http://channel9.msdn.com/ShowPost.aspx?PostID=325204


    This one is negative, but balanced and accurate.  More important, it's posted by someone who owns an Apple, and thus can hardly be considered as an example of W3bbo's point.  I mean, come on, there's stuff a lot more negative than that posted about Microsoft products on a daily basis here.

    Chinmay007 wrote:


    I don't get why you think this one relates?  It's not about any of the "competition."  Granted, it's attacking Scoble, and as such I don't think it too appropriate for here, but sorry, this one doesn't back up your claims.

    Chinmay007 wrote:


    Even more confused than the last.  This is negative only because the guy needs some help.  And it's with a Microsoft product, not with a competitors.  This is actually evidence of the opposite of what is being claimed.

    Chinmay007 wrote:


    Heh?  This is strictly about the next version of C9.  Unrelated.

    Chinmay007 wrote:


    The post is neutral.  One reply is strictly negative.  Two replies a pro some alternative, but neither alternative is a Microsoft product, and neither of these is negative to Yahoo! Messenger.  Two replies are negative towards Microsoft technologies.  Sorry, this is not evidence.

    Chinmay007 wrote:


    OK, this one is full of negativity.  I personally don't think it's an example for your cause though.  Why?  Because it starts out so negative towards Microsoft that it's basically a troll post (hard to tell if trolling was the intent of the original poster, but it was so negative that the end result could only be the same).  Given that you start out this badly, there's little where else a thread can go.

    Chinmay007 wrote:


    I see no negativity here.  More importantly, there's no mention of any Microsoft technology or even any technology that Microsoft competes with.

    Chinmay007 wrote:


    Dupe.

    Chinmay007 wrote:


    Linux troll post.  Anything in there is fair game, or irrelevant depending on how you think trolls should be dealt with.  Sorry.

    Chinmay007 wrote:

    That's just on the first two pages.

    Now to compare Ubuntu Forums's Coffeehouse:

    http://ubuntuforums.org/showthread.php?t=499757
    http://ubuntuforums.org/showthread.php?t=495840
    http://ubuntuforums.org/showthread.php?t=500497
    http://ubuntuforums.org/showthread.php?t=500958
    http://ubuntuforums.org/showthread.php?t=431978

    Yes so it has it's fair share of negative posts. Only one I noticed is for something other then Ubuntu (the PS3). Which is funny cause I thought Linux users are suppose to be really negative towards Windows.


    These posts are cherry picked from both sites.  I'm willing to bet I can find equivalent posts on either site (barring the troll posts).

    You stil haven't found a single example to prove your point though.  Unless your point is unrelated to the topic on hand.  Just to be clear, you need to find enough posts that show community members attacking and/or dismissing technologies that Microsoft competes with.  More importantly, they should be doing so with no knowledge of the "other side" or without stating reasons why they prefer the Microsoft tech.

    Responses to trolls don't count.  I could go into Ubuntu forums and troll there, and I bet the responses to me would be magnitudes worse than what you see here.

    If your point is more about just a general negative "vibe" here, yeah, there is one.  Guess who's at fault for that?  Just a hint, it won't be anyone that W3bbo was ranting about.  We're back to the trolls and Microsoft bashers for that.

  • Think for ​yourselves..​.

    Chinmay007 wrote:
     wkempf,

    His point is that people here are overly dismissive of anything not made by Microsoft. In fact it seems like there are more threads being made to dismiss something made by "the competition", then there is actual Microsoft content. It's depressing and ignorant. This is a Microsoft technology forum not an lets put down anything not made by Microsoft forum.


    And my point, is that I've never seen this.  Show me the proof.

  • Thread Safe Singleton Pattern - C# ???

    stevo_ wrote:
    Mmm, I disagree -

    1. The static ctor is only lazy in the sense the singleton only exists when you access its type, but the lazy initialization that was suggested, initializes the singleton when the instance is first called.. the difference in this is that you may have shared methods on the type that don't nec need the singleton instance.

    2. I thought double check locking was the only way to safely access objects that may be used by multiple threads.. is it really true that you can't say for sure they work? why do we even bother then?

    And I don't really agree with your argument against the singleton, using names like 'global variable' to describe it, makes it sound very ugly, when it isn't like that at all...


    1.  You can achieve this easy enough, _IF REQUIRED_, by using an internal static class to handle the instantiation of the specific object.

    2.  The only way to safely access objects that may be used by multiple threads is by using a synchronization primitive.  DCL isn't a primitive.  It's a poorly designed pattern meant to optimize the synchronization when an object will be read many times but written to only once.  The problem is, this pattern only works on architectures with a specific memory visibility model.  There are architectures that do not have this visibility model, and the DCL pattern leads to a race condition that can cause multiple threads to "initialize" the data, possibly leading to memory corruption or other errors.  If you're writing portable code, or don't have a guarantee about the memory model for your target architecture, you should never use the DCL.  I do not believe the CLR makes any gaurantees here, so you shouldn't use the DCL.  The reality is that, today, on x86 architectures using the Microsoft supplied CLR, the DCL is "safe."  But for all of the reasons I just gave, including the fact that future x86 architectures could well change the memory model, I simply can not recommend anyone use this pattern.  Trust me, you're better off forgetting this pattern exists.  Even the originator of this pattern acknowledges the problems and short comings of it now.

    Oh, and I'm sorry, but a Singleton IS a variant on a "global variable".  I'm not saying there's not a place for a Singleton, or any form of "global variable" for that matter.  I'm saying there are real issues that must be considered when you choose to use one, and in general they are used far more often than they need to be, or should be.  Consider alternate designs first.  If the singleton is still your best option, fine.  But that really isn't the case very often.

  • Think for ​yourselves..​.

    W3bbo wrote:
    Without naming names, I think it's worth pointing out there's a sight too many near-blind Microsoft bítches, people who seem to follow Microsoft as if it were the Christ. You know who you are.


    Who peed in your wheaties?  Seriously, W3bbo, this doesn't sound like you.

    W3bbo wrote:
    You should stop ignoring the competition (from all angles be it ideological alternatives like GNU vs Permissive vs Propriety, or alternative implementations like FreeBSD or OSX).


    Who's "you?"  My experience is that the majority of the folks on here do have some experience with the "competition."  Those that obviously don't are usually Linux trolls.

    W3bbo wrote:
    For instance, those extolling the virtues of C# in education, whilst ignoring Java's advantages and other "real-world" problems where Java is best suited over C# (the CLR is not a strict superset of the JVM). You people are more advocational than Microsoft's own employees, even those of the NIH variety. Microsoft's own developers have said they use emacs or vim over VS; so how can you pímp VS like it's a panacea for any development ail. Different people have different requirements.


    1.  I once recommended Java to my alma mater as the introductory language.  I know believe this was a huge mistake.  First, I think it's wrong to start with an OOP language.  Second, I think Java is a poorly designed language, and recent changes have actually made it worse.  That's at the language level.  At the library level it becomes much worse.  Definately don't teach that stuff to first years.

    2.  Recommending any widget over any whatsit does not mean the person doing the recommendation has no idea what a whatsit is, or the pros/cons of using a whatsit over a widget.

    3.  This is a Microsoft community.  It's natural that the majority of the folks on here are going to recommend a Microsoft solution.  Nothing surprising or even wrong with this.

    W3bbo wrote:
    Kill your neowin RSS feed and subscribe to something less Microsoft orientated. MS is but one company in an ecosystem, why are you ignoring the other big players like IBM, Sun (they do more than Java y'know), and Oracle?


    I know you weren't addressing me, but I'll respond as you were, because I do advocate Microsoft technologies on here.

    Hmm... I subscribe to somewhere in the neighborhood of 100 feeds.  Neowin ain't one of them.  One is C9 and another is SlashDot.  One is a Mono agregated feed (so it actually is more than a single blog).  Another is a Linux agregated feed.  Yet another is a Gentoo agregated feed.  Yet another is a SUSE agregated feed.  Another is Lambda the Ultimate.  With nearly 100 feeds, I could go on, but I think you get the point.

    I've used every release of DOS and Windows (and I mean every release).  I've used Mandrake, RedHat, SUSE, Gentoo and Lindows on machines at home.  And not just to "play" with them, or to see what they were like.  Heavy duty use on all of this, including coding on every single one.  Back in the day I also used Xenix at home.  And that's just personal.  Professionally you can add AIX and a few other commercial Unix derivatives.  Academically I also used VMS.

    For languages, I've used: C, C++, Pascal, Fortran, Lisp, COBOL, Basic (many variants), Logo, Prolog, Java, C#, Python, Ruby and several Assembly languages.  I'm proficient to expert in C, C++, Java, C#.  I've used Python and Ruby professionally, and I'd probably consider myself above proficient in them as well, though I've not done as much large scale coding them.

    My point is that personally I'm very well rounded in my knowledge and experience with the "competition."  I don't know the experience of every single person posting here, but I assume some knowledge by what they've said.

    W3bbo wrote:
    Ultimately you're hurting everyone you prosetylze, if you're successful in your evangelism then you're limiting your convert's employment propects. There are next to zero MS-only shops, it's in everyone's interest to become familiar with "foreign" technology. I already regret not getting to grips with Linux earlier on in life, for example.


    The "Pragmatic Programmer" point of view.  I totally agree with that.  But I don't agree that recommending a tool, for what ever reason, is wrong or will lead to "limiting your convert's employment prospects."  That's an extremist result.  Not pragmatic at all.

    W3bbo wrote:
    Microsoft is a publically traded company, its loyalties are to the shareholders, not customers or partners. It just so happens that the
    best way to please the shareholders is by making software good enough that it sells, not excellent or boutique software though. It's kind of like evolution via natural selection, changes are passed down only if the organism can reproduce succesfully, nothing else matters (so bachelor academics are dooming the human race whilst idiots reproduce like rabbits). Point is, there's very little incentive to create an "excellent" product, even less so when you already have a de-facto vertical monopoly with little competition in the same marketspace.


    True in the abstract.  But you're not talking abstract.  You're talking specifically about language selection.  There Microsoft hardly has a "defacto vertical monopoly with little competition."  In fact, though C# and .NET are some of the top skills sought in the job market, they aren't the lead.  Java probably has a slight lead, and C++ still holds the top spot.  COBOL probably is even just slightly behind.  IOW, no monopoly.  Microsoft has to compete here.  Good enough is not really good enough.  And, in point of fact, they are arguably better designed than Java.  I say this, having several years of professional experience with both, but more experience with Java.

    W3bbo wrote:
    So tone it down. Recommend Microsoft or any other's products when appropiate, but consider Microsoft (and any other company/organisation/rag-tag team of hippies) is not perfect. Don't recommend one product with "two thumbs up" without judging it in cimparison to the competition. (So don't diss Java without using it for as long as you've been using the CLR, for example. Or Expression without trying Creative Suite.


    I really don't know who you're specifically ranting at.  You may have a point with someone specific.  However, it's just as likely you're making some assumptions about someone's experience and because their opinion is different from your own you're sure it's because they are clueless.  If you're going to post something this harsh (tone it down, and it would have been a good "lesson" post), you'd better have proof.

    So, have I convinced you to calm down yet?

  • Thread Safe Singleton Pattern - C# ???

    staceyw wrote:
    

    The static method is simple and works.  But sometimes you may need to init the singleton lazy or use a ctor with parms you don't have until after some event.  Here is the way to lazy init a singleton. Actually not much more work then the static method. This also gives you option of poking in another singleton for future callers while letting the last singleton drain.  This may be needed for dynamic runtime config changes without needing to restart the whole app, etc.

    public sealed class Singleton
    {
        private static Singleton value;
        private static object syncRoot = new Object();
        private Singleton() { }

        public static Singleton Value
        {
            get
            {
                if (Singleton.value == null)
                {
                    lock (syncRoot)
                    {
                        if (Singleton.value == null)
                        {
                            Singleton newVal = new Singleton();
                            // Insure all writes used to construct new value have been flushed.
                            System.Threading.Thread.MemoryBarrier();
                            // Publish the new object;
                            Singleton.value = newVal;
                        }
                    }
                }
                return Singleton.value;
            }
        }
    }



    1.  He already pointed out that the static constructor is done lazily.  No need for this for that reason, though your point about providing construction parameters may hold (though that's a weird concept with singletons... to be valid you'd have to construct with the same parameters every time, which means you might as well put it in with the construction).

    2.  This is the DCL (Double-Checked Lock) pattern.  As pointed out already, it's broken under many architectures.  I don't believe the CLR makes any gaurantees in this case, so I wouldn't recommend the pattern.

    That all said, I also would discourage the singleton pattern.  It's over used, and is often the wrong solution.  A singleton is a type of global variable, and global variables have all sorts of design issues, especially when writing multi-threaded code.

  • Student's suspension for IM buddy icon upheld by US court

    nightski wrote:
    
    wkempf wrote:
    
    Skriker V1.0 wrote:
    http://www.theregister.co.uk/2007/07/12/im_aim_icon_suspension/

    This is quite extreme.. what happned to Freedom of speech and expression!!!



    This is hardly extreme.  What's extreme is what so many people think "freedom of speech" means.

    1.  Just because there are things you can't say in do in certain situations, such as at work, does not mean you have no freedom of speech.

    2.  Not all speech is covered under the concept of free speech.  For example, slander and exciting to riot.  If the kid had an AIM icon that showed a gun shooting a specific teacher in the head, he's lucky he only got suspended.  This could be construed as a threat, and much harsher legal actions could have, and probably should have been taken.

    The "Bong hits for Jesus" case was a little extreme.  This one is not.


    I am confused.  The article apparently says he got suspended because of the AIM icon he used while at home?  This is really bad, I can't find any justification for the ruling.  I mean if he was using the icon while on a school computer then I understand.  But now schools have authority over what you say at home?


    Ooookay.  Teach me to only read half an article and then comment.  This one as basically as gray as the Bong one, then.  At least in so far as the school suspension is concerned.  However, it's an even better illustration of what I was saying about disregarding responsibilities in the name of "my rights".  The kid did screw up.  And I still think there should have been consequences to his action.

  • Student's suspension for IM buddy icon upheld by US court

    For the most part, I think we're headed that way because we no longer have respect for the rights we have.  With rights come responsibilities.  The Bong case, though I'm not sure how I think it should have been dealt with legally, illustrates this point nicely.  The kid was out of line.  Not for what he said, but for where, when and how he said it.  The fact that he wasn't actually in school is the only part of this story that gives me pause.  He has the right to say what he wants to, but the school should have the right to remove the disruptive influence as well.  Once your rights infringe on mine, you're abusing your rights and deserve the consequences of your actions.

    But again, that case is much more gray than this one.  This one, to me, is pretty darn black and white.  The kid should have gotten more than a suspension.

  • Student's suspension for IM buddy icon upheld by US court

    Skriker V1.0 wrote:
    http://www.theregister.co.uk/2007/07/12/im_aim_icon_suspension/

    This is quite extreme.. what happned to Freedom of speech and expression!!!



    This is hardly extreme.  What's extreme is what so many people think "freedom of speech" means.

    1.  Just because there are things you can't say in do in certain situations, such as at work, does not mean you have no freedom of speech.

    2.  Not all speech is covered under the concept of free speech.  For example, slander and exciting to riot.  If the kid had an AIM icon that showed a gun shooting a specific teacher in the head, he's lucky he only got suspended.  This could be construed as a threat, and much harsher legal actions could have, and probably should have been taken.

    The "Bong hits for Jesus" case was a little extreme.  This one is not.

  • C++ Newbie Questions

    retierney wrote:
    

    I'm absolutely new at this and please forgive me if this is not the correct place to ask these questions but here are some questions I could really use some answers to.  I am going to be taking some C++ courses at a local college and I want to set my personal computer up so that I can do some C++ learning/development.  I may have the opportunity to use C++ in my job in the future.

    Should I buy Visual Studio 2005 as my development environment?



    You certainly could, but for learning purposes, if you budget is tight, you could just use VS C++ Express: http://msdn.microsoft.com/vstudio/express/downloads/.

    retierney wrote:

    I understand what the C++ Standard Library is but does it come as part of Visual Studio 2005?


    Yes.  You can't really be considered a C++ compiler if you don't include the standard libraries.

    retierney wrote:

    What is the Standard Template Library and does it come with Visual Studio 2005?


    It's a library of collections and algorithms to use on the collections.  You'll learn a lot more about them then this stupid sentence explains, but that should be enough of a description to get you going.  It's important to note, however, that most of what the STL included is now part of the C++ Standard Library.  This is confusing, because some people will refer to the standard library as the STL, when technically it's not.  You'll probably not use the STL, but will instead learn the standard library, which as I just said, comes with your compiler.

    retierney wrote:

    What exactly is the MSDN  Library and should I invest in this?

    Thank you for your patience...


    The MSDN Library is a huge set of documentation that includes API documentation as well as programming articles and sample code.  An offline version comes with the compiler (I don't know about Express), while the online version is available free on the web.  No investment needed.  So, maybe you meant an MSDN Subscription instead?  That includes the library, as well as developer versions of many Microsoft software packages, such as operating systems, office, SQL Server, development tools, etc.  Probably not something you'll want to invest in just for learning purposes, because subscriptions aren't cheap (though they are worth the money).

  • WTF rant

    mVPstar wrote:
    <pedantry>
    Rossj wrote:
    But did you even watch the video - you can't see the flattened cube being useful? Me I'd love to be able to see the state of N virtual desktops and be able to drag windows between them.


    But, wouldn't it being a cube limit down to six the number of virtual desktops you could have.

    So it wouldn't technically be "n" desktops.

    </pedantry>

    What exactly is the point of multiple desktops? Why not just minimize your apps to the taskbar when you're not using them?

    I'm curious to see in which scenarios a user would need to have more than around 7 apps open at a time (to make minimizing cumbersome and cluttered)


    I don't know about "need" (technically, you only ever need 1, since you can task switch by closing one and opening another), but it's not unusual for me to have 20+ windows open.  So be careful with statements like this... there are people who will always push the envelope.  And telling them they don't "need" to isn't helpful to anyone.