<?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>Thoughts by Sze Wong &#187; Software Development</title>
	<atom:link href="http://www.szewong.com/category/softwaredevelopment/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.szewong.com</link>
	<description>Blog about Buisness, Electronics and other thoughts</description>
	<lastBuildDate>Mon, 19 Dec 2011 17:29:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>FISMA / HIPAA Compliance on iOS</title>
		<link>http://www.szewong.com/2011/05/fisma-hipaa-compliance-on-ios/</link>
		<comments>http://www.szewong.com/2011/05/fisma-hipaa-compliance-on-ios/#comments</comments>
		<pubDate>Thu, 05 May 2011 15:04:37 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.szewong.com/?p=224</guid>
		<description><![CDATA[Last night I presented at]]></description>
			<content:encoded><![CDATA[<p>Last night I presented at the MoDevDC Meetup on the topic of security on the iOS platform. It was a fun discussion among 50+ local mobile developers.</p>
<p>Synopsis:<br />
In this presentation, I am going to discuss the technical challenges<br />
of how we secure our app (iForm ES) in order to satisfy various<br />
requirements from FISMA and HIPAA. This is a technical presentation<br />
and code examples will be shared.</p>
<p>- The basics: OS level security, keychain, file attributes,<br />
- Getting to jailbreak proof: local authentication, prevent keyboard<br />
cache, local database encryption<br />
- FISMA/HIPAA Compliance: FIPS 140-2, two factor authentication, intrusion prevention,<br />
end-to-end PKI, X.509 digital signature</p>
<p>Disclaimer: This is not a check list of how to get FISMA/HIPAA certifications. We are simply sharing our experience.</p>
<p>Here is the presentation: <a href="http://www.szewong.com/wp-content/uploads/2011/05/MoDevMeetup-05042011.pdf">MoDevMeetup-05042011</a></p>
<p>And <a href="http://www.explorebefore.com/meetup/MoDev-050411-Code.zip">Code Examples</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2011/05/fisma-hipaa-compliance-on-ios/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The world with tablets</title>
		<link>http://www.szewong.com/2011/03/the-world-with-tablet/</link>
		<comments>http://www.szewong.com/2011/03/the-world-with-tablet/#comments</comments>
		<pubDate>Tue, 29 Mar 2011 13:19:47 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.szewong.com/2011/03/the-world-with-tablet/</guid>
		<description><![CDATA[I was having lunch with]]></description>
			<content:encoded><![CDATA[<p>I was having lunch with a friend and we chat about the future where most people will use the tablet more than a PC. ( I know, that&#8217;s Steve Jobs&#8217; vision, but it&#8217;s also Bill Gates&#8217; and also mine. <img src='http://www.szewong.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ) Anyway, he start asking questions like, &#8220;but is the tablet powerful enough to handle everything&#8221;. </p>
<p>This reminds me of the early day of digital photography when people asked, &#8220;wow, if we are taking hundreds of pictures, wouldn&#8217;t it cost a lot to have them developed?&#8221; &#8220;how do I put them in albums?&#8221; &#8220;what do I do with my baby book if I don&#8217;t print all the pictures out?&#8221; &#8220;So I won&#8217;t be able to flip through the pictures?&#8221;</p>
<p>With new technology, your behavior will change. There will be give and take but to the better for the most part. I think it will be the same in the tablet world. A world where most &#8216;computing&#8217; is done from a tablet like device rather than a PC. Some people will love it, some will hate it, most will adjust to it. That&#8217;s progress and I like it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2011/03/the-world-with-tablet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keep your iPhone apps from crashing</title>
		<link>http://www.szewong.com/2009/10/keep-your-iphone-apps-from-crashing/</link>
		<comments>http://www.szewong.com/2009/10/keep-your-iphone-apps-from-crashing/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 01:39:20 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.szewong.com/?p=180</guid>
		<description><![CDATA[Yes, once again I found]]></description>
			<content:encoded><![CDATA[<p>Yes, once again I found myself having to track down some memory issues. Today I tracked down 3 major areas that cause apps to crash. Yes, even if you do all the great Objective-C alloc/release/dealloc you still will be faced with these.</p>
<p>I think most apps have at least 1 of these 3 potential issues so I&#8217;m writing down what I did to mitigate the issues and keep the apps from crashing.</p>
<p>So here are the 3, in the order of memory consumption:</p>
<p>1. SQLite &#8211; no, there is no memory leak in sqlite, but most people keep one opening connection throughout the app and as you keep creating and freeing prepare statements, it continues to use to memory until the database connection is closed.</p>
<p>2. The Photo Picker &#8211; yes, you thought Apple have fixed it in 3.0. They did, but it&#8217;s still leaking! If your app takes one or two pictures, then it&#8217;s fine. But if your app allows users to potentially take 100 pictures, then eventually you run out of memory, and crash.</p>
<p>3. Network connection. NSURLConnection to be specific. Now-a-days most apps are network enabled and connects to the backend. Some people on the web says the leak is minimal so there&#8217;s no need to worry about. Well, if your app (like games) ping the server every second, then a 100 byte leak will soon add up.</p>
<p>And here are my solutions:</p>
<p>1. To deal with SQLite, you have two options. One is to open and close connections frequently. Depends on where you grow up, you may or may not like this option. I happened to grow up in Oracle land, so creating connection every time is something that I tend not to do. What I did is to force temp tables to be created in files instead of memory, thus reducing consumption. Just add the following line after opening a database connection:</p>
<blockquote><p><span>if</span> (<span>sqlite3_open</span>([path <span>UTF8String</span>], &amp;<span>database</span>) == <span>SQLITE_OK</span>){</p>
<p><span><span> </span></span><span>sqlite3_exec</span><span>(</span><span>database</span><span>, </span><span>&#8220;PRAGMA temp_store=1&#8243;</span><span>, </span><span>NULL</span><span>, </span><span>NULL</span><span>, </span><span>NULL</span><span>); </span>//Force using disk for temp storage to reduce memeory footprint.</p></blockquote>
<div>2. Now the Photo Picker that we all learn to love to hate. The easiest work around is to create a singleton class to limit the memory leak. Basically avoid creating multiple Photo Picker (As everytime you create one, it leaks like 3K).</div>
<div>
<blockquote><p><span>@interface</span> ZCImagePicker : UIImagePickerController {}</p>
<p>+ (<span>ZCImagePicker</span>*)sharedInstance;</p>
<p>@end</p></blockquote>
</div>
<div>
<blockquote><p><span>static</span> ZCImagePicker *myInstance = <span>nil</span>;</p>
<p>@implementation<span> ZCImagePicker</span></p>
<p>+ (<span>ZCImagePicker</span> *)sharedInstance {</p>
<p><span> </span>@synchronized<span>(</span>self<span>) {</span></p>
<p><span>if</span> (<span>myInstance</span> == <span>nil</span>) {</p>
<p><span>myInstance</span> = [[<span>self</span> <span>alloc</span>] <span>init</span>];</p>
<p>}</p>
<p>}</p>
<p><span> </span><span>return</span><span> </span>myInstance<span>;</span></p>
<p>}</p>
<p>- (<span>void</span>)dealloc{</p>
<p><span><span> </span>[</span><span>super</span><span> </span>dealloc<span>];</span></p>
<p>}<span> </span></p>
<p>@end</p></blockquote>
<p>3. Finally on NSURLConnection, just avoid using sendSynchronousRequest. Use the standard async methods you will be fine.</p>
<p>Hope this can help to keep your next iphone apps from crashing.</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2009/10/keep-your-iphone-apps-from-crashing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhoneDevCamp DC Demo</title>
		<link>http://www.szewong.com/2009/08/iphonedevcamp-dc-demo/</link>
		<comments>http://www.szewong.com/2009/08/iphonedevcamp-dc-demo/#comments</comments>
		<pubDate>Sat, 01 Aug 2009 05:50:19 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.szewong.com/?p=168</guid>
		<description><![CDATA[For those of you who]]></description>
			<content:encoded><![CDATA[<p>For those of you who will attend my presentation in the iPhoneDevCamp tomorrow, please do the following in advance to follow along in the demo:</p>
<p>1. Download exZact Lite from the App Store.</p>
<p>2. Goto the Setting screen, key in the following:</p>
<blockquote><p>Email Address: ipdcdc (Yes, it&#8217;s not really an email address, it will work, trust me.)</p>
<p>Server: zerioninc.com</p></blockquote>
<p>3. Hit Sync Data With Server</p>
<p>See you all tomorrow.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2009/08/iphonedevcamp-dc-demo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhoneDevCampDC Presentation Overview</title>
		<link>http://www.szewong.com/2009/07/iphonedevcampdc-presentation-overview/</link>
		<comments>http://www.szewong.com/2009/07/iphonedevcampdc-presentation-overview/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 18:00:26 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.szewong.com/?p=163</guid>
		<description><![CDATA[I&#8217;m going to the iPhoneDevCampDC]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m going to the iPhoneDevCampDC tonight and tomorrow. I will try to present the following. Hope I can get the vote.</p>
<p><a href="http://www.youtube.com/watch?v=_4m33PdMljw">http://www.youtube.com/watch?v=_4m33PdMljw</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2009/07/iphonedevcampdc-presentation-overview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Handling NULL type in the XMLRPC2 package</title>
		<link>http://www.szewong.com/2009/07/handling-null-type-in-the-xmlrpc2-package/</link>
		<comments>http://www.szewong.com/2009/07/handling-null-type-in-the-xmlrpc2-package/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 19:21:07 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.szewong.com/?p=160</guid>
		<description><![CDATA[While working on a client]]></description>
			<content:encoded><![CDATA[<p>While working on a client project, I came across an interesting issue in the PEAR::XMLRPC2 package. By default, it uses the xmlrpc C extension in the system. Now that is great but the implementation of that library is so slightly different between different platforms. I found that on Ubuntu, that library can&#8217;t handle utf-8 encoding (if you know how to do that, let me know), and in some other system it&#8217;s missing all together.</p>
<p>I also found out that you can switch it to use the Php implementation of XML encode/decoding so it should be more cross platform. Great. However, that package doesn&#8217;t handle the NULL type, which the xmlrpc extension does!</p>
<p>As we already have multiple projects using this and many databases have NULL in it, I don&#8217;t want to do through every project to ensure we don&#8217;t send NULLs across, I went ahead and hacked the Php implementation to handle NULL.</p>
<p>Here is what I did (May not be completely correct, if you have better solution, let me know).</p>
<p>STEP 1: Update Value.php<br />
Goto: XML/RPC2/Backend/Php/Value.php. Search for NULL. You will see it explicitly throws an exception. Change the case statment:</p>
<blockquote><p>case &#8216;NULL&#8217;:<br />
$explicitType = &#8216;null&#8217;;<br />
break;<br />
case &#8216;resource&#8217;:<br />
case &#8216;unknown type&#8217;:</p></blockquote>
<p>Then a few lines below, yet another switch-case statement, add the handling of Null:</p>
<blockquote><p>case &#8216;Null&#8217;:<br />
return &#8221;;<br />
default:</p></blockquote>
<p>That&#8217;s it for Value.php. Now any independent Nulls will be handled correctly.</p>
<p>STEP 2: Update Struct.php<br />
To avoid Struct calling encode() on a null pointer, goto /XML/RPC2/Backend/Php/Value/Struct.php. Goto encode(), add two lines:</p>
<blockquote><p>$result .= &#8216;&lt;value&gt;&#8217;;<br />
error_log(&#8220;element is $element&#8221;);<br />
if ($element==null) $result .= &#8216;&lt;string&gt;&lt;/string&gt;&#8217;;<br />
else<br />
$result .= ($element instanceof XML_RPC2_Backend_Php_Value) ?</p></blockquote>
<p>That&#8217;s it.</p>
<p>Now your xmlrpc will return empty string for NULL.</p>
<p>OK, so null is not empty string right? And one should not try to send null through XML? Correct. That&#8217;s why on new code, like on the iPhone, I&#8217;m coding to avoid sending NULL through XML. But on server code, many many of them, I&#8217;m just lazy.</p>
<p>Again, should you have better solution, let me know.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2009/07/handling-null-type-in-the-xmlrpc2-package/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Expert!</title>
		<link>http://www.szewong.com/2009/07/wordpress-expert/</link>
		<comments>http://www.szewong.com/2009/07/wordpress-expert/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 18:44:50 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Just Thoughts]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.szewong.com/?p=158</guid>
		<description><![CDATA[Yesterday, my co-worker called and]]></description>
			<content:encoded><![CDATA[<p>Yesterday, my co-worker called and said where can he find a wordpress expert and said someone should be able to get it done in an hour. So, I asked, what do you need?</p>
<ul>
<li>I have 3 themes that I like, I want to mix them up.</li>
<li>I want to do wrapper pages just like I could in Joomla.</li>
<li>and&#8230;</li>
</ul>
<p>Wo, wo, I said, even if someone is very good with WordPress they can&#8217;t get that done in an hour. So, Sze being Sze, said, &#8220;I will look into it.&#8221;</p>
<p>By 3 pm, I finished:</p>
<p>- Mixing the overeasy theme with videographer theme so some posts uses videographer&#8217;s templates.<br />
- Created custom sidebar for different pages<br />
- Created a new wrapper template for wrapper external pages.</p>
<p>Am I a wordpress expert? No. I am just a friend.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2009/07/wordpress-expert/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UIButton setTitle issue in iPhone OS 3.0</title>
		<link>http://www.szewong.com/2009/07/uibutton-settitle-issue-in-iphone-os-30/</link>
		<comments>http://www.szewong.com/2009/07/uibutton-settitle-issue-in-iphone-os-30/#comments</comments>
		<pubDate>Fri, 10 Jul 2009 05:23:10 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.szewong.com/?p=153</guid>
		<description><![CDATA[I was working on a]]></description>
			<content:encoded><![CDATA[<p>I was working on a client project and come across a bizarre issue. I eventually solved it. Here is the issue, see if you can spot where the problem is.</p>
<p>The following few lines of code generates a button with label &#8220;Next&#8221; in SDK 2.2.1 but under 3.0, the label is gone.</p>
<blockquote><p>UIButton *nextButton = [[UIButton buttonWithType: UIButtonTypeRoundedRect] initWithFrame:CGRectMake(183, 30, 65, 25)];<br />
[nextButton addTarget:self action: @selector(nextSettings) forControlEvents: UIControlEventTouchUpInside];<br />
[nextButton setTitle:@"Next" forState:UIControlStateNormal];<br />
[nextButton setTitleColor:[UIColor blackColor] forState: UIControlStateNormal];<br />
[self.view addSubview:nextButton];</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2009/07/uibutton-settitle-issue-in-iphone-os-30/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setting up headless Ubuntu with XFCE and VNC (Slicehost)</title>
		<link>http://www.szewong.com/2009/06/setting-up-headless-ubuntu-with-xfce-and-vnc-slicehost/</link>
		<comments>http://www.szewong.com/2009/06/setting-up-headless-ubuntu-with-xfce-and-vnc-slicehost/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 17:43:23 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.szewong.com/?p=147</guid>
		<description><![CDATA[I recently have to setup]]></description>
			<content:encoded><![CDATA[<blockquote><p>I recently have to setup a headless Ubuntu box (on slicehost) with GUI support. After search the web I couldn&#8217;t find a clean solution. So here it is, hopefully people don&#8217;t have to spend as much time as I did.</p>
<p>This solution is based on Ubuntu install on slicehost.</p>
<p><span style="text-decoration: underline;">STEP 1 (SERVER):</span><br />
First, setup your machine&#8217;s basic security by following this:<a href="http://articles.slicehost.com/2008/4/25/ubuntu-hardy-setup-page-1"></p>
<p>http://articles.slicehost.com/2008/4/25/ubuntu-hardy-setup-page-1</a></p>
<p><span style="text-decoration: underline;">STEP 2 (SERVER):</span><br />
Next, ssh to your box with your admin user (not root) and install xfce and vnc:<br />
&gt;sudo aptitude install vnc4server<br />
&gt;sudo aptitude install xfce4</p>
<p><span style="text-decoration: underline;">STEP 3 (SERVER): </span><br />
Now we want to run a quick test on the vncserver:<br />
&gt;vnc4server -geometry 1024&#215;768</p>
<p>It should ask for a password, type in something you can remember, this will be your vnc password.<br />
You should see something like:</p>
<pre style="padding-left: 30px;">You will require a password to access your desktops.

Password:
Verify:
xauth:  creating new authority file /home/adminA/.Xauthority

New 'HostA:1 (adminA)' desktop is HostA:1

Creating default startup script /home/adminA/.vnc/xstartup
Starting applications specified in /home/adminA/.vnc/xstartup
Log file is /home/adminA/.vnc/HostA:a.log</pre>
<p>All seems fine. Now kill vnc:<br />
&gt;vnc4server -kill :1</p>
<p><span style="text-decoration: underline;">STEP 4 (SERVER):</span><br />
Setup vnc to start xfce:<br />
&gt;vi ~/.vnc/xtartup (or use your favorite editor)</p>
<p>The file should look lie:</p>
<pre style="padding-left: 30px;">#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] &amp;&amp; exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] &amp;&amp; xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &amp;
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &amp;
twm &amp;</pre>
<p>Now change the last couple of lines to:</p>
<pre style="padding-left: 30px;">xsetroot -solid grey
vncconfig -iconic &amp;
# xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &amp;
# twm &amp;
startxfce4</pre>
</blockquote>
<p style="padding-left: 30px;">Server setup is now DONE!</p>
<p style="padding-left: 30px;"><span style="text-decoration: underline;">STEP 5 (Client):<br />
</span>If you have followed the setup in Step 1, your iptables should be configured to open only http, https and ssh. Instead of opening port for VNC, we will do ssh tunneling. (Slightly more hassle but much more secure):</p>
<p style="padding-left: 30px;">On your client machine (Windows, Mac, etc), with your favorite ssh client:</p>
<p style="padding-left: 30px;">(assume you setup your ssh port in step 1 to 4567, hostA is the server name, adminA is the username)</p>
<p style="padding-left: 30px;">&gt;ssh -p 4567 -L 5902:localhost:5901 hostA -l adminA</p>
<p style="padding-left: 60px;">On Putty (PC),</p>
<p style="padding-left: 60px;">Goto the Tunnels setting inside Connection-&gt;ssh<br />
Source Port : 5902<br />
Destination: localhost:5901<br />
Hit Add. The following should show up in the Forwarded ports list:<br />
&#8220;L5901 localhost:5901&#8243;</p>
<p style="padding-left: 30px;">Once logged in the server, start vnc:</p>
<p style="padding-left: 30px;">&gt;vnc4server -geometry 1024&#215;768</p>
<p style="padding-left: 30px;">Then leave the session running. You are almost done.</p>
<p style="padding-left: 30px;"><span style="text-decoration: underline;">STEP 6 (Client):<br />
</span>Now just start your favortie VNC client and connect to: localhost:5902</p>
<p style="padding-left: 30px;">Note because we are using SSH tunnel, VNC to connect to localhost instead of your server. Port should be 5902 and not 5901. SSH will do the rest.</p>
<p style="padding-left: 30px;">XFCE should now show up.</p>
<p style="padding-left: 30px;"><span style="text-decoration: underline;">STEP 7 (Client)<br />
</span>Yes, there is a Step 7. That&#8217;s the clean up. We don&#8217;t want VNC to be running all the time so when you are done, before killing the ssh session, kill VNC:</p>
<p style="padding-left: 30px;">&gt;vnc4server -kill :1</p>
<p style="padding-left: 30px;">
<p style="padding-left: 30px;">From now on all you need to do is to repeat Step 5-7.</p>
<p style="padding-left: 30px;">Enjoy!</p>
<p style="padding-left: 30px;">
<p style="padding-left: 30px;">
<p style="padding-left: 30px;">
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2009/06/setting-up-headless-ubuntu-with-xfce-and-vnc-slicehost/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vote Report Wins the Golden Dot Award</title>
		<link>http://www.szewong.com/2009/04/vote-report-wins-the-golden-dot-award/</link>
		<comments>http://www.szewong.com/2009/04/vote-report-wins-the-golden-dot-award/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 15:41:30 +0000</pubDate>
		<dc:creator>Sze Wong</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[polc09]]></category>
		<category><![CDATA[vote report]]></category>

		<guid isPermaLink="false">http://www.szewong.com/?p=123</guid>
		<description><![CDATA[Yesterday I went to the]]></description>
			<content:encoded><![CDATA[<p>Yesterday I went to the Politics Online Conference in Washington D.C. for the Golen Dot Award. Since so many of my friends ask &#8220;What is that?&#8221;, I&#8217;m going to talk a bit about the project and the award itself. I will then post a follow-up blog on my experience yesterday in more detail.</p>
<p>The award is the Golden Dot Award from the Institute for Politics, Democracy, &amp; the Internet at George Washington University. Every year, they organize the PoliticsOnline Conference in Washinton D.C. and announce the best internet projects related to politics. This year, our project, the TweeterVoteReport and Inauguration Report, <a href="http://www.ipdi.org/News/DocumentSingle.aspx?DocumentID=24618">won the Best Mashup</a> category.</p>
<p>The projects, VoteReport and InaugurationReport, are Crowdsourcing <em>Political</em> Journalism projects. In plain English, it&#8217;s using social network technology and allows the public to document political events. During last year&#8217;s election and the inauguration in Jan, we use the same technology and allow people to share their experience. The result is huge amount of data (text report, photo, audio, video) with geo location information. We collect data through Twitter, SMS, Filckr, Youtube, iPhone and Android. We then open up this stream of data and allow any media outlet to mashup in anyway they want. The project is completly open-source. The project was organized by NPR, Tech President, American Univeristy and CBS News. There are over 20 developers participated in these projects, including  <a href="http://twitter.com/sanford">Sanford Dickert</a> from <a href="http://www.contagiousconversations.com/">Contagious Conversations</a>, <a href="http://twitter.com/davetroy">Dave Troy</a> from <a href="http://twittervision.com/">TwitterVision</a>, <a href="http://twitter.com/ajturner">Andrew Turner</a> from <a href="http://www.geocommons.com/">GeoCommons</a>, <a href="http://twitter.com/szewong">Sze Wong</a> from <a href="http://www.zerionconsulting.com/">Zerion Software</a>, and <a href="http://twitter.com/natdefreitas">Nathan Freitas</a>. Full contributor list of the vote report project can be found <a href="http://blog.twittervotereport.com/about/">here</a>.</p>
<p>You can read more about the projects in my pervious blogs or the following links:</p>
<p>http://techpresident.com/blog-entry/vote-report-wins-golden-dot</p>
<p>http://afine2.wordpress.com/2009/04/13/twitter-vote-report-goes-to-india/</p>
<p>http://blog.twittervotereport.com/</p>
<p>http://www.npr.org/blogs/inside/2009/01/inauguration_report_is_live.html</p>
<p>http://www.npr.org/templates/story/story.php?storyId=99395388</p>
<p>http://www.inaugurationreport.com/</p>
<p>Like I said on the Panel yesterday, it&#8217;s been a great honor working on this project. From both the social data collection and development collaboration perspectives, this project was a great success.</p>
<div id="attachment_124" class="wp-caption alignnone" style="width: 235px"><a rel="attachment wp-att-124" href="http://www.szewong.com/?attachment_id=124"><img class="size-medium wp-image-124" title="3112_89119178456_604473456_1878604_3831474_n" src="http://www.szewong.com/wp-content/uploads/2009/04/3112_89119178456_604473456_1878604_3831474_n-225x300.jpg" alt="Sze Wong holding the Golen Dot Award" width="225" height="300" /></a><p class="wp-caption-text">Sze Wong holding the Golen Dot Award</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.szewong.com/2009/04/vote-report-wins-the-golden-dot-award/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

