<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" ><channel><title>theootz dot com &#187; programming</title> <atom:link href="http://www.hardeep.me/category/programming/feed/" rel="self" type="application/rss+xml" /><link>http://www.hardeep.me</link> <description>tech, programming, rants and randomonium!</description> <lastBuildDate>Thu, 20 Jan 2011 02:32:35 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.0.1</generator> <image><link>http://www.hardeep.me</link> <url>http://theootz.com/wp-content/cbnet-favicon/favicon.gif</url><title>theootz dot com</title> </image> <atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/> <item><title>Swan-dive into Android development!</title><link>http://www.hardeep.me/2010/09/swan-dive-into-android-development/</link> <comments>http://www.hardeep.me/2010/09/swan-dive-into-android-development/#comments</comments> <pubDate>Mon, 06 Sep 2010 02:52:36 +0000</pubDate> <dc:creator>theootz</dc:creator> <category><![CDATA[android]]></category> <category><![CDATA[programming]]></category> <category><![CDATA[design]]></category> <category><![CDATA[Eclipse IDE]]></category> <category><![CDATA[game]]></category> <category><![CDATA[google]]></category> <category><![CDATA[hello]]></category> <category><![CDATA[java]]></category> <category><![CDATA[projects]]></category> <category><![CDATA[samsung]]></category> <category><![CDATA[world]]></category><guid isPermaLink="false">http://www.theootz.com/?p=3737</guid> <description><![CDATA[<p>I&#8217;ve decided to take a crack at developing my own android game. I figure, since I&#8217;m getting an android phone soon (hopefully&#8230;come on Rogers! I want my Samsung Captivate!) I should learn how to develop things for it <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> I&#8217;m going to use this post to walk you through what I did and what I&#8217;ve learned while doing it to hopefully save someone out there some headache.<br /> <span id="more-3737"></span><br /><div id='toc' class='post-3737'><div id='toc_title'>Table of contents</div><ul><li><a href="#Hello-World">Hello, World!</a><ul><li><a href="#Create-Project">Create Project</a></li><li><a href="#O-hai-dere-world">O, hai dere world!</a><ul><li><a href="#OH-NOES-ERROR-unknown-virtual-device-name">OH NOES! &#8220;ERROR: unknown virtual device name&#8221;</a></li></ul></li><li><a href="#Whats-Next">What&#8217;s Next?</a></li></ul></li><li><a href="#Thoughts">Thoughts</a></li></ul></div></p><p>So[&#8230;] <a href="http://www.hardeep.me/2010/09/swan-dive-into-android-development/" class="read_more">read more</a></p>Related posts:<ol><li><a href='http://www.hardeep.me/2010/03/creating-a-windows-7-phone-series-application/' rel='bookmark' title='Permanent Link: Creating a Windows Phone 7 Series application'>Creating a Windows Phone 7 Series application</a></li></ol>]]></description> <content:encoded><![CDATA[<p>I&#8217;ve decided to take a crack at developing my own android game. I figure, since I&#8217;m getting an android phone soon (hopefully&#8230;come on Rogers! I want my Samsung Captivate!) I should learn how to develop things for it <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> I&#8217;m going to use this post to walk you through what I did and what I&#8217;ve learned while doing it to hopefully save someone out there some headache.<br /> <span id="more-3737"></span><br /><div id='toc' class='post-3737'><div id='toc_title'>Table of contents</div><ul><li><a href="#Hello-World">Hello, World!</a><ul><li><a href="#Create-Project">Create Project</a></li><li><a href="#O-hai-dere-world">O, hai dere world!</a><ul><li><a href="#OH-NOES-ERROR-unknown-virtual-device-name">OH NOES! &#8220;ERROR: unknown virtual device name&#8221;</a></li></ul></li><li><a href="#Whats-Next">What&#8217;s Next?</a></li></ul></li><li><a href="#Thoughts">Thoughts</a></li></ul></li></ul></div><p>So first thing&#8217;s first, I&#8217;m not going to dive in straight to a game. Nope. We have to create a hello, world app first! At this point I&#8217;ve already <a href="http://developer.android.com/sdk/installing.html">installed the Android SDK</a> and <a href="http://www.eclipse.org">Eclipse</a>, along with the <a href="http://developer.android.com/sdk/eclipse-adt.html#installing">ADT plugin</a> and a virtual device (run: <em>android create avd &#8211;target 2 &#8211;name my_avd</em> or use the <em>SDK Setup.exe</em> program included in the Android SDK). I really have no idea when I did this, but I found the folders all ready and configured on my system <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Hurray past me! There&#8217;s lots of documentation on how to set this all up, and it&#8217;s relatively straight-forward so I&#8217;m not going to go through it all here. Follow the links if you&#8217;re having trouble. I&#8217;m also going to assume you have at least basic experience working with the Eclipse IDE and know enough Java to follow along.</p><h2 id='Hello-World'>Hello, World!</h2><p>Note: A lot of this section is taken from the <a href="http://developer.android.com/guide/tutorials/hello-world.html">Hello, World tutorial</a> found on the android website as that&#8217;s what I followed myself.</p><h3 id='Create-Project'>Create Project</h3><div id="attachment_3746" class="wp-caption alignleft" style="width: 203px"><a href="http://www.theootz.com/wp-content/uploads/2010/09/newandroidproject201009.png"><img class="size-medium wp-image-3746" title="New Android Project" src="http://www.theootz.com/wp-content/uploads/2010/09/newandroidproject201009-193x300.png" alt="New Android Project" width="193" height="300" /></a><p class="wp-caption-text">Settings for creating the Hello, World Android Project</p></div><p>Begin by creating a new Android project in Eclipse. Press <em>CTRL+N</em> (or <em>File -&gt; New -&gt; Other</em> from the menu) and choose <em>Android -&gt; Android Project</em>. Give your project a name, and choose a <em>Build Target</em>. If none show up, then you must use the Android SDK to download the libraries you wish to use. Personally, I set mine to target <em>Android 2.1-update1</em> as that&#8217;s what a lot of phones currently have (or will have soon) and also what the phone I&#8217;m getting will ship with. After that, set your <em>Application Name</em> &#8211; this will show to your users in their android phone menu. It can be changed later if you like.  The <em>Package Name</em> is what your java classes will live under; I used theootz.helloworld. The <em>Activity </em>is the class that will be created for you by the IDE. An android application is a collection of one or more activities. I just called mine the same as the Application name. Finally, the Min SDK Version tells Android what your application requires to run. If you look at the Build Targets you will see an <em>API Level</em> column. Any of these numbers is valid for the Min SDK Version. But you&#8217;d probably want to set it to be the same as what you chose for your Build Target. If you picked Android 2.1-update1, then this is 7. Once all your information is set, you can click Finish.</p><h3 id='O-hai-dere-world'>O, hai dere world!</h3><p>And now to get to some actual coding. Creating a Hello, World! app in Android is actually pleasantly simple. The IDE will have created a base class for your application to start with, so lets go ahead and open that up. In your project, use the package explorer to browse to <em>src -&gt; your.package.name -&gt; activity_name.java</em> and open it in the editor. The actual path will vary depending on what you chose when you created the project but there&#8217;s only one file so it should be easy enough to find <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> You&#8217;ll get some code that looks similar to the following:</p><pre class="brush: java; highlight: [11]; title: ;">
package theootz.helloworld;

