Student Passion for Geography and the Google Summer of Code
GoGeomatics has reached across the Atlantic to interview one of our new geospatial contributors in Europe. Join us as we talk with Florin-Daniel Cioloboc about his experiences with the Google Summer of Code project. This is a program that students around the world can get involved in.
Florin an active GoGeomatics Canada contributor and is also a former GSoC participant in the 2016 edition of the Google program. Currently his talents are being utilized as a Data Analyst at Property Shark, a subsidiary of Yardi Systems Inc.
GoGeomatics: Can you tell us a little about your background and education? Why did you decided to study geomatics?
Florin: Sure. I graduated in summer of 2016 with a master’s degree in Geomatics, and before that I obtained my bachelors in Geography. I did both degrees at Babes-Bolyai University in Cluj-Napoca, Romania. I was also able to do one semester at University of Strasbourg during my master’s degree. I came across GIS and Remote Sensing pretty early in my academic experience during my undergrad degree. From there it was easy to see how pragmatic and practical geomatics was for applying Geography. So very early on I got hooked and wanted learn more about these tools and how they could be applied so I decided to further my education in the field.
GoGeomatics: What is Google Summer of Code and How did you find out about it?
Florin: I first found about it via Twitter a year and a half ago, even though I did not have a Twitter account myself at that point. The most succinct explanation of what it is I found on Wikipedia below to explain what the GSoC is:
The Google Summer of Code, often abbreviated to GSoC, is an international annual program, first held from May to August 2005, in which Google awards stipends, which depends on place of university of the student, to all students who successfully complete a requested free and open-source software coding project during the summer. The program is open to university students aged 18 or over.
GoGeomatics: Why did you get involved with the program?
Florin: By the time I found about GSoC, I was already quite into programming so I was looking for an opportunity to gain first hand experience working on a serious project. Moreover, I found out that OSGeo (The Open Source Geospatial Foundation), an organisation I was familiar with took part in some of the Google national and international events. It’s pretty easy to see where this is going, geomatics and programming.
The program also included an aspect of mentorship I had not seen in other opportunities. I really wanted to code under the mentorship of experienced software developers. The benefits included mentoring on how to design the architecture of a project, as well as writing code efficiently and being as productive as you can. As a student, especially coming from a non-computer science background, this was an asepct of the program I was eager to partake in.
GoGeomatics: What types of projects have been completed over the past ten years? Can you give us a few interesting examples with links?
Florin: To be honest, taking into consideration that only last summer there were 22 projects mentored by OSGeo that’s hard to say. There have been so many great ideas ranging from enhancing a software with a particular plugin, improving geoprocessing algorithms, extending raster capabilities so and on. Since 2007 OSGeo has regularly participated as a mentoring organization. For those who are curious about past porjects, a good starting point would be this page that links to the wiki of each year OSGeo used for GSoC.
GoGeomatics: Did your background include much programming to prepare you for this program?
Florin: I took just a couple of computer science courses and being self-taught I didn’t have the same breadth and depth as the computer science students. The silver lining was the projects were developed for different levels of experience.
GoGeomatics: Tell us about your project?
Florin: My project was to develop an Android-based library for the istSOS project. Now, what is istSOS, it’s an open source software for managing and distributing sensor network. Basically, it offers an interactive GUI and API for you to customize the way you manage a network of sensors. istSOS development team was looking to extend access to its API for Java and Android developers, so my goal was just that. I developed a first version of a library in Java that could also work on Android with documentation on how to use it.
GoGeomatics: What was the greatest challenge you faced?
Florin: Probably, as most self-taught programmers, the greatest challenge was to actually build the library and make it work. I’ve never worked on a project that really mattered that would be used by other people. In the beginning, I had to look carefully at the istSOS documention to understand what it offers and how I provide its functionalities in an Java environment. So this is where I had to learn how to apply techniques related to requirements and design of the project (classes, objects), design patterns, concurrency, also make it compatible for Android. The whole process was a challenge. Especially if when you are inexperienced, you don’t know what might go wrong later because you made a bad decision in the beginning. But then again, that’s why mentors are for to guide and advise on how to tackle these sort of things.
GoGeomatics: By the end of your project what did you learn?
Florin: What I consider important is to recognize that you become better at programming when you see how components interact with each other, why certain designs are better than others, what is good code and bad code, so on and so forth.
Also, to keep in mind, while we might not enjoy writing documentation or commenting your code it is important. As well be ready to provide extensive examples of how what you have built can be used. How is someone supposed to use what you developed if they can’t find and understand the basic instructions to make it work.
GoGeomatics: Are you still doing anything related to GSoC?
Florin: After my participation ended, not long after I had the chance to contribute to the development of the program for the whole OSGeo community, so I volunteered to help in the OSGeo GSoC Administrators team. The administrators work as a team on various tasks such as preparing OSGeo application to GSoC, promoting project ideas to students, communication with students, checking weekly progress of their projects. Mostly administrative stuff.
GoGeomatics: Any recommendations for a geomatics student interested in GSoC?
Florin: First start early, check what projects have been done in previous years. Explore the general outline of the projects, its goal, and objectives. You might want to get to touch with the mentors that are regularly participating in GSoC. See if they are thinking about some ideas for next year and if you can get involved.
Another resource is to check the dedicated pages on the blog, website, and wiki for the GSoC. For example, OSGeo keeps of every project since the organization joined the program, and that was 10 years ago!
GoGeomatics: Any thoughts on now that you are done and what you have learned?
Florin: I could only recommend it to those who are willing move out of their comfort zone, are very much into coding, and are looking forward to a community experience. You’ll probably find yourself in tough spot at some point, and while I don’t want to repeat the classic, “Never give up!”, I’ll still encourage everyone to persevere. Remember you signed up for this because you a strong reason for it, whatever that is, and you shouldn’t let it go.
GoGeomatics. Thanks for sharing with us Florin. As well thanks for your interesting articles on the GoGeomatics website. You’ve made a real contribution to the GoGeomatics community. We hope to see more soon!