From Java to C# and back to Java again

Recently i had to manage with a big rewrite project. The system i’m working on is not ”rocket science”, but it has it’s history and it’s quirks (plenty). Some of the things missing were AuditTrail’s, multiplatformsupport, and easy handling of adding new sources of information.
The system is written half in C#/Java. Why?
Because there never was an long-term strategy toolchoice, different developers have been using their favourite tools at different points in time, or in different parts of the architecture. The positive thing about the project i’m in, is that the people doesn’t seem particulary cemented in any of the enviroments, which is good for avoiding ”religionwars”

So, this would be a major rewrite.Yes.
I havn’t myself been doing Java-development since somewhere around JDK 1.4 a couple of years ago. Since then i’ve been mostly working in .NET/C#/ASP.NET.(I even took the certifications MCPD for Enterprise Application Developers – Amen).

But, now we needed among other things, a stable ORM and a good AuditTrail to cope with.
First we looked at LINQ for SQL,, but it’s a bit too lightweight, and it’s future seems to be unsure. So, we headed for the EF. framework… well. NO.. Maybe the next version… but we couldn’t wait for the next version.
That lead us too Hibernate/nHibernate… and look and behold. JPA was what we been looking for..
Now all we needed was a AuditTrail… and again, there it WERE in eNvers.Does C# have an eqvivalent? I found this so far.

Ok, so EJB 3 and JPA is a major, major lift from the old complicated models. Good!

But what about the working-enviroments,,,, one thing i like about .Net is that it’s soooo easy to get started in VS. Last time i tried Eclipse and Netbeans, they sadly needed a bit more effort to get into.(Altough very good when they were configured)
So i downloaded the latest NetBeans — *wow*
They HAVE been inspired by the ”bundle it” approach from Visual studio.

For me, it’s a strength knowing ”both” worlds of Java and .Net, and using them were it seems appropiate. As of now, i tend to use Java for backbone-functionality and were longterm architecture is important, and .Net for GUI/lightweight/RAD development.
This may change, i looking forward to next version of JSF etc.

I will follow up this blogpost.

Use the tool that’s right for you, don’t stagnate in any special tool, and have an open mind. If you’re a .Net developer, try out some stuff from the Java-world, and if you’re into Java, try some .Net. It gives you better credit if you can be neutral and know how to use the right tool for the right job

Right now,I’m quite a Java-fan again:) – altough missing some of the syntactic sugar from C#.

MCPD EA nummer 7090 lämnar fabriken

Tog häromdagen min sista Microsoftcertifiering på ett tag. MCPD EA får jag numer lägga till.Nummer 7090 Ja, vad betyder det i praktiken – en självgod titel i bagaget, eller en mycket nyttig sak att ha som visar att jag kan mina .NET prylar?

Sanningen att säga så är nog certifiering en blandning. Så här ser jag på det:
Om man har gedigen erfarenhet och utbildning i bagaget, så kan certifieringar vara ett extra sätt att dels vidga sin kunskapsbas ( man blir tvungen att läsa några områden man missat), dels att få in lite annat tänk i sina processer + att man dokumenterar sin kunskap.
Har man liten erfarenhet samt lite utbildning tror jag inte certifiering är vidare bra. De lär inte ut koncepten kring systemarkitektur, eller programmering på ett bra sätt.
Sedan skulle det ju vara roligt om MSCerten faktiskt iaf berättade att det finns alternativ till produkterna. (Man kan faktiskt köra .NET på Linux, etc).

Är jag numer properitärkodfanatiker och Microsoftevangelist? Nä -NET har sina fördelar och nackdelar – precis som Java etc. jag älskar NET programmering precis som jag föredrar att sitta i Ubuntu. Ibland är den öppna lösningen bättre, ibland den stängda – simple as that. 🙂

(O ja, jag vet att Mono bara klarar .NET 2.0 i Linux än – MS -släpp alla specar för tusan!)