http://git-wip-us.apache.org/repos/asf/polygene-website/blob/538baaf6/content/java/develop/two-minutes-intro.html
----------------------------------------------------------------------
diff --git a/content/java/develop/two-minutes-intro.html 
b/content/java/develop/two-minutes-intro.html
index 943e589..be13ee8 100644
--- a/content/java/develop/two-minutes-intro.html
+++ b/content/java/develop/two-minutes-intro.html
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";><html 
xmlns="http://www.w3.org/1999/xhtml";><head><meta http-equiv="Content-Type" 
content="text/html; charset=UTF-8" /><title>Polygene™ in 2 
minutes</title><link rel="stylesheet" type="text/css" href="css/style.css" 
/><meta name="generator" content="DocBook XSL Stylesheets V1.76.1" /><link 
rel="home" href="index.html" title="" /><link rel="up" href="tutorials.html" 
title="Tutorials" /><link rel="prev" href="tutorials.html" title="Tutorials" 
/><link rel="next" href="ten-minutes-intro.html" title="Polygene™ in 10 
minutes" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";><html 
xmlns="http://www.w3.org/1999/xhtml";><head><meta http-equiv="Content-Type" 
content="text/html; charset=UTF-8" /><title>Polygene™ in 2 
minutes</title><link rel="stylesheet" type="text/css" href="css/style.css" 
/><meta name="generator" content="DocBook XSL Stylesheets V1.79.1" /><link 
rel="home" href="index.html" title="" /><link rel="up" href="tutorials.html" 
title="Tutorials" /><link rel="prev" href="tutorials.html" title="Tutorials" 
/><link rel="next" href="ten-minutes-intro.html" title="Polygene™ in 10 
minutes" />
 
 
 <!-- favicon -->
@@ -66,11 +66,11 @@
   })();
  </script>
 
-  </head><body><div xmlns="" xmlns:exsl="http://exslt.org/common"; 
class="logo"><a href="index.html"><img src="images/logo-standard.png" 
/></a></div><div xmlns="" xmlns:exsl="http://exslt.org/common"; 
class="top-nav"><div xmlns="http://www.w3.org/1999/xhtml"; 
class="toc"><dl><dt><span class="section"><a 
href="index.html#home">Polygene™</a></span></dt><dt><span class="section"><a 
href="intro.html">Introduction</a></span></dt><dt><span class="section"><span 
xmlns="" href="tutorials.html">Tutorials</span></span></dt><dt><span 
class="section"><a href="javadocs.html">Javadoc</a></span></dt><dt><span 
class="section"><a href="samples.html">Samples</a></span></dt><dt><span 
class="section"><a href="core.html">Core</a></span></dt><dt><span 
class="section"><a href="libraries.html">Libraries</a></span></dt><dt><span 
class="section"><a href="extensions.html">Extensions</a></span></dt><dt><span 
class="section"><a href="tools.html">Tools</a></span></dt><dt><span 
class="section"><a href="glossary.ht
 ml">Glossary </a></span></dt></dl></div></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="sub-nav"><div 
xmlns="http://www.w3.org/1999/xhtml"; class="toc"><dl><dt><span 
class="section"><a 
href="tutorials.html#_overview">Overview</a></span></dt><dt><span 
class="section"><span xmlns="" href="two-minutes-intro.html">Polygene™ in 2 
minutes</span></span></dt><dt><span class="section"><a 
href="ten-minutes-intro.html">Polygene™ in 10 
minutes</a></span></dt><dt><span class="section"><a 
href="thirty-minutes-intro.html">Polygene™ in 30 
minutes</a></span></dt><dt><span class="section"><a 
href="howto-depend-on-polygene.html">Depend on 
Polygene™</a></span></dt><dt><span class="section"><a 
href="howto-assemble-application.html">Assemble an 
Application</a></span></dt><dt><span class="section"><a 
href="tut-composites.html">Transient Composites 
Tutorial</a></span></dt><dt><span class="section"><a 
href="tut-services.html">Services Composites Tutorial</a></span></dt><dt><span 
clas
 s="section"><a href="howto-contextual-fragments.html">Use contextual 
