= Google Summer of Code 2022 == ** Introduction ** So you are interested in becoming a Google Summer of Code student. What should you do to improve your chances of being selected? We recommend reading * [https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students OSGeo's GSoC Recommendations for Students] * We currently have one project in mind listed below, with a mentor ready to help - refer to Idea 1 below. We are open to other ideas. * Join the [https://lists.osgeo.org/mailman/listinfo/postgis-devel PostGIS Developers list] and describe your proposed project (or willingness to work on Idea 1 listed below). We will let you know if we think the project is worthwhile and doable within the allotted time you have. * If you are looking for additional ideas, refer to our past GSOCS: * [wiki:GoogleSummerCode2019 Google Summer Of Code 2022] * [wiki:GoogleSummerCode2019 Google Summer Of Code 2019] * [wiki:GoogleSummerCode2018 Google Summer Of Code 2018] * [wiki:GoogleSummerCode Google Summer Of Code 2013] ** Improving your chances ** For most projects involving PostGIS you will eventually need the following: * Know how to install PostgreSQL * Know how to install PostGIS in PostgreSQL * Know how to compile PostgreSQL code * Know how to compile PostGIS code and run tests * Some basic knowledge of git -- at least how to do a git clone, git push, git pull and pull requests While you can learn to do these things and ask questions, we would prefer students to know these before starting on a PostGIS project. **Idea 1: Augment pgAdmin to support importing and exporting shapefiles** ''Expected outcome'': There should be a menu option in the pgAdmin browser tree whenever you right-click a database, table, or schema that allows you to import or export shapefiles. The tool would use the shp2pgsql and pgsql2shp commandlines that are part of the PostGIS source code in much the same way the backup and restore data browse menu options built into pgAdmin utilizes pg_dump / pg_restore. ''Skills required'': python, html, css, and javascript, ability to compile PostgreSQL code, ability to compile PostGIS code, ability to compile [https://git.postgresql.org/git/pgadmin4.git pgAdmin] some familiarity with PostGIS, PostgreSQL, and pgAdmin is preferable ''Mentors'': Regina Obe ''Difficulty'': Medium ``Student Test'': 1. git clone code from [https://git.postgresql.org/git/postgresql.git PostgreSQL] and compile 2. git clone PostGIS code from one of [wiki:CodeMirrors Git repos] and compile 3. git clone code from [https://git.postgresql.org/git/pgadmin4.git pgAdmin4] and compile 4. Create a working PostgreSQL database with postgis extension installed and 5. Setup a public fork of PostGIS repo for your work (can be [https://git.osgeo.org/gitea osgeo], [https://gitlab.com gitlab], [https://github.com github], or any other repo you can make available for public review) Since the above is all work in pgAdmin, installing PostGIS / postgis commandline tools from a repository is equally acceptable to doing (1,2)