May 2006 - Posts

Mobile Connections event
Filed under:
PostedSunday, May 28, 2006 7:02 AM by Nino

Almost forgot..  while at MEDC, I met Nick Landry (aka ActiveNick) and heard about Mobile Connections from him. Looks to be a great event with folks like Maarten Struys, Dr. Neil Roodyn, Julia Lerman, Kim Tripp, and, of course, Nick Landry.  Check it out!

The Mobile Minute 140
Filed under:
PostedSunday, May 28, 2006 6:36 AM by Nino

TMM ...back again. :-)

Software / Hardware

 Development

In Other News . . .

DoDN - what a great event!
Filed under:
PostedWednesday, May 24, 2006 10:45 PM by Nino

Day of .NET - Saturday, May 13, 2006 - Ann Arbor, MI ...a day that will be remembered.. remembered for being a GREAT event. This blog post is over a week overdue, but I couldn't let it pass..

John Hopkins, Josh Holmes and Jason Follas did an outstanding job putting this even together. I was very impressed!  A lot of great sessions by a lot of great speakers (oh, and I spoke, too).  The logistics were also executed very well.  And did I mention that there was so much swag that *everyone* got something.  Great job guys – I look forward to next year!

MEDC 2006 wrap-up
PostedMonday, May 22, 2006 3:14 AM by Nino

I wanted to wrap up some thoughts about MEDC 2006 last week (er, nearly two weeks now)..

In sum: What a great event!!! 

I really enjoyed this year’s event and most of all got the opportunity to meet a great bunch of people such as – Jenny Kays and John Kennedy from the MED Content Publishing team, Alex Yakhnin, Neil Cowburn, Chris Tacke, Ginney Caughey, Peter Foot, Mark Arteaga, Alex Feinman, Daniel Moth and Maarten Struys from OpenNETCF, David Kline, Ryan Chapman and Richard Greenberg from the .NET CF team, Amit Chopra from the VSD team and many other folks (lest I forget Mike Fosmire, my MVP Lead).

Overall, though, I was just very impressed at how tight-knit the .NET CF / Embedded / Mobile Devices groups (Microsoft + MVPs) are. I had a great time and was really glad to meet everyone. I also came away quite impressed at the level of involvement and interaction the MVPs have with the product groups.   ..and oh the things to look forward to at MEDC 2007. :-)

 

OpenNETCF SDF 2.0 released
PostedThursday, May 11, 2006 9:02 PM by Nino

The OpenNETCF team has quietly released v2.0 of their excellent Smart Device Framework this week.  Download

Stay tuned for more from the OpenNETCF folks next week about some changes with the distribution and licensing of the 2.0 release.

 

Update: 20060521 - just realized that in the title, I spelled released as "releaed". *sigh*

MEDC 2006: Day 2 - .NET CF 2.0 Perf
PostedWednesday, May 10, 2006 10:41 PM by Nino

I just got out of a standing-room-only session on “.NET Compact Framework 2.0: Optimizing for Performance” given by Ryan Chapman.  50% excellent stuff, 50% stuff I already knew (but I wasn’t disappointed at all). Since 1) I was standing and 2) my laptop and device batteries were near exhaustion, I took no notes.

It was interesting to see some of the performance gains that one can glean with Generics vs boxing.  Very cool.. and helps to keep the GC in a slumber. Speaking of the GC, we also saw the .NET Compact Framework Remote Performance Monitor in action.  VERY, VERY, very cool.   We (.NET CF developers) have been waiting for this for a loooong time. The .NET CF RPM, if you don’t know, is new in .NET CF 2.0 SP1 (currently in beta) – read more about the SP1 beta here.

Speaking of tools and performance and features and such (hmm a lot of  ‘and’s).. I attended another MVP-only luncheon today that discussed some really cool things in the pipe. I’m really stoked at how close the .NET CF / Windows CE / Embedded teams get with their MVPs.  Impressive.  I’ve seen some other product teams at Microsoft have quite a different relationship with their MVPs.  Unfortunate – I hope they see the error of their ways.    We (MVPs) are helping to drive the direction of the tools and technologies coming out of Redmond and I’m really appreaciative and really stoked to be part of the process.

A number of the things I’ve seen so far this week – publicly and under NDA – further underscore the fact that Microsoft is (er, has) positioned Visual Studio as a platform.  If you are interested at all in extending VS2005, check out the VS SDK.

 

MEDC 2006: Day 2 - Windows Mobile Security
Filed under: ,
PostedWednesday, May 10, 2006 10:25 PM by Nino

