Blog Home  Home Feed your aggregator (RSS 2.0)  
Peter Nowaks Mobile Blog - Wednesday, June 25, 2008
Windows Phone in the cloud
 
 Wednesday, June 25, 2008

Es gibt etwas, was mich schon lange nervt. Mindestens 2 mal täglich höre ich Fragen, wie "Warum hat Microsoft das nicht direkt eingebaut" hinsichtlich vorhandenen Funktionalität im .NET Compact Framework oder dem Windows Mobile SDK für verwalteten Code. Das eine oder andere Mal kann ich der Frage zustimmen, aber generell nervt diese Frage nur noch.

Andererseits - Ich stellte mir diese Frage bereits selbst einige Male in der Vergangenheit. Doch ich bekam einige Antworten hierzu, die ich gerne mit diesem Post mit Ihnen teilen möchte. Ich hoffe, dass die Frage somit eher zu einer rhetorischen Frage verkommt. Versuchen wir also hier die Antworten zu finden und schauen ein kleinen wenig hinter die Kulissen.

Jede neue Version, sei es nun vom Compact Framework oder dem Windows Mobile SDK hat natürlich ein kleineres Budget, verglichen mit Windows oder Office.

Dabei sollte man bedenke, dass das Budget nicht nur die Entwicklung neuer Funktionalität bedeutet, sondern auch das Fixen von Bugs, da Sie ja selbst wissen, dass keine Software frei von Bugs sein kann. Die führt natürlich auch dazu, dass manche neuen Funktionen oder vielleicht geringere Bugs auch auf andere Versionen verschoben werden müssen, da einige Bugs oder Funktionen höher priorisiert sind, als andere. Dabei geschieht die Priorisierung seitens "des Kunden". Je öfter Anfragen zu einem Bug oder einer Funktion gestellt werden, umso höher ist auch die Priorität für die folgende Version.

Weiterhin ist eine neue Version des Compact Frameworks oder des Windows Mobile SDKs nicht anderes als jedes Projekt, welches Sie selbst realisieren. Sie haben einen Zeitplan mit einem definierten Release Datum, welches es gilt einzuhalten. Die führt oftmals auch zu einer Kürzung der Liste neuer Funktionen.

Windows Mobile basiert ja, wie Sie wissen, auf Windows Embedded CE. Dies bedeutet im Umkehrschluss, dass (oftmals) Funktionalität nicht unterstützt werden kann, wenn Si e nicht bereits in der Basis enthalten ist. Dies führt zu einer Abhängigkeit im Projekt, welche ebenfalls beachtet werden muss.

Aber es gibt eine weitere Abhängigkeit: Was bringt Ihnen die neueste Funktionalität, wenn Sie nicht von zugehörigen Tools, wie dem Visual Studio oder Windows Mobile beispielsweise selbst unterstützt wird?

Selbst Produkte, welche man eher nicht vermuten würde (Office, Windows) haben selbst, wenn auch einen kleinen Einfluss auf die Planung.

Wenn Sie dies alles einmal zusammengefasst betrachten, dann erkennen Sie, dass eine derartige Planung bereits sehr komplex wird.

Hinzu kommen aber noch andere Gesichtspunkt. Wussten Sie beispielsweise, dass es auch eine festgelegte Beschränkung hinsichtlich einer neuen Version des Compact Fameworks oder des Windows Mobile SDKs gibt, welche nicht überschritten werden darf? Auch das kann dazu führen, dass beriets vorhanden Funktionalität einer Betaversion wieder in der finalen Version entfernt wird. Der Grund hierfür liegt darin, dass das Framework entsprechend auch im ROM des Betriebssystems abgelegt werden soll/muss, wo Speicher eher rar gesät ist.

So kann es aber auch passieren, dass erst während der Entwicklung erkannt wird, dass eine neue Funktionalität das System beispielsweise verlangsamt und somit möglicherweise ein höherer nicht kalkulierter Entwicklungs- oder Testaufwand nötig ist (gerade bei der Portierung von vorhandener .NET Framework Funktionalität).

Nehmen Sie nun einmal alles zusammen und Sie erkennen, dass dieser Job nicht wirklich einfach ist.