fragments</a></span></dt><dt><span class="section"><a 
href="howto-leverage-properties.html">Leverage 
Properties</a></span></dt><dt><span class="section"><a 
href="howto-create-constraint.html">Create a 
Constraint</a></span></dt><dt><span class="section"><a 
href="howto-create-concern.html">Create a Concern</a></span></dt><dt><span 
class="section"><a href="howto-create-sideeffect.html">Create a 
SideEffect</a></span></dt><dt><span class="section"><a 
href="howto-create-entity.html">Create an Entity</a></span></dt><dt><span 
class="section"><a href="howto-configure-service.html">Configure a 
Service</a></span></dt><dt><span class="section"><a 
href="howto-invocation-annotation.html">Use 
@Invocation</a></span></dt><dt><span class="section"><a 
href="build-system.html">Polygene™ Build System</a></span></dt><dt><span 
class="section"><a href="community-docs.html">Polygene™ 
Documentation</a></span></dt><dt><span class="sectio
 n"><a href="releasing-apache.html">Releasing 
Polygene™</a></span></dt></dl></div></div><div class="section" 
title="Polygene™ in 2 minutes"><div class="titlepage"><div><div><h3 
class="title"><a id="two-minutes-intro"></a>Polygene™ in 2 
minutes</h3></div></div></div><div class="tip" title="Tip" style="margin-left: 
0.5in; margin-right: 0.5in;"><h3 class="title">Tip</h3><p>Theses tutorials are 
based on actual code found in the <code class="literal">tutorials/</code> 
directory of the
+  </head><body><div xmlns="" xmlns:exsl="http://exslt.org/common"; 
class="logo"><a href="index.html"><img src="images/logo-standard.png" 
style="width:80%;height:80%; padding-top:20px;" /></a></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="top-nav"><div 
xmlns="http://www.w3.org/1999/xhtml"; class="toc"><dl class="toc"><dt><span 
class="section"><a href="index.html#home">Polygene™</a></span></dt><dt><span 
class="section"><a href="intro.html">Introduction</a></span></dt><dt><span 
class="section"><span xmlns="" 
href="tutorials.html">Tutorials</span></span></dt><dt><span class="section"><a 
href="javadocs.html">Javadoc</a></span></dt><dt><span class="section"><a 
href="samples.html">Samples</a></span></dt><dt><span class="section"><a 
href="core.html">Core</a></span></dt><dt><span class="section"><a 
href="libraries.html">Libraries</a></span></dt><dt><span class="section"><a 
href="extensions.html">Extensions</a></span></dt><dt><span class="section"><a 
href="tools.html">Tools</
 a></span></dt><dt><span class="section"><a href="glossary.html">Glossary 
</a></span></dt></dl></div></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="sub-nav"><div 
xmlns="http://www.w3.org/1999/xhtml"; class="toc"><dl class="toc"><dt><span 
class="section"><a 
href="tutorials.html#_overview">Overview</a></span></dt><dt><span 
class="section"><span xmlns="" href="two-minutes-intro.html">Polygene™ in 2 
minutes</span></span></dt><dt><span class="section"><a 
href="ten-minutes-intro.html">Polygene™ in 10 
minutes</a></span></dt><dt><span class="section"><a 
href="thirty-minutes-intro.html">Polygene™ in 30 
minutes</a></span></dt><dt><span class="section"><a 
href="howto-depend-on-polygene.html">Depend on 
Polygene™</a></span></dt><dt><span class="section"><a 
href="howto-assemble-application.html">Assemble an 
Application</a></span></dt><dt><span class="section"><a 
href="tut-composites.html">Transient Composites 
Tutorial</a></span></dt><dt><span class="section"><a href="tut-s
 ervices.html">Services Composites Tutorial</a></span></dt><dt><span 
class="section"><a href="howto-contextual-fragments.html">Use contextual 
fragments</a></span></dt><dt><span class="section"><a 
href="howto-leverage-properties.html">Leverage 
Properties</a></span></dt><dt><span class="section"><a 
href="howto-create-constraint.html">Create a 
Constraint</a></span></dt><dt><span class="section"><a 
href="howto-create-concern.html">Create a Concern</a></span></dt><dt><span 
class="section"><a href="howto-create-sideeffect.html">Create a 
SideEffect</a></span></dt><dt><span class="section"><a 
href="howto-create-entity.html">Create an Entity</a></span></dt><dt><span 
class="section"><a href="howto-configure-service.html">Configure a 
Service</a></span></dt><dt><span class="section"><a 
href="howto-invocation-annotation.html">Use 
@Invocation</a></span></dt><dt><span class="section"><a 
href="build-system.html">Polygene™ Build System</a></span></dt><dt><span 
class="section"><a href="community-doc
 s.html">Polygene™ Documentation</a></span></dt><dt><span class="section"><a 
