The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

Moving from .net to Java

Hey. The corporate office at the company I work for is requiring all the developers to move to a common development platform. The one they picked was Java. I'm currently a .net developer, and I think that I (we) are moving a step backwards with this move. Nonetheless, I was wondering:

1) Should I host my new Java web apps on Solaris or Linux?
2) Anything nice about Java I should know that would make me feel better about the switch?
3) Anyone else been required to do something like this? What were your experiences?

Thanks!
Casey Kriutzfield Send private email
Thursday, August 24, 2006
 
 
Now you can scrap that PC and get a MacBook Pro for development... and be so much happier.

We are all Java and it's great.

Oh... we run Solaris for the servers right now but Linux (SUSE) is on it's way in the door.
TownDrunk
Thursday, August 24, 2006
 
 
i am going the other way from java to C#
and i feel the same way about C# as you do about java
its a step backwards

but i think it comes down more to the fact, it's learning something new and until you have done it for a while it will seem hard

if you have a choice of IDE's try one of these
http://www.jetbrains.com/idea/
http://www.eclipse.org/
bumperbox Send private email
Thursday, August 24, 2006
 
 
Host your java apps on windows if you like. I think after some adjustment you'll find programming in Java not much better or worse than .NET. They both get the job done and the "better" way depends on your attitude and experience.
nonymous
Thursday, August 24, 2006
 
 
You can host Java on a windows machine? <quizzitive look>
*should* you host it on a Windows machine?
Casey Kriutzfield Send private email
Thursday, August 24, 2006
 
 
If I were to receive a corporate directive such as this the only move I'd be making would be to a different company.
Andrew Lighten Send private email
Thursday, August 24, 2006
 
 
My company allows developers to use any technology they want within reason. While it's great for individual developers, it's downright nasty for us as a collective group, and very expensive for the company as a whole.

The problem was so bad that we (the developers) took the initiative to agree to limit ourselves to four common technologies and we gave some extremely serious thought to simply using two.

I respectfully disagree with Andrew.

I do admit I'm not sure Java is the best choice verses .NET since it really depends on what you're developing.  However, I think that simply deciding to use one lanaguge (and one common set of tools) regardless of the actual language selected, will provide far more benefit than the "merits" of the languages involved.

Please keep in mind that yes, your "creativity" as a programmer will take a minor hit as you get used to a new IDE, a new set of libraries and a new syntax. The plus side is that since you're working as part of a team, you can now share code and experiences, and avoid reinventing the wheel or dealing with maintenance nightmares.
TheDavid
Thursday, August 24, 2006
 
 
1) Should I host my new Java web apps on Solaris or Linux?

Sun Microsystems personally optimizes a Java Runtime Environment (JRE) for Solaris whereas Linux usually makes do with the "stock" version (depending on distribution).  However, you will only really see a distinct advantage if you're writing programs that normally bring standard desktop machines to their knees. For basic CRUD style database/web services, the performance difference is trivial.

2) Anything nice about Java I should know that would make me feel better about the switch?

Most Java tools and libraries are freeware, open source, blah blah. (I obviously don't have numbers.) I find this makes it easier to get a corporation to allow you to evaluate developer software and find something that meets your needs since all they have to do is agree to the license (no purchasing hassles basically.)

3) Anyone else been required to do something like this? What were your experiences?

People consistently underestimate the time it takes to set up a fully fledged development environment complete with IDE, version control system and "one-button" build/deployments. .NET does a decent chunk of it for you, Java does almost none of it for you.

If I were "managing" such a switch, I would purposefully set aside two months just to get everything set up and allow the developers to do dry runs to make sure all of the pieces are working together correctly.
TheDavid
Thursday, August 24, 2006
 
 
TheDavid is right, changing languages has a significant impact for a while - don't sweat over the first few months.

Java has a great community (apart from the few MS-bashers which I'm sure you get everywhere) and lot's of great open-source tools.

Check these sites out to start getting comfortable with the Java world:

http://www.javalobby.org
http://www.artima.com/index.jsp

also Bruce Eckel's book "Thinking in Java" is a good buy - view it online at
http://www.codeguru.com/java/tij/tij_c.shtml

Enjoy
Paul Norrie Send private email
Thursday, August 24, 2006
 
 
Casey,

The good thing about Java would be that there are a lot of tools/libraries for you to choose from, to meet your needs. You want data access - You have JDBC, Spring JDBC templates, IBatis, Hibernate, JDO and many more to choose from.
You want web application testing - You have HttpUnit, HtmlUnit, jWebUnit, Canoo Web Test etc. etc.

Of course that is the bad thing about Java too, after a while you  would be longing for the times when you knew exactly what tool to use, since there was only one ;)

Probably the two things that you will have to get used to will be the Java API and the Java IDE.

I suggest You have a look at Intellij Idea, it does a lot of things right, out of the box.

And I recommend -
Effective Java - http://java.sun.com/docs/books/effective/ if you are already know the basics of Java programming.
and
http://saloon.javaranch.com for when you need some friendly help.

HTH
Sonny Gill Send private email
Thursday, August 24, 2006
 
 
Wow! Thanks for all the information, and words of encouragement. This is exactly the information I was looking for. Especially the links. Hopefully my new role as a Java developer will come about smoothly.

-- Casey
Casey Kriutzfield Send private email
Friday, August 25, 2006
 
 
>1) Should I host my new Java web apps on Solaris or Linux?

Just curious, why not stick with hosting on Windows since that is your forte?  No sense in having to learn a new OS too.

But from my personal opinion pick Solaris! :-)

>2) Anything nice about Java I should know that would make me feel better about the switch?

The Java community is big on frameworks and that I think is the biggest difference between the two platforms.  Ignore them all at first.  If you know C# the language syntax should not be an issue.  Then learn the specifications like JSP, Servlets, EJB's etc.  It shouldn't be a big deal.
Bill Rushmore Send private email
Friday, August 25, 2006
 
 
Be prepared to get buried in framework hell. In Java, the abstraction layers are so thick and the xml config files are piled so high that you won't even remember what it was like to actually program and solve problems any more.
Steve Prefontaine
Saturday, August 26, 2006
 
 
I thought EJBs were out and POJOs are in? ;-)
arethuza Send private email
Saturday, August 26, 2006
 
 
Am I the only one who thought Casey and bumblebox should switch jobs?  :)
GuyIncognito
Monday, August 28, 2006
 
 
Good luck with the inhuman case-sensitive language.
edddy Send private email
Friday, September 01, 2006
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz