... all I'm offering is the truth. Nothing more. RSS 2.0
# Monday, March 26, 2007

In my last post I mentioned the Windows Experience Index (WEI) on my HP Pavillion DV6000 notebook was 2.2. As I wrote it struck me that it seemed to be awfully low. In fact it dawned on me that I had checked this WEI on the same machine in Circuit City and it was 3.1! I went back to the store and confirmed that I actually purchased the right model, and that I had not somehow been tricked into purchasing a lower model. After being convinced that the model numbers matched I decided to give HP support a call which is where this story gets interesting.

Now I know I should have low expectation of level 1 tech support but considering I have been developing and supporting software solutions for almost 10 years I need to feel someone is as talented and committed (tooting my own horn) as me! So I get through all the initial tell all of the meeting and this guy actually has no idea what Windows Experience Index is! I try to explain that this is a part of the Vista OS and that it is not actually a separate program for which I can supply a version number. After being left on hold for about 10 minutes he comes back finally convinced that I am actually telling the truth.

After about another 10 minutes of waiting he gets back on the phone and lets me know that there is an known issue with HP machines and the Vista OS' ability to detect the correct Index for various components. I was this close to sending my machine back after what amounted to a great first day. If I do not see an update for this issue soon, I still might!

"You can learn from anyone even your enemy." - Ovid

Monday, March 26, 2007 5:03:41 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] - Trackback
Vista | Windows
# Sunday, March 25, 2007

I love PBS, and they have a great 3 hour Physics mini series (nothing mini about) available online called The Elegant Universe. It really puts into perspective the roles of some of the great physicists such as Newton, Maxwell, Einstein and Bohr and show how they helped unveil the secrets of the physical universe.

If you have little or no idea about String theory, Quantum Mechanics, General theory of relativity this is an excellent starting point. This is a well paced and interesting series of videos with wonderful eye candy!

"We live in a Newtonian world of Einsteinian physics ruled by Frankenstein logic." - David Russell

Sunday, March 25, 2007 5:48:05 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] - Trackback
Other things
# Saturday, March 24, 2007

I purchased my wife a HP Pavillion DV6000 notebook this weekend, I think I would have preferred to get the Sony Vaio but that ended up being a bit pricey. After removing all those HP craplets that are littered throughout the system I started to look a little more closely at the the Performance Information, specifically the Windows Experience Index.

I found the Windows Vista blog that helped to explain in more details what these arbitrary numbers would mean in relation to the actual user experiences. My lowest number was in relation to the 'Graphics: Desktop performance for Windows Aero' at 2.2, this seemed kinda low and coupled with the fact that I only have 1 Gb RAM (2 x 512MB sticks ... how frustrating) the overall experience was surprisingly snappy. I am very happy with the Vista feel, I am just loving the eye candy.

I love the concept of Gadgets and am looking forward to creating a good Google Notifier. I am not sure I like any of the Gadgets that represent Gmail so far. I would have thought that most companies would be making Gadgets with a friendly digital signature to give us that warm fuzzy feeling as we install ... but alas the only Gadgets of note were signed by Microsoft.

I became painfully aware of the confirmations required for every single installation\uninstallation that I performed. It got to the point that I was not even reading the messages which surely is the whole point of the added security.

I checked out the file system briefly which now consists of the much more succinct "C:\Users\[YOURID]", I never like the "C:\Documents and Settings\YOURID".

What else ... oh ... with they have given a well deserved face lift to all the games and added a couple of new ones. I absolutely love the addition of the 3D chess game, it allows you chose the type of Board and pieces, but I really wish we could use cooler characters ala Star Wars.

Now I was little disappointed that Zone Alarm has not updated its product to work on Vista. Aside from that I give the first day of Vista two thumbs way up!!!

"We rarely think people have good sense unless they agree with us." - Francois de La Rochefoucauld

Saturday, March 24, 2007 5:02:09 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] - Trackback
Vista | Windows
# Friday, March 23, 2007

I generally only blog and comment on stuff I am directly working but Don passed on this fantastic article that really brings the whole JSON vs XML into High Definition.