href="releasing-apache.html">Releasing 
Polygene™</a></span></dt></dl></div></div><div class="section"><div 
class="titlepage"><div><div><h3 class="title"><a 
id="two-minutes-intro"></a>Polygene™ in 2 minutes</h3></div></div></div><div 
class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 
class="title">Tip</h3><p>Theses tutorials are based on actual code found in the 
<code class="literal">tutorials/</code> directory of the
 <a class="ulink" href="https://polygene.apache.org/download.html"; 
target="_top">Polygene™ SDK sources</a>. You should start your favorite 
editor and find the code related to
 this tutorial, run it and play with it.</p></div><p>To show that Polygene™ 
is not necessarily complex, not hard to get going with and easy to deploy, we 
are first showing the
 classic HelloWorld, as small as it can get and still be Composite Oriented 
Programming and not only standard OOP.</p><p>If you want to reproduce what’s 
explained in this tutorial, remember to depend on the Core Runtime artifact 
that depends
-on Core API, Core SPI, and Core Bootstrap:</p><div class="table"><a 
id="idm229757043840"></a><p class="title"><strong>Table 1. 
Artifact</strong></p><div class="table-contents"><table summary="Artifact" 
border="1"><colgroup><col class="col_1" /><col class="col_2" /><col 
class="col_3" /></colgroup><thead><tr><th align="left" valign="top">Group 
ID</th><th align="left" valign="top">Artifact ID</th><th align="left" 
valign="top">Version</th></tr></thead><tbody><tr><td align="left" 
valign="top"><p>org.apache.polygene.core</p></td><td align="left" 
valign="top"><p>org.apache.polygene.core.runtime</p></td><td align="left" 
valign="top"><p>3.1.0-SNAPSHOT</p></td></tr></tbody></table></div></div><br 
class="table-break" /><p>See the <a class="xref" 
href="howto-depend-on-polygene.html" title="Depend on Polygene™">Depend on 
Polygene™</a> tutorial for details.</p><p>Ready, Set, Go!</p><p>Let’s say 
we want to do the common HelloWorld example, but with a more domain-oriented 
setting.
+on Core API, Core SPI, and Core Bootstrap:</p><div class="table"><a 
id="idm620"></a><p class="title"><strong>Table 1. Artifact</strong></p><div 
class="table-contents"><table class="table" summary="Artifact" 
border="1"><colgroup><col class="col_1" /><col class="col_2" /><col 
class="col_3" /></colgroup><thead><tr><th align="left" valign="top">Group 
ID</th><th align="left" valign="top">Artifact ID</th><th align="left" 
valign="top">Version</th></tr></thead><tbody><tr><td align="left" 
valign="top"><p>org.apache.polygene.core</p></td><td align="left" 
valign="top"><p>org.apache.polygene.core.runtime</p></td><td align="left" 
valign="top"><p>0</p></td></tr></tbody></table></div></div><br 
class="table-break" /><p>See the <a class="xref" 
href="howto-depend-on-polygene.html" title="Depend on Polygene™">Depend on 
Polygene™</a> tutorial for details.</p><p>Ready, Set, Go!</p><p>Let’s say 
we want to do the common HelloWorld example, but with a more domain-oriented 
setting.
 We have a Speaker interface that does the talking.
 But we also need an implementation for Speaker, which we declare here via the 
<code class="literal">@Mixins( SpeakerMixin.class )</code>.</p><pre 
class="programlisting brush: java">@Mixins( SpeakerMixin.class )
 public interface Speaker

http://git-wip-us.apache.org/repos/asf/polygene-website/blob/538baaf6/content/java/develop/what-is-cop.html
----------------------------------------------------------------------
diff --git a/content/java/develop/what-is-cop.html 
b/content/java/develop/what-is-cop.html
index c135de6..e8dc1a2 100644
--- a/content/java/develop/what-is-cop.html
+++ b/content/java/develop/what-is-cop.html
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";><html 
xmlns="http://www.w3.org/1999/xhtml";><head><meta http-equiv="Content-Type" 
content="text/html; charset=UTF-8" /><title>What is COP?</title><link 
rel="stylesheet" type="text/css" href="css/style.css" /><meta name="generator" 
content="DocBook XSL Stylesheets V1.76.1" /><link rel="home" href="index.html" 
title="" /><link rel="up" href="intro.html" title="Introduction" /><link 
rel="prev" href="introduction-background.html" title="Background" /><link 
rel="next" href="what-s-an-object-anyway.html" title="What’s an Object 
anyway?" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";><html 
xmlns="http://www.w3.org/1999/xhtml";><head><meta http-equiv="Content-Type" 
content="text/html; charset=UTF-8" /><title>What is COP?</title><link 
rel="stylesheet" type="text/css" href="css/style.css" /><meta name="generator" 
content="DocBook XSL Stylesheets V1.79.1" /><link rel="home" href="index.html" 
title="" /><link rel="up" href="intro.html" title="Introduction" /><link 
rel="prev" href="introduction-background.html" title="Background" /><link 
rel="next" href="what-s-an-object-anyway.html" title="What’s an Object 
anyway?" />
 
 
 <!-- favicon -->
