Sonntag, 2. Oktober 2011

Windows Runtime

This year I was allowed to visit //build in Anaheim California to experience first hand whats coming to Windows 8 next year ( www.buildwindows.com).
And it was alot to learn there - hundreds of sessions to visit (they are on channel9 right now to download). Windows 8 will have a cool new API named Windows Runtime (aka WinRT). Based on a COM-like layer you will be able to access it via C++/C#/VB.Net and HTML5/JS. Nice because the GUI part is funded on XAML - but in a native, and vastly optimized way.
So far its rather unfinished work - its a Developer Preview - not even Beta quality. But keep in mind - if you like to profit from the soon to be released Store and the new possibilities for writing Metro style apps - you need to learn the new API...
Desktop apps won't profit from this new layer unfortunately. On the other hand - .Net will be updated again to .Net 4.5/C# 5.0 with some nice new features. A developer preview of VS 2011 is also available to experiment with.
All after all - really much exitement of the things Microsoft has done with Win8 and many new stuff to learn - fun times.

Samstag, 16. Oktober 2010

MyTrainLog is released

After some problems during the submission process - my app was rejected once - everything worked out today.
MyTrainLog for Windows Phone 7 is out in the field - got my certification today...

Keep in mind if you wanna submit an app to the Phone Marketplace - to carefully select the used languages. I missed one language translation in the submission forms and was rejected. MS is at least very strict in this regards. But its an easy to fix problem...

So now I hope the app works as good as I think it is in the real world - could not see it on a real phone so far. Maybe my ordered phone will arrive next week :)

Dienstag, 5. Oktober 2010

MyTrainLog ready for release

Finally the Windows Phone 7 Marketplace is going to be opened and submissions are allowed in a short while.
MyTrainLog is nearly ready to go. Spanish translation will hopefully make it into the first release too...



Some screenshots ;)

Dienstag, 27. Juli 2010

MyTrainLog getting better and better

This weekend I finally found some time to get a huge step further with MyTrainLog.
I removed the Database stuff completely as its delaying the application development to much. I just using plain old ObservableCollections right now with a (De)Serializer to store the stuff in IsolatedStorage when the app is loaded/unloaded/etc.
This approach seems to be rather fast - at least on the emulator. No real device in sight right now.
I reall dont know whats happening if the collections are going to grow too much. Is the RAM storage unified? Don't know yet. Maybe I need to go back to Database later on - but the infrastructure is there at least.
What I noticed in the Beta tools is - the lack of controls. The Pivor/Panoramic control is not officially there - an very essential part of my app. I am using the nice one from Codeplex.com so far. Perfectly ok. No Date/Timepicker, no SelectBox/Combobox for easy selection of options. No checked Listbox etc. Everything could be coded by hand but it would speed app design up alot with some help here if you dont need to do the plumbing code for each control.
Anyways - the controls will come some day or another and the devs will incorporate them to make the look and feel of the plattform unique. And the split between the native MS apps and the 3rd party stuff will be getting less and less important and visible.

So far I guess about 80% of my app is ready. Ok, 20% will take 200% of the time :)

Sonntag, 18. Juli 2010

MyDietLog gets some new features

So the new beta of the SDK was out last week. This weekend I finally had time to code some new stuff into the very early stage of the MyDietLog for Windows Phone 7 (nice title).
So its now possible to sync date from the OData service (given via the Windows 7 based MyDietLog applications) and store the data in the IsolatedStorage of your Phone 7. After that you don't need the connection anymore and you can work offline. Syncing fresh data to the client is always possible from the home screen.
Editing data of your dailies can be done too. Up to now there is no syncing back to the central store. The corresponding sync framework is not available right now - or I have to code one myself - not decided yet...
You will notice that the loading is very fast if the database is already stored. The deserialisation is astonishingly fast - about 1500 entries for the in memory database right now.
Even the syncing is rather fast, as its done in the background and during startup. It takes only 3 seconds. But thats localhost and on the same machine. But the complete databasefile on the service is only about 1MB big. So it should not take so long - even streaming via bloated Atom feed.

Here is a short video from the current version:



So far nothing hered from Microsoft about a prototype dev device. Seems these have a very high demand and my little project is not mainstream enough to get interest from MS.
Anyways - I would have to live with the emulator for a while it seems.

Technologies used in the app:
  1. OData client via Atom feed
  2. PanoramicControl from codeplex - will be replaced with the control from Microsoft when available.
  3. IsolatedStorage to save the configuration (Destination address of the OData feed) and Database (ObservableCollection)
  4. ApplicationBar for syncing with OData service

Dienstag, 13. Juli 2010

Windows Phone 7 new SDK is out

In case you missed that - the new Beta SDK for Windows Phone 7 is ready to be downloaded.

Some new features under the hood and many incompatibilities to the CTP version regarding namespaces and XAML tags. There is are nice porting guide out which helps to get your existing app rather fast over to the new version.
Microsoft stated that its more or less final reagarding the API. No mayor changes will be coming to surprise the early developer.

I tested an issue with WebServices and SOAP - and its still not working correctly if you consume a (Sun Glassfish hosted) SOAP WebService which returns an array of a little structure. For simple types like returning a string it works fine. Hope they will work on that till release.

I ported over my littel app MyDietLog. Was not bad - it only took some time to figure out, where the main app screen will be actually started. They changed alot in the app.xml.cs and manifest files.
I got even an answer from one of the OData guys gegarding complex LinQ queries. They are simply not working because WP7 currently is not supporting Linq closures (if I got it right). So he gave me the tip to just use a different approach and construct the Uri string by hand. Works nice and I could speed up the app significantly.

Last but not least - the emulator comes without the MS apps preinstalled (at least they are not activated as usual) - and it has a nice new skin (a little bit smaller). It seems to load much faster from Visual Studio too...

Sonntag, 11. Juli 2010

Windows Phone 7 continued

I tried to somehow get around the query bug in the WP7 OData provider, but have not found any way to get it working.
So I spent some time to improve the infrastructure of the app a bit more. So its now correctly driven via a main menu and going from there into the daily consumed nutritions.
You can chose a date too - so far no Date/Time Picker around in the SDK, so we have to live with a simple one right now.