An image capturing the exploration of a man in a boat against the backdrop of stars, creating a Voyage Imaginaire.

Le Voyage Imaginaire : l’exploration des mondes

  1. Le Voyage Imaginaire : l’exploration des mondes
  2. La structure narrative des 7 voyages de Sindbad le Marin
  3. Sindbad : la rhétorique de la vraisemblance
  4. Le Merveilleux, le Fantastique, et le Mythe dans Sindbad le Marin
  5. Jules Verne : Voyages au Cœur de l’Extraordinaire
  6. L’impact de l’illustration dans l’imaginaire vernien
  7. Géodésiques de la Terre et du Ciel
  8. Jules Verne et ses illustrateurs : une collaboration unique
  9. Jules Verne : les légendes sous les images
  10. Voyage au Centre de la Terre et Monde Perdu

Dans l’immense paysage de la littérature et de la culture, le voyage imaginaire se distingue comme un domaine fascinant, entrelaçant des récits qui naviguent au-delà des frontières du réel et de l’imaginaire. Cet élément intemporel, évoluant à travers les époques, s’inscrit profondément dans notre patrimoine culturel, reflétant nos rêves, nos peurs et nos désirs les plus intimes.

Cet article vise à explorer la symbiose entre les voyages imaginaires et les réalités qu’ils recèlent, telle qu’elle se manifeste dans divers récits à travers cultures et époques. Nous nous plongerons dans l’histoire de ce concept, en retraçant ses origines des traditions orales aux textes anciens, jetant les bases des interprétations modernes.

Le concept du voyage imaginaire a évolué depuis ses débuts dans les traditions orales, où il servait de vecteur à la transmission des valeurs et des croyances. En remontant aux racines de ces narrations, on découvre comment les textes anciens ont posé les jalons des interprétations modernes. Cette perspective historique révèle l’importance et la permanence de ces récits dans notre héritage culturel.

Les œuvres telles que “Les Mille et une nuits” et “L’Odyssée” illustrent de manière frappante la dualité des voyages imaginaires. Elles offrent différentes couches de compréhension pour les enfants et les adultes, mélangeant le réel et l’imaginaire. Ces récits mettent en lumière comment la réalité et la fiction peuvent coexister, enrichissant notre interprétation du monde et de notre place en son sein.

La tradition orale, souvent négligée au XVIIIe siècle au profit de la littérature écrite, a joué un rôle crucial dans la transmission des histoires et contes qui éveillent notre imagination. C’est cette tradition qui a précédé l’écriture, conservant des récits qui se retrouvent dans des cultures diverses, démontrant des parallélismes structuraux et des univers imaginaires similaires.

Les contes, tels que “Les Mille et une nuits”, servent à la fois un public d’enfants et d’adultes, offrant plusieurs niveaux de lecture. Ces histoires transmettent des messages universels, en dépit de leur apparence souvent enfantine ou fantastique. Des œuvres comme “Le Petit Prince”, “Les Voyages de Gulliver”, “Gargantua”, ainsi que “l’Iliade” et “L’Odyssée”, illustrent cette capacité des grands récits imaginaires à intégrer des éléments de réalité, captivant ainsi un large spectre d’audience sans exclure les enfants.

Les récits imaginaires ne sont pas seulement des sources de divertissement, mais aussi de puissants outils pédagogiques. Des œuvres comme “Pinocchio” et “Peter Pan” ne sont pas de simples contes pour enfants, mais portent en eux des leçons profondes sur la vie, la croissance et les défis universels. L’endurance de ces histoires à travers le temps soulève la question de leur universalité et de leur capacité à enseigner des leçons intemporelles.

En conclusion, cet article se propose d’analyser en détail ces récits imaginaires, explorant comment ils reflètent et influencent notre compréhension du monde. Cette exploration nous permettra de mieux saisir comment ces histoires façonnent notre voyage à travers la vie, nous offrant des perspectives uniques sur notre réalité et notre identité culturelle.

Lire la suite

An automatic computer screen displaying the message "sorry you have been blocked".

Contourner le blocage du WAF Cloudflare pour les uploads de zip dans WordPress

Le blocage des fichiers zip par le WAF (Web Application Firewall) de Cloudflare est un casse-tête pour de nombreux développeurs WordPress, surtout lors de la mise à jour de plugins et de thèmes. Heureusement, il existe une solution pour contourner ce problème sans compromettre la sécurité de votre site WordPress.

Pourquoi le WAF bloque-t-il les fichiers Zip ?

Cloudflare met régulièrement à jour ses Managed Rules pour renforcer la sécurité. Un upload de fichier zip peut être un vecteur pour des attaques malveéillantes, comme l’installation de shells. Ainsi, Cloudflare bloque ces requêtes pour protéger votre site.