Earlier today I attended Jason Fuller’s “Windows Mobile Application Security” session – a very good walkthrough in regards to dealing with the WM security models(s).   During his talk he announced the release of the Device Security Manager – a tool to use in querying the device security configuration and certificate stores.  Very cool (and useful).  It is supposed to be up on CommNet, but I haven’t seen it yet.  I would guess that it would be on Microsoft Downloads in the next week or two.

Here are some notes:

  • Windows Mobile Security Model is based on "Security through Identity"
    • About establishing authorship of code
    • Establish identity through certificates
  • Permission Tiers
    • Privileged
      • Can do anything
        • Can call any API / write to any registry location / any file system location / install certs
        • FKA "Trusted"
    • Normal
      • Cannot call a small set of APIs
      • Cannot write to protected parts of the registry / write system files / install certificates
      • FKA "Unprivileged" or "untrusted"
    • Blocked
      • Not allowed to run
  • Certificates
    • Used to create a digital signature for your app
    • (private) certificate + unsigned application -->  VS (SignTool.exe) --> Signed application
  • What if you don't control the private certificate?
    • Use Mobile2Market certificates
      • Privileged and Normal
      • Privileged has contract restrictions
      • Every device, except two operators
    • Signing != Logo certification
  • Retail Deployment
    • Publisher cert on USB token + unsigned app ->  sign app w/ Publisher cert --> send to cert authority --> they strip out their cert & resign with M2M cert --> send back to you
  • Certificates
    • Vouch for identity
    • Prevents Tampering
    • Authentication of origin
  • Certificate Store
    • Privileged
    • Normal
    • SPC - Software Publisher Certificate
      • "cert store for CAB files"
      • i.e. what can install (vs 'what can run' from Normal/Priv)
  • Security Configurations
    • Security Off
      • Policies
        • Unsigned apps run? Yes
        • Prompt User? No
        • One-tier (everything runs privileged)
      • Certificates:
        • Doesn't matter
      • Used only for debugging
    • One-Tier Prompt (aka PPC configuration)
      • Policies
        • Unsigned apps run? Yes
        • Prompt User? Yes
        • One-tier
      • Certificates
        • Mobile2Market, OEM, Mobile operator
      • Emulators (MSFT turned off prompts)
      • Pocket PC
      • Pocket PC Phone Edition
        • incl. Treo 700w
      • Verizon smartphone
    • Two-tier
      • Policies
        • Unsigned apps run? Yes
        • Prompt User? Yes
        • Two-tier
      • Certificates:
        • Mobile2Market, OEM, Mobile operator
      • Smartphone
    • Mobile2Market Locketd
      • Policies
        • Unsigned apps run? No
        • Prompt User? N/A
        • Tow-tier
      • Certificates
        • Mobile2Market, OEM, Mobile operator
      • Nextel i930
    • RAPI
      • PPC moved from Allowed to Restricted
        • Limits on what the desktop can do to the device
        • CeRapiInvoke is longer allowed
          • SDK docs describe workaround
    • Plugins
      • If an .exe is running privileged, it cannot load a normal .dll  - i.e. dlls must be privileged
      • Inbox/Messaging
      • ActiveSync - sync providers
    • One certificate per CAB
      • Mostly a problem w/ Orange
    • Device Drivers / System Services
      • Must be signed privileged even on PPC
      • Workarounds
        • ActivateDeviceEx()
        • RegisterService()
        • net net - load driver/server later
MEDC 2006: Day 2 - P&P's Mobile CAB
PostedWednesday, May 10, 2006 3:54 PM by Nino

