<?xml version="1.0" encoding="utf-8"?>
			
			<rss version="2.0">
			<channel>
			<title>Aria Media</title>
			<link>http://aria-media.com/blog/index.cfm</link>
			<description></description>
			<language>en-us</language>
			<pubDate>Sat, 04 Sep 2010 17:36:09 -0700</pubDate>
			<lastBuildDate>Thu, 24 Apr 2008 00:20:00 -0700</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>d.nando@gmail.com</managingEditor>
			<webMaster>d.nando@gmail.com</webMaster>
			
			
			
			
			
			<item>
				<title>Google Notifier</title>
				<link>http://aria-media.com/blog/index.cfm/2008/4/24/Google-Notifier</link>
				<description>
				
				I just noticed that Google has released a small program called &lt;a href=&quot;http://mail.google.com/support/bin/answer.py?answer=46078&quot;&gt;Google Notifier&lt;/a&gt; for the Mac, that lets you know whenever you receive a new Gmail message or have an upcoming event on Google Calendar. I just tried it and it also works for Google Account email addresses. You can download it &lt;a href=&quot;http://toolbar.google.com/gmail-helper/notifier_mac.html&quot;&gt;here.&lt;/a&gt;
				
				</description>
				
				<category>mac</category>
				
				<pubDate>Thu, 24 Apr 2008 00:20:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2008/4/24/Google-Notifier</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>SPF Records</title>
				<link>http://aria-media.com/blog/index.cfm/2008/4/20/SPF-Records</link>
				<description>
				
				I had an opportunity, or rather the necessity, to delve into SPF records and found some good resources, and learned a thing or two. I&apos;ve become a big fan of using Google Accounts for email for our clients, especially because their spam filtering system seems to perform very well. We have a client that sends emails from HostMySite&apos;s email servers, from an exchange server on premises, and now from Google&apos;s mail servers. After several attempts with HostMySite&apos;s tech staff to get a properly constructed SPF record in place, I realized that they didn&apos;t have their act together in this regard. So it became my DIY project this weekend.

If you&apos;re not familiar with the SPF syntax, the place to go is &lt;a href=&quot;http://openspf.org/&quot;&gt;http://openspf.org&lt;/a&gt;. 

&lt;a href=&quot;http://www.google.com/support/a/bin/answer.py?hl=en&amp;answer=33786&quot;&gt;Google recommends&lt;/a&gt; anyone using Google Accounts for their email to use the following SPF record:

v=spf1 include:aspmx.googlemail.com &amp;sim;all

The include mechanism includes the SPF record of the domain specified if it exists. Don&apos;t be tempted to simply include any domain, such as google.com for instance. It needs to be specifically the domain containing an SPF record that allows the mail servers used by Google to send email &lt;i&gt;for their customers.&lt;/i&gt; If google.com has an SPF record, it may be only for emails sent from @google.com email addresses, and including it in your SPF may cause it to always return failures! 

Looking up the DNS record of aspmx.googlemail.com we find the following:

host: aspmx.googlemail.com
type: TXT
txt: v=spf1 redirect=_spf.google.com
class: IN
ttl: 7200

The redirect mechanism does the obvious, it redirects the lookup to the domain specified. So looking up _spf.google.com we find:

host: _spf.google.com
type: TXT
txt: v=spf1 ip4:216.239.32.0/19 ip4:64.233.160.0/19 ip4:66.249.80.0/20
ip4:72.14.192.0/18 ip4:209.85.128.0/17 ip4:66.102.0.0/20
ip4:74.125.0.0/16 ?all
class: IN
ttl: 300

The ip4 mechanism allows you to specify specific IP addresses or blocks of IP ranges using the &lt;a href=&quot;http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing&quot;&gt;CIDR&lt;/a&gt; syntax. How this SPF string is interpreted is it allows all of the IP addresses specified to send mail, and ?all means this record is neutral about any other IP addresses that might send mail for this domain. When an SPF record is published to be used as an include in other SPF records, using ?all apparently allows the parent SPF to allow more mail servers and to specify how to handle any server not specifically allowed, using either &amp;sim;all for a softfail when no match occurs (meaning look more carefully please) or -all for a hardfail (which means don&apos;t allow, period).