import android.app.Activity;
import android.os.Bundle;

public class HelloWorld extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}
</pre><p>Now we want to create our View (a drawable object to use in our UI) and set the text to &#8220;Hello, World!&#8221;. So naturally, we&#8217;ll use the TextView object <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Replace line 11 with the following lines of code:</p><pre class="brush: java; gutter: false; title: ;">
        TextView tv = new TextView(this);
        tv.setText(&quot;Hello, World!&quot;);
        setContentView(tv);
</pre><p>What we&#8217;re doing is creating a TextView object, setting it&#8217;s text value, and then telling our application to use this View for our Activity&#8217;s UI. You may notice that the TextView class will not get picked up as a valid object by the IDE. This is because we haven&#8217;t imported the right package. You can either add the following line:</p><pre class="brush: java; gutter: false; title: ;">import android.widget.TextView;</pre><p>Or use Eclipse&#8217;s awesome package management to do this for you by pressing Ctrl+Shift+O.</p><p>Your final code should look like this and is now ready to run:</p><pre class="brush: java; highlight: [5,13,14,15,16]; title: ;">
package theootz.helloworld;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class HelloWorld extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // display our text
        TextView tv = new TextView(this);
        tv.setText(&quot;Hello, World!&quot;);
        setContentView(tv);
    }
}
</pre><div id="attachment_3753" class="wp-caption alignright" style="width: 310px"><a href="http://www.theootz.com/wp-content/uploads/2010/09/5554vm2120100905194502.png"><img class="size-medium wp-image-3753" title="Hello, World! Running an Android Virtual Device" src="http://www.theootz.com/wp-content/uploads/2010/09/5554vm2120100905194502-300x216.png" alt="Hello, World! Running an Android Virtual Device" width="300" height="216" /></a><p class="wp-caption-text">Hello, World! Running an Android Virtual Device</p></div><p>Go ahead and run the project, and if all goes well the android emulator should start up and begin your application!</p><h4 id='OH-NOES-ERROR-unknown-virtual-device-name'>OH NOES! &#8220;ERROR: unknown virtual device name&#8221;</h4><p>Oh gawd, an error&#8230; but it&#8217;s only a Hello, World! app what can possibly go wrong?! <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /></p><p>Not everyone will get this, and if you didn&#8217;t then you can go ahead and skip to the next part. If you did, you&#8217;re probably on windows :/ Turns out that the Android SDK will look for the Virtual Devices in &#8220;<em>%USERPROFILE%\.android</em>&#8221; but the SDK will create the .android folder in &#8220;<em>X:\.android</em>&#8221; where X is the drive letter you installed to. So this leaves you with two options:</p><ol><li>Move the folder to your user profile folder (<em>start -&gt; run -&gt; %USERPROFILE%</em>). The problem with this is, if you create new virtual devices you&#8217;ll have to manually move them each time as well.</li><li>Create a symbolic link. This is the route I went.</li></ol><p>So how do you create a Symbolic Link? Start by opening a command prompt (<em>start -&gt; run -&gt; cmd</em>). Browse to your User Profile folder (something like C:\users\&lt;username&gt;). Then type the following command:</p><pre class="brush: plain; light: true; title: ;">
mklink /D .android X:\.android
</pre><p>Replace X with the drive letter that has your actual .android folder. And that&#8217;s it! Run your application from Eclipse again and you should see the Virtual Device pop up with your app <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><h3 id='Whats-Next'>What&#8217;s Next?</h3><p>Well, for me it will be creating a first game. If  you want to take smaller steps in between then you can read the rest of the <a href="http://developer.android.com/guide/tutorials/hello-world.html#upgrading">Hello, World! tutorial</a> or others on their <a href="http://developer.android.com/guide/index.html">dev site</a>.</p><h2 id='Thoughts'>Thoughts</h2><p>So developing on android, at least on a simple app, seems fairly comparable to creating a <a href="http://www.theootz.com/2010/03/creating-a-windows-7-phone-series-application/">Windows Phone 7 app</a>. I think I prefer the MS approach at this point because it uses a lot of systems I&#8217;m already accustomed to &#8211; i.e. .NET and WPF. Also, I&#8217;ve grown to like the .NET development environment (at least in ASP .NET) over the last few months as I&#8217;ve been using it at work. It seems to grow on you pretty quickly. Granted, I haven&#8217;t created a full out app in either system yet, so hard to say how it will be once I dive a bit deeper.</p><p>Buuuuuuuut I <em>will </em>be creating my game soon for Android and will be creating a post as I do to keep track of everything that happens (already started, actually..but its hiding from the world as a Draft). Eventually, I&#8217;d like to re-create the same game in the Windows Phone 7 system and see what I like/dislike about each platform. I thought about doing the same with the iPhone but I&#8217;m not gonna buy a mac just so I can develop on Jobs&#8217; precious &#8211; so forget that. If by some chance I end up buying an iPhone instead of the Galaxy S, then I&#8217;ll consider finding a work-around <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> (a VM seems most likely solution).</p><p>Related posts:<ol><li><a href='http://www.hardeep.me/2010/03/creating-a-windows-7-phone-series-application/' rel='bookmark' title='Permanent Link: Creating a Windows Phone 7 Series application'>Creating a Windows Phone 7 Series application</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.hardeep.me/2010/09/swan-dive-into-android-development/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Going Ons</title><link>http://www.hardeep.me/2010/05/going-ons/</link> <comments>http://www.hardeep.me/2010/05/going-ons/#comments</comments> <pubDate>Wed, 12 May 2010 00:14:11 +0000</pubDate> <dc:creator>theootz</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[programming]]></category> <category><![CDATA[.NET]]></category> <category><![CDATA[amd]]></category> <category><![CDATA[ASP]]></category> <category><![CDATA[first]]></category> <category><![CDATA[group project]]></category> <category><![CDATA[internship]]></category> <category><![CDATA[isdc 2010]]></category> <category><![CDATA[microsoft]]></category> <category><![CDATA[mssql]]></category> <category><![CDATA[projects]]></category> <category><![CDATA[student design competition]]></category> <category><![CDATA[test]]></category> <category><![CDATA[test project]]></category> <category><![CDATA[theootz]]></category><guid isPermaLink="false">http://www.theootz.com/?p=251</guid> <description><![CDATA[<p>Whew, busy last little while &#8211; been a while since my last post!</p><p>Since then, I&#8217;ve applied to positions for an internship at school and finished my semester. Went through a bunch of interviews and finally accepted a position at ATI (i.e. AMD) which is awesome! I&#8217;m not really sure yet if I&#8217;m allowed to blog about the things I&#8217;ll be working on there but I&#8217;ll find out. Would be cool to keep track of the progress I make while there for the next 16 months. Along with that, I&#8217;ve bought myself a car to get to and from work[&#8230;] <a href="http://www.hardeep.me/2010/05/going-ons/" class="read_more">read more</a></p>No related posts.]]></description> <content:encoded><![CDATA[<p>Whew, busy last little while &#8211; been a while since my last post!</p><p>Since then, I&#8217;ve applied to positions for an internship at school and finished my semester. Went through a bunch of interviews and finally accepted a position at ATI (i.e. AMD) which is awesome! I&#8217;m not really sure yet if I&#8217;m allowed to blog about the things I&#8217;ll be working on there but I&#8217;ll find out. Would be cool to keep track of the progress I make while there for the next 16 months. Along with that, I&#8217;ve bought myself a car to get to and from work &#8211; FREEDOM! <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>Elsewhere in my tech-space, I&#8217;ve begun familiarizing myself with the ASP.NET framework (in C#) and MsSQL as the project I&#8217;m working on at AMD seems to require such. I actually ended up coding a test project for an interview for another company using the framework/database and <a href="http://www.theootz.com/projects/?show=10">posted the project</a> (more info below). It&#8217;s my first dive into ASP and far from the proper way of doing things, but I&#8217;ve already learned quite a bit since then so I think I&#8217;m on a good course.</p><p>I also won 2nd place in the <a href="http://www.upassoc.org/conference/2010/students/">International Student Design Competition (iSDC 2010)</a> for my <a href="http://www.theootz.com/projects/?show=9">group project in CSC318</a>! The conference is being held in Germany and our projects will be presented there soon <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Unfortunately, no one in our group will be able to attend but we&#8217;re going to try to get our poster printed out for display there. We&#8217;ll probably be listed on the <a href="http://www.usabilityprofessionals.org/conference/2010/students/awards/">iSDC website</a> too once that&#8217;s done. Look for the Grocery Garden project by The Crew <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>Finally, I also got myself <a href="http://www.hardeepsingh.ca">hardeepsingh.ca</a> because well, why not? It just points to the same host as <a href="http://www.theootz.com">theootz.com</a> though.</p><p><a href='http://www.hardeep.me/2010/05/going-ons/'>Back to list</a></p><fieldset class='dataset'><legend>Details of ASP.NET Test Website</legend><dl><dt>Date Started</dt><dd>April 12, 2010</dd><dt>Description</dt><dd><p>A website made in ASP.NET and using a local MsSQL server to manage a simple set of companies and edit their data. Used as a quick primer to learning how to use ASP.NET and because a job application I had applied for wanted me to make it - two birds one stone and all that :) Took about 4 hours to make I think.</p></dd><dt>Main Link</dt><dd><a class='projectmanager_url' href='http://http://www.theootz.com/downloads/ASP.NET+test+website' target='_blank' title='http://www.theootz.com/downloads/ASP.NET+test+website'>http://www.theootz.com/downloads/ASP.NET+test+website</a></dd><dl class='uri '></dl></dl></fieldset><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.hardeep.me/2010/05/going-ons/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Your site, saved and backed up on the S3 cloud!</title><link>http://www.hardeep.me/2010/03/your-site-saved-and-back-up-on-the-s3-cloud/</link> <comments>http://www.hardeep.me/2010/03/your-site-saved-and-back-up-on-the-s3-cloud/#comments</comments> <pubDate>Sat, 20 Mar 2010 18:56:02 +0000</pubDate> <dc:creator>theootz</dc:creator> <category><![CDATA[Random]]></category> <category><![CDATA[programming]]></category> <category><![CDATA[Amazon]]></category> <category><![CDATA[amazon s3]]></category> <category><![CDATA[backup scripts]]></category> <category><![CDATA[bash]]></category> <category><![CDATA[online backup]]></category> <category><![CDATA[online sync]]></category> <category><![CDATA[projects]]></category> <category><![CDATA[script]]></category> <category><![CDATA[server backups]]></category> <category><![CDATA[theootz]]></category><guid isPermaLink="false">http://www.theootz.com/?p=226</guid> <description><![CDATA[<p>I got sick of having to do backups manually and then manually saving them somewhere&#8230;then I wondered if it&#8217;d be possible to use my S3 service to back up my website? I mean, I&#8217;m already using it as a content distribution system but having a full backup of all files + databases would be nice too!</p><h2>What You Need</h2><p>You&#8217;ll need PHP, bash, CRON access and python to get this working. And given the bash/cron requirements, that also means it assumes you&#8217;re running a *nix based server. It&#8217;s probably possible to get the requirements down, but I just wanted to[&#8230;] <a href="http://www.hardeep.me/2010/03/your-site-saved-and-back-up-on-the-s3-cloud/" class="read_more">read more</a></p>No related posts.]]></description> <content:encoded><![CDATA[<p>I got sick of having to do backups manually and then manually saving them somewhere&#8230;then I wondered if it&#8217;d be possible to use my S3 service to back up my website? I mean, I&#8217;m already using it as a content distribution system but having a full backup of all files + databases would be nice too!</p><h2>What You Need</h2><p>You&#8217;ll need PHP, bash, CRON access and python to get this working. And given the bash/cron requirements, that also means it assumes you&#8217;re running a *nix based server. It&#8217;s probably possible to get the requirements down, but I just wanted to get something done quick and it&#8217;s what I came up with.</p><h2>The Files</h2><h4>backup.sh</h4><p>First up is the bash script (based on <a href="http://www.howtogeek.com/wiki/Tweaking_a_Dedicated_Virtual_Web_Server#Backups">this one</a>) that does most of the work. It will tar+gzip all your site files, export your database(s), and remove old backup files (+5 days old) when necessary. You should only really have to edit the top part of the script. Make sure you remember what you set your <span style="text-decoration: underline;">BACKUP_DIR</span> and <span style="text-decoration: underline;">FILES_DIR</span> to &#8211; you&#8217;ll need them in other scripts later on.</p><pre class="brush: bash; title: ;">
#!/bin/sh