Dans notre cas, par contre, cela nous empêche de faire nos mises à jour et c’est quand même plus simple de mettre à jour les plugins et thèmes payants avec un fichier zip, plutôt que de passer par SFTP ou wp-cli.

Solution #1: créer une exception dans le WAF de Cloudflare

Évidemment, nous n’allons pas désactiver ces règles qui fonctionnent si bien et ajoutent une couche de protection à notre site. Non, nous allons simplement créer une exception aux Managed Rules, que nous placerons avant tous les autres set de règles pour qu’elle soit prise en compte en priorité.

Étape 1: rendez-vous dans le Dashboard de Cloudflare

Allez dans Security > WAF > Managed Rules.

Voici ce que vous obtenez:

A screenshot of the WAF settings in Google Analytics showcasing blocked zip files.

Cliquez ensuite sur le bouton Add exception à droite.

Lire la suite

avif logo rgb

Recréer les fichiers AVIF corrompus

Cela fait une paire de fois que les images au format AVIF ne s’affichent pas sur SkyMinds et aujourd’hui, on règle le problème une bonne fois pour toute.

Concrètement, à chaque fois que j’uploade une image dans la bibliothèque de média de WordPress, plusieurs images sont créés: les miniatures bien sûr mais aussi un jeu d’images au format WEBP et au format AVIF. Tout se fait de manière automatique avec ShortPixel lors de l’upload.

Or, dernièrement certaines images ne s’affichent plus. Si on retire la source AVIF du DOM du document, le WEBP s’affiche bien, tout comme l’image originale en PNG ou JPG. C’est donc au niveau de la compression AVIF que cela coince.

Procédure de debug

Configuration NginX

Si vous vous souvenez bien, j’ai dans ma configuration NginX des directives pour donner la précédence aux formats AVIF et WEBP sur toutes mes images. Cela permet de servir en priorité les fichiers images aux formats les plus récents, avec un fallback sur les formats plus anciens (JPG, PNG notamment).

J’ai passé la configuration au peigne fin et il n’y a pas de problème à ce niveau. Les fichiers AVIF sont bien servis, le problème se trouve plus au niveau de l’encodage des fichiers.

Tester les images affectées

Lorsque je visionne un article avec une image affectée par le bug, elle ne saffiche pas mais apparait comme une image cassée. Lorsque l’on ouvre l’image dans un nouvel onglet, on obtient l’erreur suivante: “the image cannot be displayed because it contains errors“.

Je ne connais pas le nom des images affectées ni leur nombre (cela inclut aussi les miniatures) donc le plus simple est de dresser la liste des fichiers AVIF sur le site. Ensuite, je veux inspecter chaque image pour vérifier qu’elles possèdent bien les entêtes et bits nécessaires à leur bon affichage.

Commençons par installer les outils nécessaires pour examiner les fichiers AVIF:

apt install libavif-bin libavif13

On lance un test sur un fichier problématique:

avifdec /home/www/example/wp-content/uploads/2021/05/the-handmaids-tale-june-nick.avif /dev/null Code language: JavaScript (javascript)

et voici le résultat:

Decoding with AV1 codec 'dav1d' (1 worker thread), please wait... 
ERROR: Failed to parse image: BMFF parsing failed 
Diagnostics: * Box[meta] does not have a Box[hdlr] as its first child boxCode language: JavaScript (javascript)

L’erreur (“ERROR: Failed to parse image: BMFF parsing failed”), suggère que le fichier est en effet soit corrompu, soit incompatible donc nous allons le recréer.

Un script bash pour recréer tous les fichiers AVIF corrompus

Il est évident que nous n’allons pas tester tous les fichiers un par un. Maintenant que nous avons pu tester un fichier, nous allons créer une boucle pour tester tous les fichiers qui ont été uploadés sur le site : si le fichier est corrompu, nous allons le recréer, sinon on passe au suivant.

Lire la suite

Un livre sur une table avec des lunettes posées.

La compréhension écrite au bac : la méthode pour réussir

  1. Réussir la traduction de la spécialité Anglais LLCE
  2. Réussir la transposition en spécialité anglais LLCER du bac
  3. 10 conseils pour bien réussir l’épreuve de Compréhension Orale du bac
  4. La compréhension écrite au bac : la méthode pour réussir
  5. Conseils pour bien réussir l’épreuve d’Expression Orale du bac
  6. Bac : le dossier en spécialité LLCER Anglais
  7. Bac : épreuve orale de spécialité LLCER Anglais
  8. Conseils pour bien réussir le Grand Oral du Bac
  9. La synthèse de documents en LLCER : méthode pour réussir

Voici quelques conseils pour bien aborder et réussir l’épreuve de compréhension écrite en anglais qui compte dans le contrôle continu du baccalauréat.

Découverte des questions du sujet