I learned a lot simply by looking at what Google does, and wound up recommending to HostMySite that they implement a similar approach. I hope they can implement my recommendation, which includes an internal policy to make sure their SPF record is updated whenever their outbound mail servers change, because simply being able to include:spf.safesecureweb.com in my SPF record will allow me to do it once and forget it. Otherwise I need to figure out a way to remain current with the IP&apos;s they allocate to be used for their mail servers, which would be a pain.

So the proposed SPF record I wound up with for this client, provided HostMySite follows my recommendation, is:

&quot;v=spf1 ip4:212.147.58.12 a include:spf.safesecureweb.com
include:aspmx.googlemail.com &amp;sim;all&quot;

which will be interpreted as &quot;allow the exchange server at 212.147.58.12 and include any allowed mail servers at spf.safesecureweb.com and aspmx.googlemail.com, and if another mail server tries to send email for this domain, softfail it and give it a closer look.&quot;

At openspf.org you&apos;ll find a link to a &lt;a href=&quot;http://www.kitterman.com/spf/validate.html&quot;&gt;testing tool&lt;/a&gt; that allows you to test your SPF strings. It&apos;s very handy. Once your SPF string passes validation using this testing tool to simulate sending email from various IP&apos;s possible, THEN you can modify your DNS record to include an SPF record with more confidence that what you have come up with will work well.

&lt;b&gt;Update:&lt;/b&gt; HostMySite has adopted the suggestion I put forward to them. Their SPF record is at spf.safesecureweb.com and contains their ranges of allocated IPs. They&apos;ve told me they will keep it updated going forward. Spread the word!
				
				</description>
				
				<category>spam</category>
				
				<pubDate>Sun, 20 Apr 2008 05:24:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2008/4/20/SPF-Records</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Installing MySQL on Leopard</title>
				<link>http://aria-media.com/blog/index.cfm/2008/4/16/Installing-MySQL-on-Leopard</link>
				<description>
				
				I ran into a surprising amount of trouble installing MySQL on Leopard. It turned out that there are a few bugs in the downloadable installer. I tried a few workarounds I found, but  couldn&apos;t get any of them to work. 

I found a great resource here that walks you step by step through compiling and installing MySQL on a Mac from the source code: 

&lt;a href=&quot;http://hivelogic.com/articles/installing-mysql-on-mac-os-x/&quot;&gt; http://hivelogic.com/articles/installing-mysql-on-mac-os-x/&lt;/a&gt;

And it just worked! 

The nice thing about this approach is that you can install any future version of MySQL this way very reliably, simply by changing a few references in the instructions.
				
				</description>
				
				<category>mac</category>
				
				<pubDate>Wed, 16 Apr 2008 15:20:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2008/4/16/Installing-MySQL-on-Leopard</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Enabling Root Access</title>
				<link>http://aria-media.com/blog/index.cfm/2008/4/10/Enabling-Root-Access</link>
				<description>
				
				I wasn&apos;t aware of this until a few day ago, perhaps because I was too busy using my new MacBook to delve into the file structure, but there are a whole slew of files that are not accessible via the Finder. Apparently, you can only get at them if you &quot;Enable Root Access&quot;. 

On Leopard:

&lt;ol&gt;
&lt;li&gt;Open the Directory Utility: In the Finder, navigate to the Utilities folder (tip: click on the desktop, hit Cmd+Shift+U).
&lt;li&gt;Click on the padlock to allow edits.
&lt;li&gt;Go Edit &gt; Enable Root Password
&lt;li&gt;Enter and re-enter your password.
&lt;/ol&gt;
I found this out &lt;a href=&quot;http://stringfoo.com/2007/11/28/tutorial-enabling-root-access-in-leopard/&quot;&gt;here!&lt;/a&gt;

The protected files on your system still won&apos;t be accessible via the Finder, and unless there is a setting I&apos;m not aware of yet to enable that, the best way I&apos;ve found so far to edit these files is by using TextWrangler, a free editor you can download &lt;a href=&quot;http://www.barebones.com/products/textwrangler/download.shtml&quot;&gt;here!&lt;/a&gt;
Fire up TextWrangler and navigate to File &gt; Open Hidden ...

