MONO (.net on Linux) and 3rd party component vendors
-
Shog9 wrote:
Does this really matter for those of us still churning out boring old HTML?
Well, technically, if you are only turning out old HTML, you probably do not need .NET anyway :)
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
Kinda helps though, if the code generating the HTML is written in a .NET language. ;) But yeah, as far as "need" goes, i'm not exactly waiting on anything.
-
Nemanja Trifunovic wrote:
..and of course the "real" .NET is at version 3 and rushing towards 3.5 or whatever it is going to be called at Orcas.
Umm, is ANYONE using ANYTHING that requires ANY version of .NET? As a consumer, I've come across NOTHING that even remotely requires it. As an application developer the domain I work in (hardware) does not require it. Seriously, not very many people are going to rush to upgrade their existing hardware just because Vista is out. Logically, this implies vendors doing any .NET programming are going to stick with the lowest common denominator when it comes to .NET. I'm pretty sure it's not going to be a version that only runs on Vista.
-Sean ---- Shag a Lizard
Sean Cundiff wrote:
I'm pretty sure it's not going to be a version that only runs on Vista.
Not really, the .NET framework (3.0) is not for just "Vista", it will run on other versions of Windows. Additionally, Windows Vista will typically work fine on machines purchased in the last five years or so. I have it running on an old P4 1.7 ghz system with 512 megs of RAM. Does not take a $2,000 to run Vista. Sure, the old system my wife is using does not allow Aero to work, but there is much more to Vista than just a fancier GUI. Vista Glass interface does not appear that great of difference from their basic system and is good enough for most corporate users. At the first part of next year, most machines you purchase will have Vista on them in some form. Once the corportate world fully tests Vista and finds all its enhancements and how much it will save them in administration costs, many will move to Vista in a big way. I also think people forget about the added cost of moving to Linux. If you are not an expert with Linux, you can open yourself up to all kinds of security problems putting server live. For the businesses that have people wearing multiple hats (have to handle multiple roles in the business), it can be much safer to use Vista (or Win 2003) as default security nowadays is much better than in the past. Linux is not designed for the novice.
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
-
We don't target average users, we target business users and there is a *lot* of buzz out there and some real world examples of business users jumping ship already. Be that as it may, I don't seriously believe that Linux will take huge market share away from Microsoft any time soon, but as a business person it makes sense to not ignore an increasing market and if my app can just be copied to linux and run then it makes even more sense. Sure it's leading edge but if people start to demand it in significant numbers I don't want to be caught by surprise. For the average user though, some day, when they go into a computer store and can buy a pc with Linux that runs all their apps for a few hundred dollars less than a comparable windows system it might be the tipping point. And believe me I'm no Linux advocat by any means, quite the contrary, it's not personal, it's just business.
John Cardinal wrote:
there is a *lot* of buzz out there and some real world examples of business users jumping ship already.
I believe most of those would have done so even without Vista coming out. Vista is the most business friendly version of Windows than has every been released. Anyone move from Windows to Linux clearly must "think" they will save money at the end of the day. If there was a free distro of Vista, I doubt Linux would ever survive.
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
-
I guess Microsoft will pull the plug of MONO.net as soon as it becomes too competitive. WinForms is not part of the standard and so are other parts of MONO, so it's only a matter of success before Microsoft sues them. With 'platform independence' Microsoft meant Win32 and Win64, not Linux ;)
I agree! Microsoft's deal with Novell was a big step in telling the world that they hold the patent on .NET and will use those patents as a weapon if required. At th moment though, I think Microsoft is enjoying the aspect of having .NET ported to other platforms without cost or liability to them. I am sure that the day Microsoft feels any loss of market share due to Mono or other .NET ports, they will make the SCO battle look like a traffic ticket.
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
-
From my dealings with Mono, I'm mostly impressed. If I had more time, I'd continue some work that I had started in contribution to their FxCop-like tool (called Gendarme - it's still not ready for release). My biggest single problem with Mono is the absence of what I'd consider a sane debugger (i.e. gdb support isn't fully cooked, and their custom built debugger isn't ready for prime-time either). In fact, as much as I love the Mono stuff, I wouldn't recommend production development to any shops that didn't have heavy duty, long-haul coders involved. There are some portability issues that arise, of course. You mentioned hard-coded directory separators, but the problems there are actually deeper: directory separator, path construction (including drive-letter stuff that's always Windows-only), newline character(s), case sensitivity in filesystem access, ... There are also issues with Mono straying from the defined ECMA .NET spec in certain areas. The only one I can think of right now is that new AppDomains contain all of the assemblies loaded in the creating AppDomain, when they're actually only supposed to have mscorlib.dll and System.dll (I think). Alas, my shop is moving towards J2EE for server-side stuff, so I most likely won't being seeing any .NET at work for awhile. .NET stuff seems to be relegated to simple internal web sites and thick-client apps here.
Yes I've discussed the practicalities of development with a guy at Novell and he stressed that the assemblies are compatible straight from Visual Studio and they fully expect most developers will be using Visual Studio as their primary development environment.
-
From my dealings with Mono, I'm mostly impressed. If I had more time, I'd continue some work that I had started in contribution to their FxCop-like tool (called Gendarme - it's still not ready for release). My biggest single problem with Mono is the absence of what I'd consider a sane debugger (i.e. gdb support isn't fully cooked, and their custom built debugger isn't ready for prime-time either). In fact, as much as I love the Mono stuff, I wouldn't recommend production development to any shops that didn't have heavy duty, long-haul coders involved. There are some portability issues that arise, of course. You mentioned hard-coded directory separators, but the problems there are actually deeper: directory separator, path construction (including drive-letter stuff that's always Windows-only), newline character(s), case sensitivity in filesystem access, ... There are also issues with Mono straying from the defined ECMA .NET spec in certain areas. The only one I can think of right now is that new AppDomains contain all of the assemblies loaded in the creating AppDomain, when they're actually only supposed to have mscorlib.dll and System.dll (I think). Alas, my shop is moving towards J2EE for server-side stuff, so I most likely won't being seeing any .NET at work for awhile. .NET stuff seems to be relegated to simple internal web sites and thick-client apps here.
Russell Morris wrote:
Alas, my shop is moving towards J2EE for server-side stuff,
I am curious, why J2EE?
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
-
John Cardinal wrote:
there is a *lot* of buzz out there and some real world examples of business users jumping ship already.
I believe most of those would have done so even without Vista coming out. Vista is the most business friendly version of Windows than has every been released. Anyone move from Windows to Linux clearly must "think" they will save money at the end of the day. If there was a free distro of Vista, I doubt Linux would ever survive.
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
Yeah of course it's all about money and when faced with the prospect of a major new os that requires more powerful hardware than they have it get's people thinking about alternatives. I like / hate Vista so far, I hate that it seems really fragile and explorer process crashes easily to the point you have to re-install it, I hate the way security is done in it which is basically to train people to ignore security warnings, but I do like that our main app runs faster than with winxp on the same box and that it's slicker looking. At the end of the day I just want to provide people with what they want already, not convince the world they should want XX. If people want to use Linux it's fine by me if I can easily ensure that my app will run on both Linux/windows/mac then even better.
-
Yeah of course it's all about money and when faced with the prospect of a major new os that requires more powerful hardware than they have it get's people thinking about alternatives. I like / hate Vista so far, I hate that it seems really fragile and explorer process crashes easily to the point you have to re-install it, I hate the way security is done in it which is basically to train people to ignore security warnings, but I do like that our main app runs faster than with winxp on the same box and that it's slicker looking. At the end of the day I just want to provide people with what they want already, not convince the world they should want XX. If people want to use Linux it's fine by me if I can easily ensure that my app will run on both Linux/windows/mac then even better.
John Cardinal wrote:
I like / hate Vista so far, I hate that it seems really fragile and explorer process crashes easily to the point you have to re-install it, I hate the way security is done in it which is basically to train people to ignore security warnings, but I do like that our main app runs faster than with winxp on the same box and that it's slicker looking.
Mine is not fragile at all. Have installed a lot of marginal stuff and still no corruption. Might be something about your specific system. Explorer process has yet to crash once on my system so far. I am sure one day it will, but so far so good! The surface security (UAC) is something to get use to, but the internal security seems pretty good! Of course, most of the UAC messages or warnings about running certain applications will not effect most business users since they occur most when installing software and as more Vista applications are built more messages will fade.
John Cardinal wrote:
At the end of the day I just want to provide people with what they want already, not convince the world they should want XX. If people want to use Linux it's fine by me if I can easily ensure that my app will run on both Linux/windows/mac then even better.
This is true, to everyone their own. Of course it depends on the market share on your target demographic more than anything.
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
-
John Cardinal wrote:
I like / hate Vista so far, I hate that it seems really fragile and explorer process crashes easily to the point you have to re-install it, I hate the way security is done in it which is basically to train people to ignore security warnings, but I do like that our main app runs faster than with winxp on the same box and that it's slicker looking.
Mine is not fragile at all. Have installed a lot of marginal stuff and still no corruption. Might be something about your specific system. Explorer process has yet to crash once on my system so far. I am sure one day it will, but so far so good! The surface security (UAC) is something to get use to, but the internal security seems pretty good! Of course, most of the UAC messages or warnings about running certain applications will not effect most business users since they occur most when installing software and as more Vista applications are built more messages will fade.
John Cardinal wrote:
At the end of the day I just want to provide people with what they want already, not convince the world they should want XX. If people want to use Linux it's fine by me if I can easily ensure that my app will run on both Linux/windows/mac then even better.
This is true, to everyone their own. Of course it depends on the market share on your target demographic more than anything.
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
I've found Vista to be quite fragile, it seems to revolve around programs that install applets in the control panel. In one case it was the FireBird server applet that caused Vista to crash the explorer process every time we opened the control panel. Kinda annoying and limiting. In another case it was something completely different but the same crash in explorer. That, to me, is fragile when you can't get into your control panel anymore, ever.
Rocky Moore wrote:
This is true, to everyone their own. Of course it depends on the market share on your target demographic more than anything.
Well, if with a small investment in time spent to ensure it works with MONO, I sell even a handful of licenses then it's worthwhile. Besides which there may be some marketing value in being able to support linux / Mac etc even for windows uers because they may think to themselves that some day they might want to jump ship.
-
Yes I've discussed the practicalities of development with a guy at Novell and he stressed that the assemblies are compatible straight from Visual Studio and they fully expect most developers will be using Visual Studio as their primary development environment.
John Cardinal wrote:
Yes I've discussed the practicalities of development with a guy at Novell and he stressed that the assemblies are compatible straight from Visual Studio and they fully expect most developers will be using Visual Studio as their primary development environment.
He's entirely correct - I myself did 90% of my debugging in VS.NET on XP, and did final unit testing on Ubuntu after simply copying the assemblies over. Once stuff passed, I always did a full build & test on Ubuntu as well. But much like Java's "write once, run anywhere" stuff - it's a pipe-dream for non-trivial apps. You need to test the stuff end-to-end on both frameworks because they're implementations are going to offer different bugs. There was one I blogged about (my only blog entry ever :) at http://blog.russellsprojects.com[^]) where the mono compiler was incorrectly compiling a relatively complex loop construct with a catch() block that embedded a break to outside the loop. Everything ran great when compiled by csc on MS.NET, and broke when compiled by mcs on Ubuntu. Looking back, it was a compiler bug, not a Mono implementation bug. But still, VS.NET + MS.NET or Mono on XP would not have been able to reproduce it. I don't want to give anybody the impression that Mono can't compete, or isn't a potentially viable option. It's just not a drop-in replacement like it'd need to be to facilitate a mass migration. I'm really looking forward to having enough free time to dive back into Gendarme. I think it can be a really powerful tool with some extra stuff that didn't seem really feasible last time I peeked at FxCop. If only I was obscenely rich and could make that my full-time job :)
-- Russell Morris Morbo: "WINDMILLS DO NOT WORK THAT WAY!"
-
Russell Morris wrote:
Alas, my shop is moving towards J2EE for server-side stuff,
I am curious, why J2EE?
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
Rocky Moore wrote:
I am curious, why J2EE?
It fit nicely with our existing architecture (IBM mainframes, DB2, zOS, etc...), and ran very well on existing infrastructure. In addition, we had large amounts of success with initial ports of some internal systems to run on a J2EE server. I've worked with .NET since the Beta 1 stage, and MSTS/MSMQ/etc... -> COM+ before that, and from what I've seen and experienced of both systems: J2EE systems are easier to build, easier to maintain, and easier to scale than their "enterprisey" MS counterparts. That's not to say that J2EE doesn't have its warts, because it certainly does. In fact, the more I understand about its offerings, the more I think that a really skilled J2EE designer/developer is one who knows what feature sets to avoid entirely :) But as complicated as it is, it's never offerred even 1/10th the headache that I remember having while trying to get all of the COM+ pieces working correctly (and consistently!) in a distributed environment. Perhaps my opinion will change in the future - I'm certainly open to the possibility.
-- Russell Morris Morbo: "WINDMILLS DO NOT WORK THAT WAY!"
-
John Cardinal wrote:
MONO project which is .net under Linux and it's very close to full .net 2 support.
...and of course the "real" .NET is at version 3 and rushing towards 3.5 or whatever it is going to be called at Orcas. IMHO, Microsoft is pouring new features into .NET at the rate that Mono just can't keep up with given the resources they have.
Were I work we're in the process of re-writing all our internal apps from an old web-based system to .NET (mostly windows forms based). We started on .net 2 and have no plans to move to .net 3/3.5 orca or what ever it's called this week. In terms of development of the .NET platform I'd prefer it if Microsoft moved at a similar pace to MONO, it doesn't seem 5 minutes since .net 2 hit the downloads and if they moved slower then maybe they'd be able to put pour more resource into creating a development environment with fewer bugs. Just as a side from that, does anyone know how long MS are planning on supporting .net 2?
-
John Cardinal wrote:
there is a *lot* of buzz out there and some real world examples of business users jumping ship already.
I believe most of those would have done so even without Vista coming out. Vista is the most business friendly version of Windows than has every been released. Anyone move from Windows to Linux clearly must "think" they will save money at the end of the day. If there was a free distro of Vista, I doubt Linux would ever survive.
Rocky <>< Latest Code Blog Post: ASP.NET HttpException - Cannot use leading "..".. Latest Tech Blog Post: Blog changed to Subtext!
Rocky Moore wrote:
If there was a free distro of Vista, I doubt Linux would ever survive.
If Vista Ultimate cost $100 (and "lesser" versions cost even less), Linux wouldn't have a chance.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 -
I was looking at the MONO project which is .net under Linux and it's very close to full .net 2 support. http://www.mono-project.com/[^] .net 1 apps purportedly will run on linux under Mono with no changes, in most cases just copy it off windows and run it. http://www.mono-project.com/Guidelines:Application_Portability[^] This coupled with the increasing possibility that people may start jumping ship to Linux as an alternative to upgrading to Vista has made us decide that we will be supporting MONO in all our new commercial apps going forward and porting our existing ones as soon as it's feasible to do so. As a prelude to this I've been checking out the 3rd party component suites for .net that we use and most are saying they are looking at it but awaiting more requests to support it before they start seriously testing under MONO. The issues are all little things apparently like harcoded directory separator characters, registry usage. I recommend that anyone interested in MONO development down the road contact your favorite 3rd party component vendors now and request it.
I've been R&D-ing Linux for some projects where I work and from what I have seen, I'm looking for a reason to deploy and utilize Linux -- Linux has gotten that good in the last couple years. I really think that the new Beryl "eye candy" 3D desktop is not only visually attractive but its also makes sense functionally. The rotating cube where each face of the cube is a workspace makes sense from a human perspective/human engineering perspective. Then with Mono and Wine, it looks like Linux is right on the verge of being a real contender for Windows. Before I got reaquainted with Linux, I thought Microsofts .NET RAD tool made Windows insurmountable. .NET on Linux is indeed a stroke of genius. I can't wait to see how this is going to play out. It should definitely be very exciting the next couple of years. Certainly Linux has some hardware compatibility issues - notably with ATI video cards. But, I like the new 3D Beryl spining cube desktop so much that I have purchased Linux-compatible Nvidia video cards for my home PC. I think this stuff is that good. Might be an interesting business opportunity for someone to come out with a Linux personal computer fully loaded with these new features - especially have Beryl and Wine already setup and configured -- with full easy to understand documentation for Wine applications. Carl
-
Were I work we're in the process of re-writing all our internal apps from an old web-based system to .NET (mostly windows forms based). We started on .net 2 and have no plans to move to .net 3/3.5 orca or what ever it's called this week. In terms of development of the .NET platform I'd prefer it if Microsoft moved at a similar pace to MONO, it doesn't seem 5 minutes since .net 2 hit the downloads and if they moved slower then maybe they'd be able to put pour more resource into creating a development environment with fewer bugs. Just as a side from that, does anyone know how long MS are planning on supporting .net 2?
I agree. I am reminded of Intel's plan to bury AMD by coming out with a new processor every year. It didn't work, because no one had the time to keep up with Intel. The company I work for makes hardware, and we write the software to control that hardware. Since we don't know what kind of PC our software will be installed onto, we are still developing against 1.1. We can't afford to alienate our customers by telling them that they have to install .Net 2, much less 3. To a certain extent it doesn't matter how fast Microsoft comes out with new versions of .Net, the question is what is the adoption rate? Does anyone know of a survey/study about .Net adoption?
Tanks for your support
Pat O
Blog_ _ _
/*\== /*\== /*\==
<ooo> <ooo> <ooo> -
Joe-blow-windows-user will only change over to Vista when they buy a new machine. Joe-blow-technical-user will probably keep XP because "it works". Only devs and bleeding edge users will buy/install vista for the first year. Almost nobody will switch to Linux because of Vista, especially folks in the first two groups I mentioned. Boot note: I just installed Fedora Core 6, and it went smooth as butter - it even recognized my shiney new nVidia 8800GTX without so much as a hiccup. No other currently available distro can do that.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001John Simmons / outlaw programmer wrote:
I just installed Fedora Core 6, and it went smooth as butter - it even recognized my shiney new nVidia 8800GTX without so much as a hiccup. No other currently available distro can do that.
That sounds promising - an installation of Fedora Core is on our "todo" list at the moment. :)
Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
I was looking at the MONO project which is .net under Linux and it's very close to full .net 2 support. http://www.mono-project.com/[^] .net 1 apps purportedly will run on linux under Mono with no changes, in most cases just copy it off windows and run it. http://www.mono-project.com/Guidelines:Application_Portability[^] This coupled with the increasing possibility that people may start jumping ship to Linux as an alternative to upgrading to Vista has made us decide that we will be supporting MONO in all our new commercial apps going forward and porting our existing ones as soon as it's feasible to do so. As a prelude to this I've been checking out the 3rd party component suites for .net that we use and most are saying they are looking at it but awaiting more requests to support it before they start seriously testing under MONO. The issues are all little things apparently like harcoded directory separator characters, registry usage. I recommend that anyone interested in MONO development down the road contact your favorite 3rd party component vendors now and request it.
If .NET was pure, then I would agree. But its the impurities that make it proprietory. MONO has done a good job of adapting the impurities but still some Mono apps need WINE to function. My biggest complaint about mono, is that if code written was pure there wouldn't be a problem. But as yet most Open Source projects align to various versions, and capabilities. For instance LINUX autoconfig/ configure scripts realy heavilly on the pkgconfig version numbers. After installing vanilla Mono, most of these applications fail to compile because there is no consistency in versioning between applications, and their version on MONO. Microsoft wins on consistency. However never underestimate the power of the collective. I am still eagerly watching MONO and implementing pure MONO apps. That all run on Windows. Another big pain is Microsofts low level Thread Pool implementation for Networking. If you are a Java guy and you CLR your Java code. Anything network related will behave very differently to a JVM. Performance frankly dies. Because the .NET configuration for non licienced and non Server systems, cripples the ability of multiple threads to simultaneously handle network connections. .NET patterns, are yucky in that they resemble hacking. While I appreciate the performance aspects of the patterns, they do not abstract (Meta interface) there patterns very well. You almost need a General usage Facade to make them understandable and useable.
-
If .NET was pure, then I would agree. But its the impurities that make it proprietory. MONO has done a good job of adapting the impurities but still some Mono apps need WINE to function. My biggest complaint about mono, is that if code written was pure there wouldn't be a problem. But as yet most Open Source projects align to various versions, and capabilities. For instance LINUX autoconfig/ configure scripts realy heavilly on the pkgconfig version numbers. After installing vanilla Mono, most of these applications fail to compile because there is no consistency in versioning between applications, and their version on MONO. Microsoft wins on consistency. However never underestimate the power of the collective. I am still eagerly watching MONO and implementing pure MONO apps. That all run on Windows. Another big pain is Microsofts low level Thread Pool implementation for Networking. If you are a Java guy and you CLR your Java code. Anything network related will behave very differently to a JVM. Performance frankly dies. Because the .NET configuration for non licienced and non Server systems, cripples the ability of multiple threads to simultaneously handle network connections. .NET patterns, are yucky in that they resemble hacking. While I appreciate the performance aspects of the patterns, they do not abstract (Meta interface) there patterns very well. You almost need a General usage Facade to make them understandable and useable.
ozialien wrote:
If .NET was pure, then I would agree. But its the impurities that make it proprietory. MONO has done a good job of adapting the impurities but still some Mono apps need WINE to function.
That's a little out of date, it used to be true for winforms, but they've gone fully .net since, see here at bottom of page in history section: http://www.mono-project.com/WinForms[^]
-
I was looking at the MONO project which is .net under Linux and it's very close to full .net 2 support. http://www.mono-project.com/[^] .net 1 apps purportedly will run on linux under Mono with no changes, in most cases just copy it off windows and run it. http://www.mono-project.com/Guidelines:Application_Portability[^] This coupled with the increasing possibility that people may start jumping ship to Linux as an alternative to upgrading to Vista has made us decide that we will be supporting MONO in all our new commercial apps going forward and porting our existing ones as soon as it's feasible to do so. As a prelude to this I've been checking out the 3rd party component suites for .net that we use and most are saying they are looking at it but awaiting more requests to support it before they start seriously testing under MONO. The issues are all little things apparently like harcoded directory separator characters, registry usage. I recommend that anyone interested in MONO development down the road contact your favorite 3rd party component vendors now and request it.
-