A buddy of mine commissioned and has released a pretty awesome IPhone App. Of course I'm still a bit behind the times with my beat up HTC, but I'll be getting either an Android Phone or an IPhone in maybe a year or two. This app however, has made me ponder moving up that purchase date. Check out NMobile for IPhone. That's my self motivated advertising blurb of the day, thanks for reading.
Month: December 2008
The Future of Technology, Cyborg Progress?
I've often said in the last few months, especially since Iron Man came out, that the interfaces used in that movie are what I WANT NOW!!! Unfortunately, the technology we have just doesn't quit cut it yet. But wait, does it?
While reading up on the upcoming Cyborg Camp (Dec 6th if you want to go, sign up now) there are two videos posted to the blog.
The first one is a video of Jamie Zigelbaum at MIT presenting a gesturing recognition interface. I've seen similar things and have been fairly impressed. What I really want to see is something smaller, without gloves, and at a very granular level. I've seen some things in the past that are similar, and very granular, but the problem is cost. This leads me to that issue, the early adopters can't even get at this stuff yet because of the cost. This stuff so far is only for DIYers. Things like Jamie's project however really give me a mood boost on progress. I really hope to see things like this keep moving forward!
The second video is the reactable. The table, with physical objects, is used to create a tonal music. The variances and controls are controlled by the specific pieces on the table. It is really interesting to see things like this, and it is definitely a little further along than the gesturing.
The Twisted Irony
I just realized I often complain about the bad reliability of my SprintPCS Phone. So does my SO Joleen. We both complain regularly about this fundamental to our lives piece of technology. However, because of the unreliable nature of wireless at coffee shops, the unreliable nature of Vista to stay connected, I have a wireless SprintPCS card to connect with.
That’s just odd, to use a semi-unreliable service to back up another semi-unreliable service! 😐 hmpf.
Just ponder on that… the strange things we do to maintain connectivity, us geeks and nerds.
Debugging ADO.NET Data Services :: Tip o' The Day
I haven’t written up a tip o’ the day in ages, so it was about time that I ran smack into one. While working with ADO.NET Data Services I kept getting this AWESOME error message!
An error occurred while processing this request.
That being one of the most awesome, fully articulate, well written, useful, cool error messages ever created!
Ok, so if you’re like me, and you’d actually like some idea of the underlying error, then here’s the trick. First, grab that web.config and make sure your services have the appropriate debugging attributes.
1: <system.serviceModel>
2: <behaviors>
3: <serviceBehaviors >
4: <behavior name="DebugEnabled">
5: <serviceDebug includeExceptionDetailInFaults="True"/>
6: </behavior>
7: </serviceBehaviors>
8: <endpointBehaviors>
9: <behavior name="TheReporter.AjaxConnectionServiceAspNetAjaxBehavior">
10: <enableWebScript/>
11: </behavior>
12: <behavior name="TheReporter.Services.AjaxConnectorServicesAspNetAjaxBehavior">
13: <enableWebScript/>
14: </behavior>
15: </endpointBehaviors>
16: </behaviors>
17: <services>
18: <service name="TheReporter.AjaxConnectionService" behaviorConfiguration ="DebugEnabled">
19: <endpoint address="" behaviorConfiguration="TheReporter.AjaxConnectionServiceAspNetAjaxBehavior" binding="webHttpBinding" contract="TheReporter.AjaxConnectionService"/>
20: </service>
21: <service name="TheReporter.Services.AjaxConnectorServices" behaviorConfiguration ="DebugEnabled">
22: <endpoint address="" behaviorConfiguration="TheReporter.Services.AjaxConnectorServicesAspNetAjaxBehavior" binding="webHttpBinding" contract="TheReporter.Services.AjaxConnectorServices"/>
23: </service>
24: </services>
25: <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
26: </system.serviceModel>
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
Note the attributes that have words like "debugged" in them. Throw those in and you’re probably set. Another thing you can do is to throw in the following code in your actual data service to enable verbose debugging.
1: public class RssStorageService : DataService<RssStoreEntities>
2: {
3: public static void InitializeService(IDataServiceConfiguration config)
4: {
5: config.UseVerboseErrors = true;
6: config.SetEntitySetAccessRule("*", EntitySetRights.All);
7: }
8: }
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
So that should provide some reasonable error messages instead of the awesome one at the top of this here post. …Oh but wait, there’s more! One last tip for this tip is the code attribute tag. Throw this onto a particular method to add verbose debugging.
1: [System.ServiceModel.ServiceBehavior(IncludeExceptionDetailInFaults = true)]
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
(I snagged these last two from here, the first part of this tip I snagged from here.)
You must be logged in to post a comment.