GSoC 2009 - Mind Mapping Tool - Draft
- From: Eddy Zavaleta <ezavaleta users sourceforge net>
- To: gnome-soc-list gnome org
- Subject: GSoC 2009 - Mind Mapping Tool - Draft
- Date: Tue, 24 Mar 2009 09:10:53 -0600
Hi everyone,
I send my proposal draft. I would like to know the opinion of the community.
My English is not very good, you will notice. Correct me, please.
====
Mind Mapping Tool for GNOME
* What is the ultimate goal of your proposal?
Crate an easy to use and pretty mind mapping tool for the GNOME Desktop which
will help to manage ideas in a graphical way, and as an aids in note taking (
classroom, work meeting, etc), planning, tasks.
* What components/modules will it touch/change or create?
It seems that I will not make changes to any existing module in GNOME because
this proposal is for a new application.
This application contemplates the following components:
- Brainstorm. A wizard for "New Map" with a list on it supporting add, delete,
arrange text entries. These items will be automatically arranged
radially around the map title.
- Map Designer. Graphical editor for adding branches, pictures, emblems,
links. Features: curvilinear branches, colors (background,
lines, text, areas, borders, ...), manual arrangement.
- Note Editor. Rich text editor for node's comments with simple features like
italic, bold, strikeout, underline, highlight, hyperlink, etc.
- Outliner. Tree structure for map nodes allowing edit hierarchy, order, text.
- Image Exporter. Save a snapshot of the drawing area into a image file.
- Map Files. Component for loading/saving maps from/to a file. I am thinking
in an XML file and resource directory into one archive file.
Wish List
- Zooming. Zoom In/Out drawing area (how hard is it?).
- Auto-arrangement. Map editor feature for branch auto-positioning.
- Open Clip Art Library. Support for an image library using OCAL meta-data.
* What benefits does it have for GNOME and its community?
I find mind maps a great tool for my school/personal projects and every time
I start one I have to switch to OS X to make my map and get back to GNOME with
a static image and I do not like that because always there are changes while I
am working (scope, new ideas, etc) and I can not edit the map until next
switch. My friends have the same problem, there is one who says that because
of this he will never migrate to Linux :-(
This is one of those tools missing in GNOME and the whole community could get
benefited. The people who use mind map everyday and who does not will have an
option to try to them.
As far as I know there is no official mind mapping application for GNOME, so
this proposal can fill this empty space.
It is true that there is Labyrinth [http://code.google.com/p/labyrinth] but I
feel is not a very attractive application for a few reasons:
- Its diagrams look like general purpose ones (I can get quite similar results
using Dia [http://live.gnome.org/Dia]). I have the idea of mind maps are all
about shape and color.
- It is written in Python and I am not a fan of interpreted languages at least
not in desktop development. Do not misunderstand me, I think they are great
tools but I like more compiled ones.
There is also FreeMind [http://freemind.sourceforge.net] but almost it is the
same history besides to be a GNOME stranger.
* Why you'd like to complete this particular project?
I want to get involved with a open source organization (GNOME). And Google
Summer of Code was created with this in mind. I wanted a project with a GUI
and drawing stuff, when I was looking for ideas I did not find any idea that
get me more exited than my mind mapping idea.
I think there is a lack of cool mind mapping tools on Linux, and according to
Torvalds, the Linux philosophy is 'Do it yourself'.
* How do you plan to achieve completion of your project?
I am thinking to use C language for all the programming, create a GUI based on
GTK+ and use Cairo for drawing tasks. Clutter seems to be very popular these
days but I do not know if it can be used for image exporting with Cairo is
quite simple thanks to his backends.
Milestones / Deliveries
- M1: 1st Map Designer
> All Black & White
> Just branches with text.
> Manual arrangement
- M2: Map Files & Notes
> Plain text notes
> Save & Load XML files
> Bug Fixes
- M3: Image Exporter & Outliner
> PNG support
> Outliner
> Bug Fixes
- M4: 2nd Map Designer
> Branch Links
> Colors (background, lines, text, areas, borders, ...)
> Bug Fixes
- M5: 3rd Map Designer & Archive Files
> Emblems
> Pictures
> Save & Load Archive files
> Bug Fixes
- M6: Brainstorm
> New Map Wizard
> Auto arrangement (new map, one level)
> Bug Fixes
- Final Release
> Optimizations
> Bug Fixes
* Why do you think you are be the best person to work on this project?
I really like mind maps, I use them very frequently and I am familiar with
related tools (Novamind, MindManager).
I love open source software. My favorite distro is Gentoo Linux. So, as you
can see I do not have any problem in investing time to get things works :-P
I think I am a good programmer, my friends says so (after all they are my
friends). I am usually known as the best of the class, specially in
programming (not very humble from my side -_-u).
I already have seven years programing. I was 15 years old when I write my
first hello world in visual basic. I have a lot of practice in C and Java. I
also have spent a lot of time in learning software engineering focusing on
object oriented design using UML.
Also, The idea of implementing a mind mapping tool come from me and not from
the mentor organization ideas list. I have had the curiosity to develop a
diagramming application for a while. Looking for ideas about GSOC I found the
article "Mind Mapping" [http://live.gnome.org/MindMapping] and it encourages
me to purpose this idea.
* What are your past experiences (if any) with the open source world?
I have never developed an open source application but I am evolved in a Linux
users group at school. I coordinate sessions every week about free software
development, last semester I teached GCC for about 15 weeks, the programme
was based on the book "An Introduction to GCC" and this semester I am teaching
(learning) GTK+ following the basics of the Official GTK+ 2.0 Tutorial and
creating a practical guide "developing a game (sokoban)".
* Why are you interested in improving GNOME?
GNOME is my desktop for daily work/fun and any improvement to it makes my
life nicer. I have been studying GTK+ for a few months now and I have found it
really great. I like the GObject System, C language is my favorite and mixed
with object oriented concepts is awesome.
In the other hand, I am a mexican developer and the most famous mexican free
software developer is Miguel de Icaza and GNOME is one of his babies. I sound
like a groupie :-)
* Please attach a link to a bug (bugzilla.gnome.org or other Free software
tracker) containing a patch you've written.
I have never made a patch for any project but I reported a bug once and
explained how to fix it with code suggestions. I was really busy that time and
when I wanted to make the patch someone had already made it.
https://xhtmlrenderer.dev.java.net/servlets/ReadMsg?listName=dev&msgNo=3858
====
.: Software is like sex: it's better when it's free.
--------------------------------------------------------------------------------------------------------------------
Eddy Zavaleta | E ezavaleta users sourceforge net | IM ezavaleta jabber org
|
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]