vimeo_php.jpg

Pour ce billet, je vais parler un peu plus du sujet de départ du blog : le code PHP avec un cas concret.
A l’heure du web vidéo, il est fréquent que les visiteurs postent des liens vers des vidéos. Comme pour des raisons de sécurité, il n’est pas possible de les laisser librement utiliser les codes <object>, une solution consiste à transformer automatiquement les URL des pages de services vidéo bien connus (YouTube, pour ne citer que lui) par le lecteur.Le cas suivant s’applique à phpBB, forum on ne peut plus répandu, qui a utilise de méthodes d’encodage/décodage des messages : les URL sont transformées en liens HTML avant que le message soit stocké en base de données, et le message est décodé et les liens HTML sont retraduits en simples URL en texte lorsqu’on souhaite éditer un message.

Les méthodes qui s’en chargent sont dans le fichier $phpbb_path/includes/functions_content.php ($phpbb_path est le chemin de votre installation de phpBB) et se nomment decode_message et make_clickable.

Il y a une petite subtilité : les vidéos Vimeo n’ont pas toutes les mêmes dimensions. Vimeo propose un service d’interrogation de leur base qui fournit des renseignements sur une vidéo, mais malheureusement ça n’est pas suffisant : on n’y trouve pas la hauteur et la largeur. Il faut donc trouver une autre solution : lire la page réelle de la vidéo et y récupérer ses dimensions.
Il faudra donc :

- Trouver les références aux vidéos
- Récupérer les dimensions
- Remplacer les URL par le code du lecteur

 Trouver les références aux vidéos

On utilisera bien sûr les RegExp, ces formules vodoos pour le néophyte qui deviennent rapidement le couteau suisse indispensable du programmeur un fois les bases maîtrisées.

$magic_vimeo_match = ‘#(^|[\s])http:\/\/([w]*.|)vimeo.com\/([0-9]+)#i’;

On cherche une adresse qui débute une chaîne ^ ou | suit un ou plusieurs retours à la ligne, tabulations ou espaces [\s], puis on passe à l’url proprement dite : http:// (on doit protéger les slashes), éventuellement des www. ou rien ([w]*\.|), le nom de domaine et un slash vimeo.com/ et une suite de chiffres, qui est l’id de la vidéo [0-9]+ le tout sans tenir compte de la casse (option de recherche s).
On exécute la recherche dans la chaîne $text et on stocke le résultat dans $video_matches :
preg_match_all($magic_vimeo_match, $text, $vimeo_matches);

Récupérer les dimensions

$url = ‘http://www.vimeo.com/’ . $clip_id;  // avec $clip_id = l’id trouvé avec preg_match_all
$contents = @file_get_contents($url);   // si PHP est configuré pour pouvoir utiliser des URL comme des fichiers, sinon il faut utiliser cURL

Le lecteur est dans un div dont l’id est vimeo_player. On ne garde que le code de la page depuis cette position :