This morning I am sitting in a very full session by the P&P folks: "Patterns & Practices for Mobile Client Part 2/4 - Mobile Composite UI Application Block".  I have started to look at the Mobile Client Software Factory bits, evaluating the various components for use in my current project (of course comparing to Avanade's own ACA Devices asset). Once I have fully explored it, I'll be dropping some blog posts. Join the workspace for the MCSF and pull down the latest drop if you haven't yet. 

One great point that John [Socha-Leialoha] made during the presentation was that while some of the code looks complex, it allows teams to scale - as opposed to some simpler-looking code that won't scale (and becomes spaghetti code).  While you might think that this is only applicable to teams (or even large teams at that), I would argue that it is applicable and valuable to a team of one (just like source control). He also noted that they use pair programming (a concept which I admittedly still struggle with), and, of course, Test-Driven Development (TDD).

The Mobile CAB bits of MCSF (and MCSF itself) are a GoodThing(tm) for managed mobile application developers.  I am very excited to see this output from the P&P team. ...and go get the MCSF bits.   The bits, while not yet RTW'd, will release on June 30. 

 

MEDC 2006: Day 1
PostedWednesday, May 10, 2006 3:03 PM by Nino

Tuesday's big event was the keynote given by Peter Knook, Senior VP, Mobile and Embedded Devices Division.  During the keynote, Windows CE 6 was announced (note that 'announced' != 'released', CE6 is currently in beta).  What's special about CE6?  How about 32,000 processes.. each with a virtual memory limit of 2GB?  That's a pretty good starting point.  Not to mention that CE6 is still real time and that Platform Builder is now a plug-in to Visual Studio.  Mike Hall has more

Let's also note that this is the 10th anniversary of Windows CE.  Happy Birthday, Windows CE! :-)Be sure to check out the Flikr site for MEDC 2006.

Also on Tuesday, there was a MVP-only lunch with the NETCF, VSD and SQL/Ev* folks. Some *very* cool things coming this year and next (think Orcas time frame).

I also attended a panel discussion, "Meet the Windows Devices Core Team" - some good discussion (and many questions about ActiveSync).   After this, I attended Daniel Moth's "Sharing Assets between the .NET Compact Framework and the .NET Framework" session. A really good session and the first time I had heard Daniel speak (yes, I submitted my eval, Daniel).  The last session of the day I attended was "Certifying your Windows Mobile Applications" by Dwayne Lamb.  A very informative session with good attendance (and I got to chat a bit with
Dwayne during the MVP lunch earlier).

 

 

*.NET Compact Framework, Visual Studio for Devices and SQL Everywhere

MEDC 2006 Day 0
PostedWednesday, May 10, 2006 2:56 PM by Nino
Monday I did registration and some MVP events. In the bag we are given, which isn't bad - but I still prefer my Ogio - I found:
  • Windows CE 6 Beta DVDs
  • .NET Micro Framework t-shirt (go to http://www.aboutnetmf.com )
  • Windows Mobile 5.0 DVDs
    • Windows Mobile 5.0 Developer Resource Kit
    • Windows Mobile Enteprise Resource Kit
  • Visual Studio 2005 Standard Edition
  • Marketing brochures (including one from OpenNETCF, which was nice to see)
  • Conference guide
  • Notepad
  • copy of "Smartphone and Pocket PC" magazine
  • a jelly cell mate
Slingbox review
Filed under:
PostedMonday, May 08, 2006 5:17 AM by Nino

Update (2007-01-21):  After a combination of some internal network infrastructure changes and software/firmware updates, I can now give my 'thumbs up' to Slingbox [Classic]. The experience is much better than when I originally wrote this review.  I'm currently running SlingPlayer 1.40.206 on my laptop and home PC, firmware 1.0.96 (Slingbox classic), SlingPlayer 1.1.095 on my Windows Mobile 5.0 Pocket PC Phone, and SlingPlayer Mobile for Windows Smartphone 1.0.5.42 on my WM5 Smartphone. 

I have now had my SlingBox for a few weeks and thought I’d share my experiences and my impressions.

I had seen a number of bloggers post about the SlingBox and there has been some lenthy chatter on some of our [Avanade] internal communities as well – all of which piqued my interest.  All that and I’m back on the road full time so I figured it would be a good help to avoid the junk on the five channels that I would get in a hotel.  My first stop was eBay where you can pick one up, new, for less than MSRP.  That done, I waited for it to arrive. It came in the middle of the week, so that gave me one more thing to look forward to when I arrived home Friday night (and I actually <gasp> waited until Saturday to futz with it, although I *did* take it out of the box). 

My first impression – it’s a lot smaller and lighter than I expected. That’s not a bad thing. Let me step back for a minute and talk about OOBE – out-of-box experience.  Awful. Just bloody awful.  Who designed the box? Wait, I don’t want to know.  It took me several frustrating minutes to get the Slingbox and other included parts out of the box (whilst resisting my urge to tear the box apart to get at its contents).  And I’m not partial to the fact that it was a clear plastic ‘box’ either.. just give me a cardboard box that opens easily at one of its ends (and the bonus is that I can readily recycle the box and don’t have to guess the type of plastic that it is (and whether or not my recycling company will take it)).  Frankly, it more of an issue of how things were packaged inside the box than opening the box.

At this point I’m going to talk about pre-requisites:
1) Broadband connection with a reasonably good upstream throughput (I’m on Time Warner’s RoadRunner network)