@@ -66,32 +66,33 @@
   })();
  </script>
 
-  </head><body><div xmlns="" xmlns:exsl="http://exslt.org/common"; 
class="logo"><a href="index.html"><img src="images/logo-standard.png" 
/></a></div><div xmlns="" xmlns:exsl="http://exslt.org/common"; 
class="top-nav"><div xmlns="http://www.w3.org/1999/xhtml"; 
class="toc"><dl><dt><span class="section"><a 
href="index.html#home">Polygene™</a></span></dt><dt><span 
class="section"><span xmlns="" 
href="intro.html">Introduction</span></span></dt><dt><span class="section"><a 
href="tutorials.html">Tutorials</a></span></dt><dt><span class="section"><a 
href="javadocs.html">Javadoc</a></span></dt><dt><span class="section"><a 
href="samples.html">Samples</a></span></dt><dt><span class="section"><a 
href="core.html">Core</a></span></dt><dt><span class="section"><a 
href="libraries.html">Libraries</a></span></dt><dt><span class="section"><a 
href="extensions.html">Extensions</a></span></dt><dt><span class="section"><a 
href="tools.html">Tools</a></span></dt><dt><span class="section"><a 
href="glossary.ht
 ml">Glossary </a></span></dt></dl></div></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="sub-nav"><div 
xmlns="http://www.w3.org/1999/xhtml"; class="toc"><dl><dt><span 
class="section"><a 
href="intro.html#highlights">Highlights</a></span></dt><dt><span 
class="section"><a 
href="introduction-background.html">Background</a></span></dt><dt><span 
class="section"><span xmlns="" href="what-is-cop.html">What is 
COP?</span></span></dt><dt><span class="section"><a 
href="what-s-an-object-anyway.html">What’s an Object 
anyway?</a></span></dt><dt><span class="section"><a 
href="state-modeling.html">Polygene™ and state 
modeling</a></span></dt><dt><span class="section"><a 
href="related.html">Related publications &amp; 
projects</a></span></dt></dl></div></div><div class="section" title="What is 
COP?"><div class="titlepage"><div><div><h3 class="title"><a 
id="what-is-cop"></a>What is COP?</h3></div></div></div><p>We found this very 
well written blog entry on the Internet, which very we
 ll describes what Composite Oriented
+  </head><body><div xmlns="" xmlns:exsl="http://exslt.org/common"; 
class="logo"><a href="index.html"><img src="images/logo-standard.png" 
style="width:80%;height:80%; padding-top:20px;" /></a></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="top-nav"><div 
xmlns="http://www.w3.org/1999/xhtml"; class="toc"><dl class="toc"><dt><span 
class="section"><a href="index.html#home">Polygene™</a></span></dt><dt><span 
class="section"><span xmlns="" 
href="intro.html">Introduction</span></span></dt><dt><span class="section"><a 
href="tutorials.html">Tutorials</a></span></dt><dt><span class="section"><a 
href="javadocs.html">Javadoc</a></span></dt><dt><span class="section"><a 
href="samples.html">Samples</a></span></dt><dt><span class="section"><a 
href="core.html">Core</a></span></dt><dt><span class="section"><a 
href="libraries.html">Libraries</a></span></dt><dt><span class="section"><a 
href="extensions.html">Extensions</a></span></dt><dt><span class="section"><a 
href="tools.html">Tools</
 a></span></dt><dt><span class="section"><a href="glossary.html">Glossary 
</a></span></dt></dl></div></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="sub-nav"><div 
xmlns="http://www.w3.org/1999/xhtml"; class="toc"><dl class="toc"><dt><span 
class="section"><a 
href="intro.html#highlights">Highlights</a></span></dt><dt><span 
class="section"><a 
href="introduction-background.html">Background</a></span></dt><dt><span 
class="section"><span xmlns="" href="what-is-cop.html">What is 
COP?</span></span></dt><dt><span class="section"><a 
href="what-s-an-object-anyway.html">What’s an Object 
anyway?</a></span></dt><dt><span class="section"><a 
href="state-modeling.html">Polygene™ and state 
modeling</a></span></dt><dt><span class="section"><a 
href="related.html">Related publications &amp; 
projects</a></span></dt></dl></div></div><div class="section"><div 
class="titlepage"><div><div><h3 class="title"><a id="what-is-cop"></a>What is 
COP?</h3></div></div></div><p>We found this very wel
 l written blog entry on the Internet, which very well describes what Composite 
