Which Linux distribution has a GUI like MS Windows ?

Hello experts,

I have windows on my PC and now I want to continue java programming in Linux. Can anyone please suggest which distribution I can use which will give me better environment for programming and also good interface like windows...

"good interface like windows" is a bit of a misnomer. It's the most familiar to you, but if other people didn't want something different Linux wouldn't exist. There's going to be a difference and a learning curve because they're simply not the same.

Windows is also the antithesis of a good programming environment; the distros that pretend the hardest to be Windows are also the hardest to program in. Every other day we get Ubuntu people trying to follow code examples and getting nowhere... Ubuntu splits its packages into the bits you need to program with and the bits you need to just use it; it's not enough to have Xorg on your system for a programmer to use it for example -- you need to manually install Xorg-dev or something first. Rinse and repeat for hundreds of separate libraries. Most distros do this the same way.

Gentoo is a wonderful distribution for programmers. Install Xorg in it and you'll have everything you need to build things that use Xorg. It supports any language you can think of and lots nobody's heard of. It can install multiple versions of the same thing gracefully. It's also somewhat more intimidating. If you're interested in learning about Linux, installing Gentoo will teach you more than you'd learn in years of using a Windows-alike GUI shell. I used Mandrake(called Mandriva these days) for 3 years and learned nothing about what it was actually doing...

Pretty much any Linux distribution will do, as they all ship with pretty much the same software.

If you just want to continue programming Java, and don't care for anything else, install Ubuntu, install Eclipse from the repository, and you're all set.

If, however, you want to learn about the OS, too, and maybe even see a few different interfaces than what you're used to (many of them much more user friendly than anything MS shipped recently), try Gentoo (as Corona mentioned), Debian or Slackware.

Gentoo: A coders dream, as all software is installed from source, which means that all development APIs are instantly available, and all software is optimized to your system. But the learning curve is very steep
Debian: Rock-solid. Has one of the (IMO) best package management systems, and probably the largest package pool of all distros. Steep learning curve, but nothing extreme.
Slackware: One of the oldest distributions (and I think the oldest still around). All software is pretty much vanilla, but there's no dependency tracking. Quite steep learning curve, too.

Or you could use something different, like BSD or Solaris. Take a look at DistroWatch.com and try a few.

I'd add that the learning curve for gentoo is more universal, though... A large part of what you'll learn will be readily applicable to other Linux distros and beyond. Whereas learning to use Ubuntu generally won't help you use anything but Ubuntu...

thanks all for your valuable replies