You can also access them via the Terminal, if you like using the command line. I&apos;m almost sure there must be a way to manipulate these files with a UI of some sort, but I haven&apos;t found that yet.
				
				</description>
				
				<category>mac</category>
				
				<pubDate>Thu, 10 Apr 2008 15:32:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2008/4/10/Enabling-Root-Access</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Transmit FTP</title>
				<link>http://aria-media.com/blog/index.cfm/2008/4/10/Transmit-FTP</link>
				<description>
				
				I know I said I was going to write about enabling root access next, but I found a tip somewhere to try Transmit FTP, and I just tried it for the first time to do a quick edit on a contact form for a client. 

Logged into the site, found the file, right clicked on it to check the context menu and found a choice to edit the file in Dreamweaver (and others). It opened immediately in DW. I made my small change, saved it, and saw Transmit working behind the DW window. Sure enough, on save Transmit simply uploaded the file for me. Sweet. I like it already!
				
				</description>
				
				<category>mac</category>
				
				<pubDate>Thu, 10 Apr 2008 02:03:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2008/4/10/Transmit-FTP</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Journey to Mac-Based Development</title>
				<link>http://aria-media.com/blog/index.cfm/2008/4/8/Journey-to-MacBased-Development</link>
				<description>
				
				I&apos;ve been away from the ColdFusion scene for quite some time now, working on a major project to develop a solution to help mitigate global warming. In the process, I bought a MacBook because Keynote seemed so much easier to develop presentations on. I really enjoy using the iWork suite of tools, Pages, Numbers and Keynote, and the whole mac experience of using a computer. It really is much better. I cringe now every time I have to start the Windows machine sitting here next to me. It just doesn&apos;t ... work. I never realized what I had just grown to accept, like all the waiting for the damn thing to finally finish booting up, the maze of warnings, and the noise the thing makes. And I never thought the difference would be so stark.

Anyway ...

Now I&apos;m working through the steps to get a development environment set up on the mac, and there are a few things you just have to know that I didn&apos;t know and it took some hunting around to discover. As I work my way through getting everything set up, I thought I&apos;d take some notes, and might as well blog them! Coming up next ... Enabling Root Access!
				
				</description>
				
				<category>mac</category>
				
				<pubDate>Tue, 08 Apr 2008 16:24:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2008/4/8/Journey-to-MacBased-Development</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Why Use Object Orientation?</title>
				<link>http://aria-media.com/blog/index.cfm/2007/3/16/Why-Use-Object-Orientation</link>
				<description>
				
				When i first came across a few examples of objects, it seemed to me like they contained a lot of &quot;extra&quot; code that did a lot of extra work for no good reason. Various authors i read extolled the benefits of object orientation to no end, but it was hard for me to see those benefits by looking at examples. For instance, check these 2 code samples out:

&lt;code&gt;
&lt;cfscript&gt;
  person = StructNew();
  person.fName = &apos;George&apos;;
  person.lName = &apos;Smith&apos;;
  person.age = 35;
&lt;/cfscript&gt;
&lt;/code&gt;

It&apos;s nice and simple. Our structure encapsulates our data very nicely in one package. Now let&apos;s do the same except use an object. Give me a few minutes to type all this out! ;-)
...
				 [More]
				</description>
				
				<category>oo in cf</category>
				
				<pubDate>Fri, 16 Mar 2007 15:59:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2007/3/16/Why-Use-Object-Orientation</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Instantiation</title>
				<link>http://aria-media.com/blog/index.cfm/2007/3/14/Instantiation</link>
				<description>
				
				When i first started learning about object orientation, i remember seeing the word &lt;i&gt;instantiation&lt;/i&gt; or &lt;i&gt;instantiate&lt;/i&gt; or &lt;i&gt;instance&lt;/i&gt; and having only a vague idea what it meant. So maybe that&apos;s a good place to begin.

In object orientation, there are 2 terms you will see used a lot. One is &lt;i&gt;class&lt;/i&gt;, and the other is &lt;i&gt;object&lt;/i&gt;. Sometimes they seem to be interchangeable. But there is an important concept to grasp here. 

