Google Summer of Code/2010/Student Applications

From OpenStreetMap Wiki
Jump to navigation Jump to search

The following page is for some draft Student Applications for Google Summer of Code/2010. They may or may not be submitted in this form by the April 9th deadline.You can view drafts of GSoC Student Applications 2009. Though, we require your proposal to be of this format, you can be flexible enough to propose your ideas in Empty sample below or whatever you feel like.

Draft application: Name_of_Application

Abstract

OSM Project Proposal

Time Spend

People

Submitter: --
Mentor: --

OSM Comments

Draft Application: Multiple improvements to OpenSatNav

Abstract

OpenSatNav is a new open source navigation application for the Android mobile platform. My proposal outlines several medium size improvements to OpenSatNav that would bring it up to the class of commercial satnavs.


OSM Project Proposal and Schedule:

My Details

Name: Stephen Brown

Emails: steve@evolvedlight.co.uk, s.brown.11@warwick.ac.uk

Websites/blog/OSM user page: [1]


List of Languages known:

  • Rails 7/10, worked for two summers at a housing management solutions company that was rebuilding their flagship application in Rails. Personal projects such as youthweekends.com also use ruby on rails.
  • Java 9/10, uni course specialises in Java, 3rd year project in java, developer for OpenSatNav, java again.
  • C#: 6/10 (lack of much .Net experience), Second year project in C#, as well as personal interest. Submitted small patches to Tasque, in Mono .Net
  • PHP, 6/10, used it for some websites a while ago. Submitted a small patch to Moodle a year ago. A bit rusty now.
  • Javascript: 7/10, used for most websites I've worked on. I'm familiar with jQuery and scriptaculous.
  • C, C++ both around 5/10. A little experience, but nothing special


My proposal comes in the form of several medium size enhancements to OpenSatNav. These will take OpenSatNav from a semi-useful tool to a solution not far from commercial equivalents. I want to work on:

  • Much more reliable trace recording tools, including voice and picture notes. This will take about a week, as much of the work is already done by osmtracker and opensatnav.
  • Add in support for alternative online routers other than yournavigation. This will take less than a week, and will allow for the next point:
  • Turn-by-turn driving directions. This is the larger task, and will bring it much closer to the standard set by AndNav and other satnav products. This will include text to speech, using the standard android libraries if using Android 2.0+, or the TTS download from the marketplace. I estimate that this will take 3 weeks for the basic visual view, and algorithms to detect moving off route and moving past a step in the journey, and another 2 weeks to get the TTS implemented, including intelligent TTS when there are several instructions close together in a route.
  • POI search around a place (choose a destination, then search for POIs near it such as pubs or atms, using the Nominatum geocoder). This will take about a week.
  • Finally, there are two features that will be actually innovative:
    • A widget view, so that someone can leave the application closed, but still see driving directions in a 2x2 android widget, and thus change music or other tasks without loosing view of the driving directions. This will take another week.
    • Driving directions to the status bar when the application is minimised: driving directions will be posted as notifications, so even if someone is in a call, they will still be able to see where to go. This will take about a week (could be done much more quickly, but will take a week to get perfect)

These together form my proposal, and should approximately fit the length of the summer of code coding period.

A couple of people have mentioned to me the strain on battery life when using OpenSatNav. This is something I will continue to work on outside of the GSoC proposal, as it is a more ongoing effort than a verifiable project, and is something I'm going to look at before this summer. Other suggestions will of course be welcomed.

Currently involved in:

I'm an Android developer by hobby and a developer for OpenSatNav (not quite yet released, but many people are using the development releases we publish). I have been mostly working on the trace recording tools, which then can upload directly to OSM without plugging the phone in anywhere. I gain a great deal of satisfaction when I see people actually using something I have worked upon, so you can be sure that if I am accepted for GSoC 2010 that I won't just complete the summer and drop something into SVN.

