http://michael.carbenay.info

EAVB_KQUCNWFFDT

Un petit aperçu du Zune Software

20 oct. 2010  –  Windows Phone 7 | Interface utilisateur  –  0 Commentaires

Ca y est ! Depuis quelques jours Zune est disponible en France. D’accord, ce n’est pas TOUT Zune (pas de lecteurs multimédia), mais c’est le principal : l’accès à la collection de musiques / videos.

Avec la sortie de Windows Phone 7 – c’est pour aujourd’hui ! Jouez hautbois, résonnez musettes ! – le service musical de Microsoft est disponibles dans un certains nombre de pays, dont la France. Si le catalogue de ce chalenger est assez loin de celui du mastodonte iTunes, il n’en est pas moins fourni et proposera de quoi satisfaire tout le monde, ou presque. Pour preuve, on trouve des artistes et groupes connus mais aussi d’autres moins connus tels que Madder Mortem, Kari Rueslatten ou encore The 3rd and the Mortal pour ne citer que quelques unes des recherches que j’ai lancé.

Ce qui frappe surtout, lorsque l’on entre dans l’univers de Zune, c’est l’application “cliente”. En effet, à l’instar d’iTunes, l’accès, la lecture et la synchronisation avec les lecteurs téléphones sous WP7 se fait principalement au travers d’une application à installer sur votre PC. Oui, mais quelle application ! Le Zune Software (puisque c’est son nom), est un petit bijou d’interface qui vous fera facilement oublier les heures de cauchemar passé sur iTunes.

Voici à quoi ressemble la page qui regroupe votre collection “locale” de musique :

Home

On y retrouve bien évidemment tout ce qu’il faut pour visualiser, trier et écouter les titres aux formats MP3, WMA, etc. stockés sur votre machine ou sur un serveur domestique. L’interface est très simple à manipuler – du moins à la souris et au clavier – et très agréable à regarder pour peu que vous soyez sensible au style “Metro”.

La recherche est assez sympathique, puisqu’elle vous permet d’accéder au contenu aussi bien local que sur la plateforme Zune. Et aucun risque de vous tromper entre les deux : les résultats sont bien séparés.

Recherche

Recherche2

On peut d’ailleurs voir que certains de mes MP3 d’Alanis ne sont pas correctement tagués et qu’il manque les images des CDTriste.

Point interessant : dans Zune, point de Coverflow. Toute personne connaissant mon aversion pour cet affichage pourra se réjouir de ne pas m’entendre encore une fois râler sur le sujet.

La page d’accueil de l’application est un peu particulière, et il m’a fallu quelque temps pour m’y habituer, mais propose des fonctions très agréables. Elle est décomposé en deux parties :

  • Une “liste” présentant les nouveautés de votre collection, albums / artistes préférés et vos dernières “lectures”

quickplay1

  • et une liste de “smart DJ” qui composent, en fonction du nom d’un artiste que vous appréciez, des playlists aléatoires de titres “similaires”. On peut faire le rapprochement entre cette fonctionnalité et la fonction de Génius d’iTunes, avec quelques fonctions supplémentaires. On pourra trouver dommage d’avoir limité l’application à 5 Smart DJ, espérons qu’on pourra en avoir un nombre non limité dans une prochaine version.

quickplay2

L’utilisation des Smart DJs est extrêmement simple : cliquez sur un emplacement libre, saisissez un nom d’artistes, validez et (si vous avez tapé un nom d’artiste reconnu par Zune) c’est tout : vous pouvez double cliquer pour profiter d’une liste de lecture aléatoire et reprenant à la fois des titres de l’artiste choisi mais aussi d’autres artistes plus ou moins similaires.

Un petit exemple de liste de lecture “Smart DJ” basé sur “The Scorpions” :

playing

On y retrouve du Deep Purple, The Rolling Stones, Blue Oyster Club, etc. Si vous appreciez le résultat, vous pouvez enregistrer la playlist sous la forme d’une selection pour, par exemple, la transférer sur votre téléphone.

