<?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>Brady White</title>
	<atom:link href="http://www.bradywhite.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bradywhite.net</link>
	<description>Adobe Flex/Flash and Life</description>
	<lastBuildDate>Tue, 18 May 2010 15:49:13 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Apple Internship</title>
		<link>http://www.bradywhite.net/2010/05/18/apple-internship/</link>
		<comments>http://www.bradywhite.net/2010/05/18/apple-internship/#comments</comments>
		<pubDate>Tue, 18 May 2010 15:46:54 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.bradywhite.net/?p=420</guid>
		<description><![CDATA[Apple decided to offer me an internship this summer. I&#8217;m headed to Cupertino (San Jose), California from May 24 &#8211; Aug 20.  I will be doing software development for them, more specifically Adobe Flash, Java, and iPhone development for their retail point of sale division.  I was interviewed a total of 5 times, [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_425" class="wp-caption alignleft" style="width: 310px"><a href="http://www.bradywhite.net/wp-content/uploads/2010/05/Apple-Offer-The-Offer.jpg"><img class="size-medium wp-image-425" title="Apple Offer - The Offer" src="http://www.bradywhite.net/wp-content/uploads/2010/05/Apple-Offer-The-Offer-300x225.jpg" alt="Apple Offer - The Offer" width="300" height="225" /></a><p class="wp-caption-text">Apple Internship - The Offer</p></div>
<p>Apple decided to offer me an internship this summer. I&#8217;m headed to Cupertino (San Jose), California from May 24 &#8211; Aug 20.  I will be doing software development for them, more specifically Adobe Flash, Java, and iPhone development for their retail point of sale division.  I was interviewed a total of 5 times, once on campus, two phone interviews, and two iChat video interviews.  It was quite a process.</p>
<p>When the official offer came, it felt like I was opening my first iPod.  The 3-fold pristine white offer with the Apple logo was exactly what you would expect from Apple.</p>
<p>Apple has an incredible company culture.  A fellow BYU MISM alumni stated &#8220;One year at Apple is like three years at any other company.&#8221; I&#8217;m interested to see first-hand what Apple&#8217;s internal processes are like.</p>
<p>Kellie will continue to work at KSL as a morning show producer and will be in California with me for 15 of the 90 days.  It will be tough not seeing her every day, but she will be coming out to visit almost every other weekend.</p>
<p>Working in Silicon Valley has always been on my to-do list, I can&#8217;t wait to see what it is like.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2010/05/18/apple-internship/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>NoteSync with Google docs Desktop Beta Released</title>
		<link>http://www.bradywhite.net/2010/03/27/notesync-with-google-docs-desktop-beta-released/</link>
		<comments>http://www.bradywhite.net/2010/03/27/notesync-with-google-docs-desktop-beta-released/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 18:28:51 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Cool Sites]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google docs]]></category>
		<category><![CDATA[note taking]]></category>
		<category><![CDATA[notes]]></category>
		<category><![CDATA[notesync]]></category>

		<guid isPermaLink="false">http://www.bradywhite.net/?p=407</guid>
		<description><![CDATA[NoteSync with Google docs Desktop Beta has been released today!  NoteSync lets you take notes fast and sync them with your Google docs account. Keyboard shortcuts like CTR-L put your cursor in the search bar to easily search for notes or create a new note. Automatic syncing happens every minute or when you feel like [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.notesync.com"><img class="alignleft size-full wp-image-408" title="NoteSync with Google docs" src="http://www.bradywhite.net/wp-content/uploads/2010/03/previewProduct.png" alt="NoteSync with Google docs" width="316" height="429" border="0" /></a><a href="http://www.notesync.com">NoteSync with Google docs Desktop Beta</a> has been released today!  NoteSync lets you take notes fast and sync them with your Google docs account. Keyboard shortcuts like CTR-L put your cursor in the search bar to easily search for notes or create a new note. Automatic syncing happens every minute or when you feel like it by pressing the sync button. Offline mode fully supported.</p>
<p><span style="font-weight: normal; font-size: 13px;"><a href="http://www.notesync.com">Download NoteSync Desktop</a></span></p>
<p><a href="http://www.twitter.com/NoteSync">Follow NoteSync on Twitter</a></p>
<p><a href="http://www.facebook.com/pages/NoteSync-with-Google-docs/361700746773">Fan NoteSync on Facebook</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2010/03/27/notesync-with-google-docs-desktop-beta-released/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Rocketship &#8211; Industrial Design</title>
		<link>http://www.bradywhite.net/2009/10/21/rocketship-industrial-design/</link>
		<comments>http://www.bradywhite.net/2009/10/21/rocketship-industrial-design/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 14:00:45 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Portfolio]]></category>

		<guid isPermaLink="false">http://bradywhite.net/?p=181</guid>
		<description><![CDATA[
Rocketship is an industrial design studio located in the heart of Provo, UT.  Rocketship has designed Provo Craft&#8217;s Cricut, Philip&#8217;s GoLite Blu, and the Jet Boil.  With Beth Robertson&#8217;s designs, we were able to launch a new, clean version of their site in December 2008.  Rocketship wanted many custom features.
Special Features:

Dynamic Projects
Flex Slideshow &#38; Thumbnail [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.rocketshipdesign.com"></a></p>
<div id="attachment_359" class="wp-caption alignleft" style="width: 251px"><a href="http://www.rocketshipdesign.com"><img class="size-full wp-image-359" title="rocketshipLogo" src="http://www.bradywhite.net/wp-content/uploads/2009/09/rocketshipLogo.jpg" alt="Rocketship Industrial Design" width="241" height="94" /></a><p class="wp-caption-text">Rocketship Industrial Design</p></div>
<p><a href="http://www.rocketshipdesign.com">Rocketship</a> is an industrial design studio located in the heart of Provo, UT.  Rocketship has designed <a href="http://www.rocketshipdesign.com/our-work/cricut">Provo Craft&#8217;s Cricut</a>, <a href="http://www.rocketshipdesign.com/our-work/golite_blu">Philip&#8217;s GoLite Blu</a>, and the <a href="http://www.rocketshipdesign.com/our-work/jet_boil">Jet Boil</a>.  With Beth Robertson&#8217;s designs, we were able to launch a new, clean version of their site in December 2008.  Rocketship wanted many custom features.</p>
<p>Special Features:</p>
<ul>
<li>Dynamic Projects</li>
<li>Flex Slideshow &amp; Thumbnail Slider with AJAX Integration</li>
<li>SEO Friendly w/AJAX</li>
<li>Custom Skinned Wordpress Engine for Their News Section</li>
<li>BaseCamp Login Integration</li>
<li>PayPal Integration for Client Payments</li>
<li>Social Media Sharing</li>
</ul>
<p><em>Problem</em>: Rocketship needed the ability  to manage their own projects in their &#8216;our work&#8217; section.<em><br />
Solution: </em>Projects and their images are dynamically pulled from a database.</p>
<p><em>Problem</em>: Rocketship needed to have the projects thumbnail slider communicate with the slideshow.  The slideshow needed to talk to an image navigation in HTML.<em><br />
Solution:</em> Using Adobe Flex, I was able to create a custom slideshow and project slider to display their projects.  Using AJAX I was able to communicate between the slideshow and the slider.  Also using AJAX, I was able to have the slideshow communicate with the image navigation.</p>
<div id="attachment_370" class="wp-caption alignnone" style="width: 310px"><a href="http://www.bradywhite.net/wp-content/uploads/2009/09/rocketshipOurWork.jpg"><img class="size-medium wp-image-370" title="rocketshipOurWork" src="http://www.bradywhite.net/wp-content/uploads/2009/09/rocketshipOurWork-300x276.jpg" alt="Rocketship - Our Work" width="300" height="276" /></a><p class="wp-caption-text">Rocketship - Our Work</p></div>
<p><em>Problem:</em> Rocketship wanted a news section that fit with their site.<em><br />
Solution: </em>I created a custom Wordpress skin that matched their site.  I used the Wordpress engine to power their blog and make it SEO friendly.</p>
<div id="attachment_365" class="wp-caption alignnone" style="width: 310px"><a href="http://www.bradywhite.net/wp-content/uploads/2009/09/rocketshipNews.jpg"><img class="size-medium wp-image-365 " title="rocketshipNews" src="http://www.bradywhite.net/wp-content/uploads/2009/09/rocketshipNews-300x286.jpg" alt="Rocketship - News w/ Wordpress" width="300" height="286" /></a><p class="wp-caption-text">Rocketship - News w/ Wordpress</p></div>
<p><em>Problem:</em> Rocketship wanted clients to be able to pay for invoices on their site.<em><br />
Solution: </em>I used PayPal integration to allow clients to enter an invoice number and amount.  This allowed PayPal to handle the credit card authentication process.</p>
<p><em>Problem:</em> Rocketship wanted clients to be able to login to their BaseCamp system.<em><br />
Solution: </em>Using HTTP posts I was able to allow the user to login to BaseCamp through a form on Rocketship&#8217;s site.</p>
<p><em>Problem:</em> Rocketship wanted users to be able to share projects and news articles with friends.<em><br />
Solution:</em> Using AddThis I was able to customize the widget to fit with Rocketship&#8217;s design guidelines.  Users were able to share on virtually every social network available.</p>
<div id="attachment_364" class="wp-caption alignnone" style="width: 330px"><img class="size-full wp-image-364 " title="rocketshipShare" src="http://www.bradywhite.net/wp-content/uploads/2009/09/rocketshipShare.jpg" alt="rocketshipShare" width="320" height="174" /><p class="wp-caption-text">Rocketship - AddThis</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2009/10/21/rocketship-industrial-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Aspire &#8211; Poster &amp; T-Shirt Creator</title>
		<link>http://www.bradywhite.net/2009/10/19/aspire-poster-t-shirt-creator/</link>
		<comments>http://www.bradywhite.net/2009/10/19/aspire-poster-t-shirt-creator/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 14:35:45 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[aspire]]></category>
		<category><![CDATA[product designer]]></category>

		<guid isPermaLink="false">http://bradywhite.net/?p=125</guid>
		<description><![CDATA[Aspire has revolutionized the way youth sporting pictures are taken.  Providing a green screen allows the players and the parents to design their own posters, shirts, and even trading cards.  At Rain I was the primary Flex developer for Aspire&#8217;s product designer.  The designer allows users to design custom posters, shirts, trading cards, team pictures, [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_355" class="wp-caption alignleft" style="width: 314px"><a href="http://www.iwillaspire.com"><img class="size-full wp-image-355" title="aspireLogo" src="http://www.bradywhite.net/wp-content/uploads/2009/09/aspireLogo.jpg" alt="Aspire - Product Designer" width="304" height="131" /></a><p class="wp-caption-text">Aspire - Product Designer</p></div>
<p>Aspire has revolutionized the way youth sporting pictures are taken.  Providing a green screen allows the players and the parents to design their own posters, shirts, and even trading cards.  At <a href="http://www.mediarain.com">Rain </a>I was the primary Flex developer for <a href="http://www.iwillaspire.com">Aspire</a>&#8217;s product designer.  The designer allows users to design custom posters, shirts, trading cards, team pictures, blankets, and other products.</p>
<p>After being in beta since July 2008, we released the major release of Aspire in September, 2009.</p>
<p>Aspire&#8217;s business model is unique.  Aspire does a photo shoot, uploads the green screen photos, autogenerates all products for each player, and then sends the player an email letting them know their account is ready.  The user can then login and customize their own products.</p>
<p>Aspire was featured in an Adobe Max Keynote by <span><span><a href="http://twitter.com/RainInteractive">RainInteractive</a> &#8217;s Andrew Howlett (32 min). Keynote: <a rel="nofollow" href="http://bit.ly/BAmiI" target="_blank">http://bit.ly/BAmiI</a></span></span></p>
<p><span><span>&#8220;</span></span>Trading cards are a top seller! Nowhere else on the planet can one design and order a trading card this way! We greatly appreciate the awesome tool you have created.&#8221; &#8211; Chris from Aspire</p>
<div id="attachment_356" class="wp-caption alignnone" style="width: 310px"><a href="http://www.bradywhite.net/wp-content/uploads/2009/09/aspirePosterPreview.jpg"><img class="size-medium wp-image-356" title="aspirePosterPreview" src="http://www.bradywhite.net/wp-content/uploads/2009/09/aspirePosterPreview-300x230.jpg" alt="aspirePosterPreview" width="300" height="230" /></a><p class="wp-caption-text">Aspire - Poster Designer</p></div>
<p><span><span> </span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2009/10/19/aspire-poster-t-shirt-creator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>98jobs.info &#8211; Ward Employment Site</title>
		<link>http://www.bradywhite.net/2009/10/18/98jobs-info-ward-employment-site/</link>
		<comments>http://www.bradywhite.net/2009/10/18/98jobs-info-ward-employment-site/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 15:14:06 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[church]]></category>
		<category><![CDATA[employment]]></category>
		<category><![CDATA[forms]]></category>
		<category><![CDATA[google docs]]></category>
		<category><![CDATA[lds]]></category>
		<category><![CDATA[survey]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.bradywhite.net/?p=283</guid>
		<description><![CDATA[
Serving in my church is a great way for me to volunteer my time and talents to help others. Recently my wife and I were called as the Employment Specialists in my BYU Married Ward. This past Sunday we launched a ward employment web site that helps married college students find work in the Provo [...]]]></description>
			<content:encoded><![CDATA[<p style="margin: 0in; font-family: Calibri; font-size: 11pt;">
<div id="attachment_286" class="wp-caption alignleft" style="width: 307px"><a href="http://www.98jobs.info"><img class="size-full wp-image-286  " title="serveWardPostJob" src="http://www.bradywhite.net/wp-content/uploads/2009/10/serveWardPostJob.jpg" alt="Serve Your Ward, Post Your Job" width="297" height="168" /></a><p class="wp-caption-text">Serve Your Ward, Post Your Job</p></div>
<p>Serving in my <a href="http://www.lds.org">church </a>is a great way for me to volunteer my time and talents to help others.<span> </span>Recently my wife and I were called as the Employment Specialists in my BYU Married Ward.<span> </span>This past Sunday we launched a<a href="http://www.98jobs.info"> ward employment web site</a> that helps married college students find work in the Provo / Orem area.<span> </span>I used <a href="http://www.wordpress.org">Wordpress </a>to power the site and the Jobpress theme to power the Job Board.<span> </span>Any ward member can post jobs where they work.<span> </span>This allows ward members to network with each other.  Those looking for work get employed faster than before.</p>
<p style="margin: 0in; font-family: Calibri; font-size: 11pt;">
<p style="margin: 0in; font-family: Calibri; font-size: 11pt;">Google docs is a powerful surveying tool.  We set up a survey through google docs forms that allows us to know where each ward member is employed and what their job title is.  If you have never used <a href="http://docs.google.com/support/bin/answer.py?hl=en&amp;answer=87809">Google Docs forms</a>, I HIGHLY recommend you do so.  They are quite powerful and save a lot of time.  I used these forms to compile my wedding addresses.</p>
<p style="margin: 0in; font-family: Calibri; font-size: 11pt;">
<div id="attachment_287" class="wp-caption alignnone" style="width: 526px"><a href="http://www.98jobs.info/survey"><img class="size-full wp-image-287 " title="employmentSurvey" src="http://www.bradywhite.net/wp-content/uploads/2009/10/surveyFields.jpg" alt="Employment Survey" width="516" height="195" /></a><p class="wp-caption-text">Employment Survey</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2009/10/18/98jobs-info-ward-employment-site/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Calculating Image Resolutions in Flex</title>
		<link>http://www.bradywhite.net/2009/09/15/calculating-image-resolutions-in-flex/</link>
		<comments>http://www.bradywhite.net/2009/09/15/calculating-image-resolutions-in-flex/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 23:51:57 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[image resolutions]]></category>
		<category><![CDATA[rain]]></category>

		<guid isPermaLink="false">http://bradywhite.net/?p=220</guid>
		<description><![CDATA[Custom book builders are great rich internet applications that we&#8217;ve made at Rain.  One core component of custom book builders is allowing users to upload their own photos.  The most common user error is uploading and using a photo that cannot be printed at a high quality print resolution.  It is our [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_362" class="wp-caption alignleft" style="width: 265px"><img class="size-full wp-image-362  " src="http://blog.mediarain.com/wp-content/uploads/2009/09/ImageWellWithPhoto.jpg" alt="ImageWellWithPhoto" width="255" height="255" /><p class="wp-caption-text">Photo Scaled 200% inside ImageWell. 50 dpi.</p></div>
<p>Custom book builders are great rich internet applications that we&#8217;ve made at <a href="http://www.mediarain.com">Rain</a>.  One core component of custom book builders is allowing users to upload their own photos.  The most common user error is uploading and using a photo that cannot be printed at a high quality print resolution.  It is our job to let the user know if the image he or she has selected for a particular ImageWell (a rectangle where a photo can be placed) can be printed.</p>
<h2>Basics of printing</h2>
<p>Printers print according to dpi (dots per inch).  Say a 1200 px x 1800 px image is printed onto a 4&#8243; x 6&#8243; sheet of paper.  The dpi would then be:</p>
<ul>
<li>width: 1200 px / 4 inches = 300 dpi</li>
<li>height: 1800 px / 6 inches = 300 dpi</li>
</ul>
<p>Print resolutions can vary anywhere from 150 dpi (low/medium quality) to 300 dpi (high quality) and up.</p>
<h2>Our Example</h2>
<p>First we need to define two variables:</p>
<ol>
<li>Final print resolution dpi</li>
<li>Warning dpi</li>
</ol>
<p>For this example we will use a final print resolution of 300 dpi and we will show a warning if the image resolution is lower than 200 dpi.  The user has uploaded a low resolution 400 x 500 photo to our photo book application.  The user has placed the photo into an ImageWell that is 1200 x 1200 (square).  Then the user scales the image to 200% which crops the photo and lowers the dpi.</p>
<p><em>Note: By selecting a final print resolution of 300 dpi, this means that the 1200 x 1200 ImageWell is equal to a 4 inch by 4 inch square when printed.  If you do not understand this, please reread it until you do.</em></p>
<div id="attachment_360" class="wp-caption alignnone" style="width: 410px"><img class="size-full wp-image-360 " src="http://blog.mediarain.com/wp-content/uploads/2009/09/brady_kellie.jpg" alt="User Photo" width="400" height="500" /><p class="wp-caption-text">User Photo</p></div>
<div id="attachment_361" class="wp-caption alignnone" style="width: 435px"><img class="size-full wp-image-361" src="http://blog.mediarain.com/wp-content/uploads/2009/09/ImageWell.jpg" alt="ImageWell" width="425" height="425" /><p class="wp-caption-text">ImageWell</p></div>
<div id="attachment_362" class="wp-caption alignnone" style="width: 435px"><img class="size-full wp-image-362 " src="http://blog.mediarain.com/wp-content/uploads/2009/09/ImageWellWithPhoto.jpg" alt="ImageWellWithPhoto" width="425" height="425" /><p class="wp-caption-text">Photo Scaled 200% inside ImageWell. 50 dpi.</p></div>
<h2>What the user does</h2>
<p>When the user places the 400 x 500 photo into our 1200 x 1200 ImageWell, the image is scaled by 3x to fit the width of the ImageWell resulting in an actual image width of 1200 x 1500.</p>
<p>The user then scales the image inside the ImageWell to 200% (not the ImageWell itself) resulting in an actual image width of 2400 x 3000. This also crops the photo.</p>
<h2>How to calculate the Image Resolution</h2>
<p>We now need to figure out how much of our image is actually being displayed inside the ImageWell.  For width, we will take a ratio of the ImageWell&#8217;s width comparative to the actual image width.  imageWell.width / image.width or 1200 / 2400 = 50%. For height, 1200 / 3000 = 40%</p>
<p>Now we need to see how many pixels of our original photo we will be using when we print the photo in the ImageWell.  Let&#8217;s see what 50% of the original uploaded image&#8217;s width is.  50% x 400 px = 200 px.  For height, 40% x 500 = 200 px.</p>
<p>So the user essentially wants to crop out a 200 x 200 square out of our photo and put it into a 1200 x 1200 ImageWell.  Some red flags should be going off in your head.  200 / 1200 = 16.67% of the print resolution.</p>
<p>So to calculate the dpi of the cropped and scaled image, we multiply 16.67% x 300 dpi (final print resolution) which equals <strong>50 dpi</strong>.  Clearly we can see that 50 dpi is lower than our warning dpi of 200 and we should display a warning message to the user letting them know that the image cannot be printed.</p>
<p>Here is the logic implemented in Flex Actionscript 3.0. This code sample handles image rotation, cropping, and scaling. Special thanks to <a href="http://aaronhardy.com/">Aaron Hardy</a> for helping with the implementation of this code.</p>
<p><em>Note: This code sample is within an extended version of ImageWell.as which is part of Rain&#8217;s SVG parsing library. Simply copying and pasting this code into your application will <strong>not </strong>work.  This code is provided for you to learn from and as evidence that the logic works in an actual project.  If you wish to use this code, you will need to implement logic and modify variables to get it to work in your application.</em></p>
<p><code><br />
/**<br />
* Check image resolution to ensure it meets minimum image resolution requirements.<br />
* If image resolution is too low, call showWarningDisplay()<br />
*<br />
* @see ConfigVO printPixelsPerInch for print resolution which is 300 dpi<br />
* @see ConfigVO printPixelsPerInchMinimum for minimum print resolution which is 200 dpi<br />
*/<br />
protected function checkImageResolution(e:Event = null):void<br />
{<br />
// Please Note: PhotoVO (photo) is the photo on the server<br />
//                 image refers to the photo that has been loaded into this image well<br />
//                I only refer to width to simplify.  Height is also accounted for.<br />
//<br />
// -----------------------<br />
// Example:<br />
// A 400 x 500 PhotoVO put into a 1200 x 1200 ImageWell then scaled to 200%<br />
// 1) The image is scaled by 3x to fit into the ImageWell resulting in an image with<br />
//    size 1200 x 1500. The image is then scaled 200% to 2400 x 3000.<br />
//    unrotatedImageBounds will give us these numbers and account for<br />
//    scaling and rotation.<br />
// 2) wellWidthToImageWidth tells us what percentage of the PhotoVO width will actually<br />
//    be put into the ImageWell for print.  i.e. 1200 / 2400 = 50%<br />
// 3) photoWidthInImageWell tells us how much of the PhotoVO's width will be put into<br />
//    the image well for print. i.e. 400 * 50% = 200 px;<br />
// 4) widthDpiScale tells us what percentage the photo width is relative to the<br />
//    ImageWell width. i.e. 200 / 1200 = 16.7%<br />
// 5) dpiScale is the minimum value of widthDpiScale and heightDpiScale. i.e. 16.7%<br />
// 6) dpi is then determined by multiplying imageScale * config.printPixelsPerInch<br />
//    i.e. 16.7% * 300 = 50 dpi<br />
// Config from Model<br />
var config:ConfigVO = AppModel.instance.config;<br />
// Get the Actual Image Bounds width and height even if the image is rotated and scaled<br />
var unrotatedImageBounds:Rectangle = image.displayObject.getBounds(image.displayObject);<br />
unrotatedImageBounds.width *= Math.abs(image.displayObject.scaleX);<br />
unrotatedImageBounds.height *= Math.abs(image.displayObject.scaleY);<br />
var wellWidthToImageWidth:Number = width / unrotatedImageBounds.width;<br />
var wellHeightToImageHeight:Number = height / unrotatedImageBounds.height;<br />
var photoWidthInImageWell:Number = photoVO.width * wellWidthToImageWidth;<br />
var photoHeightInImageWell:Number = photoVO.height * wellHeightToImageHeight;<br />
var widthDpiScale:Number = photoWidthInImageWell / width;<br />
var heightDpiScale:Number = photoHeightInImageWell / height;<br />
// Calculate dpi in terms of Config's printPixelsPerInch<br />
var dpiScale:Number = Math.min(widthDpiScale, heightDpiScale);<br />
var dpi:Number = Math.round(config.printPixelsPerInch * dpiScale);<br />
// Show warning appropriately if dpi does not meet minimum dpi requirement<br />
if (dpi &lt; config.printPixelsPerInchMinimum)<br />
{<br />
showWarningDisplay(true);<br />
}<br />
else<br />
{<br />
showWarningDisplay(false);<br />
}<br />
}<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2009/09/15/calculating-image-resolutions-in-flex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ragnar &#8211; Run. Eat. Sleep? Repeat.</title>
		<link>http://www.bradywhite.net/2009/06/21/ragnar-run-eat-sleep-repeat/</link>
		<comments>http://www.bradywhite.net/2009/06/21/ragnar-run-eat-sleep-repeat/#comments</comments>
		<pubDate>Sun, 21 Jun 2009 23:43:02 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://bradywhite.net/?p=206</guid>
		<description><![CDATA[After 32 hours, 13.4 miles of running, and 2 hours of sleep,  I&#8217;m back from the Wasatch Back Ragnar Relay of 2009.  Thanks to Chase &#38; Lindsey Brammer, Kellie and I were invited to join their VIP team along with Brady and Nicki Brammer.  The other six teammates consisted of coworkers and friends from [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-medium wp-image-247" src="http://bradywhite.net/wp-content/uploads/2009/06/IMGP4264-300x225.jpg" alt="" width="300" height="225" />After 32 hours, 13.4 miles of running, and 2 hours of sleep,  I&#8217;m back from the Wasatch Back Ragnar Relay of 2009.  Thanks to <a href="http://www.brammerfamily.com/">Chase &amp; Lindsey Brammer</a>, Kellie and I were invited to join their VIP team along with <a href="http://brammerbunch.blogspot.com/">Brady and Nicki Brammer</a>.  The other six teammates consisted of coworkers and friends from Rain Interactive.  Hence the name of our team, &#8220;Make it Rain!&#8221;</p>
<p>The Ragnar is a relay race where a team of 12 people get two vans and run 188 miles divided into 36 legs from Logan to Park City (also known as the Wasatch Back).  Each runner gets three legs where each leg varies in length from 3 to 9.6 miles and ranges in difficulty from Easy, Moderate, Hard, to Very Hard.</p>
<p>We rented an Acadia from the airport on Saturday Night and headed to Logan where we spent the night with some family friends, the Bryans.  We woke up and ate some french toast at Lindsey&#8217;s parents&#8217; house. Sadly, Lindsey ended up with a confirmed case of Swine flu and she was unable to join us after the many hours she spent organizing and preparing our team to run Ragnar.  Luckily Lauren, Kellie&#8217;s sister, was able to fill Lindsey&#8217;s difficult runs.</p>
<p>Here&#8217;s the Van 2 runner breakdown:</p>
<ul>
<li>Runner 7 &#8211; Kellie Goff</li>
<li>Runner 8 &#8211; Nicki Brammer</li>
<li>Runner 9 &#8211; Lauren Goff</li>
<li>Runner 10 &#8211; Chase Brammer</li>
<li>Runner 11 &#8211; Brady Brammer</li>
<li>Runner 12 &#8211; Brady White</li>
</ul>
<p><strong>Distance Chart:</strong></p>
<table class="bodycopy" border="0" cellspacing="1" cellpadding="1" width="100%" align="center">
<tbody>
<tr align="center">
<td align="center">7</td>
<td>4 miles | Easy</td>
<td>3.8 miles | Moderate</td>
<td>4.6 miles | Easy</td>
<td>12.4 miles</td>
</tr>
<tr align="center">
<td align="center">8</td>
<td>3.4 miles | Easy</td>
<td>7 miles | Moderate</td>
<td>6.1 miles | Moderate</td>
<td>16.5 miles</td>
</tr>
<tr align="center">
<td align="center">9</td>
<td>3.5 miles | Easy</td>
<td>9.6 miles | Very Hard</td>
<td>3.6 miles | Very Hard</td>
<td>16.7 miles</td>
</tr>
<tr align="center">
<td align="center">10</td>
<td>3.5 miles | Easy</td>
<td>7.7 miles | Hard</td>
<td>4 miles | Very Hard</td>
<td>15.2 miles</td>
</tr>
<tr align="center">
<td align="center">11</td>
<td>3.8 miles | Very Hard</td>
<td>7.3 miles | Hard</td>
<td>7.3 miles | Very Hard</td>
<td>18.4 miles</td>
</tr>
<tr align="center">
<td align="center"><strong>12</strong></td>
<td><strong>3.1 miles | Very Hard</strong></td>
<td><strong>5.2 miles | Hard</strong></td>
<td><strong>5.1 miles | Easy</strong></td>
<td><strong>13.4 miles</strong></td>
</tr>
</tbody>
</table>
<p>We picked up Lauren in Ogden and headed to our first transfer point in Ogden Valley.  Kellie was the first runner and she started off great.  We had a tradition of stopping every one to two miles to give water, support, and an occasional butt slap.  Brady Brammer had a tough run which started our ascent to Snow Basin ski resort.  My leg followed his and I finished the 3.1 mile ascent to Snow Basin which had a 4.2% gradient (an 833 ft elevation gain in 3.1 miles).</p>
<p><img class="alignnone size-medium wp-image-248" title="IMGP4245" src="http://bradywhite.net/wp-content/uploads/2009/06/IMGP4245-300x225.jpg" alt="IMGP4245" width="300" height="225" />We then headed to the town of Morgan, grabbed some Subway sandwiches, and rested. Afterwards we headed to our exchange point, whipped out our sleeping bags, and attempted to take a nap before our next legs which would start at 10:30 pm.  The black sky dawned on us and Kellie put on her Headlamp and LED vest.  She had a tough run which she conquered with ease.  The rest of the runners followed.  At one point we thought we had lost Lauren.  Turns out she was running faster than we expected and her bobbing headlamp and LED vest passed us without us knowing.  I got about 45 minutes of sleep before it was my turn at 4 am.  I felt great and headed out on my run.  I have to admit, I thought this leg was going to be my least favorite but it turned out to be my favorite.  There is nothing like running 5.2 miles in the middle of the night.  Even the 450 ft elevation gain didn&#8217;t dissuade my spirits.  I finished strong at 5 am and then we headed to our camp.</p>
<p><img class="alignnone size-medium wp-image-249" title="Getting Kellie Water" src="http://bradywhite.net/wp-content/uploads/2009/06/IMGP4251-300x225.jpg" alt="Getting Kellie Water" width="300" height="225" />We pitched sleeping bags near a baseball diamond in Midway and I got about 2 hours of sleep before the other van was done with their runs at 9:30.  Kellie started us off strong as Lauren and Chase prepared for Ragnar Mountain.  Ragnar mountain has a 3,100 net elevation gain which the two had to conquer.  I was amazed at their sub 12 minute miles as Lauren and Chase conquered the muddy mountain in a downpour of rain.  Brady Brammer had a difficult 7.3 mile run coming down the Ragnar Mountain with the relentless downpour still mocking us.  His knees took a beating during a 600 ft net elevation loss over the course of one mile.  Miraculously the rain stopped as it was my turn to finish off the 188 mile relay through Park City.  My run was ideal, a 5.1 mile with a 460 net elevation loss with perfect weather.  With 50 yards to go, Kellie, Lauren, and Chase met me and we ran across the finish line together.</p>
<p><img class="alignnone size-medium wp-image-251" title="Almost at Finish Line" src="http://bradywhite.net/wp-content/uploads/2009/06/IMGP4263-225x300.jpg" alt="Almost at Finish Line" width="225" height="300" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2009/06/21/ragnar-run-eat-sleep-repeat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adobe Flex Presentation at BYU</title>
		<link>http://www.bradywhite.net/2009/03/10/adobe-flex-presentation-at-byu/</link>
		<comments>http://www.bradywhite.net/2009/03/10/adobe-flex-presentation-at-byu/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 16:58:42 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://bradywhite.net/?p=194</guid>
		<description><![CDATA[
Thanks to everyone that came to the Adobe Flex presentation at BYU.  It turned out great.  Many people learned what Flex can do and found solutions to ideas they had.  Thanks to Rain Interactive for sponsoring the event with Papa Johns Pizza.  Special thanks to the Web Startup Group for hosting the event.  They recorded [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-medium wp-image-253" title="BYU Flex Presentation" src="http://bradywhite.net/wp-content/uploads/2009/03/BYU-Flex-Presentation-002-300x200.jpg" alt="BYU Flex Presentation" width="300" height="200" /></p>
<p>Thanks to everyone that came to the Adobe Flex presentation at BYU.  It turned out great.  Many people learned what Flex can do and found solutions to ideas they had.  Thanks to <a href="http://www.mediarain.com">Rain Interactive</a> for sponsoring the event with Papa Johns Pizza.  Special thanks to the <a href="http://webstartupgroup.com/">Web Startup Group</a> for hosting the event.  They recorded my presentation and have <a href="http://webstartupgroup.com/2009/02/flex-techtalk-brady-white/">my slides hosted on their site</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2009/03/10/adobe-flex-presentation-at-byu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wordpress for iPhone</title>
		<link>http://www.bradywhite.net/2009/01/28/wordpress-for-iphone/</link>
		<comments>http://www.bradywhite.net/2009/01/28/wordpress-for-iphone/#comments</comments>
		<pubDate>Wed, 28 Jan 2009 19:32:40 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[wordpress iphone]]></category>

		<guid isPermaLink="false">http://bradywhite.net/2009/01/28/wordpress-for-iphone/</guid>
		<description><![CDATA[Today I downloaded the wordpress for iPhone app and I am currently writing this post from my iPhone. I am able to upload photos from my iPhone&#8217;s photo library and make edits to existing posts. All I can say is wow and go download it yourself.
]]></description>
			<content:encoded><![CDATA[<p>Today I downloaded the wordpress for iPhone app and I am currently writing this post from my iPhone. I am able to upload photos from my iPhone&#8217;s photo library and make edits to existing posts. All I can say is wow and go download it yourself.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2009/01/28/wordpress-for-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tour De Flex</title>
		<link>http://www.bradywhite.net/2008/11/20/tour-de-flex/</link>
		<comments>http://www.bradywhite.net/2008/11/20/tour-de-flex/#comments</comments>
		<pubDate>Thu, 20 Nov 2008 06:43:40 +0000</pubDate>
		<dc:creator>Brady White</dc:creator>
				<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://bradywhite.net/?p=171</guid>
		<description><![CDATA[
Adobe just produced Tour De Flex an AIR app that allows you to tour all of Flex&#8217;s features.  Great for those who are curious about what flex can do.  For developers, this tool is great because it allows you to actually see the code to produce the feature that is shown.
Adobe states that Tour De [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-257" title="tourDeFlex" src="http://bradywhite.net/wp-content/uploads/2008/11/tourDeFlex.jpg" alt="tourDeFlex" width="215" height="180" /></p>
<p>Adobe just produced <a title="Tour De Flex" href="http://flex.org/tour" target="_blank">Tour De Flex</a> an AIR app that allows you to tour all of Flex&#8217;s features.  Great for those who are curious about what flex can do.  For developers, this tool is great because it allows you to actually see the code to produce the feature that is shown.</p>
<p>Adobe states that Tour De Flex has three primary features:</p>
<ul>
<li>Provide non-Flex developers with a good overview of what is possible in Flex in a “look and see” environment</li>
<li>Provide Flex developers with an illustrated reference tool</li>
<li>Provide commercial and non-commercial Flex developers a place to showcase their work</li>
</ul>
<p><a title="Tour De Flex" href="http://flex.org/tour" target="_blank">Check out the Tour De Flex Web Site</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bradywhite.net/2008/11/20/tour-de-flex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
