Recap: Google Summer of Code with Terasology (and Google Code In!)

Skaldarnar

Badges badges badges badges mushroom mushroom!
Contributor
Art
World
SpecOps
#1
Participating in Google Summer of Code this year was a pleasure! We awaited the announcement of organizations with anticipation, and were very excited to be part of it as a first time org. Everyone was eager to help and we were happy to see so much commitment and dedication by mentors, community members, and, most of all, students! I want to say a huge "Thank You" to everyone involved.


Our Goals with GSOC
To say we had particular goals in mind with GSoc is a bit of a stretch.Of course we had some "big ideas" floating around, taken from a wide range of areas: From fancy rendering and 3D wizardry, over game play features and background simulations, to developer tools and infrastructure. As diverse as game development is, as different were the possible tasks students could pick up.

Of course, the common wishlist of open source orgs applies to us as well. Getting more attention, spreading the word of open source, and helping others to get hooked is high up on that list, and we were not disappointed!


What we got
At first: We've got a lot of proposals over the whole range of topics. Most of them were really thought out, and it was a pleasure reviewing them. The amount of talented and motivated students was sheer overwhelming.

Finally, we were happy to welcome three participants from Ukraine, Turkey, and Germany. There were a lot more great proposals, and we can only encourage everyone to keep up the good work and carry on! We tried to balance our acceptance of proposals with regard to their areas of development. Thus, we ended up with projects on the rendering (DAG-based Rendering Pipelines by tdgunes), tooling (Standalone NUI extraction and visual NUI editor by rzats), and simulation (City Simulation by Cpt. Crispy Crunchy). Needless to say all three students passed mid and final evaluations and mastered their tasks excellently.


The Journey Continues
And although summer was over sooner than hoped for, participants and other students stayed with us, and are still contributing to the project. The city simulation framework got a nice coat of medieval flair, heavy work by our 3D wizards continues on the rendering pipeline, and many and more developers already used the NUI editor to fire up their UI screens.

Now we have Google Code-in right ahead of us. And here comes one of the best parts of the whole story. One of the GSoC students, rzats, has swiftly climbed up the ladder from student to mentor. He is now helping is orchestrating the upcoming student projects, I'm glad he is with us! Open source projects live by stories like that, and we are very happy to be able to share this story with you.

Looking forward to the upcoming weeks with excitement.
 

Cervator

Project Lead and Community Wizard
Contributor
Design
Logistics
SpecOps
#2
I'll drop in my thoughts as well, now that we've been in GCI for about one week :)

GSOC

It was an awesome feeling to finally get accepted for GSOC 2016! We applied for a few years and it came down to a numbers game - would there be a slot for us this year? Well 2016 was it!

And then the flood of students came - oh boy. We had around 100 students show up, with about half putting in draft or final applications. We were in the company of very respected organizations behind entire operating systems, programming languages, scientific endeavors - and there was still space for us and students for our little project! Probably helped to be the only (I think?) pure game org, couple others with engines and stuff (also cool!)

Super honored to be part of GSOC and that's been the thing more than anything else so far that has made it feel to me like we're a "real" project now :D

Our three final students were awesome, and our mentors were awesome for helping out. Especially @Skaldarnar for volunteering as a second org admin each time so far and mentoring too.

We learned a lot, and I think we'll be way better prepared for any future GSOC entries. Our ideas page had been polished decently over the several application periods but until we actually saw students submit proposals it was hard to get a feel for how well the ideas were put together.

The DAG pipeline was waaay underscoped for what it truly turned out to be, but poor @tdgunes championed through it none the less. Cities was sort of on the other end of the spectrum as way open ended so we got a lot of cool stuff from @Cpt. Crispy Crunchy but we could've been a bit more specific about the goal. @Rostyslav Zatserkovnyi ended up sort of in the middle with a fairly well scoped and defined engine feature, throwing some related bonus material even before the work period began.

More than anything we met a bunch of great people several of which are still with us, more than just the students with winning proposals. That's a win for the students, for the projects, for open source, and everybody involved :)

GSOC Mentor Summit

After the projects over the summer were finished the next point of interest was the mentor summit. We could send two and I expected to be able to make it since I'm already in the US and had always wanted to visit Silicon Valley. Several of our European mentors were interested, but couldn't figure out the logistics in time. Maybe next time?

The Summit itself was a wonderful experience, even if a little lonely attending as a first timer solo. I'm not a super social individual especially around strangers, but I put in some extra effort to socialize and meet some fellow mentors. This was actually my first truly professional conference! Despite a few almosts and scaled down local/remote training sessions through my career it was actually Terasology that got me on a flight to somewhere formal with a bunch of peers.

As such I was also new to the idea of an "unconference" where the attendees themselves set up the sessions. After I figured out what that meant and saw the planning board I went out on a limb and signed myself up to host a session on organizing and motivating volunteers in an open source community - I mean, that's sort of my job here. Glorified project bureaucrat and chief cheerleader! Up until that point I had been mostly observing quietly but hosting a session really changed that for the better!

