<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-9199136113033920789</id><updated>2011-12-23T02:17:24.142-08:00</updated><category term='future'/><category term='pictures'/><category term='technology'/><category term='Architecture'/><category term='Internet'/><category term='Rails'/><category term='startup'/><category term='IT strategy'/><category term='Mobile Convergence'/><category term='disruptions'/><category term='whitepaper'/><category term='Integration'/><category term='Apple'/><category term='SOA'/><category term='Web 2.0'/><category term='Microsoft Surface'/><category term='RIA'/><category term='Google'/><category term='SDK'/><category term='Enterprise Search'/><category term='misconceptions'/><category term='SaaS'/><category term='Mashup'/><category term='web album'/><category term='iPhone'/><category term='RubyForge'/><category term='Referential Integrity'/><category term='Ruby'/><category term='innovation'/><category term='Collaboration'/><category term='Social Graph'/><category term='Social Bookmarking'/><category term='project management'/><category term='Rails 2.0'/><category term='Enterprise 2.0'/><category term='Miscellaneous'/><category term='Ruby on Rails'/><category term='digital art'/><category term='Google Gears'/><category term='data'/><category term='agnostic'/><category term='Facebook'/><category term='iPod Touch'/><category term='Scalability'/><title type='text'>Web 2.x Blog</title><subtitle type='html'>Web 2.x Blog - The rant of an evangelistic Web 2.0 technologist</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>47</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-3032697290007155645</id><published>2008-04-04T13:55:00.000-07:00</published><updated>2008-04-03T20:13:05.286-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>The Enterprise 2.0 Octopus</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ZTSRxQAeAu4/R_WaMl1acbI/AAAAAAAABZw/sy2l9eYEjYg/s1600-h/enterpriseocto.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_ZTSRxQAeAu4/R_WaMl1acbI/AAAAAAAABZw/sy2l9eYEjYg/s320/enterpriseocto.jpg" alt="" id="BLOGGER_PHOTO_ID_5185220087092244914" border="0" /&gt;&lt;/a&gt;I like to refer you to a blog post by &lt;a href="http://gobigalways.com/the-enterprise-octopus/"&gt;Sam Lawrence,&lt;/a&gt; CMO of &lt;a href="http://www.jivesoftware.com/"&gt;Jive Software&lt;/a&gt;. I reckon the cute red octopus in his blog post is a perfectly good analogy to reflect the current state of information collaboration landscape in a company.&lt;br /&gt;&lt;br /&gt;As an Enterprise 2.0 evangelist, I am constantly on the look out for ways I could best explain this to a client. There are a lot of mix-mash regarding what Web 2.0 and Enterprise 2.0 is really about.&lt;br /&gt;&lt;br /&gt;I guess the biggest challenge is that most corporations these days understand collaboration perhaps a little differently from what Enterprise 2.0 is preaching. The following quote, taken from the great book of &lt;a href="http://www.wikinomics.com/"&gt;WIKINOMICS&lt;/a&gt;, attributed to Google CEO Eric Schmidt, could not elaborate the point any better :-&lt;br /&gt;&lt;blockquote&gt;"When you say 'collaboration', the average forty-five-year-old thinks they know what you're talking about- teams sitting down, having a nice conversation with nice objectives and a nice attitude. That's what collaboration means to most people."&lt;/blockquote&gt;&lt;br /&gt;In fact, I was having a very interesting chat about the word "tacit" with a client a while back. Tacit is a word commonly used in the Enterprise 2.0 world. While my comments are reserved in this blog post, it is nevertheless interesting to always find out the perception of different people on Web / Enterprise 2.0.&lt;br /&gt;&lt;br /&gt;I hope this red octopus will serve as a friendly introduction to Enterprise 2.0, and kudos to Sam for demonstrating this.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-3032697290007155645?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/3032697290007155645/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=3032697290007155645' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3032697290007155645'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3032697290007155645'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/04/enterprise-20-octopus.html' title='The Enterprise 2.0 Octopus'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ZTSRxQAeAu4/R_WaMl1acbI/AAAAAAAABZw/sy2l9eYEjYg/s72-c/enterpriseocto.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8310766951893927746</id><published>2008-03-29T22:00:00.000-07:00</published><updated>2008-03-29T04:00:58.123-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Miscellaneous'/><title type='text'>Congratulations, Paul &amp; Grace !!!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ZTSRxQAeAu4/R-4gbV1acZI/AAAAAAAABYs/jkthFK29OJY/s1600-h/29032008347.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_ZTSRxQAeAu4/R-4gbV1acZI/AAAAAAAABYs/jkthFK29OJY/s400/29032008347.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5183115875239752082" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;I like to dedicate this blog post to my best mate, Paul Wong [pictured above], who tied the knot today.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Like me, Paul is also a nut with emerging trends, albeit focused in the BI domain. Paul was one of the originator in coming out with the idea to expose analytics via dynamic queries ~a.l.a Facebook style in applications. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;He has since moved on to another firm, and I will greatly miss having an opportunity to work with him. I hope to have an avenue to work together with him again some time in the future.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Congratulations mate, I am really proud of you  and may you live happily ever after with Grace !!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;PS: The picture above does not depict the real life job of Paul. In reality, he develops/sells BI solutions, rather than tickets to the Ferris Wheel. &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8310766951893927746?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8310766951893927746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8310766951893927746' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8310766951893927746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8310766951893927746'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/03/congratulations-paul-grace.html' title='Congratulations, Paul &amp; Grace !!!'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ZTSRxQAeAu4/R-4gbV1acZI/AAAAAAAABYs/jkthFK29OJY/s72-c/29032008347.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-4019965401386758036</id><published>2008-03-25T10:28:00.000-07:00</published><updated>2008-03-25T03:19:51.403-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPod Touch'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Finally....iPhone SDK</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ZTSRxQAeAu4/R-jRvV1acWI/AAAAAAAABYU/a1qQWIEzth4/s1600-h/create_moveme.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_ZTSRxQAeAu4/R-jRvV1acWI/AAAAAAAABYU/a1qQWIEzth4/s320/create_moveme.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5181621982534988130" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Back &lt;a href="http://web2xblog.blogspot.com/search/label/iPhone"&gt;last year&lt;/a&gt;, I have bragged about the iPhone/iTouch SDK. &lt;span style="font-weight: bold;"&gt;Today&lt;/span&gt;, I have downloaded the iPhone SDK (that's clocked in at 2.10 GIG !!!! ).&lt;br /&gt;&lt;br /&gt;I have seen and experienced a lot of Web 2.0 applications that have been re-designed just for the iPhone (or iTouch). Twitter has made its debut with an iPhone version, and so is Google GMail.&lt;br /&gt;Meebo has a iPhone interface that I have used religiously while chatting with my friends lazing on the couch !&lt;br /&gt;&lt;br /&gt;Software development for the iPhone seems to get easier by the day. A tutorial by AkitaoRails has shown &lt;a href="http://web2xblog.blogspot.com/2008/02/build-your-restful-weblog-in-ror-in-30.html"&gt;how easy it is&lt;/a&gt; to create Web Applications for Rails.&lt;br /&gt;&lt;br /&gt;Software monoliths like IBM has even supported the iPhone openly, as you &lt;a href="http://www.ipodobserver.com/story/34430"&gt;can read here.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Having read about the power given to developers through the SDK, I have a very enthusiastic feel about the potential of the iPhone in the corporate mobility market. The mobility market thus far only offers good email integration, and minor clunky integration with backend systems such as SAP.&lt;br /&gt;&lt;br /&gt;IBM will perhaps spearhead this initiative, and the outcome of developing/integrating Lotus Notes with the iPhone will be interesting to watch!!! It will perhaps be a gauge-ometer for other competitors to assess the potential of the iPhone.&lt;br /&gt;&lt;br /&gt;I won't be waiting though. Being a Web 2.0 technologist, I will be toying around with this technology in the coming months, and see how far I can get with the iPhone.&lt;br /&gt;&lt;br /&gt;Perhaps learning Objective-C (yet another language) is the biggest hurdle for me... It looks very similar to C, so should be quite fun !!!&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-4019965401386758036?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/4019965401386758036/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=4019965401386758036' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/4019965401386758036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/4019965401386758036'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/03/finallyiphone-sdk.html' title='Finally....iPhone SDK'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ZTSRxQAeAu4/R-jRvV1acWI/AAAAAAAABYU/a1qQWIEzth4/s72-c/create_moveme.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-3195071429536689588</id><published>2008-03-23T11:18:00.000-07:00</published><updated>2008-03-22T17:21:16.662-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='project management'/><category scheme='http://www.blogger.com/atom/ns#' term='Collaboration'/><title type='text'>SCRUM - Agile Project Management</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.methodsandtools.com/archive/scrum1.gif"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px;" src="http://www.methodsandtools.com/archive/scrum1.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;I would like to redirect you to &lt;a href="http://www.socialglass.com/archives/204"&gt;a blog post by Jeremy Thomas&lt;/a&gt; on SCRUM.&lt;div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Unlike the traditional waterfall model in project management (where milestones, scopes are set), SCRUM offers a collaborative methodology for the software teams to adapt and manage changes in a AGILE way. With clients getting more demanding each day, this can have a huge impact on requirements and scopes (and ultimately, the lives of those good people hacking away to get the product/solution done). The BEST thing is, this can be changing on a daily basis.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;The traditional model of most consulting or SI firms in managing changes are through the submission of "Change Requests", where Impact Assessments are normally done in order to envisage the Order of Magnitude (or cost, for non-consulting folks) for the CRs. Upon approval, the standard SDLC kicks off. The problem with this model: Agility is severely lacking.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;With clients getting ever more demanding, and the market becoming more competitive, the winners are those who can most satisfy the clients. The fall apart comes in, as Jeremy pointed out in his slides, when the communication between the top and bottom of the food chain breaks in managing change. (Developers Vs Project Managers Vs Business Analysts)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Survival of the Fittest no longer holds in such environment, but rather "Survival of the Most Adaptive". Managing change is imperative, and most importantly, must be done in a Agile way.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A few good outcomes from adapting such methodology:-&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Better product, as the functionality are more closely aligned with the demands. No point slaving on a product that has agreed requirements, but no one uses.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;More client satisfaction. Clients love consultants who listen.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;A collaborative approach means a closer team, and that means improved productivity,and overall satisfaction for the team.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt; &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-3195071429536689588?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/3195071429536689588/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=3195071429536689588' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3195071429536689588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3195071429536689588'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/03/scrum-agile-project-management.html' title='SCRUM - Agile Project Management'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8408509578560194575</id><published>2008-03-18T19:50:00.000-07:00</published><updated>2008-03-18T01:50:13.471-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><title type='text'>Is Web 2.0 turning into a red ocean ?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lifeboat.com/images/blue.ocean.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px;" src="http://lifeboat.com/images/blue.ocean.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;A thought recently came to me: Is Web 2.0 turning into a&lt;span style="color: rgb(255, 0, 0);"&gt; red ocean &lt;/span&gt;?&lt;br /&gt;&lt;br /&gt;For those who are unfamiliar with the term, red ocean is a term used in W. Chan Kim and Renée Mauborgne's hit book "Blue Ocean Strategy" to depict a highly contested market space. It is published and used in Harvard Business School as a reference textbook. Below is a quote description of a red ocean.&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;In the red oceans, industry boundaries are defined and accepted, and the competitive rules of the game are known. Here companies try to outperform their rivals to grab a greater share of product or service demand. As the market space gets crowded, prospects for profits and growth are reduced. Products become commodities or niche, and cutthroat competition turns the red ocean bloody. Hence, the term red oceans.&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;The above term pretty much sums up what we see in the industry today, with all the competing products in the marketplace. The link is &lt;a href="http://en.wikipedia.org/wiki/Blue_Ocean_Strategy"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;A &lt;span style="color: rgb(0, 0, 153);"&gt;Blue Ocean &lt;span style="color: rgb(0, 0, 0);"&gt;is in contrast to &lt;span style="color: rgb(255, 0, 0);"&gt;Red Ocean&lt;/span&gt;. It represents a uncontested market space. It is untainted by competition, and hence demand is being created rather than fought over. There's basically no competition as the rules of the games are to be set by the players.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;When Web 2.0 was coined, no one really know what it is. Then you started hearing about Facebook, NING, Google Orkut, MySpace. Then you started seeing the social elements being brought out to consumer tools such as social bookmarking, social website discovery/sharing (StumbledUpon). Today, you can see major vendors started "Web-2.0-ing" their applications (Oracle CRM, IBM's Web 2.0 Domino Suite, etc etc). There are tons of Web 2.0 startups that flow from Silicon Valley in the US and parts of the world, offering often very similar product sets with very little differentiation.&lt;br /&gt;&lt;br /&gt;With the spike in the surge of Web 2.0 applications, it's getting harder and harder to differentiate between products. Most importantly, where is the $$$$$ in a Web 2.0 startup?  Will an over-investment/stimulation in  mediocre startup create another bubble in the industry? Too much supply with no real demand can be problematic.&lt;br /&gt;&lt;br /&gt;What are  your thoughts?&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8408509578560194575?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8408509578560194575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8408509578560194575' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8408509578560194575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8408509578560194575'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/03/is-web-20-turning-into-red-ocean.html' title='Is Web 2.0 turning into a red ocean ?'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-806801428351449039</id><published>2008-03-18T19:20:00.000-07:00</published><updated>2008-03-18T01:24:38.369-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='IT strategy'/><title type='text'>Ruby on Rails == Extremely Short Time to Market</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://images.odeo.com/4/2/5/rails-podcast.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 98px; height: 125px;" src="http://images.odeo.com/4/2/5/rails-podcast.png" alt="" border="0" /&gt;&lt;/a&gt;I have been involved with an resource management development project (together with 2 of my other colleagues,we spawned the project collectively) in my company lately. Perhaps the most distinct part is that the development team is not made up of hardcore programmers. While coming from a technical education background (computer science, information systems), the majority of them have been in job descriptions that are not very technical in nature (think of your ordinary business analysts or functional specialists).&lt;br /&gt;&lt;br /&gt;The project started off with a discussion of using Java/J2EE, and having experienced the richness of RoR, I have set the direction for the team to use Ruby on Rails instead, with the promise of the following:-&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Easy to learn (only need to learn one framework)&lt;/li&gt;&lt;li&gt;Faster delivery of product&lt;/li&gt;&lt;li&gt;Agile programming&lt;/li&gt;&lt;li&gt;FUN !&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;*This is not another J2EE Vs RoR debate.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;At the initial development planning, everyone is worried sick that how on earth we are going to be delivering something in a short period of time that we promised to the company. The requirements itself almost sounded like you need to have a few years of development experience (well, in a typicall J2EE world). Here's the result thus far:-&lt;br /&gt;&lt;ol&gt;&lt;li&gt;In week 1 and 2, the team took the time to learn Ruby on Rails from scratch (myself included, having the opportunity to develop a blog and social bookmarking engine before). Some of us doesn't even have any industry programming experience.&lt;/li&gt;&lt;li&gt;In week 3, things are slowly taking shape. Basic interface with functionality is built in.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;In week 4, we have managed to pump out more code and the application is seamingly usable.&lt;/li&gt;&lt;li&gt;In week 5, we demo-ed the prototype, and exceeded the original expectation made with the stakeholders.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;While there's more to be done, the team has had more confidence than before in delivering this. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The lesson from this is, that with all competing startups out there, marketing similar ideas, the &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;"time to market" &lt;/span&gt;is what differentiates most of these startups competing in a seemingly Web 2.0 red ocean. Leveraging a technology like Ruby on Rails may well bridge that gap in the process!&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-806801428351449039?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/806801428351449039/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=806801428351449039' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/806801428351449039'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/806801428351449039'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/03/ruby-on-rails-extremely-short-time-to.html' title='Ruby on Rails == Extremely Short Time to Market'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-7736854986527708460</id><published>2008-03-11T21:19:00.000-07:00</published><updated>2008-03-11T03:19:33.957-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='RIA'/><title type='text'>Why RIA is good for you</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://blogs.zdnet.com/Stewart/images/Fx_small.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px;" src="http://blogs.zdnet.com/Stewart/images/Fx_small.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://blogs.zdnet.com/Stewart/images/Fx_small.png"&gt;&lt;/a&gt;&lt;br /&gt;&lt;im&gt;&lt;div&gt;I have posted about RIAs (Rich Internet Application) in the past, and have actually used one myself in a real life development effort ( I created a issue tracking system using Adobe Flex and Ruby on Rails). &lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The topic resurfaced recently in a lunch meeting with Jay Jenkins (Jay, you need a blog so I can do a &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;a href&lt;/span&gt; on you), BPM Practice Lead of &lt;a href="http://www.renewtek.com/"&gt;Renewtek&lt;/a&gt;. Jay was describing how his company is currently experimenting and building the next-generation of interfaces for the various vendor platform using Adobe Flex and Air. The description was truly amazing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Having toyed around with Adobe Flex before, I can see where RIA technologies will bring forward a consumer's experience of a product. Below are a few benefits that I personally experienced when developing one of the said demo:-&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;1)  RIA is truly easy to implement&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Like the foundation of UI component-based modelling (such as Mozilla's XUL and JSF component UI), RIA technologies such as Adobe Flex and OpenLazzlo are based on XML. Each XML component has a parent to child relationship. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The ease of implementation that brings rich result means : &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Shorter Time to Market&lt;/span&gt; for your products.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;2) Gone are the clunkiness of Javascript, CSS and HTML&lt;/span&gt;&lt;/div&gt;&lt;div&gt;There's only so much browser rendering can do with HTML, JavaScript and CSS. The core problem of this (and due to the different browser rendering technologies) is that you get unconsistent results across browsers, even with your same code. For instance, the XMLHttpRequest (the foundation of AJAX) is done differently on IE and Mozilla. At best, the animation attempted with such technologies are sub-par. Vector graphics is also super limited (if not possible) using such technologies. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;With RIA, a runtime is normally installed as a plugin to the browser. The byte code compiled (such as Flash's SWF) are then executed on these runtimes. These runtimes encapsulates all the rendering needs that a browser could not possibly deliver, and hence you have your life-like browser rendering experiences with technologies such as Microsoft SilverLight. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This translates to your : &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;EASE of USE&lt;/span&gt; in your software products. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;3) XML all the way&lt;/span&gt;&lt;/div&gt;&lt;div&gt;With XML being used in the internet as a standard these days for exchanging information, many applications have started exposing data in XML to the frontend UI layer. The bug tracker I wrote basically takes in a chunk of the XML threw upon it by the Ruby on Rails backend, and then renders the bug and issue tracking in the frontend in a table format. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Most RIA technologies such as Adobe Flex even allows object remoting using their Flex Data Services in certain cases. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What this means to the average developer: Allows &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;flexibility&lt;/span&gt; in parsing information from the back-end.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So what does this means to the average user: &lt;/div&gt;&lt;div&gt;1) Easy to use web application&lt;/div&gt;&lt;div&gt;2) Rich content extending beyond those rendered by HTML, Javascript, CSS&lt;/div&gt;&lt;div&gt;3) Beautiful vector graphics processing (such as Silverlight) enhances your browsing experience&lt;/div&gt;&lt;div&gt;4) Applications that are not clunky&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Having said all this, I am a full RIA supporter... now if only Adobe starts making their FDS (Flex Data Service) free,,,or at least more affordable..........&lt;/div&gt;&lt;/im&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-7736854986527708460?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/7736854986527708460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=7736854986527708460' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/7736854986527708460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/7736854986527708460'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/03/how-ria-may-change-your-internet.html' title='Why RIA is good for you'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-1003580808917815166</id><published>2008-03-06T14:45:00.000-08:00</published><updated>2008-03-05T19:59:09.357-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='startup'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><title type='text'>Web 2.0 Startup</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ZTSRxQAeAu4/R89jF3hbglI/AAAAAAAABX0/F_V8s7qHpuo/s1600-h/Web+2.0+startup.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_ZTSRxQAeAu4/R89jF3hbglI/AAAAAAAABX0/F_V8s7qHpuo/s400/Web+2.0+startup.png" alt="" id="BLOGGER_PHOTO_ID_5174463449326649938" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I recently read an article in &lt;a href="http://www.brw.com.au/"&gt;BRW &lt;/a&gt;interviewing a number of "technopreneurs" in the Web 2.0 scene. The interview explored a number of things that I have always thought about when tinkling around the edges of exploring the option of a young web startup.  Below are some of the points I find interesting (and reinforcing) :-&lt;br /&gt;&lt;br /&gt;&lt;u&gt;1)  Web 2.0 startup is low cost (reinforced)&lt;br /&gt;&lt;/u&gt;Web 2.0 start ups are low cost. All you need are good brains, good idea, preservation and dedication.&lt;br /&gt;&lt;br /&gt;The guys at &lt;a href="http://www.rememberthemilk.com/"&gt;RTM (Remember the Milk)&lt;/a&gt; spent a 18 - 20 hour day dedicated to their eventual success.&lt;br /&gt;&lt;br /&gt;In short, you don't need a lot of seed capital to do a Web 2.0 startup. The cost = time.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;2) Web 2.0 startups are global (reinforced)&lt;/u&gt;&lt;br /&gt;Web 2.0 startups are not geographically-constrained. Everyone subscribing to a ISP will have access to the NET. The only differentiator is the bandwidth for access. Web 2.0 startups penetrate the globe, and reach into the hands of those within reach of the internet.&lt;br /&gt;&lt;br /&gt;37 Signals for example, with their awesome product &lt;a href="http://www.basecamphq.com/"&gt;Basecamp&lt;/a&gt;, offers their product and market it internationally (although priced with USD).  With the advancement in electronic international currency trading, this means a startup in Malaysia can price their product in Malaysian Ringgits, or Indian Rupees for an Indian startup while maintaining that global audience reach.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;3) Don't worry about the business model (INTERESTING)&lt;/u&gt;&lt;br /&gt;I have been thinking a lot about business model whenever a Web 2.0 startup idea sprung to my mind. Unfortunately, they have all not been too satisfactory!!! $ do not flow into a business with a "bad" business model, or the lack of one for traditional businesses.&lt;br /&gt;&lt;br /&gt;Well, according to the RTM guys, the lack of one shouldn't convince you not to do the startup!&lt;br /&gt;&lt;br /&gt;With the minimal costs involved in a Web 2.0 startup, if it fails, the worst case would just be a "Good Lessons Learnt". What's important is to &lt;span style="font-weight: bold;"&gt;figure and build a user base&lt;/span&gt;, and the $$$ idea will flow!!! Not a bad thought, eh ?&lt;br /&gt;&lt;br /&gt;Talk about emergent, rather than prescribed structure for evolvement of a business model (the basis for Web 2.0). In short, focus on customer, and then the money.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;4) Keep your day job (reinforced)&lt;/u&gt;&lt;br /&gt;Most of the technopreneurs all kept their day job while doing a startup on the side. Once their startup kicks off and is becoming successful, they will leave their job in order to fully focus on it. That having said, it is still not impossible to keep the day job while building on the startup (unless your platform is reaching the likes of Facebook...).&lt;br /&gt;&lt;br /&gt;&lt;u&gt;5) Try to solve a vertical problem, rather than horizontal&lt;/u&gt;&lt;br /&gt;A lot of startup are focused around a vertical problem, rather than horizontal. Apologies for abusing the terms, vertical means a specialized industry, or domain-specific problems if applied within this context. Horizontal means a wider audience.&lt;br /&gt;&lt;br /&gt;For example, RTM acts as a personal online diary for users, while Basecamp solves the need for project management and collaboration for projects with disparate resources.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In summary, the article reinforced a lot of my thoughts and suspicious about running a successful web startup. It was definitely worth the reading.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-1003580808917815166?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/1003580808917815166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=1003580808917815166' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1003580808917815166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1003580808917815166'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/03/web-20-startup.html' title='Web 2.0 Startup'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ZTSRxQAeAu4/R89jF3hbglI/AAAAAAAABX0/F_V8s7qHpuo/s72-c/Web+2.0+startup.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-3856467205218892200</id><published>2008-02-24T22:42:00.000-08:00</published><updated>2008-02-24T03:53:55.116-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Social Graph'/><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>Solving your enterprise relationship woes with a Social Graph</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://geekandpoke.typepad.com/geekandpoke/images/2007/12/22/tw2007p1c.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://geekandpoke.typepad.com/geekandpoke/images/2007/12/22/tw2007p1c.jpg" alt="" border="0" /&gt;&lt;/a&gt;The word 'social graph' is probably one of the most overrated or underrated word in the Web 2.0 world. Different people see the value of social graphs differently. Personally, I think it is a great concept in the enterprise. In fact, in a recent Resource Management project discussion, I have briefly discussed the benefits of a social graph in resource management &lt;a href="http://synergizeit.blogspot.com/2008/02/social-graph-and-resource-management.html"&gt;with a mate of mine&lt;/a&gt;. Let me explain.&lt;br /&gt;&lt;br /&gt;1) Social Graph is useful in an enterprise, because it reveals and connects people. Social Graph exposes the "&lt;a href="http://en.wikipedia.org/wiki/Weak_tie"&gt;weak tie&lt;/a&gt;" of a person. This is the basis for a person to extend/expand his/her relationship circle in a social network. Facebook works on this basis.&lt;br /&gt;&lt;br /&gt;2) Social Graph can be used in relationship analysis to predict employee movements, or software market movements. The relationship analysis can be used to analyze questions such as &lt;blockquote&gt;&lt;span style="font-size:130%;"&gt;"Who is the next employee likely to churn from the company, given that employee A and B's two bosses and the majority of the people he/she is connected to has left the company?"&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;Another example: The image below depicts the social graph of the various platforms out there.&lt;br /&gt;&lt;img style="width: 485px; height: 334px;" src="http://farm3.static.flickr.com/2248/2105757707_99dec8729a.jpg" align="middle" /&gt;&lt;br /&gt;&lt;br /&gt;The information above could help a software monolith in planning its M&amp;amp;A (Mergers &amp;amp; Acquisitions) activities, or their strategies to strive on competitive advantages. It also gives a holistic view of the different component makeup of the social network platforms (just like how a general get map of where all the troops are).&lt;br /&gt;&lt;br /&gt;3) A Social Graph can open up new ways for accessing/assessing information. For example, when person A clicks on the node of person B (who is connected to person A via a vertical), the meta-data/personal information on person B may be accessed. This is particularly useful in the context of resource management, as it allows "quick scans" of a person to access the person's suitability for a role.&lt;br /&gt;&lt;br /&gt;4) many more...which I can't contain all in this blog.&lt;br /&gt;&lt;br /&gt;So what does all the above means?&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;Efficiency in establishing contact -&gt;  closing down of relationship barriers  -&gt; employees are more connected -&gt; efficient and effective enterprise in day to day operations -&gt; &lt;span style="font-weight: bold;"&gt;Happy Enterprise.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If your enterprise currently uses a Social Graph in one way or another, do share your stories here!!!!&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-3856467205218892200?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/3856467205218892200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=3856467205218892200' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3856467205218892200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3856467205218892200'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/02/why-does-enterprise-need-social-graph.html' title='Solving your enterprise relationship woes with a Social Graph'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2248/2105757707_99dec8729a_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-3444175269475303224</id><published>2008-02-24T21:45:00.000-08:00</published><updated>2008-02-24T02:46:59.599-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rails 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Ruby on Rails'/><title type='text'>Build your RESTful Weblog in RoR in 30 minutes</title><content type='html'>&lt;object type="application/x-shockwave-flash" data="http://www.vimeo.com/moogaloop.swf?clip_id=425800&amp;amp;server=www.vimeo.com&amp;amp;fullscreen=1&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=" height="265" width="400"&gt;    &lt;param name="quality" value="best"&gt;    &lt;param name="allowfullscreen" value="true"&gt;    &lt;param name="scale" value="showAll"&gt;    &lt;param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=425800&amp;amp;server=www.vimeo.com&amp;amp;fullscreen=1&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color="&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://www.vimeo.com/425800/l:embed_425800"&gt;The First Rails 2.0 Screencast&lt;/a&gt; from &lt;a href="http://www.vimeo.com/user314223/l:embed_425800"&gt;akitaonrails&lt;/a&gt; on &lt;a href="http://vimeo.com/l:embed_425800"&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Remember that original "Building a Blog in Ruby on Rails in 15 minutes"  screencast that captured the whole emerging RoR community (myself included) ??? The very one that got me started in Rails...sweet memories !!!!&lt;br /&gt;&lt;br /&gt;Here's another one, but is created in Rails 2.0, and it is RESTful!!!! Apparently it is also the first one for Rails 2.0.&lt;br /&gt;&lt;br /&gt;I quickly skimmed through the video, and I thought it was awesome. It covered the basics of Rails 2.0, from your scaffolding to your Models, and then all the way to custom named routes and creating a custom interface for your iPhone !!!!!&lt;br /&gt;&lt;br /&gt;Hope you enjoy it.&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-3444175269475303224?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/3444175269475303224/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=3444175269475303224' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3444175269475303224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3444175269475303224'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/02/build-your-restful-weblog-in-ror-in-30.html' title='Build your RESTful Weblog in RoR in 30 minutes'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-5829206992978573629</id><published>2008-02-20T20:57:00.000-08:00</published><updated>2008-02-21T17:11:12.399-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>Enterprise 2.0 Slide Pack</title><content type='html'>&lt;div style="width: 425px; text-align: left;" id="__ss_274796"&gt;&lt;object style="margin: 0px;" height="355" width="425"&gt;&lt;param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=enterprise-20-slide-share-1203569774933385-4"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=enterprise-20-slide-share-1203569774933385-4" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;"&gt;&lt;a href="http://www.slideshare.net/?src=embed"&gt;&lt;img src="http://static.slideshare.net/swf/logo_embd.png" style="border: 0px none ; margin-bottom: -5px;" alt="SlideShare" /&gt;&lt;/a&gt; | &lt;a href="http://www.slideshare.net/jymloke/enterprise-20-slide-share?src=embed" title="View 'Enterprise 2.0 Slide Share' on SlideShare"&gt;View&lt;/a&gt; | &lt;a href="http://www.slideshare.net/upload?src=embed"&gt;Upload your own&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;I recently did a presentation on Enterprise 2.0, and the topic seems to have generated good interest in the listening audience. Most of the audience seem to understand the topic after the presentation, so I thought I would share the slide with the wider community of interest within the Enterprise 2.0 space.&lt;br /&gt;&lt;br /&gt;Hopefully this slide will give you a good debrief on what Enterprise 2.0 is all about. As usual, feel free to drop any comments regarding the pack.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-5829206992978573629?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/5829206992978573629/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=5829206992978573629' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/5829206992978573629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/5829206992978573629'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/02/enteprise-20-slide-pack.html' title='Enterprise 2.0 Slide Pack'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-2102031601812374676</id><published>2008-02-02T20:05:00.000-08:00</published><updated>2008-02-02T01:09:30.470-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rails 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><title type='text'>Scaffolding Rails 2.0 Style</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_ZTSRxQAeAu4/R6QuAHYVg0I/AAAAAAAABXE/ewSjQ1Ra0qU/s400/Picture+3.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5162301652389430082" /&gt;&lt;/div&gt;&lt;br /&gt;Amidst all the recent non-technical work that I have been doing, I have managed to plug myself back to the wonderful world of Ruby on Rails.  I have written a number of posts regarding my experience with Rails 1.0 before in my blogs. Having made a recent decision to focus my engineering skills in Rails 2.0, I thought it would be a good time to continue that Rails 1.0 legacy that I left off. &lt;div&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ZTSRxQAeAu4/R6Qqq3YVgwI/AAAAAAAABWk/-lxUbHfmGn4/s1600-h/scaffold.jpg"&gt;&lt;br /&gt;&lt;/a&gt;The first thing that caught me while doing Rails 2.0 was &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Scaffolding&lt;/span&gt;. Being as lazy as I am when it comes to programming, I loved scaffolding to bits in Rails 1.0. I like the idea of being provided with scaffolds and build the software inside out. &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I was surprised when my usual&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0); "&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 102);"&gt;?&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 153, 0); "&gt;script/generate scaffold model_name controller_name actions&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;did not work. It turned out that the new way to do scaffolding in Rails 2.0 is the following way :-&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0); "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 153, 0); "&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0); "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 102);"&gt;?&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 153, 0);"&gt;script/generate scaffold modelName field_name:field_type&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It's that simple!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;For example,&lt;span class="Apple-style-span" style="color: rgb(0, 153, 0);"&gt; &lt;/span&gt;&lt;span class="Apple-style-span" style=""&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 102);"&gt;?&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 153, 0);"&gt;script/generate scaffold User name:string role:string &lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;will generate a &lt;span class="Apple-style-span" style=""&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 153);"&gt;User&lt;/span&gt;&lt;/span&gt; model with the attribute of &lt;span class="Apple-style-span" style=""&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 153);"&gt;Name&lt;/span&gt;&lt;/span&gt; and &lt;span class="Apple-style-span" style=""&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 153);"&gt;Role&lt;/span&gt;&lt;/span&gt; in it. The screen shot below shows the physical database model created after migration ( &lt;span class="Apple-style-span" style=""&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 102);"&gt;?&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 153, 0);"&gt;db:migrate&lt;/span&gt;) is done. It's filled with stub data created with the scaffolded interface.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;img src="http://1.bp.blogspot.com/_ZTSRxQAeAu4/R6QvuXYVg1I/AAAAAAAABXM/0bl0hUz42k4/s400/Picture+4.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5162303546470007634" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; " /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;That single line of command generates the usual CRUD operations associated with the model. Furthermore, scaffolding also creates the usual methods in the controller that responds to both conventional + &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;REST&lt;/span&gt; style information access!!! For instance, the below screenshot shows the XML returned when I did a /users/1.xml in Firefox.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_ZTSRxQAeAu4/R6Qti3YVgzI/AAAAAAAABW8/1cL8Nef7Zw0/s400/Picture+1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5162301149878256434" /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;I will be playing more and more with Rails 2.0 in the coming days.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Stay tuned!!!&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-2102031601812374676?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/2102031601812374676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=2102031601812374676' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2102031601812374676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2102031601812374676'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/02/scaffolding-rails-20-style.html' title='Scaffolding Rails 2.0 Style'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ZTSRxQAeAu4/R6QuAHYVg0I/AAAAAAAABXE/ewSjQ1Ra0qU/s72-c/Picture+3.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-6181849789372233978</id><published>2008-01-30T14:18:00.000-08:00</published><updated>2008-01-30T14:29:16.983-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scalability'/><category scheme='http://www.blogger.com/atom/ns#' term='Ruby on Rails'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><title type='text'>Scalability with Ruby on Rails</title><content type='html'>Much have been said about the scalability of Ruby on Rails, given the amount of "magic" that it is providing to lazy programmers like myself.&lt;br /&gt;&lt;br /&gt;I have been asked numerous times about scalability when trying to preach Ruby on Rails as a technology of choice to build new web applications.&lt;br /&gt;&lt;span style="display: block;" id="formatbar_Buttons"&gt;&lt;span class="on down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;For those who have been seeking the answer, I would like to take this opportunity to point you to a blog written by &lt;a href="http://www.socialglass.com"&gt;Jeremy Thomas&lt;/a&gt; (whom I have made a number of references throughout my blog) on the issue.  In fact, I will directly paste this statement on RoR's ability to scale from the original creator, David Heinemeier.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;I’ve said it before, but it bears repeating: There’s nothing interesting about how Ruby on Rails scales. We’ve gone the easy route and merely followed what makes Yahoo!, LiveJournal, and other high-profile LAMP stacks scale high and mighty. Take state out of the application servers and push it to database/memcached/shared network drive (that’s the whole Shared Nothing thang). Use load balancers between your tiers, so you have load balancers -&gt; web servers -&gt; load balancers -&gt; app servers -&gt; load balancers -&gt; database/memcached/shared network drive servers. (Past the entry point, load balancers can just be software, like haproxy). In a setup like that, you can add almost any number of web and app servers without changing a thing.&lt;/span&gt;&lt;/blockquote&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Jeremy also made a very good point about the volume that will hit an Enterprise server Vs Consumer Web server. Read his &lt;a href="http://www.socialglass.com/archives/188"&gt;blog post here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-6181849789372233978?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/6181849789372233978/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=6181849789372233978' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/6181849789372233978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/6181849789372233978'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/01/scalability-with-ruby-on-rails.html' title='Scalability with Ruby on Rails'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8110949008792302219</id><published>2008-01-16T00:31:00.000-08:00</published><updated>2008-01-16T02:48:48.157-08:00</updated><title type='text'>Meebo Me Mates!!!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ZTSRxQAeAu4/R43ByxzP68I/AAAAAAAABVk/jUBEsGwV9jM/s1600-h/meebo-logo.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_ZTSRxQAeAu4/R43ByxzP68I/AAAAAAAABVk/jUBEsGwV9jM/s320/meebo-logo.gif" alt="" id="BLOGGER_PHOTO_ID_5155990226514996162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;I have embedded a Meebo widget in my blog ! You can try meebo-ing me. The widget is at the right hand side of the page! &lt;div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Btw, Meebo is an in-browser multiprotocol chat client. Personally, I call it a life saver. Saves me from having to install a thick client on my computer. Now everything can be done via a browser !!! (except P2P...)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can find them &lt;a href="http://www.meebo.com/"&gt;here.&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Have fun meebo-ing!! &lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8110949008792302219?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8110949008792302219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8110949008792302219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8110949008792302219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8110949008792302219'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/01/meebo-me-mates.html' title='Meebo Me Mates!!!'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ZTSRxQAeAu4/R43ByxzP68I/AAAAAAAABVk/jUBEsGwV9jM/s72-c/meebo-logo.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-4934908388415699591</id><published>2008-01-14T14:04:00.001-08:00</published><updated>2008-01-14T14:14:32.560-08:00</updated><title type='text'>Andrew McAfee Vs Tom Davenport debate</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ZTSRxQAeAu4/R4verRzP67I/AAAAAAAABVc/rPPosjwfJD8/s1600-h/debate.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_ZTSRxQAeAu4/R4verRzP67I/AAAAAAAABVc/rPPosjwfJD8/s400/debate.jpg" alt="" id="BLOGGER_PHOTO_ID_5155459033549761458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I would like to point you to an interesting debate on whether Enterprise 2.0 can truly transform an enterprise between two leading business academics.&lt;br /&gt;&lt;br /&gt;Below is a recorded mp3 link. Definitely worth checking out if you are into the Enterprise 2.0 space. &lt;a href="http://www.fastforwardblog.com/2008/01/11/recording-of-andrew-mcafee-and-tom-davenport-webinar-discussion/"&gt;MP3 Recording&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here's the link to &lt;a href="http://blog.hbs.edu/faculty/amcafee/"&gt;Andrew's blog, &lt;/a&gt;which I enjoyed reading a lot. It provides a lot of insightful and depth of thinking towards the topic.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-4934908388415699591?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/4934908388415699591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=4934908388415699591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/4934908388415699591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/4934908388415699591'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/01/andrew-mcafee-vs-tom-davenport-debate.html' title='Andrew McAfee Vs Tom Davenport debate'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ZTSRxQAeAu4/R4verRzP67I/AAAAAAAABVc/rPPosjwfJD8/s72-c/debate.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-480624603972418495</id><published>2008-01-12T09:56:00.000-08:00</published><updated>2008-01-11T15:34:10.872-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>Can Enterprise 2.0 really work ?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ZTSRxQAeAu4/R4fxJBzP66I/AAAAAAAABVU/SV_bNQ6XBTo/s1600-h/enterprise20costandroi.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_ZTSRxQAeAu4/R4fxJBzP66I/AAAAAAAABVU/SV_bNQ6XBTo/s400/enterprise20costandroi.gif" alt="" id="BLOGGER_PHOTO_ID_5154353435953327010" border="0" /&gt;&lt;/a&gt;I have been a strong proponent of Enterprise 2.0, and I thought, with the new year and all, I would take this opportunity to re-evaluate my position and study ideas and views that reside on the other side of the fence.&lt;br /&gt;&lt;br /&gt;In search of articles/blogs that spoke out against Enterprise 2.0, I came across an &lt;a href="http://discussionleader.hbsp.com/davenport/2007/03/why_enterprise_20_wont_transfo.html"&gt;old article&lt;/a&gt; by &lt;a href="http://www.tomdavenport.com/"&gt;Tom Davenport&lt;/a&gt; . In the article, Tom called "Enterprise 2.0" the "next small thing" and he argued that Enterprise 2.0 software and internet will not democratize or transform an organizational hierarchy alone. Below is a direct quote from Tom's article :-&lt;br /&gt;&lt;blockquote style="font-style: italic; color: rgb(0, 153, 0);"&gt;&lt;span style="font-size:100%;"&gt;The absence of participative technologies in the past is not the only reason that organizations and expertise are hierarchical. Enterprise 2.0 software and the Internet won't make organizational hierarchy and politics go away. They won't make the ideas of the front-line worker in corporations as influential as those of the CEO. Most of the barriers that prevent knowledge from flowing freely in organizations – power differentials, lack of trust, missing incentives, unsupportive cultures, and the general busyness of employees today – won't be addressed or substantially changed by technology alone. For a set of technologies to bring about such changes, they would have to be truly magical, and Enterprise 2.0 tools fall short of magic.&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;Tom hits a direct nail about the common traits that fall into a typical organization. Organizational hierarchies often hinders free flow of information due barriers.&lt;br /&gt;&lt;br /&gt;I would like to take this point further to stress that while Tom is right in pointing out Enterprise 2.0 software and tools lack that magical silver to transform an organization, it is actually not the software, but rather the culture that fosters participation and utilization of E2.0 software that will transform the organization. E2.0 softwares are just tools, and though it plays a big part, it is essentially useless without user participation.&lt;br /&gt;&lt;br /&gt;Being a proponent of Enterprise 2.0, I do not possess the utopian view that E2.0 is the silver bullet towards everything. Often, as pointed out in my other blog post about &lt;a href="http://web2xblog.blogspot.com/2007/07/misconceptions-on-web-20.html"&gt;Misconception about Web 2.0&lt;/a&gt;, Enterprise 2.0 is primarily about a set of philosophies and cultural changes, that when brought forward into organizational strategy &amp;amp; execution plan, can benefit the companies in terms of boosting innovation and staying ahead of the game. It is more about fostering &lt;span style="font-weight: bold;"&gt;tacit interactions&lt;/span&gt; between employees in the organization more than anything else. The McKinsey Quarterly, in their article "&lt;a href="http://www.mckinseyquarterly.com/Eight_business_technology_trends_to_watch_2080_abstract"&gt;8 Business Technology Trends to Watch&lt;/a&gt;" for example, has listed the following as some of the eight technology enabled trend to watch out for that will empower businesses:-&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Distributing Cocreation&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Using consumers as innovators&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Extracting more values from interactions &lt;/li&gt;&lt;/ol&gt;Enterprise 2.0 technologies provide the necessary technology enabler to foster the above trends within an enterprise. For example, a WIKI allows collective intelligence to be gathered within a firm. As the report puts it :-&lt;br /&gt;&lt;br /&gt;&lt;blockquote style="font-style: italic; color: rgb(0, 153, 0);"&gt;&lt;span style="font-size:100%;"&gt;As companies learn to use these tools, they will develop managerial innovations—smarter and faster ways for individuals and teams to create value through interactions—that will be difficult for their rivals to replicate.&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;For Enterprise 2.0 to work, every company will need "Champion users" in driving the cause of such systems to comprehend the success of the execution of E2.0 strategy in the firm. Champions are typically leaders that promote the use of such systems. Ideally, the champion will be someone from the top of the organizational hierarchy (not necessarily the C-levels, but managerial levels are perhaps the most effective in encouraging participation).&lt;br /&gt;&lt;br /&gt;As Enterprise 2.0 poses cultural change challenges to the organization, the other point to note are incentives for users to actually use such systems. Put it simply, an employee can simply ask &lt;span style="color: rgb(255, 0, 0);"&gt;"Why do I have to use the WIKI ? I am happily comfortable with attaching documents and send it to a list of 20 different people in the company."&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Overall, I always tend to view that Enterprise 2.0 == Technology + Strategy. The technologies surrounding it are enablers for fostering innovative ways for employees to collaborate with each other. The strategic part is about enhancing collaboration, and the results of it being better extraction of value from the collaborative efforts (a.k.a innovation). Communication has always been a critical key to the rise and fall of organizations. Effective communication can be aided by a new set of collaborative tools and technologies.&lt;br /&gt;&lt;br /&gt;I believe the emergent technologies of Enterprise 2.0 can satisfy that need to harvest innovation collaboration. Afterall, to survive, one needs to innovate.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-480624603972418495?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/480624603972418495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=480624603972418495' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/480624603972418495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/480624603972418495'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2008/01/can-enterprise-20-really-work.html' title='Can Enterprise 2.0 really work ?'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ZTSRxQAeAu4/R4fxJBzP66I/AAAAAAAABVU/SV_bNQ6XBTo/s72-c/enterprise20costandroi.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-5638406056275080674</id><published>2007-12-27T16:00:00.001-08:00</published><updated>2007-12-27T16:06:35.582-08:00</updated><title type='text'>How to be creative</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ZTSRxQAeAu4/R3Q97xzP64I/AAAAAAAABUQ/3gyqsVTESx8/s1600-h/zzzmnjki17.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_ZTSRxQAeAu4/R3Q97xzP64I/AAAAAAAABUQ/3gyqsVTESx8/s320/zzzmnjki17.jpg" alt="" id="BLOGGER_PHOTO_ID_5148808371181185922" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I came across an very interesting article while checking my Google Enterprise 2.0 alerts this morning.&lt;br /&gt;&lt;br /&gt;It is a long article but I think it is a good read for anyone who thrives and believes in creative innovation.&lt;br /&gt;&lt;br /&gt;Here's the link : &lt;a href="http://www.gapingvoid.com/Moveable_Type/archives/000932.html"&gt;http://www.gapingvoid.com/Moveable_Type/archives/000932.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-5638406056275080674?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/5638406056275080674/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=5638406056275080674' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/5638406056275080674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/5638406056275080674'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/12/how-to-be-creative.html' title='How to be creative'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ZTSRxQAeAu4/R3Q97xzP64I/AAAAAAAABUQ/3gyqsVTESx8/s72-c/zzzmnjki17.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-1729787738381497483</id><published>2007-12-20T16:10:00.000-08:00</published><updated>2007-12-19T15:15:42.518-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Social Bookmarking'/><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise Search'/><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>Enterprise Search + Social Bookmarking</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ZTSRxQAeAu4/R2mlURzP4uI/AAAAAAAABA8/PRCkWORQEw8/s1600-h/Cropped_Fusion.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 472px; height: 184px;" src="http://4.bp.blogspot.com/_ZTSRxQAeAu4/R2mlURzP4uI/AAAAAAAABA8/PRCkWORQEw8/s400/Cropped_Fusion.png" alt="" id="BLOGGER_PHOTO_ID_5145825817041822434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I recently embarked on another internal initiative involving the Google Search Appliance in my firm. The short initiative involves fusing enterprise search organic results with social bookmarking system. The "Tags" and "Saved By" information is retrieved from a Scuttle (open source social bookmarking software) API REST call based on a google search term. The screenshot above demonstrates the results.&lt;br /&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;There are a lot of&lt;a href="http://mike2.openmethodology.org/index.php/Fusing_Enterprise_Search_and_Social_Bookmarking"&gt; advantages in fusing enterprise search results with social&lt;/a&gt; bookmarks.&lt;br /&gt;&lt;br /&gt;I will post a link to a technical guide describing the process here once I have finished writing it.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-1729787738381497483?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/1729787738381497483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=1729787738381497483' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1729787738381497483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1729787738381497483'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/12/fusing-enterprise-search-with-social.html' title='Enterprise Search + Social Bookmarking'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ZTSRxQAeAu4/R2mlURzP4uI/AAAAAAAABA8/PRCkWORQEw8/s72-c/Cropped_Fusion.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-63355076673219999</id><published>2007-12-19T14:14:00.001-08:00</published><updated>2007-12-19T14:58:31.933-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='innovation'/><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><title type='text'>Should Apple target the Enterprise ?</title><content type='html'>I have come across an interesting news post about enterprise innovation at &lt;a href="http://www.itworld.com/Net/apple-ignore-enterprise-nlsnetworking-071218/"&gt;ITWorld&lt;/a&gt;&lt;span style="font-family:verdana, arial, geneva, sans-serif;font-size:-1;"&gt;.&lt;/span&gt; MarketCircle's CEO is advising Apple not to target their innovation towards the enterprise, but rather target SMEs. The argument being that enterprises do not embrace innovation as well as the SME market segment does.&lt;br /&gt;&lt;br /&gt;Innovation in itself comes in two different flavor. There's innovation in the product that one consumer uses everyday, and innovation in enriching business processes that large enterprise uses. Apple's innovation concentrated a lot on consumer products (such as their Mac and iPhones), while traditionally enterprises have been concentrating on innovation in enhancing business processes (things like Business Process Management/SOA springs to mind) to cut costs to improve profitability.&lt;br /&gt;&lt;br /&gt;While the CEO is right in saying that Apple should target SMEs (since they are always operating on a lower budget, and thus need to find innovative ways to make their bucks), I believe Apple has set themselves up for penetrating the corporate market well. Key consumer technologies like the iPhone has great potential for penetrating into a corporate worker's jacket to replace the good old blackberries.&lt;br /&gt;&lt;br /&gt;Companies like Tibco are already embracing the next wave of internet technologies (such as RIAs). With the enterprises moving towards the Web/Enterprise 2.0 prism and adapting to consumer technologies (such as RSS, corporate blogs), Apple's tentative interest in enticing the corporate world may work. The "WOW" factor is still there with Apple's devices.&lt;br /&gt;&lt;br /&gt;The sheer "ease-of-use" factor is far enough to entice the corporate consumer who is surrounded by the complex corporate environment. It can turn-around what seems like a mundane job by providing an easier, fun and productive alternative to "getting the job done".&lt;br /&gt;&lt;br /&gt;I fully embrace Apple's interest in trying to penetrate into the corporate world. With technologies becoming more integrated/mainstream, this presents no problem at all in the near future.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana, arial, geneva, sans-serif;font-size:-1;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-63355076673219999?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/63355076673219999/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=63355076673219999' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/63355076673219999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/63355076673219999'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/12/should-apple-target-enterprise.html' title='Should Apple target the Enterprise ?'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-6839715254009575953</id><published>2007-11-30T14:13:00.000-08:00</published><updated>2007-11-30T14:17:59.438-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='whitepaper'/><category scheme='http://www.blogger.com/atom/ns#' term='Mashup'/><title type='text'>Whitepaper on Enterprise Mashup</title><content type='html'>I have just published an whitepaper on Enterprise Mashup and it is now accessible &lt;a href="http://mike2.openmethodology.org/index.php/Enterprise_Mashups_-_A_Primer"&gt;MIKE 2.0&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;MIKE 2.0 is a open-source information management framework and WIKI powered by MediaWIKI. It was initiated by the company I work for and contains a wealth of information in the Enterprise 2.0 space that I recommend reading.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Feel free to submit any feedbacks you have. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-6839715254009575953?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/6839715254009575953/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=6839715254009575953' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/6839715254009575953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/6839715254009575953'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/11/whitepaper-on-enterprise-mashup.html' title='Whitepaper on Enterprise Mashup'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8464159761762893524</id><published>2007-11-19T15:16:00.000-08:00</published><updated>2007-11-19T15:58:41.988-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SOA'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Mashup'/><title type='text'>Enterprise Mashup</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ZTSRxQAeAu4/R0IjG9EbhoI/AAAAAAAABAQ/HvB0P37LATg/s1600-h/balaiyer.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_ZTSRxQAeAu4/R0IjG9EbhoI/AAAAAAAABAQ/HvB0P37LATg/s320/balaiyer.png" alt="" id="BLOGGER_PHOTO_ID_5134705127535117954" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I have recently arise from my stalemate of working in the office back into the Web 2.0 blogosphere again. I gave mashup a serious look after a &lt;a href="http://www.blogger.com/www.socialglass.com"&gt;manager&lt;/a&gt; in my firm helped me discover &lt;a href="http://www.blogger.com/www.dapper.net"&gt;Dapper &lt;/a&gt;and &lt;a href="http://www.kapowtech.com/"&gt;Kapowtech&lt;/a&gt;. The diagram next to it is taken from the premium programmableweb.com, where thousands of open mashable API exists. It shows how mashable APIs co-exists in the mashup ecosystem.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Web 2.0 has come a long way since the old days where web applications merely falls into the "geeks create, consumer use" prism. Today, user-generated content dominate the internet, with the likes of Facebook, blogs and wikis. The IT geeks merely need to provide a platform for which these applications can be sprung to life (i.e. Facebook platform, Google's new OpenSocial for the matter...). Such emerging trend of use of web applications has prompted the need for fast (with zero deployment time) lightweight applications that are composite/compact. In another words: The User must be given the flexibility to build/mashup what they want, and when they want. (note the capital "u" for user..)&lt;br /&gt;&lt;br /&gt;So where does all this fits within the enterprise?&lt;br /&gt;&lt;br /&gt;The traditional Enterprise IT application falls the following category :-&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Pre-built applications that are tailored as a one-size fits all (think of the typical enterprise portal).&lt;/li&gt;&lt;li&gt;X number of applications built specifically for X number of users (think of maintenance and upgrade cost when the needs of these x number of uses changes rapidly).&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;The downfall to the above approach:-&lt;br /&gt;&lt;ol&gt;&lt;li&gt;The concept of Web 2.0 applications are normally emergent. This means the applications has to evolve and adapt to changing needs in the business world, which is not uncommon. &lt;span style="font-weight: bold;"&gt;Pre-built application do not "emerge" and incur huge course for IT to customize and maintain.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;As pointed out by &lt;a href="http://www.blogger.com/Kapowtech"&gt;Kapowtech&lt;/a&gt;, there is always the &lt;span style="font-weight: bold;"&gt;long tail&lt;/span&gt; of IT applications or information that are locked away in some repositories that are undiscoverable, but when used collectively, produces great business value. The idea of WIKI is based around collective intelligence, and the idea of a Enterprise is not any different.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Access and leverage of  enterprise information is not always straightforward.&lt;/span&gt; As every knowledge worker in the company has specific needs, the ability to mashup specific information to suit specific users will provide great strategic value to the firm as a whole.  Information silos, as implemented in the past, do not work in this context.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;The pre-requisite technology to enabling mashup would be to be able to "break" the system apart using distributed technologies. This is where SOA plays a bit part as a the enabling technology behind mashup. The broken up specific functions of a IT system are typically exposed as various forms of API that are able to be consumed and aggregated as a information focal point. The discussion on SOA is tremendous, and it is beyond this discussion to explain it.&lt;br /&gt;&lt;br /&gt;I am currently writing a whitepaper regarding Enterprise Mashups for my firm, and a link to it will be posted if it gets published. The whitepaper will discuss all of the above in greater detail.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8464159761762893524?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8464159761762893524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8464159761762893524' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8464159761762893524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8464159761762893524'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/11/enterprise-mashup.html' title='Enterprise Mashup'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ZTSRxQAeAu4/R0IjG9EbhoI/AAAAAAAABAQ/HvB0P37LATg/s72-c/balaiyer.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-2334155329398804031</id><published>2007-10-27T05:37:00.000-07:00</published><updated>2007-10-27T06:12:36.597-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPod Touch'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='SDK'/><title type='text'>iPhone/iTouch SDK Release</title><content type='html'>&lt;div&gt;&lt;div&gt;Finally, the cat and mouse game Apple has been playing with the developer community has stopped. Steve "The Man" Jobs has finally announced the inevitable: &lt;a href="http://www.ipoding.com/modules.php?op=modload&amp;amp;name=News&amp;amp;file=article&amp;amp;sid=2388"&gt;The Release of iPhone/iPOD Touch SDK.&lt;/a&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When the safari-based SDK was announced back then, it didn't really capture me. Sure, the future of application should sit in the web, however, given the infrastructure limitation facing a lot of developing (and some developed countries) countries, that is not going to happen anytime soon. Google Gears seems to agree with that with their concept of "offline" online applications. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As a MAC nut, my ultimate interest still lies in being able to write software for the platform itself. This involves having access to OS level (like the MAC OS X SDK in Xcode) specific APIs.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The iPhone/iPod Touch, equipped with WIFI capability, is also a device for running Web 2.0 based applications (the vision is to run it through Safari). The SDK, in my opinion, should allow developer to build iPhone/iPod Touch specific widgets/softwares that can leverage the web at the same time. (e.t.c  Native mini-OS X Calendar program that automatically syncs with a central server for meeting appointments and etc....) &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;All that said, I think it's high time this programmer starts honing some Objective-C and Xcode skills !!!!! &lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Li saluto, Steve Jobs, for the annoucement!!!&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-2334155329398804031?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/2334155329398804031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=2334155329398804031' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2334155329398804031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2334155329398804031'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/10/iphoneitouch-sdk-release.html' title='iPhone/iTouch SDK Release'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8867324748527622166</id><published>2007-10-09T21:54:00.000-07:00</published><updated>2007-10-09T21:55:48.936-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Collaboration'/><title type='text'>Collaboration 24x7 - Now and Beyond</title><content type='html'>&lt;p class="MsoNormal"&gt;I have recently started a joint blog with an ex-colleague on Open Collaboration. While the theme of the blog is about collaboration, it will mainly be a technical blog describing our journey to realize our work on a collaboration software project outside worklife.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;br /&gt;Check it out. &lt;a href="http://opencollab.blogspot.com/"&gt;http://opencollab.blogspot.com&lt;/a&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8867324748527622166?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8867324748527622166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8867324748527622166' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8867324748527622166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8867324748527622166'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/10/collaboration-24x7-now-and-beyond.html' title='Collaboration 24x7 - Now and Beyond'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-826868890105123429</id><published>2007-09-12T22:11:00.001-07:00</published><updated>2007-09-12T23:07:16.671-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>Enterprise 2.0 Application Architecture</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ZTSRxQAeAu4/RujPykGWJYI/AAAAAAAAA-o/xrA2F-TRWfg/s1600-h/SaaS+Draft.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5109562244842530178" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: pointer; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_ZTSRxQAeAu4/RujPykGWJYI/AAAAAAAAA-o/xrA2F-TRWfg/s400/SaaS+Draft.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The above represents a conceptual architecture for a Enterprise 2.0 collaboration application.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color:#333333;"&gt;&lt;strong&gt;Loose Integration&lt;/strong&gt;&lt;/span&gt; - This allows reuse of components and allows selective hosted SaaS offering to the public. (Why pay for the whole package when I only need a small part of it ) . i.e Basecamp does this with their chat component.&lt;br /&gt;&lt;br /&gt;For the Enterprise, this allows managers or knowledge workers to selectively choose to package the mini-applications that is relevant to their work. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color:#333333;"&gt;&lt;strong&gt;Application 1 / SaaS 1 ... Application n / SaaS n&lt;/strong&gt;&lt;/span&gt; - This represents each functionality of the overall application to be written in terms of mini applications or independent SaaS-es. This can represent a blog, wiki, project management tool...etc. Advantage of this is allowing the user to mix and match their choice of SaaS-es in a package.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color:#333333;"&gt;&lt;strong&gt;REST XML/Web Services API&lt;/strong&gt;&lt;/span&gt; - For the public, this allows users to mashup content received via API calls over the net in their application. i.e. Basecamp allows milestone retrievals via API call. For the Enterprise, this allows an employee to securely mashup a information specific portlet for themselves. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color:#333333;"&gt;&lt;strong&gt;Consolidated User Interface&lt;/strong&gt;&lt;/span&gt; - Specific RIA technologies such as Adobe Flex/MS Silverlight can be used to build a consolidated interface to allow a consolidated view of the overall 1..n applications in it. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I would also like to direct you to &lt;a href="http://www.socialglass.com/archives/122"&gt;another Enterprise 2.0 architecture&lt;/a&gt; that shows relationships between the different SLATE elements in a Enterprise 2.0 application.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-826868890105123429?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/826868890105123429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=826868890105123429' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/826868890105123429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/826868890105123429'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/09/enterprise-20-application-architecture.html' title='Enterprise 2.0 Application Architecture'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ZTSRxQAeAu4/RujPykGWJYI/AAAAAAAAA-o/xrA2F-TRWfg/s72-c/SaaS+Draft.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-3508484585858816496</id><published>2007-09-12T19:03:00.001-07:00</published><updated>2007-09-12T23:06:50.419-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>SaaS and The Enterprise</title><content type='html'>The term SaaS (Software as a Service) is very well known today in the Web 2.0 cloud. It represents a loosely coupled bunch of software services hosted online that are accessible by customers on a paid-per-user/subscription basis. If extended further, it can also be used in a non-paying/subscription context where customers get unlimited usage of the underlying functionality of the software.&lt;br /&gt;&lt;br /&gt;The functionality is normally exposed through a REST API or Web Services (such as Java's JAX-WS). Ebay, Basecamp, Flickr, Facebook all expose their functionality through Web APIs that the client can consume to use such service.&lt;br /&gt;&lt;br /&gt;SaaS is gaining such popularity that a lot of traditional software companies like MYOB are moving towards the model as well. SAP has adapted the model &lt;a href="http://www.nevon.net/nevon/2006/02/sap_enters_saas.html"&gt;a while back&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;For the public however, SaaS in a lot of ways represents a whole spectrum of Mashup APIs that you can find these days at places like &lt;a href="http://www.programmableweb.com/"&gt;ProgrammableWeb &lt;/a&gt;. Users can create their own information portlets or portals for their own purposes. Google Gadgets is a good example.&lt;br /&gt;&lt;br /&gt;It seems from the outset that SaaS is doing well. Shouldn't the enterprise jump into the bandwagon as well? A number of big organisations however may have trouble adapting the SaaS model due to security and operational risk purposes. Afterall, who would want their top secret information being shared and hosted on a 3rd party vendor's information server.&lt;br /&gt;&lt;br /&gt;It's not all doom and gloom for Enterprises and SaaS though, as proven by mySAP. Just dump all SaaS-es behind a firewall (self-host), protected by SSL OR get it hosted by a recognised Big 4 vendor that may not exhibit a conflict of interest in the business arena. In IBM's case, they could easily provide such a solution to their clients. SAP choosed IBM to host their mySAP and charges users (presumebly corporate users) $x per month. This eliminates a lot of traditional licensing issues associated with a standalone product. The client only pays to use the service. IBM is well known for storage and server technology and would have the necessary technical specialty to provide support, which is more crucial than ever in a SaaS world.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-3508484585858816496?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/3508484585858816496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=3508484585858816496' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3508484585858816496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3508484585858816496'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/09/saas-and-enterprise-part-1.html' title='SaaS and The Enterprise'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-1608090606430811101</id><published>2007-09-07T00:56:00.000-07:00</published><updated>2007-09-12T23:07:40.829-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Facebook'/><category scheme='http://www.blogger.com/atom/ns#' term='Integration'/><title type='text'>Facebook + External Apps</title><content type='html'>Do you use Facebook ? Do you have a Facebook account? I can't believe you are not on Facebook!!! That's probably what you will hear when Facebook evangelists approaches you, and they are in the tens of millions. You can find them everywhere, from college kids all the way to mature-age users.&lt;br /&gt;&lt;br /&gt;Facebook, in all its glory, has gained a lot of fame recently. It's so famous it even prompted local media (Australian) to scrutnize it for wasting money on big businesses. On the other hand, there are touching stories of long lost relatives who got reconnected via the same application. Regardless of what it does, Facebook is connecting a lot of people online and its usage prompt a serious question to all Web 2.0 developers/entrepreneurs out there : Should I give the userbase in Facebook a miss ?&lt;br /&gt;&lt;br /&gt;The answer is : NO. As a Web 2.0 developer/entrepreneur, the idea of tying up an application to a large userbase in Facebook is very enticing. Facebook essentially acts as a "Hook" between your custom written web application with the huge database in Facebook. The two different composition of a Facebook application (The Profile part, which looks like a widget) and also the main application (when you click on the Profile link or the name of the application on the menu). So essentially you can display a no-frills version of the information in the little widget at the front.&lt;br /&gt;&lt;br /&gt;The crux of a social collaborative application is managing human relationships. Fortunately, this is all catered for in the Facebook API, so this takes the plumbing of this complex task out of hand!!!&lt;br /&gt;&lt;br /&gt;Let there be no doubt that Facebook is there to stay. That's why this developer has teamed up with another geek friend of his to experiment a Facebook application before getting cast-away in the Web 2.0 community. Let's hope it will turn out well and cool.&lt;br /&gt;&lt;br /&gt;Afterall, Facebook represents the core about social collaboration, something which I passionately believe in that brings value to every hierarchy in the society.&lt;br /&gt;&lt;br /&gt;Stay tune for the Facebook application!&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-1608090606430811101?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/1608090606430811101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=1608090606430811101' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1608090606430811101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1608090606430811101'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/09/facebook-integration-with-external-apps.html' title='Facebook + External Apps'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8092800581683812279</id><published>2007-08-22T00:04:00.000-07:00</published><updated>2007-09-12T23:08:08.304-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mobile Convergence'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>Mobile Convergence with the Internet</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_ZTSRxQAeAu4/Rsvg-1M61nI/AAAAAAAAA9w/DI0YoKxNUwQ/s1600-h/Web_Mobile.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5101418372964996722" style="DISPLAY: block; MARGIN: 0px auto 10px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_ZTSRxQAeAu4/Rsvg-1M61nI/AAAAAAAAA9w/DI0YoKxNUwQ/s400/Web_Mobile.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;I have never been much of a mobile phone user. Never thought of them more than a machine I use for making and receiving calls, not until I got my Nokia N95.&lt;br /&gt;&lt;br /&gt;My addiction started when I starting using the internal s60 (Symbian OS browser) web browser to browse the web. Again, this has probably been done ages ago with the corporate Blackberries and Blackjacks, but it is something exciting for an average-joe cellphone user like me. The first thing I tried was connecting to my corporate mail during my holiday (nice one, Dilbert) and I was amazed that I could access and respond to corporate mail. All of this in rich HTML. The next thing I tried was accesing this blog, and guess what, the page loaded up pretty quickly, again with rich text. Google even has their own “mobile” version of their wonderful apps. For the record, I am using Google Calendar, Maps and Gmail on my cellphone now.&lt;/div&gt;&lt;br /&gt;&lt;p&gt;Then there’s Facebook and Twitter….and all these apps started leading me to re-think about the importance of the mobile device:-&lt;/p&gt;&lt;ol&gt;&lt;li&gt;According to Gartner Voice (a Gartner Research podcasts), mobile phones convergence are on the rise in the world with cellphones selling like hotcakes in a lot of developing countries like China. This means the market of cellphone users around the world is captivating and cannot be ignored. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Apple’s strategy to include Safari browser in the iPhone to support Web 2.0 applications is another indication of the importance of the mobile device. A mobile device being a social device will naturally works best for a social networking application such as Facebook, as a user’s ability to post information and to "connect" shouldn't be restricted by geography (you don’t necessarily need a PC / laptop to do updates).&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Nearly ALL mobile phones these days include some form of a highly-advanced browser (MS Mobile uses IE, and iPhone uses Safari). The phone can access the web via a 2G, 3G, 3.5G and WIFI spots. From a developer’s point of view, this means that we should start thinking about the mobile device when creating applications since we would expect a normal average mobile user to try accessing their favourite web applications from the mobile phone. Here's a picture of what it would look like after mobile convergence.&lt;/p&gt;&lt;p&gt;&lt;a href="http://3.bp.blogspot.com/_ZTSRxQAeAu4/Rsvlr1M61pI/AAAAAAAAA-A/ryfibghfgUI/s1600-h/Web_Mobile_After.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5101423544105621138" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_ZTSRxQAeAu4/Rsvlr1M61pI/AAAAAAAAA-A/ryfibghfgUI/s400/Web_Mobile_After.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I believe as the world converges with the internet becoming a "living data cloud", and with SOA and SaaS-based web applications slowly replacing the traditional desktop application architecture, web content creators who do not take advantage of the mobile phenomenon will be left out since the phone could be used to access information as easily as a laptop/PC. There are also strategic values for corporations to make their Enterprise 2.0 applications fully mobile-compliant (accessing webmail through a mobile phone is a good example to keep productivity on the run outside the office). After all, the application's presentation layer are always rendered by the same technology.&lt;/p&gt;&lt;p&gt;A mobile car-parking solution anyone? &lt;/p&gt;&lt;p&gt;Really, &lt;strong&gt;&lt;span style="font-size:130%;color:#006600;"&gt;ALL&lt;/span&gt;&lt;/strong&gt; you need is a&lt;span style="color:#33cc00;"&gt;&lt;strong&gt; &lt;span style="font-size:130%;color:#006600;"&gt;rich HTML browser&lt;/span&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8092800581683812279?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8092800581683812279/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8092800581683812279' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8092800581683812279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8092800581683812279'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/08/mobile-convergence-with-internet.html' title='Mobile Convergence with the Internet'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ZTSRxQAeAu4/Rsvg-1M61nI/AAAAAAAAA9w/DI0YoKxNUwQ/s72-c/Web_Mobile.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-15598243299245253</id><published>2007-08-20T20:45:00.000-07:00</published><updated>2007-08-20T21:11:43.898-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='disruptions'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>Demonizing Web 2.0 (not just Facebook)</title><content type='html'>Being a supporter of Web 2.0 philosophy (and Enterprise 2.0, or call it Corporate Web 2.0 if you like), I find it disturbing whenever articles misrepresenting Web 2.0 surfaced on the media.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://www.smh.com.au/news/technology/facebook-labelled-a-5b-waste-of-time/2007/08/19/1187462087940.html"&gt;Australian media&lt;/a&gt; has been portraying social computing or collaborative technologies as disruptive for too long that I find it compelling to write something about it. Although the article is mainly about employees “wasting time” on Facebook, but Facebook as a whole, represents what an Enterprise 2.0 application would possibly look like and there are certainly a lot of parallels that can be drawn between the two. The article highlighted the threat that such emergent technologies can be disruptive at workplace, which is what I would like to argue otherwise.&lt;br /&gt;&lt;br /&gt;The article at &lt;a href="http://www.acidlabs.org/2007/08/20/australian-media-misleads-on-social-computing/"&gt;AcidLabs&lt;/a&gt; gave a very good rebuttal and assessment on this.&lt;br /&gt;&lt;br /&gt;Social computing has come a long way since the stone-age days of forum posts to the modern-days of blogging and wikis. However, social computing is also not only about blogs and wikis. Blogs and wikis are merely small strategic parts of Web 2.0 that a corporate entity can use to facilitate some of the enriching features of Web 2.0. Taggings are used to enrich the discovery process by which a person could locate another person and all its connected entities (such as blogs ).&lt;br /&gt;&lt;br /&gt;I like the blog at &lt;a href="http://www.socialglass.com/"&gt;SocialGlass&lt;/a&gt;  as it provides a lot of insight on how Web 2.0 philosophies can be leveraged within a corporate environment to increase strategic advantages that otherwise would not have been accessable without the same philosophy that’s been misrepresented in the media. Take &lt;a href="http://www.socialglass.com/archives/113"&gt;this artic&lt;/a&gt;&lt;a href="http://www.socialglass.com/archives/113"&gt;le&lt;/a&gt; for example as it explains how Enterprise 2.0 technologies can actually be leveraged in conjunction with proper data management principles to create a single master discoverable entity of a person within a enterprise environment. These are just one of the many leverages that incorporating Enterprise 2.0 into a corporate strategy can bring.&lt;br /&gt;&lt;br /&gt;The fact is that if you look around you carefully, you will have noticed a lot of companies in the US and Asia have slowly embraced Web 2.0 as an integral part of their corporate strategy. &lt;a href="http://www.cnn.com/"&gt;CNN&lt;/a&gt; has implemented blogs and RSS signals, and &lt;a href="http://www.abc.net.au/"&gt;ABC News&lt;/a&gt; has implemented taggings to enrich the discovery and search process. Google is of course at the forefront of Web 2.0 technologies with their vast army of free applications on offer and a single integrated entry at iGoogle.&lt;br /&gt;&lt;br /&gt;I could write a whole essay on this given the time, but I will let Charlie here below convince you on some of the advantages on utilizing Web 2.0 at work.  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.slideshare.net/slgavin/meet-charlie-what-is-enterprise20"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_ZTSRxQAeAu4/RspiZlM61lI/AAAAAAAAA9g/0wtvuhW7bwI/s400/whatisfront.png" alt="" id="BLOGGER_PHOTO_ID_5100997719573059154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This is a presentation by &lt;a href="http://scottgavin.info/"&gt;Scott Gavin&lt;/a&gt; and as mentioned in his website, a picture paints a thousand words. Let the video convince you.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;The underlying part is this: If employees spend 15 minutes in Facebook or other social applications at work, it may not always incur 5 billion to the businesses. Do not let a few rotten eggs throw you out from reaching the golden eggs beneath it.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-15598243299245253?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/15598243299245253/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=15598243299245253' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/15598243299245253'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/15598243299245253'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/08/demonizing-web-20-not-just-facebook.html' title='Demonizing Web 2.0 (not just Facebook)'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ZTSRxQAeAu4/RspiZlM61lI/AAAAAAAAA9g/0wtvuhW7bwI/s72-c/whatisfront.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-5402967099460186505</id><published>2007-07-18T19:07:00.000-07:00</published><updated>2007-07-18T19:24:45.523-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='RubyForge'/><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>Enterprise 2.0 *Update*</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_ZTSRxQAeAu4/Rp7IS1f9wQI/AAAAAAAAA74/Eu4L8XoqzZw/s1600-h/Picture+1.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_ZTSRxQAeAu4/Rp7IS1f9wQI/AAAAAAAAA74/Eu4L8XoqzZw/s400/Picture+1.png" alt="" id="BLOGGER_PHOTO_ID_5088724854899589378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Finally, I have managed to check my first set of files into the CVS repository at rubyforge. It is weird that this didn't work the first time....but it sure works now!!!!&lt;br /&gt;&lt;br /&gt;For all you tech junkies out there, the commands to check out the files as anonymous are the following (just press enter when prompted for anonymous password)...&lt;br /&gt;&lt;p  style="color: rgb(255, 0, 0);font-family:verdana;"&gt;       &lt;span style="font-size:85%;"&gt;cvs -d :pserver:anonymous@rubyforge.org:/var/cvs/enterprise20 login&lt;br /&gt;cvs -d :pserver:anonymous@rubyforge.org:/var/cvs/enterprise20 checkout &lt;em&gt;modulename&lt;/em&gt;&lt;/span&gt;              &lt;/p&gt;Just replace modulename with "." and you will be fine :)&lt;br /&gt;Let me know of any issues that you may have. &lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;tt style="font-weight: bold;"&gt;&lt;em&gt;&lt;/em&gt;&lt;/tt&gt;&lt;tt&gt;&lt;em&gt;&lt;br /&gt;&lt;/em&gt;&lt;/tt&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-5402967099460186505?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/5402967099460186505/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=5402967099460186505' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/5402967099460186505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/5402967099460186505'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/07/enterprise-20-update.html' title='Enterprise 2.0 *Update*'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ZTSRxQAeAu4/Rp7IS1f9wQI/AAAAAAAAA74/Eu4L8XoqzZw/s72-c/Picture+1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-6586343714743302952</id><published>2007-07-16T18:07:00.000-07:00</published><updated>2007-07-16T18:53:24.916-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='misconceptions'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><title type='text'>Misconceptions on Web 2.0</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.oreillynet.com/oreilly/tim/news/2005/09/30/graphics/figure1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://www.oreillynet.com/oreilly/tim/news/2005/09/30/graphics/figure1.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Image source: Tim Oreilly's Web 2.0 explanation&lt;br /&gt;&lt;br /&gt;In part with my continuing effort to explain Web 2.0 to my non-g33ky friends (or my own dad for the matter) outside my office space (when you are with the unavoidable question "So what do you do these days?" in lunch catchups or any social events), I have been trying to seek a one-liner explanation that can cover all of Web 2.0. It's similar to developing a sales pitch to pitch to a venture capitalist that Web 2.0 is cool and will bring you money. This is the hard part.&lt;br /&gt;&lt;br /&gt;A lot of the queries eventually turns to "So what language does Web 2.0 uses? " I can sense the first misconception the general public has about Web 2.0 is the technology. Most people not working in the knowledge space associate every buzzword in IT with some big technology. The implementation part of IT is technology, &lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;but Web 2.0 comes in at the strategic part of IT&lt;/span&gt;, where companies try to seek new methodologies to position themselves in the market. Tim Oreilly couldn't have had it more accurate on &lt;a href="http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html"&gt;what Web 2.0 is&lt;/a&gt;. The association of technology is understandable in this case. Nevertheless, a direct association is fallible. Technologies are merely tools to implement the principles of Web 2.0. Did I just mention principles???&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;YES, Web 2.0 is nothing but a set of principles that is still debatable by a number of industry hot heads till today. [PERIOD]&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;/span&gt;Being as technologically agnostic as I am, the technology to implement Web 2.0 principles are open-ended. My personal preference is to leverage light-weight languages such as Ruby on Rails or PHP, but to fully integrate with a corporate legacy systems, I would imagine using Enterprise frameworks such as J2EE or .NET.&lt;br /&gt;&lt;br /&gt;In short, Web 2.0 comes in as a potential business proposition to businesses on how they can leverage the principle, coupled with others such as SOA or Google Enterprise Search to revamp the corporate IT ecosystem to drive up shareholder's value in the market. The technology part of it is pretty open-ended and the selection of it pretty much depends on a range of risk/feasibility studies associated with it to best suit the corporation.&lt;br /&gt;&lt;br /&gt;So there you have it.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Web 2.0 == Strategy phase (leveraging Web 2.0 philosophy)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Java/Ruby/.NET and etc == Implementation phase (implementing Web 2.0 philosophy)&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Feel free to comment on any "misconceptions" I have given in this post.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-6586343714743302952?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/6586343714743302952/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=6586343714743302952' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/6586343714743302952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/6586343714743302952'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/07/misconceptions-on-web-20.html' title='Misconceptions on Web 2.0'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-2870913554451086508</id><published>2007-07-11T19:01:00.001-07:00</published><updated>2007-07-11T21:26:29.190-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='digital art'/><title type='text'>A new take in the graphics world</title><content type='html'>As part of building a pet project with 2 other programmers, my interests in graphic design recently has recently been instilled. I have been very impressed with the web pages I have visited that contain really nice logo designs and layouts....&lt;br /&gt;&lt;br /&gt;In fact, long long time ago far away in the hip and early 90s, I developed artistic flair in painting and sketching pictures. Since then, I always believe I am a little gifted in the artistic world.&lt;br /&gt;&lt;br /&gt;However, the love for science and technology took over that as career choices. Since then, I abandoned my practice of drawing, but NEVER my love for graphics.&lt;br /&gt;&lt;br /&gt;I have been a fan of digital art and animation, but never the time to learn it. I once modelled a chess set (to be exact, only a horse piece) and it took me 4 hours to do it in 3D MAX. Time consuming it was. I even tried modelling half of my friend's face..but abandoned half way due to other priorities...&lt;br /&gt;&lt;br /&gt;Ever since then, I have been looking for a "COMEBACK"  terminator style...and I finally found a way to do it: By incorporating digital art and artisitic designs into the very application that me and my buddies are building. I have been eye-ing at the &lt;a href="http://www.wacom.com.au/price/intuos3/intuos3_A5wide.html"&gt;Intuos 3 6x11 A5 wide&lt;/a&gt; . Looks like this is the starting point for me to revive the development of my artistic skills once more.  The only problem is this sucker is quite costly...wonder if my firm has a employee discount arrangements&lt;br /&gt;with WACOM or at least NextByte Apple Center.&lt;br /&gt;&lt;br /&gt;Will post up my first drawing once I get my hands on that baby!!!!&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-2870913554451086508?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/2870913554451086508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=2870913554451086508' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2870913554451086508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2870913554451086508'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/07/new-take-in-graphics-world.html' title='A new take in the graphics world'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-3179372287496152031</id><published>2007-07-11T18:47:00.001-07:00</published><updated>2007-07-11T21:26:56.390-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='data'/><category scheme='http://www.blogger.com/atom/ns#' term='Referential Integrity'/><category scheme='http://www.blogger.com/atom/ns#' term='Rails'/><title type='text'>Rails data integrity : To trust or not to trust</title><content type='html'>In the midst of my Utopian Rails world, something prompted me to rethink using the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;ActiveRecord&lt;/span&gt; associations heavily in Rails. You may have guessed right, it is related to data integrity.&lt;br /&gt;&lt;br /&gt;Rails enforces "data integrity" at the application level by forcing you to use certain conventions.&lt;br /&gt;Semantics are built in within &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;ActiveRecord&lt;/span&gt; to  check for patterns in the database to enforce those &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;integrities&lt;/span&gt;...&lt;br /&gt;&lt;br /&gt;In traditional applications, data integrity is maintained in the physical layer of the database.&lt;br /&gt;This is achieved through old school &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;SQLs&lt;/span&gt; and database design principles such as using foreign keys and such. In the enterprise Java world, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;integrities&lt;/span&gt; are well looked after by programmers manually developing &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;SQL&lt;/span&gt; statements to cater for it.&lt;br /&gt;&lt;br /&gt;In Rails, you define these in the application level. The question remains: Can you actually trust Rails to fully maintain your data integrity in a large software environment. This may be okay for blogs and forums, but what about an enterprise software environment where you can have potentially ultra complex relationships defined.....&lt;br /&gt;&lt;br /&gt;Now that's a rethink of relying too heavily on Rails to maintain data integrity....&lt;br /&gt;Overall, I am more comfortable with rules clearly defined in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;SQL&lt;/span&gt; scripts rather then having to imply the relationships by checking table fields and also reading the definitions of the logical models in Rails....&lt;br /&gt;&lt;br /&gt;either that..or I am just really old school...&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-3179372287496152031?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/3179372287496152031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=3179372287496152031' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3179372287496152031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3179372287496152031'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/07/rails-data-integrity-to-trust-or-not-to.html' title='Rails data integrity : To trust or not to trust'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-1913400817707139950</id><published>2007-07-03T23:55:00.001-07:00</published><updated>2007-07-04T00:07:25.117-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RubyForge'/><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise 2.0'/><title type='text'>Enterprise 2.0 is now on RubyForge</title><content type='html'>It's been a while, but  &lt;a href="http://enterprise20.rubyforge.org/"&gt;Enterprise 2.0&lt;/a&gt; finally has a place to call home and to showcase itself to the open-source community. Let the scrutiny of the open-source community begins!!!!&lt;br /&gt;&lt;br /&gt;As you probably notice, the page still need some fat-trimming and polishing. That will be done overtime.&lt;br /&gt;&lt;br /&gt;The blogging and social bookmarking part of it are functional. Each day I write the software with Ruby on Rails, each day my love for Rails grow. It's such a simple framework to use, and has clear visibility on the components interacting with each other from the IDE instead of going through a bazillion xml configuration files. Long live, Rails!!!!&lt;br /&gt;&lt;br /&gt;Now,,,,if only RubyForge would resolve my login issue quickly for me to check in my code before I accidentally poured coffee on my laptop and killed everything in it...*fingers crossed*&lt;br /&gt;&lt;br /&gt;Maybe RubyForge can also let me run my blog engine on my site.....What better way to showcase than to let people actually play with it....:)&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-1913400817707139950?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/1913400817707139950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=1913400817707139950' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1913400817707139950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1913400817707139950'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/07/enterprise-20-is-now-on-rubyforge.html' title='Enterprise 2.0 is now on RubyForge'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8747645303553527646</id><published>2007-06-25T00:25:00.001-07:00</published><updated>2007-06-25T03:01:35.896-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='future'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft Surface'/><title type='text'>Microsoft Surface - surface of the future?</title><content type='html'>When was the last time you watched an anime and saw generals and commanders pin-pointing "holographic" images and interacting with them their hands and gestures, and you wished you could have something like that?&lt;br /&gt;&lt;br /&gt;While &lt;a href="http://www.microsoft.com/surface"&gt;Microsoft Surface&lt;/a&gt; doesn't produce holographic images, it comes close to letting you interact with your high-tech gizmos through touching the surface of a "table". I remember reading about this technology sometime back in 2002 about Hitachi having invented a similar one, so I am not sure how Microsoft came to be the pioneer in surface-touch technologies. Whatever it is, I can only sum this in one word : &lt;span style="color: rgb(204, 0, 0); font-weight: bold;"&gt;AWE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Microsoft Surface is not for the weak-hearted financially. According to a podcaster, it comes at a whopping USD 20,000!!!!! I don't see myself affording one anytime soon....However, the application of it in businesses is tremendous. Below is an example :-&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0);font-size:100%;" &gt;Imagine you walk into a restaurant (assuming the price would have been streamlined to be affordable in the future, like all tech gizmos) and you can basically scroll through menus of food using your hand through a beautifully designed interface, and when you like the food, you just push the "button" ORDER. The food order gets sent to the kitchen (assuming the kitchen is hooked up to some IT system, which they do in some restaurants in downunder) and the chef will deliver the food. Assuming the future is so advance that every restaurant owners is open to the idea of doing business with online transactions, you can split bills using your credit/debit cards and then the amount automatically gets allocated to each cards, after which online transaction will occur to communicate with the banks.  There are some advantages to this :-&lt;br /&gt;&lt;/span&gt;&lt;ol&gt;&lt;li style="color: rgb(0, 153, 0);"&gt;&lt;span style="font-size:100%;"&gt;               Merchants no longer keeps cash in the shop. All are done online. Bad luck for you robbers. Try robbing the soy sauce instead.&lt;/span&gt;&lt;/li&gt;&lt;li style="color: rgb(0, 153, 0);"&gt;&lt;span style="font-size:100%;"&gt;You can still split bills in restaurant, but this time over the table through beautiful interfaces, not the shuffling of cash everywhere. This also gives you decimal point accuracies in the amount splitted.&lt;/span&gt;&lt;/li&gt;&lt;li style="color: rgb(0, 153, 0);"&gt;&lt;span style="font-size:100%;"&gt;Less hiring of waiters to take orders. All they do is deliver. This increases order throughput and increases sales turnover. Sales management is entirely managed by the customers.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color: rgb(0, 153, 0);font-size:100%;" &gt;Customers can enter comments on the food seamlssly on the table and management can use it as a feedback to their business.&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;The future is definitely here!!! Ohhh...what an exciting time to live!!!!!&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8747645303553527646?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8747645303553527646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8747645303553527646' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8747645303553527646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8747645303553527646'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/microsoft-surface-surface-of-future.html' title='Microsoft Surface - surface of the future?'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-3133608198284920334</id><published>2007-06-21T02:05:00.000-07:00</published><updated>2007-06-21T18:11:18.207-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google Gears'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>Google Gears, Google Earth, Googlings (not earthlings)?</title><content type='html'>Google recently announced a tool/library/module/bundle that allows web application to run "offline" during the &lt;a href="http://code.google.com/events/developerday/au-home.html"&gt;Google Sydney Developer Day&lt;/a&gt;  which I shamefully miss (even my company couldn't get me in through the back door despite the good and strong relationship my company has with google).&lt;br /&gt;&lt;br /&gt;As suspected the first time I heard about it, local cache technology is used to preserve data when you are using an webapp online. You can seamlessly switched it to offline mode and still browse the data that you used to have. The package comes with a lightweight SQL database called SQLite.&lt;br /&gt;&lt;br /&gt;The convergence of this offline browsing technology will change a lot of ways applications will run. For instance, I can imagine some hacks out there who will be trying to develop an offline GoogleMap app (I know I am) to replace the traditional thick map books that we carry around when travelling. Australia is no stranger to driving with a map book by your side. Imagine you can just carry your laptop around when you travel that lets you blog, take pictures and see your map OFFLINE when you want to. The synchronization with the data in google servers will happen once you become online. How awesome would that be? Check out the offline Google Reader demo in the developer day to see what I mean.&lt;br /&gt;&lt;br /&gt;Traditional bookmark storage are no longer the popular trend with the introduction of online social bookmarking websites. With Google Gears, you can both have the beauty of offline and online bookmarks. The pages to the links can also be cached using Gears. Word documents/spreadsheets composed using Google office can be cached offline when you are typing it, and when you go online, it syncs with the storage servers online. That way, offline or online, you will always have your documents handy!!! So, we can probably see where Google is getting at. Think online, think Google. Think offline, think Google. The value of a business proposition with leveraging Google Gears and other Google technologies is tremendous.&lt;br /&gt;&lt;br /&gt;With the convergence of new technologies that affect the current and future generations of users (and I am talking about technologies that will change the way we socialize) , and seeing that Google is building into every little space that we can breath on, I suggest we call ourselves Googlings, not Earthlings in the strictly digital age.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-3133608198284920334?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/3133608198284920334/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=3133608198284920334' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3133608198284920334'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/3133608198284920334'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/google-gears-google-earth-googlings-not.html' title='Google Gears, Google Earth, Googlings (not earthlings)?'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-64753736330006067</id><published>2007-06-20T23:26:00.001-07:00</published><updated>2007-06-21T00:53:33.022-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='technology'/><category scheme='http://www.blogger.com/atom/ns#' term='agnostic'/><title type='text'>Technology agnostic vs Client agnostic</title><content type='html'>This question recently hit me like a .50 calibre bullet, and it really hurts when I try to figure out how to strike a balance between the two.&lt;br /&gt;&lt;br /&gt;Being in the IT industry (and especially consulting), I have been able to be technologically agnostic. I am always ready to adapt to changes in the technology I use to solve problems, and am always willing to learn new technologies when it come around. I am even ready to use LISP (although the curly braces will leave me seeking asylum in a few weeks, but that's another story) if it means it is the most effective way to solve a problem!!!&lt;br /&gt;&lt;br /&gt;However, I have not been able to be completely 100% (probably am 97%) client agnostic. Being a mercenary that I am, I wasn't that enthusiastic about working for my new client during the reassignment. It's probably because they have gotten a fair bit of bad publicity on the media, and may be largely due to the fact that I have been waiting for my refund of  189 dollars since 4 years ago!!!!&lt;br /&gt;&lt;br /&gt;Whichever way, I wasn't all that interested in helping them driving their share values up in the market.&lt;br /&gt;&lt;br /&gt;Then how could I call myself a consultant/mercenary in such a case? Well, this is getting philosophical....(not talking about life and death, or about Jesus or Buddha or Muhammad). It's about the living philosophy of being a technology consultant (client and technology agnostic) and at the same time have the courage to reject a client based on the basis of ethics.&lt;br /&gt;&lt;br /&gt;How can a balance be strike between being client agnostic and upholding personal ethics? Is this possible at all? Maybe I need to just drop all my "ethical-hoohas" and just live with it. I have seen some colleagues who are willing to resign from the consulting firm because they are stuck with a bad client. I hope this will NEVER EVER happen to me. I love my new company too much to throw away my career just because of a nasty client.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-64753736330006067?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/64753736330006067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=64753736330006067' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/64753736330006067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/64753736330006067'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/technology-agnostic-vs-client-agnostic.html' title='Technology agnostic vs Client agnostic'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-1883957881409211411</id><published>2007-06-20T23:10:00.001-07:00</published><updated>2007-06-20T23:25:21.258-07:00</updated><title type='text'>Enterprise 2.0 suite</title><content type='html'>I have been working internally on a project for my company to promote the application of Web 2.0 behind the corporate firewall, and I must say this has been the greatest time of my life in the IT industry for having the opportunity to directly be engaged in the innovation and creation process of the software lifecycle...and hence, all my Ruby posts below.&lt;br /&gt;&lt;br /&gt;With my new found faith in Rails, I have to say I have never find web development so engaging and interesting. The days I used to spend configuring struts and tiles (Java MVC framework) has literally been used to producing something nice and functional on the screen. Speaking of which, AJAX has never been easier on Rails with the introduction of link_to_remote and form_remote_tag functions, where you can map the action to a method in a controller directly, and hear this : MULTIPLE UPDATES OF DIVS with AN RJS TEMPLATE!!!!!!&lt;br /&gt;&lt;br /&gt;RJS (Rails JavaScript???) template is a template where you can throw javascripts back to the views by specifying the div tags you want the content changed. How easy can this be ? The learning curve is also really low as you can practically find tons and tons of tutorials on the magic of it on the internet.&lt;br /&gt;&lt;br /&gt;I better stop bragging about Rails before all of you run away. :) I have been seen as a fanatical fan of Rails.&lt;br /&gt;&lt;br /&gt;I have also managed to throw my new found love of AJAX into the blog engine I wrote as part of the Enterprise 2.0 suite and the effects do throw me back. Some of the effects are a bit exaggerative and does not necessary translate to good usability, but the majority of it are really good. The blog engine is fully functional, with minor UI tweaks awaiting.  Of course, unit-testing hasn't been performed but continuous integration test has been performed on it from time to time (excluding unit-test :P ).&lt;br /&gt;&lt;br /&gt;The project has since been made open-source at &lt;a href="http://enterprise20.rubyforge.org"&gt;http://enterprise20.rubyforge.org&lt;/a&gt;  and I encourage any participation on it. I will continue development on it whenever I have the time (just been reassigned to a different client within the company) and should anyone be interested in contributing to the project, do let me know. The page looks pathetic now, but I will be throwing in some new content in it very soon.&lt;br /&gt;&lt;br /&gt;Would be nice if RubyForge allows me to throw my blog engine onto it, wouldn't it?&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-1883957881409211411?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/1883957881409211411/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=1883957881409211411' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1883957881409211411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1883957881409211411'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/enterprise-20-suite.html' title='Enterprise 2.0 suite'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8419830772008281656</id><published>2007-06-14T20:39:00.000-07:00</published><updated>2007-06-14T20:40:09.528-07:00</updated><title type='text'>A change in mind about presentation *Part 2*</title><content type='html'>With all said in Part 1 below, I decided to give Presentation another fair go (as most Aussies would say), and I have to say I am have been pretty excited about it. To my personal dismay, it's actually highly addictive. The stylesheets used totally changed the appearance of my blog presentation engine, and it looks great!!! The borders, different fonts, and Rail's perfect use of ErB allows stylesheets to be conveniently placed in the display markup-code (since it is a mixbag of html and Ruby code now...so technically I think this is accurate). There's a even a plugin from Mozilla where you can use (it's called Web Developer) to "learn" from the templates all over the web.&lt;br /&gt;&lt;br /&gt;The integration of FCKEditor (thank's to &lt;a href="http://blog.caronsoftware.com/articles/2006/08/07/fckeditor-plugin-for-rails"&gt;Scott Rutherford&lt;/a&gt; ) into Rails make everything complete for a blog engine. Now I am looking into using AJAX (haha, another AJAX convert on the rise) to improve interactivity in my blog, with the possibility of some eye-candiness help from the folks at &lt;a href="http://script.aculo.us/"&gt;&lt;span style="font-weight: bold;"&gt;Script.aculo.us&lt;/span&gt;&lt;/a&gt; .&lt;br /&gt;&lt;br /&gt;The rise of Microsoft Silverlight and JavaFX will change the whole web experience with apps built with scalable vector graphics (wow...more eye-candiness). In fact, some people believe that it will actually replace AJAX itself in the not so distant future.&lt;br /&gt;&lt;br /&gt;With all the mention of eye-candiness, it's time to go out for lunch and grab a candy-bar on the way back. Stay tuned for more posts on Presentation as I discover more.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8419830772008281656?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8419830772008281656/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8419830772008281656' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8419830772008281656'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8419830772008281656'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/change-in-mind-about-presentation-part_14.html' title='A change in mind about presentation *Part 2*'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-4614925345563556653</id><published>2007-06-14T19:58:00.000-07:00</published><updated>2007-06-14T20:39:30.240-07:00</updated><title type='text'>A change in mind about presentation *Part 1*</title><content type='html'>I have finally written a blog engine, fully integrated with comments and tag cloud to my liking.&lt;br /&gt;As usual, the backend stuff is all written, leaving the front end part to be fixed (mainly views in the MVC model).&lt;br /&gt;&lt;br /&gt;Here comes the next nightmare: &lt;span style="font-weight: bold;"&gt;Presentation&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;I never had any good experience when I tried to mock-up presentation htmls. In fact, I could probably count with one hand the number of times I have been involved in presentation. Back in the "glorious" university days, we had this database project where we were to write an online shopping cart using PHP. Immediately, I separated the work with my teammate such that I would concentrate on the "functionality" of the software, whereas my teammate will involve in the "facelifting" of the application. For some manic reason, I have always tried to avoid doing presentation work. It's probably the fear of html, or JSFs for the case with Java. The project turned out quite well by the way.&lt;br /&gt;&lt;br /&gt;One of the &lt;span style="color: rgb(255, 255, 0);"&gt;principle in Web 2.0&lt;/span&gt; mentions about &lt;span style="font-weight: bold;"&gt;Rich User Interfaces. &lt;/span&gt;Rich User Interfaces is about giving users the absolute user-friendly experience in an web application. In another words, eye-candiness and easy of use coupled together. Now, hardcore gamers are going to tell you that's all bull**** (me being one myself) and that all we need are good gameplays not good graphics!!!! *Nice* Let' all go back to the good ol' days of 8-bit Super Mario.&lt;br /&gt;&lt;br /&gt;However, as time matured, I slowly discovered that eye-candiness is perceived as "everything" by most audience, whether in an app or a game. People are ditching the Nintendo Wii (the ones I know of) claiming that the graphics are second-grade while praising the XBOX 360 and PS3 (which don't offer much change in gameplay apart from eye-candy). If you look closely, not many people are actually embracing the "creative" gameplay that the Wii has to offer, but rather, the first question that pop into their mind are "Is the Wii's graphics better than the PS3/XBOX 360?" You will find that the first comment that normally come out of a game recently is "Wow, this game has awesome graphics!!!!". We'll worry about the gameplay later.....&lt;br /&gt;&lt;br /&gt;This is when I discover that the same is applied to the everyday web app that we use. &lt;a href="http://www.dominos.com.au/home/"&gt;Dominoes Pizza&lt;/a&gt;  for example has an extremely user-friendly interface that let's you order your pizzas in 5 minutes. I am a big fan of it (that also explains my weight recently). Apple has been a champ in this arena with their elegantly designed and well-thought engineering of MAC OS X.&lt;br /&gt;Let's not start the good ol' Windows Vs Apple flame war here. I am clearly bias when I say this since I am a recent MAC convert :)&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-4614925345563556653?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/4614925345563556653/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=4614925345563556653' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/4614925345563556653'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/4614925345563556653'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/change-in-mind-about-presentation-part.html' title='A change in mind about presentation *Part 1*'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-2730415697869235276</id><published>2007-06-11T05:26:00.000-07:00</published><updated>2007-06-11T05:57:08.960-07:00</updated><title type='text'>Rails ActiveRecord and ORM</title><content type='html'>As most of you may have already known, the ORM layer in Rails is implemented in the ActiveRecord classes. It provides mapping to database rows to application objects via the logical models that you can generate using Rail's generator. For instance, a "Food" table (physical database model) can be mapped to a "Food" logical (logical model) model. All SQLs are presumeably wrapped within the ORM layer already. The object relational mapping magic happens here...The idea seems to be getting you to concentrate more on the application design and implementation that spending half your time messing around with the database tables (for serious database non-enthusiast like me, it is a big problem).&lt;br /&gt;&lt;br /&gt;Continuing the blog engine that I am writing from scratch, it is inevitable that I will need to fully understand and utilize ActiveRecord classes and what it takes to navigate through the objects. It takes a bit to get used to but I finally found a really &lt;a href="http://ruby.about.com/b/a/000068.htm"&gt;good article &lt;/a&gt;on how it works.&lt;br /&gt;&lt;br /&gt;Rails continue to amaze me as how you can express database integrity constraints as "attributes". For example, say the following :-&lt;br /&gt;&lt;br /&gt;customers : orders&lt;br /&gt;1 : n&lt;br /&gt;&lt;br /&gt;To basically add new orders to the customers, all you have do is the following (pardon my Java like object naming conventions, I still like it better) :-&lt;br /&gt;&lt;br /&gt;customerObj = customers.find(id)&lt;br /&gt;orders_1 = Orders.create(&lt;attributes&gt;)&lt;br /&gt;orders_2 = Orders.create(&lt;attributes&gt;)&lt;br /&gt;customerObj.orders &lt;&lt; orders_1&lt;br /&gt;customerObj.orders &lt;&lt; orders_2&lt;br /&gt;&lt;br /&gt;Another example of quick object search is the following :-&lt;br /&gt;&lt;br /&gt;customer = customers.find(x)&lt;br /&gt;customer.orders.find(y)&lt;br /&gt;&lt;br /&gt;The last line above translate to the following SQL:-&lt;br /&gt;&lt;strong&gt;select * from orders where customer_id="x" and order_id="y"&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;In summary, I like the idea that Rails has made it database friendly by eliminating the requirement of specialist knowledge in databases for an application to be written. I am in no way downplaying the importance of having database knowledges. However, being an Web 2.0 enthusiast who just want to get something up and running (I dislike configurations..) in a "agile" way, I would say Rails have done this really well.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-2730415697869235276?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/2730415697869235276/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=2730415697869235276' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2730415697869235276'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2730415697869235276'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/rails-activerecord-and-orm.html' title='Rails ActiveRecord and ORM'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-6205018474846205017</id><published>2007-06-10T18:01:00.000-07:00</published><updated>2007-06-21T00:24:58.051-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pictures'/><category scheme='http://www.blogger.com/atom/ns#' term='web album'/><title type='text'>My web album is up!!!!!</title><content type='html'>&lt;a href="http://picasaweb.google.com/jymloke"&gt;http://picasaweb.google.com/jymloke&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Not the most interesting of all albums, but still, it's the first online album that I am taking seriously.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-6205018474846205017?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/6205018474846205017/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=6205018474846205017' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/6205018474846205017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/6205018474846205017'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/my-web-album-is-up.html' title='My web album is up!!!!!'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-7484767545945968572</id><published>2007-06-08T00:55:00.000-07:00</published><updated>2007-06-21T00:26:12.952-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='Referential Integrity'/><category scheme='http://www.blogger.com/atom/ns#' term='Rails'/><title type='text'>Referential Integrity in Rails *Part 2*</title><content type='html'>Finally, the onslaught of enforcing referential integrity is over.....I have finally succumbed to the manual way of writing bits and pieces of code to enforce it in Rails. It still hits me how the management of this could have been left out in the ORM (Object Relational Mapping) layer. Much like taking a 300 pounds pounce onto the face by Mike Tyson.....&lt;br /&gt;&lt;br /&gt;  So I finally got a customized blog engine up and running. It's very lightweight and simple, although the presentation is still not as good as blogspot. I really need to dive into the presentation layer once and for all and master all the tricks in getting my pages looking right. So far I have been concentrating on the integration layer, and also the backend database layer. It amazes me at how the presentation g33ks can come out with a lot of funky ways to make the a page &lt;span style="font-weight: bold;"&gt;slide and hide.&lt;/span&gt; No use in making a gun if no one knows how to use it.&lt;br /&gt;&lt;br /&gt;   What amazes me more are the mathematics behind these javascripts. Scalable Vector Graphics is where I think I will be looking to prepare for the next internet face-lift revolution.&lt;br /&gt;    &lt;br /&gt;    Kudos to the guys at &lt;a href="http://redhillonrails.org/"&gt;RedHill Consulting&lt;/a&gt; for providing such cool plugins. Though it didn't help that much in the application level, it does help to enforce integrity at the database level.&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-7484767545945968572?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/7484767545945968572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=7484767545945968572' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/7484767545945968572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/7484767545945968572'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/referential-integrity-in-rails-part-2.html' title='Referential Integrity in Rails *Part 2*'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8452266133790497816</id><published>2007-06-07T03:39:00.000-07:00</published><updated>2007-06-21T00:25:52.479-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='Referential Integrity'/><category scheme='http://www.blogger.com/atom/ns#' term='Rails'/><title type='text'>Referential Integrity in Rails *Part 1*</title><content type='html'>I have started using Rails framework recently on a internal software engineering project at my workplace, prototyping an Enterprise 2.0 application that encompasses all the usual social collaborative/networking softwares that you can think of.&lt;br /&gt;&lt;br /&gt;For the obvious reasons, it seems it will turn out a lot easier to write the software from scratch (am breaking the re-inventing the wheel commandment here) that to grab all the free open source apps and hack and integrate and put all of them into 1 place. The pain of reading PHP code is just unbearable. The thought of integrating all the databases is nightmarish. I am traditionally not a database g33k.&lt;br /&gt;&lt;br /&gt;So once again, I turned to Ruby on Rails for a solution. Being as much a Ruby newbie as I am, I started reading tutorials online. The Ruby syntaxes are horrible, and coming from a Java background, reading the API is a pain. However, I still stick my faith in it since it is an Agile tool, and I am still obsessed with the "&lt;a href="http://rubyonrails.org/screencasts"&gt;Build-Your-Blog-In-15-Minutes&lt;/a&gt;" tutorial from the site.&lt;br /&gt;&lt;br /&gt;I finally started out like all what other engineers do, modelling the required data and defining the relationships. While it didn't take too much effort to come out with a high level data model, it certainly has taken me half my life to define and enforce referential integrity in the database....the most CRUCIAL in my opinion. Err...did I mention it takes an &lt;a href="http://www.redhillonrails.org/#foreign_key_migrations"&gt;external plugin&lt;/a&gt; just to enforce referential integrity? Oh no!!!!!!!!&lt;br /&gt;&lt;br /&gt;I wonder how the author missed out on such an important piece of functionality in Rails. Of course, some of you will undoubtly say "Create your own database using good old SQL, you slack-jaw yockel", but like I mentioned abovehand, I am trying to do this the AGILE way......&lt;br /&gt;&lt;br /&gt;I am still trying hard to see how well this plugin will function. Apparently it lets you specify the integrities when you use migrate to "migrate/create/update" your database. I have to say I am pretty impress with migrate, but if the documentation about it is better, or if someone can create like a "Migrate 101" page, it will be really awesome. Migrate looks like a generic SQL wrapper I wrote in one of my University projects before.&lt;br /&gt;&lt;br /&gt;Needless to say, Rails is still an awesome framework for fast prototyping. My manager wanted a complete "SQL dump" on the schemas once the whole app is done. I wonder how well it will work when the schema is ported as the relationships are only defined in the applications, but not at the database level.  Will see how that goes.....&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8452266133790497816?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8452266133790497816/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8452266133790497816' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8452266133790497816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8452266133790497816'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/06/referential-integrity-in-rails-part-1.html' title='Referential Integrity in Rails *Part 1*'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-1289927726344118101</id><published>2007-05-19T17:59:00.000-07:00</published><updated>2007-06-21T00:25:28.128-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='Rails'/><title type='text'>Ruby on Rails *The Holy Grail to Web 2.0 development* (Part II)</title><content type='html'>In desperate search for an alternative, I came across Ruby on Rail. The first time I heard of Ruby was in 2000 when a University PhD mate of mine told me he used it for statistical purposes. I never figured Ruby could be what it is today back then.&lt;br /&gt;&lt;br /&gt;I decided to go for the "leap of faith" and gave Ruby a shot, and the famous "Create a web app in 1 line of code" actually happened!!!! I could imagine that one line of command line would require extensive setup on your server using a range of Java Frameworks like Hibernate, and if not, JDBC. Throw in a bit of Apache Struts and there you have an equivalent of the one-liner in Ruby!!!&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 255, 0);"&gt;ruby script/server generate controller MyController&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The magic line above generated a model, view and controller file all at once. And what's best, it works on the run!!!!! The syntax in the rhtml (view) file that's generated looks like traditional PHP code embedding or JSPs. What amazes me is the intelligence that's built into the core engine to use name matching to automatically find out your various components. Struts on the other hand, gives you more flexibility in allowing you to specify all your configurations in a XML file, but the downside of it is, you need to read up quite a fair bit and will take a while for a newbie to start get it up and running. It also takes heaps to maintain the xml configuration files. But for newbies to Ruby, I believe it will be more compelling !!!&lt;br /&gt;&lt;br /&gt;So is Ruby on Rails the Holy Grail? Ruby certainly isn't, but the Rails framework, man it is. Would like to see a simplified development model like this on Java, Java on Jrails anyone?&lt;br /&gt;&lt;br /&gt;Check this out &lt;a href="http://opensails.org/"&gt;Java on Sails&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-1289927726344118101?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/1289927726344118101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=1289927726344118101' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1289927726344118101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/1289927726344118101'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/05/ruby-on-rails-holy-grail-to-web-20_19.html' title='Ruby on Rails *The Holy Grail to Web 2.0 development* (Part II)'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-5523465737274488819</id><published>2007-05-18T04:20:00.000-07:00</published><updated>2007-06-21T00:25:17.502-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='Rails'/><title type='text'>Ruby on Rails *The Holy Grail to Web 2.0 development* (Part I)</title><content type='html'>&lt;div&gt;Title sounds a bit exaggerative, or doesn't it? &lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;Throughout time as a software engineer I have been searching for an elegant, light-weight language to quickly develop/prototype applications, but I have never had the patience to go through all the configurations that I need to get something simple up and running.&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;I come from a mainly Java background (though my interests lie in developing C programs and doing some hardcore scripting in a ugly UNIX looking terminal). I have learnt to build applications (not quickly) in SWING and various other Java libraries. This wasn't a sweet process as it takes literally hundreds of lines of code just to get a functional interface up and running!!! Given the time line in the University projects, I had to use a different strategy to approach this. The traditional delegate-and-code method wouldn't work too well even with the size of our team given the time line, and also the fact that the most of the members of the team weren't quite verse with SWING yet. With agreement from the team, I suggested that I would developed a functional template code, in which all the other developers could then fill in the necessary gaps.  In each template code, a simple example code was given with details on what it did.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;It turned out the method worked really well. As one of the programmers in the team later put it : &lt;span style="color: rgb(51, 255, 51); font-weight: bold;"&gt;"I didn't really know what was fully going on in the code,  and yet we could still produce a whole functional program that got pretty high score!!!!"&lt;/span&gt;. &lt;b&gt;This is similar to the concept of scaffolding in Ruby on Rails. &lt;/b&gt;The best thing is, each of the programmers who used my scaffolded code told me later that they actually manage to get the overall picture of the SWING framework by working with the "scaffolding" code I created. By the way, the project involved writing a GUI Wrapper for the commands in UNIX.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;Regardless, I always have some reservation about using Java to quickly produce a software with rich user interfaces. No doubt that Java is an elegant and easy to use to use language, but it is slow to develop for, especially when you are mix and matching a bunch of frameworks. Maybe it's just the environment we had to use back then in the University to do the project (we used a UNIX terminal with just VI editor). However, I have also been using Eclipse at work to do Java coding. The amount of setup and configurations needed just to get the program up and running without any functionality is inexcusable.&lt;br /&gt;&lt;br /&gt;This is when my search for a light-weight language-without-much-configuration begins desperately.&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-5523465737274488819?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/5523465737274488819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/5523465737274488819'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/05/ruby-on-rails-holy-grail-to-web-20.html' title='Ruby on Rails *The Holy Grail to Web 2.0 development* (Part I)'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-2546682360298062909</id><published>2007-05-15T23:43:00.000-07:00</published><updated>2007-05-16T01:42:56.381-07:00</updated><title type='text'>Let the WEB 2.0 evangelist arise!!!!!</title><content type='html'>I have never looked at technology quite the same way ever since I got out of my Uni. For some reason, studying computer science from my University has never gauged my interests in IT. The lecturers in there looked like boring old geezers, and the infrastructure was bad (talk about 200+ students running their resource intensive SWING apps on Novell powered dumb terminals that connects to a central mainframe, with them running all at the same time during peak development periods..) Learnt HASKELL???? Pleaseeeeeeeeeeeeeeee....(wasted 4 months of my life learning a language I will never use, and half the population whom I spoke to never know about..)&lt;br /&gt;&lt;br /&gt;Maybe it was just me, but CS didn't seem like a interesting field to be stepping into (well CS as in counter strike was heaps fun than that). The first integration project I did wasn't that great fun and cool either. From the outlook, traditional systems integration work all looked very similar and I was starting to worry and thought to myself "Is this all there is to do in the IT world?" You could argue that SI projects are all different from one industry to another, but from the outset, SIs will always be SIs. &lt;br /&gt;&lt;br /&gt;Perhaps my interest really lies in a field where I can participate in the "idea generation" and "innovation" process (back to the game programming part...). Traditional IT work seems to rely more on a specific methodology and didn't offer much door for innovation, especially when you are working for an enterprise with all heaps of well-defined and proven methodologies. In another words, I am striving for innovation.&lt;br /&gt;&lt;br /&gt;Call it fate, but all doors seemed to have opened after meeting an &lt;a href="http://www.socialglass.com/"&gt;in-house Web/Enterprise 2.0 evangelist&lt;/a&gt; in my &lt;a href="http://www.bearingpoint.com/"&gt;company&lt;/a&gt;. I was taken aback by sites like myspace, facebook, digg (yeah yeah..i know I am an ancient dinosaur....) when I was introduced. The world seemed to have shine once more (picture a beam of light shining through the dark clouds onto you with a perimeter say, about 50 - 100m around you ). I finally found where my passion in IT is.&lt;br /&gt;&lt;br /&gt;The endless possibility with the application of Web 2.0 principles into corporate strategies and in house sales and marketing function for most SMEs and large enterprises is what turns me on. The best part of it is : &lt;span style="FONT-WEIGHT: bold"&gt;A CULTURAL CHANGE will be needed in a lot of these companies and some corporate hierarchy&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold"&gt; &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold"&gt;breakage will be needed.&lt;/span&gt; The idea of open-democracy and collaboration excites me. Rick User Interface technologies like &lt;b&gt;&lt;i&gt;Microsoft Silverlight, Sun's JavaFX&lt;/i&gt;&lt;/b&gt; give me the adrenaline I longed for. Developer-friendly technologies like &lt;b&gt;&lt;i&gt;Ruby on Rails&lt;/b&gt;&lt;/i&gt; makes you wonder why you would spent hours using traditional frameworks like Hibernate when you can have object relational mapping without writing a single line of code and merely executing commands!!!!&lt;br /&gt;&lt;br /&gt;Even the Australian government is trying to embrace Web 2.0 to encourage public policy debates!!!!&lt;br /&gt;&lt;a href="http://www.theage.com.au/news/biztech/web-tools-could-shape-policy-minister/2007/04/16/1176696756831.html"&gt;Government embracing Web 2.0&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Check the site below to see what makes the idea really tick!!!. Do a google search on Web 2.0 and see what I mean.&lt;br /&gt;&lt;br /&gt;Forgive me for being a Web 2.0 fanatic , but let the WEB 2.0 evangelist arise !!!!!&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-2546682360298062909?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/2546682360298062909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=2546682360298062909' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2546682360298062909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/2546682360298062909'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/05/let-web-20-evangelist-arise.html' title='Let the WEB 2.0 evangelist arise!!!!!'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9199136113033920789.post-8103976023463561844</id><published>2007-05-14T05:40:00.001-07:00</published><updated>2007-05-14T05:40:46.810-07:00</updated><title type='text'>Hoora!! My first blog!!!!</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;p id="blogfeeds"&gt;&lt;$BlogFeedsVertical$&gt;&lt;/p&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9199136113033920789-8103976023463561844?l=web2xblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://web2xblog.blogspot.com/feeds/8103976023463561844/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9199136113033920789&amp;postID=8103976023463561844' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8103976023463561844'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9199136113033920789/posts/default/8103976023463561844'/><link rel='alternate' type='text/html' href='http://web2xblog.blogspot.com/2007/05/hoora-my-first-blog.html' title='Hoora!! My first blog!!!!'/><author><name>Michael</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry></feed>
