<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The Pixel Code &#187; Development</title>
	<atom:link href="http://www.thepixelcode.com/category/development/feed" rel="self" type="application/rss+xml" />
	<link>http://www.thepixelcode.com</link>
	<description>Design / Develop / Inspiration by Mohammed Khan</description>
	<lastBuildDate>Mon, 19 Jul 2010 03:45:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Spring Roo Impressions</title>
		<link>http://www.thepixelcode.com/development/spring-roo-impressions</link>
		<comments>http://www.thepixelcode.com/development/spring-roo-impressions#comments</comments>
		<pubDate>Mon, 19 Jul 2010 03:45:04 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Spring]]></category>
		<category><![CDATA[Roo]]></category>
		<category><![CDATA[spring]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=604</guid>
		<description><![CDATA[At Esberi, we widely used Spring MVC and other products from the SpringSource stable, to build enterprise web applications. Been an RIA consulting company by nature and heavily working on the Flex front-ends, Spring-BlazeDS Integration always comes handy, and regular components like Spring Security, JMS integration and ORM support using Hibernate, are regular nuts and [...]]]></description>
			<content:encoded><![CDATA[<p>At Esberi, we widely used Spring MVC and other products from the SpringSource stable, to build enterprise web applications. Been an RIA consulting company by nature and heavily working on the Flex front-ends, Spring-BlazeDS Integration always comes handy, and regular components like Spring Security, JMS integration and ORM support using Hibernate, are regular nuts and bolts of a generic enterprise web application at Esberi.</p>
<p>The initial part of the project kick-off is spend on Project Configurations, which is kinda tedious to handle during the initial phases due to component versioning. Maven does come to rescue but misses on closed project component templates. This bring us to another exciting yet to mature project from SpringSource called Spring Roo. Spring Roo is RAD development tool, which makes life easy for J2EE developers to work with Spring based project configurations. It helps you build model/domain driven Spring projects and generates the code based on the model/domain specified. Its just not a code generetion tool, but does all the code plumbing to integrate various components like, security, jms, logging, mvc, testing etc. which means the developer concentrates more on the entities rather than component internals.</p>
<p>Spring Roo heavily relies on AspectJ and Maven for most of its behind the curtain scenes. My initial reaction when I got started with Spring Roo was &#8220;Holy Grails, it does make life easy.&#8221;, but after closing looking at the code generated, its meant for prototyping and not for production deployments (just like Adobe Flash Catalyst design-to-code conversion, ugly and fat). So it does what it promises, and then I had to roll up my blue sleeves to make the code production ready. When working with Spring Roo here are my realizations :</p>
<p><strong>1.</strong> The usage scope of Spring Roo is limited, doesn&#8217;t makes sense in collaborative enterprise project development. </p>
<p><strong>2.</strong> Good for simple data models, not meant for complex ones. Also the domain modeling needs be visually enabled as it is in case of SkyWay Builder.</p>
<p><strong>3.</strong> Code back-tracking is a mess, developers just don&#8217;t write code in incremental fashion. </p>
<p><strong>4.</strong> Hard to sync up code when modified with further Spring Roo generation, generated code overrides your customized code. </p>
<p><strong>5.</strong> Been working with Flex/J2EE projects for quite sometime, I am used to DAO design pattern, sadly this is missing in the code generated by Spring Roo, for a good reason, but still I am a spoiled one. Will take some time to accept the change.</p>
<p><strong>6.</strong> Generates unit test cases and integration test cases, makes easy for QA and relies on Selenium for web application testing. (GOOD)</p>
<p><strong>7.</strong> Generates the web tier for you to perform object CRUD operations, and relies on Tiles framework.  (GOOD)</p>
<p>Further I must say Spring Roo does impress me from the point that it makes project configuration easy and the ability to bring in your own add-ons, no more getting paranoid with WEB-INF XMLs and dependency management. Considering the project timeline of Roo, I am sure the best is yet to come, for now limiting its application to prototyping itself.</p>
<p><strong>NOTE:</strong> I have still got to put Spring Roo to further testing scenarios. Will write on my experience evolution soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/spring-roo-impressions/feed</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Getting Primavera P6 v7 ready for Messaging</title>
		<link>http://www.thepixelcode.com/development/data-services/getting-primavera-p6-v7-ready-for-messaging</link>
		<comments>http://www.thepixelcode.com/development/data-services/getting-primavera-p6-v7-ready-for-messaging#comments</comments>
		<pubDate>Sun, 25 Oct 2009 12:21:46 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Data Services]]></category>
		<category><![CDATA[JMS]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Primavera]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=449</guid>
		<description><![CDATA[Post Adobe MAX 2009, I have been working on a solution design for a company based out of UAE and part of the solution involved Oracle Primavera P6 V7 EPPM Platform. Primavera is a Enterprise Project &#038; Portfolio Management solution widely used by large-scale engineering companies across globe. One of the new feature of the [...]]]></description>
			<content:encoded><![CDATA[<p>Post Adobe MAX 2009, I have been working on a solution design for a company based out of UAE and part of the solution involved Oracle Primavera P6 V7 EPPM Platform. Primavera is a Enterprise Project &#038; Portfolio Management solution widely used by large-scale engineering companies across globe. One of the new feature of the P6 v7 platform is event notifications, which makes it possible to integrate Primavera with other enterprise systems for Business process Automation. To use the Event Notification feature of the Primavera P6 v7 platform, first you would need to downlaod and install a JMS server, and for this example I am using ActiveMQ (because it&#8217;s easy to get started) but for my client&#8217;s requirement we are using Websphere MQ. So go ahead and download ActiveMQ latest stable version from here and once downloaded, unzip it and start the Message Broker by executing the <em>activemq</em> command under the <em>bin </em> directory of the unzipped activemq package. Now we would need to create a queue called P6WS7, for this once you started the ActiveMQ, navigate to <strong>http://localhost:8161/admin</strong> and under the <strong>Queues</strong> section, enter the new queue name as <strong>P6WS7</strong> and click <strong>Create</strong>.</p>
<p>With this we have got the Queue created and pretty much configured the ActiveMQ, now we would need to configure the Primavera P6 eventing system, so that it will post all the events triggered on to the message queue we created in ActiveMQ. For this login into your Primavera Administrator Console and navigate to your P6 Database Instance and configure the Eventing and Directory Services. Below is the attached screenshot with needed field-values that you will need to enter in order to post the events on to the ActiveMQ message queues.</p>
<div id="attachment_459" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.thepixelcode.com/wp-content/uploads/2009/10/Picture-21.png"><img src="http://www.thepixelcode.com/wp-content/uploads/2009/10/Picture-21-300x267.png" alt="Primavera P6 V7 Eventing Configuration" title="Primavera P6 V7 Eventing Configuration" width="300" height="267" class="size-medium wp-image-459" /></a><p class="wp-caption-text">Primavera P6 V7 Eventing Configuration</p></div>
<p>Once you have entered values as defined in the image for Eventing and Directory Services section, you can test the configuration by right clicking on Eventing title and click &#8220;Test Connection&#8221; form the menu. This will dispatch a test message to the P6WS7 queue which you can view it in the ActiveMQ web admin console. Hope this info helps you out, as none of the documentation that comes along with the Primavera P6 v7 platform has this defined, even not in the documentation thats on the support CD pack.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/data-services/getting-primavera-p6-v7-ready-for-messaging/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Fiber: How &amp; What should your RIA consume ?</title>
		<link>http://www.thepixelcode.com/development/data-services/fiber-how-what-should-your-ria-consume</link>
		<comments>http://www.thepixelcode.com/development/data-services/fiber-how-what-should-your-ria-consume#comments</comments>
		<pubDate>Sun, 20 Sep 2009 01:49:07 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Data Services]]></category>
		<category><![CDATA[Fiber]]></category>
		<category><![CDATA[lcds]]></category>
		<category><![CDATA[LiveCycle]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=431</guid>
		<description><![CDATA[It all started with Flex Data Service, and since then Adobe has made significant progression in enterprise computing. For me, enterprise computing doesn&#8217;t mean complex business use-cases, instead manageable enterprise objects (can be a document or a form or a data-set). Adobe LiveCycle Enterprise Suite has been pretty much successful to engage enterprise computing around [...]]]></description>
			<content:encoded><![CDATA[<p>It all started with Flex Data Service, and since then Adobe has made significant progression in enterprise computing. For me, enterprise computing doesn&#8217;t mean complex business use-cases, instead manageable enterprise objects (can be a document or a form or a data-set). Adobe LiveCycle Enterprise Suite has been pretty much successful to engage enterprise computing around the PDF document type. And on other side, an extension of the LiveCycle ES, the LCDS has made it possible for RIA developers to build mission-critical and collaborative applications. Last week at <a href="http://tac.sg"><strong>The ActionScript Conference 2009</strong></a> which was held in Singapore, I made a presentation with the same title, and not sure how well it went with audience (more of designers &#038; flash developers, also post lunch Zzzzz).</p>
<p>As in my earlier post I mentioned, Fiber is a suite of technologies which helps you do model driven development using Flash Builder 4 (with modeler plugin) and LiveCycle Data Services 3. And the major part of the Fiber is the Adobe Data Model, which lets you build data models, create services and bind services to data controls. Below are the slides attached which I used at the TAC 2009 and also find attached source code which was used for demos at the conference. </p>
<div style="width:425px;text-align:left" id="__ss_2000636"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/mdzkhan/fiber-how-what-your-ria-consume" title="Fiber : How &amp; What your RIA consume ?">Fiber : How &amp; What your RIA consume ?</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=introduction2fiber-090915102407-phpapp01&#038;stripped_title=fiber-how-what-your-ria-consume" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=introduction2fiber-090915102407-phpapp01&#038;stripped_title=fiber-how-what-your-ria-consume" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">documents</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/mdzkhan">Mohammed Khan</a>.</div>
</div>
<p>In order to work with attached codes, you will first need to setup and get started with Livecycle DS 3, about which you can find it <a href="http://www.thepixelcode.com/development/data-services/getting-started-with-model-driven-development-using-livecycle-ds-3-beta"><strong>here</strong></a>. </p>
<p>Demo II : <a href="http://www.thepixelcode.com/wp-content/uploads/2009/09/TAC09Demo1.fxp"><strong>Getting started with FB4 &#038; LCDS 3</strong></a><br />
Demo III : <a href="http://www.thepixelcode.com/wp-content/uploads/2009/09/TAC09Demo2.fxp"><strong>Working with Annotations &#038; Styles</strong></a><br />
Demo IV a : <a href="http://www.thepixelcode.com/wp-content/uploads/2009/09/TAC09Demo3.fxp"><strong>Working with Filters : Criteria based Filters</strong></a><br />
Demo IV b : <a href="http://www.thepixelcode.com/wp-content/uploads/2009/09/TAC09Demo4.fxp"><strong>Working with Filters : Pass-through Filters</strong></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/data-services/fiber-how-what-should-your-ria-consume/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Model Driven Development using LiveCycle DS 3 Beta &#8211; Annotations and Styles</title>
		<link>http://www.thepixelcode.com/development/data-services/model-driven-development-using-livecycle-ds-3-beta-annotations-and-styles</link>
		<comments>http://www.thepixelcode.com/development/data-services/model-driven-development-using-livecycle-ds-3-beta-annotations-and-styles#comments</comments>
		<pubDate>Fri, 04 Sep 2009 05:25:26 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Data Services]]></category>
		<category><![CDATA[Fiber]]></category>
		<category><![CDATA[lcds]]></category>
		<category><![CDATA[LiveCycle]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=416</guid>
		<description><![CDATA[In continuation to my last screen cast, this one deals with Annotations and Styles declarations using Adobe Data Model, LCDS 3 Beta and Flash Builder 4. In the next screen cast I shall try to cover working with various types of Filters using Fiber suite. Model Driven Development using LCDS 3 &#8211; Annotations &#038; Styles [...]]]></description>
			<content:encoded><![CDATA[<p>In continuation to my <a href="http://www.thepixelcode.com/development/data-services/getting-started-with-model-driven-development-using-livecycle-ds-3-beta"><strong>last</strong></a> screen cast, this one deals with Annotations and Styles declarations using Adobe Data Model, LCDS 3 Beta and Flash Builder 4. In the next screen cast I shall try to cover working with various types of Filters using Fiber suite. </p>
<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=6392885&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=6392885&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object>
<p><a href="http://vimeo.com/6392885">Model Driven Development using LCDS 3 &#8211; Annotations &#038; Styles</a> from <a href="http://vimeo.com/thepixelcode">Mohammed Khan</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
<p>You can download the the source code which was used in the above screen cast <a href="http://www.thepixelcode.com/wp-content/uploads/2009/09/SampleMDDApp.zip"><strong>here</strong></a>, and the sample MySQL database script <a href="http://www.thepixelcode.com/wp-content/uploads/2009/09/SampleDB.sql"><strong>here</strong></a>.  When importing the project into your Flash Builder 4, you will need to change the LCDS 3 turnkey path in the Flex Compiler settings, also the RDS username and password would change accordingly. If you have any issue in getting started, feel free to share.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/data-services/model-driven-development-using-livecycle-ds-3-beta-annotations-and-styles/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Getting started with Model-Driven-Development using LiveCycle DS 3 Beta</title>
		<link>http://www.thepixelcode.com/development/data-services/getting-started-with-model-driven-development-using-livecycle-ds-3-beta</link>
		<comments>http://www.thepixelcode.com/development/data-services/getting-started-with-model-driven-development-using-livecycle-ds-3-beta#comments</comments>
		<pubDate>Thu, 27 Aug 2009 06:38:44 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Data Services]]></category>
		<category><![CDATA[Fiber]]></category>
		<category><![CDATA[LiveCycle]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=364</guid>
		<description><![CDATA[In the following screen cast, I discuss about the tools required to head start MDD using LCDS 3, also how to configure the lcds 3 turnkey solution to enable RDS management, declare data source for the lcds web application and define user security at servlet container level, I hope it helps you get started. In [...]]]></description>
			<content:encoded><![CDATA[<p>In the following screen cast, I discuss about the tools required to head start MDD using LCDS 3, also how to configure the lcds 3 turnkey solution to enable RDS management, declare data source for the lcds web application and define user security at servlet container level, I hope it helps you get started. In the next part of this screen cast series, we will explore the Fiber suite and Adobe Data Model, where we shall work with Styles, Filters and Annotations. </p>
<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=6292457&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=6292457&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object>
<p><a href="http://vimeo.com/6292457">Getting started with Model Driven Development using LCDS 3</a> from <a href="http://vimeo.com/thepixelcode">Mohammed Khan</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
<p><strong>UPDATE:</strong> The next part of this screen cast titled &#8220;Model Driven Development Using LiveCycle DS 3 Beta &#8211; Annotations and Styles&#8221; is available <a href="http://www.thepixelcode.com/development/data-services/model-driven-development-using-livecycle-ds-3-beta-annotations-and-styles"><strong>here</strong></a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/data-services/getting-started-with-model-driven-development-using-livecycle-ds-3-beta/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Introduction to LiveCycle Data Services 3 Beta</title>
		<link>http://www.thepixelcode.com/development/data-services/introduction-to-livecycle-data-services-3-beta</link>
		<comments>http://www.thepixelcode.com/development/data-services/introduction-to-livecycle-data-services-3-beta#comments</comments>
		<pubDate>Fri, 21 Aug 2009 21:35:21 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Data Services]]></category>
		<category><![CDATA[lcds]]></category>
		<category><![CDATA[LiveCycle]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=343</guid>
		<description><![CDATA[As part of Adobe&#8217;s initiatives to align it self with Enterprise computing, it has made LiveCycle Data Service (LCDS) 3 Beta available for preview, no its not open source, but you can download and test out the new features. Things have changed considerably in LCDS 3 and quite new features have been added which I [...]]]></description>
			<content:encoded><![CDATA[<p>As part of Adobe&#8217;s initiatives to align it self with Enterprise computing, it has made LiveCycle Data Service (LCDS) 3 Beta available for preview, no its not open source, but you can download and test out the new features. Things have changed considerably in LCDS 3 and quite new features have been added which I believe makes it exciting to work with. The new features that are part of the LCDS 3 Beta version are:</p>
<p><strong>1. Execution runtime support for Adobe Data Model</strong></p>
<p>With the introduction of Fiber, a suite of technologies that enables Model-Driven-Devleopmet using Flash Builder 4 and LCDS 3, also comes Adobe Data Model. Adobe Data Model, is an XML-based persistence modeling language, and under the hood it implements the Java Persistence Query Language (<strong>JPQL</strong>) which is part of the Java Persistence API (<strong>JPA</strong>). In order to work with Adobe Data Model, you will need Flash Builder 4, Modeler Plugin, and LCDS 3 Beta. Without LCDS 3 Beta, you will not be able to execute or deploy your data model definitions, this also means Adobe Data Model wouldn&#8217;t work with BlazeDS.</p>
<p><strong>2. Data throttling</strong></p>
<p>For developers who worked with Flash Media Server, this should not be new. Throttling means the server increases or decreases the amount of data streamed based on how much the Flash Player can consume and process. LCDS 3 beta has various throttling mechanisms,  and the one that automatically controls the server&#8217;s data outflow rate based on the client consumption rate is known as Adaptive Throttling.</p>
<p><strong>3. Reliable Message Transactions</strong></p>
<p>In LCDS 3, the Quality of Service (QoS), has been largely improved, for instance when working with data transactions applications like a Banking App, its necessary to have an acknowledgement made at all ends of the the data pipeline. This guarantees that whatever is send/receives is reliable.</p>
<p><strong>4. Recover over Network Failures</strong></p>
<p>Another feature that has been added to improvise the quality of service, is the ability for the Flash Player clients to recover data over network failures. A particular business case where this feature can be handy is a Trading application. Data Transmission is crucial in any data driven application, and also it becomes necessary to have high network redundancy. With multi-tier features it makes it possible for the Flash Player client to switch sessions with different LCDS 3 server definitions, if an network failure occurs with a particular destination.</p>
<p><strong>5. Pause/Resume Capabilities</strong></p>
<p>Another interesting feature, which can change the way the Flash Player client handles large chunk of binary data transmission is the Pause/Resume capability. Exchanging documents, large set of data can be controlled in more orderly fashion, the user gets the ability to control the exchange of data.</p>
<p>If you feel the above features excite you and want to test drive the MDD feature of LCDS 3, watch for this space. Till then I hope you have a great time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/data-services/introduction-to-livecycle-data-services-3-beta/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Model Driven Development Using LCDS 3</title>
		<link>http://www.thepixelcode.com/development/data-services/model-driven-development-using-lcds-3</link>
		<comments>http://www.thepixelcode.com/development/data-services/model-driven-development-using-lcds-3#comments</comments>
		<pubDate>Fri, 21 Aug 2009 18:35:47 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Data Services]]></category>
		<category><![CDATA[lcds]]></category>
		<category><![CDATA[LiveCycle]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=350</guid>
		<description><![CDATA[Well today was an exciting day, presented at the Bangalore Flex User Group, though the turn out was low, the feedback was quite positive. Also post meet up, went out with Mrinal and Saurabh for dinner, and had an avid discussion on various topics. To sum up, it was an exciting day and the rain [...]]]></description>
			<content:encoded><![CDATA[<p>Well today was an exciting day, presented at the Bangalore Flex User Group, though the turn out was low, the feedback was quite positive. Also post meet up, went out with Mrinal and Saurabh for dinner, and had an avid discussion on various topics. To sum up, it was an exciting day and the rain made the evening more pleasant. By the way below you can find the presentation slides which were used at the Bangalore Flex User Group Meeting, also I would like to apologize for the demo not working, its just for some reason the modeler plugin for Flash Builder 4 doesn&#8217;t work the way it should (that&#8217;s why its still BETA). And as I promised I shall record individual webcast for the functionalities which I couldn&#8217;t demonstrate today.  So have fun and a great weekend.</p>
<div style="width:425px;text-align:left" id="__ss_1891173"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/mdzkhan/model-driven-development-using-lcds3" title="Model Driven Development Using LCDS3">Model Driven Development Using LCDS3</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=modeldrivendevelopmentusinglcds3-090821132141-phpapp01&#038;stripped_title=model-driven-development-using-lcds3" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=modeldrivendevelopmentusinglcds3-090821132141-phpapp01&#038;stripped_title=model-driven-development-using-lcds3" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">documents</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/mdzkhan">Mohammed Khan</a>.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/data-services/model-driven-development-using-lcds-3/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Working with Command Pattern &#8211; Interface</title>
		<link>http://www.thepixelcode.com/development/flash/working-with-command-pattern</link>
		<comments>http://www.thepixelcode.com/development/flash/working-with-command-pattern#comments</comments>
		<pubDate>Sat, 08 Aug 2009 12:46:47 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[command]]></category>
		<category><![CDATA[pattern]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=294</guid>
		<description><![CDATA[Applications that require undo/redo functionality, can be constructed using the Command Pattern. Other uses of command pattern can be to construct reusable components, process queued requests, and develop wizard or transactional applications. As the name goes, Command pattern encapsulates functionality into a class and consist of five elements: 1. Interface 2. Concrete Command 3. Receiver [...]]]></description>
			<content:encoded><![CDATA[<p>Applications that require undo/redo functionality, can be constructed using the Command Pattern. Other uses of command pattern can be to construct reusable components, process queued requests, and develop wizard or transactional applications. As the name goes, Command pattern encapsulates functionality into a class and consist of five elements:</p>
<p>1. Interface<br />
2. Concrete Command<br />
3. Receiver<br />
4. Client<br />
5. Invoker</p>
<div id="attachment_332" class="wp-caption alignnone" style="width: 460px"><a href="http://www.thepixelcode.com/wp-content/uploads/2009/08/Command-Pattern-Structure2.jpg"><img src="http://www.thepixelcode.com/wp-content/uploads/2009/08/Command-Pattern-Structure2.jpg" alt="Command Pattern Structure" title="Command Pattern Structure" width="450" height="235" class="size-full wp-image-332" /></a><p class="wp-caption-text">Command Pattern Structure</p></div>
<p>In this post I will touch upon <strong>Interface</strong> element of the command pattern. The command interface defines the <em>execute()</em> method, which is responsible for executing the requested operation. Also multiple command types can be implemented using the same interface. The command interface provides a programmatic approach to manage the objects which have disparate modes of operation.</p>
<pre class="java">
//General interface implementation
package com.thepixelcode.sampleCPExample.commands {

  public interface ICommand {
     function execute():void;
  }

}
</pre>
<p>The above snippet can be further extended to support the redo/undo functionality, and in order to implement, we would need to create two command interfaces, one for redo and another for undo which shall extend the <strong>ICommand</strong>.</p>
<pre class="java">
//Interface for undo
package com.thepixelcode.sampleCPExample.commands {

  public interface IUndoCommand extends ICommand {
     function undo():void;
  }
}

//Interface for redo
package com.thepixelcode.sampleCPExample.commands {

  public interface IRedoCommand extends ICommand {
     function redo():void;
  }
}
</pre>
<p>I didn&#8217;t want to write a long post over the weekend, also neither i wanted to loose on my writing spirit. Shall continue on other elements and a demo app in next post. Till then have a great weekend.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/flash/working-with-command-pattern/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rolling out Appcelerator TUG India Chapter</title>
		<link>http://www.thepixelcode.com/development/titanium/rolling-out-appcelerator-tug-india-chapter</link>
		<comments>http://www.thepixelcode.com/development/titanium/rolling-out-appcelerator-tug-india-chapter#comments</comments>
		<pubDate>Wed, 05 Aug 2009 11:50:22 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Titanium]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=283</guid>
		<description><![CDATA[Over the last few weeks, I have been discussing the idea of community evangelism with folks at Appcelerator. It was quite clear from the discussions which I had with Jeff Haynie (CEO) and Scott Schwarzoff (VP &#8211; Marketing) that Appcelerator is all set to recognize the developers and community who leverage their Titanium platform and [...]]]></description>
			<content:encoded><![CDATA[<p><div id="attachment_290" class="wp-caption alignleft" style="width: 130px"><a href="http://www.thepixelcode.com/wp-content/uploads/2009/08/appu-india.png"><img src="http://www.thepixelcode.com/wp-content/uploads/2009/08/appu-india.png" alt="Appcelerator TUG India" title="Appcelerator TUG India" width="120" height="92" class="size-full wp-image-290" /></a><p class="wp-caption-text">Appcelerator TUG India</p></div> Over the last few weeks, I have been discussing the idea of community evangelism with folks at Appcelerator. It was quite clear from the discussions which I had with Jeff Haynie (CEO) and Scott Schwarzoff (VP &#8211; Marketing) that Appcelerator is all set to recognize the developers and community who leverage their Titanium platform and help them tune it according to the developer&#8217;s need. India, as a country has a large number of web developers, and my intention to get involved in discussions with Appcelerator was due to two reasons:</p>
<p>1. Firstly the Titanium platform is amazing, my first impression about it was, it can truly build Rich Unified Applications (RUA), though the hardware coverage is not that exhaustive but with insights from Appcelerator, seems like the next mobile platform they intend to cover can be BlackBerry. Also what is impressive is that within last 6 months, Appcelerator has extended Titanium support for 6 platforms (Windows, Mac, Linux, Web, iPhone and Android). </p>
<p>2. Secondly, as the web developer community in India is huge, and if they are provided with right support from Appcelerator, I am sure the Titanium platform can be put to use and build amazing social, enterprise and collaborative applications.</p>
<p>With that being said, feel free to join the Appcelerator Titanium User Group (TUG) India <a href="http://groups.google.co.in/group/tug-india"><strong>here</strong></a>. Learn and share your experiences with Titanium Platform, and if you require any further assistance, you can try to ping me (twitter or gmail) or reach out the Appcelerator team itself (over their IRC channel). We look forward to your participation and hope we build together an active community.</p>
<p>So lets connect and Code Strong.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/titanium/rolling-out-appcelerator-tug-india-chapter/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WoW Titanium !!</title>
		<link>http://www.thepixelcode.com/development/titanium/wow-titanium</link>
		<comments>http://www.thepixelcode.com/development/titanium/wow-titanium#comments</comments>
		<pubDate>Wed, 15 Jul 2009 16:48:04 +0000</pubDate>
		<dc:creator>Mohammed Khan</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Titanium]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://www.thepixelcode.com/?p=259</guid>
		<description><![CDATA[&#8220;What a day !!&#8221; was all I said yesterday when I was done testing the Appcelerator&#8217;s Titanium Platform for desktop and mobile. Also what made the whole engagement with platform exciting was, connecting with the people at Appcelerator, right from CEO (via Twitter) to Platform Lead (via IRC), these guys were easily accessible and made [...]]]></description>
			<content:encoded><![CDATA[<p>&#8220;What a day !!&#8221; was all I said yesterday when I was done testing the Appcelerator&#8217;s Titanium Platform for desktop and mobile. Also what made the whole engagement with platform exciting was, connecting with the people at Appcelerator, right from <strong>CEO</strong> (via Twitter) to <strong>Platform Lead</strong> (via IRC), these guys were easily accessible and made sure that a new developer like me gets the right introduced to the platform and all my doubts about the platform capabilities are cleared off. This speaks a lot about the leadership that prevails within the Appcelerator. Hats off to Jeff Haynie (CEO at Appcelerator), I am sure his journey from Atlanta to Mountain View has transformed the company to be more innovative. And even when you get started with Titanium, you will share the same opinion about Appecelrator.</p>
<div id="attachment_264" class="wp-caption alignnone" style="width: 310px"><a href="http://www.thepixelcode.com/wp-content/uploads/2009/07/TitaniumMobileIphone.png"><img src="http://www.thepixelcode.com/wp-content/uploads/2009/07/TitaniumMobileIphone-300x187.png" alt="Kitchen Sink App on Iphone using Titanium Mobile" title="Kitchen Sink App on Iphone using Titanium Mobile" width="300" height="187" class="size-medium wp-image-264" /></a><p class="wp-caption-text">Kitchen Sink App on Iphone using Titanium Mobile</p></div>
<div id="attachment_265" class="wp-caption alignnone" style="width: 310px"><a href="http://www.thepixelcode.com/wp-content/uploads/2009/07/TitaniumMobileAndroid.png"><img src="http://www.thepixelcode.com/wp-content/uploads/2009/07/TitaniumMobileAndroid-300x187.png" alt="Kitchen Sink App on Android using Titanium Mobile" title="Kitchen Sink App on Android using Titanium Mobile" width="300" height="187" class="size-medium wp-image-265" /></a><p class="wp-caption-text">Kitchen Sink App on Android using Titanium Mobile</p></div>
<p>For those of you who still don&#8217;t know what in the world Titanium is all about, then (no I am not gonna write about it here) visit their site <a href="http://www.appcelerator.com/"><strong>here</strong></a> and if you are familiar with other RIA development tools like Adobe AIR/Flex, Curl and WPF, you will understand what Titanium can do with simple JavaScript. In short its a rich web, desktop and mobile development tool using JavaScript. What&#8217;s unique about it is that using same JavaScript code you can package the app for deploying it on Web, Desktop (Mac, Win, Linux) and Mobile (iPhone &#038; Android). Isn&#8217;t that cool, and if you are a SI, I am sure it comes as blessing. No more writing code that is build differently for each platform. I am just wondering how would Enterprise computing would change with it (got to work on it) ?.</p>
<p>Also for ActionScript developers, it would be easy to adapt to Titanium platform as both ActionScript and JavaScript are based on the ECMAScript standards. In coming weeks I shall try to evaluate how Titanium can be fit for Enterprise solutions. Well for now, I think you should try out the platform yourself and think all about the possibilities of creating Rich Unified Applications. Go be a Titan !!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelcode.com/development/titanium/wow-titanium/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