Examinez attentivement chaque question en identifiant les éléments suivants :

  • L’auxiliaire ou le verbe principal ainsi que le temps verbal auquel ils font référence : présent, futur, ou passé.
  • Les marqueurs temporels, le cas échéant, qui corroborent le temps exprimé par le verbe.
  • Le sujet de la question.
  • Le mot de questionnement qui vous aidera à localiser la réponse pertinente dans le texte.

Découverte des documents de compréhension écrite

Avant toute chose, il faut lire 2 fois le texte.

La première lecture se fait sans souligner quoi que ce soit, stylo posé. On le lit attentivement. Lors de cette lecture, ne vous attardez pas sur les mots ou les sections qui ne sont pas immédiatement clairs. Vous aurez l’occasion de les examiner plus en détail ultérieurement.

Tout au long de cette première lecture, soyez attentif à identifier des informations clés comme la date de publication du texte, l’identité de l’auteur, et le genre littéraire de l’œuvre. Bien que ces détails puissent sembler mineurs, ils peuvent s’avérer précieux pour répondre aux questions de compréhension par la suite.

Lors de la deuxième lecture, on peut prendre des stylos de couleur, souligner les informations importantes et commencer ses repérages. C’est à ce moment que vous devriez commencer à prendre des notes et à vous immerger pleinement dans l’analyse du texte.

Les repérages du texte

Méthode: stabilo ou tableau

Lors de l’analyse de documents, les élèves adoptent diverses méthodes pour organiser et interpréter l’information, chacune ayant ses avantages. Une méthode populaire consiste à souligner directement dans le texte. Cette approche offre une visibilité immédiate des éléments clés et permet aux élèves de repérer facilement les réponses aux questions interrogatives (“who?”, “what?”, “where?”, “when?”) tout en restant engagés avec le texte original. Cela facilite la compréhension contextuelle et la rétention des informations importantes, surtout lorsqu’on utilise des couleurs différentes pour chaque catégorie, rendant le processus d’analyse plus intuitif et visuellement accessible.

D’un autre côté, certains élèves préfèrent élaborer un tableau à double entrée, où les questions interrogatives sont placées en colonnes et les différents documents sont répartis en rangées. Cette méthode structurée permet une comparaison et une analyse ciblée des documents. Elle favorise une vue d’ensemble claire, facilitant la mise en relation des informations entre les différents documents.

Ce tableau sert également de référence concise lors de la rédaction de réponses ou d’analyses, aidant à organiser les pensées et à construire des arguments cohérents. De plus, cette approche aide à éviter d’écrire directement sur les documents, ce qui peut être préféré par ceux qui souhaitent conserver leurs documents intacts ou qui trouvent plus facile de synthétiser les informations dans un format tabulaire.

Chacune de ces méthodes a ses mérites et il est important que chaque élève choisisse celle qui correspond le mieux à son style d’apprentissage et à sa manière de traiter l’information.

Les repérages de base indispensables

Il est primordial de débuter en identifiant la source et la nature du document : s’agit-il d’une affiche, d’un passage de roman, ou d’un article de presse ?

Typiquement, le corpus comprend un élément de fiction (comme un extrait de roman, qui est fréquent), un élément non-fictionnel (tel qu’un fragment d’article de presse, de mémoires, ou de discours) et un élément visuel (comme une photographie, une affiche, ou une publicité).

Lire la suite

A screen shot of the Firefox browser with tabs.

Sauvegardez la liste de vos onglets Firefox

Le problème : sauvegarder ses onglets

Il vous est sûrement arrivé de devoir quitter votre poste de travail précipitamment.

Le hic, c’est que si vous utilisez Firefox, vous avez probablement une demi-douzaine de tabs ouvertes, et que cela va vous prendre du temps pour toutes les glisser-déposer vers la barre de marque-pages ou alors de les sauvegarder en allant dans Marque-pages > Marquer tous les onglets.

Le problème : vos nouveaux marque-pages ne seront disponibles que sur cette machine, sans transition entre la machine du bureau et la machine familiale par exemple.

Sauvegarde au format texte : l’extension URLs List

La solution réside en l’installation de l’extension URLs List qui vous permet d’exporter envoie la liste des URLs de vos tabs ouvertes dans votre navigateur au format texte.

Vous pourrez donc avoir accès à votre précédente navigation où que vous soyiez !

Pour activer l’envoi du mail, il suffit de cliquer sur l’icône UL de la barre d’extension.

J’utilisais auparavant Send Tabs URLs mais l’extension n’est plus disponible. URLs List est un très bon remplacement et permet de faire une sauvegarde rapide de tous vos onglets.

Lire la suite

php 8.3 fireworks

Installer PHP 8.3 sur le serveur

Tous les sites et services hébergés sur Apollo tournent actuellement sous PHP 8.2 mais PHP 8.3 vient de pointer le bout de son nez donc nous allons l’installer sur le serveur.

