IN THE beginning Microsoft laughed at Linux and free software, claiming it was just an operating system for hackers and hobbyists, posing no real threat to their domination of the computing industry. Now it’s a very different story and Microsoft admits that Linux is their number one threat.
Through the recent TomTom case it is clear that Microsoft is using patents to leverage power over open source. Microsoft knows that if they do nothing, free software will eventually destroy their bottom line. They have to do something, which they certainly are. Microsoft CEO Steve Ballmer admitted,
Linux is a serious competitor
and promised that the company will outsmart open source. So what’s their game plan?
One of the ways they are trying to gain the upper hand is by introducing their own proprietary programming framework into free software, which is called ‘.NET‘. While some parts of the .NET framework such as CLI and C# have been submitted to Ecma for standardisation, others have not. Even so, Microsoft still holds patents in relation to these standards, although the company grants “licenses on reasonable terms and conditions”, but only so long as the corresponding Ecma standard remains valid. The non-standard components also pose a risk.
Microsoft has ulterior motives for wanting support for .NET under Linux. They might not be able to destroy free software, but they sure want to control it. Microsoft CEO Steve Ballmer said:
I would love to see all open source innovation happen on top of Windows.
In relation to using .NET to battle free software, Senior Vice President of Microsoft Servers and Tools, Eric Rudder, said:
As many of you may know, we’ve actually kind of broadened the product portfolio of Visual Studio, targeting all the way from the low end with students and hobbyists, kind of competitive in that Linux space, making sure that every developer has a copy of .NET and is trained in writing .NET solutions. [...] I think it will really help us in our competition with open source.
The more of their own patented technology they can get into free software, the better position the company will be in. Once everyone has adopted it they will then try to control and exploit it, or try to shut it down like they have done many times before. This is exactly what we have seen with the recent VFAT patent claims. But will it work? Possibly.
The Mono project is a free software implementation of the .NET framework, owned by Novell. It runs under Linux, OS X, Unix and even Windows itself. The Mono project is a great open source implementation of .NET, but it is also an essential tool for Microsoft to maintain their strong hold in the computer industry - get everyone using a proprietary programming environment that they control. Then, when the time is right, you can guarantee they will come knocking to collect royalties and sue those who refuse.
There’s no question that C# is a decent language and that many high quality projects have been created as a result of this. Yes, open source does perhaps benefit from these applications, but it’s only a short term gain. Long term, its extremely dangerous. It’s dangerous because if we find ourselves in a position where we rely on Microsoft for our own open source technology, then we are completely at their mercy.
In regards to their original agreement with Novell, Microsoft President Bob Muglia said:
There is a substantive effort in open source to bring such an implementation of .Net to market, known as Mono and being driven by Novell, and one of the attributes of the agreement we made with Novell is that the intellectual property associated with that is available to Novell customers.
So part of Microsoft’s agreement with Novell was to cover patents applying to .NET applications! Those who are developing .NET/Mono applications without a similar Microsoft agreement may be at risk of being sued.
Novell’s Linux distribution, SUSE, also ships with a plugin for the popular open source web browser Firefox called Moonlight, which enables it to play Silverlight (Microsoft’s .NET based framework for web based multimedia) via Mono. This brought about a very interesting agreement between Microsoft and Novell in relation to the use of the technology, where Microsoft agrees not to sue (for a certain period of time) “Downstream Recipients” (yes, the end users) of Novell’s Mono based implementation (and only those online services provided by Novell). The covenant between Novell and Microsoft has been discussed over at Groklaw and is well worth the read. It is also worth noting that Silverlight websites may require various codecs from Microsoft which are not open source and may be patent encumbered.
“It is also worth noting that Silverlight websites may require various codecs from Microsoft which are not open source and may be patent encumbered.”Thankfully, some Linux distributions are starting to realise this threat and are removing certain Mono applications from future releases. Mono itself is currently included in Fedora, but they have removed support for Silverlight, by forbidding Moonlight. Similar reasons as to why Fedora has removed Moonlight apply to the rest of Mono itself, so it remains to be seen as to whether it will be completely removed in the future.
The GNOME project is one of the most popular desktop environments in the Linux world. Many distributions ship this as their default, including top players; Fedora, SUSE and Ubuntu. Novell is a large contributor to the GNOME project and now more and more of its applications are written in .NET.
Some programs built into GNOME which are written to require .NET are; Banshee (music player), Beagle (search engine), F-Spot (photo management program), GNOME Do (application launcher), Monsoon (bittorrent client), Tasque (task management application), Tomboy (note taking program), many libraries and more. While various applications do depend on .NET, it must be stressed that GNOME is not tied to Mono, yet. It might never be. But then again, it just might.
If GNOME does become dependent on .NET it would open up many open source projects and developers to legal action. Of course, once the infringing patents are made known the software can be re-implemented so that it no longer violates them, but how long will that take? Could an open source company take their entire product offline while a fix is created? Also, what other problems would this introduce? At the very least this would rely on companies standing up to Microsoft in the first instance, something which almost happened with the TomTom case, but which fell apart at the end.
When asked for his opinion about GNOME’s relationship with Mono, Free Software Foundation founder Richard Stallman answered:
Mono is a free implementation of Microsoft’s language C#. Microsoft has declared itself our enemy and we know that Microsoft is getting patents on some features of C#. So I think it’s dangerous to use C#, and it may be dangerous to use Mono. There’s nothing wrong with Mono. Mono is a free implementation of a language that users use. It’s good to provide free implementations. We should have free implementations of every language. But, depending on it is dangerous, and we better not do that.
The key issue is dependence. Free software must remain independent of all Microsoft intellectual property, including the .NET framework.
Isn’t this the case with all open source software though, like Samba? It certainly is. Let’s look at Samba a little more closely. Samba implements the Server Message Block protocol for data sharing, which was invented at IBM. Microsoft took this protocol and extended it for use in their operating systems. Samba has continued to incorporate changes to make itself compatible with the Windows implementations and in doing so may have violated a number of software patents. In fact, project founder Andrew Tridgell admits this is the case and says that the team has spent lots of time ensuring they do not violate the ones they know about.
However, the extra good news is that the result of the European Commission’s antitrust lawsuit against Microsoft in 2004 (which Microsoft lost an appeal against in 2007) meant that the company was, among other requirements, forced to enter an agreement with Samba to provide technical documentation for their technology. The agreement also ensures that Microsoft cannot sue over any of its intellectual property related to the project. It might sound similar to the Microsoft-Novell deal but it is very different.
Having been scrutinised by the Software Freedom Law Center, the Samba agreement covers all users of the Samba software and any derivatives thereof. The Samba Team announced:
Under the agreement, Microsoft is required to make available and keep current a list of patent numbers it believes are related to the Microsoft implementation of the workgroup server protocols, without granting an implicit patent license to any Free Software implementation. No per-copy royalties are required from the PFIF, Samba developers, third party vendors or users and no acknowledgment of any patent infringement by Free Software implementations is expressed or implied in the agreement.
So Samba is safe, but the fact that the project needs an agreement like this should sound warning bells for anyone implementing Microsoft technology. Fortunately for us, we all benefit from Samba’s work, but no such agreement exists in relation to other Microsoft technologies, including .NET.
Of course, there are potentially thousands of patent issues affecting free software and we cannot run scared. Once we know about particular patent infringements in free software, they can be resolved. But there’s a difference between implementing software which might turn out to infringe on some patents and deliberately writing free software using a proprietary framework.
Some in the community have seen this threat also and have started porting applications away from .NET. One such project is Gnote, a C++ port of GNOME’s Tomboy note taking application, written by ex-Novell employee Hubert Figuiere. Although not yet feature complete (as of May 2009), it runs much faster and consumes fewer resources. Gnote has quickly been gathering popularity and is already available in most major distributions. Even if there is no port of a specific .NET application, there are plenty of alternatives. The first step is to remove Mono from your Linux box and install replacements.
If you’re using Debian or a derivative such as Ubuntu, you can remove Mono and all applications using the following command (run as root):
apt-get remove --purge mono-common libmono0
apt-get --purge autoremove
Next, download and install Mononono, which sets up a conflict with the real Mono packages, stopping applications from pulling it back in. Like so:
wget http://tim.thechases.com/mononono/mononono_1.0_all.deb
dpkg -i mononono_1.0_all.deb
For users on a Yum based RPM system such as Fedora, the following commands (run as root) will remove mono and block any package from being installed which depends on it:
yum erase -y mono-\*
sed -i '/^\[main\]$/a exclude=mono-\*’ /etc/yum.conf
For those using SUSE or variant, Novell actually gives us the best tool to combat it, thanks to their package manager which can lock packages. First, you need to remove the offending packages, then you lock them so that applications which want to pull Mono back in, cannot. As root, run the following commands:
zypper remove mono
zypper al *mono
zypper al mono-*
This will then remove many of the core applications that Novell bundles with their distribution. Once the system is clean and Mono-free, it’s time to replace those .NET programs. Some to consider in the GNOME/GTK+ space are; Rhythmbox (music player), Tracker (search engine), gThumb (photo management program), Deskbar-Applet (application launcher), Deluge (bittorrent client), Gnote (note taking program).
What else can you do? Vote with your feet. Let your distributions know that you don’t want Mono tainting free software. You’ll also get the added benefit of a computer which runs faster! Microsoft’s number one goal is to keep the world using their software. After all, this is how the company makes money. They will do that by any means necessary, including suing companies (and even end users) who do not submit to their threats.
Microsoft only recently started licensing VFAT, once it had become a de facto standard in the computing industry. What’s stopping them from trying to do the same with .NET? Using it as a programming platform may be putting the free software world in a bad position. By all means, let Linux run Windows .NET applications through Mono, but let’s not make our own software dependent on this proprietary programming framework.
In 2001 Microsoft founder Bill Gates said:
Microsoft has had clear competitors in the past. It’s a good thing we have museums to document that.
Make no mistake. Microsoft is out to destroy Linux (their self-proclaimed number one threat) to maintain their position as the dominant software super power. Let’s not give them a helping hand. ⬆
Mono: An infectious disease by Christopher Smart is licensed under a Creative Commons Attribution 2.5 Australia License.
Comments
paul
2009-06-04 12:34:25
For native there is Assembly, C/C++, Basic, and Pascal. If you want native RAD try Lazarus based on Free Pascal, which is really close to its Windows Delphi cousin.
All of the main Java IDEs work precisely like their Windows equivalents, since they themselves are written in XPlatform Java. This includes Eclipse, NetBeans, and IntelliJ. Other languages (Python, C/C++, JRuby, Ruby, PHP) are also available and supported on Eclipse and NetBeans.
There is absolutely no reason at all to use or create NET apps on Linux. The only ones doing so, should be Windows shops that are trying to reduce costs who have mistakenly committed to NET development and have locked themselves in. Of course I highly recommend that these shops SWITCH as soon as possible and in the meantime run only Novell or other distros that have the patent protection.
Foolish people of course do foolish things. Committing yourself to anything that you cannot and do not have control over is foolish, IMHO. If you do not like C/C++, go Java or Free Pascal. If you want to use something more dynamic use a scripting language like Python, Ruby, Groovy.
Some may not like Linux, ok, use Open Solaris or BSD.
We live in a world now where freedom in the computer industry really does exists. Why people continue to enslave themselves to a single vendor is really beyond me.
Golodh
2009-06-05 15:42:02
That's what *you* think. Other people want to use Mono and .NET like functionality. Let 'em. As long as it's not built into the Linux kernel it doesn't expose Linux to legal repercussions.
So to be clear: I'm not in favour of Shuttleworth's ideas to recode the Kernel, X11, and Gnome in Mono. That *will* expose the resulting construct to legal entanglements. But I don't think that Linux shouldn't *support* Mono for those who want it to.
Roy Schestowitz
2009-06-05 15:43:11
Golodh
2009-06-05 15:48:57
Roy Schestowitz
2009-06-05 15:50:54
eet
2009-06-05 16:03:49
Chips B Malroy
2009-06-02 19:25:25
Roy Schestowitz
2009-06-02 19:54:05
Will
2009-06-02 14:30:45
As far as I know, there is only one Linux virus that exists in the wild, and it happens to share its name with a certain biological virus.
aeshna23
2009-06-02 10:44:54
Roy Schestowitz
2009-06-02 12:36:01
Needs Sunlight
2009-06-02 12:44:22
Roy Schestowitz
2009-06-02 12:50:32
Needs Sunlight
2009-06-02 10:01:04
How about cleaning the HOWTO part of the article up and posting it as a tutorial?
http://ubuntuforums.org/forumdisplay.php?f=100
The Open Sourcerer
2009-06-02 08:08:47
Are you mellowing in your old age? ;-)
Roy Schestowitz
2009-06-02 08:15:17
Lyle Howard Seave
2009-06-03 01:36:40
For those interested, he also has these two sites: http://makethemove.net/ http://blog.christophersmart.com/
-----
As well, maybe someone with a Buntu forum account could add the Monono info here where someone asked yesterday how to remove mono:
http://ubuntuforums.org/showthread.php?t=1175875&highlight=hwo+to+remove+mono
LHS
Roy Schestowitz
2009-06-03 05:57:14
pcolon
2009-06-04 11:55:58
That was a good trolling intro.
"...it’s ridiculous to block .NET techniques"
We know microsoft's intents due to its previous behaviour. Anything added from proprietary monopolies is detrimental to GNU/Linux.
"... In my opinion, Linux still lags behind MS Windows in terms of usability, breadth of applications, and User Interface."
If that was so, why does microsoft copy FOSS, i.e. vista 7 gui looks like KDE4. If the 500,000+ virus/malware signatures to anti-virus databases is 'bretdth of applications' then you got a point there; GNU/Linux is in last place.
"And look at all those file managers under Linux..."
XFE: very light-weight and win95/2000 look-alike. Krusader: twin panel like midnight and norton.
Freedom & security is what I look for first, the rest pops into place.
If .net is so great why doesn't microsoft use it in its cash cow applications? .net is a java wanna-be and mono is a copy of .net. There's your 'third rail'
Golodh
2009-06-05 15:37:08
Yup, and that doesn't have anything to do wit hteh question of whether we ought to have room for Mono on Linux.
"Anything added from proprietary monopolies is detrimental to GNU/Linux."
No it's not. (1) Code that makes Linux vulnerable to a legal challenge is, but having add-ons like Mono is not. (2) Judging from Kdevelop's quality and that of Qt creator, the "Cathedral" approach sometimes beats the "Bazar" approach. I think this is especially the case in GUIs and object hierarchies to create them. In that sense Linux coders can learn a lot from Microsoft.
"If that was so, why does microsoft copy FOSS, i.e. vista 7 gui looks like KDE4."
So Microsoft copies ideas. Ok, that's what they're good at and have been doing since they started. And because, unlike the KDE project, Microsoft has the manpower and the stamina to polish a product's interface it still provides good usability. KDE 4.0 was "alpha" quality and should have been called "developers release". Look at KDE 4.2, if that had released that as 4.0, it would have given them a credibility boost. Now it's just a major bugfix about a year after KDE 4.0 came out.
"XFE: very light-weight and win95/2000 look-alike. Krusader: twin panel like midnight and norton."
Krusader is what I use, and what I constantly compare unfavourably to Total Commander in terms of ease of use and polish. I don't have much use for use single-pane file managers, but I do find it annoying that there are so many half-baked ones. Even Midnight Commander isn't as good as plain old Norton was under DOS.
"If .net is so great why doesn’t microsoft use it in its cash cow applications?"
Irrelevant. It's not about what MS uses, it's about what application programmers who quickly want to code a GUI around a piece of functionality use.
" .net is a java wanna-be [...]."
Nonsense. See my previous comment about the relationship between Java and .NET.
Roy Schestowitz
2009-06-05 15:41:49
Golodh
2009-06-05 15:46:12
Well perhaps. I brought it up to show how poor GUI development on Linux can turn out despite the fact that it's a massive project. Anything that raises the state of practice of GUI development on Linux is worth having i.m.o. As I see it, having Mono on Linux can do exactly that.
To be sure, I generally find KDE the best of the bunch.
Roy Schestowitz
2009-06-05 15:49:27
The Open Sourcerer
2009-06-04 09:15:14
What on earth makes you think that Silverlight will be dominant...
There are too many choices already. MS was late to the party and they are losing popularity as more and more people know what they are really like.
HTML5, JavaFX, Flex, Flash, blah blah blah...
Roy Schestowitz
2009-06-04 09:21:12
Watch Video…without Flash
"Dailymotion is excited to launch a new R&D platform dedicated to open video formats and web standards: openvideo.dailymotion.com. You don’t need the Adobe Flash plugin to watch videos on this platform - the only requirement is the latest version of Firefox, 3.5 beta, available here."
http://blog.dailymotion.com/2009/05/27/watch-videowithout-flash/
Google goes in the same direction and:
Google to slip SVG into Internet Explorer
"Microsoft might be hesitating on Scalable Vector Graphics (SVG) in Internet Explorer 8, but Google's pressing on.
"The search giant's engineers are building a JavaScript library to render static and dynamic SVG in Microsoft's browser. Google promised that the library, a Javascript shim, will simply drop into IE.
http://www.theregister.co.uk/2009/06/03/google_svg_internet_explorer/
mannemerak
2009-06-04 09:02:56
Roy Schestowitz
2009-06-04 09:19:01
Silverlight Adoption Hampered by Economic Crisis
Where Silverlight is adopted Microsoft is paying (bribing) for it:
Adobe CEO accuses Microsoft of trying to muscle into the web video market
Myfraudsoft
2009-06-04 10:51:40
Roy Schestowitz
2009-06-04 10:55:18
Golodh
2009-06-04 08:41:15
On the other hand I think it's ridiculous to block .NET techniques (as encapsulated in Mono) from routine use in Linux environments, as long as it can be completely removed with no more than an uninstall of a few packages.
In my opinion, Linux still lags behind MS Windows in terms of usability, breadth of applications, and User Interface. It's true that Linux has made great strides since the time of the commandline (when Linux proponents told us that the commandline environment was good enough for everyone and Emacs was the last word in text processing, code editing, and general front-end for everything and nothing in particular). However it's also true that the more end-user oriented distributions (SuSE, Ubuntu) are still acquiring the polish that MS Windows and MacOS have.
This holds in particular for both the GNOME and KDE window managers and most of the applications that run under them. Take KDE now. After the fiasco with 4.0 it's still plugging the gaps, actually trying to make things work properly, and sending out rave reviews every time they fix something. The best thing about KDE, in my opinion, is that they use Qt widgets.
KDevelop for another is a sad case of galloping featuritis and loads of "gee-wiz-look-we-can-do-this-too" gimmicks that's still looking to achieve the usability of e.g. Delphi or MS Visual whatever. GNOME I disliked so much because of its big cartoon-like icons, its "less-is-more-and-we'll-decide-what's-good" approach to GUI's that I never seriously used it. I install the libs under OpenSuSE because, well, some of the apps aren't bad and I still want to be able to use them.
And look at all those file managers under Linux. Midnight Commander, Konqueror, Dolphin, Nautilus and whatever. None are as snappy, as reliable, as polished, and easy to use as Total Commander under Windows (a closed-source Norton-commander workalike).
I'm afraid that for some things (like GUIs and the class hierarchy to build them) the "Cathedral" development model is better than the "Bazar" model because it delivers more polish.
I therefore feel that competition in the Linux sphere, and especially where it concerns application development and user-interfaces, between Open Source software and commercial software is essential to keep the Open Source crowd disciplined and focused.
Therefore I feel that competition from .NET techniques on Linux is essential to the continued health of Linux and Open Source Software development, and with it the use of Mono.
Only, and I agree with this, Linux must be very careful that it doesn't expose itself so much that it can seriously inconvenienced by a sustained patent attack from Microsoft (if and when that occurs). So lets not rely on Mono for anything but examples of well-built applications.
Roy Schestowitz
2009-06-04 08:53:38
To quote Fewa from IRC (minutes ago), "Microsoft admitted Linux was usable 10 years ago in the Halloween papers:"
"Most of the primary apps that people require when they move to Linux are already available for free. This includes web servers, POP clients, mail servers, text editors, etc
"An advanced Win32 GUI user would have a short learning cycle to become productive [under Linux]. "
That's marketing.
This morning I also found:
http://www.scottgrizzard.com/blog/2009/05/29/why-linux-is-better-than-mac-or-how-i-learned-to-stop-worrying-and-love-apt-get-and-debuild/ http://blogs.zdnet.com/perlow/?p=102097
How about this: http://news.zdnet.co.uk/software/0,1000000121,2076967,00.htm
Java is a better and more mature option.
Golodh
2009-06-05 14:55:07
Yes, but beside the point. It's not about *absolute* usability (IBM's TSO and IPF were usable) it's about a comparison between two products. And in that comparison MS Windows still wins. Even if people have to pay for it, and even after KDE has seen about 4 years of development.
And I'm not saying KDE is bad. If KDE had arrived on the scene together with MS Windows 3.11, it would have won for being the better GUI. As it is now it doesn't win against MacOS or Windows.
“Most of the primary apps that people require when they move to Linux are already available for free. This includes web servers, POP clients, mail servers, text editors, etc"
True. For example, I find Open Office a palatable substitute for MS Office. And that's because it has polish.
“An advanced Win32 GUI user would have a short learning cycle to become productive [under Linux]. ”
Well, perhaps. I never spent the effort to become "knowledgeable" about the Win32 GUI, and I don't plan to. I can work under KDE, but what irritates me are the small things. Irritations that I don't have under M Windows.
The applets that don't work (just look at the work that went into KDE 4.2 to make sure things actually *work* as advertised). The fonts and icons that aren't as nice and clear as with MS Windows. The clipboard that doesn't work between every pair of apps you can start from KDE. The menu that's not as zippy and easy to add apps to as MS Windows. The help facility that has these gaps and excels at producing irrelevant and poorly worded results.
"However it’s also true that the more end-user oriented distributions (SuSE, Ubuntu) are still acquiring the polish that MS Windows and MacOS have.
"That’s marketing.""
Perhaps, but that doesn't make it any less true. KDE 4.2 is still *not* polished the way MacOS and MS WIndows are. Try it and see.
The link to scottgrizzard's blog is interesting. I agree that Macs are best for end-users who want to spent their time working in apps instead of working on aps. There is a niche for this sort of people, and it only comprises about 95% of the market. That doesn't mean that Linux shouldn't cater for the remaining 5%, but if it wants to dominate the desktop (something I believe is possible) then it needs to do just as well for those other 95%.
I'm using SuSE linux 11.1 (not Kubuntu) and I have had my share of broken library dependencies. I had never heard of "sudo apt-get build-dep". My loss apparently, but then I rarely stray beyond the packages that come with the SuSE distribution and can be installed through YAST. This is another problem with Linux: there isn't just *one* standard package manager that does everything (and does it so well that you never want anything else), there are at least two.
I disagree with scottgrizzard about Linux being for users by users though. If you need to get beyond what's pre-cooked, you'll need to consult a book like Frish, A. (1995) Essential system administration. O'Reilly & Associates. System administration is never for end-users, and the trick is to ensure you needn't get involved in it. For better or worse, MS Windows goes further to make sure you don't have to if you don't want to.
The link http://blogs.zdnet.com/perlow/?p=102097 didn't work.
The Windows 2000 bugfest that the ZDnet link referred to is true, but that's why you want to stay away from any MS (or other) product with version number 1.0 . You wait until some other sucker stumbles onto it and MS or whoever fixes it. So you always go for version 1.1 or 1.2 or service pack 1 or whatever they're called. Just look at what KDE 4.0 was like to see what I mean ;-)
"Java is a better and more mature option."
No, Java is a very different thing. The basic idea behind .NET is that you can have cross-language calls to applications and libraries without further hassle and without the binaries having to have been made by the same make of compiler. You can program the interface of your app in one language, implement the internals in another (more suitable) language or even call a library written in another language and compiled by a different brand of compiler. For example, try calling a Kuck & Associates C library from Java ... good luck to you. That cross-calling functionality is valuable, and Java doesn't offer anything like it.
And as to Java as a GUI language: I much prefer to use Qt Creator and then call whatever language implements the guts from that.
Roy Schestowitz
2009-06-05 15:00:45
I messed up the link. Try this.
Scott Grizzard
2009-06-08 06:10:41
I don’t think Macs are best for “end-users who…”. I think Macs are best for you (the family member that always gets called for tech support), if you don’t want to deal with their computer issues.
When a new user starts using Linux, the largest issue is not “interface” or “working on applications” (all of which, in my opinion, are easier and better in Ubuntu w/ Gnome than on either Mac or Windows). A new Linux user’s biggest issue is “unsupported killer apps”.
If you can get iTunes (with DRM and store), Photoshop, and the latest MS Office working on Linux without issues, then users will defect in droves. (I know wine and crossover tries, but it’s not there yet. PS: If Mono gets us any closer to that goal, no matter what the patent issues, I say, “hurray!” Quick show of hands, who reading this in the U.S. doesn’t have libdvdcss installed on their boxes? Or paid for mp3 support? Of course, I don’t and I did, because I think all of these software patents are legit.)
My point about Linux is that there is a natural progression from novice to expert, even for the 95%, and it requires no additional desire or frustration than an average user experiences in any operating system. The only difference is, in Linux, users can do something about their negative experiences, and there are tools that are easy to use and people willing to help.
How can I say this politely?… WhyTF are you still using SuSE? SuSE is Diet Windows using Yast as an artificial sweetener. Pick Coke or Pepsi, and drink that! (More like pick corn-starch or sugar sweetened.)
In my opinion, if you are mostly a server guy, you ought to go RedHat/CentOS, just because it is what most people use on servers. If you are mainly doing desktop work, give regular Ubuntu a shot, and then
apt-get install kubuntu-desktop
once you are used to the “Debian way of doing things.” But I know recommending a distro is “fight’n words”, so I’ll stop now before the entire board comes to give me a beat-down.As opposed to Windows and Mac where there are… NONE. If you give Ubuntu a shot, I think apt is what you are looking for. Get all that SuSE junk out of your head.
I think the multiple package managers is a very strong advantage for Linux. The fact that there is “two or three of everything” (KDE and Gnome, yum and apt, rpm and deb, Grub and LILO, ext3 and ReiserFS or whatever is the other one now, Thunderbird and Evolution and Kmail, OpenOffice and KOffice and Gnome loosely affiliated applications) means that there is a rapid pace of innovation between competing communities. Desktop distributions (with the exception of SuSE, which is geared towards Windows Power Users) are very good at hiding the sheer number of choices available to beginning users so they don’t get overwhelmed. If someone hands you an Ubuntu or Mint CD, and you install it, you won’t even know about KDE until you start fiddling around inside the system because you get curious.
Yes, in 1995 you needed a book to learn about system administration. Since then, we all got broadband and started blogging/list-serving/wiki-ing night and day (especially night).
You don’t need books to learn Linux - what you need is a desire to change something about your system and an Internet connection. (For serious tweaking, a spare box or a virtual machine doesn’t hurt, but only if you are playing with the core system.)
My first admin job was for my apartment complex in grad school. They wanted a Samba Domain Controller (they didn’t know that - what they knew was that the last guy had installed a pirated version of Windows 2000 on their old server which a bolt of lightning had eaten). They gave me a month’s rent free to do it, “for $700 in hardware” when I told them it could be done using free software.
I set them up with a SuSE 10.0 Domain Controller that they could manage using webmin. (Yes, I used SuSE at one point, but if you can admit you have a problem, recovery is possible.) It took me two weeks (off and on) to set up, but I did it with the help of the online helps, the mailing list, and the IRC chat room. The owner hired me part-time after that.
You don’t need to keep regular users out of system administration; you just need to not require them to get into system administration until they want to do something sysadmin-like. Then, you need to let them pick off the piece they want, without making them get involved in everything else. The good Linux distros do this, letting the user install a “server package” with the same graphical ease that they install a chess program. (With the exception of anything involving SELinux, but someone was on crack with that one.)
My points (and I do have two) are that Linux is for everyone, (unless you are in some niche like graphics design, in which case someone needs to crack the whip under the CrossOver folks), and stop using SuSE! While it may be evil, even more importantly, it’s lousy software!
PS: I just copyrighted the Yast as artificial sweetner line, before I posted it here. It's mine... (evil laugh).
oiaohm
2009-06-04 09:20:55
No point have the best looking interface in the world if it will not run due to lack of ram or lack of speed. ,Net is guilty of both. .Net threats to cripple the open source desktop not help it.
Are programs written in VB good quality programs for looks. Most cases no. .Net is modern day Visual basic we truly don't need its crap.
Lot of projects are getting a lot more focused on how there gui works. The bastard child of interfaces is http://blender.org extremely powerful tool with a completely unique interface. Focus was on adding features not sorting out the UI.
Times have changed next version of blender will have a new interface that works. Still unique but more flexible so it can replicate other application keyboard short cuts and layouts. OpenOffice is having its UI interface revised. Kdevelop is having its internals fixed up.
http://www.kdevelop.org/mediawiki/index.php/KDevelop_4/KDev3_KDev4_comparison_table
Massive project by the way to rework the complete internal engine of Kdevelop. Kdevelop 4 when working with C++ is far more what you expect from a ide. Sorry to say MS auto completes fell sloppy to Kdevelop 4.
This all started a few years ago not .net linked at all when someone got the bright idea that we should have a project working on usability of open source programs. http://www.openusability.org/
If you truly have a problem with a open source programs interface join the project and have your voice heard.
Roy Schestowitz
2009-06-04 09:40:22
http://itmanagement.earthweb.com/features/article.php/3789981/Bjarne+Stroustrup+on+Educating+Software+Developers.htm
Golodh
2009-06-05 15:24:25
Thanks. I knew that, and it's irrelevant to the discussion at hand. I used it as an example of a well-done GUI, not as an example of .NET programming.
"Idea that .Net will help Linux some how magically get better interfaces is the worlds biggest joke."
Well, haha. Ok? Now back to the issue at hand. I was talking about the competition that Mono-based applications foster on Linux, nothing magical about that (although I admit that some people find the workings of competition magical). To be blunt, it means that you will have a much bigger chance of being able to wave Linux apps with a palatable and useful GUI under people's nose when they say thing like "our UI is good for users that know how to work with it (as in the Blender project you mentioned)" and say: "See? This is how a good GUI looks like. If you can't (or won't) make one for your app, I'll use that other app.". That usually works, and when it doesn't you can always switch to that other app.
"No point have the best looking interface in the world if it will not run due to lack of ram or lack of speed. ,Net is guilty of both. .Net threats to cripple the open source desktop not help it."
Whew ... we caught us a live one. Someone who feels that RAM or disk space or cycles are a serious constraint for ordinary apps on todays's PC's. Those things have got 2-4 Gb. on average, not to mention 1 Tb. of HD storage, and most of them support multithreading at the speed of 100-1000 times that of a VAX. Now even the most ferocious use of .NET won't be able to fill that anytime soon.
If having the best interface didn't matter, then Windows 3.11 would never have won out over OS-2, and we all know how that battle went.
Well ... tastes differ about VB-based GUIs. I personally think VB does an acceptable job on the GUI side and it does it fast. The primitives available in VB make is a powerful glue language too. So quite apart from your tastes, VB is *useful*. If people want to use it, you shouldn't hinder them (e.g. by scrapping Mono functionality from Linux).
The Blender story supports my view. Right now it's a typical niche project. It's powerful, but under-utilised thanks to its monterous GUI. Once they sort that out, it can become a mainstay app. At least they saw the light and are now addressing their idiosyncratic little ghoul of a GUI.
KDevelop happens to be another one of my peeves. Even after 4 years of development its not polished and useful only for those willing to delve into its internals. Its learning curve is steep, things that ought to be dead easy are complicated (like importing a random bunch of C files into a plain command-line project and then compiling it), its GUI looks more like a grab-bag of "Gee-wiz-we-can-do-this-too" gimmicks and a coherent interface, its make system is still as clear as mud, as well-documented as the average Alchemy recipe, and as user-friendly as make ever was. Besides which, the most polite response to any suggestion that people ought to polish the rough spots before prancing off to the next slew of interesting features is "Code it yourself then". Autocomplete and editing is OK in KDevelop, but there are more aspects to reckon with.
Good thing Qt creator was brought out ... that gives people some alternatives.
Last but not least, I don't think that "join a project" is an appropriate response in a discussion about whether or not we ought to have room for Mono on Linux.
eet
2009-06-05 15:39:50
Rimas
2009-06-10 05:19:57
mario
2009-06-04 20:29:28
Roy Schestowitz
2009-06-05 16:06:52
eet
2009-06-05 15:52:19
David Byrd
2009-06-05 20:37:25
PS. I've been a developer of Windows software for 20+ years and I've written several of favorite apps in C#. However, Microsoft's intentions are clear to me and will no longer support Microsoft in any way shape or form. Long live free software. If I have to learn new languages and tools so be it. Languages aren't that hard and the concepts between tools are fairly similar. There's no real loss to me, only gain.
Roy Schestowitz
2009-06-05 21:25:28
A lot of us Linux users are former Windows users (my last one was Windows 98).
David Byrd
2009-06-11 03:40:45
I stumbled across an interesting document today. It has several fascinating quotes from court records and Microsoft annual reports. The references are well documented. I suspect you will see a common thread of intent throughout the quotes below. They summarize the 33 page document fairly well. Yet the document is well worth the read.
A History of Anticompetitive Behavior and Consumer Harm (March 31, 2009) See the end of this post for a link to the original document.
“This anti-trust thing will blow over. We haven’t changed our business practices at all.”
—Bill Gates, Microsoft founder and then-CEO (1995)
“[W]e need to make sure Windows 3.1 only runs on top of MS DOS.”
—David Cole, Microsoft Senior Vice-President10
“The approach we will take is to detect dr [DOS] 6 and refuse to load. The error message should be something like ‘Invalid device driver interface.’”
—Phillip Barrett, Microsoft Windows Development Manager11
“If Intel has a real problem with us supporting [Intel’s microprocessor rival, AMD] then they will have to stop supporting Java Multimedia the way they are.”
“I have decided that we should not publish these [Windows 95 user interface] extensions. We should wait until we have a way to do a high level of integration that will be harder for likes of Notes, WordPerfect to achieve, and which will give Office a real advantage.... We can't compete with Lotus and WordPerfect/Novell without this.”
—Bill Gates, Microsoft founder and then-CEO
“Please give me one good reason why we should even consider [enabling Microsoft technology to work on competing systems]. (Hint: any good answer needs to include making more money and helping kill Unix, Sybase or Oracle.)”
—James Allchin, Microsoft Senior Vice-President
“We set out on this mission 2 years ago to not let [N]etscape dictate standards and
control the browser [APIs]. All evidence today says they don’t.”
See Findings of Fact, supra note 20, €¶€¶ 81–83. At a meeting between Microsoft and Netscape executives, Microsoft made it clear that if Netscape attempted to expose its own APIs rather than build off of Microsoft’s platform, “Microsoft would view Netscape as a competitor, not a partner.”
“[W]e should just quietly grow j++ share and assume that people will take more advantage of our classes without ever realizing they are building win32-only java apps.”
—Microsoft’s Thomas Reardon
“Don’t encourage new cross-platform Java classes; especially don’t help get great Win32 implementations written/deployed. Do encourage fragmentation of the Java classlib space....”
Government Exhibit 518, Email from Ben Slivka, United States v. Microsoft Corp., 87 F. Supp. 2d 30 (D.D.C. 2000) (No. 98-1232), available at http://www.usdoj.gov/atr/cases/exhibits/518.pdf.
What we are trying to do is use our server control to do new protocols and lock out Sun and Oracle specifically”
-- Bill Gates, Microsoft
In the next quote below Horacio Gutierrez is referring to Linux. Curiously the ECIS document has the following statement regarding Linux, “The open source Linux operating system is the principal rival to Microsoft Windows.” If your readers have read even one quote from Microsoft's management prior to the quote below they must surely know that C# on Linux simply can not be anything less than an attempt to destroy a competitor.
If someone believes that Microsoft is trying to help Linux and open source by providing access to C# via Mono then surely they are gullible, or simply on the M$ payroll. IMHO I don't see how a rational human being could see this any other way. The intent of Microsoft management via their track record is quite clear.
Notice the deliberate distortion of the truth below.
“This is not a case of some accidental, unknowing infringement. There is an overwhelming number of patents being infringed.”
— Microsoft General Counsel and Intellectual Property and Licensing Vice
President Horacio Gutierrez
See Roger Parloff, Microsoft takes on the free world, CNN MONEY, May 14, 2007, available at
http://money.cnn.com/magazines/fortune/fortune_archive/2007/05/28/100033867/
You can find a copy of the document here on the European Council of International Schools (ECIS) web site at http://www.ecis.eu/documents/Finalversion_Consumerchoicepaper.pdf
I don't know if you've ever heard the story about the scorpion and the frog, but one of the basic principles of the story is that scorpions do not change, even when it costs them their own lives. http://en.wikipedia.org/wiki/The_Scorpion_and_the_Frog
ro
2009-06-09 00:23:21
This is despite the fact that every day at home I choose to use linux almost exclusively for personal use, and every day at work I use Windows exclusively for my job desktop platform, since that is the corporate platform (some relief from working on Solaris servers), so I think I have a good basis for comparison.
Golodh seems much in agreement with the core point here that exposure to patent infringement threats from M$ is to be avoided, but he just disagrees with the measures needed to avoid it. Would the zealots please cut him some slack, and discuss the means to that end calmly?
Something else to be concerned with now with respect to Java is what its new owner, Oracle, will do with it. They are no less interested in making money with control of their software than M$, although their heavy support of interoperability with Linux is a big difference. Will that keep Java free? Food for thought/discussion.
RO
Roy Schestowitz
2009-06-09 05:06:41
scared_little_bear
2009-06-09 13:56:01
"Every line of code that is written to our standards is a small victory; every line of code that is written to any other standard, is a small defeat." -James Plamondon, Microsoft Technical Evangelist. From Exhibit 3096; Comes v. Microsoft litigation.
Exhibit 3096 => http://www.groklaw.net/pdf/Comes-3096.pdf
CynicalTroll
2009-06-09 15:45:34
I see Mono as a normal open-source development platform. Software patents are an absurd thing and will be abolished in some time in the future. Ignoring a free software platform is foolish. You see, the world is moving, you cannot stop it.
You insult Mono developers by borrowing Microsoft's words (infectious disease, yeah right..).
You are no better than Microsoft itself by applying FUD tactics.
Let me remind you, that with patent system intact, each and every software can be accused of patent infringement. But this won't happen. No one wants it. Even Microsoft.
Roy Schestowitz
2009-06-09 16:23:42
"Geeks like to think that they can ignore politics, you can leave politics alone, but politics won't leave you alone."
--Richard Stallman
"[...] we know that Microsoft is getting patents on some features of C#. So I think it's dangerous to use C#, and it may be dangerous to use Mono."
--Richard Stallman
"Every line of code that is written to our standards is a small victory; every line of code that is written to any other standard, is a small defeat."
--James Plamondon, Microsoft Technical Evangelist. From Exhibit 3096; Comes v. Microsoft litigation
[PDF]
That was not me.
No, these are pointed out so that they can be addressed (tackled).
TomTom begs to differ.
Rimas
2009-06-09 18:08:00
You know, the world is going forwards, and the main software platform will definetely be a managed platform (a virtual machine) because of its benefits.
Free software community has done it before and will have to do it again, if it wants to be relevant - _innovate_. I mean, not only copy from others, but invent something that would be almost instantly accepted as a better solution to the problem. Firefox example springs to mind - standarts - (almost) - compliant, open source, addon-supporting platform that almost took the world by storm (I mean, the twenty something percent that it currently has is not such a small amount overall..).
In the market of managed languages, there are two main competitors - Java and .NET. Java's age is showing and if the next version doesn't come with features that make it on-par with C#, it will be the language of legacy enterprise applications. So something must be done in this area.
Instead of only over-bashing poor Mono (the technology is not bad, per se, it's the evil intents of Corporation M that are worrying), you should promote an alternative approach (and no, C++, Python and Ruby (can it even be used for desktop apps?) do not suffice.
There is such a platform, ladies and gentlemen - the Parrot virtual machine ( http://www.parrot.org/ ), that, combined with the elegancy of C# language (afaik, not yet implemented) would be the killer platform for desktop app development.
On a side note, this blog or how you call it, manifesto against mono, has gone out of hands. It should be made _very_ clear that: 1. Mono apps are not dangerous to use or develop on. 2. Making key applications depend on mono platform _could be_ a legal minefield.
Thank you for reading, Rimas
Roy Schestowitz
2009-06-09 18:23:18
Dan O'Brian
2009-06-09 22:46:31
Bullshit, Roy - you use the words disease, poison, and poisonware all the time to describe Mono.
You did it in this very article, for heaven's sake!
eet
2009-06-11 06:37:58