blob: 49fe105cd0f88ca9b468fbe52f6fcf962dea1878 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Participate to Apache Polygene™</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Apache Polygene™ is a community based effort exploring Composite Oriented Programming for domain centric application development. This includes evolved concepts from Aspect Oriented Programming, Dependency Injection and Domain Driven Design.
Composite Oriented Programming allows developers to work with 'fragments', smaller than classes, and 'compose' fragments into larger 'composites' which acts like the regular objects. Apache Polygene™ also tackles the enforcement of application composition, i.e. composites are declared in modules, modules are contained in layers and access between layers are controlled/enforced.
">
<meta name="author" content="The Apache Polygene™ Project">
<meta name="keywords" content="cop, composite oriented programming, ddd, domain driven design, composite, mixin, fragment, constraint, concern, side-effect, aop, aspect oriented programming, application, layer, module, structure, java, library, toolkit, framework">
<!-- Le styles -->
<link href="/landing-resources/css/bootstrap.css" rel="stylesheet">
<link href="/landing-resources/css/font-awesome.css" rel="stylesheet">
<style type="text/css">
body {
padding-top: 70px;
padding-bottom: 40px;
}
#home-logo p {
margin-top: 0.75em;
font-size: 2.5em;
font-weight: lighter;
}
</style>
<link href="/landing-resources/css/bootstrap-responsive.min.css" rel="stylesheet">
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Fav and touch icons -->
<link rel="shortcut icon" type="image/png" href="/landing-resources/ico/favicon.png">
<!-- Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-89723617-1', 'auto');
ga('send', 'pageview');
</script>
</head>
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="navbar-inner">
<div class="container-fluid">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a class="brand" href="/"><img src="/landing-resources/img/logo-234x83.png" style="height: 45px;" /></a>
<div class="nav-collapse collapse">
<ul class="nav">
<li><a href="/news.html"><i class="icon-rss"></i> News</a></li>
<li><a href="/download.html"><i class="icon-download"></i> Download</a></li>
<li class="dropdown">
<a class="dropdown-toggle" role="button" data-toggle="dropdown" data-target="#" href="#">
<i class="icon-book"></i> Documentation <b class="caret"></b>
</a>
<ul class="dropdown-menu" role="menu">
<li role="menuitem"><a href="/java/latest/index.html"><i class="icon-caret-right"></i> Latest release</a></li>
<li role="menuitem"><a href="/java/3.0.0/index.html"><i class="icon-caret-right"></i> 3.0.0</a></li>
<li role="menuitem"><a href="/java/2.1/index.html"><i class="icon-caret-right"></i> 2.1</a></li>
<li role="menuitem"><a href="/java/2.0/index.html"><i class="icon-caret-right"></i> 2.0</a></li>
<li role="menuitem"><a href="/java/1.4/index.html"><i class="icon-caret-right"></i> &lt;=1.4.x</a></li>
<li class="divider"></li>
<li role="menuitem"><a href="/java/develop/index.html"><i class="icon-caret-right"></i> develop branch</a></li>
</ul>
</li>
<li class="dropdown">
<a class="dropdown-toggle" role="button" data-toggle="dropdown" data-target="#" href="/community">
<i class="icon-group"></i> Community <b class="caret"></b>
</a>
<ul class="dropdown-menu" role="menu">
<li role="menuitem"><a href="/community/get_help.html"><i class="icon-caret-right"></i> Get Help</a></li>
<li class="divider"></li>
<li role="menuitem"><a href="/community/participate.html"><i class="icon-caret-right"></i> Participate</a></li>
<li role="menuitem"><a href="/community/playing_field.html"><i class="icon-caret-right"></i> Playing Field</a></li>
<li class="divider"></li>
<li role="menuitem"><a href="/community/codebase.html"><i class="icon-caret-right"></i> Codebase</a></li>
<li role="menuitem"><a href="https://builds.apache.org/view/S-Z/view/Polygene/" target="_blank"><i class="icon-caret-right"></i> Continuous Integration</a></li>
<li role="menuitem"><a href="https://issues.apache.org/jira/browse/POLYGENE" target="_blank"><i class="icon-caret-right"></i> Issues</a></li>
<li class="divider"></li>
<li role="menuitem"><a href="/community/maturity.html"><i class="icon-caret-right"></i> Maturity Model</a></li>
<li role="menuitem"><a href="/community/contributors.html"><i class="icon-caret-right"></i> People behind Apache Polygene™</a></li>
<li class="divider"></li>
<li role="menuitem"><a href="http://www.apache.org/licenses/" target="_blank"><i class="icon-caret-right"></i> Licensing</a></li>
<li role="menuitem"><a href="/community/licensing_faq.html"><i class="icon-caret-right"></i> Licensing FAQ</a></li>
<li class="divider"></li>
<li role="menuitem"><a href="http://www.apache.org/foundation/sponsorship.html" target="_blank"><i class="icon-caret-right"></i> Sponsorship</a></li>
<li role="menuitem"><a href="http://www.apache.org/foundation/thanks.html" target="_blank"><i class="icon-caret-right"></i> Thanks</a></li>
<li role="menuitem"><a href="http://www.apache.org/security/" target="_blank"><i class="icon-caret-right"></i> Security</a></li>
</ul>
</li>
</ul>
</div><!--/.nav-collapse -->
<!-- ApacheCon resource -->
<div style="float: right; padding-top: 2px;">
<a href="http://www.apache.org/events/current-event.html"><img src="http://www.apache.org/events/current-event-234x60.png"/></a>
</div>
</div>
</div>
</div>
<div id="content" class="container-fluid">
<div class="page-header">
<h1>Participate</h1>
<p class="lead">Apache Polygene™ is a community based on open development principles</p>
</div>
<div class="row-fluid">
<div class="span2"></div>
<div class="span8">
<p>
The Apache Polygene™ community is an open source community centered around software and components for Composite Oriented
Programming on Java/Scala, and related design methodologies that are enhanced by using Apache Polygene™, like Domain Driven
Design, DCI (Data, Context, Interaction) and HATEOAS REST.
</p>
<p>
The Apache Polygene™ community is an open community, in so far as it welcomes any member that accepts the basic criteria of
contribution and adheres to the community's Code of Conduct.
</p>
<p>
Note that you can contribute to Apache Polygene™ also by contributing documentation or giving feedback on the current documentation.
Basically, at all the places where you can get help, there's also room for contributions.
</p>
<div class="well">
<h4>dev@polygene.apache.org mailing list</h4>
<p>
To discuss with the Apache Polygene™ community, it is easiest to do so at the
<a href="http://mail-archives.apache.org/mod_mbox/polygene-dev/" target="_blank">dev@polygene.apache.org</a> mailing list. This list is open to everyone and regular open source forum etiquette applies. Failure to be respectful may cause the poster to be
expelled. The forum is a light and friendly one, where we are all friends working on a marvelous way of writing Java
code.
</p>
</div>
<hr/>
<h2>Principles of Participation <small>(not enforced yet)</small></h2>
<p>
We borrow a lot of our principles in community building from OPS4J, as OPS4J was the initial home of Apache Polygene, called
Qi4j back then. OPS4J is unique that it allows everyone to participate and modify the codebase
without being voted into the community. We want to retain the spirit of this openness and low-barrier of entry, but need
some structure to organize ourselves.
</p>
<p>
There is a social agreement among the community members that we should try to communicate our intent as much as possible,
but not be held back from doing things, just to get approval for the changes. Reverting changes are easy in GIT, so a
Commit-Then-Review policy is in effect. Individual changes can be vetoed, and the veto comes with a motivation to be valid,
and for additional features or bug fixes, the veto needs to provide an alternative solution within two weeks. The veto stands
either until the person who cast the veto withdraws it, or for two weeks and no alternative solution has been presented. We
think this strikes a good balance between progress and avoidance of catastrophic changes.
</p>
<h2>I want to help, what do I do?</h2>
<p>
First of all, subscribe to dev@polygene.apache.org and introduce yourself. Secondly, take a look at the outstanding JIRA issues
and see if there is anything that you are capable of working on. Communicate that with the community. If there is no issues,
that you can manage, consider creating your own JIRAs, such as working on the Getting Started guide or more test cases.
</p>
</div>
<div class="span2"></div>
</div>
</div>
<div class="container-fluid">
<hr>
<footer>
<p>
Copyright &copy; 2015-2018 The Apache Software Foundation, Licensed under the <a href="http://www.apache.org/licenses/">Apache License, Version 2.0</a>.
<br/>
<small>
Apache Polygene, Polygene, Apache, the Apache feather logo, and the Apache Polygene project logo are trademarks of The Apache Software Foundation.<br/>
All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</small>
</p>
</footer>
</div>
<!-- Le javascript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="/landing-resources/js/jquery-1.8.3.min.js"></script>
<script src="/landing-resources/js/bootstrap.min.js"></script>
<script src="/landing-resources/js/qi4j.org.js"></script>
</body>
</html>