When we code a CFC, what we have is really a blueprint, a &lt;i&gt;class&lt;/i&gt; in object oriented terms. So essentially, the word &lt;i&gt;class&lt;/i&gt; refers more to the blueprint that you write in code.
				 [More]
				</description>
				
				<category>oo in cf</category>
				
				<pubDate>Wed, 14 Mar 2007 16:46:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2007/3/14/Instantiation</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Object Orientation in ColdFusion is Probably Simpler Than You Might Think</title>
				<link>http://aria-media.com/blog/index.cfm/2007/3/13/Object-Orientation-in-ColdFusion-is-Probably-Simpler-Than-You-Might-Think</link>
				<description>
				
				I have a lot of compassion for anyone learning on their own, confronting CFCs, object orientation, the slew of frameworks that use CFCs in an object oriented manner all at the same time. It&apos;s overwhelming, especially for someone with no formal education in programming.

When CFMX 6 came out and CFCs were first introduced, i bought a book by Hal Helms called Discovering CFCs. He introduces some basic OO principles in there, all of which are pretty easy to understand in theory. Then he starts off showing examples. I still remember how disconcerting it was to not be able to understand. And i couldn&apos;t put my finger on what it was that i didn&apos;t understand. 

Looking back, i think there were a lot of little pieces i just didn&apos;t get.
				 [More]
				</description>
				
				<category>oo in cf</category>
				
				<pubDate>Tue, 13 Mar 2007 22:22:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2007/3/13/Object-Orientation-in-ColdFusion-is-Probably-Simpler-Than-You-Might-Think</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Transfer is Cool</title>
				<link>http://aria-media.com/blog/index.cfm/2007/1/1/Transfer-is-Cool</link>
				<description>
				
				Transfer is an object-relational mapping framework, which means that takes care of all your CRUD operations for you.  Recently, I watched a &lt;a href=&quot;http://www.compoundtheory.com/?action=displayPost&amp;ID=164&quot;&gt;presentation&lt;/a&gt; that Mark Mandel (the author of the framework) gave, and got curious. So I decided to give Transfer a try with a small MG app I&apos;m working on, and I&apos;m really enjoying it.

Brian Rinaldi has written up a &lt;a href=&quot;http://www.remotesynthesis.com/blog/index.cfm/2006/10/22/Building-an-Application-with-Transfer-ORM&quot;&gt;tutorial&lt;/a&gt; that&apos;s also good introduction to the framework.

Transfer is configured with a few XML files (rather than using introspection as Reactor does), which is a little more work up front than Reactor. But what i read is that Brian&apos;s Illudium PU-36 Code Generator can handle creating the XML files for you. I haven&apos;t had a chance to try that yet tho&apos;.

I&apos;m finding it very easy to get up to speed using the framework. And it provides an easy way to extend the functionality of its generated Transfer Objects via the use of decorators. Sounds complex, but it&apos;s not. You just write a CFC with the added functions you want in your Transfer Object, and glue them together in the tranfer.xml config file using the decorator attribute of the object tag. 

There&apos;s a lot of functionality in Transfer that i haven&apos;t even explored yet. It&apos;s at a 0.6 release, but seems very solid to me somehow. So i&apos;m giving it a complete go with an eye to putting it to work in a production site.
				
				</description>
				
				<category>model-glue</category>
				
				<pubDate>Mon, 01 Jan 2007 13:47:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2007/1/1/Transfer-is-Cool</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Model-Glue and Reactor Divorce!</title>
				<link>http://aria-media.com/blog/index.cfm/2006/12/29/ModelGlue-and-Reactor-Divorce</link>
				<description>
				
				In a sign of the times to come, Model-Glue and Reactor divorced on December 22, according to the change log on the Unity SVN repository. 

Apparently, rumor has it that MG was having an affair with another ORM framework named Transfer, and Reactor, well, &lt;i&gt;reacted&lt;/i&gt; and promptly filed for divorce. Joe Rinehart made it final on December 22 by pulling Reactor&apos;s configuration from the sample application template as well as removing the Reactor-specific portions from MG&apos;s core configuration file.

Said Joe, &quot;Everyone thought it was a marriage made in heaven, but I guess it wasn&apos;t meant to be.&quot;

Model-Glue wouldn&apos;t speak with us concerning the breakup, but when contacted, Reactor shared the following:

