<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Richard's Giveness Blog</title><description><![CDATA[Keep up to date on all the Giving!]]></description><link>http://www.giveness.com/member/rwaldvogel/blog</link><lastBuildDate>Mon, 10 Mar 2008 07:34:50 GMT</lastBuildDate><item><title>Random falling objects in Flash</title><description><![CDATA[<p><embed src="http://giveness.s3.amazonaws.com/falling.swf" scale="ShowAll" play="true" loop="true" menu="true" wmode="Window" quality="1" type="application/x-shockwave-flash"></embed></p>
<p><a target="_blank" href="http://giveness.s3.amazonaws.com/falling.zip">Here is the source .fla file</a>&nbsp; - (right click.. Save Target as)</p>
<p>My friend Greg mentioned that he was working on a flash design that had to incorporate a large number of items falling inside of the movie.&nbsp; Instead of&nbsp;trying to tween everything by hand, it might work to have a script generate the scene for you.&nbsp; This was a quick proof of concept.&nbsp;</p>
<p>&nbsp;</p>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/7f168b08-379d-45c3-817b-e0cbdc72392a</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/7f168b08-379d-45c3-817b-e0cbdc72392a</guid><pubDate>Mon, 10 Mar 2008 07:34:50 GMT</pubDate><category>flash</category></item><item><title>Note To Self</title><description><![CDATA[<p>I have to get, make one of these.&nbsp; what a cool vehicle.&nbsp; I use to have a newer model of the Vanagon, but it wasn't nearly as cool as this.</p>
<p><img class="" alt="" src="http://farm2.static.flickr.com/1173/1342796210_aaec078794.jpg?v=0" /></p>
<p>Via:&nbsp; <a href="http://www.flickr.com/photos/bryankennedy/1342796210/in/photostream/">http://www.flickr.com/photos/bryankennedy/1342796210/in/photostream/</a></p>
<p>&nbsp;</p>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/cc6e57aa-4334-4e29-9de7-95d7c1ca4bb4</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/cc6e57aa-4334-4e29-9de7-95d7c1ca4bb4</guid><pubDate>Sat, 08 Sep 2007 03:45:01 GMT</pubDate><category>cool</category><category>vehicle</category></item><item><title>Bad News From Home</title><description><![CDATA[<p>I had a message on my answering machine from my Mom tonight.&nbsp; It was kind of late with the time difference but I picked up a certain tone in her voice and I knew I had to call her back right away.&nbsp; I got a hold of her and we did our usual conversation of &quot;how are the kids, how was the weekend.&quot; but more importantly I made sure to ask how she was doing as last week she had an emergency operation where doctors removed almost 2 feet of her digestive track to remove the infection.&nbsp; She made sure to state that her recovery was going well and she was feeling much better than the last time we talked.&nbsp; I was extremely relieved that she was ok, but then there was a pause.</p>
<p>&quot;We got some bad news this week.&quot;&nbsp;&nbsp;</p>
<p>My heart sunk and I immediately felt a pain in my stomache.&nbsp; I've heard this phrase from my Mom only a few times in life and everytime I did, it was serious.&nbsp; &quot;Your uncle Chuck just found out that he has stage 4 cancer and the doctors are only giving him a couple months.&quot;&nbsp; What?&nbsp; I was completely shocked by the news.&nbsp; Cancer had once again reared it's ugly head with a vengence into&nbsp;the life of somebody that I love.</p>
<p>My uncle Chuck&nbsp;was a role model for me growing up.&nbsp; I always looked forward to seeing him at any family gathering and he would&nbsp;take&nbsp;time asking me what I was up to in my life and was quick to offer a word of guidance or encouragement with no judgement.&nbsp; My fondest childhood memory&nbsp;is how he knows all kinds of pressure points and whenever you shook his hand, he was quick to apply a pressure point on you and make you drop to the floor.</p>
<p>I could go on and on about how great my Uncle Chuck is but I found an interview that he did with the Milwaukee Journal a couple years back and if you read that, you'll read about a business man that worked hard and cared deeply for the people around him.&nbsp; <br />
<a href="http://findarticles.com/p/articles/mi_qn4196/is_20050926/ai_n15617934"><strong>http://findarticles.com/p/articles/mi_qn4196/is_20050926/ai_n15617934</strong></a></p>
<p>I'm planning a trip home to Wisconsin in the next few weeks to pay him a visit, shake his hand, give him a hug, and make sure he knows how much he impacted my life.</p>
<p>I ask anyone that reads this to keep my Uncle Chuck&nbsp;in your thoughts and prayers.</p>
<p>&nbsp;</p>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/6443fb76-9df5-4907-b6aa-b3d8a9523e65</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/6443fb76-9df5-4907-b6aa-b3d8a9523e65</guid><pubDate>Mon, 06 Aug 2007 06:20:10 GMT</pubDate><category /></item><item><title>Transformers Review</title><description><![CDATA[<p>I got the chance to sneak out and catch a movie with my friend Ronnie a few weekends ago.&nbsp; We thought we better catch Transformers on the big screen while it was at theatres.&nbsp; It's not too often lately&nbsp;where&nbsp;either of us have&nbsp;had time to spend a few hours at a movie so we were pretty stoked that our wives would watch the kids and let us go.</p>
<p>I walked in high expectations after reading some fairly good reviews in Wired magazine and online.&nbsp; I walked out of the movie&nbsp;with my eyes hurting from rolling them so much.&nbsp;&nbsp;I should've waited until it came out on video.&nbsp; I think my exact words walking out were, &quot;I feel bad, I would've preferred watching my kids play in a pool than sit through that.&quot;</p>
<p>I'll give the movie props for it's visuals as the special effects were top notch and almost to the point of overload.&nbsp; But all the eye candy didn't make up for the dissappointment I felt regarding the storytelling.&nbsp; They only spent about&nbsp;3 minutes discussing the great back story of how the&nbsp;Autobots soceity disintegrated and their civil war started.&nbsp;&nbsp;They should have taken a page from the&nbsp;original Superman that showed us specifically the circumstances that led to packing Superman up and shipping him to earth.</p>
<p>I walked out of the movie knowing more about Sam (Shia LaBeouf), his parents (and the fact that his dad was a nut about his landscaping), and that his love interest's (Mikaela) dad was a convicted felon and that they use to steal cars together than I did about any of the Autobots and why they were on earth.&nbsp; Granted,&nbsp;having watched the original Transformers cartoons and movies of old, I already&nbsp;knew what was going on but why not retouch on these important concepts&nbsp;and spend quality screen time telling that story than worrying about the school bullie's love&nbsp;of his&nbsp;Hummer.</p>
<p>One other aspect that got very little coverage was the story of Megatron.&nbsp;&nbsp;They got us all caught&nbsp;up on that storyline in about 3 sentences.&nbsp; &nbsp;All the flashbacks&nbsp;focused on the&nbsp;Shackleton-esque escapades of Sam's great grandfather &quot;stumbling&quot; across the cube and Megatron.&nbsp; If you're going to utilize a flashback then I personally would have preferred to see Megatron coming to earth and &quot;somehow&quot; getting stuck here and taken into custody and reversed engineered.&nbsp;</p>
<p>Everything that&nbsp;I disliked about&nbsp;Armegeddon was in full effect in the Transformers.&nbsp; I love going on an emotional rollercoaster during a movie, but it's best when it's not shoved down your throat to the sounds of &nbsp;a Top 10 soundtrack and GMC ad.</p>
<p>Maybe my disappointment comes from how great this movie could have been.&nbsp; All the elements were there to make it one of the best movies I've ever seen and that seriously bummed me out.&nbsp; Now I'll have to wait until the sequel comes out on DVD before I get to see what happens next.&nbsp; I was at a party this weekend and told a few friends that I saw it and they asked if they should see it.. my response was, &quot;Did you like Armegeddon?&quot;</p>
<p>&nbsp;</p>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/1c30ffdd-7e85-455e-b06d-3dfbaa1b3efb</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/1c30ffdd-7e85-455e-b06d-3dfbaa1b3efb</guid><pubDate>Tue, 31 Jul 2007 04:30:03 GMT</pubDate><category>movie review</category><category>transformers</category></item><item><title>Liars, liars with their pants on fire.</title><description><![CDATA[<P>The concept of "truth" sure has taken a beating in the media lately.  Apparently, you can make up whatever you want and as long as it's issued in a written statement to the press, we're required to believe it.</P>
<P>I just watched a NASA press conference on CNN stating that they had no knowledge of any of the shuttle astronauts being under the influence of alcohol during or prior to the launches.  Really?  In the interest of science wouldn't it be a good idea to obtain as many vitals on a human prior to space travel? I'm sure there is some sort of pre-flight physical that astronaunts undergo where bloodshot eyes, cotton mouth and the stench of "morning dew" would  be noticed and recorded.</P>
<P>Instead of lying about it, why not just come and say, "Look.. have you ever seen a shuttle launch and do you what can happen when things go wrong?"  I can't imagine anything being more stressful than sitting around the night before you strap yourself to tons and tons of explosives that get ignited to propel you into space.  These people are professionals and putting their lifes on the line, so if they decide to raise a glass to keep their nerves in check then tell it like it is.  It also would make sense that NASA would contol their diets in the 24 hours leading up to the launch, so keep the booze out of the green room if it's going to be a problem.  </P>
<P>I've been keeping up on the mess that Attorney General Alberto Gonzales' seems to be in.  I've been laughing through my tears as he offers explanations for alleged improprieties with, "I don't recall."  Lawyers gain respect and become successful for having studied and being able to recall, from memory, the most specific and obscure details of previous cases that have ever gone to trial.  It's hard to fathom that you can become the top lawyer in the US without being able to recall even the basics details like, who, what, when, where and why of some pretty important meetings that happend only a few weeks or months ago.   Saying you cannot recall the truth, when it's pretty certain that you should be able to, is the same as lying in my book.</P>
<P>But since it appears I'm casting judgement, I'm going to fess up to a lie that I told today.  While out for a walk with my wife earlier today, my 3 year old saw a dead bird laying in the road.  Later in the day she told me that she wanted to take me for a walk and show me the dead bird.  I told her that I didn't want to go.  Of course she asked me why to which I replied, "If I see the dead bird, I'll feel very bad that it didn't look both ways before crossing the street and I'll start to cry."  Telling that lie seemed like a much better solution than standing by the side of the road while people driving by watched my kid poke a dead bird with a stick.  </P>
<P>Sometimes lies can come in handy but they should be reserved for dealing with your children under the age of 5 and not an entire nation.  </P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/956028a5-0373-44c0-940a-2c4bfc5e5ef3</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/956028a5-0373-44c0-940a-2c4bfc5e5ef3</guid><pubDate>Sat, 28 Jul 2007 09:22:44 GMT</pubDate><category>lies</category><category>truth</category></item><item><title>Working with eBay's auction EndDate in Flash</title><description><![CDATA[<p>Flash is an excellent tool and it's been a lot of fun rediscovering it while working on the widgets.&nbsp; However, there are just a few things that it's lacking that can be somewhat of pain while developing inside it.&nbsp; 9 times out of 10 you can usually find a work around or if you look hard enough you can find a buried&nbsp;article from someone who came across the same problem as you and came up with a work around.</p>
<p>One problem I came across during the widget development was parsing out the EndDate value that eBay webservices uses to denote when the auction you are looking at is going to end.&nbsp; eBay uses an UTC formated date value that looks like this:&nbsp; &quot;<strong>2008-07-16T05:30:45.000Z</strong>&quot;</p>
<p>I was relieved to find that Flash 8 supports the UTC Date type, but then realized that I could not find a way to take the string value of the EndDate that I got from eBay and turn it into a Flash formatted UTC date.&nbsp; Hmmrph.&nbsp; C#, as well as a good number of other server technologies make this quite simple so&nbsp; I searched the innernets and came up empty&nbsp;for an example of what I was looking for.&nbsp; Looking at Flash I discovered that I could construct a valid UTC Date with the following format:&nbsp;</p>
<p>var myDate = new Date(year,month,day,hour,min,secs,ms);</p>
<p>Looking at the EndDate value&nbsp;of the&nbsp;eBay record I saw that I had all the values that I needed to construct a valid UTC Date, but I was going to have to roll up my sleeves and chop the string value up a little bit to get what I wanted.</p>
<p>Note:&nbsp; Flash Months are zero based, unlike most languages, so January is equal to 0 instead of 1.&nbsp;</p>
<p>So here is the function I created that will take a string that contains a date and convert it to proper Date.UTC format in flash.&nbsp; It simply hacks apart the string and grabs the valid numbers that we need to pass to the constructor.&nbsp; To expand on this, you could cast the variables as Numbers and do some extra validating before passing it to the constructor.&nbsp; This could also probably be a good example for conversion to a prototype function.</p>
<p>function ConvertStringToUTC(dt:String):Date {<br />
&nbsp;var year = dt.substring(0,4);<br />
&nbsp;var month = dt.substring(5,7);<br />
&nbsp;var day = dt.substring(8,10);<br />
&nbsp;var hour = dt.substring(11,13);<br />
&nbsp;var min = dt.substring(14,16);<br />
&nbsp;var secs = dt.substring(17,19);<br />
&nbsp;var ms = dt.substring(20,23);<br />
&nbsp;<br />
&nbsp;var myDate = new Date(year,(month-1),day,hour,min,secs,ms);<br />
&nbsp;return myDate;<br />
}</p>
<p>usage would be:</p>
<p>Date dtEndDate = ConvertStringToUTC(&quot;2008-07-16T05:30:45.000Z&quot;);</p>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/48ef4031-fb93-4f6a-9e75-66c06a01f99d</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/48ef4031-fb93-4f6a-9e75-66c06a01f99d</guid><pubDate>Fri, 27 Jul 2007 05:26:30 GMT</pubDate><category>ebay</category><category>flash</category><category>prototypes</category></item><item><title>Accessing User Profile Outside Web Project</title><description><![CDATA[<P>This is a little chunk of code that has escaped me for a little bit, but I finally was able to find enough resources to piece together how to do it.</P>
<P>If your using the new Profile Providers inside of .NET 2.0, here is how you can access a member's profile from outside the web project.  You don't get the strongly typed parameters but it still can come in handy if your desperate.</P><FONT color=#2b91af size=2>
<P>ProfileBase</FONT><FONT size=2> pb = </FONT><FONT color=#2b91af size=2>ProfileBase</FONT><FONT size=2>.Create(<FONT color=#a31515>"UserName"</FONT>);<BR></FONT><FONT size=2><FONT color=#0000ff size=2>object</FONT><FONT size=2> obj = pb.GetPropertyValue(</FONT><FONT color=#a31515 size=2>"NameOfValueYouWantToGet"</FONT><FONT size=2>);</FONT></P>
<P><FONT size=2>of course you'll want to cast the object and check for it's existence.  It's only two lines of code but it can help you out in a pinch.  Turns out, after a few hours of figuring this out, I really didn't need it after all, but now I have it in my pocket in case I do.</P></FONT></FONT>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/913cbf3c-0d17-4434-b573-388cb30f77fa</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/913cbf3c-0d17-4434-b573-388cb30f77fa</guid><pubDate>Wed, 11 Jul 2007 04:02:31 GMT</pubDate><category>.net</category><category>geek</category><category>profile provider</category></item><item><title>The Cure at Red Rocks - October 2nd</title><description><![CDATA[<p>Oh yeah.&nbsp; I just ordered tickets for seeing The Cure at Red Rocks on Oct 2nd.&nbsp; I can't imagine a better combination for utter personal concert enjoyment.&nbsp; My all time favorite band at my favorite venue at my favorite time of year.&nbsp; The tickets are right next to the mixing board so I expect the sound to be stellar.</p>
<p>The Cure recently went through another line up change and ditched their keyboard player.&nbsp; I'm assuming this will mean that their set will focus on their earlier music.&nbsp; More rock, less pop.&nbsp; I'll be counting the days.&nbsp;&nbsp;&nbsp;</p>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/c182c347-6d93-4d5d-ae7a-9c7d48d3a3fe</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/c182c347-6d93-4d5d-ae7a-9c7d48d3a3fe</guid><pubDate>Sun, 01 Jul 2007 03:15:08 GMT</pubDate><category>concerts</category><category>red rocks</category><category>the cure</category></item><item><title>ColoradoStartups.com Write Up</title><description><![CDATA[<p>Giveness received another nice write up&nbsp;and this time it was at:</p>
<p>&nbsp;<a href="http://coloradostartups.com/2007/06/19/asking-for-giveness/">ColoradoStartups.com</a>&nbsp;: &nbsp;<a href="http://coloradostartups.com/2007/06/19/asking-for-giveness/">http://coloradostartups.com/2007/06/19/asking-for-giveness/</a>.&nbsp;</p>
<p>It's a blog written by David Cohen covering the start up environment here in Colorado.. as if the domain name didn't pretty much cover that.</p>
<p>He gives a good overview of how the service works and links to a specific example, which is great.&nbsp; So far, our concept continues to be well received among the community and this is very encouraging at these early stages.&nbsp; Judging from his other articles, I'm sure if David spotted an issue with our service or business, there would be no hesitation in sharing this with his readers.&nbsp; He calls it like he sees it and I like that.</p>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/6f2edd47-adab-4861-bd5c-eb650626a180</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/6f2edd47-adab-4861-bd5c-eb650626a180</guid><pubDate>Wed, 20 Jun 2007 19:48:59 GMT</pubDate><category>colorado</category><category>press</category><category>startups</category></item><item><title>Sicko</title><description><![CDATA[<P>I just finished watching Michael Moore's latest documentary called "Sicko" evaluating the current health care system in the United States.</P>
<P>You can view it online for free here: <A href="http://video.google.com/videoplay?docid=-6703482849079349175">http://video.google.com/videoplay?docid=-6703482849079349175</A></P>
<P>Apparently Mr. Moore doesn't mind people viewing his movies for free, but I doubt the studios do, so I wouldn't expect that link to be valid for too long.  Regardless, I would recommend that you take the time to either view it at the theatre, rent it, or even better, buy it through Giveness.com when it comes out on DVD. </P>
<P>Many people feel Mr. Moore's views are slanted and full of prejudice against the government and whatever else but I personally admire his efforts for at least creating a dialogue about issues that effect us most.  I was personally moved and in many instances appalled at some of the information that was exposed in the movie.</P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/75d7f2e6-c60d-47f9-9f7f-aa944ad87257</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/75d7f2e6-c60d-47f9-9f7f-aa944ad87257</guid><pubDate>Mon, 18 Jun 2007 23:46:33 GMT</pubDate><category>health care</category><category>michael moore</category><category>sicko</category></item><item><title>CNN : Brain gets a thrill from charity</title><description><![CDATA[<P>From the article:</P>
<P>"Knowing your money is going to a good cause can activate some of the same pleasure centers in your brain as food and sex, U.S. researchers said Thursday."</P>
<P><A href="http://www.cnn.com/2007/HEALTH/06/14/brain.altruism.reut/index.html">http://www.cnn.com/2007/HEALTH/06/14/brain.altruism.reut/index.html</A></P>
<P>brilliant.</P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/271b46b1-4f0e-40a6-9829-4ab64fa1e544</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/271b46b1-4f0e-40a6-9829-4ab64fa1e544</guid><pubDate>Fri, 15 Jun 2007 00:14:47 GMT</pubDate><category>charity</category><category>cnn</category><category>news</category></item><item><title>Giveness coverage on BusinessHackers.com</title><description><![CDATA[<P>Kimura sent us a nice write up about Giveness that he found on <A href="http://www.businesshackers.com/2007/06/12/giveness-when-charity-and-business-come-together/">BusinessHackers.com</A>, by Dario D'Onofrio.  </P>
<P>It's a great article and I really enjoyed his commentary about soceity as a whole.  It's a very informative blog.</P>
<P> </P>
<P> </P>
<P> </P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/f9c7d081-4924-4b40-9216-3fa647303069</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/f9c7d081-4924-4b40-9216-3fa647303069</guid><pubDate>Thu, 14 Jun 2007 08:55:51 GMT</pubDate><category>giveness</category></item><item><title>8 years - bronze</title><description><![CDATA[<P>Today is our 8th year wedding anniversary.   When I think back on the last 8 years, I can't help but think that either, somebody up there likes me a lot, or I must have done something really good at some point in my life or both.  I'm always the first to admit how lucky I am.</P>
<P>Tonight is going to be a night out for a change.  Sarah-boo is coming over to babysit the kids and we'll be heading out for a nice relaxing dinner and whatever else we decide to do.  I can't wait.</P>
<P> </P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/7997b6c5-173e-4816-b577-8dafafa298c3</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/7997b6c5-173e-4816-b577-8dafafa298c3</guid><pubDate>Tue, 12 Jun 2007 20:11:27 GMT</pubDate><category /></item><item><title>AlternateView Emails in ASP.NET 2.0</title><description><![CDATA[<P>I found a nice little addition to the email capabilities inside of .NET 2.0 awhile back.  Microsoft reorganized a lot of the email functionality in their .NET 2.0 release.  In fact they even changed the Namespace that that you have to work with in order to send emails inside of ASP.NET.  It went from System.Web.Mail to System.Net.Mail, which makes sense because emails are really sent over a network as opposed to the web.</P>
<P>One feature you have to consider when setting up an email distribution system is how you can handle sending basic "text" emails versus sending well formatted ("pretty") emails that can contain html formatting.  Old systems use to require that you set your preferences to "html" as an option when signing up for emails that you receive.  </P>
<P>The best approach is to create an email that contains different MIME Content-Types of "text/plain" and "text/html" and let the email reader decide which version to display to the user.  Previously, this required getting down to actually communicating with the TCPClient socket on port 25.  While possible, it certainly adds a layer of complexity that most web developers fear to tread, myself included.  If anyone is interested, I created a decent SMTP Socket class that will let you talk with the socket layer and send html and text emails old school style.  Remember that even though a mail reader can parse the html version you send, the individual user may prefer a basic text view.</P>
<P>First, you'll need to come up with a good method for storing and accessing two different emails templates that you want to send which is beyond the scope of this entry and something I might discuss in a future blog.  To get the general concept, we store versions of our emails in the database, pull them in to a StringBuilder, do some regex on them for customization and send away.  Email templates could easily be stored in XML, Text files or even hardcoded into your code.  The important thing is that you have two seperate versions of your email template, the text version and the html version.  I've experimented with creating one html version and regexing out the html tags to create the text version but prefer to manage them seperately for better control over the formatting.</P>
<P>So, assuming you are familiar with a MailMessage and the SMTP classes, this is the basic code you need to distribute dual versions of the same email.</P><FONT color=#2b91af size=2>
<P>MailMessage</FONT><FONT size=2> mm = </FONT><FONT color=#0000ff size=2>new</FONT><FONT size=2> </FONT><FONT color=#2b91af size=2>MailMessage</FONT><FONT size=2>();<BR><FONT size=2><FONT size=2>mm.To.Add(</FONT><FONT color=#0000ff size=2>new</FONT><FONT size=2> </FONT><FONT color=#2b91af size=2>MailAddress</FONT><FONT size=2>("ToEmailAddress", "ToDiplayName"));<BR><FONT size=2>mm.Subject = "Your Subject"</FONT><FONT size=2>;</FONT></FONT></FONT></FONT></P><FONT color=#008000 size=2>
<P>//load up the templates into the StringBuilders<BR></FONT><FONT size=2><FONT size=2><FONT size=2><FONT size=2><FONT color=#2b91af size=2>StringBuilder</FONT><FONT size=2> sbBody = </FONT><FONT color=#0000ff size=2>new</FONT><FONT size=2> </FONT><FONT color=#2b91af size=2>StringBuilder</FONT><FONT size=2>("text template content");<BR></FONT><FONT color=#2b91af size=2>StringBuilder</FONT><FONT size=2> sbBodyHtml = </FONT><FONT color=#0000ff size=2>new</FONT><FONT size=2> </FONT><FONT color=#2b91af size=2>StringBuilder</FONT><FONT size=2>("html template content");</FONT><FONT size=2><FONT color=#008000 size=2></P>
<P>//do your regexing and customization here, something like:</P><FONT size=2>
<P><FONT color=#000000>sbBody.Replace</FONT><FONT color=#000000>(</FONT></FONT><FONT color=#000000 size=2>"##Message##"</FONT><FONT size=2><FONT color=#000000>,</FONT> <FONT color=#000000>"hello world");</FONT></P></FONT>
<P>//add the 2 AlternateViews of the email <BR><FONT color=#2b91af size=2>AlternateView</FONT><FONT size=2> textView = </FONT><FONT color=#2b91af size=2>AlternateView</FONT><FONT size=2>.CreateAlternateViewFromString(sbBody.ToString(), </FONT><FONT color=#0000ff size=2>null</FONT><FONT size=2>, </FONT><FONT color=#a31515 size=2>"text/plain"</FONT><FONT size=2>);<BR></FONT><FONT color=#2b91af size=2>AlternateView</FONT><FONT size=2> htmlView = </FONT><FONT color=#2b91af size=2>AlternateView</FONT><FONT size=2>.CreateAlternateViewFromString(sbBodyHtml.ToString(), </FONT><FONT color=#0000ff size=2>null</FONT><FONT size=2>, </FONT><FONT color=#a31515 size=2>"text/html"</FONT><FONT size=2>);</FONT></P>
<P><FONT size=2><FONT color=#000000><FONT color=#008000>//add the AlternatViews to the MailMessage<BR></FONT>mm.AlternateViews.Add(textView);<BR></FONT><FONT color=#000000>mm.AlternateViews.Add(htmlView);</FONT></FONT></P><FONT size=2><FONT color=#2b91af size=2>
<P>SmtpClient</FONT><FONT color=#000000 size=2> smtp = </FONT><FONT color=#0000ff size=2>new</FONT><FONT color=#000000 size=2> </FONT><FONT color=#2b91af size=2>SmtpClient</FONT><FONT size=2><FONT color=#000000>("localhost");<BR><FONT size=2>smtp.Send(mm);</FONT></FONT></FONT></P>
<P><FONT size=2><FONT color=#000000><FONT size=2><FONT size=3>If you look at the raw code of the email that gets sent, you'll see that it created two seperate Mime Content-Types for you and the email reader now has 2 seperate versions of the same email that the user can choose to view.</FONT> </P></FONT></FONT></FONT></FONT></FONT></FONT></FONT></FONT></FONT></FONT>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/c4c7082a-6eec-4ae0-a2e4-140654dae7d1</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/c4c7082a-6eec-4ae0-a2e4-140654dae7d1</guid><pubDate>Mon, 04 Jun 2007 07:41:00 GMT</pubDate><category>.net</category><category>asp</category><category>email</category><category>geek</category></item><item><title>Scale and Center a Movie Clip in Flash</title><description><![CDATA[<P>It's been a long time since I worked with Flash (i.e. Actionscript), probably too long.  In the past couple weeks, I have spent a substantial amount of time relearning the platform.  I've forgotten how fun it can be and since it's been about 2 releases since I spent any real time using it, it's come a long way.</P>
<P>I use to be quite comfortable working with Flash a few years ago but a lot has slipped my mind since then.  The fundamentals have been coming back quickly but I've been saying, "How did I do that before?"  One issue that had me stumped for a bit was being able to scale and center a dynamically loaded movie clip.</P>
<P>I started out manipulating the _xscale and _yscale of the movie, but didn't get the exact results that I wanted.  I'm sure it's possible to make it work, but I decided to take a different route of adjusting the _width and _height properties to fit. </P>
<P>So here's what I did and it gives me the results i was looking for.</P>
<P>//set the maximum dimensions that you want the clip to live in<BR>var imgMaxWidth:Number = 300;<BR>var imgMaxHeight:Number = 240;</P>
<P>//the object referenced as "which" is the dynamically loaded clip<BR>//this could be accessed in the .onLoadInit function of a MovieClipLoader listener</P>
<P> //make sure the image is not too wide<BR> if(which._width > imgMaxWidth) {<BR>  //calculate the height to proportion of scaled width<BR>  var iHeight:Number = (imgMaxWidth * which._height/which._width)<BR>  //set movie to new width and height<BR>  which._width = imgMaxWidth;<BR>  which._height = iHeight;<BR> }</P>
<P> //make sure the image is not too high to fit <BR> if(which._height > imgMaxHeight)<BR> {<BR>  //calculate the width to proportion of scaled width<BR>  var iWidth:Number = (imgMaxHeight * which._width/which._height);<BR>  //set movie to new width and height<BR>  which._height = imgMaxHeight;<BR>  which._width = iWidth;<BR> }</P>
<P>//center the clip within the bounds of the container</P>
<P>which._x = (imgMaxWidth/2) - (which._width/2);<BR>which._y = (imgMaxHeight/2) - (which._height/2);</P>
<P>I think using the _xscale and _yscale would probably get the amount of code down a bit so I'll probably circle back and give it another go and turn it into a prototype for easier use.  </P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/c696b39f-16fc-45fd-a1ae-5d62f46e9acd</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/c696b39f-16fc-45fd-a1ae-5d62f46e9acd</guid><pubDate>Thu, 31 May 2007 09:07:12 GMT</pubDate><category>actionscript</category><category>code</category><category>flash</category><category>movieclip</category></item><item><title>Cash Turns One</title><description><![CDATA[<P><IMG style="WIDTH: 373px; HEIGHT: 237px" height=270 src="http://s3.amazonaws.com/giveness/photo/7b08f17e-b2e1-4dbf-8d75-a295597a523a.jpg" width=410></P>
<P>We celebrated Cash's first birthday yesterday.  It's always such a happy ocassion to see your child celebrate a birthday but their first one is always a blast.  We did the token.. "what happens when a 1 year old eats cake" but I'm sparing him the embarrasment of the event by not posting a picture.  A good time was had by all and congratulations to my little bundle of joy.  You rock Cash.</P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/728d92f1-e165-49eb-8147-1b7075cfecb6</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/728d92f1-e165-49eb-8147-1b7075cfecb6</guid><pubDate>Mon, 30 Apr 2007 08:09:22 GMT</pubDate><category /></item><item><title>Norah Jones at Red Rocks - June 1st 2007</title><description><![CDATA[<P>This weekend, Susan and I bought tickets for Norah Jones.  As an added bonus, the concert is going to be held at <A href="http://www.redrocksonline.com/index.asp">Red Rocks Amphitheater</A>.  This will be Susan's first time going to Red Rocks and she is a HUGE Norah Jones fan.  I didn't think it was possible but she actually wore the grooves off the .mp3s.</P>
<P>I believe that tickets are still available and if anyone would like to car pool with us up there, the more the merrier.</P>
<P> </P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/44a99fac-f9ea-4c63-8b75-e70b525a6884</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/44a99fac-f9ea-4c63-8b75-e70b525a6884</guid><pubDate>Thu, 19 Apr 2007 09:57:19 GMT</pubDate><category>red rocks</category></item><item><title>Intellegent Urls</title><description><![CDATA[<P>I've been trying to incorporate more page data in the urls that make requests.  This is a much easier way to establish the state of the request.  Since the web is a Request and Response architecture, you can embed data within the url that is being requested and access that data to build the proper response to the client.</P>
<P>If I want to call the blog page for a Charity, I can send a request of:   <BR><A href="/africaaid/blog">http://www.giveness.com/africaaid/blog</A> </P>
<P>When the server sees this request, the application can read the url and know that it needs to create a blog page for the Africa Aid charity. </P>
<P>This next url will make a request for the second page of my blog list:<BR><A href="/member/rwaldvogel/blog/page2">http://www.giveness.com/member/rwaldvogel/blog/page2</A></P>
<P>This one will get any blog that I have that is tagged eBay:<BR><A href="/member/rwaldvogel/blog/tag/ebay">http://www.giveness.com/member/rwaldvogel/blog/tag/ebay</A></P>
<P>From the previous url, this is the actual request that is being made at the server level.<BR><A href="/member/blog.aspx?un=rwaldvogel&tag=ebay">http://www.giveness.com/member/blog.aspx?un=rwaldvogel&tag=ebay</A></P>
<P>I use to think that people only used this type of design to hide the type of software their application was written in by hiding their file extensions.  I now realize that this is a very beneficial way to handle requests.</P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/0aecadc0-7d1d-432d-90e6-2df6aa9cad1b</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/0aecadc0-7d1d-432d-90e6-2df6aa9cad1b</guid><pubDate>Mon, 16 Apr 2007 08:28:56 GMT</pubDate><category>geek</category></item><item><title>Working on the Farm</title><description><![CDATA[<P>I come from a long line of farmers.  My great great grandfather "Fuddy" immigrated from Germany and started farming in central Wisconsin.  This tradition continued all the way to my father who grew up farming.  I never worked on a farm other than the ocassional throwing of hay bales. I can't say for certain but I'm willing to bet that the farming legacy went back much further than grandpa Fuddy.</P>
<P>This week I re-joined my fore-father ranks when Giveness switched our hosting environment to a <A href="http://en.wikipedia.org/wiki/Server_farm">Web Farm environment</A>.  The word "farm" is the only similiarity between the 2 professions but I'll take what I can get.  </P>
<P>This switch is going to allow a much more stable experience for our Nonprofits and their supporters.  It will also allow us to scale our company much faster as we continue to grow and help more people.  Getting a web application to run on one machine is a pretty easy thing to do.  Getting a web application to run on two machines is pretty hard thing to do but once you figure that out, adding another server is relatively simple, or 15 servers for that matter.</P>
<P>It's been an exhausting week and quite tricky at times but it was worth the effort.  Giveness is now in a position where we can grow with the demmands of our users, and that's something that I would expect from any site that I used.</P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/0ac575d5-6871-4eaf-a5f1-3fe13a8bf1c2</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/0ac575d5-6871-4eaf-a5f1-3fe13a8bf1c2</guid><pubDate>Sat, 14 Apr 2007 05:45:43 GMT</pubDate><category>hosting</category><category>web farm</category></item><item><title>AFP Conference Recap</title><description><![CDATA[<P>We just returned from Dallas Texas where we attended the AFP conference.  We had a few little issues getting down to Dallas but overall, it was a great experience. </P>
<P>We met so many wonderful people and got introduced to some amazing organizations that are doing great things.  The Nonprofit community is such a great segment to work in.  Everyone you meet has a kind heart and believes that any effort they make, can impact soceity as a whole.  </P>
<P>Lance Armstrong gave one of the keynote presentations and it's a truly remarkable story that he has to tell.  I sat enthralled and hanging on his every word as he discussed his illness and recovery and most importantly, his message that people can come together to great things to change the world.</P>
<P>It's unfortunate that most people have to wake up to the idea of helping through experiencing a bad situation themselves.  I'm guilty of this as well.  It took a good friend getting sick that landed this concept into my lap.  It's easy to live in ignorance and hopefully some of the work we can do here at Giveness will help bring the concept of helping others through a scenario that is less shocking to the soul.</P>
<P>Thanks to everyone that was kind enough to spend a moments to stop by our booth and allow us explain a little bit about what Giveness is.  We enjoyed the time we had together.</P>
<P>In an unrelated story, we visited the spot where JFK was assisinated.  It was quite interesting to see but I also could get a sense of the sorrow that the area seems to give off.  </P>]]></description><link>http://www.giveness.com/member/rwaldvogel/blog/view/6da10f52-07de-4720-8ebe-7eebd34b5960</link><guid>http://www.giveness.com/member/rwaldvogel/blog/view/6da10f52-07de-4720-8ebe-7eebd34b5960</guid><pubDate>Sun, 01 Apr 2007 16:33:48 GMT</pubDate><category>afp</category><category>trade show</category></item></channel></rss>