Oriented
 Programming really is.</p><p>The article uses C# and a "show by example" 
approach to explaining COP, and this shows clearly that COP is not
 Java specific, and although Polygene™ was (to our knowledge) first to 
introduce the name, it applies across languages and
 potentially deserves one or more languages on its own.</p><p>The article is 
re-published here, as allowed by the
 <a class="ulink" 
href="http://msdn.microsoft.com/en-us/windowsmobile/bb264332.aspx"; 
target="_top">Microsoft Permissive License</a>
 , more recently known as
 <a class="ulink" href="http://www.opensource.org/licenses/MS-PL"; 
target="_top">Microsoft Public License</a>. The content below
-is NOT under the usual <a class="ulink" 
href="http://www.opensource.org/licenses/Apache-2.0"; target="_top">Apache 
License</a>.</p><p>We would like to thank Fredrik Kalseth for his explicit 
approval as well.</p><p>Since then, this article went offline but can be found 
on the
-<a class="ulink" 
href="https://web.archive.org/web/20130414005509/http://iridescence.no/post/composite-oriented-programming.aspx";
 target="_top">Internet Archive</a>.</p><div class="section" title="Composite 
Oriented Programming"><div class="titlepage"><div><div><h4 class="title"><a 
id="_ulink_url_http_iridescence_no_post_composite_oriented_programming_aspx_composite_oriented_programming_ulink"></a><a
 class="ulink" 
href="http://iridescence.no/post/composite-oriented-programming.aspx"; 
target="_top">Composite Oriented 
Programming</a></h4></div></div></div><p>I’ve written a series of post on AOP 
lately
+is NOT under the usual <a class="ulink" 
href="http://www.opensource.org/licenses/Apache-2.0"; target="_top">Apache 
License</a>.</p><p>We would like to thank Fredrik Kalseth for his explicit 
approval as well.</p><p>The article below was published during the time when 
Polygene™ was known as Qi4j, and whenever "Qi4j" is mentioned
+below it should be read as "Polygene".</p><p>Since then, this article went 
offline but can be found on the
+<a class="ulink" 
href="https://web.archive.org/web/20130414005509/http://iridescence.no/post/composite-oriented-programming.aspx";
 target="_top">Internet Archive</a>.</p><div class="section"><div 
class="titlepage"><div><div><h4 class="title"><a 
id="_ulink_url_http_iridescence_no_post_composite_oriented_programming_aspx_composite_oriented_programming_ulink"></a><a
 class="ulink" 
href="http://iridescence.no/post/composite-oriented-programming.aspx"; 
target="_top">Composite Oriented 
Programming</a></h4></div></div></div><p>I’ve written a series of post on AOP 
lately
 (<a class="ulink" 
href="https://web.archive.org/web/20090417052136/http://www.iridescence.no/post/Aspect-Oriented-Programming---A-Primer.aspx";
 target="_top">here</a>,
 <a class="ulink" 
href="https://web.archive.org/web/20091222150653/http://www.iridescence.no/post/Implementing-an-AOP-Framework-Part-1.aspx";
 target="_top">here</a>
 and <a class="ulink" 
href="https://web.archive.org/web/20130417090819/http://www.iridescence.no/post/Implementing-an-AOP-Framework-Part-2.aspx";
 target="_top">here</a>),
 and in the last part I promised to tackle mixins and introductions in a future 
post.
 When I was doing my research for just that, I came cross a Java framework (just
-humor me :p) called Apache Polygene™, written by Swedish Richard Öberg, 
pioneering the idea of Composite
+humor me :p) called Qi4j (that’s <span class="emphasis"><em>chee for 
jay</em></span>), written by Swedish Richard Öberg, pioneering the idea of 
Composite
 Oriented Programming, which instantly put a spell on me. Essentially, it takes 
the concepts from Aspect Oriented
 Programming to the extreme, and for the past week I’ve dug into it with a 
