Warmup : préparez les caches de votre site

Une commande toute simple pour préparer les caches de votre site avant son ouverture en production :

wget -r -np -p -k [URL]

Détail des options

  • -r : suivre récursivement tous les liens de chaque page
  • -np : empêcher le robot de remonter l’arborescence du site
  • -p : télécharger toutes les ressources de la page (css, images, Javascript…)
  • -k : convertir les liens des pages pour utiliser les ressources locales téléchargées

RequireJS et ParsleyJS : utiliser les shims pour traduire vos contrôles de formulaires

ParsleyJS est une librairie Javascript permettant de contrôler la saisie de ses formulaires. Elle est livrée avec de nombreuses traductions de ses messages d’erreurs. Si vous gérez les dépendances de votre projet avec RequireJS, voici comment charger élégamment les traductions de Parsley.

Configuration des dépendances avec RequireJS

On indique à RequireJS le path vers les modules « parsley », « parsleyfr » et « parsleyfrextra ». Puis, on utilise les shims pour définir 2 nouvelles dépendances du module « parsley » :

  • parsleyfr
  • parsleyfrextra
require.config({
    paths: {
        "jquery":           "libs/jquery/dist/jquery",
        "underscore":       "libs/underscore/underscore",
        "backbone":         "libs/backbone/backbone",
        "parsley":          "libs/parsleyjs/dist/parsley",
        "parsleyfr":        "libs/parsleyjs/src/i18n/fr",
        "parsleyfrextra":   "libs/parsleyjs/src/i18n/fr.extra",
    },
    shim: {
        "parsley": {
            deps: ["parsleyfr", "parsleyfrextra"]
        },
    }
});

Déclaration d’une dépendance à Parsley

Ensuite, dans nos modules qui dépendent de Parsley, on indique normalement la dépendance dans la fonction « define ».

define([
        "backbone",
        "underscore",
        "parsley"
    ],
    function(Backbone, _) {

    }
);

Grâce aux shims, RequireJS va charger les modules « parsleyfr » et « parsleyfrextra » avant le module « parsley ». Vous pourrez ensuite changer la locale de vos contrôles de formulaires en appelant la méthode « setLocale » de ParsleyJS.

window.Parsley.setLocale('fr');

Un peu de lecture

MySQL : obtenir la taille des bases de données en ligne de commande

Requête

SELECT table_schema AS "Database name", SUM(data_length + index_length) / 1024 / 1024 AS "Size (MB)"
FROM information_schema.TABLES
GROUP BY table_schema

Résultat

+--------------------+--------------+
| Database name      | Size (MB)    |
+--------------------+--------------+
| database 1         | 607.70312500 |
| database 2         | 647.92187500 |
| information_schema |   0.00878906 |
| database 3         | 417.16526890 |
| database 4         | 567.17187500 |
+--------------------+--------------+

Envoyez les logs de vos applications à vos développeurs

Petite astuce simple et rapide à mettre en œuvre pour que votre équipe de développement devienne proactive : envoyez les logs de vos applications par mail à vos développeurs.

Exemple de cronjob

0 0 * * * echo "Subject: Ma super appli : error.log" | cat - /path/to/log/folder/error.log | /usr/sbin/sendmail -t mesdeveloppeurs@maboite.com

En cadeau, un super tutoriel sur les cronjobs : http://code.tutsplus.com/tutorials/scheduling-tasks-with-cron-jobs–net-8800