Currently all my work involves XML, we have not made the jump to AJAX in the banking world, and while I am sure that will change in the not to distant future, it appears that JSON really provides the light weight alternative. Unfortunately I can see this coming down to whatever Microsoft will decide to back.

People like me want mature IDE's and rich well supported tool set, so I will invariably go with the flow!

"Responsibility is the price of freedom." - Elbert Hubbard

Technorati tags: ,
Friday, March 23, 2007 4:58:45 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] - Trackback
Programming
# Friday, March 16, 2007

I have been thinking about the detailed plumbing of calling an ASP.NET web page lately due to some weird things that have happened at work. So I thought it wise to refresh myself and my five two faithful readers about what actually goes into displaying a page. 

I briefly described the HTTP traverse from browser to server, and will not delve in at that level. However, when a page request is sent to the Web server it is cycles through a series of events during its creation and disposal. Being able to understand the events (and the order) is critical for any potential ASP.NET developer. Everyone knows we start with an aspx page and end up with a beautifully rendered HTML page, however, we need to know what happens in between.

1. Object Initialization
Controls on a given page are initialized, by declaring the objects in the constructor of the C# code-behind file. If objects are created from within the aspx file they have no attributes or properties available in the code-behind and there is no reliable way to verify the order the controls will be created or if they will be created at all. The initialization event can be overridden using the OnInit method.

2. Load Viewstate Data
After the Init event, controls can be referenced using their IDs only. During LoadViewState event, the initialized controls receive their first properties from the viewstate information (handled by ASP.NET) that was persisted back to the server on the last submission. The event is overridden using the LoadViewState method and is used to modify the data received by the control.

3. LoadPostData, Processes Postback Data
When a page submits a form, the framework will implement the IPostBackDataHandler interface on each control that updated its data. The page then triggers the LoadPostData event and goes through the page to find each control that implements the applied interface and updates the control state with the correct postback data. ASP.NET checks each control by verifying the control's unique ID with the stored name/value pair.

4. Object Load
All object are arranged in the Control Tree (formerly known as the DOM) and can be referenced easily in code. Objects are now at liberty to apply the client-side properties set in the HTML, such as height, visibility, etc. This is generally considered the hardest working event in the process. This event can be overridden by calling OnLoad.

5. Raise PostBack Change Events
This event occurs immediately after all controls that implement the IPostBackDataHandler interface have been updated with the current postback data. This operation flags each control with a true\false based on if it was changed since the last post. ASP.NET looks for this flag and raises RaisePostDataChanged event.

6. Process Client-Side PostBack Event
The object which initiated the postback is handled by the RaisePostBackEvent event. The object is usually a control that posted the page back to the server (autopostback) or a submit from a button. The RaisePostBackEvent is last in the series of postbacks.

7. Prerender the Objects
This event is a critical one, as it marks the last chance the developer has to make any persistable changes to the objects. Immediately after the PreRender event changes to objects are locked and can no longer be saved to the viewstate. This event can be overridden using OnPreRender.

8. ViewState Saved
The viewstate is saved after all changes to the page have finalized. At the SaveViewState event, values can be saved to the ViewState object, but changes to page controls are not persisted.

9. Render To HTML
During the Render event, the page coerces each object into rendering itself into HTML. The page collects the HTML for transport to the client browser. When the Render event is overridden, the developer can write their own HTML to the browser that will actually override the HTML gathered by the page. The Render method uses the HtmlTextWriter to create HTML that will be streamed to the client browser. Changes can still technically be made here, but they will only show up at client browser.

10. Disposal
The Dispose event is the opportunity to destroy any objects or references you have created during the creation of the page.

Phew that is a lot of steps ... Monorail anyone. I think at some point I should also go over HTTPModules and HTTPHandlers. They provide really slick ways of jumping in the middle of a page cycle without necessarily touching every page! During the MCP test I noticed they really flogged the server and user control horse to death. It is a wonder to me that HTTPModules\Handlers were not covered with equal passion.