# EDIT THIS PART ------------------
# where all these backup scripts are stored
BACKUP_DIR=/home/theootz/backups

# where you want to keep all the actual backup folders
FILES_DIR=/home/theootz/backups/files

# where all your html files reside
HTML_DIR=/home/theootz/public_html

# your MySQL database name, username and password
SQL_USER1=myusername1
SQL_PASS1=mypass1
SQL_DB1=mydb1

# a second database
# Uncomment these lines if you want to back up a second database.
# Also uncomment the line specified below!
# You can also add more databases and follow the same format.
#SQL_USER2=myusername2
#SQL_PASS2=mypass2
#SQL_DB2=mydb2
# STOP EDITING ------------------

THEDATE=`date +%Y-%m-%d_%H-%M-%S`

mkdir -p $BACKUP_DIR/files

mysqldump -u${SQL_USER1} -p${SQL_PASS1} ${SQL_DB1} &gt; ${FILES_DIR}/${THEDATE}_db1backup.sql

# Uncomment the line below if have a second database to back up
#mysqldump -u${SQL_USER2} -p${SQL_PASS2} ${SQL_DB2} &gt; ${FILES_DIR}/${THEDATE}_db2backup.sql

tar -cf ${FILES_DIR}/${THEDATE}_site.tar ${HTML_DIR}
gzip ${FILES_DIR}/${THEDATE}_site.tar

