The first release of the Mono port of SharpDevelop, MonoDevelop, is up, here are the release notes (additional screenshots 1, 2). There are no binaries yet for it, but gtksourceview-sharp rpms have been put onto the Mono Red Carpet channel. You will also need the latest version of Mono built with ICU support and the latest GTK#.In the meantime, SharpDevelop .99b was also released: this is a stopgap release in between milestones. They have improved VB.NET code completion, fixed a lot of forms designer bugs, made the VS.NET solution import/export more robust and replaced the original C# compiler options dialog with a property grid for easier future extension.
Is a fantastic bit of work by Todd and the rest of the guys. It will be very interesting to see how this pushes adoption of (the still immature) mono.
It is finally possible to have code completion for C# on linux
Finally, if this version works well enough, then I’m ready to start doing some .NET coding on Linux!
same for me!
Great work! Congratulations! IMHO it is the best IDE for C# under linux.
would have been nice to see some sort of Glade integration on the list of future goals?
>> would have been nice to see some sort of Glade integration on the list of future goals?
Better question: does anyone actually whant Glade integration?
/me thinks it’s better to create a new and more useful GUI builder.
From http://www.monodevelop.com/about.aspx
Today the IDE is a simple IDE and on Unix does not do GUI design (that is limited to SharpDevelop), but we want to add a GUI designer.
Its relatively simple to have Glade open in one window, and monodevelop in another. As long as you reference your glade file from your cs file theres currently no need for an inherent editor.
“/me thinks it’s better to create a new and more useful GUI builder. ”
Just wondering what sort of things you would like to have that Glade doesn’t provide?
Can’t wait for Microsoft to shut this down.
The first enterprise project should do it, just like SCO.
Just waiting for the bullet.
Can’t wait for Microsoft to shut this down.
Let me think:
— mono drives adoption of c# over Java
— mono encourages linux developers to try c# / .Net
— greater potential for .Net adoption by previously linux only developers
— mono does not infringe on any legal restrictions
— mono implements the ECMA c# .Net standard
— there have been linux version of VB for years with no legal problem?
“/me thinks it’s better to create a new and more useful GUI builder. ”
Just wondering what sort of things you would like to have that Glade doesn’t provide?
Can you drag an object to the canvas, double click on that object, write in a bit of code then voila, have a working application in a few minutes? the day you an do that, will be the day that Joe MCSE can deploy Linux/Mono. The unfortunate thing is, that is the benchmark for entry due to the lack of people out there who have not only the skills but the ability to programme.
In a perfect world, no one would use VB, people would use Java, they would deploy it and we’d be in a better place, a place where the operating system is meaningless and the focus is on developing and customising software to suite a task. The fact is, the world isn’t perfect, people are lazy and managers are clueless to the realities of what sucks in terms of long term maintainability of code.
The big drawback for me is that they will *always* be behind the implementation and probably significantly so. .NET is coming up to a 2 version on Mono isn’t even at 1 yet.
It would be very intersting to really know what M$ does thing about the Mono project.
“The big drawback for me is that they will *always* be behind the implementation and probably significantly so. .NET is coming up to a 2 version on Mono isn’t even at 1 yet.”
That is not entirely correct. There is a mono branch that already supports .NET 2.0 features. Since microsoft does not want to make the C# language and the .NET VM spec a moving target, mono will be able to catch up in 2004 or 2005.
You are right about the APIs though. Microsoft is producing a huge number of APIs, and there is no way mono can keep up with implementing all these APIs.
Fortunately you can use .NET productively on Linux without using microsoft APIs, e.g. by using GTK#. So this is not such a big deal.
The approach that you suggest is only suited if you grew up with bread and visual basic.
It’s (to me) utterly confusing, and it really isn’t useful to produce anything well written and mantainable.
With glade (and the other xml based gui description libraries, namely XUL and MS’s next technology, I think it’s called Avalon) you separate the looks of your app from the logic.
You can take the well laid out GUI in the .glade file and rewrite a python app in C or C++ if you like…
…or you can swap completely the look of your app without touching a line of code.
You could even write alternative layouts and load them based on the user preferences!
How is the point, click and code better?
Bye, Renato
Both approaches have their place. The visual basic way is great for one-shot inhouse business applications that solve a particular need and never get updated again. There are many of those. You do not need a concept, and even bad programmers can deliver something somewhat functional with this approach.
Good separation between content and presentation is important if you want to extend and maintain your application for a longer time. Layout management is important if you want to release your application in many different languages. But for the above mentioned small inhouse business applications all this does not matter.
Your comment reinforces my opinion, actually: if your app is so small/simple and to be used very very seldom there is a 1 i 1000 chance that it will NEED a GUI. If it does, using a gui that’s separate from the code doesn’t add really much time to the development. I’ve written small frontends in a matter of few hours this way (python + glade, or python + wxWindow… but i find wx a bit messy).
What most people that come from the MS world don’t understand is the power of scripting. Both shell and advanced (python, perl). I am a *nix guy, but do a lot of work in MS environments: many times I’ve amazed people with 10-20 lines (very simple) scripts to do custom things in python.
(last week I wrote a py script to manipulate some data from an Access database via ADO/COM)
I’ve seen too many HORRIBLE custom mini programs written in visual basic, and sold for good money, to public institutions to have a good opinon on the VB approach.
On the other hand, I’ve yet to see a good VB app.
Really! Even the much praised point and click gui design does not help: VB apps generally have horrible and unusable guis, in my experience.
Bye, and have fun, Renato
wow, my comment says pending review, i didn’t mean to bitch, you can tag a “looks great, good work” onto the front of it!
(i commented about Glade btw).
whoever said Glade needs replacing, i think it should be more evolving, there is no point re-doing all the work they already have.
the Scaffold guys are working with Monodevelop guys to get common code in place for gtk_source_edit etc, i thought it was weird glade technology (and thus a gui editor) wasn’t mentioned on the Monodevelop page, but somebody else has commented who obviously looked harder than me.
so even if you don’t like Mono (and Monodevelop), at least you know its driving the technolgies that will make Scaffold (the new IDE for Gnome) kick ass. Chief amongst these, is the way they are going to manage autotools within an IDE, if you’ve looked at an auto-tools project you’d know if is pretty complex.
i’m rambling, basically, whoever you are, this is good, nice dev tools for Gnome inside a year for C, C++ and C# me thinks.
I have seen my share of horrible VB programs too. But I also have seen horrible python programs written in zope, which in principle permits a very good separation between content of presentation. Bad programmers will produce horrible programs even if you have good infrastructure.
The amazing thing is that these people can produce anything at all in VB.
mono implements the ECMA c# .Net standard
Mono also implements System.Windows.Forms and many, many other API’s that are NOT part of the ECMA standard. This is where MS could shut them down due to MS patents and the like.
I hate how everytime a programming topic comes up somebody has to bash VB. I use VB all day long for fortune 1000 companies, and it gives me everything I need and more.
Yes, VB has a few limitiations but those limitations don’t keep anybody from writing great software.
Saying things like, “The amazing thing is that these people can produce anything at all in VB.” is just senseless bashing.
And “On the other hand, I’ve yet to see a good VB app.” doesn’t make you an authorithy on all vb programs ever made.
Listen folks, I know Miguel and company has been telling you that MS won’t patent the ECMA stuff, but I’m afraid they are lying. MS has filed for a patent on the entire core API for the .NET/CLR. If the patent is granted (and given the bogus patents that come out of the USPTO all the time do you really think they won’t) then the only thing protecting Mono from a lawsuit is a personal promise not to sue from a few MS executives. And you should all know how much that is worth. Now, I know someone is going to reply, “but any patent of an API won’t stand up”… to which I would say … just look at the havoc SCO has caused with claims which are *much* more dubious against the Linux kernel itself. If MS gets the inkling they can tie up a little known technology like Mono for as long as they want. They have *much* deeper pockets than SCO and they *did* author the API’s themselves.
>> Can you drag an object to the canvas, double click on that object, write in a bit of code then voila, have a working application in a few minutes? the day you an do that, will be the day that Joe MCSE can deploy Linux/Mono. The unfortunate thing is, that is the benchmark for entry due to the lack of people out there who have not only the skills but the ability to programme.
Yes, that’s one of the features a GUI builder should have: dragging and clicking widgets, we’re not in the stone age anymore so there’s no point in doing it the Glade way, which is sadly the worst approach to GUI editing I’ve ever seen.
Also, you people complain about VB programmers with no ability to actually program anything good, but how about C/C++/C# programmers who do have the ability to program but not the ability to design a real and usable GUI?
Make it easy for the real UI designers to create a GUI, not programmers only (the Glade way).
Another reason I said Glade support would not be a good thing is because I think MonoDevelop deserves something better than that youknowwhat.
I think some people miss the big picture here…
Mono is not only for making .NET applications run on Linux. Miguel et al are looking for a ‘modern’ platform for Linux development. Till mono, primary language of GTK was C. Now think about big companies who has zillions of coders who are used to C# (I am talking about near future), and think about telling those guys:
” Hey, we will port this app to Linux, open your dusty C books”. Wont work.
C# is the next cool thing. And Having C# as a primary language for development on Linux is a good idea (Although I would not mind having Java as well). There are and will be huge number of developers who are used to coding in C#.
For them, when Mono is mature, it will be an easy task to port their applications to Linux. Right now, as a prev. article suggested, there is no decent Dev Documents for ANY Linux API set. By using mono, you get a decent collection of documentation and zillions of press.
This is good stuff. Regardless of Microsoft shutting down .Net or not, I think Gnome will have a solid development framework.
Is there in fact any tool other than glade available?
You do not understand.
The agreement from Microsoft and HP was to grant a RAND *and* Royalty Free access to any patents required to implement ECMA 334 and ECMA 335.
Read the FAQ
Hi
“Right now, as a prev. article suggested, there is no decent Dev Documents for ANY Linux API set”
are you blind?. check out the excellent qt docs at trolltech.com or fairly good ones at gtk.org
It was not my intention to bash VB programmers in general. As I pointed out, bad programmers will produce bad code in any language, be it VB or python. And VB.Net is a real object oriented language and a first class citizen in the .NET framework. I just don’t like the verbose syntax.
There are a lot of VB programmers who are complete idiots and who probably should not be programming in the first place, but you get this with all easy languages. I guess we have to thank the internet bubble for that.
Sorry if I have offended you.
My personal is that Novell should invest like $10 million into further progressing the port of Sharp Develop to Linux for Grome, and for advancing it’s features. Gnome really needs a great IDE like this.
I’ve used Sharp Develop on Windows and I’ve used KDevelop on Linux. If not for one major crash I had while working with Sharp Develop, I’d say it was a much better IDE then KDevelop, if not just for the superior GUI builder integration.
I just hope Novell realizes how important this product could be for their company.
I have written some pretty good software in Delphi before now. It is very good for R.A.D, which is what some people want. I also write a lot of Java software, and in contrast it takes 3-4 times to do similar things (unfortunately one of my clients requires it).
I would probably use Mono as a backup to Java on Linux.
I see *one* reference to a *promise* by one member of the MS.NET design team for “royalty-free” use of the ECMA standards. This does not an iron clad contract make. Sheesh. One just has to use their head to understand that MS would not have filed for patents on this stuff if they were going to allow royalty-free access to them. All you’ve got is an empty reference to a promise described on an old email list. Where is the actual document/contract between MS and HP? that specifies in legal writing that MS will forever allow royalty-free access to the technologies described in their patent. Show me that valid legal document or all you’ve got is an empty promise which is exactly what I described.
If Microsoft ever tries to sue anyone over Mono, which by the way would be extremely stupid on their part, what consequences, exactly, would that have? The parts Microsoft tries to patent are not irreplacable.
Anyhow, Microsoft probably won’t do anything about it anyway, whether they can or not. Why the heck would they? Mono is just as good for Microsoft as it is for the OpenSource community.
– Simon
Mono is not a part of GNOME, and might never be. GNOME has its own set of development tools, application programming interfaces and libraries which are adequate and documented. One does not need an integrated development environment to develop applications for GNOME or Linux, due to its Unix heritage. This is not exactly the same for Windows and some other platforms.
Heck, hardcore Unix gurus will choose vim, emacs or a simple text editor over the complexities termed IDEs.Mono is a free implementation of the .NET application programming interfaces and libraries. It attempts to compete with Microsoft’s .NET framework.
MonoDevelop is neither a part of GNOME not is it or will it ever be a GNOME application. MonoDevelop is the integrated development environment for Mono, which not a part of GNOME. So can we stop the assertion that Mono, MonoDevelop or whatever is related to Mono is part of GNOME.
I, however, foresee a fork of GNOME based on mono, but that is just me speculating. For a GNOME based integrated development environment check out Anjuta. Its primary focus is on C and C++ though there is partial support for other languages like Java.
Oh, and on a final and personal note, I don’t believe GNOME need Mono, .NET or MonoDevelop. It has survived well enough without them will likely in the future.
I hate zeloits don’t you? Anyway, Monodevelop is looking very good so far. I haven’t tried it yet but if they can get a decent GUI designer (or when a 2.6 distro comes out) I’ll be back on linux! (alas games…) Glade simiply won’t do, and this is speaking from experience. (Though it should stay for C/C++ programmers, then its very useful) I rather not have a form stored as a XML file, there is really no power in that. If you ever seen a Windows.Form project in VS.NET you would realize that the actual window is implemented in code allowing for greater control. I can’t wait for MonoDevelop to add that. Keep up the good work guys!
Well, after reading the FAQs a little closely, it does seem that Mono is targeting GNOME as a base. So one can argue that the future of GNOME and Mono might be related. In any case, I’m off to test MonoDevelop, kudos to their developers by the way.
Nobody ever said it was or will be. You go on to say MonoDevelop is not a GNOME application. I wonder how you come to that conclusion since it uses more of the GNOME API than Anjuta does at this point.
No one is trying to force you into using C# or Mono or MonoDevelop. If _you_ don’t want to use them then don’t. But don’t waste everyone elses time. Those of us who enjoy these new things will continue to do so anyways.
[i]What most people that come from the MS world don’t understand is the power of scripting. Both shell and advanced (python, perl). I am a *nix guy, but do a lot of work in MS environments: many times I’ve amazed people with 10-20 lines (very simple) scripts to do custom things in python.
(last week I wrote a py script to manipulate some data from an Access database via ADO/COM)
[i/]
let me tell you….your special. 🙂 Your not amazing me….this can be done in many languages.
It’s funny how everyone with a keyboard and an opinion is suddenly a lawyer. IP, Patent issues and whether a company sues another one over them are a very complicated matter. I don’t trust people who comment here to have an educated opinion on those subjects.
You want assurances that the ECMA portions of .NET are safe? Will this do?
http://www.ecma-international.org/memento/codeofconduct.htm
Summary: ECMA requires that companies be willing to offer a Reasonable and Non-Discriminatory (RAND) license for their patents before ECMA will recommend a standard using those patents.
Of course, RAND doesn’t mean “compatible with Free Software,” so there could still be an issue.
However, with Jim Miller’s comments at https://mailserver.di.unipi.it/pipermail/dotnet-sscli/msg00218.html, we could argue that “promissory estoppel” gives us the right to use those patents; see: http://en.wikipedia.org/wiki/Promissory_estoppel.
In short, people (Mono and Portable.NET implementors, users, etc.) worked on the assumption that Microsoft would keep their promise not to change the CLI licensing scheme (currently free), and if Microsoft were to change that and sue us, we could use Promissory Estoppel as a defence.
However, this doesn’t cover anything that *isn’t* part of the ECMA standard (System.Windows.Forms, System.EnterpriseServices, etc.), so it’s not carte blanche approval to just implement everything. But it certainly keeps Microsoft from saying “all your code are belong to us” at a later date, and keeps Mono-developed code (such as Gtk#) safe.
All you have their is a statement about ECMA’s RAND policy which != *royalty-free*. How hard is this to understand?
Fact #1: MS has filed for a patent on the core API’s underlying Mono/.NET
Fact #2: There is zero, zilch, nothing preventing them from turning around some time in the future and demanding that every potential Mono developer pay them a very high licensing fee.
All Miguel can point to is a single email from one MS.NET designer promising that MS will have a royalty-free policy. For *many* reasons (hey don’t believe me go ask your lawyers) this does not constitute a legally binding contract on the part of MS. First, it is not written in any kind of legal document, second their is zero proof that Jim Miller was acting on behalf of or had the legal ability to bind MS to a royalty-free policy based on this one assertion.
So, the lesson to take home? You all are counting on a lazy promise by one MS.NET designer that MS won’t charge you. You are trusting this despite the fact that *other* MS executives have said they *will* charge you. You are relying on the good faith of MS. Good luck to you folks, you’re going to need it.
Novell has not looked at the legal ramifications of their .NET clone. I mean, what do they know about patent law. 😕
There is zero, zilch, nothing preventing them from turning around some time in the future and demanding that every potential Mono developer pay them a very high licensing fee.
This is, unfortunately, not a fact: it is an uninformed assumption. If you had bothered to do the research you would know that Microsoft and the rest et al had already agreed to a liscencing fee of “0.00” in complying with the ECMA’s RAND request.
That is 0 dollars, 0 cents. That is a total royalty fee of 0. They cannot suddenly “charge” Mono because they no longer possess the language or the basic framework. It is an ECMA standard. They are in control of C# the language and all base facilities of the .NET platform submitted to the ECMA under the RAND liscence they have picked. It is not a “lazy promise” by a random developer. It is a contract by everyone involved who submitted the specifications to the ECMA. Hey, guess what? One of those people invovled was Microsoft.
Microsoft can go after Mono for the “non-standard” or “non-ECMA” technologies which include ASP.NET, System.Windows.Forms, or any other base libraries that were not submitted for certification and do not fall under the ECMA’s jurisdiction. Since Mono advertised as being “.NET compatiable” Microsoft cannot sue them for trademark infringement; thus, these “proprietary” libraries are their only recourse to attack Mono and not break the contract.
You have all the vast, wealthy resources of the Internet at your very fingertips: there is no reason to start rambling aimlessly when you can look up bonafide’ facts with a few keystrokes.
Show us the money.
You *also* have the vast resources of the Internet to come up with one miserly link which supports your belief. Where is supposed dotted line with MS greasy John Hancock that says that the royalty fee for their patented ECMA technology will forever be $0.00? Please, point it out.
Is it seriously your contention that all ECMA standard tech licensing fees are set in stone for time immemorial? No adjustment for inflation? Seriously, where is your link to the hard facts stating MS will never increase their licensing fee for the patented tech? All ECMA requires is a RAND policy. It does not say that they can’t charge a fee and it most definately does not say that MS can’t increase that fee from $0.00 to whatever price they feel is appropriate within the bounds of “reasonableness”.
All you have to do is post the link and you’ll be vindicated. Put up or shut up.
With the vast power of the Internet and all
http://www.ecma-international.org/activities/General/presentingecma…
From the slide entitled, “How ECMA deals with IPR issues”
And I quote:
“Ecma does not assess the essentiality of patents”
“Ecma does not define the term ?Reasonable and Non Discriminatory? (RAND)”
“Default precondition for acceptance as a member is that company?s declaration to offer RAND terms”
“Licences are not necessarily royalty-free”
So what do we have here? Well, all ECMA requires is participating companies to agree to an *undefined* RAND policy. Nowhere does it require participating members to enter into specific licenses with ECMA. It is up to those participating companies to administer and update their licenses how they see fit. Licenses are not necessarily royalty-free. There you have it folks. All Mono has is a lazy promise by one of MS.NET’s designers. It is not at all clear that Jim Miller was speaking on behalf of or had authority to give away MS ability to collect licensing fees on the ECMA standards now and forever.
It is going to be tragic when MS decides to throw the towell at Mono. It’ll be tragic for all the developers hoodwinked into believing Miguel/MS promises.
If that’s all you’ve got covered, then Mono is an interesting exercise in wasting my time on Linux, but, to do Real Work I’ve got to look Elsewhere.
Can’t wait for Microsoft to shut this down.
The first enterprise project should do it, just like SCO.
Just waiting for the bullet.
IMHO in this case the linux desktop (and problably the server also) will dead. When the Longhorn application modell (witch is based on .NET) will replace the present web technologies (javascript, flash, java applets) in the most of websites the linux clients can’t browse the internet without mono. And if your web client is windows, easier to create windows+.net based server side appication then linux+java. And IMHO M$ never will port .NET to linux (I can imagine $C0, Solaris, and MacOS ports of .NET, but M$ hate linux). In this case the linux will dead.
http://www.oreillynet.com/pub/wlg/4526
On the patent issue:
Don’t many companies that release their stuff under EMCA retain the patents? The creators get patents but agree to lend them out. Or am I missing something (this is pretty much OS in general)?
On the progress of Mono:
I tire of people playing the “catchup card”. Think how long MS worked on .net before it was released so mono could be started. They are almost to 1.0 now, this is very impressive considering how much they had to initially catch up on. From 1.0 the catchup is very small in comparison. Will they implement all the API’s? No. But MS won’t have a ton of linux API’s that will be very good too.
On Mono in General:
There are just too many people that will never believe that MS has come out clean with some of their stuff. It made sense for MS to release this stuff to an organization since that would ensure better adoption of their technology. I mean it’s a C language (even if only in name), meaning it looks clear that their intent was to have a standardized language like C/C++. MS actually has one of the better histories on patent issues. If you want to see a bad company look at our new-found hero IBM.
>> Linux will dead
What the hell are you talking about?
When (and IMHO not IF) longhorn’s application modell will replace the traditional web technologies (flash, java applets, and maybe javascript) you can’t browse the internet without .NET support. In this case the desktop side of the linux will dead without mono (or dotgnu) project. Nobody will use a desktop system without internet browsing capability.
You can use linux only on the server side. But far easier to create a web application with Visual Studio 2003 + Web forms then PHP or Perl or Java. Especaially longhorn modell web application when the client and servert side is in very tight bond. Most of companies will use .NET to develop web applications and the linux rolled back to hobbi OS.
Hi
“When (and IMHO not IF) longhorn’s application modell will replace the traditional web technologies (flash, java applets, and maybe javascript) you can’t browse the internet without .NET support. In this case the desktop side of the linux will dead without mono (or dotgnu) project. Nobody will use a desktop system without internet browsing capability”
you are assuming too much here. lets take mac+linux+several other non windows platforms to be around 10 percentage and the entire computing industry to constitute of 100 million people developers who abandon all of existing technology(which has a remote chance) for proprietary non cross platform technology will alienate 10 million people which doesnt sound like something that will happen any time soon. just dont overestimate a success of this technology.
jess
Let see the webpages. The most websites says: this page is designed for IE with x,y resolution. But you can see this pages with Mozilla, Konqueror, Opera only the web designers ara to lazy to test this pages and not care with not IE users. IMHO if .NET give a simpler and more powerful way to create interactive web sites, the web desigers and coders will not care with the linux and mac users. And I can imagine the official port of the M$ .NET to Mac OS X and the commercial unix systems (SCO,Solaris, AIX).