When the time came for my session I had parked myself in the prior session in the same room for convenience (and for a fitting topic) so I could just stay in there. At first I wondered if people were staying late or had ended up in the wrong room, but I actually had some 10-15 attendees, we filled up the room pretty nicely! To top it off my expectations were reversed: I had thought other projects would be way better organized than us and we could do a round table with all the cool techniques people had, but as it turned out we appeared to possibly be the most organized project in the room and I ended up sharing the tips and tricks I've used here over the last few years! And people were really interested in it and taking notes!

After the session I made a couple template boards in Trello to share and they got floated around a bit, next day at the summit one of the other attendees actually also sought me out to talk about it some more, and there has been a bit of email traffic since as well (I really need to get back on that more). Also met people with more interesting connections like a university professor who'd be happy to hear from us and help us start hooking up with students who might like an open source project to poke at as part of a course.

So many notes to follow up on, so little time! And then there was also chocolate. And swag. And more chocolate :) It was a great trip, a very cool first trip to the west coast, and I look forward to coming back - although I really hope we can get some other mentors shipped over there!

GCI

One session I participated in at the Summit was actually on GCI, where the "hell week" was brought up, which we just went through. Oh boy they weren't kidding! I was a little reluctant having heard the expectations for the start of the program, but @Skaldarnar and @Rostyslav Zatserkovnyi really stepped up to the plate and organized our entry pretty much without my assistance, which was another point of awesome beyond simply getting into GSOC - something substantial of an administrative nature happening without me! What's next, a dedicated mentoring department? :D

With a few more mentors added in we built up the required tasks and just sort of floated right into GCI like it was a natural follow-up to GSOC. Again we had plenty of newbie topics to learn, like how to structure tasks and which will get rushed through while others are neglected (poor, poor, QA analysts). The first several days we had pretty much continuous 24/7 coverage on IRC and task processing happening in near real team, only slipping past an hour or two on rare occasions. I think we had a half hour without coverage one night when I went to bed early after getting sick (after joking about taking sick leave to focus on GCI - thanks universe!)

Now it has been a week and just like with GSOC we're already met a bunch of smart students who have been throwing tasks and code at us nearly faster than we've been able to merge them. The total task count is dropping yet the complexity is going up as the easy ones disappear, so task processing has started taking longer with a few rounds of code review involved. While we aren't necessarily engaged 24/7 anymore it is still getting pretty close, and intense at times. It isn't bad but it sure keeps you engaged, my poor house and day job look at me with sadness wondering when I'll get any free time for them again.

We need to stay on our toes, start adding more regular to advanced tasks again, keep the flow going, and meet more good students. We especially are getting our procedures, docs, and pain points poked at thoroughly, with this many people hitting it all so fast (GSOC was more slow paced). New things to fix, as soon as we get some spare time again. The Alpha 6 release event this past Saturday went great with several students checking out our event server, which I think didn't crash once! We had a few client crashes, but less than usual. The server itself is still standing in good health after some 60 hours :D

This is just one week, I can't wait to see how much we'll get through over the remainder of the program period, although we still need more mentors to do even better!

2016 overall - Alpha and the path forward

To recap more than just GSOC this year itself has been our best by far. 2016 may have contained its fair share of negativity in the world at wide, but at least we can rest in peace with our hobby safe and sound here, in better shape than ever.

Going v1.0.0 with our engine and the game to Alpha overall really started off the year well. Then with GSOC it felt like we were finally more than just an open source project that happened to look like Minecraft. That we are becoming something more. With GCI that's really coming into its own, and I'm very curious what we'll achieve over 2017 as a freshly registered and official non-profit organization - The Terasology Foundation :)

I wish everybody a great holiday season and can't wait to see what the future holds!

Pictures!

From the Mentor Summit and beyond!

AloftHotel.jpg AloftHotelHills.jpg AndroidGarden.jpg BonusAlcatraz.jpg BonusAlcatrazInterior.jpg CampusAtNight.jpg ChocolateTable.jpg GoogleBikes.jpg GoogleCampusVeggies!.jpg Highway.jpg
 

Mike Kienenberger

Active Member
Contributor
Architecture
GUI
#4
I had thought other projects would be way better organized than us and we could do a round table with all the cool techniques people had, but as it turned out we appeared to possibly be the most organized project in the room and I ended up sharing the tips and tricks I've used here over the last few years! And people were really interested in it and taking notes!
Well, as you know, I've been a part of other GSOC organizations and even "commercial" game companies, and I was *always* impressed by your community building skills and approach. It was one of the things I really loved about Terasology, so I am not surprised to see that others notice the same thing!