Nouveautés et changements de PHP 8.3

PHP 8.3 marque une avancée notable dans l’univers de PHP, apportant avec elle une panoplie de nouveautés et d’améliorations captivantes. Au cœur de PHP 8.3, on découvre des innovations passionnantes.

Des constantes de classe typées : avec PHP 8.3, place à la précision ! Les constantes de classe se dotent d’un typage explicite, renforçant ainsi la rigueur dans l’application des types et affinant la détection des erreurs.

Récupération dynamique des constantes de classe : simplification à l’horizon ! Cette nouveauté rend la récupération des constantes de classe plus intuitive, rendant ainsi votre code plus clair et plus facile à entretenir.

Le flamboyant attribut #[\Override] : tel un gardien, cet attribut veille à ce qu’une méthode portant le même nom soit présente dans une classe parente ou une interface, boostant la fiabilité de votre code et facilitant son évolution.

Clonage en profondeur des propriétés en lecture seule : PHP 8.3 innove en permettant la modification unique des propriétés en lecture seule dans la méthode __clone, ouvrant la voie à un clonage plus profond.

La fonction innovante json_validate() : vérifier la validité d’un JSON devient un jeu d’enfant avec cette nouvelle fonction, plus efficace et rapide.

La méthode inédite Randomizer::getBytesFromString() : prolongeant l’extension Random de PHP 8.2, cette méthode est un véritable couteau suisse pour générer des chaînes aléatoires spécifiques, idéale pour créer des identifiants uniques comme des noms de domaine.

Un éventail de nouvelles méthodes et fonctions : PHP 8.3 n’est pas avare en nouveautés et offre un large éventail de méthodes et fonctions inédites, telles que DOMElement::getAttributeNames(), IntlCalendar::setDate(), et ldap_connect_wallet(), pour n’en nommer que quelques-unes.

Avec PHP 8.3, non seulement vous bénéficiez d’améliorations de performances et de corrections de bugs, mais aussi d’une expérience de développement web plus fluide et efficace.

PHP 8.3 est-il plus rapide?

Alors on peut se demander si cette nouvelle mouture est bien plus rapide que les versions précédentes. Rien de tel qu’un petit test avec WordPress et WooCommerce.

Sous WordPress 6.4, le site sert:

  • 153 requêtes/s avec PHP 8.2
  • 165 requêtes/s avec PHP 8.3

Sous WooCommerce 8.0, on obtient:

  • 49 requêtes/s avec PHP 8.2
  • 58 requêtes/s avec PHP 8.3

Donc oui, PHP 8.3 est plus rapide que PHP 8.2 et les versions précédentes.

Lire la suite

Sidekick: a productivity browser for becoming focused and unstoppable.

Sidekick, le navigateur avancé et sécurisé qui booste votre productivité

Et voilà, je viens encore d’installer un nouveau navigateur sur mon Mac! Il s’appelle Sidekick, est basé sur Chromium et résolumment orienté productivité.

Alors, vous allez me dire “quoi, encore un navigateur basé sur Chromium? mais pour quoi faire?”. Et bien accrochez-vous bien à vos baskets, c’est parti pour un petit aperçu de ses nombreux avantages.

1. Une organisation optimisée

Sidekick propose un système unique de gestion des onglets qui permet de garder votre espace de travail organisé. Les onglets peuvent être regroupés par projet – un peu comme les IDE comme Visual Studio Code – ou par catégorie, ce qui facilite grandement la navigation entre différentes tâches:

A computer screen with a variety of icons on it, alongside a secure browser that boosts productivity as a sidekick.
Les Workspaces sous Sidekick

On peut aussi créer des sessions d’onglets:

A screen shot of a desktop with a variety of icons on it, including an advanced browser for secure browsing.
Les sessions sous Sidekick

C’est très bien fait, vraiment efficace et cela permet d’y voir un peu plus clair lorsque l’on jongle avec des dizaines d’onglets sur des projets différents.

La dernière version, sortie il y a quelques jours, proposent également de passer d’onglets horizontaux (comme dans tous les navigateurs classiques) à des onglets verticaux, qui apparaissent au survol quand on place le pointeur de la souris à gauche. C’est bien à l’usage car cela donne plus de place à l’écran et permet de se focaliser sur l’onglet courant, sans être distrait.

2. Intégration des applications

Un des points forts de Sidekick est sa capacité à intégrer de nombreuses applications Web directement dans le navigateur. Des outils comme Slack, Asana, et Gmail peuvent être ancrés dans votre environnement de travail, permettant un accès rapide sans avoir à jongler entre différents onglets ou fenêtres.

A screen showing a variety of icons on a purple background, designed to enhance productivity and provide advanced security for users.
Sidekick : des applications directement accessibles dans le navigateur

