Project status

This section is about the new features that have been introduced to OSEM or are in the process of being reviewed

Features merged in upstream

Multiple CFPs

Up until recently, you could only create a single CFP, which defined when users are able to submit event proposals for your conference.
The changes introduced in #1523 allow the developers to easily add new CFP for different reasons, while reusing as much of the existing code as possible. Significant changes include an index view for the cfps, the ability to add a new kind of cfp just by editing a words array and the modularity of the show view that allows the different kinds of cfps to show only what’s important to them.
For example, in the future we are going to have cfps for tracks, then, instead of having to write a new model, controller and views just for the new type of cfp. I’m just going to edit the Cfp::TYPES constant and add a new partial named _tracks_cfp.html.haml.
As far as I know, this feature will, also, be used for the booths.

Bellow you can see some screenshots that depict Cfp#index and Cfp#new Cfp#index Cfp#new

Friendly urls for tracks

While implementing the role of the track organizer the need to have meaningful names for tracks in the urls arose. Specifically, without using user friendly urls, the url for the role of the track organizer for a track would be https://example.com/admin/conferences/some_conference/roles/track_organizer/5, while now it is https://example.com/admin/conference/some_conferences/roles/track_organizer/awesome_track, which, appart from being much more user friendly, it helps the conference team, who can recognize the track at a glance.
Under the hood, this was implemented by adding a short_name field to the Track model, like the short_title the Conference model has.
This feature was introduced in #1565

Features being reviewed

Track requests

A big feature that is currently being reviewed is the implementation of track requests. Particularly, a new controller and views for tracks (along with changes to the Track model) have been introduced outside of the admin namespace in order to allow the users to make requests for tracks. Also, the admin controller and views have been modified, to make the distinction between regular and self organized tracks visible to the conference team.
Here’s a screenshot from admin/Tracks#index admin/Track#index The next step before enabling said requests, is to implement the workflow that allow the conference team to review and accept/reject these requests.

The track organizer role

Another feature is the introduction of the role of the track organizer. The person/people with this role, will be the ones that are going to be responsible for managing a specific track and its events (accepting/rejecting and scheduling them) by the end of GSoC. Right now, this role is pretty limited but it is nice to see it starting to take a form.

The code for the two features above can be found at #1556

Personal experience and thoughts

GSoC is, probably, one of the most prestigious programs in the world. When you realize that, combined with the open source and free software ethos, being a part of it gives you a special mix of emotions. For me, it’s a bit of pride, coupled with a sense of duty and that feeling that you do something important, which is going to help the world move forward. At the same time, you know that you have great people around you that are willing to help you and share their knowledge with you.
My previous post showed that GSoC opened new doors for me before it even started. While, in this month there was no big awesome trip, there was plenty of the good old learning by reading documentation, writing new code, experimenting and figuring out how the existing code works and why it does what it does the way it does it. See you next time!