Jetzt, wo Sie wissen, was u.a. alles beachtet werden muss (und ich wette, dass meine Aufzählung längst nicht vollständig ist, da ich selbst keinen vollen Einblick erhalte), stellt mir sich die Frage, ob Sie die eingangs gestellte Frage immer noch so oft werden wollen.

Als kleine Anmerkung meinerseits: Es gibt sehr viele Personen, die versuchen ihr Bestes die gewünschte Funktionalität aus eigenem Antrieb in ihrer Freizeit (meist ohne einen finanziellen Hintergrund) zur Verfügung zu stellen. Aus diesem Grunde erwähne ich an dieser Stelle herzlichst gerne noch einmal das Smart Device Framework von OpenNETCF, welches hierfür ein sehr gutes Beispiel ist.

Ich hoffe, dass ich Ihnen hiermit eine befriedigende Antwort geben konnte. Vielleicht konnte ich Sie sogar dazu motivieren ihr eigenes Projekt zu beginnen, um fehlende Funktionalität zu entwickeln und diese auf CodePlex oder woanders zur Verfügung zu stellen?

P.S.: Dieser Post sollte neutral gemeint sein. Es soll weder pro noch contra Microsoft, deren Produktgruppen oder sonst noch in diesen Prozess involvierten Personen sein. Nehmen Sie diese Informationen bitte so hin, wie Sie dort stehen.

Sollten Sie an einer weiteren Sichtweise interessiert sein, so empfehle ich Ihnen diesen post vom Windows Mobile Team.

- English Version -

It is playing on my nerves. At least I hear twice a day the question “Why didn’t Microsoft include it directly”, talking about unsupported functionality in the Compact Framework and Windows Mobile SDK for managed Code. Sometimes I have to agree, but most of the time this question becomes really annoying.

On the other hand – I’ve asked myself this question several times in the past, but finally could get some answers, which I want to share with this post. I hope this turns the question more into a rhetoric question. Let’s try to find some answers and take a small look behind the scenes.

Each new version, whether for the Compact Framework or the Windows Mobile SDK has naturally a smaller funding compared to Windows or Office.

You have to keep in mind, that the funding doesn't cover only new features, but as well bugfixing, as you know that no software is free of bugs. This leads to the point that some functionality or bugs have to be postponed on the list for a later version, as some bugs and features are higher priorized as others.

The priorization therefore is mostly driven by customer requests. The more customers request a new feature or complain about a bug the more it is likely to be included within the next version.

On the other hand a new version of the Compact Framework or Windows Mobile SDK is nothing else than any project you do – you have a time schedule, which has a defined end date. This shortens the list of new functionality as well.

As you know, Windows Mobile is based on Windows Embedded CE. This means in reverse, that (often) functionality can’t be supported, if it isn’t supported by the base system. This causes a dependency, which has to be considered for new functionality as well. It is very uncommon to offer hardware-dependent functionality not offered by the base system.

But there is another dependency as well: What do you want to have the newest functionality for, if it isn’t supported by additional Tools or the Visual Studio or by Windows Mobile itself?

Even Products you don't expect directly connected to Mobility (Office, Windows) themselves can even have (a really small) influence on the schedule and planning.

Taking these points in consideration you already see, that it becomes very complex here. But there is more. Did you know for example, that each new version of the .NET Compact Framework has a limitation in memory size, which can not be extended? This leads to the point that sometimes already included functionality has to be excluded again. The limitation is given, because the Compact Framework f.e. has to fit into the ROM Image for Windows Mobile or Windows Embedded CE. This limits functionality or changes priorization in functionality as well.

It can happen during development, that new functionality turns out to slow down the system, or takes more time to be developed, optimized or tested (especially, if porting desktop functionality) which itself has an influence why things tend to be like they are.

Taking all these points into account, you can see the job becoming very hard.

Now that you know, what is taken into consideration (and I bet my summary isn’t complete here, as I don’t have a full insight) are you going to ask the mentioned question as often as you do?

Just as a short note: There are enough people out there, which try to give you the functionality you want and spend their free time for this (sometimes without funding) and do their best they can. I very like to mention the Smart Device Framework by OpenNETCF, which is a very good example for this.