My 3rd year project is an Augmented Reality Satnav that uses OSM (and the freemap api tile server currently) and that runs on Android. It's not quite finished yet, but hopefully will be integrated into OpenSatNav.

I'm also a OpenSatNav data contributor, and have worked on some rivers, paths near rivers, Wokingham (a town in Berkshire), Warwick University, and Leamington Spa (a town in Warwickshire)

Handling situations:

I work well when self-governed by defined deliverables and targets, and when I think something is going to be used by other people. The project manager for OpenSatNav is another potential mentor - while unable to code himself, puts a good deal of work into project co-ordination. Through my experience of working on other projects I know how to solve problems myself, and know how to look things up to expand my knowledge.

Hobbies/Interests:

I'm a keen whitewater kayaker and do alot of that in the colder months (in summer the UK dries up and kayaking season stops). I'm the secretary of the canoe club at the university, and also help manage the website. OSM is another interest - I prefer outdoor mapping using OpenSatNav but have dabbled a bit with armchair mapping in the snowy months we've had this year. I'm also into climbing, swimming and cycling, and use these to keep myself fit.

I enjoy contributing to open source projects and have done a little for quite a few, spanning a few languages. I'm also a Christadelphian, so am involved in Church activities from time to time.

Altogether, I hope my proposal shows my huge interest in OpenStreetMap. OpenSatNav has been something I've put a good deal of work into and I would love to be able to continue that work full-time this summer. If you do accept my proposal, you can be assured some very visible results at the end of the summer!

People

Submitter: evolvedlight

Possible Mentors:

OSM Comments

Add your comments here. Use four tildes to mark your comments.


Draft application: Travel Time Analysis

Abstract

Routing algorithms use a path-cost function to find the fastest/shortest/most economical route. The path-cost function for searching the fastest route usualy estimates travel time by using speed limits or curvature of the roads. This project aims to provide more accurate travel time estimation based on GPS traces.

My Details

Name: Lukas Kabrt

Emails: lukas@kabrt.cz, kabrtluk@fel.cvut.cz

Websites/blog/OSM user page: [2]

List of Languages known:

  • C# 9/10, worked on couple c# projects as freelancer, personal interest
  • C++ 6/10, two terms course at university
  • Java 5/10, course at university
  • PHP, Javascript 5/10, created few sites 2 - 3 years ago
  • LISP, PROLOG 4/10

Currently involved in:

I am OSM user for about a year. I am mostly mapping neighbourhood of my hometown. Over the past few months I participated in import of administrative boundaries and I initiated the import of address points in the Czech republic.

OSM Project Proposal

The goal of this project is to develop an application which can estimate travel times along roads from GPS traces.

The project can be divided into 2 parts:

  • tool for matching GPS traces to the roads from the OSM
  • tool for analyzing GPS traces and estimating travel times

GPS traces to OSM roads matching

Input: OSM file with a road network, GPS traces Output: list of road segment/GPS trace segment pairs

I'd like to write this part as a standalone utility becouse it can be useful for some other projects. This utility should be able to deal with average quality GPS traces. Also it should be able to handle low frequency GPS traces (I think 1 point / 30s in towns and 1 point / 60s outside towns can get reasonable results)

Travel times estimation

Input: list of road segment/GPS trace segment pairs Output: estimated travel time for road segments

If there are enough data available, application should be able to recognize traffic patterns through week (rush hours).


In the scope of GSoC project I'd like to focus on developing neccessary algorithms so I would keep the UI very simple (console application).

Time Available to Work on Project

The summer term at my university ends on 15th May. After it I will be able to spend 4 full days (about 30 hours) per week on this project. I'd like to have one free week at the end of July.

Schedule for project completion:

week 1: libraries for handling OSM and GPX data

week 2 - 5: GPS traces to OSM roads matching algorithm

week 6 - 8: Travel times estimation algorithm

week 9: vacation

week 10: Travel times estimation algorithm

week 11: example on real data, reserve

week 12 (Suggested "Pencils Down" Date - Firm "Pencils Down" Date): reserve

