Ready?

GNU social is a social communication software used in federated social networks. It is widely supported and has a large userbase. It is already used by the Free Software Foundation, and Richard Stallman himself.

If you would like to know how is it like to be a GSoC student at GNU social, read this blog post! Useless Image

Ideas

Below is a list of ideas you can work on this summer at GNU social. You should pick one (or mix a couple) of them and talk on IRC about it. The community will help you understanding what has to be done so you can put a good proposal together.

REWRITE GNU SOCIAL USING SYMFONY

Description: The title is pretty much self explanatory. One might either focus in core, plugins or both (this is to say that we may accept two students for this one).

Mentors: Diogo Cordeiro, Alexey Sorokin

Proposal: Make a parallelism between the GS system and Symfony (autoloading, routing, templates, cache, queues, cron, orm/db, …), indicating how to implement something like our plugin system in such framework.

Proof of Competence: Migrate the avatar system as was done with the media system in the past gsoc and a couple more of backlog tasks. Additional big crunch and bang with a minimally working plugin system would be ideal.

Requirements: PHP7, SQL, Redis, OOP, Declarative and Functional programming. Symfony and Doctrine experience is preferred.

Difficulty: Hard

Study Resources: Refer to the generic ones in “Reliability Engineering”. Study Symfony’s docs as well as Redis’s.