Tuesday, September 16, 2008

Time Estimates

When someone asks me how long it will take me to do something my brain immediately gives me the best case scenario. If I'm being realistic I double that because of all the unforseens that make it longer.

Last Saturday I went to Fry's Electronics with Rob and bought all the parts for a new computer. My estimate to put this computer together was about a week using Sunday and the evenings over the next week. I was going to take my time and make sure that this first time assembly was done correctly and that I didn't break anything.

Rob being the generous genuis that he is came over on Sunday morning and before lunchtime the machine was running and I was installing an OS. This is probably the only multi-hour project that I've estimated that came in so far ahead of the best case scenario. However, this wouldn't of been the case if I'd done it by myself.

Thanks for all your help Rob.

Thursday, September 11, 2008

System.IO.Packaging

I'm experimenting with the Open XML Format SDK 1.0 and to get to the System.IO.Packaging namespace I needed to add a reference to the WindowsBase assembly. I would never have guessed that the System.IO.Packaging namespace was in there and will probably forget in a short while so I'm leaving myself this note here. 

More notes:

The WordProcessingDocument class is in the DocumentFormat.OpenXml.Packaging namespace in the DocumentFormat.OpenXml assembly.

Wednesday, September 10, 2008

AZGroups Forward/Back Button History and jQuery

 Two very good talks this evening 9 Sep 2008 at AZGroups. Thanks to Rob Bagby for staying behind and keeping the conference room open for us.

Scott Cate talked about a new control in SP1 of ASP.NET 3.5, the server side of an Ajax Forward/Back Button history. Scott's code for this demo and many of his other demos can be downloaded from http://www.codeplex.com/ScottCateAjax/

The main snippets of wisdom that I took away from this talk were:

  • 2 new (I think that they're new) attributes to the <asp:ScriptManager> tag which EnableHistory (which you need to set to true to enable the history of the back and forward buttons) and EnableSecureHistoryState whch defaults to true and does not need to be set unless you want human readable text to be on the URL and hackable which may be the case for an intranet or other URL's that you would like to enable human hackability.
  • In your page's OnInit() event you need to wire up the ScriptManager's Navigate event handler where the correct page is set on a paged control when you revisit the page using the navigation buttons.
  • The grid's pageindexchanging and sorting events also need to be added as handlers which is where the history points are set.

So to summarize: Set history points while navigating the grid using the sorting or paging controls on the grid. Restore the grid to those history points in the ScriptManager1_Navigate event when using the back and forward buttons.

The link that's produced is a perma-link whether it's the encrypted one or the plain text link and will return you to the correct page and sort setting that the grid had.

Rob Richardson gave a good talk on jQuery. His blog post about this talk which he gave at the Desert Code Camp can be found at jQuery - LINQ to JavaScript. There's a link on that blog post to his slides that can be downloaded.

Snippets of wisdom:

 

Sunday, September 7, 2008

Google Chrome Recent Pages

Internet Explorer and Fire Fox have a drop down arrow next to the Back (one page) and Forward (one page) arrows on the top left corner of their browsers. When you click this drop down it will list the previous pages that you've visited this session (as opposed to your history which lists pages visited in previous session as well). On Google's Chrome there is no drop down arrow. To get this list on Chrome, click and hold down the back (or forward) arrow for 2 seconds and the list will appear. A carefully hidden feature.

Friday, September 5, 2008

Gravatar

I didn't even realize that this blog/CMS system (Graffiti) supports Gravatar. Thanks to Bill Brown for alerting me to this.

If you don't know what Gravatar is then in as few words as possible: You upload an avatar to the Gravatar site and it becomes associated with your email address. If you put your email address in the email field in a comment to a blog that supports Gravatar then the blog will link your image directly from Gravatar otherwise it retrieves a unique pattern from Gravatar for your email address.

I remember reading about this on Jeff Atwood's Coding Horror blog but didn't even realize that I had it on here until I saw Bill's face popup next to his comment.

Google Chrome already in third position

Three days after Google released the Chrome Browser I took a look at how it ranked on one of my sites by looking at the Google Analytics stats from 2 Sep 2008 to 4 Sep 2008. I was very surprised to see that it's already in position number 3 but it only just pipped Opera so that's not saying much. I'll do this exercise again at the end of the month and see how the position has changed...


Tuesday, September 2, 2008

Google Chrome 0x80040508

Google Chrome has just been released (Google Chrome) and I would love to install it but I'm getting the following error:

"Download error. The downloaded file failed verification. Error code = 0x80040508"

The 475KB bootstrap install ChromeSetup.exe downloads okay but when it runs it brings up the message "Downloading Google Chrome..." and then that message.

Looking forward to finding a solution for this...

Update: Thanks to Ricardo's comment, here's an alternate download for Chrome that might solve your problem.