# Saturday, May 28, 2011

In a survey (read non-scientific) poll done by PC Magazine as part of their 24th Readers Choice Awards the Samsung Windows Phone 7 scored higher than the Apple iPhone. You can read what went into the scores here.

Saturday, May 28, 2011 4:18:18 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Thursday, May 26, 2011

We all know that trust is something that is fragile in that it is very hard to earn and can be lost almost immediately when something goes wrong. We have seen it time and time again with large companies that lose their customer’s data and spend a lot of time and money trying to regain that trust.

We also see the idea of trust in a lot of the social media and recommendation based nature of many “Web 2.0” sites. Microsoft has taken advantage of reputation to increase security with Internet Explorer 9. I have set up a new machine since coming to my new job as well as several virtual machines. In all the downloads I have only had one that triggered the warnings associated with the Application Reputation feature in IE 9. When downloading an application that the SmartScreen Filter does not know about the notification at the bottom of the screen appears in red and the warning message states “<filename> is not commonly downloaded and could harm your computer”.

Application Reputation

You are given the option to delete the download from the download list before you even begin to download it. If you want to continue with the download you must click on the actions button. This will open a SmartScreen Filter dialog that has two important clues as to why this message appeared.

Actions

One is that the download is unsigned. The other is that the SmartScreen Filter has little or no information about the download. The default action at this point is to not run the program. The other visible option is to delete the program. In either case if you are not reading what you are presented and instead just blindly click on one of the options the download will be stopped and your computer will be protected.

To continue the download you must click on the more options button. You are then presented with the following dialog.

More Options

In this dialog you are presented with the same information as the previous dialog along with the same two options to abort the download and one new option to run the program anyway. If you click on the option to run anyway you can see the download just like any other trusted download.

View Downloads

The nice thing about this scheme is that even for unsigned but well known downloads you are not prompted to abort the download process. Of course signed downloads that are well known you are not prompted at all so the download process is frictionless.

Thursday, May 26, 2011 10:15:51 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Wednesday, May 25, 2011

Microsoft released the Windows Phone Developer Tools 7.1 Beta that includes the changes for the next version of Windows Phone code named “Mango”. You can read the official press release here. You can download and start working with them (including support for VB) here or get the iso image here. The press release discusses new samples and hands on labs. I guess I know what I will be doing in my spare time for the next little while.

Wednesday, May 25, 2011 5:17:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, May 10, 2011

Microsoft released a new toolkit for iOS yesterday as well as announcing that there will be updates for other mobile operating systems. I see this as Microsoft following through on their vision of the “consumerization of IT”. As much as Microsoft and Apple compete the reality is that there are a lot of people who carry an iPhone or iPad who also need to access resources. By making Windows Azure available to these other platforms I can take advantage of the scale out, security, access control, SQL Azure, and other services provided by Azure and reduce some of the additional effort needed to support multiple mobile clients.

I also applaud Microsoft for putting the iOS toolkit on github where iOS developers are more likely to find it.

Here are the links to the announcement:

you can get the code here:

and some other resources around the announcements:

Blog posts:

Screencasts:

Windows Azure Toolkit for Windows Phone 7:

Cloud Ready Package for Devices:

Enjoy the cloud goodness from Microsoft!

Tuesday, May 10, 2011 2:51:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, April 26, 2011

A month ago I changed jobs. There were many reasons but the masin one was to get back into coding all day. I have been updating my profiles on the various social networks that I am a member of and just realized that I didn't post anything here saying that I have changed jobs.

I am now working for Experlogix on their configurator product. I am now spending all of my day in Visual Studio instead of working in Office doing marketing type stuff. I learned a lot during my work at Advaiya and will always appreciate the people that I got to work with but sometimes change is good.

This whole change means that I will be doing more coding and therefore should be doing more blog posting. This will be good for the frequency of my posts here and should increase the signal to noise ratio of this blog. I appologize for the lack of useful content in this post and hope it will be the last for a long time.

Tuesday, April 26, 2011 8:19:16 AM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Monday, April 04, 2011

Today on the Silverlight team blog 3 Microsoft VPs posted a message that clarifies Microsoft's position on HTML5, Silverlight, and the phone. They made clear and official what a lot of us have suspected and expected for a long time. Here are my key takeaways from the article

1. There is no sliver bullet. Different needs require different technologies and Microosft is committed to supporting the ones that we the developers tell them we need to get our jobs done.

2. Microsoft is going to keep innovating on Silverlight to add the functionality that we need as well as supporting the standards that will make interoperability and reach applications much easier.

3. Microsoft is still trying to give developers the tools they need to be productive and to enjoy developing no matter which technology they choose (or are forced) to use.

There is also a hint of a lot of good stuff to come out of MIX next week. I can't wait.