I hope I could give you a satisfying answer to your question. Probably you are now even motivated to start your own project to offer yet missing functionality on CodePlex or elsewhere?

P.S.: This post is meant to be neutral. It is not meant to be pro or contra Microsoft, Product Groups or anyone else included into this process. Just take this info I give you here as is.

If you are interested in another view, I recommend reading this post from the Windows Mobile Team.

Wednesday, June 25, 2008 6:22:00 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]   .NET Compact Framework | Windows Mobile  |  Trackback
 Friday, June 13, 2008
Join Microsoft Experts for an Online Chat!

Smart Device Development Chat!
Please join experts from the Windows Mobile, Windows CE
, SQL Server CE and .NET Compact Framework communities in a chat around application development for smart devices. These chats are a great opportunity to have your questions answered by experts from around the world.

Thursday, June 19, 2008

11:00 A.M. – 12:00 P.M. Pacific Time

2:00 – 3:00 P.M. Eastern Time

18:00 - 19:00 GMT

Germany: 20 - 21 Uhr

Join the chat room on the day of the chat:
MSDN: www.microsoft.com/communities/chats/chatrooms/msdn.aspx

Friday, June 13, 2008 11:47:38 AM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]   Webcast  |  Trackback
Dan Arildson und Jason Langridge präsentierten auf der TechEd in Orlando eine Session genannte Windows Mobile Smackdown.
"...The Smackdown is a session where we show cool applications and solutions for Windows Mobile.  It is all Live demos - no safety nets...."

Die vorgestellten Applikationen können in Jasons Blogpost hier gefunden werden.

- English Version -

Dan Arildson and Jason Langridge presented @  TechEd in Orlando a session Session called Windows Mobile Smackdown.
"...The Smackdown is a session where we show cool applications and solutions for Windows Mobile.  It is all Live demos - no safety nets...."

The shown applications can be found in Jasons Blogpost here.

Friday, June 13, 2008 11:04:36 AM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]   mobile Tools  |  Trackback
 Saturday, May 31, 2008

Leider ist es nicht möglich Windows Dienste unter Windows Mobile und Windows Embedded CE in verwaltetem Code zu erstellen.
Pavel Bánský's zeigt in seinem blog post, wie Services in Windows Mobile in managed code erstellt werden können.

Basierend auf diesem Artikel habe ich die Managed Services for Windows Mobile Bibliothek erstellt, welche unter der MIT License nun unter CodePlex veröffentlicht wurde.

Diese Bibliothek bietet die Infrastruktur, um so einfach, aber auch so komfortabel wie möglich Dienste ähnlich den Windows Diensten zu erstellen.

Zugehörig zu dieser Bibliothek sind einige erstellte Hilfsprogramme, als auch Beispiele in der Dokumentation vorhanden, welche den Einstieg in die Bibliothek erleichtern

Das Projekt finden Sie hier.

 

- English Version -

 

Actually it isn't possible to create Windows Services for Windows Mobile and Windows Embedded CE in managed code.
Pavel Bánský's shows in his blog post, how Services in Windows Mobile in managed code can be created.

Based on his article I've created a Managed Services for Windows Mobile library, which is under the MIT License available, published on CodePlex.

This library offers an easy and comfortable infrstructure which allows to develop Managed Services similar to Windows Services.

Additional to this library you can find some utilities as well as many samples in the published documentation.

The project can be found here.

Saturday, May 31, 2008 12:46:36 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]   .NET Compact Framework | mobile Tools | Windows Mobile  |  Trackback
 Tuesday, May 20, 2008

Alles andere, als eine leichte nervende kleine Fliege ist das RedFly der Celio Corporation. Bei diesem Gerät könnte man meinen, dass es sich um ein Subnotebook oder UMPC handelt. Dies war auch mein erster Gedanke, als ich das Gerät auf den Tisch bekam.
Bei dem Gerät selbst handelt es sich um eine Art von Terminal. Soweit noch nicht spannend, wenn es sich nicht um ein Terminal für Windows Mobile 5/6 Geräte handeln würde. Eine Unterstützung für Windows Mobile 6.1 und Symbian Geräte ist angeblich in der Entwicklung. Eine Liste der aktuell und demnächst unterstützen Geräte finden Sie hier.

