As part of my new advertising initiative, Microsoft and I are teaming up to donate $10,000 in support of open source .NET projects.
Why am I focusing on .NET open source projects? In short, because open source projects are treated as second-class citizens in the Microsoft ecosystem. Many highly popular open source projects have contributed so much to the .NET community, and they've gotten virtually no support at all from Microsoft in return. I'd like to see that change. In fact, I'll go even further-- I think it must change if Microsoft wants to survive as a vendor of development tools.
Of course, I'm not the first person to make this observation:
It's a shame that Microsoft can't put together an organization like INETA (who already gives small stipends to folks to speak at User Groups) and gave away grants/stipends to the 20 or so .NET Open Source Projects that TRULY make a difference in measurable ways. The whole thing could be managed out of the existing INETA organization and wouldn't cost more than a few hundred grand - the price of maybe 3-4 Microsoft Engineers.
The open source community in .NET is big, but it is only a fraction of the size of the open source community in other environments (Java, for instance). This disparity can be explained by looking at the basic facts of the .NET community: there's one central vendor, Microsoft. This puts Microsoft in a position where they have the ear of every .NET developer, team lead and architect. And Microsoft isn't doing anything to foster a healthy OSS community around .NET.
In my company's commercial application we depend upon DotNetNuke, Nant, log4net, NUnit and other open source tools. Those open source projects help support us. In fact, without DNN, we would probably be out of business because our developments costs would be too high. In turn, my company helps support Microsoft through the purchase of licenses and MSDN subscriptions. Yet Microsoft does not complete the circle by financially supporting any of those open source projects.
I believe it is in Microsoft's best interests to identify a handful of open source projects to support, especially where those projects fill a void in the Microsoft product line, or where the project promotes the adoption of Microsoft products. However, I think the project bears even more responsibility to identify how they can benefit a potential corporate sponsor, and then actively pitch the idea to the corporation whose sponsorship is being sought. The project should care more about developing and growing this relationship than the corporate sponsor, since the project could well die without the support, while the corporation only loses one of many potential opportunities.
Here are my initial thoughts on splitting up the $10,000:
I'd also like to see this become a yearly event. As long as my advertising revenues hold up, I'm certainly willing to contribute a percentage back to the community every year.
All of this will be determined by popular vote, of course. Let's start by getting together a list of candidates. I'm soliciting nominations. Which .NET open source projects do you find most useful?
| [advertisement] Axosoft OnTime 2007 is a bug tracker that manages requirements, tasks, and help desk incidents. It's designed to help teams ship software on time. Available for Windows, Web, and integrated with VS.NET 2005. Installed or hosted. Free single-user license. |
Posted by Jeff Atwood View blog reactions
« How To Advertise on Your Blog Without (Completely) Selling Out Learning, or, Learning How To Learn »
I nominate MbUnit. It's hands down the best unit testing tool out there.
Are you focusing on projects that don't already have a corporate backer? For example, CruiseControl.NET is pretty well supported by ThoughtWorks.
Haacked on June 27, 2007 12:30 AMmy vote goes to ItextSharp.
it's a port of the iText open source java library written entirely in C# for the .NET platform. iText# is a library that allows you to generate PDF files on the fly. It is implemented as an assembly.
http://itextsharp.sourceforge.net/
its really amazing. you can create pdfs on the fly, add digital signatures, ...
cheers, Andy
novastar22 at yahoo dot de
I second MbUnit and raise you the whole Castle project.
Scott Hanselman on June 27, 2007 12:56 AMOpen source doesn't need money to become solid, it needs attention. Just throwing money at open source is what MS is doing for years and it hasn't payed off. The reason for that is that the mentality of the average developer on MS platforms is that you simply pay for controls, libraries and tools and if you work on these products, you get payed.
You won't hear me complain about that mentality, as an owner of an ISV which targets .NET, I like that mentality from a business POV and with me all the other ISV's which do the same: target .NET. :)
For open source, that mentality isn't that great: less people are interested in devoting large piles of time to a project and when it's released, the majority of developers often won't even think about looking for an OSS alternative to commercial offerings.
THATs what's lacking in the MS' ecosystem for open source. You can throw money at it, but that mentality won't change. One of the core reasons it won't change is because MS won't let it be changed: if it does change, their days are numbered.
Frans Bouma on June 27, 2007 12:58 AMCMS using ASP .Net, VB .Net and SQL server.
Simple yet flexible.
Oh, and dasBlog also. ;)
Scott Hanselman on June 27, 2007 01:03 AM> Open source doesn't need money to become solid, it needs attention.
I agree, but we have to crawl before we can walk. There will soon be open source MVPs, from what I hear..
> Just throwing money at open source is what MS is doing for years and it hasn't payed off.
When has MS "thrown money" at open source? I've cited multiple blog posts above from people who ask for exactly that, so educate us, Frans. I realize that money is not the answer to all problems, but it's a great starting point for a larger conversation.
Jeff Atwood on June 27, 2007 01:06 AMWould a small consideration be enough to get the NDoc project up and running again with support for .NET 2.0? It's more than a shame that this project died due to lack of financial support (OK, that was *one* of the reasons) before Sandcastle was ready to take over.
David Keaveny on June 27, 2007 01:12 AMZedGraph (easy & flexible charting) is the absolute killer .NET open source tool, better even than most commercial products. MBUnit and Reflector would also be on my list.
Hermann Klinke on June 27, 2007 01:17 AMSubSonic, of course.
Carlos M Perez on June 27, 2007 01:22 AMTeam Media Portal.
Viv Paton on June 27, 2007 01:25 AMWhile Reflector is great, it's not open source.
Matthijs van der Vleuten on June 27, 2007 01:32 AMI would say:
CruiseControl.NET, MbUnit, and, since Scott mentioned dasBlog, I'd also say Subtext :)
Definitely the Castle project and NHibernate, i couldn't work without them.
Franz on June 27, 2007 01:52 AMMaybe the SharpDevelop?
nasty on June 27, 2007 01:54 AMDasBlog, NUnit, iText
Ndoc or other sandcastle gui
Franz: I totally agree with Castle, but NHibernate is sponsored by JBoss, and NHibernate developers are paid for full time maintentnce of the project.
nasty on June 27, 2007 01:57 AMAs someone who has developed multiple OpenSource projects on Windows, I have issues with .NET.
First off, are all the various .NET's licenses one has to agree to in order to work under the system GPL compatible? Microsoft has been known to craft EULAs with the specific purpose of making them GPL-incompatable. I'm guessing there's some way to do it, as a gcc-based Ada compiler has been ported (http://www.usafa.af.mil/df/dfcs/bios/mcc_html/a_sharp.cfm ). However, a quick search online indicates that the license associated with the Ajax controls, among others, is incompatible. According to http://en.wikipedia.org/wiki/List_of_software_licenses , the Ms-PL, Ms-CL, Ms-LPL, and Ms-LCL are all incompatible.
I'd have to read every EULA very carefully to be sure I'm legal. See the previous entry in this blog about people not liking to read EULAs.
Add to this Microsoft's recent use of lawyers against volunteer developers ( http://haacked.com/archive/2007/06/01/did-microsoft-violate-testdriven.nets-eula-to-defend-its-own-eula.aspx ), and .NET just doesn't seem all that friendly a platform to me.
T.E.D. on June 27, 2007 01:59 AMAnother vote for the Castle project - not only is their code awesome, but the simplicity of their ideas seems to be contributing to some great discussions on .NET.
Colin Ramsay on June 27, 2007 02:05 AMJust throwing in what we use, ranking them seems unfair:
NAnt, NUnit, log4net, CruiseControl.net, NCover.
"there's one central vendor, Microsoft"
We can change that. Please consider donating some of your new funds to the Mono Project (http://www.mono-project.com/Main_Page).
Raving Free Software Lunatic on June 27, 2007 02:25 AMThis is an excellent step forward. I hope Microsoft continue to respond positively.
X on June 27, 2007 02:35 AMPaint.NET is a gorgeous piece of free software -- by both definitions, in that it costs $0.00 ("free as in beer") and is covered by the MIT License (presumably the X11 Licence) which the FSF considers to be GPL compatible.
It's not a dev tool in the normal sense, but it's immensely useful as a replacement for the standard Windows Paint program with pretty much all the features I can imagine needing from more expensive tools like PhotoShop. I think it deserves recognition and money.
Eric TF Bat on June 27, 2007 02:53 AM
Not earth shattering, but this was the first one that comes to mind and my department is actually using it.
http://www.ifdefined.com/bugtrackernet.html
brian on June 27, 2007 02:54 AMI nominate Paint.NET. Great UI and great potential. Maybe enough momentum behind this can set it on the path towards replacing GIMP as the FOSS Photoshop contender (assuming, of course, it runs on Mono and assuming the eventual acceptance of Mono).
brian on June 27, 2007 02:56 AMI nominate http://www.umbraco.org/
Why? Because it's not only a .NET 2.0 based open source CMS that runs on MSSQL. It's truly the best sweet-spot CMS out there that I've seen during my 8 years in the CMS industry. It even won two prices for the best supporting and active community and for it's excellent integration capabilities at BNP 2006 (http://www.bnp.dk/227.0.html).
Kenneth Solberg on June 27, 2007 03:05 AMCastle
RSS Bandit
Argotic
NDoc 2.0 to rise from the ashes but I think this is too little too late.
Mike Minutillo on June 27, 2007 03:22 AMWonderful idea! Finally someone is finally putting some money where his/her mouth is! Way to go!
@Raving Free Software Lunatic : Mono is very well funded and taken care of by Novell. Trust me (I used to work for them until about 3 days back) on this one, what they really need is some hands at writing code (good code ie)
I would love to nominate PAINT.NET, but I guess it is quite well supported already. It is by far the most useful app I have used.
I would really suggest that to sponsor more upcoming projects than the ones that are already well established, since they usually have some corporate backing if they are working with .NET
How about creating a list of ideas that you want implemented and they putting a price (prize ;) ;)) tag on it!
Shivanand on June 27, 2007 03:39 AMI nominate Cuyahoga. It's a brilliantly simple CMS for .NET 2.0, with module and skin development made quite easy. I think they could use some more support.
Whever on June 27, 2007 03:58 AMBlogEngine.net
Its new and is well on its way to competing with WordPress.
Clarence on June 27, 2007 04:03 AM"When has MS "thrown money" at open source? I've cited multiple blog posts above from people who ask for exactly that, so educate us, Frans. I realize that money is not the answer to all problems, but it's a great starting point for a larger conversation."
Well, gotdotnet, codeplex, these sites have teams behind them, custom made software was made for these sites, 3rd party maintenance teams are maintaining the hardware etc., that's costing money. Left alone the community efforts all over the place to support more community participation by developers out there, which leads to more free open tools.
I've written a lot of open source code (for example last year I released a big forum/customer support system for ASP.NET under the GPL, complete with UBB LR(n) parser system etc.) and am roaming in OSS groups for years. The main question I have when I see your post is: how will giving money to a random set of projects suddenly make people more aware that one can contribute and use open source code? I see absolutely no reason why giving away money would have that effect at all. I appreciate your effort and hats off for that, but I don't see how it can be effective.
In fact, the whole MS platform eco system isn't suitable for open source tools to become very effective. As soon as they do, MS will come with an equivalent, and what's worse: large droves of developers don't even know how to spell open source, left alone that they're even looking for open source projects, they simply look at Redmond and wait till MS comes with something.
In the Java community, things are completely the opposite. The whole eco-system around Java is simply build on top of the open source model: libraries and tools are very often free and open source. The business model of java oriented companies is build around providing services, not by selling licenses. On the MS platform this is the opposite.
Promoting open source is therefore an uphill battle, if not an impossible battle. Uphill, because the mentallity of the average mort is totally not focussed on open source in any shape or form, and impossible because MS has such a strong focus on controlling the market ontop of its own platform, they're totally not interested in changing the mentallity of mort at all. There are numerous examples out there, nunit and ndoc being two of the most well known. Instead of supporting nunit and mbunit, MS rolls their own unittest runner, incompatible with the open source ones, and hires the mbunit main developer. NDoc dies because the main developer has no time anymore. Instead of working WITH that code, MS releases a half-baked beta of a never-going-to-be-released toolkit called Sandcastle.
Two examples where Microsoft could have supported a beginning eco-system of open source toolkits. Instead, they effectively killed them off. Sure, both are still used, but not as wide-spread as MS' offerings. And _THAT_ is precisely the point.
So again, hats off for your initiative and motivation, but I have little hope (none actually) that this will help at all, simply because it won't solve the core problem why there's no healthy eco system for OSS / free toolkits on .NET like there is on Java.
Frans Bouma on June 27, 2007 04:09 AMNo nominations here, but...
What about codeplex? I would consider setting up an exclusively .net sourceforge knockoff pretty supportive. And I say knockoff loveingly, I think it's a great service with tons of extremely supportive features.
With regards to adds...what happened to the time delay? And your "don't make them click" full RSS philosophy counts for nothing when you pushing ads at us over RSS.
Ok, maybe one nomination, how about WorldWind?
http://worldwind.arc.nasa.gov/
The whole Castle project. Castle Windsor and MonoRail are the best!
Torkel on June 27, 2007 04:31 AMI'd vote for SubSonic also.
I'm not sure if Rob would take the money personally (although he deserves it) but I think some of his team deserve some recompense for their hard work and effort.
I think I heard one member has been passing up paid work to allow more time to work on the project and help the community.
Remmus on June 27, 2007 04:34 AMI think Watin and Watin Test Recorder do an amazing job for asp.net integration testing! Those projects earn my vote.
Nik on June 27, 2007 04:45 AMNUnit, NAnt, NDoc (please come back), ahnksvn, Castle. I don't care for blog engines b/c they are not .Net developer tools per se.
Sergio Pereira on June 27, 2007 05:02 AMI second Watin! I've shown it to our testers and actually got them interested in automation.
Trevor on June 27, 2007 05:07 AM+1 to Castle and nHibernate
Bill Pierce on June 27, 2007 05:23 AMAnother vote for the Mono Project to support their development of porting Silverlight to Linux :)
Chris Jones on June 27, 2007 05:30 AMSubSonic. Without a doubt.
It's given me a whole new outlook on ASP.NET development.
Matt Blodgett on June 27, 2007 05:35 AM+1 for Umbraco - www.umbraco.org
Daniel Bjørnbakk on June 27, 2007 05:38 AMWhat an small slice for FileHelpers:
We help a lot of developers and companies to avoid the pain of flat file handling, we want to create a full open source solution to exchange data in flat file format between applications, and some motivation is really needed.
A description from the site:
"You can strong type your flat file (fixed or delimited) simply describing a class that maps to each record and later read/write your file as an strong typed .NET array"
Thanks a lot to you and MS for this change
Marcos Meli
Open Source Developer
FileHelpers
MbUnit and Rhino.Mocks
No doubt the two most important open source tools I use every day.
Jeremy on June 27, 2007 05:45 AM"In fact, I'll go even further-- I think it must change if Microsoft wants to survive as a vendor of development tools."
Do we really want it to survive? We should be putting our money behind open-source projects that support open-source projects, not Microsoft. What the open-source community should really be supporting isn't some framework that only Windows users can use, but PORTABLE projects across several operating systems, including Linux, Windows, MorphOS and Amiga. So, if your going to throw your money at a group for a particular programming language make it REBOL. Make it Perl. Make it Scheme. Make it any portable programming language. Not .Net. Not C#. Not Visual Basic. Not Visual C++.
Joe on June 27, 2007 05:51 AMI nominate the Commerce Starter Kit @ http://www.commercestarterkit.org
Chris on June 27, 2007 05:53 AM@Frans:
Let me disagree with u a bit.
The money is very important for a lot of developers, if some open source developer get a donation sure it will work hard to release versions oftem or to support user faster.
Is very frustrating give suport for free and dont get a thank u after solve the other problems (check some cases here http://www.filehelpers.com/forums )
Anyway I love what I do, but I do some freelance work apart of my daily job, so if I get a donation I can invest some more time with my project. At the end, is all about money :P and M$ know it.
Best Regards
Marcos Meli on June 27, 2007 05:54 AMSubsonic!
Alex on June 27, 2007 05:57 AMSubSonic!!
Another vote for SubSonic. I work with a small crew with a lot of demand and this project has made our work life a WHOLE lot easier.
The team is great and very responsive to issues and questions. I couldn't think of a better project to nominate for this.
JimShelly on June 27, 2007 06:00 AMCastle and Monorail
Brandon on June 27, 2007 06:10 AMDefinately ibatis.net
Mark on June 27, 2007 06:13 AM+1 CruiseControl.NET
+1 SharpDevelop
But above all, +several thousand for the Mono project, for making .NET live up to its potential.
Jeroen on June 27, 2007 06:18 AMMy vote is for...
SubSonic (and/or the Commerce Starter Kit)
BlogEngine.Net (this counts as the "up and coming" project right?)
or dasBlog
Castle Project
Some people say blogs shouldn't count (only development tools should) but I disagree. I'd like to see the non-.Net people benefit from some of this. I want to see a Java developer running a .Net blog, for instance.
I would also like to anti-vote for iTextSharp. It's more of a port from iText than a C# equivalent. I mean it doesn't even follow naming conventions. It's also a pain in the ass with which to work. Boo to iTextSharp.
Microsoft money going to the Mono project would be very interesting.
frank on June 27, 2007 06:20 AMMy votes are:
+ NUnit
+ Castle project
+ dasBlog
+ SubSonic
Projects I'd happily see get a donation:
+ Cuyahoga
+ Subtext
+ MbUnit
+ StructureMap
SubSonic. We really need to shut those Ruby on Rails guys up :)
Scott Kuhl on June 27, 2007 06:36 AMZedGraph.
I recently needed a graphing library for an open source .net project I was working on and ZedGraph came through with honors ;)
Lucas on June 27, 2007 06:37 AMMy vote goes to NLog and NUnit. SharpZipLib is cool, too, not sure if it counts as a separate project or if it's a part of SharpDevelop.
IronPython and F# are great, too, but is MS already sponsoring these.
BTW: most votes (like mine) seem to go to "established" projects - I'd love to read more about "up, new and coming" projects!
Niki on June 27, 2007 06:42 AM+1 for Castle and Rhino Mocks. Couldn't live without them!
Ben on June 27, 2007 06:45 AMSubSonic. easily the most time-saving tool out there.
and +1 for all the usual suspects like NUnit/MBUnit, Rhino Mocks, etc..
dave thieben on June 27, 2007 06:45 AMI have an up-and-coming open source project:
NBusiness
http://www.codeplex.com/NBusiness
It's coming along pretty well, almost ready for v2 release and I have lots of plans for the next release too.
Two of my favorite, more well established open source .net applications have to be NUnit and TestDriven.NET. You might also consider Paint.NET, it's not a developer library but it is an excellent .net open source application that I use almost every day!
Justin Chase on June 27, 2007 06:45 AMSince most people will probably nominate open source standards like NUnit, NAnt, Rhino Mocks etc, I would like to mention some other OS projects which I find very useful:
+ CS-Script (http://www.members.optusnet.com.au/~olegshilo/)
+ ZedGraph (http://zedgraph.org/)
+ DockPanelSuite (http://sourceforge.net/projects/dockpanelsuite/)
I second NDoc. SubSonic is great too!
Ryan on June 27, 2007 06:59 AMI would like to nominate
- SubSonic
- The Commerce Starter Kit (CSK)
both of them are makink my life a lot easier :-)
Oliver on June 27, 2007 07:10 AMFantastic idea - here are my votes:
1. An order of magnitude more important than all other open source .net efforts:
Mono
http://www.mono-project.com/Main_Page
2. So ubiquitous, why is this not in the framework:
#ziplib
http://www.icsharpcode.net/OpenSource/SharpZipLib/
3. An independent viable open source ruby implementation:
Gardens Point Ruby.NET Compiler
http://plas2003.fit.qut.edu.au/Ruby.NET/
4. Almost makes sandcastle a viable alternative to ndoc (almost):
Sandcastle Help File Builder
http://www.codeplex.com/SHFB
Net Tiers great ORM
http://www.nettiers.com/
SQLite
http://www.sqlite.org/
I second all Lutz Roeder tools
Massimo Gentilini on June 27, 2007 07:13 AMI've got three, I know I saw votes for two of them already:
- SharpDevelop
- SourceGrid
- iTextSharp
I'll put as many votes in for SharpDevelop as I can!
Stephen Paskaluk on June 27, 2007 07:16 AMAnd, on second thougts, the screwturn wiki engine (http://www.screwturn.eu) because it's the first Wiki made with .Net I'm happy to use.
SubText
Mono
#ZipLib
Log4Net
SubSonic, NAnt, NUnit
Sean on June 27, 2007 07:20 AMDefinately Paint.NET and BlogEngine.NET
Dustin on June 27, 2007 07:23 AM+1 SubSonic
+1 Subtext
+1 Subversion??
+1 NUnit
Long list of worthy projects. My votes:
SubSonic
Commerce Starter Kit
dasBlog
SubSonic (http://subsonicproject.com/)
JayRock (.net json parser - very lovely :: http://jayrock.berlios.de/)
NUnit, SharpDevelop and Paint.NET if applicable.
Federico on June 27, 2007 07:36 AMLucene .NET port. Probably the best open source software library I've used. A few good engineers could build something based on Lucene in a month which would rival something like Autonomy which costs 100s of thousands of $$$ to license. But still there are lots of IR algorithms NOT in Lucene yet, that should get put into it.
Bob Stewart on June 27, 2007 07:37 AMFrans wrote:
"In fact, the whole MS platform eco system isn't suitable for open source tools to become very effective."
*bing*bing*bing* We have a winner.
If you really want to make OSS more prevalent on the .NET platform, this is the problem that needs to be attacked. There are things you can do with money that would help with that, but I don't see chucking money at the most successful apps being one of them.
How about something like setting up a SourceForge equivalent for .NET apps? Perhaps its not the best idea, but that's the *kind* of idea that should be looked at; something that helps make OSS developers more productive, and/or helps interested users find projects they might be interested in.
However, any progress you make is liable to be totally undone the next time some lawyer in some arm of Microsoft gets it in their head to attack OSS again. I don't see anything your $10K is gonna be able to do about that.
http://sqlite.phxsoftware.com/ deserves some recognition. Its the best .NET provider for SQLite.
MJT on June 27, 2007 07:39 AMSo here you have all of these people raving about the OSS projects/products that are making their lives easier and I just have to wonder how many of them have contributed anything at all to these projects themselves?
Do we need Jeff to go out and get a list so that HE can contribute something on our behalf? How many of you who raved about Paint.NET actually clicked on the "donate" link and sent in a few dollars? BTW, I have.
Get off of your lazy butts and do this yourself instead of bashing Microsoft for not contributing to the tools that YOU say are helping YOU save time and money!
"I find Paint.NET userful and think it's a great program. Why isn't Microsoft paying them money so that I can continue to use it for free?". Sheesh!
Matt on June 27, 2007 07:45 AMBTW... can someone please flip Subsonic a quarter so that they can change their "catch phrase" so that it is at least grammatically correct? I'm certainly no expert on grammar but seeing stuff like that just makes me want to run away. Far away...
Matt on June 27, 2007 07:49 AM+1 for NUnit. Besides your noble initiative this post provides an additional benefit: the comments are a great place to get an overview over the latest collection of useful tools. Maybe worth a post by itself...
Manu on June 27, 2007 08:00 AMhttp://www.commercestarterkit.org/
Hugh on June 27, 2007 08:07 AMMono Project !!!
Dave on June 27, 2007 08:25 AMI vote for NUnit, RhinoMocks and Subversion.
Jan Van Ryswyck on June 27, 2007 08:36 AM"BTW... can someone please flip Subsonic a quarter so that they can change their "catch phrase" so that it is at least grammatically correct? I'm certainly no expert on grammar but seeing stuff like that just makes me want to run away. Far away... " Matt
Matt Please See:
http://en.wikipedia.org/wiki/All_your_base_are_belong_to_us
You've hit the nail squarely on the head. Microsoft doesn't believe in Open Source because they look at Open Source as a competitor to the way they do business.
Every once in a while, Microsoft will start going through the motions of supporting Open Source, but then either Microsoft loses interest or some sort of power struggle took place, and strategic plans get changed. Part of the problem is the natural suspicion that many Open Source people (especially Linux users) have with Microsoft, but much of that is the suspicion Microsoft has with the Open Source community. To many managers at Microsoft, Open Source is a communistic movement which is out to destroy our American/Microsoft way of life.
Other major companies like Google, IBM, and even Sun actually not only provide financial support for the Open Source community (like Google's Summer of Code), but hire employees whose primary job it is just to work on Open Source projects. It's not that these companies are being altruistic. It's that their business strategy is dependent upon Open Source.
IBM is dropping it's own version of Unix, AIX, in favor of Linux. Google depends upon its own versions of the various Open Source tools to keep its servers up and running. And, of course, Solaris was originally based upon BSD, and most of the networking tools Sun needs are Open Source tools.
David on June 27, 2007 08:42 AMI'm a little surprised nobody has mentioned DotNetNuke. It's a pretty big one and offers a ton of functionality. Is it that the audience here doesn't use it? It a victim of it's own success and people don't think it needs financial support? I'm curious...
Matt on June 27, 2007 08:59 AMA project I haven't seen mentioned so far that I use is Selenium Remote Control for .net - http://www.openqa.org/selenium-rc/
http://www.commercestarterkit.org/
RonV on June 27, 2007 09:20 AMAnother +1 for the Castle Project. I wouldn't want to develop without it.
Brian on June 27, 2007 09:25 AMNHibernate first
RhinoMock second
Castle third
I see absolutely nothing wrong with putting money toward any OSS that is voted for in your post. Not because of some profound ideology that certain folks think needs to drive every decision revolving around Open Source, but because it is always nice to get a 'atta-boy' in the form of $$$ and certainly can't HURT an Open Source project.
Hate to belittle all the work that's been done, and maybe some can provide comments otherwise but…
Won't Mono fundamentally be killed by Silverlight and Subsonic by Linq.
Obviously these projects still have a need to be supported for existing development. For new projects I don't think I would wander into these territories again.
Comments?
> Other major companies like Google, IBM, and even Sun actually not only provide financial support for the Open Source community (like Google's Summer of Code), but hire employees whose primary job it is just to work on Open Source projects.
Newsflash: MS has been doing this for a while. Take IronPython for example, or WTL or WiX.
Niki on June 27, 2007 09:32 AMThat is easy vote, at least for me. Castle
Shawn C on June 27, 2007 09:33 AM> Lucene .NET port. Probably the best open source software library I've used. ..
> Bob Stewart on June 27, 2007 07:37 AM
I would second this suggestion as this is a well-done and FAST search engine.
It is currently in incubation under the Apache Software Foundation. Not sure how much their contribution needs are compared to some smaller groups, however.
http://incubator.apache.org/lucene.net/
@Frans Bouma,
> For open source, that mentality isn't that great: less people are
> interested in devoting large piles of time to a project and when
> it's released, the majority of developers often won't even think
> about looking for an OSS alternative to commercial offerings.
I'm not too sure about that. There are plenty of companies out there (classic example, startups) that would go with the open (and often free) route to getting their offering off the ground. Also, OSS developers don't develop their product with a particular business model or idea in mind, IMO.
> The main question I have when I see your post is: how will giving
> money to a random set of projects suddenly make people more aware
> that one can contribute and use open source code?
Well, for one, what Jeff's trying to do is get a feel for what projects out there people are really interested in. If there's genuine interest in these projects, and Jeff and I both think this is a worthwhile investment of our $$. As far as awareness goes, we're hoping the contributors accomplishments and the usefulness of the project will raise awareness. I don't think that's the only criteria, because there are several OSS projects out there that are not being used heavily, but the sheer concept is so beautiful that there's an entire ecosystem of contributors on that project. So, only time will tell.
> In fact, the whole MS platform eco system isn't suitable for open
> source tools to become very effective.
I'd have to agree with you - but that's something I'd like to change. In fact, there are teams in Redmond that are working on core components that are also realizing the value behind opening up the source in some cases - the AJAX control toolkit being a great example - http://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=AtlasControlToolkit
> Instead of working WITH that code, MS releases a half-baked beta of
> a never-going-to-be-released toolkit called Sandcastle.
I hope you're only exaggearating. Just to set the record straight - Sandcastle will be released.
ai
anand iyer on June 27, 2007 09:50 AM+1 for Paint.net.
Brad on June 27, 2007 10:02 AMSubSonic indeed.
kevin on June 27, 2007 10:05 AM@ anand:
"I'm not too sure about that. There are plenty of companies out there (classic example, startups) that would go with the open (and often free) route to getting their offering off the ground. Also, OSS developers don't develop their product with a particular business model or idea in mind, IMO."
The main problem is, what's also described by a person earlier in the comments: devoting time to an OSS project is effectively eating away time to do commercial work. if you have to pay some bills, you better have some other sources of money, otherwise you can't work on OSS software, at least not with a lot of time.
So what happens? In java land for example, companies pay large groups of developers money to work on tools for java which are open sourced. The companies then sell services on top of these tools/libraries/servers. So to be able to do so, they provide their own platform for their business model by providing the open source stuff they release.
In .NET land, an ISV who wants to use this model runs into a big wall, which I've described also here in a blogpost I made in last december:
http://weblogs.asp.net/fbouma/archive/2006/12/11/the-reason-why-oss-isn-t-big-in-ms-net-land-money.aspx
and which is that on average, the .NET targeting developer thinks along these lines:
1) the time I put into something has to be payed
and
2) if I need something from a 3rd party, I look for a commercial offering, or use MS' tools (first choice)
Maybe some OSS developers start their project just to get started. However as soon as something begins to become successful, you have to provide support, fix bugs, add new features etc. etc. 10 to 1 the vast majority here has never contributed a single line of code to any open source software project and only uses the open source products because they're ..... free (as in beer). When you have to spend time on supporting your OSS project as no-one else does (and believe me, even if a lot of people use your stuff, just a tiny little fraction actually provides patches and new features), you'll have to make a choice:
1) drop it
2) go full scale for it and get some money via other routes
Now, you might argue: this action from Jeff and others can help with 2), but that's not true: there are more than just a couple of projects out there which have some followers and support can become rather intense pretty quickly.
Furthermore, make no mistake: Mono and for example NHibernate are projects owned by a big company (Mono by Novell, NHibernate by JBoss which is owned by Red Hat): you want to donate money to these big corporations? Why? Invest it in tiny projects like NDoc, and even then... it's better to provide a better eco system where Microsoft doesn't step on initiative from the community and simply supports OSS tools out there which are used by more than a few people (like nunit, nant etc.) instead of rolling their own copied incompatible version.
However no sign on the horizon from redmond that you will do that. On the contrary.
"I'd have to agree with you - but that's something I'd like to change. "
I appreciate the initiative, but unless MS changes its own business model (from ISV to service provider) you'll likely meet a lot of closed doors, simply because what MS doesn't control is a liability: vs.net is a commercial product, relying on a 3rd party app is making things vulnerable inside itself, so MS has to roll its own.
You come with an example where MS provides the source. Great example. The thing is though: that's NOT what should be changed. MS should work _together_ with open source projects started by others, outside MS, and make sure these project don't hit a wall because MS thinks they have to do their own copied version of the same project. Until that changes, there's no OSS eco system on MS platforms simply because there's no start with the change of mentallity with the average developer using .net dev tools: they then still will see MS' only tools and if MS doesn't have it, they'll still look for commercial offerings. It's what MS calls the '3rd party oppertunity' which is still there but the particular 3rd party is in most developer's minds a commercial ISV.
"Just to set the record straight - Sandcastle will be released."
No offence, but how long is Sandcastle still in pre-beta stage? How long till some toolkit is released which benefits every single developer out there? It's not that the commercial offerings don't work, it's just that IF you want an eco system for OSS tools, you should support a community OSS offering which was already there: NDoc, not release something of your own. Because by doing that, you will effectively KILL precisely what you want to build up: why would new developers try to re-animate ndoc if MS comes with sandcastle? The answer to that question should be the direction into which MS should look. :)
log4net, Mono, Lucene.NET
Derek on June 27, 2007 10:24 AMThe open source tools I would like to see on the list of receiving donations: NUnit, Rhino.Mocks and Ahnksvn. I'd really like to see that GhostDoc (http://www.roland-weigelt.de/ghostdoc/) also gets a piece of the cake, even though it is not open source (but still free, as in "free beer").
.NetKicks on June 27, 2007 10:27 AMIsn't building free software on top of a closed platform an awkward solution ? I guess it's an important factor that cannot be overcome by simply throwing money in the game. Who wants to build software on top of a platform whose producer can change the rules whenever they like (and have an history of doing so) ? It's nice to see that they're getting somewhat involved into some open source but I fear their only motivation is to gain traction behind their platform and thus entire Windows product line. Unless they change their politics, I fear they'll only have a marginal support from the community.
Maybe I'm wrong but most FOSS coder I know are educated, know the dark Microsoft history and won't get tricked that easily.
Cheers,
zimbatm
Obviously Mono should be the #1 contender. Aside from the fact that the team has done a tremendous job in porting the framework, there is the added bonus in that Microsoft officially giving money to support the Open Source port of it's framework might put Microsoft in an interesting position should Microsoft ever decide to weld it's "you've violated our patents" sword against the Mono project.
Won't Silverlight kill Mono?
(I know it's not a full implementation, but it's pretty stout).
Won't Linq kill Subsonic?
Personally I wouldn't prefer to donate to something that I will continue to use.
I vote for Subversion.
Comments?
Maybe we could throw a bit of money at SourceSafe in an attempt to make it even close to par with Subversion?
(And yes, that's +1 vote for Subversion ::: http://subversion.tigris.org/)
MbUnit, too, while we are at it.
gemils on June 27, 2007 10:51 AMnasty,
Just to point out, JBoss is employing a single NHibernate developer, the rest of NHibernate contributers are not employed by JBoss.
Castle, NHibernate, SVN, NUnit/MBUnit
Dru on June 27, 2007 11:26 AMDonate it to Jamie's TDD.NET legal defense fund
John S. on June 27, 2007 11:30 AM> I vote for Subversion.
Subversion is not written in .NET and therefore is ineligible. Sorry if I wasn't clear about this.
Jeff Atwood on June 27, 2007 11:35 AMOren, I wasn't trying to offend you, if I did, sorry for that. My point was that if the NHibernate projects needs money, the project owning company (Red Hat) should provide that money. It's not for nothing that they employ the main developer (which IMHO is a way to support the project with money and to guarantee there's always at least one developer full time on the project, precisely what this initiative tries to accomplish for other projects. It's now up to the mind change inside the heads of all these Morts out there ;))
Frans Bouma on June 27, 2007 11:36 AMSubSonic without question.
Dominick on June 27, 2007 11:44 AMNDoc because after nearly a year of Sandcastle CTPs it seems MS won't be able to come up with a decent documentation product.
joe on June 27, 2007 11:50 AMFrans,
No offense was implied or taken :-)
> Open source doesn't need money to become solid, it needs attention.
And nothing gets people's attention like money! ;)
This isn't the only grassroot effort going on to support OSS on .NET. http://haacked.com/archive/2007/06/27/christmas-for-.net-open-source-came-early-this-year.aspx
I really think we can extend the incubator idea Rob had to existing projects and also form some sort of organization to provide OSS mentoring. I'd be happy to teach the hard lessons I've learned, as well as learn from those who've run projects even more successful than mine.
Haacked on June 27, 2007 12:02 PMPaint.NET or NUnit would be my nominations.
Chris Howell on June 27, 2007 12:05 PMCommerce starter kit csk
Isaac on June 27, 2007 12:06 PMSubSonic
adminjew on June 27, 2007 12:23 PMHow about telling us about the details?
What is the purpose of the money exactly? Paying programming hours? Giving a Thank You notice.. here's some money? Paying for some expenses? I mean how long will the money have an effect on the development in terms of incentives. I mean $500 won;t keep some developers cranking code forever.
I have seen some suggestions for projects that are well established. I would rather see more money devoted for young good projects which need more support to stand on their feet.
Abdu on June 27, 2007 12:25 PM@Ayende and @Frans
Frans is right about that project owned by a company are stablished now and dont need the money or that must be provided by theirs companies.
ie MONO will dont go slower or faster if they get 2500 more bucks, I think that Jeff want to help comunity driven projects that are "OWNED" by the community.
BTW, some comments suggest soft that is not open source like TDD.NET or Lutz Roeder is clear for the article that them dont qualify
Cheers
Marcos on June 27, 2007 12:36 PMI think Bill Gates made $10,000 in the time it look for this webpage to load.
I think we should consider smaller projects where this could help, not large projects that already have money via corporate sponsorship (like mono) or commercial support (like dotnetnuke I assume).
Actually I think a better idea is to give the money to specific tasks like google summer of code. Just donate the money to the SoC project even. Or propose .NET coding projects on rentacoder.com. You could get a whole new .NET-based operating system developed there for about tree-fitty, I believe.
Amen gemils!
SourceSafe is such a burden.
Subversion++ (I know it's not .Net. Give me some money an I'll port it to .NET ) ;)
cv on June 27, 2007 12:49 PMSharpDevelop
NProf / NProfiler / Prof-It for C#
DotGNU / Mono
Diva (a very nice open source video editor)
I too am a long-time user of SharpDevelop. One of the big (and very needed) tools I've relied on has been nProf. Sadly, development on the 3 major open-source performance profilers seems slow at best (nProf, NProfiler, and Prof-It for C#). An infusion of funds could possibly really help.
HanClinto on June 27, 2007 01:04 PMhttp://www.dotnetblogengine.net/
Phenomenal new blogging engine. I prefer it to dasBlog, Community Server, and subText already, and it has only had 3 revisions. (And no I am not affiliated.)
PWills on June 27, 2007 01:08 PMI vote http://www.stencyl.com/about/
opensource platform game builder
Dave K. on June 27, 2007 01:09 PMCastle Project
Robert Mircea on June 27, 2007 01:11 PM"I really think we can extend the incubator idea Rob had to existing projects and also form some sort of organization to provide OSS mentoring. I'd be happy to teach the hard lessons I've learned, as well as learn from those who've run projects even more successful than mine."
So, Phil, in other words, a foundation of some sort should be founded, which receives donations and acts as a form of VC for OSS projects? (so OSS developers can get funding from that foundation to develop the projects) ?
Sounds interesting :)
Frans Bouma on June 27, 2007 01:11 PM@Abdu,
> How about telling us about the details?
That is a phenomenal question. We're still trying to crank out the details (atleast I am, I'm sure Jeff has been thinking about this for a lot longer than I have). But I'm glad we're having this discussion - it gives us a lot to think about.
Thanks!
ai
anand iyer on June 27, 2007 01:19 PMSharpLudus:
http://www.cin.ufpe.br/~sharpludus
It is a software factory for game development. Support would be great for us to create an upcoming XNA-enabled version of the factory (what the site shows is a prototype of a Managed DirectX version). Activities include the creation of game engines, domain-specific designers and code generators to be used by game programmers.
Regards,
-- AFurtado
[andrewilsonfurtado [at] yahoo.com.br]
What about sponsoring a competion? Like the XPrize, but you can call it the NPrize.
Basically come up with a set of requirements for an open source project that would be nice to have (it could certainly be one that already exists), provide a deadline, and then, if there are multiple projects that have been nominated, your readers can vote for their favorite. It should be a winner take all competition.
It can be an annual competion. I'm sure some of your readers would be willing to contribute money for the prize. A competition might raise awareness as well as encourage the creation or improvement of a useful application.
Definitely I would pick ZedGraph.
Matt Cuba on June 27, 2007 01:57 PM+1 MbUnit
+1 RhinoMocks
+1 SharpDevelop
+1 PDFSharp (http://www.pdfsharp.com/PDFsharp/) more intuitiv then itextsharp ;)
+1 Paint.NET
+1 Ajax.NET Pro
My two votes:
iTextSharp = Hey, I've had to go through and develop some weird things now and then -- but nothing was as scary as being told I had to develop a C# program that created/edited PDFs in the period of a few weeks. Without iTextSharp I think I would have had a nervous breakdown.
Paint.NET = It's just plain nice, works well, and saves me the money of having to buy something that is getting perpetually bloated (Paint Shop Pro) or something really expensive (PhotoShop) -- when all I ever really need is contained in this fantastically free application.
N on June 27, 2007 02:05 PMI'm working to get a fledgling open-source .NET project, Titan, off the ground. Can I vote for myself in the "up and coming" area? :)
My nominations for established projects:
1. NUnit
2. NHibernate
3. Castle Project (MonoRail specifically)
I also nominate Ayende for a some sort of contribution, if for nothing else the sheer volume of his work. Why is he not an MVP yet?
Nate Kohari on June 27, 2007 02:34 PMThe future is geospatial:
+1 SharpMap
+1 Proj.NET
+1 NetTopologySuite
+1 MsSqlSpatial
+1 NHibernate.Spatial
+1 LinqToGeo
Paint.NET all the way!
usedHONDA on June 27, 2007 02:42 PMLike Doc Holliday said, "In Vino Veritas..."
That said, I am impressed w/ the nature of this 'open' discussion of open source, the length & breadth and all occurring today. Thusly, I would advocate allocation to any worthwhile OSS blogging activity.
My only other encounter w/ OSS is CommerceStarterKit and Subsonic, and definitely my vote goes there.
Keep blogging your viewpoints & I will continue to learn.
Just thought that I would comment - advertising for the Axosoft product was actually reasonably good placement... specially as I am looking at Mercury 'Quality' Center crash for the 2nd time at 7:54am. Grrr...
Adrian. on June 27, 2007 02:55 PMQuote:
"Many highly popular open source projects have contributed so much to the .NET community, and they've gotten virtually no support at all from Microsoft in return. I'd like to see that change. In fact, I'll go even further-- I think it must change if Microsoft wants to survive as a vendor of development tools."
I agree; but I think someone should explain to them that suing MVPs isn't a good start to "giving back" to developers. *Referencing the Visual Studio Express fiasco over plugins, for the people out there who missed it* Just my $0.02.
That being said, I bought a student copy of Expression Studio last week. The VS team creates great tools, (I suspect they're all geeks, VS has a very geeky underpinning with a lot of polish on top) but with Management suing developers (MVPs nonetheless)... well, there's a reason I also bought a copy of Flex Builder 2 at the same time. Eclipse is great, but Macromedia/Adobe are just as bad as Microsoft.
scottl on June 27, 2007 02:59 PM@Brian,
> What about sponsoring a competion? Like the XPrize, but you can
> call it the NPrize.
That is a brilliant suggestion (in fact, it was one of the ideas I had ;)
thanks!
anand iyer on June 27, 2007 03:01 PMThere's always lolcode.net.
I kid. And I wrote most of it. ;)
Nick Johnson on June 27, 2007 03:06 PMMaybe, instead, you'ld be better off funding a programme to educate developers in how open source will destroy microsoft, .net, the free world, and their hope of having a career. And make sure you stay away from the evil horrors of the GPL which is the ultimate enemy of all software development - according to the guy in charge of the company that created .NET in the first place. ;)
I have not read all the replies, but I believe that when you "open source" code, you do it for one of two reasons. Either its your pet project and you want to share it with the world, or the project has become so big you need other developers to help expand and maintain the code, BUT you still make money from installing, customizing and supporting the product. (Sun <> OpenOffice)
I firmly believe the problem lies in .Net as a platform. As a Delphi programmer with the option do .Net or Not, I have again and again decided to stay with Win32 and not .NET. Why? Faster and Smaller Code. I still have to see one reason to change to .Net .Net is bloted, as is all MS products. And as I see it, MS wants to control everything they touch and eventually makes money from it. Maybe a good business policy, but why must I use code from company that may start charging for .Net, etc, while there are faster alternatives availeble?
Cornie on June 27, 2007 03:19 PM1. NUnit
2. MbUnit
3. Castle
4. RhinoMocks
I presume this is money to make the project better, right? Not a compensation or reward. If so, yes, Castle Project would definitely benefit from it.
hammett on June 27, 2007 03:40 PMmy votes for stablished projects:
+1 NAnt
+1 SharpDevelop
+1 Sandcastle Help File Builder ( http://www.codeplex.com/SHFB )
for the up and coming projects :
+1 FileHelpers - http://www.filehelpers.com
+1 Mygeneration - http://sourceforge.net/projects/mygeneration
+1 XP Common Controls - http://www.codeplex.com/xpcc
+1 "Ascend.Net" Windows Forms Controls - http://www.codeplex.com/ASCENDNET
Cheers
Marcos on June 27, 2007 04:02 PMThis has been great just to manifest some OSS projects I wasn't aware of, but definately want to check out. Thanks for just that!
rjd on June 27, 2007 04:22 PM@Martin
Won't Mono fundamentally be killed by Silverlight and Subsonic by Linq.
To me, there will always be a need for SubSonic, Mono, Paint.Net, etc. OSS software is very good at finding holes introduced in every MS release and filling those holes.
So that is my 2 cents. :-)
JimShelly on June 27, 2007 04:36 PM@Frans - I think this is another area where you and I will disagree. Open Source projects need financial support if they ever hope to grow past a certain point. Most projects can limp by for a long time on sheer volunteer effort, but at some point in their evolution they reach a size that just cannot be managed on a purely volunteer basis. They require some sort of financial support to be able to pay for the services they need to keep running. That may mean increased bandwidth or increased server capacity, even monetary support to pay for legal fees, or maybe it is just a few extra bucks for the developers to be able to reward their wives for putting up with all the crazy hours that they do.
Having worked for several years in the Java world I am very familiar with the OS model there. Even in the Java camp, the most successful projects recieve some sort of support. Sure NHibernate may only have one full time staff member, but I would be willing to bet that if they needed another server tomorrow to host their website, they probably wouldn't have a problem getting it. If they wanted to get trademark protection for their brand, the funds would be available for the legal fees.
Java did not spring from the ground with a full Open Source community ready to write code. It evolved because of some early projects which became successful and paved the way for other projects. You had people like Marc Fluery who did a ton to promote Java Open Source and fought tooth and nail with Sun in order to get Sun to certify the JBOSS Application Server. IBM spent hundreds of thousands if not millions building and promoting Eclipse, even while fighting Sun over the SWT. The Open Source community did not thrive on Java because of Sun but in spite of Sun. It even took a long time for Sun to open up to the Java Community Process.
Given the history of Open Source in the Java world, why would we think Open Source on the Microsoft world would be any easier, or would not require financial support, when clearly it required tremendous financial support in the Java world.
$2500 is probably not going to make a tremendous difference today. But it might be just enough to keep the lights on for a project a couple more months. It might be enough to give the project a little more breathing room until they can finalize a proposal to land a services contract. It might mean that a developer can afford to incentivize a tech-writer to create some good documentation. When you are on an open source project, every little bit helps. Even for a project the size of DotNetNuke.
Joe Brinkman on June 27, 2007 05:11 PMSome very interesting open source projects out there. Thanks for a list. A few I had not heard of yet!
Projects I use...
+1 iBatis.net (More people need to check this out... It ROCKS!)
+1 log4net
+1 MyGeneration
+1 WiX
CruiseControl.Net
+1 Castle
macournoyer on June 27, 2007 05:48 PMDefinitely the Castle Project and NHibernate
Aaron Jensen on June 27, 2007 05:57 PMside note - I'd suggest using wufoo.com to gather the results. maybe for the final round after you break down the most popular projects?
They offer an easy and free form tool for stuff just like this.
It would help you from wading through the comments to tally the votes, but then again comments are good for a discussion...so yea.
How about if some money goes towards training for .NET Programmers who have shown up on WorseThanFailure?
Mike Minutillo on June 27, 2007 06:31 PMMoney is always nice, but I personally find the biggest obstacle to contributing to projects is getting up to speed quickly with individual projects. Good documentation helps and screencasts with downloadable sample starter projects work the best. Some great samples are on the ASP.NET videos.
http://www.asp.net/learn/videos/default.aspx?tabid=63
Another example that does a great job is dnrTV.com. I think the biggest impact would be more screencasts but they need to be done well. Perhaps we could assemble a set of guidelines for what would help in producing a screencast for an OSS project.
I have used Wink, which is a free OSS project as well but the editor could use a bit more work. I am not sure if it is a .NET project at all, but if it was updated to use WPF it could fill a dual purpose. Otherwise the makers of Camtasia and BB Flash could donate licenses to OSS projects or MS could cover the cost of the licenses. And if we could identify someone who does a great job of producing videos for multiple projects they could use the funds to assemble the hardware they need to produce quality videos as well as hosting the videos.
Any of Roy Osheroves Regex library which has gone OSS recently. Regulazy and The Regulator
Mike Minutillo on June 27, 2007 07:21 PMIf we are looking at shear usefulness, I would have to say that the only OSS .NET package I actually use is Paint.NET. It is extremely powerful and well worth your consideration.
In simple terms, my nomination is Paint.NET. Done.
Brad Wolff on June 27, 2007 07:27 PMI vote for Video Postbox! Not on Sourceforge yet but I know the developer is thinking about opening it up!
Lamity on June 27, 2007 07:38 PMNxBRE, a .NET rules engine ( http://sf.net/projects/nxbre )
Daniel on June 27, 2007 07:40 PMGive 10k to Castle
It's at least 3 products : Windsor, ActiveRecord, Monorail
Steve on June 27, 2007 09:20 PMhmmm, has anyone mentioned NDoc?
Scott on June 27, 2007 09:58 PMI am thinking in a different way.
I would go for " SUBSONIC ", with IronRuby support.
This would give us best of both the worlds. Ruby as well as dotNET.
Dont you think, IronRuby is one type of Open Source Project, officially paid for development to JohnLam.
Since they could licence Ruby.Net and take it further with a new name as IronRuby, then they could too support SubSonic and take it more further.
Cheers.
SoftMind on June 27, 2007 10:10 PMJeff, i like your text based ad at the end of your blog. it is not in your face. However, i wonder how effective it is for the advertiser since it is very easy to overlook it.
Jack on June 27, 2007 10:17 PMMS not supporting open source surprises you ?!
Come on! Please respect your readers and loose the ads! Please.
> I'd suggest using wufoo.com to gather the results.
Great idea; I'll let comments percolate here for 1 or 2 more days, then put it up for vote. I also need to, y'know, collect the money..
Jeff Atwood on June 27, 2007 10:59 PMCommerce Starter Kit
Subsonic
NVelocity (part of Castle now I think)
Watin
Here's a vote for an up and coming open source project :
NGenerics (http://www.codeplex.com/NGenerics).
For established projects :
- CC.NET
- NUnit
- NAnt
- TypeMock
- Paint.NET
I nominate the Commerce Starter Kit (CSK) - http://www.commercestarterkit.org - it's a well thought out, well constructed, versatile and generally excellent platform for commercial endeavours. It's one of the few pieces of open source software I know of that can help generate income rather than simply supporting the development process itself.
laurence timms on June 28, 2007 01:12 AMI vote for Paint.NET which is just sweet, and if I can make a self-nomination, for ScrewTurn Wiki (http://www.screwturn.eu).
Dario Solera on June 28, 2007 01:37 AM>Three donations of $2,500 for the most worthy established .NET open source projects.
* Castle
* NUnit/MBUnit
* Mono
Five donations of $500 for new, up and coming .NET open source projects.
* StrucutureMap
* Boo
* NSpec
* Rhino Mocks
* Screwturn Wiki
Ian Cooper on June 28, 2007 03:46 AM
laurence timms brings up a VERY good point. While the nature of this list is very developer-centric (not sure if that is a function of the readership or the nature of most open source projects), the CSK is focused on MAKING MONEY for you, and as a developer, your clients. While all of these tools are indeed very nice, and they help me, I don't see them as fulfilling the same promise as the CSK does.
But I'm partial :)
Chris on June 28, 2007 03:58 AMmy votes:
- mono
- log2net
- nunit
SQLite.net is an excellent open source ado.net provider for SQLite (which is an open source embedded database)
Gio on June 28, 2007 05:15 AMScrewTurn Wiki
Djuffin on June 28, 2007 05:42 AMScrewturn Wiki - solid, simple to use and simple to extend
Mike Mestemaker on June 28, 2007 05:58 AMPaint.NET
Julien Marchand on June 28, 2007 06:41 AMMy vote for MbUnit & Rhino.Mocks.
Vadim on June 28, 2007 06:48 AM+1 for Castle Project
Adam McCrory on June 28, 2007 07:02 AMJeff,
I think you should start a website with a database-driven list of open-source .NET projects that has a wiki-like UI so anyone can contribute, complete with forums and links to projects on google code, codeplex, and so on. And you should apply to get some of that donation money to fund it. A bunch of loose comments on your blog won't cut it.
Cheers,
Peter
Subsonic. Supersonic DAL :)
Maciej on June 28, 2007 08:07 AMSubsonic.
Maciej on June 28, 2007 08:08 AMMono and Moonlight
Gordon on June 28, 2007 08:18 AMa) Argotic Syndication Framework
b) Sandcastle Help File Builder
c) BlogEngine.NET
d) Paint.NET
I nominate PietschSoft.VE (http://codeplex.com/pietschsoftve3), an open source ASP.NET Virtual Earth mapping server control. I know it can't compete with the likes of MbUnit or DasBlog, but one can hope.
Chris Pietschmann on June 28, 2007 08:55 AMI use (and vote for) Subsonic.
Alan Hunter on June 28, 2007 09:01 AMTeam MediaPortal are really started to get going, a cash injection would kick things along Very nicely.
http://www.team-mediaportal.com/
It's a .net (c#) open source HTPC application (like Microsoft's MCE) with some great developers on board and heaps of potential.
Get's my biased vote.
The ones that I wish I could use most in my current job are NHibernate and Castle. When I've used them before, they've really made a big difference.
I vote for CruiseControl.NET, if that's eligible.
And, nice idea :)
Dino on June 28, 2007 09:50 AMI think this is all interesting.
$2500
I don't want to say this - but do you think if they wanted to make money they could just sell their software?
ie. I don't see ReSharper going open source, and it's popular.
Perhaps a better way of funding these companies if for them to charge a small fee.
As far as Microsoft 'helping' them, there are better ways. Free MSDN license for a year, free VS.net, free Vista license.
But, the best way would probably be for them to openly support these projects and stop trying to assimulate all of them :)
ie. let's dump MSUnit and use NUnit. Let's support Monorail as an alternative to webforms. Both are good, but if MS openly would support them, it would help them more than a one time $2500 handout...
Steve on June 28, 2007 10:20 AMIf nothing else, this post is a great list of Open Source .NET projects.
Scott on June 28, 2007 10:30 AMSubsonic and the CSK!
Scott on June 28, 2007 11:19 AMI vote SUBSONIC ! Regards
Claudio Barca on June 28, 2007 11:20 AMI vote SUBSONIC ! Regards
Claudio Barca on June 28, 2007 11:21 AMI vote SUBSONIC ! Regards
Claudio Barca on June 28, 2007 11:22 AM"but do you think if they wanted to make money they could just sell their software?"
I think you are missing the point. The money is not paying for software, oss has many contributors and this is about recognising good projects and good ideas.
"As far as Microsoft 'helping' them, there are better ways. "
Again missing the point. This is all about diversity. MS already helps developers a lot.
fred on June 28, 2007 11:22 AMKeep some of the money, and don't give it all away. You will need it to pay for the lawyers when Microsoft sues you for helping them commit license violations by developing open source applications using the .Net framework.
Grant Johnson on June 28, 2007 11:29 AMI definitly vote for SubSonic. Best DAL ever!
Very innovative thinking, Jeff. Good work. I wish you a lot of success and I'll be following the progress.
Dave
My vote goes to NHibernate. Hibernate is useful, but I don't think I could live well without NHibernate.
Mike
Michael on June 28, 2007 12:52 PMVery interesting read ... I hadn't heard of almost any of these projects except for Paint.NET and NUnit. In particular, NGenerics looks very intriguing, and the license is compatible with Paint.NET's so I might find a way to use it.
I've tried to make a point of supporting the projects that help me out on Paint.NET. I've sent cash over to projects like famfamfam.com (EXCELLENT and FREE icon libraries) and Window Clippings by Kenny Kerr (http://weblogs.asp.net/kennykerr). Embarassingly I have not yet contributed to #ZipLib, which is an excellent library and is at the heart of the Paint.NET auto-updater. I was going to help out the TortoiseCVS guys with some 64-bit hardware because it didn't work on XP or Vista x64 at that time, but they managed to figure things out anyway (yes, I use CVS, and yes apparently according to Linus Torvalds that makes me "ugly and stupid" :)).
P.S. Thanks to everyone who's mentioned Paint.NET :)
-Rick (the Paint.NET guy)
Rick Brewster on June 28, 2007 01:05 PMWell, you're right that you can't easily block the ad.
But, that begs the question - is preventing the ad-blocking a smart thing to do? I rarely click on ads (as I block most), but I *certainly* won't click on ads that prevent me from blocking them.
Roddy on June 28, 2007 01:18 PMScrewTurn ( http://www.screwturn.eu )
Best wiki ever met for small to mid-size wikis.
Best regards,
Joannès
http://www.lokad.com
+1 for paint.net. Greatest program ever.
Frojo on June 28, 2007 01:53 PMnlog - http://www.nlog-project.org/
Jesse Foster on June 28, 2007 02:12 PMA late entry for new, up and coming:
A web-based IDE for distributed programming using IronPython
http://softwareindustrialization.com/AWebbasedIDEForDistributedProgrammingUsingIronPython.aspx
Mitch on June 28, 2007 02:12 PMAlso, it would be nice to get .netTiers out of codesmith. - http://www.nettiers.com/
Jesse Foster on June 28, 2007 02:14 PMAdd a vote for Paint.NET from me to the list if you'd be so good :)
Matt on June 28, 2007 02:50 PMI'd like to throw Paint.NET in the ring, as well. It seems to be quite well represented, but hey - it's good. Between the UI, the user developed plugin support, a vibrant forum...it's definitely revolutionary. Easy to use, moderately powerful. Paint.NET is fantastic.
=David on June 28, 2007 03:07 PMPaint.NET for the win :D I've been using this application for quite some time now, and i have achieved lots of nice works! (find them on my dA account!) It has a great UI, a very supportive community, and ofcourse, the ability to create and share plugins, which i use even more then the included effects.
Stephan on June 28, 2007 03:12 PMI nominate Robert Simpson's System.Data.SQLite which is an ADO.NET 2.0 provider for SQLite.
http://sqlite.phxsoftware.com/
t7 on June 28, 2007 03:20 PMDefinitely Paint.NET. The main author, Rick Brewster, has poured time and effort into this amazing program. When I started 6 months ago, I had zilch photo editing/creation experience. Thanks to the friendly community, using Paint.NET is now a daily joy of mine. :)
Rich S on June 28, 2007 03:22 PMI think Jeff should decide for the funds he's got.
I think the amounts are pretty low. Maybe people who have built real work on these products can consider making donations. Do your own sums but that could help those who pour in so many hours.
MbUnit
Revival of NDoc
NCover
Paint.NET
Reflector
come to mind immediately.
I don't have a list of how to donate but that might be a useful thing for somebody to do. Maybe a web site that gives the developers of this code a chance to show all the work they're doing for free, to help inspire us.
Mike Gale on June 28, 2007 03:42 PMPaint.NET is the best an app can be.
+1
+1 Paint.NET - Simple to use and easy to learn. I use it just about every day and it would have to be one of the most useful free pieces of software I have ever found.
Firefly on June 28, 2007 04:06 PMScrewturn
Larry on June 28, 2007 04:24 PMCruiseControl.NET
Mono
Paint.NET
MbUnit
+1 for filehelpers.
Marcos Meli is beyond legendary, and works on a product that will add a lot of value but is very hard to put a ticket price on. He's exactly the sort of guy i'd like to see getting supported.
+1 for revival of Ndoc.
-1 for paint.net. They're just trying to steal from Microsoft's existing MSPaint.exe market. When microsoft do that to us, it's evil. When we do it to them, it's noble. ;-). (Just kidding, i love paint.net)
+1 for smaller donations to more people.
lb on June 28, 2007 05:13 PMI'd nominate ScrewTurn Wiki (http://www.screwturn.eu/Wiki.ashx)
It's a wonderful project and there are VERY FEW wikis that work so well in IIS.
Syrinxx on June 28, 2007 05:49 PMAny support to .net open source would be be most welcome. Even if you're not at the top it's a chance to get some exposure. How about having a few top 10 lists with different categories and donating to the top one of each.
My vote, but I'm biased ;-)
SharpForge - http://sharpforge.org/
I really recommend like below
01. http://www.screwturn.eu/ (It is really awesome mid size .net wiki)
02. tp://www.commercestarterkit.org (with value)
The Castle Project
Namely Castle, Active Record and Mono Rail. They bring method and good sense to development madness.
It's gotten be SubSonic. I use it everyday and it makes DAL a breeze.
Geri Langlois on June 28, 2007 08:02 PMI nominate TagLib-Sharp (www.taglib-sharp.com) which is written entirely in .NET 2.0 and continues to improve on a daily basis. From what I've seen, it's being maintained by one individual (with random help from others) who is currently attending college (definitely the type of person that could use the donations).
John Rennemeyer on June 28, 2007 08:34 PMI first nominate screwturn wiki. http://www.screwturn.eu .
It's really simple and stands under the GPL.
My second vote goes for SubSonic which is a really awesome project.
I found many people nominating NUnit or MBUnit but no one talked about NCover which is a very valuable piece of software ( http://ncover.org/site/ ). The only thing is I don't know if it's still opensource because I can't find where to get the source code, the website doesn't say anything about it (or I didn't find it).
Etienne PIERRE on June 29, 2007 01:32 AMPlus one for System.Data.SQLite, the ADO.NET 2.0 provider for SQLite.
http://sqlite.phxsoftware.com/
Quite important as SQLite is being used everywhere these days.
JSD on June 29, 2007 02:36 AM@Etienne PIERRE:
Sadly, it seems NCover is indeed no longer open source:
http://ncover.org/SITE/forums/thread/1111.aspx
Too bad!
Jeroen
Jeroen on June 29, 2007 06:45 AMHmmm... Open Source... Here goes...
Infralution Licensing System (http://www.infralution.com/)
It's not free, but you get the source. Hence, it's open source.
It's a great component and well worth the small amount it costs.
NetSyndicate
Again, not free, but it's about the only thing out there in .NET that I've seen that allows podcasting easily in DotNetNuke.
DotNetNuke... Just a no brainer there.
While I like Paint.NET, it's not a replacement for Photoshop... Certainly worth consideration though... Not a nomination, but perhaps a small cheer for it...
I'm not too keen on nominating developer tools (yes - I'm all for ILS - but it's just so good). While there are some very good ones available, for .NET OS to have some kind of meaning outside of the .NET community, it needs to have some broader appeal. Things like DNN and Paint.NET are perfect examples.
Cheers
Ryan Smyth on June 29, 2007 08:39 AMThis is an incredibly valuable discussion - not just from the excellent list of .NET OSS projects but also for the varied viewpoints (concerns about Microsoft's OSS stance, value of x-plat .NET in Mono).
My team is sponsoring OSCON this year - if anyone is interested in getting together for an informal "birds of a feather" discussion there to flesh out what a full-featured Open Source Community program from Microsoft should look like, let me know (send email to sramji@microsoft.com) and we'll organize one.
And to all of you who put your blood, sweat, and code into Open Source projects on Microsoft technologies - thank you on behalf of my team and the whole company.
Sam Ramji
Director, Open Source Software Lab
Microsoft Corporation
My vote goes to SubSonic, great tool
ReTox on June 29, 2007 09:35 AMHere's a list of some of the most popular open source projects in C#
http://www.koders.com/csharpreport.aspx
Haacked on June 29, 2007 01:39 PMThe Castle Project and NHibernate.
Pierre Henri Kuaté on June 29, 2007 01:40 PMI should qualify my last comment. I meant to say, "Most Popular according to Koders.com search frequency." However, not every project is in the index.
Haacked on June 29, 2007 01:40 PMWe can probably safely leave it to the advertisers or their representatives to spend money where they think it will be effective, ad blocking or not. The idea of a disinterested third party handling placement is excellent.
If the FePy project (Microsoft's IronPython on Mono with many of the Python standard libraries) is looking for contributions you might feel that helping them would be assisting "the Microsoft Ecosystem".
Good luck with the transition to advertising! I'm a feeble AdSense user myself, for now ...
Steve Holden on June 29, 2007 04:19 PM>> While Reflector is great, it's not open source.
Yeah, until you use Reflector on it. ;)
-B
"In order to understand recursion, one must first understand recursion." -Unknown
Ok, one more for SubSonic, NUnit, AnhkSVN, TortoiseSVN.
I'm on the fence about MS supporting SharpDevelop. It's a direct competitor, with some differences in tools, to VS. MS give money to them? Not so much...
@Frans: Think about where RedHat would be if they didn't throw money at Linux. IBM even has done it. Why can't Microsoft do it too? It only makes sense if you want to increase exposure of a technology, then support it. These people who create and work on these projects have mouths to feed, possibly more than their own. (Don't start on the "get a job" stuff, most of these guys do have jobs. Consider cost of living these days.)
It kind of also equates to the music industry. The record companies should top taking from the musicians if you aren't going to pay them.
Now push the musician aside and insert a programmer. Next, shove the music aside and insert an open source project. Now, swap the recording industry with a major corporation, Microsoft included but not exclusive. What kind of picture do you see? Players and substance are different, but the problem remains.
Big players are using small players so they can get what they want for free. Why not return some of that back to the smaller players?
Where do some of these projects get webspace and advertising from? The cost of that alone would kill a project quickly. Sure, there are cheap hosting services, but as features are added on the cost goes up. I wouldn't want to continually dole out money from my pocket alone to pay for these things. And spending the time out pushing the project instead of coding it, or figuring out how to come up with a decent marketing plan to pos