&quot;Look, I know I reacted pretty strongly back then when I first found out about MG and his new, ehem, &lt;i&gt;ORM&lt;/i&gt;, but I guess I&apos;m OK now. We&apos;re still gonna work together tho&apos;. We&apos;re just not &lt;i&gt;married&lt;/i&gt; anymore. Looking back, I guess we were too tightly coupled.&quot;

Pressed for details about how they were going to continue their working relationship in the future, Reactor confided:

&quot;Well, let&apos;s just say that for now, you can add the ORM   configuration information in the ColdSpring.xml file of your MG app yourself, like this ...&quot;

&lt;code&gt;
&lt;!-- Defines which ORM service to use with MG 
	(Reactor, Transfer, Michelle, Roxy, etc) --&gt;
&lt;bean id=&quot;ormAdapter&quot; class=&quot;ModelGlue.unity.orm.ReactorAdapter&quot;&gt;
	&lt;constructor-arg name=&quot;framework&quot;&gt;&lt;ref bean=&quot;ModelGlue&quot; /&gt;&lt;/constructor-arg&gt;
&lt;/bean&gt;
  
&lt;!-- Defines the ORM service itself --&gt;
&lt;bean id=&quot;ormService&quot; class=&quot;reactor.reactorFactory&quot;&gt;
	&lt;constructor-arg name=&quot;configuration&quot;&gt;&lt;ref bean=&quot;reactorConfiguration&quot; /&gt;&lt;/constructor-arg&gt;
&lt;/bean&gt;
&lt;/code&gt;

Indeed, Reactor&apos;s tip was very timely. We noticed we got a nasty error without these additional bean definitions in place using the latest build of Unity downloaded from SVN.

&quot;And you might need an example of MY configuration, which still goes in ColdSpring.xml like before (sigh) ...&quot;, Reactor continued.

&lt;code&gt;
&lt;!-- This is your Reactor configuration --&gt;
&lt;bean id=&quot;reactorConfiguration&quot; class=&quot;reactor.config.config&quot;&gt;
	&lt;constructor-arg name=&quot;pathToConfigXml&quot;&gt;&lt;value&gt;/modelglueapplicationtemplate/config/Reactor.xml&lt;/value&gt;&lt;/constructor-arg&gt;
	&lt;property name=&quot;dsn&quot;&gt;&lt;value&gt;thedsn&lt;/value&gt;&lt;/property&gt;
	&lt;property name=&quot;type&quot;&gt;&lt;value&gt;mysql&lt;/value&gt;&lt;/property&gt;
	&lt;property name=&quot;mapping&quot;&gt;&lt;value&gt;/modelglueapplicationtemplate/model/data&lt;/value&gt;&lt;/property&gt;
	&lt;!-- development or production --&gt;
	&lt;property name=&quot;mode&quot;&gt;&lt;value&gt;development&lt;/value&gt;&lt;/property&gt;
&lt;/bean&gt;
&lt;/code&gt;

We asked Reactor what she thought of the name &apos;Unity&apos; going forward, now that MG was also going with Transfer. 

&quot;Look, if you&apos;re asking if the 3 of us are going to move in together on the same server, you can just FORGET IT!&quot;

She paused a moment, staring across the room ...

&quot;I guess somebody&apos;s gonna tell me I&apos;m over-reacting again, huh?&quot;

Nah ... ;-)
				
				</description>
				
				<category>model-glue</category>
				
				<pubDate>Fri, 29 Dec 2006 23:38:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2006/12/29/ModelGlue-and-Reactor-Divorce</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>To Type or Not to Type - The Big Question</title>
				<link>http://aria-media.com/blog/index.cfm/2006/10/6/To-Type-or-Not-to-Type</link>
				<description>
				
				&lt;img src=&quot;http://aria-media.com/blog/images/NewbieCafeLogoSm.jpg&quot; alt=&quot;Newbie Cafe&quot; align=&quot;right&quot; width=&quot;132&quot; height=&quot;90&quot;&gt;

I thought i&apos;d follow up on the post about polymorphism with a more down to earth post about typing in ColdFusion, because 90% of that post turned out to be about typing anyway. And believe it or not, there&apos;s still more to say on the topic. 

