Monthly Archives: May 2007

links for 2007-05-04

Error Messages: “We Dunno”

When you write software, you try to make the error messages as informative as possible. You want troubleshooting to be easy – you’ll probably have to troubleshoot the problems! However, you always end up with the misc bucket. The “This error couldn’t possibly arise” error. The “We Dunno” error.

I’ve been working with SqlServerCE on a project at work. (I’m impressed with it so far – it’s a tiny relational DB in a very small footprint.) I hit the SQLCE “We Dunno” error. First sign was the informative message: “An internal error occurred. [ ID = 2034 ]”. Native Error 28574.
My SQLCEResultSet was behaving very strangely: A call to results.GetName(0) gives me the expected name of “Apples”, results.GetName(1) gives me “Oranges”.
Calling results.GetString(0) throws the error, and results.GetString(1) gives me “Granny Smith”. Odd!

A little digging on the MS SQLCe Books online gave me this:

If you experience any errors with the prefix “Internal error” while you use SQL Server Compact Edition, try the operation again as the error might not reproduce. If the error appears again, you should immediately contact Microsoft Product Support Services. The internal errors cannot be resolved by common troubleshooting techniques.

In other words, “We Dunno” – but we’re sure interested in how you got there….

links for 2007-05-02

Microsoft is creating a REST based toolkit!

Given the wild success of sites like Del.icio.us, flickr, et-web-2.0-cetera, it’s great to see Microsoft releasing a REST toolkit. I’ve had arguments with folks at work on the definition of a web service.  They argue that it has a specific meaning within the developer community, I argue that in general usage people think of it as anything with an API.

REST based services are much more mash-up friendly because they don’t require special toolkits to use. They are much easier and faster to develop against for well formed data. Now, hopefully I can get some of that magic going where I work. I think of all the exports and such that could have been done so much faster if we had a REST base for them to hit…

Microsoft Project Codename “Astoria”

The goal of Microsoft Codename Astoria is to enable applications to expose data as a data service that can be consumed by web clients within a corporate network and across the internet. The data service is reachable over HTTP, and URIs are used to identify the various pieces of information available through the service. Interactions with the data service happens in terms of HTTP verbs such as GET, POST, PUT and DELETE, and the data exchanged in those interactions is represented in simple formats such as XML and JSON.

To see what I’m talking about, check out the sample REST data sources they’ve exposed….

Link your computers with Synergy

I just read the Lifehacker article on Synergy and decided to give it a try with my laptop and desktop.  Five minutes later, including downloading time, I’m writing this.

It’s so dead simple.

Synergy is a virtual kvm.  It links your keyboard and mouse from one pc to any other pc you want to use it on.  So instead of having my desktop keyboard and mouse and then my laptop keyboard and mouse, I have one.  And this makes it easy to switch between projects.  If you’ve got two computers you use near each other, I highly recommend combining them with Synergy.