.NET Open Source Initiative

Sign in to queue

Description

with Jay Schmelzer, Beth Massi, Immo Landwerth and Martin Woodward

For more information, check out this course on Microsoft Virtual Academy:

Tag:

.NET

Day:

3

Session Type:

Channel 9 Live

Code:

C9-15

Room:

Channel 9 Stage

Embed

Download

The Discussion

  • User profile image
    ErikEJ

    Hi Martin Woodward, You also manage a site called "CodePlex", which used to be a hot place for new MS related OSS Projects. But it appears that the last couple of years you have spent minimal amount on resources on this site, which badly needs a makeover. I host a very popular Visual Studio add-in on the site , and generate a lot of traffic to it. What are your future plans for codeplex.com?  Possible paths:
    1: Start investing in new features/integrations (integration with VSO and appveyor for build, for example, and a UI makeover,and groom the wish/bugs list and bring it Down.

    2: Provide a feature/tooling to migrate most of a Projects content to github: Source code, preferably incl history, but acceptable without,, issues, wiki pages, front page and project decription/tags

     

  • User profile image
    batpox

    Any news/plans to Open Source LightSwitch, XNA, VB6, ... ? (I'm sorry to be so annoying/persistent, but a lot of people besides me want to know). Thanks.

  • User profile image
    pmelendez

    MS Opentech did a great job bringing OpenGL based frameworks (such as Openframeworks) to Windows. Now that the subsidary is merged with Microsoft what's the future of that work?

  • User profile image
    AnisSG

    is there any news about WPF support on Linux and OSX ?

  • User profile image
    martinwoodw​ard
    @ErikEJ - I moved on from the CodePlex team a while ago. It's still under Brian Harry in Developer Division and he's been public about his plans.

    But I have always been a big fan of CodePlex (and open source in general), joining in May 2006. Also I have a lot of history there, in fact I was at dinner with Sara Ford just last night so bear with me while I give you an overly long answer to your simple question ;) Just caveat this with the fact that I'm not on that team anymore so cannot speak to their current backlog.

    CodePlex is an incredibly popular site. It's numbers are dwarfed by GitHub but there are around 250,000 core active users and over 1 million page views. Brian has been very clear that he doesn't see why he would want to switch CodePlex off while so many people find value in it and for some projects the ads they enable are actually helping fund open source development.

    From when I was on the team, the plan is roughly option 1. Basically, merge it with VSO as the back end. But to do this we have to add a ton of social features into VSO and infrastructure which is what the team are working on. Things like markdown support, web editing in VC, welcome pages, Pull Request support in VSO are all visible steps in this direction but there is more going on under the covers. But there is a LOT more to do (so much that I wouldn't want to predict when a backend switch to VSO will be possible) - CodePlex has lots of rich functionality that people love and there is no point moving the backend until you can support the things that people love about the current site (including one of the hardest things to engineer - simplicity)

    While the team focus on enhancing VSO to engineer the necessary social experiences, most work that happens around the current CodePlex site is to keep it running. You'd be surprised how much work it is just keeping up to date with security fixes and the never-ending cat and mouse game that happens with spammers and other attackers (turns out CodePlex has pretty good SEO which is a strength for CodePlex projects but one that makes it very attractive to spammers). You also get the day to day fun of running a popular site with freedom at it's heart (being hit by badly written crawlers etc, being DDOS'ed by someone trying to take out a project they don't like or just attacking the servers for giggles). Luckily we have an awesome team who know about scaling and running large websites.

    But despite the plan being to keep an open source presence from Microsoft, I strongly believe that the data of projects in CodePlex should be free (as in speech). It's not Microsoft's open source project after all, the data doesn't belong to them and OSS hosting providers have a duty to try and make the data in their care as free as possible with-in the license terms that the project selected. So CodePlex should make it as easy as possible to move your project if you wish. When I was on the team I spent some time examining what we could do with issues to make them more portable, I'd be interested what your thoughts are here. If you wanted to just move where you host new issues then you can contact the team they can switch your issue database off so that you can point people to a different location if you wanted. The key problem in moving the data is around privacy of the people leaving issues against your project or commenting on them. We wouldn't be able to associate those comments and issues with the persons GitHub ID (if they have one) without sharing the users email address with GitHub which is something we wouldn't do. But it would be much better to have that linked up. I was talking with GitHub just this week about some options (like maybe passing a strong one-way cryotographic hash of the email that they could keep and compare with hashed versions of emails they have) but privacy on contributors is the major problem to work out. Passing the data itself around is pretty easy. That said with Git and export/import of work items you can do an ok job today.

    If your project is stored in TFVC then the team will even help you convert it to Git (hosted on CodePlex) if you contact them. Once you are over to Git it makes it very easy to move hosters for your version control data if you wish as there are more alternatives available and history is portable.

    We made the decision to start using GitHub more for major Microsoft open source projects simply because that is where the majority of the community is and its healthy to demonstrate how serious we are as a company that the code really is open source. To many people in the world (esp outside the .NET community) OSS==GitHub and therefore that is where we needed to be to be taken seriously. We also needed to get more organised in our GitHub presence which is why we created the Microsoft org while I was on the CodePlex team and we have guidance around GitHub use in the company now.

    But it doesn't make sense to try and "win" with CodePlex at all costs. I see that attitude a lot that because GitHub is winning at open source somehow that is a loss for CodePlex and a bad thing. Openness and collaboration is not a zero sum game. GitHub is an awesome company doing great things for open source. They channel an extraordinary amount of their profits and resources into making the OSS world a better place. I am have been lucky enough to work with them for a few years. They are filled with people who live and breathe open source and they are very good at it. We need to ensure that Microsoft's investments in this space improve the OSS world which is why you also see us doing things like helping add GitHub to all versions of VS (including the free Community edition) and making it a peer of the Git hosting capabilities on VSO etc.

    I personally see Microsoft having open source hosting facilities for the foreseeable future. Choice isn't a bad thing. If you like CodePlex great, use it - but understand there are not going to be any major feature improvements while the focus is on making VSO capable of hosting open source projects. If you like GitHub or another OSS forge then use it. If you want to use accounts across several forges to get the best of all worlds then you are welcome to do that as well.

    The thing I care about is that you are able to open source your code and able to work easily with people around the world to make that code better.

    Sorry for the long answer - something I have a lot of history with ;). Hope it helps though.
  • User profile image
    martinwoodw​ard

    @AnisSG- at the moment the focus for most of the engineering groups working on the open source elements of .NET is to target the server workloads. That's what the vast majority of the Linux machines on the planet are busy doing now and we want .NET to be on as many machines as possible so serer workloads are at the top of their priorities. Getting the current WPF api's to work against a mixed set of platforms, windows managers and native UI frameworks is a non-trivial engineering effort that grows exponentially especially when you put OS versions into the equation (just look at things in the Java world like AWT and SWT which are more equivalent to WebForms) 

  • User profile image
    martinwoodw​ard

    @batpox - no news I'm afraid. I'm sure you'll hear about if it happens ;)

  • User profile image
    martinwoodw​ard

    @pmelendez - the MS Open tech projects are being brought into MS Corp.  See the following link for more details on the future for the MS Open Tech team https://msopentech.com/blog/2015/04/17/nextchapter/

    I get to work with many of them every day (and continue to do so). It's very excited to see the transition in Microsoft's approach to open source that they have been driving.

Add Your 2 Cents