Hi Waldemar,
Thank you for putting together such a well researched and thorough proposal.
All of your ideas sound very good to me and I would like to see this
working!

My only concern is whether you have too many 'base goals' that could be
difficult to achieve on the time you have available?
I would certainly design your code with the intentions of all of these
extensions being possible, but you might want to move some of them into the
'future extensions' section rather than your base project? (just to be sure
that you achieve your base goals!).

Your ideas are a mixture of pure 'easy printable maps' and more technical
ones (I am thinking of layer switching for post-processing and uploading of
user defined styles) - maybe you could concentrate on the 'end user'
features first?  It is up to you though - it is your project!

I do like the idea of 'international' style selections (getting motorways
the right colour for the country concerned etc.) - I am sure people will
have produced these somewhere - is there a library of these style sheets
that you could pick up to use? [This is probably as much a question for the
dev list than you!].

Thanks again for researching your proposal so well.

Regards


Graham.



On 2 April 2010 07:32, waldemar quevedo <waldemar.quev...@gmail.com> wrote:

> Hello everyone! This is the first version of my proposal for this year's
> GSoC. I thought I should post it to the mailing list to receive some
> feedback. Thank you for taking the time to read it!
>
> - Waldemar
>
> Proposal: Easy Printable Maps: OpenPaperMaps
>
> -----------------------------------------------------------------------------
>
> Abstract:
>
> Although there has been many projects within the OSM community that already
> provide print support, notably Maposmatic and townguide, there is still a
> lot of ground to get creative given OSM open source nature. In this project,
> it is aimed to create a web application where the user can customize the way
> that she would like her maps to be printed for her use. Also, one of the
> objectives of this project is to keep an eye on mapnik new features proposed
> for this summer of code related to this same issue.
>
> http://trac.mapnik.org/wiki/GSOC2010/Ideas#BetterPrintSupport
>
> List of Languages known
> ------------------------------------------
> Ruby (8/10): Did an internship at FatStudent where they were using Rails.
> I've also used it for some personal projects.
>
> Javascript (8/10): I enjoy a lot programming in Javascript and I am big fan
> of jquery.
>
> Python (7/10): Have used it in plenty on my artificial intelligence
> classes, and also did used the PyOpenGl bindings for my computer graphics
> class.
>
> Elisp (7/10): I know it is not the best of skills around but I do enjoy
> programming my super text editor.
>
> PHP (7/10): Have used it before for freelance projects, but not using it
> seriously since learning Ruby and Python.
>
> C# (7/10): Again for a school project, one of the requirements was to use
> only the Microsoft stack, I developed a basic help desk application with
> ASP.NET MVC.
>
> C++(6/10): My data structures course was based on C++, I also did some
> computer graphics homework with it. This month I have been improving it a
> little by reading Mapnik's source.
>
> Java (5/10): I have only used for school projects.
>
> OSM Project Proposal
> ------------------------------------------
> The project will consist of a Django web application that will integrate
> several features from other projects. Because this project's main objective
> will be towards creating a flexible enough platform for printing
> customizable maps, the customizable possibilities of the project can get
> very broad. A fully featured style editor like that of Cloudmade but for
> paper printing is not a feasible task to do within 3 months, and although
> interesting, it could finally become a monolithical pile of code, something
> I do not want. I will try to keep it simple so that future customizations
> are not a such pain to make.
>
> The project will have two major aspects. The first one, will be creating
> the Django application based upon the design decisions that
> Maposmatic/ocitysmap have already done (rendering daemon, web service
> architecture) to integrate what has already been done by townguide.
>
> Some of ideas for the base project will be:
>
>
>    - POI display selection: Townguide has already addressed this problem.
>    This would mean integrating this idea to the Maposmatic based project.
>
>
>    - POI icon selection: Implement a way to select the kind of icon that
>    will represent the POIs.
>
>
>    - Work on overlapping icons: One current problem of townguide is that
>    when there are several POIs on the same area, it becomes difficult to
>    discern what is there. This have to be addressed in order to make the map
>    easy to use.(e.g. if there are 3 restaurants on the same place, show a
>    number 3, or an index that indicates which places exists there)
>
>
>    - Basic Theme Colour selection: Define several styles like Cloudmade
>    does which could be selected in order to localize the map.
>
>
>    - Module for uploading styles: I think that it would be fun to provide
>    an interface for uploading user contributed styles to generate the maps.
>    This styles could be regular styles or use Cascadenik styles.
>
>
>    - Turning Layers on/off: Mapnik has support for turning layers off/on,
>    and this is currently not being done by the main Export function from
>    OpenStreetMap. An option like this would be good for post processing, which
>    needs vector output.
>
>
>    - Provide different output formats: PDF of various sizes and
>    resolution. Townguide also has some code regarding this, so I will be 
> basing
>    on that piece of work.
>
>
>    - Provide different types of layouts: This will involve work on using
>    Pango Library to do so. The Maposmatic project has a ticket right now
>    regarding this[1] that could be later merged into the project. The project
>    to study here is OSM-Atlas[2] which create a pdf atlas from OSM png images.
>    It uses osmarender/inkscape/pdflatex so maybe better approach could be
>    thought out.
>
>
> [1] http://savannah.nongnu.org/task/?9695
>
> [2] http://www.mappage.org/atlas/
>
> The second aspect is to use the new Mapnik resolution features that will
> increase the quality of the paper output. Some of this might involve actual
> work on Mapnik, so some guidance from the Mapnik project will be needed.
> Fortunately, Mapnik was accepted as participant for GSoC this year, and one
> of the ideas tackles specially the issue of resolution for the maps.
>
> http://trac.mapnik.org/wiki/GSOC2010/Ideas#BetterPrintSupport
>
> This part of the project on exposing this new functionality from mapnik
> through the same web interface. This would involve:
>
>    - Tweaking ocitysmap to make it mapnik2 compliant in order to use the
>    new features.
>
>
>    - Work on adding resolution options to improve the quality of the maps.
>
> If time allows I would work on this (Extended Goals):
>
>
>    - Display cycling and walking routes like OpenCycleMap: This feature
>    could benefit from the work on the idea from the Maposmatic ticket
>    referenced above, in order to make the map span several pages.
>
>
>    - Show contours and hill shading
>
> http://wiki.openstreetmap.org/wiki/Contours
> http://wiki.openstreetmap.org/wiki/OpenPisteMap
>
>
>    - Collaborate with the Mapnik project expose other Mapnik rendering
>    options.
>
>
> Project Schedule
> ------------------------------------------
>
> Week #1: May 23th - 29th (May 24th Start)
> ________________________________
>
> These weeks I'm planning on setting up the foundations for the project,
> doing the main set up of the appropiate stack for the Django application.
> Maposmatic/ocitysmap is already a great source to make a mapnik/osm based
> web project so I'm thinking about building on it. This week I will start
> work on porting the first features from townguide to Ocitysmap to display
> the selection of POIs on the output. Research on whether keep on using the
> Pango library which Ocitysmap uses (a big issue since one goals might be to
> merge some of the code with Maposmatic), or reportlab which townguide uses.
> (40 hours)
>
> Week #2: May 30th - June 5th
>
> ________________________________
>
> Now that the infrastructure for the Django application has been set up I
> will work on the first features from the project that have already been
> addressed by the townguide project. I will start work on the user interface
> and work on the set up for OpenLayers. Since the user interface is very
> important, and hearing from Maposmatic efforts:
>
> "The main form to select the city has been further improved, with bug
> fixes, improved usability, etc. Said like this, it doesn’t sound like a big
> deal, but all this stuff is written in Javascript using the JQuery library
> and requires careful fine-tuning to be working. We easily spend a day on the
> same 20 lines of Javascript."[1]
>
> ...I think that I should allow enough time to work on the user interface,
> the original idea of the project is 'Easy Printable Maps' after all. Another
> source of inspiration for this is Nicholas Marichal idea[2] (40 hours)
>
> [1]: http://news.maposmatic.org/?p=81
>
> [2]: http://wiki.openstreetmap.org/wiki/User_talk:Nicolasmarichal
>
> Week #3: June 6th - 12th
>
> ________________________________
>
> I'll continue with implementing a way to choose the icons that should
> appear for display when printing within the user interface.
>
> (24 hours)
>
> I will start work on the problems that occur when there are several POIs on
> the same place (overlapping icons)
>
> (16 hours).
>
> Week #4: June 13th - 19th
>
> ________________________________
>
> I will continue work on the overlapping icons problem and work out a way to
> make it easier to understand on the printed map which kind of POIs were
> there.
>
> (16 hours)
>
> I expect to begin work on the styles feature for the project around this
> time by making available different styles available from the user
> interface.
>
> (12 hours)
>
> I'll work on the module for uploading the Mapnik XML styles as well.
>
> (12 hours)
>
> Week #5: June 20th - 26th
>
> ________________________________
>
> I'll work on providing different output formats for paper now. Again there
> is some code from townguide where I could base upon.
>
> (16 hours)
>
> Work on different more kinds of layouts than the main one offered by
> Maposmatic and townguide, like a map that spans on several pages (atlas), or
> a really big map.
>
> (24 hours)
>
> Week #6: June 27th - July 3rd
>
> ________________________________
>
> Continue work on the different layouts and rendering options for mapnik.
> (24 hours)
>
> Although it has already been covered by the 'upload your own mapnik style'
> feature, I will add the option to turn Layers on/off (16 hours)
>
> Week #7: July 4th - 10th
>
> ________________________________
>
> It has been more than a month of coding nonstop this week I'll be revising
> my code and work on any features that need more polish before the mid-term
> evaluation. (40 hours)
>
> Weeks #8: July 11th - 17th (Mid-term evaluation)
>
> ________________________________
>
> Week #9: July 18th - 24th
>
> ________________________________
>
> Since the base project should be very advanced by now, I'll ask for
> guidance from the Mapnik project to work on the issues regarding Better
> Print Support from Mapnik. In case the project has already been taken care
> of by another fellow GSoC member, this week I'll revise the code to
> integrate these features. These features will most likely be taken care of
> in the new Mapnik2 codebase, so this will involve updating ocitysmap to be
> Mapnik2 compliant.
>
> Week #10: July 25th - 31th
>
> Week #11: August 1st - 7th
>
> ________________________________
>
> I planned to use these weeks as buffer time to revise the code and work on
> the extended goals from the project. I will work on the documentation,
> possible patches that could be useful for maposmatic, deploy of the
> application on a server, write missing tests, etc...
>
> Week #12: August 8th - 14th (Firm "Pencils Down" date)
>
> ________________________________
>
> Time Available to Work on Project
> ---------------------------------------------------------------
> I will finish school on May 20th, and after that I'll have the whole summer
> to work on this project.
>
> Handling Situations (in absence of mentor)
> ---------------------------------------------------------------
> I promise to not become a high load on the mentor, as I can manage working
> on my own. The role of a mentor in the end I think it is to give advice to
> the mentee without it becoming a such a burden. Still if I have a problem,
> the OSM/mapnik communities are healthy enough to answer any question that I
> might have. Also, in order to keep my mentor inform on the advance of this
> project I will be reporting advances each week and might setup a tool like
> Redmine so that he can follow the flow of the project.
>
> Currently involved in?
> ------------------------------------------
> I'm currently busy with finishing school and final projects for artificial
> intelligence classes.  Otherwise, I'm trying out new technologies all the
> time, right now having fun with Django and learning Boost so that I will be
> able to contribute to Mapnik in the future.
>
> Hobbies/Interests
> ------------------------------------------
> OpenStreetMap is currently not very known in Guadalajara,Mexico, where I
> live, and its OSM map seems to be very far behind from the one from Google
> Maps. I would like to see some change in this aspect, since Guadalajara is
> the 2nd largest city in Mexico, maybe by promoting it while I'm still in
> school or give a there regarding the project.
>
> Regarding my hobbies, I'm currently an active member of AIESEC, so I'm
> interested on making an impact through innovation. I also like a lot trying
> out new technologies that come from Hacker News from time to time. I like
> languages and can speak/read Japanese on a business level.
>
> _______________________________________________
> dev mailing list
> dev@openstreetmap.org
> http://lists.openstreetmap.org/listinfo/dev
>
>


-- 
Dr. Graham Jones
Hartlepool, UK
email: grahamjones...@gmail.com
_______________________________________________
dev mailing list
dev@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev

Reply via email to