passion. This post is the first fruits of
-my labor.</p><div class="section" title="OOP is Not Object Oriented!"><div 
class="titlepage"><div><div><h5 class="title"><a 
id="_oop_is_not_object_oriented"></a>OOP is Not Object 
Oriented!</h5></div></div></div><p>One of the things that Richard Öberg 
argues, is that OOP is not really object oriented at all, but rather class
-oriented. As the Polygene™ website proclaims, "class is the first class 
citizen that objects are derived from. Not objects
+my labor.</p><div class="section"><div class="titlepage"><div><div><h5 
class="title"><a id="_oop_is_not_object_oriented"></a>OOP is Not Object 
Oriented!</h5></div></div></div><p>One of the things that Richard Öberg 
argues, is that OOP is not really object oriented at all, but rather class
+oriented. As the Qi4j website proclaims, "class is the first class citizen 
that objects are derived from. Not objects
 being the first-class citizen to which one or many classes are assigned". 
Composite oriented programming (COP) then,
 tries to work around this limitation by building on a set of core principles; 
that behavior depends on context, that
 decoupling is a virtue, and that business rules matter more. For a short and 
abstract explanation of COP,
 <a class="link" href="introduction-background.html" title="Background">see 
this page</a>. In the rest of this post I’ll try and explain some of its 
easily graspable
 benefits through a set of code examples, and then in a future post we’ll 
look at how I’ve morphed the AOP framework
 I started developing in the previous posts in this series into a lightweight 
COP framework that can actually make
-it compile and run.</p></div><div class="section" title="Lead by Example"><div 
class="titlepage"><div><div><h5 class="title"><a id="_lead_by_example"></a>Lead 
by Example</h5></div></div></div><p><span class="emphasis"><em>Lets pause for a 
short aside: obviously the examples presented here are going to be 
architectured beyond any rational
+it compile and run.</p></div><div class="section"><div 
class="titlepage"><div><div><h5 class="title"><a id="_lead_by_example"></a>Lead 
by Example</h5></div></div></div><p><span class="emphasis"><em>Lets pause for a 
short aside: obviously the examples presented here are going to be 
architectured beyond any rational
 sense, but the interesting part lies in seeing the bigger picture; imagine the 
principles presented here applied on a
 much larger scale and I’m sure you can see the benefits quite clearly when 
we reach the end.</em></span></p><p>Imagine that we have a class Division, 
which knows how to divide one number by another:</p><pre class="programlisting 
brush: c#">public class Division
 {
@@ -126,7 +127,7 @@ intertwined. To what extent is this class reusable if I 
wanted to implement addi
 calculations? Not very, at least not unless we refactored it. We could make 
the Calculate method and the properties
 virtual, and thus use inheritance to modify the logic of the calculation - and 
since this is a tiny example, it would
 probably look OK. But again, think bigger - how would this apply to a huge 
API? It would easily become quite difficult
-to manage as things got more and more complex.</p></div><div class="section" 
title="Design by Composition"><div class="titlepage"><div><div><h5 
class="title"><a id="_design_by_composition"></a>Design by 
Composition</h5></div></div></div><p>With a COP framework, we can implement 
each aspect as a separate object and then treat them as <span 
class="emphasis"><em>mixins</em></span> which blend
+to manage as things got more and more complex.</p></div><div 
class="section"><div class="titlepage"><div><div><h5 class="title"><a 
id="_design_by_composition"></a>Design by 
Composition</h5></div></div></div><p>With a COP framework, we can implement 
each aspect as a separate object and then treat them as <span 
class="emphasis"><em>mixins</em></span> which blend
 together into a meaningful <span class="emphasis"><em>composite</em></span>. 
Sounds confusing? Lets refactor the above example using an as of yet imaginary
 COP framework for .NET (which I’m currently developing and will post the 
source code for in a follow-up post), and
 it’ll all make sense (hopefully!).</p><p>Above, we identified the four 
different aspects in the Division class - so let’s implement each of them. 
First, we
@@ -262,7 +263,7 @@ public interface ISubtraction : ICalculationDataAspect, 
ICalculationLogicAspect
 posts. I’ve already implemented a prototype framework that supports the 
above examples, which builds on my
 <a class="ulink" 
href="http://www.iridescence.no/Posts/Implementing-an-AOP-Framework-Part-2.aspx";
 target="_top">previously posted AOP framework</a>, and I’ll
 post the source code for that soon. If you want to dig deeper right now (and 
don’t mind
-a bit of Java), then I suggest you head over to the Polygene™ website and 
poke about there.
+a bit of Java), then I suggest you head over to the Qi4j website and poke 
about there.
 <a class="ulink" href="http://rickardoberg.wordpress.com/"; 
target="_top">Richard Öbergs blog</a> also provides great 
insight.</p></div></div></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="footer"><p>
         Copyright © 2015 The Apache Software Foundation, Licensed under the 
<a href="http://www.apache.org/licenses/"; target="_blank">Apache License, 
Version 2.0</a>.
         <br /><small>