Quelques (autres) pensées sur le Marketplace WP7

31 août 2010  –   –  0 Commentaires

via WindowsPhoneInfo via WMPowerUser

La liste des catégories du Marketplace de Windows Phone 7 a été dévoilée et, dans l’ensemble, ça à l’air pas trop mal, bien que peut-être un peu trop classique :

  • Livres & Référence :
    • Lecteur électronique
    • Fiction
    • Non-fiction
    • Références
  • Economie et entreprise
  • Divertissement
  • Finance
  • Jeux
  • Action & Aventure
    • Plateforme et classique
    • Cartes et Casino
    • Jeux Familiaux
    • Musique
    • Casse-tête
    • Jeux de tir
    • Sports & Courses
    • Stratégie
    • Avatar Xbox
  • Forme et Santé
    • Régime et nutrition
    • Remise en forme
    • Santé
  • Style de vie
    • Communauté
    • Nourriture et Repas
    • Sorties
    • Shopping
  • Musique & Vidéo
  • Navigation
  • Actualités et Météo
  • Photographie
  • Productivité
  • Réseaux Sociaux
  • Sports
  • Utilitaires
  • Voyages
    • Guides touristiques
    • Langues
    • Planification
    • Utilitaires de voyage

La bonne nouvelle c’est qu’il y a des sous-rubriques pour les catégories qui seront probablement les plus chargées (jeux, style de vie, etc). Je m’attendais aussi à une sous rubrique dans “productivité”, mais bon, on ne peut pas tout avoir :)
Je suppose aussi que “Musique & vidéos” regroupera les applications du type Netflix, des applications radios, etc. et proposera un lien vers le Zune Marketplace pour le reste.

mini video de Twitterwall

23 août 2010  –   –  0 Commentaires

Une mini video de TwitterWall for Quattrie, un petit module de notre application domotique pour visualiser des tweets sur la télévision ou une tablette.

Quelques pensées sur le Marketplace WP7

14 août 2010  –  Windows Phone 7  –  0 Commentaires

J'ai depuis quelques semaines un iPad, et si le bilan que je fait de ce gadget n'est pas aussi dithyrambique que peux l'être celui fait par la presse, il est clair que l'AppStore est un outil impressionnant. Le trouvant beaucoup moins bien fait que la version disponible pour iPhone/iPod Touch (le nombre encore assez faible d'applications iPad en est peut-être la cause), certaines améliorations me semblent indispensables, et j'espère sincèrement que Microsoft aura pensé aux mêmes afin de faire son Marketplace pour Windows Phone 7.

La catégorisation doit être assez précise

C'était plutôt bien fait sur iPod Touch, mais pour l'iPad, on est loin de l'extase : les categories sont trop peu nombreuses et on se retrouve souvent à parcourir des centaines d'applications pouvant faire des choses TRES différentes...

Filtrer par langue(s) supportée(s)

Ca c'est vraiment la plaie sur l'AppStore : aujourd'hui, les 3 premières pages de la catégorie "Livres électroniques" sont occupées par des publications en chinois... Et ce n'est pas seulement la faute de l'application : la langue associée a l'application est l'anglais... Au temps pour les procédures de validation...

Filtrer par pays

Le complément quasi indispensable au point précèdent : même si une application parle ma langue, elle peut-être d'une inutilité flagrante si elle n'est pas personnalisé pour mon pays. Il y a peu de chance par exemple, que je sois intéressé par une application de suivi de compte bancaire canadienne, qui ne gère que la monnaie et les conditions financières canadiennes.
Il ne faut pas, par contre, que ce soit bloquant : si un jour, je fini par avoir des comptes au canada (oui, je sais c'est quand même hyper peu probable, mais bon...), l'application en question redeviendra intéressante.

Proposer des versions d'essais

Ca je sais que ça existe puisque c'est déjà dans toutes les présentations du Marketplace et que j'ai aussi vu l'API qui correspond :) Je ne sais pas à quel point les développeurs vont jouer le jeu, mais le fait de ne pas avoir à chercher la version "free" d'une application pour la tester est une très bonne idée.

Backup en ligne HP & keepvault

12 avr. 2010  –   –  1 Commentaires

Pour ceux d’entre vous qui ont un MediaSmart, il semblerait (enfin, c’est une façon de parler, la press-release semble assez claire…) qu’HP se soit décidé à proposer KeepVault comme solution de sauvegarde “en ligne”. KeepVault propose deux versions l’une “normale” et l’autre plutôt destinés à une usage Small Office/Home Office :

La version de base permet de sauvegarder un ou plusieurs dossiers partagés de votre serveur et c’est à peu près tout (enfin, vous pourrez quand même restaurer en cas de problème :p), la version pro de son coté permet, en plus de proposer un débit beaucoup plus important, d’accéder à vos données par le web.

Coté tarifs (attention, ils sont en dollars… je sais que ça ne fait pas très sérieux, mais je n’y suis pour rien !) :

  • en version normale, comptez aux alentours de 1$/go à l’année par exemple 40go pour 43$/an (paiement par paypal) ou 211$/an (paiement par CB classique)
  • la version pro est tout de même plus chère : on télécharge 3 fois plus vite, donc on paye environ 3 fois le prix :) 20Go : 65$/an, 200Go : 596$/an

Voila… je vous dirai ce que ca donne dans quelques semaines, je vais prendre une version “de base”, histoire de tester :)

