mozillascience / studyGroup

Gather together a group to skill-share, co-work, and create community
http://mozillascience.github.io/studyGroup/
Other
89 stars 536 forks source link

Mozilla Study Groups in Brasil #36

Open bkatiemills opened 8 years ago

bkatiemills commented 8 years ago

@rodrigopadula and I were just talking about how great it would be if we could get a series of Study Groups started up around Brasil. But, we need a plan to move this forward effectively. Some rough steps we talked about:

  1. Get this repo translated into Portuguese on a Portuguese branch (help wanted!). Translation of other assets like the Handbook can come later, but this repo is key.
  2. Start a few groups around Brasil. I know @pcjunger has one coming for UFRJ, and @rodrigopadula is looking into ICUFF. One or two more around the country would be a great start.
  3. Once there are two or three groups started, we should start a monthly google hangout in Portuguese, lead by the local community. We do one in english so far (which everyone is welcome to join in on), but one organized regionally would be a great addition.

This is a pretty simple plan so far - any ideas or details I'm missing? Please feel free to forward / cc anyone else who might like to help out with this!

alicoding commented 8 years ago

I would suggest to put the locale first e.g. /en/studyGroup/

abbycabs commented 8 years ago

@alicoding - that makes more sense... :)

rgaiacs commented 8 years ago

On advice from @alicoding, the easiest thing for translation might be to to add the translation as another directory on the gh-pages branch. /studyGroup/pt-br and /studyGroup/en

Having two repositories is good to track the changes at the original document with Git. Just my two cents.

bkatiemills commented 8 years ago

I'm open minded to either option, but the two-repo solution lets us make the folks on this thread maintainers of their translation - though I suppose we could just assign PRs on the same repo to different maintainers. Any strong feelings? Delighted to have this community as comaintainers!

paternogbc commented 8 years ago

Hi @BillMills and all,

Thanks a lot for all this work. Could please give us some more information about the next steps?

I believe we now have everything translated, although we still need to integrate all files into a single repo.

Next week I will be in a rush, but after that I can continue to work on the fork.

All the best, Guga

bkatiemills commented 8 years ago

Thanks, everyone - a few things to sort out so we can finish up:

@alicoding @acabunoc do you have an example of your directories suggestion working with jekyll on gh-pages? I need some help understanding how to do that in a non-convoluted way. Problem is, I think that github essentially does jekyll serve from the root directory of the repo, so this isn't just as simple as moving everything into an /en directory and having another copy for /pt-br. The only way I can see to do this is to have a separate entry in _posts for each language, permalinked to en or pt-br as appropriate to get the route you want (though studyGroup has to come first, since it's the repo name), and then define a different layout for each of them that include the appropriate translations. At which point I'm not sure what would even happen to the routes of the actual event postings people are supposed to put in _posts - I guess those would just lose the language part of the route, which isn't explicitly broken, but is pretty weird.

This seems awful complicated - unless you have a way to simplify things?

@paternogbc working on it! As soon as we sort out how we want to host multiple translations.

brennovich commented 8 years ago

I need some help understanding how to do that in a non-convoluted way. Problem is, I think that github essentially does jekyll serve from the root directory of the repo

@BillMills actually Github runs jekyll build everytime you update the gh-pages branch through git hooks, and then serve the generated static files.

This seems awful complicated - unless you have a way to simplify things?

When you guys was discussing this approach of having a pt-brbranch I tried to explain that this approach wasn't that simple. https://github.com/mozillascience/studyGroup/issues/36#issuecomment-146064322

AFAIK the original studyGroupproject should contain all the core of the site, maintaing Jekyll logic, styles, base configuration, translations, and all other desired features. Forked studyGroup projects should only defined their own configuration and posts. This way we can always add new features to the main project and update forked ones:

# From a forked project

# Add mainproject as a remote, this way we can pull latests changes
git remote add mozillascience git@github.com:mozillascience/studyGroup.git

# Fetch changes
git fetch mozillascience

# Apply changes to our fork
git merge mozillascience master

# Push updates to our fork
git push origin master

So, the question is, how to support multiple languages? Well, every multilingual project out there maintains their translations in locale files that can be yaml files (just like our config.yml). You guys can take a look in an example here.

Once we have our translation in locale files like that we can specify our current locale through a configuration key or a URI param, and use translation keys into our layouts/templates https://github.com/teambox/teambox/blob/dev/app/views/people/index.haml#L21-L23

I'll try to add open a Pull Request with basic internationalization support in the next few days, it will be easier to understand ;)

brennovich commented 8 years ago

Just found a cool blog post https://developmentseed.org/blog/multilingual-jekyll-sites/ about it

bkatiemills commented 8 years ago

@brennovich this is fantastic, thanks for looking into this! I definitely agree that using frontmatter (like in the blog post you linked) and locale files makes the most sense, now that you've walked us through it. As long as it is simple for a new group to fork the repo and set their website up in their language of choice (like by setting a single language variable in _config.yml, or by having everything behind an appropriate route, exactly as you described), then I think this is an excellent solution.

Thanks for pulling this together, and I look forward to the PR - let me know how I can help!

brennovich commented 8 years ago

Awesome :)

I'll let you guys know when I get something working ;)

paternogbc commented 8 years ago

Thanks @BillMills @rgaiacs @brennovich for organizing everything! ;)

bkatiemills commented 8 years ago

Hi folks,

