GSoC Draft Proposal

Hello all,

This is the current draft of my proposal (for "Complete port to Vala
and add new features" on the Ideas page), any feedback would be
greatly appreciated. The bugs I have included as fixed are those I
intend (and am hopefully making good progress in) fixing. I also view
the schedule I have set down as quite pessimistic, I hope to get more
done, and because my summer holidays are slightly later than those in
America, I will probably work on past the official end of the program.



* What is your e-mail address and IRC nick?
  cbaines8 gmail com     chrisb
* Do you have a web page, blog, or microblog?
* What is your academic background?
  A Levels in Maths, Further Maths, Chemistry and Physics. Currently
studying Computer Science at the University of Southampton
* What is the ultimate goal of your proposal?
  To get the Gnome Sudoku game to meet the standards set out (excluding the
graphics as I do not have the skills).
* What components/modules will the proposed work modify or create?
  The Gnome Sudoku game.
* What benefits does your proposed work have for GNOME and its community?
  A easily maintainable, up to date and fun Sudoku game.
* Why are you the right person to work on this project?
  I have the time and the commitment to do it, I consider myself good
at project management, and this combined with attention to detail
should produce a good well polished game. I also quite like playing
* How do you plan to achieve completion of your project?
  This is a sorted list of tasks for the Sudoku Game (sudoku-vala
branch), some of them, I might not complete in the GSoC program, but
they are still features I think it should have.

        Use GTKMenu and GTKApplication
        Game Interface
            Number Picker Popup
                Hide the number picker popup dialogs such that only
one is visible at a time
                Allow the resizing (maintaining the aspect ratio) of
the picker as you would any window
                Better sized text, and dynamically resizing with the
above scaling (as the text is a bit small at the moment)
            Top and bottom text entry
                Make the text entry box not overflow
            The Grid
                The selection method works alright at the moment,
probably be nice to allow the user to not select anything though.
                The colouring needs to be implemented
            Puzzle Hints and Help
                Replace Settings -> Show Possible Numbers with
Settings -> Auto-Complete Possible Numbers
                   This will also disable editing the possible numbers
                Add Find Solutions
                    This will complete the sudoku if a single solution
is available, I am user what the behavior should be if more than one
solution is found...
                        This will probably use a recursive algorithm...
                        It could also be based on human reasoning,
allowing it to walk the user through the solution, there do exist some
quite complicated techniques...
                The Hint button will be implemented as before
                    Different default colour for the Highlighter (its
a bit hard to see at the moment)
                    Also make it configurable
                Add a pause option on the toolbar and in the menu, as
well as adding a timer as in gnomine
            Track Additions
                Implement this as before, however I think this feature
needs documenting.
        New Game Screen
            Consistent background colour (white box on grey background
at the moment)
            Better management of saved games
                Delete option
                Scrollbar to see them all
            Add custom option (for empty Sudoku)
                Custom sudoku is for perhaps doing one found elsewhere
in the program
        End of a game
            Implement the colours
                Decide what to do considering this bug, definately add
a configuration option to disable them
            When finishing a puzzle, the user should be given the
option for an easier, same dificulty, or harder puzzle
        HiScore Support
        Add advanced printing options
            Booklet printing
        Generation of puzzle’s might need consideration when  printing
large amounts, perhaps using a dialog with a progress bar
        Print Puzzles of multiple difficulty levels
    Puzzle Generation

Community Bonding Period
    Get setup for development, work out how it should be done
    Improve my plan, and document it properly (as a wiki page?)
Week 0 - Begining 21st of May
    No work being done as I have exams
Week 2 - Beginning 4th of June
    Coding starts as my exams are now over, during this two week
period, I hope to finish the grid, top and bottom text entry, and the
Number Picker Popup
Week 4 - Beginning 18th of June
    I hope to address the New Game Screen, the Highlighter and the Hint
Week 6 - Beginning 2nd of July (Includes Mid-Term)
    Auto-Completion of possible numbers and the End of the game
Week 8 - Beginning 16th of July
    High Scores and basic printing
Week 10 - Beginning 30th of July
    Advanced printing
Week 12 - Beginning 13th of August
    Documentation, any left over work.

* What will showable at mid-term?
  Working game grid, and new game screen.
* What are your past experiences with the open source world as a user
and as a contributor?
  I have been using open source software for a few years now, I
started running Ubuntu off usb sticks, and quickly moved on to
running, and later contributing to Debian. I did a Summer of Code
project with the APT team in Debian last year, as well as maintaining
a few packages.
* Please include a link to the bug you fixed for the GNOME module your
proposal is related to.
* If available, please include links to any other code you wrote for
GNOME or other open source projects.
  This is the branch I used for my APT development I did as part of
last years GSoC:
  This is my own little project I did when teaching myself Android
development, and also doing some cool stuff with open data:
* What other relevant projects have you worked on previously and what
knowledge you gained from working on them?
  Working on APT last year really helped me program in something other
than Java (which I had been using nearly exclusively for a few years),
and I really enjoyed that. I look forward to getting more experience
working with python, and of course, learning Vala.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]