J’ai ajouté 5 applications dans ma barre d’application: Gmail, Google Drive, ChatGPT, Whatsapp et Slack. Un clic sur l’icone bascule directement dans l’application dans le navigateur, et ce sans avoir à ouvrir un nouvel onglet. C’est tout simplement génial – plus besoin d’ouvrir l’application dédiée ou de remetttre la main sur son smartphone (pour Whatsapp). Tout est accessible en un clic.

3. Performance et efficacité

Sidekick est conçu pour être rapide et léger. Il optimise l’utilisation de la RAM et du CPU, ce qui est particulièrement avantageux pour les utilisateurs qui ouvrent de nombreux onglets ou utilisent des applications web gourmandes en ressources.

Fini le navigateur qui rame – mon Firefox a plus de 7000 onglets ouverts en permanence, je me soigne mais c’est dur – là, c’est de l’instantané. Notamment aussi parce que Sidekick est sécurisé par défaut et n’a pas besoin de X extensions tierces pour fonctionner.

Lire la suite

A robotic hand is typing on a laptop keyboard to extract content.

Comment empêcher les chatbots IA d’extraire le contenu de votre site

Vous êtes inquiet à l’idée que des chatbots basés sur l’intelligence artificielle puissent aspirer le contenu de votre site Web ? Heureusement, il existe des moyens de les en empêcher. Voici comment procéder.

Comment les chatbots IA accèdent-ils au contenu de votre site ?

Les chatbots alimentés par intelligence artificielle sont formés à l’aide de multiples jeux de données, dont certains sont en libre accès et disponibles au grand public. Selon un article de recherche publié par OpenAI, GPT-3 a été formé à partir de cinq jeux de données distincts :

  • Common Crawl (contribution de 60% à l’entraînement)
  • WebText2 (contribution de 22% à l’entraînement)
  • Books1 (contribution de 8% à l’entraînement)
  • Books2 (contribution de 8% à l’entraînement)
  • Wikipédia (contribution de 3% à l’entraînement)

Common Crawl englobe des pétaoctets de données issues de sites Web collectées depuis 2008, un peu à la manière dont l’algorithme de recherche de Google scrute les contenus en ligne. WebText2 est un jeu de données créé par OpenAI, qui contient environ 45 millions de pages Web liées depuis des publications Reddit ayant reçu au moins trois votes positifs.

Il est donc important de noter que, dans le cas de ChatGPT, le chatbot n’accède ni n’explore directement les pages de votre site Web — du moins, pas pour l’instant. Néanmoins, l’annonce récente d’un navigateur Web hébergé par ChatGPT a suscité des inquiétudes sur une éventuelle évolution de cette situation.

À l’heure actuelle, les propriétaires de sites Web devraient surveiller d’autres chatbots IA qui entrent sur le marché. Bard est un autre acteur majeur dans ce domaine, mais on en sait peu sur les jeux de données utilisés pour son entraînement. Bien sûr, nous savons que les robots d’exploration de Google parcourent constamment les pages Web, mais cela ne signifie pas nécessairement que Bard a accès aux mêmes données.

Pourquoi certains propriétaires de sites Web sont-ils inquiets ?

La principale inquiétude des propriétaires de sites Web est la dévalorisation de leur contenu par des bots IA tels que ChatGPT, Bard et Bing Chat. Ces bots IA utilisent le contenu existant pour générer des réponses, réduisant ainsi le besoin pour les utilisateurs d’accéder à la source originale. Au lieu de visiter des sites Web pour obtenir des informations, les utilisateurs peuvent simplement demander à Google ou à Bing de générer un résumé des informations dont ils ont besoin.

Dans le contexte des chatbots IA intégrés aux moteurs de recherche, la perte de trafic est la préoccupation majeure des propriétaires de sites Web. Par exemple, Bard, le chatbot IA, inclut rarement des citations dans ses réponses génératives, ce qui indique aux utilisateurs de quelles pages il tire ses informations.

Ainsi, en plus de remplacer les visites sur les sites Web par des réponses générées par IA, Bard supprime presque toute possibilité pour le site source de recevoir du trafic — même si l’utilisateur souhaite obtenir des informations supplémentaires. À l’opposé, Bing Chat lie plus fréquemment aux sources d’information.

En résumé, la génération actuelle d’outils IA génératifs utilise le travail des créateurs de contenu pour systématiquement supplanter le besoin de ces créateurs. Cela soulève la question de l’incitatif pour les propriétaires de sites Web à continuer à publier du contenu. Et, par extension, que se passera-t-il pour les chatbots IA si les sites Web cessent de publier le contenu dont ils dépendent pour fonctionner ?

Lire la suite

An English Romanticism painting of a landscape with trees and hills. William Turner, Dawn in the Valleys of Devon.

