Probablemente la mejor página de error 404

La página de error 404 del sitio Blippy.com es probablement la más graciosa que haya visto.

Es todavía más divertida si conocen la sensación Internet “Double Rainbow”, lo que es muy probable a menos que vivan bajo una roca sin acceso a Internet.

Ya yo hice click en el cuerno mágico del unicornio para preparles el video arriba, pero si quieren probarlo ustedes mismos, visiten simplemente la página de error 404 de Blippy.com.

(Via TechCrunch)

¿Por qué no tomas otro nombre?

¿Por qué no tomas otro nombre? La rosa no dejaría de ser rosa, y de esparcir su aroma, aunque se llamase de otro modo.

— Romeo y Julieta (II, ii, 1-2)

Esta mañana leí en Engadget que lo que se conocía hasta hoy como Project Natal se llama ahora Kinect for Xbox 360, como lo reveló justo antes del E3 un grupo de 76 artistas del Cirque du Soleil. Yo reaccioné de dos formas:

  1. ¿Por qué nadie me invitó? :P
  2. ¡¿Quién inventó ese nombre tan horrible?!

Me imagino que la respuesta a la primera pregunta es obvia: alguien se equivocó—pero, por favor no lo despidan, yo no estaba disponible de todas formas.

La segunda pregunta es más difícil de responder. Natal era un nombre bonito—o un nombre en clave bonito para ser exactos. ¿Por qué cambiarlo?

No debe ser fácil darle nombres a los productos de una multinacional como Microsoft. Hay que tomar en cuenta que probablemente van a venderse y anunciarse en el mundo entero (excepto si venden Zunes, pero eso es otra historia). El nombre tiene que ser catchy (hmm… ¿pegadizo?), fácil de pronunciar y, muy importante, no tener connotaciones especiales en ninguna de las localidades a donde se va a comercializar. Y ese es exactamente el problema con “natal”.

Natal, nadal, natale, nadâl, natali, natál; todos quieren decir lo mismo: Navidad. Y si hay algo con lo que nunca se quiere asociar un producto es la religión.

Kinect, por otro lado, hasta donde sé, no es una palabra en ningún idioma, pero con raíces obvias en la palabra griega κίνηση (kínisi), las personas inteligentes comprenderán el sentido de movimento que hay detrás. También es fácil de recordar y, a parte de en Australia, no debería haber problemas de marcas registradas (y inclusive ahí…)

Sigue siendo feo.

Pero Microsoft no es famosa por sus buenos nombres. Todos conocemos Microsoft Windows, pero cuál es su relación con Windows Live o Windows Live Essentials. ¿Y qué hay de Windows Phone 7 Series—cuyo nombre cambió a Windows Phone 7—es lo mismo que Windows 7? Y alguna vez oí hablar de algo llamado Virtual Earth, que lugo cambió de nombre a Live Maps (¿Windows Live Maps?) y creo que ahora se llama Bing Maps (¿murió Live?) pero no me he fijado en las últimas 24 horas.

Es fácil perderse.

“Fácil” también es una palabra que me viene a la mente cuando pienso en ciertos productos de otras compañías. ¿Han oído hablar del iPod, iPhone, iPad, iMac, iLife, iWorks, …? Esos son nombres fáciles de recordar, catchy, no son palabras de ningún diccionario en ningún idioma y no deberían ser un problema en cuanto a marcas registradas. (Excepto por el nuevo iOS, no sé cómo están haciendo para ese.) Cierto, en el caso del Xbox, la marca “x” ya está un poco saturada, pero eso es sólo una oportunidad para encontrar una alternativa original.

En fin, no quisiera ser la persona que tiene que imaginar nombres comercialisables en el mundo real para una compañía como Microsoft, y por lo tanto admiro bastante a todas las personas involucradas en el proceso. Sin embargo, espero que alguien en Microsoft se de cuenta que sus nombres no están tomando en cuenta al cliente, y eso tiene que cambiar.

Hay un parámetro que apesta

Juvenile Striped Skunk¿Han oído hablar de parameter sniffing? Dudo que se diga olfateo de parámetros en español, pero no le pregunté a Google, así que mejor explico rápido lo que es.

