Microsoft Applies For .NET Patent
Wojina writes "Microsoft has applied for a comprehensive patent on what appears to be the entire implementation of the .NET CLR (Common Language Runtime) and the framework APIs. Microsoft's CLR is an implementation of the CLI (submitted to ECMA for standardization). Does this bode ill for the Mono project? See the CNET News story." And a chaser: Nept points to this interesting Microsoft-funded .NET obfuscation project.
I think Donald Knuth has prior art.
If approved as is, the patent would cover application programming interfaces (APIs) that allow actions related to accessing the network, handling Extensible Markup Language (XML), and managing data from multiple sources. APIs are the hooks in software that allow applications to work with another system.
.Net initiative.
.Net, the company's Web services initiative. By submitting the application, which was filed last year and made public last week, Microsoft is following the lead of other major tech companies that have aggressively pursued patents over the years.
.Net patents would have on the standards process. Microsoft already has submitted many of the fundamentals of .Net to a standards body known as ECMA, formerly called the European Computer Manufacturers Association.
.Net patents without knowing Microsoft's specific plans. The W3C is in the process of developing a policy that would let the organization include patented technology in its standards as long as companies agree to provide the technology royalty-free. The person, who asked not to be identified, said Microsoft has agreed to such terms in the past.
.Net," he said. "It's preventing the open-source community from being involved in this area."
.Net. One of them, the Mono Project, provides many of the same APIs as .Net. When the Mono Project is completed next year, developers will be able to build .Net applications that run on Linux and Unix.
Microsoft declined to elaborate on its plans for the patent, but intellectual property attorneys said that if it's granted, the company could dictate how, or whether, developers of software and devices can link to the
"It looks pretty broad," said Jeff E. Schwartz, a partner with McKenna Long & Aldridge. "It could be fairly significant."
The patent is one of several that Microsoft is applying for related to
IBM is the most prolific patent generator, topping the list of corporate patent awards for the last 10 years. Big Blue landed 3,288 patents in 2002, bringing its total over the past 10 years to more than 22,000. Lately, the company has been focusing on patenting technology related to its computing-on-demand initiative.
Patents have become an increasingly common way for software makers to exert control over their intellectual property. One of the concerns about the proliferation of technology patents is the impact it could have on standards development. Some developers fear the trend will let a few patent holders dictate the direction of standards.
It's unclear what effect the Microsoft
One person affiliated with the World Wide Web Consortium (W3C), another major standards body, said it's difficult to comment on the
IBM said last year that it would not charge royalties on patented technology that is part of an e-commerce Web standard.
More and more, the patent debate is pitting companies like IBM and Microsoft--which are looking to patents to protect and recoup the millions of dollars they spend developing products--against members of the open-source and free software movements, which say the patent process stifles innovation by covering processes that are common on the Web.
People like Free Software Foundation guru Richard Stallman have urged boycotts of companies that aggressively enforce patents.
Meanwhile, Bruce Perens, a consultant and leader of the open-source movement, worries that Microsoft's patents could shut out alternative software development. "Microsoft is being careful to patent every aspect of APIs related to
Open-source developers are already hard at work trying to build open-source implementations of
Looks like they are patenting. The concept of client server computing.
Well it looks like we all owe them everything.
Where should we send the check?
This note was originally published at John Munsch weblog on January the 14th.
.NET to fail and fail badly
.NET "rebuttal" that I linked to above, "For non-profit use VS.NET can be had pretty cheaply, especially if you know anyone that is in college somewhere." Pretty cheaply? For a non-profit (that means charities, churches, universities, the hobbiest who is going to give away his work for FREE)... pretty cheaply? Wow. That is well and truly pathetic. To try and justify it, and say, oh well, you can try to scam an educational discount so it won't be so dear, is even more pathetic.
.NET commercials with William H. Gacy telling you how great it is without really ever telling you anything about it? Microsoft doesn't trust .NET to stand on its own technical merits and it knows it may go like cod-liver oil down the gullets of a lot of people who have seen how the company works behind closed doors even if it were the tech shiznit.
.NET just in case there wasn't any grassroots community who actually wanted to do it. Or maybe just in case there was and they couldn't control it.
.NET for other platforms? If those same people were working on giving us new libraries and new tools for an already existing language instead of pouring in the thousands of man hours it's going to take to build a copy of the C# compiler or a .NET version of Ant and JUnit?
Lots of reasons why I want
It's benefits a criminal organization. Not one that's been found guilty of crimes once or maybe twice, but lots and lots of times. Those crimes are many and varied, but here's just a few of them: Stac Electronics v. Microsoft, DOJ v. Microsoft, Sun v. Microsoft.
P.S. If you want to split hairs, Stac v. Microsoft isn't a criminal action, it's doesn't stem from a criminal abuse of their monopoly like the other two cases. Instead it was just a case of a small company being driven out of business by willful patent infringement, theft of trade secrets, etc.
Microsoft isn't just one thing anymore. It's too damn big for that. I'm sure even Bill himself knows better than to think that he truly controls the whole ship because it's become big enough that he can't possibly know all the projects, people, etc. anymore. But even a really large company still has a kind of collective personality that it exudes and a large part of the personality both internal and external to Microsoft for many years now is that of a total control freak.
If they don't own it, if they don't control it, if they didn't create it, if it doesn't have a broad stamp from Microsoft on it, then they don't want it. Sometimes it's sufficient for the thing to merely exist and they'll refuse to acknowledge it, other times they need to actively stamp it out because they can't control it.
When was the last time you can remember Microsoft saying they supported a standard? That is, not something they invented and submitted a RFC for, an actual, take it off the shelf and re-implement it without renaming it or "improving" it so it doesn't work with anybody else standard. C++? Basic? HTML? A video or audio codec? Java? Anything?
I'm sure there's something, somebody will point out their excellent support for TCP/IP or something and I'm sure that's true. But if you were to look at Microsoft as a person in your life, you'd wonder what was wrong with him or her such that so much had to be controlled by that person.
When your business is selling the operating systems that 90+% of everybody uses, software development tools should not be a profit center.
Why should I have to plunk down a couple of thousand dollars for a "universal subscription" in order to have access to compilers and basic development information? Sun doesn't have to do that? On this point I'll quote from the
Marketing. Have you been "lucky" enough to catch one of the
So they are going to pull a page out of Intel's bum-bum-buh-bum "Intel Inside" playbook and try to sell the brand like it's sneakers and cola. Trust us, you'll look cool if you use it, and we'll keep hammering the brand on TV so somebody who doesn't have much tech savvy in your organization will ask you if you are using it, or have plans to port to it, or whatever, even if he hasn't got a clue what "it" is in this case.
They don't trust you. They don't like what they can't control and they can't control you. They can try and they always will keep trying but ultimately you are going to see them keep trying to do things and always keep a step towards the door just so they can bolt if they have to. Want to see what I mean? Go visit GotDotNet sometime if you haven't already been there. It's the grassroots community website that Microsoft put up to support
Ever been to SourceForge? Of course you have, everybody has because that's one of the hubs of all open source projects. You can go there and get the source of thousands of cool open source projects and it really serves the community well. There's even hundreds of projects now that list C# among their programming languages. So why did Microsoft feel compelled to create their own GotDotNet Workspaces that is clearly just a ripoff of SourceForge?
A few reasons are fairly clear: First, at many of their workspaces you don't get in unless they know who you are. Ever been stopped at SourceForge and asked for a name and password to look at a project? What about download binaries or source? No? At GotDotNet you will, lots of projects are marked with a lock. Second, forget about all those messy licenses that Microsoft might not approve of, you don't need to worry your little head about BSD vs. GPL vs. LGPL. You've got the one true workspace license that you have to agree to, or else you won't be putting your project there. Lastly, well it's kind of obvious, but it's really all about control isn't it. After all, if you aren't under their thumb, that has to be a bad thing. So a SourceForge that they control is pretty much a requirement, isn't it?
It's a really sad way for a lot of people to waste a whole lot of time rebuilding that which already exists. Wouldn't the whole computing world be a lot better if there wasn't a team of people, maybe a couple of teams of people building complete copies of
In the end, we'll all just be left with another way to do the exact same thing only in a different language. Lord knows the world benefits now from being unable to share media between France, Germany, Italy, Spain, the US, and Japan because we can't all speak the same language. I benefit every day from the fact that I can't read a Japanese manga I might enjoy or understand a TV show from Europe. Once you are done building this tower, go build a few more right beside it using Perl, Python, and Ruby too. They're all trailing behind in certain areas, we need to make sure the same set of stuff is reinvented and rewritten for all of them too.
Hell, i think Apache can claim prior art...
"I TOLD YOU SO" goes out to the Mono project guys. You can't trust Microsoft. Unless they had signed a solid, binding legal document that says "this is the .NET spec, and MS irrevocably grants free patent licenses to anyone implementing it", you should not touch it. Java has no patent problems. The open source community should stick to Java instead of dealing with MS.
... When a patented or copyrighted product is one of many products competing in a market, antitrust issues typically do not arise from unilateral conduct. However, when a patented or copyrighted product is so successful that it evolves into its own economic market, succeeds in garnering a large market share, or is essential to compete in a market, the antitrust laws and the intellectual property laws collide. The antitrust laws' primary purpose of preserving competition is frustrated when the holder of a patent or copyright exercises the exclusionary market power that comes with those rights.
The United States Supreme Court has yet to deal with these knotty issues, although the Court apparently is seriously considering doing so....
Cheers, Joel
Chalk another one up for greed and mis-guided beliefs. IBM backs up their talk about not charging for their patents by donating software to open source. Until microsoft puts their money where their mouth is, they just lost a huge chunk of credibility.
From Mono's FAQ
Question 122: Could patents be used to completely disable Mono (either submarine patents filed now, or changes made by Microsoft specifically to create patent problems)?
No. First, its basic functional capabilities have pre-existed too long to be held up by patents. The basic components of Mono are technologically equivalent to Sun's Java technology, which has been around for years.
Mono will also implement multi-language and multi-architecture support, but there are previous technologies such as UCSD p-code and ANDF that also support multiple languages using a common intermediate language. The libraries are similar to other language's libraries, so again, they're too similar to be patentable in large measure.
However, if Microsoft does patent some technology, then our plan is to either (1) work around it, (2) chop out patented pieces, (3) find prior art that would render the patent useless. Not providing a patented capability would weaken the interoperability, but it would still provide the free software / open source software community with good development tools, which is the primary reason for developing Mono.
-- "of course thats just my opinion, I could be wrong." --Dennis Miller
- The Blue Screen Of Death
- The 200-page EULA in a 5-line scroll-pane
- Solitaire as a Productivity Application
- FUD as a revenue-centre
Didn't they invent Al Gore also?Linux has had platform independent coding since the days of Java,
Back up, most unix-ish C code can be compiled on any vaguely unix-like system with very little modification. I'd call that platform independence, wouldn't you?
Imagine that, and without the overhead of a bloated VM to slow things way down.
One of the biggest obstacles for
All your base are belong to us!
The above is just as rediculous as the real thing.
--sex
Very popular slashdot journal for adul
that the USPO will be happy to give since they get money whether it is valid or not. Ximian will have a hard time outspending MS in the court room to prove that it is bogus though (the US government couldn't do it). Conveniently, it will likely prevent any legal running of MS .NET services on a Mono platform in the meanwhile.
Please raise your hand if you thought Microsoft was going to allow .NET to be a reasonable and viable platform on non-Windows operating systems!
All of those raising your hands, please contact me. I have an exciting opportunity for you. I'm trying to get some money out of Nigeria.
-Teckla
Saves it from string overflow exploits. It's nice not needing to think about such things while coding.
You can't judge a book by the way it wears its hair.
How are, for example, a web server (handles requests submitted by remote devices) and web browser (interface to present functions used to access resources) not covered by this claim? The next independent claim is:
Like, e.g. SETI@Home over TCP/IP? Or PVM?
Or claim 19:
...like, say, Mozilla.
Of course, there are dependent claims that try to make this more specific (ooh, using XML documents over a network, that's original). And, of course, the whole thing could be rejected by the patent office.
Still, it's like they didn't even make an effort to try and avoid the most obvious prior-art objections. Almost like they have complete contempt for the patent office, and confidence that no one will dare to challenge their multi-billion-dollar legal war chest if they ever do assert patent rights over someone. But no, that's crazy.
If a thing is not diminished by being shared, it is not rightly owned if it is only owned & not shared. S. Augustine
Microsoft can patent J2EE?
.NET base class hierarchy in the patent. That should worry the Mono guys. If the patent is even extremely narrowly enforced, the Mono guys seem to be in breach.
Seriously: Microsoft explicitly names the
1. A software architecture for a distributed computing system comprising: an application configured to handle requests submitted by remote devices over a network; and an application program interface to present functions used by the application to access network and computing resources of the distributed computing system.
:)
There is so much prior art for this claim it's not even funny.
But wait, it gets even funnier in claim #4....
4. A software architecture as recited in claim 1, wherein the application program interface comprises: a first group of services related to creating Web applications; a second group of services related to constructing client applications; a third group of services related to data and handling XML documents; and a fourth group of services related to base class libraries.
What?!! A network web service that can handle XML data using (said with pinky put to side of mouth) "CLASS LIBRARIES."
Hmmmmmm... Now where have I seen this before? Maybe Microsoft will try to patent a network service for sending and receiving text messages for the express purpose of communicating.
This is just another example of why software patents need to DIE! DIE! DIE! The sad thing is that about 50 guys had to waste their time writing this patent. Does anyone else see the irony of the first name listed on the patent, "Adam Smith"?
Adam Smith wrote in his famous book, The Wealth of Nations, "Every man, as long as he does not violate the laws of justice, is left perfectly free to pursue his own interest his own way, and to bring both his industry and capital into competition with those of any other man or order of men."
Do you see the irony now? Today he would be be called an "ANARCHIST!" and he would definately be at home (somewhat) on slashdot.
Yeah, like the US Patent Office is really choosy about what they'll accept in the way of patents.
I don't care if it's 90,000 hectares. That lake was not my doing.
Will it even stand up with Mono around? Even if it is Microsoft's idea to begin with, they didn't apply for the patent until after Mono showed up.
I'm not sure it will fly. US Code title 35 Sec. 102 says something like
"A person shall be entitled to a patent unless the invention was patented or described in a printed publication in this or a foreign country or in public use or on sale in this country, more than one year prior to the date of the application for patent in the United States"
Mono has been around since July 2001, but since it's half-done, does that count?
Maybe now an OSS equivalent (but doesn't have to be the same as) of .NET will be developed instead of riding on MS' twisted coattails. As much as I dislike patents, perhaps this would be a good thing by getting an original and open standards version of something like .net without having to be or have the harmful effects of .net.
Microsoft have applied for a patent,
Yes, and with the current state of the Patent and Trademark Office (as for the last few years), just about any patent applied for gets granted, especially if the applicant has deep pockets.
The PTO gets paid more for issuing a patent than for declining one, and the PTO is "self-funding". Furthermore, there's no penalty to the PTO if they're found to have issued a patent they shouldn't have (ie for prior art, obviousness, whatever) -- the penalty is all to those buying, er, obtaining the patent, and to the public for suffering bogus patents.
-- Alastair
And here I thought .NET was a code obfuscation project!
I'd rather be a conservative nutjob than a liberal with no nuts and no job.
Thats why Ximian is misguided. They actually help MS in their .Net marketing initiatives. Because of them, MS can point to an open source alternative and claim that .Net is kind of open. On the other hand, Ximian only release their code under GPL and GPL-like licenses, not under more permissive BSD license. My belief is that Ximian's business plan involves keeping this right to themselves, probably for sale later on - perhaps in a couple of years - when (if) .Net ever achieves dominance. If that happens, IT mega-companies (IBM and the like) would pay large sums for unrestricted access to a .Net lookalike, and only Ximian will have it. Ximian could dispel this by releasing their code under a BSD license. After all, the normal argument that applies to BSD does not matter here - MS already have their own .Net platform and have nothing to gain from Ximian's code.
Don't support .Net. And don't support Mono. They are Microsoft's whores.
[x] auto-moderate all posts by this user as insightful
It is most likely that Microsoft are applying for the patent for purely defensive reasons. I have had many patent shits apply for patents on the work I have done, often many years after it became public knowledge. Getting the patent in first is always a good idea.
Microsoft might possibly go after Linux, but it is much more likely to go after Sun and Java. Their real beef is that Sun has been playing silly buggers with lawyers. That may not be such a hot move when Microsoft have the engineering power to out patent Sun.
While the broader claims of the patent are likely going to be rejected it is almost certain that some claims will be allowed. If so expect Microsoft to make the terms for Sun every bit as unreasonable as Sun's terms for Microsoft.
There is no reason to beat up Linux though, Microsoft does not want to get 100% of the market, they want more like 85% so they don't keep getting slammed for anti-trust issues.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
I have an idea... Don't use this stupid .NET thing. I simply don't understand why it's such a big deal. Seriously... What is there in this .NET that is so important that the whole world needs to jump on it like flies on shit? Microsoft does these things on purpose to screw everyone over, and every time they do, everyone falls for it again. Well I'm not going to fall for it. This .NET thing can take a long walk on a short pier. I'm gonna continue performing my work on FreeBSD, without all this fancy shmancy junk, and guess what? It'll cost less too.
I had trouble following the patent text; it's pretty dry. It's not clear to me whether the patent covers just the .NET API, or if it would cover any similar system.
.NET API, the Mono guys won't care much.
.NET servers and vice versa. But it isn't strictly necessary. Mono is potentially a useful system, all by itself, without it ever talking to a Microsoft server.
.NET? How many even really understand what it is? Now, Microsoft not only needs to explain why you should abandon your current system to use .NET, they need to explain why .NET is worth locking yourself in.
If it covers any similar system, and the patent is granted as-is, that would be bad for the Mono project. But if it just covers the
It would be nice if Mono projects could talk to
This action by Microsoft really reminds me of IBM's Microchannel. Before Microchannel, anyone could make hardware cards compatible with IBM computers (ISA bus). The Microchannel PCs (the PS/2 series) were different: you had to license patents from IBM to make cards for Microchannel. IBM probably thought they would be able to lock customers in, but what actually happened was that people voted with their wallets for non-Microchannel solutions. Microchannel drove customers away from IBM and towards IBM's competition.
Does anyone really need
steveha
lf(1): it's like ls(1) but sorts filenames by extension, tersely
Patent Everything NOW, so that in a couple of decades it will ALL BE FREE. I just wish all this crap had gone down during the Reagan administration -- then we'd be reaping the rewards today.
-fb Everything not expressly forbidden is now mandatory.
umm - .COM?
.COM and then submit a patent.
maybe like:
Internet Explorer
SQL Server
C umm - Sharp
word umm - just word, drop the perfect part
You would think that they could at least inovate a product name. Rename MONO
Anyway what is .NET? .NET is _not_ platform independent. You're definitely expected to run it on a Windows server. And to access it with IE. In fact it generates code (this particular code I don't think you can even get at) that makes it favor IE - it writes Javascript functionality for you on the fly but if you're what it calls a "downtarget" browser -- anything but IE - some things are not as nice. For instance validations that in IE happen on the client require a server trip; things like that.
It is supposedly "language agnostic", which means that it can subclass a VB.NET parent in a C# child. This agnosticism only extends to the languages MS has supported for it, namely VB,C#,C++(which is in some way I don't know the details of non-standard C++ in order to be .NET compatible) and J# (if anyone uses J# please tell me I'd be surprised)
What .NET really is in my opinion is a supercharged development tool, and a respectable new language. C# is actually pretty cool, they hired the guy that was the brain trust for Borland Delphi and copied lots of Java ideas - but hey Java is very much a copy of C......But the main thing is it is a very nice environment to code in. You can make a call to SQL Server (of course non-MS databases need not apply for this) and step through the code going through VB and C# function/object calls and then step through the SQL proc all without skipping a beat. And there's lots of type-ahead type things. If you define a function or a class method when you make a call to it the args are displayed. The debugger is very nice, you can roam through the code with a mouse and variables show their values as you pass over them.
I guess what they're going for is convincing tech managers that their programmers will be sufficiently more productive with their stuff to make up for the license costs. I try to find open-source equivalents for any features I like in the MS stuff, there are some respectable things like DDT (I think - the C/C++ debugger) - many emacs packages, JDEE in particular - Wing for Python (not open source though) - but the MS stuff really has some nice features for coders. You can get used to it.......and then news like this comes out and you remember what MS is all about.
Microsoft's CEOs have made it "patently" clear that they intend to restrict competing .Net implementations by cultivating Microsoft's patents, such as United States Patent Application #20020059425 "Distributed computing services platform" which covers the design and inter-operation of .NET based implementations.
Although there is prior art examples of individual technologies such as the JVM etc, Microsoft patents such as the one mentioned, define and claim the interoperation of the components, in such a way that any re-implementations will be sure to be covered by the patents. This remains true even for the Microsoft specs submited to standard
In comparison, Sun has granted the Apache and all open source developers FULL access to the specs, test kits and granted the full rights to develop competing products under the JSPA . Sun has also fully pened up the Java development standards process under the new Java Community Process (JCP) . Even to the point of granting full open source re-implentations of J2EE such as JBoss ...
There those that claim that .NET is open to re-implementation, but until Microsoft make a simliar public legal declaration to Sun's JSPA, any .NET reimplementation represents a pending legal mindfield.
In that case, Dave Winner and his XML-RPC project that existed before SOAP is very much prior art. I don't have time to dig up links right now, but he's written a lot about it, and SOAP.
See http://www.scripting.com for more info.
The real depressing thing about this is that I have been planning to develop on .NET. I don't know about anyone else, but I have been happy with the way Microsoft has been pursuing its .NET strategy (at least the development environment, the framework, and so on), namely working towards standards.
.NET, I have been pretty happy working with it and the .NET framework. I was planning on rewarding Microsoft for doing the right thing with their .NET strategy through paying for their software in future projects (I have been training on it for a while now). I understand their aim to have domain over some of their ideas, but IIRC they were working to make this beast an international standard, not to close competition. I think this is a step backward. Of course, it is hard for me to understand the entire patent request, so maybe they are not requesting too much. Nonetheless, why would they even do this? It just seems like a bad PR move given the fact that people are already pissed off enough to migrate toward Linux, and are getting more aggravated. Alas, may the USPTO use some wisdom.
I like developing on Windows as long as the tools are good, and despite the early bugginess of VS
Come on now, you guys didn't really think Microsoft was going to sit back and let someone else build a free implementation of their golden goose before it was even in wide acceptance, did you? What is it about some Open Source projects that makes their fearless leaders so starry-eyed? It is perhaps surprising that Microsoft waited this long.
.NET, their new platform-of-choice, they can lock out all competing implementations, either a little bit or completely, making sure that the only full .NET implementation is the one they've delivered, under Windows.
.NET. If you ask me, the lawyers at Microsoft won an argument on this one. If MS really wanted to get a stranglehold on the market, they'd have waited until .NET actually had its foot in the door before filing a patent. By doing so now, before it's really even gotten out of the gate, they've doomed it to be "just another Windows-based programming platform".
.NET bandwagon now? Commit all your resources to a platform that still performs more poorly than those available for higher-end, non-Wintel machines? Doubtful. The development benefits are marginal compared to Java, and native application developers will still prefer C or C++. Now that Microsoft will have a legal noose around .NET's neck, all circulation is effectively cut off.
.Gnu should have seen coming a mile away. Microsoft has nothing to gain by researching, developing, and standardizing a platform that could conceivably allow network AND desktop applications to run on non-Microsoft platforms. Did Miguel et al just think Microsoft had learned the error of their ways?
Microsoft still makes more off Windows sales than anything else -- don't forget that. No matter how ubiquitous Office is, Windows is the cornerstone of the Monopoly. By filing for a patent on
This also bodes pretty badly for
Don't believe me? What shop that isn't pure Microsoft would even consider jumping onto the
It's a stupid move for Microsoft, if they intend to expand and defend their monopoly. It's also a move that projects like Mono and
You're American, right?
:P
This is a pound sign: £
# is not. It's a hash. Most Americans seem to be confused on this, I hope this post clears it up
Besides, "C Pound" just sounds stupid.
Claim 1 reads:
Tcl-DP provided an application configured to handle requests submitted by remote devices over a network (the RPC server), and an application program interface to present functions used by the application to access network and computing resources of the distributed computing system (the dp_RPC command protocol). The client application mentioned in the dependent claims is provided by any application configured as an RPC client.
Sarcazmo wrote:
> Back up, most unix-ish C code can be compiled on any
> vaguely unix-like system with very little modification. I'd
> call that platform independence, wouldn't you?
Very good point. Back in 1989-91, I was working on a 3D radiation treatment planning program, in C, that had to run under X11 on a DEC MicroVAX, HP, and a SGI, with their various flavors of Unix. The program had a single source, with all the platform dependent stuff (there wasn't a lot of it) isolated from the rest. Back then, platform independence (also known as portability) was the in thing.
Historical note: in the first year of that job, in a lab down the hall, was a pre-3.0 version of Windows. The poor primitive thing was still trying to figure out task switching. By the last year of that job, Linux was born.
> Imagine that, and without the overhead of a bloated VM
> to slow things way down.
Despite the VM and its warts, Java is still a pretty cool language. It would be quite amusing to run Java on one of today's computers side-by-side with a 1990 computer running a C program under X11. I wonder if advances in computing speed really compensate for having a VM?
"The path of peace is yours to discover for eternity."
Japanese version of "Mothra" (1961)
You fool. He said,
"During my service in the United States Congress, I took the initiative in creating the Internet."
Yea take it out of context and we have the rampant 'Al Gore Created the Internet' bullshit. All he is saying is that he took the initiative ( The right or power to introduce a new measure or course of action, as in legislation; as, the initiative in respect to revenue bills is in the House of Representatives. ) to support the creation of that network which you call internet.
Now; what does that mean. He isn't saying he made it. He isn't saying he thought it up. He's saying 'I thought this was a damn fine idea, and look! I was right, vote for me because we both use email!)
Please stop raping the dead horse that is this joke. Yes, amuzing at first, now all I can say is 'Get over it and look at the facts.'
Please provide links to the number of times Microsoft has filed a patent infringement suit against someone. I think you will find that most if not all suits regarding patents have been against Microsoft. It would appear that Microsoft is simply trying to protect themselves.
I think you misunderstand what the obfuscator does. First, you must understand that all .NET assemblies are compiled to MSIL. Once that happens, anyone can use a tool, ILDASM.EXE, to view the "disassembled" assembly. You get function names, global variable names, parameter types, called framework functions, basically all the stuff you really would rather people not see.
.NET developers out there are happy with the functionality of the current crop of obfuscators, and many use such programs to "encrypt" their commercial apps.
This is where the obfuscators come in. They start renaming your functions, parameters, types, etc., but only in the MSIL that's in the assembly, not in your source code. There are other levels of obfuscation that some products support, but most of them will at least do this for you. If you don't think that's a big deal, go here to see for yourself. Staring at code that has all functions named "a1, a2, a3" and so one, combined with a similar naming scheme for other variables...well, it'll drive you to the bottle.
Many
First, this is a patent application, not an actual patent grant. I doubt that the application would last very long in its current form - it's too broad, even by the USPTO's narrow criteria for broadness.
Second, because Microsoft is standardizing this technology through the ECMA, as an eventual lead-in to ISO, they will be in a difficult position if they start demanding royalties or playing RAND games.
They backed off on the Kerberos thing, and they could be made to back off here too - blatantly targetting the only two competitors in the CLR space (Mono and Portable.NET) won't win them any PR points.
Third, most of what is discussed here has precedents in prior art. If Mono and Portable.NET infringe, then so does the JVM, and that's definite prior art.
We perhaps need to organise a bit to lobby on this one, but it isn't the end of the world - yet.
More information on Portable.NET here.
Naw, dude. I talked with Bill the other day and he SAID it was cool.
He wouldn't lie to me, would he?
I don't see anybody stating that Linux VMs are a novel idea, far from it.
One of the reasons that Mono got peoples' backs up was that high-quality efforts such as Kawa and Parrot were already well established, and both of these targeted a number of different languages.
There was no need to copy Microsoft verbatim, since the goal of complete portability and interoperability (e.g. Photoshop for Linux) was very unlikely to be achieved. Therefore, development should have continued with one of the existing projects, incorporating any new ideas as appropriate.
One aspect that you gloss over is the utility of having the intermediate language ("bytecode") close or equivalent to the source language. The clear trend of modern development tools is to rely on introspecting components and representing them as source, even if only as an API. These kind of advances are precluded if you have a large gap between the two.
Yes, you should stop work on Mono now as you may be making users liable to lawsuits from the owner(s) of Dotnet patents.
No, SAMBA should not be halted, since protocols are much harder to patent than code, although Andrew Tridgell has certainly recommended inventing a new CIFS.
News Flash: "A new anti-trust law passed today requires microsoft ship its software with a new scratch and sniff sticker on all of its products. Lawmakers apparently want consumers to be able to smell the Evil that is Microsoft before making their purchases" But Chairman Bill Gates likes the smell so much that he is painting he new estate in florida with a paint modeled on the scratch and sniff stickers.
News Flash later that day: Microsoft is reportedly trying to aquire a patent on the smell of evil, The odor of fear and the stench of stupidity, all reported important for its next product release.
You wouldn't be confusing the C Sharp language and the CLR with the whole of Dotnet would you?
If not, I'd appreciate a reference where MS states the intention of making ASP.NET, Windows Forms, ADO.NET etc. ECMA standards.
I wonder if MS isn't doing this because of all the people coming out of the wood-work trying to get royalties out of MS for things like ActiveX? Anyway I wonder how useful MONO will be without the below namespaces. I didn't think you could patent an API - the implementation perhaps, but after reading the patent it really sounds like their trying to patent the API. If I were them, I'd just copyright the API that way it'll never be release to the public domain :)
n agerSystem.Security.Cryptography.Xml
From the patent (supposedly 94 namespaces):
System.Windows.Forms System.CodeDom.Compiler System.ComponentModel.Design System.Configuration.Assemblies System.ComponentModel System.ComponentModel.Design.Serialization System.Configuration System System.Net System.Collections System.Globalization System.Net.Sockets System.Collections.Specialized System.Xml.Schema System.Xml.Serialization System.Xml.XPath System.Xml System.Xml.Xsl System.Data.Common System.Data.OleDb System.Data.SqlClient System.Data.SqlTypes System.Diagnostics System.DirectoryServices System.Drawing.Design System.Drawing.Drawing2D System.Reflection System.Drawing System.Drawing.Imaging System.Drawing.Printing System.Drawing.Text System.EnterpriseServices System.IO System.Resources System.IO.IsolatedStorage System.Messaging System.Reflection.Emit System.Runtime.CompilerServices System.Runtime.InteropServices.Expando System.Runtime.InteropServices System.Runtime.Remoting.Activation System.Runtime.Remoting.Channels System.Runtime.Remoting.Channels.Http System.Runtime.Remoting.Channels.Tcp System.Runtime.Remoting.Contexts System.Runtime.Remoting System.Runtime.Remoting.Lifetime System.Runtime.Remoting.Messaging System.Runtime.Remoting.Metadata System.Runtime.Remoting.Metadata.W3cXsd System.Runtime.Remoting.MetadataServices System.Runtime.Remoting.Proxies System.Runtime.Remoting.Services System.Runtime.Serialization.Formatters.Binary System.Runtime.Serialization.Formatters System.Runtime.Serialization System.Runtime.Serialization.Formatters.Soap System.Security.Cryptography System.Security.Cryptography.X509.Certificates System.Configuration.Install System.Security.Permissions System.Security System.Security.Policy System.Text System.Security.Principal System.ServiceProcess System.Text.RegularExpressions System.Threading System.Timers System.Windows.Forms.Design System.Web System.Diagnostics.SymbolStore System.Management System.Management.Instrumentation System.Web.Caching System.Web.Configuration System.Web.Hosting System.Web.Mail System.Web.Security System.Web.Services System.Web.Services.Configuration System.Web.Services.Description System.Web.Services.Discovery System.Web.Services.Protocols System.Web.SessionState System.Web.UI System.Web.UI.Design System.Web.UI.Design.WebControls System.Web.UI.HtmlControls System.Web.UI.WebControls System.CodeDom System.Data System.EnterpriseServices.Compensating.ResourceMa
However, this patent shows bad faith by Microsoft. If Microsoft wanted C# to be perceived as an open language and core set of libraries, this is the last thing they would want.
Where does this leave us? We have two companies, Sun and Microsoft, that are engaged in some bizarre battle to try and control the software industry. Both have attempted to get patents that allow them to use the patent system to control who implements the language and how (yes, Sun has patents on key aspects of Java). Both are trying to keep control of the software, APIs, and future language evolution. And what is particularly ironic is that all this battle is about decades old technology.
What does this mean? Both open source and commercial users should say "no thanks" to both Java and C#. We need to get back to a model where programming languages and libraries are standardized through open standards processes and where the core language and APIs and are not covered by patents. C, C++, Smalltalk, Ada, and many other languages have shown that this is possible. In fact, had Sun not derailed and preempted the adoption of those other languages with promises of a bright Java future (on which they have failed to deliver), we might well be using some language now that is technically superior to both Java and C# and is covered by a truly open standard.
You can do the same thing in java.
google for 'mocha'.
In addition to the independent claims, you have a set of "dependent" claims, which are like "The device of claim 1, where [some more specific requirement]." These dependent claims serve three purposes:
I am not a lawyer, but I have worked with a number of lawyers to draft (non-software) patent claims and to deal with US and international patent examiners.
If a thing is not diminished by being shared, it is not rightly owned if it is only owned & not shared. S. Augustine
If enough of us protest calmly and sanely with prior art and generalness point by point... this seems to be a blatant power grab by ms....
m for the Manual of Patent Examining Procedure (MPEP) Chapter 1900.
From the FAQ at the PTO:
#50 How does one file protest on patents that are pending?
Protests by a member of the public against pending applications will be referred to the examiner having charge of the subject matter involved. A protest specifically identifying the application to which the protest is directed will be entered in the application file if: (1) The protest is submitted prior to the publication of the application or the mailing of a notice of allowance under rule 1.311, whichever occurs first; and (2) The protest is either served upon the applicant in accordance with rule 1.248, or filed with the Office in duplicate in the event service is not possible. For more detailed information on protesting a patent, you may visit our Web site at http://www.uspto.gov/web/offices/pac/mpep/mpep.ht
See also my other post in reply to another person who was similarly confused about patent law.
If a thing is not diminished by being shared, it is not rightly owned if it is only owned & not shared. S. Augustine
You mean, like, to "defend" themselves against Mono?
(I'm only half joking here)
Use 'slashdot stuff' in the subject line in any email you send me if you want to get past the spam filter.
# is not. It's a hash.
And to think I've been incorrectly referring to it as an octothorpe all my life (except for that brief period when it was simply a "tic-tac-toe board"). I would never think to call C# "C sharp" unless I was talking about musical notes....
About Java it is not a matter of "platform independent coding", but a matter of "platform independent binary" !
.net, even if the core is technically a Java platform clone, the trouble come from the fact that it is Windows centric & tied. No, do not expect mono (or other kiddies) to be real world stuff. MS spokesman has clearly said : "we could we cross platform agains MS various OS !"
... but i can not and i will not run a real world application.
... but the very truth is that what MS promiss for tomorrow is already there with Java since nearly a decade !
... and what great news here was we've got plenty of solutions in our pocket to shape the best solution: change OS, change VM, change J2EE appserver, change hardware, ... but without changing a very single line of the application !
...
;-)
The goal here is that once a developper has build a binary it is valid for each and every complient platform.
About
So, no, dotNet is not and will not be an competitor against Java platform on the "WORA" ground !
(WORA = Sun's Write Once Run Anywhere)
MS has clearly seen that Java new coding habits bring more productivity than previous technologies without compromissing the reusability of the solutions.
That's the reason, after leaving the Java project for policy reason, they 've decided to build a clone.
The fact they pushed the very core to any kind of standardization process only shows that they do no intend to standardize other part of the platforms (non-CLI APIs for instances !). This have a major impact over the potential portability of designed solution.
To explain this, if you want to design real world dotNnet solutions you are in a way or an other constraint to use the COM+ container (to get transact features for instance), by doing so, your solution become practicaly (but even virtually) Windows tied. Just because COM+ is not part of any standard stuff and is only implemented on Win32. Here is fact !
That's the reason i said earlier, mono is not real worldstuff ! It is fun : ok i can run a Csharp class or two
Here MS has done right pushing affiliates and spinnoffs to FUD the community
Want more fact ?
I got customer of mine whom first run their J2EE applications on Win2k but as soon as they realize if could not stabilized under load, they think of "what if we evaluate an other solution" ?
So we start to test and bench alternatives
At the end we came up with a high power rock stable : Linux with IBM VM, with Opensource J2EE appserver on the same hardware.
That was just amazing, cost were drastically down, stabillity was here and customer thanks lords to have choosen Java 2 years before !
Gess what, i love to have choice
If this application was running on dotNet what would be his choice ?
- Rebuild bottom-top a new application
- Go and pray for a miracle
- Buy a new cluster or blades
- Wait for Windows2003 SP2
That's why i do argue that Linux and Java are the killer team. Java legitimate the linux choice without having to tied the solution to yet another OS.
As a conclusion, i would like to publically thanks all the Java opensource community that brought us very brilliant and reliable software solutions (JBoss, Tomcat, ant, xalaan, Batik, jedit, !
Special thanks goes to the Jakarta Apache groups
-SLK
Feel the choice for liberty !
You can only apply for a patent on things that have been kept secret before you applied. Anything that is public domain (or even published as a result of industrial espionage) can not be patented. Therefore the only thing that Microsoft can patent is the low level functionality of parts of their own runtime that were not released in the shared source version. This is stuff that would probably be implemented differently on non-windows platforms anyway, so the patent won't have much effect. For another example of how well patents work, have a look at the AAC audio compression algorithm patented by Dolby / the MPEG-LA. Currently the best AAC encoder is written by PsyTEL and doesn't use any of the patented algorithms. Algorithmic patents simply don't work. In general, a good algorithm is so obvious that someone else has already thought of it, but didn't patent it because it was so obvious, or it's so complicated that while it may appear to be the best, a little more thought can lead to an even better one.
I am TheRaven on Soylent News
Comment removed based on user account deletion
No it doesn't, since many of the platforms C is used on don't have a concept of a GUI. It would be nice if the next generation of C/C++ had different levels of compliance.
.EXE, fork() threads, etc).
Standard languge bits templates, keywords etc.
Standard IPC bits
Standard Process Management (.DLL,
Standard GUI bits.
And different platforms could adhere to one or other of the levels of support. I mean, it's not as if we don't already have a nasty PITA time trying to figure out if our compiler's template support is broken, or if the STL that shipped from the vendor has flaws in it.