Blog ala Vidar

SQL, AppFrame and other cool technologies

Monthly Archives: October 2010

Amazon Kindle

I got my new Amazon Kindle yesterday and I LOVE IT! Don’t know what this is? It’s a device for reading books. And, why not use good old books? Well, first of all, the ones that I’m reading (typically SQL Bibles with 1500 pages) weigh about 15 tons, are about 1×1 meter etc, so reading books like that in bed just doesn’t happen. Having a little device that weighs 250 grams is therefore much more convenient. At the moment my device stores 40 books, and it’s only using about 10% of the available storage. I’ve got the Kindle 3 3G and Wi-Fi, but don’t think I’ll ever need the 3G functionality. Anyways, it’s nice to be able to download new books if you’re sitting at a place without any Wi-Fi, and don’t have to pay for it. Yes, you heard correct. You don’t pay anything for 3G traffic. You DO pay for the books you download though.

So, why do I love this little device? I’ve thought about reading (technical) books for a looong time, but since they’re so inconvenient to hold, I haven’t got to it. Also, I’m already WAY to much from my computer-screen, and my eyes really don’t like to read on computer-screens. The Kindle has a technology called E Ink, which is much easier on your eyes, and a cool “side effect” is that it only uses power to switch page. This means that when you’re reading a page, it’s not using any battery, or at least very little.

The Kindle also makes it quicker to buy books. On you can buy a book, and send it to your Kindle, with ONE click. Not like “Click Once”, where you click 4-5 times, but actually ONE click. There’s a big collection to pick from, including their free ebooks. If you’re thinking about buying this, you can download and install the Kindle application for Windows and check it out.

Getting ready for Windows Phone 7

I’m SO ready to get this device! I actually don’t care which I get, as long as I get it ASAP. I’ve actually ordered two different devices, at two different shops, just to be safe. Which I’ve ordered? HTC 7 Trophy and Samsung Omnia 7. The last one is the one I want the most, but from what I’ve heard, this will not be released for a while in Norway. But what’s the difference between the devices? Well, not much to be honest. The reason I want the Samsung is because of the screen. According to people that’s tested “all” devices, Samsung has the best screen with it’s AMOLED technology. Other than that, they’re more or less identical. Some are 10 grams heavier, some are 8MP camera, instead of 5MP, but since Microsoft has set some minimum requirements, there’s not much difference.

What should you do before you buy your new phone? Paul Thurrott, the guy behind the “Windows Phone Secrets” book, has written a pretty good article about this topic. To sum up;

  • Configure your Windows Live ID by navigating to On this site you can connect your Live ID to Facebook, LinkedIn, your blog+++.
  • If you’ve got one account for Xbox LIVE, one for MSN, one for Hotmail etc, you might want to gather this into one account.
  • Install Zune and gather all your media-stuff.

One more thing. Xbox LIVE and Zune Marketplace will not be available in Norway when the phone gets released, but no worries. From what I’ve heard, this WILL be released. Not sure when, but rumours say January.

Unused Indexes

Two weeks ago, I held a session called “Hardcore SQL” session at AppEd where I (among other things) said that you should always start with removing unused indexes, before adding missing indexes. You can find my blog post about missing indexes here. So, how do you find unused indexes?

SELECT AS ObjectName, AS IndexName,
  user_seeks + user_scans + user_lookups AS Reads,
  user_updates AS Writes, P.rows AS RowsNum
    FROM sys.dm_db_index_usage_stats AS IUS
    INNER JOIN sys.indexes AS I ON I.index_id = IUS.index_id AND IUS.object_id = I.object_id
    INNER JOIN sys.partitions AS P ON P.index_id = IUS.index_id AND IUS.object_id = P.object_id
    INNER JOIN sys.objects AS O ON IUS.object_id = O.object_id
    WHERE O.type = 'U'
      AND IUS.database_id = DB_ID()
      AND I.type_desc = 'nonclustered'
      AND I.is_primary_key = 0
      AND I.is_unique_constraint = 0
      AND P.rows > 10000
    ORDER BY Reads, RowsNum DESC

Btw, I’ve got a Live Mesh folder with SQL scripts. If anyone wants access to it (and maybe wants to add scripts) you know how to contact me.

AppEd 2010 Summary

Last weekend we at Omega had something we call AppEd, which is a conference for people working with AppFrame technology. With 3 tracks with a total of 27 sessions (+ keynote), 70 attendees, good food and lots of social things, I think we can call this one a very successful conference! Soon the communications department will publish an article on about this event, but I just wanted to thank everyone for coming, and hope to see you again in two years!

If you’ve got any ideas on how to make the next AppEd even better, please let me know.

Oh! Most importantly. The videos for some of the sessions have been published to