2) A compatible router that supports UPnP (note: That is SlingMedia’s requirement – you *can* set this up on a non-UPnP router, but make certain it has the ability to do port-forwarding and that *you* are comfortable configuring this. Or, as in my case, you don’t even need a ‘router’ – I use Microsoft ISA Server which works just fine (yes, I did have add a new publishing rule)).

3) A supported device that you want to watch (most like a cable set-top box (STB)).  I
failed to do due diligence on this point – we’ll see shortly how that came back to bite me.

I connected my STB, a Pioneer BD-V1100, to the Slingbox and lo-and-behold, I was soon watching TV on my computer.  “This seems quite easy” I thought at this point.  I then went back into the SlingPlayer setup and tried configuring it for my BD-V1100.  No explicit listing, so I tried each of the four ‘generic’ items.  Nope.  I searched the Internet and Usenet – nothing.  SlingCommunity forums – nothing.  So, I posted to the SlingCommuniity forums. No response after a few days, so I contacted support. No real help there either. So that following weekend I took my STB into the local Time-Warner office (Tri-County mall for any other Cincinnatians reading who live on the far north side of town) and exchanged it for a different box.  I picked up Scientific Atlanta Explorer 8000 (which does the SlingPlayer does have codes for). 

I set this up on the Slingbox and still could not control it remotely. I carefully moved the IR emitters across the front of the unit a few centimeters at a time – nothing. I called SlingMedia support and they walked me through using my digital camera to ascertain if the IR emitters were actually working.  They weren’t, so SlingMedia sent me new ones.  Another week gone by.  My IR emitters show up and I hook them up – voila!  So, I can now control my Slingbox remotely (i.e. actually use it).

My first remote experience was from a Marriott Courtyard. How well did it work? So-so.  It was mostly watchable, but it got pixelated often.  My second remote experience was from a Marriott Towne Place Suites (over WiFi) – a so-so experience as well.  Quite simply, at both hotels the connection was simply too saturated for me to effectively watch my Slingbox.   At home it works great (of course).  All told, I'm a bit disappointed.

This brings us to the recently released SlingPlayer Mobile. The application installs in a straightforward fashion has pretty straightforward controls (as does the SlingPlayer for the desktop).  Unfortunately, I have found that the performance over my T-Mobile EDGE connection leaves a bit to be desired. SlingPlayer Mobile would work better over a UMTS or EV-DO connection.

In conclusion, I think that the Slingbox works well overall; however, I have several points of concern.
I see some weak links across two areas – the overall setup and the IR emitters. I’m not certain if most consumers will have an easy time of setting this up and may be confused around the UPnP requirement (given that, in the past, there has been much negative press about UPnP).  Additionally, I think that the IR emitters are a bit frail, but I may be biased in that assessment given my troubles with them. 

SlingMedia’s support could use substantial improvement – both the e-mail and phone support were less than stellar. The phone support could use better hours as well (currently 7am-7pm (Pacific) M-F).  A better overall route for support is through the forums SlingCommunity (http://www.slingcommunity.com) – yes, I think that the community at-large provides better support than does SlingMedia.  Additionally, the forums are some of the worst I have ever used – the search functionality is particularly poor. One other thing about the Slingbox – it runs hot, so be certain to give it good ventilation.

-Nino

 

Day of .NET - T-minus six days!
PostedSunday, May 07, 2006 5:10 PM by Nino
 

Still haven't signed up for Day of .NET in Ann Arbor, MI? Good Grief!  Get on it! Register. It's free, as in no cost to you.

Fresh from MEDC 2006, I'll be talking about Securing Your Mobile Data and Life with LUA: Developing for Fun and Fortune as a Non-AdminMy colleague, Dave Giard, will be presenting An Introduction to Microsoft BizTalk Server 2006

Visit the site and take a look at the entire schedule.  I hope to see you there!

-Nino

MEDC 2006 - tomorrow!!!
Filed under:
PostedSunday, May 07, 2006 5:07 PM by Nino

Medc2006button

MEDC 2006 kicks off tomorrow!  Although registration is now closed, you can keep abreast of the latest announcements via the MEDC 2006 site and the blogs of many of the attendees (yours truly included).   Be sure to take a look at several presentations on the MEDC home page today (I’m pretty partial to the one on the .NET Micro Framework) and the MEDC 2006 Team’s Flikr site.

In addition to attending many of the great sessions, I’ll also be at one of the MVP Cabanas in the afternoon each day, so be sure to stop by.

-Nino