Difference between revisions of "GvSIG-Educational-Games GSoC 2016"

From OSGeo
Jump to navigation Jump to search
 
(10 intermediate revisions by the same user not shown)
Line 7: Line 7:
  
 
== Details ==
 
== Details ==
 +
[https://summerofcode.withgoogle.com/archive/2016/projects/4670449980014592/ Link to GSoC 2016 archive].
 +
 
[https://github.com/nacho0605/GSoC/tree/master/GSoC_2016 Link to GitHub repository].  
 
[https://github.com/nacho0605/GSoC/tree/master/GSoC_2016 Link to GitHub repository].  
  
The main idea behind this project is to develop plugins which allows to create/play tests and educational games. Also generate documentation specially oriented to users without any programming knowledge.
+
The main idea behind this project is to develop addons which allows to create/play tests and educational games. Also generate documentation specially oriented to users without any programming knowledge.
  
The code will be mainly developed in Jython, an implementation of the Python programming language written in Java, throw the scripting module of the gvSIG desktop 2.x branch.
+
The code will be mainly developed in Jython, an implementation of the Python programming language written in Java, through the scripting module of the gvSIG desktop 2.x branch.
  
 
The developed tools will be used in geography and maps learning.
 
The developed tools will be used in geography and maps learning.
Line 22: Line 24:
 
|-
 
|-
 
| May, 23 - June, 26 ||  
 
| May, 23 - June, 26 ||  
Develop a plugin which allows to create/play tests, and generate the respective documentation.
+
Develop an addon which allows to create/play tests, and generate the respective documentation.
 
|
 
|
  
Line 35: Line 37:
 
|-
 
|-
 
| June, 27 - August, 14 ||
 
| June, 27 - August, 14 ||
Develop a plugin which allows to create/play educational games, and generate the respective documentation.
+
Develop an addon which allows to create/play educational games, and generate the respective documentation.
 
|
 
|
  
Line 64: Line 66:
 
''What did you get done this week?''
 
''What did you get done this week?''
  
I started to develop the create test functionality of the plugin.
+
I started to develop the create test functionality of the addon.
  
 
''What do you plan on doing next week?''
 
''What do you plan on doing next week?''
Line 78: Line 80:
 
''What did you get done this week?''
 
''What did you get done this week?''
  
I develop partially the create test functionality of the plugin. My mentor (Óscar) show me that gvSIG already has a packing functionality.
+
I develop partially the create test functionality of the addon. My mentor (Óscar) show me that gvSIG already has a packing functionality.
  
 
''What do you plan on doing next week?''
 
''What do you plan on doing next week?''
  
I'll try to finish the create test and start to develop the play test functionalities of the plugin.
+
I'll try to finish the create test and start to develop the play test functionalities of the addon.
  
 
''Are you blocked on anything?''
 
''Are you blocked on anything?''
Line 92: Line 94:
 
''What did you get done this week?''
 
''What did you get done this week?''
  
I finished the create test and started developing the play test functionalities of the plugin.
+
I finished the create test and started developing the play test functionalities of the addon.
  
 
''What do you plan on doing next week?''
 
''What do you plan on doing next week?''
  
I'll try to improve the create test and continue developing the play test functionalities of the plugin.
+
I'll try to improve the create test and continue developing the play test functionalities of the addon.
  
 
''Are you blocked on anything?''
 
''Are you blocked on anything?''
Line 106: Line 108:
 
''What did you get done this week?''
 
''What did you get done this week?''
  
I developed mostly the play test functionality of the plugin.
+
I developed mostly the play test functionality of the addon.
  
 
''What do you plan on doing next week?''
 
''What do you plan on doing next week?''
  
I'll try to finish the play test functionality of the plugin, specifically the generate report part.
+
I'll try to finish the play test functionality of the addon, specifically the generate report part.
  
 
''Are you blocked on anything?''
 
''Are you blocked on anything?''
Line 120: Line 122:
 
''What did you get done this week?''
 
''What did you get done this week?''
  
I finished the play test functionality of the plugin.
+
I finished the play test functionality of the addon.
  
 
''What do you plan on doing next week?''
 
''What do you plan on doing next week?''
  
I'll start to develop the create game functionality of the plugin.
+
I'll start to develop the create game functionality of the addon.
  
 
''Are you blocked on anything?''
 
''Are you blocked on anything?''
Line 134: Line 136:
 
''What did you get done this week?''
 
''What did you get done this week?''
  
I started to develop the create game functionality of the plugin. I also improve the create/play test plugin.
+
I started to develop the create game functionality of the addon. I also improve the create/play test addon.
  
 
''What do you plan on doing next week?''
 
''What do you plan on doing next week?''
  
I'll continue developing the create game functionality of the plugin.
+
I'll continue developing the create game functionality of the addon.
  
 
''Are you blocked on anything?''
 
''Are you blocked on anything?''
Line 230: Line 232:
 
'''Final:'''
 
'''Final:'''
  
My project focused on the development of addons which allows gvSIG to create/play tests and educational games. The code was mainly developed in Jython, an implementation of the Python programming language written in Java, throw the scripting module of the gvSIG desktop 2.x branch.
+
[https://lists.osgeo.org/pipermail/soc/2016-August/003521.html Link to OSGeo SoC mailing list archive]
 
 
Before the project gvSIG didn't have any built-ins or addons to create/play tests or educational games, that wasn't possible.
 
 
 
Now, with the "TestCreatorAndPlayer" addon, it's possible to create/play tests in gvSIG. Teachers can prepare the test easily in LibreOffice using the "sample_test.ods" file, load it and set test's main attributes in gvSIG throw "TestCreator" ("TC") addon's app, pack it with gvSIG built-in scripting framework and finally share it with students. Students can install the test in gvSIG throw built-in addons manager, login and play it throw "Testplayer" ("TP") addon's app, and finally generate a report in pdf format. If answers and points where included by teachers, automatic correction is performed and feedback is given.
 
On the other hand, "GameCreatorAndPlayer" addon is pending, but i'll continue working on the project after GSoC time. Most of the code of "TestCreatorAndPlayer" addon is reusable, i think that maybe it will take one more month to develop the "GameCreatorAndPlayer" addon.
 
 
 
Here is the link to project's respository. It contains the developed addon, instructions and more:
 
 
 
https://github.com/nacho0605/GSoC/tree/master/GSoC_2016
 
 
 
Here is the link to some screenshots:
 
 
 
https://wiki.osgeo.org/wiki/File:Sample_test-screenshot.png
 
  
 
== Student's Biography ==
 
== Student's Biography ==
Line 251: Line 240:
 
''School and Degree:'' Faculty of Engineering (UdelaR, Uruguay), Cartographic Technician / Student of Computer Engineer.
 
''School and Degree:'' Faculty of Engineering (UdelaR, Uruguay), Cartographic Technician / Student of Computer Engineer.
  
I learnt about GIS, Databases, GNSS, Remote Sensing, Photogrammetry, etc in many courses offered by Faculty of Engineering (UdelaR, Uruguay).
+
I learned about GIS, Geodatabases, GNSS, Remote Sensing, Photogrammetry, etc in many courses offered by Faculty of Engineering (UdelaR, Uruguay).
  
 
=== Computing experience ===
 
=== Computing experience ===
Line 257: Line 246:
 
On a day-to-day basis i use Windows 7 as operative system, but i also use Ubuntu occasionally.
 
On a day-to-day basis i use Windows 7 as operative system, but i also use Ubuntu occasionally.
  
I learnt about fundamentals of programming and scripting in Matlab / Octave, in a course offered by Faculty of Engineering (UdelaR, Uruguay).
+
I learned about fundamentals of programming and scripting in Matlab / Octave, in a course offered by Faculty of Engineering (UdelaR, Uruguay).
  
 
=== GIS experience as a user ===
 
=== GIS experience as a user ===
Line 265: Line 254:
 
=== GIS programming ===
 
=== GIS programming ===
  
I learnt about scripting in Jython on the 2014 edition of “Introduction to Scripting in gvSIG 2” MOOC offered by the gvSIG Association, through the gvSIG Training platform.
+
I learned about scripting in Jython on the 2014 edition of “Introduction to Scripting in gvSIG 2” MOOC offered by the gvSIG Association, through the gvSIG Training platform.
  
 
After the MOOC ended i’ve written scripts in the gvSIG 2.x branch to facilitate and improve some tasks at work.
 
After the MOOC ended i’ve written scripts in the gvSIG 2.x branch to facilitate and improve some tasks at work.
  
 
[[Category:Google Summer of Code]]
 
[[Category:Google Summer of Code]]

Latest revision as of 09:41, 31 May 2017

Project

Title: Add tests and educational games support to gvSIG Educa.

Student: Carlos I. Colombana

Mentors: Óscar Martínez, Joaquín del Cerro.

Details

Link to GSoC 2016 archive.

Link to GitHub repository.

The main idea behind this project is to develop addons which allows to create/play tests and educational games. Also generate documentation specially oriented to users without any programming knowledge.

The code will be mainly developed in Jython, an implementation of the Python programming language written in Java, through the scripting module of the gvSIG desktop 2.x branch.

The developed tools will be used in geography and maps learning.

Schedule

Dates Tasks Details
May, 23 - June, 26

Develop an addon which allows to create/play tests, and generate the respective documentation.

Functionalities:

  • Week 1 (May, 23 - May, 29): Create test.
  • Week 2 (May, 30 - June, 5): Create test.
  • Week 3 (June, 6 - June, 12): Create/Play test.
  • Week 4 (June, 13 - June, 19): Play test.
  • Week 5 (June, 20 - June, 26): Play test.
June, 27 - August, 14

Develop an addon which allows to create/play educational games, and generate the respective documentation.

Functionalities:

  • Week 6 (June, 27 - July, 3): Create game.
  • Week 7 (July, 4 - July, 10): Create game.
  • Week 8 (July, 11 - July, 17): Play test.
  • Week 9 (July, 18 - July, 24): Play test.
  • Week 10 (July, 25 - July, 31): Play test.
  • Week 11 (August, 1 - August, 7): Play test.
  • Week 12 (August, 8 - August, 14): Play test / Create Test.
August, 15 - August, 23

Test, debug and improve the developed code. Review and improve the generated documentation.

  • Week 13 (August, 15 - August, 21): Play test / Create Test.
  • Week 14 (August, 22 - August, 23): Play test / Create Test.

Reports

Week 1 (May, 23 - May, 29):

What did you get done this week?

I started to develop the create test functionality of the addon.

What do you plan on doing next week?

I'll try to finish the create test functionality on the first half, and develop the pack test functionality on the second half.

Are you blocked on anything?

I was blocked many times during this week, but no now.

Week 2 (May, 30 - June, 5):

What did you get done this week?

I develop partially the create test functionality of the addon. My mentor (Óscar) show me that gvSIG already has a packing functionality.

What do you plan on doing next week?

I'll try to finish the create test and start to develop the play test functionalities of the addon.

Are you blocked on anything?

I'm blocked with something, but my mentor is working on that. Surely tomorrow i'll have good news.

Week 3 (June, 6 - June, 12):

What did you get done this week?

I finished the create test and started developing the play test functionalities of the addon.

What do you plan on doing next week?

I'll try to improve the create test and continue developing the play test functionalities of the addon.

Are you blocked on anything?

I was blocked many times during this week, but no now.

Week 4 (June, 13 - June, 19):

What did you get done this week?

I developed mostly the play test functionality of the addon.

What do you plan on doing next week?

I'll try to finish the play test functionality of the addon, specifically the generate report part.

Are you blocked on anything?

I'm blocked with the generate report part, tomorrow i'll ask it to my mentor.

Week 5 (June, 20 - June, 26):

What did you get done this week?

I finished the play test functionality of the addon.

What do you plan on doing next week?

I'll start to develop the create game functionality of the addon.

Are you blocked on anything?

I have to improve the code, but i'm not blocked.

Week 6 (June, 27 - July, 3):

What did you get done this week?

I started to develop the create game functionality of the addon. I also improve the create/play test addon.

What do you plan on doing next week?

I'll continue developing the create game functionality of the addon.

Are you blocked on anything?

I have to improve the code, but i'm not blocked.

Week 7 (July, 4 - July, 10):

What did you get done this week?

Until now the developed code worked with a fixed number of questions. This week my backup mentor (Joaquín) and i discussed and reorganized the project, to make the code work with a variable number of questions, and other improvements.

What do you plan on doing next week?

Agree some remaining details and continue developing the code that way.

Are you blocked on anything?

No.

Week 8 (July, 11 - July, 17):

What did you get done this week?

Almost complete the development of the new "student's management" module.

What do you plan on doing next week?

Agree some remaining details and continue developing the code that way.

Are you blocked on anything?

I have a few doubts that i'll solve with my mentors.

Week 9 (July, 18 - July, 24):

What did you get done this week?

Completed the development of the new "student's management" and "questions management" modules, and almost the new "test management" module.

What do you plan on doing next week?

Complete the development of the new "test management" and "report management" modules.

Are you blocked on anything?

No.

Week 10 (July, 25 - July, 31):

What did you get done this week?

Completed the development of the new "test management" module, and started the new "report management" module.

What do you plan on doing next week?

Complete the development of the new "report management" module.

Are you blocked on anything?

No.

Week 11 (August, 1 - August, 7):

What did you get done this week?

Almost completed the development of the new "report management" module.

What do you plan on doing next week?

Complete the development of the new "report management" module, and write the respective documentation.

Are you blocked on anything?

No.

Week 12 (August, 8 - August, 14):

What did you get done this week?

Completed the development of the new "report management" module.

What do you plan on doing next week?

Write the respective documentation.

Are you blocked on anything?

No.

Final:

Link to OSGeo SoC mailing list archive

Student's Biography

Country: Uruguay

School and Degree: Faculty of Engineering (UdelaR, Uruguay), Cartographic Technician / Student of Computer Engineer.

I learned about GIS, Geodatabases, GNSS, Remote Sensing, Photogrammetry, etc in many courses offered by Faculty of Engineering (UdelaR, Uruguay).

Computing experience

On a day-to-day basis i use Windows 7 as operative system, but i also use Ubuntu occasionally.

I learned about fundamentals of programming and scripting in Matlab / Octave, in a course offered by Faculty of Engineering (UdelaR, Uruguay).

GIS experience as a user

I’ve been working since February of 2014 at the Geomatics Department of the National Direction of Topography (MTOP, Uruguay) using gvSIG, QGIS and Kosmo daily.

GIS programming

I learned about scripting in Jython on the 2014 edition of “Introduction to Scripting in gvSIG 2” MOOC offered by the gvSIG Association, through the gvSIG Training platform.

After the MOOC ended i’ve written scripts in the gvSIG 2.x branch to facilitate and improve some tasks at work.