lundi 6 février 2012

déroutant doodle Truffaut


J'aime les belles choses inutiles, autant pour leur beauté, que pour leur absence manifeste d'utilité, ce qui leur confère une certaine noblesse artistique. Les doodles de google en font partie. Il s'agit de ces petits logos constituant parfois la majeur partie de la premier page du fameux moteur de recherche, et qui peuvent évoluer au fur et à mesure des évènements du calendrier à l'instar d'un 200ème anniversaire de Charles Dickens.

Celui qui me fait réagir c'est celui consacré au 80ème anniversaire de François Truffaut, monument de la nouvelle vague et du cinéma hexagonal. Ce doodle, premier d'un triptyque, présente une image d'une beauté formelle et d'une force artistique évidentes. Ce qui motive mon ressentiment ne concerne pas l'esthétique, mais l’inadéquation de celui-ci avec ce que représente pour moi ce grand personnage. J'ai ainsi passé plus d'une minute à tenter de deviner l'objet de ce petit logo.

Suis-je devenu un vieux schnock, ou alors le personnage de François Truffaut est-il devenu si mystérieux pour les nouvelles générations. Et pourtant symboliser Truffaut était assez simple: Truffaut est l'homme qui a fait redécouvrir Hitchcock à travers des entretiens, qui a inspiré Spielberg dans rencontre du troisième type, qui popularisé la notion de nuit américaine, qui a lui-même tant aimé les femmes, qui a si bien décrit la révolte de l'enfance, qui a mélangé l'image et l'écriture, et qui a tant aimé le cinéma pour ce qu'il est: un art collectif et intime à la fois.

Le plus triste, c'est peut-être de découvrir que l'on devient vieux quant on prend conscience du décalage entre sa propre culture et celle du présent. Mais tout est relatif: le doodle de Dickens subit le même traitement inadéquat, mais avec cette fois une esthétique plus que discutable. Pauvre Dickens: Truffaut n'est finalement pas si mal loti. Son mystérieux doodle est pour le mieux superbe.

lundi 28 novembre 2011

Voyager peut-il augmenter notre bohneur?


Quant on part voyager loin de nos contrées, de par notre statut de pays riches, nous sommes condamnés à faire du tourisme parmis des pays bien moins fortunés que le notre. Au delà du débat ethique que peut provoquer cette différence de richesse, je trouve cela positif, tant pour notre ouverture d'esprit, que pour notre quête du bohneur. Ce genre de voyage permet à chacun de comparer son propre niveau de vie à celui de personnes bien moins prospères. Cela est à mon humble avis une excelente chose. Cela permet aussi de mesurer la chance que l'on a de vivre en France. Bonus supplémentaire: on redécouvre qu'il y a sur notre planète bien d'autres moyens pour être heureux au delà de la richesse matériel.

En même temps, c'est clairement un discours de riche. Et par dessus le marché, cela n'empèchera pas les habitants d'un pays aisé comme le notre d'être beaucoup moins heureux que d'autres pourtant moins bien lotis en terme de richesse et de sécurité. C'est le paradoxe incroyable de la courbe du bonheur en fonction de la richesse, et que l'on peut résumer à une forme de cloche.

PS:
Et si jamais vous n'avez ni le temps ni les moyens de voyager chez plus pauvre que vous, il vous restera tout de même la télévision, et plus particulièrement les émissions pseudo touristico-culturelle qui vante la beauté des endroits restés naturels, et dont le fleuron restera le célèbre "Voyage en terre inconnue", idéal pour pleurer en tant que simple spectateur devant le bonheur mis en scène d'une vie simple d'une peuplade imperméable au désir matériel, en apparence. Le monde qui nous entoure sera "apparences" ou ne sera pas, bien au delà du spirituel. Car l'emission n'avouera jamais que notre mode de vie fascine terriblement, même les personnes les plus nobles, et que ce type d'émission contribuera à détruire plus rapidement ces modes de vies alternatives.

jeudi 29 septembre 2011

Le syndrome du timide exhibitionniste