http://git-wip-us.apache.org/repos/asf/polygene-website/blob/538baaf6/content/java/develop/what-s-an-object-anyway.html
----------------------------------------------------------------------
diff --git a/content/java/develop/what-s-an-object-anyway.html 
b/content/java/develop/what-s-an-object-anyway.html
index f0699d8..2daa558 100644
--- a/content/java/develop/what-s-an-object-anyway.html
+++ b/content/java/develop/what-s-an-object-anyway.html
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";><html 
xmlns="http://www.w3.org/1999/xhtml";><head><meta http-equiv="Content-Type" 
content="text/html; charset=UTF-8" /><title>What’s an Object 
anyway?</title><link rel="stylesheet" type="text/css" href="css/style.css" 
/><meta name="generator" content="DocBook XSL Stylesheets V1.76.1" /><link 
rel="home" href="index.html" title="" /><link rel="up" href="intro.html" 
title="Introduction" /><link rel="prev" href="what-is-cop.html" title="What is 
COP?" /><link rel="next" href="state-modeling.html" title="Polygene™ and 
state modeling" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";><html 
xmlns="http://www.w3.org/1999/xhtml";><head><meta http-equiv="Content-Type" 
content="text/html; charset=UTF-8" /><title>What’s an Object 
anyway?</title><link rel="stylesheet" type="text/css" href="css/style.css" 
/><meta name="generator" content="DocBook XSL Stylesheets V1.79.1" /><link 
rel="home" href="index.html" title="" /><link rel="up" href="intro.html" 
title="Introduction" /><link rel="prev" href="what-is-cop.html" title="What is 
COP?" /><link rel="next" href="state-modeling.html" title="Polygene™ and 
state modeling" />
 
 
 <!-- favicon -->
@@ -66,7 +66,7 @@
   })();
  </script>
 
-  </head><body><div xmlns="" xmlns:exsl="http://exslt.org/common"; 
class="logo"><a href="index.html"><img src="images/logo-standard.png" 
/></a></div><div xmlns="" xmlns:exsl="http://exslt.org/common"; 
class="top-nav"><div xmlns="http://www.w3.org/1999/xhtml"; 
class="toc"><dl><dt><span class="section"><a 
href="index.html#home">Polygene™</a></span></dt><dt><span 
class="section"><span xmlns="" 
href="intro.html">Introduction</span></span></dt><dt><span class="section"><a 
href="tutorials.html">Tutorials</a></span></dt><dt><span class="section"><a 
href="javadocs.html">Javadoc</a></span></dt><dt><span class="section"><a 
href="samples.html">Samples</a></span></dt><dt><span class="section"><a 
href="core.html">Core</a></span></dt><dt><span class="section"><a 
href="libraries.html">Libraries</a></span></dt><dt><span class="section"><a 
href="extensions.html">Extensions</a></span></dt><dt><span class="section"><a 
href="tools.html">Tools</a></span></dt><dt><span class="section"><a 
href="glossary.ht
 ml">Glossary </a></span></dt></dl></div></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="sub-nav"><div 
xmlns="http://www.w3.org/1999/xhtml"; class="toc"><dl><dt><span 
class="section"><a 
href="intro.html#highlights">Highlights</a></span></dt><dt><span 
class="section"><a 
href="introduction-background.html">Background</a></span></dt><dt><span 
class="section"><a href="what-is-cop.html">What is 
COP?</a></span></dt><dt><span class="section"><span xmlns="" 
href="what-s-an-object-anyway.html">What’s an Object 
anyway?</span></span></dt><dt><span class="section"><a 
href="state-modeling.html">Polygene™ and state 
modeling</a></span></dt><dt><span class="section"><a 
href="related.html">Related publications &amp; 
projects</a></span></dt></dl></div></div><div class="section" title="What’s 
an Object anyway?"><div class="titlepage"><div><div><h3 class="title"><a 
id="what-s-an-object-anyway"></a>What’s an Object 
anyway?</h3></div></div></div><p>In OOP the main idea is that we s
 hould model our reality by creating Objects. Objects have state, and they have 
