<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>E29 LabsE29 Labs</title>
	
	<link>http://labs.e29inc.com</link>
	<description>Just another WordPress weblog</description>
	<pubDate>Wed, 03 Sep 2008 01:33:31 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/E29Labs" type="application/rss+xml" /><feedburner:browserFriendly></feedburner:browserFriendly><item>
		<title>An Easier way to install Serenity AP</title>
		<link>http://labs.e29inc.com/2008/09/02/an-easier-way-to-install-serenity-ap/</link>
		<comments>http://labs.e29inc.com/2008/09/02/an-easier-way-to-install-serenity-ap/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 01:33:31 +0000</pubDate>
		<dc:creator>AdamKinder</dc:creator>
		
		<category><![CDATA[In Development]]></category>

		<category><![CDATA[Serenity]]></category>

		<guid isPermaLink="false">http://labs.e29inc.com/?p=11</guid>
		<description><![CDATA[One of the main complaints that we&#8217;ve received in regards to Serenity is that the installation is command-line and not web-based.
Given that Serenity AP was borne out of a dedicated enterprise application, it&#8217;s not surprising that the installation and upgrading of the platform is a bit.. geeky.  That said, we&#8217;re implementing a web-based installer [...]]]></description>
			<content:encoded><![CDATA[<p>One of the main complaints that we&#8217;ve received in regards to Serenity is that the installation is command-line and not web-based.</p>
<p>Given that Serenity AP was borne out of a dedicated enterprise application, it&#8217;s not surprising that the installation and upgrading of the platform is a bit.. geeky.  That said, we&#8217;re implementing a web-based installer called <b>/up2date/</b> in the Fall.0 release due on September 29th.  The installer will be your basic run o&#8217; the mill web installer, with requirements checking and all that.  Check below for a screenshot:</p>
<p><a href='http://labs.e29inc.com/wp-content/uploads/2008/09/serenity_install.jpg'><img src="http://labs.e29inc.com/wp-content/uploads/2008/09/serenity_install-300x171.jpg" alt="" title="serenity_install" width="300" height="171" class="aligncenter size-medium wp-image-12" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.e29inc.com/2008/09/02/an-easier-way-to-install-serenity-ap/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Securing Serenity: Using Annotations for Security</title>
		<link>http://labs.e29inc.com/2008/07/22/securing-serenity-using-annotations-for-security/</link>
		<comments>http://labs.e29inc.com/2008/07/22/securing-serenity-using-annotations-for-security/#comments</comments>
		<pubDate>Tue, 22 Jul 2008 20:24:22 +0000</pubDate>
		<dc:creator>AdamKinder</dc:creator>
		
		<category><![CDATA[In Testing]]></category>

		<category><![CDATA[Serenity]]></category>

		<guid isPermaLink="false">http://labs.e29inc.com/?p=10</guid>
		<description><![CDATA[I&#8217;ve been working on this feature for a couple of days now, using at first a miss-mash of Reflection class properties and loops.
Thankfully I came across this excellent library on Google Code, called Addendum that saved me the trouble of reinventing the wheel.
Serenity Summer Patch 3 will introduce the annotated role security layer to the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working on this feature for a couple of days now, using at first a miss-mash of Reflection class properties and loops.</p>
<p>Thankfully I came across this excellent library on Google Code, <a href="http://code.google.com/p/addendum/">called Addendum</a> that saved me the trouble of reinventing the wheel.</p>
<p>Serenity Summer Patch 3 will introduce the annotated role security layer to the platform.  What this means for developers is that you can now fine tune your applications when you ship them, locking the application down by module using nothing more than a code comment and function call.</p>
<p>Serenity&#8217;s currently (unfinished) permission model relies on your standard permissions schema: Joe X has the administrator role in application Y, and it&#8217;s stored as a bit in the database.</p>
<p>Serenity&#8217;s new annotated role system takes it one step further.  Instead of the application having the task of checking and loading bits itself, Serenity uses the code comments in your class file to determine security.</p>
<p>In a perfect world, your Serenity application would be split into modules, each being it&#8217;s own class file.  With that in mind, the following example demonstrates how a certain module would restrict access, updating and deleting to the &#8220;admin&#8221; database role:</p>
<p><b>A list control module</b><br />
<code><?php<br />
/** @SecurityRole(access="admin",update="admin",delete="admin") */<br />
class App implements serenity_application<br />
{<br />
     public function view_lists()<br />
      {<br />
         /* ... */<br />
       }</p>
<p>      public function update_list()<br />
      {<br />
          Serenity::security()->check_update_role();<br />
          /* &#8230; */<br />
       }</p>
<p>        public function delete_list()<br />
        {<br />
           Serenity::security()->check_delete_role();<br />
           /* .. */<br />
          }<br />
 }?><br />
</code></p>
<p>For each module class that you want protected, simply add the @SecurityRole() functional comment on the line before the class declaration and pass it the valid permissions for access, update, and delete.</p>
<p>For the access bit, you don&#8217;t need to call a function in the file.  For each function that updates or deletes a piece of data, add the appropriate Serenity::security() call to check the bit before execution.</p>
<p>The system is being built to accommodate any number of bits, and to be extensible.  Once Patch 3 is released, we&#8217;ll update our documentation with the Security system and how to use it properly.</p>
]]></content:encoded>
			<wfw:commentRss>http://labs.e29inc.com/2008/07/22/securing-serenity-using-annotations-for-security/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Announcing “Bugger”</title>
		<link>http://labs.e29inc.com/2008/06/20/announcing-bugger/</link>
		<comments>http://labs.e29inc.com/2008/06/20/announcing-bugger/#comments</comments>
		<pubDate>Fri, 20 Jun 2008 19:16:03 +0000</pubDate>
		<dc:creator>AdamKinder</dc:creator>
		
		<category><![CDATA[In Development]]></category>

		<category><![CDATA[Bugger]]></category>

		<guid isPermaLink="false">http://labs.e29inc.com/?p=9</guid>
		<description><![CDATA[With Serenity AP stable and out the door, we&#8217;ve begun work on our first application, code named &#8220;Bugger&#8221;.
Bugger will be a simple task &#038; milestone tracker, based on two of the most popular modules for our enterprise project management application.
Currently Bugger is about 80% along ( we&#8217;re using Bugger to track Bugger  ), with [...]]]></description>
			<content:encoded><![CDATA[<p>With Serenity AP stable and out the door, we&#8217;ve begun work on our first application, code named &#8220;Bugger&#8221;.</p>
<p>Bugger will be a simple task &#038; milestone tracker, based on two of the most popular modules for our enterprise project management application.</p>
<p>Currently Bugger is about 80% along ( we&#8217;re using Bugger to track Bugger <img src='http://labs.e29inc.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> ), with an estimated first release in three to four weeks.</p>
]]></content:encoded>
			<wfw:commentRss>http://labs.e29inc.com/2008/06/20/announcing-bugger/feed/</wfw:commentRss>
		</item>
		<item>
		<title>ExtUI: Serenity’s Powerful UI Library</title>
		<link>http://labs.e29inc.com/2008/04/10/extui-serenitys-powerful-ui-library/</link>
		<comments>http://labs.e29inc.com/2008/04/10/extui-serenitys-powerful-ui-library/#comments</comments>
		<pubDate>Fri, 11 Apr 2008 01:01:04 +0000</pubDate>
		<dc:creator>AdamKinder</dc:creator>
		
		<category><![CDATA[In Testing]]></category>

		<category><![CDATA[Serenity Enterprise]]></category>

		<guid isPermaLink="false">http://labs.e29inc.com/?p=8</guid>
		<description><![CDATA[
With Serenity Enterprise, we decided to cut out the middle man and create a native PHP wrapper for creating rich user interfaces with ExtJS.  The result, ExtUI, will be shipping standard with Serenity AP and all products.  Our new inline Admin toolbar ( shown in the graphic to the right ), is built [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://labs.e29inc.com/wp-content/uploads/2008/04/extui.jpg'><img src="http://labs.e29inc.com/wp-content/uploads/2008/04/extui-300x144.jpg" alt="Create Rich User Interfaces with ExtUI" title="ExtUI: Rich User Interfaces" width="300" height="144" class="alignright size-medium wp-image-7" /></a><br />
With Serenity Enterprise, we decided to cut out the middle man and create a native PHP wrapper for creating rich user interfaces with <a href="http://extjs.com">ExtJS</a>.  The result, ExtUI, will be shipping standard with Serenity AP and all products.  Our new inline Admin toolbar ( shown in the graphic to the right ), is built on ExtUI and is our first stable widget for the new platform.</p>
<p>Another plus to the ExtUI library is that it compresses the Javascript on the fly, resulting in faster downloads and intelligent caching.</p>
<p>We&#8217;re moving our first public beta release date up for Serenity AP to <b>tomorrow</b>.  You read that right: tomorrow.  We&#8217;ve been purposefully pushing out details in all directions in order to ensure that certain other companies don&#8217;t magically pop out of beta with a number of our features.  Tomorrow we will post up the first encoded beta of Serenity AP, along with a &#8220;HelloWorld&#8221; tutorial series so that developers can get settled in with the APIs that have stabilized so far.</p>
<p>Even though tomorrow&#8217;s release will be considered a Beta, all code written for the package will continue to work through the final release, as the APIs are considered Stable and ready for public use.</p>
<p>Tune in tomorrow, it&#8217;s time we shook up the web world a bit and show what a <b>real</b> small company can do.</p>
<span class="sfforumlink"><a href="http://labs.e29inc.com/discuss/serenity-enterprise/extui-serenitys-powerful-ui-library/page-1"><img src="http://labs.e29inc.com/wp-content/plugins/simple-forum/icons/default/bloglink.png" width="10" height="10" alt="" /> Join the forum discussion on this post</a> - (1) Posts</span>]]></content:encoded>
			<wfw:commentRss>http://labs.e29inc.com/2008/04/10/extui-serenitys-powerful-ui-library/feed/</wfw:commentRss>
		</item>
		<item>
		<title>OpenID Single Signon</title>
		<link>http://labs.e29inc.com/2008/04/04/openid-single-signon/</link>
		<comments>http://labs.e29inc.com/2008/04/04/openid-single-signon/#comments</comments>
		<pubDate>Fri, 04 Apr 2008 20:30:44 +0000</pubDate>
		<dc:creator>AdamKinder</dc:creator>
		
		<category><![CDATA[In Development]]></category>

		<category><![CDATA[Services]]></category>

		<guid isPermaLink="false">http://labs.e29inc.com/?p=5</guid>
		<description><![CDATA[
The next step in our product &#038; service roll out is to integrate all aspects of our company websites with OpenID.  Customers and members that already have OpenID&#8217;s through other providers such as Livejournal, Typepad, Movabletype, or myOpenID will be able to quickly sign in to Labs, forge, our discussion board, and the support [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://labs.e29inc.com/wp-content/uploads/2008/04/openid.png'><img src="http://labs.e29inc.com/wp-content/uploads/2008/04/openid.png" alt="OpenID Logo" title="OpenID Logo" width="250" height="250" class="alignright size-full wp-image-6" /></a><br />
The next step in our product &#038; service roll out is to integrate all aspects of our company websites with <a href="http://openid.net">OpenID</a>.  Customers and members that already have OpenID&#8217;s through other providers such as Livejournal, Typepad, Movabletype, or myOpenID will be able to quickly sign in to Labs, forge, our discussion board, and the support center.</p>
<p>Along with the change to single sign-on for the websites, we are also going to ensure that OpenID is available in our community products.</p>
<p>We expect to have this service online no later than Monday afternoon.</p>
<span class="sfforumlink"><a href="http://labs.e29inc.com/discuss/website-and-services/openid-single-signon/page-1"><img src="http://labs.e29inc.com/wp-content/plugins/simple-forum/icons/default/bloglink.png" width="10" height="10" alt="" /> Join the forum discussion on this post</a> - (1) Posts</span>]]></content:encoded>
			<wfw:commentRss>http://labs.e29inc.com/2008/04/04/openid-single-signon/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Introducing E29 Labs</title>
		<link>http://labs.e29inc.com/2008/04/03/e29-labs-launch/</link>
		<comments>http://labs.e29inc.com/2008/04/03/e29-labs-launch/#comments</comments>
		<pubDate>Thu, 03 Apr 2008 16:47:18 +0000</pubDate>
		<dc:creator>AdamKinder</dc:creator>
		
		<category><![CDATA[E29 Labs]]></category>

		<category><![CDATA[Labs]]></category>

		<guid isPermaLink="false">http://labs.e29inc.com/?p=3</guid>
		<description><![CDATA[After a few weeks of designing and tweaking, I&#8217;m happy to announce the NOT Beta launch of E29 Labs.
Labs will be our sounding board for development ideas, release announcements, and calls for beta testers.  We&#8217;ve also installed an integrated discussion board on the site as well.
Registration is currently open and free to everyone, and [...]]]></description>
			<content:encoded><![CDATA[<p>After a few weeks of designing and tweaking, I&#8217;m happy to announce the NOT Beta launch of E29 Labs.</p>
<p>Labs will be our sounding board for development ideas, release announcements, and calls for beta testers.  We&#8217;ve also installed an <a href="http://labs.e29inc.com/discuss/">integrated discussion board</a> on the site as well.</p>
<p>Registration is currently open and free to everyone, and is required to post / reply on the discussion forums.  I&#8217;ll be following up this post tomorrow with information regarding our product launches and free offerings.</p>
<span class="sfforumlink"><a href="http://labs.e29inc.com/discuss/e29-labs/introducing-e29-labs/page-1"><img src="http://labs.e29inc.com/wp-content/plugins/simple-forum/icons/default/bloglink.png" width="10" height="10" alt="" /> Join the forum discussion on this post</a> - (1) Posts</span>]]></content:encoded>
			<wfw:commentRss>http://labs.e29inc.com/2008/04/03/e29-labs-launch/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
