Mono Progress In the Past Year
Eugenia writes "OSNews posted an article accounting the applications created in GTK# the past 8 months, since the release of Mono 1.0. While many of them are still in their infancy, it's clear that the platform had a healthy progress, with 'super-hits' like Tomboy, F-spot, MonoDevelop, Muine & Blam! and other, less known gems, like SportsTracker, PolarViewer, MooTag, GFax, GIB, Sonance and Bluefunk. The 2.0 version of Mono is expected around May, but the developers advised distros and users to upgrade to Mono 1.1.4 despite being a beta."
Mono is a wonderful piece of reverse engineering, many of these apps I didn't even realize were Mono apps and I have been using them for a while now. In addition I found a couple that I am going to start using such as portage-sharp.
Keep up the good work Mono team, I love C#, and I love how you are brining it to *nix.
I fear the day when Microsoft will come and snatch this out from under the Mono team, but I really think this benifits Microsoft just as having an open source version of Java benifits Sun.
You know, something like:
1) Install/Emerge these tools
2) Install this nice IDE with API completion and stuff
It'd be nice if there was an Eclipse plugin for C# and Mono hehehe
Miguel de Icaza interview about mono on lug radio. Really nice one.
Tomboy, F-spot, Muine & Blam! ... MooTag, GFax, GIB, Sonance and Bluefunk
WTF? Who comes up with names like these? I would blame the MBA's, but this is open source stuff, right?
Sure, everyone knows Tomboy, F-spot, Beagle, MonoDevelop, Muine, Blam! or Monodoc
Uh, right, I knew that. Sure I did. Yup. They're superhits, so I'd be a fool not to. Got that right.
I've heard a lot about Mono not working as it's supposed to do. (buggy, missing features) but i havent tested it myself.. So my question is, does it realy work? Also check out Bits of News
Bits of News Giving you the latest bits.
Why do you say this Mono has done a good job at implimenting the CLR from the ECMA specifications?
I had mono once...damn, it sucked. I'm glad to see there's been progress in fighting this disea...erm, whoops. Terribly sorry. I was thinking of something different.
http://xkcd.com/386/
Interestingly, the summary neglected to mention Beagle, the one Mono application I actually plan on using and that has created some momentum for getting the Mono into various distros.
If Mono proves to be snappier than, say, Java, there might be some hope for it but the spectre of living under the mercy of MSFT is not easy to dodge. It's still there, however much people tried to not talk or think about it.
Save your wrists today - switch to Dvorak
I haven't heard of even one of these "super hits." I think that should have been punctuated,
with 'super-hits' like Tomboy, F-spot, MonoDevelop, Muine & Blam! and other less-known gems,
[
I'm just getting into C#, and I love it. One interesting thing I found was that if I ran a socket server app on Windows, I couldn't connect more than 64 clients in a single thread. I tried the same binary on Linux/Mono, and it bombed out at 1011 connections.
Keep up the good work - I'm loving it!
I'm really looking forward to Dashboard (not mentioned in the article), the desktop app that uses Beagle to gives relevant information that it's collected on your computer about your current activity. It sounds really cool, and Open Source hackers came up with this before Microsoft did.
"Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
Every morning I get up and feed F-Spot (my Beagle). Then, I get out some eggs, cheese, and MooTag to make myself an omelet. I learned how to cook omelets from Emeril. So, it's Muine & Blam! and my omelets done!
Next, I take a shower and wash off the Bluefunk. Once dressed in my suit and my PolarViewer glasses I call down to Tomboy (our doorman) and have him GIB up a cab.
Once at work it is non-stop Gfaxes and sneaking some time with my SportTracker.
DAMN YOU OCTODOG! DAMN YOU TO HELL!
I'm writing this as a mere user, not as a developer, but from my point of view mono really is impressive. Just looking over the list of apps on osnews shows that mono really seems to give developers a framework that let's them develop great application in a relatively short time and in the end it's users like me who profit from that. ;-D
Great works, mono devs.
And to all those trolls that will come out of the woodwork with every mono story, telling us that mono is the end of open source:
Please, for once in your miserable lifes try to provide arguments for your point that go beyond MS is evil (though I would readily agree with that) and therefor mono is the suX0r.
This should stop people using C for things like evolution. Sure C is a great lenguage, but you need to dominate it. Some people knows to use it, most of use humans don't (let's remember the simultaneous 11 buffer overflow vulnerabilities discovered in gaim the past year, making it probably the most insecure IM client ever). And let's no talk about OO, which can help a lot for those final-user apps. C is not a OO language. Yes you can try to use it as OO language like gnome/gtk/glib guys do but they're just trying. A language is either OO or not, C is not. C is a 70's language, stop making gnome "the 70's desktop" with no functional kparts equivalent (bonobo sucks) and use mono, dammit.
He probably is one of the majority of Open Source followers thinking Mono will be sued by MS some time in the future and all the effort put into it will be wasted.
Linux is not Windows
This has to be a first.
Slashdot: News for Nerds, Stuff that matters only to them
Mono is a wonderful piece of reverse engineering
There is no "reverse engineering" involved. These applications are written in C#, an open ECMA standard, and the open source Gtk+ toolkit.
I fear the day when Microsoft will come and snatch this out from under the Mono team,
There is nothing to "snatch": these are applications implemented in a non-Microsoft toolkit using an open language standard.
I really think this benifits Microsoft
I don't see how writing Gnome applications in C# benefits Microsoft any more than writing Gnome applications in C++ or Python.
If developers advise people to use the beta, doesn't that defeat the purpose of calling it a beta?
Ok, Microsoft Is evil, this I will give you, but C# rocks. After years in C and C++, I moved to Java, and It was good, then about 2 years ago I moved to C# and it was better. Now I program in both, for work and graduate school. I have to say they are very similar, but when I am doing a program in Java, I always miss a few of the C# features (virtual keyword for functions, Get/Set are better in C#, etc)
/.ers . If we can start making programs for the general population that run on *nix systems, but look just like they do on windows, more people will use *nix. What we have to realize is that most people in the world(not on this website J) don't have 4 computers in their basement running different operations systems, they just have the one running windows.
The only problem I have with C# was that it was not as portable as Java, but Mono came to my rescue. I was surprised how many of my program just worked in Mono (after removing winforms that is). I can't wait for version 2.0.
Really, Mono should be embraced
P.S. And for some reason, they still have the sides on their computer case.......
Hmm. What the article is really about is gtk#, not mono per se. How well does gtk# work in Microsoft's dotNet implementation? Or even does it work at all?
Now that Windows forms is available, I could of course create cross platform applications in that, but I suspect I'd get more consistent results from using gtk#, if targetting both Unix and Microsoft dotNet is a requirement.
In any case, gtk# looks nicer as a programming model.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
I just happen to be one of the few official developers for the mono project, just catching this artical early. Mono is quickly becoming better then ever. The biggest difference between Mono 1.0.x and Mono 1.1.x is the fact that our Just-In-Time compiler (or JIT) is getting more and more amazing every day. The 1.0.x series use a interprator capable of understanding things at the application start. One huge correction is that Mono will be called 1.2 in May not 2.0. While it is true that gtk-sharp-2.0 is moving to 2.0 from 1.0, the Mono runtime will remain at 1.2 as not to be confused with Microsoft.NET 2.0 (all though support for many of .NET 2.0 features will be included). Gtk# being based on Gtk+ 2.2 and Gtk# 2.0 being based on Gtk+ 2.4. Windows support is just as compatable with GTK# as it is on Linux, minus support for Gnome, VFS, GConf, GtkHtml 3 and DBus of course.
Hope that helps!
No.
I know you are trying to be funny, but please don't confuse people: these are generally not Microsoft .NET applications; they use the C# language and standard library together with common open source libraries.
By analogy, Qt applications written in C++ have nothing to do with MFC applications written in C++; they are two different application frameworks that happen to be based on the same programming language.
I just went to Mono Project. They call it a ".NET" implementation. I further understand why they like to make the distinction between the ".NET Framework" as being specifically the C# and CLR pieces vs ".NET" that Microsoft refers to, but I'm afraid this is a very poor decision. Here's why.
.WEB Framework by Microsoft".
".NET" is Microsoft's brand. They use it to refer to many many different pieces of their technology that use the CLR/C# runtime. This includes such nebulous things as "Sign In.NET", the button that people use to login to MSN and Hotmail. What on earth does that have to do with Mono????? How is that related??
Furthermore, all of the tools that *include* many, many technologies that do not fit under the ".NET" umbrella (if strictly defined as the C#/CLR pieces) sport the brand. Even VisualStudio.NET is not completely a ".NET" thing.
So, my very firm advice and solemn plea is for Mono completely to drop *ALL REFERENCES* to ".NET". It is doing them no good whatsoever and just confusing people. It is not clear at all what ".NET" really is, and I'm afraid the Mono team have been roped into Microsoft's marketing machine, not realizing what's being done to them. In addition, I think that ".NET Framework" is equally muddled and confusing. I would recommend that they refer to Mono only as an implementation of the C# and CLR specifications as outlined by the EMCA standards body, with a link to those specific standards.
Otherwise, they are showing a complete ignorance of basic marketing. They are simply reinforcing Microsoft's brand in a very significant way, not just implementing their technologies. This may not be so bad, but one thing that Open Source/Free Software *really* *really* *really* desperately needs to get better at is marketing, if it ever hopes to get beyond an also-ran technology implementor of other peoples' technology. Take a small lesson from Firefox. If Microsoft released a XUL clone, integrate it with some parts of XAML, and changed the name of Internet Explorer 7 to "InternetExplorer.WEB", I would sincerely hope that Mozilla would not start calling Firefox an "Open Source implementation of the
The world of programming has gotten better and be[tt]er over the years. It used to be that you had to have to deal with punch cards or programming right on the metal itself. But in recent years development environments have improved tremendously approaching the ideal: ANYONE can write software even if they don't understand programming.
Take me for example. I work for a Fortune 500 company that is currently working on NextGen database products. I'm the chief software designer. Back when I was in college in the 80s, programming was a black art known only to nerds who wore underpants on their heads and uttered dark incantations. I never really got on with those guys because they just weren't popular enough and they smelled kind of funny.
But thanks to the miracle of the 90s, I am now a software developer myself. My dev suite is comprised of Photoshop (for mock layouts of the UI), Macromedia Flash and MS PowerPoint. With these tools I am crafting the nextgen interfaces that are what put my company at the top. We are drawing lots of attention and turning lots of heads with our products because only we know what the users want these days. Our database product is an award winning package that combines the ambience of Myst and Riven with an Oracle backend and a hint of The Matrix. Users want cool looking apps, not some archaic software that just displays data. Why settle for an app where the text is just displayed in a scroll box, or worse through a terminal emulation program like WRQ Reflection? Our app flys in the text from the side and makes the text sparkle like you see in the intro to a lot of movies. That's the key folks, don't look to Silicon Valley for great software ideas, look at Hollywood. They get it right.
Since I'm a generous guy, I'll share some suggestions about how to design great apps these days:
1. Always make sure that you focus on making the UI look as cool as possible. This requires the use of many tools to make sure that the interface is going to make the user look as good as possible.
2. Always add more features to your application because nothing helps users more than new features. And make them sexy. I'm not talking about adding automatic spell checking or useless shit like that. I'm talking about syncronized sound effects that reflect the actions on screen like you see in the best films.
3. Pervasive use of MPEGs. Our company got away from the old practice of using stupid 16 color icons for button functions and the like because we realized that this was confusing to users. Most of the time those images didn't mean much. Instead, we replaced them with full MPEGs running in loops to represent every possible function a user might do in the real world.
4. Watch all the latest blockbuster scifi films that make use of computer interfaces. The geeks get UI design wrong every time. Only Hollywood knows how to make cool looking UIs and only the best software designers know to take their cues from the film industry.
5. Require that your customers have the most powerful boxes to run your programs. We can't be bothered with idiotic businesses that want to keep desktop systems with PIIIs and 256 megs of RAM. How the hell are you supposed to expect the software to run properly? We tell all of our customers that they must upgrade all desktops to the following minumum requirements: Pentium 4 2.5 GHz or better, with 1 gig of RAM. That just barely keeps up with our advanced software, but it's the minimum. (Alienware makes the best business machines we've seen)
It makes me laugh when I see you geeks trying to come up with new programming languages and platforms. Mono. What a joke. You call that progress? I don't. Keep working on more tools like Photoshop, Flash and PowerPoint. That's where development is these days. All that antiquated complicated crap is just mental masturbation for losers with no life. I read an article recently about a company that is working on self writing software. If these guys succeed, and they partner up
-"...bad old ideas look confusingly fresh when they are packaged as technology" - Jaron Lanier (Digital Maoism on Edge.o
MS cant change the standard, because that would break all apps developed for it (not just for mono)
also they cant add too many things to the standard because people will get bored of upgrading a 200mb runtime environment every 3 days
How is this not like life?
Ford Explorer -- does that also access the internet?
Hyundai Accent -- is it about the korean language?
Honda Accord -- music perhaps?
People make names which they feel are the best for something. They rely on something's ability to be good at it to spread the love, so to speak. If it's good, people will remember it. If it's not good, it goes away and it's no issue. Do you really like how people went to ultrageneric names and domain speculation on the Internet? Pets.com? Mail.com? News.com?
Take a look at things which people remember. What about Napster implies filesharing? What about Suprnova? What about Google implies searching?
Naming is a magic game. Just because you don't like how others play it, does not mean they are playing it wrong. This whole "incorrect naming" meme is stupid and pointless. Start thinking critically about what you're saying before you repeat it everywhere.
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
Yeah well...I hear that Open Source is a total whore. Anyone who wants to can 'get in'. Bill shoulda known better.
http://xkcd.com/386/
I don't know the detailed inner workings, but it seems like these projects are forever doomed to being a shadow of a "mostly" implimentation riddled with "gotchas" and always a few steps behind. I don't blame the developers in any way, its just we all know MS does not play nice with others.
Java (14080 projects)
C# (2206 projects)
Also, don't forget there is a very interesting ahead-of-time Java compiler as part of the gcc toolchain, gcj. It isn't complete, but it is constantly improving and can now be used to write SWT and Gnome applications. Good stuff!
I hate to see C# getting any uptake when all it is intended to do is allow Microsoft to co-opt all of Java's good ideas while stifling portability as much as possible. It is a transparent Java ripoff.
Galileo: "The Earth revolves around the Sun!"
Score: -1 100% Flamebait
I don't have anything agains mono, and the C#/java seem pretty much identicle to my mind (There's nothing that compelling that one has thats not in the other).
.net apps that might run on linux if you didn't use this package or that package.
Its great to have a language that can come installed with linux (java cough* cough*). However mono ultimately will work OK, but will drive developers to windows in droves because of the better deveopment environment that Visual Studio.net offers.
I fear that ultimately there will be mono apps that can run sometimes on windows (if you install gtk# etc...etc.) and
Mono has its place, but I don't think cross platform apps is going to happen.
By extension, you could just as easily say that the implementation language never matters, it's all just a Turing Machine(*) anyway. Except it does matter. Support for cleaner syntax, extra type checking, virtual/non-virtual method dispatch, etc. all matter when implementing an OO design. You can avoid whole classes of bugs by having proper language support, and programmer time can be reduced considerably.
(*) We'll conveniently ignore the fact that computers aren't really TMs here. The point is still valid.
HAND.
Let's get it out of the way here. Everyone who's going to post about C# and .NET being controlled by a big, proprietary corporation that has been known to crush competition, post here. Meanwhile, ignore Java and Sun.
What are these good bits of which you speak? Or are we (yet again) confusing Java, the language, and Java, the platform? An argument can be made that the C# language learned and improved upon the Java language's experience. On the other hand, comparing the two platforms (i.e. runtimes and libraries) is a whole different bag. Granted, C# and .Net are possibly the best technologies to use if you are developing Windows applications.
But, to assert that these are the best options in any other environment is simply ludicrous.
Mono is in no way as mature, stable, feature rich (you name it) as the Java platform.
Pray tell where is my Mono equivalent of Jakarta, Java3D, Maven, HotSpotVM, Tapestry, Eclipse, Netbeans, IntelliJ, yadatada?
When you find them, then come back and tell me C# has "all the good bits."
Mono may have the potential to become what Java is today, but its not there yet.
I read
What are these good bits of which you speak?
Or are we (yet again) confusing Java, the language, and Java, the platform?
An argument can be made that the C# language learned and improved upon the Java language's experience.
On the other hand, comparing the two platforms (i.e. runtimes and libraries) is a whole different bag.
Granted, C# and .Net are possibly the best technologies to use if you are developing Windows applications.
But, to assert that these are the best options in any other environment is simply ludicrous.
Mono is in no way as mature, stable, feature rich (you name it) as the Java platform.
Pray tell where is my Mono equivalent of Jakarta, Java3D, Maven, HotSpotVM, Tapestry, Eclipse, Netbeans, IntelliJ, yadatada?
When you find them, then come back and tell me C# has "all the good bits."
I read
Right. So by that logic, you can write OO code in machine language. (Which you can't, by the by; no processor on the market today has a "frob this object" command in its opcodes.)
I wonder when this "OO is just a style" meme will die. Guys, we have different computer languages because machine language is icky. (Have you ever hand-hacked applications using debug.exe? I have. I didn't like it and I'm not going back.)
In order to guard our precious sanity from the frozen wasteland that is raw machine language, we've invented formal languages in which it's possible to describe mathematical constructs in terms of various different metaphors. PROLOG uses pure mathematical logic as a way of approaching the problem domain. Instead of raw 1s and 0s, we escape from it altogether and we get to think in terms of bindings and clauses. (Variables? What are those? Functions? Don't need 'em.)
LISP uses set theory to do the same thing. Learn set theory in and out and you'll discover interesting niches of LISP, and come to appreciate its alien beauty.
What's C? C's a portable Assembler that's been kludged up over the years. That's not an insult--sometimes what you want is a portable Assembler with 30 years of hacks on the side, because those hacks are what give it such power. The C language is designed in such a way as to make kludgy hacks easy to write, which is sometimes a great strength.
The languages we use lend themselves, quite directly, to how we think about problems and how we decide to solve them. As such, it makes absolutely no sense to say "well, you can do OO in any language." Sure you can. All Turing-complete languages are equivalent. But at that point, why don't you go back to machine code? That's Turing-complete, too.
When you've bled from your eyeballs on the raw binary, then come back to languages. Discover what each one brings to the table. Discover where they're superior and where they're inferior. You might discover a lot of new things along the way.
Just from today's news...
Genetic Algorithm in the Kernel
That's because they keep thinking "Linux-only". It's not "I'm going to make a cross-platform app using C#", but "I like C#, I'll use it on Linux".
WAKE UP, GUYS!!!
If you want Mono apps to run in Windows, perhaps you should take a look at wx.NET.
From the link:
(end of snip)
Take two very good cross-platform things (.NET/Mono, wxWidgets)... a powerful combination like this could jeopardize Microsoft's monopoly if you ask me. And that is always a good thing.
GoMono!
Actually, reading that statistic I was impressed by how well C# is doing -- 1/7th as many projects as Java, and really all in about 2 years, and in the OSS community which isn't exactly MS's core area.
I think MS have recaptured a bit of their old magic here, in lowering the 'energy threshold' required to get a project going. That's what made VB and Excel so ubiquitous -- I'm not saying that that was a good thing, but it sure worked. The work you have to do to create, package and distribute a
Of course, I'm far from declaring victory for
Whence? Hence. Whither? Thither.
It's a 20MB runtime environment, and a 200MB SDK envieronment.
They have already announced MSLinux (see http://www.mslinux.org/), it was supposed to have shipped Nov 2003, looks like it has been delayed again :)
We actually agree, it's just that I felt you being a bit over the top with that one statement. :)
HAND.
How is this question flamebait?????
that is not right.
a man, a plan, a canal, panama
I am still steamed that Microsoft sucessfully (?) hijacked the term in the first place. Considering that it is a internet standard TLD designatator for network domains (originally... now just another TLD) it would seem that it should be off limits for trademark use as regards to computers.
.NET due to it being in the same or related industry.
Remember, trademarks are specific to a particular industry, and involve whether customer confusion would result. For example, it would be no problem if a fishing supplies manufacturer created a new fish harvesting device and trademarked it as the ".NET" fishing net, because that is in a different industry. But if I created software.net domain it now sounds like it MAY have something to do with MS's
Put another way, I could not trademark "facial tissue" because it is a generic term. For similar reasons, "Kleenex (R)" has to try very hard to keep its trademark from becomming a generic term, or risk losing it altogether.
McFly777
- - -
"What do people mean when they say the computer went down on them?" -Marilyn Pittman
oh right, but still, 20meg is still too much for dialup users, which are still common.
.net environment was distrobuted with every app that required it and it checked to see if it was newer than the one installed (like directX), they could get away with it. shit.
come to think of it, directX is distrobuted with every game that requires it, so if the latest
Ten cars which sound like Robert Ludlum novels:
1. The Honda Accord
2. The Isuzu Axiom
3. The Buick Rendezvous
4. The Mazda Protegé
5. The Alfa Quadrifoglio
6. The Diahatsu Charade
7. The Lambourghini Murcielago
8. The Mitsubishi Endeavor
9. The Oldsmobile Intrigue
10. The Subaru Legacy
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
Now you've written a whole lot to make clear that you think mono opens up open source for litigation from MS. The only thing that's missing is an argument as to exactly why writing an implementation of an open standard should pose such a risk.
Now I would readily agree that there are probably parts of the mono project that could turn out to be problematic, like implementing winforms, which is afaik not part of the standard. But, and that's really the important point here, mono itself and all the programs mentioned here written with mono and gtk# wouldn't be affected by any MS legal assault on mono's winforms implementation.
So what exactly makes you think that mono is such a huge risk?
It's Mono 1.2, not 2.0, that's coming on May.
I'm primarily a *nix developer, but this Mono implementation of
A good portable way to write programs might be to write the application core in standard C++, then write the UI in C#/Mono on *nix, Obj-C on OS X, and C#/.NET on Windows.
Thoughts?
I love Muine, but I don't like how I have to install a bazzillion dependancies to run a "light weight" mp3 player. Seems contradictory. If and when the application and all the dependancies work, the final products (at least the ones I've seen) are really nice though. I still prefer Muine over just about anything. I'm looking forward to trying BlueFunk.
Keep up the good work Mono team, I love C#, and I love how you are brining it to *nix.
I can't think of anything the GNU system needs less than another bloated Windoze language port. The list presented by the article was unimpressive - mostly just sleezy C wrappers and ill conceived "frameworks". Nothing with any legs. It is regretable that the good effort that goes into Mono isn't channeled into better C and C++ API's. Oh well, free software means people are free to waste their time.
an ill wind that blows no good
1. Mono is an implementation of an open standard. That this standard was developed by MS doesn't change the fact that it is an open standard. This standard is not controlled by our Redmond friends. Sure they are free to add new things to it, but that doesn't really affect mono, as mono as it is now will still be available and all the apps written with mono and gtk# will still be available.
.net as cross platform, MS has been very aware of mono and can be shown to have been very aware of it and on top of it they even worked together with the mono devs, so claiming that, oh, we just found out that something terrible is going on here probably wouldn't have any chance to stand up in court.
2. I agree with your "appreciation" of MS bussiness practices and I readily agree with you that MS wouldn't shy away from even the most disgusting legal assault on open source if it thought to profit from it. But this holds true with mono and without it.
I think one can even argue that attacking mono would be the stupidest thing MS could do, as, again, it's an open standard, MS is marketing
That's because they keep thinking "Linux-only"
Yes, and that's a good thing. I don't want cross-platform apps, I want the best apps possible for the Gnome desktop. I don't get the best apps possible for the Gnome desktop if people waste their time worrying about how their application is going to look on Windows or OS X. The whiners on those platforms are only going to complain that the application doesn't look "native enough" anyway.
Microsoft doesn't lose focus by worrying about how to port their apps to UNIX and neither should Linux developers worry about how their applications look on Windows. When Microsoft does create applications for multiple platforms, they hand-craft them for each target platform.
Mainstream applications shouldn't be cross-platform; it's a waste of time and results in a poor quality user experience.
What if MS came out with MSLinux
New! Improved! Microsoft Linux!
Don't be fooled by those inferior Linux products from the likes of Red Hat and others.
Buy only Genuine Microsoft (R) brand Linux. The Linux that Microsoft has embraced.
Yes, folks, Microsoft Linux has everything that you'll find in those other Linux knock offs. But Microsoft Linux has extended Linux with many great new patented features that set Microsoft Linux way ahead of the others. These features will extinguish the competition.
Using Microsoft Linux, you can still run every program written for those other generic Linux systems, while enjoying unique features found only in Microsoft Linux.
But wait! There's more!!!
Microsoft Linux is the only Linux that can run all your favorite programs, inclucing Excel, Word and Outlook, and many, many more! Now how much will you pay!?!
Order Now! Don't be left behind! Get in on a leading edge technology, from a leading edge company like Microsoft.
Unlike other brands of Linux, only Microsoft Linux has the stability, quality, and security that you've come to expect from the Microsoft name.
Limited time special offer!!! For a limited time, get a copy of Microsoft Linux for FREE! when you order Microsoft Office at full retail price! Remember, this is a limited time offer! This offer could be withdrawn at any time after our competition disappears! So hurry and order now!
[_] YES! I want to pre-order Microsoft Linux!
Enclosed is a blank check. When Microsoft Linux is ready to ship, please fill in the amount and then rush Microsoft Linux to me!
Those who would give up liberty in exchange for security and DRM should switch to Microsoft Palladium!
I use mono on both my main development platforms, Linux (SUSE) and Windblows,(sorry guys/gals, most my pay comes from M$ clients.)Mono and eclipse are my major Xplatform tools. It is fun to work with mono and I am always looking for more and more functions and libs. Infact I have two sets on each platform, dev and cvs /SVNversions.
I am getting ready to provide some patches, if accepted
Actually, Samba doesn't need to be Windows compatible to be useful either. Aside from the many other devices that speak SMB (many NAS units, etc), there's also the not insignficant matter of the POSIX extensions in Samba.
I'm increasingly inclined to view CIFS and Samba as an NFS alternative for Linux that does't suck. I'm hoping NFS4 turns out well, but I'm not holding my breath. We do need something to replace NFS, and we need it about ten years ago.
I use debian and compile mono from svn every day.
Maybe you need to post details of the failure so we can tell you what's wrong in your system (likely you are still using an old automake, maybe you installed a new one, but still use the old one).
If you use the packaged tarballs there are no compilation issues on debian.
For each item on your list, you'll find previous examples that don't originate from Microsoft. Granted - some of them may not be as directly related as others. But there's a lot less "innovation" than it sounds like you're expecting.
Remind me again where anyone associated with Linux has used "innovation" as marketing or moral justification? If you look at Linux and the Unix culture it more-or-less spawned from, you'll find that it comes closer to evolution than "innovation". This environment recognizes the process of building on previous work.
This doesn't mean Microsoft hasn't done particularly clever things - even "innovative" things. Nor does it mean that Linux (and similar environments) are all about copy-cat and incapable of having similarly cleaver things happening in their environment. But it does highlight the apparent importance given to "innovation" by each environment. And that is the crux of that particular Microsoft criticism.
Which has little to do with all the other criticism that targets other aspects of Microsoft's business.
Unfortunately, the latest stable release of MonoDevelop will not compile against Mono 1.1.4. If you need an IDE for your Mono work, you would have to check out the Mono sources from SVN. The SVN version of Mono also has its dependencies, many of which also would have to be checked out of SVN repositories. So, while Mono 1.1.4 is available, for the time being, I have to stick with 1.0.6 in order to continue working within an IDE framework.
a start menu - OK, I use that sometimes
taskbar - no way, I have my Gnome set up Mac-style
integrated filesystem/internet browser - you have to be kidding: what has web browsing got to do with my filesystem? I use Firefox for the web.
C# and .NET - I don't use either of them, but if C# is a half-decent language I don't object to apps being written in it
Remind me again what Linux has actually innovated first?
OK, I know that much of the above doesn't impact on the regular user most of the time, but it's worth remembering that the taskbar idea was stolen from RISCOS, integrated filesystem and web browser is a stupid idea anyway - about the only real innovation in GUIs from MS was the Start menu. It's good - but one true GUI innovation in 20 years from a multi-billion dollar company really isn't that great.
C# is an ECMA standard (which of course with generics et al Microsoft is breaking). This is NOT open, and certainly not in comparison to Java.
The Java Community Process go to the site and have a look at the "closed" and unchangable monstor that Sun has created. I mean its just scary to think that Java 6.0 is ASKING FOR JOINERS, to input into the next standard.
How would you become an ECMA member and propose changes to C# ?
An Eye for an Eye will make the whole world blind - Gandhi
"with 'super-hits' like Tomboy, F-spot, MonoDevelop, Muine & Blam!"
... funneh.), that stupid projector and powerpoint setup and you pitching new support and installation services for some really cheap software ... like free ... beer and speech. You're calmly cruising through the lists and what each does. With a nodding of heads and whatnot they listen to you drone. Then you jump forward and scream, throwing your hands out:
Keep that in mind for a sec. Disclaimer: i use GNU/Linux, support the EFF with real $$, and buy boxed distros when available.
Having said that, heh, F/OSS program/suite names just crack me up sometimes. i was doing fine until that last one.
Picture this: Dimmed boardroom (lolz, yes lights and minds
BLAM!
Swear all of holy hell, you're goin' to jail for dropping 4-6 members with heartattacks. Not good for business.
k. i'm done now. Sorry, i'm bored.
Disclaimer: I am the founder of Zamples, Inc. Go gently on our servers, they probably won't survive being slashdotted!
Here is the Mono challenge:
.Net or Java ?
.Net is supported by Microsoft on their platforms and app servers, so this would be my best bet for applications targeted soely for Windows.
Why should I use it instead of
To be blunt, I have some severe misgivings about the vision and usefulness of Mono.
Java explicitly supports multiple host operating systems, so this would make it the obvious choice for crossplatform development.
Why then should I use Mono instead of these environments ?
What distinct advantages does Mono have over either of these established and supported platforms ?
I second the motion. I have personally dealt with end users and potential customers who believe that ( .Net == Mono) and managers who have chosen .Net for a development solution over Java based on the misconception that Mono is a crossplatform (ie. Unix/Linux) runtime environment for .Net.
while (!asleep()) sheep++
You'll need to wait for version 2.0
% mkdir
% ls -dF
Yes, we all know about the patents (2.5 years ago), and we also know that you don't like Mono because it's Microsoft stuff, and we also know that you have 0 influence over what anybody else does.
What's the deal with web forums and IRC where people with personality disorders actually think that they can tell people what to use and what not to use?
I guess it's one of those geek things, where in real life they get shoved around all the time, so behind the keyboard they falsely assume they have influence.
Have you EVER used wxWidgets? No, have you even READ TF website?
wxWidgets is NOT an EMULATOR layer. It's a parallel implementation of an UI using the Native OS's widgets. From the wxWidgets site: "the open source, cross-platform native UI framework
with twelve years of evolution behind it".
It's not about how a widget should LOOK or FEEL. It's about using THE SAME CODE to make a program.
They even got a PalmOS version now.
Maybe for your small needs you don't need cross-platform. Maybe you're happy crunching bits and recompiling the most of your kernel, but you're certainly not the average Joe User - and that's a majority that has needs. These people right now are screaming when their machines are being invaded by spyware, viruses (and coming soon, rootkits)
. These people need to escape. And cross-platform applications is the way to go.
But if you really want to help people migrate from Windows to a safer Linux environment without losing their friendly commodities, at least you should give programmers the benefit of the doubt.
I AM a windows user. But I'm planning on migrating. And I want OTHER people to migrate to Linux. Linux doesn't belong to elitists... it belongs to the world, that's why it's Open Source, and GPL licensed. So please, stop building iron walls and let the Windows prisoners escape to a safer world.
After all, don't you want to be among the ones who were there, the day Microsoft died?
Certainly, I do.
*lol* Yeah I also got a good laugh then I looked at that list of "high quality" Mono software.
So where are all the big iron industrial strenght enterprise applications?, like what Apache project is doing with Java.
That's what it seems like the /.'ers who don't like Mono and C# are saying, that anything from Microsoft is automatically bad, and must not be adopted.
I got news for you, C# is a great language to develop with. Don't adopt it if you don't want to, which is fine with me, because that means there will be more jobs for me.
There are issues running Mono on FreeBSD because FreeBSD has broken thread libs. Some of the fixes are in the latests 5.x releases, but there may be still more issues.
Are you a hacker?
Are you thinking about using mono?
If you answered "yes" to both of these questions, then Microsoft litigation might be exactly what you're looking for!
The patented libs in different part of build tree and ready to be yoinked at the first sniff of patent wars. Its amazing how the same stuff seems to popup. I posted about this in Mono: A Developer's Handbook (SEP2004).
peterrenshaw ~ Another Scrappy Startup
if the latest .net environment was distrobuted with every app that required it and it checked to see if it was newer than the one installed (like directX), they could get away with it
.NET Framework 1.1 Redistributable
That is exactly what is done. The framework redistributable is available here:
TODO: Insert witty sig
Have you been living under a rock? MS Linux has been out since November 2003!!
Lack of webservices is a major stumbling block for my development team. We'd love to be runnning on Mono vs. .Net, but the lack of even a light at the end of the tunnel for web service integration is keeping LOTS of developers at bay.
Also, the list of dependencies to run monodevelop is astronomical. After my 7th or 8th trip to google to find some arcane dependency, I gave up. I think it's better if you are running gnome, but not much.
wxWidgets is great, but cross-platform Nirvana it isn't. There are various aspects that aren't or can't be translated automatically: menu layout, keyboard equivalents, widget placement. A wxToolBar on Mac OS is a row of shiny Aqua buttons, not an HIToolBar. It can rearrange an Apply/OK/Cancel cluster, but that doesn't help when the HIG say preference changes should be immediate. I'm glad to have wxWidgets in my toolchest, but for many apps modular code and native frontends will offer a better user experience.
Actually, Ford Explorer would be closer to the original meaning of the word "explorer" than Internet Explorer was.
Karma: It's all a bunch of tree-huggin' hippy crap!
Which raises the interesting question of whether we should be looking for another level of abstraction for GUIs beyond widget toolkits that let you write one codebase that then applies the HIG rules of the platform (which, of course, have to be something formally codified rather than just a spec document) to generate a (relatively speaking) HIG compliant UI.
...) automatically make applications conform to HIGs. Therefore, if you write cross-platform applications using those toolkits, you either end up with a poor result, or you have to invest a lot of effort in each application, not only implementing the HIGs, but also fixing those areas where the cross-platform toolkit deviates from the target platform.
Well, you go looking, and if you figure out how to do a reasonable job at building such a high-level GUI toolkit, you go right ahead and share it with the rest of us.
Until then, however, the fact is that we have to work with what we have. And none of the cross-platform toolkits we have (Swing, Qt, wxWindows, Tcl/Tk,
Again, successful commercial companies like Microsoft or Apple don't waste time on this for mainstream apps: they develop for their desktop, anything else is secondary. Linux desktops need the same focus if they want to compete.
Either that or they just invalidated Microsoft's .Net trademark since MS didn't enforce it by coming after them. :)
That would be sort of funny.
Having recently considered learning C#/Mono, a few things bugged me. Firstly, it was not easy to find a tutorial more complex than Hello World but less complex than "oh, look, we're going to be making a wordpad clone". Considering that it is much easier to program with C and GTK, or C++ and QT or GTK--, it will take some serious work to make Mono attractive if you're looking to attract the people who don't need Windows compatibility.
In the case of Eiffel I really think it's a case of not offering anything truly significant for programmer productivity. I mean, yeah, Design by Contract is generally a good idea, but it's nothing assert() and good coding standards can't provide. Non-trivial "contracts" can't be verified until run-time anyway, and assert() works just fine for that.
In the case of CSP... I must admit I'm not too familiar with it, but to me it seems rather like a restricted subset of purely functional programming. Of course, Occam is much lower level than, say, Haskell, but AFAICT all the CSP concepts have direct equivalents in Haskell, and the type system in Haskell is much richer. Given the choice I'd rather program (applications!) in Haskell.
(Anyway, I'm certainly no fan of C# or Java... their type systems are just too wimpy for my tastes...)
HAND.
Hi,
This is on behalf of the 3 guys who were mentioned, we contributed to the mono project as it was previously said, our contacts were Lluis & Miguel.
We didn't decompile the
Rotor is a SHARED RESOURCE, which means it can be used LEGALLY for studying, but not for commercial purpose, here is the link for the rotor license (http://msdn.microsoft.com/MSDN-FILES/027/002/097
We would like to thank the MONO team for giving us the opportunity of contributing in this project, it was very usefull for all of us (team members), and wish them the best of luck in finishing it.
The problem is more a political one. On Mono, future language extensions are dictated by Microsoft. The Mono developers could of course extend their VM in any way they want. But they would loose compatibility with Windows.
Yes, and that's a good choice: it's the way, C, C++, and lots of other languages have evolved. If Microsoft does a good job with evolving the language (they have so far), people will follow it, and if they don't, people jump ship.
On Java everyone can join the Java Community Process (JCP). Membership is free and every member is entitled to vote and can even run for election.
In order to become a member of the JCP, you have to sign a contractual agreement with Sun Microsystems. As a result, you invest lots of work, and in the end, the fruits of your labor are owned by Sun. That's a bad choice. In fact, I'd call it a scam.
Furthermore, because of Sun's draconian compatibility requirements, you are not free to change the language or libraries any way you like, even in your own implementation. That's, among other things, why Java has stagnated technically.
what CSP is, actually, although details are a little fuzzy... I was introduced to it on one of those wet conferences. Apparently you just don't see the same connection between pure FP and CSP which I see... Let me see if I can explain more thoroughly:
My thinking is along the lines that e.g. the seq (is that the name? Like I said it's been a long time...) operator in CSP maps onto the "do" monad, likewise the par operator in CSP maps onto a parallel execution monad, etc. etc. The pure functional nature of Haskell means that there are no nasty side effects (aside from monads). So threading is basically trivial given enough knowledge about the properties of the compositional monads. The trouble is obtaining that enough knowledge about the monads to be able to parallelize effectively. In Haskell, monad behavior is (essentially) arbitrary, but in CSP you are restricted to a predefined set of compositional operators (monads). The fact that they have predefined concurrency semantics means that parallelism is "built into" the language and so the compiler can make assumptions that Haskell compilers cannot -- thus enabling more parallelism.
I hope that clears up what I was talking about.
HAND.
There's an option for it somewhere
:)
This surely is the expression I read most when the topic is KDE
"When I first heard Daydream Nation it quite frankly scared the living shit out of me." -- Matthew Stearns
Hi, I agree with what Ahmad Tantawy and Ahmad Kadry have mentioned. I would like to add the following: 1- We consulted Rotor code for the Http client channel only, that was ambiguous at that time and we needed more information to understand how URLs are dealt with. This is the only part where we looked into Rotor. If anybody has the chance to look into our code and the Rotor code, will definately find differences, specially on the server channel side. 2- Miguel mentioned , that the code has been mostly changed and the remaining is broken. Well, I would expect so, for many reasons, one of them, is because that we didn't not do deep exception handling which we did admit so. Simply because, we anticipated that alot will be changed as the mono framework becomes more mature. On top of that, Mono V1.0 wasn't released yet, and therefore you could imagine the bugs and incomplete classes and namespances that were not implemented at that time. So for us to implement most of the functionality, we had to use the best out of what was available but at the same time is not good enough to stay forever and has to be changed when the framework is mostly completed. An example was the Socket class and how you had to loop until all the data you want to send is actually sent; which contradicts the standard .Net Socket class.
I believe that contributing to mono was a great experience, and it was so only because we did not copy code from somewhere else!!
Hussein
I think C# is a hideous language with lots of structural problems, but at least it's open to anyone who wants to implement the ECMA standard. Java is so terribly underspecified that half the time you end up guessing what behavior happens in certain circumstances, and if you're an implementor of a non-Sun JVM the only disambiguator is Sun's implementation of the JVM. Which means that it's not a standard, but a reference platform.
With an open standard, if there are disagreements about what the standard means, MS can't just change the spec to match their implementation (like Sun can with Java).
.Net and the CLI are an ISO Standard. Microsoft cannot sue them for implimenting a standard.