Difference between revisions of "SoC2007"
(→Proposed Projects) |
(Add other project proposals) |
||
Line 12: | Line 12: | ||
* '''Mentor:''' Derek Atkins | * '''Mentor:''' Derek Atkins | ||
* '''Backup Mentor:''' | * '''Backup Mentor:''' | ||
− | |||
− | |||
=== Register Rewrite === | === Register Rewrite === | ||
Line 23: | Line 21: | ||
* '''Backup Mentor:''' | * '''Backup Mentor:''' | ||
+ | === Delimited file importer === | ||
+ | |||
+ | A CSV importer is the more direct way to say this, but general delimited file support would be best; think of the "import text file" dialog in gnumeric, and in fact try to leverage that same code, if possible. Supporting the core transaction profile is a good start, but "extended" import options (Invoices, time-spent, &c.) would be nice too. | ||
+ | |||
+ | * '''Student:''' | ||
+ | * '''Mentor:''' | ||
+ | * '''Backup mentor:''' | ||
+ | |||
+ | ==== Bulk/multi-transaction operations === | ||
+ | |||
+ | The ability to change the name, value or split(s) of multiple transactions at once. This can get tricky, but there are probably good use cases in the archives. | ||
+ | |||
+ | * '''Student:''' | ||
+ | * '''Mentor:''' | ||
+ | * '''Backup mentor:''' | ||
+ | |||
+ | === Scheduled Invoices === | ||
+ | |||
+ | Extending the Scheduled Transaction mechanism to support other scheduled concepts, like Invoices. | ||
+ | |||
+ | * '''Student:''' | ||
+ | * '''Mentor:''' [[User:Jsled|jsled]] | ||
+ | * '''Backup mentor:''' | ||
+ | |||
+ | === Basic Inventory support === | ||
+ | As title; the basic tracking of items, counts of items and probably lots of items. | ||
− | + | * '''Student:''' | |
+ | * '''Mentor:''' | ||
+ | * '''Backup mentor:''' | ||
− | ==== Simplify Stock actions | + | === Gnome-vfs support === |
+ | |||
+ | Use gnome-vfs for filesystem operations, gaining the features that it provides. We'd need to think about how this fits in with any DB-backend stuff. | ||
+ | |||
+ | * '''Student:''' | ||
+ | * '''Mentor:''' | ||
+ | * '''Backup mentor:''' | ||
+ | |||
+ | === Move app logic out of UI-handling code === | ||
+ | |||
+ | This would generally involve identifying places where relatively non-UI specific work is done in response to button-presses or Action activiations, and moving that concept and handling into a Model, which the View controls. | ||
+ | |||
+ | * '''Student:''' | ||
+ | * '''Mentor:''' | ||
+ | * '''Backup mentor:''' | ||
+ | |||
+ | === Enhanced Expression Parser === | ||
+ | |||
+ | Basically, change the current recursive descent parser into a grammar-based parser. Better: good error handling. Better, still: a UI-based expression editor. The goal here is to support existing and long-desired uses-cases around formulæ generated in the mortgage/loan druid. | ||
+ | |||
+ | * '''Student:''' | ||
+ | * '''Mentor:''' [[User:Jsled|jsled]] | ||
+ | * '''Backup mentor:''' | ||
+ | |||
+ | === Migrate Reports === | ||
+ | |||
+ | (Assuming expected availability of a new reporting framework...) migrate reports from HTML-emitting Scheme to ${scripting_language}-generator with templated HTML. There are multiple part of that undefined, so helping define them might be the first step. | ||
+ | |||
+ | * '''Student:''' | ||
+ | * '''Mentor:''' [[User:Jsled|jsled]] | ||
+ | * '''Backup mentor:''' | ||
+ | |||
+ | == Suggestions from a user == | ||
+ | |||
+ | === Simplify Stock actions === | ||
Currently it is not to easy to perform common action on the stock accounts. Things like Buying / Selling / Divident / Splitting etc all take quite a bit of manual entering of data. Would be nice if there were a small GUI for it, like in Quicken/Money. A GUI where you only enter the needed information once and let GnuCash sort out everything else. Need to decide how the account structure should be, in regards to Cash, and Commodity. This so we can trace everything nicely. | Currently it is not to easy to perform common action on the stock accounts. Things like Buying / Selling / Divident / Splitting etc all take quite a bit of manual entering of data. Would be nice if there were a small GUI for it, like in Quicken/Money. A GUI where you only enter the needed information once and let GnuCash sort out everything else. Need to decide how the account structure should be, in regards to Cash, and Commodity. This so we can trace everything nicely. | ||
Line 36: | Line 96: | ||
* '''Suggested by:''' [[User:Bengtt|Bengtt]] 00:21, 22 February 2007 (EST) | * '''Suggested by:''' [[User:Bengtt|Bengtt]] 00:21, 22 February 2007 (EST) | ||
− | + | === Exportable reports === | |
− | |||
One thing I am missing from Money is the possibility to export all reports to whichever format I want. Like text, cvs, mail, html, printer etc | One thing I am missing from Money is the possibility to export all reports to whichever format I want. Like text, cvs, mail, html, printer etc | ||
Line 45: | Line 104: | ||
* '''Backup Mentor:''' | * '''Backup Mentor:''' | ||
* '''Suggested by:''' [[User:Bengtt|Bengtt]] 00:21, 22 February 2007 (EST) | * '''Suggested by:''' [[User:Bengtt|Bengtt]] 00:21, 22 February 2007 (EST) | ||
+ | |||
+ | * There's no strict requirement to do so, but this is probably better sequenced after more reports overhaul is done. :( [[User:Jsled|Jsled]] 19:26, 27 February 2007 (EST) |
Revision as of 00:26, 28 February 2007
Contents
- 1 Google Summer of Code 2007
- 1.1 Proposed Projects
- 1.1.1 QIF Importer Rewrite
- 1.1.2 Register Rewrite
- 1.1.3 Delimited file importer
- 1.1.4 = Bulk/multi-transaction operations
- 1.1.5 Scheduled Invoices
- 1.1.6 Basic Inventory support
- 1.1.7 Gnome-vfs support
- 1.1.8 Move app logic out of UI-handling code
- 1.1.9 Enhanced Expression Parser
- 1.1.10 Migrate Reports
- 1.2 Suggestions from a user
- 1.1 Proposed Projects
Google Summer of Code 2007
GnuCash is applying as a mentoring organization to the Google Summer of Code. The following are the proposed projects from the GnuCash developers.
Proposed Projects
QIF Importer Rewrite
GnuCash has a generic importer mechanism used by OFX and HBCI, but the QIF importer is still on its own, written in Scheme, and uses a completely separate User Interface. This project would invove rewriting the QIF importer in C and integrating it into the existing Generic Importer User Interface. One attempt to rewrite the importer in C was attempted, but the student does not need to continue with that re-write and may choose to start over again (or they may choose to continue with the aborted first attempt).
- Student:
- Mentor: Derek Atkins
- Backup Mentor:
Register Rewrite
Finish the re-write of the GnuCash register to use the GtkTreeView. Make sure all the interfaces that use the Register (Transaction Register, SX Register, Invoice Register) can use the new UI.
- Student:
- Mentor:
- Backup Mentor:
Delimited file importer
A CSV importer is the more direct way to say this, but general delimited file support would be best; think of the "import text file" dialog in gnumeric, and in fact try to leverage that same code, if possible. Supporting the core transaction profile is a good start, but "extended" import options (Invoices, time-spent, &c.) would be nice too.
- Student:
- Mentor:
- Backup mentor:
= Bulk/multi-transaction operations
The ability to change the name, value or split(s) of multiple transactions at once. This can get tricky, but there are probably good use cases in the archives.
- Student:
- Mentor:
- Backup mentor:
Scheduled Invoices
Extending the Scheduled Transaction mechanism to support other scheduled concepts, like Invoices.
- Student:
- Mentor: jsled
- Backup mentor:
Basic Inventory support
As title; the basic tracking of items, counts of items and probably lots of items.
- Student:
- Mentor:
- Backup mentor:
Gnome-vfs support
Use gnome-vfs for filesystem operations, gaining the features that it provides. We'd need to think about how this fits in with any DB-backend stuff.
- Student:
- Mentor:
- Backup mentor:
Move app logic out of UI-handling code
This would generally involve identifying places where relatively non-UI specific work is done in response to button-presses or Action activiations, and moving that concept and handling into a Model, which the View controls.
- Student:
- Mentor:
- Backup mentor:
Enhanced Expression Parser
Basically, change the current recursive descent parser into a grammar-based parser. Better: good error handling. Better, still: a UI-based expression editor. The goal here is to support existing and long-desired uses-cases around formulæ generated in the mortgage/loan druid.
- Student:
- Mentor: jsled
- Backup mentor:
Migrate Reports
(Assuming expected availability of a new reporting framework...) migrate reports from HTML-emitting Scheme to ${scripting_language}-generator with templated HTML. There are multiple part of that undefined, so helping define them might be the first step.
- Student:
- Mentor: jsled
- Backup mentor:
Suggestions from a user
Simplify Stock actions
Currently it is not to easy to perform common action on the stock accounts. Things like Buying / Selling / Divident / Splitting etc all take quite a bit of manual entering of data. Would be nice if there were a small GUI for it, like in Quicken/Money. A GUI where you only enter the needed information once and let GnuCash sort out everything else. Need to decide how the account structure should be, in regards to Cash, and Commodity. This so we can trace everything nicely.
- Student:
- Mentor:
- Backup Mentor:
- Suggested by: Bengtt 00:21, 22 February 2007 (EST)
Exportable reports
One thing I am missing from Money is the possibility to export all reports to whichever format I want. Like text, cvs, mail, html, printer etc
- Student:
- Mentor:
- Backup Mentor:
- Suggested by: Bengtt 00:21, 22 February 2007 (EST)
* There's no strict requirement to do so, but this is probably better sequenced after more reports overhaul is done. :( Jsled 19:26, 27 February 2007 (EST)