IMAGE_007 

Das 2,5 x 15,2 x 22,9 mm große Gerät besitzt neben einer QWERTY Tastatur und einem Touchpad ein 8 Zoll Display mit 800x480 Pixeln. Als Schnittstellen besitzt das Gerät 2 USB Steckplätze, sowie einen VGA Ausgang. Nicht sichbar ist natürlich die Bluetooth 2.0 Schnittstelle, über welche das Gerät mit dem PDA kommuniziert. Alternativ kann auch die USB Schnittstelle hierfür verwendet werden. Vorteil: Hierdurch wird der Akku des PDAs automatisch geladen. Das RedFly selbst besitzt einen Akku mit 4500mAh.
Um eine Verbindung herzustellen, muss hierfür eine Software auf dem PDA installiert werden. Hierüber kann ich jedoch leider nichts berichten, da daß Gerät leider (noch) nicht mit deutschen PDAs zusammenarbeiten mag. Vermutlich ist da noch ein kleines Lokalisierungsproblem. Aus diesem Grund wurde mir hierzu ein englischer HTC TyTn II in der gebrandeten Version des AT&T mitgeliefert.
Zur Verbindungsherstellung zwischen RedFly und dem PDA via Bluetooth genügt ein Druck auf die zugehörige Taste .
Ein wenig ungewohnt ist das Bild auf dem Bildschirm schon. So sieht der Heute-Bildschirm doch ein wenig "ungewöhnlich" aus. Dafür profitieren jedoch Anwendungen wie Excel Mobile oder Acrobat Reader von der größeren Darstellung. Da passierte es einem Kollegen, welche öfters mit Tablet PCs arbeitet, doch mehrfach, dass er mit dem Finger auf dem Screen herumtappte - er hatte vergessen, dass es kein Tablet PC ist. ;-)
Einen Nachteil hat das Gerät aber: Da der PDA keine GPU besitzt, werden grafischen Anwendungen sehr langsam.

IMAGE_008 IMAGE_009 IMAGE_010

Der Preis des Gerätes ist leider noch nicht bekannt. Gerüchten zufolge soll es sich aber im Rahmen von 300$ bis 499$ bewegen. Wann das Gerät verfügbar ist, ist leider auch nicht bekannt.

