Public Standards: C# 2, Java 0
TheAncientHacker writes "While Java coders wait for SUN to be willing to accept any public standards for the Java language and runtime, Microsoft's C# and its underlying CLI, already standardized by ECMA, are about to get a second certification. This time by by the granddaddy of certification groups, the ISO."
I love Java and earn a living coding J2EE systems, but Sun's posture on not creating a public standard for Java is just ridiculous.
It immediately creates the notion that Java is a proprietary language.
Hard to believe that Microsoft's new language has two public standards and Sun's language has none. Is something wrong with this picture? Microsoft is starting to appear as a reasonable and responsible company and Sun appears as stumbling around in the dark.
What good are open standards if your implementation is the only one? In addition to Sun, IBM has a Java implementation and there is an open source implementation and library set that is getting pretty good.
Actually, I wouldn't put it past Sun to break their standards either, but what good is Slashdot if you can't bash Microsoft.
only a subset of the .Net Framework that makes it possible to share data with applications on other operating systems. No software for defining a GUI, no database access. Pesky little things like that.
The Sco lawsuit agaisn't IBM is proof that anything that looks the original is subject to copyright claim. The main argument used is that SCO is the owner of SysV technology.
C# is not only copyrighted but also patented.
You can iso it and declare it as free as you want to but its still proprietary in my book for this reason. Likewise you can get a pig and put lipstick, makeup, eyeshadow, and a thong on it and call it Britney Spears but its still a pig.
http://saveie6.com/
I guess I'll just stop coding in it.
that's too bad really - I liked java.
seriously - why should we care? does the code allow me to do what I want? yes.
and done - I don't care about no stinking standards evaluation.
There are some odd things afoot now, in the Villa Straylight.
People using java: 4,000,000 .net: 2
People using
it doesn't need standards, it is the standard!
So is Java, but really how can you call something standard if it's patented? Just look at the whole rambus mess regarding patents it holds against sdram. Patents undermine standards by allowing one corporation monopoly control over anybody who attempts to implement the so-called standard, thus leading to diminishing number of people wishing to implement the specification, leading to technology fragmentation all the same as if the specification was proprietary.
Just a quick question for "TheAncientHacker" (The guy who posted this story.
Do you perchance work for Microsoft or one of it's affiliates?
Who actually owns copies of those standards? I know I don't - simply because they charge several hundred bucks a copy.
As the artical says: The academic community benefits perhaps more from the published specifications to do computer science research than do companies.
Academic research is fine, but when I'm looking for new programmers I would much rather have real-world experience. How many academic programs you wrote as an undergrad (or even a grad student) had to run for hours or even weeks and maybe with direct user interaction and not crash? Standards don't help you learn how to code that.
Belfunge, now with command arguments!
Nobody cares?
Platforms for C#: 0 Windows .NET is still .NOT ........
Platforms for Java: Windows, Solaris, Linux, AIX, Irix, Tru64,
At my university:
Classes tought with C#: 0
Classes tought with Java: 6
I want my rights back. I was actually using them when our government stole them after 9/11.
The good thing about standards is that there are so many to choose from.
To be read: "I don't care if C# is standard if it is a crappy language"
We all know that microsoft is inherently bad and sun is inherently good.
This is the stupidest April 1st post yet! And a day late!
I like C# more than I like Java though. Hopefully actual-factual standards will push it's adoption forward.
I don't need no instructions to know how to rock!!!!
Yea, and there are way more MS Certified anythings than Sun. Does that mean they know their buts from a hole in the ground?
.Net scales like a rock, and isn't even supported by Microsoft in its own products.
.Net tend to be a moving target costing developers (Yea those of us that don't have money because all are jobs are going to India with the blessing of M$ AND Sun.) a ton of cash. Java Free!
;)
Go take your VB or C# and write a virus or something.
But Java is Open(ish), and there is plenty of documentation on what is was, what it is, and what it will be. Depending on the weather C# and
Get a clue, get a job, and read a book to learn what programming really is. (Long live C, ASM, and Java).
-US Coder Supporter.
My understanding is that MS is bringing some components to the standards orgs so they can say that, but that their environment will still heavily leverage internal and private APIs.
.NET is not the CLR.. .NET is the CLR, APIs, Libraries, and so forth.. therefore only a small part of the environment is open.
.NET.
So, you have to differentiate between a baseline CLR environment, and the actual programming APIs that would be used to build on top of this.
Who wants to bet that this is more for marketing than it is for getting cross platform capabilities? Without MS opening all libraries and APIs *AND* approving any patent use they have on those components to other systems, a public standard on CLR means nothing.
Sun should bring Java to a standards org, but at the same time, its well documented, understood, and there are no hidden parts to the JVM/Runtime. You aren't going to see that with
I am not waiting for Java or Python to be accepted as a "public standard". I am confident in the trustees of these languages/platforms.
Larry
Some lameness-filter stuff
Except for the appendices. You know, the appendices that the main body refers to? They basically just dropped those from thier standard.
So the ISO C++ standard was issued with references to non-existent parts.
Really useful.
Other languages that are not standardized by the ECMA include Perl, Python, and PHP. They are still being used an awful lot.
Sounds to me that an ECMA certificate is just some PR to impress the clueless PHBs.
Batlock...
"The good thing about standards is that there are so many to choose from..." One possible reason MS could be pushing standards for C# is that if there is a standard, they can blame errors in C# code on non-compliance rather than the inherent faults of the language.
The way I understand it, MS is happy to make C# a public standard while retaining control of the only thing that makes C# interesting -- the .NET architecture.
.NET)
Still, I don't see why Sun would care if the Java language and it's JVM mechanism were public (as opposed to the spec for Java infrastructure components, corresponding to
Because of its bindings with other MS technologies, C# code will never be fully portable to other platforms and so the ISO standard is meaningless unless you are already a Windows-only programmer. If you ARE a windows-only programmer, then you can at least be assured MS won't deprecate the entire language with their next version of .NET.
It seems like Microsoft is trying to change their image from industry bully to industry team player. I have just been to an academic presentation of .NET and I must admit that MS studio .NET is very easy to learn and use, as well as being standards based.
.NET platform is built around Windows and the "Write in any language, run on windows" idea is not very attractive at least to me.
.NET to other OS (the rotor project). However, rotor is not meant to be used in production, which makes it rather useless in real life.
:)
The problem that I see with Microsoft is their attitude of Windows being the only operating system. The entire
You may argue that MS has already ported
If you look at the Java camp, however, things aren't that great either. The tools are generally not as well integrated and Sun is trying too hard to control Java.
So, in conclusion, I'm not sure which is better. For now, I am staying with Java for my courses. But the battle is far from over
This is true.
.net. Once brainwashed the developers using c# will use .net and all of the sudden be trapped and end up renting their own software.
This is marketware and brouchware for PHBs who hear critisim of c# from their employees regarding expensive vendor lock in.
Microsoft is trying to look like the good guy supporting an open, portable standard but in the mean time Microsoft's c# clr is dependant on
I heard arguments that Java is also patented but at least you can trust the jvm. Here Microsoft is opening the language syntax but keeping the actual compiler under stict controll.
http://saveie6.com/
Before submitting a Java program make sure you have a try catch(Exception) block somewhere to catch all exceptions. No crash! With C and C++ programs you are pretty much screwed since you have to debug them and catch most of the memory leaks. Seriously though, you can't always blame students for turning in programs with bugs. You can't expect anyone to make a quality program with impossible deadlines.
There is so much FREE Java documentation on the net it's not funny. Most Java books are just reprints of this. Esp. see "Java Tutorial"
BC
The main argument used is that SCO is the owner of SysV technology.
No, the main argument is that SCO threw all their resources into Project Monterey, and IBM up and walked away with all the intellectual property.
While the code produced with all the "compiler asshole" options turned on will almost certainly be "better", it's not the ISO doing anything directly to help me.
The real-world effect of standards is that code written under one compiler will work when compiled under another.
Given the patented/proprietary nature of C#/.NET and Microsoft's history of extending architectures in propietary ways, a C# ISO standard is probably about as useful in making C# cross-platform as a one-man submarine would be.
glossed over and ignored to this point in both projects. Just because Microsoft has cut both off at the legs yet doesn't mean that they can't and won't.
Sun has created the 100% Pure Java Race! Write once, run anywhere, because there's nowhere to hide!
All inferior languages must be wiped out, and history rewritten! Integration is capitulation! Segregate and exterminate the inferior languages!
Never pollute Java by mixing it with those inferior mongrel languages. Java is Not meant to Interbreed with inferior languages! You MUST rewrite ALL your code in 100% Pure Java! Native Code is Uncivilized! All Primitives must be Converted!
Java is God's Chosen Language! No other programming language is truly Turing Complete. Lisp is a Homosexual Programming Language! C++ has Negro Ancestors! C# is the Antichrist! Perl is Crypto-Zionist! Python has Simple Sin Tax and Semetics!
Join the Java Jihad! Anyone who commits suicide by using Java against Microsoft is assured a place in Heaven! The surviving families of all Anti-Microsoft Martyrs will be Richly rewarded with Free Solaris Licenses.
Java's true purpose is to be the ultimate Weapon of Mass Destruction in the war against the Great Satan: Bill Gates. Once he is vanquished, Sun will install a puppet government in Redmond, and the oil companies will move in and take over the humanitarian relief effort. Once we Wipe Out Microsoft, nothing will stand in our way of Reinflating the Dot Com Bubble!!!
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.
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 bu
Cerification will only slow things down for Microsoft. By not submitting Java to be certified, Sun maintains control over the language and is able to respond more quickly to development needs (and more rationally instead of making comporomises to suit all people's needs). Just look at how much progress has been made in Java since version 1.0! Will C# be able to evolve as quickly? Well, just look at what ISO certification and too many comporomises did to C++!
I have yet to meet a "Java coder" who is waiting for any outside firm to standardize Java. Java works and works well, and *plenty* of professionals make good money developing Java applications. At least Sun is being honest about the level of control they want over their language. Microsoft is doing PR and will most certainly break their own standards as they have in the past when it helps to crush competition. So what good is a standard that even its creators don't conform to? It's meaningless fodder, an atempt to out PR Sun. As a professional Java developer, I can tell you whether or not Java has public standards has never entered into any development discusion. We're much more concerned about whether or not Java is capible of meeting the client's requirements -- and it always does!
Friends don't help friends install M$ junk.
But the fact remains that most academic work is "one-shot" type applications. From what little you've said I'd venture that even your integrations or simulations are of that type. Are they designed to run 30 or 40 or more threads at a time, and randomly starting and stopping them constantly? Or do you just fire them up for one run and come back in a week to read the answers from the now-completed process?
The point is that "real-world" is much different from academia. Research by definition is out beyond bleeding edge. About the only thing that matters in "real-world" is "Does it work?"
if sun released java as GPL, they wouldn't have to worry that a competitor could appropriate it with proprietary modifications. any modifications would have to be available to sun and all other platform users.
-rishab
I will take notice of C# and all the other abortionate .NET stuff once somebody implements an open-source CORBA bridge for it.
Even then, I won't develop with it; but I will start to consider interfacing to systems implemented in it.
I rather thank that C# and Java have language features that C++ doesn't have, like a working garbage collector, interfaces, events, etc.
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
Microsoft *will* scupper these efforts because they have retained the power to do so and they want to ensure the continuation of their monopoly.
It is easy to mentally sweep the problems under the carpet and focus too closely on the wonderful promises (which is why so many IT managers can't see alternatives to MS servers). With
- Brian
Recall Microsoft claiming that Windows NT implemented the POSIX standards - which it did in the strictest sense but not in any practical degree. Or how about the fact that Microsoft C++ has yet to fully implement the ISO C++ standard. Microsoft easily has the resourses to do this - but they'll continue to claim that there are other priorities (such as their non-standard extensions ...)
What matters are the libraries which actually implement all of the functionality - and guess who determines what those APIs are? These are still tiightly in the control of Microsoft (compared to the JCP used to propose and codify new Java APIs). The Java Community Process, as flawed as it is, is a heck of a bigger step towards an truly open process than simply handing off an already finished language standard to a standards body.
Then there is the touchy little issue regarding the patents that Microsoft has or is the process of filing that will directly impact on the use of C# (language, CLI, and libraries). Mono will never be widely adopted, especially on non-Microsoft platforms, until this cloud of ownership involving intellectual rights is fully lifted.
Heck, I'm still waiting for an ISO version of Perl before I *even* think of allowing that language used in my company ...
I don't think language-specific classes are all that valuable. (I'm pretty much self-taught in BASIC, C++, and Java, and have had very little difficulty picking up new languages as necessary.) If a specific language is truly required for a class (even for practical considerations such as grading assignments) then it's understandable, but the fact that Cornell for the most part stressed computer science concepts over choice of language was an asset to the CS department (in my opinion).
If Cornell has gone from this, to the point where they specifically use one language (any language--C# or Java or whatever), then that's a step backwards.
Cheers,
Jeremy
An IDE is not going to make a lowsy programmer better, but it will help a good programmer to write more code with less effort. On top of that, as IDE's go, show me a better one than VS.NET?
REAL PROGRAMMERS take advantage of any and every tool that they can, that will help them get code written, compiled, debugged and SHIPPED.
If you can do it faster in EMACS or Notepad, good for you, but dont knock other developers because they use tools.
You sound like someone who tightens the lugnuts on their car with their thumbs, and screams "REAL MECHANICS dont NEED a lugwrench".
Idiot.
Let me put it this way, and I'm sure most programmers feel like this, as it only makes sense.
I am the standard.
When I am confronted with a task, I don't go see ISO to see what they say everyone should use, of course not, I analyze my situation and choose the proper format/language everything should be created in, as there are ups and downs to most any language. That standard should be everyone's judgement call, as that's how most professionals work, and nothing is gonna change by this.
If a language suits someones needs, it will be used regardless of any standards approved by ISO.
Posting useless rant since 2003.
C# 2, Java 0 - Q1
Death 1, Saddam 0 - F
Trolls 3, Moderators 2 - 2Q
John Ashcroft 72, Civil Rights 0 - 3Q
I hate to point out the obvious here since the whole slashdot crowd seems reactionary, but the standards really mean nothing. They have standardized the language. Whoopie the syntax is standardized. They have not standardized the class libraries which are the important part. That is what everyone is going to program in. So if you implement that standard you can't do much with it, without class libraries. Imagine programing in C without the standard libraries as well you are limited in what you can do, without writing for a specific os, and in a language like C# (or even Java) that is compiled to an intermediate langange and runs in a virtual machine you can't do anything without class libraries. So go ahead and build your C# environment from the specs you still won't be able to run MS's code on it. The Java Bytecode is a spec that you could implement as well, you just don't have the right to use the Trademark. You have the same issue there where you need the class libraries. But I would personally rather use Java where there is community involvement in the development and evolution of the language, rather than have the standard dictated to me by MS. But what do I know I am just a software developer unlike most of the people who bitch that don't write and code (they just want all their code to be free).
I dont have time to write all the areas in which this idiot is wrong.
What Java lacks is a bureaucratic standard: one where the document was given a stamp of approval by some committee that companies can buy a seat on. This latter kind of public standard actually makes it more difficult for me, a member of the public, to influence the content of the documents.
But, you know what? I don't really care much about influencing the content of the documents. My priorities are
Beyond that, it's all marketing hype. Java is a public standard in the same sense that PDF is, and that's good enough for me.
The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...
What many of you are forgetting is that inorder for a language to be used in mission critical applications in the U.S. Goverment it needs to go through a Standards Board and be ISO certified. This is a key requirement along with many others when defense contracters are taking a bid. I am not saying that they will ever use C# for mission critical applications, but C# is now closer than Java is.
C# and CLR are useless without Microsoft's proprietary .NET Framework
If Java had received some sort of certification and Microsoft wasn't bothering to do the same thing for C#, the comments would all read "see? that's proof that m$ is evil and Java is Superior!!1!! What are they afraid of? But nooooo, they NEVER play by the book or accepts standards! M$ is evil!!!1! .NET sucks!!"
There would be dozens of insightful posts pointing out how certification is a Good Thing and how Java once again r0xx0rz because of it. Other posts would go into long tirades about how .NET is a failed effort because C# is not certified. And ad nauseaum.
I think things like these speak volumes about how people approach their... ah... "dislike" of Microsoft. If they do [something], it's wrong and evil. If they don't do [something], they're wrong and evil for not doing it.
But I suppose them's the dregs.
Let's not forget something Slashdot: Microsoft is a screwed up company. They always have been and probably always will be. They screwed Java developers and users over with there fscked up version of the JVM. They screwed Netscape out of competing with them in the browser business. They ripped off graphical desktop computing from Xerox. Ad nauseum, the list goes on and on. Not to mention their products suck. That just goes without saying.
Instead of posting stupid headlines like Microsoft 2, Sun 0, just stick to the news that matters. "Yay, Microsoft work is getting ISO approval" would have been easier on the eyes. In fact, I read the article you linked to the story and it doesn't particularly emphasize Sun not having an ISO standard. In fact, it talks about sun having the JCP, which is a more flexible way to maintain specs and standards anyway IMO. Give me a break SlashdotXP.
Meanwhile, Linux isn't "officially" UNIX or even POSIX-certified; and yet it's still much more POSIXish than Windows NT is. The same is true for dotNet vs. Java/J2EE; the one has lip service from standards bodies while the other is more-or-less fully open.
The wheel is turning, but the hamster is dead.
well, wrox press went out of business from investing in M$ .net.
Cheers,
Jeremy
I am a bit curious now just for the sake of the info (not that it really matters to my old ass)
For all practical purposes, Java is more standardized than C or C++ were when they were "standardized," in the sense that if you get a Java program working with one compiler, it will likely work with lots of other Java compilers. Just try that with C++, even today, four years after it was "standardized."
To me, the fact that C# is standardized and Java is not means nothing.
What a fool believes, he sees, no wise man has the power to reason away.
.just a thought, but maybe you have misread or misconstrued a lot (not all but a lot) of the anti microsoft and what you see as anti corporate posts on slashdot. What I see more, and I agree with, is that people are anti unethical behavior and criminality, and anti what happens once any entity has a lot of power with little or no check to what they do with that power.
The obvious example, following the main thread focus, on microsft, where millions of people have noted that they did, in fact, abuse their position, that they got to a dominate position via some pretty questionable means, and that their security models combined with this position have put people in the "pretty much stuck" position of spending a lot of money to be abused on an ongoing basis. yes, I am aware of "don't use their stuff", well, this has been answerd over and over again by noting it's pretty hard to not be affected by "their stuff" whether you use it or not, especially if your clients and cuistomers are still using it. Catch 22 there, so we will get past that sticking point, it's been answered. We all use the net, and all of us are affected when a significant size hole appears and gets exploited, and once a pattern of many years time and of noting exactly where those holes appear and exactly who is responsible for them and how much money they continue to make by this inclusion into the internet world of this swiss cheese approach to expensive software, well.... I mean, really.... the sky IS really blue.
As to "corporations", recent revelations over the past couple of years have proven there is a lot of outright lying, obfuscation of finances, over hyping to small investors to shill up stocks worth to absurd and reckless levels-fraud in other words, and so on. It's not a true black and white issue, it's more a pick an example (examples again, say microsoft, enron, etc) and point out data and take it from there, normal empirical analysis. the gestalt is, there sure is a lot of criminality going on, and people are beginning to wonder exactly how widespread this is, after example after example comes to light. It's endemic, and probably epidemic, if you would allow a small amount of anthromorphism to be used to describe it..
Of course this can be called bashing, but to millions of people it's "bashing" based on the reality of an obvious need to bash. Blaming the victims for a crime committed against them is not considered to be an intellectually viable form of expression that is valid, at least not amongst rational civilized people.
Now for me, a regular old 'murican capitalist, and a proponent of self-reliance and independence, and ALSO a proponent of above board rational and ethical business behavior, there are some corps I think do a good job, and others I can see as being..well.. crooks is the word. Serious crooks, crooks who not only need some fines, but some jail time. Want an example? any of the corporations who sold weapons of mass destruction materials to saddam back in the 80's, when he was obviously using them in warfare. any of those corpos officers, chucked in the pokey. the corporations dissolved. Well now, that would sure be an interesting set of bignames now, wouldn't it? I have more examples, that is "enough" for ocnversational purposes. And yes, I could name names, but anyone with google access can find out as well.
And to add to the stewpot in the fines and jail list some of the more bribed politicians who behind the scenes and in collusion with other industry heads (and being conflict of industry heads themselves) and semi-faceless regulatory bureaucrats, who have allowed this sort of behavior to become a lot more of the "norm" then what people are comfortable with. Yep, fines and jail. Yep, their businesses dissolved, as being "not in the public interest". Cross the line, do the time. It's like that for joe little guy, should be the same for frederick fatcat.
I think it's perfectly acceptable to "bash on crooks". I think it's perfectly acceptable to go back
Hey, have a look over at JCP.org.
There's 922 JSR's there, all public standards underway that anyone (that includes YOU and ME) can comment on. Where can I go to comment on the C# standards underway?
So, which is the more open standard?
What a maroon. (Yes, I did spell that right).
"There is more worth loving than we have strength to love." - Brian Jay Stanley
and so do a billion-or-so arabs
Is the gcc team even considering a C# front end? I have mixed feelings about it. I see C# as somewhat redundant. Nonetheless, I imagine that gcc could support a C# front end. Of course, it won't be particularly useful if 99+% of the C# code out there depends on Windows APIs.
Also, anyone submitting a standard to the JCP relinquishes patents on any parts of the standard.
.Net!! No Sir!!
Not that Microsoft would do anything funny with Patents and
Wasn't April 1st yesterday?
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Don't get me wrong, SUN could be trying harder with Java standards, but they have tried in the past (albeit to have their cake and eat it too). In the end, Java is not real proprietary now is it? Lots of folks use it, the API is expansive, and it's stabilized quite a bit compared to the early days before Java 1.1.
That said, I'll take Java and the involvement from big players like IBM and Oracle vs. the MS-only perspective propped up by ECMA (whose track record is not spectacular).
CrazyLegs
"Pork!!" said the Fish, and we all laughed.
Would someone care to post a lucid, fact-supported description of why this matters for any practical purpose?
.Net being tied to Windows, Mono not withstanding.
The lack of a public standard has seemingly not deterred IBM, et al, from JDK development.
The presence of a public standard has done nothing to change the perception of
In neither case has the presence/lack of a public certified specification meant diddly to the functionality and utility of either platform.
This sounds more like fanboy posturing than anything meaningful.
This reminds of the movie Face off, the faces have (appear to have) changed but underneath M$ is a monopoly and Sun would like to have M$'s problems.
.Net is concerned. But we *know* they will yank out the carpet underneath once .Net is accepted and the threat level has dropped to 'green'.
I make my living w/ Java and I absolutely love the language because it lets me do the object oriented stuff. But from a purist point of view Java is really bytecode execution and the object system part of language spec. The package java.awt is optional, really. If I was to create a system today with a customized jvm (own set of bootstrap classes etc), I cannot. Well I can but it won't be java certified.
Sun has a JCP (Java Community Process) which allows standards process. But since its inception every corporate joker has found their way into standardizing their junk as API e.g. OSS billing system, Equipment provisioning etc - for Pete's sake - why do we need a porky SDK. Not to mention the infuriating decision of ripping of Apache's Log4j as java.util.logging.
On the other hand, M$ is trying to look like, smell like, feel like, pose like an open system as far as
Choose wisely.
- "McNealy?"
(pause)
"McNealy?"
(pause)
"McNealy?"
Sun, wake up and smell the coffee! If you try to maintain absolute control of the Java language, you're going to find a serious user backlash.. The time to act is now!"Um.. He's sick." (long pause) "My best friend's sister's boyfriend's brother's girlfriend heard from this guy who knows this kid who's going with a girl who saw Scott pass-out at CeBIT last night. I guess it's pretty serious."
Public Standards: C# 2, Java 0
Supported platforms: C# 1 (Windows), Java 3 (Windows, Linux, Solaris) (and that's just from Sun).
Vendors: C# 1 (Microsoft), Java 5 (Sun, IBM, BEA, Oracle, Allaire) (in fairness there are many more Java vendors... those are the 'big ones').
So the score is already 8 to 4, and what you'd find is a lot more '1s' in the C# column which read 'Microsoft', 'Microsoft', 'Windows', 'Windows', etc.
And going back to 'public standards': when Microsoft Office publishes a set of DTDs which comprise a very public 'standard'... I'll be shocked. Their 'XML-based openness' in Office 11 is far from that goal.
MORTAR COMBAT!
I have been a fan of slashdot for quite some time and I have noticed a HUGE increase of pro M$ information and slant in recent times.
Whats up with that?
And all the adds are either M$ or Intel. Is this really becoming the best target market for M$ products?
You will have to pry my proprietary software $$$ from my cold dead hands!
The problem is that the published .NET standards don't actually provide a specification for a standard set of tools to engineer useful software. And if you can do some things with the standardized portions of .NET, they are just as easily, more portably and more efficiently achieved using existing (non .NET) tools.
.NET apps using MS's tools that do not depend on MS's proprietary implementation and extensions to it's published standards.
.NETs supposed superiority to Java.
I would doubt very much whether it is possible to build
This is just 'Plan B to kill Java' because Plan A, trying to deliberately break Sun's proprietary standards failed so badly. So now they try to give the appearance of being 'ultra-standards-compliant' with a new and wholly redundant platform.
Having these pointless 'standards' is just a checklist item so MS product managers can construct more plausible falsehoods about
MS shows its commitment to 'standards' with its compatibility-breaking implementation on Kerberos, with its release of specifications for SMB/CIFS that nobody can look at without giving up any rights to work on a free implementation, by providing MFC classes under a license that specifically prohibits their use in engineering a product that competes with MS.
MS is about as interested in standards-compliance and platform neutrality as George Bush is in Solar energy and world peace.
I gots ta ding a ding dang my dang a long ling long
or how many platforms support it. With standards in place, supported platforms and vendors will increase naturally with time.
And I think that standards for programming languages are taken just a little bit more seriously than standards for an office document.
C'mon people, C# is kicking Java's collective a$$ and you know it.
Anyone who has tried to port C and C++ code from one platform to another can attest to what a sham standardization has been for those languages.
Since Sun controls Java we can be guarenteed there is a large group of very active lawyers that maintain the unity of Java. As soon as Java is an open standard that will not be the case. You will get companies all over adding their own proprietary garbage to in an effort to lock you into their VM. As I recall that is the opposite of everything Java stands for. It will spell the end for Java if Sun ever reliquishes it's legal hold on the language.
BTW, has no one ever heard of the Java Community Process? It's not a standards organization but it does allow Java advocates to help contribute to the growth of the language.
Why wouldn't MS open the C# concepts as a standard? Even the framework libraries are replacable (given a ton of work, like any modern library these days). MS makes it money on server installations, not IDE sales. Build it and they will come. The "Standard" itself isn't worth anything anyway, as C++ programmers know.
But MS doens't need people to switch to MS OS's just because they want to use C#... They would rather enjoy having the best-of-breed editor and compiler on their platform (and maybe, yes, others!), and let the tendrils of development in C# spider to other OSes.
For instance, a C# project today on *nix boxes may have to jump through a few hoops (although I think these days MS would throw some support at it) to get bootstrapped, but think about the MONEY:
MS is posing C#/.NET to be a marketing sell for cross-platform development and integration. "Build with MS today, and tie to everything already in the world...How? Write more and more with
So,
They are selling based on exactly what Java does as a defacto concept: a single technology with many uses. If bosses see that Java or C# are going to morph anyway, they will make a decision not based on this news. BUT one can only hope.
mug
Oh, you are the coolest non-conformist I've ever met, can I get your digits?
No really, the fact that you used a LINUX instead of a MICROSOFT product and then posted it on SLASHDOT, wow that's...I'm speechless.
Thank you sir for this most under-rated post.
Another thing for Sun to bitch at microsoft about.
This should be fun. *DING* - *DING* Round #2. Next please!
What are you, 12?
You acknowledge that they dont care about you, but you seem to believe that they SHOULD.
No, fool. Its about your cash. Not you, your cash. If you are not likely to buy from them, then you are shit, and not to be heard from.
But the point is; this is true for any company that you do business with. They care about customers. Getting them and keeping them.
Last time I checked, they were doing those things better than anyone else. ITS BUSINESS.
I think before people reach some conlussions, they should be aware that Microsoft does not have the lightest intention of making their .Net environment a standard or open source for that matter.
.Net, for the very simple reason that in order to write even the most basic usefull C# application you need *libraries*, a virtual machine, and many other propriatary Microsoft hooks. Summiting C# to standard bodies is just a public relations move from Microsoft, so that they can brag later that C# is open-standards based and Java is not, then management makes a decision to go full steam with .Net and a year later realize that they are stuck with all the Microsoft propriatary stuff you need to run C#.
Summiting C# to standard bodies means nothing in the world of
The analogy to Java would be Sun making the Java Language an open standard, but then keeping the Java API (i.e.: the libraries), and the JVM proprietary.
I do agree with many though that Java should be not just a standard, but even open source. However when it comes to Virtual Machines it is *extremelly* important to have some central authority to authorize changes, since one of the premises of a VM is that you can run code anywhere, and if you let a million programmers create their own VMs, all of a sudden code stops running everywhere, defeating the advantages of a VM. This is why I don't mind SUN controlling a bit the final say on Java development, and experience tells me that the Java Community Process is a very reasonable alternative to open standards and open source. In the end, Java is a deFacto standard anyways when it comes to enterprise business applications, so Sun might as well try hard to submit it to ISO at least. But remember, all Sun is trying to do is avoiding a fragmentation of the Java market, which I think it's A Good Thing.
Someone finally gets it.
Wrox parent company went under and dragged wrox press with it. Wrox press was apparently profitable.
http://www.iso.org/iso/en/faqs/faq-general.html#1. 10
1.10 Can anyone join ISO?
Not as individuals or as enterprises - although both have a range of opportunities for taking part in ISO's work, or in contributing to the development of standards through the ISO member in their country. Membership of ISO is open to national standards institutes or similar organizations most representative of standardization in their country (one member in each country). Full members each have one vote, whatever the size or strength of the economy of the country concerned. This means that they can all make their voices heard in the development of standards which are important to their country's industry. ISO also has two categories of membership for countries with fewer resources. Although such members do not have a vote, they can remain up to date on standardization developments. Lists of the three categories of ISO members are available on ISO Online.
Do you really thing MS would risk having the standard at the whim of the non-strategically-aligned?
Obviously, I wouldn't expect MS to go to too much trouble to make their code portable, but I think the main advantage of having an ISO standard is that companies will not feel tied down to a specific vendor and that the man-hours invested in development would not be wasted if they switched to another server OS.
I think that is the real goal here, to have the freedom to layer your system with software from a variety of vendors.
Not too many people I'd guess. At least, not enough people for it to matter.
Why does certification of a particular version matter? Sure, Microsoft can get C# certified by some standards body. Who cares? What really is important is who controls the version after that. AFAIK Microsoft has not created a community body involving other companies to set the direction for C# as Sun has with Java.
.NET. Can anyone tell me if Microsoft has submitted their entire shared library to standards bodies or is it just the C# language and underlying virtual machine? If Microsoft is still keeping the libraries proprietary then it will be even more of a red herring.
And as we all know, C# is only a fraction of what is necessary to run
Well, if you jumped on that bandwagon, you're right, but you all get a -1: Offtopic for it. This story post is about C# getting standards certification - not the .NET environment. C# is a language in & of itself, and it's the language that was used in the beginning to create .NET (so that chicken & egg story is cleared up for y'all, too).
Again, it's not .NET that's getting certification here - it's just C#, the language.
i'm amazed that i survived - an airbag saved my life.
Javascript is already ECMA-standardized, so any problem experienced when trying to write cross browser/platform scripts are clearly imaginary.
So there. Standards solve all problems.
Cisco knew their gear didn't have the horsepower to compete. So when it came time for the standards body to declare the 802.1q standard - guess which company threw everything into winning the battle?
And of course, the Cisco marketing department promptly started making noise about Cabletron not having a "standards based" VLAN technology.
We lost a lot of fine-grained control when we switched from SecureFast to 802.1q.
What we need now is the control SecureFast gave us, with 802.1q as the transport technology. Then we would beat 'em on both fronts.
"The most sensible request of government we make is not, "Do something!" But "Quit it!"
Jikes!
ORP
I don't trust either Sun or Microsoft to refrain from jerking me around for a few $$$, standards or not.
Give me a FAST Parrot VM with GTK for Lin/Win/Mac and I'll never touch C++ again.
What happens if they start charging for the JDK? Or just stop developing it? I know there are projects like Kaffe and GCJ and IBM's JDK but it's just a derivative of Sun's. Not to be alarmist but Sun's not positioned well right now and should they replace the CEO or something rash like that (how many losses to you take before bringing in new blood?) The new guy will look at what Sun does, look at the strengths, look at the weaknesses, look at the costs, and I don't see how free JDK wins, I don't see how java wins at all
IMO standardisation is a very good thing (except maybe the Iso way because they do not make their standards freely-available - they cost money (although you can often get pirated copies (of last-call drafts on the Web))). BTW, is the word, "Iso", supposed to be uppercase like in the post. I wondered. I don't know. Maybe it is a bit like "USENET".
Joe Llywelyn Griffith Blakesley
[This post is in the public domain (copyright-free) unless otherwise stated]
If that's not screaming for a troll/flaimbait then I don't know what is....
ALL recent versions of Windows support C#!
Even Linux supports C# though the mono project.
Windows XP even comes with the runtime pre-installed! If there weren't any platforms for it, nobody would be developing for it, but as it happens, hundreds of thousands of software developers are currently using
At my university (graduated 1999)
Classes tought with Java: 1
Classes tought with C/Prolog/Lisp/Perl/SML: 10
my point: since when did what you were taught at uni make any difference to what you use at your job?! Uni's use academic languages for teaching about languages, and pascal/c/c++ for teaching about software development. Their choice for the later is academic (if you'll excuse the pun). Hell - if you were taught Java and can't pick up C#, you've got to be the thickest software developer I've ever come across. They're almost identical - C# is just a neater version of Java with the annoyances polished out. Oh and it's a standard.
Nick...
Not too many people I'd guess. At least, not enough people for it to matter.
Actually, it may prove to be a huge achillies heel to not have coverage of non-Windows platforms. I remember when Java first appeared and a lot of people took a look at it and thought it would make a neat way to have little animations embedded in their browsers.
Today, the usage of Java couldn't be further from that early view. Java is making huge strides in the data centre, as servlets and similar rapid development environments. So missing out on all the other servers in the data centre could stop C# getting the ground that Java now holds.
Now that leaves MS in a sticky spot. They may not achieve market dominance without ports of C# to other platforms (and all the associated libraries) but if they do, they lose the customer lock-in that they normally rely on.
Tricky, tricky.
Cheers,
Toby Haynes
Anything I post is strictly my own thoughts and doesn't necessarily have anything to do with the opinions of IBM.
This is not meant as a criticism, I'm just curious.
I started out as a C then C++ programmer, did a little over a year of Java, a couple of years ago, then went back to C++ and have been using C# for almost a year, (rather foolishly I do what my employer wants).
I liked the feeling of power you get with C/C++ but I was really impressed by the ease with which my OO designs translated into Java code. It also comes with some great APIs.
Whilst C# is not horrendous it has introduced some noddy VB-isms like the 'for each' construct and properties and [attributes] and (IMO) that stupid event driven model for ASP.NET (which frequently generates hideous HTML worthy of a third rate web developer - still an improvement over the original ASP though) and... other things.
Just curious to know why it you prefer it.
TIA.
Meanwhile, Linux isn't "officially" UNIX or even POSIX-certified
The Unifix Linux distribution is certified as POSIX.1 conforming.
Will I retire or break 10K?
Like a dictionary to a spoken language, a standards process can only stagnate a programming language. Its the use of either kind of language that matters - Java is used, C# is not (or is that .not?). In any case, Java programmers quietly know that the Sun JVM is not their only option and happily code away. C# programmers wonder which way Microsoft will shaft them next.
I work for Sun, and while I won't pretend to speak for them, I work most of the time on the various J2EE JSRs, so I sort of understand how the whole process works, and therefore understand the rationale for why Java isn't an ECMA or ISO standard.
.NET, though, it is possible to get involed in the development of Java and J2EE, either directly as an individual member of the JCP, or indirectly by providing comments during the public reviews of JSRs.
The Java Community Process (http://www.jcp.org) is an independent organization that sets the standards for Java. Anyone can join the JCP, although most members are companies. The Java language, the different distributions of Java (J2SE, J2EE, J2ME), and technologies that are built on Java use Java Specification Requests (JSRs). Various members (the expert group) collaborate on the JSR to define the technology, and work on a reference implementation. For example, Tomcat is the reference implementation of the JSP and Java servlet APIs. This is one major difference between ECMA/ISO and the JCP: the requirement of a reference implementation.
I think the idea behind the JCP was to be able to modify the language and the APIs more quickly than other standards bodies, and ensure that there are useful implementations of the standards that go hand in hand with the standard.
In the case of Apache, there have been some modifications to the JCP to allow open-source implementations of JSRs, and to make the compatibility tests available for non-profits. JBoss and Sun have locked horns because, in Sun's view, JBoss is not a non-profit, and are using the J2EE JSRs to make money without licensing the J2EE brand, as BEA, IBM, Oracle, Borland, and others have done. Because Apache is in fact a non-profit organization, Sun's been much more willing to work with them.
Sun produces most of the JSRs, but not overwhelmingly so (around 60% if I remember correctly). Your average open-source hacker will find it harder to contribute to a JSR compared to, say, Gnome or KDE. Unlike
There are many people at Sun that would like the public more involved in developing Java, and others who would not.
Keep in mind that this is my impression of Sun's rationale, and I do not speak for Sun on any level.
These two functions exists in Microsofts C# libraries, but are not part of the ECMA C# standard documentation:
1. String.Format(String s)
2. Convert.IsDBNull()
Now, it is a matter of interpretation if you are allowed to freely add functions to standardized classes, but an unsuspecting C# developer is likely to use these functions, since they exist, and will have migration problems if he tries to move his code off to another code base, such as Mono.
Sun doesn't do these things with its library, because compatibility is important to them, not just lip service.
Just as POSIX was a marketing tool; so is the EMCA/ISO rubber-stamp of their C# token parser.
The wheel is turning, but the hamster is dead.
As of today (facetiously):
C# (Microsoft) $275.2 Billion
Java (SUN + IBM + ORCL) $2.9B + $140B + $60B = $202.9 Billion
I mean cmon! There are way too many factors, even beyond the ones you supplied, to consider. Oh so you want to talk about the number of different support platforms? How about the sheer number of people who use windows versus linux+solaris? You want to talk about vendors? What about vendor support? What about the monetary value of the cumulative supporting vendors? Cmon.
"Injustice anywhere is a threat to justice everywhere." - Martin Luther King, Jr.
but really how can you call something standard if it's patented?
Licenses for essential patents on all ECMA and ISO standards must be available under so-called "reasonable and non-discriminatory" terms, which may or may not involve a royalty. Both common forms of JPEG still image compression (DCT-based JPEG and wavelet-based JPEG2000) are patented, but holders of essential patents have agreed to license the patents under royalty-free terms. According to a few other comments in this thread, it appears Microsoft has agreed to license ECMA C# royalty-free as well, but I could be wrong.
Will I retire or break 10K?
Java even has the bureaucratic standard - the JCP is chaired by a group of people from various companies, that have paid to be a part of things. The JCP is not controlled by Sun, and is where Java standards of all kinds (language to libraries) are debated by anyone that cares to take part.
That's what gets me about the main story. Anyone who cares to examine the JCP at all, finds a thriving site with standards for all sorts of things - distributed caching, language level changes (generics), basically stuff at all levels from embedded devices to enterprise standards. The JCP is practically a whole ECMA group all by itself!
I agree with you generally though - your priorities are spot-on. If public documents exist and all the rest follows as you say, then it doesn't matter who has approved the document as long as everyone follows it.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
So where's your copy of a signed license agreement from Sun and Microsoft?
Open the installer to see it. And if EULAs aren't binding, the big proprietary software publishers are screwed in other ways.
If you do not have a signed document stating you may use the patent royalty free, then either one of them at a later date can tell you to pay up.
Not always. If a patent holder delays an infringement lawsuit by over six years or otherwise harm me by delaying legal action, the doctrine of laches states that the patent holder may not be able to recover damages for infringements that occurred prior to filing the lawsuit.
Will I retire or break 10K?
The Java language and VM standards are controlled by the Java Community Process, a standards body that is chaired by people from a lot of different companies - including Sun.
However, Sun does not have control. I offer Generics support as an example, ironically enough - Sun wanted them in 1.4 (and they were done enough with the issues to have done so), but the JCP needed more time to work out issues so Generics are in 1.5 instead.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Has Visual Basic been approved by any standards org? Why does a language have to be a approved to be used?
If it's truely a standard, not controlled on my MS, let's get in there are start ripping out the windows only / windows preferable parts of it and replace them with cross platform... They way, we get a standard that everyone change use.
Anyone want to wager on the chances of non MS approved changes getting in?
At Cornell they don't use C#. I think there is a new class about C#, but in every real CS class that includes programming, its either Java, or a language more suited to the subject of that class.
The core "programming" classes, 100 and 211/2 are in Java. 312, functional programming, when I took it was SML, but I'm not sure if it still is...regardless there is no MS functional language. Operating systems was in C, networking was in C and Java, security was in Java (our professor from that class was even a MS consultant...fancy that), and most other courses that involve programming have been in Java.
In fact, when I started at Cornell, they said they teach in Java...i was like ugh, oh no, where did my c++ go? But now I realize...Java is great as a teaching languge. You can develop on any platform, which is key when some labs are windows, some are BSD, some are Solaris, and your home computer is Linux. Its also easy to build on....say in a data structures course they make you implement a hash table. You can do that in Java, but then in some later class when you need to use a hashtable, Java has it built in so you don't have to reinvent the wheel.
There is very good reason for Cornell to be using Java, and I don't think that they are willing to let Microsoft buy away their flexibility.
They seem to be putting off Java Source Code that has esentially been 'scotch taped' over the years for Win32 resulting in the Molasses form everyone sees now a days.
My money sez that they don't want to re-write their source code from the ground up like they should have done years (5+) ago.
Save the World! Use a Quote!
Comment removed based on user account deletion
On the positive side, there is this kick-ass project called Mono that implements it, and runs on a variety of other systems as well.
.Net. Go for it, Miguel! Get as close as you can, but if MS blocks you then let's have a Mono Community Process and come up with alternatives that are even better. For a while, being able to run the exact same app on both Windows and Linux might be useful, but my first priority is a great dev platform for Linux, not a way to run Windows apps. Over time, that first priority will get even stronger, and I'll get more interested in other languages such as a MonoScheme and less interested in Windows compatibility.
Absolutely! And I think that way too many people dismiss the advantages of C#, the language, because of its prominent position in a Microsoft initiative.
I'm a big fan of Java, but after having used it for a lot of projects, I find that I'm VERY pleased by the extras offered by C#, the language, and the basic CLI extras that are covered by the upcoming ISO standard.
I do NOT require a perfect clone of
Go Mono!
"Those who have never entered upon scientific pursuits know not a tithe of the poetry by which they are surrounded."
I, for one, wish that IBM would take over the reigns of Java. I love Java and have been using it for years (alongside C, Perl, PHP, etc.), but I can't seem to like a single thing about Sun. They may have top quality hardware, but, even then, I still don't want them and their hardware.
IBM, OTOH, has done well by the community and I would vote for them if a new steward for Java was ever sought.
No, it's supported by Ximian, just as Sun does not support IBM's Java stuff.
The rest of what you said is your opinion, your speculation.
However, one can't dismiss that Microsoft's NT has been making huge strides into the server market as well. This article provided a keen insight into a possible evolutionary path of the current situation. It has good news for Linux but it also predicts Windows holding 51% of the server market (other stories when googling ("data center" server "operating system" research windows linux unix solaris)). It's really anybody's guess at this point.
Regardless, I think that a lot of people are mis-informed about the porting of C# over to other platforms. The Mono compiler can compile any code in the C# syntax, but the *Standard Libraries* are where the battle is. Who knows, maybe Microsoft will come out with a set of libs that run on *nix and then charge for use of them.
Personally, I am a developer of desktop products mainly, so I don't really have a good view of whats happening in the server market. You've got to root for the home team though ;)
Thanks for a thoughtful reply, sorry if my post seemed trollish (it was :)
However, I'd venture to say that there are C shops out there who will still hire you (if you want to work in a *nix shop that may be different, it sounds like you've been doing that nasty Windows stuff ;) You can always do like I did to get my first dev gigs: Lie.
Maybe Joel will hire you :) Here's a link to his site with an extremely insightful article on this subject.
You're right though, the nerds on high think that I'm a doofus because I like using VB, but the reason I like it is because I can get things done quickly when people need them.
The owner of .Not says it all if .Not is open source or not.
.Not is open source pigs also fly.
....("chuckles now!!")
If you think
By the way IE is part of windoze OS which is the most secure OS in the world
Comment removed based on user account deletion
Question to all the M$ trolls why is IE propietory.
.Not is propietory
Why is MS Word doc propietory ?????
So now
That .NET is a platform to make you, the developer more productive.
:-) extremely stable. Many of the most important aspects of basic application development are already done for you such as authentication and authorization, a decent crypto api and others. It comes with a standard set of "controls" for web forms that are flexible and reliable. Visual Studio supports the .NET Framework quite nicely and makes developing under ASP.NET quite pleasant (except for the html reformatting, quite annoying). All in all it's a good package. MS has done a great job documenting and exposing how .NET works, not from a code level BECAUSE WE DON'T NEED TO KNOW ABOUT IT but from an API/Method level. Generally speaking there is documentation on most of the common "problems" when learning .NET. .NET is the fact that we can RELY on MS to maintain control of the .NET framework and classes. Unlike our friend Sun and Java which has become a mess of separate packages and little documented dependencies that are unreliable, prone to null pointer exceptions, and hidden caveats in packages that are necessary to do basic development work (XSL Parsers come to mind) .NET is a welcome relief to the uncontrolled mess that Sun now proudly hails as Java. .NET has unquestionably borrowed from every language design pattern that has appeared on the face of the earth since the chinese invented the abacus. But I don't care, becuase I can get my work done, and when I wake up in the morning I'm not real worried that my applications have chewed their tails off while I slept peacefully.
I've not done a lot of desktop application development - so I can't really speak for the desktop crowd. I'd venture to say that it's not quite where it should be.
The web however, is something different. ASP.NET is fast - easy - and extremely flexible and provided your server doesn't crash
The most compelling aspect of
so I'm quite surprized to see you swagger in here, linguistic disabilities in full evidence
Ho ho ho. Hello, Mr Pot? This is the kettle, and I have some bad news for you...
On one hand, a guy who can't spell, and on the other, a guy who capitalises the wrong letters in his surname, and we're supposed to think either of you are in any qualified to comment on jack shit?
How amusing. Two children arguing over search engine terms is all you come off as.
is already way ahead of C# and Java, it even has templates! See comparison.
Ever heard of Mono?
Ever hear of patents? M$ has patented the entire Framework API. This renders the Open C# closed. Try to imagine programming in C if you had patent restrictions in stdio.h, stdlib.h.
Muhahahah, M$ 0wnz ur bitch a55
I don't believe that these new languages, things like C++ and C#, have anything like that; I haven't found any mention of validation suites or even the concept of a validated compiler. Apparently the vendor just claims to be conformant, maybe runs a few dozen tests. Why would anyone waste their time coding to a "standard" like that, with no reason to believe that their code would work on any target other than the one they developed it on?
Sure, developing the Ada Validation Suite was a big deal, took many man-decades of effort by some very smart people. But the result was that it saved many times as much work by all the grunt programmers who used the language. It must be incredibly frustrating to code in C# and C++, let alone a completely unstandardized language like Java.
Fuck M$ and its languages..
Gcc is all i ever need
I respectfully suggest this is not the case. There's lots of stuff in the C# language which isn't in C++. Garbage collection, for one. As you point out, properties and delegation also exist in C#. And there are things like metadata and reflection that go beyond C++ RTTI in terms of consistency and easy of use.
The whole point of Java and .NET aren't the C# and Java languages, but the huge class libraries. Until those are standardized, ISO C# doesn't mean much.
Now this I do agree with.
Enterprise ready applications: C# 0, Java 1000+
-- Truth suffers from too much analysis.
Bastards, why did they not provide something like Visual C[tm]?
They clealrly fscked big team for not providing a pointy-clicky environment for their lame language.
Jeez, what were they thinking?
IANAL but write like a drunk one.
New Sun's slogan: "we are the dots in Microsot's i". Followed by "we love Microsft, we use it everyday".
Brilliant marketing insight that of yours.
IANAL but write like a drunk one.
Ever heard of Microsoft Shared Source CLI (Rotor), Mono, or DotGNU Portable.NET?
...
Rotor runs on Windows 2000/XP, FreeBSD, and Max OS X. People even have ported it to Linux.
Mono runs on Windows, Linux/x86, Linux/PPC, Linux/s390 mainframe, Linux/StrongArm, FreeBSD, and is being ported to others, such as, Mac OS X, Linux/Sparc,
I don't know about Sun and Java, but I what I *do* know is that Microsoft have several software patents related to .Net. A few quotes (taken from http://swpat.ffii.org/players/microsoft/index.en.h tml):
Responding to questions about the opening-up of the .NET framework, Ballmer announced that there would certainly be a "Common Language Runtime Implementation" for Unix, but then explained that this development would be limited to a subset, which was "intended only for academic use". Ballmer rejected speculations about support for free .NET implementationens such as Mono: "We have invested so many millions in .NET, we have so many patents on .NET, which we want to cultivate."
=====
Asked by CollabNet CTO Brian Behlendorf whether Microsoft will enforce its patents against open source projects, Mundie replied, "Yes, absolutely." An audience member pointed out that many open source projects aren't funded and so can't afford legal representation to rival Microsoft's. "Oh well," said Mundie. "Get your money, and let's go to court."
Go ahead and start using Mono for your new project...
The GNU Classpath project is completely free Java.
Powered by onion juice.
So C# is a standard now. I say BIG DEAL! For starters, the .NET Framework is not a "standard" and is controlled completely by MS. This is further complicated by the fact that .NET allows developers to write in any .NET compatible language ( which is you use laguages like VB and Perl is .NET it's structure eerily become like that of C# or Java). Now I know that the CLI has also been standarized as well. But without the underlying Framework, who really cares? I can write my code in standard ISO, ECMA C# all I want on Windows and .NET, but this does NOT mean that my code will compile on say Mono, or Portable.NET.
.NET compatible.
Sure, the JCP is controlled by Sun. Howevers, the JCP also sets the rules for what API's compose the Java framework, not just the Java language. Sun also provides compatiblity testing for 3rd party implementations so that can be deemed Java compatible, if they choose. With that said, Mono can be 100% ISO and ECMA standards compliant, but they will never be 100%
At least not to the kind of "open" as OSI like it to define.
.conf files ! This would imply that every configuration tools digging in the .conf files will no more compatible :(
...
;)
Because the fact is that you can get the whole sources from the JVM ! You can do whatever you want with them, but redistribute a modification of the VM without passing the compatibility kit (TCK)!
This shouds strange to linux fans but this was made for one bare reason : prevent incompatibility issues.
Assuming that in order to put "Java" compatible your VM pass the TCK is one of the thing that prevent JAva to be considered as open.
Usual open licenses, can not limit modified code from beeing redistributed with the same name, whatever modification has bee done !
I can redistribute a Apache 2.0-memyself, that use XML insead of the genuine
Java Community Source license, mainly try to getting righ of this issue that is a "must have" for an enterprise solution.
The question is, could there be solution for both Sun and OSI to find an common opensource way ? By keeping Java unite but accept some more open process definition for instance
Anyway, C# can be whatever defined, the whole dotNet platform is not and will never be under a standard ! MS, keep and will keep the entire control over his platform
If that not what they plan to do, why will have they run away from Java as soon as they noticed they could not control it "at their good-will" (remember the native windows specific calls)?
-SLK
for Microsoft to not adhere to in the future, f**king anyone dumb enough to assume that they would .
Pay no attention to that man behind the curtain!
I mean, what is "standard" anyways?
Certainly not Java!
harhar