Project of the Month, February 2006

FreeMind

Description of project

FreeMind is mind-mapping software, or a tree editor. With it, you can create foldable trees of plain text notes, enriched with colors, icons, cloud-shapes, and other graphics. Folding and breadth-width search make it valuable as a knowledge base tool. It can be almost fully controlled by keyboard.

Trove info

  • Development Status: 5 - Production/Stable
  • Intended Audience: End users/desktop
  • License: GNU General Public License (GPL)
  • Operating System: OS-independent (written in an interpreted language)
  • Programming Language: Java
  • Topic: Graphics, to-do lists, visualization
  • Translations: English, French, German
  • User Interface: Win32 (Microsoft Windows), X Window System (X11)

Why and how did you get started?

Christian: I was looking for a free mind-mapping application to plan my wedding. After having tried a few I found FreeMind very simple and intuitive. But I missed some functionality I was used to in commercial mind-mapping applications (especially icons and more coloured items). In those days I thought they would be easy to implement, and started.

Juan: I knew about mind maps thanks to my girlfriend Eva. I looked for free programs for creating mind maps on the Internet and found FreeMind. I started creating mind maps and wanted to share them with others. At that time there was an applet for viewing mind maps in a browser, but you needed to have installed a version of Java >= 1.4 and it was a bit heavy. I had been writing something in Flash, and thought that it was the ideal way of giving access to FreeMind maps through the Web, so I created a first prototype of a FreeMind Flash Browser.

Dan: I found FreeMind useful, and wanted to improve it for myself, as well as make my enhancements publicly available.

What is the software's intended audience?

FreeMind, and mind-mapping in general, is useful to organize your mind. It helps to bring structure to a huge variety of problems, such as planning documents, presentations, projects, discussing with people, and keeping track of to-dos. Classified by occupation, FreeMind may be valuable for information workers such as software engineers, managers, and entrepreneurs, and authors of books. But regardless of occupation, it may be valuable for all people who want to manage themselves systematically and take advantage of the scientific method and write-everything-down approach in their daily lives.

How many people do you believe are using your software?

Christian: In three months, we had about 200,000 downloads of our new release. I believe that we have about 100,000 users.

Dan: I would estimate that 50,000 people are using the software, based on the fact that there have been around 500,000 total downloads.

What are a couple of notable examples of how people are using your software?

People use FreeMind for note taking, knowledge base creation, brainstorming, collecting information on a given topic, and project management. Once, I received a funny example of a map that described the Metro of Paris. But normally, people organize their own things and thus have very private maps.

What gave you an indication that your project was becoming successful?

Christian: Recently, I saw a stranger using FreeMind on his laptop in a train from Berlin to Cologne. This gave me a hint that our audience is growing.

In addition, the number of downloads, the activity on the forums, and the quantity of email we receive indicates lively interest in our software.

What has been your biggest surprise?

Dan: The success of the project as measured by the number of downloads.

Juan: The kindness of people who write in the forums. So many want to help with suggestions and ideas.

What has been your biggest challenge?

Christian: It's unexpectedly difficult to keep and make the code tidy and open for new features, and new features create more challenges for the project managers.

Dan: Our biggest challenge is cooperation and reconciliation of different views and priorities.

Why do you think your project has been so well received?

Juan: It is easy to use, intuitive, and powerful.

Dan: It fills an important gap, and in doing so, it has or at least had virtually no free or open source competition. Though it's multi-platform by means of Java, it is fast.

Christian: The usability is the most important goal of our software. FreeMind is intuitive to use and can be controlled nearly entirely by the keyboard. Thus, you can enter your thoughts quickly and then concentrate on the map itself. But for the times that the ideas slow down, there are enough little features to discover or to play with.

Where do you see your project going?

Dan: I imagine the project going toward an office suite, as strange as it may seem. But that does not prevent addition of features in the mind-mapping direction, like library of graphics or more visual aids.

Christian: My main goal is the usability. As Eclipse is the master of usability, I'd like to introduce more of its spirit into FreeMind.

