Microsoft silently made a download that added Java language support to .NET available on Sunday, but then quickly pulled it off. A release note, curiously dated October 11 - this coming Thursday - describes it as a beta of "Visual JSharp .NET Version 7.0." The J# product doesn't compile .class bytecode, or support Sun's RMI or JNI.
Read Microsoft pulls stealth release of Java for .NET
It is still in the India link but just as a project profile of what is being done over there.
Just curious if anyone got the M$ download before they pulled the link - I'd like to check it out as well. Some folks have some examples and other little snipets, but I haven't seen the .exe anywhere.
Follow the links in the article on theregister:
It's interesting. And I wonder how Microsoft can legally pull this one off...
I bet they only support jdk 1.1.x - no way they could complete full support for JDK1.3 (soon 1.4) so fast...
however, I can't say writing a Java program and compiling it to ".exe" is not tempting ;-)
if ms delivers and provides the fast superb IDE it always does, the Java community is in trouble...
Sun/Oracle/Borland - do something! the new java IDEs must be just as good (in terms of visuality, usability and EASE OF USE)
I doubt they want to deliver something that's compatible with the JDKs. If they did, they wouldn't get in to the legal issues with Sun. They want to take the language and supply their own libs for everything (like MFC) so that there can be no real portabillity. The way I see it, allowing users to run their regular Java code on MS platforms, only faster, is not something MS plans to do. It simply hurts their interests.
My background is originally Visual C++ using Microsoft products, then moved to Java using JBuilder.
Now I'm playing around with IntelliJ and I would recommend it to anybody. Best IDE I've used.
Give it a try (and I don't get commission!)
"I can't say writing a Java program and compiling it to ".exe" is not tempting ;-)"
Don't let them fool you. The file may be .exe but it is MSIL not native code. When you "run" the .exe you are actually running the runtime which will start up the JIT and give it the IL.
This could be done in Java also. :)
There are something like 20 languages supported by the CLR (Common Language Runtime) and Java is now just another one. The CLR is really an extension of the ideas inherent in the JVM, except that it is designed to support multiple langauges, rather than just one. So placing Java on the .Net plaform is not such a far out idea, they already have Eiffel and Cobol, so Java is probably much more logical.
I think it is important here to differentiate between Java the language and Java the platform. The Java platform is the entire collection of APIs and libraries and much more than the core language itself - java.lang (and perhaps java.util). There is probably a law suit here, but the language is differnet from ther platform, at least conceptually. I would suggest that Microsoft is seeking to leverage the language in an effort to move developers across to the .Net platform.
The .Net framework provides a collection of System classes, which is really a consolidation of all of the foundation of MFC, ATL, VB Runtime, Windows Scripting, ASP, with a whole heap of new stuff for web services. A Java .Net implmentation will undoubtably be tightly integrated with this System library - after all, that is the entire point of .Net. I agree that running Java applications directly on the CLR is probably not going to happen, and indeed not in MS' interests.
The new Visual Studio IDE is simply a shell into which new lnguage modules can be plugged. Third party vendors have already released modules for Perl and Python and I imagine if Java is avaliable on .Net then someone (perhaps MS itself) will release a Java module.
More likely, it's a tool to help developers convert their existing Java and J2EE applications to .NET!!!!
J# or no J#, I frankly don't see .Net having much of a chance anyway.
A decision to use .Net now means betting the farm on unreleased software that forces you to use IIS on Windows forever. In the light of recent nimda/code red adventures, that's a pretty bold move...
Add the fact that many of the most interesting new servers, price, performance and price/performance-wise, run Linux and all sorts of Unices; and the commitment to Windows-only for eternity gets even bolder.
In short, to make a decision to go with .Net you have to be sure that (1) .Net will live up to expectations when it is released, (2) IIS will suddenly become secure and stable and (3) Windows will become and forever remain the best server platform.
Would you be willing to bet your company on that? Even if .Net gets "java-language syntax"?
For those who choose to bet on MS platforms, such as many did with VB/Access on Windows 3.x and 95, the .NET platform on IIS will be an attractive OOTB experience.
However, they will have several problems achieving their previous successes (despite their illegally-gained monopolies of the mean time):
1) They've already lost massive amounts of developer mind-share to Java and "standards" in general
2) They are not seen as technology leaders in this case, but followers. (On Windows, VB *was* quite a break-through product in many ways.)
3) They're betting a ton on web-services, trying to out-standardize the standards-based products by making it possible to replace some efficient binary interfaces inside Windows with XML-based RPC. They just don't get it.
4) By tying everything together, they are forcing people to bet all or nothing. That's a big bet when people can safely bet nothing (i.e. go with other products that have already proved themselves in the market and real-world scenarios).
5) By tying everything together, they have to provide everything that is necessary OOTB. That prevents a general groundswell of support from third-party providers, since none of them can provide anything but "curtains and lace" for the .NET experience. All the core responsibilities are owned by MS.
6) By having IIS be in any way related to .NET, they are automatically going to have a bad security rap. (IIS is a pretty good server if you ignore its security problems. Too bad that MS suggests that people use it on the *inter*net.)
7) Where they started with the very low end and moved up, they now have no chance. No 1-2 person company is going to spend money on .NET when they can out-source web hosting, eCommerce, eMail, fax, etc. for $20/month. Now MS will have to build their base in the mid-range, with the Internet-based outsources constantly nipping at their heels while they (MS) are trying to attack the high end. MS no longer owns the low-end. With Linux, Apache, etc. (should I mention GNU?) the low end of the market is from now to eternity owned by viral open source, free in every way imaginable. For much less than the price of an MS server license necessary to perform simple file and print services, you can buy an entire "plug it in and run" zero-admin solution based on commodity hardware and open source software.
Don't fool yourself into thinking that they are going away, either. They will play huge in the mid-market, where their software can actually support the necessary scale while still running in "commodity" mode, where their software doesn't need expensive add-ons to still work, where it can prove its ROI fairly easily, and deliver plenty of bang for the buck compared to Sun or BEA or IBM. MS *will* teach us a thing or two about ease of development with .NET (one of the advantages of not having to actually support standards when building tools), and we all need to be listening and watching, because this will be a valuable opportunity to learn.
VB *was* quite a break-through product in many ways.
VB was never anything special, NEXT had better UI builder tools back in 87!
Next(tm) may have been advanced, but unfortunately you are one of only seven or eight people that knew that.
VB was a groundbreaking tool in that it made applications for Windows buildable. Before VB, there was MSC and the Windows API and a flawed book from clueless Petzold. That, for a platform with millions of users, is a joke.
In fact, it is very humorous that a platform like Next, with so few users, could have such great tools, while crappy Windows 3.x, with millions of users, could have such an archaic set of non-tools.
First off .NET is far from dead in the water, and it is still a release candidate. I have been a Java developer for a few years, as well I have done my share of VB. .NET is not targeting the VB developers, but trying to move M$ into a true Enterprise position against J2EE. Why else would they focus everything on a new language, (C#) and only spend little time with the current VB programmers.
My experience with Java has been great, and I will continue to build Java applications, however Java has no current Native support for web services, and pretty much everything done in Java (J2EE) is 10 times more difficult than it needs to be.
M$ has always been the best when it comes documentation, and IDE's. The Java community has not hit the mark here yet, in my opinion. I hope that M$, Mono or someone finalizes the ports to other platforms, but I have worked with enough companies to know that you will need to know both sides to give the best solution. You can not just push a religious belief to your customers. To many developers get wrapped up with love / hate for either side and do not realize the benefits of being able to supply solutions based on current systems set up, etc...
Anyhow, .NET seems to be a step in the right direction for M$, and this is a change, if you can not live with that, then stay closed minded, and in a box.
J# or no J#, I frankly don't see .Net having much of a chance anyway.
This is some silliness. I think what most of the people on the ServerSide tend to forget is that Microsoft owns the desktop (obviously) and owns the a large portion of the small to medium-sized business back office.
The point? There are legions of programmers out there for MS products (regardless of what you think of their skills or the MS products they support), and there will continue to be legions as long MS owns as much of the computing environment as they do.
In short, MS has always been successful because they target the fat, boring and simple middle ground of the computing world (full of people who aren't "real" programmer but can write some VBScript), while Sun and IBM tend to target the high-end of the market
Microsoft is also successful because they understand developers and create great programs for learning their products and they create exceptionally good development tools.
All in all, there are a lot of companies out there that have based themselves all on MS and will continue to do so, creating a large market for any product MS puts out.
On the negative side, MS's new licensing schemes (and I use that term in both senses of the word) are terrible and may force some companies to move. Their security needs a lot of work, and the .NET services side (including Passport) will never take off because MS is not trusted by the public at large.
On the plus side, MS's embracement of Web Services (along with Sun and IBM) makes a promise of a better, easier to integrate computing environment ever more a reality. And, having used .NET beta 2, I have to say it is an excellent product.
The Java community needs to learn from MS and develop products that are as easy to develop with. Right now, J2EE is still too tough for most people to understand and the tools don't make it any easier (for the record, I've used BEA, Orion, and IBM with a wide variety of IDEs).
This is some silliness. I think what most of the
> people on the ServerSide tend to forget is that
> Microsoft owns the desktop (obviously) and owns the
> a large portion of the small to medium-sized
> business back office.
Being accused of silliness, I'd better respond...
Of course Microsoft owns the desktop, and more. And of course there are lots of shops that simply don't have a choice, but to continue using Microsofts products. And of course these people will, eventually, use .Net.
That, however, is not the main objective of .Net.
The huge effort put into .Net by the nice people of Redmond is rather aimed at those of us that actually HAVE a choice, mainly between Microsoft and Java in one form or other on the server. Simply put: .Net needs to conquer the servers from J2EE to win.
Given the very real costs and uncertainties involved in total commitment to .Net/Windows/IIS, I submit that Microsoft is loosing that battle.
Dan, you are absolutely right. And Gartner seems to share the same mind set too: http://news.cnet.com/news/0-1003-201-7475235-0.html?tag=cd_mh
From the article: "In a recent Gartner survey, most respondents mentioned cross-platform support as a significant reason for selecting Java, and 23 percent mentioned "avoiding Microsoft lock-in."
.Net will have difficulties if the two reasons above will remain important aspects to choose Java. I think they will...
Greg Peres posted this article as a news post, but I think it belongs in this thread.
Check out Microsoft takes new tack on Java
Microsoft plans to make available this week a test version of a new tool intended to attract Java developers to the company's .Net Web services plan.
<i>The huge effort put into .Net by the nice people of Redmond is rather aimed at those of us that actually HAVE a choice, mainly between Microsoft and Java in one form or other on the server. Simply put: .Net needs to conquer the servers from J2EE to win</i>
I'm no expert, but here's what I reckon...
Between the customer-gouging license schemes, security problems, legal battles, one-server/one-vendor model, forced upgrades and whatever else; Microsoft knows that it stands very little chance of attracting developers or companies away from the J2EE platform, and over to .NET.
After all, anything you can do on .NET, you can do on J2EE (and yes, if you really want to, you can use other languages with the JVM)
So that leads me to think that .NET is more about keeping their existing developers from migrating to Java, rather than bringing Java developers to .NET ...
The version of Java used in this Visual J#(?) seems to be so out of date, that most Java bods wouldn't touch it; but for those Microsoft chaps stranded when Microsoft canned J++, it could be just the ticket to allow them to carry on developing on .NET, without having to rewrite their code.
<i>The huge effort put into .Net by the nice people of Redmond is rather aimed at those of us that actually HAVE a choice, mainly between Microsoft and Java in one form or other on the server. Simply put: .Net needs to conquer the servers from J2EE to win. </i>
I'm not sure I'd agree with this on two points:
Point 1: .NET is just the continued evolution of the Microsoft server platform. It is new in it architecture, but the basic ideas are extentions of their current server architecture and VB background. In that sense, MS has always been in a battle with Java/J2EE and will always be in the battle. To say this starts with .NET, I believe, is wrong - it's just the latest pass from MS.
In saying this, and having used the .NET framework, I believe they have a good product - so, I agree with a later posting about getting people to stay on the platform. I also think that if you look at simplicity of development, .NET has an advantage over J2EE - it's a bit easier to understand and extends concepts from VB - thus making it appealing to a larger developer pool.
Bottom line - I think .NET is actually intended to leverage the large base of VB developers. The world has traditionally been split into VB developers and ASP/web developers - now the two worlds can come together. They are trying to woo the Java developers, but let's face it: that ain't going to happen. There are, however, something like 50,000 VB developers which are really utilized fully in the new web-centric world.
Point 2: To me, the most interesting aspect of the .NET stuff is that it promotes interoperability between platforms. So while everyone will be locked in to the MS platform from a development standpoint, from an integration standpoint, they are making it easier than ever to have a J2EE server and an MS server running side-by-side. This to me points out that either they've woken up to be =slightly= more open, or someone really screwed up and it's a large mistake. Either way, it definitely makes integration a snap.
So, given these two points, I'm not sure that .NET is aimed at or has to displace J2EE in order to have a large market share - particularly given their penetration into the mid-market.