Once you get to know your way around a little, one of the most confusing things for a CF developer who is new to OO   is whether or not to explicitly type your arguments and return types, and indeed, how to deal with problems that arise if you do. Because when problems arise, you start to think &quot;Why am i explicitly typing these CFCs? What good is it?&quot; - and the To Type or Not to Type question is revisited again.
				 [More]
				</description>
				
				<category>newbie cafe</category>
				
				<pubDate>Fri, 06 Oct 2006 06:52:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2006/10/6/To-Type-or-Not-to-Type</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>The Mystery of Polymorphism</title>
				<link>http://aria-media.com/blog/index.cfm/2006/10/4/The-Mystery-of-Polymorphism</link>
				<description>
				
				&lt;img src=&quot;http://aria-media.com/blog/images/NewbieCafeLogoSm.jpg&quot; alt=&quot;Newbie Cafe&quot; align=&quot;right&quot; width=&quot;132&quot; height=&quot;90&quot;&gt; 

I started my long, bumpy journey into OO land sometime back in 2003. I read a few really good introductory books back then about object orientation, recommended by various people on the lists. 

Here&apos;s what i read at that time:

1) Discovering CFCs - Hal Helms, Ben Edwards&lt;br&gt;
2) Design Patterns Explained - Alan Shalloway, James Trott&lt;br&gt;
3) The Object Primer - Scott Ambler&lt;br&gt;
4) Object Technology - David Taylor&lt;br&gt;

Now you might want a quick review of those books, so here goes.
				 [More]
				</description>
				
				<category>newbie cafe</category>
				
				<pubDate>Wed, 04 Oct 2006 21:55:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2006/10/4/The-Mystery-of-Polymorphism</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>CFC&apos;s and Object Orientation</title>
				<link>http://aria-media.com/blog/index.cfm/2006/9/28/CFCs-and-Object-Orientation</link>
				<description>
				
				&lt;img src=&quot;http://aria-media.com/blog/images/NewbieCafeLogoSm.jpg&quot; alt=&quot;Newbie Cafe&quot; align=&quot;right&quot; width=&quot;132&quot; height=&quot;90&quot;&gt; 

I&apos;ve always wanted to write something up about CFC&apos;s and Object Orientation from a newbie&apos;s perspective. I learned ColdFusion on my own using books and mailing lists and forums, coming into it from having learned HTML and CSS on my own. So i&apos;ve never had any formal training in programming. 

I suppose a lot of people have learned CF that way. I also work alone, so i don&apos;t get the opportunity to rub shoulders with people more experienced than i am too often.

When CFC&apos;s first came out in CFMX6, i resolved that i would learn OO, largely influenced by Hal Helms. I bought a bunch of introductory books, studied them carefully, read everything i could online, downloaded MachII once it became available and got utterly lost. While i understood the theory of OO fairly well from the get-go, i had no idea AT ALL how to implement it in practice. It was downright embarrassing - ok ... humiliating.
				 [More]
				</description>
				
				<category>newbie cafe</category>
				
				<category>oo in cf</category>
				
				<pubDate>Thu, 28 Sep 2006 16:21:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2006/9/28/CFCs-and-Object-Orientation</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>On Validation: What&apos;s your first grade teacher&apos;s middle name?</title>
				<link>http://aria-media.com/blog/index.cfm/2006/9/24/On-Validation</link>
				<description>
				
				I&apos;m in the process of trying to figure out how i want to handle validation within MG Unity. There are a few options to explore. I&apos;m studying how Reactor handles validation out of the box, using the specs for each field in the database as it&apos;s guide, and it reminded me of something ...

I needed to order a copy of my birth certificate a few weeks ago. There&apos;s a company online called Vitalchek.com that handles it for you for all 50 US states. There&apos;s only one &quot;small&quot; problem i ran into ... the validation routines screwed up my application entirely, because the developer looked at validation from a narrow data-centric perspective. As a result, the validation routine did not allow me to enter my &lt;i&gt;valid&lt;/i&gt; phone number or zip code, and my birth certificate was sent to a non-existent city in Maine. UPS couldn&apos;t call me either to try and figure out what went wrong, so they just sent the birth cert back to the sender.
				 [More]
				</description>
				
				<category>user centric application design</category>
				
				<pubDate>Sun, 24 Sep 2006 06:16:00 -0700</pubDate>
				<guid>http://aria-media.com/blog/index.cfm/2006/9/24/On-Validation</guid>
				
			</item>
			
		 	
			</channel></rss>