methods.
+  </head><body><div xmlns="" xmlns:exsl="http://exslt.org/common"; 
class="logo"><a href="index.html"><img src="images/logo-standard.png" 
style="width:80%;height:80%; padding-top:20px;" /></a></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="top-nav"><div 
xmlns="http://www.w3.org/1999/xhtml"; class="toc"><dl class="toc"><dt><span 
class="section"><a href="index.html#home">Polygene™</a></span></dt><dt><span 
class="section"><span xmlns="" 
href="intro.html">Introduction</span></span></dt><dt><span class="section"><a 
href="tutorials.html">Tutorials</a></span></dt><dt><span class="section"><a 
href="javadocs.html">Javadoc</a></span></dt><dt><span class="section"><a 
href="samples.html">Samples</a></span></dt><dt><span class="section"><a 
href="core.html">Core</a></span></dt><dt><span class="section"><a 
href="libraries.html">Libraries</a></span></dt><dt><span class="section"><a 
href="extensions.html">Extensions</a></span></dt><dt><span class="section"><a 
href="tools.html">Tools</
 a></span></dt><dt><span class="section"><a href="glossary.html">Glossary 
</a></span></dt></dl></div></div><div xmlns="" 
xmlns:exsl="http://exslt.org/common"; class="sub-nav"><div 
xmlns="http://www.w3.org/1999/xhtml"; class="toc"><dl class="toc"><dt><span 
class="section"><a 
href="intro.html#highlights">Highlights</a></span></dt><dt><span 
class="section"><a 
href="introduction-background.html">Background</a></span></dt><dt><span 
class="section"><a href="what-is-cop.html">What is 
COP?</a></span></dt><dt><span class="section"><span xmlns="" 
href="what-s-an-object-anyway.html">What’s an Object 
anyway?</span></span></dt><dt><span class="section"><a 
href="state-modeling.html">Polygene™ and state 
modeling</a></span></dt><dt><span class="section"><a 
href="related.html">Related publications &amp; 
projects</a></span></dt></dl></div></div><div class="section"><div 
class="titlepage"><div><div><h3 class="title"><a 
id="what-s-an-object-anyway"></a>What’s an Object 
anyway?</h3></div></div></div
 ><p>In OOP the main idea is that we should model our reality by creating 
 >Objects. Objects have state, and they have methods.
 Methods in an object are used to operate on the internal state and understands 
the domain that is being modeled.</p><p>By contrast, in procedural programming 
the focus is on algorithms, which can use several data structures to perform 
some
 task. The focus is on what is going on, rather than the "objects" 
involved.</p><p>With OOP it becomes more difficult to "read" algorithms, as 
they are spread out in many objects that interact. With
 procedural programming it becomes difficult to encapsulate and reuse 
functionality. Both represent extremes, neither of

http://git-wip-us.apache.org/repos/asf/polygene-website/blob/538baaf6/content/landing-resources/img/logo-234x83.png
----------------------------------------------------------------------
diff --git a/content/landing-resources/img/logo-234x83.png 
b/content/landing-resources/img/logo-234x83.png
new file mode 100644
index 0000000..349ccae
Binary files /dev/null and b/content/landing-resources/img/logo-234x83.png 
differ

http://git-wip-us.apache.org/repos/asf/polygene-website/blob/538baaf6/content/news.html
----------------------------------------------------------------------
diff --git a/content/news.html b/content/news.html
index 76a62ac..955fe42 100644
--- a/content/news.html
+++ b/content/news.html
@@ -56,7 +56,7 @@ Composite Oriented Programming allows developers to work with 
'fragments', small
                         <span class="icon-bar"></span>
                         <span class="icon-bar"></span>
                     </a>
-                    <a class="brand" href="/"><img 
src="/landing-resources/img/feather.png" width="64"/> Apache 
<strong>Polygene™</strong></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>
@@ -106,6 +106,10 @@ Composite Oriented Programming allows developers to work 
with 'fragments', small
                             </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>

http://git-wip-us.apache.org/repos/asf/polygene-website/blob/538baaf6/src/_layouts/default.html
----------------------------------------------------------------------
diff --git a/src/_layouts/default.html b/src/_layouts/default.html
index 6d8108d..a42e151 100644
--- a/src/_layouts/default.html
+++ b/src/_layouts/default.html
@@ -54,7 +54,7 @@
                         <span class="icon-bar"></span>
                         <span class="icon-bar"></span>
                     </a>
-                    <a class="brand" href="/"><img 
src="/landing-resources/img/feather.png" width="64"/> Apache 
<strong>Polygene™</strong></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>
@@ -104,6 +104,10 @@
                             </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>

http://git-wip-us.apache.org/repos/asf/polygene-website/blob/538baaf6/src/graphics/Polygene-logo-234x137.png
----------------------------------------------------------------------
diff --git a/src/graphics/Polygene-logo-234x137.png 
b/src/graphics/Polygene-logo-234x137.png
new file mode 100644
index 0000000..3fa0268
Binary files /dev/null and b/src/graphics/Polygene-logo-234x137.png differ

Reply via email to