<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;AkIERHs6cSp7ImA9WhRaFEk.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397</id><updated>2012-02-17T11:15:05.519+08:00</updated><category term="Mobile" /><category term="Web Development" /><category term="Philippines" /><category term="Adobe Flex" /><category term="Updates" /><category term="AI" /><category term="Linux" /><category term="Software Development" /><category term="Tongits" /><category term="Marketing" /><category term="Humor" /><category term="Art" /><category term="Game Development" /><category term="UI/UX" /><category term="PureMVC" /><category term="Featured In" /><category term="Open Source" /><category term="Entrepreneurship" /><title>Rico Zuñiga</title><subtitle type="html">Software development. Game development. Entrepreneurship. Technology. Startup life.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://www.ricozuniga.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>62</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/ricoz" /><feedburner:info uri="ricoz" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CkYAR3c7eCp7ImA9WhdVFUg.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-7861089791111065153</id><published>2011-03-06T08:00:00.000+08:00</published><updated>2011-09-21T04:22:26.900+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-21T04:22:26.900+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Game Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Mobile" /><category scheme="http://www.blogger.com/atom/ns#" term="Open Source" /><title>An Open Source Mobile Tongits Game</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-1yRcfkTNvXQ/TmseNzDRuZI/AAAAAAAAAVY/qBwa8zyQ0vw/s1600/jtongits.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-1yRcfkTNvXQ/TmseNzDRuZI/AAAAAAAAAVY/qBwa8zyQ0vw/s1600/jtongits.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;I finally found the source code of the mobile Java Tongits game I sold back in 2006. And as &lt;a href="http://www.ricozuniga.com/2008/03/free-tongits-for-mobile-phones.html"&gt;promised&lt;/a&gt; I have &lt;a href="https://code.google.com/p/jtongits/"&gt;released the code&lt;/a&gt; under an MIT open source license. This code is a direct port of the very first Tong-its game I released back in late 2003 which was written in C++. It contains similar code for basic AI, displaying the cards, shuffling, controlling turns, validating moves, and processing inputs from the handset. I'm not sure how much relevance this code has today, it probably has none anymore except maybe educational and historical value. Feel free to do whatever you want with the code.&lt;br /&gt;&lt;br /&gt;I tried selling this mobile game for $1 and it made a few sales but it was generally a flop. You could say this was a forerunner of the current $.99 cent pricing trend in today's mobile games. The biggest problem during those times was, you guessed it right, device fragmentation. Developers had to deal with different screen resolutions (176x208, 128x128, 240x320, 352x416, 176x220, 208x208, 800x352, etc. etc.), inconsistent Java runtime and foundation versions and even operating system editions (Symbian Series 40/60, UIQ, etc). Imagine how application testing was such a nightmare before.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://code.google.com/p/jtongits/"&gt;jTongits at Google Project Hosting&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-7861089791111065153?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/Fq5CvKV7-vg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/7861089791111065153/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2011/03/open-source-mobile-tongits-game.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/7861089791111065153?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/7861089791111065153?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/Fq5CvKV7-vg/open-source-mobile-tongits-game.html" title="An Open Source Mobile Tongits Game" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-1yRcfkTNvXQ/TmseNzDRuZI/AAAAAAAAAVY/qBwa8zyQ0vw/s72-c/jtongits.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2011/03/open-source-mobile-tongits-game.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ30-eyp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-6659047180960017934</id><published>2011-03-05T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.353+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.353+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Game Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Open Source" /><category scheme="http://www.blogger.com/atom/ns#" term="Featured In" /><category scheme="http://www.blogger.com/atom/ns#" term="Humor" /><title>Drac - The Most Famous Solitaire Game on the Least Famous Platforms</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-2XPXG2SD1o0/TmsbuJfaAQI/AAAAAAAAAVU/rht54Eepj28/s1600/draclogo.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-2XPXG2SD1o0/TmsbuJfaAQI/AAAAAAAAAVU/rht54Eepj28/s1600/draclogo.gif" /&gt;&lt;/a&gt;&lt;/div&gt;One of the major improvements that I want to happen in this website is to revive, discuss and enhance my old open source software as well as contribute new and better ones. Let's start with &lt;a href="http://drac-cardlib.sourceforge.net/"&gt;Drac&lt;/a&gt;, an old C++ framework I created more than 7 years ago. According to my old self:&lt;br /&gt;&lt;blockquote&gt;&lt;i&gt;Drac is a completely free, open-source, portable card game library that uses &lt;a href="http://www.libsdl.org/"&gt;SDL&lt;/a&gt; (Simple DirectMedia Layer). It provides almost everything you need to create your very own card games. Drac is a set of C++ classes and functions that help simplify the development of card games. Any simple game specially solitaire games can be created using Drac with minimal effort. It can also be extended to accommodate more elaborate games.&lt;/i&gt;&lt;/blockquote&gt;Now who uses Drac? I'm afraid not too many. We can maybe blame the lack of updates on my part. I apologize for that. I just worked on it non-stop back then without the help of version control systems and when I felt it was finished on some arbitrary level, I hurriedly uploaded it to Sourceforge.net without any plans of updating it. Again I apologize for that. Nonetheless it was still a useable and working version. And as a proof of concept of its viability, it was used to power the very first incarnation of Tongits (spelled as Tong-its back then) which was also open source.&lt;br /&gt;&lt;br /&gt;People from the not so mainstream crowd also agreed it has value so they decided to port the framework together with the sample solitaire game to different esoteric platforms. So aside from the common Windows, Linux and Mac platforms, Drac is also available in the following:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;MaemoDrac&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;A port of the Klondike sample app to the &lt;a href="http://en.wikipedia.org/wiki/Maemo"&gt;Nokia Maemo platform&lt;/a&gt; (now part of MeeGo). &lt;a href="http://maemo.org/downloads/product/OS2008/maemodrac/"&gt;Learn more about MaemoDrac&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;KlondikeDC&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Another port of the sample app to the &lt;a href="http://en.wikipedia.org/wiki/Dreamcast"&gt;Sega Dreamcast&lt;/a&gt; game console. &lt;a href="http://www.dcemu.co.uk/vbulletin/threads/221403-KlondikeDC"&gt;Learn more about KlondikeDC&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Drac on Popcorn Hour&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Drac powers the solitaire game on your favorite network media player. &lt;a href="http://www.networkedmediatank.com/showthread.php?tid=39054"&gt;Learn more about Popcorn Hour with Drac&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;BeOS and Haiku&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The old open source Tong-its game together with Drac was also ported to &lt;a href="http://en.wikipedia.org/wiki/BeOS"&gt;BeOS&lt;/a&gt; and &lt;a href="http://www.haiku-os.org/"&gt;Haiku&lt;/a&gt; operating systems. You can learn more about them &lt;a href="http://www.bebits.com/app/3799"&gt;here&lt;/a&gt; and &lt;a href="http://haikuware.com/directory/view-details/games/cards/tong-its"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Seeing your old creations being embraced and appreciated by other platforms really feels good. And to thank all those who appreciated my old work, I will be releasing soon an updated framework based on Drac and the engine that powers the current Tongits game. This time it will be written in ActionScript 3.0 instead of C++. &lt;a href="http://code.google.com/p/cardlib/"&gt;Watch out for it on Google Code&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-6659047180960017934?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/LZxRgB4zY-4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/6659047180960017934/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2011/03/drac-most-famous-solitaire-game-on.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/6659047180960017934?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/6659047180960017934?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/LZxRgB4zY-4/drac-most-famous-solitaire-game-on.html" title="Drac - The Most Famous Solitaire Game on the Least Famous Platforms" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-2XPXG2SD1o0/TmsbuJfaAQI/AAAAAAAAAVU/rht54Eepj28/s72-c/draclogo.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2011/03/drac-most-famous-solitaire-game-on.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ308eCp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-4872960694048679029</id><published>2010-11-05T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.370+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.370+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Entrepreneurship" /><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Marketing" /><title>Celebrating 15,000+ Tongits Fans!</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-ZHtsedKGZkE/TmsYT4Pr4XI/AAAAAAAAAVQ/i6alCD9-Z1s/s1600/15k.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-ZHtsedKGZkE/TmsYT4Pr4XI/AAAAAAAAAVQ/i6alCD9-Z1s/s1600/15k.png" /&gt;&lt;/a&gt;&lt;/div&gt;The &lt;a href="http://www.tongits.net/"&gt;Tongits&lt;/a&gt; &lt;a href="http://www.facebook.com/tongits"&gt;Facebook page&lt;/a&gt; was launched almost a couple of years ago to serve as a venue for discussions and foster community among Tongits players around the world. Now we’re 15,000 strong and continuously growing. Thank you very much for all your support!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-4872960694048679029?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/LqQWqiO1RCs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/4872960694048679029/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2010/11/celebrating-15000-tongits-fans.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/4872960694048679029?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/4872960694048679029?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/LqQWqiO1RCs/celebrating-15000-tongits-fans.html" title="Celebrating 15,000+ Tongits Fans!" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-ZHtsedKGZkE/TmsYT4Pr4XI/AAAAAAAAAVQ/i6alCD9-Z1s/s72-c/15k.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2010/11/celebrating-15000-tongits-fans.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ30yeSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-393341735255764390</id><published>2010-10-25T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.391+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.391+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="AI" /><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Game Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Featured In" /><title>A Healthy Dose of Tongits AI Analysis from Deuts.net</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Uh1UZ9SBISY/TmsXntQ1RdI/AAAAAAAAAVM/pkCUcSYo-jE/s1600/ai.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-Uh1UZ9SBISY/TmsXntQ1RdI/AAAAAAAAAVM/pkCUcSYo-jE/s1600/ai.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://www.tongits.net/"&gt;Tongits&lt;/a&gt; was recently featured on &lt;a href="http://deuts.net/archives/2010/who-wants-to-play-tongits.html"&gt;Deuts.net&lt;/a&gt; and the author has provided some very interesting points on the game’s AI. Here’s an excerpt from the article:&lt;br /&gt;&lt;blockquote&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;It’s very much predictable when it calls draw. It doesn’t bluff. I believe it calls draw anytime its cards point total less than 20 at any stage of the game;&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;It calls chow even when what at his hand is already a set. For example, you throw a queen at it, it calls chow with three other queens from its hand, ignoring opportunities to form more sets from the “undrawn” stock of cards;&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;It calls “draw” even if the other player has only one card left. This is I guess the effect of it calling draw anytime its hand’s point totals less than 20. Think about it, the fact that the other player has only one remaining card and the last card it/he/she threw or discarded was a three, then the remaining could only more likely be an ace or a two. Yet, it calls draw even if its point total is, say, nine;&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;To read more you have to go to the &lt;a href="http://deuts.net/archives/2010/who-wants-to-play-tongits.html"&gt;entire post&lt;/a&gt;. I have to say I was very impressed by the analysis and it really hit the nail right on the head. Thank you very much Jorelle for writing such an insightful post on Tongits AI!&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: xx-small;"&gt;Image from &lt;a href="http://www.atariarchives.org/deli/artificial_intelligence.php"&gt;atariarchives.org&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-393341735255764390?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/7VLHqTqw9Ho" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/393341735255764390/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2010/10/healthy-dose-of-tongits-ai-analysis.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/393341735255764390?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/393341735255764390?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/7VLHqTqw9Ho/healthy-dose-of-tongits-ai-analysis.html" title="A Healthy Dose of Tongits AI Analysis from Deuts.net" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-Uh1UZ9SBISY/TmsXntQ1RdI/AAAAAAAAAVM/pkCUcSYo-jE/s72-c/ai.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2010/10/healthy-dose-of-tongits-ai-analysis.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3o7cCp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-7118065057749196004</id><published>2010-10-17T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.408+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.408+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Entrepreneurship" /><category scheme="http://www.blogger.com/atom/ns#" term="Web Development" /><title>How To Properly Apply Promo Codes on Name.com</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-o451ZVQrosY/TmsWip5d7VI/AAAAAAAAAVI/YsXqzcUp18s/s1600/name.com.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="50" src="http://2.bp.blogspot.com/-o451ZVQrosY/TmsWip5d7VI/AAAAAAAAAVI/YsXqzcUp18s/s400/name.com.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://www.name.com/"&gt;Name.com&lt;/a&gt; is my domain registrar of choice for the past 4 years and I can’t recommend it enough, their customer service is excellent. However, their domain purchasing process has a few quirks that might dissuade first time buyers and even a few existing customers. Here’s a way you can easily get around with this.&lt;br /&gt;&lt;br /&gt;Currently (this month only) they’re running an $8.49 .com/.net registration &lt;a href="http://twitter.com/namedotcom/status/27455031843"&gt;promo&lt;/a&gt; with the catchy OMGZOMBIES code. But how do you take advantage of this discount and at the same time, avail of the FREEWHOIS promo code to save on Whois privacy fees which normally costs an extra $1.99?&lt;br /&gt;&lt;br /&gt;The trick is to not select the &lt;b&gt;Whois Privacy&lt;/b&gt; checkbox, just use the main promo code first, OMGZOMBIES in this case. Then after you have registered the domain and have taken advantage of the discount, go to your Account page and open your new domain’s management page. Look for the Whois Privacy entry and tick the renew checkbox. Finally, go to your shopping cart and apply the FREEWHOIS promo code.&lt;br /&gt;&lt;br /&gt;You can actually perform this “whois privacy trick” repeatedly for any number of years you want. I like to believe this oddity is an easter egg on Name.com’s website and not a bug since this has been going on for quite some time now. It was actually fun to discover and I really do think the Name.com staff put it in there for their loyal customers to discover and have fun with. Still, I would’ve preferred them to just make the whois privacy another free value added service on top of their already impressive list of features and great service.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-7118065057749196004?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/iKv6AqiDpLU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/7118065057749196004/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2010/10/how-to-properly-apply-promo-codes-on.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/7118065057749196004?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/7118065057749196004?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/iKv6AqiDpLU/how-to-properly-apply-promo-codes-on.html" title="How To Properly Apply Promo Codes on Name.com" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-o451ZVQrosY/TmsWip5d7VI/AAAAAAAAAVI/YsXqzcUp18s/s72-c/name.com.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2010/10/how-to-properly-apply-promo-codes-on.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3o5fSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-4681312402329153003</id><published>2010-10-05T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.425+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.425+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Entrepreneurship" /><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Marketing" /><title>Tongits Sales Report</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ybh6zKEimYY/TmsVqKFH3_I/AAAAAAAAAVE/pOAbDXe_qtE/s1600/tongits-sales.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-ybh6zKEimYY/TmsVqKFH3_I/AAAAAAAAAVE/pOAbDXe_qtE/s1600/tongits-sales.png" /&gt;&lt;/a&gt;&lt;/div&gt;It’s been almost 3 years since &lt;a href="http://www.tongits.net/"&gt;Tongits&lt;/a&gt; shipped and it continues to sell well despite little to no marketing. Here’s a graph showing a steady growth in sales. It reached a peak during the 2nd quarter of 2009, the height of my advertising and promotion phase. I don’t place ads anymore and just let the game spread virally through the more than 14,000 fans of the game on &lt;a href="http://www.facebook.com/tongits"&gt;Facebook&lt;/a&gt; and good old Google search. Which reminds me to take this opportunity to thank the thousands who registered the game and all the fans, &lt;b&gt;thank you very much!&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-4681312402329153003?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/v2pTNOPMgAA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/4681312402329153003/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2010/10/tongits-sales-report.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/4681312402329153003?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/4681312402329153003?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/v2pTNOPMgAA/tongits-sales-report.html" title="Tongits Sales Report" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-ybh6zKEimYY/TmsVqKFH3_I/AAAAAAAAAVE/pOAbDXe_qtE/s72-c/tongits-sales.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2010/10/tongits-sales-report.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3o_cSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-3133548615363392889</id><published>2009-11-25T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.449+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.449+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Software Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Flex" /><title>Vibrant Ink Theme in Flex Builder 3</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-d8fHZZ70clA/TmsPt3Z7mDI/AAAAAAAAAU8/CIh3kuy_Bcs/s1600/vibrant-ink-theme.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-d8fHZZ70clA/TmsPt3Z7mDI/AAAAAAAAAU8/CIh3kuy_Bcs/s1600/vibrant-ink-theme.png" /&gt;&lt;/a&gt;&lt;/div&gt;I wanted to change the color scheme of Flex Builder to something more pleasing to the eyes. I’m used to coding with the default color scheme but I wanted to try something new and perhaps as a bonus help me code longer by reducing eye strain and conserving battery by replacing the power hungry white background.&lt;br /&gt;&lt;br /&gt;So I started looking for a nice color scheme and found a lot of really good ones. I settled with the Vibrant Ink theme. I thought the process would be as straightforward as downloading a color scheme preferences file and importing it in Flex, similar to the theme pack in TextMate. But most of the preferences files I downloaded apparently only works with the vanilla version of Eclipse with Java, only some colors are being changed in Flex Builder producing an ugly combination of uncoordinated colors.&lt;br /&gt;&lt;br /&gt;I ended up doing everything manually, changing each syntax element’s color in the Flex Builder Preferences window. I also needed to know the exact color of each of the elements in the theme so I inspected the source of the theme preferences file and used a handy color picker tool as well to grab the colors from screenshots of the theme.&lt;br /&gt;&lt;br /&gt;Here are the colors for each of the syntax elements. I couldn’t find exact counterparts from the theme for some of the Flex related elements so I picked my own colors for them. You can use this as reference for your own customization. It will only take you a few minutes to change everything.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;table border="0" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; border-bottom-style: none; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; line-height: 16px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;&lt;tbody style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;" width="206"&gt;&lt;b&gt;ActionScript Element&lt;/b&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;" width="76"&gt;&lt;b&gt;Color&lt;/b&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;" width="85"&gt;&lt;b&gt;Properties&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;ASDoc&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#772CB7&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Bracket/Brace&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFFFFF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Comment&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#9933CC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;I&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Default Text&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFFFFF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Keyword: class&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#CC7733&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B, U&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Keyword: function&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFCC00&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Keyword: interface&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#AF912B&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Keyword: package&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFCC00&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Keyword: trace&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#CC6666&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Keyword: var&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#6699CC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Metadata&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#66FF00&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Operator&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFFFFF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Reserved&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#CC7733&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;String&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#CCCC33&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;CSS Element&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Color&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Properties&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;@font-face&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFCC00&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;@import&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#339999&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;@media&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#663333&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;B&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Comment&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#9933CC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Default Text&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFFFFF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Delimiters&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFFFFF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Property Name&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#999966&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Property Value&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFFFFF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Selector&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FF6600&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;String&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#CCCC33&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;MXML Element&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Color&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Properties&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Comment&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#9933CC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Component Tag&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FF6600&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Default Text&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#99CC99&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;I&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Processing Instruction&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFFFFF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Special Tag&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFCC00&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;String&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#CCCC33&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Editor Element&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Color&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Line number foreground&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#787878&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Current line highlight&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#333300&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Print Margin&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#4C4C4C&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Find Scope&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#191919&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Selection foreground color&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Default&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Selection background color&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#3399FF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Background color&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#1C1C1C&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Foreground color&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#FFFFFF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;Hyperlink&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;#0000FF&lt;/td&gt;&lt;td style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 4px; padding-left: 4px; padding-right: 4px; padding-top: 4px; vertical-align: top;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-3133548615363392889?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/4933pAbrC90" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/3133548615363392889/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2009/11/vibrant-ink-theme-in-flex-builder-3.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/3133548615363392889?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/3133548615363392889?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/4933pAbrC90/vibrant-ink-theme-in-flex-builder-3.html" title="Vibrant Ink Theme in Flex Builder 3" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-d8fHZZ70clA/TmsPt3Z7mDI/AAAAAAAAAU8/CIh3kuy_Bcs/s72-c/vibrant-ink-theme.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2009/11/vibrant-ink-theme-in-flex-builder-3.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3o8cSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-8316359687134478424</id><published>2009-11-06T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.479+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.479+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Linux" /><title>Wireless Internet Connection Sharing in Ubuntu 9.10</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-f4TVxIbaHV8/TmptPx4SnOI/AAAAAAAAAU4/4D4E6BsIPCE/s1600/wifi-logo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-f4TVxIbaHV8/TmptPx4SnOI/AAAAAAAAAU4/4D4E6BsIPCE/s1600/wifi-logo.png" /&gt;&lt;/a&gt;&lt;/div&gt;At first I couldn’t find any obvious way of making this work so I thought it was going to be another frustrating process. After a bit of research I stumbled upon &lt;a href="http://bigbrovar.wordpress.com/2009/01/17/share-you-internet-wirelessly-on-ubuntu/"&gt;this post&lt;/a&gt; on how easy it is to share an existing (non-WiFi) internet connection through WiFi. It was written for the Intrepid Ibex release but still works. The only thing you don’t need to do anymore is install the &lt;code&gt;dnsmasq-base&lt;/code&gt; package since it’s already activated by default in Karmic Koala.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-8316359687134478424?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/o3k0hhnE8xs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/8316359687134478424/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2009/11/wireless-internet-connection-sharing-in.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/8316359687134478424?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/8316359687134478424?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/o3k0hhnE8xs/wireless-internet-connection-sharing-in.html" title="Wireless Internet Connection Sharing in Ubuntu 9.10" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-f4TVxIbaHV8/TmptPx4SnOI/AAAAAAAAAU4/4D4E6BsIPCE/s72-c/wifi-logo.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2009/11/wireless-internet-connection-sharing-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3oycSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-8956082866032779934</id><published>2009-11-05T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.499+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.499+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Linux" /><title>Installing Flash Player 10 in Ubuntu 9.10 (Karmic Koala)</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-qwKxMu7M2_g/TmpsEYkST8I/AAAAAAAAAU0/O2uudhABrNc/s1600/ubuntu-logo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-qwKxMu7M2_g/TmpsEYkST8I/AAAAAAAAAU0/O2uudhABrNc/s1600/ubuntu-logo.png" /&gt;&lt;/a&gt;&lt;/div&gt;Let me begin by saying that I’m not a Linux expert. I’ve worked with it several times before but never really stuck with it. But now I’m trying once more, to completely switch from Windows to Linux especially now with the latest Ubuntu release which looks very promising.&lt;br /&gt;&lt;br /&gt;One of the least expected problems I encountered with Karmic Koala is installing Flash Player 10 plugin in Firefox. I was surprised to find out how frustrating and unstraightforward it was to perform this.&lt;br /&gt;&lt;br /&gt;I tried several approaches like downloading the Flash Player .deb package (which I think was especially made for Ubuntu) and running it but it resulted in an error notification about certain dependencies that I still need to install, using the apt-get command to automate installation of packages which also resulted in cryptic messages about missing dependencies and name collisions, downloading an RPM and using the YUM package which also failed. All in all it took me almost an hour of research, trial and error to discover the very simple solution that worked, and here it is in 5 easy steps.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Download the Flash Player plugin from &lt;a href="http://get.adobe.com/flashplayer/"&gt;http://get.adobe.com/flashplayer/&lt;/a&gt; and select the &lt;code&gt;.tar.gz&lt;/code&gt; from the package drop down selection box, nevermind the other options.&lt;/li&gt;&lt;li&gt;Extract the content of the package using your preferred approach, either by double clicking on the package file then dragging the content to extract it or running the &lt;code&gt;tar -zxvf&lt;/code&gt; command in the terminal. A single file, named &lt;code&gt;libflashplayer.so&lt;/code&gt; will be extracted.&lt;/li&gt;&lt;li&gt;You need to move this file to the &lt;code&gt;/usr/lib/mozilla/plugins&lt;/code&gt; folder. You can’t just drag and drop it to this folder due to lack of permission, you need to perform it with super user privileges.&lt;/li&gt;&lt;li&gt;So with Firefox closed, run the terminal and go to the folder where &lt;code&gt;libflashplayer.so&lt;/code&gt; is located then move the file using the &lt;code&gt;sudo mv libflashplayer.so /usr/lib/mozilla/plugins/&lt;/code&gt; command.&lt;/li&gt;&lt;li&gt;Now run Firefox and double check if the plugin was successfully installed by typing about:plugins in the URL bar, you should be able to find Shockwave Flash in the list.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-8956082866032779934?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/w0IhYYXlMec" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/8956082866032779934/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2009/11/installing-flash-player-10-in-ubuntu.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/8956082866032779934?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/8956082866032779934?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/w0IhYYXlMec/installing-flash-player-10-in-ubuntu.html" title="Installing Flash Player 10 in Ubuntu 9.10 (Karmic Koala)" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-qwKxMu7M2_g/TmpsEYkST8I/AAAAAAAAAU0/O2uudhABrNc/s72-c/ubuntu-logo.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2009/11/installing-flash-player-10-in-ubuntu.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3s6fSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-7157371703570576650</id><published>2008-08-16T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.515+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.515+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Flex" /><title>Profiler Causing Debugger Problems in Flex Builder 3</title><content type="html">I had to blog this since we encountered this issue twice already. I found the solution from &lt;a href="http://www.betadesigns.co.uk/Blog/2008/06/19/profiler-problems-in-flex/"&gt;BetaDesigns&lt;/a&gt; but we encountered a slightly different case the 2nd time that requires a different approach.&lt;br /&gt;In the first case, you just need to delete a line from the mm.cfg file. If you’re using Windows XP, you’ll find the file in the C:\Documents and Settings\{your user name}\ folder. Find the line that contains the string &lt;i&gt;ProfilerAgent.swf&lt;/i&gt; and delete it.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Different Approach&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;In the second case, you might not find that line from the mm.cfg file. So what we did was delete or rename the &lt;i&gt;ProfilerAgent.swf&lt;/i&gt; file from the &lt;i&gt;.metadata.plugins\com.adobe.flash.profiler&lt;/i&gt; folder in your workspace.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-7157371703570576650?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/f4rBlElW2c0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/7157371703570576650/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/08/profiler-causing-debugger-problems-in.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/7157371703570576650?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/7157371703570576650?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/f4rBlElW2c0/profiler-causing-debugger-problems-in.html" title="Profiler Causing Debugger Problems in Flex Builder 3" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/08/profiler-causing-debugger-problems-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYNQngyfSp7ImA9WhdVFUg.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-1863584025348797593</id><published>2008-07-26T08:00:00.000+08:00</published><updated>2011-09-21T04:23:13.695+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-21T04:23:13.695+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Software Development" /><category scheme="http://www.blogger.com/atom/ns#" term="PureMVC" /><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Flex" /><title>PureMVC Program Flow - The View</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-dq4myYNQ5pM/Tmpp6U3wLXI/AAAAAAAAAUs/IPj_wP2ATjg/s1600/2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://4.bp.blogspot.com/-dq4myYNQ5pM/Tmpp6U3wLXI/AAAAAAAAAUs/IPj_wP2ATjg/s400/2.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;It has been a great experience so far working with &lt;a href="http://www.puremvc.org/"&gt;PureMVC&lt;/a&gt;. There was quite a huge barrier for entry due to its steeper learning curve but after gaining enough practical knowledge of the framework, my team was able to quickly implement most of the UI related logic and some business logic requirements of our project while maintaining integrity of the code. Now the only thing left to do is to connect the application to the data in the backend.&lt;br /&gt;&lt;br /&gt;In this post, I would like to discuss the general flow of an application built on top of PureMVC. This is how we understood the framework and it’s the approach we used for our application. The flow is actually pretty simple and straightforward, even obvious. We used the &lt;a href="http://trac.puremvc.org/PureMVC_AS3_MultiCore"&gt;Multicore version of PureMVC&lt;/a&gt; but this discussion will focus on the Standard version.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;The View&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This part of your application contains the MXML components, Mediators, custom events, and maybe some Interfaces.&lt;br /&gt;&lt;br /&gt;Ideally, you should create a separate Flex Library project for all your MXML components. In this way your UI guy can easily take &lt;b&gt;ownership&lt;/b&gt; of that area of your project. He does not need to share any code from the other developers, he just needs to focus on one separate and independent area of the application. He practically just needs to &lt;i&gt;checkout&lt;/i&gt; a separate folder made especially for him only.&lt;br /&gt;&lt;br /&gt;These MXML components &lt;b&gt;do not know&lt;/b&gt; nor care about PureMVC or any other architecture that you may have in your project. Their only concern is the user interface. They take care of input from the user by dispatching appropriate events. They also &lt;b&gt;expose&lt;/b&gt; a minimal set of API that allows interested parties (the Mediator in PureMVC’s case) to manipulate the user interface.&lt;br /&gt;&lt;br /&gt;One example of this API exposure is an “update” function exposed by a custom tab navigation component that requires &lt;b&gt;extra UI-only processing&lt;/b&gt; such as transition effects, alpha, hiding, disabling etc. These extra UI related processing or logic is encapsulated inside the component’s exposed “update” function. You may also even go as far as define a &lt;b&gt;standard Interface&lt;/b&gt; for all related MXML components to implement to make it even easier and more intuitive for interested parties to access their API.&lt;br /&gt;&lt;br /&gt;The &lt;b&gt;Mediator&lt;/b&gt; is the entity that connects the MXML view components to PureMVC. It has a direct reference to &lt;b&gt;one or more&lt;/b&gt; of your MXML components. If you are expecting that one of your Mediators will be taking care of more than one MXML component, it’s good practice to standardize access to these components via a common Interface. However, this does not mean you only have to register the Mediator once, you still have to register the Mediator for each MXML component it is interested in.&lt;br /&gt;&lt;br /&gt;The heart of PureMVC is its &lt;a href="http://www.ricozuniga.com/2008/06/puremvc-notifications.html"&gt;Notification system&lt;/a&gt; and a large chunk of that can be found inside Mediators. From the name itself, the Mediator “mediates” the flow of data and acts as a &lt;b&gt;middle man&lt;/b&gt; between the View and the rest of the application. The way it does this “mediating” is through Notifications.&lt;br /&gt;&lt;br /&gt;The Mediator listens to events dispatched by the MXML components and forwards this to the rest of the application using Notifications. Commands mapped to the Notifications will be triggered. The Commands may then perform &lt;b&gt;business logic&lt;/b&gt; related processing such as comparing values and deciding based on those values. This will in turn update the appropriate Proxy or more succinctly, update the application’s data.&lt;br /&gt;&lt;br /&gt;The Mediator also handles Notifications it is interested in especially those coming from the Proxy. Since the Proxy takes care of the application’s data, any change to it should also &lt;b&gt;reflect&lt;/b&gt; on the UI. This UI update process is also accomplished through Notifications. We will discuss details of the Proxy and it’s role in the program’s flow in another post.&lt;br /&gt;&lt;br /&gt;You can also directly access Proxies (Model) from the Mediator but I do not recommend this approach since this will &lt;b&gt;tightly couple&lt;/b&gt; your Mediators to your Proxies. I suggest you limit the Mediator’s role to sending and handling Notifications and just leave Proxies to your Commands (Controller). We will discuss this relationship (Mediator &amp;lt;-&amp;gt; Command &amp;lt;-&amp;gt; Proxy) in detail in a later post.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Summary&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Although I tried putting in everything I know so far about the framework, I’m sure I still missed a lot of essential stuff. Working with PureMVC entails continuous learning anyway so I’m sure we will be discovering more interesting things along the way.&lt;br /&gt;&lt;br /&gt;I was planning to discuss all the aspects involved in the flow (the Model &amp;amp; the Controller) in this post but decided to split them into parts seeing that this post has become this long already.&lt;br /&gt;&lt;br /&gt;So much good stuff to discuss, think in &lt;a href="http://www.puremvc.org/"&gt;PureMVC&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-1863584025348797593?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/6QUf9bN2mDI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/1863584025348797593/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/07/puremvc-program-flow-view.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/1863584025348797593?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/1863584025348797593?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/6QUf9bN2mDI/puremvc-program-flow-view.html" title="PureMVC Program Flow - The View" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-dq4myYNQ5pM/Tmpp6U3wLXI/AAAAAAAAAUs/IPj_wP2ATjg/s72-c/2.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/07/puremvc-program-flow-view.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3syfyp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-8105087181377064755</id><published>2008-07-08T08:00:00.001+08:00</published><updated>2011-09-20T17:43:22.597+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.597+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Software Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Flex" /><title>Unable to Debug in Firefox 3</title><content type="html">After installing FF3 a few weeks ago I found myself unable to debug my Flex projects using it. I resorted to using IE as my main debug browser. This worked fine at first but I still really needed to debug in FF3. So today I tried looking for a possible solution and came accross &lt;a href="http://bugs.adobe.com/jira/browse/FB-13064"&gt;this bug&lt;/a&gt;. In a nutshell, the bug is about incompatible add-ons in FF3 that prevents the Flex debugger from running.&lt;br /&gt;&lt;br /&gt;For my browser it was Google Toolbar that’s causing the problem, uninstalling it allowed me to debug again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-8105087181377064755?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/lnl6SCNjjfQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/8105087181377064755/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/07/unable-to-debug-in-firefox-3.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/8105087181377064755?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/8105087181377064755?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/lnl6SCNjjfQ/unable-to-debug-in-firefox-3.html" title="Unable to Debug in Firefox 3" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/07/unable-to-debug-in-firefox-3.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3s-cCp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-2331475216896440522</id><published>2008-07-08T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.558+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.558+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Flex" /><title>Hide .svn Folders in Flex Builder</title><content type="html">If you’re working with Subversion (and you should), you probably noticed the .svn folders in Flex Builder’s Navigator pane. It doesn’t really bother me that much seeing those folders in there but I wondered if they can be hidden to make the source tree a bit cleaner. It turned out that it’s just as simple as activating a filter for the Navigator pane. Simply select the .* filter from the Navigator menu according to &lt;a href="http://groups.google.com/group/cfaussie/browse_thread/thread/a59493fd33af7c5b"&gt;this thread&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-2331475216896440522?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/4jG7hB0FGvc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/2331475216896440522/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/07/hide-svn-folders-in-flex-builder.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/2331475216896440522?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/2331475216896440522?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/4jG7hB0FGvc/hide-svn-folders-in-flex-builder.html" title="Hide .svn Folders in Flex Builder" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/07/hide-svn-folders-in-flex-builder.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3g6cCp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-5413466365741780811</id><published>2008-06-28T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.618+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.618+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Software Development" /><category scheme="http://www.blogger.com/atom/ns#" term="PureMVC" /><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Flex" /><title>PureMVC Notifications</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-8C0MLgR9NFw/Tmpl3CD6aQI/AAAAAAAAAUk/xOW_5ED6zZE/s1600/logo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-8C0MLgR9NFw/Tmpl3CD6aQI/AAAAAAAAAUk/xOW_5ED6zZE/s1600/logo.png" /&gt;&lt;/a&gt;&lt;/div&gt;I’ve been trying to play around with the &lt;a href="http://puremvc.org/"&gt;PureMVC&lt;/a&gt; framework during the past few weeks and I would like to post my thoughts on the subject. This will serve as my reference later on and may also be of help to others who are interested to learn the framework. One obvious thing I should point out is that the learning curve for PureMVC is quite steep. Familiarity with the concept of design patterns is a requisite to be able to understand the framwork.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Notifications&lt;/b&gt; are similar to Flex Events. This may seem like a duplication of function at first but as you gain more understanding of this concept, you’ll learn to appreciate its purpose. Also a major reason why notifications exist is the language and framework agnostic nature of PureMVC. This approach made it possible for PureMVC to be ported to other languages or frameworks, not just Flex or AS3.&lt;br /&gt;&lt;br /&gt;I’ll now proceed with the discussion of the major components of PureMVC and how they behave in relation to Notifications. I recommend going through the &lt;a href="http://www.as3dp.com/2007/12/27/minimalist-mvc-example-using-the-puremvc-framework/"&gt;Minimalist MVC Example&lt;/a&gt; first to gain an understanding of the components that I will be discussing.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Facade&lt;/b&gt;. The Facade sends only one Notification, the initialization event called &lt;i&gt;startup&lt;/i&gt; by convention. It doesn’t listen to any other Notification. The Facade is also responsible for assigning or registering a &lt;i&gt;Command&lt;/i&gt; with a Notification.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Command&lt;/b&gt;. The Command only takes care of one Notification, the one assigned to it by the Facade. The Command is automatically invoked, or more specifically its &lt;i&gt;execute&lt;/i&gt; method is invoked, whenever the Notification assigned to it is sent or triggered. In the execute method, you gain a handle to a &lt;i&gt;Proxy&lt;/i&gt; via the Facade to retrieve, store, or manipulate data. The Command may also send a Notification to trigger an update in the user interface via the &lt;i&gt;Mediator&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Proxy&lt;/b&gt;. The Proxy cannot listen to Notifications. It however may also send a Notification that will trigger an update in the user interface. The Proxy takes care of retreiving and storing data and announcing these changes to interested UIs via Notifications. The &lt;i&gt;Mediator&lt;/i&gt; listens to these Notifications and is the one responsible for updating the UI.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Mediator&lt;/b&gt;. The Mediator is the only one allowed to listen to Notifications. It may also send a Notification that will trigger a Command and in turn cause an update to the application’s data via the Proxy. After the data has been updated, the Proxy may then send an update Notification that the Mediator can try to listen to and react to by updating the UI. The Mediator is also responsible for listening to native Flex events dispatched by the UI. Usually the Mediator reacts to these events by sending related Notifications, this is often referred to as “translating” from a native Flex Event to a PureMVC Notification.&lt;br /&gt;&lt;br /&gt;So far this is how I understood PureMVC’s Notification system. Feel free to point out any mistakes or inconsistencies in the post. I will be using PureMVC in all upcoming projects and will be sharing my experience and learnings through this blog.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-5413466365741780811?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/C-I3pUgYLjc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/5413466365741780811/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/06/puremvc-notifications.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/5413466365741780811?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/5413466365741780811?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/C-I3pUgYLjc/puremvc-notifications.html" title="PureMVC Notifications" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-8C0MLgR9NFw/Tmpl3CD6aQI/AAAAAAAAAUk/xOW_5ED6zZE/s72-c/logo.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/06/puremvc-notifications.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3g_eCp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-4120171868991453082</id><published>2008-06-05T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.640+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.640+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Software Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Featured In" /><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Flex" /><title>Flex 3 Cookbook</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-48BNnZJVgaY/TmpkLaqrxbI/AAAAAAAAAUg/RKO40sk86Gk/s1600/flex3cookbook.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-48BNnZJVgaY/TmpkLaqrxbI/AAAAAAAAAUg/RKO40sk86Gk/s1600/flex3cookbook.gif" /&gt;&lt;/a&gt;&lt;/div&gt;I just found out that my recipe, How do you display swf objects as items in a Menu using an item renderer?, was included in the recently released O’Reilly book, Flex 3 Cookbook. You can view a sample of the recipe here. It’s in Chapter 7 with a title of Display SWF Objects as Items in a Menu by Using an Item Renderer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-4120171868991453082?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/8NHDSYF6fXs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/4120171868991453082/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/06/flex-3-cookbook.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/4120171868991453082?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/4120171868991453082?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/8NHDSYF6fXs/flex-3-cookbook.html" title="Flex 3 Cookbook" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-48BNnZJVgaY/TmpkLaqrxbI/AAAAAAAAAUg/RKO40sk86Gk/s72-c/flex3cookbook.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/06/flex-3-cookbook.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3g9eSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-7920751279196908975</id><published>2008-04-03T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.661+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.661+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Philippines" /><category scheme="http://www.blogger.com/atom/ns#" term="Game Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Mobile" /><title>Another Pinoy Victory!</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-FoBaHz93Qjs/TmolOAPFUxI/AAAAAAAAAUc/kJUSMhZus0E/s1600/barnyard.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-FoBaHz93Qjs/TmolOAPFUxI/AAAAAAAAAUc/kJUSMhZus0E/s1600/barnyard.png" /&gt;&lt;/a&gt;&lt;/div&gt;Congratulations to &lt;a href="http://object404.com/"&gt;Carlos Nazareno&lt;/a&gt; and his team for winning &lt;a href="http://www.playyoo.com/blog/2008/03/27/flash_lite_user_group_contest_winners.html"&gt;Playyoo’s recent Flash Lite Game Development Contest&lt;/a&gt;! Their game, &lt;a href="http://www.playyoo.com/game.html?id=kMkQ"&gt;UFO Catcher: Barnyard Abduction&lt;/a&gt;, won in the Asia Pacific region.&lt;br /&gt;&lt;br /&gt;Naz and his team (Team Fuchikoma) also won the recent &lt;a href="http://blogs.inquirer.net/hackenslash/2008/03/13/fuchikoma-bags-win-at-pinoy-indie-games-competition/"&gt;Pinoy Indie Games Competition&lt;/a&gt; sponsored by Intel and GDAP, they each brought home core 2 quad PCs!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-7920751279196908975?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/0oTwLSuOVGc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/7920751279196908975/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/04/another-pinoy-victory.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/7920751279196908975?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/7920751279196908975?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/0oTwLSuOVGc/another-pinoy-victory.html" title="Another Pinoy Victory!" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-FoBaHz93Qjs/TmolOAPFUxI/AAAAAAAAAUc/kJUSMhZus0E/s72-c/barnyard.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/04/another-pinoy-victory.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3gzfip7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-4672122240828382344</id><published>2008-03-25T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.686+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.686+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Software Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Flex" /><title>CHILD_REMOVE Event Triggered Before Actual Child Removal</title><content type="html">One of the many things I learned from my development experience with &lt;a href="http://www.tongits.net/"&gt;Tongits&lt;/a&gt; is that the &lt;code&gt;CHILD_REMOVE&lt;/code&gt; event of the &lt;code&gt;ChildExistenceChangedEvent&lt;/code&gt; object actually happens just when a child is about to be removed and not after the child was removed. This means &lt;code&gt;numChildren&lt;/code&gt; is still the same inside a &lt;code&gt;CHILD_REMOVE&lt;/code&gt; event listener. On the other hand, the &lt;code&gt;CHILD_ADD&lt;/code&gt; event happens after the child has been added to the display list.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-4672122240828382344?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/Uf9tdUdJFYc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/4672122240828382344/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/03/childremove-event-triggered-before.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/4672122240828382344?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/4672122240828382344?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/Uf9tdUdJFYc/childremove-event-triggered-before.html" title="CHILD_REMOVE Event Triggered Before Actual Child Removal" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/03/childremove-event-triggered-before.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3k6eCp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-8632690822231243087</id><published>2008-03-24T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.710+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.710+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Marketing" /><category scheme="http://www.blogger.com/atom/ns#" term="Featured In" /><title>Tongits on Pinoytek.net!</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-2oyyRj-leUA/Tmojl-b2a9I/AAAAAAAAAUY/E3velpa7kLw/s1600/pinoyteklogosmall.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-2oyyRj-leUA/Tmojl-b2a9I/AAAAAAAAAUY/E3velpa7kLw/s1600/pinoyteklogosmall.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;I asked Lavern of &lt;a href="http://pinoytek.net/"&gt;Pinoytek.net&lt;/a&gt; if he would like to do a short review of &lt;a href="http://www.tongits.net/"&gt;Tongits&lt;/a&gt;. He has this to say about the game:&lt;br /&gt;&lt;blockquote&gt;&lt;i&gt;“When i received notice from Rico about Tong-its, i started to play it many times - many many times. I can’t remember the last time i played Tong-its, but when Rico’s own version came out, i feel i am bringing back the memories again. It’s really addicting!&lt;/i&gt;&amp;nbsp;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;i&gt;My final say, Rico’s version of Filipino’s favorite game Tong-its is something that Filipinos should be proud of.”&lt;/i&gt;&lt;/blockquote&gt;Thanks Lavern for the nice review! You can read the entire article &lt;a href="http://pinoytek.net/2008/03/tong-its-on-adobe-air-proudly-filipino/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-8632690822231243087?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/VpWKkgfEn5A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/8632690822231243087/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/03/tongits-on-pinoyteknet.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/8632690822231243087?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/8632690822231243087?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/VpWKkgfEn5A/tongits-on-pinoyteknet.html" title="Tongits on Pinoytek.net!" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-2oyyRj-leUA/Tmojl-b2a9I/AAAAAAAAAUY/E3velpa7kLw/s72-c/pinoyteklogosmall.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/03/tongits-on-pinoyteknet.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3k4eCp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-767866081287453859</id><published>2008-03-16T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.730+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.730+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Game Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Mobile" /><title>Free Tongits for Mobile Phones!</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-QFWJDzh_1bM/TmohsfqJvMI/AAAAAAAAAUU/EUyuLY3M7xk/s1600/jtongits.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-QFWJDzh_1bM/TmohsfqJvMI/AAAAAAAAAUU/EUyuLY3M7xk/s1600/jtongits.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;I am now releasing as freeware the J2ME Tongits mobile game I released back in 2006. I am also going to release the source code as soon as I find it among the pile of backup CDs I have. This game was sold for a brief period and sold a few copies. I had to discontinue it for lack of time to provide support for it and update it to the latest technology. The game will run best on phones with a 176x208 screen resolution. Your phone must have J2ME MIDP version 1.0. Most phones these days support this.&lt;br /&gt;&lt;br /&gt;Note that I will not be able to provide any kind of support for this game. I also cannot guarantee that bugs will be fixed and features will be added in the future although I do have some plans for another mobile version of Tongits which will use Flash Lite but there is still no definite time table for this.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tongits.net/j2me/Tongits.zip"&gt;Download Mobile Tongits&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;To install the game, copy the .jar and .jad files to the “Games” folder of your phone and run the “Install Applications” program of your phone. Installation process may vary for each phone model but this is generally the most common way of performing it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-767866081287453859?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/ygPJ5_uiON8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/767866081287453859/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/03/free-tongits-for-mobile-phones.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/767866081287453859?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/767866081287453859?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/ygPJ5_uiON8/free-tongits-for-mobile-phones.html" title="Free Tongits for Mobile Phones!" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-QFWJDzh_1bM/TmohsfqJvMI/AAAAAAAAAUU/EUyuLY3M7xk/s72-c/jtongits.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/03/free-tongits-for-mobile-phones.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3k8eSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-5564982957934645031</id><published>2008-03-08T08:00:00.001+08:00</published><updated>2011-09-20T17:43:22.771+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.771+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Game Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Open Source" /><title>How to Make a Tetris Game in AS3</title><content type="html">&lt;embed align="middle" allowfullscreen="false" allowscriptaccess="sameDomain" bgcolor="#ffffff" height="500" name="TINT" pluginspage="http://www.macromedia.com/go/getflashplayer" quality="high" src="http://www.tongits.net/files/tint/TINT.swf" type="application/x-shockwave-flash" width="350"&gt;&lt;/embed&gt;&lt;br /&gt;I had some free time this week so I tried to make a &lt;a href="http://en.wikipedia.org/wiki/Tetris"&gt;Tetris&lt;/a&gt; clone. It is a complete game in under 600 lines of pure AS3 code. It mainly uses 2 dimensional arrays to represent masks for the bricks and to make collision detection easier. The output is simply a bitmap data filled onto a shape object and then scaled to a more comfortable zoom level. I did not refer to available algorithms online, I tried figuring them out by myself so you might find them to not be the most efficient.&lt;br /&gt;&lt;br /&gt;Just add some sound, fancy graphics and high score submission and this could be a nice little online game though &lt;a href="http://en.wikipedia.org/wiki/Tetris_Company"&gt;TTC&lt;/a&gt; won’t be too happy about that. I named the game TINT for &lt;i&gt;Tint Is Not Tetris&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;Disclaimer: This is purely for educational purposes only.&lt;br /&gt;&lt;br /&gt;Continue for the source code.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;script src="https://gist.github.com/858234.js"&gt; &lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-5564982957934645031?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/DAj0aDIggdY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/5564982957934645031/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/03/how-to-make-tetris-game-in-as3.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/5564982957934645031?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/5564982957934645031?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/DAj0aDIggdY/how-to-make-tetris-game-in-as3.html" title="How to Make a Tetris Game in AS3" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/03/how-to-make-tetris-game-in-as3.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3k_cSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-2610526274992762555</id><published>2008-03-08T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.749+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.749+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Marketing" /><category scheme="http://www.blogger.com/atom/ns#" term="Featured In" /><category scheme="http://www.blogger.com/atom/ns#" term="Humor" /><title>Tongits on a License Plate!</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-l5p_qGKOG3M/TmogwvMljZI/AAAAAAAAAUQ/0jsHY1zsYL4/s1600/license.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="203" src="http://2.bp.blogspot.com/-l5p_qGKOG3M/TmogwvMljZI/AAAAAAAAAUQ/0jsHY1zsYL4/s400/license.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;Robert Rozum, an avid &lt;a href="http://www.tongits.net/"&gt;Tongits&lt;/a&gt; player from Phoenix, Arizona sent me a picture of his truck’s new license plate featuring what else but the game itself! This is something really exciting, how many games out there do you know have a license plate named after them? Not many! I was so elated when Robert told me about this. Thanks Robert!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-2610526274992762555?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/MX__CdIfWmk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/2610526274992762555/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/03/tongits-on-license-plate.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/2610526274992762555?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/2610526274992762555?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/MX__CdIfWmk/tongits-on-license-plate.html" title="Tongits on a License Plate!" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-l5p_qGKOG3M/TmogwvMljZI/AAAAAAAAAUQ/0jsHY1zsYL4/s72-c/license.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/03/tongits-on-license-plate.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3kzfyp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-9031003641801913599</id><published>2008-03-07T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.787+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.787+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Marketing" /><category scheme="http://www.blogger.com/atom/ns#" term="Featured In" /><title>Tongits on Tambayan.ph!</title><content type="html">Tongits was recently featured on Tambayan.ph. Ryman has this to say about the game:&lt;br /&gt;&lt;blockquote&gt;&lt;i&gt;“I would have posted this earlier today, but I got hooked playing the game for three hours. And I’m already loosing against both the computer, with current wins 30, 25, 23 (I have the 23 wins). I’m still playing (alt+tabbing) as I’m writing this article.”&lt;/i&gt;&lt;/blockquote&gt;Thanks Ryman for the feature!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-9031003641801913599?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/Q8CDSmNTlyg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/9031003641801913599/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/03/tongits-on-tambayanph.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/9031003641801913599?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/9031003641801913599?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/Q8CDSmNTlyg/tongits-on-tambayanph.html" title="Tongits on Tambayan.ph!" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/03/tongits-on-tambayanph.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3Y7fip7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-5857957047205974721</id><published>2008-03-06T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.806+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.806+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Marketing" /><category scheme="http://www.blogger.com/atom/ns#" term="Featured In" /><title>Tongits on AdobeAirGames.com!</title><content type="html">&lt;a href="http://www.tongits.net/"&gt;Tongits&lt;/a&gt; is the first to be featured on AdobeAirGames.com, a brand new blog focusing on games built on Adobe® AIR™. I’m sure more games will be coming out soon now that the official 1.0 of AIR has been released.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-5857957047205974721?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/06cDSlBcTSQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/5857957047205974721/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/03/tongits-on-adobeairgamescom.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/5857957047205974721?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/5857957047205974721?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/06cDSlBcTSQ/tongits-on-adobeairgamescom.html" title="Tongits on AdobeAirGames.com!" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/03/tongits-on-adobeairgamescom.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3Y5fyp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-2320968709475934504</id><published>2008-03-04T21:43:00.000+08:00</published><updated>2011-09-20T17:43:22.827+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.827+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Marketing" /><title>Advertising Tongits</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-aZwCS1KMvIQ/TmoYUcQQCgI/AAAAAAAAAUM/1K3oCS3q1IM/s1600/tongits-ad.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-aZwCS1KMvIQ/TmoYUcQQCgI/AAAAAAAAAUM/1K3oCS3q1IM/s1600/tongits-ad.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;I have decided to use some of the revenue to buy ad space from popular Filipino blogs. The first of which is PinoyBlogero.com. I do not expect to convert much of the incoming traffic into sales, I only hope that this move helps increase awareness about the existence of the game and eventually lead to more traffic through word of mouth. I’m also looking into AdWords and similar services but it’s too expensive and premature for me right now to utilize it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-2320968709475934504?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/JtsvgRQcZtg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/2320968709475934504/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/03/advertising-tongits.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/2320968709475934504?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/2320968709475934504?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/JtsvgRQcZtg/advertising-tongits.html" title="Advertising Tongits" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-aZwCS1KMvIQ/TmoYUcQQCgI/AAAAAAAAAUM/1K3oCS3q1IM/s72-c/tongits-ad.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/03/advertising-tongits.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08EQ3Y-fSp7ImA9WhdVFUw.&quot;"><id>tag:blogger.com,1999:blog-616648623214174397.post-3323505007030642366</id><published>2008-02-29T08:00:00.000+08:00</published><updated>2011-09-20T17:43:22.855+08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-20T17:43:22.855+08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Entrepreneurship" /><category scheme="http://www.blogger.com/atom/ns#" term="Tongits" /><category scheme="http://www.blogger.com/atom/ns#" term="Marketing" /><title>Tongits Sales Kicking In!</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-MQiqj1erRpc/TmoWLjPAxTI/AAAAAAAAAUI/Re9iqWR-omo/s1600/tongits.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="192" src="http://3.bp.blogspot.com/-MQiqj1erRpc/TmoWLjPAxTI/AAAAAAAAAUI/Re9iqWR-omo/s400/tongits.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;I am now earning a relatively significant (considering I live in a 3rd world country) amount from my &lt;a href="http://www.tongits.net/"&gt;Tongits&lt;/a&gt; game. Way higher than my short stint back in 2005 as a graphic designer working 8 hours a day 6 days a week.&lt;br /&gt;&lt;br /&gt;I would like to attribute this early but still minor success to a few critical factors, aside from the obvious charm of the game itself:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;PayPal&lt;/b&gt;. Without &lt;a href="http://www.paypal.com/"&gt;PayPal&lt;/a&gt;’s decision to fully support the Philippines, it would have been very difficult to sell the game online. Also I noticed that the Buy Now button with the logos of the supported major credit cards below is the most effective PayPal button. Potential buyers don’t want to Pay Now, they want to Buy. And besides, asking someone to Pay Now! seems rude. Plus the existence of the logos of the credit cards asserts the fact that PayPal supports them and avoids any potential confusion on the part of the buyer.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Blogs&lt;/b&gt;. Without the help from &lt;a href="http://www.yugatech.com/"&gt;YugaTech.com&lt;/a&gt;, &lt;a href="http://www.technogra.ph/"&gt;Technogra.ph&lt;/a&gt;, &lt;a href="http://www.techathand.net/"&gt;TechAtHand.net&lt;/a&gt;, &lt;a href="http://www.pinoytechblog.com/"&gt;PinoyTechBlog.com&lt;/a&gt;, &lt;a href="http://www.casualgamerchick.com/"&gt;CasualGamerChick.com&lt;/a&gt; and the other blogs that mentioned Tongits in one way or another, noone would have known the game exists.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Testimonials&lt;/b&gt;. Positive reviews from the early registrants of the game played a significant role as well in promoting and convincing potential buyers that the game is worth the 5 bucks. And displaying them near the&lt;a href="http://www.tongits.net/#registration"&gt; Registration section&lt;/a&gt; of the site must have also affected the final decision of the potential buyer to click on the PayPal button.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Updates&lt;/b&gt;. Regular updates on the game including minor security fixes, optimizations, graphical improvements, etc. have a positive impact. Potential buyers may not care about the technical details of the updates but they are aware that the game is alive and being taken cared of. This gives them assurance that the game’s quality will remain high and will continuously improve over time.&lt;/li&gt;&lt;/ol&gt;I would have added &lt;a href="http://labs.adobe.com/technologies/air/"&gt;Adobe® AIR™&lt;/a&gt; to the list but it contributed both positive and negative. It contributed most to the development part of the game. It enabled me to rapidly program the game and release it in less than 3 months. Unfortunately having the game run on AIR means that large game distribution portals won’t accept the game since they only accept games with a &lt;i&gt;traditional&lt;/i&gt; installation procedure.&lt;br /&gt;&lt;br /&gt;But then having a game with an exe installer doesn’t really guarantee inclusion in these portals, quality and potential to become a hit is still what’s important. Still, one good thing with the AIR platform is it will enable me to easily modify the game to run on the browser and add multiplayer support to it in the future. I’m looking forward to that day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/616648623214174397-3323505007030642366?l=www.ricozuniga.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ricoz/~4/52eB68rFtjI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.ricozuniga.com/feeds/3323505007030642366/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.ricozuniga.com/2008/02/tongits-sales-kicking-in.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/3323505007030642366?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/616648623214174397/posts/default/3323505007030642366?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ricoz/~3/52eB68rFtjI/tongits-sales-kicking-in.html" title="Tongits Sales Kicking In!" /><author><name>Rico</name><uri>http://www.blogger.com/profile/09554653557108996390</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://3.bp.blogspot.com/-DrnrYSjNppw/TnhgIJ2UETI/AAAAAAAAAAQ/-D5SKxJpEEo/s220/me-fc.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-MQiqj1erRpc/TmoWLjPAxTI/AAAAAAAAAUI/Re9iqWR-omo/s72-c/tongits.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.ricozuniga.com/2008/02/tongits-sales-kicking-in.html</feedburner:origLink></entry></feed>

