Hi Thomas, Savitha, Jonathan, Eduard and all,
Thanks for the congratulations Savitha and Jonathan.
I am delighted to here we are developing for XWiki and GSoc 2012.
Congratulations for you too Savitha and Jonathan.
My special thanks to Thomas for giving me feed back and helping me a lot.
And thank you all in the community.
I really look forward to working with you and contribute a lot to XWiki
mobile platform.
Best Regards,
Sasinda Rukshan.
On Tue, Apr 24, 2012 at 12:23 PM, Jonathan Solichin <jssolichin(a)gmail.com>wrote;wrote:
Thank you for the congratulations Savitha, likewise;
Sasinda as well. I
can't wait to see what the program will produce! Like Savitha, I just
wanted to thank everyone involved at XWIKI--especially Evalica, Sdumitriu,
Vmassol. Jumping into the pool looks that much easier. Hopefully I will be
able to implement a Responsive Web Design skin (a webdesign layout that
changes in context of screen size), with XWIKI's help, that everyone can be
proud of and match the high standards of XWIKI. If anyone has any input on
what they would like to see, definitely feel free to let me know.
Thank you all, and best regards,
Jonathan Solichin
On Mon, Apr 23, 2012 at 12:49 PM, Eduard Moraru <enygma2002(a)gmail.com
wrote:
Hello community, Hello Google Summer of Code
students,
First of all, congratulations on your applications and your activity
during the selection period, and welcome in the XWiki development team.
Before guiding the accepted students to their next steps, we'd like to
thank again all those who showed interest in XWiki for this Summer of
Code.
We had a lot of good applications this year, with
professional approaches
and interesting ideas, and it was very difficult to choose only 3.
Unfortunately, some very good students, with great potential, were not
accepted. So, to those interested in getting involved anyway, without
Google's implication, I renew the invitation to put your ideas in
practice
under the guidance of the community. Even though
the money will be
missing,
you can still take advantage of the other GSoC
benefits: learning new
things, gaining experience, earning recognition, etc [1]. If you would
like
to do that, please let us know by replying to
this mail.
For the accepted students, here are some getting started hints:
= Community bonding period =
According to the program timeline [2], the next month (until - May 21st)
is to be used for community bonding.
The first thing to do, sometime this week, is to present yourself and
your
project on the dev list, so that everyone knows
who you are and
what to expect from you (a precondition is to be subscribed to the list,
which you *need to do ASAP* if you haven't already).
Also, you should continue getting acquainted with the code, the practices
and the developers. Please make sure you all read and understand the
following - very useful - documents:
- [3]
http://purl.org/xwiki/community/
- [4]
http://purl.org/xwiki/dev/
- [5]
http://platform.xwiki.org/xwiki/bin/view/Features/
= Mentorship =
We prefer open mentorship. While your assigned mentor is the one
officially in charge with your guidance, almost all interaction should be
done 'in the open' as much as possible, on the IRC channel or on the
mailing list. You should choose the communication medium according to the
importance of the matters to be discussed: naturally, the less important
issues are to be discussed on IRC, while the design decisions, important
progress announcements and testing/feedback requests go on the list. This
way, the community is informed on the evolution of your project, and
other
developers can come up any time with useful ideas
and suggestions.
Moreover, if your mentor is hit by a bus (the bus factor [6]), another
developer can take his place with little effort.
= Communication =
Sitting alone in your room, working secretly on your project is
definitely
a bad approach. However, please keep in mind that
too much communication
can also be harmful, as it distracts the others from their own work. You
need to be able to communicate just right:
- provide meaningful information about your progress,
- ask the community's opinion on non-trivial design or implementation
decisions
- avoid wasting a lot of time on a problem, when a more experienced
developer (or a student that fought the same problem) could quickly
provide
you an answer; however, do try to find the answer
yourself at first.
Wrong: "Where do I start? What do I do now? And how do I do that? Is this
good? It doesn't work, help me!"
Right: "Since a couple of hours ago I get a strange exception when
building my project, and googling for a solution doesn't seem to help.
Looking at the error, I think that there's a wrong setting for the
assembly
plugin, but nothing I tried works. Can someone
please take a look?"
Subscribe to the devs list (if you didn't do this already), and start
monitoring the discussions. It is also recommended to subscribe to the
users list, but not mandatory. The notifications list is a little too
high
volume and technical for the moment, but it is a
great knowledge
source.
= Development process =
The project's lifecycle is NOT design -> implementation -> testing ->
documentation. [7]
We invite you to adopt a test driven development [8][9][10] approach and
to experience agile development [11]. After the first coding week, you
must
have some code that works. It won't do much,
of course, but it will be
the
seed of your project. Every functionality will be
validated by tests. The
code must be properly tested and commented at the time of the writing
(don't think you'll do that afterwards, because in most cases you won't).
Since our code is now hosted on GitHub [12], you should register an
account there and fork some xwiki repositories, so that you can try to
build XWiki from sources, and be able to contribute bugfixes. We'll add
you
to the xwiki-contrib organization [13], and
we'll create dedicated
repositories for each project. We encourage you to do __at least__ weekly
commits (ideally, if you are well organized, you should be able to commit
code that works daily, so try to aim at daily commits). This way, the
code
can be properly reviewed, and any problems can be
detected before they
grow
into something too difficult to fix. One big code
blob committed at the
end, no matter how good it may seem, is a failure at several levels.
A simple way of having something functional in the first week is to
prepare the maven build for your modules, which will give you the first
unit test for the first class.
= Next steps, in a nutshell =
- Get more familiar with the code and development process and try to
master Maven, JUnit, Selenium, component driven development, ...
- Continue fixing a few small issues, chosen so that they are __related
to
your project__. You can ask on IRC for help
selecting good issues, or you
can pick from the (non-comprehensive) list of easy issues [14]
-- This will help you get more familiar with the code your project needs
to interact with.
- Refine and organize the ideas concerning your project (you can use the
Drafts space [15]), and write several use case scenarios.
- Start writing the first piece of code for your project.
At the end of the community bonding period, you should have a clear
vision
of the project, well documented on the
xwiki.org
wiki, you should have
the build infrastructure ready, and you should be pretty familiar with
the
existing code you will need to interact with.
And, of course, you should
be
http://jira.xwiki.org/jira/secure/IssueNavigator.jspa?mode=hide&request…
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs