Java Forum / General / June 2007
beginner: Java or .NET?
RAM - 20 Jul 2006 19:59 GMT Hello, I graduated computer science faculty and decided to became a programmer. Please help me to make a decision: Java or Microsoft .NET? What is the future of Java? Thanks! /RAM/
John W. Kennedy - 21 Jul 2006 19:22 GMT > Hello, > I graduated computer science faculty and decided to became a > programmer. Please help me to make a decision: Java or Microsoft .NET? > What is the future of Java? > Thanks! > /RAM/ "I'm offering you a chance to be on the side that's right. I don't know which one will win." -- C. S. Lewis: "That Hideous Strength"
 Signature John W. Kennedy
Casey Hawthorne - 23 Jul 2006 06:53 GMT >Hello, >I graduated computer science faculty and decided to became a >programmer. Please help me to make a decision: Java or Microsoft .NET? >What is the future of Java? >Thanks! >/RAM/ Both are relatively new (just over 5 years) so it would be hard to figure out the trend!
However, since you have a CPSC degree, can you not make the intellectual distance between them and learn both?
Or do you have a BS?
Maybe you should go for an MS - More of the Same!
Or
Maybe you should go for a PhD - Piled Higher and Deeper! -- Regards, Casey
CheeseToe - 23 Jul 2006 19:03 GMT >>Hello, >>I graduated computer science faculty and decided to became a [quoted text clipped - 5 lines] >Both are relatively new (just over 5 years) so it would be hard to >figure out the trend! Java has been around a lot longer than 5 years. It's been strugglng to overcome the stigma of not having lived up to the hype. Interesting read here:
http://tinyurl.com/76fc5
The whole Sun / Java thing is now passe and I've noticed the downward spiral has really picked up momentum in the last year or two.
.Net, while not truly cross platform, has some definitive performance advantages, and the integration of .Net with Microsoft's other products (SQL Server, Office etc) has made it a compelling development platform. Some of their upcoming technologies will just drive nails into the Java coffin a little bit faster and deeper.
tony broughton - 23 Jul 2006 21:58 GMT > Hello, > I graduated computer science faculty and decided to became a > programmer. Please help me to make a decision: Java or Microsoft .NET? > What is the future of Java? > Thanks! > /RAM/ Don't bother becoming a programmer. All the work is being off-shored to India and China, and western wage rates have been falling steadily for at least the last five years. There is a glut of graduate and experienced programmers on the job market (the "skills shortage" is a complete myth), employers can pick and choose from the lastest graduates and will tell you you're "too old" to work once you're over 35-40. So if you start work at, say, 25, you've only got 10-15 years of work (if you're lucky) and then unemployed at age 40. My advice is become a plumber, electrician, teacher, car mechanic, something they can't offshore.
Reaper - 24 Jul 2006 00:59 GMT >> Hello, >> I graduated computer science faculty and decided to became a [quoted text clipped - 12 lines] >unemployed at age 40. My advice is become a plumber, electrician, teacher, >car mechanic, something they can't offshore. Sadly, the dude speaks the truth.
William Cai - 14 Dec 2006 15:37 GMT >> Hello, >> I graduated computer science faculty and decided to became a [quoted text clipped - 12 lines] > unemployed at age 40. My advice is become a plumber, electrician, teacher, > car mechanic, something they can't offshore. BTW, the similar story happens in India and China as well. We don't grab job offers from you guys, just... you know, the world becomes flat. :)
Lew - 15 Dec 2006 14:53 GMT >> Don't bother becoming a programmer. All the work is being off-shored to >> India and China, and western wage rates have been falling steadily for at [quoted text clipped - 5 lines] >> lucky) and then unemployed at age 40. My advice is become a plumber, >> electrician, teacher, car mechanic, something they can't offshore. Doom and gloom!
The skills shortage is not a myth. I've seen it myself among people hired on various programming teams. There are a lot of folks scamming employers into thinking that they are programmers.
I am 50 and still very much in demand as a programmer. Trouble is, so many projects are afflicted with a lack of seasoned staff that they are floundering. There is a definite market for seasoned pros.
Of course, if you insist on not progressing in your career, and are pretty much the same programmer at 40 or 50 or 60 that you were at 20 or 30, you are going to have trouble competing as a programmer.
Most programmers leave the profession by the time they are 40, it appears. They get "promoted" to management or make some lateral move that takes them away from software development. Senior programmers have less competition at that level than you might think.
Off-shore (not really a verb, but English is flexible that way) teams require close management by the on-shore staff to be effective. That means that domestic programmers have opportunities to work with companies that use off-shore staff.
Programming is a necessary profession, like the oxygen tech on a space station. Without IT society would not function any more. Without programmers IT will not function. There will always be a demand for programmers until software itself is obsolete.
You have to understand your market and position yourself properly, just like in any other business.
- Lew
Cyril Shelest - 25 Jul 2006 19:11 GMT > Hello, > I graduated computer science faculty and decided to became a > programmer. Please help me to make a decision: Java or Microsoft .NET? > What is the future of Java? > Thanks! > /RAM/ Hi, I use both of them. And for developing Java applications that call JNI .NET code I have designed JNI for .NET (see http://www.codeproject.com/dotnet/JavaDOTNETIntegrate.asp and http://www.simtel.net/product.php[id]95126[SiteID]simtel.net).
tabun@storm.ca - 26 Jul 2006 09:42 GMT > Hello, > I graduated computer science faculty and decided to became a > programmer. Please help me to make a decision: Java or Microsoft .NET? > What is the future of Java? Use a criterion function and specify your criteria to which to compare everything.
> Thanks! > /RAM/ A contemporary sample: take the killer application many users like for torrent downloads. Get the sources for it in every language you can think. Without reading the documentation for any of the languages, see which one writes easier to understand code. Azureus, Bittorrent, Bittornado, Limewire, snark, and try to find a torrent program written in .Net that is free and open-source. Let me know when you find one and if you find it easier to understand than other sources. Let me know if you have source code complexity metrics tools to support you in your discoveries too.
http://www.dotnetrocks.com/ is a stream dedicated to .NET. It interesting to mention, for their downloads, they recommend Azureus which is a bittorrent client written in Java. From what I understand the source for Azureus can be compiled natively with java now. There are many different java jvms, IDE's, and compilers.
GCC is an interesting alternative because everything compiles with gcc. java/c/c++ and perhaps .NET if you consider mono as part of gcc.
Keep in mind in my experience the choice of language and tools usually is not done by the programmer because YES WOULD YOU BELIEVE IT IS A POLITICAL DECISION? It is up to your employers. My experience has led me to learn different tools on the job at the employers' request.
Conclusion: just do whatever your boss wants with whatever language and toolset he wants. You can anticipate it by asking what your potential employer would like you to know. That said it is all for nought if he doesn't hire you or changes his mind. In the meantime enjoy doing outings with your family and friends.
Pawel Stawicki - 22 Aug 2006 10:21 GMT > Hello, > I graduated computer science faculty and decided to became a > programmer. Please help me to make a decision: Java or Microsoft .NET? > What is the future of Java? Looks like both are competing quite well, since C# appeared java development accelerated. I think both have future, just try both of them and see which you like more.
Regards Pawel Stawicki
Angus - 14 Oct 2006 11:39 GMT Hello
I am amazed by the lack of real pros and cons in this article. I am interested in this same theme but I haven't learnt a thing from reading these responses. It is particularly disturbing since I assumed this forum would be extremely pro Java.
Come on surely there must be an intelligent Java programmer reading this who can provide some useful input?
> > Hello, > > I graduated computer science faculty and decided to became a [quoted text clipped - 7 lines] > Regards > Pawel Stawicki GTR - 15 Oct 2006 19:59 GMT >Hello > [quoted text clipped - 5 lines] >Come on surely there must be an intelligent Java programmer reading this who >can provide some useful input? What input are you looking for? It sounds like you just want to hear good things about Java. There are Java magazines that will have lots of pro-Java stuff.
This thread was about which was better for a beginner. The truth is that .Net has made tremendous grounds since it's release, and has made the choice between Java or Microsoft purely a preferential thing.
With Java you get "cross platform", with .Net you get "faster and optimized for Windows". There is a time and place for each. Java is a good choice for academic/school environments where the goal is to focus on learning how operating systems work and such. It is also good for mobile phone apps. .Net is good for rapidly putting together websites or Windows apps. The thing I like about it is that it is also quite scalable and fault tolerant on the upper end of mission critical, highly available sites. So you do rapid development if you want, just to get a working prototype out there, but you can also develop meticiously and achieve a scalable solution that supports thousands of concurrent users.
I did Java development for about 7 years, but kept an eye on .Net as it emerged. For the time being I have switched to C# because the tools are better, the end result is faster, and I do at times develop rich-client apps where I want to utilize a lot of the latest and greatest UI bells and whistles. The newest set of bells and whistles that will be on everyone's desktop soon is Vista, and .Net gives you an advantage toward utilizing these features of Vista.
On the same hardware, .Net is faster than Java on Windows or Java on Linux. There used to be a case made for Java because some of the Unix hardware was faster than what was available with Intel architecture. However, the recent crop of Intel processors has changed all that, and with quad-cores coming out next month, it makes an even stronger case for .Net in my opinion.
pwndjoox - 16 Oct 2006 23:17 GMT Try this:
http://snipurl.com/z6h1
ITMozart - 21 Jun 2007 14:36 GMT I'm quite amazed too.
I'll give you my opinion. That's a very complex question.
The professional market requires knowledge of platforms, not languages, so when you choose a language, you'll study its platform for your professional work.
So, learning "many languages" is quite a myth, because after a couples of years from start, when you'll have _real_ experience, you can't go for both, because either you have experience on J2EE _and related technology_ or you have experience on ASP.NET _and related technologies_.
Most of people telling they know many languages are "professional amateurs", which mediocre skills in the specific languages. They still can work without any problem in the IT market, because high skills are not a requirement.
So, I can say what I think of various platforms:
* Java: very mature and used platform. You're guaranteed to "survive" for many years. But its presence is constantly decreasing. Java is a very clean language, and I would suggest it to beginners.
* .NET: some IT fields seems like prefer this platform, for example when you look for Oracle jobs, you very often find the couple Oracle + .NET, and I don't know why. Its presence is constantly increasing. You're guaranteed to "survive" for many years. C# is a more complex and "powerful" language, but being more powerful, it can be very misguiding.
Wandering in the IT companies, you can found real messes done in C++, because of its "power".
How long will it take for .NET to reach Java diffusion? Who knows? Point is: maybe another platform will outstand both. It you're very into IT, I think Ruby in the future will do this, but still before of this, there will be a reasonable number of well-paid positions.
---
Eventually, I think the chose of Java or .NET is more or less the same. I'd choose Java if i'd be more conservative, and .NET if I'd be more "adventurous".
Of course, if you learn and _really_ study Ruby, it would be very interesting.
Bye, im
> Hello > [quoted text clipped - 16 lines] >> Regards >> Pawel Stawicki Lew - 21 Jun 2007 15:56 GMT > I'm quite amazed too. Please do not top post.
> * Java: ... its presence is constantly decreasing. Evidence?
> Java is a very clean language, and I would suggest it to beginners. > > * .NET: some IT fields seems like prefer this platform, for example when > you look for Oracle jobs, you very often find the couple Oracle + .NET, > and I don't know why. Its presence is constantly increasing. You're > guaranteed to "survive" for many years. Who enforces this guarantee?
> C# is a more complex and "powerful" language, but being more powerful, > it can be very misguiding. More powerful than Java? Evidence? Definition of "powerful"?
> Wandering in the IT companies, you can found real messes done in C++, > because of its "power". You can find real messes in any language. It isn't C++'s fault but the practitioners'.
> How long will it take for .NET to reach Java diffusion? Who knows? Point > is: maybe another platform will outstand both. What happened to that guarantee?
> It you're very into IT, I think Ruby in the future will do this, but > still before of this, there will be a reasonable number of well-paid > positions. Ruby will do what "this"? Ruby is a very different language from the Java/C++/C# constellation and not equally suited for the same problem spaces.
 Signature Lew
ITMozart - 30 Jun 2007 00:20 GMT >> * Java: ... its presence is constantly decreasing. > Evidence? [quoted text clipped - 7 lines] >> Point is: maybe another platform will outstand both. > What happened to that guarantee? This is a personal perspective of the market. Of course can be wrong. I don't know if there exists any objective perspective. I remember about TIOBE index which does statistics in language popularity, which evidences java popularity as decreasing in the last years. Of course TIOBE metrics can be debatable.
>> C# is a more complex and "powerful" language, but being more powerful, >> it can be very misguiding. > More powerful than Java? Evidence? Definition of "powerful"? Programming sometimes with C#, I found many little things that make the language more expressive. Method invocation (delegates) is easier, while with Java is quite awkward; raw strings; output parameters can be sometimes very useful. Library visibility is nice, but just an addition. I find Get/Set very interesting (but i would not use them). Unsafe code can make someone happy. Deep support for generics. Curiously, there is a flaw in Java language, found when arrays and generics are used together (I don't remember exactly, but I stepped once). Little research: http://www.ibm.com/developerworks/java/library/j-jtp01255.html
I suppose that there are many, many things which I don't know. Seems like .NET 3 is introducing some basic scripting capabitilies, but I don't know about them.
To my *great* disappointment, Java stopped the grammar evolution with release 5.
Though it's debatable that this kind of changes can make a language more productive (in "Peopleware", "Programming wargames" somewhat demonstrated that there is no real difference in productivity among languages - except for Assembler).
Concluding, I find C# programming much more smooth "hands on". My hands, at least!.
>> Wandering in the IT companies, you can found real messes done in C++, >> because of its "power". > You can find real messes in any language. It isn't C++'s fault but the > practitioners'. Specifically to C++ in respect to Java, I think that is more immediate to step into pitfalls, for example procedural programming and global variables... and still char[] is used. I think that a huge merit of java has been the fact that it someway "suggests" a cleaner way of programming, for specific choices of language design. Examples: - no use of references/structs, but objects if you want to pack information - common use of getters/setters. personally, i don't believe in getters/setters methods, but they somewhat suggest to think more in OO-terms - checked exceptions and so on. of course, it's not an exact science, ie. checked exceptions can lead to the bad practice of empty catch blocks. I think that Java designers wanted to keep Java "brutally coherent", which has some positive sides (and many negative ones, listed in my upper explanation).
>> It you're very into IT, I think Ruby in the future will do this, but >> still before of this, there will be a reasonable number of well-paid >> positions. > Ruby will do what "this"? Ruby is a very different language from the > Java/C++/C# constellation and not equally suited for the same problem > spaces. The "this" is web development; java is web development. I think that dynamic languages could cover a good deal of web projects which currently are in Java/.NET. I'd personally very much prefer to use Rails/Django than Hibernate/Struts/Spring.
Bye! IM
Free MagazinesGet these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...
|
|
|