Los parámetros de una consulta SQL determinan a menudo (si no siempre) el número de líneas que va a tratar. Por lo tanto, es lógico que el motor de base de datos—yo uso SQL Server 2005 y 2008 en este momento—quiera optimizar las consultas estudiando sus parámetros antes de establecer el plan de ejecución. De eso se trata el parameter sniffing.

El problema

El parameter sniffing no siempre funciona como se esperaba.

Ayer pasé una buena parte del día tratando de explicar por qué una consulta aislada se ejecutaba rápidamente, mientras que la misma consulta, ejecutada dentro de un procedimiento almacenado era excesivamente lenta. Resulta que el servidor estaba “olfateando” mis parámetros y formando un plan de ejecución para nada óptimo.

La solución

La buena noticia es que  la solución a mi problema es sencilla.

En lugar de utilizar los parámetros del procedimiento almacenado directamente en las consultas en su interior, lo que hay que hacer es almacenarlos en variables locales primero y usar las variables en las consultas.

Si tienen un procedimiento almacenado que de repente desempeña muy mal y se parece a este:

CREATE PROCEDURE MySP
   @UserName nvarchar(20)
AS
BEGIN
    SELECT name, email
    FROM Users
    WHERE username = @UserName
END

Todo lo que tienen que hacer es un pequeño cambio así:

CREATE PROCEDURE MySP
   @UserName nvarchar(20)
AS
BEGIN
    DECLARE @UserNameLocal nvarchar(20)
    SET @UserNameLocal = @UserName

    SELECT name, email
    FROM Users
    WHERE username = @UserNameLocal
END

¡Problema solucionado!

Sin embargo, esto no quiere decir que hay que usar variables locales en todos los procedimientos almacenados. Permitan que el servidor haga su trabajo y corrijan solamente si comprueban que el servidos se equivocó.

Si quieren probar el parameter sniffing ustedes mismos, les sugiero el blog del SQL Server Query Optimization Team que tiene un artículo muy completo con ejemplos.

(Photo: StefanB)

Bill Gates annonce l’iPad en 2007, Jobs croît au PC

En 2007, Bill Gates et Steve Jobs décrivent l’avenir de l’informatique :

Pour ceux qui ne sauraient pas bien les distinguer, le premier qui parle c’est Bill Gates. Oui, oui, c’est bien lui qui décrit un appareil qui ressemble beaucoup à un iPad fonctionner de paire avec un appareil qui ressemble beaucoup à un iPhone. Voici ses mots :

Je ne pense pas que vous aurez un seul périphérique. Je pense qu’on aura un périphérique “plein écran” qu’on pourra transporter et sur lequel on lira considérablement plus… oui, je veux dire, je crois au format tablette. (...) On aura un moyen d’avoir un clavier matériel et un certain nombre de paramètres pour cela. Et puis il y aura le périphérique qui va dans la poche, dont toute la notion de quelles fonctions on va combiner dedans— vous savez, il y a des ordinateurs pour naviguer, les médias, le téléphone…

Et puis, en col roulé noir et décrivant la prévalence de l’ordinateur personnel (plus un peu de cloud peut-être), les paroles de Steve Jobs :

Ce sera le PC, peut-être utilisé un peu plus étroitement avec des services Internet en back-end et des choses comme ça. Et, bien entendu, les PC seront de plus en plus mobiles. Je pense donc que le PC va continuer. Ce dispositif d’usage général va continuer à exister avec nous et à se transformer avec nous, que ce soit une tablette, un ordinateur portable ou, vous savez, un grand ordinateur de bureau que vous aurez à la maison ou quelque chose d’autre. Je pense donc que ce sera quelque chose que la plupart des gens auront, au moins dans cette société. Dans d’autres, peut-être pas, mais certainement dans celle-ci. Cependant il y a une explosion qui commence à se produire dans ce que vous appelez périphériques post-PC, n’est-ce pas ? L’iPod en fait partie. Il y a beaucoup de choses qui ne le sont pas… Selon moi, il y a une catégorie de périphériques qui ne sont pas d’usage général, et qui sont plus axés sur des fonctionnalités spécifiques, que ce soit des téléphones, des iPods, des Zunes ou autres. Et je pense que cette catégorie de dispositifs va continuer à être très innovante et nous allons en voir beaucoup.

C’est curieux de voir comment seulement quelques mois plus tard, l’iPhone de Jobs change totalement sa vision.

