<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Caffeine Dependency Injection</title>
	
	<link>http://www.caffeinedi.com</link>
	<description>Thoughts on Software Development, Microsoft .NET, Technology, and other random musings</description>
	<lastBuildDate>Fri, 23 Jul 2010 18:19:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/CaffeineDependencyInjection" /><feedburner:info uri="caffeinedependencyinjection" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Beginning Google Android Development for .NET Developers – Part 1</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/VespjjPtQGg/</link>
		<comments>http://www.caffeinedi.com/2010/07/03/beginning-google-android-development-for-net-developers-part-1/#comments</comments>
		<pubDate>Sun, 04 Jul 2010 04:12:44 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[mobile]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=173</guid>
		<description><![CDATA[So you&#8217;re interested in building applications for the Google Android mobile platform, but you&#8217;re a .NET developer.  What a perfect opportunity to dive head-first into &#8211; gasp &#8211; Java development!  Fear not &#8211; if you&#8217;ve never taken the plunge into anything outside of the warm, cozy Microsoft development platform, it&#8217;s not nearly as painful as [...]]]></description>
			<content:encoded><![CDATA[<p>So you&#8217;re interested in building applications for the Google Android mobile platform, but you&#8217;re a .NET developer.  What a perfect opportunity to dive head-first into &#8211; gasp &#8211; Java development!  Fear not &#8211; if you&#8217;ve never taken the plunge into anything outside of the warm, cozy Microsoft development platform, it&#8217;s not nearly as painful as many make it out to be.</p>
<p>This is the first post in a multi-part series on Android development for .NET developers.  Throughout the series, we&#8217;ll explore how to build applications for the Android platform and approach concepts in a way that&#8217;s familiar to .NET development.  This first post is an introduction to the Android SDK and the Eclipse IDE along with a high-level overview of Android applications.</p>
<h4>PreRequisites</h4>
<ul>
<li><a href="http://java.sun.com/javase/downloads/index.jsp" target="_blank">Java Development Kit (JDK) 6</a> &#8211; self-explanatory; the Java runtime and development libraries.</li>
<li><a href="http://www.eclipse.org" target="_blank">Eclipse</a> &#8211; an IDE (integrated development environment) for Java and other languages.   If you don&#8217;t have it installed, grab the <a href="http://www.eclipse.org/downloads/" target="_blank">Eclipse IDE for Java Developers</a> version, which will suit the needs of this tutorial.  The Windows download doesn&#8217;t contain an installer, so extract the ZIP in an accessible location, such as C:\eclipse.</li>
<li><a href="http://developer.android.com/sdk/index.html" target="_blank">Android Software Development Kit (SDK)</a> &#8211; The heart of Android development.  This provides all of the necessary tools and libraries required to build applications for the Android platform.  Extract it to an accessible location on your hard drive and <strong>run the setup executable</strong>, which will download and install a set of components.</li>
<li><a href="http://developer.android.com/sdk/eclipse-adt.html" target="_blank">Android Development Tools (ADT) Eclipse Plugin</a> &#8211; This plugin adds Android-specific development tools and project templates to Eclipse.  Instead of a separate download, it installs within Eclipse &#8211; you can <a href="http://developer.android.com/sdk/eclipse-adt.html#installing" target="_blank">follow the instructions here</a> to get it installed.</li>
</ul>
<h4>Configuring the Android SDK and Creating Your First Project</h4>
<p>Okay, take a deep breath &#8211; we&#8217;re ready to get started.  Launch Eclipse by navigating to your extracted folder and double-click on Eclipse.exe.</p>
<p>Before we jump into a project, we&#8217;ll need to configure the Android SDK preferences.  Select &#8220;Window&#8221; from the menu bar and choose &#8220;Preferences.&#8221;  Choose &#8220;Android&#8221; from the list on the left.  In the &#8220;SDK Location&#8221; field, navigate to the folder where you unzipped and installed the SDK and hit &#8220;Apply.&#8221;  You should see the list of SDK Targets get populated.  These targets are a list of Android platform versions that you can build on.  Unlike the iPhone, which has one standard set of hardware, the Android platform is open to various hardware manufacturers which use different versions that support different sets of functionality.  For example, the HTC Droid Incredible runs version 2.1, but the T-Mobile G1 only supports version 1.6.  We&#8217;ll address these differences later.  For now, just be aware that there are various versions of the platform and click &#8220;OK&#8221; to close the window.</p>
<p>Next, we&#8217;ll create our Android project.  The Android SDK comes with <strong>over twenty sample applications</strong>, so we&#8217;ll create a project using one of those to get acquainted with everything.  From the menu bar, choose &#8220;File&#8221; -&gt; &#8220;New&#8221; -&gt; &#8220;Project.&#8221;  The pop-up window that appears is similar to the &#8220;Create Project&#8221; wizard in Visual Studio &#8211; you&#8217;ll see a list of project templates that control how your project is initially set up.  In VS, you could select things like &#8220;ASP.NET Web Application&#8221; which would automatically configure your web server and add the Default.aspx and web.config files to the project.  Here, we&#8217;ll drill-down into the &#8220;Android&#8221; group and select &#8220;Android Project&#8221; which will add all of the necessary references to the Android SDK, among other things.  Once &#8220;Android Project&#8221; is selected, click &#8220;Next.&#8221;</p>
<p>Now we will set up the basic details of our project.  Under the &#8220;Contents&#8221; group, choose &#8220;Create project from existing sample.&#8221;  Then, from the &#8220;Build Target&#8221; list, select the &#8220;Android 2.0&#8243; checkbox.   The &#8220;Samples&#8221; drop-down will populate with all of the sample applications that come with the Android SDK.  Choose &#8220;Snake,&#8221; which is a port of the <a href="http://en.wikipedia.org/wiki/Snake_%28video_game%29" target="_blank">classic game</a>.  When you select it, the &#8220;Project Name&#8221; and &#8220;Properties&#8221; fields will automatically populate.  Click &#8220;Finish&#8221; and your project will be created.</p>
<p><a href="http://www.caffeinedi.com/wp-content/uploads/2010/07/New-Android-Project-Wizard.png"><img class="aligncenter size-medium wp-image-204" title="New Android Project Wizard" src="http://www.caffeinedi.com/wp-content/uploads/2010/07/New-Android-Project-Wizard-167x300.png" alt="New Android Project Wizard" width="167" height="300" /></a></p>
<p>Now that our project is created, let&#8217;s explore the Eclipse IDE.</p>
<h4>Getting Familiar with Eclipse</h4>
<p>When you create a project in Visual Studio, by default, the files will get put in the My Documents/Visual Studio 2010/Projects folder.  Similarly, Eclipse projects will get created in your &#8220;workspace.&#8221; The location of this gets specified when Eclipse is launched.  I keep my workspace in my User directory, at C:\Users\nathan.dudek\workspace.  However, since we chose an existing sample project, you won&#8217;t find the Snake project in your workspace on the filesystem.  Instead, it uses the existing files in the Android SDK&#8217;s &#8220;samples&#8221; directory.  In this case, you&#8217;ll find everything at the &#8220;&lt;path to android sdk&gt;\platforms\android-5\samples\Snake&#8221;.</p>
<p>In Visual Studio, we&#8217;re used to Project and Solution files, such as &#8220;Company.Application.proj.&#8221;  Eclipse also uses project files, but in every case, the filename is &#8220;.project.&#8221;  The context of the particular project is taken from the directory that it resides in instead of a descriptive filename.  Take a peek at the contents of this .project file in a text editor and you&#8217;ll notice it&#8217;s very similar to a .NET project file &#8211; XML describing various properties of the project.</p>
<p>We&#8217;re also used to the concept of &#8220;References&#8221; in Visual Studio &#8211; pointers to various assemblies and libraries that are utilized in the application.  Eclipse (actually, Java) handles this with a &#8220;Class Path&#8221;.  All references to outside libraries, such as JAR files (similar to DLLs), need to be included in this class path.  Eclipses stores these in the &#8220;.classpath&#8221; file alongside the .project file.</p>
<p>Let&#8217;s take a look at the Eclipse UI.  Eclipse is built on around an extremely powerful, pluggable architecture, so it can seem complex and confusing at first.  But, after navigating around a bit, you&#8217;ll find many tools that appear similar to the ones you&#8217;re used to in Visual Studio.  After all, the tools you need to build and debug an application, regardless of platform or language, are generally the same.</p>
<ul>
<li><strong>Package Explorer</strong> &#8211; Similar to the Solution Explorer in Visual Studio.  Let&#8217;s you navigate through the various files in your project.</li>
<li><strong>Editor Window</strong> &#8211; tabbed, colored-syntax editor window.</li>
<li><strong>Problems</strong> &#8211; Shows you build errors and warnings, similar to the Error List in Visual Studio.</li>
<li><strong>Console</strong> &#8211; Shows you build messages and runtime output, similar to the Output window in Visual Studio.</li>
<li><strong>Toolbar</strong> &#8211; You&#8217;ll see the buttons to debug, run, save, open, etc.</li>
</ul>
<p><a href="http://www.caffeinedi.com/wp-content/uploads/2010/07/Eclipse-IDE-with-Android-Sample-Project-Snake.png"><img class="aligncenter size-medium wp-image-205" title="Eclipse IDE with Android Sample Project Snake" src="http://www.caffeinedi.com/wp-content/uploads/2010/07/Eclipse-IDE-with-Android-Sample-Project-Snake-300x191.png" alt="Eclipse IDE with Android Sample Project Snake" width="300" height="191" /></a></p>
<p>One other quick note about Eclipse before we jump into the Android application itself &#8211; by default, it will build the application automatically as you edit it.  It&#8217;s a handy feature to find problems as you create them!  I liken it to personalized continuous integration &#8211; immediate feedback that you broke the build.</p>
<p>Take a few moments to get familiar with the IDE. Ready to dive into Android code? Let&#8217;s go!</p>
<p><em>Note: Several readers have sent me a note saying that an error appears in the &#8220;Problems&#8221; window when the project is opened, stating that <strong>&#8220;Project &#8216;Snake&#8217; is missing a required source folder: &#8216;gen&#8217;.&#8221;</strong></em> <em>To fix this error, expand the &#8220;Snake&#8221; project in the &#8220;Package Explorer&#8221; window, then expand the &#8220;gen&#8221; folder along with the &#8220;com.example.andorid.snake&#8221; item below it.  Delete the file R.java by right-clicking on it and choosing &#8220;Delete.&#8221;  The file will immediately be regenerated and the error will disappear.  I haven&#8217;t discovered the cause of this yet; I don&#8217;t know if it&#8217;s a problem with Eclipse or the Android samples, but if I find out more I will update this post.</em></p>
<h4>Exploring the Components of an Android Application</h4>
<p>There are five key components that make up Android applications:</p>
<ul>
<li><strong>Activity</strong> &#8211; Activities represent your application&#8217;s user interface layer.  Each Activity represents a single action that a user can interface with.  It could be related to a Form.</li>
<li><strong>Service</strong> &#8211; Services represent background tasks.</li>
<li><strong>Broadcast Receiver</strong> &#8211; Broadcast Receivers react to announcements, similar to events.  An example of system-level announcement could be that the battery is low.  Applications (including your own) can also generate their own announcements.</li>
<li><strong>Content Provider</strong> &#8211; Content Providers expose datasets from your application to other applications.  If our Snake sample application wanted to allow other applications to access the high scores, it could expose them in a Content Provider.</li>
<li><strong>Intent</strong> &#8211; Intents are messages.  You can use intents to send messages to a specific Activity or Service, or send it to the entire system.</li>
</ul>
<p>Each of these components are represented by Java classes &#8211; Activity, Service, BroadcastReceiver, ContentProvider, and Intent, respectively.  The classes that make up your application end up being subclasses of these base classes.  Java uses the &#8220;extends&#8221; keyword to perform inheritance.  So,</p>
<pre class="brush: java;">public class Snake extends Activity { ... }</pre>
<p>in Java is basically the equivalent of</p>
<pre class="brush: csharp;">public class Snake : Activity { ... } </pre>
<p>in C#.</p>
<p>You can read about these components in detail in the <a href="http://developer.android.com/index.html" target="_blank">Android Developer Documentation</a> at <a href="http://developer.android.com/guide/topics/fundamentals.html" target="_blank">http://developer.android.com/guide/topics/fundamentals.html</a></p>
<p>Every Android application also has a &#8220;manifest&#8221; file which This is stored in the file AndroidManifest.xml, included with the Snake sample source.  The main purpose is to inform Android what components make up the application.</p>
<p>Our simple Snake sample application will only deal with a single Activity and none of the other components mentioned above.  Our Activity represents the Snake game that the user can play.  Let&#8217;s take a look at the source code by opening up the <strong>Snake.java</strong> file.  You can find it in the &#8220;Package Explorer&#8221; window by drilling down to Snake -&gt; src -&gt; com.example.android.snake -&gt; Snake.java.</p>
<p>You&#8217;ll notice the file is only 83 lines long.  That&#8217;s because this file simply represents the <em>Android Activity<strong> &#8211; </strong></em>the actual Snake game logic is contained in the SnakeView.java file.  Here are the key things to note about Snake.java:</p>
<ol>
<li>It&#8217;s a subclass of <strong>Activity.</strong>
<pre class="brush: java;">public class Snake extends Activity</pre>
</li>
<li>Three methods from the Activity base class are overridden, as noted from the @Override keyword (same as the override keyword in C#):
<pre class="brush: java;">public void onCreate(Bundle savedInstanceState)</pre>
<pre class="brush: java;">protected void onPause()</pre>
<pre class="brush: java;">protected void onSaveInstanceState(Bundle outState)</pre>
<p>These three overrides handle the events that the method names state &#8211; when the activity is created, when the game is paused, and when the application state is saved.</li>
<li>This <strong>Snake</strong> class relies heavily on the <strong>SnakeView</strong> class, which you can also find in the <strong>src</strong> folder.  SnakeView is a subclass of another very important Android class &#8211; <strong>View</strong>.  Views are used by Activities to draw things to the screen and handle user interaction.  Since we&#8217;re just trying to demonstrate the Android specific components of this application, just understand that <strong>SnakeView</strong> handles all of the details of user keystrokes, drawing and animating the snake to the screen, etc.</li>
</ol>
<p>Let&#8217;s run the application and see how it launches.</p>
<h4>Launching the Application in the Simulator</h4>
<p>From the menu bar, click Run -&gt;Run.  You&#8217;ll get a message stating &#8220;No compatible targets were found.  Do you wish to add a new Android Virtual Device?&#8221;  Click yes to set up the Android simulator.</p>
<p>Since we chose Android 2.0 as our platform during the project setup, we&#8217;ll create an Android 2.0 virtual device.  Enter a device name such as &#8220;Android2.0&#8243; and choose &#8220;Android 2.0 &#8211; API Level 5&#8243; from the Target drop-down list.  Then click the &#8220;Create AVD&#8221; button to complete the setup.</p>
<p><a href="http://www.caffeinedi.com/wp-content/uploads/2010/07/Android-Virtual-Device-Setup.png"><img class="aligncenter size-medium wp-image-207" title="Android Virtual Device Setup" src="http://www.caffeinedi.com/wp-content/uploads/2010/07/Android-Virtual-Device-Setup-217x300.png" alt="Android Virtual Device Setup" width="217" height="300" /></a></p>
<p>Click Run -&gt; Run again to launch your application in the simulator.  The first run may take several minutes to load the virtual device, so don&#8217;t be alarmed if your application doesn&#8217;t launch immediately.  Once it finishes loading, your Snake game will appear on the screen.</p>
<p><a href="http://www.caffeinedi.com/wp-content/uploads/2010/07/Snake-in-Android-Virtual-Device.png"><img class="aligncenter size-medium wp-image-206" title="Snake in Android Virtual Device" src="http://www.caffeinedi.com/wp-content/uploads/2010/07/Snake-in-Android-Virtual-Device-300x212.png" alt="Snake in Android Virtual Device" width="300" height="212" /></a></p>
<p>You can use the on-screen buttons to interact with the simulator, or you can use the buttons on your physical keyboard.  You can also interact with the rest of the Android platform by using the Home, Menu, Back, and Search buttons.</p>
<h4>Next Steps</h4>
<p>It&#8217;s worth exploring the samples provided with the Android SDK.  They  cover many aspects of the available functionality, such as voice  recognition, gaming, BlueTooth, gestures, and graphics.  In the next post, we&#8217;ll create an Android project from the ground up and create our first basic application.  In the meantime, dive deeper into the Snake source code and its SnakeView.java file if you want to see how the game logic and drawing engine works.  Also, take the time to get familiar with the Eclipse IDE.  After a little playing around, you&#8217;ll find it&#8217;s a pretty comfortable (and powerful) IDE.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/0g84slrdbEj_QJntg_5zrdVtp8Q/0/da"><img src="http://feedads.g.doubleclick.net/~a/0g84slrdbEj_QJntg_5zrdVtp8Q/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/0g84slrdbEj_QJntg_5zrdVtp8Q/1/da"><img src="http://feedads.g.doubleclick.net/~a/0g84slrdbEj_QJntg_5zrdVtp8Q/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/VespjjPtQGg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2010/07/03/beginning-google-android-development-for-net-developers-part-1/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2010/07/03/beginning-google-android-development-for-net-developers-part-1/</feedburner:origLink></item>
		<item>
		<title>The 2010 Caffeinedi.com Ultimate Budget Developer Rig</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/DQCA-QohWdA/</link>
		<comments>http://www.caffeinedi.com/2010/06/24/the-2010-caffeinedi-com-ultimate-budget-developer-rig/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 19:30:09 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[pc]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=186</guid>
		<description><![CDATA[A few years ago, Jeff Atwood did a great series of blog posts on building the ultimate developer rig for Scott Hanselman.  For $2000, he put together a fantastic machine with stellar performance.
My five-year-old developer rig has had a great run, but lately, it just hasn&#8217;t been able to keep up with my needs &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p>A few years ago, <a href="http://www.codinghorror.com" target="_blank">Jeff Atwood</a> did a great <a href="http://www.codinghorror.com/blog/2007/07/building-a-pc-part-i.html" target="_blank">series of blog posts on building the ultimate developer rig</a> for<a href="http://www.hanselman.com" target="_blank"> Scott Hanselman</a>.  For $2000, he put together a fantastic machine with stellar performance.</p>
<p>My five-year-old developer rig has had a great run, but lately, it just hasn&#8217;t been able to keep up with my needs &#8211; not to mention a lot of random artifacts and lines on the monitors, indicating the impending death of my video card.  So, I set out to build my own ultimate developer rig, but on a  lower budget of $1100.</p>
<p>This $1100 budget took into consideration the reuse of my existing chassis, data hard drive, DVD-RW drive, and dual monitors.  So, if you&#8217;re setting out to build one from the ground up with similar components, a budget of $1400 is probably more realistic.</p>
<p>Somewhat similar to Hanselman&#8217;s priorities, the requirements for my rig were as follows:</p>
<ol>
<li>Fast.  When I launch an app, I want it to display immediately.  When I compile, I want fast build times.  When I power it on, I want Windows to boot fast.  When I click on something, I want the action to register immediately.</li>
<li>Multitasking.  Since I often run a ton of applications at once, some of which can be memory hogs, I need it to remain fast and performant even with tons of windows open.  If I can have multiple instances of VS2010, Photoshop, Eclipse, VirtualBox, Tweetdeck, iTunes, Firefox, and Word open simultaneously without losing much performance, it&#8217;s a win.</li>
<li>Quiet.  I like to work in a quiet environment and can&#8217;t stand fan and hard drive noise.</li>
<li>Reliable.  I can&#8217;t afford any extended downtime, data loss, or reoccurring blue screens, so I need the rig to be reliable.</li>
<li>Budget.  I want to stick as close as possible to the budget while achieving the first three requirements.</li>
</ol>
<p>After lots of research, I ultimately came up with the following component list:</p>
<ul>
<li><strong>Processor: </strong><a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16819115214" target="_blank">Intel Core i7-860 Lynnfield 2.8GHz 8MB L3 Cache LGA 1156 95W  Quad-Core Processor Model BX80605I7860 </a></li>
<li><strong>Motherboard: </strong><a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16813128425" target="_blank">GIGABYTE GA-P55-USB3 LGA 1156 Intel P55 USB 3.0 ATX Intel  Motherboard</a></li>
<li><strong>Memory:</strong> <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16820231277" target="_blank">G.SKILL Ripjaws Series 4GB (2 x 2GB) 240-Pin DDR3 SDRAM DDR3 1600 (PC3 12800) Desktop Memory Model F3-12800CL9D-4GBRL </a>(2x, for 8GB total)</li>
<li><strong>Boot Drive:</strong> <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16820167023" target="_blank">Intel X25-M Mainstream SSDSA2MH080G2R5 2.5&#8243; 80GB SATA II </a><a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16820167023" target="_blank">MLC  Internal Solid State Drive (SSD)</a></li>
<li><strong>Video Card:</strong> <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16814130531" target="_blank">EVGA 512-P3-1242-LR GeForce GT 240 Superclocked 512MB 128-bit GDDR5 PCI Express 2.0 x16 HDCP Ready Video Card</a></li>
<li><strong>Power Supply:</strong> <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16817171037" target="_blank">COOLER MASTER Silent Pro 700 RS-700-AMBA-D3 700W ATX12V V2.3 SLI Certified CrossFire Ready 80 PLUS Certified Modular Active PFC Power Supply </a></li>
<li><strong>CPU Cooler:</strong> <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16835118052" target="_blank">ZALMAN CNPS10X QUIET 120mm 2 Ball CPU Cooler </a></li>
</ul>
<p>Since I/O has almost always been the slowest aspect of my machines, I really wanted to go with an SSD as my boot drive.  I have heard nothing but fantastic things about the Intel X-25M, so I decided to go with it.  I also really wanted an i7, and the price for the i7-860 is a great value.  Additionally, to satisfy the low-noise requirement, I went with the upgraded Zalman cooler and the Cooler Master Silent Pro power supply.</p>
<h4>Initial Results</h4>
<p>I&#8217;ve been using this new development rig for about two weeks now, and it has absolutely blown away my expectations.  For my $1100 budget, I expected a great machine with room for improvement.  But, the machine&#8217;s performance is absolutely fantastic.</p>
<p><a href="http://www.caffeinedi.com/wp-content/uploads/2010/06/windows-experience-index.png"><img class="aligncenter size-medium wp-image-188" title="2010 Caffeinedi.com Ultimate Budget Developer Rig Windows Experience Index" src="http://www.caffeinedi.com/wp-content/uploads/2010/06/windows-experience-index-300x213.png" alt="Windows Experience Index" width="300" height="213" /></a></p>
<p>The SSD makes all the difference in the world.  Windows boots in seconds, and applications load instantly.  The splash screens for applications like Visual Studio 2010, Photoshop CS5, and Microsoft Office only appear for a split-second before the actual application loads.  I cannot recommend the Intel X-25M enough &#8211; it is incredible as an OS and program drive.</p>
<p>To top it all off, the machine is <em>quiet</em>.  Like, <em>real </em>quiet.  Sometimes I have to look under the desk to see if the power light is illuminated because the fans are almost completely silent.</p>
<p>I could not be more pleased with the result of this build.  The performance of this budget rig has made me so much more productive, since I don&#8217;t have to wait for any of my clicks or keystrokes to register.  And, the reliability and low noise levels keep me focused on the tasks at hand.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/_P3D9p2RihmfQFLTCmjRP5e3Lzk/0/da"><img src="http://feedads.g.doubleclick.net/~a/_P3D9p2RihmfQFLTCmjRP5e3Lzk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/_P3D9p2RihmfQFLTCmjRP5e3Lzk/1/da"><img src="http://feedads.g.doubleclick.net/~a/_P3D9p2RihmfQFLTCmjRP5e3Lzk/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/DQCA-QohWdA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2010/06/24/the-2010-caffeinedi-com-ultimate-budget-developer-rig/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2010/06/24/the-2010-caffeinedi-com-ultimate-budget-developer-rig/</feedburner:origLink></item>
		<item>
		<title>CodeGuru’s Ten Great CodePlex Projects for ASP.NET Developers</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/NudaKIQN-Z0/</link>
		<comments>http://www.caffeinedi.com/2010/05/19/codegurus-ten-great-codeplex-projects-for-asp-net-developers/#comments</comments>
		<pubDate>Wed, 19 May 2010 18:25:18 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[article]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[codeplex]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=167</guid>
		<description><![CDATA[CodeGuru.com has an article called Ten Great CodePlex Projects for ASP.NET Developers in which the author, Jason Gilmore, mentions Hollywood Hackers &#8211; the demo project that I built with Kevin Hoffman to go along with our MSDN article, &#8220;Fueling Your Application&#8217;s Engine with Windows Azure.&#8221;
The list contains some other really great sample CodePlex projects that [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.codeguru.com">CodeGuru.com</a> has an article called <a href="http://www.codeguru.com/vb/vb_internet/aspnet/article.php/c17085" target="_blank">Ten Great CodePlex Projects for ASP.NET Developers</a> in which the author, Jason Gilmore, mentions Hollywood Hackers &#8211; the demo project that I built with Kevin Hoffman to go along with our MSDN article, <a href="http://msdn.microsoft.com/en-us/magazine/ee335721.aspx" target="_blank">&#8220;Fueling Your Application&#8217;s Engine with Windows Azure.&#8221;</a></p>
<p>The list contains some other really great sample CodePlex projects that you should check out, such as the classic <a href="http://www.nerddinner.com" target="_blank">NerdDinner</a> and <a href="http://tailspintravel.codeplex.com/" target="_blank">TailSpin Travel</a>.  All of the projects mentioned provide excellent code samples to help you new technologies and development techniques.  Check the out and learn something new!</p>
<p><a href="http://www.codeguru.com/vb/vb_internet/aspnet/article.php/c17085" target="_blank">http://www.codeguru.com/vb/vb_internet/aspnet/article.php/c17085</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/15MA5xpVp-qY5V1EuEZDq1uVaJE/0/da"><img src="http://feedads.g.doubleclick.net/~a/15MA5xpVp-qY5V1EuEZDq1uVaJE/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/15MA5xpVp-qY5V1EuEZDq1uVaJE/1/da"><img src="http://feedads.g.doubleclick.net/~a/15MA5xpVp-qY5V1EuEZDq1uVaJE/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/NudaKIQN-Z0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2010/05/19/codegurus-ten-great-codeplex-projects-for-asp-net-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2010/05/19/codegurus-ten-great-codeplex-projects-for-asp-net-developers/</feedburner:origLink></item>
		<item>
		<title>Dynamic Controller and Action Authentication in ASP.NET MVC 2 by Ryan Wright</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/9Z9AGh-31d0/</link>
		<comments>http://www.caffeinedi.com/2010/04/29/dynamic-controller-and-action-authentication-in-asp-net-mvc-2-by-ryan-wright/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 13:09:56 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[WIF]]></category>
		<category><![CDATA[windows identity foundation]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=164</guid>
		<description><![CDATA[My friend and colleague Ryan Wright has posted a fantastic article about dynamic controller and action authentication in ASP.NET MVC 2.  His techniques describe an architecture without hard-coding roles into the Authorize attribute &#8211; which makes it possible to add roles to application functionality strictly through configuration &#8211; no application rebuild required.
He also provides [...]]]></description>
			<content:encoded><![CDATA[<p>My friend and colleague <a href="http://www.ryanmwright.com">Ryan Wright</a> has posted <a href="http://www.ryanmwright.com/2010/04/25/dynamic-controlleraction-authorization-in-asp-net-mvc/">a fantastic article about dynamic controller and action authentication in ASP.NET MVC 2</a>.  His techniques describe an architecture without hard-coding roles into the Authorize attribute &#8211; which makes it possible to add roles to application functionality strictly through configuration &#8211; no application rebuild required.</p>
<p>He also provides his code samples, which additionally use <a href="http://msdn.microsoft.com/en-us/security/aa570351.aspx">Windows Identity Foundation (WIF)</a> and a custom STS.  It&#8217;s a great starter project for anyone who&#8217;s looking into seeing how these tools work.</p>
<p><a href="http://www.ryanmwright.com/2010/04/25/dynamic-controlleraction-authorization-in-asp-net-mvc/">http://www.ryanmwright.com/2010/04/25/dynamic-controlleraction-authorization-in-asp-net-mvc/</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/5Lvv0K2fSZavPyIblDI9HXQd08Y/0/da"><img src="http://feedads.g.doubleclick.net/~a/5Lvv0K2fSZavPyIblDI9HXQd08Y/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/5Lvv0K2fSZavPyIblDI9HXQd08Y/1/da"><img src="http://feedads.g.doubleclick.net/~a/5Lvv0K2fSZavPyIblDI9HXQd08Y/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/9Z9AGh-31d0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2010/04/29/dynamic-controller-and-action-authentication-in-asp-net-mvc-2-by-ryan-wright/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2010/04/29/dynamic-controller-and-action-authentication-in-asp-net-mvc-2-by-ryan-wright/</feedburner:origLink></item>
		<item>
		<title>Memory Limit Errors in WordPress or Other PHP Applications</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/GWa3eZZkGAg/</link>
		<comments>http://www.caffeinedi.com/2010/04/28/memory-limit-errors-in-wordpress-or-other-php-applications/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 02:54:14 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[buddyPress]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=160</guid>
		<description><![CDATA[When working in WordPress or other PHP applications, it&#8217;s relatively common to run into memory limit errors like the following:
Fatal error:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 122880 bytes) in /public_html/wp-admin/includes/template.php on line 699
The default memory limit setting is in the php.ini file, and many web hosts have it set [...]]]></description>
			<content:encoded><![CDATA[<p>When working in WordPress or other PHP applications, it&#8217;s relatively common to run into memory limit errors like the following:</p>
<p><strong>Fatal error</strong>:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 122880 bytes) in <strong>/public_html/wp-admin/includes/template.php</strong> on line <strong>699</strong></p>
<p>The default memory limit setting is in the php.ini file, and many web hosts have it set to 12MB.  You can change it by modifying the php.ini file:</p>
<pre class="brush: plain;">memory_limit = 64M</pre>
<p>&#8230;but, many hosts don&#8217;t give you direct access to this file.</p>
<p>Instead, you can control the memory limit directly in your application.  In the wp-config.php file, just add a single line:</p>
<pre class="brush: php;">define('WP_MEMORY_LIMIT', '64M');</pre>
<p>This issue came up on a recent project involving the BuddyPress WordPress plugin, which can be a fairly memory intensive module.  If you run into it, just bump up your memory limit and you should be fine.  If you&#8217;re using a platform other than WordPress, there are usually similar methods to define memory limits &#8211; just check the documentation for your particular application.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/i9vik1gTnTHK7HRmErRX7hhNsT0/0/da"><img src="http://feedads.g.doubleclick.net/~a/i9vik1gTnTHK7HRmErRX7hhNsT0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/i9vik1gTnTHK7HRmErRX7hhNsT0/1/da"><img src="http://feedads.g.doubleclick.net/~a/i9vik1gTnTHK7HRmErRX7hhNsT0/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/GWa3eZZkGAg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2010/04/28/memory-limit-errors-in-wordpress-or-other-php-applications/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2010/04/28/memory-limit-errors-in-wordpress-or-other-php-applications/</feedburner:origLink></item>
		<item>
		<title>MIX10 Sessions Start Today!</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/KoIDhV_Clc4/</link>
		<comments>http://www.caffeinedi.com/2010/03/15/mix10-sessions-start-today/#comments</comments>
		<pubDate>Mon, 15 Mar 2010 14:43:12 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[User Experience (UX)]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[MIX10]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=157</guid>
		<description><![CDATA[The MIX10 Microsoft UX conference sessions start today.  This is a reminder that I&#8217;ll be tweeting all day live from the event (@natedudek) and posting summaries of my sessions at the end of every day.  The keynote starts in a little over an hour where we should here about the Windows Phone 7 Series.  It&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>The MIX10 Microsoft UX conference sessions start today.  This is a reminder that I&#8217;ll be tweeting all day live from the event (@natedudek) and posting summaries of my sessions at the end of every day.  The keynote starts in a little over an hour where we should here about the Windows Phone 7 Series.  It&#8217;s also being streamed live if you want to watch!</p>

<p><a href="http://feedads.g.doubleclick.net/~a/KayyUg8ukRPHfsVHNOzZY1EWRWw/0/da"><img src="http://feedads.g.doubleclick.net/~a/KayyUg8ukRPHfsVHNOzZY1EWRWw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/KayyUg8ukRPHfsVHNOzZY1EWRWw/1/da"><img src="http://feedads.g.doubleclick.net/~a/KayyUg8ukRPHfsVHNOzZY1EWRWw/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/KoIDhV_Clc4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2010/03/15/mix10-sessions-start-today/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2010/03/15/mix10-sessions-start-today/</feedburner:origLink></item>
		<item>
		<title>I Will Be Blogging and Tweeting Live from MIX10</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/dZK0w3MUO5c/</link>
		<comments>http://www.caffeinedi.com/2010/02/10/i-will-be-blogging-and-tweeting-live-from-mix10/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 16:19:43 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Random Musings]]></category>
		<category><![CDATA[User Experience (UX)]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[MIX10]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=152</guid>
		<description><![CDATA[ I will be attending Microsoft’s MIX10 conference next month in Las Vegas.  I’m really looking forward to networking with other developers and designers and being immersed in a User Experience-focused community for three days.
I will be blogging and tweeting LIVE from the event on www.caffeinedi.com and www.twitter.com/natedudek.
Although the schedule hasn’t been posted yet, I’ll [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.caffeinedi.com/wp-content/uploads/2010/02/mix10logo.jpg"><img style="display: inline; border: 0px;" title="mix10logo" src="http://www.caffeinedi.com/wp-content/uploads/2010/02/mix10logo_thumb.jpg" border="0" alt="mix10logo" width="244" height="137" align="left" /></a> I will be attending Microsoft’s <a href="http://live.visitmix.com/" target="_blank">MIX10 conference</a> next month in Las Vegas.  I’m really looking forward to networking with other developers and designers and being immersed in a User Experience-focused community for three days.</p>
<p>I will be blogging and tweeting LIVE from the event on <a href="http://www.caffeinedi.com">www.caffeinedi.com</a> and <a href="http://www.twitter.com/natedudek">www.twitter.com/natedudek</a>.</p>
<p>Although the schedule hasn’t been posted yet, I’ll be focusing mostly on the sessions related to Windows Azure, Silverlight 4, UX, MVC, jQuery, AJAX, and Visual Studio.  The sessions that are currently on my short list are:</p>
<ul>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX29" target="_blank">Building Platforms and Applications for the Real-Time Web</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/FT05" target="_blank">The HaaHa Show: ASP.NET MVC Security with Haack and Hanselman</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/FT04" target="_blank">What’s New in ASP.NET MVC 2 w/ Phil Haack</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/SVC01" target="_blank">Using Windows Identity Foundation For Creating Identity-Driven Experiences in Silverlight</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/CL09" target="_blank">Developing with WCF RIA Services Quickly and Effectively</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX11" target="_blank">Using Storage in the Windows Azure Platform</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX14" target="_blank">Understanding the Model-View-ViewModel Pattern</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/CL10" target="_blank">Stepping Outside the Browser with Silverlight 4</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/CL54" target="_blank">Software and Web Entrepreneurs: Go Big with BizSpark and WebsiteSpark</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/SVC06" target="_blank">Silverlight and Windows Azure: A Match Made for the Web</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/CL07" target="_blank">Silverlight 4 Overview &#8211; What&#8217;s in Store for Silverlight 4?</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/CL08" target="_blank">Silverlight 4 Business Applications</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/CL50" target="_blank">Search Engine Optimization for Silverlight</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX16" target="_blank">Securing Silverlight Applications</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/FT08" target="_blank">Improving Software Quality for the Modern Web</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/DS11" target="_blank">Great User Experiences: Seamlessly Blending Technology and Design</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/FT10" target="_blank">Driving Experiences via Services using the .NET Framework</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/FT11" target="_blank">Designing and Delivering Scalable and Resilient Web Services</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX25" target="_blank">Design the Ordinary, Like the Fixie</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/SVC08" target="_blank">Connecting Your Applications in the Cloud with the Windows Azure AppFabric</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/SVC10" target="_blank">Building Offline Web Apps Using Sync Framework</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX51" target="_blank">Building Finance Applications with Silverlight 4</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX23" target="_blank">Building Facebook Apps with .NET and Deploying to Azure</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX10" target="_blank">Building a Next-Generation Web Application with ASP.NET MVC 2 and jQuery</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX22" target="_blank">Six Things Every jQuery Developer Must Know w/ Elijah Manor</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/DS05" target="_blank">Total Experience Design</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/DS01" target="_blank">The Laws of User Experience</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX03" target="_blank">Modern Web Form Design</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/WKSP02" target="_blank">Design Fundamentals for Developers (and other Non-Designers)</a></li>
<li><a href="http://live.visitmix.com/MIX10/Sessions/EX01" target="_blank">Cloud Computing Economies of Scale</a></li>
</ul>
<p>Obviously, there’s LOTS of amazing content planned.  I won’t be able to attend every session I listed, but at the very least I’m hoping to catch up with some of the presenters of the sessions I’m not able to make it to.  I’m also hoping to sit down with guys like Elijah Manor and Clemens Vasters for a few minutes.</p>
<p>If you have things you’d like me to check out for you, or questions you’d like me to ask presenters or other attendees, drop me an e-mail, leave a comment, or send me a direct message on Twitter.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/TpXjl8OBi7g695XtqhUYFfbhjaw/0/da"><img src="http://feedads.g.doubleclick.net/~a/TpXjl8OBi7g695XtqhUYFfbhjaw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/TpXjl8OBi7g695XtqhUYFfbhjaw/1/da"><img src="http://feedads.g.doubleclick.net/~a/TpXjl8OBi7g695XtqhUYFfbhjaw/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/dZK0w3MUO5c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2010/02/10/i-will-be-blogging-and-tweeting-live-from-mix10/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2010/02/10/i-will-be-blogging-and-tweeting-live-from-mix10/</feedburner:origLink></item>
		<item>
		<title>My Windows Azure Article Is In the January 2010 Issue of MSDN Magazine</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/cCqQX6-ZQnM/</link>
		<comments>http://www.caffeinedi.com/2010/01/06/my-windows-azure-article-is-in-the-january-2010-issue-of-msdn-magazine/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 20:23:55 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[article]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=141</guid>
		<description><![CDATA[An article I wrote with Kevin Hoffman on Windows Azure is in the January 2010 issue of MSDN Magazine.  &#8220;Fueling Your Application’s Engine with Windows Azure Storage&#8221; discusses the utilization of Azure Queue and Table storage, Azure Worker Roles, and jQuery to send asynchronous messages to an ASP.NET MVC application and process shopping cart [...]]]></description>
			<content:encoded><![CDATA[<p>An article I wrote with <a href="http://dotnetaddict.dotnetdevelopersjournal.com/ " target="_blank">Kevin Hoffman</a> on Windows Azure is in the January 2010 issue of MSDN Magazine.  &#8220;Fueling Your Application’s Engine with Windows Azure Storage&#8221; discusses the utilization of Azure Queue and Table storage, Azure Worker Roles, and jQuery to send asynchronous messages to an ASP.NET MVC application and process shopping cart orders.  Check it out!</p>
<p><a href="http://msdn.microsoft.com/en-us/magazine/ee335721.aspx">Fueling Your Application&#8217;s Engine with Windows Azure Storage</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/5sFeyHVX2FJ5Zdl8gTY8dKbGo5s/0/da"><img src="http://feedads.g.doubleclick.net/~a/5sFeyHVX2FJ5Zdl8gTY8dKbGo5s/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/5sFeyHVX2FJ5Zdl8gTY8dKbGo5s/1/da"><img src="http://feedads.g.doubleclick.net/~a/5sFeyHVX2FJ5Zdl8gTY8dKbGo5s/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/cCqQX6-ZQnM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2010/01/06/my-windows-azure-article-is-in-the-january-2010-issue-of-msdn-magazine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2010/01/06/my-windows-azure-article-is-in-the-january-2010-issue-of-msdn-magazine/</feedburner:origLink></item>
		<item>
		<title>Windows Azure Session Videos from PDC ‘09</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/xCukUkOVPD8/</link>
		<comments>http://www.caffeinedi.com/2009/11/22/windows-azure-session-videos-from-pdc-09/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 03:12:43 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=138</guid>
		<description><![CDATA[Jim Nakashima from with Windows Azure team posted links to videos of the Azure-related sessions from PDC &#8216;09.  The original link can be found at http://blogs.msdn.com/jnak/archive/2009/11/19/videos-of-the-windows-azure-sessions-at-pdc09.aspx, but I&#8217;m reposting them for convenience.
Hours of great content here&#8230; I have a feeling my wife is going to have to peel me away from the computer.  Maybe I&#8217;ll [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/jnak/" target="_blank">Jim Nakashima</a> from with Windows Azure team posted links to videos of the Azure-related sessions from PDC &#8216;09.  The original link can be found at <a href="http://blogs.msdn.com/jnak/archive/2009/11/19/videos-of-the-windows-azure-sessions-at-pdc09.aspx" target="_blank">http://blogs.msdn.com/jnak/archive/2009/11/19/videos-of-the-windows-azure-sessions-at-pdc09.aspx</a>, but I&#8217;m reposting them for convenience.</p>
<p>Hours of great content here&#8230; I have a feeling my wife is going to have to peel me away from the computer.  Maybe I&#8217;ll just watch them from the Windows Media Center box I have hooked up to the big screen and try to convince her they&#8217;re movies.</p>
<p><strong>Introductory</strong></p>
<ul>
<li><a href="http://microsoftpdc.com/Sessions/P09-03">Lap Around the Windows Azure Platform</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC13">Windows Azure Present and Future</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC37">Introduction to Building Applications with Windows Azure</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC54">The Business of Windows Azure: What you should know about Windows Azure Platform pricing and SLAs</a></li>
</ul>
<p><strong>Learn to Develop for Windows Azure</strong></p>
<ul>
<li><a href="http://microsoftpdc.com/Sessions/SVC53">Tips and Tricks for Using Visual Studio 2010 to Build Applications that Run on Windows Azure </a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC08">Patterns for Building Scalable and Reliable Applications with Windows Azure</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC16">Developing Advanced Applications with Windows Azure</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC15">Windows Azure Monitoring, Logging, and Management APIs</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC25">Automating the Application Lifecycle with Windows Azure</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC18">Building Hybrid Cloud Applications with Windows Azure and the Service Bus</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC17">Enabling Single Sign-On to Windows Azure Applications</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC20">Bridging the Gap from On-Premises to the Cloud</a></li>
</ul>
<p><strong>Windows Azure Storage</strong></p>
<ul>
<li><a href="http://microsoftpdc.com/Sessions/SVC14">Storing and Manipulating Blobs and Files with Windows Azure Storage</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC09">Windows Azure Tables and Queues Deep Dive</a></li>
</ul>
<p><strong>Windows Azure as an Open Platform</strong></p>
<ul>
<li><a href="http://microsoftpdc.com/Sessions/SVC51">Developing PHP and MySQL Applications with Windows Azure</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC50">Building Java Applications with Windows Azure</a></li>
</ul>
<p><strong>SQL Azure Sessions</strong></p>
<ul>
<li><a href="http://microsoftpdc.com/Sessions/SVC29">Enrich your Applications with Data from Microsoft Project Code Name “Dallas”</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC52">SQL Azure Database: Present and Future</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC23">Using the Microsoft Sync Framework to Connect Apps to the Cloud</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC27">The Future of Database Development with SQL Azure</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC12">Microsoft SQL Azure Database: Under the Hood</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC06">Scaling out Web Applications with Microsoft SQL Azure Databases</a></li>
<li><a href="http://microsoftpdc.com/Sessions/P09-14">Petabytes for Peanuts! Making Sense out of “Ambient” Data</a></li>
<li><a href="http://microsoftpdc.com/Sessions/P09-08">Development Best Practices and Patterns for Using Microsoft SQL Azure Databases</a></li>
</ul>
<p><strong>Showcases</strong></p>
<ul>
<li><a href="http://microsoftpdc.com/Sessions/SVC32">Lessons Learned: Building Scalable Applications with the Windows Azure Platform</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC31">Lessons Learned: Building On-Premises and Cloud Applications with the Service Bus and Windows Azure</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC33">Lessons Learned: Building Multi-Tenant Applications with the Windows Azure Platform</a></li>
<li><a href="http://microsoftpdc.com/Sessions/SVC22">Lessons Learned: Migrating Applications to the Windows Azure Platform</a></li>
</ul>

<p><a href="http://feedads.g.doubleclick.net/~a/RLIfj_t7wATWwhO9d-4jhLbK1OY/0/da"><img src="http://feedads.g.doubleclick.net/~a/RLIfj_t7wATWwhO9d-4jhLbK1OY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/RLIfj_t7wATWwhO9d-4jhLbK1OY/1/da"><img src="http://feedads.g.doubleclick.net/~a/RLIfj_t7wATWwhO9d-4jhLbK1OY/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/xCukUkOVPD8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2009/11/22/windows-azure-session-videos-from-pdc-09/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2009/11/22/windows-azure-session-videos-from-pdc-09/</feedburner:origLink></item>
		<item>
		<title>The Hardware Behind Windows Azure</title>
		<link>http://feedproxy.google.com/~r/CaffeineDependencyInjection/~3/9F3kTP6zEcA/</link>
		<comments>http://www.caffeinedi.com/2009/11/20/the-hardware-behind-windows-azure/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 18:54:38 +0000</pubDate>
		<dc:creator>Nate</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.caffeinedi.com/?p=133</guid>
		<description><![CDATA[I wasn&#8217;t able to make it to PDC &#8216;09 this year (I&#8217;m not bitter at all.  Nope.  Not at all.  Especially since everyone who went got a free Windows 7 laptop.  Nope, not bitter at all).  Thankfully, the #pdc09 tweets were flowing, pretty much giving me the play-by-play, and the live Channel 9 video broadcasts [...]]]></description>
			<content:encoded><![CDATA[<p>I wasn&#8217;t able to make it to PDC &#8216;09 this year (I&#8217;m not bitter at all.  Nope.  Not at all.  Especially since everyone who went got a free Windows 7 laptop.  Nope, not bitter at all).  Thankfully, the #pdc09 tweets were flowing, pretty much giving me the play-by-play, and the live Channel 9 video broadcasts were great.</p>
<p>One of the most informative things I&#8217;ve seen is a <a href="http://geekswithblogs.net/evjen/archive/2009/11/20/136437.aspx" target="_blank">post by Bill Evjen which details the hardware behind Windows Azure</a>.  Microsoft had one of the Azure data center &#8220;containers&#8221; set up at PDC, and the post takes you through it, all the way down to the cooling and humidity control.</p>
<p>It&#8217;s a fun read with lots of pictures.  Thanks Bill!</p>
<p><a href="http://geekswithblogs.net/evjen/archive/2009/11/20/136437.aspx" target="_blank">http://geekswithblogs.net/evjen/archive/2009/11/20/136437.aspx</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/T4wEF8SmTB2EUAVwZgKJpMGRVCg/0/da"><img src="http://feedads.g.doubleclick.net/~a/T4wEF8SmTB2EUAVwZgKJpMGRVCg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/T4wEF8SmTB2EUAVwZgKJpMGRVCg/1/da"><img src="http://feedads.g.doubleclick.net/~a/T4wEF8SmTB2EUAVwZgKJpMGRVCg/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/CaffeineDependencyInjection/~4/9F3kTP6zEcA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.caffeinedi.com/2009/11/20/the-hardware-behind-windows-azure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.caffeinedi.com/2009/11/20/the-hardware-behind-windows-azure/</feedburner:origLink></item>
	</channel>
</rss>