Just a reminder that we're going to have our next Study Group Leader's call on Friday, October 30 at 3 PM Rio time - if you're thinking of starting a Study Group, this is your chance to ask questions of your fellow leaders, and see what everyone else has been doing. We'll be connecting via google hangout; the link will be posted shortly before the meeting on this etherpad. You are all welcome to add questions or topics to the agenda, or just ask in person during the meeting - hope to see you all there!

rgaiacs commented 8 years ago

@BillMills Thanks for the invitation. Unfortunately I can't make it. =(

paternogbc commented 8 years ago

@BillMills ... thanks for this invitation! Unfortunately I will be on a trip during this time! ;( I will try to catch up with the brazilians that manage to attend!

bkatiemills commented 8 years ago

Hi folks - okay, I just merged in the infrastructure to support localization yml files, like @brennovich suggested. How to add a translation:

And that's it! Your website should use the text in your new yml file. Note that the headlines are still in the top level _config.yml, since people change those all the time.

For the README, please add a translated README at the same level with an appropriate language tag in the name, like README-pt.md. Then, at the very top of the main README.md, put a line in Portuguese saying '[Read this in Portuguese](link to README-pt.md)', linking to your README.

Let me know how this works for everyone, and huge huge thanks to everyone again for forming this translation and helping figure out how best to serve it. Once the text is merged in and it works for everyone, we can get started with Study Groups across Brasil.

rodrigopadula commented 8 years ago

@BillMills https://developer.mozilla.org/en-US/docs/Implementing_Pontoon_Mozilla can be a good way to have things localized more quickly with support from our Mozillians fellows, what do you think?

A lot of Mozilla's sites/projects was migrated to Pontoon recently.

bkatiemills commented 8 years ago

@rodrigopadula nice find! But will this infrastructure plug into a github-hosted page? It seems like a lot of engineering & dependencies compared to the local yml files @brennovich suggested - best to keep things as simple as possible!

rodrigopadula commented 8 years ago

@BillMills probably for the study groups it dont make sense now, but for https://www.mozillascience.org/ can be a good idea to have it localized in all possible languages through Pontoon.

bkatiemills commented 8 years ago

@rodrigopadula totally - @acabunoc, pinging you to put pontoon localization for https://www.mozillascience.org/ on your radar.

Meanwhile, looking forward to pt.yml here - let me know if I can help!

bkatiemills commented 8 years ago

Hey everyone - how's it going with that .pt yml file? Let me know if there's any way I can help out!

pcjunger commented 8 years ago

Hi everyone, sorry for taking too long to reply. I've tried to follow your last steps but to be honest I'm a bit lost at moment. If I got it right we only need to put all translated files into the the new infrastructure built by @BillMills based on what @brennovich suggested. Right? @gabano @paternogbc @diogoprov Shall we step forward? Let me know how I could be of any help!

gabano commented 8 years ago

@pcjunger and everyone, I made an effort to translate the en.yml file this morning. I added a pt.yml to a fork from @BillMills. I didn't use my own repo because I'm already running a StudyGroup there.

Please, check it out to see if everything is fine and for proofreading :sweat_smile: . Just for the record, I didn't translate anything of the _config.yml file.

Joao.

paternogbc commented 8 years ago

Hi @BillMills @gabano @pcjunger and all,

I got a bit confused about how to proceed. I am ready to help. @gabano we could focused on the link you sent and check the pt.yml file first. One question, what or how should we work with the README.md and codeOfConduct files that we translated and reviewed?

All the best, Guga

paternogbc commented 8 years ago

I have checked the pt.yml file from @gabano. It looks good to me! =) @BillMills could you please suggest the next steps? Should I add the README and codeOfConduct files to this repo? Or should we work on other files? This will be the definitive repo for the portuguese translations?

Sorry for so many questions!

bkatiemills commented 8 years ago

Hi everyone,

Sorry for the slow reply, I've been traveling and catching up with everyone for the past couple days. Anyway, the pt.yml looks great, thanks for pulling that together! Send me a PR and we'll get that merged in right away.

@paternogbc for the README and code of conduct, it's a bit easier since they're not part of the jekyll formatting stuff; just add README-pt.md and codeOfConduct-pt.md to the top level of the repo, and I will link them appropriately. As for the definitive repo, that'll be this one right here once @gabano sends me that PR with pt.yml. Thanks again everyone, I am really excited for this to land!

pcjunger commented 8 years ago

Thanks @gabano! I also think the pt.yml is very well translated! Good to see we're nearly ready with these initial steps. Looking forward to seeing mozilla study groups flourishing around Brasil!

paternogbc commented 8 years ago

Hi @BillMills ... thats sounds great! Just created a PR to add both README-pt.md and codeOfconduc-pt.md to the repo. Let me know if you need any thing else!

Also looking forward to start organizing the brazilian Mozila study groups.

bkatiemills commented 8 years ago

Alright, that does it - I just merged and linked the translation files, so we are good to go for launching these sites in Portuguese! To recap, just fork this repo and in the in the top level _config.yml, set the language variable to pt, and everything should appear in Portuguese. Let me know if this works, and a HUGE thank-you to everyone who participated here!

Going forward, after getting websites set up as above, the first step for getting a Study Group started is to have a few casual meetings with people at your institution, to find people who would like to co-organize with you; the more people who help out running a Study Group, the more successful they are. I usually start with an event at the local pub to get people out to chat :)