Aussi marrant que cela puisse être de voir à quel point les visions de ces deux gourous il y a trois ans divergent de la réalité de leurs (anciennes) entreprises aujourd’hui, je trouve cela surtout dommage. Dommage que Microsoft ait eut la vision, mais pas ce qu’il faut pour la réaliser…

Entre temps, Apple a su innover et proposer au monde des expériences exceptionnelles. Je n’admire pas spécialement la culture d’entreprise d’Apple, mais je dois avouer que sur ce point-là, il y en a peu qui se débrouillent aussi bien.

(Via Gizmodo)

Jake Shimabukuro et son ukulele à TEDx Tokyo

J'avais déjà entendu Jake Shimabukuro quelque part, mais je n'arrive pas à me souvenir où. Je savais qu'il était bon, mais cette vidéo enregistrée à TEDx Tokyo m'a laissée bouche bée pendant 22 minutes.

Prenez le temps de regarder la vidéo en entier, ça vaut vraiment la peine :

Il joue 3 morceaux :

  • Un "Flamenco ukulele" que, je pense, est une composition originale
  • "Ave Maria" de Schubert, à l'ukulele !
  • "While my guitar gently weeps" de George Harrison

Et une sorte de "encore" demandé par le maître de cérémonie et non pas le public :

  • "In my life", encore une adaptation des Beatles qu'il a pu jouer aussi pour la Reine Elizabeth d'Angleterre

Un musicien remarquable, et un très bon présentateur—voire conteur—ce Jake.

Si quelqu'un sait d'un concert de lui à Paris, pensez à moi. C'est quelque chose que je n'aimerais pas rater ;)

Révéler les données d’une bande magnétique à l’aide de rouille

Je suis tombé sur cet article chez BoingBoing il y a quelques minutes qui décrit comment révéler les données stockées dans une bande magnétique—comme celles que l’on trouve derrière les cartes de crédit—à l’aide de la rouille (l’oxyde de fer, hein, pas la sauce) en poudre. Comme ça avait l’air sympa, je me suis dit que je reproduirais bien l’expérience à la maison.

Je suis donc allé chercher mon morceau d’acier rouillé (n’importe quel métal ferreux devrait marcher) et un morceau de papier de verre—j’avoue que parfois je m’étonne de ce que je garde dans mon petit 35m2—et j’ai procédé à la confection de rouille en poudre très fine.

RustSandpaperRust Powder

Ensuite, je n’ai eu qu’à étaler un peu de cette poudre à l’aide d’un pinceau sur une bande magnétique d’une carte dans mon portefeuille et voilà le résultat :

Revealed Magnetic Data

La poudre révèle les ‘0s’ et ‘1s’ stockés dans la bande magnétique. On peut voir que ma carte ne possède qu’une seule piste avec des données, mais une carte un peu plus complexe, comme une carte de crédit, pourrait en contenir jusqu’à 3 ; les deux autres se trouveraient au dessus et en dessous. Chaque piste est capable de stocker quelque 80 bits par centimètre, mais vu que les données sont encodées de manière différente sur chacune des trois bandes, une carte de taille standard ne contient qu’environ 1000 bits ou 226 caractères, soit environ un SMS (1120 bits).

Ellen DeGeneres forcée de s’excuser auprès d’Apple

Ne vous inquiétez pas, je ne risque pas de devenir un blog consacré à Apple, mais les histoires récentes me font tellement halluciner que je ne peux pas ne pas les partager.

Tenez, par exemple, cette vidéo d’Ellen, qui a eu la terrible idée de faire une parodie des pubs iPhone :

Apple lui a demandé de s’excuser ! Parce que, je traduis grossièrement, “elle fait croire que l’utilisation de l’iPhone est difficile” !

Je ne sais pas quand est-ce que quelqu’un de Cupertino a mis les pieds dans un Apple Store pour la dernière fois ; personnellement, j’y étais aujourd’hui, et je peux vous dire que l’iPhone semble ne pas être évident pour une quantité de personnes assez impressionnant (pour qu’il n’y ait plus de rendez-vous au “Genius” bar un mercredi matin, par exemple). J’en déduis que :

  1. on a le droit de se moquer un peu de l’utilisation de l’iPhone parce que ça arrive qu’on ait du mal à s’en servir, ou…
  2. Apple considère que ces cas-là sont exceptionnels et qu’il s’agit tout simplement d’abroutis.