Auch Jack Cook, ein MVP Kollege, konnte bereits das Gerät testen. Den Test finden Sie hier(http://experiencemobility.com/?p=3864#more-3864).

excel todayscreen pdf

 

Weitere Informationen (englisch): http://www.brighthand.com/default.asp?newsID=13665 und http://www.brighthand.com/default.asp?newsID=13909
Produktlink (englisch): http://celiocorp.com/products.php

 

- English Version -

 

Anything else, thank a small nerving fly is the device RedFly by Celio Corporation. At a first glimpse you could think, that this device is a Subnotebook or UMPC. This was my first thought as well as I got the device on my desk.
The device itself is a type of Terminal device. Up to here nothing interesting, if the device wouldn't be a terminal for for Windows Mobile 5/6 devices. A support for Windows Mobile 6.1 and Symbian devices is in development. A list of /future) supported devices can be found here.

IMAGE_007 

The 2,5 x 15,2 x 22,9 mm device has a QWERTY keyboard and a Touchpad with a 8 Inch display, displaying 800x480 pixels. The device contains 2 USB slots as well as a VGA output. Not visible is the supported Bluetooth 2.0, which can be used for communicating with the Windows Mobile device. Otherwise the USB slot can be used as well. Advantage: Through a direct connection the Windows Mobile device can be charged. The RedFly itself has a battery with a capacity of 4500mAh.
Establishing a connection, the PDA needs to have a software installed. Actually I can tell you anything about this, as german devices are (actually) not supported. Probably a small problem in Localisation. Therefore I got an english HTC TyTn II as a branded AT&T.
For establishing the connection between the RedFly and the PDA via Bluetooth pressing a dedicated key is sufficient.
A little bit distracting is the devices screen. The Today Screen is a little bit "unusual". Therefore apps like Excel Mobile or Acrobat Reader work well with the larger display.
A disantvantage of the device is, that graphical applications become very slow on the higher resolution, as no GPU is present.

IMAGE_008 IMAGE_009 IMAGE_010

The devices price isn't known yet. It is said to be something between 300$ to 499$. When it will be available, isn't known as well.

Jack Cook, a MVP colleague, could test the device as well. The test can be found here(http://experiencemobility.com/?p=3864#more-3864).

excel todayscreen pdf

 

Further Information (english): http://www.brighthand.com/default.asp?newsID=13665 and http://www.brighthand.com/default.asp?newsID=13909
Product Page (english): http://celiocorp.com/products.php

Tuesday, May 20, 2008 9:30:35 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]    |  Trackback

Die Kollegen von OpenNETCF haben auf ihrer Community Site ein neues Whitepaper zum Thema "Managed vs. Native Code: GDI Performance" veröffentlicht.
Für diesen Artikel durfte ich auch eine Inhalte beisteuern.

Neben diesem Artikel gibt es einige weitere, die auf der Community Site zu finden sind:

- Performance Implications of Crossing the P/Invoke Boundary

- An Introduction to WCF for Device Developers

- Getting a Millisecond-Resolution DateTime under Windows CE

- Using GDI+ on Windows Mobile

- Sharing Windows Mobile Ink with the Desktop

- OpenNETCF Mobile Ink Library for Windows Mobile 6

- Improving Data Access Performance with Data Caching

- Developing Connected Smart Device Applications with sqlClient

- Debugging Without ActiveSync

- Image Manipulation in Windows Mobile 5.0

- Don't Fear the Garbage Collector

 

All diese Artikel finden Sie hier: http://community.OpenNETCF.com/articles

 

- English Version -

 

The colleagues form OpenNETCF have published a new whitepaper called "Managed vs. Native Code: GDI Performance" on their community site.
For this article I was allowed to contribute some infos.

Beside this article a few more can be found on the community site:

- Performance Implications of Crossing the P/Invoke Boundary

- An Introduction to WCF for Device Developers

- Getting a Millisecond-Resolution DateTime under Windows CE

- Using GDI+ on Windows Mobile

- Sharing Windows Mobile Ink with the Desktop

- OpenNETCF Mobile Ink Library for Windows Mobile 6

- Improving Data Access Performance with Data Caching

- Developing Connected Smart Device Applications with sqlClient

- Debugging Without ActiveSync

- Image Manipulation in Windows Mobile 5.0

- Don't Fear the Garbage Collector

 

All these articles can be found here: http://community.OpenNETCF.com/articles

Tuesday, May 20, 2008 9:20:39 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]   Artikel  |  Trackback

Es gibt eine Menge Tools, die schnell als Hacking Software verurteilt werden. Doch in erster Linie dienen diese Tools der Analyse.
Eines dieser Tools ist "Bluezard - Bluetooth Wizard". Diese Software ist für Windows Mobile Pocket PCs und Smarthones (ich weigere mich immer noch die neuen Namen anzunehmen), welche den Microsoft Bluetooth Stack unterstützen.
Die Anwendung basiert auf dem .NET Compact Framework 2.0 und verwendet die freie Bluetooth Bibliothek 32feet.NET.

 

Folgende Funktionen sind enthalten:

    * Durchsuchen des Dateisystems des verbundenen Gerätes, sowie das Hoch-/Herunterladen und Löschen von Dateien auf dem entfernten Gerät.
    * Senden von AT-Kommandos durch die enthaltene Terminal Anwendung.
    * Senden von SMS vom verbundenen Gerät.
    * Herunterladen empfangener SMS vom verbundenen Gerät.
    * Herunterladen des Telefonbuchs vom verbundenen Gerät.
    * Empfangen von Dateien via Bluetooth.
    * Abfragen erweiterter Informationen des verbundenden Gerätes: Bluetooth Hersteller, verfügbare Dienste, Bluetooth Addresse.
    * Abfragen des unsichtbaren Gerätestatus.
    * Bluezard verwendet eine Geräteliste, so dass ein häufiges Scannen für Geräte unnötig ist!
    * Versenden von Nachrichten!
    * Viele weitere Funktionen.