Réaliser un blog est une activité à risque, surtout pour les plus jeunes d'entre nous.
Pour éviter ce risques potentiels, il est nécessaire de respecter quelques règles essentielles, fort nombreuses et pas toujours évidentes. Plutôt que d'en faire l'ennuyeuse énumération, je préfère l'usage d'un principe à respecter: n'écrivez pas quelque chose que vous n'oseriez pas crier dans parmi des gens que vous ne connaissez pas.
Cela se résume à éviter la tentation de l'exhibitionnisme, ou plus simplement à ne pas écrire des propos que l'on pourrait regretter plus tard, une fois dégrisé. La publication d'un blog est comparable à la prise de parole devant une foule de plusieurs milliers de personnes. Internet n'est pas un lieu où l'on peut chuchoter, car tout ce que vous y dites peut devenir un hurlement. Ne pas l'oublier pourra peut-être vous éviter quelques erreurs.

Malheureusement, de nombreux bloggers oublient cette règle de bon sens, et finissent par tomber dans le paradoxe du timide exhibitionniste.

jeudi 22 septembre 2011

Excel et son incapacité à exporter des données

Comment transformer une table Excel en fichier CSV UTF-8

Ce genre de question peut rapidement devenir énervante. Excel fournie des moyens incroyables pour réaliser 80% des besoins de ses utilisateurs. On peut ainsi gagner un temps précieux. Malheureusement, on arrive très rapidement sur des cas d'usage en dehors de ces 80%, comme par exemple l'exportation d'une table Excel vers un simple fichier txt de type CSV. C'est quant on arrive sur ce genre d'obstacle que l'on paye une grande partie du temps économisé.



Source VBA

Voici donc un exemple de code VBA permettant d'exporter une feuille Excel (onglet "message", zone "a:f") en fichier CSV de type UTF-8 ("e:\tmp\excel\messages-utf8.csv"):


Sub exporter_messages()
'
' exporter_conversations Macro
' arguments:

'    fichier_CSV
'    Onglet source du tableau à exporter
'    zone source à exporter dans l'onglet précédent
'
Dim fichier_out As String

fichier_out = "e:\tmp\excel\messages-utf8.csv"
fichier_out = Zone2CSV_UTF8(fichier_out, "messages", "a:f")

End Sub




'==================================================
Public Function Zone2CSV_UTF8(fichier As String, Onglet As String, Zone As String)
Dim nb_l, nb_c, c, l As Integer
Dim ligne As String
Dim objStream As ADODB.Stream


' init stream
Set objStream = New ADODB.Stream
objStream.Open
objStream.Charset = "utf-8"
objStream.Type = adTypeText
objStream.LineSeparator = adCRLF
objStream.Position = 0



nb_c = Worksheets(Onglet).UsedRange.Columns.Count
nb_l = Worksheets(Onglet).UsedRange.Rows.Count

With Worksheets(Onglet).Range(Zone)
 For l = 2 To nb_l ' première ligne de titre à éviter
   ligne = ""
   For c = 1 To nb_c
    ligne = ligne & Replace(Replace(Replace(.Cells(l, c), "\r", " "), "\n", " "),";", ".") & ";"
   Next c
  objStream.WriteText ligne, adWriteLine
 Next l

End With

objStream.SaveToFile fichier, adSaveCreateOverWrite
' close up and return
objStream.Close
Set objStream = Nothing
Zone2CSV_UTF8 = RemoveBOM(fichier)

End Function

'====================================
Public Function RemoveBOM(filePath)

' Create a reader and a writer
Dim writer, reader, fileSize
Set writer = CreateObject("Adodb.Stream")
Set reader = CreateObject("Adodb.Stream")

' Load from the text file we just wrote
reader.Open
reader.LoadFromFile filePath

' Copy all data from reader to writer, except the BOM
writer.Mode = 3
writer.Type = 1
writer.Open
reader.Position = 5
reader.CopyTo writer, -1

' Overwrite file
writer.SaveToFile filePath, 2

' Return file name
RemoveBOM = filePath