English Romanticism (1798-1832)

  1. The 18th Century: the Age of Enlightenment
  2. The Gothic and the Fantastic
  3. The 19th Century : Romanticism in Art and Literature
  4. English Romanticism (1798-1832)
  5. 19th Century Literary Movements : Realism and Naturalism
  6. British Civilisation and Literature: 19th and 20th centuries

English Romanticism began in 1798 with the publication of Wordsworth and Coleridge’s The Lyrical Ballads and ended in 1832 with Walter Scott’s death. William Blake and Robert Burns also belong to this literary genre, though they lived before the Romantic period.

Romanticism took place during a period of wars and revolutions, of considerable shifts and changes. It was a time of profound political and social reorganisation.

Romantic texts were varied and dealt with the Industrial Revolution and its consequences: a new class system, and a new type of economy. It’s important to emphasize the fact that this is the time when numerous kinds of problems appeared. Famous writers include William Blake, William Wordsworth and Samuel Coleridge.

Besides the Industrial Revolution, it is impossible to ignore the two major political upheavals that took place at that time, namely the American War of Independence (1776-1783) and the French Revolution (1789), which challenged old systems of social and political organizations.

Eugene Delacroix Le 28 Juillet. La Liberte guidant le peuple
Eugene Delacroix – Le 28 Juillet. La Liberté guidant le peuple.

The French Revolution struck British consciousness at first very favourably. Samuel Coleridge celebrated and praised it in a poem entitled “Destruction of the Bastille”.

Enthusiasm melted away as the war between France and Britain broke out four years later (1793), about the same time as the Reign of Terror started (1793-1794).

Romanticism was a period of constant tensions, observable in some of the poems we will study.

Lire la suite

A woman using a cell phone while sitting at a table with a cup of coffee and reading an eBook on her tablette.

ePub, comment lire un eBook (tablette et PC) ?

Découvrez la simplicité de la lecture numérique avec ePub

ePub est devenu le format de prédilection pour les adeptes du livre numérique, et pour cause : sa facilité d’utilisation est inégalée. Cet article vous guide à travers le processus en deux étapes faciles : télécharger un lecteur d’eBook et plonger dans votre lecture.

Qu’est-ce que le format ePub ?

ePub, l’acronyme de ‘electronic publication’, est largement reconnu comme le standard universel pour les livres numériques. Sa conception ouverte et adaptable garantit que le texte s’affiche parfaitement sur tous vos appareils, qu’il s’agisse d’ordinateurs, de tablettes ou de smartphones.

Vos premiers pas avec les lecteurs d’eBooks

La première étape consiste à choisir et installer un lecteur d’eBooks. Cette étape franchie, vous pourrez accéder à votre bibliothèque numérique à tout moment, sans aucune manipulation supplémentaire.

Comment lire un ePub sur Smartphone ou Tablette ?

Pour les utilisateurs d’iOS (iPad ou iPhone) :

Transférez vos fichiers ePub sur votre appareil via iTunes, et retrouvez-les facilement sur l’application iBooks, préinstallée et prête à l’emploi.

Pour les utilisateurs d’Android :

Aldiko est une excellente option, mais libre à vous d’explorer et de choisir l’application qui vous convient le mieux.

Lire un ePub sur un ordinateur

Sur Mac et Windows :

Adobe Digital Editions (ADE) est le choix privilégié pour les nouveaux venus dans le monde de la lecture numérique sur ordinateur. C’est une solution fiable qui promet une expérience de lecture fluide et intuitive. Voici comment démarrer avec ADE :

  1. Téléchargez et installez le logiciel sur votre ordinateur, qu’il soit sous Windows ou macOS.
  2. Une fois l’installation terminée, ouvrez ADE et ajoutez vos livres au format ePub à la bibliothèque.
  3. Double-cliquez sur un livre pour commencer à lire.

Sur Mac, Windows et Linux :

Calibre est bien plus qu’un simple lecteur d’eBooks : c’est une véritable bibliothèque numérique pour votre ordinateur, compatible avec Windows, macOS et Linux. C’est un outil complet qui permet non seulement de lire, mais aussi de gérer et d’organiser votre collection d’eBooks. Suivez ces instructions pour utiliser Calibre :

  1. Téléchargez et Installez Calibre et lancez-le.
  2. Importez vos eBooks au format ePub dans Calibre en cliquant sur “Ajouter des livres”.
  3. Sélectionnez un livre et cliquez sur “Lire” pour ouvrir le livre et profiter de votre lecture.

Lire la suite

Here we go round the mulberry bush, singing and dancing in a joyful circle.

Here We Go Round the Mulberry Bush

Introduction

“Here We Go Round the Mulberry Bush” is not just a traditional nursery rhyme; it’s a formative part of childhood for many people around the world. This enchanting singing game has been passed down from generation to generation, captivating young minds and fostering a sense of community and fun.