find ${FILES_DIR}/*site* -mtime +5 -exec rm {} \;
find ${FILES_DIR}/*db* -mtime +5 -exec rm {} \;
</pre><h4>backup_upload.py</h4><p>Next is the Python script to upload the files. It uses a PHP library that I&#8217;ll give more information on below.</p><pre class="brush: python; title: ;">
import sys
import os

########## Make sure these values match the ones you set in your shell script!
BACKUP_DIR = &quot;/home/theootz/backups&quot;
FILES_DIR = &quot;/home/theootz/backups/files&quot;

# this needs to be changed to reflect your settings on your s3 account
S3_BUCKET = &quot;theootz&quot;
S3_FOLDER = &quot;mysite/backups&quot;
##########

j = os.path.join
fname = os.path.basename(sys.argv[1])
cmdstr = j(BACKUP_DIR, &quot;s3.php&quot;) + &quot; put &quot; + \
    j(FILES_DIR, fname) + &quot; &quot; + \
    j(S3_BUCKET, j(S3_FOLDER, fname.split(&quot;_&quot;)[-1]))

os.system(cmdstr)
</pre><h4>PHP S3</h4><p>The python script uses a PHP library to do all the S3 uploading work. The original is available <a href="http://edoceo.com/creo/phps3tk">here</a>.</p><p>I had to edit a few paths in the php library to get it to work, so if you want to download my version it&#8217;s available here:</p> <a href="http://www.hardeep.me/downloads/PHP+Amazon+S3+Library" title="Downloaded 124 times">PHP Amazon S3 Library</a> - Based on http://edoceo.com/creo/phps3tkA PHP library to access and work with Amazon S3<p>Regardless of which one you pick, make sure you open and edit the s3.php file! You&#8217;ll need to put your S3 keys in there (near the top of the file). It will look something like this:</p><pre class="brush: php; title: ;">
// S3_CONF file
$aws_key = null;
$aws_secret = null;
</pre><p>You&#8217;ll want to put your access and secret keys there as strings, as follows:</p><pre class="brush: php; title: ;">
// S3_CONF file
$aws_key = &quot;my access key here&quot;;
$aws_secret = &quot;my secret key here&quot;;
</pre><h2>How To Get It All Working?</h2><p>Ok, so you&#8217;ve got the files. Now upload them to your web server to your <span style="text-decoration: underline;">BACKUP_DIR</span> folder (whatever you choose it as, I picked /home/theootz/backups). Finally, take the files from the the PHP S3 library and put them in your <span style="text-decoration: underline;">BACKUP_DIR</span> as well. This should leave you with the following files in a single folder:</p><ul><li>backup.sh</li><li>backup_upload.py</li><li>s3sync.php</li><li>s3.php</li><li>libs3.php</li><li>libaws.php</li></ul><p>I&#8217;m pretty sure most of the files from the S3 library aren&#8217;t needed but once again not something I bothered to check.</p><p>Now you&#8217;ll want to enable execution for all our scripts. You can do this by running the following commands while in your <span style="text-decoration: underline;">BACKUP_DIR</span> folder:</p><pre class="brush: bash; title: ;">
chmod u+x backup.sh
chmod u+x backup_upload.py
chmod u+x s3.php
</pre><p>At this point, you can go ahead and run backup.sh and see if everything worked. If it did, then we can set up the cron jobs to have this all work automatically for us <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>You&#8217;ll want to add two entries to cron. The first entry will run our backup.sh on a daily basis for us. This will give us 5 days worth of backups at any one point. The second script will upload our latest backup to the S3 service, replacing whatever is already there.</p><pre class="brush: plain; title: ;">
1       1       *       *       *       /path/to/BACKUP_DIR/backup.sh
1       1       *       *       *       find /path/to/FILES_DIR/* -mtime 0 -exec python /path/to/BACKUP_DIR/backup_upload.py '{}' \;
</pre><p>Make sure you edit the paths to reflect the way you have it configured for your system! For example, my cron jobs look like this:</p><pre class="brush: plain; title: ;">
0       0       *       *       *       /home/theootz/backups/backup.sh
0       0       *       *       0       find /home/theootz/backups/files/* -mtime 0 -exec python /home/theootz/backups/backup_upload.py '{}' \;
</pre><h2>Done!</h2><p>And that&#8217;s it <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Your website along with databases and other content will now be backed up daily to the server itself, and uploaded to your S3 account weekly. If you wanna be super extra paranoid you can download the backups from the <span style="text-decoration: underline;">FILES_DIR</span> yourself or <a href="http://www.howtogeek.com/wiki/Tweaking_a_Dedicated_Virtual_Web_Server#Sync_Backups_Off-Site_With_Rsync">use rsync</a> or something similar to automate that as well. One idea is perhaps sending it to your e-mail &#8211; use that g-mail space for something right? <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /></p><p>Hope that&#8217;s some help to someone <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.hardeep.me/2010/03/your-site-saved-and-back-up-on-the-s3-cloud/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Creating a Windows Phone 7 Series application</title><link>http://www.hardeep.me/2010/03/creating-a-windows-7-phone-series-application/</link> <comments>http://www.hardeep.me/2010/03/creating-a-windows-7-phone-series-application/#comments</comments> <pubDate>Sat, 20 Mar 2010 03:42:23 +0000</pubDate> <dc:creator>theootz</dc:creator> <category><![CDATA[programming]]></category> <category><![CDATA[Amazon]]></category> <category><![CDATA[amazon s3]]></category> <category><![CDATA[design]]></category> <category><![CDATA[hello]]></category> <category><![CDATA[projects]]></category> <category><![CDATA[silverlight]]></category> <category><![CDATA[visual studio]]></category> <category><![CDATA[windows phone]]></category> <category><![CDATA[world]]></category> <category><![CDATA[WPF]]></category><guid isPermaLink="false">http://www.theootz.com/?p=209</guid> <description><![CDATA[<p>Yay, long article time!</p><p>With the release of the Windows Phone 7 Series (I really really hate that name so I&#8217;m gonna just use winmo7) <a href="http://developer.windowsphone.com/">SDK</a>, I decided to give it a shot and see how hard (or even easy?) creating an application on the platform would be.</p><p>I should probably mention I have very little experience coding in SilverLight and only dabbled with it a while ago, and I&#8217;ve been coding in C# for a good half year or so now but once again not quite that much experience in the language. On top of that, most C#[&#8230;] <a href="http://www.hardeep.me/2010/03/creating-a-windows-7-phone-series-application/" class="read_more">read more</a></p>Related posts:<ol><li><a href='http://www.hardeep.me/2010/09/swan-dive-into-android-development/' rel='bookmark' title='Permanent Link: Swan-dive into Android development!'>Swan-dive into Android development!</a></li></ol>]]></description> <content:encoded><![CDATA[<p>Yay, long article time!</p><p>With the release of the Windows Phone 7 Series (I really really hate that name so I&#8217;m gonna just use winmo7) <a href="http://developer.windowsphone.com/">SDK</a>, I decided to give it a shot and see how hard (or even easy?) creating an application on the platform would be.</p><p>I should probably mention I have very little experience coding in SilverLight and only dabbled with it a while ago, and I&#8217;ve been coding in C# for a good half year or so now but once again not quite that much experience in the language. On top of that, most C# applications I&#8217;ve written use Windows Forms and not WPF. I&#8217;ve also decided that my first application will be a simple browser for <a href="https://s3.amazonaws.com/">Amazon S3</a> (considering how much I&#8217;ve been <a href="http://www.theootz.com/2010/02/jungle-disk-great-idea-but/">fiddling</a> <a href="http://www.theootz.com/2010/02/jungle-disk-continued/">with</a> <a href="http://www.theootz.com/2010/03/speed-projects-and-features-oh-my/">it recently</a>), of whose API I have zero experience with as well. So from what I can tell, I have quite a learning curve ahead of me <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>I&#8217;m not going to go over any problems I have over the IDE, APIs, language, etc&#8230; but I&#8217;m going to try to focus on the experience of creating an actual application for the platform.</p><h2>Initial Setup</h2><p>The download and install of the SDK was relatively painless. It did take quite a while though because I had the beta of Visual Studio 2010 still installed and the SDK requires either the RC or it will install Visual Studio 2010 Express on its own. I didn&#8217;t really feel like downloading and installing Visual Studio 2010 again, so I had to uninstall VS2010 along with the .Net 4 beta. After which, the SDK installer downloaded and installed the RC for me. It was kind of annoying how it didn&#8217;t really tell me why the beta simply HAD to be uninstalled and I had to search through the depths of their forums to figure it out, but I guess most shouldn&#8217;t have this problem.</p><p>One thing to remember if you&#8217;re using the Express version of VS2010 though, I don&#8217;t think it&#8217;s possible to have any VCS integration so you&#8217;ll have to do it outside the IDE.</p><h2>My First App</h2><p>Opening up VS2010, I&#8217;m presented with a few nice big buttons on pre-set winmo7 specific projects. You can create a Windows Phone App, a Windows Phone List App (not sure what this is exactly but it&#8217;s somehow specific to &#8220;list and navigation controls&#8221;) and a Windows Phone Library.</p><p>I figured I want an application and I&#8217;ll code in a simple library for working with S3 inside that.</p><p>So I went ahead and choose the first option and it creates a nice looking UI preview for me with the phone chrome and all so I can see exactly how it will look. Not bad. Running the program launches the emulator (which takes quite a while :/) and launches my app which currently does nothing. Good enough of a Hello World for me!</p><p>Also of interest, the emulator need only be loaded ONCE. It can then be used for multiple debug/run sessions, very nice considering how long it took to load up!</p><h2>Designing the S3 Browser</h2><p>So at this point I need to figure out how I want the program to look and behave. I&#8217;ve decided to use this desktop <a href="http://s3browser.com/">S3 Browser</a> by <a href="http://netsdk.com/">NetSDK</a> Software as a basis on functionality. At the bare minimum, I&#8217;m going to need a way for users to enter in their keys and save them (because typing them in every time on a mobile device will DEFINITELY be annoying). They then need to be able to view buckets, and then be able to explore the contents of each bucket. Perhaps even adding in the ability to upload, download, delete and rename files if possible. Though at this point, I&#8217;m not even sure if winmo7 has a concept of a user accessible file system or if it&#8217;s abstracted/sandboxed like the iPhone.</p><div id="attachment_214" class="wp-caption alignleft" style="width: 163px"><a href="http://www.theootz.com/wp-content/uploads/2010/03/ss11.png"><img class="size-medium wp-image-214" title="Login Screen" src="http://www.theootz.com/wp-content/uploads/2010/03/ss11-153x300.png" alt="Login Screen Design" width="153" height="300" /></a><p class="wp-caption-text">Login Screen Design</p></div><p>Screens will probably be something akin to:</p><p>(1) Login/Key Manager -&gt; (2) Buckets -&gt; (3) Browse</p><p>(To the left you can see my first stab at the login screen using the built in controls.)</p><p>I&#8217;m going to have screen (1) act as a login screen for now, no saving of multiple accounts. That can be added later. Screen (2) will simply list buckets, and then later allow creation/deletion of them as well possibly. And finally screen (3) will list all your files and other functionality to be added later.</p><p>The actual design of each screen may be somewhat trivial, but I want the look and feel of application to be as if its a part of the operating system. A quick google search shows that there ARE a <a href="http://windowsteamblog.com/blogs/wpdev/archive/2010/03/18/windows-phone-7-series-ui-design-amp-interaction-guide.aspx">set of guidelines</a> so I&#8217;m going to have to read them over and figure it out. From what I can tell though, as long as I&#8217;m using the Controls that are given to me then most of it should follow the look/feel anyways.</p><h2>Initial Thoughts</h2><p>So far, it seems that Microsoft has gone out of their to make it very easy to develop for the platform &#8211; leveraging technologies that developers should already be familiar with: Visual Studio, .Net, Expression Blend, SilverLight, etc&#8230;</p><p>I suspect that the SDK will become better as time goes on. For example, being based on .Net it wouldn&#8217;t surprise me if they allow programmers to use languages other than C#. Also from what I&#8217;ve been reading, a lot of people have had success porting over their existing SilverLight applications relatively easily and quickly to the new platform.</p><h2>What&#8217;s Next?</h2><p>Well, I&#8217;ve gotta make a library of some sort to connect to S3. I&#8217;ve gotta figure out how to use WPF but that shouldn&#8217;t be too difficult. Then I&#8217;ve gotta get it all working in the emulator. I&#8217;ll post updates as I have them, for now my project is available below along with a repository (SVN where it also turns out I managed to misspell theootz as theooz :/) link &#8211; feel free to check it out.</p><p><a href='http://www.hardeep.me/2010/03/creating-a-windows-7-phone-series-application/'>Back to list</a></p><fieldset class='dataset'><legend>Details of Windows Phone 7 Series S3 Browser</legend><dl><dt>Date Started</dt><dd>March 19, 2010</dd><dt>Description</dt><dd><p>My first attempt at a Windows 7 Phone Series application, amongst other firsts. It's just a simple Amazon S3 browser for the device. There's more information on my blog :)</p></dd><dt>Main Link</dt><dd><a class='projectmanager_url' href='http://http://www.theootz.com/2010/03/creating-a-windows-7-phone-series-application/' target='_blank' title='http://www.theootz.com/2010/03/creating-a-windows-7-phone-series-application/'>http://www.theootz.com/2010/03/creating-a-windows-7-phone-series-application/</a></dd><dt>Repository Link</dt><dd><a class='projectmanager_url' href='http://http://code.google.com/p/theootzs3browser/' target='_blank' title='http://code.google.com/p/theootzs3browser/'>http://code.google.com/p/theootzs3browser/</a></dd></dl></fieldset><p>Related posts:<ol><li><a href='http://www.hardeep.me/2010/09/swan-dive-into-android-development/' rel='bookmark' title='Permanent Link: Swan-dive into Android development!'>Swan-dive into Android development!</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.hardeep.me/2010/03/creating-a-windows-7-phone-series-application/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Da Stank Bank Uploader &#8211; progress!</title><link>http://www.hardeep.me/2010/03/da-stank-bank-uploader-progress/</link> <comments>http://www.hardeep.me/2010/03/da-stank-bank-uploader-progress/#comments</comments> <pubDate>Tue, 16 Mar 2010 05:05:46 +0000</pubDate> <dc:creator>theootz</dc:creator> <category><![CDATA[programming]]></category> <category><![CDATA[da stank bank]]></category> <category><![CDATA[design]]></category> <category><![CDATA[projects]]></category><guid isPermaLink="false">http://www.theootz.com/?p=168</guid> <description><![CDATA[<p>Got a chance to sit down and finally do some more coding for this project which has been neglected for long enough now :/</p><p>I managed to add effectively full (for the program&#8217;s purposes anyways) youtube support to the program now. So it&#8217;ll batch render the mp3s to videos, and then upload all of them to youtube. The user can choose a youtube description for each file or just use the default one, as well as tags, the youtube category (synch&#8217;d with their <a href="http://gdata.youtube.com/schemas/2007/categories.cat">schema</a>), tags, etc&#8230;</p><p>Next up is figuring out the wordpress API to make posts on there,[&#8230;] <a href="http://www.hardeep.me/2010/03/da-stank-bank-uploader-progress/" class="read_more">read more</a></p>Related posts:<ol><li><a href='http://www.hardeep.me/2010/02/da-stank-bank-uploader/' rel='bookmark' title='Permanent Link: Da Stank Bank &#8220;Uploader&#8221;'>Da Stank Bank &#8220;Uploader&#8221;</a></li><li><a href='http://www.hardeep.me/2010/10/an-experiment-in-3d-max/' rel='bookmark' title='Permanent Link: An experiment in 3D Max :o'>An experiment in 3D Max :o</a></li><li><a href='http://www.hardeep.me/2010/01/da-stank-bank-2/' rel='bookmark' title='Permanent Link: Da Stank Bank!'>Da Stank Bank!</a></li></ol>]]></description> <content:encoded><![CDATA[<p>Got a chance to sit down and finally do some more coding for this project which has been neglected for long enough now :/</p><p>I managed to add effectively full (for the program&#8217;s purposes anyways) youtube support to the program now. So it&#8217;ll batch render the mp3s to videos, and then upload all of them to youtube. The user can choose a youtube description for each file or just use the default one, as well as tags, the youtube category (synch&#8217;d with their <a href="http://gdata.youtube.com/schemas/2007/categories.cat">schema</a>), tags, etc&#8230;</p><p>Next up is figuring out the wordpress API to make posts on there, changing album art and video art per file. I might also decide to change the way it uploads the file to youtube and do it manually instead of using their .net library so I can add a progress bar but that would come after I&#8217;ve finished the more necessary features.</p><p>Related posts:<ol><li><a href='http://www.hardeep.me/2010/02/da-stank-bank-uploader/' rel='bookmark' title='Permanent Link: Da Stank Bank &#8220;Uploader&#8221;'>Da Stank Bank &#8220;Uploader&#8221;</a></li><li><a href='http://www.hardeep.me/2010/10/an-experiment-in-3d-max/' rel='bookmark' title='Permanent Link: An experiment in 3D Max :o'>An experiment in 3D Max :o</a></li><li><a href='http://www.hardeep.me/2010/01/da-stank-bank-2/' rel='bookmark' title='Permanent Link: Da Stank Bank!'>Da Stank Bank!</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.hardeep.me/2010/03/da-stank-bank-uploader-progress/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Da Stank Bank &#8220;Uploader&#8221;</title><link>http://www.hardeep.me/2010/02/da-stank-bank-uploader/</link> <comments>http://www.hardeep.me/2010/02/da-stank-bank-uploader/#comments</comments> <pubDate>Tue, 16 Feb 2010 23:17:18 +0000</pubDate> <dc:creator>theootz</dc:creator> <category><![CDATA[programming]]></category> <category><![CDATA[da stank bank]]></category> <category><![CDATA[design]]></category> <category><![CDATA[projects]]></category><guid isPermaLink="false">http://www.theootz.com/?p=85</guid> <description><![CDATA[<p>So, after seeing the process begin to get somewhat convoluted for our uploading of music to <a href="http://www.theootz.com/dastankbank">Da Stank Bank</a> I decided there must be a better way to go about doing this stuff.</p><p>The current process goes somewhat like this:</p><ul><li>Open premiere.<ul><li>Add our background image.</li><li>Add the mp3 file in an audio track.</li><li>Change the background image&#8217;s length to match the audio track.</li><li>Render (or queue) the file to be made into a video (usually an .flv).</li></ul></li><li>Go to youtube.<ul><li>Upload the video(s).</li><li>Enter all the information: title, tags, description, etc&#8230;</li><li>Wait for</li></ul></li></ul><p>[&#8230;] <a href="http://www.hardeep.me/2010/02/da-stank-bank-uploader/" class="read_more">read more</a></p>Related posts:<ol><li><a href='http://www.hardeep.me/2010/03/da-stank-bank-uploader-progress/' rel='bookmark' title='Permanent Link: Da Stank Bank Uploader &#8211; progress!'>Da Stank Bank Uploader &#8211; progress!</a></li><li><a href='http://www.hardeep.me/2010/10/an-experiment-in-3d-max/' rel='bookmark' title='Permanent Link: An experiment in 3D Max :o'>An experiment in 3D Max :o</a></li><li><a href='http://www.hardeep.me/2010/03/videocross-posting-test/' rel='bookmark' title='Permanent Link: video+cross posting test'>video+cross posting test</a></li></ol>]]></description> <content:encoded><![CDATA[<p>So, after seeing the process begin to get somewhat convoluted for our uploading of music to <a href="http://www.theootz.com/dastankbank">Da Stank Bank</a> I decided there must be a better way to go about doing this stuff.</p><p>The current process goes somewhat like this:</p><ul><li>Open premiere.<ul><li>Add our background image.</li><li>Add the mp3 file in an audio track.</li><li>Change the background image&#8217;s length to match the audio track.</li><li>Render (or queue) the file to be made into a video (usually an .flv).</li></ul></li><li>Go to youtube.<ul><li>Upload the video(s).</li><li>Enter all the information: title, tags, description, etc&#8230;</li><li>Wait for it to process and get the embed code.</li></ul></li><li>Go to our blog.<ul><li>Write a new post.</li><li>Add the same title, same tags, etc&#8230;</li><li>Set it&#8217;s category (dub/dnb/etc&#8230;)</li><li>Add the album art, and our embedded video below.</li><li>Save and publish the post.</li></ul></li></ul><p>As you can see, this can be quite the lengthy process for each video. So I figured I should be able to create my own program to make this easier.</p><p>My intended work flow would try to simplify a lot of the processes. So far, I see it working something like this:</p><ul><li>Open program<ul><li>If it&#8217;s the first time, put in your youtube+wordpress login info</li></ul></li><li>Add all the mp3 files to be converted</li><li>Set the background image</li><li>For each mp3 file, enter the main information (extracting from ID3 tags first if possible). This includes:<ul><li>Artist name, song title, album art, tags (using the tags from wordpress), category (using the categories from wordpress), background image (defaulting to a single image to be used on all tracks but can be changed for individual songs if required.)</li></ul></li><li>Click a button to render+upload.<ul><li>The program will then render all the files to videos, upload them to youtube and fill in all data, get the embed code and make a wordpress post with all data as well.</li></ul></li></ul><p>Seems a hell of a lot simpler to me.</p><p>I started work on this last night, and so far I&#8217;ve got a basic program I&#8217;ve written up in C#. Right now it has the functionality there to be able to convert batches of mp3s to video files (I&#8217;m using windows media 9 to convert to wmv files &#8211; can&#8217;t seem to figure out how to make it an FLV file.) It also already logs in to your youtube account and I can get data from there, but haven&#8217;t figured out the uploading yet.</p><p>All in all, I figure this would make a cool week-long-ish project for me to do during the break so we&#8217;ll see how it goes <img src='http://www.hardeep.me/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>Related posts:<ol><li><a href='http://www.hardeep.me/2010/03/da-stank-bank-uploader-progress/' rel='bookmark' title='Permanent Link: Da Stank Bank Uploader &#8211; progress!'>Da Stank Bank Uploader &#8211; progress!</a></li><li><a href='http://www.hardeep.me/2010/10/an-experiment-in-3d-max/' rel='bookmark' title='Permanent Link: An experiment in 3D Max :o'>An experiment in 3D Max :o</a></li><li><a href='http://www.hardeep.me/2010/03/videocross-posting-test/' rel='bookmark' title='Permanent Link: video+cross posting test'>video+cross posting test</a></li></ol></p>]]></content:encoded> <wfw:commentRss>http://www.hardeep.me/2010/02/da-stank-bank-uploader/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>UDK TD &#8211; Unreal TD</title><link>http://www.hardeep.me/2010/02/udk-td-unreal-td/</link> <comments>http://www.hardeep.me/2010/02/udk-td-unreal-td/#comments</comments> <pubDate>Sun, 07 Feb 2010 02:53:51 +0000</pubDate> <dc:creator>theootz</dc:creator> <category><![CDATA[programming]]></category> <category><![CDATA[udk]]></category> <category><![CDATA[projects]]></category> <category><![CDATA[td]]></category><guid isPermaLink="false">http://www.theootz.com/?p=80</guid> <description><![CDATA[<p>So early last semester I began some work on attempting to create my own TD (tower defense) game type on the Unreal 3 engine when UDK was released to the public. Unfortunately, work kinda halted after designing a basic level since I couldn&#8217;t get much of the things to work and there wasn&#8217;t much public documentation at the time. But, I&#8217;ve recently come across a <a href="http://forums.epicgames.com/showthread.php?t=710137">crowd-control tutorial</a> that seems to give me what I&#8217;d want for the creeps the towers would kill so looks like I&#8217;m going to give it another shot.</p><p>So far I&#8217;ve figured out how to[&#8230;] <a href="http://www.hardeep.me/2010/02/udk-td-unreal-td/" class="read_more">read more</a></p>No related posts.]]></description> <content:encoded><![CDATA[<p>So early last semester I began some work on attempting to create my own TD (tower defense) game type on the Unreal 3 engine when UDK was released to the public. Unfortunately, work kinda halted after designing a basic level since I couldn&#8217;t get much of the things to work and there wasn&#8217;t much public documentation at the time. But, I&#8217;ve recently come across a <a href="http://forums.epicgames.com/showthread.php?t=710137">crowd-control tutorial</a> that seems to give me what I&#8217;d want for the creeps the towers would kill so looks like I&#8217;m going to give it another shot.</p><p>So far I&#8217;ve figured out how to get the &#8216;creeps&#8217;/crowd to spawn, but they run in the opposite direction I want them to and then off the map lol.</p><p>No related posts.</p>]]></content:encoded> <wfw:commentRss>http://www.hardeep.me/2010/02/udk-td-unreal-td/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced) (user agent is rejected)
Database Caching 69/240 queries in 0.449 seconds using disk
Object Caching 2303/2501 objects using disk
Content Delivery Network via Amazon Web Services: CloudFront: Amazon Web Services: S3: cloud.theootz.com

Served from: www.theootz.com @ 2012-02-04 13:29:17 -->