/via WeGotServed

(presque) prêts pour l’arrivée d’un HP slate :)

11 avr. 2010  –   –  7 Commentaires

Allez, quelques nouvelles informations sur notre application domotique, parce que c’est toujours sympa de finir un week-end où l’on a “travaillé” dessus en en parlant. D’habitude c’est plutôt par Messenger avec les quelques amis qui l’utilisent aussi, mais ce blog sera à jamais vide si nous ne faisons pas d’efforts :)

Ce week-end, donc, nous avons bien avancé sur le module “contrôle multimédia” de notre domotique. L’idée était la suivante : faire une application, à destination de la future HP Slate (ou de toute autre tablet fonctionnant sous Win7) et permettant de lire nos videos. Celles-ci sont stockées sur un Windows HomeServer, et sont habituellement lues sur l’un de nos media centers, mais avec l’arrivée – devrai-je plutôt dire le retour ? - de tablettes, regarder un épisode de Chuck ou la fin du film d’hier soir doit pouvoir se faire sans se coller devant la télé.

image

Voici donc l’interface principale que nous avons essayé de réaliser ce week-end. Vous nous pardonnerez, je l’espère, l’impression de “chantier en cours” que vous allez voir dans les quelques copies d’écran, mais nous avons pas eu le temps de finir :)

image

L’idée directrice, encore une fois, est d’être accueillis par notre application : on y retrouve donc dès le lancement les nouveautés disponibles parmi nos vidéos. En fonction des goûts de l’utilisateur connecté (moi, en l’occurrence), le serveur a déterminé que je serai intéressé par l’épisode de Chuck enregistré la veille et des épisodes de Dexter que je n’ai pas encore regardé ! (Bon, il y a une troisième page, mais j’ai eu le droit à un joli message d’erreur quand j’ai voulu la visualiser, du coup pas de capture d’écran… il faudra quand même un jour que j’apprenne à coder un de ces jours…)

Si l’on clique (l’idée étant bien sûr d’utiliser un “touch-gesture” lorsque l’on sera sur la vraie tablette), on arrive sur une interface de sélection des vidéos que l’on souhaite regarder :

image

Il ne reste plus qu’a décider si on regarde l’épisode sur la tablette ou si on l’envoi vers un media center :)

WF4 – Afficher / Cacher des informations dans le designer

18 mars 2010  –  C# | Boulot | WPF | Workflow Foundation  –  0 Commentaires