With its simple yet memorable lyrics and universally relatable themes, the nursery rhyme holds a special place in global folklore. This article seeks to delve deep into the intricate world of this nursery rhyme, exploring its rich history, diverse variations, and the underlying meanings and messages that have made it a timeless classic.

The Nursery Rhyme

Before embarking on this fascinating journey, it’s essential to familiarize ourselves with the most popularly recited version of the nursery rhyme. This rendition has served as the standard form for many English-speaking households.

Here we go round the mulberry bush,
The mulberry bush, the mulberry bush,
Here we go round the mulberry bush,
On a cold and frosty morning.

This is the way we wash our hands,
Wash our hands, wash our hands,
This is the way we wash our hands,
On a cold and frosty morning.

This is the way we brush our hair,
brush our hair, brush our hair,
This is the way we brush our hair,
On a cold and frosty morning.

This is the way we go to school,
Go to school, go to school,
This is the way we go to school,
On a cold and frosty morning.

This is the way we wave bye-bye,
Wave bye-bye, wave bye-bye,
This is the way we wave bye-bye,
On a cold and frosty morning.
Here We Go Round The Mulberry Bush

Here we go round the mulberry bush

Origins and history

England: the birthplace

Many believe that “Here We Go Round the Mulberry Bush” originated in England. Historical records hint at the rhyme being popular as far back as the 19th century. Intriguingly, the “mulberry bush” in question is often thought to represent a prison exercise yard. In this interpretation, the song’s roots lie in the harsh realities of historical English penitentiaries, where prisoners would be led around a mulberry tree as a form of exercise.

Theories and speculations

The song’s origins are not just limited to the prison yard theory. Over the years, scholars and enthusiasts have developed various hypotheses about its genesis. One compelling theory suggests that the song initially served as a way for children to mimic adult activities. The original game accompanying the song involved children forming a circle and imitating daily chores, reflecting the societal norms and routines of the time.

Lire la suite

An image of a computer screen with a green and purple background displaying the Message Of The Day (MOTD) on Ubuntu Server.

Changer le Message Of The Day (MOTD) sous Ubuntu Server

Le Message Of The Day (communément appelé MOTD) est un message d’accueil ou des notifications importantes que les administrateurs de serveurs peuvent configurer pour s’afficher lorsqu’un utilisateur se connecte au serveur via SSH.

Ce tutoriel vous montre comment mettre à jour et personnaliser le MOTD sur un serveur Ubuntu 22.04.

Prérequis

  • Serveur Ubuntu 22.04 avec accès root ou un utilisateur avec des privilèges sudo.
  • Accès SSH au serveur.

Étape 1 : connexion au Serveur

Connectez-vous à votre serveur Ubuntu via SSH:

ssh USER@SERVER_IP -pPORTCode language: CSS (css)

Étape 2 : vérifier le MOTD existant

Pour voir le MOTD actuel, utilisez la commande suivante :

cat /run/motd.dynamic

Étape 3 : modifier le MOTD dynamique

Ubuntu 22.04 utilise des scripts dans le répertoire /etc/update-motd.d/ pour générer une partie du MOTD dynamiquement. Vous pouvez ajouter, supprimer ou modifier les scripts dans ce répertoire pour personnaliser davantage le MOTD.

Entête MOTD

Nous allons créer un entête qui contient le nom de notre serveur en ASCII art, ce qui nous permettra de bien l’identifier lors de nos sessions SSH:

sudo nano /etc/update-motd.d/00-custom

Et on y ajoute notre script bash:

#!/bin/sh

# Reset
Color_Off='\033[0m'       # Text Reset

# Bold
BBlack='\033[1;30m'       # Black
BRed='\033[1;31m'         # Red
BGreen='\033[1;32m'       # Green
BYellow='\033[1;33m'      # Yellow
BBlue='\033[1;34m'        # Blue
BPurple='\033[1;35m'      # Purple / Magenta
BCyan='\033[1;36m'        # Cyan
BWhite='\033[1;37m'       # White

# Set the text color to green
printf "$BGreen"

# https://patorjk.com/software/taag/#p=display&f=Doom&t=APOLLO%20.%20SKYMINDS%20.%20NET
cat << "EOF"
  ___  ______ _____ _      _     _____       _____ _   ____   ____  ________ _   _______  _____       _   _  _____ _____
 / _ \ | ___ \  _  | |    | |   |  _  |     /  ___| | / /\ \ / /  \/  |_   _| \ | |  _  \/  ___|     | \ | ||  ___|_   _|
