<?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>2 Cents on MMOs &#187; Noir</title>
	<atom:link href="http://pennymo.com/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>http://pennymo.com</link>
	<description>My random musings about the gaming industry</description>
	<lastBuildDate>Sun, 29 Aug 2010 20:56:36 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Getting Rid of Antimalware Doctor</title>
		<link>http://pennymo.com/2010/08/29/getting-rid-of-antimalware-doctor/</link>
		<comments>http://pennymo.com/2010/08/29/getting-rid-of-antimalware-doctor/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 20:56:36 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[getting rid of malware doctor]]></category>
		<category><![CDATA[howto fix malware]]></category>
		<category><![CDATA[removing malware doctor]]></category>
		<category><![CDATA[removing spyware]]></category>

		<guid isPermaLink="false">http://pennymo.com/?p=229</guid>
		<description><![CDATA[Malware authors are guilty of racketeering
Ya know, I am normally a person who very much lives by the golden rule, live and let live, easy going. But something happened to me recently that made me want to go find someone, kidnap them and create a video as a warning to anyone else that would create [...]]]></description>
			<content:encoded><![CDATA[<h1>Malware authors are guilty of racketeering</h1>
<p>Ya know, I am normally a person who very much lives by the golden rule, live and let live, easy going. But something happened to me recently that made me want to go find someone, kidnap them and create a video as a warning to anyone else that would create the insidious type of extortion that is the self installing, self propagating &#8220;anti spyware&#8221; maleware.</p>
<p>(actually I have a very good idea of what I wanted to do, but it was so graphically violent I was afraid I&#8217;d get a visit from the FBI the day after posting it)</p>
<p>This blog entry is in two parts:</p>
<p>The Second part details (in great detail) how to get rid of malware that installs itself onto your computer, by hand. This is not a Terse how to, but provides more detail on to what kinds of things to look for and how. Also an attempt to document a specific technique that can be used on any type of software. If this is what you are interested scroll down to &#8220;How To&#8221;.</p>
<p>First is a personal reasoning of why malicious malware authors are guilty of organized blackmail, extortion, racketeering, trespassing, and another number of other offenses, and should be prosecuted with all the zeal and resources as any other organized crime. What they do is no different from a gang shaking down locals for protection money.</p>
<p>What act am I talking about? A tracking cookie was hijacked and used to install a program called &#8220;Antimalware Doctor&#8221; on one of the windows vista systems in my house. I lost several hours of my life removing this, this, abomination, from my system. Fortunately for me, this type of thing has happened before in my house. Usually to one of my kids who would pick up something from one of the free game websites (I tracked one back to newgrounds.com once, before they implemented security changes, now newgrounds is one of the safest places to play free games).</p>
<p>This is a type of malware that installs itself, and tries to disguise itself as windows defender, and other legitimate anti virus software.</p>
<p>In this case it installed a trey icon that popped up messages saying the system is infected.</p>
<p>This particular version, &#8220;Antimalware Doctor&#8221; is particularly nasty, it manages to insert iself as a legimit virus scanner (in this case I think it was using a debugging feature).</p>
<p>After a few minuites of operation, &#8220;Antimalware Doctor&#8221; Starts flagging _every_ process as potentially infected, preventing any new process from starting. It also seemed to detect when taskmgr.exe or regedit.exe where executed. I discovered that if askmgr.exe or regedit.exe was the first thing I ran (or put it in the start menu) then &#8220;Antimalware Doctor&#8221; couldn&#8217;t prevent them from executing. But anything else launched after that would fail to execute. (admittedly, I did not try running them from the command prompt, so the mechanism could have been to intercept windows explorer)</p>
<p>Another thing this nasty bugger did to the system was set up a system wide proxy so that Internet Explorer, Firefox, Chrome, and any other browser could not get to the internet. The proxy actually directed all internet traffic to go through 127.0.0.1 (For those of you who have never seen this before, this is an internal address of your own computer) Malware doctor created a web page on the local system that read &#8220;this page is infected&#8221;. A hapless user get&#8217;s this page NO MATTER WHERE they go. www.google.com and www.microsoft.com came up as infected.</p>
<p>One more bit of text before I get to the good stuff. Who ever wrote this nasty thing, and those who have written it&#8217;s brethren. Let it be known that the authors, and distributors of this thing are committing <a title="extortion" href="http://www.answers.com/topic/extortion" target="_blank">extortion </a>and <a title="BlackMail" href="http://www.answers.com/topic/blackmail" target="_blank">blackmail</a>. In the truest sense of their definitions.</p>
<p>I submit to you one of the legal definitions of extortion and blackmail:</p>
<blockquote><p>The obtaining of property from another induced by wrongful use of actual  or threatened force, violence, or fear, or under color of official  right.</p></blockquote>
<blockquote><p>The crime involving a threat for purposes of compelling a person to do  an act against his or her will, or for purposes of taking the person&#8217;s  money or property.</p></blockquote>
<p>The goal of &#8220;Antimalware Doctor&#8221; is to get you to go to a website and pay money to get rid of it. Simple as that. They did something to me, I didn&#8217;t want done, and they will keep doing it to me. Part of what they are doing is demanding money from me, another thing they are doing is preventing me from earning a living by effectively rendering the tools of my trade inoperable until I pay a fee. (I am hoping that some attorney general will take up a class action case and go after these racketeers). Yes I honestly believe the authors of &#8220;Malware Doctor&#8221; are guilty of crimes that are covered under the US <a href="http://en.wikipedia.org/wiki/Racketeer_Influenced_and_Corrupt_Organizations_Act">RICO</a> act. I would greatly enjoy discussing this with any organization willing to peruse legal action against the authors of &#8220;Antimalware Doctor&#8221;.</p>
<p>I felt like someone broke into my house, filled it with boxes, then demanded I pay a moving company. without even promising to take the boxes away.</p>
<p>Barring legal action, If you find yourself infected with &#8220;Antimalware Doctor&#8221; here are the steps I used to get rid of it. Although this process, and registry entries are for &#8220;Antimalware Doctor&#8221; this technique should work for most forms of malware.</p>
<h1>How To</h1>
<p>(author&#8217;s note: I was not able to use &#8220;<a href="http://www.revouninstaller.com/">revo-uninstaller</a>&#8221; because it was not on this particular system. I suspect revo&#8217;s <a href="http://www.revouninstaller.com/revo_uninstaller_uninstall_features.html">&#8220;hunter&#8221; mode</a> would have been able to nuke this guy. I have a lot of respect for the authors of <a href="http://www.revouninstaller.com/">Revo Uninstaller</a> and highly recommend it to anyone who does software development, plays a lot of games, or does casual experimentation on a system. Disclaimer: I do not know the authors of Revo, I have never worked with them (to the best of my knowledge). But if I ever did meet them I&#8217;d like to buy them a beer)</p>
<p>In general the procedure I use is:</p>
<h3>#1 find the executables in the file system and turn off all permissions</h3>
<h3>#2 rename the executable, and the directories they are in</h3>
<h3>#3 Boot the system into &#8220;safe mode&#8221;</h3>
<p>(At this point it might be easier just restoring the system to the last &#8220;Save Point&#8221;, but sometimes that does not work)</p>
<h3>#4 search for the executables in the registry and document GUIDs and other keywords</h3>
<h3>#5 search the registry for those GUIDs and other keywords, and remove them</h3>
<h3>#6 Finally, delete the registry entries for the executables, and the executables themselves.</h3>
<h3>#7 Fix the bogus &#8220;Proxy&#8221; settings</h3>
<h2>#1 Find the executable</h2>
<p>Ctrl+alt+delete and launch task manager.</p>
<p>(Also note, you need local administrative privileges to do most of this work)</p>
<p>Normal applications will appear under the &#8220;applications&#8221; tab. You will not find it there, you need to go to processes, and enable viewing of all processes.</p>
<p>All malware I have encountered use random or obscure executable names. For Antimalware Doctor, the executables did not have a description, a sure sine of something you don&#8217;t want running.</p>
<p>In this case the executable names are</p>
<pre>newsecureapp70700.exe
</pre>
<p>and</p>
<pre>vwmpqicshdw.exe</pre>
<p>First, be aware that new versions of windows allow you to control the permissions an executable has.</p>
<p>How here is a handy trick. In windows task manager right click on the executable name. You should see &#8220;open file location&#8221; on the top. click that.</p>
<p>A file browser window will open containing the offending files.</p>
<p>your next goal is to find any executable or extension and remove all of it&#8217;s permissions.</p>
<p>There may be several executables and .dll files. Antimalware Doctorput it&#8217;s own .dlls and executables in a directory by itself, so they where easy to find. In this case you want to change the permissions on everything in the directory.</p>
<p>Some malware will put there executables in a system directory alongside a bunch of important operating system files. In that case you need to be really careful what you change, rename and delete.</p>
<p>when you right clicked on the executable (in windows task manager) an selected &#8220;Open file location&#8221; the executable should be selected in the file browser.</p>
<p>Right click on the offending executable.</p>
<p>select &#8220;Properties&#8221; (last menu item on the bottom)</p>
<p>(also note the title of the window will have the executable&#8217;s name, quickly double check you are changing the properties for the right executable)</p>
<p>Click on the &#8220;Security&#8221; Tab at the top of the properties window</p>
<p>There are two &#8220;panes&#8221; in this window. The top pane has a list of groups and users, the bottom pane has the permissions.</p>
<p>Your goal is set ALL permissions for ALL users to Deny</p>
<p>First you will need to click the Edit button, and click Continue in the popup (Vista, windows 7 may be different)</p>
<p>Click on a Group name in the top pane, and click deny for all the permissions in the lower pane.</p>
<p>Repeat for every user and group. There are likely just 3: &#8220;SYSTEM&#8221; &#8220;Administrators&#8221; and &#8220;Users&#8221;</p>
<p>Click &#8220;Apply&#8221;</p>
<p>Verify that all permissions are set to deny for each group before hitting OK.</p>
<p>(Note, the first time I did this, it appeared that Antimalware Doctordetected the attempted change when I hit &#8220;OK&#8221;, and undid my change.  But apparently &#8220;apply&#8221; uses some other  mechanism. )</p>
<p>Repeate this process for anything that looks like an executable (.exe) or executable extension (.DLL). Also you might want to remove permissions from all the other files as well. some of them are data required for the malware to detect when it&#8217;s process has been killed, and re-spawn itself. If it can not read the file (Because read permission has been removed) it has a hard time coming back after it&#8217;s processes have been terminated.</p>
<h2>#2 rename the executable, and the directories they are in</h2>
<p>your goal in this step is to prevent the malware from being able to start the next time windows starts.</p>
<p>In my case it was</p>
<pre>C:\Users\Dad\AppData\Roaming\21E71E594E5225D3E6D0124C5B60BFE6\newsecureapp70700.exe
</pre>
<p>After changing permissions I renamed the executable file, every file in the directory. Do this ONLY if the malware is in a directory by itself, if it is in a system directory (somewhere under \windows, just try to rename the executable)</p>
<p>and most importantly</p>
<p>RENAME THE DIRECTORY.</p>
<p>(ONLY if the malware is in a directory all by itself)</p>
<p>If the malware is in a system directory you can try to move the executable to another directory (but that likely will fail)</p>
<p>You might not be able to rename the executable (Because it is running)</p>
<p>Why rename rather than just deleting it?<br />
Well, smart malware authors will not only be able to detect when a malware processes is terminated, but also detect, and prevent deletion of the executable and it&#8217;s directory. This is typically done when the malware discovers it can&#8217;t read or write files in it&#8217;s home directory. If you delete those files, it knows someone is trying to shut it down.</p>
<p>If you just rename the directory it is in, all it&#8217;s files are still available to it. Until you reboot.</p>
<p>When you reboot, there is an entry in the system registry that will try to start the malware, and since the name of the directory has changed, the system will not be able to find the files, and it won&#8217;t be able to execute.</p>
<h2>#3 Boot the system into &#8220;safe mode&#8221;</h2>
<p>Your goal in this step is to boot into an OS mode that will allow you to remove the malware.</p>
<p>restart windows, repeatedly hit F8 before you see the windows logo (sometimes after you see the bios messages, sometimes just during that black time before the windows logo)</p>
<p>A menu will appear allowing you to select which mode to boot the OS.</p>
<p>Select &#8220;Safe mode&#8221;</p>
<p>I do not recommend &#8220;Safe mode with networking&#8221;, as it might give the malware access to the internet and re-seed itself on your  PC.</p>
<p>At this point you may be able to get rid of the malware simply by restoring the system to it&#8217;s last save point. This did not work for me. So I had to troll through the registry.</p>
<h2>#4 search for the executables in the registry and document GUIDs and other keywords</h2>
<p>First, standard disclaimer. The registry is where the OS and All programs store important configuration information. These steps describe a process akin to doing neuro surgery on your system. change or delete the wrong thing, and the system will never be the same.</p>
<p>open the registry editor (from a command prompt or the start menu&#8217;s search bar) by typing regedit.</p>
<p>I strongly suggest making a backup of the registry before proceeding. (with &#8220;computer&#8221; selected, select file-&gt;export and save the registry to a .reg file somewhere)</p>
<p>First thing, search for &#8220;Antimalware Doctor&#8221; in the registry.</p>
<p>This particular malware actually set registry entries in the system to make it look like it was legitimately installed. There was even an entry &#8220;Antimalware Doctor&#8221; in the installed programs control panel. DO NOT BE FOOLED. it is _very_ easy to add entries here, if you know how. you just need to know how to add some specific data in the system registry.</p>
<p>So, first thing I did was search for &#8220;Antimalware Doctor&#8221; and found a wealth of information.</p>
<p>Specificlly I found the following in the registry</p>
<pre>[HKEY_USERS\S-1-5-21-1662259190-1271292992-2768786752-1000\Software\Antimalware Doctor Inc\Antimalware Doctor]
"datarl1"="KRoAGVdOQwQVExEwGhdaBhw="
"datarl2"="KRoAGVdOQwEIAQglBAZaBhw="
"datarlA"="KRoAGVdOQwQVExEwGhdaBhw="
"install_time"="8/25/2010 5:06:54 PM"
"database_version"="259"
"virus_signatures"="60817"
"affid"="7070010002"
"coid"="21E71E594E5225D3E6D0124C5B60BFE6"
"nsaftscann"="2"
"nsa"="5"
"nsaftscanunp"="2"
"updids"="ciod225,"
"LastScan"="8/26/2010 5:18:15 PM"
"nsstupn"="1"
"nsstupunp"="1"
"nssettlf"="1"
"nsstupsn"="1"
"nsstupsunp"="1"
</pre>
<p>Note: the &#8220;coid&#8221; this looks like a GUID (Genuinely Unique ID). also the number 7070010002&#8243; is similar to the executable name. Also &#8220;updids&#8221; is &#8220;Ciod225&#8243; these all look like they might be references to other entries in the registry.</p>
<p>You will eventually delete this entry, but ONLY after finding everything else.</p>
<p>At this point you might want to look under the registry entries that control what programs start when the OS starts.</p>
<pre>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
</pre>
<p>Once you remove the malware&#8217;s entries in above 4 run keys, theoretically it should start up when you reboot. But, likely it has other ways to start up if not started by the system (such as getting started through the browser proxy re-direct)</p>
<h2>#5 search the registry for those GUIDs and other keywords, and remove them</h2>
<p>Any program in windows depends on the registry. So a malware author is simply not going to put all it&#8217;s vital bits of information where it is easy to find.</p>
<p>at this point search the registry and find references to the executable, and to the other IDs. for Malware doctor I found several, and here they are.</p>
<pre>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Management\ARPCache\Antimalware Doctor]</pre>
<pre>
<pre>Under the registry entry:</pre>
<p>[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]</pre>
<p>I found these two entries:</p>
<pre>"C:\\Users\\Dad\\AppData\\Roaming\\21E71E594E5225D3E6D0124C5B60BFE6\\newsecureapp70700.exe"="WIN95"</pre>
<pre>"C:\\Users\\Dad\\AppData\\Roaming\\21E71E594E5225D3E6D0124C5B60BFE6\\upd_debug.exe"="WIN95 DISABLETHEMES DISABLEDWM"</pre>
<p>And, remember when I mentioned that it was easy to add entries to the list of software installed on your system? This is all that had to be done to get antimalware doctor to look like a legit program on your system. Technically all you need is the registry key, and the entry &#8220;DisplayName&#8221;, and that will create a bogus entry that will show up as an un-uninstallable software package.</p>
<pre>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall\Antimalware Doctor]
"DisplayIcon"="C:\\Users\\Dad\\AppData\\Roaming\\21E71E594E5225D3E6D0124C5B60BFE6\\newsecureapp70700.exe,0"
"DisplayName"="Antimalware Doctor"
"UninstallString"="C:\\Users\\Dad\\AppData\\Roaming\\21E71E594E5225D3E6D0124C5B60BFE6\\newsecureapp70700.exe /uninstall"
"InstallLocation"="C:\\Users\\Dad\\AppData\\Roaming\\21E71E594E5225D3E6D0124C5B60BFE6\\"
"NoModify"=dword:00000001
"NoRepair"=dword:00000001</pre>
<p>Note: if you try to actually run the uninstaller, all you get is an internet explorer window open to the &#8220;purchase product&#8221; page for &#8220;antimalware doctor&#8221; this registry entry tells us that the executable file newsecureapp70700.exe actually pops up internet explorer.</p>
<p>Also I found a bunch of bogus entries under one of the run keys</p>
<pre>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"wamcenxros.exe"="\"C:\\Users\\Dad\\AppData\\Local\\Temp\\wamcenxros.exe\""
"aomcnxerws.exe"="\"C:\\Users\\Dad\\AppData\\Local\\Temp\\aomcnxerws.exe\""
"haw389r7uifhdfigdhudf"="C:\\Users\\Dad\\AppData\\Local\\Temp\\zgwqduyts.exe"
"Rbifuvupoqoxevu"="rundll32.exe \"C:\\Users\\Dad\\AppData\\Local\\cprfech.dll\",Startup"
"newsecureapp70700.exe"="C:\\Users\\Dad\\AppData\\Roaming\\21E71E594E5225D3E6D0124C5B60BFE6\\newsecureapp70700.exe"
"hsfio38fiosfh398rfisjhkdsfd"="C:\\Users\\Dad\\AppData\\Local\\Temp\\services.exe"
"trawgd327uhf838jdfdsfdfds"="C:\\Users\\Dad\\AppData\\Local\\Temp\\drweb.exe"
"lhmerppl"="C:\\Users\\Dad\\AppData\\Local\\fflolomif\\vwmpqicshdw.exe
"Whabivanomozo"="rundll32.exe \"C:\\Users\\Dad\\AppData\\Local\\apogufutufumulig.dll\",Startup"
</pre>
<p>This almost made me think I had more than one creepy thing going on&#8230;</p>
<p>either way, you can see that modern malware is not simply one component, but a carefully crafted set of components. All designed with one purpose, prevent you from removing them, and directing you to a website for extortion of funds.</p>
<p>Also I found some bogus entries under the windows reg key:</p>
<pre>[HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\Shell\MuiCache]
</pre>
<p>Entries under that key usually refer to programs that lie under the /windows or /program files directories. But I found:</p>
<pre>"C:\\Users\\Dad\\AppData\\Roaming\\21E71E594E5225D3E6D0124C5B60BFE6\\newsecureapp70700.exe"="newsecureapp70700"
"C:\\Users\\Dad\\AppData\\Local\\fflolomif\\vwmpqicshdw.exe"="vwmpqicshdw"</pre>
<h2>#6 Finally, delete the registry entries for the executables, and the executables themselves.</h2>
<p>Brief step. I took note of the OIDs and file names of the registry entries I found. Whenever I found a registry entry for the malware I saved that key off to a file.</p>
<p>You might thing this would be a never ending process, but it turns out there where only a few keywords used repeatedly</p>
<pre>vwmpqicshdw
21E71E594E5225D3E6D0124C5B60BFE6
newsecureapp70700
Antimalware Doctor</pre>
<p>I removed all registry entries with those keywords. Then finally went and removed the following Directories</p>
<pre>C:\Users\Dad\AppData\Local\fflolomif\
C:\Users\Dad\AppData\Roaming\21E71E594E5225D3E6D0124C5B60BFE6\</pre>
<h2>#7 Fix the bogus &#8220;Proxy&#8221; settings</h2>
<p>Malware Doctor did something extra Nasty. They set up a bogus proxy, so that every network request would be redirected through an IP address they could control. In this case, that IP address was your own PC. There are two ways to fix this, through the Internet settings control panel, or through the registry. Most people can figure it out through the control panel. But if you are comfortable with editing the registry. you just have to know which reg entry to tweak:</p>
<pre>HKEY_CURRENT_CONFIG\Software\Microsoft\windows\CurrentVersion\Internet Settings</pre>
<p>simply set the value of &#8220;proxy enable&#8221; to 0 (zero) (right click on the word &#8220;Proxy Enable&#8221; and select &#8220;modify&#8221; set the value to 0 and click OK.</p>
<p>Note: if you are reading this looking for electronic forensic information on this malware, you might find the following interesting, from the arp cache in the registry:</p>
<pre>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Management\ARPCache\Antimalware Doctor]
"SlowInfoCache"=hex:28,02,00,00,01,00,00,00,00,a0,13,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,43,00,3a,00,5c,00,55,00,73,00,65,00,72,00,73,00,\
 5c,00,44,00,61,00,64,00,5c,00,41,00,70,00,70,00,44,00,61,00,74,00,61,00,5c,\
 00,52,00,6f,00,61,00,6d,00,69,00,6e,00,67,00,5c,00,32,00,31,00,45,00,37,00,\
 31,00,45,00,35,00,39,00,34,00,45,00,35,00,32,00,32,00,35,00,44,00,33,00,45,\
 00,36,00,44,00,30,00,31,00,32,00,34,00,43,00,35,00,42,00,36,00,30,00,42,00,\
 46,00,45,00,36,00,5c,00,6e,00,65,00,77,00,73,00,65,00,63,00,75,00,72,00,65,\
 00,61,00,70,00,70,00,37,00,30,00,37,00,30,00,30,00,2e,00,65,00,78,00,65,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
 00,00,00,00,00,00,00,00
"Changed"=dword:00000000

I suspect there is lots of juicy information on the route this malware took to get to my PC. If I knew how to decode the arp cache.
</pre>
<p><a href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="Delicious" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="Reddit" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="Twitter" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="Slashdot" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a> <a href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="Digg" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a> <a href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="Facebook" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a href="http://www.addtoany.com/add_to/blogger_post?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="Blogger Post" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/blogger.png" width="16" height="16" alt="Blogger Post"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/yahoo_bookmarks?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="Yahoo Bookmarks" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/yahoo.png" width="16" height="16" alt="Yahoo Bookmarks"/></a> <a href="http://www.addtoany.com/add_to/myspace?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="MySpace" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/myspace.png" width="16" height="16" alt="MySpace"/></a> <a href="http://www.addtoany.com/add_to/windows_live_favorites?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor" title="Windows Live Favorites" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/live.png" width="16" height="16" alt="Windows Live Favorites"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F08%2F29%2Fgetting-rid-of-antimalware-doctor%2F&amp;linkname=Getting%20Rid%20of%20Antimalware%20Doctor"><img src="http://pennymo.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2010/08/29/getting-rid-of-antimalware-doctor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Has the game industry finally figured out women?</title>
		<link>http://pennymo.com/2010/07/22/has-the-game-industry-finally-figured-out-women/</link>
		<comments>http://pennymo.com/2010/07/22/has-the-game-industry-finally-figured-out-women/#comments</comments>
		<pubDate>Thu, 22 Jul 2010 16:32:50 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[MMO topics]]></category>
		<category><![CDATA[game marketing]]></category>
		<category><![CDATA[virtual goods]]></category>
		<category><![CDATA[Women]]></category>

		<guid isPermaLink="false">http://pennymo.com/?p=227</guid>
		<description><![CDATA[A new study published recently  show that women outspend men. As reported by gamasutra
In their second annual survey on &#8220;Virtual Goods Market Penetration and  Growth in North America,&#8221; the two firms found that the median of digital  goods purchases grew 67 percent from $30 in 2009 to $50 in the current  year. [...]]]></description>
			<content:encoded><![CDATA[<p>A new study published recently  show that women outspend men. As reported by <a title="Gamasutra article reporting female Virtual Item Spend" href="http://www.gamasutra.com/view/news/28747/Study_Average_Digital_Goods_Buyers_Spending_14_Percent_More_In_2010.php" target="_blank">gamasutra</a></p>
<blockquote><p>In their second annual survey on &#8220;Virtual Goods Market Penetration and  Growth in North America,&#8221; the two firms found that the median of digital  goods purchases grew 67 percent from $30 in 2009 to $50 in the current  year. More than one-fifth, or 21 percent, of digital goods buyers said  they intend to purchase more in the next 12 months, too.</p></blockquote>
<p>Not only are women a major market in games using virtual goods, the spend on virtual goods has increased.</p>
<blockquote><p>
Research firm Frank N. Magid Associates and in-game commerce platform PlaySpan report that 13 percent of the North American population (12 to 64 years) with internet access purchase digital goods, and that those consumers spent an average of $99 on those items in 2010 &#8212; a 14 percent increase over the average of $87 spent in the previous year.</p></blockquote>
<p>This strikes me as a measurable progress toward a long time goal of the games industry: Make games women are interested in playing (and thus paying for). For decades game developers in NA and EU have struggled to figure out how to engage women. For years, some would say, whole console generations, where interesting to a majority of teenage males. My position has been that for the game industry to survive it not only needs to broaden market appeal to both sexes, but also a much broader age bracket.</p>
<p>So, Is this report a sign of Victory(is this as good as it is going to get)? or a signpost on the road to a bigger and broader market?</p>
<p><a href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="Delicious" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="Reddit" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="Twitter" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="Slashdot" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a> <a href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="Digg" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a> <a href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="Facebook" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a href="http://www.addtoany.com/add_to/blogger_post?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="Blogger Post" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/blogger.png" width="16" height="16" alt="Blogger Post"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/yahoo_bookmarks?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="Yahoo Bookmarks" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/yahoo.png" width="16" height="16" alt="Yahoo Bookmarks"/></a> <a href="http://www.addtoany.com/add_to/myspace?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="MySpace" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/myspace.png" width="16" height="16" alt="MySpace"/></a> <a href="http://www.addtoany.com/add_to/windows_live_favorites?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F" title="Windows Live Favorites" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/live.png" width="16" height="16" alt="Windows Live Favorites"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F22%2Fhas-the-game-industry-finally-figured-out-women%2F&amp;linkname=Has%20the%20game%20industry%20finally%20figured%20out%20women%3F"><img src="http://pennymo.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2010/07/22/has-the-game-industry-finally-figured-out-women/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unity 3D and Web Pages Article 1: Represent</title>
		<link>http://pennymo.com/2010/07/17/unity-3d-and-web-pages-article-1-represent/</link>
		<comments>http://pennymo.com/2010/07/17/unity-3d-and-web-pages-article-1-represent/#comments</comments>
		<pubDate>Sat, 17 Jul 2010 20:04:05 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[Game Development]]></category>
		<category><![CDATA[Production]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Application.ExternalCall]]></category>
		<category><![CDATA[document.getElementByID]]></category>
		<category><![CDATA[Game Programming]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Unity 3D]]></category>

		<guid isPermaLink="false">http://pennymo.com/?p=211</guid>
		<description><![CDATA[So what is the use of a web plugin if you can&#8217;t actually control what&#8217;s going on in the plugin from the web page it is part of? This is the first of a small series of articles on integration between the Unity 3D plugin and the web page it sits in.
Background
After a long, day [...]]]></description>
			<content:encoded><![CDATA[<p>So what is the use of a web plugin if you can&#8217;t actually control what&#8217;s going on in the plugin from the web page it is part of? This is the first of a small series of articles on integration between the Unity 3D plugin and the web page it sits in.</p>
<div id="Click Me" class="wp-caption alignnone" style="width: 58px"><a rel="shadowbox" href="http://pennymo.com/Aqueme" title="Aqueme"><img title="Aqueme" src="http://pennymo.com/Aqueme/PlayPlace.ico" alt="Click Me" width="48" height="48" /></a><p class="wp-caption-text">Click Me</p></div>
<h2>Background</h2>
<p>After a long, day job induced, hiatus from Unity 3D, I wanted to put my first unity project to bed before moving onto my next project (a facebook unity integration). After much clean up and fuss it stabilized and has bee posted to <a title="Aqueme game" rel="shadowbox" href="http://pennymo.com/Aqueme/" target="_blank">it&#8217;s own web page</a>. I wanted the game to look clean, which meant I wanted the following:</p>
<ul>
<li>The player&#8217;s score should be displayed in the web page, not within the unity client</li>
<li>Starting a new game should be done from buttons on the web page</li>
<li>Controlling the &#8220;view&#8221; (rotation &amp; zoom)</li>
</ul>
<p>So this meant that I needed to post data from Unity to the web page, and call functions within unity from the web page.</p>
<h2>Putting out</h2>
<p>The first thing to do was figure out how to get player&#8217;s score to be displayed on the web page itself. This turned out to be fairly simple. You need 2 basic things</p>
<ul>
<li>A function defined in the web page for Unity to call</li>
<li>use the &#8220;Application.ExternalCall&#8221; function from within your unity projects</li>
</ul>
<p>Well, you also need to know how to change text in a web page, which it turns out to be pretty simple.</p>
<h3>Changing IDentities</h3>
<p>Some fantasy series I once read used a plot device whereby if you knew a things name you could control it. Well, in the web, if you give a thing a name, you can do all sorts of strange and wonderful things to it.</p>
<p>In the web page, giving something a name, is done by using the id tag. The official definition of ID is found <a title="w3 html definition of ID" href="http://www.w3.org/TR/html401/struct/global.html#adef-id" target="_blank">here.</a></p>
<p>This may be best explined in an example. In my game page I have a &#8220;Red player score&#8221; and a &#8220;Blue player score&#8221;. In the web page I highlight each score by bolding it.</p>
<pre style="padding-left: 30px;">&lt;b id="RPSScoreTxt"&gt;Blue Player Score&lt;/b&gt;</pre>
<p>Just a rule in the fantasy land that is HTML, if you know the name of something you can completely change it. Everything in an HTML page is an object, or more specifically, and html page is represented programmatically within the web browser as an object hierarchy, or <a title="document document" href="http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-1590626201" target="_blank">Document Object Model </a>(DOM for short).</p>
<p>When the page loads (remember this detail)  the text &#8220;Blue Player Score&#8221; will be displayed in it&#8217;s location within the page.</p>
<p>if you know an object&#8217;s name you can get a handle to that object within the DOM. Once you have the handle to an object you can  fiddle with the attributes and data attached to that object.</p>
<h3>Will it come when I call it?</h3>
<p>Having an element with a named ID allows you to get a reference to that object within scripts. Within javascript the object &#8220;document&#8221; represents the web page within the javascript is running. <a title="DOM core definition" href="http://www.w3.org/TR/DOM-Level-2-Core/core.html" target="_blank">getElementByID </a>is a function attached to the document object.</p>
<h3>What is all powerful in a name?</h3>
<p>The next trick is know what to change.</p>
<p>In HTML there is an attribute to every object that is nearly all powerful. The <a title="MS's docuemtation on innerHTML" href="http://msdn.microsoft.com/en-us/library/ms533897%28VS.85%29.aspx" target="_blank">innerHTML </a>attribute allows you to modify or replace the contents of an object. In this the inner HTML of is just some text. (But I did an experiment where unity replaced a simple text entry with an entire table).</p>
<pre style="padding-left: 30px;">function SetRPScore(arg){
 document.getElementById('RPSScoreTxt').innerHTML = ' ' + arg;
 }</pre>
<p>So, if you make the call</p>
<pre style="padding-left: 30px;">SetRPScore("i did i bla bla");</pre>
<p>The text &#8220;Blue Player Score&#8221; would be changed to &#8221; i did i bla bla&#8221;</p>
<p>Remember the above function needs to be defined within &lt;script&gt; &lt;/script&gt; block.</p>
<pre style="padding-left: 30px;">&lt;script language="javascript1.1" type="text/javascript"&gt;</pre>
<pre style="padding-left: 30px;">
<pre style="padding-left: 30px;">function SetRPScore(arg){
 document.getElementById('RPSScoreTxt').innerHTML = ' ' + arg;
 }</pre>
<p>&lt;/script&gt;</pre>
<h2>That was the hard part</h2>
<p>now you have an object with a name you can use to get a handle to. You have a way to change that object, you have a function that takes an argument. The only thing you need to know is the Application.ExternalCall.  That function takes 2 parameters, the name of the function, and a parameter to pass to the function.</p>
<pre>Application.ExternalCall("SetRPScore", 22 );</pre>
<h3>Bottom line (of code)</h3>
<p>so if you want your unity game to make a change, such as set score, in the web page just do the following</p>
<ul>
<li>In your HTML page, give a chunk of text (or anything else) an ID</li>
<li>Create a function(again in your html plage) that changes the innerHTML of that ID</li>
<li>Call that function from within your unity plug-in via Application.ExternalCall</li>
</ul>
<p>And that&#8217;s how it is done. To see the full details look at the source of my <a title="My Game" rel="shadowbox" href="http://pennymo.com/Aqueme/index.html" target="_blank">Aqueme </a>game</p>
<p>Come back later and read my next segment, which go through the more terror prone activity of making a call into the unity plugin from the web page.</p>
<p><a href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="Delicious" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="Reddit" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="Twitter" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="Slashdot" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a> <a href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="Digg" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a> <a href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="Facebook" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a href="http://www.addtoany.com/add_to/blogger_post?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="Blogger Post" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/blogger.png" width="16" height="16" alt="Blogger Post"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/yahoo_bookmarks?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="Yahoo Bookmarks" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/yahoo.png" width="16" height="16" alt="Yahoo Bookmarks"/></a> <a href="http://www.addtoany.com/add_to/myspace?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="MySpace" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/myspace.png" width="16" height="16" alt="MySpace"/></a> <a href="http://www.addtoany.com/add_to/windows_live_favorites?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent" title="Windows Live Favorites" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/live.png" width="16" height="16" alt="Windows Live Favorites"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F07%2F17%2Funity-3d-and-web-pages-article-1-represent%2F&amp;linkname=Unity%203D%20and%20Web%20Pages%20Article%201%3A%20Represent"><img src="http://pennymo.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2010/07/17/unity-3d-and-web-pages-article-1-represent/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Unity Speaks about Apple Terms of Service</title>
		<link>http://pennymo.com/2010/04/23/unity-speaks-about-apple-terms-of-service/</link>
		<comments>http://pennymo.com/2010/04/23/unity-speaks-about-apple-terms-of-service/#comments</comments>
		<pubDate>Fri, 23 Apr 2010 16:10:32 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Unity Apple iPhone iPad Flash]]></category>

		<guid isPermaLink="false">http://pennymo.com/2010/04/23/unity-speaks-about-apple-terms-of-service/</guid>
		<description><![CDATA[it a communication with developers today Unity had this to say about Apple&#8217;s OS4.0 Terms of Service:
A Brief Word About Apple iPhone OS 4
As most folks already know, Apple introduced a new Terms of Service (ToS) with their iPhone OS 4 that has some Unity users concerned. While we don&#8217;t yet have a definitive statement [...]]]></description>
			<content:encoded><![CDATA[<p>it a communication with developers today Unity had this to say about Apple&#8217;s OS4.0 Terms of Service:</p>
<p>A Brief Word About Apple iPhone OS 4<br />
As most folks already know, Apple introduced a new Terms of Service (ToS) with their iPhone OS 4 that has some Unity users concerned. While we don&#8217;t yet have a definitive statement to share at this time, we have a healthy, ongoing dialogue with Apple and it seems clear that it&#8217;s not their intention to block Unity and will continue our efforts to ensure compliance with the Terms. While it&#8217;s possible that ensuring compliance could mean additional engineering on our part, our committed goal is to provide you with uninterrupted ToS compliant tools and we think we&#8217;ll be able to do that.<br />
If you want to stay up-to-date on our official response to this situation then please keep an eye on our company blog, and in particular posts from our CEO David Helgason: Unity Technologies Blog » David Helgason. We want to thank everyone out there for their patience while we work through these changing circumstances. We know it&#8217;s difficult to proceed with uncertainty, we&#8217;re doing all we can to ensure a positive outcome.</p>
<p><a href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="Delicious" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="Reddit" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="Twitter" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="Slashdot" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a> <a href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="Digg" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a> <a href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="Facebook" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a href="http://www.addtoany.com/add_to/blogger_post?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="Blogger Post" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/blogger.png" width="16" height="16" alt="Blogger Post"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/yahoo_bookmarks?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="Yahoo Bookmarks" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/yahoo.png" width="16" height="16" alt="Yahoo Bookmarks"/></a> <a href="http://www.addtoany.com/add_to/myspace?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="MySpace" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/myspace.png" width="16" height="16" alt="MySpace"/></a> <a href="http://www.addtoany.com/add_to/windows_live_favorites?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service" title="Windows Live Favorites" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/live.png" width="16" height="16" alt="Windows Live Favorites"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F04%2F23%2Funity-speaks-about-apple-terms-of-service%2F&amp;linkname=Unity%20Speaks%20about%20Apple%20Terms%20of%20Service"><img src="http://pennymo.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2010/04/23/unity-speaks-about-apple-terms-of-service/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Social media is like a river</title>
		<link>http://pennymo.com/2010/01/22/social-media-is-like-a-river/</link>
		<comments>http://pennymo.com/2010/01/22/social-media-is-like-a-river/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 22:41:03 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://pennymo.com/?p=198</guid>
		<description><![CDATA[Hey, You!
Maby you want to create a more productive work environment. Maby you are astounded by the volume of applications created for systems like facebook, the iPhone, Unity, Flash.
Maby you are just disgusted by the volume of flash games out there compared to the volume of apps that actually help people be more productive, accomplish [...]]]></description>
			<content:encoded><![CDATA[<h2>Hey, You!</h2>
<p>Maby you want to create a more productive work environment. Maby you are astounded by the volume of applications created for systems like facebook, the iPhone, Unity, Flash.</p>
<p>Maby you are just disgusted by the volume of flash games out there compared to the volume of apps that actually help people be more productive, accomplish goals.</p>
<p>Maby a new mental model will help.</p>
<p>Think of these systems as a riverbed, and the applications in them are like water.</p>
<p>and everything that has gone before is like Henry Ford&#8217;s factor pumping out Model Ts.</p>
<h2>HUH?</h2>
<p>Is this just meaningless new age drivel? This blog author hopes not.</p>
<p>How can there be 10s of thousands of apps for the iphone, facebook etc. etc. without having thousands of programmers in huge buildings managed by an army of MBAs? The <em>average </em>iPhone app looses money.  How can this be? Has everyone gone crazy? It is not sustainable!</p>
<p>Well, I believe there may be a &#8220;philosophical&#8221; description that sets Facebook, Flash, iPhone, apart from what has come before.</p>
<p>These new systems are more like a riverbed, which  allows water to, easily and  quickly, flow toward it&#8217;s own natural and desired destination.</p>
<h2>Is a riverbed a thing?</h2>
<p>What if we can not know, ahead of time, what people&#8217;s expectations will be? How do we make products and services that will exceed something we can not know before we begin product development?</p>
<p>Well, don&#8217;t make a thing, do not make a product. Make something that lets other people make products and services. This is not a new idea. Many names have been given to these type of things: Platforms, Enablers, Frameworks. Regardless of the name, they are systems for allowing the mass production of NON identical items in an environment DEVOID of requirements. &#8220;It must run on the iPhone&#8221; and purchased through the app store is NOT a Functional requirement.</p>
<h2>Apple and Nike are not cool</h2>
<p>They &#8220;enable&#8221; cool.</p>
<p>I know I&#8217;ll take a lot of flack, but I say even Apple and Nike do not <em>make </em>cool. It is the people, the community, especially the prosumers that make Apple, Nike, Burton, all the rest. Snowboard, skateboard, marketeers have know this for decades.  It is what prosumers do with produce that makes something cool. That is how Apple and Nike get to be seen as cool.</p>
<h2>The tyranny of requirements</h2>
<p>&#8220;You find a need, and you create a business to fill that need&#8221; the old saying goes. It is the basic, fundamental, notion behind traditional business development.  If someone has defined a need, that implies there has already been a situation that has been unresolved, or not satisfactorily resolved. &#8220;I needed to do X and I couldn&#8217;t&#8221; or &#8220;Y took me 7 hours which meant I could not do Z&#8221;. If we just look at needs we form requirements that make what we do faster and easier.</p>
<p>Pot scrubbers where invented to make cleaning faster. Dishwashers where invented by someone who answered the question &#8220;I expect someone to invent a machine to do it for me&#8221;. This is a well known, understood and discussed result, many texts on usability and design make this point.</p>
<p>Exceeding expectations would be inventing an eating method that does not require cleaning (Do paper plates qualify?)</p>
<p>It has been discovered that discovering underlying expectations, and exceeding them, leads to not only new products, but whole new industries.</p>
<h2>Don&#8217;t touch that</h2>
<p>The simplicity and rich feature sets provided by platforms such as Facebook, iPhone, Unity, increases productivity, and lowers the barrier to entry for all developers. Just like the PC had a much lower barrier of entry compared to Mainframes. This benifits internally developed apps(from the developer of the platform) as well as externally developed apps. The focus on simplicity also allows for high levels of automation. For apple, facebook, myspace, xbl, mixi, content is more like a river that flows through the streambed they have built.</p>
<p>I would compare it to a more traditional model that treats content more like cars through a factory. A factory produces a large number of individual items, all of the automation touches every part of every car made. The automation allows for a large number of cars to be made. Industrialization allows for a lower barrier, and higher volumes than building the products one by one. But it has it does have its limits.</p>
<p>In an industrial model, the creation of individual products is highly automated. This insures consistent product quality, and a relatively high rate of production. As long as each object is identical, and the requirements of each object is known ahead of time. Even with high levels of automation each individual component of each product is touched by the automation several times during the process. This inherently limits the potential output as well as limits the ability for external collaboration(Since the producing organization has to own and centrally house all the automation).</p>
<h2>Don&#8217;t <em>Require </em>anything</h2>
<p>As mentioned above, product produced through an industrial process have to be specified up front. Each component of a product must be completely understood so it can be manufactured. These specifications stem from Requirements. Every industrial process produces products or components &#8220;To customer specifications&#8221; or &#8220;conform to customer requirements&#8221;.</p>
<p>How many social iphone apps, do you think, where developed based on requirements? Did someone say &#8220;I require an application that lets me make shooty noises with my mobile phone&#8221;</p>
<p>Conversely how does the legacy industrial system deal with requirements like &#8220;I want it to be cool&#8221;?</p>
<h2>So What?</h2>
<p>So if you want to replicate what Apple,  Facebook, or other like companies have done, there are some things you need to do:</p>
<p>Realize you are <em>enabling others to achieve </em>their goals and desires. What you create is something that enables others to achieve their goals, not yours</p>
<p>It has to be <em>simple</em>, from every angle. Simple to use, simple to develop for. Don&#8217;t bind it up in corporate IP protection contractual obligations</p>
<p>It has to be <em>compelling. </em>People have to <em>want </em>to user your system to achieve their goals. if they don&#8217;t want to use your system, they will do it some other way, or not at all.</p>
<p>It has to be <em>automated. </em>Armies of people can not create and operate these systems, the model just breaks down. Every time someone involved with your platform has to touch something, like 3rd party content, it reduces your ability to scale, as well as limits everyone ability to contribute.</p>
<p>it has to be <em>focused on the public</em>. This does not really mean a public web site, but that the development and operational environments are focused on the end user/end developer, the public. Having individuals and organizations striving to meet internal goals are actually counter productive. (A great example is having an Entertainment companies  IT department report to the CFO rather than report to the producer or the head of product development)</p>
<p><a href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="Delicious" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="Reddit" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="Twitter" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="Slashdot" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a> <a href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="Digg" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a> <a href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="Facebook" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a href="http://www.addtoany.com/add_to/blogger_post?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="Blogger Post" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/blogger.png" width="16" height="16" alt="Blogger Post"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/yahoo_bookmarks?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="Yahoo Bookmarks" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/yahoo.png" width="16" height="16" alt="Yahoo Bookmarks"/></a> <a href="http://www.addtoany.com/add_to/myspace?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="MySpace" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/myspace.png" width="16" height="16" alt="MySpace"/></a> <a href="http://www.addtoany.com/add_to/windows_live_favorites?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river" title="Windows Live Favorites" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/live.png" width="16" height="16" alt="Windows Live Favorites"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fpennymo.com%2F2010%2F01%2F22%2Fsocial-media-is-like-a-river%2F&amp;linkname=Social%20media%20is%20like%20a%20river"><img src="http://pennymo.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2010/01/22/social-media-is-like-a-river/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Season&#8217;s greetings!</title>
		<link>http://pennymo.com/2009/12/25/seasons-greetings/</link>
		<comments>http://pennymo.com/2009/12/25/seasons-greetings/#comments</comments>
		<pubDate>Sat, 26 Dec 2009 00:01:25 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[happy happy joy joy]]></category>

		<guid isPermaLink="false">http://pennymo.com/2009/12/25/seasons-greetings/</guid>
		<description><![CDATA[Sending Happy Wishes to everyone I have had the pleasure of spending time with. I hope I have enriched your lives as much as you all have enriched mine!
]]></description>
			<content:encoded><![CDATA[<p>Sending Happy Wishes to everyone I have had the pleasure of spending time with. I hope I have enriched your lives as much as you all have enriched mine!</p>
<p><a href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="Delicious" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="Reddit" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="Twitter" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="Slashdot" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a> <a href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="Digg" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a> <a href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="Facebook" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a href="http://www.addtoany.com/add_to/blogger_post?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="Blogger Post" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/blogger.png" width="16" height="16" alt="Blogger Post"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/yahoo_bookmarks?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="Yahoo Bookmarks" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/yahoo.png" width="16" height="16" alt="Yahoo Bookmarks"/></a> <a href="http://www.addtoany.com/add_to/myspace?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="MySpace" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/myspace.png" width="16" height="16" alt="MySpace"/></a> <a href="http://www.addtoany.com/add_to/windows_live_favorites?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21" title="Windows Live Favorites" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/live.png" width="16" height="16" alt="Windows Live Favorites"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F25%2Fseasons-greetings%2F&amp;linkname=Season%26%238217%3Bs%20greetings%21"><img src="http://pennymo.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2009/12/25/seasons-greetings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Social media pushing computing to a tipping point</title>
		<link>http://pennymo.com/2009/12/01/social-media-pusing-computing-to-a-tipping-point/</link>
		<comments>http://pennymo.com/2009/12/01/social-media-pusing-computing-to-a-tipping-point/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 20:52:42 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://pennymo.com/?p=193</guid>
		<description><![CDATA[Virtual Fish are bigger than the Superbowl
Cafe&#8217; world, Zynga&#8217;s fastest growing game. It is estimated to have
over 100 million unique active visitors per month. In ad market terms, that is 1/3 the US population. Compare that to the superbowl (nearly 100 million according to neilson).
One of the interesting facts that I took away from the [...]]]></description>
			<content:encoded><![CDATA[<h1>Virtual Fish are bigger than the Superbowl</h1>
<p>Cafe&#8217; world, Zynga&#8217;s <a href="http://www.insidesocialgames.com/2009/11/30/new-records-for-fishville-and-cafe-world-on-this-weeks-top-facebook-applications-list/">fastest growing game</a>. It is estimated to have<br />
over <a href="http://venturebeat.com/2009/11/23/zynga-crosses-100-million-users-and-expands-beyond-facebook-games/">100 million unique active visitors </a>per month. In ad market terms, that is 1/3 the US population. Compare that to the superbowl (nearly 100 million according to neilson).</p>
<p>One of the interesting facts that I took away from the <a href="http://www.vgsummit.com/2009/">virtual goods summit </a>is the fact that zynga sees 10 dollar a year ARPU (Average revenue per active user over 1 year).</p>
<p>I know, according to all the VCs, that the advertising revenue model is dead, but seriously, placing an ad on these facebook games is dirt cheap compared to the superbowl. AND the quality of the data you can get from a social media campaign is tremendous.</p>
<h2>It takes an abused metaphor to make something grow huge, fast</h2>
<p>It takes a village to. We have all heard that cliche. Growth like what we see in the social media market needs support. Need creates demand, demand typically filled by meta industries that sorround and support the primes (Prime content developers, zynga, playdom, playfish). The social media meta industry is blossoming: Monitization infrastructure is now an industry (we&#8217;ve known that for a while, since we have been working with vindicia, aria, etc. etc.). Metrics companies that compete with cognos are sprouting, as we know there is a huge gap in the promise of cloud and cloud like infrastructure. For once, development tools are keeping pace, mostly because the state of the art is very simple apps, built mostly around flash, and the very very simple facebook API.</p>
<h2>Marketing is not my thing, making stuff work IS</h2>
<p>That simplicity does not yet extend to the back end technologies that run most social media networks. The LAMMP stack is not keeping up(Linux Apache MySQL MemCacheD PhP). It is a technology base, and architecture, that has not changed much in the last 15 years or so. It is  based on an architectural pattern that <a href="http://en.wikipedia.org/wiki/Model-view-controller">dates back to the late 70</a>s(I am referring to MVC). There have been enhancements,  but no fundamental changes to the pattern.   load balancing, concurrency, and scale out are not natural to the pattern.</p>
<h2>I would rather have pie</h2>
<p>Facebook&#8217;s architecture is a step toward the ideal, squishing the technology stack down to only 3 basic layers,  but the architectural ideal would be to flatten the architecture down to one single layer. Rather than web sites being modeled after a layered cake, ideally they would be modeled after a pie (mmmm pie <img src='http://pennymo.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . A single amalgam of infrastructure, that can grow &#8220;out&#8221; as much as needed. insert mouth watering allegory to pie metaphor here.</p>
<p>Personally, I think we are close. One of the technical reasons for multi layered approach to web site design is the capabilities of each individual component(server). Another reason (or side benefit, take your pick) is security.</p>
<h2>Why we have cake instead of Pie</h2>
<p>The Multi layered architectural model is a result of economics: Expensive computers are optimized for various workloads. Basic economic theory, when a resource is scarce, it will be optimized for it&#8217;s largest most profitable market. This is the driving principle behind server design for the last 50 years. Computing power has been scarce, so the computers themselves have been optimized for specific workloads, like running databases. In the late 90s we saw the rise of generalized high density servers, and web server software, dominating the web tier, then a few years later, dominating the app tier. Now we are seeing these generalized high density servers becoming capable of running databases. So, finally, the same high density, low cost, servers are physically capable of running all the software systems used by high scale internet web sites. Which is a step. We are only a generation, or so, away from having a single physical server have enough capacity to run the entire stack of software for a high volume web site. For small websites, we are already there. Most word press based blogs use the same basic architectural pattern as a huge social media web site(web server, app server, database).</p>
<p>The management overhead for running the entire software stack is still too much for a single commodity server. Specifically VMWare and Zen combined with the OS still takes too much compute power away from the application. High volume web sites are still running their entire server farm at very high utilization rates.</p>
<h2>Tipping point ahead?</h2>
<p>Two things can/will happen.</p>
<ol>
<li>The next couple CPU generations will begin to create the kind of compute power that web sites require in order to completely flatten the physical hardware stack.</li>
<li>The movement  of the virtualization functionality down into the hardware (arguably where it belongs). Ideally there should be code in the firmware of the chipset on the server motherboard that provides much of the low level functionality now provided by VMWare/Zen.</li>
</ol>
<h2>The Physical ideal</h2>
<p>The ideal is this: A single, low cost, high density server with enough CPU cores, Memory and memory bandwidth to run OS instances for the web server, app server, and Database, as well as run in-memory IP networks and firewalls between the layers. AND provide lower latentcy and higher concurrency than individual systems connected by networks.</p>
<p>Once this physical ideal is reached, then we can develop enough experience to create a new software pattern that more naturally fits network application development.</p>
<h2>So what, Now and Later?</h2>
<p>So where to invest, where will contributions have the most impact, where are the control points?</p>
<p>In the short term, Anyone working on low level virtualization technologies. nVidia could make a short term killing by coming up with a chipset that could allow Zen/VMWare to virtualize a system with GPUs. (yes GPUs, a surprise technology in server side computing, when physics and stream based processing become important to increasing concurrency, and reducing latency). Also look to the industry veterans, Intel and AMD.</p>
<p>Long term investment, anyone doing research into a new architectural pattern that will replace MVC.  MVC has been in use for nearly 30 years now. The next architectural pattern will be developed in a fraction of the time, and because of the fundamental change in the economics of computing, it&#8217;s adoption rate will be unlike any seen previously.</p>
<h2>It all comes narrowly back</h2>
<p>This accelerated adoption cycle will dramatically narrow the number of players in the meta industry (and you thought I was just rambling, and that thread went nowhere). Put bluntly, when the architecture and techology replacing MVC comes along, it may be only come from one organization. With a likely adoption rate so accelerated that competition has no time to develop.</p>
<h2>Interesting times ahead</h2>
<p>Imagine 90% of the web traffic on the internet switching from one architecture to another in under a year. If zynga can develop and deploy an app in 5 weeks, that reaches 50 million people in 3 weeks. As the farmer used to tell me &#8220;that tells ya somethin right ther&#8221;.</p>
<p><a href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="Delicious" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="Reddit" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="Twitter" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="Slashdot" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a> <a href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="Digg" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a> <a href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="Facebook" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a href="http://www.addtoany.com/add_to/blogger_post?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="Blogger Post" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/blogger.png" width="16" height="16" alt="Blogger Post"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/yahoo_bookmarks?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="Yahoo Bookmarks" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/yahoo.png" width="16" height="16" alt="Yahoo Bookmarks"/></a> <a href="http://www.addtoany.com/add_to/myspace?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="MySpace" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/myspace.png" width="16" height="16" alt="MySpace"/></a> <a href="http://www.addtoany.com/add_to/windows_live_favorites?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point" title="Windows Live Favorites" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/live.png" width="16" height="16" alt="Windows Live Favorites"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F12%2F01%2Fsocial-media-pusing-computing-to-a-tipping-point%2F&amp;linkname=Social%20media%20pushing%20computing%20to%20a%20tipping%20point"><img src="http://pennymo.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2009/12/01/social-media-pusing-computing-to-a-tipping-point/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>XML and Unity3D</title>
		<link>http://pennymo.com/2009/11/21/xml-and-unity-3d/</link>
		<comments>http://pennymo.com/2009/11/21/xml-and-unity-3d/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 01:46:36 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Unity3D game development]]></category>

		<guid isPermaLink="false">http://pennymo.com/?p=182</guid>
		<description><![CDATA[I needed to be able to save game state, and I wanted to communicate back and forth with websites, and I needed the files to be human readable, and I needed it to be easy [I have been told I am very needy]. The best thing for me to do was to figure out how [...]]]></description>
			<content:encoded><![CDATA[<p>I needed to be able to save game state, and I wanted to communicate back and forth with websites, and I needed the files to be human readable, and I needed it to be easy [I have been told I am very needy]. The best thing for me to do was to figure out how to read, and write, XML inside Unity3D. It&#8217;s a web plugin right? it should support XML processing, and the DOM model right? Well, yes, yes it does.</p>
<h1>How does Unity3D do XML?</h1>
<p>Well, Unity3D uses the Mono implementation of the .net XML processor. Honestly I didn&#8217;t really want to know this, I just wanted to process XML. [did I mention that I am both needy AND demanding?].</p>
<p>In Unity3D (for 2.5 and 2.6 at least) it turns out that XML is best processed through C#.</p>
<p>What you need to do</p>
<ul>
<li>Write file open functions in C#</li>
<li>Write XML read and write functions in C#</li>
<li>write a function to read  the XML and process the results</li>
<li>write a function to write game data in XML</li>
<li>Optional: Read and write lists</li>
</ul>
<p>The instructions are a bit confusing, you may just want to Skip them and, just read source code: <a href="http://pennymo.com/wp-content/uploads/2009/11/RnWXML.cs">Read and Write XML from Unity3D</a>.</p>
<h2>Calling C# from JavaScript in Unity3D</h2>
<p>My project is coded in JavaScript, because it is the most productive. But, even though calling the .net functions can be done from JavaScript, it is still a bit of a mystery.  Processing XML is most natural through C#. So now I will have a project that uses both C# and JavaScript.</p>
<h2>Fiddly bit of Unity3D magic</h2>
<p>The first thing you have to know is that the C# files have to be &#8220;built&#8221; first, so the class names can be known to the JavaScript compiler.  The Unity3D documentation mentions that files in the Plugins or Editor folders get built before JavaScript.</p>
<ol>
<li>Create a C# file, place it in the Plugins directory</li>
</ol>
<p>I&#8217;ll cover how to call the C# stuff from JavaScript later.</p>
<h2>Stuff you need to include for C# into Unity3D</h2>
<pre>using UnityEngine;
using System.Collections.Generic;
using System.Xml;
using System.Xml.Serialization;
using System.IO;
using System.Text;</pre>
<p>Unfortunately this (currently) causes a cascade of includes, and you will notice the size of your plugin BLOAT bigtime.</p>
<h2>Opening the file</h2>
<p>It turns out that you will want to open your save file one way for read, and another way for write.</p>
<p>Most of the howtos on the web show reading and writing an XML file by opening a Stream. I found it is MUCH easier to open a stream to write, and open a &#8220;TextReader&#8221; for read.</p>
<p>but first, your C# class needs to be defined:</p>
<pre>public class GameXML : MonoBehaviour
{
 string _FileLocation,_FileName;
 StreamWriter _writer;
 TextReader _reader;</pre>
<p>Then you can open the file. I created one function for read and another for write.</p>
<pre style="padding-left: 30px;">public void OpenSaveFileForWrite()
 {
 FileInfo t = new FileInfo(_FileLocation+"\\"+ _FileName);
 if(!t.Exists)
 {
 _writer = t.CreateText();
 }
 else
 {
 t.Delete();
 _writer = t.CreateText();
 }
 }

 public void OpenSaveFileForRead()
 {
 FileInfo t = new FileInfo(_FileLocation+"\\"+ _FileName);
 if(t.Exists)
 {
 _reader = t.OpenText();
 }
 else
 {
 Debug.Log("SaveFile NotFound");
 }
 }</pre>
<p>Yeah Ok, so I am not taking time to figure out indenting. You can check out formatted code in the included sourcecode.</p>
<h2>Using Unity3D to write XML, it really is just two function calls</h2>
<p>Well, you need a class that describes your games&#8217; save data, but once you have that, all you need to do is turn it into a single text string (Serialization) then write the file out. Also once the data has been serialized, it can be written out using debug routines or printf or whatever, it&#8217;s just a big text string.</p>
<pre>public void WriteGameDataAndTurnSequence(GameSaveGame SGDat )
 {
 string _data = SerializeGame(SGDat);
 Debug.Log("Game Sequence looks like:" + _data); 

 _writer.Write(_data);
 }</pre>
<p>That&#8217;s it&#8230;Well sort of. The GameSaveGame class needs a little esplination. The function above is called from JavaScript. You can pass a reference to a class back and forth between JavaScript and C#. As long as that class has all the data you need then your good. BUT the tricky bit is building a class structure that describes all the data you need. For most games you&#8217;ll have structured data and lists that need to be read and written. This can get a little messy.</p>
<h1>Templates, and sequences classes, Oh My</h1>
<p>Your Serialize function will serialize ONE instance of a class. So in order to read and write complex data, you need to create a russian doll set of class constructs. Lists of class elements held by a &#8220;top level&#8221; class.</p>
<p>Ok, this gets messy. I want to write out a list of turns. the .net serialization can serialize a templated List. This is powerful, it means I can write out a list of arbitrary structure.What you need to know is that you will likely want to define 3 classes:</p>
<p>That One class can contain a Sequence(and tons and tons of other stuff). The Sequence is a class that contains a list of class instances. Your sequence is essentially defined as  a List&lt;ListElementClass&gt;. The Class definition the Sequence, actually sequences is the class definition that holds your actual game data.</p>
<p>Confused? I sure was.</p>
<p>Bottom line, create 3 class definitions in your C# file.</p>
<ol>
<li>One &#8220;top level&#8221; class that defines the top level structure of your game</li>
<li>One (or more) &#8220;Sequence&#8221; classes that hold lists of data</li>
<li>One &#8220;List Element&#8221; class that describes the data in each list element</li>
</ol>
<h3>Top Level</h3>
<p>So my &#8220;top level&#8221; class just needs to really define two members, one for &#8220;settings&#8221; and one for the game&#8217;s turn list.</p>
<pre>public class GameSaveGame
{
 public GameData GameSettings;
 public GameSequence Turns;

 public GameSaveGame()
 {
 GameSettings = new GameData();
 Turns = new GameGameSequence();
 }

 public GameSaveGame(GameData pData, GameSequence pGS)
 {
 GameSettings = pData;
 Turns = pGS;
 }
}</pre>
<h3>Sequence</h3>
<p>my Sequence  GameSequence class so that it would be easy to add elements and stuff like that.</p>
<pre>public class GameSequence
{
 public List&lt;TurnData&gt; TurnList = new List&lt;TurnData&gt;();
 private int Sequence = 0; 

 public GameSequence () { }</pre>
<p>Thee are more convenience functions in the source code, but you get the Idea. Finally, the sequence is a sequence of &#8220;TurnData&#8221; structures. The &#8220;TurnData&#8221; class actually describes what a turn is.</p>
<h3>List Element</h3>
<p>Finally, the inner most nugget. A simple class that describes the data in each turn.</p>
<pre>public class TurnData
{
 public TurnData (){ Unconditional = false; SequenceNum = 0;}
 public TurnData ( int x, int y, int z, int PID, bool cond, int seq)
 {
 X = x;
 Y = y;
 Z = z;
 PlayerID = PID;
 Unconditional = cond;
 SequenceNum = seq;
 }</pre>
<h1>Reading XML with Unity3D</h1>
<p>Reading is just as easy as writing, but I recommend using a different type of stream to read and parse the XML. Extracting XML into game data is just two steps</p>
<ol>
<li>Open the file for read</li>
<li>De-serialize</li>
</ol>
<h2>Open the file for read&#8230;.</h2>
<pre>public void OpenSaveFileForRead()
 {
 FileInfo t = new FileInfo(_FileLocation+"\\"+ _FileName);
 if(t.Exists)
 {
 _reader = t.OpenText();
 }
 else
 {
 Debug.Log("SaveFile NotFound");
 }
 }</pre>
<h2>Reading XML with Unity3D: a little magic</h2>
<p>Here we actually &#8220;do something with XML&#8221;. XmlSerializer is the function that parses the formatted xml data and fills in all those classes you defined.</p>
<pre>GameSaveGame DeserializeGame(TextReader file)
 {
 XmlSerializer xdsg = new XmlSerializer(typeof(GameSaveGame));
 GameSaveGame newGame;
 newGame = (GameSaveGame)xdsg.Deserialize(_reader);
 _reader.Close();
 return newGame;
 }</pre>
<h1>within Unity3D Calling C# from JavaScript</h1>
<p>So, one last thing. How to call the C# functions from Javascript.</p>
<ol>
<li>Declare a variable using the name of the C# file (becomes the class name)</li>
<li>Get the instance of that class</li>
<li>Fill a data structure with your game save data</li>
<li>call your unity3D save/load function</li>
</ol>
<p>It looks something like this</p>
<pre>private var SaveLogic : RnWXML; // note I put my CSharp files in the Plugins directory
SaveLogic = GameRootClass.GetComponent(RnWXML);
var NewGame : SaveGame = SaveLogic.ReadSaveGame(); // the SaveGame class is defined in SaveLogic C#</pre>
<p>I hope this help someone. There are a lot of twiddly bits of magic that need to be strung together in order to read and write XML. What I have NOT done yet is read and write XML from a URL, which will mean opening up a stream reader and writer to an HTTP connection.</p>
<p>That will be interesting, facebook might be a good source of XML&#8230;.<br />
<!-- For more information on installing this code, visit:http://blog.evri.com/index.php/widget-wordpress/ --></p>
<div id="evri-widget-launcher-blogger" style="width:">
<a href="http://www.evri.com/" title="Get content recommendations from Evri">Content recommendations from <em>Evri </em></a>
</div>
<p><script charset="utf-8" src="http://www.evri.com:80/widget/javascripts/ZeroDestruction.1.js" type="text/javascript"></script><br />
<script charset="utf-8" type="text/javascript">
Evri.$(window).ready(function(){
Evri.API.Environment.articleInIframe = true;
Evri.Widget.ZeroDestruction.initWithURL(window.location.href).renderIn("#evri-widget-launcher-blogger");
});
</script></p>
<p>And if you missed the source code link at the beginning of this post: <a href="http://pennymo.com/wp-content/uploads/2009/11/RnWXML.cs">Read and Write XML from Unity</a></p>
<p><a href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="Delicious" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="Reddit" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a> <a href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="Twitter" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="Slashdot" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a> <a href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="Digg" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a> <a href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="Facebook" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a href="http://www.addtoany.com/add_to/blogger_post?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="Blogger Post" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/blogger.png" width="16" height="16" alt="Blogger Post"/></a> <a href="http://www.addtoany.com/add_to/stumbleupon?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="StumbleUpon" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/stumbleupon.png" width="16" height="16" alt="StumbleUpon"/></a> <a href="http://www.addtoany.com/add_to/yahoo_bookmarks?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="Yahoo Bookmarks" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/yahoo.png" width="16" height="16" alt="Yahoo Bookmarks"/></a> <a href="http://www.addtoany.com/add_to/myspace?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="MySpace" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/myspace.png" width="16" height="16" alt="MySpace"/></a> <a href="http://www.addtoany.com/add_to/windows_live_favorites?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D" title="Windows Live Favorites" rel="nofollow" target="_blank"><img src="http://pennymo.com/wp-content/plugins/add-to-any/icons/live.png" width="16" height="16" alt="Windows Live Favorites"/></a> <a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fpennymo.com%2F2009%2F11%2F21%2Fxml-and-unity-3d%2F&amp;linkname=XML%20and%20Unity3D"><img src="http://pennymo.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2009/11/21/xml-and-unity-3d/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Welcome to the 21st century, New with Video Tutorials</title>
		<link>http://pennymo.com/2009/11/17/welcome-to-the-21st-century-new-with-video-tutorials/</link>
		<comments>http://pennymo.com/2009/11/17/welcome-to-the-21st-century-new-with-video-tutorials/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 03:00:15 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[Game Development]]></category>
		<category><![CDATA[MMO Production]]></category>
		<category><![CDATA[Productoin Pipeline]]></category>

		<guid isPermaLink="false">http://pennymo.com/?p=178</guid>
		<description><![CDATA[Let google be your guide, teacher and mentor

In other words "If you want to do something with a technology, someone somewhere has likely done it already and  have bogged about it, and likely shot a video tutorial posted on youtube and vimo".]]></description>
			<content:encoded><![CDATA[<h3>I have been asked this question frequently of late.<br />
It is a good question.</h3>
<h1>Where to Developers get their info?</h1>
<p>You can take official courses in universities, and from organizations like <a href="http://www.fullsail.edu">Full Sail </a>and <a href="https://www.digipen.edu/">Digipen</a> (and <a href="http://www.lafilm.edu/index.cfm?fa=landing.LA_GP_1a&amp;mnc=1170&amp;kw=game%20development&amp;utm_source=Google&amp;utm_medium=cpc&amp;utm_term=game%20development&amp;utm_content=LA_GP_1a&amp;utm_campaign=GD">LA Film School</a>, and <a href="http://www.artinstitutes.edu/orangecounty/Academics/Default.aspx?discipline=6&amp;subdiscipline=&amp;command=Programs&amp;program=363">Art Institute</a>, and check your local university).  Or you can get a traditional degree in computer science, graphic design, and make sure to pick up classes on game development and interactive design.This is a great way to go if you are nearing, or just finished high school.</p>
<p>What if you already way beyond that?</p>
<p>What if you have heard how easy tools like Flash, Unity3D and Torque are to use, and you want to know more.</p>
<p>What if you are just curious?</p>
<p>What if you just need to do some research, but don&#8217;t really need a working knowledge?</p>
<p>Well, guess what, you have arrived at a time just when a golden era of community supported development is on the rise. or if you like sound bytes</p>
<h1>Let google be your guide, teacher and mentor</h1>
<p>In other words &#8220;If you want to do something with a technology, someone somewhere has likely done it already and  have bogged about it, and likely shot a video tutorial posted on youtube and vimo&#8221;.</p>
<address>(Did I mention I am a fan of saying the same thing 5 different ways? I find not everyone understands me, or is evening listening, the first couple times I say something. I find repeating something several different ways, gleefully annoying, as well as brutally effective)</address>
<h1>Instructing you : opposite directions</h1>
<p>Over the past 2 years there have been two completely divergent trends: 1 away from centralized sites with specific topics, and 2, seemly contrary, the emergence of generalized sites with tons of information on how to do everything.</p>
<p>For developers, or the developer curious, or the would-be developer, improvements in google allow anyone to  find whatever they are looking for, no mater wherever it is. Why is this earth shattering? well, in the stone age, before google (like 1998), if you wanted to know how to do something, you likely had to physcially travel to a centralized repository of information, and manually search through physical materials(it was called a LIBRARY). Interesting thing, there is a branch of science, and at least 2 industries and business models that exist to support that method of finding out how to do something.</p>
<p>But now it is the 21st century, and thank the internet we don&#8217;t have to do <em>THAT </em>anymore. As liberating as libraries where, free internet search engines are a tru quantum leap.  Now most info comes from individual sites, found through specific google searches. If we want to know something, we google it. If an individual wants to know ANYTHING, all they have to do is google it. (Sidebar, there are some interesting behavior shifts going on. Now you do not need to understand, or know how to do something before embarking on that thing, you can just google as you go. Think of it as Just-in-time-Know-How).</p>
<p>Back in the library days, information had to be researched, gathered, co-lated, and organized in a manner that made it easy to search by humans. Developers of technology spent large portions of their budget on documentation and training. Now with internet search technology, as soon as someone learns how to do something they can post it on their blog, or create a youtube video. Anyone anywhere on the internet can find that tasty tidbit of information. (assuming the author uses good keywords, and the searcher does to)</p>
<h1>It takes a community to raise a game developer</h1>
<p>How does this notion applyto game development? Most organizations that make technology for game development now-a-days rely on &#8220;their community&#8221; for a large poart of information, education and training materials. For a given technology there will be a main wiki, a primary forum, but then also dozens to thousands of individual blogs and websites. Excellent examples are the communities that support the Unity 3D , and Flash (action script) technologies. The best way to find out anything about these technologies is to start with google. Of course there are some basic tutorials provided by the purveyors of each respective technology, but the tutorials found on the web are specific to each individual goal.</p>
<h2>Is it all coming back together?</h2>
<p>The flip side of this is the emergence of websites like ehow, howstuffworks.com, soyouwanna.com, etc.. A few years ago people started to notice that the ad revenue for youtube videos that provided tutorials was very different than the rest of the whole site. Ad sellers, and buyers, learned that you where much more likely to sell something to someone asking the question &#8220;how do I&#8221;. This has coincided with a re-emergence of the  good old yankee inclination to tinker, referred to in it&#8217;s current incarnation as &#8220;the Maker Movement&#8221;.</p>
<p>Both of these methods of learneing are supported by a growing internet culture of &#8220;learn &amp; teach&#8221;. When people learn something, figure out how to do something, they blog it, tweet it, shoot videos of it.. These blogs, tweets and videos feed both the individuals, and the big web sites like ehow.</p>
<h2>Another emerging trend: professional Micro &#8220;how to videos&#8221;:</h2>
<p>There is a small community of videographers and writers, mostly in and around Hollywood, that shoot short video tutorials. &#8220;Microproductions&#8221; I think they are called. The deal is, when a website like ehow encounters a prospectively profitable set of &#8220;how to&#8221; queries, they will contract a videographer to go film a bunch of very short how to videos. A videographer that specialises in this, is often a TV or Cinema camera opertor between jobs. They will get hired to shoot several dozen how to videos each day. Each individual video might only net 20 bucks or so from the site (like ehow). The production quality does not have to be high, and they can be done in masse. So a single day&#8217;s shooting can net a few hundred bucks, if the videographer is efficient and can direct the subject well.</p>
<p>Also some technical writers are turning to this business model. <a href="http://www.learnmesilly.com/">LearnMeSilly.com </a>is a successful example of how technical instruction may be done from now on. One of that web site&#8217;s principals created some,  tutorials for Unity 3D. Now the author is publishing  a book.</p>
<h2>The book will get published and find its way into Libraries.</h2>
<p>I coined this phrase a year or so ago &#8220;<strong>Welcome to Early 21st century pop culture, now with video tutorials</strong>!&#8221;. (reference to <a href="www.knowyourmeme.com">www.knowyourmeme.com</a>).</p>
]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2009/11/17/welcome-to-the-21st-century-new-with-video-tutorials/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>An untalked about virtual Currency: Achievement Currency?</title>
		<link>http://pennymo.com/2009/10/31/an-untalked-about-virtual-currency-achievement-currency/</link>
		<comments>http://pennymo.com/2009/10/31/an-untalked-about-virtual-currency-achievement-currency/#comments</comments>
		<pubDate>Sat, 31 Oct 2009 22:15:55 +0000</pubDate>
		<dc:creator>Noir</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://pennymo.com/?p=164</guid>
		<description><![CDATA[Achievement Currency, a type of reward for doing accomplishing a goal in the virtual economy. ]]></description>
			<content:encoded><![CDATA[<p>At this year&#8217;s Virtual Goods Summit there was a lot of very good discussion about the two major types of virtual currency in use today:</p>
<ul>
<li>Earned</li>
</ul>
<ul>
<li>Purchased</li>
</ul>
<p>Earned currency is generally given to participants in your virtual economy for work done or time spent. Purchased currency is just that, purchased with cash outside your virtual economy. (kinda like if you dig up gold and exchange that for money, in the real world).</p>
<p>I am purporting there is a 3rd type of currency that can be applied to virtual economies, Achievement Currency, a type of reward for doing accomplishing a goal in the virtual economy. This currency is tied to specifc, pre-defined, and known goals. Complete the quest for the golden sword, buy 1000 coins, posting 10 answers in the forum (that receive positive feedback rating), gifting 100 items.</p>
<p>Achievements are now a well understood reward/motivation game mechanic. But using the same mechanic as a currency in virtual economies is a new concept.</p>
<p>Earning achievement currency is relatively easy concept. Think of &#8220;badges&#8221; or &#8220;Medals&#8221;. But how do you spend them? It is hard to unlock the mind from the concept that an award for achievement can some how be &#8220;undone&#8221; or &#8220;given away&#8221;. It also contrary to think that achievements could be purchased with cash.</p>
<p>Achievement currency, when added as a 3rd type of currency in a virtual world certainly have the ability to deepen the experience in a virtual world, but if it is too easy to buy them with cash there will certainly be members of your community to vocally decry &#8220;posers&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://pennymo.com/2009/10/31/an-untalked-about-virtual-currency-achievement-currency/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
