Mono and .NET - An Interview
all-of-the-dot writes "Would you use an open-source implementation of the .NET Framework? Ximian's Mono project enables you to build .NET apps that run on Linux and Unix as well as Windows. Check out the story from .NET Magazine's interview with Miguel de Icaza, Ximian cofounder and CTO" Added to which, AirLace writes "The Mono project has just achieved full self-hosting on Linux. While the C# compiler, itself written in C#, has been able to compile itself since March, Mono can now compile its own complete set of class libraries too. This announcement closely follows the release of the Phonic media player, the first .NET application for the GNOME desktop."
We all know how MS feels about non-MS operating systems. We all know they're using .NET as a way to lock people into Windows servers and desktops. There's NO WAY they're gonna hang out and let poor Linux play in their reindeer games.
No...they'll go ahead and change their infrastructure so that it doesn't work with open source code.
That this "phonic" thing, built with the ultra-portable .net dealy, still only runs on linux (or at least nix-ish) machines with gtk?
.net apps written for windows similarly only work with the "windows gui toolkit" (or whatever)?
On a more serious note...
Seriously. Where's the portability at? Will
So Miguel provided an answer to something that's been troubling me...COM. He mentioned having to emulate some win32 stuff. MS hasn't done away with COM, just wrapped it with .NET, so I've always figured any free alternative would never really work since it would have to support COM to run windows programs that strayed from .NET only code. Nothing in .NET replaces the generic interfaces you can make and program to in COM... I'm curious what the future will hold.
The .Net framework is a very clean and interesting initiative. Forget Passport, forget web-services and all the other pieces and focus only on the framework and the common language runtime (that the focus of MONO) - its neat, and being able to compile code on several platforms without worrying about ports is a great achievement.
Off course, don't use platform-specific calls (PInvoke) if you want interoperability, but almost everything else is ok.
FYI, .net will be included in the Windows .NET server OS which is gonna come out in a couple of months.
.NET is already out (dev) and the servers will be out soon, what does this mean? It means that MS will need more developers to program their stuff in .NET (whatever that means)
Visual Studio
I think Passport has been a failure, look at it, there has been nothing useful for passport since its existance. It fully demostrates that companies are not willing to share data with Microsoft (for whatever reason)
kawai
Hey, this sounded pretty cool at first. I mean, the more languages the better, right? ;) Plus, I hate it when the Winblowz lusers get to play with pretty toys I can't get on my Linux boxen.
:(
But then I reconsidered. First, a little background. C# was, is, and always will be, a Micro$oft invention. Like it did with SMB and OLE, not to mention DirectX and ZIP, M$ will have no reservations about mucking with C# just to break Mono compatibility.
In the case of SMB, we live with this. SMB has become a de facto standard in the enterprise, so Samba is forced to follow M$'s lead and keep up. But no such market forces exist for C#. Right now, it's a minority player against giants like Java and C++.
By supporting C# through Mono, Linux only serves to make it more popular. In doing so, it makes M$ more powerful. The Mono project is about as counterproductive toward Linux advancement as a Free Software project can be.
Karma: Good (despite my invention of the Karma: sig)
I am not interested in .NET because of M$'s clout, but I am somewhat interested in CLR and the standard libraries because it may be a genuinely useful technology. I'm not interested much in C#, as it appears to be quite similar to Java with some C++-like stuff, but if the promise of easy cross-language development is true, that is interesting. Of course, that is possible with a JVM and standard Java libraries, but the CLR may be superior in that respect. Let's wait and see.
My favorite part of
[o]_O
Every language on every platform... (eventually I know). But still it is a grander vision than java offers.
On a side note, I would like to see Ximian or the GNU Foundation talking at how MONO and DOT-GNU differ on purpose or how they are similar.
Frankly, they seem to have the same end goal, and I'm afraid this is a duplicate effort that would be better off if they joined forces.
Dot-GNU: http://www.gnu.org/projects/dotgnu/index.html
Microsoft has proven again and again that, in the end, they *will* win
Really? They *always* win?
Bob
MSN
IIS
MSN
ASP Microsoft Office
Hailstorm
etc, etc
Yeah... it's hopeless...
I am not a number! I am a man! And don't you
And Slim left town.
The work that Miguel is doing is admirable - he obviously has the talent and motivation to achieve quite a technical feat. Since the .NET platform will inevitably become popular as developers are brainwashed, strongarmed, forced by managers into using it.
So the value of running .NET applications on Linux clearly speaks for itself. Not that I think this is a "good" thing at all, but maybe when MicrosoftOffice.NET comes out, then Linux will finally be a contender on the desktop.
But none of that will ever be a reality. Microsoft has a covert plan somewhere to torpedo any potential threats to its control on the desktop.
the other parts of .net such as passport, application services and MS web services are the troubling part. mono has nothing to do with these.
......Oh my darling Java clients.
Why do I keep getting the feeling that Linux is still on the rebound from Java ?
Come on, everyone knows they were made for each other. They even share a common interest in
opposing Microsoft.
But Linux got sniffy because Java wouldn't open herself to him completely. Maybe she felt
she was too good for him, maybe she thought he'd never make good, just because he came from
the wrong side of the enterprise.
So what does he do ? He goes for another another girl who looks just like her.
"How I missed her,
How I missed her,
How I missed my Java clients,
Till I kissed her
Little sister,
And forgot my Java clients."
I use C#, ASP.NET and VS.NET at work. I find developing web applications with these MS technologies glumed together as irritating as it gets. While the integration between disperate technologies is commendible, VS.NET is slower than frozen mud. Give me a good text editor and command line tools any day.
.NET with Windows to the point that Mono will never work. MS will release new .NET crap every year and Mono will play catch up for a year so it finally works again just as MS is releasing a new incompatible version.
.NET. Microsoft has proven time and again that it can't play well with others. I think Java has a good record for working everywhere consistantly.
I think that the whole Mono project will turn out to be a major debacle. Microsoft is going to integrate and complicate
In the past, Microsoft has either presented an "open" standard, or pushed someone else's open standard, only to hijack it in the end, to the detriment of non-Windows users and developers.
I think the Open Source community would be better off backing a web technology like J2EE and not
I would recommend consulting members of the Wine and Samba development groups. I'm sure they have plenty of horror stories about working with constantly changing MS technologies.
Two of our developers just came back from a .NET training session and were wowed beyond belief. (Note: This session was put on by a private company, not Microsoft). These guys were hardcore Linux/Java hackers working on our latest web based application. What changed their mind? It was the tools. The code had *NOTHING* to do with it as far as they were concerned. I told them there were OSS alternatives that pretty much replicated all of the .NET functionality. They still shook their heads saying it's the tools they were introduced to that made the real difference, not the code. One small example they used was that the MSFT tools allow you to backtrace a transaction all the way from your HTML front end clear on in to the database with a simple click of a button. There were a lot of other examples, but that was the one that stood out in my mind the most. It was the fact that they could write code faster and worry less about the crap that tipped the scales.
The thinking progresses with the argument that since we're developing on Microsoft tools we should be running a Microsoft OS on our servers since no two JVM's 'er I mean CLR's are alike...
*Condense fact from the vapor of nuance*
> And Mono is why I swtiched from Gnome to KDE.
.NET in GNOME.
> Any more questions?
Yes, I have the following question:
Why does a small group of developers (some of whom happen to also work on gnome) working on the mono project constitute a reason to abandon gnome?
Mono is in no way linked to the gnome desktop, and IMHO is unlikely to become thusly linked in the near future. The opinions of Miguel (sp?) may have misled you... there is no
Why do we need C#, its just a java syntax, with different class names. A different VM, and different byte code. Really it doesn't seem like their is much point to this whole C# business other then when MS feels like it they change the C# license, or start sueing other companies for IP infringement. Doesn't seem like that good of an idea. At least Sun isn't in the market position to start pushing their weight around. Personally, I would rather see development into a better JVM. The .NET framework on linux seems to be just a way for MS to get its hooks into Open Source with out actually having to do anything, we're inviting them in. Does the .NET framework actually provide anything that isn't easily achievable with other tools? I would think that if someone wanted to build extremely fast portable GUI apps they would write them in C/C++ using portable libraries such as GTK. As far as network services go, java seems plenty fast. And speeding up java is probably only a matter of better JVM's and / or compilers. Hopefully the lasting effect of .NET will be to encourage Sun to improve java.
Microsoft Bob... Need I say more? :)
.Net is going to get used by the places that have tended towards being heavily windows environments originally. Companies that have been using Unix, Linux, and Java will probably not be moving to .Net anytime soon.
.Net on Linux provided that it works well and provided that I can have faith that, in the long term, I'll be able to do this without risking a microsoft tax or lock-in.
.Net. Wait until enough people develop .Net solutions on alternative platforms then say, "well that's great, now you can pay us a license fee."
.Net I'd probably see it as a good thing. Hell, I've been a java developer for a while and I don't think much better of Sun than I do of Microsoft. The only reason I trust sun to stick with some level of openess is that it's about the only ammunition they have available to leverage against Microsoft's hegemony.
Overall
Personally I'd be very interested in using
My big concern down the road is that Microsoft is going to start using patents and license restrictions to control the fate of
I just can't believe that Microsoft would develop any technology that wasn't designed from the ground up to further their control. If just about any other company had put forth
This sig has been temporarily disconnected or is no longer in service
We're playing the wrong game here. We need to have microsoft constantly chasing after US to keep up to date with the existing "standards", not the other way around. The open source community as a whole needs to be frontlining new standards. If we can keep Microsoft and other evil empires constantly playing catchup, it will severely limit the damage they can do overall. Sure, they'll play the embrace and extend game, but only if we give them enough time to do so.
-Restil
Play with my webcams and lights here
> so just let them do what they want cause it's inevitable?
You know, *a lot* of people say things like "Who cares? It's like like it will help a damn thing if I don't use their products. All I care about is their code, and right now, Windows XP contains great code.".
Don't blame me. Blame everybody else.
Developers may love it, but what about consumers? American consumers have proven time and again that they prefer a sense of ownership. They like to have their applications installed on their machine. As much as Microsoft would like all our apps to be pay-per-use webservices, I just don't believe that this is a future that the consumer is going to buy into.
.NET. It seems to me that they're chasing UNIX and trying to get the remote user capability while still clinging to their misguided one-user-per-machine attitude.
.NET. I don't think the capabilities it offers are particularly innovative.
Don't get me wrong, I have nothing against the concept of services, in fact I like it. I'm currently planning a server/thinclient setup for my house. But, once again, it had better be my apps running from my server.
Anyway, maybe I'm totally misreading the intention behind
I just can't seem to get excited about
Under capitalism man exploits man. Under communism it's the other way around.
And if someone - anyone - started working on Mono on KDE, you'd leave KDE? If we keep this up, maybe we can push you all the way to CP/M.
Mono has nothing to do with GNOME. If you'd do your research you'd realize that they are seperate projects and that the rumors that GNOME is going to be based on .NET are just that -- rumors. There are some people that are involved in both projects, however, the GNOME project has come out and said they currently have no plans to move to MONO or .NET any time soon. Maybe someday, who knows? But they are SEPERATE projects. Read Miguel de Icaza's own
reply to this idea.
.NET framework that are really nice. What's more, unlike Sun, M$ has given their language and technology up to be standardized. In that sense, it's more free than Java.
Besides, have you ever looked at the MONO project? They're doing some really impressive stuff. You probably shouldn't write it off just because you're afraid of M$. I'm a java programmer and an avid Linux user, however, there are some features of C# and the
Who said Freedom was Fair?
I can't speak for all the "dot-net languages", but I've been writing lots of ASP.Net code in C# and VB.Net recently and guess what? It's not the tools, it is the framework itself.
.Net SDK and what makes me all wowed is how quickly I can do things that used to take hours to build on ASP 2.0, like complex form interfaces, data validation, query output, etc. It's well worth looking at the samples to get acquainted with, I bet you'll be surprised with how powerfull and flexible the framework is :-)
I'm not using Visual Studio, I'm working out of the
Just as Mono starts making a little headway, Microsoft starts mapping out .NET V.2. I really would like to see this project accomplish what it set out to do, but you can't like it's odds.
"Watch your cornhole, bud."
Mono is why I switched girl friends.
13 year old white supremacists are shitty web designers.
There was an article just the other day on here about how web developers are designing for Microsoft now and ignoring standards. Though Microsoft is never going to make themselves fully incompatible with other browsers, they have continued to distinguish themselves from the competition by their "innovations". The result is that while I can surf websites on linux using mozilla, I will be given a decidedly different experience doing so. Some sites will refuse to let me in all together, and others will just break horribly.
Now, you might say the reaction to this is that those companies will suffer from losing my business. Yeah, so they are losing what, 5% of the market? Ooooo, big deal. This causes people who don't have a tolerance for these glitches to go with a windows platform out of their lack of patience for that stuff.
This sig has been temporarily disconnected or is no longer in service
I guess I have to make my obligitory post on this subject:
As a technology person, I like the .NET framework, the web services aspects, the runtime, and I think C# is infinitely better than C++ (then again, what isn't...). I'm looking forward to playing with C# on my Linux machine.
But I'm just a little creeped out by the idea of using Mono for anything important (business-related), such as deploying services or products. I really have trouble figuring out what Microsoft has to gain from allowing Mono to exist indefinitely. They have plenty to gain from a sweeping, cross-plaform, bait-and-switch ploy.. they can just wait until Mono is somewhat established, apps are built and deployed... then break it and wait patiently for the inevitable migration back to Windows.
I would like to hear from Microsoft that they won't sue any Mono developer (or user) for patent infringement. I'd like to hear that all relevant APIs and specification are public and open and will stay that way. Miguel's attitude seems to be one of "hope", quote:
Now, I could be all wrong, Microsoft actually might not mind that we will use their technology and not their products...but...this is Microsoft we're talking about here.
Sure this sounds like fear, uncertainty, and doubt, but that's exactly what I feel whenever I think about Mono......
It is! But it happened 7 years ago with the release of Java.
Correct, this was done a long time ago by Java, but according to this survey, Microsoft have done it a lot better. Read past the part where they compare Microsoft's BETA JDBC drivers to the rest of them, and
Java on Oracle was the best at Jacva with a response time of 600 pages per second for 800 users, but just look at the .NET tests for the same app. 800 pages per second for 850 users!
Link to Oracle's stats: http://www.eweek.com/slideshow/0,3670,p=1&s=1590&a =23120&po=1&i=1,00.asp, link to all stats: http://www.eweek.com/slideshow/0,3018,sid=0&s=1590 &a=23120,00.asp
nucleosis? Doesn't anyone doing stuff for Microsoft these days come up with names *other* then toxic, deadly, contagious stuff?
Karma:This parrot is dead! (and so is the joke.)
Hmm, that does not seem a wise choice in light of this: http://qtcsharp.sourceforge.net and this: http://developer.kde.org/language-bindings/qtcshar p/index.html
;-)
You can find these bindings in KDE's cvs for quite sometime.
Cheers!
I can take a binary shared library and inherit my own classes from it transparently even if the source code NO LONGER EXISTS. This library could have been written in COBOL or FORTRAM. It doesn't matter. There's no need to design home-made wrappers.
Can Java do that?
Isn't C++'s problem that it's only really reusable on a source code level?
Trolls throughout history:
Jonathan Swift
1. Mono is a separate project from GNOME
2. KDE and QT are also developing bindings for MONO
What are you going to do now? Switch to TWM?
Every JVM opcode has a .Net CLR equivalent opcode. However, not every CLR construct has an efficient JVM equivalent: unsigned types, auto (un)boxing, versioned assemblies, delegates, stack-based structs, and unmanaged code just to name a few. Any code written in Java can trivially be ported to C# (see Ant/Nant, JUnit/NUnit) but porting from C# to Java is more difficult if programmers take advantage of these extra CLR features - and most do because they reduce coding time and complexity. Microsoft certainly knows how to play the game.
I believe that what you are thinking of was the licensing they put around information they released related to SAMBA.
This sig has been temporarily disconnected or is no longer in service
Look at .NET, what is it? Basically it's just another API (plus some other enhancements, but I told you to take a step back and look at the bigger picture.) like the Win32 API
Microsoft wants to fuel upgrades just like the transition from Win16 to Win32 fueled upgrades.
The worst case in a Linux-point-of-view is that everything stays the same - Windows-apps don't run under Linux.
The best case is that .NET apps run under Mono/Linux right from the start.
As far as I can tell from this site, Microsoft DID NOT create SMB. IBM did. They were the first ones to really use it, but they didn't actually create it.
> Ok, then why don't you be the first to format your hard drive and install windows?
I already have Windows...
And unfortunately, I still need it for games and for scanning.
So that means we can run Office.NET and, presumably, every other MS application that is built to .NET standards?
If not, what's the big deal?
from the Ximian web site:
* The Mono C# compiler was able to compile itself on December
28th, 2002. The resulting image contained errors though.
i'd say it was a good guess that they have errors with announcements like that...
----
i do not use drugs, i AM drugs -- Dali
We need to have microsoft constantly chasing after US
.NET offer, really? "Portable" code and remote apps? Java has offered portable code for about 7 years now, and remote apps predate Unix.
They are. Can you name a single "technology" MS has announced recently that *nix hasn't had for years (if not decades)? What does
All MS has done since they started developing NT is chase *nix. The only thing I can think of that they might have had a head start on is the GUI, but I have my doubts about that, too. What OS was Xerox using at PARC, anyway?
The problem for *nix is that the general public isn't aware of that fact.
Under capitalism man exploits man. Under communism it's the other way around.
About some people using a technology out of religion rather than merit.
.NET but I tend to see it as an exit strategy from the OS market (in a world where the OS market is saturating in the key markets in the developed world). This is a real reason that open source, being more flexible in its development pace (and giving customers what they need through community effort rather than centralized marketing). So, I wish Mono the best.
This interview is a very interesting interview in part because it seems to indicate that Mono is a good way of getting Windows developers into Open Source software development-- something that Microsoft has generally been pretty successful at preventing. I have generally likes what I have seen in
LedgerSMB: Open source Accounting/ERP
Is someone already working on something like this?
All your favorite sites in one place!
This doesn't really add up to much.
Only about 120 classes of the 1200 in the Dotnet platform are standardized as part of the C Sharp language, so standardization offers little protection if your application uses a GUI (Windows Forms, Web Forms) or a database (ADO Dotnet). Not only are these libraries not standardized, they are likely to be protected by patents.
Sun does not have the same room for manoeuvre as MS since the JCP has other powerful participants. In practice, there have been few ownership/legal issues in developing Open Source versions of the JVM - see the Kawa web site for a list of these. Their complaints revolve around issues such as access to the test suites - ultimately Sun just owns the Java name, not all the implementations.
Cheers!
Eddy.WriteLinux.Com
They already have extended 'it', if we mean Dotnet rather than C Sharp. Fussing about the language is a red herring.
Never liked the performance and resource-consumption price of Java anyway, so no big deal.
Look at the toolsets, the final contenders I looked at for a cross-platform GUI toolkit were: .NET .NET:
Trolltech Qt
GTK
Delphi/Kylix
wxWindows
-Poor history of MSW undocumented APIs.
-Poor history of MSW trying to break other toolsets not blessed by the company.
-Poor history of MSW once actually finishing a piece of software's features (eg Office) trying to find other ways to pinch money off people.
-Poor history towards GPL software.
Qt:
-A strong contender: good documentation, tools.
-Lost out because they say the Windows version requires a purchased copy of Visual C++ to do any compiling with it.
-Emulates widgets instead of using native.
GTK (1.2 back then, I can't comment on 2.0):
-Very free.
-A lot of component scattered libraries makes documentation difficult.
-Sometimes higher level widgets don't exist: need to make them from scratch using the window primitives.
-MSW port is a bit rough.
Delphi/Kylix:
-Easy to use, a company respected by me that makes good software.
-No Mac available.
-Proprietary, liable to not be maintained if company goes under.
-Free version is nagware under Linux, I believe their documentation said.
wxWindows:
-Works out of the box, now.
-A single project can be compiled for MSW, GTK, OSX and less commons like X11 embedded.
-Good documentation, sample code, etc.
-Core team is *very* accepting to new features and sharper code.
-Native widgets always used, where they exist makes a proper look and feel for an application.
-The open library in unencumbered by a company that needs to ship new versions of tools or the library.
-Fast: native compiles so no runtimes needed.
-The C++ is designed to by truly compatible with almost any compiler, toolset, not ones blessed by one certain company.
-Well tested (10 years).
-Tools and library are no cost, (or nagware). Free compilers exist on all supported platforms.
wxWindows was the one that was selected, and now 10 months into the project, I am very satisfied with the results from that toolkit choice.
-----
Cast a Cold Eye
On Life, on Death
Horseman, pass by
--W.B. Yeats' gravestone
In 3.1(a), it seems to say that you cannot use redistributables if your program will operate on a non-Windows platform.
You also agree not to permit further distribution of the Redistributables by your end users except: (1) you may permit further redistribution of the Redistributables by your distributors to your end-user customers if your distributors only distribute the Redistributables in conjunction with, and as part of, the Licensed Product and you and your distributors comply with all other terms of this EULA; and (2) in the manner described in Section 3.2.Free Mac Mini Yeah, it's
Worth at least one point, surely?
Why do I feel like many of the highly-moderated posts on this thread were written by people on Microsoft's payroll? Has Slashdot been highjacked?
Healthcare article at Kuro5hin
... why in the nine hells is so difficult to elaborate a STANDARD library (or whatever you want to call it) that will :
.NET initiative, even if Microsoft products ares as far as standard as one could imagine (MFC ... sigh).
- define common packages and their functions/methods/properties
- and then implements them according to platform/language specification ?
As a very stupid example, take sorting/filter functions : is it so difficult to sit down and make all those common and boring tasks a no-brainer by defining a common function header for them, whatever the language is ? I know that depending on language, the header declaration will change, but hell, if at least the same arguments are in the same order and have the same effects, that would be heaven on Earth !
When I design a new class/function, I always try to be as close as possible to standards I find in related works. My job would be SO much simplified if a standard function or even a data structure would be the same whatever we use as a development platform/language.
For this, I applaud Microsoft for the
Intelligence shared is intelligence squared.
Mono is a stupid reason to switch from Gnome to KDE, in that the Gnome project has not accepted Mono. It's a proposal from the Ximian folks that Gnome eventually accept Mono. I wouldn't be surprised to see the Gnome project split if Mono were forced on it in a central role (rather than as an optional add-on), as many Gnome developers are not fans of it at all.
What will you do if some KDE developer says he wants to support .NET in the KDE framework? You'll then have to drop KDE, since you drop platforms based merely on proposals that they go in a direction you don't like.
An effective ( and accepted ) "open standard" license that prevents Microsoft from using these tactics is the only way to beat them at the standards game.
Why is Triangle Man so MEAN?
For better or worse, .NET is seeing a huge take up. Any developers using VB, ASP or Visual C++ are likely to be migrating to the .NET framework on Windows platforms. For that reason, I'd like to see a full and free implementation of .NET on linux - especially the webservice APIS and the Windows.Forms namespace stuff. .NET for Windows. If the Windows.Forms stuff is implemented as GTK widgets in MONO or whatever, then that level of compatability would be achieved. .NET framework is free(beer) for windows and there's a free(speech) alternative to VisualStudio shaping up already.
GTK# seems to exist in it's own namespace at present, which means that GUI apps written using c# on Linux won't work natively on
For the interested, the
The documentation alone is enough for me!
-Lost out because they say the Windows version requires a purchased copy of Visual C++ to do any compiling with it.
Well, I don't really care that much about supporting a legacy OS but TrollTech claim that Borland works too. Haven't tried it myself.
-Emulates widgets instead of using native.
But this allows some control over the style (I don't believe in repeating MS's mistakes: a good UI is better than one that has familiar screw-ups like having shutdown under "Start").
TWW
"Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
"While the C# compiler, itself written in C#..." ....umm.... wha.... uhh........ how the.......... ummmmmm.....
And the Linux croud hasn't been chasing Windows for the past several years in an attempt to copy the Windows "look and feel" on the desktop?
Gnome/KDE are nothing more than attempts to mimic the Windows GUI.
OpenOffice/etc. are nothing more than attempts to mimic popular Microsoft productivity applications.
If you think that SWT is more advanced then the AWT, think again. The SWT is far far behind the AWT in what it can do and where it will run. The difference is that SWT has a faster design, and after another year of cooking, may be much better the AWT.
I don't think that programming with SWT will ever be easier then with the AWT, thanks to the AWT's event system. AWT is almost like magic the way that it handles events, while with the SWT you have to run your own event loop. This is why I think that the SWT has a faster design, since it requires the programmer to do more. That and it is designed to use less memory, AWT has a way of not letting objects die.
I think that they should be spending more time creating a superfast java with new graphics APIS. Since more people use Java and you won't get the stigma that goes with everything MS on Linux.
First, I would like to post a link to an MSDN article on Microsoft's attempt to build a .NET implementation on FreeBSD.
Second, I am a C# and VB.NET programmer. I have really enjoyed using the new VS.NET, and love ASP.NET. The way it treats web pages with an event model is very, very cool. As I am also a PHP programmer, I consider ASP.NET, concept wise, a giant leap ahead of PHP. VS.NET runs a bit slow on my 400 MHz machine, but cruises along smoothly on my 1.6 GHz laptop. Plus, it handles much better than Sun's Forte, a comparable product that would let me build comparable software solutions.
Third, I am VERY excited to be made aware of MONO! I have done quite a bit of Java programming in my past, and am glad to have a better alternative to it for building enterprise level applications on Linux. I have not had the level of "undocumented features" bite me in my .NET programs as I have in VC++, VB6 or Java. Say what you will about the evil empire, but the .NET framework is a very well thought through, nice behaving programming platform. I wish the MONO team the best of luck, and am thinking of volunteering!
Fourth (and finally) I have been teaching some VB.NET and C# classes. I have found all of my students walking away from the classes wanting to use .NET, including Linux programmers. I would tell you hardcore MS haters out there to at least try out .NET, especially if it is going to be implemented on Linux. I think you will find that it could be a great tool for you to build software with, if you take of the blinders. After all, why not take what is Microsoft's big marketing push and turn it against them on Linux?
Great ideas often receive violent opposition from mediocre minds. - Albert Einstein
Everyone knows Miguel has become a Micro$oft shill.
.NET apps, but the apps will still only work with MS clients. This is exactly what they want.
But seriously, MS stands to gain a lot from MONO's efforts. They are not a "server os" company, and why should they be? would you rather have 100,000 clients, or millions?
People who use Unices on their backend will still be able to host
This comment is fully compliant with RFC 527.
Comment removed based on user account deletion
- The editor (poorly) reformats code, even when it's explicitly told not to.
- Half of the internal help documents are MIA
- Does not fully support the CSS and HTML standards, creates code for IE. (big suprise there)
- The standard web forms only support client side scripting on IE.
These are only a few examples, I'm sure there are many more problems with Visual Studio. Again, it's not the framework I have a problem with, it's the editor and standard web forms.As someone has already pointed out, unlike the GNOME C# bindings which are hosted on a third-party site, go-mono.com, Qt# is already included in the main KDE distribution.
Comment removed based on user account deletion
MS don't give a toss about the ECMA or any other standards body. They treat HTML as if they were the standards body (remember all of two days ago we had this story about the effect MS has on "standards" and that was one they didn't even invent!) they just want some stamp of approval that they're playing nice at the start of the game. After that the ECMA can pack up and go home, Bill won't be needing them anymore.
MONO simply gives more credence to .NET by allowing MS to honestly (not that that's ever bothered them!) say that .NET is a cross-platform technology. Of course, they'll add, the non-Windows versions aren't very good. And they'll be telling the truth.
The reason they'll be telling the truth is that they will make it their business to make it true. Every point upgrade (and there'll be lots of them) will come out just as MONO catches up with the changes since the one before last, making MONO a permanent 'old version' of .NET. And if the point update breaks old code or ignores the "standard" guess what? MS couldn't care less. Their customers will be locked in, they won't be able to change to MONO because it will be two points back and not able to do what the customers' software needs. So it'll be out with the chequebook again to add another wing to Bill mansion.
I mean, for Christ's sake, it's not like Microsoft haven't done this all before! What are you people? BLIND???
TWW
"Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
They are. Can you name a single "technology" MS has announced recently that *nix hasn't had for years (if not decades)?
1) Drivers
2) Games
3) A broad user base (You and your 3 friends, who couldn't get laid in a whorehouse even if they had a $50 bill hanging out of their zippers, do not constitute a broad user base)
Comment removed based on user account deletion
Personal computer GUIs are all strikingly similar, whether you're talking about Mac, Windows, KDE, GNOME, fvwm, AmigaDOS... The list goes on and on. When you get right down to it there is really very little variation beyond the cosmetic, and even then the same elements are recognizable across the vast majority of them.
I ask again; what OS was Xerox's GUI built on?
Oh, and Openoffice owes far more to WordPerfect than to MSO. Perhaps it's time to take a step out of your MS-PR-department-provided box and take a look around. When you learn the real history of computing, you'll find that MS is actually one of the least innovative companies that has ever existed.
Under capitalism man exploits man. Under communism it's the other way around.
Comment removed based on user account deletion
I think Ximian's Mono project may do something unintentially pro-Microsoft: it could turn the entire Microsoft .NET initiative into a de facto standard before Sun figures out what hit them.
.NET is trying to achieve. Between Microsoft implementing .NET Framework with its own tools and Ximian implementing .NET Framework with Open Source tools, Sun has its work seriously cut out to convince the majority of developers to write code for the competing Liberty Alliance (as if Sun's wishy-washy attitude towards the Linux crowd in regards to Java hasn't offended a lot of Linux/FreeBSD/OpenBSD programmers already).
In fact, why do you think Microsoft has actually not stood in the way of Mono? Because Mono validates much of what
Sun does not have the same room for manoeuvre as MS since the JCP has other powerful participants. In practice, there have been few ownership/legal issues in developing Open Source versions of the JVM - see the Kawa web site for a list of these. Their complaints revolve around issues such as access to the test suites - ultimately Sun just owns the Java name, not all the implementations.
The Apache Foundation is working on freeing up access to the test suites, according to this press release
Even though .NET does not reach the performance of compiled languages, it does excel in some areas, for example memory allocation.
In other words, it's a typical Microsoft product..Comment removed based on user account deletion
Comment removed based on user account deletion
The hardest part of learning a new framework is typically learning a new language. With .NET you can continue to code in C++.
I disagree completly. Programmers who are well grounded in the basics of one language can usually pick up the syntax of another language quite quickly. Especially for someone like yourself who has already invested the time learn a rich language like C++.
For example if you haven't done so already pick up a book on PHP and give yourself a weekend to sit in the sun and read.
By lunch time on Sunday you will have had enough time to learn the basic data types of the language, how it handles arrays, building functions, file handling. . .etc . In other words you can easily learn all the syntax of the language in quite short order.
But if you want to do something more interesting that reading and writing text files you are going to have to learn some new APIs and that is where the real time is spent.
Comment removed based on user account deletion
Given that OpenOffice mimicks the GUI of MS Office(did you see how similar the GUI(buttons position, style, etc...) is ?) I tend to think that OpenOffice is actually nothing else that an Office clone, actually it's just worse, but very similar.
Mono only is addressing the development and exection environments portion of the pie. Mono has nothing to do with the "web services" you are talking about.
.NET and why it's going to take over the world. Microsofts vision of .NET seems to encompass all of the things you list, and while the server and developement/execution portions of that vision might be loved by developers, they're almost totally invisible to the consumer.
That maybe, and in truth that's what I would expect. However, this thread is not about Mono, but
The "privacy" and webservice parts are all that's going to be visible to the consumer will see, and I very much doubt that they will like what they see.
I'm curious, though, what you see MS' vision of webservices is if not pay-per-use remote apps?
Under capitalism man exploits man. Under communism it's the other way around.
MS Office pretty much mimicks the old WordPerfect GUI, and OpenOffice follows WordPerfect much more closely than it follows MSO.
I'll say it again, and a bit more bluntly this time: Microsoft has not produced a single innovation with regards to GUI design, even in terms of look-and-feel.
Under capitalism man exploits man. Under communism it's the other way around.
Can you name a single new technology that has appeared in UNIX in recent years that was not in VMS or MULTICS?
This type of argument is pure sophistry, either Microsoft are accused of stealling other peoples stuff (hard to do with open standards) or they are ignoring open standards.
Until WS-Security was proposed nobody had had any success with a transaction layer security enhancement. HTTPS failled, SHEN failled, PEM and MOSS failled. PGP and S/MIME had some success but they are limited to email.
Now nobody would claim WS-Security to be amazingly novel, however Microsoft, IBM and VeriSign have got the whole industry behind a spec in that niche which has never happened before.
As for all the 'nothing new has happened since Xerox' stuff, I suggest the people with that dellusion stop eating the mushrooms and go and use one of the things. OK so you can kinda sorta see the beginings of the ideas we use twenty years later, but they got as much wrong as they got right.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
If you implement the .NET framework you can pretty quickly build the Web Services framework. Most of the Web Services support in .NET is bound up in the XML Serialization layer which uses the metadata supported in .NET to generate XML serialization and deserialization code directly from .NET classes.
OK so this is a trick that appeared in the LISP machine 15 years ago but none of the mainstream companies have supported it since - up to now.
Having tried to use the MSFT Web Services tools I decided that it would be easier to roll my own for my purposes (although since I bought the cheapo standard version of C# rather than the whole .NET studio that may just be I was doing things the hard way). However it is a heck of a lot easier to deal with XML in C# than in any other language I have used.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
Comment removed based on user account deletion
well i haven't used VS for css or html. i prefer a straight up text editor like UE32 or textpad :) so i can't comment on that.
i agree with incomplete framework documentation anyway, but it's context-sensitive help if unbelievable useful not to mention popup members list and autocomplete..
never had any problems with the editor...and i'm bias b/c i really like C#'s syntax...
why run from Vincenzo?
Actually, no audio player at this time can be cross platform in .NET, because even MS's FCL doesn't include facilities for sound playback. You have to make system calls directly of the system's APIs, which obviously differ from platform to platform.
.NET app... maybe the Ogg decoding's written in .NET, but the audio playback's definitely not and the UI may not be either?
I don't know what Phonic's using GTK for. I suspect it's even one step further removed from being a true
Comment removed based on user account deletion
Dude! I'm getting me that Japanese terabyte hologram disk, and then I'm gonna run a big ol' 2GHz dumb terminal!
Yup, I'll put none o' that comppiled code on that there terabyte, I'll just fill it with my MS Windows swap file and a bunch of MS Active Desktop scripts written in Visual Basic for Applications!
Dude!
Opinions on the Twiddler2 hand-held keyboard?
dotgnu is another effort to develope a .net clone under GPL and here is a FAQ
Yes ;-)
But we are planning on staying compatible with their class libraries and not make changes, for the sake of users, developers and customers.
That being said, we also encourage people to create new technologies and new classes and innovative things in their own class libraries. For instance Vorbis# (mostly done by Mark) and Gtk# (mostly done by Mike and Rachel) are extensions that originated in the Mono world.
You really want your new classes/assemblies to work on both Windows and Unix, because that gives you a larger user base.
Miguel
Jython... Nothings stops you from porting a language to run on a java platform.
I'd rather be sailing...
Microsoft is pushing .NET and Sun has SunOne
No, Sun has J2EE. SunONE is the crappy app server
which used to be called iPlanet.
About the CLI - common language Infrastructure and part 2 of CLI information
To really understand what is going on here, consider the CTS - Common Type System and the CIL - Common Intermediate Language as a midway translation point for any programming language.
With this other programing languages or other programming mehodology interfaces can more easily be created.
It's like taking all popular programming languages and putting them into a pot and boiling them down to common and non-conflicting data types and programming concepts. And from here, using the summed vocabulary set of data types and concepts as a translation base to use in converting a program written in your convient programming language choice into CIL or Common Intermediate Language bytecode. From which you can run on any systemj that has a VES or Virtual Execution System type of system installed.
This of course allows both intrepreted and compiled types of languages to potentially be used.
Chasing others technologies and implementing their own successful variants are one of MS' specialities. First, they catch up, then they use their huge influence to make it the new standard. Doesn't need to be better or even on par with the technology they've chased, either.
I guess that's partly what MS has been in trial for. Often, MS can be seen as hurting the evolution of software for their own profit.
Beware: In C++, your friends can see your privates!
- Can you name a single "technology" MS has announced recently that *nix hasn't had for years (if not decades)?
:-P
DirectX
Optical Mice
Scroll Wheel on Mouse (I think this was theirs)
Back and Forwards Net buttons on Mice
The Windows key
You're confusing the platform independence of Java (write once, run anywhere) with the platform independence of .NET ( which is more like write once in any language, call anywhere in any language). This is a result of people not really understanding what .NET is.
Even in Java, if you were to call MFC components, you'd lose portability. Same things go for application written with GTK, Motiff, or whatever.
that quote from "Porky's"? "Right now he's just playing with you, but one of these times he's going to get tired of you©©© and he's going to hurt you©"
"I'm a humble person really,
I'm actually much greater than I think I am"
First, I would like to comment to the Anonymous Coward suggesting I am an MS infiltrator. That gave me a really good laugh! I should state that I program about 80% of my stuff for Windows 2000 servers. That is just where my career has led me. Second, I think that open minded and intelligent people would hope that MS employees would hang out at Slashdot. Perhaps intelligent and well thought out comments might have an impact on those you would consider your enemies.
Great ideas often receive violent opposition from mediocre minds. - Albert Einstein
The great thing about .NET is that it is language independant.
.NET Framework which is free (although not open source).
.NET will also be able to run on non-win32 platforms.
.NET in my mind is the IDE.
.NET in an Open Source implementation.
That is the big deal.
You have your
The framework contains all the functions.
Then languages C#, Perl, VBScript, Java etc are modules that fit ontop of the framework.
If you have some functions written in Java, and there are some functions which do just what you need but are only written in Cobol, you can use them.
You can have a single program written using 25+ languages (thats roughly the number of language modules for the framework last time I checked).
You can learn the location of the functions once and the will be in the same place no matter which language you use.
This means that no longer does it matter what language you choose.
Because the language is no longer the important factor to writing an application.
The only hassles you might encounter using other languages is comprehending the code contributed to your application by other programmers.
Mono sounds great, as applications written using
This is a great achievement.
The most impressive componet of
I would really like to see the features provided by Visual Studio
Lab_rat
http://www.elitegeek.org/
Join us, share your knowledge.
If we aren't meant to eat animals, then why are they made of meat?
Suppose that I decided to use .NET on Windows. I look around, and find that they support Perl. Cool, so I go and use some Perl libraries in various places. Perl is as cross-platform as it gets, I am fine. Right?
.NET sucks goat d*ck on handling dynamic languages. Since Perl on .NET was too slow, even by .NET standards, its "integration" is through a custom modification that exports a COM interface, that is imported into .NET. Works fine on Windows. But on Linux, what then?
No. I am utterly fscked.
Perl uses a dynamic programming model.
And once people get going, how many real applications are going to use Windows forms, or link in some other library, or link in a COM interface from a legacy app, or otherwise become unportable?
Care to guess whether future tools from Microsoft will "encourage" you to introduce such dependencies?
Thanks, but no thanks. I have had to work with Microsoft APIs too much for my taste. That is why I try not to now.
It appears that the reason you didn't choose .NET was based entirely on emotional, rather than technical reasons.
Is this normally how you make decisions?
The hassle of nVidia cards and nVidia drivers are the main reason. Games will follow if they can get an audience.
--Giving to trolls for the benefit of us all
You couldn't be more wrong: MSDN Article on the .NET framework on FreeBSD.
Great ideas often receive violent opposition from mediocre minds. - Albert Einstein
VS.NET is slower than frozen mud
.Net SDK.
.NET with Windows to the point that Mono will never work.
.Net is the problems they solved for developers.
.NET crap every year and Mono will play catch up for a year so it finally works again just as MS is releasing a new incompatible version.
.NET.
.NET, and Sun has certainly been less supportive to developers with their Java than Microsoft is being with .NET.
Buy a new machine. One that handles VS.NET well will set you back about $500.
Give me a good text editor and command line tools any day.
They are there, in all their glory. If you want to do everything by hand you can. Save yourself some money and just download the
Microsoft is going to integrate and complicate
The point of Mono is not to be 100% cross-platform compatible. The purpose is to provide a similar development environment for Linux/Gnome. If you read Miguel's commentary what impresses him most about
Now at a very base level, there is some compatibility. You have the same language syntax with C#, and it sounds like they are using the same IL assembly calls. But you are going to be missing many of the custom Windows libraries. But is that important? Wouldn't you expect custom libraries evolve for Linux specific features?
MS will release new
Why is this important to you?
In the past, Microsoft has either presented an "open" standard, or pushed someone else's open standard, only to hijack it in the end, to the detriment of non-Windows users and developers.
But then so have non-Windows developers. Netscape, Sun, there are many examples. Even GNU is guilty of this, as I can no longer compile many open source programs with the tools that come with commercial unix because of extensions added to GNU make and GNU cc.
I think the Open Source community would be better off backing a web technology like J2EE and not
Why? J2EE is technically inferior to
I think Java has a good record for working everywhere consistantly.
One of our foreign development shops just looked into running their web app they wrote with BEA's Weblogic on a different J2EE implementation. They can't do it without extensive recoding because each Java implementation contains custom stuff to differentiate themselves. In this case it had something to do with database connection caching, or something, which wasn't added by Sun in the J2EE specs but offers signifigant performance gains.
How closed-source keeps alive is by moving to new places so the open-source (and any competitor) is always playing catch-up. It doesn't matter if this is a good technology so long as they get the name out there, and their competitors can't claim to have 'X' feature.
But you don't just add any feature. You choose something that makes the differences irrelevant.
DOS has different characters for line-breaks than Unix, or Mac. Rather than standardising line-breaks the platforms move to XML.
Software for Windows can't run on Linux or Mac. The operating system matters. Rather than making abstraction and platform-specific libraries they place a layer that makes the operating system irrelevant. Sun did it with Java, MS did it with .NET.
It's all about placing layers ontop that makes quibbles irrelevant. I believe that's the plan.
--Giving to trolls for the benefit of us all
What does .NET offer, really? "Portable" code and remote apps? Java has offered portable code for about 7 years now, and remote apps predate Unix.
.NET is about so much as increasing developer productivity.
Well actually so did Microsoft BASIC back 20 years ago.
I've still got my Creative Computing Games books if you want to type in the code.
Being "Portable" isn't what
Actually as far as like ASP.NET is concerned, I would use PHP as a more comparable example than Java.
All MS has done since they started developing NT is chase *nix.
And all Unix has done is chase the Mainframe. What is the Web anyone but 3270 terminals with color pictures?
The problem for *nix is that the general public isn't aware of that fact.
No, the public just doesn't care. That's the part that really bothers you.
Comment removed based on user account deletion
I'm still trying to figure it out. At first I head all about using .net and web application service providers - kinda what CORBA or DCOM does - run this procedure over there and give me the results.
.net and run it on anyplace that supports .NET - much live Java does.
It also sounds like you can write something in a language as long as it does nothing other than pure
So, is it basically Java with DCOM/RPC stuff built in using XML to pass data back and forth?
Comment removed based on user account deletion
Yes! Give me .Net! I can hardly wait to run all of the windows apps including the lates viri!
I really think that Linux is missing out on the fun. I mean sure, it's stable and secure but what adventure is there in that? I want to wonder every time I boot up if I'll see: "You have been hacked by the Windoz Nukum Worm! Hard drive formatting now...."!
Oh yes! Why should Windows users have all of the fun?
The race isn't always to the swift... but that's the way to bet!
The problem is that reaching the final 5% of the market typically requires more than 5% additional work; so, all other things being equal, the return on your investment is lower for the company trying to attain 100% of the potential market. I would probably invest in the 95% company, but that's just me...
The talking paperclip was also supposed to change the way we do work in offices all around the world. Fool me once, shame on you, fool me twice, shame on me. Fool me 300 times, sink an industry, hurt an economy and what do we do ? We re-invent the Microsoft square wheel and call it MONO.
. Surely they will not shift standards on us;
. surely they will not hide APIs on their implementations;
. surely they will not "extend" their product and introduce imcompatibilities;
Yea, I see a future of no pain for adopters of MONO...
".NET could be the biggest blunder of Microsoft's history, taking away the only advantage they really got (a huge software library)."
.NET apps do you think will be allowed to run on "untrusted OSes?"
I use to think that way too but with Microsoft's DRM push how many
So, like you said. At least we won't be any worse off then we already are... or are we overlooking something?
The race isn't always to the swift... but that's the way to bet!
The interview was done long before I posted those messages to the mono-list. After the interview I looked at the problem in more depth, and focused on the current strategy.
;-)
I fail to have my entire life planned in advance, so I have to make changes as I go, sorry if this annoys you
Comment removed based on user account deletion
Gee, I guess if you repeat it often enough it becomes true. The site you linked is, judging by the snide comments abut Windows' "features", a tad biased. Do you have any other sources?
What were the predecessors to the Visual Studio IDE? To IntelliSense? To drag-n-drop GUI building? Dropdown menus that show frequently-used items, adjusting themselves over time?
I'm not trying to troll here, and it's not entirely off-topic. As with a previous post on MS projects that failed, debates about the future of .Net need to be framed in an accurate asessment of Microsoft's history of success and inovation.
It seems most folks on slashdot believe Microsoft can simply bully its way to the top of any field, forcing people to adopt anythning it produces. Yet products like Bob suggest this isn't true. So, why do some, but by no means all, Microsoft products succeed? Clever copying of proven ideas? Subtle innovation? Reinvention of older ideas, with improvements based on 20/20 hindsight?
People snipe at the idea of a .Net VM as a Java ripoff. The Java VM is a Pascal P-code VM ripoff, but done better. Java swiped ideas from C++, and improved certain things. Could it be a similar case for C#/.Net?
Java is the blue pill
Choose the red pill
There is very little emotion in either my post or my decision.
.NET Framework?"
.NET was not taken as the platform of choice and the reasons were not technical. I think .NET will certainly be competent, as the technical lead was the guy behind Delphi.
.NET. The possibilty of that occurring moves .NET to the back of the pack as their counterparts can already do what I need without that extra weight looming over the project.
The question posed by the article was "Would you use an open-source implementation of the
I listed the reasons why
I am a GPL software author. C# is an unproven new language to assess in my choices. I am absolutely going to judge the likely future of a language by looking at the past history of the company who will be managing its development.
Microsoft has quite openly stated that they think GPL is a virus, and there has been rumblings of making it illegal to use their development tools in the creation/conjunction of GPL software or libraries (which is their right to do).
However, a major software project is a large commitment of time--porting to another language down the road is unlikely to be trivial. if Microsoft takes their familar road with C#, and my code becomes illegal to compile, or I now everyone who wants to work on the software now has to fork over $500 a year for a MS-blessed C# compiler to be able to contribute to the GPL project, I will have regretted my choice of
But the results also matter. Here are some development snapshot screenshots, fresh off a clean compile on Linux and MSW, built with wxWindows with no MFCs, Microsoft dlls or anything else that can be made illegal or prohibitively expensive later on:
http://www.clinicalexam.com/pluckerdesktop/tour
-----
Cast a Cold Eye
On Life, on Death
Horseman, pass by
--W.B. Yeats' gravestone
The O/S that Xerox used at PARC was called Pilot, which was written in the Mesa programming language, a high-level language with some similarities to Modula II, to run on Xerox' proprietary D-machine architecture. The operating system ran to some 24,000 lines of code, supporting the WIMP metaphor, shared memory, virtual memory, streams, threads and monitors, and XNS networking and Courier RPC. It came with a built in debugger (called Co-pilot, naturally), which you trapped into in the event of a serious error, at which point you could debug the source. It was released in 1980, the year before the IBM PC and MS/DOS.
Tony.
-- "Quis custodiet ipsos custodes?" -- Juvenal
If you don't feel right killing someone, you don't do it, do you?
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
You make a good point but I believe Miguel deserves quite a bit of credit for all the work he has done and his optimism.
In other words, give him a break. If you know someone specifically who has had this problem, let him speak for himself.
Oh, and Miguel if you get around to reading this, thanks.
The site you linked is, judging by the snide comments abut Windows' "features", a tad biased.
.Net VM as a Java ripoff. The Java VM is a Pascal P-code VM ripoff, but done better. Java swiped ideas from C++, and improved certain things. Could it be a similar case for C#/.Net?
That couldn't possibly be because MS has been consistently behind their competition in GUI design. Did you actually look at the screen shots?
What were the predecessors to the Visual Studio IDE?... To drag-n-drop GUI building?
One of these might fit the bill.
To IntelliSense?
Autocompletion was hardly a new thing. MS seems to be pretty vague about what else it does.
Dropdown menus that show frequently-used items, adjusting themselves over time?
I admit I can't think of an example off the top of my head, but then I don't have much more than a passing familiarity with most other GUIs.
It seems most folks on slashdot believe Microsoft can simply bully its way to the top of any field, forcing people to adopt anythning it produces.
Perhaps because it often does? OEM contracts come to mind.
Yet products like Bob suggest this isn't true.
Some things just suck so bad that no amount of bullying will help (and yes, I have used Bob).
So, why do some, but by no means all, Microsoft products succeed? Clever copying of proven ideas? Subtle innovation? Reinvention of older ideas, with improvements based on 20/20 hindsight?
I would replace "innovation" with "variation on a theme", and add the strategy of attrition. Just because a company or product failed doesn't mean there weren't some good ideas there. MS has always been good at picking up those ideas and running with them. Successful? Yes, but hardly innovative.
People snipe at the idea of a
I never claimed MS was the only one that did that. I just have a problem with them claiming credit for the idea, when anyone who takes a little time to investigate can find that it simply isn't true.
For the record, I find Windows quite usable. MS has taken a lot of good ideas from a lot of sources and put them into something that works, but none of it is new (with the possible exception of menus hiding stuff, but I actually find that irritating).
Under capitalism man exploits man. Under communism it's the other way around.
DirectX
:-P
Oooh... an API wrapper! that's origional!
Optical Mice
MS didn't invent the optical mouse, they bought it (or stole it, depending on who you ask). Regardless, laser based mice have existed at least as long as Microsoft has.
Regardless, since *nix isn't hardware, I'd say you're reaching here.
Scroll Wheel on Mouse (I think this was theirs)
Again, hardware. I agree that scroll wheels could be a lot easier to set up in *nix, though.
Back and Forwards Net buttons on Mice
I saw mice with 10-key pads on them at Fry's long before MS came out with their 5-button mouse. Mapping the extra buttons to Forward and Back may have been new, though.
The Windows key
Gotta give this one to Apple with the "open apple" and "closed apple" keys.
Under capitalism man exploits man. Under communism it's the other way around.
The 'real' problem with AWT is that is was implemented too damn fast. I read that the AWT was originally implemented in about a month. Notice that they changed the event model from 1.0 to 1.1? Radical change, if you look at the old model. Basically the design is bad but you can't change it, you have to start over.
Swing is great on paper, but only if you consider that it will never be fast. Since all you're stuff is drawn to a virtual screen and then to the real screen. This ensures true cross platform compatability,but again you lose any hope of speed.
I agree that there should be some comprimise inbetween pure java and java with JNI extensions, as there should be a way to compile java ahead of time, and disregard the whole class loading and security features for an application that is precompiled. Maybe an open source project is needed, like gjc, but to the next level.
Course I believe in making the wheel rounder and not reinventing it everytime the old one gives you a crappy ride.
either Microsoft are accused of stealling other peoples stuff (hard to do with open standards) or they are ignoring open standards.
What do you mean "or"? MS has done both on occasion (or at least tried). SMB, HTML, Java...
As for all the 'nothing new has happened since Xerox' stuff, I suggest the people with that dellusion stop eating the mushrooms and go and use one of the things. OK so you can kinda sorta see the beginings of the ideas we use twenty years later, but they got as much wrong as they got right.
I never said nothing new had happened since Xerox, just that it didn't come out of Microsoft. MS has consistently trailed in the UI race since it entered.
I also never said that UNIX was entirely new, either (although it at least started out with some new ideas).
I don't have an inherent problem with MS taking other's ideas and using them, but I do have a problem with them calling it innovation.
Under capitalism man exploits man. Under communism it's the other way around.
Do you have any experiance with the interface builders listed here?
I'm not doubting your story or anything, but details about these tools a pretty sketchy.
Under capitalism man exploits man. Under communism it's the other way around.
IBM's Visual Age Smalltalk was hampered by its choice of language and speed.
I'll give you that NeXT had a darn nice dev environment. I didn't do much work on it, but of the interface builders I remember from that day and age, it was the one that worked most like an efficient tool and least like a research project. Still, it was NeXT-only, and NeXT boxes were rare in my neck of the woods in IT departments (where most developers are) even in comparison to AIX, Solaris and HP-UX based boxes. If it's not available for the platforms folks are actually using in the business world, is it truly an alternative?
Looking at most of the postings here, allthough most of them are posted by non-developers and brainless collegekids, I can only think: what a sad bunch of people. .NET is one hell of a platform with a very well thought out API, documentation and complete functionality. Now there is this Linux developer and his team at Ximian who ports that platform to Linux and all the fools at /. are able to do is cry out what a crap .NET is, how Miquel is a slave of MS, oh sorry, M$, and that Mono will suck as .NET already does.
*RRRRT*
If Mono fails on Linux, Linux is dead. Be aware of that.
Never underestimate the relief of true separation of Religion and State.
Java is always going to be more portable than anything involving C# and .NET. Microsoft are not creating these technologies for the good of the community. While Sun may well not be in it for the good of the community either, their intentions seem less evil and they are pro Unix (and pro Linux to some extent).
While I am a GNOME user at present I will be moving back to KDE when this stuff makes its way into GNOME proper. I imagine many people will do the same.
Well, I'm not an expert, but I'm pretty sure that the command completion in bash wasn't made after IntelliSense, and menus that show frequently used items on the top probably were already done before in text mode.
Now, I'd love to hear about a big innovation MS did. Did they invent something comparable in size to multitasking, for example?
Would I use an open source implementation of .Net? Well, if I want to host on Linux, then it is my only choice, so yes...
But why would I want to use an open source version (particularly in it's current state of development) on Windows? I can download all the SDK etc from Microsoft for free - it's only the IDE that I would have to pay for, and there are free alternatives to that... For as long as I use Windows, and I can download a free cli-based SDK from MS, an open source version would have to offer compelling reasons (in terms of less bugs, fixing bug/security issues, performance) otherwise there is no point.
In the real universe, it's M$loth's excuse to port the
What's 'M$loth' ? And what does the DoJ crap has to do with the quality of
There's also nothing new under the sun. Running other language environments ("hosting", my ass) has been done ever since emacs was written in lisp running on a C-based machine.
Fyi: Lisp is interpreted, C# and the other 20 or so languages for
Never underestimate the relief of true separation of Religion and State.
I have yet to see a Microsoft tool (or any other tool) that lets me write code faster. Tools require time and effort to use. It's much better to just to get it right the first time.
I also think wxWindows is by far the best cross platform C/C++ toolkit around right now: it's free for both non-commercial and commercial use, runs on lots of platforms, can use native widgets, is mature, and has tons of functionality. Many more open source projects should use it.
But calling this a "true innovation" is ridiculous. Both .NET and Java are decades old technology. Neither Microsoft nor Sun "innovated" there. Except for the snazzier graphics, people were building the same kind of VM systems and object-oriented languages in the 1970s and early 1980s.
Not only are these libraries not standardized, they are likely to be protected by patents.
That's FUD. You can't protect "libraries" by patents, only inventions. And there are unlikely to be many patentable inventions in the APIs of common GUI and OS libraries.
ultimately Sun just owns the Java name, not all the implementations.
There is effectively only one Java implementation: Sun's and its derivatives. And since there is no standard for even the core language and libraries, there aren't going to be any others, only some tinkering with things vaguely like Java.
Uh..has anyone seen a .NET app? I for one, think it's vaporware.
".NET App Hunter heh, suching for the aylusive .Net App! 'ays a wiley bugger! And ye' 'ave to be very careful when ye' approach 'im! 'Ee might jest disappear! POOF! Before ye' can even get a glimpse of 'im!"
Yep, absolutely true, and most of us manage to be wrong at least once in our lives (apart from yourself obviously). Miguel had a bad day, leave it at that, find something else to whine about (sure you can find it somewhere in the /. headlines) and let him get on with his project to which it doesn't sound like you have contributed.
I'm still waiting for someone to explain why I should want this .Net stuff at all.
Do you know what it takes to run .NET applications? A 20 mb download of the runtime!! Crap!! This isn't the SDK folks. It is only the runtime. Take a look at it here:
? ur l=/downloads/sample.asp?url=/msdn-files/027/001/82 9/msdncompositedoc.xml
http://msdn.microsoft.com/downloads/default.asp
I was ready to download this and try it out but I'm not gonna install another piece of bloated crapware on my machine. Sheesh! 20 mb. That'll take forever to download. At least the Java runtime is only 9 mb. I think the Java SDK is 30 mb.
I agree in principle with what you are saying, but to my mind this illustrates a problem (NOT a weakness) with Open Source. It is unfortunate that Miguel stated that he may release a certain set of functionality, and the for whatever reason found out that he would not.
Where the problem appears is in using a list of proposed features as the basis of a business decision. To be fair, it is not only Mono that suffers from this problem, many projects do (and not all Open Source).
After one or two of these situations happening at work where I recommended Open Source software on the basis of "next release" only to find out that I was wrong, I was forced to take the position that I could and would, only rely on features contained within currently released code.
I personally feel that this has a detrimental effect on the software, many of the coders employed within industry who may be able to contribute code as the basis of their work would be forced into released bug fixes for current code as that is what the customer would be taking at the end of the day, rather than attempting to add new features.
Many small companies simply don't have the resource to add new features on the basis of "a customer may want it in the future" and so that job is left (in many cases) to individual coders who would add features on the basis of what they would like to see rather than on what is the most "commercial" product.
At I said at the start of this (too long) response, I believe the best advice that can be given at the moment is to base decisions on the released code that is available, as there are no guarantees on what will or won't make it to the final version of any software.
I know I can (or will be able to) under the CLR.
Could you tell me what definition you are using for the word know? Does it mean anything more than "A salesman promissed me"?
I'm not definitely saying that you are wrong. I've seen attempts to port Basic, so there are, indeed, those who thing it a reasonable thing to do. But all of the VB code that I've ever seen depends so heavily on platform specific libraries, that I have strong doubts. And it will take a lot more than a salesman's promisses before I believe that MS will actually port their libraries to Linux.
I think we've pushed this "anyone can grow up to be president" thing too far.
My objective is not to suggest alternatives, but rather to support my arguement that Microsoft does not innovate.
As for Unix GUI tools, I have no difficulty understanding why they came around so late in the game. In many ways a GUI is anathema to Unix. Unix was built around the central philosophy of taking many small programs, each of which does one thing very well, and being able to string them together to accomplish complex tasks. GUIs effectively remove that ability.
Am I wrong? Has someone found a way to implement the pipe graphically? Without the pipe, what advantage does Unix have?
Under capitalism man exploits man. Under communism it's the other way around.
And that is why Unix is anathema to folks who don't read slashdot.
Clearly, you're not seeing the point I'm trying to make. Perhaps that's because I spent last weekend doing a 200-mile bike ride and am still fried. Or perhaps you just don't get it.
I'm not saying UNIX isn't a superior platform for folks not afraid of a command line.
I am saying that for the 99.99% of the world that *IS* afraid of a command line, and the 97% of the developer community which is (sad but true in IT), GUI's and monkey-level GUI builders are where it's at. And for whatever reason (like the "we're better than that; clearly it's an issue of educating users that OUR way is better, not just giving them what they say they want, that we know isn't as good" attitude hinted at in the above post), UNIX platform and tool vendors preferred not to go after that market for a really long time. At the same time, they were fretting about eroding market share. Hello?
For one, from a developer's perspective, system call traces that don't require buying multi-hundred or multi-thousand-dollar third party packages, to do the job..net is crap so is java I hate the whole interpreted byte code thing, but if you want to use it thats your problem
in my life God comes first.... but Linux is pretty high after that
Francis Smit
I'm a huge fan of .Net. I don't mind using Windows clients, but I want to use Unix/Linux servers. What you're doing is going to make that possible, and I think it's great. Thank you.
As for the scope of your project, feel free figure it out as you go along like all the rest of us do. The guy mouthing off about your "lies" is an idiot. If you have to choose a technology for an upcoming project and you can't afford to be wrong, you'd better choose from among technologies that already exist. What you are offering is technolgies that *might* exist, that so many of us *want* to exist, but might not if things don't work out, and even if they eventually do exist nobody knows for sure when they'll be ready for production use. That's the way it works for big companies, small startups, OSS projects, pretty much everyone creating new tools. That's what "in development" means to project planners with any sense.
"Those who have never entered upon scientific pursuits know not a tithe of the poetry by which they are surrounded."
I probably sounded a lot more "hardcore Unix" than I intended to. I'm fully aware of the need for monkey-level GUI tools on Unix (it just makes me sad) in order to gain popular acceptance, but at the same time I keep running into the limitations imposed by those tools while working on Windows.
;-)
For example, I recently had a strong desire to do some mass database manipulation/extraction at work. The only experience I have with that sort of thing is from my Intro to Unix class, but we use Access for all the databases I have any reason to look at. I figured it would take me a few minutes to work out the syntax to do what I wanted with cut, but I could do it even with my limited knowledge, and hey, we use Windows and it should be even easier there, right? Our IT guy, who's Windows only but definately above monkey level, looked at me like I was mad (or maybe had a disfiguring disease) and said "No! It's not easy to do that at all!"
Anyway, my point is that I'm all for making the hard things easy, but we need to be very careful that in the process we don't make the easy things hard, or even worse, the clever things impossible.
For one, from a developer's perspective, system call traces that don't require buying multi-hundred or multi-thousand-dollar third party packages, to do the job.
But, there's no reason any other OS couldn't have that, just nobody has done it. The pipe, and the whole philosophy around it, is the thing that sets Unix apart from all the rest.
Under capitalism man exploits man. Under communism it's the other way around.
1) Drivers
2) Games
3) A broad user base
Interesting. None of those are technologies, per se, neither did any of them origionate with Microsoft. In fact, Unix had all of those before anyone had even heard of Microsoft.
You and your 3 friends, who couldn't get laid in a whorehouse even if they had a $50 bill hanging out of their zippers
That's probably true, but mostly because I would be to busy getting my ass kicked by my wife for being in a whorehouse in the first place. I have to admit that I've never attempted this experiment, though, since I've never had any difficulty getting laid, even without the assistance of a $50 bill.
Under capitalism man exploits man. Under communism it's the other way around.
You gota love this one, a little nugget in the C# runtime, the use of COM/dlls with an unsafe keyword. Wonder how many M$ apps will use this for com libs, that will ummm not show up on mono (i.e. remain closed and guarded), so your linux app may run on .NET but I don't see Word .NET running on your linux box any time soon.
The .NET framework is excellent stuff!
Go mono!
datrus
For another example see structs in C#. Structs look just like classes when they are declared and used. But they work very differently. Using structs can result in very unexpected results, as you can see in this example: www.geocities.com/csharpfaq/test1.html. For more information about structs in C# see: www.geocities.com/csharpfaq/structs.html
Java caught on among programmers because of two reasons: WORA and simplicity. Is C# WORA? Microsoft has been telling us for many years now that WORA will never work, so it is safe to assume C# will never support WORA. Is C# simple? To answer this last question, consider the fact that the C# statement x.y += a[b]; can contain upto 10 hidden function calls, including properties, indexers, operator overloading, user-defined implicity type conversion operators, etc. For more information visit www.geocities.com/csharpfaq/test2.html
C# has neither of the features that attracted programmers to Java: No WORA and no simplicity. This language is no threat to Java.
Are you really Katz in disguise? 'Cause you take just as long to make a simple point.
It's a really good write-up of your experience. I agree with most of your points. There is a need for a network transparent display system, however. The question in my mind is does it have to suck just as bad at the console as at the end of a 10mbit ethernet connection? Why is my desktop on a fucking 8xAGP card if I get just as good performance remote hosted to a machine in the lab? wtf?
Oh, well. I don't use linux anymore either. I put it back on the laptop or a machine at work or home a couple times a year to play; I just use Solaris and rarely M$Windows. I seem to live just fine without a lot of the crap most people I know swear they can't live without. (Who really cares about 95% of the crap MS Word can do? It's excel that I miss the most.)
Just leave my HDTV and Tivo alone and we'll all be fine. And now for something completely different....
A fine hefewiezen...
_damnit_
It's my job to freeze you. -- Logan's Run