' Kill objects
Set writer = Nothing
Set reader = Nothing
End Function



La procédure supprime également les caractères parasites ou dangereux dans les champs de la table: les caractères CR, LF, ;. Cela permet de sécuriser l'export des données en filtrant les caractères qui empêchent une importation sans faute vers une BdD. Ne pas oublier de cocher dans la liste des "références" de VB, l'ActiveX 2.5 (voir la copie d'écran ci-dessus).

Solution alternative sans VBA
La solution la plus simple sans VBA est de passer par le menu "enregistrer sous..." d'Excel, en choisissant le format text unicode comme format de sauvegarde. On utilise ensuite Notepad pour traduire le fichier ainsi créé de la même manière mais cette fois en UTF-8. Malheureusement cette procédure peut contenir des surprises: on peut se tromper (l'erreur est humaine), impossible de le faire en macro facilement (la fonction "enregistrer sous" ferme le classeur en cours), on ne peut pas maitriser le format CSV (CR, LF ou CRLF; délimiteur particulier, etc...). Trop d'imprévus, surtout si on doit répéter l'opération pour plusieurs tables et régulièrement: cela ne fonctionne qu'une table à la fois.


Pourquoi Excel ne fait pas d'exportation de table vers un autre format?

Je n'ai pas de réponse officielle à cette question, mais j'ai bien une idée: AMHA, MS refuse qu'Excel devienne un logiciel pivot pour la gestion des données d'une base de données. Je désigne par logiciel pivot, le fait de pouvoir utiliser Excel comme un moyen de modifier certaines données de référence d'une BdD. Excel est capable d'importer des données d'une BdD, mais interdit l'opération inverse, ce qui empêche l'utilisateur de modifier les données dans Excel pour le remettre dans la BdD. Excel est ainsi contraint de rester un simple logiciel de consultation. Le but inavoué serait de réserver la gestion des données d'une BdB aux autres logiciels de MS, Access ou SQL server. C'est pour cela que selon moi on bride Excel. Le marketting des produits d'un grand groupe tel MS accouche toujours de ce genre de bridage, même si cela va à l'inverse de la simplicité et de l'efficacité. Ainsi va le monde

Lien qui ont servie à la rédaction:



lundi 25 juillet 2011

Il n'est jamais trop tard....

Cette affiche de film m'a interloqué. Voir Tom Hanks et Julia Roberts riants aux éclats sur fond bleu et cheveux au vent, avec ce titre "Il n'est jamais trop tard", m'a paru incongru. Je sais que le film part d'un bon sentiment, et qu'il surfe sur le thème de la recherche du bonheur (rappellez-vous le film insipide de la même actrice : "Mange, prie, aime"). Mais là, le summum du cynisme est atteint par le marketing du film. Cette affiche semble dire, si vous n'êtes pas heureux, c'est bien de votre faute, bande de clown triste. Le bonheur est un droit au US (inscrit dans la constitution), mais semble devenir depuis peu une obligation, une contrainte sociale passablement naïve.



Tentons de lutter devant cette déferlante de bon sentiments qui poussera encore plus de gens vers le suicide. Car à force d'instaurer une dictature du bonheur (en lieu et place d'un simple droit), beaucoup de personne basculeront vers le désespoir d'être simplement et normalement heureux. Ne vous laissez pas faire, résister, et exiger un minimum de droit à ne pas être heureux. A trop se baigner dans le bonheur imposé, le risque de noyade n'est pas loin.


Voici le sous-titre que mériterait cette affiche:
"Il n'est jamais trop tard......
quant on est beau, riche, célèbre, et en bonne santé"








Précurseurs du « cloud »

Comme souvent en informatique, les nouvelles tendances sont inspirées par d’anciennes technologies. Voici quelques précurseurs du « cloud computing ».

Groupware, cluster de serveur, ASP