Je n’ai pas de réponse officielle d’Apple—et un employé de l’Apple Store a failli être frappé par la foudre lorsqu’il a voulu répondre à la question sans qu’un RP soit présent—mais je pense qu’ils n’hésiteraient pas à dire “réponse numéro 2”.

Accesos directos de teclado en Visual Studio 2010

vs2010logo

Para aquellos que aprecian el tiempo ganado por no mover las manos del teclado para ir a buscar el mouse, Microsoft publicó 4 fichas de referencia (cheet sheets para los lectores anglófonos) de los diferentes enlaces de teclado para Visual Studio 2010 en formato PDF de muy buena calidad.

En estas fichas plegables encontrarán los accesos directos por defecto de:

  • Visual Basic .NET
  • Visual C++
  • Visual C#
  • Visual F#

Disponibles en MSDN Downloads.

On Jobs’s thoughts on Flash

Yesterday, our favourite black turtleneck-wearing guru published a short essay detailing his Thoughts on Flash, where he details why Adobe’s Flash will never by supported on his iPhones and iPads.

Recommended reading, definitively! It’s just hilarious.

I obviously have to admit that the iPhone, new Macs, etc. have sent Jobs soaring through the stratosphere. Unfortunately, I’m afraid his brain is now lacking oxygen…

Take a look at some of Jobs’s points:

  1. Open: he’s basically saying “Flash is proprietary, that’s baaaad; we use open standards, we’re gooood”. But can you really call a draft a standard? What good is promoting the use of open “standards” on the web, when you explicitly strip developers from their most elemental rights, i.e. the choice of their development language?
  2. Reliability: “We also know first hand that Flash is the number one reason Macs crash.” I don’t know whether to be annoyed by such an unlikely statement, or by the fact that it’s the OS crashing even if it’s Flash’s fault…
  3. Battery life: again, I’m paraphrasing, “if you use Flash, you’ll only get 5 straight hours of video”. Man, he got me there! I’ve always wanted to sit through the extended versions of the three Lord of the Rings movies on my phone!
  4. Touch: “Flash apps are not touch-ready because of the rollover effect.” So are plenty of plain old HTML + CSS pages that use the :hover behaviour!
  5. And finally, some bla, bla about using Flash as a development environment for native iPhone applications: he has got to be kidding. Not allowing the developer to chose is a good thing? So what if native applications developed with CS5 do not support everything the platform does? That my crappy decision as the developer to make, not yours!

I’m having more and more trouble reconciling my love for shiny things with rounded corners that, I admit, work wonderfully, with who I really am: a developer who additionally likes to fiddle with whatever I can get my hands on—both profiles apparently loathed by Jobs.

I guess it’s too late to hope for Apple to come out and say that their site was hacked and that the essay is not real. In the meanwhile, my moral compass keeps strangely pointing away from any Apple Store in the vicinity.

 

PS: Fake Steve has a nice piece on the subject, too.

Un clavier virtuel pour vos recherches Google

Il m’est déjà arrivé de me retrouver, installées sur mon PC, plusieurs configurations de clavier : grecque, cyrillique, chinoise, coréenne, … Pourquoi ? Parce que je suis curieux et parce que j’aime bien les langues. Par contre, je vous l’accorde, ce ne sont pas des claviers que j’utilise tous les jours ; d’ailleurs, souvent je n’ai installé ces différents claviers que pour faire une ou deux recherches sur Internet.

Aujourd’hui Google sort une nouvelle fonctionnalité sur certains de ces sites qui rend cette manipulation inutile : des claviers virtuels pour des langues non-latines, telles que le grec, le russe, l’arabe, le thaï et bien d’autres. Regardez ce que ça donne :

Clavier virtuel mongol

Petite astuce : une fois le clavier virtuel ouvert, vous pouvez utiliser votre clavier physique pour activer les touches virtuelles !

Voici la liste non exhaustive de sites Google proposant les nouveaux claviers virtuels : Google Greece,Google Finland, Google Sweden, Google Iceland, Google Poland, Google Russia, Google Ukraine, Google Saudi Arabia, Google Thailand, Google Mongolia, Google India.

Via Google Operating System]

toggle