Fog Creek Software
Discussion Board

Welcome! and rules

Joel on Software

Languages other than C#

We are currently in the process of planning a complete rewrite of a system that we've been developing on a mainframe system for about 20 years.  (I know that we should NEVER rewrite from scratch, but that decision has been made).

We've been going thorugh a lot of struggles in deciding what language / platform to use.  Currently we have a decent amout of Java knowledge and a ton of RPG knowledge in house, but no .Net knowledge. 

One of the ideas that's being tossed around is to jump to .Net mainly so we can develop a clean Windows interface.  Within the context of these conversations, some people want us to use VisualRPG so our RPG programmers won't have to learn a new language syntax, and some people keep throwing around J#, but I don't think they really know what they're talking about.

Is there any compelling reason to use J#?  It seems that C# is about as close to Java as you can come, and that the learning curve is minimal.  Does anyone use J# at all?

Also, I've been arguing that VisualRPG is stupid because the language syntax is about .01% of what a (procedural) RPG programmer will have to learn to effectively program in any OO language.  If they can learn the new design paridgm then having them write procedural programs in an RPG syntax within .Net won't help anyone.  Does this make sense?


Wednesday, June 9, 2004

You definitely should use either C# or VB.NET, in my opinion. There's a ton of resources available for either language (books, MSDN samples, third-party websites...) but next to nothing for J#.  I don't know of anyone using J#, as far as I can tell it's simply a kludge to ease transitioning existing Java code. But why bother since C# is so similar anyway?

I think Eric Sink of SourceGear (Vault) blogged a while ago that his company evaluated J# for porting Java code to .NET but found that they still had to fix up stuff that didn't work, so they just used C# instead.

Chris Nahr
Wednesday, June 9, 2004

There's an easy solution for the Java people: tell then J# is based on Java 1.1. They'll shudder, perhaps even a few of them will pass out. But nobody will ever talk about using J# again. :)

(J# exists for old J++ users, NOT for modern Java users.)

Brad Wilson (
Wednesday, June 9, 2004

It'll take several weeks for your existing programmers to come up to speed on the .net framework.  The language you decide to use will have little (if any) effect on the learning curve.

Also, keep in mind that .net was designed to be a multi-language platform.  There is no need to force everyone to use the same language.

Len Weaver
Wednesday, June 9, 2004

There are some advantages to J#, e.g.

Also their is stuff at

That being said, the Java -> C# transition seems to be not too difficult for the Java programmers. I'd consider it for new code.

Just me (Sir to you)
Thursday, June 10, 2004

Maybe ".NET and Java: A Study in Interoperability" is also an interesting read for you (free reg. req)

Just me (Sir to you)
Thursday, June 10, 2004

Thanks to everyone for all of your great responses.  I think we're going to end up jumping in head first into C# & VisualRPG.  All of your insights are greatly appreciated.

Thursday, June 10, 2004

Good call. I was working Java when C# hit the scene and it only took me a month or so to get a good enough handle on it to start web app development in it.

Nick Ruisi
Thursday, June 17, 2004

*  Recent Topics

*  Fog Creek Home