Monday, April 04, 2011 10:48:47 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Monday, February 28, 2011

Here are my notes from this session of SQL Saturday held Saturday in Vancouver, BC

You can get almost everything presented in this session from BrentOzar.com/go/DMVs so no need to take a lot of notes

sys.processes doesn't show child threads. dm_exec_requests does.

Download and check out sp_WhoIsActive written by Adam Mechanic(sp?)

SQLNexus.codeplex.com for analysis of SQLDiag data

SQL Sentry plan explorer - free tool to explore execution plans

Run resource governor to put queries into pools and you can free the procedure cache for an individual resource pool. This gives you a lot more control over query plan caching when you are testing changes without having to flush the entire query plan cache.

DMVs give "garbage" for heaps. Add a clustered index first before you believe the information.

Monday, February 28, 2011 10:53:20 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 

Here are my notes from this session of SQL Saturday held Saturday in Vancouver, BC

Statistics are a summary of data distribution and is not 100 percent accurate.

Stats: Total number of rows, uniqueness of the data, distribution of values in the leading column.

You can turn off auto create statistics if you have an old database with no new development but leave it on in general.

For large tables when about 20 percent of the data is changed statistics are invalid and need to be updated before they can be used.

DBCC UPDATE_STATISTICS to manually update statistics.

Data is split into a maximum of 256 steps.

Filtered statistics are part of a filtered index. I need to learn more about filtered indexes

Filtered statistics are updated after 20 percent of the table changes.

Monday, February 28, 2011 10:48:42 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 

Here are my notes from this session of SQL Saturday held Saturday in Vancouver, BC

Management Data Warehouse (MDW) and Data Collector (DC) are designed to answer questions about what happened in the past and are there to help you see the biggest problems

Collect different counters and upload to a data warehouse for further review and study

Reports designed around a "click on big things" philosophy so you can easily discover problems.

The tool doesn't add any more than 5 percent overhead on the TPC-C benchmarks.

Using the newer performance counters for queries you only store 10 MB/instance/day instead of the 200-500 MB/instance/day of the old version. The difference is that the new version is storing the hash of the query instead of storing duplicate information for all the queries.

You can create your own custom collections. Don't mess with the jobs that are set up for the collection sets.

Utility control point is for capacity planning not troubleshooting.

Monday, February 28, 2011 10:43:21 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 

Here are my notes from this session of SQL Saturday held Saturday in Vancouver, BC

Perform an estimated execution plan to get the query plan for a scalar function

Track statement completion events in profiler to see what a function does. It will produce a lot of noise but you can dig through it and figure it out

A TVF query plan estimate is based on the TVF only returning 1 row. This can lead to problems with the optimization of the query plan.

    Solutions to function problems
  1. Don't use functions
  2. In profiler add an object type filter for 18004, 20038, and 21321 to see what is happening and tune
  3. Use query hints MERGE and HASH to get better query plans

Join order with index hints affects performance

Use a temp table to populate from a TVF and then join to the temp table.

Use an inline TVF since it will be optimized along with the outer query

sp_refreshsplmodule fixes metadata associated with select * and compilation.

Using a TVF in a subquery, cross apply, or outer apply gives better performance than a scalar function.

SQLCLR functions can be fast for simple things. Be wary of using lots of memory.

Data access in SQLCLR can potentially be bad.

Each time you reference a function it wll be evaluated so a join back to a CTE with a function can be bad.

Monday, February 28, 2011 10:26:38 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 

Here are my notes from this session of SQL Saturday held Saturday in Vancouver, BC

When connecting to SQL Azure you are only connecting to a TDS endpoint

A Silverlight SQL Manager is availabile from the portal. It only handles tables, sprocs, and views

He stated "A hybrid approach is 9 times out of 10 the correct approach". I think this statement needs a lot more clarification before I can agree with it.

SQL Azure has been updated about every 3 months

All tables require a clustered index. If you don't have a clustered index you can create the table but not put data into it.

SQL Azure federation will be in CTP this summer

Sharding applies at the DB level

Enzo Multitenant Framework is available at http://www.bluesyntax.net/files/enzoframework.pdf. It provides application level sharding/federation.

Monday, February 28, 2011 10:18:11 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, February 22, 2011

I have resisted getting a twitter account for years as I just saw twitter as a waste of time. I am not sure that my opinion has changed but I see more things being announced or discussed on twitter so I finally decided to get an account. You can find me on twitter @scott_golightly. I am not sure how much tweeting I will be doing but maybe if I see more value in it I will jump in and join the conversation.

At least it looks like I am not alone. In Sunday’s comic I had to laugh about the Blondie comic which was similar to my situation.

Tuesday, February 22, 2011 5:48:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  |