Wednesday, August 15, 2012

Writing Grails Doc with GitHub

You're writing a Grails plugin and you would like to publish it to Grails Central. One important step is to wrtite documentation for it. Don't forget that gr8 doc will benefit your plugin.

Create Git Hub Pages

Using GitHub interface:

1. Go to Admin tab on your project, in the section GitHub Pages, click on the button Automatic Page Generator.

A markdown page will give a default template for your site, continue to layouts button.

2. Select a theme and publish. With the simplicity of GitHub, you're done. Site is online:

http://<gitaccount>.github.com/j<gitproject>/

GitHub has created a new branch: gh-pages.

Integrate with Grails Doc


 1. Switch to gh-pages branch

$ git checkout gh-pages

You'll notice all your folders present in master are gone, view is different

2. Create a grails app

3. Add doc structure following below example:

For the reference manual:
https://github.com/3musket33rs/html5-mobile-scaffolding/tree/gh-pages/src/docs/guide

Note the name of the file start with numbering and subnumbering

For the script:
https://github.com/3musket33rs/html5-mobile-scaffolding/tree/gh-pages/src/docs/ref/Scripts

4. Generate doc

grails doc

5. Copy links to github src from index.html + copy images from /resources to /img

6. Move generated doc (from target) to root

7. Open index.html and paste github src links

8. Switch back to master


$ git checkout master

As you can lot of manual step that could be package in a plugin...

 To come Soon

I shall write a plugin. Peter Ledbrooke started one a few years ago, it should worth packaging it.

Peter Ledbrooke blog on gh-pages and grails

Monday, August 13, 2012

Back to coding WE Story

I've got more to tell you about our coding WE. 

How did it go?

7pm: Evening started with a round table presentation. Kind of classic: you say your name, what you expect from the event, what do you know about groovy/grails, what you like doing blahblah

 






8pm: Pizza Party sponsored by Sopra

9pm: Bertrand did an half-hour crash course on Grails

11pm: Little break after the 2 hours sessions ;-)
           
noon: Start of brainstorming session logged by Mathieu on Etherpad hosted by cutie Raspberry Pi. I'm now a fan of Rasp and I want to get a rack of Little Berries for Continious Delivery, or as stated by Filippo Continious Outage.
 







 
Friday night: After brainstorming skeleton of core business classes and techno chosen. Sebastien starts writing core domain classes. All the team is building up the core business. Olivier and Fred, the braves staying up the whole night. Filippo working on login, a way to avoid CSS I suspect. I think by now I kind of understand Filippo is server side guy ;-)

Saturday morning: Come back of our Grails GSP expert Julien. Heading toward dynamic scaffolding to start with. Filippo dedicated to OAuth authentication. Sebastien doing Tags. Eli doing Twitter aggregator. Fabrice and I doing Sponsor page.
  

Saturday noon: Visit of Nicolas, our host, asking us can I see something, crisis moment, nothing really concrete to show...


Saturday afternoon: Integrate Tiago's Twitter Bootstrap web design. Impressive what CSS can do to web site.

Saturday evening: Pascal doing his first step with GSP pages with Grails and already writing no less than a Blog/Forum. 

Saturday night: Olivier merging OAuth User to Member. Brave. Filippo pushing OAuth secret key. Fred and Olivier re-doing Group and Member page with proper layout.

I have to confess I wasn't there the whole night on Saturday. My eyes shut down by themselves I had to go to bed (real bed) but Little Raspberry Etherpad log carries on with comment like:

Dimanche matin: 06:52 | il reste que Fred et moi (Olivier), j'ai une page de profil la classe qui save. Je commit, je push, et j'me couche!!

Filipo is the only one still alive... everyone else is sleeping or living... see you tomorow!

Sunday morning: Filippo pushing OAuth final version and facing pressure ;-) because nobody can log.

Sunday evening: Fabrice and Julien pushing to cloud foundry

Sunday evening: Visit of Nicolas and this time there is something to show !

How do they deal with chaos? 

Actually don't try too hard to fight chaos. Let it be.
We didn't come with already-built project with "do that",  "do this" directives. We all have a full-time job during day. If it's to code during WE, it's for fun.

That was the idea: collective and collaborative session.

Did they manage to do something at the end? 

Yes,  we did it!

Off course it's not finished yet and there is still plenty of work to carry on. But we've got something and with some more work we can make it up to our expectation.

What's next? 

What about doing like Filippo and adding issues to github?
Adding issues and tagging them as enhancement/bug will help organize future development.

When is the next coding WE?

Let's see... Maybe we can find a different format. Working on it. Plenty of idea.
Stay tuned:
#rivieracwe
#rivieragug
#jssophia
@rivieracwe-2012

Please feel free to add comments.

Riviera Coding Week End


From Friday 10th, 7pm to Sunday 12th 7pm, forty eight hours of Groovy/Grails/JavaScript coding.

Yes 48 hours!

But who are the guys behind it? Who is crazy enough to do a coding marathon? Who sponsor such event? What was the purpose of this coding all-day all-night? How do they deal with chaos? Did they manage to do something at the end? How did it go...

You're curious

The guys who organize it are...


The initiative was initially lead by Riviera GUG, but after a couple of tweets, it wasn't long before JS Sophia decided to join the movement. So Riviera Coding Week End (#RivieraCWE) was born.

 Thank you to...


  • Les Satellites for hosting the event in central Nice. A collaborative co-working office, fittes exactly our coding WE needs. Special thanks to Nicolas Berge, our kind host.
  • Sopra Group for feeding the team on Friday night with... pizza
  • Avisto for feeding the team on Saturday night with, guess what? Yes pizza again! Don't change a winning recipe.

The crazy geeks who came...






 Fabrice Matrat










Sebastien Blanc












Mathieu Bruyen











Fabrice Bauzac








Bertrand Goetzmann










Olivier Audard





Filippo Pacifici





 





Pascal Cohen

Julien Faissolle
Frédéric Guillaume





 Corinne Krych


Tiago Fernandez












 Eli Gonzalez


And they meet to do...

A Cross-User Group website.

But we aim to build not just Yet Another Website. We would like to show how dynamic the region is. Our focus is local. It's about social networking in French Riviera.

We want  to
- facilitate User Groups birth ,
- help User Group to organize events, share resources
- help geeks, nerds, passionate coding guys (and girls) -call them as you wish- to meet.

UGhub (User Group Hub) is there for them... The name is not definitive yet, but the idea is there to stay and grow.

You want to know how it went?

Stay tuned.
To be followed.