Je consulte depuis quelques jours pas mal de blogs concernant Workflow Foundation dont celui de Jérémy Jeanson qui contient des tonnes d’informations super utiles. En voyant son billet intitulé [WF4] Activity avec vue détail masquée par défaut, vive WPF!, je me suis demandé si il n’existait pas une solution me permettant, à moi en tant que développeur, de faire la même chose sans trop empiéter sur le boulot du designer.

Donc, le but du jeu, c’est de permettre, dans le concepteur de workflow, de gérer le mode collapse/expand des activités, donc de passer de ca :

image

à ça (enfin, avec des informations utiles, pas simplement avec du texte…):

image

Comme il ne s’agit de modifier l’apparence du contrôle mais bien d’implémenter une fonctionnalité, je ne suis pas fan d’une approche basée sur des ControlTemplates. Je sais bien qu’il ne s’agit que d’un concepteur pour une activité et donc qu’il y a peu de chance qu’un designer passe par là, mais bon, c’est un reflexe :)

Pour faire la même chose, écrivons d’abord un convertisseur qui permet de prendre transformer un booleen en Visibility. En plus, ça pourrait resservir dans plein d’autres cas :

   1: using System;
   2: using System.Collections.Generic;
   3: using System.Linq;
   4: using System.Text;
   5: using System.Windows.Data;
   6: using System.Windows;
   7:  
   8: namespace WorkflowConsoleApplication3
   9: {
  10:     public class VisibleIfTrue : IValueConverter
  11:     {
  12:         #region IValueConverter Members
  13:  
  14:         public object Convert(object value, Type targetType, 
  15:             object parameter, System.Globalization.CultureInfo culture)
  16:         {
  17:             if (value is bool)
  18:                 return (bool)value ? 
     Visibility.Visible : Visibility.Collapsed;
  19:             if (value is bool?)
  20:                 return ((bool?)value).GetValueOrDefault() ?
  21:           Visibility.Visible : Visibility.Collapsed;
  22:             return Visibility.Collapsed;
  23:         }
  24:  
  25:         public object ConvertBack(object value, Type targetType, 
  26:             object parameter, System.Globalization.CultureInfo culture)
  27:         {
  28:             throw new NotImplementedException();
  29:         }
  30:  
  31:         #endregion
  32:     }
  33:  
  34:  
  35: }

L’implémentation est un peu basique, mais on s’en contentera pour les besoins de la démonstration.

Une fois ce convertisseur réalisé, on va pouvoir s’en servir pour afficher ou cacher le contenu du concepteur :

   1: <sap:ActivityDesigner 
x:Class
="WorkflowConsoleApplication3.ExempleDesigner"
   2:     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   3:     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
   4:     x:Name="This"
   5:     xmlns:local="clr-namespace:WorkflowConsoleApplication3"
   6:     xmlns:sap="clr-namespace:System.Activities.Presentation;
     assembly=System.Activities.Presentation"
   7:     xmlns:sapv="clr-namespace:System.Activities.Presentation.View;
      assembly=System.Activities.Presentation"
>
   8:     
   9:     <sap:ActivityDesigner.Resources>
  10:         <local:VisibleIfTrue x:Key="VisibleIfTrue" />
  11:     </sap:ActivityDesigner.Resources>
  12:     <StackPanel>
  13:         <Grid>
  14:             <TextBlock Text="La version minimale du designer" 
TextWrapping
="Wrap" />
  15:         </Grid>
  16:         
  17:         <Grid Visibility="{Binding ElementName=This, 
     Path=ShowExpanded, Converter={StaticResource VisibleIfTrue}}"
>
  18:             <Label Content="des informations supplémentaires"/>
  19:         </Grid>
  20:  
  21:     </StackPanel>
  22: </sap:ActivityDesigner>

Voila ! évidemment, si vous voulez intervertir les deux blocs au lieu de cacher seulement le second, il vous faudra faire le même travail (mais avec un VisibleIfFalse) sur la première grid.