Handling situations(in absence of mentor):

Becouse I am working as freelace programmer I know I can work well without supervision. But if any problem arise I can ask my friends from university or discuss it with other OSM users in a mailing list.

Hobbies/Interests:

Besides my interest in computers I like traveling and I do a lot of sports. My favourite sports are cycling, running and especially climbing.

People

Submitter: --
Mentor: --

OSM Comments

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

Details

Waldemar Quevedo Salinas

Email: waldemar.quevedo (aaaat) gmail.com

Websites/blog/OSM user page

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 sinc e 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

Many of the ideas for this project were inspired by Nicholas Marichal's OpenPaperMaps idea: http://wiki.openstreetmap.org/wiki/User_talk:Nicolasmarichal

The project will consist of a Django web application, since Mapnik has bindings from Python. This application will integrate some features from other projects related to this idea. 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 will not be difficult to make.

The project will have two major aspects. The first one will be to create a Django application that will integrate some of the features that have been experimented with Townguide learning from the design decisions that the MapOSMatic team have already taken (wrapper around Mapnik features, rendering daemon etc...).

Some of ideas for the base project are:

  • POI display selection as in Nicholas Marichal idea.
  • 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. See: http://trac.mapnik.org/wiki/StyleShare
  • 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: The project to study here is OSM-Atlas[2] which create a pdf atlas from OSM png images. It uses osmarender/inkscape/pdflatex but a better approach could be thought out.

[1] Maposmatic ticket: 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. I would consider this also to be part of the Extended Goals. 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 the code to make it mapnik2 compliant in order to use the new features from this codebase.
  • 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: (~40 hours)
  • Show contours and hill shading (~40 hours)
 http://wiki.openstreetmap.org/wiki/Contours 
 http://wiki.openstreetmap.org/wiki/OpenPisteMap
  • Collaborate with the Mapnik project expose other Mapnik rendering options, that would make post processing more convenient. This is also featured on Nicholas Marichal main idea for OpenPaperMaps (~40 hours)
  • Turning certain 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. (~16 hours)

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.

This week I will start work on porting the first features from townguide to display the selection of POIs on the output, getting familiar with OpenLayers and work on using the reportlab typesetting library for generating the PDFs.

(~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 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. (~40 hours) [1]: http://news.maposmatic.org/?p=81

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 working on the styles features 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


Work on different more kinds of layouts playing around with reportlab and Cairo. than the main ones offered by Maposmatic and Townguide, like a map that spans on several pages (atlas), or a really big map. (~24 hours)

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)

Week #6: June 27th - July 3rd


This week I plan to use it to keep on working on the style sharing features of the project. For more reference: http://trac.mapnik.org/wiki/StyleShare (~40 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 the code so that it will is Mapnik2 compliant, (although I may decide to use Mapnik2 from the beginning). If everything has been going ok, I will begin work on the Extended Goals for the project.


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, deploy 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 know I will not become a high load on the mentor, since 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 progress 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 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.

People

Submitter: -- User:Wallyqs
Mentor: --

OSM Comments

Draft application: Develop a Simple, Stand-Alone Editor for New Users

Abstract

Users that are new to OSM, and therefore not familiar with Potlatch or JOSM will require a simple, web-based map editor that allows them to contribute through adding points of interest and the renaming of existing nodes/ways.

Personal Details

Name: Mike Wallach

Email: mwallach@live.co.uk

Websites/blog/OSM user page: [3]

List of Languages Known

The experience I have in all the following programming languages is from course units at university.

  • Java 7/10: Used in second and third third year for projects, some involving database manipulation (Oracle).
  • Prolog 7/10: Studied a course in AI and Logic programming, all based around Prolog.
  • Haskell 5/10: Used for a portion of second year, however I have not revisited it since.
  • C/C++ 5/10: The first language I was introduced to at university, but not used recently so skills will be rusty.

OSM Project Proposal