Le terme « cloud » est actuellement galvaudé par un usage intensif. On en arrive même à affubler du terme « cloud »d’anciennes technologies pour faire du neuf avec du vieux. Prenons l’exemple des « groupwares » (logiciels collaboratifs des années 90) comme par exemple l’antédiluvien Lotus Notes. Il s’agit d’une longue liste de logiciel permettant de réaliser ce que l’on appelait il y a encore peu de temps un « workflow » (encore un mot disparu dans le cimetière des mots informatiques disparus). Et bien tous ces « groupwares » sont maintenant partie prenante des « private cloud ».
Idem pour se que l’on appelle depuis si longtemps, le cluster de serveur, technologie ancienne permettant d’associer plusieurs serveurs à une seule tâche pour augmenter la puissance ou mutualiser cette dernière. La virtualisation est une version plus moderne mais identique dans son principe. Là aussi, on parle dorénavant de ‘cloud’ dès que ces systèmes sont présentés, alors que ces ‘data-center’ ou autre ‘ferme de serveur’ existe depuis les premiers jours d’internet.
Un autre concept à signaler est repris par la mode du ‘cloud’, l’ASP (Application Service Provider), ancien synonyme de ce que l’on nôme aujourd’hui SaaS (Software as a Service). Toutes ces références (et bien plus encore) démontrent que le cloud n’a rien inventé, mais a simplement renommé une invention marketing que certain considère même comme un piège comme Richard Stallman par exemple ou le PDG d’Oracle en 2008 et qui a déclaré :
" La chose intéressante à propos du cloud computing et que nous avons redéfini le cloud computing pour inclure tout ce que nous faisions déjà. L'industrie informatique est la seule industrie à être aussi sensible à la mode, plus que la mode féminine. Peut-être que je suis idiot, mais je n'ai aucune idée de ce dont on parle. Qu'est-ce que c'est ? C'est du vrai charabia. C'est fou. Quand cette idiotie va-t-elle s'arrêter ? "

Slingbox, l’une des premières applications « personal cloud »

Depuis 2005, une société américaine a popularisé aux US une nouvelle manière de consommer la télévision, usage tellement populaire que le nom de cette société est devenu un nom commun : Slingbox. Avant la slingbox, la télévision par câble était un service confiné à un écran unique lui-même dédié à une seule pièce de la maison. Regarder une finale de baseball diffusée sur une chaine cryptée devait se faire en un lieu unique et en un temps précis. Cette société a inventé un matériel permettant de s’affranchir de cette contrainte : pouvoir jouir de ce service en tout lieu en toute circonstance. On pouvait avec ce nouveau dispositif profiter de toutes ses chaines cryptées dans toutes les pièces de sa maison, mais également en dehors de sa maison, à l’étranger par exemple grâce aux réseaux disponibles (internet, data mobile, wifi, etc…) et à travers tous terminaux pouvant afficher de la vidéo (smartphone, iphone, PC, etc…). Le petit boitier slingbox connecté à son décodeur permet ainsi à son propriétaire de voir la chaine de son choix à travers un simple navigateur internet ou une application spécifique à certains terminaux smartphones, et permet aussi d’enregistrer et de diffuser ensuite à la demande ses émissions préférées. Et tout cela en s’adaptant dynamiquement à la capacité du terminal de restitution, et aux réseaux de donnée utilisé (internet, wifi, data mobile, etc..). Cette philosophie est à la base du personal cloud : pouvoir jouir en tout lieu et toute circonstance de service habituellement réduit à un seul matériel et à un seul lieu.

La freebox

A noter que la Freebox en France a popularisé un usage de la télévision comparable, soit nativement (enregistrement à distance, multi écran sur son réseau privé), soit en ouvrant ses API pour permettre un développement d’applications comparables. Elle contient les germes de ce que le personal cloud détient de plus intéressant, car à la porté du plus grand nombre pour un coût défiant toute concurrence.

Le cloud computing: grandeur et décadence des promesses d’un nouveau Web 2.0

Pour bien comprendre, il faut préalablement expliquer ce que signifie le concept fondateur, à savoir le « cloud computing ». Voici une introduction rapide des avantages et inconvénients de ce concept. Chaque nouvelle tendance apporte son lot de nouvelles valeurs. Ces valeurs, même si elles ne sont pas novatrices, recèle une force symbolique qu’il est nécessaire d’étudier pour comprendre le principe de ce concept.