Also, I was teaching a Scratch intro class to some home-schoolers this fall, and at the last class two weeks ago I was asked to show what "real java programming" looked like -- I had my too-many-years-out-of-date Terasology project on the computer, so I decided to show a one minute demo and describe some of the code. It was very well received by a class full of minecraft players.
 

Cervator

Project Lead and Community Wizard
Contributor
Design
Logistics
SpecOps
#5
Heya @Mike Kienenberger - great to hear from you again! It has been too long. Thank you very much for the kind words. I'm glad to report our mentors in particular are stepping up and increasing in numbers to help out with all the things, together we can do great things :)

We've been getting some decent tutorials and other improved docs lately, hugely helpful for all these GCI students popping up. If you get more opportunities like that feel free to upgrade to latest and grab some more resources!

After GCI finishes we should have some time to clean up, overhaul the GSOC ideas list before apps start there, and hopefully find some spare breaths to put more good docs and guides together. It seems like we're getting somewhere :)
 

Cervator

Project Lead and Community Wizard
Contributor
Design
Logistics
SpecOps
#6
Oh boy have times been busy lately. The "Hell Week" concept with GCI seems to have lasted a full three weeks. On day one of Week 4 it was almost quiet in comparison. We still have a ton of activity and tasks pile on in waves that can get back up to around 10 pending review at times which can take a while to get through again.

It continues to be rewarding, but also oh so exhaustive! But now we're only a week out before no more tasks can be claimed and we still have our mentors alive, even if only barely :)

So far 538 tasks have been completed, by 137 students, out of 217 students total that have interacted in whatever way needed to end up in our log. 226 tasks have been completed by our current Top 10 students.

The majority of the "Create Content" tasks have gone into making new items for Cooking, Potions, Equipment, SimpleFarming, and most recently Smithing + EquipmentSmithing. Everything from there is now live on our official event server, which is up and running with the NeoTTA gameplay template for tomorrow's scheduled play test session (in approx 9 hours). It has bugs for sure, but it is cool to see it all together! You can actually get stuff from the world to make some of the potions and so on.

The build to use with the event server is Omega 650 - http://jenkins.terasology.org/job/D...omega/build/distributions/TerasologyOmega.zip - and the in-game listing is "Official Event Host"

Join us tomorrow as we test out some stuff, break the server surely at least once, find some bugs, maybe even fix some!
 

Cervator

Project Lead and Community Wizard
Contributor
Design
Logistics
SpecOps
#7
GCI 2017 is complete, as a great success!

Only prize selection remains at this point, along with then the actual prizes. Announcements about that will come from Google on January 30th

At the end we had 606 tasks completed (third highest org) by 138 students, with a total of 222 starting or otherwise getting in touch with us. Top student had 42 tasks completed. No idea how those ratios really compares to other orgs since this is our first yeah, but it sure seems impressive to me! :)

I want to thank all the students who joined up with us, and especially our poor overworked 12 mentors. Well, 11, not going to thank myself! That's an average of 50 tasks approved per mentor not counting the amount of times multiple mentors reviewed the same item nor repeat reviews with more work needed.

Now comes the difficult task for us to actually select the winners, from the top 11 students by quantity of tasks completed (we had a three way tie at the bottom of the top 10 so it became a top 11 - even harder!)

For those not picked I want to emphasize that you all did great - it won't be something you will have done wrong, it is simply a numbers game - we can only pick 5! Much like how GSOC worked out for us as an organization the first 2-3 times, we didn't do anything wrong we just couldn't fit. Until now :)

I hope to see as many students as possible stay and participate in later years as GCI or GSOC students or mentors!

Next up expect a dev meeting this Saturday, and a post recapping 2016 overall while also outlining some ideas for 2017. Here's for hoping we get into GSOC and GCI again!

It may still take a few weeks to fit all the remaining student work into the game and assorted wikis, plus preparing the Alpha 7 release containing it all. Plenty of stuff is available already now in the latest dev build.
 
#8
Now comes the difficult task for us to actually select the winners, from the top 11 students by quantity of tasks completed (we had a three way tie at the bottom of the top 10 so it became a top 11 - even harder!)
Ahh, just read the GCI FAQ that the top 10 students by quantity would be considered. I'd have done the easy tasks too if I'd read that carefully before :unsure:
 

Cervator

Project Lead and Community Wizard
Contributor
Design
Logistics
SpecOps
#9
Ahh, just read the GCI FAQ that the top 10 students by quantity would be considered. I'd have done the easy tasks too if I'd read that carefully before :unsure:
Yeah the task quantity is just there I think to narrow down the field to where it is at all possible to make evaluations. Since quality ultimately counts more than quantity if we had a handful of students that made just one or two massively impressive tasks it would be near impossible trying to sort it all out (a top 138?)

On the plus side with a little luck we can become regulars for both GCI and GSOC. Maybe find some other similar programs to participate in as well. So this won't have been the only opportunity ever :)

Edit: Also, there is a GCI recap blog post out from Google