The project is based around creating a very easy to use editor for new users to get started with contributing to maps without having to learn Potlatch or JOSM. This must exist on a web page so that the user does not need to download and install software to get involved (which may act as a deterrent to potential contributors) and will be implemented as a Java applet. The user should be able to select an existing node/way on a map or choose a new area if a new node is to be created, and then perform one of two functions:

  • The the first function to be made available will be the option to rename existing nodes (which often exist as points of interest) or ways (which may be a road, river, etc.). This will be done by selecting the node/way on the map and then choosing to rename it, providing a box to insert the new name.
  • The second is being able to add a single point of interest (POI). The user will select a new area on the map, and then choose to insert a new POI, opening an interface to select a name for it, then a 'key' and 'value', like in Potlatch. The key is a broad selection of possible entries such as 'building', 'landmark' or 'landscape' for example, whereas the value will provide more detail for the key, such as if it is a 'building', it may have a value of 'museum' or 'hospital'.

Forming a method of easily changing the geometry within the editor is also a possible feature, however this will depend on the time constraints for the project as well as finding a way of implementing it without making the editor too complex and potentially putting off users looking for a simple and basic functionality.

Time Available

I have exams until the 10th of June, so until this time I will not be able to work at any effective capacity. However I am willing to input more hours in the subsequent weeks and work past the deadline if possible to amend this. I am happy to put in the hours required for any full time job (roughly 40 hours per week) to this project, and will keep in touch regularly, including during the period throughout my exams.

Time Spend

  • Week 1: Look through Potlatch and JOSM code, gain more ideas for the implementation of my part and familiarise myself with the workings of OSM. Start trying to create basic functionality for my project.
  • Weeks 2-3: Write the code for the applet to modify XML script in order to rename tags or create new nodes with tags. When this is working this will be the first deliverable.
  • Weeks 4-6: Implement the interface in which the user can view maps and select nodes/ways for renaming, or select a new place to create a POI. This will be the second deliverable.
  • Weeks 7-8: Create the interface for renaming a selected pre-existing node/way.
  • Weeks 9-11: Create the interface for creating a new POI, which the ability to insert a name and choose from a list of keys and corresponding values.
  • Week 12: Make sure the previous section is finished, check that all parts are working and debugged. A working applet will be submitted as the final deliverable.

Working in Absence of a Mentor

Throughout all projects at university we have been encouraged to go to lab sessions, where someone is able to help in case of trouble (similar to a mentor). When these have been cancelled or are just too scarce to be useful, I have managed to find resources elsewhere whether through friends, books, or the internet, and have often found these to be sufficient. Although I do not expect to be able to do the entirety of the project without a mentor, I feel confident that brief periods where situations arise and no one is to hand, I will cope fine.

Hobbies and Interests

I have a great interest in the many options available and capabilities of open source software, and spend a substantial deal of time working with and on computers (both for and outside my course). I have not previously been involved in coding for any open source projects, and see gSoC as an ideal introduction. Aside from computing, I am interested in foreign languages, enjoy travelling and playing musical instruments.

People

Submitter: Grahamjones
Mentor: --

OSM Comments

Draft Application: Making topography maps

Abstract

One important feature missing from current interface of OpenStreetMaps is a topography map. Goal of my project is adding hillshade function to openstreetmap, improving flexibility (allowing user to show/hide hillshade, altitude colors, tourist and cycling tracks), and finally making the map printable.

OSM Project Proposal and Schedule:

My Details

Name: Ján Kobezda

Emails: kobezda@gmail.com

Websites/blog/OSM user page: [4]


List of Languages known:

  • PHP, 9/10 - website coding
  • C, C++, 8/10
  • x86 assembly, 5/10 - mainly in combination with C for low-level operating system stuff
  • JavaScript, 5/10 - Played with it a few years ago

