3 ms·
When you pay serious money for your development tools, you tend to not give stuff away for free. And this is what Berin's article is all about: culture. The cul
by lr 16y ago
When you pay serious money for your development tools, you tend to not give stuff away for free. And this is what Berin's article is all about: culture. The culture of free vs. pay. I did AMX (the automation company, not the credit company) development, and there was pretty much zero open source solutions out there, because the culture was, "We charge for writing code."
- rbanffy 16y agoEvery piece of software you keep for yourself (or your company) has cost of maintenance attached. If it's not critical to your business and is not a competitive advantage - and the cost of keeping it is eclipsed by the usefulness of being the only one to have it - you should open it and let the world share the benefit of using and the burden of improving it.
- Aaronontheweb 16y agoThe author is speaking to a mix of both which exists in the .NET community. Many of the really good IDE plugins like ReSharper, VisualSVN, and TestDriven.NET all cost $$$. On the flip-side are a number of robust open source .NET components that are free like NUnit, SubSonic, NHibernate, RestSharp, and others. The most impressive is probably the Mono project, which attempts to port the entire CLR stack to POSIX platforms. IronRuby and IronPython are also impressive.
- bad_user 16y agoI've been watching and experimenting with Mono for a while ... Mono is not .NET ... it's a beast of its own, with its own ecosystem and culture. Unfortunately it's missing a web stack; ASP.NET sucks on top of Mono.
- Aaronontheweb 16y agoCare to elaborate?
- StrawberryFrog 16y agoYOu can run Asp.net MVC on Mono. What's sucky about that?
- bad_user 16y agoThe stack is too heavy for Mono, which currently lacks a generational garbage collector ... which wouldn't be such a problem if libraries would be designed with Mono in mind (libraries designed for Mono don't have problems). So yeah, you can run ASP.NET MVC on top of Mono, but it will leak memory, the server requiring periodic restarts. When people say "you can run ASP.NET on top of Mono" they never have an example of a visible website / web service that does that. Also, doing asynchronous I/O on top of Mono using the model available in System.Net.Sockets is flawed on Linux, because that paradigm is based on true async sockets available on Windows ... but on Linux it's emulated with ThreadPools. A good and scalable server for Mono would be one using async paradigms available on Linux (like bindings to libevent or other libraries, like something that calls vmsplice/splice to send/receive data). It would also have to be throughly optimized/profiled such that it relies as much as possible on stack allocations and to be careful about heap-allocation patterns, such that it doesn't leak through memory fragmentation. Also on speed ... using ASP.NET MVC you can currently handle 500 requests/second for a simple "hello world". This is simply unacceptable ... using Java you can easily reach 3000 r/s, and this by using a regular servlet-compliant synchronous server (by using stuff built on top of NIO, you can reach 15000 r/s). It is unacceptable because ... what's the point in using a compiled language with a smaller community, other than getting raw performance out of it? Again, this could be solved with libraries designed for Mono. But unfortunately not too many people are interested in Mono as a web development platform.
- sprout 16y agos/writing/distributing/ There's nothing wrong with charging for writing code. It's when you charge people to use your code (that they will need to make modifications to to get it to work) that it becomes detrimental to the community. On the other hand, it's less of an issue if you're charging people for something that works out of the box. That said, in my experience just about nothing works out of the box.