August 2004 - Posts

I install XP SP2 and live, WinFS we hardly knew ye, and a little more Pocket Blog Writer stuff

I installed SP2 on Friday morning, so far I haven't had any problems at all. I may be hallucinating but it seems as if IE is actually a little snappier.
Everything I need to run runs, and talks to what it needs to talk to.

I caught the news about Longhorn yesterday courtesy of Chris Sells' blog - Firm-ish release for sometime in 2006, Avalon and Indigo to be shipped for XP and Windows Server 2003, and WinFS not to be included in the Longhorn deployment.
The last was a major disappointment, I think WinFS is an idea whose time has come...in its absence (for now) I'd like to see consistent managed APIs for things like Contacts and so on (all that Outlooky stuff), much as is planned for the next version of Windows Mobile.
The planned availability of Indigo on XP and W2K3 is not actually anything new: if anything it's a bit sad that we apparently won't be seeing it for those platforms any earlier than the Longhorn release.
The Avalon announcement is the most positive development: apart from lessening the degree to which developers will be having to support differing display technologies, I think it's also a bonus for IE, since presumably it will be possible to have a single version of IE for Windows that can handle things like XAML documents, which will help to speed the adoption of the latter.

Pocket Blog Writer (This is what I'm currently calling my Compact Framework-based Pocket PC client for posting to .Text blogs. Uninspired, but hey, it's really cold around here these days): So far Paul Andrew and Paul Wakeford have posted from it successfully (at least once). Particular thanks to Paul Wakeford for drawing my attention to a bug that I'd missed - when I did away with the tab control and added a modal dialog for Configuration, I forgot to carry over the labels for the Username and Password fields. This is now fixed.  BTW, since I've tried it myself in the field (e.g. not just from the emulator or a cradled device) I at least don't need to test that it doesn't just work for people called Paul...
I've also added a “New” menu item that clears all the fields on the entry form.
I'm considering adding functionality whereby posting again without clearing these fields automatically causes the post to be sent as an Edit, so that it acts as an amendment to the one that was just sent. First I need to test whether the web service handles its edits the way I assume. When it comes to future changes and enhancements a major consideration for me will be to keep the interface as simple as possible.
I also think I need to motivate myself to write a FAQ, or at the very least a ReadMe file.
On the subject of future development: Does anyone see any point in a Smartphone 2003 version? (other than the W?BIC factor of course.) If Bluetooth keyboards start to become available for the platform then input wouldn't be an issue, but there's always the problem of the itsy-bitsy display - I have trouble seeing the Smarphone as a text entry device. But I could be completely mistaken about that, so let me know. 'Cos it would be fun to write.
Lastly, a reminder: If you want to try the blog writer (and you have a .Text-based blog, you can handle the limitation of not posting with categories, you have the .NET Compact Framework installed, and so on and so forth), go to the Contact link and send me a message with your email address so I can send you the CAB file (let me know whether you want ARM or ARM4 or whatever, or failing that tell me what kind of device you have and which version of Windows Mobile/Pocket PC).

Live Testing, Day 2

Sunny and cold, from Manners Mall.
I think this thing is about ready for me to knock up some documentation and turn it loose on an unsuspecting world.

Posting from the park

Wasting my lunch hour in the middle of Wellington.

Pocket Blog Writer - All Done (sort of)

I'm writing this from my old Jornada, currently cradled. During the week I'll do some field tests with an iPAQ 5550 (if cafenet still likes me.) This evening I've been adding SIP-awareness, plus limited support for CTRL+Q. I decided against adding any eye candy - although the app does now have an icon, albeit one of those crappy Win 3.x-style monstrosities that still come with Visual Studio.
Now I must rest.

Posting from Pocket PC, Redux

I think I have a working solution to my timezone offset problem. Here's hoping (this post should tell me whether it works or not).