This project's goal is to create an interface for adding hillshade to openstreetmap, along with contours, all selectable by user. Side-effect to this is the possibility to adding POIs, roads and other features, based on user's wishes. The core will probably be based on TopOSM, but converting it to be easily used on website. Using this, one could make a good map for planning hikes. Final stage is making it all printable, most likely exporting into PDF with user-configurable settings. See also User:Kobezda/GSOC

Timeline:

  • Week 1-2: In depth exploration of tools available, design and choosing the best way to do things
  • Week 2-6: Making the code for hillshading and contour generating
  • Week 6-9: Integrating into the core of openstreetmaps website
  • Week 9-11: Creating a way to print out the maps
  • Week 11-12: Review, polishing the code, fixing bugs

Currently involved in:

Finishing school, until half of May.

Handling situations:

I prefer working in a team, but I see no problem in working individually. No doubt, the community will be a useful guide while working on the project.

Hobbies/Interests:

One of my most relevant hobbies is tourism. I enjoy going on a hike. For this, I really miss good detailed online maps of terrain.

People

Submitter: Kobezda

Possible Mentors:

OSM Comments

Add your comments here. Use four tildes to mark your comments.

Draft Application:: To Develop a Simple, Stand Alone Editor for New Users

Abstract

The project aims at developing a editor for new users whom have to perform basic tasks and are not familiar with fully featured editors.

List of languages Known

Java 8/10, worked on projects such as Shortest path Application, Editing Maps via interactive system( basic level interactivity).

C, C++ 9/10, have worked on lot of projects involving C and C++. The Shortest path Application and Editing of Maps were also implemented in C by me. Other than this, have experience of developing Audio Recording Module (in ogg format), Data Encryption Software and a Webserver.

JavaScript 8/10, I have developed a few websites for our institutes fest and other events using JavaScript. I have used it with Employee Management System which is a web based system to be used on the intranet.

JavaServer Pages 8/10, Developed Employee Management System during my 2 months summer internship using JSP, MySQL and a bit of JavaScript which was later deployed at the organization’s Intranet.

Visual Basic 6.0 9/10, Developed 2 projects namely, School Database Management System and University Examination Record Keeping System both of which were deployed at my school and current university respectively.

HTML 7/10, I have been with HTML for a long time(since my school days) as a hobby and have used it in many of the projects discussed above.

PHP 5/10, used it for some websites almost an year ago.

OSM Project Proposal

While browsing by the OSM Project Idea list, I found the project “Develop a Simple, Stand-Alone Editor for New Users“. As I have been involved in projects related to finding shortest path and basic interactive editing of maps as well as various projects which involve sophisticated yet simple user environment, so I intend to apply my skills and extend the horizons of my knowledge to the next level.

The objective is to develop a simple user interface for novice users who are not familiar with fine points of editing the map using the sophisticated editors already available. The editors currently available are not intuitive in their use. It takes quite a bit of learning for new users to get acquainted with the system. Moreover, a novice user doesn’t require most of the functionalities meant for advance users. These editors have many functionalities which results in cumbersome controls to edit the map such as combination of shift, control, backspace keys together with the mouse click to perform certain tasks. In addition to this, large number of functions make the interface cluttered which further contributes to the confusion and doubt of a user not familiar with the environment. Hence there is a need of a new editor which may suit the needs of novice users.

The basic requirement for this editor would be to have a simple to use, intuitive and spontaneous interface. In addition to these, there should be help text on the screen for items or actions that are selected by the user.

I intend to include the following in the Editor.

Renaming nodes and ways: For renaming the nodes and ways an interactive methodology would be followed. An icon “Rename” on the screen would be there which the user has to click if he wants to rename ways etc. After this user just needs to select the way or node he wants to rename. The selection would be accompanying an algorithm for selecting and highlighting the entire region (in case of roads, large fields etc) that is going to be affected by renaming. For Example: if a road is selected then by using the Route instructions, the entire road can be highlighted. After selecting an area for renaming, user would have to press Enter key and a box would appear on the screen in which the user can enter relevant details.

