<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"> 
	<channel> 
		<title>the blog of Jeff Adams</title> 
		<link>http://tinyfly.com/blog/</link> 
		<description></description> 
		<dc:language>en</dc:language> 
		<dc:creator>jeff@tinyfly.com</dc:creator> 
		<dc:rights>Copyright 2008</dc:rights> 
		<pubDate>Wed, 30 Jan 2008 04:07:25 GMT</pubDate> 
		<atom:link href="http://tinyfly.com/site/main/articles" rel="self" type="application/rss+xml" /> 
		
		 
		<item> 
			<title>Changing the Background Color for ActiveX Controls in SharePoint 2007</title> 
			<link>http://tinyfly.com/blog/entry/changing-the-background-color-for-activex-controls-in-sharepoint-2007</link> 
			<guid isPermaLink="false">http://tinyfly.com/blog/entry/changing-the-background-color-for-activex-controls-in-sharepoint-2007#id:4#date:04:07</guid> 
			<description><![CDATA[<p>In SharePoint (<span class="caps">MOSS</span>) 2007 there are many ActiveX controls which add useful functionality like date picking, editing list items in an Excel-like datasheet, uploading of multiple items, and others.</p><h2>The Problem</h2>

	<p>You may run into problems though if you have a dark <span class="caps">CSS</span> background color for your site which is defined on the <code>&lt;body&gt;</code> element. The ActiveX control will show this dark color as its background color even if it is a child of another element with a light background color. This makes it difficult , if not impossible, to read and work with the content in the control.</p>

	<h2>The Fix</h2>

	<p>If your design calls for a dark background color the only way to make the content in the ActiveX items readable is to change the color on the <code>&lt;body&gt;</code> element to a light color. That means you need another element to apply your dark color to that is unique enough for targeting with <span class="caps">CSS</span> and wraps the entire contents of the page.</p>

<aside class="pull_quote">
    <q>This makes it difficult , if not impossible, to read and work with the content in the control.</q>
    </aside>

	<p>If you look through the source code you&#8217;ll notice that there is always a form tag (common with .NET) with the id=&#8220;aspnetForm&#8221; just inside the body. This can serve as the element to apply our &#8220;real&#8221; background color to.</p>

	<p>Here is what the <span class="caps">CSS</span> would look like:</p>

<pre class="brush: css">
body &#123;
    /* Background color for ActiveX 
         items like "Edit in Datasheet */
    background-color: white;
&#125;
form#aspnetForm &#123;
    /* real background color for the site as a whole */
    background-color: #002842;
    /* to be sure it fills the whole page vertically */
    height: 100%;
&#125;
</pre> 

	<p>There you have it, a white background for the datasheet views and other ActiveX controls but still a dark blue background for the site as a whole.</p>]]></description> 
			 
			<pubDate>Wed, 30 Jan 2008 04:07 GMT</pubDate> 
		</item> 
		 
		<item> 
			<title>Pragmatic Internet Explorer Version Targeting</title> 
			<link>http://tinyfly.com/blog/entry/pragmatic-internet-explorer-version-targeting</link> 
			<guid isPermaLink="false">http://tinyfly.com/blog/entry/pragmatic-internet-explorer-version-targeting#id:3#date:17:05</guid> 
			<description><![CDATA[<p>As you may have heard, the web &mdash; or at least the standards-based part of it &mdash; is in a <a href="http://www.digital-web.com/news/2008/01/IE8_Version_Targeting_causes_quite_a_stir">heated debate</a> over <a href="http://blogs.msdn.com/ie/archive/2008/01/21/compatibility-and-ie8.aspx">Microsoft&rsquo;s recent announcement</a> of version targeting in Internet Explorer 8.</p><p>I&#8217;m not going to discuss the pros and cons of this technique but I am  going to show how I intend to put version targeting to use when, and if, it actually sees the light of day.</p>

	<h2>The plan</h2>

	<ul>
		<li><strong>Set the <code>&lt;meta&gt;</code> element to IE=edge</strong> and allow sites to always use the latest IE rendering engine.</li>
		<li><strong>Include <span class="caps">HTML</span> comments</strong> instructing future, potentially unaware developers, that if a new version of IE breaks the site they need to change the &ldquo;IE=&rdquo; value to the last known working version. This should be only a quick solution until the site is properly fixed and it works in the latest IE version again.</li>
		<li><strong>Use <a href="http://www.quirksmode.org/css/condcom.html">conditional comments</a> if necessary</strong> which contain IE version targeted workarounds limiting the potential for problems caused by future versions of Internet Explorer.</li>
	</ul>

	<p>What do you intend to do about IE version targeting?</p>

	<p><strong>Update:</strong> James Bennett has written the <a href="http://www.b-list.org/weblog/2008/jan/23/legacy/">best article to date</a> about this whole version targeting issue.</p>]]></description> 
			 
			<pubDate>Wed, 23 Jan 2008 17:05 GMT</pubDate> 
		</item> 
		 
		<item> 
			<title>How to use Gmail to filter your personal email.</title> 
			<link>http://tinyfly.com/blog/entry/how-to-use-gmail-to-filter-your-personal-email</link> 
			<guid isPermaLink="false">http://tinyfly.com/blog/entry/how-to-use-gmail-to-filter-your-personal-email#id:2#date:14:51</guid> 
			<description><![CDATA[<p><strong>Update:</strong> Consider these directions outdated. This was originally written before <span class="caps">IMAP</span> was released for Gmail. After extensive testing my solution below didn&rsquo;t work all that well in some situations. I&rsquo;m now using &ldquo;Google Apps for your Domain&rdquo; and running all my mail through Gmail. That seems to work quite well.</p><p>You can use Gmail and your <span class="caps">IMAP</span> personal domain email* without resorting to automatic forwarding.</p>

	<p>About 3 years ago I switched to using <span class="caps">IMAP</span> instead of <span class="caps">POP</span> for my personal domain email and have loved it ever since. The main benefit of <span class="caps">IMAP</span> is that all your folders and emails are stored on the server instead of your local machine. This means that you can use multiple computers or change email clients without having to go through the tedious process of exporting and importing all your old emails. I also prefer using desktop mail clients to that of the online mail clients I have come across.</p>

	<p>To my dismay my employer recently decided to block the ports for <span class="caps">IMAP</span> and POP3. After using my webhost&#8217;s particularly horrid webmail for a couple weeks, I decided to take a look at how I could use Gmail to check my personal mail at work while still using my desktop email client at home. There are a few <a href="http://www.mikeindustries.com/blog/archive/2006/04/how-to-use-gmail-over-imap">other</a> <a href="http://www.downloadsquad.com/2007/07/11/how-to-use-gmail-over-imap-and-tag-your-mail-too/">ways</a> <a href="http://julipedia.blogspot.com/2006/08/imap-gateway-to-gmail.html">out</a> <a href="http://www.macosxhints.com/article.php?story=20070801132714777">there</a>: to do this but none of them were to my particular liking. By using a creative series of connections through POP3 and <span class="caps">IMAP</span> I&#8217;ve found a solution that seems to work quite well. The added bonus is that by running my personal email through Gmail it gets run through Google&#8217;s spam filters. I used to get about 50 spam emails a day in my inbox, now 2 weeks later, I haven&#8217;t received a single one.</p>

    <aside class="pull_quote">
    <q>I used to get about 50 spam emails a day in my inbox, now 2 weeks later, I haven&#8217;t received a single one.</q>
    </aside>

	<p>Without further ado, the solution.</p>

	<h2>Set up POP3 access to your personal account through Gmail.</h2>

	<ol>
		<li><p>In Gmail go to &#8220;Settings&#8221; → &#8220;Accounts&#8221; and under &#8220;Get mail from other accounts:&#8221; select &#8220;add another mail account&#8221;.</p></li>
		<li><p>Follow the steps to enter your personal domain email <strong>POP3</strong> information.</p></li>
		<li><p>Make sure to uncheck &#8220;Leave a copy of retrieved message on the server&#8221;.</p> <p>The reason for this is, as you will see in a later step, that you don&#8217;t want to download your personal domain email from your inbox into Google and through your desktop mail client. You will get duplicate messages that way.</p></li>
		<li><p>Save your changes.</p> <p>Now you have Google pulling messages from your personal domain email into Gmail.</p></li>
	</ol>

   <aside class="pull_quote">
    <q>To prepare for using your desktop client to access your Gmail account you will enable <span class="caps">POP</span> access</q>
    </aside>

	<h2>Enable <span class="caps">POP</span> access for your Gmail Account.</h2>

	<p>To prepare for using your desktop client to access your Gmail account you will enable <span class="caps">POP</span> access</p>

	<ol>
		<li><p>Again in Gmail go to &#8220;Settings&#8221; → &#8220;Forwarding and <span class="caps">POP</span>&#8221; and under &#8220;<span class="caps">POP</span> Download:&#8221; select &#8220;Enable <span class="caps">POP</span> only for mail that arrives from now on&#8221;. Also select &#8220;When messages are accessed with <span class="caps">POP</span>: Archive Gmail&#8217;s copy&#8221;.</p></li>
		<li><p>Make note of the configuration information for your desktop email client and save your changes.</p></li>
	</ol>

	<h2>Configuring your desktop client.</h2>

	<p>I prefer Apple&#8217;s Mail client so I&#8217;ll be using that here but all mail clients are pretty similar.</p>

	<ol>
		<li><p>Add the <strong><span class="caps">IMAP</span></strong> information for your personal email account.</p></li>
		<li><p>Under &#8220;Advanced&#8221; settings uncheck &#8220;Include when automatically checking for new mail&#8221;.</p> <p>Again, this is so you don&#8217;t get your new email twice, once from your personal email and once through your Gmail account which already contains your personal email.</p></li>
		<li><p>Add the <strong><span class="caps">POP</span></strong> information for your Gmail account.</p></li>
		<li><p>Under &#8220;Advanced settings check the box for &#8220;Remove copy from server after retrieving a message:&#8221; and set it to &#8220;When moved from Inbox&#8221;.</p> <p>Based on a previous setting above, Gmail already archives its online copy of your email once it is accessed through your desktop client so you just want to make sure that there is no copy left in your inbox online once you move the message out of your desktop client inbox.</p></li>
		<li><p>Create any folders in your desktop client to suit your needs.</p> <p>These folders are <span class="caps">IMAP</span> folders so they are stored on your personal domain email server. Now when you move mail from your desktop mail client&#8217;s inbox to one of these folders you will always have it available. The added bonus is that all your email is also archived online in your Gmail account.</p></li>
	</ol>

    <aside class="pull_quote">
    <q>With this set up you now have all your email going through Gmail&#8230;</q>
    </aside>

	<p>With this set up you now have all your email going through Gmail but you can still use your personal domain email account for storing your archives in the folders you like. If you ever decide to stop using Gmail all you have to do is delete your domain email account from Gmail and set your desktop client to check it automatically again.</p>

	<ul>
		<li>Personal domain email in this post refers to your domain email, username@mydomain.com, as opposed to your Gmail email, username@gmail.com.</li>
	</ul>]]></description> 
			 
			<pubDate>Tue, 18 Sep 2007 14:51 GMT</pubDate> 
		</item> 
		 
		<item> 
			<title>Using Symphony</title> 
			<link>http://tinyfly.com/blog/entry/using-symphony</link> 
			<guid isPermaLink="false">http://tinyfly.com/blog/entry/using-symphony#id:1#date:02:35</guid> 
			<description><![CDATA[<p>I recently rediscovered  <a href="http://symphony21.com/">Symphony</a> while looking for a new content management system to use on my site. Symphony uses <abbr title="eXtensible Markup Language"><span class="caps">XML</span></abbr> and <abbr title="eXtensible Stylesheet Language Transformation"><span class="caps">XSLT</span></abbr> for its underpinnings which finally gives me an excuse to learn <abbr title="eXtensible Markup Language"><span class="caps">XML</span></abbr> in a real and practical way.</p><h2>What is Symphony?</h2>

	<p>In the developer&#8217;s own words:</p>

	<blockquote>
		<p>Symphony is a web publishing system made for web developers. It gives you all the power and flexibility you&#8217;ll need, while keeping out of your way. The Symphony developers have spent an inordinate amount of time making sure that tedious tasks are quick and simple, and that your workflow is intuitive and streamlined.</p>
	</blockquote>

    <aside class="pull_quote">
    <q>&#8230;Symphony came back on my radar and surprise surprise it&#8217;s now free&#8230;</q>
    </aside>

	<p>I had looked at Symphony before when it was a commercial product. It looked promising but I didn&#8217;t have a way to test it and was unwilling to pay for a product which I couldn&#8217;t fiddle with. Just a few days ago Symphony came back on my radar and surprise surprise it&#8217;s now free; they charge for official support.</p>

	<p>What you&#8217;re seeing now is the default install of Symphony. Over the next few months I will transform it into something of my own.</p>

	<h2>Why now?</h2>

	<p>I&#8217;ve been meaning to set up a blog for quite a while now. My previous site is from 2003 and was hand coded back when I was doing freelance work. My life has since taken a different <a href="http://geniant.com" title="geniant - Where I work as a front-end developer">direction</a> and I have been looking to update my site to reflect that. Symphony has given me the spark to start working on my personal web space again.</p>]]></description> 
			 
			<pubDate>Sat, 03 Mar 2007 02:35 GMT</pubDate> 
		</item> 
		 
	</channel> 
</rss>