"Nothing contributes so much to tranquilizing the mind as a steady purpose - a point on which the soul may fix its intellectual eye." - Mary Shelley

Friday, March 16, 2007 4:57:09 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] - Trackback
ASP.NET

I do not have as much time as I would like to read all the great technical blogs out there so I have really pulled mine back to what I consider to be the real essentials.

I am really getting into Tess she is a troubleshooting extraordinaire. Really has the CSI thing going, I think she maybe closer to Columbo as she seems to know the answer before she starts! She stopped blogging for a while but has come back swinging. Also seriously consider Dare Obasanjo, he covers a wide range of topics and is not afraid to share his point of view regardless of whether it is for or against his Dark Overlord. Attwood is a very good writer if only a little "preachy". Hanselman remains the gold standard, however, I get the impression from his Hanselminutes podcast's that he is running out of things to talk about ... board games ... honestly!

<opml version="1.1">
<head>
    <title>Feeds</title>
</head>
<body>
    <outline text="Tech">
    <outline text="BCLTeam's WebLog" xmlUrl="http://blogs.msdn.com/bclteam/rss.xml" type="rss"/>
    <outline text="Brad Abrams" xmlUrl="http://blogs.msdn.com/brada/rss.xml" type="rss"/>
    <outline text="Coding Horror" xmlUrl="http://www.codinghorror.com/blog/index.xml" type="rss"/>
    <outline text="ComputerZen.com" xmlUrl="http://feeds.feedburner.com/ScottHanselman" type="rss"/>
    <outline text="Dare Obasanjo" xmlUrl="http://feeds.feedburner.com/Carnage4Life" type="rss"/>
    <outline text="greg hughes.NET" xmlUrl="http://www.greghughes.net/rant/SyndicationService.asmx/GetRss" type="rss"/>
    <outline text="If broken it is, fix it you should" xmlUrl="http://blogs.msdn.com/tess/rss.xml" type="rss"/>
    <outline text="Kim Cameron's Identity Weblog" xmlUrl="http://www.identityblog.com/?feed=rss2" type="rss"/>
    <outline text="Larkware News" xmlUrl="http://www.larkware.com/larkware2.xml" type="rss"/>
    <outline text="Mike Taulty's Weblog" xmlUrl="http://mtaulty.com/blog/Rss.aspx" type="rss"/>
    <outline text="Nikhil Kothari's Weblog" xmlUrl="http://www.nikhilk.net/Rss.ashx" type="rss"/>
    <outline text="Roy Osherove's Blog" xmlUrl="http://feeds.feedburner.com/Iserializable" type="rss"/>
    <outline text="ScottGu's Blog" xmlUrl="http://weblogs.asp.net/scottgu/Rss.aspx" type="rss"/>
    <outline text="shahine.com/omar/" xmlUrl="http://feeds.feedburner.com/omarshahine" type="rss"/>
    <outline text="Slashdot" xmlUrl="http://rss.slashdot.org/Slashdot/slashdot" type="rss"/>
    <outline text="The PowerShell Guy" xmlUrl="http://thepowershellguy.com/blogs/posh/rss.aspx" type="rss"/>
    <outline text="Welcome to The Metaverse" xmlUrl="http://blogs.msdn.com/richardt/rss.xml" type="rss"/>
    <outline text="you've been HAACKED" xmlUrl="http://haacked.com/rss.aspx" type="rss"/>
    </outline>
</body>
</opml>

You can copy this list into an OPML file and import it into your own favorite feed reader.

"Whenever I dwell for any length of time on my own shortcomings, they gradually begin to seem mild, harmless, rather engaging little things, not at all like the staring defects in other people's characters." - Margaret Halsey

Technorati tags: , ,

Friday, March 16, 2007 4:56:24 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] - Trackback
Blog
Blogroll
Statistics
Total Posts: 330
This Year: 18
This Month: 2
This Week: 0
Comments: 30
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2010
Mark Downie
Sign In
All Content © 2010, Mark Downie
DasBlog theme 'Business' created by Christoph De Baene (delarou)