<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Yang Li &#039;s Blog</title>
	<atom:link href="http://www.leonli.co.uk/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.leonli.co.uk/blog</link>
	<description>This is Yang Li&#039;s personal blog.</description>
	<lastBuildDate>Fri, 18 May 2012 14:59:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Dynamic and high performance Cloud Storage system</title>
		<link>http://www.leonli.co.uk/blog/dynamic-and-high-performance-cloud-storage-system/</link>
		<comments>http://www.leonli.co.uk/blog/dynamic-and-high-performance-cloud-storage-system/#comments</comments>
		<pubDate>Fri, 18 May 2012 14:59:23 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Cloud Storage]]></category>
		<category><![CDATA[Cost Effective Storage]]></category>
		<category><![CDATA[Existing Product]]></category>
		<category><![CDATA[File Types]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=137</guid>
		<description><![CDATA[In a 2008 study at the University of California, Santa Cruz funded by the National Science Foundation shows that more than 60% of data is inactive or static, but kept just in case it’s needed. Storing the inactive and active data in the same place is not cost-effective. Same problem also exist among cloud storage <a href='http://www.leonli.co.uk/blog/dynamic-and-high-performance-cloud-storage-system/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>In a 2008 study at the University of California, Santa Cruz funded by the National Science Foundation shows that more than 60% of data is inactive or static, but kept just in case it’s needed. Storing the inactive and active data in the same place is not cost-effective. Same problem also exist among cloud storage providers</p>
<ul>
<li><strong>Dynamic file storage placement</strong>: To balance the performance with costs, there is need for cloud storage providers to adapt multi-tier storage systems and enable automatically moving inactive data and storing them in lower cost storage and retrieve it immediately. The data movement is accomplished in a manner that is transparent to the end users.
<ul>
<li><strong>File Access Pattern Recognition</strong></li>
<li><strong>File Types: sequential access, random access</strong></li>
<li><strong>Performance on-demand service: </strong>to enable users to reserve the storage and network I/O for specific files at a specific time in advance. This guarantees the performance of these files. Both users and providers benefit from this service. Users can pay and get better performance on demand without doing much effort.  Providers can better schedule the resource based on the reservations.
<ul>
<li><strong>Storage system and network I/O scheduling</strong></li>
<li><strong>Spot pricing, dynamic price over time</strong></li>
</ul>
</li>
</ul>
</li>
</ul>
<p><strong> </strong></p>
<p><strong>Existing Product and research: </strong></p>
<p>Hitachi: Tiered Storage Manage: <strong> </strong><a href="http://www.hds.com/products/storage-software/hitachi-tiered-storage-manager.html?WT.ac=us_mg_pro_tsm">http://www.hds.com/products/storage-software/hitachi-tiered-storage-manager.html?WT.ac=us_mg_pro_tsm</a></p>
<p>Hystor: Making the Best Use of Solid State Drives in High Performance Storage Systems.</p>
<p>Energy Efficient Storage Management Cooperated with Large Data Intensive Applications</p>
<p>HybridStore: A Cost-Efficent, High performance Storage System Combining SSDs and HDDs</p>
<p>Cost Effective Storage using Extent based Dynamic Tiering</p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/dynamic-and-high-performance-cloud-storage-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Future Collaboration: Dropbox+Workflow+Social Network concept</title>
		<link>http://www.leonli.co.uk/blog/future-collaboration-dropboxworkflowsocial-network-concept/</link>
		<comments>http://www.leonli.co.uk/blog/future-collaboration-dropboxworkflowsocial-network-concept/#comments</comments>
		<pubDate>Fri, 18 May 2012 14:21:23 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Google Docs]]></category>
		<category><![CDATA[Open State Scenario]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=129</guid>
		<description><![CDATA[How do we collaboration now?   Email attachments: The most common way. Difficult to complete complex workflow tasks and there is no data synchronization   Microsoft SharePoint: static workflow on documents. It doesn’t fit for the open cloud environment, difficult to create temporary groups and share data.   Google Docs: online editing documents at the <a href='http://www.leonli.co.uk/blog/future-collaboration-dropboxworkflowsocial-network-concept/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<div>
<h2>How do we collaboration now?</h2>
</div>
<p>  <strong>Email attachments</strong>: The most common way. Difficult to complete complex workflow tasks and there is no data synchronization</p>
<p>  <strong>Microsoft SharePoint</strong>: static workflow on documents. It doesn’t fit for the open cloud environment, difficult to create temporary groups and share data.</p>
<p>  <strong>Google Docs</strong>: online editing documents at the same time. It provides basic permission controls that who can read/write the documents</p>
<p>  <strong>Huddle</strong>: assign single tasks to users on a specific document, carried out by start and end dates.</p>
<p>&nbsp;</p>
<div>
<h3>SharePoint (Microsoft)</h3>
</div>
<p>  Document collaboration means several authors work on a document or collection of documents together. They could be simultaneously co-authoring a document or reviewing a specification as part of a structured workflow.</p>
<p>  <strong>Semiformal co-authoring: </strong>Multiple authors edit simultaneously anywhere in the document.</p>
<p>  <strong>Formal co-authoring:</strong> Multiple authors edit simultaneously in a controlled way by saving content when ready to be revealed. Examples include: business plans, newsletters, and legal briefs for Word; and marketing and conference presentations for PowerPoint.</p>
<p>  <strong>Comment and review: </strong>A primary author solicits edits and comments (which can be threaded discussions) by routing the document in a workflow, but controls final document publishing. Examples include online help, white papers, and specifications.</p>
<p>  <strong>Document sets:</strong> Multiple authors are assigned separate documents as part of a workflow, and then one master document set is published. Examples include: new product literature and a sales pitch book.</p>
<p>&nbsp;</p>
<div>
<h2>Typical story:</h2>
</div>
<ol start="1">
<li>A teacher sends homework to all the students after the class.</li>
<li>All students receive the homework file.</li>
<li>Students complete the homework.</li>
<li>The homework file gets submitted to the not-graded folder.</li>
<li>The teacher gets a message and starts marking it or sends the homework to teaching helpers.</li>
<li>The homework gets marked and sent back to the student to re-do of incorrect sections.</li>
<li>Student updates the doc accordingly and complete it</li>
<li>The teacher grades the doc again and complete.</li>
</ol>
<p><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2012/05/1.png"><img class="alignnone size-large wp-image-131" title="1" src="http://www.leonli.co.uk/blog/wp-content/uploads/2012/05/1-1024x454.png" alt="" width="695" height="308" /></a></p>
<p><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2012/05/2.png"><img class="alignnone size-full wp-image-132" title="2" src="http://www.leonli.co.uk/blog/wp-content/uploads/2012/05/2.png" alt="" width="745" height="683" /></a></p>
<div>
<h3>Open State Scenario</h3>
</div>
<p>For example, in an open research environment, researchers need to circulate documents to other appropriate persons when needed. Often, there is some legal constrains such as where the data can be accessed and how can these documents to be circulated. For example, in such a project, data cannot leak beyond the designated region.</p>
<p><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2012/05/3.png"><img class="alignnone size-large wp-image-130" title="3" src="http://www.leonli.co.uk/blog/wp-content/uploads/2012/05/3-1024x372.png" alt="" width="695" height="252" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/future-collaboration-dropboxworkflowsocial-network-concept/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux (Centos, Ubuntu) common Command Lines</title>
		<link>http://www.leonli.co.uk/blog/linux-centos-ubuntu-common-command-lines/</link>
		<comments>http://www.leonli.co.uk/blog/linux-centos-ubuntu-common-command-lines/#comments</comments>
		<pubDate>Tue, 18 Jan 2011 19:08:32 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CPU]]></category>
		<category><![CDATA[Ctrl Alt F7]]></category>
		<category><![CDATA[IO]]></category>
		<category><![CDATA[Service Status]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=122</guid>
		<description><![CDATA[CentOS: Setup VNC http://wiki.centos.org/HowTos/VNC-Server Service Status: service &#8211;status-all service &#8211;status-all &#124; grep ntpd service &#8211;status-all &#124; less service httpd status List all known services (configured via SysV): chkconfig &#8211;list List service and their open ports netstat -tulpn Turn on / off service ntsysv chkconfig service off chkconfig service on chkconfig httpd off chkconfig ntpd on <a href='http://www.leonli.co.uk/blog/linux-centos-ubuntu-common-command-lines/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p><strong>CentOS: </strong></p>
<p><strong>Setup VNC </strong></p>
<p><a href="http://wiki.centos.org/HowTos/VNC-Server">http://wiki.centos.org/HowTos/VNC-Server</a></p>
<p><strong>Service Status: </strong></p>
<p>service &#8211;status-all<br />
service &#8211;status-all | grep ntpd<br />
service &#8211;status-all | less<br />
service httpd status</p>
<p><span id="more-122"></span></p>
<p><strong>List all known services (configured via SysV): </strong></p>
<p>chkconfig &#8211;list</p>
<p><strong>List service and their open ports</strong></p>
<p>netstat -tulpn</p>
<p><strong>Turn on / off service</strong></p>
<p>ntsysv<br />
chkconfig service off<br />
chkconfig service on<br />
chkconfig httpd off<br />
chkconfig ntpd on</p>
<p><strong>Memory</strong></p>
<p>free -m</p>
<p>The command will display information about physical memory in MB.</p>
<p>free -m -s 5</p>
<p>The command will activate continuous polling delay at 5 seconds apart, and then display memory status in megabytes on terminal. Any floating point number for delay can be specified.</p>
<p>free -t -m</p>
<p>Same with “free -m”, but -t switch will display a line containing the totals of physical memory and swap space.</p>
<p><strong>vmstat</strong></p>
<p>vmstat reports report virtual memory statistics, which has information about processes, swap, free, buffer and cache memory, paging space, disk IO activity, traps, interrupts, context switches and CPU activity. With vmstat command, administrators can has instantaneous reports on memory usage.</p>
<p><em>Syntax of vmstat</em></p>
<p>vmstat -[options] [delay count]</p>
<p><em>Example usage of vmstat</em></p>
<p>vmstat</p>
<p>The command will display report based on averages since last reboot.</p>
<p>vmstat 5</p>
<p>The command will pool average system resources usage level for a sampling period of 5 seconds at interval of 5 seconds, except the first result that is averages since the last reboot.</p>
<p><strong>top</strong></p>
<p>top command displays dynamic real-time view of the running tasks managed by kernel and system information in Linux system. The memory usage stats by top command include real-time live total, used and free physical memory and swap memory with their buffers and cached memory size respectively.</p>
<p><em>Syntax and example usage of top</em></p>
<p>top</p>
<p>Using top is simple, simply type top at command shell, and constantly update stats page will be shown.</p>
<p><strong>ps aux</strong></p>
<p>ps command reports a snapshot on information of the current active processes. Advantage of ps command is that system admins will be able to see where the memory is used. ps will show the percentage of memory resource that is used by each process or task running in the system. With this command, top memory hogging processes can be identified.</p>
<p><strong>Add dhclient during bootup</strong></p>
<p>&#8220;dhclient eth0&#8243; to /etc/rc.d/rc.local</p>
<pre><code># chkconfig httpd --add
# chkconfig  httpd  on --level 2,3,5</code></pre>
<p>This will enable the apache webserver to automatically start in the run levels 2, 3 and 5. You can check this by running the command:</p>
<pre><code># chkconfig --list httpd</code></pre>
<p>One can also disable the service by using the off flag as shown below:</p>
<pre><code># chkconfig httpd off
# chkconfig httpd --del</code></pre>
<p><strong>Use the Ctrl-Alt-F1 shortcut keys to switch to the first console.</strong></p>
<p><strong>To switch back to Desktop mode, use the Ctrl-Alt-F7 shortcut keys.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/linux-centos-ubuntu-common-command-lines/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Future of Apple?</title>
		<link>http://www.leonli.co.uk/blog/future-of-apple/</link>
		<comments>http://www.leonli.co.uk/blog/future-of-apple/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 18:07:53 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=116</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2010/07/Future-oF-Apple.jpg"><img class="alignnone size-large wp-image-119" title="Future oF Apple" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/07/Future-oF-Apple-344x1024.jpg" alt="" width="344" height="1024" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/future-of-apple/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using httpservice in Flex/Actionscripts passing XML file with only one item</title>
		<link>http://www.leonli.co.uk/blog/using-httpservice-in-flexactionscripts-passing-xml-file-with-only-one-item/</link>
		<comments>http://www.leonli.co.uk/blog/using-httpservice-in-flexactionscripts-passing-xml-file-with-only-one-item/#comments</comments>
		<pubDate>Sun, 04 Jul 2010 20:40:17 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Flex/Actionscripts]]></category>
		<category><![CDATA[DATA]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=114</guid>
		<description><![CDATA[I encountered a problem with passing xml file to Flex using Httpservice. If the XML file I pass to the flex has only one item, e.g.: &#60;DATA&#62; &#60;SoftwareName&#62;Photoshop &#60;/SoftwareName&#62; &#60;/DATA&#62; Then if you use an arraycollection to save the data. e.g. [Bindable] public var SoftwareData:ArrayCollection; [Bindable] public var SoftwareData:ArrayCollection; http://casario.blogs.com/mmworld/2006/07/arraycollection.html &#60;s:HTTPService id=&#8221;getSoftware&#8221; url=&#8221;{SoftwareServer}&#8221; result=&#8221;getSoftware_resultHandler(event)&#8221; fault=&#8221;getSoftware_faultHandler(event)&#8221; <a href='http://www.leonli.co.uk/blog/using-httpservice-in-flexactionscripts-passing-xml-file-with-only-one-item/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>I encountered a problem with passing xml file to Flex using Httpservice.<br />
If the XML file I pass to the flex has only one item, e.g.:</p>
<p><em>&lt;DATA&gt;</em></p>
<p><em>&lt;SoftwareName&gt;Photoshop &lt;/SoftwareName&gt; </em></p>
<p><em>&lt;/DATA&gt;</em></p>
<p>Then if you use an arraycollection to save the data.</p>
<p>e.g.</p>
<div id="_mcePaste">[Bindable]</div>
<div id="_mcePaste">public var SoftwareData:ArrayCollection;</div>
<p>[Bindable]			public var SoftwareData:ArrayCollection;</p>
<p><a href="http://casario.blogs.com/mmworld/2006/07/arraycollection.html">http://casario.blogs.com/mmworld/2006/07/arraycollection.html</a></p>
<p><span style="white-space: pre;"> </span>&lt;s:HTTPService id=&#8221;getSoftware&#8221; url=&#8221;{SoftwareServer}&#8221; result=&#8221;getSoftware_resultHandler(event)&#8221; fault=&#8221;getSoftware_faultHandler(event)&#8221;  /&gt;</p>
<p>if we use &#8220;SoftwareData=<span style="white-space: pre;">getSoftware.lastResult.DATA.Software</span>; &#8220;, it will not work for only one item.</p>
<p>The solution is :</p>
<p>if(getSoftware.lastResult.DATA.Software==null)</p>
<p><span style="white-space: pre;"> </span>{<span style="white-space: pre;"> </span>Alert.show(&#8220;No record&#8221;);<span style="white-space: pre;"> </span>}</p>
<p><span style="white-space: pre;"> </span>else if(getSoftware.lastResult.DATA.Software is ObjectProxy)</p>
<p><span style="white-space: pre;"> </span>{<span style="white-space: pre;"> </span>SoftwareData=new ArrayCollection([getSoftware.lastResult.DATA.Software]);<span style="white-space: pre;"> </span>}</p>
<p><span style="white-space: pre;"> </span>else{SoftwareData=getSoftware.lastResult.DATA.Software as ArrayCollection;<span style="white-space: pre;"> </span><span style="white-space: pre;"> </span>}</p>
<p>Reference:  from a guy called chunk</p>
<p><a href="http://casario.blogs.com/mmworld/2006/07/arraycollection.html">http://casario.blogs.com/mmworld/2006/07/arraycollection.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/using-httpservice-in-flexactionscripts-passing-xml-file-with-only-one-item/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>World&#8217;s highest sky garden and swimming pool in Singapore</title>
		<link>http://www.leonli.co.uk/blog/worlds-highest-sky-garden-and-swimming-pool-in-singapore/</link>
		<comments>http://www.leonli.co.uk/blog/worlds-highest-sky-garden-and-swimming-pool-in-singapore/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 17:04:18 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Places of interest]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=105</guid>
		<description><![CDATA[Singapore spends 180 bln creating world&#8217;s highest sky garden]]></description>
			<content:encoded><![CDATA[<p>Singapore spends 180 bln creating world&#8217;s highest sky garden</p>

<a href='http://www.leonli.co.uk/blog/worlds-highest-sky-garden-and-swimming-pool-in-singapore/2841_31097_770178/' title='2841_31097_770178'><img width="150" height="150" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/06/2841_31097_770178-150x150.jpg" class="attachment-thumbnail" alt="2841_31097_770178" title="2841_31097_770178" /></a>
<a href='http://www.leonli.co.uk/blog/worlds-highest-sky-garden-and-swimming-pool-in-singapore/2841_31098_441863/' title='2841_31098_441863'><img width="150" height="150" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/06/2841_31098_441863-150x150.jpg" class="attachment-thumbnail" alt="2841_31098_441863" title="2841_31098_441863" /></a>
<a href='http://www.leonli.co.uk/blog/worlds-highest-sky-garden-and-swimming-pool-in-singapore/2841_31100_373925/' title='2841_31100_373925'><img width="150" height="150" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/06/2841_31100_373925-150x150.jpg" class="attachment-thumbnail" alt="2841_31100_373925" title="2841_31100_373925" /></a>
<a href='http://www.leonli.co.uk/blog/worlds-highest-sky-garden-and-swimming-pool-in-singapore/2841_31101_603989-2/' title='2841_31101_603989'><img width="150" height="150" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/06/2841_31101_6039891-150x150.jpg" class="attachment-thumbnail" alt="2841_31101_603989" title="2841_31101_603989" /></a>

]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/worlds-highest-sky-garden-and-swimming-pool-in-singapore/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Date arithmatic in Flex/Actionscripts</title>
		<link>http://www.leonli.co.uk/blog/date-arithmatic-in-flexactionscripts/</link>
		<comments>http://www.leonli.co.uk/blog/date-arithmatic-in-flexactionscripts/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 01:56:48 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Flex/Actionscripts]]></category>
		<category><![CDATA[Date arithmatic in Flex]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=103</guid>
		<description><![CDATA[Today I spent some time working on the date arithmetic. I don&#8217;t believe there is built-in Date arithmetic in Flex. Therefore, there probably only two solutions. One is using DateUtils open source library: http://flexdateutils.riaforge.org/ The other one is converting date into milliseconds and then do deductions or additions. public static const millisecondsPerMinute:int = 1000 * 60; <a href='http://www.leonli.co.uk/blog/date-arithmatic-in-flexactionscripts/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Today I spent some time working on the date arithmetic. I don&#8217;t believe there is built-in Date arithmetic in Flex. Therefore, there probably only two solutions.</p>
<p>One is using DateUtils open source library: <a href="http://flexdateutils.riaforge.org/">http://flexdateutils.riaforge.org/</a></p>
<p>The other one is converting date into milliseconds and then do deductions or additions.</p>
<div id="_mcePaste"><span style="text-decoration: underline;">public static const millisecondsPerMinute:int = 1000 * 60;</span></div>
<div id="_mcePaste"><span style="text-decoration: underline;">public static const millisecondsPerHour:int = 1000 * 60 * 60;</span></div>
<div id="_mcePaste"><span style="text-decoration: underline;">public static const millisecondsPerDay:int = 1000 * 60 * 60 * 24;</span></div>
<div id="_mcePaste"><span style="text-decoration: underline;">public static const millisecondsPerWeek:int = 1000 * 60 * 60 * 24*7;</span></div>
<div><span style="text-decoration: underline;"><br />
</span></div>
<div><span style="text-decoration: underline;">var startDate:Date;</span></div>
<div><span style="text-decoration: underline;">startDate = new Date(dateNow.getTime() &#8211; (millisecondsPerHour));</span></div>
<div></div>
<div>Note here, if we set <span style="text-decoration: underline;">millisecondsPerWeek</span> to<span style="text-decoration: underline;"> 1000 * 60 * 60 * 24*30</span>, if will exceed the maximum value of a int number！(2^31)-1， which is 2,147,483,647 !</div>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/date-arithmatic-in-flexactionscripts/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Willow Garage PR2 robot plays pool</title>
		<link>http://www.leonli.co.uk/blog/willow-garage-pr2-robot-plays-pool/</link>
		<comments>http://www.leonli.co.uk/blog/willow-garage-pr2-robot-plays-pool/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 09:12:43 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Robotics]]></category>
		<category><![CDATA[Menlo Park]]></category>
		<category><![CDATA[Scott Hassan]]></category>
		<category><![CDATA[Steve Cousins]]></category>
		<category><![CDATA[Willow Garage]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=101</guid>
		<description><![CDATA[PR2 Plays Pool by Willow Garage, a robotics research lab and technology incubator devoted to developing hardware and open source software for personal robotics applications.It was started in late 2006 by Scott Hassan, an early Google employee who helped develop Google&#8217;s technology Steve Cousins is the president and CEO. Willow Garage is located in Menlo Park, <a href='http://www.leonli.co.uk/blog/willow-garage-pr2-robot-plays-pool/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="350" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/HMx1xW2E4Gg&amp;feature" /><embed type="application/x-shockwave-flash" width="425" height="350" src="http://www.youtube.com/v/HMx1xW2E4Gg&amp;feature"></embed></object></p>
<h1 id="watch-headline-title">PR2 Plays Pool</h1>
<p>by Willow Garage, a robotics research lab and technology incubator devoted to developing hardware and open source software for personal robotics applications.It was started in late 2006 by Scott Hassan, an early Google employee who helped develop Google&#8217;s technology Steve Cousins is the president and CEO. Willow Garage is located in Menlo Park, California.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/willow-garage-pr2-robot-plays-pool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Chinese bank cards(UnionPay银联卡) accepted at Selfridges</title>
		<link>http://www.leonli.co.uk/blog/chinese-bank-cardsunionpay-accepted-at-selfridges/</link>
		<comments>http://www.leonli.co.uk/blog/chinese-bank-cardsunionpay-accepted-at-selfridges/#comments</comments>
		<pubDate>Fri, 04 Jun 2010 00:47:00 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Life@UK]]></category>
		<category><![CDATA[China]]></category>
		<category><![CDATA[CUP]]></category>
		<category><![CDATA[Europe]]></category>
		<category><![CDATA[UK]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=93</guid>
		<description><![CDATA[Selfridges today became the first department store in Britain to accept China&#8217;s only debit and credit card brand. 由于目前来自中国客户的购买力逐渐加强，继法国老佛爷之后，英国Selfridges购物商场也引进了中国银联卡系统来直接进行刷卡消费，不过据非官方称需要是美金银联卡。 Until now, China Union Pay &#8211; the only Chinese bank card to operate as Visa and Mastercard do in Europe &#8211; had been accepted by only a few small businesses, making Britain the only major European <a href='http://www.leonli.co.uk/blog/chinese-bank-cardsunionpay-accepted-at-selfridges/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p><a title="More on Selfridges plc..." href="http://www.selfridges.com/" target="_blank"><strong>Selfridges</strong></a><strong> today became the first department store in Britain to accept China&#8217;s only debit and credit card brand.</strong></p>
<p><strong>由于目前来自中国客户的购买力逐渐加强，继法国老佛爷之后，英国Selfridges购物商场也引进了中国银联卡系统来直接进行刷卡消费，不过据非官方称需要是美金银联卡。 </strong></p>
<p><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2010/06/20091028083211953.jpg"><img class="alignnone size-medium wp-image-97" title="Union Pay" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/06/20091028083211953-300x172.jpg" alt="" width="300" height="172" /></a></p>
<p>Until now, China Union Pay &#8211; the only Chinese bank card to operate as Visa and Mastercard do in Europe &#8211; had been accepted by only a few small businesses, making Britain the only major European nation not to welcome it.</p>
<p>Stores on the continent that have adopted CUP, including Galeries Lafayette in Paris, found they doubled sales to Chinese customers within the first year of trading with the system.</p>
<p>Selfridges claims to have seen double-digit growth in sales to Chinese customers each year since 2008. A spokesman for the retailer said: &#8220;We are very excited by the CUP system. We have one-year department store exclusivity in the UK.&#8221;</p>
<p><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2010/06/cardcard415.jpg"><img class="alignnone size-full wp-image-94" title="unionpay card" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/06/cardcard415.jpg" alt="" width="332" height="204" /></a></p>
<p>Can&#8217;t wait to try my UnionPay debit card out this weekend!</p>
<p>Reference:</p>
<p><a href="http://www.thisislondon.co.uk/standard/article-23839978-chinese-credit-card-accepted-at-selfridges.do">http://www.thisislondon.co.uk/standard/article-23839978-chinese-credit-card-accepted-at-selfridges.do</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/chinese-bank-cardsunionpay-accepted-at-selfridges/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google, Kingsoft Halt Partnership on Google-Kingsoft PowerWord</title>
		<link>http://www.leonli.co.uk/blog/google-kingsoft-halt-partnership-on-google-kingsoft-powerword/</link>
		<comments>http://www.leonli.co.uk/blog/google-kingsoft-halt-partnership-on-google-kingsoft-powerword/#comments</comments>
		<pubDate>Fri, 28 May 2010 00:29:18 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[google]]></category>
		<category><![CDATA[GOOG]]></category>
		<category><![CDATA[HK]]></category>
		<category><![CDATA[Kingsoft Powerword]]></category>
		<category><![CDATA[Kingsoft Web Dictionary]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=90</guid>
		<description><![CDATA[Google (Nasdaq:GOOG) and Kingsoft (3888.HK) have suspended a cooperation that included the provision of a co-branded version of Kingsoft&#8217;s &#8220;Powerword&#8221; translation software, Sina reported May 4. A Kingsoft employee said that the two-year contract for Google&#8217;s cooperation with Powerword had &#8220;basically expired,&#8221; the report said, without specifying the employee&#8217;s name. The parties will not continue to cooperate, and Kingsoft will no longer <a href='http://www.leonli.co.uk/blog/google-kingsoft-halt-partnership-on-google-kingsoft-powerword/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Google (Nasdaq:<strong>GOOG</strong>) and Kingsoft (<strong>3888.HK</strong>) have suspended a cooperation that included the provision of a co-branded version of Kingsoft&#8217;s &#8220;Powerword&#8221; translation software, Sina reported May 4.</p>
<p>A Kingsoft employee said that the two-year contract for Google&#8217;s cooperation with Powerword had &#8220;basically expired,&#8221; the report said, without specifying the employee&#8217;s name. The parties will not continue to cooperate, and Kingsoft will no longer provide a product under the &#8220;Google KingsoftPowerword&#8221; name, the employee said.</p>
<p>Internet users said May 4 that the &#8220;Google&#8221; brand had been removed from both the name of the version&#8217;s official website and the translation software&#8217;s search function.</p>
<p>Previous rumors had said Kingsoft might suspend the partnership if Google withdrew from China, DoNews reports.</p>
<p><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2010/05/kingsoft.png"><img class="alignnone size-full wp-image-91" title="kingsoft powerword" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/05/kingsoft.png" alt="" width="428" height="425" /></a></p>
<p><em><strong>I have just checked the PowerWord which was installed in my laptop earlier, </strong><em><strong>I remembered when I typed some word for translation some time ago, it used to came up some translations from Google web. Now all it came up is from Kingsoft Web Dictionary. </strong></em></em></p>
<p><em><em><br />
</em></em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/google-kingsoft-halt-partnership-on-google-kingsoft-powerword/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to create/modify contact&#8217;s information in Windows Mobile 6.5</title>
		<link>http://www.leonli.co.uk/blog/how-to-createmodify-contacts-information-in-windows-mobile-6-5/</link>
		<comments>http://www.leonli.co.uk/blog/how-to-createmodify-contacts-information-in-windows-mobile-6-5/#comments</comments>
		<pubDate>Tue, 18 May 2010 00:38:24 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Windows Mobile 6.5 Development]]></category>
		<category><![CDATA[windows mobile 6.5]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=83</guid>
		<description><![CDATA[Today, It took me a while to develop a program that can create and modify a Contact file in Windows Mobile 6.5. If you are not clear how to use PocketOutlook class in Windows Mobile, then continue to read: 1 . add a Namespace and Assembly reference(like most C# programs): using Microsoft.WindowsMobile.PocketOutlook; 2. Make an <a href='http://www.leonli.co.uk/blog/how-to-createmodify-contacts-information-in-windows-mobile-6-5/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Today, It took me a while to develop a program that can create and modify a Contact file in Windows Mobile 6.5.</p>
<p>If you are not clear how to use PocketOutlook class in Windows Mobile, then continue to read:</p>
<p>1 . add a Namespace and Assembly reference(like most C# programs):<br />
<span style="text-decoration: underline;"> using Microsoft.WindowsMobile.PocketOutlook;</span></p>
<p>2. Make an instance of class OutlookSession and setup parameters.</p>
<p><span style="text-decoration: underline;">OutlookSession mySession = new OutlookSession();<br />
Contact con = mySession.Contacts.Items.AddNew();<br />
con.MobileTelephoneNumber = &#8220;11111111&#8243;;<br />
con.FileAs = &#8220;name&#8221;;<br />
con.SetPicture(&#8220;filenamehere&#8221;);<br />
con.Email1Address=&#8221;youremail@email&#8221;;<br />
con.Update();</span></p>
<p>3. Modify an existing contact using a &#8220;for&#8221; loop<br />
(please note here: foreach loop can not be used for modifying contacts in Windows Mobile)</p>
<p><span style="text-decoration: underline;">for (int i = 0; i &lt; collection.Count; i++)<br />
{<br />
Contact c = collection[i];<br />
if (c.FileAs == &#8220;leon&#8221;)<br />
{<br />
c.MobileTelephoneNumber = i.ToString() + &#8220;1111&#8243;;<br />
c.BusinessAddressStreet = i.ToString() + &#8220;dfdfd&#8221;;<br />
c.SetPicture(loc);<br />
c.Update();<br />
}<br />
}</span></p>
<p><span style="text-decoration: underline;"><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2010/05/contact-windows_mobile.jpg"><img class="alignnone size-full wp-image-86" title="contact-windows_mobile" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/05/contact-windows_mobile.jpg" alt="" width="410" height="390" /></a></span></p>
<p>Hope that helps! I also managed to download image files from other sites and save them to mobile storage, this can be useful for adding contact pictures.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/how-to-createmodify-contacts-information-in-windows-mobile-6-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gordon Brown resigns as UK prime minister</title>
		<link>http://www.leonli.co.uk/blog/gordon-brown-resigns-as-uk-prime-minister/</link>
		<comments>http://www.leonli.co.uk/blog/gordon-brown-resigns-as-uk-prime-minister/#comments</comments>
		<pubDate>Tue, 11 May 2010 19:38:47 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Life@UK]]></category>
		<category><![CDATA[Edinburgh University]]></category>
		<category><![CDATA[Family Married]]></category>
		<category><![CDATA[Gordon Brown]]></category>
		<category><![CDATA[UK]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=76</guid>
		<description><![CDATA[Gordon Brown has announced he is resigning as UK prime minister. His decision comes as the Tories and Liberal Democrats are poised to agree a deal to form a government. Labour&#8217;s attempts to negotiate a deal of their own with the Lib Dems, after last week&#8217;s inconclusive election result, ended in failure on Tuesday. BROWN&#8217;S <a href='http://www.leonli.co.uk/blog/gordon-brown-resigns-as-uk-prime-minister/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p><strong>Gordon Brown has announced he is resigning as UK prime minister.<br />
</strong></p>
<div id="attachment_77" class="wp-caption alignnone" style="width: 416px"><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2010/05/gordon_brown.jpg"><img class="size-full wp-image-77" title="gordon_brown" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/05/gordon_brown.jpg" alt="gordon_brown" width="406" height="152" /></a><p class="wp-caption-text">Gordon Brown&#39;s Political Career</p></div>
<p>His decision comes as the Tories and Liberal Democrats are poised to agree a deal to form a government.</p>
<p>Labour&#8217;s attempts to negotiate a deal of their own with the Lib Dems, after last week&#8217;s inconclusive election result, ended in failure on Tuesday.</p>
<p>BROWN&#8217;S CV:</p>
<p><strong>Born:</strong> 20 February 1951<br />
<strong>Educated:</strong> Kirkcaldy High School, Edinburgh University<br />
<strong>Family:</strong> Married, two sons (daughter died shortly after birth)<br />
<strong>1972:</strong> Rector, Edinburgh University<br />
<strong>1975:</strong> Temporary lecturer<br />
<strong>1976:</strong> Politics lecturer,Glasgow College of Technology<br />
<strong>1980:</strong> Television journalist, STV current affairs<br />
<strong>1983:</strong> Labour MP, Dunfermline East<br />
<strong>1985:</strong> Opposition front bench trade and industry spokesman<br />
<strong>1987</strong>: Shadow chief secretary to the Treasury<br />
<strong>1989:</strong> Shadow trade and industry spokesman<br />
<strong>1992:</strong> Shadow chancellor<br />
<strong>1997:</strong> Chancellor</p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/gordon-brown-resigns-as-uk-prime-minister/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Smoking at indoor places to be banned in China</title>
		<link>http://www.leonli.co.uk/blog/smoking-at-indoor-places-to-be-banned-in-china/</link>
		<comments>http://www.leonli.co.uk/blog/smoking-at-indoor-places-to-be-banned-in-china/#comments</comments>
		<pubDate>Mon, 10 May 2010 19:23:57 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[Life @ China]]></category>
		<category><![CDATA[China]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=74</guid>
		<description><![CDATA[Good news! 中新社北京5月10日电 (记者 曾利明) 自2011年1月起，中国内地将在所有室内公共场所、室内工作场所、公共交通工具和其它可能的室外工作场所完全禁止吸烟。 Smoking in public places such as hospitals, schools, gymnasiums, restaurants, libraries, shopping malls, bookstores and public transport vehicles, will be banned from 2011.]]></description>
			<content:encoded><![CDATA[<p>Good news!</p>
<p>中新社北京5月10日电 (记者 曾利明) 自2011年1月起，中国内地将在所有室内公共场所、室内工作场所、公共交通工具和其它可能的室外工作场所完全禁止吸烟。</p>
<p>Smoking in public places such as hospitals, schools, gymnasiums, restaurants, libraries, shopping malls, bookstores and public transport vehicles, will be banned from 2011.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/smoking-at-indoor-places-to-be-banned-in-china/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LaTeX editor for Google Docs</title>
		<link>http://www.leonli.co.uk/blog/latex-editor-for-google-docs/</link>
		<comments>http://www.leonli.co.uk/blog/latex-editor-for-google-docs/#comments</comments>
		<pubDate>Mon, 10 May 2010 01:26:34 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[LaTex Editor]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=68</guid>
		<description><![CDATA[My friend Jibran just sent me this: LaTex editor for Google Docs via GData API. It is hosted on top of Google AppEngine infrastructure(cloud environment). LaTeX Lab link : http://code.google.com/p/latex-lab/ Preview link: http://docs.latexlab.org/]]></description>
			<content:encoded><![CDATA[<p>My friend Jibran just sent me this: LaTex editor for Google Docs via GData API. It is hosted on top of Google AppEngine infrastructure(cloud environment).</p>
<p><a href="http://www.leonli.co.uk/blog/wp-content/uploads/2010/05/latex.png"><img class="alignnone size-full wp-image-69" title="latex google doc editor" src="http://www.leonli.co.uk/blog/wp-content/uploads/2010/05/latex.png" alt="latex google doc editor" width="538" height="267" /></a></p>
<p>LaTeX Lab link : <a href="http://code.google.com/p/latex-lab/" target="_blank">http://code.google.com/p/latex-lab/</a></p>
<p>Preview link: <a href="http://docs.latexlab.org/" target="_blank">http://docs.latexlab.org/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/latex-editor-for-google-docs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nature of Cloud Computing Part 1</title>
		<link>http://www.leonli.co.uk/blog/nature-of-cloud-computing-part-1/</link>
		<comments>http://www.leonli.co.uk/blog/nature-of-cloud-computing-part-1/#comments</comments>
		<pubDate>Mon, 10 May 2010 00:42:47 +0000</pubDate>
		<dc:creator>Yang Li</dc:creator>
				<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[utility computing]]></category>

		<guid isPermaLink="false">http://www.leonli.co.uk/blog/?p=64</guid>
		<description><![CDATA[“Cloud Computing” is becoming one of the hottest buzzwords in the IT industry. It has been brewed over the last few years, now it is publicly recognized as the fifth paradigm shifts in computing. Some leading IT companies such as Amazon, IBM, Microsoft and Google begin to develop the cloud computing concepts with enormous investment. Also, in <a href='http://www.leonli.co.uk/blog/nature-of-cloud-computing-part-1/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>“Cloud Computing” is becoming one of the hottest buzzwords in the IT industry. It has been brewed over the last few years, now it is publicly recognized as the fifth paradigm shifts in computing. Some leading IT companies such as Amazon, IBM, Microsoft and Google begin to develop the cloud computing concepts with enormous investment. Also, in many countries, governments have launched many schemes to catalyse the development of this new technology. In this paper, fundamental concepts of cloud computing, utility computing and existing price models of major cloud providers are described.</p>
<h3>Concepts of Cloud Computing</h3>
<p>Cloud computing was first visualized by a Stanford professor John McCarthy, who predicted in 1961 that “<em>Computation may someday be organized as a public utility</em>”.</p>
<p>Even by now, cloud computing is still an evolving concept. For this reason the definition of cloud computing varies widely. From technical aspect, “<em>Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.”</em></p>
<h3>Utility Computing</h3>
<p>Utility computing is the packaging of computing resources, such as computation and storage, as a metered service similar to a traditional public utility (such as electricity, water, natural gas, or telephone network) .Cloud computing and utility computing are similar. Users are able to request and use a specific amount of resource on demand as through services.</p>
<p>﻿</p>
<p><em>References:</em></p>
<p><em>NIST Definition of Cloud Computing v15 , http://csrc.nist.gov/groups/SNS/cloud-computing/index.html</em></p>
<p><em>Decision support and business intelligence 8th edition page 680</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.leonli.co.uk/blog/nature-of-cloud-computing-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

