Free Exchange Testing

Believe it or not - I think the one feature of ColdFusion 8 I haven't tested at all is the Microsoft Exchange functionality. It looked cool and all (check out Scott's nice article on the feature) but I had no way of testing it. Today I ran across this article:

Keep in Sync With a Free Exchange Server

This describes a free Exchange service at Mail2Web. I signed up and then pointed my ColdFusion code at the account and it worked like a charm. I just tested mail and contacts, but it looks like it supports everything ColdFusion's Exchange API does.

XML forms and CFIMAGE

I was working with Dan Plesse on an odd issue he had with CF8 Image Captcha's and CFFORM. No matter what he did, he couldn't get the captcha to show up in the form. My first though was a broken CFIDE or some other 'special' folder, but that wasn't the case. If we viewed source on his page, there was no IMG tag at all. I finally got it down to one very simple example:

RIA Dev Shed Review (and Files)

This past Friday I spoke at RIA Dev Shed, a one day RIA-oriented conference held in Salt Lake City. It was organized by Matthew Reinbold (with many sponsors as well) who did a great job and really helped make it easier on the speakers. The conference was very small - around 50 people - which made it a very nice, small, intimate event which I think is a great change from the 'mega-conferences' like MAX. The talks were great and very high quality I spoke on Spry and I've included my slides and code in this blog entry.

I also want to thank the travel gremlins who decided to make a come back. I arrived at the airport and went to the Continental desk. They told me I was on a 'code share' and needed to check in at Delta. No big deal. The Delta representative asked me if I had a "flight coupon." I had never heard of that so I said no. She said no problem, printed me out my boarding passes, and all was well.

Until I went to get on the plane. The Delta gate agent noted that my boarding pass said I needed a flight coupon. I told them that their representative down stairs had said I was fine, but they were having none of it. Luckily there were some phones one gate over... but the lady there kept me on hold just long enough for a) my plane to pull back and leave and b) to tell me, sorry, go to Continental.

So I go back outside security, and Continental tells me that everything is fine on their end, and if Delta had just called, I'd be ok. Of course, the flight they got me on was later in the day, after my connection to Lafayette, and all the flights were booked, so I was looking at spending the night in the Houston airport (and frankly, I'd rather spend the night in a pile of dung). Luckily my awesome wife packed up the kids and drove over to Houston to pick me up.

Any way, I'm glad to be back home with the nice warm weather and the proper beer!

Ask a Jedi: Is my site slow because of Ajax or something else?

Paul asks:

I've been working on a project using Mach-II and Spry, which can be viewed at here. I'm using a Spry master-detail layout on each pages. All of the content is stored in xml files. So, I have Spry datasource configured for each page also.

I'm wondering if the slow page loading is related to Mach-II or Spry. The site is running on a shared hosted server (viux.com). If it's related to Spry, then could some of the problem be resolved by pre-loading the data sources somehow. If so, how would that be done with Mach-II.

I see you've delved into Spry, just not sure how far, or whether my question even makes sense. Anyway, let me know if you can help. I've trawled through Google and not getting many answers. Other people have complained about the slow loading on the Adobe website, but no answer was furnished to that particular point.

Perhaps if you browse my website as shown above, you can see what I mean. The page initially loads real slow, but after its loaded, it's fine. But customers will be gone before that happens.

When it comes to answering "Why is my page slow", there are a number of things you need to look at. A typical request to a ColdFusion site normally involves these items:

  • User request URL X.
  • CF works on creating the response to X.
  • CF returns a response (just a stream of text) to the browser.
  • The browser renders the response. This may involve more HTTP requests for CSS, images, and Ajax items.

So which of the above is the slow portion of your site? It seems like the response from the server is a bit slow. Since you are using Mach-II, one of the first things I'd check into is to see if the framework is reloading. If Mach-II is like Model-Glue, there is a setting that determines if the entire framework should reload on every request. This can really slow down the response and you are recommended to turn this off in production. I'd bet Mach-II is the same, and I'd check there first.

My gut here says the issue isn't Ajax. Using Firebug (you are using Firebug, right?) I see that your XML being returned is very little (3KB). Your Spry files look fat, so I'd be willing to bet you aren't using the minimized versions. I'd switch to that.

You also want to get the YSlow plugin to Firebug. As you can guess, it tries to tell you why your site is slow. Your grade was an F, but I'm not sure why. Most of the things it failed you on seemed minimal to me. Your C for JavaScript files doesn't surprise me.

How good is the connection to your site? It may just be the network between here and there. Since your site involves China goods, I'm guessing it may actually be in China. Is it? If so then you could always consider multiple servers based on the location of the requestor. (I've never done that myself.)

I'll let others chime in as well on things they may see in the request.