What coding language/development app would be used to develop this software?

I am considering developing software that is similar to what is offered on the following two websites:

http://www.xmind.net
http://www.thebrain.com

I have some coding experience but I will have to self teach myself on how to develop this type of software (or get help from people with more experience on certain tasks). What coding languages/development applications do you recommend I use in order to develop software similar to what is offered on these websites? Are there certain development applications that are easier than others to learn that I should consider trying out first before delving into the other ones?

It would help if you describe what your software will actually do rather than linking to a couple sites full of marketing jargon.

Friedo, actually I was trying to be careful not to explain what the software I want to develop is for exactly. However, it could safely start off with a similar structure and look of XMind’s software. What kind of language/tools were likely used to develop XMind’s software?

Sorry if I wasn’t being clear enough.

XMind and The Brain are basically mind mapping tools.

Before anyone can answer meaningfully, you need to decide what platforms you’ll be targeting:
[ul]
[li]Web[/li][li]Windows desktop/laptop[/li][li]Mac desktop[/li][li]Linux desktop[/li][li]iPhone / iPad[/li][li]Android phone / tablet[/li][li]Windows phone / tablet[/li][/ul]

and for the last 6, do you want your users to be able to use it without an Internet connection?

If you plan to support multiple platforms, how will information travel between the devices? The Cloud can work wonders for this but will your users have security concerns?

Is there collaboration involved (multiple users working on the same plan)? If so, how will the collaboration work?

XMind is a Java application, using several libraries from Eclipse and a few from Apache.

The platforms I’ll be targeting are:

[ul]
[li]Windows desktop/laptop[/li][li]Mac desktop[/li][li]Linux desktop[/li][/ul]

Java is a good choice for cross-platform desktop development. That’s probably why XMind chose it. :slight_smile:

Probably Java, then. It’s likely the easiest-to-learn language that will give you decent performance and yet shield you from the intricacies of the various platforms. And if it turns out that you need something more advanced, it’s a good stepping stone to several other languages.

That said, these things are pretty firmly in the “generic system programming” camp, so a lot of it will boil down to personal preference.

Also, don’t worry about this: the hard part of software development is the “development,” not the idea. I can pretty much guarantee nobody’s going to “steal” your idea, which has probably been thought of multiple times before, anyway. Ideas are pretty worthless in software without implementations.

Not trying to be too flattering but it’s rare I see so many smart people answer questions about so many different topics so fast like on this board.

A while ago, decided I was going to use sources such as these to learn the target programming language as soon as possible:

http://www.courses.com
http://www.codecademy.com/
http://ocw.mit.edu/index.htm

http://stackoverflow.com/ and http://stackexchange.com/ also look quite substantive.

Are there other sources I should look out for to get me up to speed in the least amount of time?

Stack Overflow is excellent, but it’s not a tutorial site. If you ask good questions (here is my very specific goal, here is what I tried, but I am running into these specific problems) you will get good answers. If you ask bad questions (write my code for me plz) you will just annoy people.