Update
Yes! (after a slight “oops” moment just before because I'd forgotten to update the clock on the emulator).
So I now have a Pocket PC app that will post to a .Text blog.

Principal limitations:

  • No categories (I could obtain an array of categories, but including such an array with the InsertCategoryPost method always resulted in an indexing error.) This might simply be a local configuration issue with DotNetJunkies but I have no way of knowing .
  • You have to set an offset value (this is not equal to your actual timezone offset) in the configuration options if your blog uses a timezone different from the default for the server. Additionally, you'll need to adjust this value at various time to take daylight saving changes into account (at either end). This is a result of the problem that's held me up for the past week. I've posted a question about this on the forum here but haven't had any responses yet.
  • No WYSIWYG text styling, although you can always add HTML tags yourself for this.
  • The app can only be used for adding new posts, not editing existing ones. Partly this is because the web service doesn't currently return a list of entry ids and titles (which would be useful for that purpose), and partly it's because I haven't included any friendly HTML editing features, so it might be a bit overwhelming for some users.

Things to do

  • I'm thinking of adding some blinky-blinky eye candy (I mean an indicator of some kind) to look at while the post is being added.
  • Lots of testing (so the first person to try it doesn't say “Oy, I thought you said this thing works?“)

Things to do a bit later

  • A Smartphone 2003 version (I know that seems daft on the face of it, but if you imagine someone using a Bluetooth keyboard it becomes borderline-practical, although the minuscule screen size would still be an issue)
  • A version written for the Compact Framework v2.0 Beta 1 (taking advantage of some of the new features, which will be a good way to learn them)

Blogging via a web service: Time zone issues

I have to do some serious study on this one.
Tricky tricky tricky.

Update 18/08/2004

Well, I now know what the problem is, and I know what to do about it at my end (although it's a pretty dumb solution).
I was going to implement it in my project last night but it was too cold to type.

 

 

 

Pocket PC DotText client progress...

I've got the orientation-awareness working I think (if I can trust the results from the emulator), based on the method used in the WebCrawler sample included with the Developer Resources for Windows Mobile 2003 Second Edition.
I've also implemented a nicely annoying technique for making a tab behave like a modal dialog (sort of) in order to ensure configuration information has been set up before someone tries to post. I spent some time agonizing over whether to use an XML file to store configuration, but in view of the limitations of XML support in CF v1.0 it's actually going to be easier to use name/value pairs in a text file and parse them with regular expression evaluation (I don't think there's anything important missing there...I'll find out soon.)
This has the additional advantage that the text file itself will be easily user-editable, not that that should be necessary.

Up until now I've tended to automatically pop the SIP up whenever anyone entered a text entry area, but I think that could cause problems with hardware keyboards so I'll probably either leave it out or make it a configuration option.

Posting from a Pocket PC

Well OK, I'm actually posting from the emulator just now, but if all goes well I should have something I won't be ashamed to release to an unsuspecting public by the end of the week.
When I was at Tech Ed last week I was frustrated by the fact that although the WiFi access was excellent I couldn't make any blog posts from the iPAQ 5550 I had with with me (for reasons I don't need to explain, given the features of PIE compared with IE6) - so this is my attempt to remedy that situation in future. I have no doubt that there are many fine solutions out there for posting to blog engines such as .Text from a Pocket PC, but this is much more fun :-)

Tech Ed

Well,
 I went, I saw, I came back :-)

Here follow my disorganised reflections:
I'm really going to have to track down the web service interface for .Text (if it's enabled for DotnetJunkies) so I can write a client that will enable me to blog while I'm actually at interesting events - the WiFi access at Tech Ed was excellent this year, but the only problem was that I couldn't log onto the blog admin from my iPAQ (or rather, my employers' iPAQ), owing presumably to the limitations of the Javascript support in Pocket IE.
One of the highlights for me was Brian Randell's session on programming middle-tier business logic: it was both very well presented and also directly applicable to something I'm about to start work on.
Another highlight was Brian Goldfarb's two-hour session on ASP.NET v2.0, expanding on the presentation he gave in Wellington on Thursday.
The Vodafone stand was very interesting. Partly this was because of the smartphones and Pocket PC Phone Edition devices they had on display: the latter included the new device from HP (although I don't think Vodafone will be distributing it - I don't know what HP have planned of course) as well as the device elsewhere known as the XDA III (very cool indeed). The smartphones they had on display were the Motorola MPx200 (looking a bit long in the tooth now) and what appeared to be the MPx220...if Vodafone bring the MPx220 to New Zealand I may be forced to buy one. I should note that the Vodafone stand was noteworthy for something else as well but I can't say what because that would be sexist.
Lastly I'd like to comment on Visual Studio Team System. Firstly, it's wonderful and we need it.
Secondly, I'm afraid there's a case of marketing decisions having been made which suggest that a few more people may need to be thrown to the chihuahuas. Aside from the questionable merits of having an Architect's Edition that doesn't include developer tools (I say “Don't let them forget what code looks like”), there is the fact that the decisions about what to include in the various versions of Visual Studio 2005 are arguably pretty dodgy. Visual Studio Professional does not even include SourceSafe according to the table here, but it also doesn't include any of the new tools for unit testing, code coverage and so on, all of which should be an integral part of professional software development. At this rate Visual Studio Professional risks being Visual Studio for Cowboys, and that would be a waste. I've mentioned elsewhere my belief that there should be an Express-level product for device development, so I won't repeat that here. Er, other than to the extent that I just did.
Still, none of that detracts from the fact that the next generation tools are very promising. And I want them. Now.
PS. For anyone who's wondering about this point after attending some of the sessions, I would like to mention here that I have personally seen Visual Studio 2005 Beta 1 Windows Forms projects not crashing on a number of occasions (just now in fact I loaded, edited and ran one without any problems at all), so have faith.

And now I think it's time for bed.