$contents = substr($contents, strpos($contents,'
<p id="vimeo_player'));&lt;/pre&gt; &lt;p&gt;puis on voit que les dimensions sont les premiers attributs width et height. On se fait une petite fonction pour récupérer les attributs html facilement :&lt;/p&gt; &lt;p&gt;// fin zzzombie vimeo&lt;/pre&gt; &lt;p&gt;et juste après la fonction make_clickable :&lt;/p&gt; &lt;pre lang=">// zzzombie
function get_html_attribute_param($html, $attribute)
{
  $match_numeric_attribute = '#(^|[\s])' . $attribute . '([\s]*|)="(.*?)"#is';
  preg_match($match_numeric_attribute, $html, $attribute);
  return $attribute[3];
}
// fin zzzombie

et hop ! on récupère :

$width = get_html_attribute_param($contents, 'width');
$height = get_html_attribute_param($contents, 'height');

Remplacer les URL par le code du lecteur

Bon… eh bien c’est fini, il suffit de procéder à la substitution, non sans oublier de mettre un marqueur pour simplifier le décodage ultérieur. Pour bien s’intégrer dans le process phpBB, on va faire ça en expression régulière, mais on pourrait faire ça plus rapidement avec des str_replace, puisqu’on sait exactement quelle chaine remplacer (c’est le premier élément d’un tableau de résultats, c’est pour ça que les ensembles matchés commencent à 1), et par quoi la remplacer.


Voilà le code final, prêt à l’emploi pour phpBB 3

Dans la fonction make_clickable, juste avant la ligne
// relative urls for this board

insérez

// zzzombie vimeo
// factorisation de paramètres du lecteur. On pourrait aussi mettre l'autoplay, le fullscreen...
$show_title = 1;
$show_byline = 1;
$color = "00FFFF";
 
$magic_vimeo_match = '#(^|[\s])http:\/\/([w]*.|)vimeo.com\/([0-9]+)#i';
preg_match_all($magic_vimeo_match, $text, $vimeo_matches);
 
foreach ($vimeo_matches[3] as $clip_id)
{
	$url = 'http://www.vimeo.com/' . $clip_id;
	$contents = @file_get_contents($url);
	$pos = strpos($contents,'<div id="vimeo_player');
	if ($pos !== FALSE)
	{
		$contents = substr($contents, strpos($contents,'<div id="vimeo_player'));
		$width = get_html_attribute_param($contents, 'width');
		$height = get_html_attribute_param($contents, 'height');
		// la largeur max des vidéos est de 400px pour les lecteurs exportés
		// en pratique, ça passe pourtant très bien avec la largeur de vimeo.com,
		// alors la mise au format est désactivée (false &amp;&amp; =&gt; jamais vérifié)
   		if (false && $width>400)
		{
			$height = floor($height*400/$width);
			$width = 400;
		}
 
		$magic_url_match[] = '#(^|[\s])http:\/\/([w]*.|)vimeo.com\/' . $clip_id . '#i';
		$magic_url_replace[] = "\$1" . '<!-- vimeo --><object height="' . $height . '" width="' . $width . '">'
						. '<param name="allowfullscreen" value="true"><param name="allowscriptaccess" value="always"><param name="autoplay" value="0">'
						. '<param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=' . $clip_id . '&amp;server=www.vimeo.com&amp;show_title=' . $show_title . '&amp;show_byline=' . $show_byline . '&amp;show_portrait=0&amp;color=' . $color . '&amp;fullscreen=1">'
						. '<embed src="http://www.vimeo.com/moogaloop.swf?clip_id=' . $clip_id . '&amp;autoplay=0&amp;server=www.vimeo.com&amp;show_title=' . $show_title . '&amp;show_byline=' . $show_byline . '&amp;show_portrait=0&amp;color=' . $color . '&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" height="' . $height . '" width="' . $width . '">'
						. '</object><!-- vimeo -->';
		$i++;
	}
}
// fin zzzombie vimeo

et juste après la fonction make_clickable :

// zzzombie
function get_html_attribute_param($html, $attribute)
{
	$match_numeric_attribute = '#(^|[\s])' . $attribute . '([\s]*|)="(.*?)"#is';
	preg_match($match_numeric_attribute, $html, $attribute);
	return $attribute[3];
}
// fin zzzombie

Pour décoder les messages, c’est encore une regexp, alors inutile de s’étendre et voici le code : dans la fonction decode_message, sous
$message = str_replace($match, $replace, $message);

insérez :

// zzzombie
$match = array('#<!--\-\- vimeo \-\-->.*?clip_id=(.*?)\&amp;.*?<!--\-\- vimeo \-\-->#');
$replace = array('http://www.vimeo.com/\1');
$message = preg_replace($match, $replace, $message);
// fin zzzombie

Vous remarquerez que toutes les modifs sont encadrées de
// zzzombie
// fin zzzombie

C’est une bonne habitude à prendre quand vous modifiez des produits open source : en utilisant un commentaire spécial, vous pourrez localiser facilement vos modifications sans devoir faire des comparaisons avec les fichiers originaux.

Voilà, c’est tout pour cet épisode qui j’espère vous aura été utile.

Pour avancer rapidement dans son travail et éviter au maximum ses aspects déplaisants, un développeur doit avoir des bons outils.

Voici ma liste d’indispensables :

YummyFTP : Le meilleur client FTP/SCP que je connaisse, toute plate-forme confondue. Et ce pour une bonne raison : c’est un vrai produit OS X. J’entend par là qu’on a accès à toutes les vues classiques du Finder, dont Présentation qui est idéale pour naviguer sur un serveur distant à mon avis, et qu’il affiche les couleurs (Etiquettes) assignées aux fichiers et dossiers dans le Finder.
Bien entendu, il dispose de toutes les options évoluées des clients FTP : prévisualisation, édition directement en ligne, filtres, interface configurable…
De plus, il est très rapide et très stable; je n’en dirais pas autant de son concurrent le plus connu, Transmit, qui est vraiment très au-dessous.
YummyFTP coûte $25, soit 17,05€ au moment où j’écris ces lignes. Vu le temps qu’il fait gagner par rapport aux autres, il les vaut bien.

VMWare Fusion, bien sûr, parce qu’il faut parfois aller corriger un “bug” qui n’existe que sous IE, avec ses outils habituels du Mac. VMWare Fusion est vraiment impeccable : le Windows tourne à bonne vitesse, il est possible de le faire fonctionner dans une fenêtre ou de laisser les fenêtres Windows envahir votre OS X comme si elles étaient chez elles avec le mode Unity.
Séduisant au départ, ce mode a vite tendance à être crispant puisqu’on se tape toutes les infos-bulles de Windows et autres petits détails de l’”ergonomie” selon Redmond.
Ploup! “Tu devrais nettoyer ton bureau, j’ouvre l’assistant ?”
Ploup! “J’ai des mises à jour”, dit Windows
Ploup! “Moi aussi”, dit Acrobat Reader
Ploup! “Moi aussi”, dit le pilote de l’imprimante
Ploup! “Moi aussi”, dit le pilote de la caméra
Ploup! “Une nouvelle version est disponible” dit un plugin
Ploup! “J’ai installé une mise à jour, c’est du sérieux et je vais rebooter dans 5 minutes si tu ne fais rien”, dit l’expert en sécurité qu’est XP

VOS GUEUUUUUUULES !
Rallumer un PC après une pause d’un certain temps, c’est vraiment très pénible. Bref !
VMWF est impeccable, et le luxe ultime est le partage du presse-papier (Ctrl sous PC, hein, la touche Commande (Pomme) est considérée comme la touche Windows) ou encore le drag’n'drop d’OS X vers Windows et vice-versa.
A $80 plus le prix d’un Windows, ça fait cher la daubasse, mais tant qu’il y aura des gens pour utiliser IE… il faudra bien tester. Et c’est pas Wine/CrossOver qui va vous permettre de le faire dans de bonnes conditions, malheureusement.

Eclipse, bien sûr… l’IDE moche, qui rame, qui buggue et qui malgré ses défauts reste surpuissant.Tiens, Ganymede finale c’est aujourd’hui au fait…

OpenOffice.org pour lire les documents de vos correspondants, bien sûr. Par contre de votre coté, vous pouvez essayer iWorks pour faire de magnifiques factures en PDF avec Pages ou encore des présentations très vendeuses avec Keynote. Vraiment, je le trouve nettement plus agréable à utiliser que les autres suites bureautique, et comme tout codeur, je ne suis pas fan des séances de traitement de texte, de facturation, de compta… et ben avec iWorks ça passe. 79 €, la version d’évaluation est utilisable 30 jours pour voir si effectivement, ça vaut le coup d’avoir uniquement des logiciels agréables plutôt que d’en rajouter dans la souffrance avec une suite bureautique un peu foireuse : http://www.apple.com/fr/iwork/trial/

Un plugin pour Safari,quand même : SafariSource pour avoir une colorisation syntaxique du code. Et bien sûr, on affiche le menu de débug en tapant dans le Terminal :

defaults write com.apple.Safari IncludeDebugMenu 1

Et pour Firefox, la Web Developer Toolbar pour sa combinaison de touche Cmd + Shift + Y qui permet d’encadrer l’élément sous la souris et avoir son chemin complet du DOM, un peu à la manière de l’inspecteur de Safari. Ou encore LiveHTTPHeaders, qui permet de voir ce qui transite et repérer les transferts AJAX ou Flash et voir les paramètres d’appel en GET (par exemple).

Fink éventuellement, si votre serveur web est tourne sous un Unix et que vous voulez retrouver vos commandes indispensables (apt-get, locate… oui je sais, locate c’est pas idéal pour la sécurité, updatedb me l’a rappelé mais bon… Spotlight n’est pas suffisant pour un développeur à mon avis)

Voilà, c’est tout… en espérant que ça vous ait permis de découvrir au moins un logiciel - et que ce soit YummyFTP. Car tout le reste n’est qu’un prétexte pour parler de YummyFTP et vous faire quitter Transmit si vous l’utilisez ;-)

Intéressé par l’esprit de Snow Leopard (du moins l’un de ses aspects ; l’optimisation de l’occupation de l’espace disque), j’ai découvert récemment XSlimmer. Son principe : réduire la taille des applications en virant les configurations de langues inutiles, et le code PPC quand on est en Intel (et vice-versa).

Quelques tests convainquants sur Firefox 3 et Eclipse plus tard, je tente l’opéraion sur des composants que j’utilise sans arrêt, dont le Terminal, un outil indispensable quand on développe pour le web. Et ça fonctionne, c’est génial !
Sauf qu’après reboot, le Terminal ne m’affiche plus d’invite. C’est quand même c*n pour un bash, n’est-ce pas ?

Je n’ai plus eu comme solution que de relancer le Mac avec le disque d’installation de Leopard inséré, d’appuyer sur C pendant le boot et de lancer le Terminal du CD d’install pour recopier le Terminal.app original sur celui corrompu par  XSlimmer.

Conclusion : n’utilisez XSlimmer qu’en connaissance de cause. C’est vrai, le principe est intéressant, si vous utilisez un portable c’est d’autant plus utile pour les maniaques de l’économie d’énergie (bah oui, charger moins de données, c’est faire moins travailler les parties mécaniques); par contre si vous êtes newbies et qu’un problème tel que celui décrit vous arrive, vous risquez de rester bloqués bien longtemps.

Si vous faites régulièrement des tests avec des recherches commençant par site: afin de voir ce qui est indexé sur votre site (ou une partie de votre site), vous êtes forcément tombés sur la page :


 ”Nous sommes désolés…… Votre requête ressemble étrangement à des requêtes automatisées provenant d’un virus informatique ou d’une application de type spyware. Nous devons protéger avant tout nos utilisateurs et ne pouvons traiter votre requête pour l’instant.” (…)

Aujourd’hui, je suis tombé pour la première fois sur une autre page me signifiant la même chose, mais comprenant un CAPTCHA pour pouvoir continuer tout de même. C’est une très bonne chose étant donné le niveau de paranoïa actuelle qui empêche d’utiliser normalement cette fonction avancée de Google, mais malheureusement ça n’arrive que de temps à autres.Est-ce un test qui vient d’être mis en place et qu’on ne voit que rarement, ou bien est-ce que Google a interprété différemment ma manière de faire, m’a laissé le bénéfice du doute et donné une chance de prouver que j’étais un humain ?

Mystère…

Google : captcha

Alors que jusqu’à il y a peu, la fondation Mozilla et son boss européen, Tristan Nitot, étaient plutôt fair-play avec les autres compétiteurs. Depuis quelques temps je constate une attitude beaucoup, beaucoup moins sympathique.

Dénigrement de la concurrence, appropriation de la paternité des inventions des autres, fanfaronnade : c’est vraiment plus le Mozilla des débuts.

Dans la liste des griefs récents :

  • présentation de la “barre géniale” comme une invention de Mozilla alors qu’Opéra propose la même chose depuis un moment, et que celle d’Opéra 9.5 va plus loin que celle de Firefox 3 en cherchant non seulement dans les URL et titres des marques-pages et l’historique, mais également dans le contenu même des pages;
  • présentation du zoom appliqué à la page entière et non seulement au texte comme une innovation alors qu’Opéra fait la même chose depuis des années !
  • présentations de benchmarks faussés qui comparent une build de Firefox contre une finale de Safari. Firefox sortait vainqueur… mais perdait nettement face à une build de Webkit
  • recopie d’une alerte de sécurité de Microsoft concernant Safari par Tristan. Une vraie honte puisque si Safari n’applique pas correctement les guidelines de MS, le véritable fautif permettant d’exécuter du code malicieux est Internet Explorer. Chose dite et redite avant la copie de ce bulletin minable.
  • Un comparatif FF/Safari sur la page de téléchargement qui concède à Safari “Compatible with modern Web pages and technologies”. Par contre, seul Firefox est sensé avoir été “Created to promote openness, innovation and opportunity on the Web”. Mozilla aurait-il oublié les origines de Safari, que Webkit est open-source et que le code est réutilisé par de nombreux produits non liés à Apple (à priori, plus que Gecko d’ici peu de temps si ça n’est déjà le cas) ?
    De même, Firefox est - selon Mozilla - le navigateur le plus sécurisé. Présenté de manière très pompeuse : “Battle-tested security process and the industry’s fastest response times”… Firefox : oui, Safari, non.
    Quelqu’un a révélé une faille critique affectant Firefox 2 et 3 seulement 5 heures après le lancement de ce dernier.
    Coincidence ou sens de l’ironie ?
  • Tristan publie un billet sur Opera 9.5 : “je n’ai pas réussi à le télécharger” et des insinuations sur la sortie précipitée d’Opéra pour profiter de l’exposition médiatique de la sortie de FF3. Mozilla.com était aussi HS pendant des heures hier. Et si Firefox 3 ne pompait pas les idées d’Opéra en se les attribuant, peut-être que les choses seraient différentes.
  • Le Download Day, une opération médiatique ridicule pour rentrer dans le livre Guiness des records (et faire bouchonner les serveurs)

Depuis, Mozilla a annoncé Firefox 3.1. Qu’y aura-t’il de nouveau ?
La Navigation Privée. Comme dans Safari. Nulle doute que Mozilla en revendiquera la paternité…
Peut-être que Weave sera intégré afin d’avoir une réponse face à la synchronisation en ligne d’Opéra. J’imagine qu’ils annonceront que Firefox est le premier à le permettre.

A part ça, j’écris mon billet avec la version développeur de Safari 4.
Au niveau des fonctionnalités, rien de neuf ou presque pour l’instant : il est tout de même possible de sauvegarder les pages web comme des applications, comme ce que permettait déjà Fluid inspiré de Prism (qui pour le coup, a été inventé par Mozilla).

Ce qui change principalement, c’est la version de Webkit utilisée et qui inclus SquirrelFish. Ca tourne vraiment très, très vite. Ci-dessous, quelques benchs faits par Webkit.org (plus le chiffre est élevé, mieux c’est), mais si vous utilisez iGoogle ou Gmail vous vous en rendrez compte sensiblement.

Pour que Firefox revienne dans la coure, il faudra attendre l’inclusion dans Firefox 4 de Tamarin développé à la base par Adobe - qui n’est pas franchement un projet 100% open-source, soit dit au passage.
Et Tamarin sera-t’il encore dans le coup à la sortie de Firefox 4 et après que Safari 4 ait fait parler la poudre ?

Et si finalement, Mozilla commençait à utiliser des techniques de communication douteuses parce qu’ils sentent qu’ils ne sont plus en avance technologiquement parlant ?

A l’heure actuelle, à part IE, tous les navigateurs ont leurs avantages :
- Safari a la vitesse pour lui (sur Mac, il suffit de scroller pour voir que le moteur de rendu graphique et l’interpréteur de scripts ne sont pas les seuls facteurs à prendre en compte), et un excellent inspecteur d’objets DOM.
- Opéra a le Speed Dial, le client bittorrent intégré, un débuggeur javascript excellent intégré d’office, des widgets.
- Firefox a pour lui une approche moderne des bookmarks (avec l’étoile de la barre d’adresse et les tags), une interface souvent bien pensée (son système de sauvegarde de mots de passe est le plus pratique des trois, par exemple), une bonne stabilité, une bonne équipe chargée de la sécurité, et surtout un écosystème très riche.

Comme quoi Firefox 3 a de sérieux arguments pour qu’on l’adopte… ce qui rend l’attitude de Mozilla encore plus incompréhensible.
Pourvu que ça change !

Voilà un titre bien atroce, spécialement dédié aux gogos qui comme moi on cherché un bon moment comment avoir autre chose qu’une icône neutre afin de s’y retrouver plus rapidement dans les dossiers remplis de vidéos Flash au format .flv

En fait, le problème ne se pose pas ainsi : il faut chercher un moyen de l’afficher avec QuickLook et l’icône suivra. Cette technique ne fonctionne donc qu’avec Leopard, à priori.

1. Il faut avoir installé Perian, mais vous l’avez probablement fait
2. Télécharger le plugin ici : http://homepage.mac.com/xdd/software/flv/
3. Copier flv.qlgenerator dans Bibliothèque -> QuickLook
4. Appliquez les changements immédiatement : en ligne de commande, tapez qlmanage -m
Si vous êtes du genre bourrin, vous pouvez remplacer le 4 par un redémarrage du Finder (Menu Pomme -> Forcer à quitter -> Finder-> Relancer) et si vous êtes patient, attendre votre prochaine session.

Au passage, en tant que développeurs web, vous pouvez avoir l’utilité de ces autres  plugins :

En allant voir si un mot de passe ne m’était pas arrivé dans les spams de Gmail, je trouve… des mails de MailInBlack me demandant de confirmer mon identité.

Pour ceux qui ne connaîtraient pas le principe, MailInBlack demande à ceux qui envoient des emails à leurs abonnés de saisir un CAPTCHA pour (soit-disant) s’assurer qu’il ne s’agit pas de spam.

D’une part leur CAPTCHA est nul et n’importe quel logiciel un peu évolué  peut le cracker, c’est certain. De plus, je n’aime pas trop le principe : comment être certain que MailInBlack n’est pas une société qui fait elle-même de la collecte d’emails ?

Et enfin, le code de confirmation n’étant pas attendu et arrivant dans les spams (dans mon cas), mes emails étaient bloqués et si je n’avais pas regardé mes spams pour une raison n’ayant rien à voir avec les mails que j’avais envoyés, je ne l’aurais jamais su et ils ne seraient jamais parvenu à leur destinataire.

Merci MenInBlack. Merci aussi pour la qualité technique de votre service : j’ai dû passer un bon quart d’heure pour réussir à passer la confirmation, la page mettait un temps fou à charger et je n’ai pu y accéder et confirmer qu’après un bon paquet de timeouts.

Grrrrr…

Aujourd’hui une alerte m’a prévenu qu’une nouvelle version de Silverlight était disponible. J’ai donc voulu le désinstaller mais je ne savais pas comment faire.
Je n’ai rien trouvé en français, alors si vous ne pensez pas à chercher en anglais, la réponse est de saisir en ligne de commande :

rm -rf /Library/Internet\ Plug-Ins/Silverlight.plugin
rm -rf /Library/Receipts/Silverlight*.pkg
rm -rf ~/Library/Application\ Support/Microsoft/Silverlight

“Il doit bien y avoir plus simple et plus propre ?” pensez-vous… eh bien à priori non, la démarche étant indiquée par un développeur (ou une développeuse, plutôt) de MS : http://silverlight.net/forums/t/3965.aspx

Un article de 01.net donne des pistes pour Windows 7. Pour corriger certains problèmes, ils proposent une solution simple : s’inspirer d’OS X.
Et pourquoi pas l’inverse ?

- Sécurité : Plutôt que de sécuriser vraiment l’OS de manière trop discrète, OS X devrait afficher plus de fenêtres d’alerte et de confirmation pour que l’utilisateur se sente protégé. De plus, ces alertes “de rappel” ont le même effet que le gendarme au bord de la route : il est certain que leur simple présence effraie la plupart des pirates et hackers de tout poil, et l’OS devient un modèle de sureté.

- Des mises à jour plus explicites : Une bonne mise à jour mérite un reboot pour marquer le coup. On a coutume de sabrer le champagne pour fêter un événement heureux, en informatique le reboot a exactement le même sens. Celà apporterait une touche festive à un OS bien trop austère.

- Une interface plus claire : A la fin d’une mise à jour, il faut que l’OS reboote tout seul après un compte à rebours très court. L’utilisateur parti aux toilettes, fumer une clope ou prendre un café aura ainsi la joie de se retrouver devant un OS “tout frais” débarrassé des fenêtres inutiles.

- Améliorer la productivité : l’étude comportementale de l’utilisateur face à un compte à rebours avant un reboot non sollicité a démontré qu’il augmentait furieusement sa productivité dans le laps de temps imparti : sauvegarde expresse, rédaction d’email terminée en un clin d’oeil… L’utilisateur a besoin d’échéances courtes pour rester motivé et productif. Un OS gourmand en ressources a l’avantage d’épuiser rapidement les batteries d’un ordinateur portable et de motiver l’utilisateur à être productif durant le cours temps que l’OS lui permet d’utiliser sa machine.
OS X devra être plus gourmand en ressources système.
- Une interface plus créative améliore l’attention de l’utilisateur. Il est effrayant de constater que les logiciels d’Apple sont tous basés sur des principes identiques. L’utilisateur effectue ses opérations sans vraiment se concentrer dessus et n’utilise qu’une partie de ses capacités. Windows a une approche bien meilleure et créative, en appliquant le principe du “un logiciel = une interface”.
L’utilisateur utilise pleinement son potentiel intellectuel en se concentrant à la fois sur la tâche qu’il veut effectuer, et sur les logiciels qu’il utilise.
Quand IE7 est arrivé sur le marché, il a immédiatement suscité l’admiration des ergonomes : l’idée de placer le menu à droite était un véritable coup de génie, rien de moins.

- Une meilleure compatibilité avec les formats de fichiers et protocoles. OS X est très décevant à ce niveau pour l’utilisateur avancé. Apple devrait créer d’avantage de nouveaux formats et protocoles afin de donner à ses clients la joie d’avoir le seul système capable de les exploiter.
Les standards, ça va bien un moment, mais ça devient vite monotone. Heureusement, ces dernière années les choses s’améliorent, notamment grâce à iTunes, mais une partie des développeurs d’Apple semblent vouloir ruiner ces efforts (OS X ayant une base BSD, Safari utilisant Webkit et autres ignominies collectivistes).

Si vous avez vous-mêmes d’autres suggestions, n’hésitez pas à m’en faire part par vos commentaires.

En lisant un article sur ArsTechnica, je suis tombé sur un mot que je ne connaissais pas : “cruft”.Comme d’habitude, une pression sur F4 m’amène aux Widgets d’OS X où se trouve mon traducteur qui manque de chance, n’est pas en mesure de me traduire ce mot.Je me met alors en quête d’un autre traducteur ayant un vocabulaire plus étendu.Premier réflexe : chercher sur le site d’Apple… force est de constater que leur annuaire de Widgets est loin d’être parfait - je n’ai même pas trouvé de fonction de recherche.Je cherche donc une alternative sous la forme d’un Google Gadget à mettre sur ma page d’accueil.C’est pas aussi bien mais après tout, si ça peut rendre service…J’en trouve finalement un qui me convient bien : non seulement il cherche la traduction mais aussi la définition sur Wikipédia. Cruft étant du “slang informatique”, un traducteur classique ne pouvait pas me renseigner (pas plus que le Robert & Collins d’ailleurs).Malheureusement, s’il existe des déclinaisons de ce gadget pour la sidebar Vista et nombre de réseaux sociaux, il n’existe pas en tant que Widget OS X.Et voilà comment je me suis retrouvé à installer Google Desktop pour Mac (http://desktop.google.com/fr/mac/), avec la promesse de pouvoir installer les Google Gadgets en tant que Widgets OS X.J’avais lu récemment dans MacGeneration que Google avait maintenant un département spécialisé dans le développement Mac, et qu’ils suivaient les recommendations d’Apple pour faire de beaux logiciels intégrés à OS X.En réalité il n’en est rien.Pour tout dire, j’ai eu la très désagréable impression de retrouver un bout de Windows dans mon OS X.Dès l’installation, ça commence mal : on a le droit à un programme spécialement dédié à l’installation, dans lequel on peut choisir les modules à installer.Ce programme ajoute deux icônes plus un dossier dans les Application, dans la plus pure tradition de Windows où chaque programme vient un peu plus mettre la pagaille dans le menu Démarrer.Le design du programme de choix des modules est hideux, ne respecte pas les standards d’Apple et affiche une prévisualisation de Google Earth ignoble, sans anti-aliasing qui choque franchement l’oeil habitué à un OS où le lissage est la norme. Sous XP, ça ne m’aurait peut-être pas choqué, mais là… le manque de finition a vraiment du mal à passer.Contrairement à ce que j’avais pu lire ailleurs, Google Desktop Mac ne s’appuie pas sur Spotlight mais réindexe tous les documents. D’emblée, sans rien demander et en indiquant que cette indexation peut prendre plusieurs heures. Encore une fois, un comportement typique de programme Windows qui se fiche bien de l’utilisateur et qui prend la main “pour son bien”.Bref, j’arrête l’indexation et tente d’ajouter mon Gadget en tant que Widget : peine perdue, tous ne sont pas compatibles… et c’est le cas de celui que je comptais ajouter.Alors pourquoi garder Google Desktop ? N’ayant pas la réponse, je glisse les éléments qu’il a placé dans Application à la corbeille.C’aurait été trop simple et trop standard, il faut en fait passer par le programme de gestion des installations de Google Desktop. So Windows : un programme, un désinstalleur.En avant pour la désinstallation, plutôt rapide… qui se termine par un message :”Vous devez redémarrer votre ordinateur pour terminer la désinstallation”.Lamentable.Au final, j’ai eu la très désagréable sensation que Google ne faisait aucun effort pour réaliser quelque chose de correct pour OS X.Il est possible que ce soit typique d’une société de services autour d’Internet. Les éditeurs de produits Web ont souvent l’illusion que le web est tout ce qui compte et que finalement, ce qui se passe en dehors du navigateur n’a plus vraiment d’importance.A mon sens c’est une vision complètement biaisée de la réalité.Malheureusement, je crains que la part de marché grandissante du Mac ne nous fasse rencontrer de plus en plus souvent des logiciels médiocres, qui nous rappellent ce qui est la norme sur la plate-forme de Microsoft.Il ne reste qu’à croiser les doigts et espérer qu’au final, ce soit l’approche de Mozilla avec Firefox 3 qui prime, en proposant des déclinaisons qui tentent de respecter au mieux le look’n'feel de son O.S. hôte.En attendant, il risque de se passer un moment avant que je tente d’installer sur mon Mac un autre programme édité par Google.

Plus anciens »