This is the P2PU Archive. If you want the current site, go to www.p2pu.org!

Open Wonderland Development ( Java )

Syllabus for Open Wonderland Development

Josmas Flores's picture
Fri, 2010-12-17 14:12

This is the proposed Syllabus for the Open Wonderland development Course.
In the spirit of a Peer to Peer activity, this syllabus is open to all participants; please feel free to add to it, amend, or propose new activities and ideas.

About assignments: All assignments will be in the form of a blog post highlighting the learning of the week. The assignments are intended to be as free as possible, and the ideal would be that they could extend previous work every week.

About weekly meetings: Weekly meetings will occur in one of the Open Wonderland Foundation community servers. If some people cannot attend a particular meeting, another form of synchronous/asynchronous communication will be used such as forums or chat/skype, and so on.

Week 1

Reading material: Tutorials by douglas Finnigan, introduction to Wonderland development part 1 and part 2

Working with ModulesDeveloping with NetbeansDeveloping a new Cell (parts 1 and 2). For a better understanding of the jME code used in the Cell tutorials you can check this (very brief) introduction to jME2.

At  the Weekly Meeting:

1. Getting familiar with the Open Wonderland Toolkit
  - All the participants should have a working local system(sign up task). Any questions related with the set up will be discussed this week.

2. Discussion on Development tools and materials
  - Discussion on the introduction tutorials (reading material for the week).
  - Materials and tools will be introduce so that participants can start working on assignments.

3. Software craftsmanship movement: Introduction to the movement and where to find more information.

4. Discussion on Assignment for the week: free topics, to be discussed at meetings and through the forums.

Week 2

Reading material:  

Developing a new Cell (parts 3 and 4), writing HUDswriting Components *. Scripting tutorials.

* please note that the components tutorial is a work in progress; any help with the writing process will be highly appreciated.

At the Weekly meeting:

1. Discussion about different interest groups:
  - Module Development with Java in 3D
  - Module Development with Java in 2D
  - Module Development with the Scripting component
  - Software Configuration Management
  - Automated Testing

2. Assigment to groups: Participants can choose as many groups as they like. Each group will have a different assignment.

3. Software craftsmanship: Continuous learning.

4. Assignment for the week.

Week 3

Reading material: Writing 2D applications, Adding entries to the context menu.

At the Weekly meeting:

1. Presentations about the assignments done so far.

2. Discussion on topics highlighted by participants and extending assignments.

3. Software craftsmanship principles: Katas, randori, and other practices for improvement.

4. Discussion of work for assignments.

Weeks 4, 5, and 6

Further reading (depending on your interests): MT-Game programming guide, V0.5 technical documents.

The reamining weeks of the course will all have the same format, and will be focused on the interest groups selected by the participants.
A different weekly meeting will be organised for each group (participants can attend as many as they want), and they will be guided by the needs of the group itself.

There will also be a spot allocated to 

Introduction of Software craftsmanship principles each week.

Participants are encouraged to fill in this syllabus with the topics they want to cover.

Jos

Comments

My 2 cents José: - At some

Michel DENIS's picture
Michel DENIS
Mon, 2011-01-17 15:08

My 2 cents José:

- At some point in time it will help to get a "full picture" of the Open Wonderland Architecture, the components, the principles, the reusable services, etc...
- For when someone will want to develop and make available say a new module: some quick discussion on Licensing (which obviously depends somehow on OWL's own licensing model)
- An overview of the Operational System, and the links/relationships between Development and Operational environments
- Not sure whether there is a recommend IDE for this course, e.g. NetBeans, Eclipse, or something else ?

Hey Michel, thanks for the

Josmas Flores's picture
Josmas Flores
Mon, 2011-01-17 17:45

Hey Michel,
thanks for the feedback.

Point one will be somehow discussed at the first meeting (discussion on Dev tools and materials), and the different tutorials show the different principles, and so on, but the 'full picture' idea is a great one so we will definitely have to add that.

Regarding licensing, to be honest I don't know much about it; I generally share all my content without bothering much, although I should probably be a bit more careful. But again, great idea, we can talk about OWL's license, the contributors agreement, and all that stuff.

Not sure I understand very well what you mean by 'Operational System'... would that be a production environment, as opposed to a dev environment?

Regarding IDEs, one of the ideas is to try and improve the building system so that it does not depend so much on Netbeans. In that way, people could use any IDE of their choice without having to painfully take care of dependencies.

Feel free to edit the syllabus content; you should have permissions to do so. If not, let me know!

Cheers!