Grandeur
Les promesses du « cloud computing » sont si charmeuses, qu’elles pourraient incarner la promesse historique (le graal en d’autre terme) de tout système informatique : faire plus avec moins.Voici une liste synthétique de ces promesses :


  • Simplification => accès et usage facile à utiliser

  • Multi-canal => identique quelque soit l’OS (operating system) ou le terminal

  • Nomade => pas de contrainte géographique

  • Économique => les ressources sont mutualisées

  • Sécurité => les données sont fortement sauvegardées

  • Réactivité => installation et licence instantanées

  • Hautement collaboratif => on s’affranchie des soucis réseaux et logiciel

  • Facturation à l’usage => nul besoin d’investir lourdement pour débuter

Le florilège des promesses associées à ce nouveau concept peut s’apparenter à une lettre au père Noël qu’aurait écrit un DSI en fin d’année après une nuit bien arrosée. Autant le concept du Web 2.0 a fait long feu par l’abus d’idées abstraites et difficiles à convertir en avantages concrets, autant le « cloud » parvient à captiver les esprits les plus pragmatiques. Mais comme en toute chose, une série d’inconvénients existe.

Décadence
Le monde de l’information toujours en mouvement ne parvient pas à se contenter de capitaliser les concepts déjà en place, mais recherche constamment à reconstruire l’existant. Les SI, les clients, les commerçants, la société, et internet en général exigent d’avoir régulièrement une révolution à envisager. Il n’est pas impossible que le « cloud » soit l’un de ces concepts porteurs mais éphémères, que de nombreux acteurs de l’informatique et de l’internet porte au pinacle pour vendre toujours plus de services et de produits. Pour étayer cette thèse, voici une série d’écueils que le « cloud » représente aux yeux du grand public :


  • Dématérialisation => Renoncer à une représentation physique des choses est toujours difficile

  • Globalisation => fonctions et fournisseurs banalisées, les spécificités nationales sont gommées

  • Respect de la vie privée => le mythe de Big Brother

  • Moins de concurrence => les investissements nécessaires réduisent les acteurs

  • Innovation => les contraintes techniques brident les fonctions

  • Bridage off-line => obligation d’être connecté pour profiter de toutes les fonctions

  • Beaucoup de marketing => promesses parfois abstraites

  • La peur du « big bug » => gmail a expérimenté dernièrement une série de petits bugs.

L’internet lui-même n’est pas à l’abri d’une grand-mère géorgienne armée d’une pioche (l’Armenie fut privé d’internet le 28 mars dans ces circonstances)
Il faut ajouter un écueil important mais moins évident : la fausse promesse d’économie de ressource. Le cloud est théoriquement conçu pour optimiser les ressources humaines (en termes de développement et de maintenance), et en termes d’énergie (technologie verte). Ces deux points sont malheureusement faux dans la plupart des cas, car les ‘fermes de serveurs informatiques’ (data-center pratiquant massivement la virtualisation logicielle) des grands groupes comme Google consomment en réalité des quantités dantesques d’énergie, car ces systèmes sont construit pour répondre pendant toute la journée à 2 ou 3 fois le pic d’usage d’une journée, ces pics étant eux-mêmes très chaotiques, et donc très supérieurs à la consommation moyenne. On estime à 10W (une heure d’ampoule basse consommation) la consommation électrique dédiée à une simple recherche google. De plus les ressources humaines mis en jeux sont difficiles à rentabiliser dans la plupart des cas, sauf pour les plus grands acteurs de l’internet (ebay, amazon et autre facebook). Pour les autres (la très grande majorité), l’investissement important et de la maintenance continuelle que cela implique peuvent s’avérer ruineux.

En résumé :
ne pas oublier les fondamentaux avant de se lancer dans le « cloud ». Le brouillard du vaporware n'est jamais très loin quant on parle de cloud.