Fazit: Eine handliche Anwendung zum Testen von Bluetooth Fähigkeiten, welche man haben sollte.

 

- English Version -

 

There are a lot of tools, which are labeled very fast as hacking software. But most of these tools are used primarily for analysis.
Such a tool is for instance "Bluezard - Bluetooth Wizard". This software is for Windows Mobile Pocket PCs and Smarthones (I still refuse to use the new names) which support the Microsoft Bluetooth Stack.
The application is based on the .NET Compact Framework 2.0 and uses the free bluetooth library 32feet.NET.

Following functions are included:

    * Browse remote device filesystem, download, upload and delete files on a remote-device, create folders.
    * Control remote-device by sending AT-commands. It has built-in terminal.
    * Send SMS from remote-device.
    * Download SMS from remote-device.
    * Download phonebook from remote-device.
    * Receive files sent via Bluetooth.
    * Get extended info about remote-devices: bluetooth manufacturer, avaible services, bluetooth address.
    * Get invisible device status.
    * Bluezard is using system device list, so you don’t need to scan for devices every time!
    * Send messages to remote-device
    * Many more functions

Conclusion: A handy app for testing bluetooth functionality.

Tuesday, May 20, 2008 9:13:08 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]   mobile Tools  |  Trackback
 Thursday, May 08, 2008

Paul Yao präsentierte gestern bei der WE-DIG session () die Neuerungen des .NET Compact Frameworks 3.5. Die Session ist als Onlinevideo bei Channel 9  abrufbar.

 

- English Version -

 

Paul Yao presented yesterday the news on the .NET Compact Framework 3.5 at the WE-DIG session. The session can be viewed on Channel 9.

Thursday, May 08, 2008 7:13:18 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]   .NET Compact Framework  |  Trackback

Treten Sie mit Experten für Windows Mobile, Windows CE, SQL Server CE und dem .NET Compact Framework Communities in Kontakt rund um Anwendungsentwicklung für mobile Geräte. Diese Chats bieten eine gute Möglichkeit Fragen durch weltweite Experten beantortet zu bekommen.

------------------------------------------------
Nehmen Sie mit uns online teil für unsere interaktive Fragen- und Antwortrunde am Dienstag dem 13. Mai um
10 am US Pacific Time
11 am US Mountain Time
12 pm US Central Time
1 pm US Eastern Time
6 pm BST
19 Uhr deutscher Zeit

------------------------------------------------
Um am Chat teilzunehmen folgen Sie bitte dem Link:
http://www.microsoft.com/communities/chats/chatrooms/msdn.aspx

- English Version -

Please join experts from the Windows Mobile, Windows CE, SQL Server CE and .NET Compact Framework communities in a chat around application development for smart devices. These chats are a great opportunity to have your questions answered by experts from around the world.

------------------------------------------------
Join us online for our live interactive developer Q&A Tuesday 13th May at
10 am US Pacific Time
11 am US Mountain Time
12 pm US Central Time
1 pm US Eastern Time
6 pm BST
To convert from GMT to your local time, use the link below:
http://www.worldtimeserver.com/current_time_in_RU-MOW.aspx
------------------------------------------------
To join the chat use the following link:
http://www.microsoft.com/communities/chats/chatrooms/msdn.aspx

Thursday, May 08, 2008 7:07:53 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]   .NET Compact Framework | Windows Mobile  |  Trackback

Ein interessantes Interview zum Thema Mobile Device Manager in MP3 und WMA Format hier(http://blogs.msdn.com/hegenderfer/archive/2008/05/06/now-live-technet-radio-get-more-security-and-control-with-mobile-device-manager.aspx).

- English Version -

an interesting interview on the Mobile Device Manager in MP3 und WMA Format can be found here(http://blogs.msdn.com/hegenderfer/archive/2008/05/06/now-live-technet-radio-get-more-security-and-control-with-mobile-device-manager.aspx).

Thursday, May 08, 2008 7:05:31 PM (W. Europe Standard Time, UTC+01:00)  #    Comments [0]   .NET Compact Framework | Windows Mobile  |  Trackback
Copyright © 2010 Peter Nowak. All rights reserved.
DasBlog 'Portal' theme by Johnny Hughes.