Adding, viewing and removing points of interest and nodes: The user may want to view locations on the map according to his interests such as hotels, airports etc. So functionality would be provided to display the point of interests categorized according to the chosen points. Facility to choose multiple points would also be provided. The interface would consist of a drop down multiple choice list box.

For adding new points of interest, the user would just need to click “Add” (again a dedicated icon on the screen. The user would then have to just select the point on the map and enter relevant details and choose the category to which it has to be placed in.

In addition to this, I intend to provide the user with the facility of selecting two waypoints on the map and show all the points of interest (to be selected by the user once he selects the two waypoints). This would be helpful in case the user wants to add, rename or delete points of interests or nodes between specific points on a way.

The help would be displayed no the screen according to the action performed by the user and the function selected by him.

As the editor is aimed at new users, it would be developed as a web based JavaScript application so that there is no need to install anything at the user end.

Time Spend

During the month of late May, June, July and early August, I would be having my summer vacations. So I can dedicate 7 hours a day i.e 49 hours a week minimum, to work on the project.

People

Submitter: Siddharth Srivastava
Mentor: --

OSM Comments

POI Collector

Abstract

We use maps to find the location of places which we need to visit (like shops, banks, cashpoints etc.). These points are called Points of interest (POI) and there are essential for map usability. My proposal is about creating easy-to-use POI collector browser application, which would work on all possible mobile platforms: android, iphone, blackberry and so on.

OSM Project Proposal

Introduction

Collecting POI is one of the basic tasks for OSM. It usually consists of two parts: - gathering GPS data (GPS device) - uploading collected data to server (some editor) But easier/faster way of doing it would be just visiting place and adding it at once. That approach is also more intuitive (visiting the place is equivalent to adding it). Whole mapping is done in the field. That approach is already used in IPhone software: Mapzen POI Collector (http://cloudmade.com/products/mapzen-poi-collector). My proposal is to create tool with similar functionality in form of browser application which could run on all mobile platforms.

Project motivations

- To simplify and accelerate collecting of POI.

- Easy in use mapping application will support involving new OSM users in mapping. They are able to use intuitive/simple tool without any previous mapping experience.

- To provide POI Collecting tool for all mobile platforms.

Application description

Application will display map (map tiles will be downloaded from mapnik) and current user position (coordintaes will be read from GPS device). When user reach some point (e.g. bank) which he would like to add: he just clicks Add New POI and point appears in user current location (in case when such point already exists in database, user can edit its properties). In adding form user specifies type of point, and its attributes (like name, description and so on, node properties depend on type of just added POI) and save them by clicking Save button (data are saved by proper create request to OSM API). Editing the OSM data requires being logged to OSM account, so when user click Add new POI for the first time he is asked to give his OSM login and password (These data are attached to create/put request to OSM API. Other possible way is to use OAuth mechanism to authorise users).

Proposed additional features: - removing nodes, modern world is changeable, so we could expect that sometimes POI will disappear. In editing dialogue we could add remove POI button. - editing way attributes, if user current position will overlap with any way then application will display/enable button Edit the way. After clicking user will be able to fill way properties edit form.

Timetable

Main aim of the project is good usability. To achieve it end user should be involved in project development. This is why whole development will be dived into two increments. After first one software will be tested by users. Feedback given by users will be base for 2nd increment.

24 – 30 May: creating application frame

31 May - 10 June: implementing displaying map

11 – 15 June: handling GPS device, implementing marking current user position on map

16 – 20 June: logging to OSM account

21 June – 12 July: implementing adding/editing node

13 – 20 July: testing application (also by OSM users), user feedback, fixing bugs

21 July – 9 August: improving application according to user feedback, fixing bugs, in case of need finishing features which have not been implemented yet.

10 – 20 August: users test application, last fixes, writing documentation

Time Spend

Time Available to Spend on Project: 15 – 30 hours per week, during the whole project

People

Submitter: Pawel Niechoda
Mentor: --

OSM Comments