/ /_\ \| |_/ / | | | |    | |   | | | |     \ `--.| |/ /  \ V /| .  . | | | |  \| | | | |\ `--.      |  \| || |__   | |
|  _  ||  __/| | | | |    | |   | | | |      `--. \    \   \ / | |\/| | | | | . ` | | | | `--. \     | . ` ||  __|  | |
| | | || |   \ \_/ / |____| |___\ \_/ /  _  /\__/ / |\  \  | | | |  | |_| |_| |\  | |/ / /\__/ /  _  | |\  || |___  | |
\_| |_/\_|    \___/\_____/\_____/\___/  (_) \____/\_| \_/  \_/ \_|  |_/\___/\_| \_/___/  \____/  (_) \_| \_/\____/  \_/
EOF

# Set the text color to magenta
printf "$BPurple"

# Left image lines
left1="                                   88 88  "
left2="                                   88 88  "
left3="                                   88 88  "
left4=",adPPYYba, 8b,dPPYba,   ,adPPYba,  88 88  ,adPPYba,"
left5="\"\"     \`Y8 88P'    \"8a a8\"     \"8a 88 88 a8\"     \"8a"
left6=",adPPPPP88 88       d8 8b       d8 88 88 8b       d8"
left7="88,    ,88 88b,   ,a8\" \"8a,   ,a8\" 88 88 \"8a,   ,a8\""
left8="\"8bbdP\"Y8 88\`YbbdP\"'   \"\"YbbdP\"'  88 88  \"\"YbbdP\"'"
left9="           88                                          "
left10="           88                                         "

# Right image lines
right1=" .              +   .                .   . .     .  ."
right2="                   .                    .       .     *"
right3="  .       *                        . . . .  .   .  + ."
right4="            \"You Are Here\"            .   .  +  . . ."
right5=".                 |             .  .   .    .    . ."
right6="                  |           .     .     . +.    +  ."
right7="                 \\|/            .       .   . ."
right8="         . .        V          .    * . . .  .  +   ."
right9="               +      .           .   .      +"
right10="                               .       . +  .+. ."

# Combine and print
echo "$left1 $right1"
echo "$left2 $right2"
echo "$left3 $right3"
echo "$left4 $right4"
echo "$left5 $right5"
echo "$left6 $right6"
echo "$left7 $right7"
echo "$left8 $right8"
echo "$left9 $right9"
echo "$left10 $right10"

# STATS
upSeconds="$(/usr/bin/cut -d. -f1 /proc/uptime)"
secs=$((${upSeconds}%60))
mins=$((${upSeconds}/60%60))
hours=$((${upSeconds}/3600%24))
days=$((${upSeconds}/86400))
UPTIME=$(printf "%d days, %02dh%02dm%02ds" "$days" "$hours" "$mins" "$secs")

# get the load averages
read one five fifteen rest < /proc/loadavg

# text in yellow
printf "$BYellow"

echo "
   .~~.   .~~.    `date +"%A, %e %B %Y, %r"`
  '. \ ' ' / .'   `uname -srmo`
   .~ .~~~..~.
  : .~.'~'.~. :   Uptime.............: ${UPTIME}
 ~ (   ) (   ) ~  Memory.............: `cat /proc/meminfo | grep MemFree | awk {'print $2'}`kB (Free) / `cat /proc/meminfo | grep MemTotal | awk {'print $2'}`kB (Total)
( : '~'.~.'~' : ) Load Averages......: ${one}, ${five}, ${fifteen} (1, 5, 15 min)
 ~ .~ (   ) ~. ~  Running Processes..: `ps ax | wc -l | tr -d " "`
  (  : '~' :  )   IP Addresses.......: `ip a | grep glo | awk '{print $2}' | head -1 | cut -f1 -d/` and `wget -q -O - https://icanhazip.com/ | tail`
   '~ .~~~. ~'    Weather............: `curl -s "https://rss.accuweather.com/rss/liveweather_rss.asp?metric=1&locCode=EUR|FR|FR|NANTES|" | sed -n '/Currently:/ s/.*: \(.*\): \([0-9]*\)\([CF]\).*/\2°\3, \1/p'`
       '~'
"

# text default colour
printf "$Color_Off"Code language: PHP (php)

Cela affiche le nom du serveur (apollo.skyminds.net) puis une petite frise, et enfin les statistiques ainsi que la météo pour Nantes. Vous pouvez modifier la ville dans l’avant-dernière ligne.

Notez que j’ai compilé deux images pour qu’elles s’affichent sur les mêmes lignes: le mot “apollo” en ASCII art et une version de l’univers avec le texte “You are here!”. Il faut jouer avec l’indentation mais au bout de quelques essais, cela rend plutôt pas mal je trouve.

Rendez le script exécutable :

sudo chmod +x  /etc/update-motd.d/00-custom

Lancez la compilation de tous les modules dynamiques pour obtenir le MOTD final qui sera affiché à chaque connexion SSH:

run-parts /etc/update-motd.d/ > /run/motd.dynamicCode language: JavaScript (javascript)

Lire la suite