What's on your project wish list?

Dan: FreeMind's wish list includes pasting of Rich Text Format into FreeMind, WYSIWYG editing of rich text including mathematical formulas, export to and import from more formats including presentation software like Microsoft PowerPoint and OpenOffice.org Impress, more searching options, and inclusion of bitmap images directly in mind maps (currently, images are linked only).

Cristian: My wish list contains scripting plus spreadsheet functionality and a good collaboration mode. But FreeMind has to remain easy and fast.

Juan: More expressiveness (types of links, clouds, backgrounds, etc.), new icons, and better interaction.

What are you most proud of?

Dan: I'm most proud of the simplicity and elegance of the user interface. I am also proud to hear that the software has changed people's lives. It has changed my life for sure.

Juan: The software is easy to use.

Christian: My recent developments: undo and the plugin mechanisms, both via Design Patterns.

How do you coordinate the project?

Our team consists of only a few people, so everybody knows what to do. We do not assign bugs. We use email and the main open discussion forum, and patches.

Do you work on the project full-time, or do you have another job?

We all work on it part-time.

If you work on the project part-time, how much time would you say you spend, per week, on it?

It varies between two or three to 12 to 20, depending on the week.

What is your development environment like?

Christian: Mainly I develop using Debian Etch under x86 with Eclipse. On the road, I use my Powerbook running Mac OS X 10.3.

Dan: I run Microsoft Windows 98 and XP, using the standard Java compiler, no debugger, and XEmacs for source code editing.

Dimitri: 866MHz Intel Pentium III, 512MB RAM, Windows 2000, Eclipse 3.0, Java SDK 1.4.2 and 1.5.0, YourKit Java Profiler 4.0.1.

Juan: Eclipse with MTASC, Flashout, and ASDT.

Milestones:

  • 0.8.0 (2005-09-06)
  • 0.7.1 (2004-02-15)
  • 0.6.1 (2003-02-08)
  • 0.5   (2002-08-24)
  • 0.4   (2001-07-06)

Future Plans

  • Add custom attributes
  • Add filtering of nodes based on icons, texts, and values of custom attributes
  • Add WYSIWYG HTML editing of long text nodes by means of Kafenio Java editor
  • Add custom icons

How can others contribute?

Others can contribute suggestions and visual ideas. We need help testing the applications and reporting the results to the forums. We urgently need more documentation: tutorials and manuals. We can also use a Flash introduction, and patches that implement functions requested in Requests for Enhancements. Java developers are invited to discuss their enhancements in our Open Discussion forum. Anyone wanting to help in development is welcome.


More projects of the month


Project Name: FreeMind

Project leaders:

Name: Christian FoltinChristian Foltin
Age: 34
Occupation: Software developer and project manager
Education: Ph.D in Mathematics from Bonn, Germany (partially in Montevideo, Uruguay)
Location: Berlin, Germany

Name: Daniel PolanskyDaniel Polansky
Age: 28
Occupation: Software developer
Education: Mathematical informatics at Masaryk University, Brno, Czech Republic
Location: Walldorf, Baden, Germany

Key developers:

Name: Dimitri PolivaevDimitri Polivaev
Age: 32
Occupation: Software engineer
Education: Physicist
Location: Munich, Germany

Name: Juan PedroJuan Pedro

Quote about SourceForge.net?

Thank you to for creating this place that lets so many people cooperate and collaborate together to create free software for others.

How has SourceForge.net helped you?

SourceForge.net provides complete infrastructure for an open source project. This includes CVS, Web space, forums, trackers enabling posting of patches, and download statistics. Also, it provides activity percentile, showing how the project is doing as compared to other free projects. Also, once a developer of a free project becomes acquainted with SourceForge in one project, all his skills and intuitions can be carried over to any other project at SourceForge.

The number one benefit of using SourceForge.net is:

Dimitri: Community, the SourceForge brand, and good hosting.

Dan: Having download statistics.

Juan: The collaborative environment it offers.

Christian: SourceForge is well-known and has a good reputation.