Sortir de NetworkSolution, le souk!

Tribulation d’un nom de domaine

Évolution du marché des registrars

Le nom d’enregistrement d’un nom de domaine sur le WEB ne va pas de soi. Suivant l’extension désirée, l’enregistrement se fait par un registrar local (exemple nic.ch pour les domaine en .ch ou en .li) ou par un registrar américain (exemple pour les .org, .com ou .net). Cependant, les noms génériques se sont généralisés, à l’heure actuelle, beaucoup de registrars proposent .eu, .name, .biz par exemple. En 2000, j’avais enregistré le nom « sveh.org » auprès de networksolution.com. Ce nom barbare signifie « association suisse de parents d’enfant déficient auditifs » en allemand; soit « aspeda » en français (voir : http://www.aspeda.ch ). Le site svehk.org n’a qu’une page de redirection sur svehk.ch. Le prix pour 3 ans était alors intéressant, env. 24$/an.

En janvier 2003, Networksolution, à la suite d’une mauvaise manipulation laisse filer dans la nature les informations des centaines de milliers de sites qui sont enregistrés chez elle. Cependant, c’est par flemmardise que je n’entreprend pas de changement de registrar ; malgré l’effervescence du WEB, les prix qui baissent. Je continue pour 5 ans. Puis pour 3 ans.

Tentative échouée

A l’automne 2012, je me dis que je vais laisser courir le délai de la redevance et ouvrir le site chez un registar meilleur marché. Grave erreur, ne faites pas ça !

Une fois le délai écoulé, je compte ouvrir le nom chez un nouveau registrar. Mais au moment du test pour voir si le nom est libre, il est indiqué occupé. Par qui donc, puisque le bail est terminé ? Eh bien par Networksolution, qui le met aux enchères, via un « partenaire », namejet.com. Il faut payer $69 pour le récupérer… J’essaye de payer la redevance malgré le bail dépassé. Pas question : Unfortunately, we were unable to process your request. None of the services in this order have been fulfilled, including items that have deferred payments. Echec, donc.

Bref je dois passer à la caisse pour récupérer le nom, et payer la redevance pour une année au prix fort. Mais je suis aussi fort décidé à changer de registrar, surtout après un tel coup.

Sortir de Networksolution

Six mois plus tard… rappel de renouvellement du bail. C’est le moment, car il faut initier la procédure avant la fin de bail. La méthode est :

  1. obtenir un code de tranfert de Networksolution
  2. activer le transfert chez Gandi (https://www.gandi.net/ )

Pas si simple du côté de Networksolution. Gandi met en garde, et avise :
Si vous effectuez n’importe quelle modification de votre Primary User (contact propriétaire) chez Network Solutions, Network bloquera automatiquement le transfert de votre nom de domaine pour 60 jours. Vous pouvez leur demander de débloquer votre domaine, mais vous devrez pour ce faire contacter leur support. Il vous sera probablement demandé de faxer des justificatifs d’identité.

Tout est fait pour rendre la chose difficile. Sur le site, aucun menu, sous-menu pour transférer un site. Parce que, transférer, c’est seulement dans le sens « autre registrar » à Networksolution…0-bloque

Une fois le code de transfert demandé, il faut attendre… 3 jours pour le recevoir par email. Et là, est.ce tout bon ? Non… il faut débloquer le site. Est-il si récent ? 10 ans ne sont pas suffisants ?1-debloc

Et une dernière tentative de retenir par la manche : une offre soudainement à 10$:2-stop

Et une petite menace pour se dégager de toute responsabilité en cas de malheur :

3-assure

Et un questionnaire : mon Dieu, pourquoi nous quitter ? Ils n’en sauront rien : je ne vais même pas les renseigner sur leurs concurrents.

 4-questions

En guise de conclusion : il n’est inutile de sortir d’un registrar quand il dépasse son rôle pour devenir un harpon commercial, tentant de faire de vous, pauvre webuser, un client captif et corvéable à merci. Même s’il faut retrousser ses manches plus que la raison n’en demande.

Yves Masur (7/2013)

Javascript : le langage de programmation le plus incompris du monde

en 2001, Douglas Crockford  a publié “JavaScript:The World’s Most Misunderstood Programming Language” sur son site www.crockford.com. Ce texte fut traduit en plusieurs langues, dont le français par mes soins en 2009, mais un autre traducteur m’avait devancé de quelques jours… Comme cette autre traduction n’est plus disponible (lien cassé), je publie la mienne ici.

Je trouve ce texte intéressant dans la mesure où “le langage de programmation le plus incompris du monde est devenu le langage de programmation le plus populaire du monde”. C’est le titre d’un autre texte de Crockford à traduire un de ces jours.

JavaScript, alias Moka, alias LiveScript, alias JScript, alias ECMAScript, est l’un des plus langages de programmation les plus populaires. Pratiquement tous les ordinateurs personnels au monde ont au moins un interpréteur JavaScript installé et utilisé intensivement. La popularité de JavaScript est entièrement due à son rôle en tant que langage de script du web.
Malgré sa popularité, peu de gens savent que JavaScript est un très bon langage de programmation dynamique, orienté objet, d’usage général.Comment cela peut-il être un secret? Pourquoi ce langage est-il si mal compris?

Le Nom

Le préfixe Java suggère que JavaScript est en quelque sorte liés à Java, que c’est un sous-ensemble ou une version moins puissante de Java. Il semble que ce nom ait été volontairement choisi pour créer la confusion, et de cette confusion vient le malentendu. JavaScript n’est pas un Java interprété. Java est un Java interprété. JavaScript est un langage différent.
JavaScript est syntaxiquement similaire à Java, tout comme Java ressemble à C. Mais il n’est pas plus un sous-ensemble de Java que Java est un sous-ensemble de C. Il vaut mieux que Java dans les applications auxquelles Java (originellement Oak) était initialement destiné.
JavaScript n’a pas été développé chez Sun Microsystems, les créateurs de Java. JavaScript a été développé chez Netscape. Il a été à l’origine appelé LiveScript, mais ce nom n’était pas suffisamment confus.
Le suffixe -Script suggère que ce n’est pas un vrai langage de programmation, qu’un langage de script est inférieur à un langage de programmation. Mais c’est vraiment une question de spécialisation. Par rapport à C, JavaScript sacrifie la performance pour le dynamisme et le pouvoir expressif.

un Lisp dans un costume de C

La syntaxe à la C de JavaScript, avec ses accolades et sa maladroite déclaration for le font apparaître comme un langage procédural ordinaire. Ceci est trompeur parce que JavaScript a plus en commun avec les langages fonctionnels comme Lisp ou Scheme qu’avec C ou Java. Il a des tableaux plutôt que des listes et des objets au lieu de listes de propriétés. Les fonctions sont de première classe. Il a les fermetures. Vous avez les lambdas sans avoir à équilibrer toutes ces parenthèses.

Transtypage

JavaScript a été conçu pour fonctionner dans Netscape Navigator. Son succès le conduisit à devenir un composant standard de presque tous les navigateurs Web. Il en est résulté le transtypage. JavaScript est le George Reeves des langages de programmation. (note du traducteur : je ne comprends pas vraiment l’allusion…)JavaScript convient bien à un large éventail d’applications non liées au Web

Cible mouvante

Les premières versions de JavaScript étaient assez faible. Il manquait la gestion des exceptions, les fonctions internes et l’héritage. Dans sa forme actuelle, c’est maintenant un langage de programmation orienté objet complet. Mais de nombreux avis sur ce langage sont basés sur ses anciennes formes immatures.
Le comité de l’ECMA qui gère le langage développe des extensions qui, quoique bien intentionnées, vont aggraver l’un des plus grands problèmes du langage: il y a déjà de trop nombreuses versions. Cela crée de la confusion.

Erreurs de conception

Aucun langage de programmation n’est parfait. JavaScript a sa part d’erreurs de conception, telles que la surcharge de + pour désigner à la fois l’addition et la concaténation avec forçage de type, ainsi que le with source d’erreurs, à éviter. La politique des mots réservés est beaucoup trop stricte. L’ajout des point-virgule a été une énorme erreur, tout comme la notation des expressions régulières littérales. Ces erreurs ont conduit à des erreurs de programmation, et remis en question toute la conception du langage. Heureusement, beaucoup de ces problèmes peuvent être atténués avec un bon programme lint.
Dans l’ensemble, la conception du langage est bien solide. Étonnamment, le comité ECMAScript ne semble pas être intéressé à corriger ces problèmes. Peut-être qu’ils sont plus intéressés à en créer de nouveaux.

Implementations Douteuses

Certaines des premières implémentations de JavaScript étaient assez boguées. Cela jeta le discrédit sur le language. De plus, ces implémentations ont été incorporées dans des navigateurs web horriblement bogués.

Mauvais livres

Presque tous les livres concernant JavaScript sont carrément mauvais. Ils contiennent des erreurs, de mauvais exemples, et promeuvent de mauvaises pratiques. Les principales caractéristiques du language sont souvent mal expliquées, ou entièrement ignorées. J’ai passé en revue des dizaines de livres JavaScript, et je ne peux en recommander qu’ un: Javascript: The Definitive Guide (5th Edition) par David Flanagan. (Auteurs attention: Si vous en avez écrit un bon, s’il vous plaît envoyez-moi une copie d’examen.)

Standard sous-standard

La spécification officielle du langage est publié par l’ECMA. La spécification est de très mauvaise qualité. Elle est difficile à lire et très difficile à comprendre. Cela a contribué au promlème “Mauvais Livres” parce que les auteurs ont été incapables d’utiliser le document standard pour améliorer leur propre compréhension du langage. L’ECMA et le comité TC39 devraient être profondément gênés.

Amateurs

La plupart des gens qui écrivent en JavaScript sont pas des programmeurs. Il leur manque la formation et la discipline pour écrire de bons programmes. JavaScript a tellement de pouvoir expressif qu’ils sont capables d’en faire des choses utiles malgré ceci. Cela a donné à JavaScript la réputation d’être strictement destiné aux amateurs, et qu’il ne convient pas à la programmation professionnelle. Ce n’est tout simplement pas le cas.

Orienté Objet

JavaScript est-il orienté objet ?Il a des objets qui peuvent contenir des données et des méthodes qui agissent sur ces données. Les objets peuvent contenir d’autres objets. Il n’a pas de classes, mais il a des constructeurs qui font ce que les classes font, notamment en agissant comme des conteneurs de variables de classe et de méthodes. Il n’y a pas d’héritage orienté classe, mais il y a un héritage orienté prototype.
Les deux principales façons de construire des systèmes objets sont par héritage (est-un) et par agrégation (a-un). JavaScript fait les deux, mais sa nature dynamique lui permet d’exceller dans l’agrégation.
Certains prétendent que JavaScript n’est pas véritablement orienté objet, car il ne permet pas de cacher l’information. Autrement dit, les objets ne peuvent pas avoir de variables privées ou de méthodes privées: tous les membres sont publics.
Mais il s’avère que les objets JavaScript peuvent avoir des variables privées et des méthodes privées.(Cliquez ici maintenant pour savoir comment faire.) Bien sûr, peu de gens comprennent cela parce que JavaScript est le langage le plus incompris au monde.
Certains prétendent que JavaScript n’est pas véritablement orienté objet, car il ne prévoit pas l’héritage. Mais il s’avère que JavaScript supporte non seulement l’héritage classique, mais aussi d’autres modèles de réutilisation du code.
Copyright 2001 Douglas Crockford. Tous droits réservés Wrrrldwide.