Author

Matt

Browsing
Matt est formateur, développeur expert WordPress et WooCommerce, et administrateur réseau chez Codeable.

Movgrab est un outil en ligne de commande écrit en C (sans dépendances) qui permet de récupérer facilement des vidéos sur des sites comme YouTube, DailyMotion, Vimeo, Blip.tv, Liveleak, Guardian...

movgrab-download-videos-shell

Il permet de choisir les flux disponibles sur les pages vidéo, supporte les proxies, peut reprendre des téléchargements... c'est une application très utile.

Liste des sites supportés par movgrab

Movgrab fonctionne avec:

[one_half]

  • YouTube
  • Metacafe
  • Dailymotion
  • Vimeo
  • Break.com
  • eHow
  • 5min.com
  • vbox7
  • blip.tv
  • Ted
  • MyVideo
  • ClipShack
  • MyTopClip
  • RedBalcony
  • Mobando
  • Yale University
  • Princeton University
  • Reuters
  • LiveLeak
  • Academic Earth
  • Photobucket
  • VideoEmo
  • VideosFacebook

[/one_half]

[one_half_last]

  • Aljazeera
  • Mefeedia
  • IViewTube
  • Washington Post
  • CBS News
  • Euro News
  • MetaTube
  • MotionFeeds
  • Escapist
  • Guardian
  • RedOrbit
  • Sciive
  • Izlese
  • uctv.tv
  • royalsociety.tv
  • British Academy
  • Kitp
  • Dotsub
  • Astronomy.com
  • Teachertube.com
  • Discovery
  • Bloomberg.com

[/one_half_last]

Michael Kobrin est né en Ukraine et a déménagé en Israël à l'âge de 4 ans. Influencé par différentes cultures, il a commencé à chanter dans une chorale et à jouer du Darbooka oriental.

A l'adolescence, il découvre la guitare acoustique et très vite commence à explorer de nouvelles techniques de percussion, inspirées par Roland Dyenz, Andy Mckee et John Mayer.

Voici Alive:

En écoutant les chansons rock, pop, orientales et progressives, pas à pas, Michael a évolué pour devenir un compositeur hors du commun qui combine la musique orientale et occidentale.

En 2014, il enregistre son premier album studio complet produit par le très respecté Yossi Sassi (co-fondateur d'Orphaned Land). L'album a été considéré comme un grand succès.

En 2017, Kobrin sort son deuxième album complet "Alive" avec Candyrat Records, tous dédiés à la guitare acoustique solo.

La quatrième saison de Fear the Walking Dead a commencé sur AMC.

Fear the Walking Dead saison 4 photo

Morgan Jones quitte sa communauté en Virginie, bien qu'il soit invité à rester par ses divers amis, y compris Rick Grimes.

Morgan se rend à la frontière du Texas où il rencontre un homme nommé John Dorie. Le lendemain, Morgan et John sont retenus captifs par un groupe de survivants, mais ils sont sauvés par une femme nommée Althea, qui conduit un véhicule SWAT.

Althea dit à Morgan et John qu'elle est journaliste et qu'elle veut filmer leurs histoires. John dit à Althea qu'il est en mission pour trouver sa petite amie, Laura. Morgan finit par s'ouvrir et raconte à Althea son passé à Atlanta et en Virginie.

Le groupe arrête leur véhicule quand ils voient une femme rampant sur le sol, ce qui se révèle être Alicia Clark. Morgan, John et Althea sont ensuite encerclés sous la menace d'une arme par Nick Clark, Victor Strand et Luciana Galvez.

La seconde partie de la saison sera diffusée à partir du 12 août 2018. Le premier épisode contient le premier crossover entre Fear the Walking Dead et The Walking Dead, liant les deux trames des deux séries.

19th century literary movements : Realism and Naturalism photo
Jean-François Millet, Des Glaneuses, 1857.

Introduction

Realism and Naturalism are a reaction against Romanticism (imagination, poetry and prose, as well as the main themes : nature, exoticism, history, and heroes depicted as exceptional individuals) because it was thought to have lost touch with the contemporary.

Three revolutions took place during the 19th century : the industrial revolution, the scientific revolution, and the moral revolution.

In Great Britain, the Victorian Era lasted from 1837 to 1901. In the USA, the Civil War lasted from 1861 to 1865.

The industrial revolution

The Industrial Revolution was started by the invention of the steam machine (coal, railways, factories). All this happened in the cities : the increase of the population led to misery and social problems such as alcoholism, tuberculosis, prostitution... There was a shift from a belief in progress to an increasing pessimism.

The scientific revolution

The Scientific Revolution expanded in the transport revolution, started by the steam engine:

  • 1830: Manchester-Liverpool railway
  • 1869: Transcontinental railway in the USA
  • Thomas Edison invents the gramophone, the light bulb and the electric chair
  • Pierre and Marie Curie discover radioactivity...

The world was changing extremely fast.

Auguste Comte (1798–1857) is at the origin of a philosophical theory called Positivism. He devised the "law of three stages" : (1) the theological, (2) the metaphysical, and (3) the positive.

The theological phase of man was based on whole-hearted belief in all things with reference to God. God, Comte says, had reigned supreme over human existence pre-Enlightenment. Humanity's place in society was governed by its association with the divine presences and with the church. The theological phase deals with humankind's accepting the doctrines of the church (or place of worship) rather than relying on its rational powers to explore basic questions about existence.

Comte describes the metaphysical phase of humanity as the time since the Enlightenment, a time steeped in logical rationalism, to the time right after the French Revolution. This second phase states that the universal rights of humanity are most important. The central idea is that humanity is invested with certain rights that must be respected. In this phase, democracies and dictators rose and fell in attempts to maintain the innate rights of humanity.

The final stage of the trilogy of Comte's universal law is the scientific, or positive, stage. The central idea of this phase is that individual rights are more important than the rule of any one person. Science is paramount and can give man absolute knowledge and power.

The moral revolution

The moral revolution marked the end of the hypocrisy of the Victorian morality. In the Origin of Species (1859), Darwin suggested for the first time that man descended from apes : there was no need for God, just a struggle for life ("survival of the fittest"). Darwin influenced Marx (communism and class warfare) and Nietsche (vision of super-man).

Conflicts and struggles define the future of society. It was a time of intense philosophy, and moral and scientific changes.

Realism

Realism is the fact of being faithful to reality. It was a movement away from romantic illusion, in order to get closer to the social and psychological reality of the time. It is the belief there can be a correspondence between reality and its representation.

Reality is a subject matter : the life of ordinary people in ordinary situations - for instance the bourgeois middle-class as exceptional people are not realistic. Balzac talked about every classes of society but very often, he selected.

Reality is also a matter of verisimilitude : how characters are determined by their environment, chronological narratives, psychological dimension of the characters, presence of an omniscient narrator.

Realism in England

Jane Austen (1775-1817) was a realistic who lived during romanticism but she was not romantic at all. She described middle classes in the countryside (how to get married) with two types of heroines : romantic on the one hand and reasonable and realistic on the other hand.

Charles Dickens (1812-1870) defined realism with a strong social dimension : he portrayed the working class and the poor, and dealt with poverty and revolt against injustice. Dickens' characters are defenseless orphans in a cruel world and his novels were used for social reforms.

In Oliver Twist (1838), there is sentimentality and pathos (influence of melo-drama) but also humour and caricature to alleviate tensions.

Uriah Heep in David Copperfield (1850) is evil, ugly, red-haired and smelled a fish. This romantic realism depicted social problems as well as imagination and sentimentality.

Le Time to First Byte (TTFB) est le temps de chargement du premier octet, c'est la mesure qui nous permet d'évaluer la vitesse d'accès à un serveur. Plus la mesure est basse et plus le serveur commencera à servir les ressources rapidement.

Calculer le Time To First Byte (TTFB) d'un serveur photo

Le ping comme moyen de contrôle

A l’origine le "ping” vient du bruit effectué par l’écho d’un sonar, le temps entre deux ping indiquant la distance parcourue par le signal pour détecter les fonds marins et revenir vers un navire. Les sons courts n’étaient pas de bons signaux pour un capitaine, puisqu'ils indiquaient que le danger se rapprochait de la coque du navire.

Le ping correspond pour nous au TTFB car il nous permet de mesurer la réactivité d'un serveur ou d'une ressource réseau.

Le ping comme mesure du Time To First Byte

Le TTFB mesure le temps écoulé entre la requête d'un client qui effectue une requête HTTP et le premier octet de la page reçu dans le navigateur du client. Ce temps se compose du temps de connexion au socket, du temps pris pour envoyer la requête HTTP, et du temps pris pour recevoir le premier octet de la page.

Le calcul du TTFB inclut toujours la latence du réseau lorsqu'il calcule le temps que prend une ressource avant de se charger. Ce temps varie en fonction de plusieurs critères: l’éloignement entre le serveur et le client, la qualité de la connexion, ou les questions de connexion directe (réseau filaire) ou indirecte (WI-FI, 3G, etc) sont des facteurs modifiant le ping.

Un TTFB faible est perçu comme une indication d'un serveur bien configuré. Cela signifie que moins de calculs dynamiques sont effectués par le serveur ou alors que le cache (DNS, serveur, ou applicatif) est en place.

Calcul to TTFB avec curl

Il existe pas mal de services en ligne qui permettent de calculer le TTFB mais il est aussi très simple de le calculer soi-même, avec un simple terminal avec curl :

curl -o /dev/null -w "Connect: %{time_connect} TTFB: %{time_starttransfer} Total time: %{time_total} \n" https://www.skyminds.net

Ce qui nous donne le résultat suivant depuis chez moi:

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 54616    0 54616    0     0   153k      0 --:--:-- --:--:-- --:--:--  153k

Connect: 0,039729 TTFB: 0,269024 Total time: 0,347745

A titre indicatif, si on lance la requête depuis le serveur:

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 54616    0 54616    0     0   797k      0 --:--:-- --:--:-- --:--:--  808k

Connect: 0.001645 TTFB: 0.066232 Total time: 0.066848

On peut voir une sacrée différence, dû au temps de latence et à l'éloignement géographique. Une autre raison pour laquelle il faut travailler sur la baisse du TTFB : si le TTFB met 270ms en France, à combien sera-t-il pour un visiteur Américain ou Australien ?

Concrètement, plus la connexion au serveur est rapide et plus le site se chargera tôt, ce qui a un fort impact sur le ranking du site. A surveiller donc !

32 odd musical anecdotes photo

Here are 32 odd musical anecdotes :

  1. The Beastie Boys used to open for themselves, disguised as a heavy metal band.
  2. When Andrew Lloyd Webber was writing the sequel to 'The Phantom of the Opera,' the entire score was deleted by a kitten.
  3. The only guy in ZZ Top who doesn't have a beard is Frank Beard.
  4. None of Elvis' films got nominated for Oscar, but he did win 3 Grammy Awards - for his gospel recordings.
  5. John Lennon wrote Good morning, good morning after hearing a Corn Flakes commercial.
  6. Metallica is the first and only band to play on all 7 continents.
  7. Members of Led Zeppelin were once accused of attacking a groupie with a mud shark.
  8. David Bowie was using so much cocaine in 1975 that he couldn't remember recording an entire album, Station to Station.
  9. The Notorious B.I.G., Jay-Z, DMX, and Busta Rhymes all went to the same high school at the same time.
  10. Before Guns N’ Roses, Slash once auditioned for the band Poison; he decided not to join when he was asked about wearing make-up.
  11. Marilyn Monroe got a white poodle named Mafia from Frank Sinatra.
  12. The airplane that Buddy Holly died in was called American Pie. Don McLean wrote a song with the same name about the accident.
  13. Duran Duran was named after a mad scientist from the Jane Fonda movie Barbarella.
  14. The first CD that was pressed in the U.S. was Bruce Springsteen's Born in the USA.
  15. Before composing Beethoven dipped his head in cold water.
  16. 'Ace' Frehley, former lead guitarist and founding member of the rock band Kiss, used to record his vocals while lying on his back.
  17. Like humans, birds can learn music while they are still in the egg stage.
  18. Mozart was five years old when he wrote his first piece.
  19. The first pop video was released in 1975. It was Bohemian Rhapsody by Queen.
  20. In 1976 Barry Manilow sang a chart topping song named I write the songs. The song wasn't written by him.
  21. Termites will eat wood two times faster when listening to heavy metal.
  22. When Madonna was 15 years old, she got grounded for the whole summer, for sneaking out to see David Bowie in concert.
  23. In the year 1988 tenor Luciano Pavarotti received a record 165 curtain calls at a Berlin opera house.
  24. Make music not war: Monaco's national orchestra is bigger that its army.
  25. Wham!'s hit single Wake me up before you go go was written by George Michael who was inspired by the note that was left to his hotel room by another band member Andrew Ridgeley. The note was mistakenly written as "Don't forget to wake me up up before you go go, George".
  26. House of the rising sun by The Animals was recorded with only 15 minutes because the band was on a tight budget. In spite of that the song went all the way to number one in 1964.
  27. Kurt Cobain accidentally named Nirvana's 'Smells Like Teen Spirit' after a deodorant for teenage girls.
  28. Suzanne Vega is considered the "mother" of the mp3 format. The creators of the mp3 used her voice from the song Tom's Diner for analyzing the different sound spectrums when creating the compression algorithm.
  29. The British Navy uses Britney Spears' songs to scare off Somali pirates.
  30. Composers Bach and Handel were both blinded by the same man.
  31. When the Foo Fighters recorded their first album, David Grohl was the only member of the band.
  32. The Rolling Stones' tongue logo was inspired by the Hindu goddess Kali.

Dernièrement, j'ai développé un nouveau site WordPress pour une cliente dont l'hébergement ne prévoit pas de staging site, ce qui est un peu ballot.

Plutôt que d'utiliser son hébergeur, je me suis dit que j'allais travailler sur la nouvelle version depuis un répertoire sous SkyMinds.

Ajouter un nouveau site WordPress dans un répertoire, sans conflit avec le site principal photo

Le problème s'est assez rapidement posé : les diverses règles de configuration de SkyMinds (à la racine du domaine) entrent en conflit avec le nouveau site qui se trouve dans un répertoire. Il est donc nécessaire d'ajuster la configuration du bloc serveur NginX.

J'ai bien sûr effectué quelques recherches sur le net et après moults tests, il s'avère que la plupart des configurations nginx que l'on y trouve sont erronées. En relisant les docs, j'ai fini par trouver une solution satisfaisante.

Des erreurs 404, 403 ou 500

Je mentionnais à l'instant les configurations erronées - elles ne permettent pas au nouveau site d'afficher les pages correctement : erreur 404 pour les pages, erreur 404 pour la partie administration ou alors erreur 403 ou même 500...

Le plus surprenant est que l'on retrouve quasiment ces mêmes configurations dans tous les tutoriels. Cela fonctionnait peut-être à une époque mais plus maintenant avec les dernières versions de WordPress et NginX.

La configuration qui fonctionne

Voici donc la configuration que j'ai concoctée et qui permet d'avoir un autre site WordPress (comme par exemple https://example.com/nouveau-site/) lorsqu'un site WordPress (de type https://example.com) existe déjà à la racine du domaine. Le but est donc d'avoir deux sites fonctionnels qui n'entrent pas en conflit au niveau de la gestion des règles.

On édite le server block de notre domaine :

nano /etc/nginx/sites-available/example.com

Dans la partie server de la configuration, on ajoute :


# Script name : Add new WP site in subfolder
# Author : Matt Biscay
# Author URI : https://www.skyminds.net/?p=29604

# Add new location point with rewrite rule
location @nouveausite{
rewrite . /nouveau-site/index.php last;
}

# Add subfolder config
location  /nouveau-site {
         root /home/example/public_html/nouveau-site;
         index index.php;
         try_files $uri $uri/ @nouveausite;
}

Sauvegardez le fichier. On teste la nouvelle configuration:

nginx -t

et on relance nginx et PHP:

service nginx restart 
service php7.2-fpm restart

Et voilà, le nouveau site dans son répertoire devrait maintenant être fonctionnel, sans conflit avec le site principal.

La seconde saison de La Casa de Papel est disponible sur Netflix !

La Casa de Papel saison 2 photo

La saison 2 de La Casa de pPapel démarre exactement là où s’était achevée la saison 1. Nos braqueurs préférés se trouvent donc toujours dans la fabrique de papier, aidés par le Professeur de l'extérieur.

Pour ne pas spoiler l'histoire, les paragraphes suivants sont cachés. Il suffit de les survoler avec votre souris pour les lire.

Nous retrouvons donc le Professeur, traumatisé par la découverte par la police de la demeure où les braqueurs avaient minutieusement préparé tout leur plan.

 

La situation s’annonce dramatique d’autant qu’avant de quitter la maison, toute l’équipe a laissé bien en évidence de nombreux déchets qui contiennent des traces ADN. Tout est là pour que la police remonte facilement la trace jusqu’aux noms de tous les braqueurs.

L’inspecteur Raquel Murillo parviendra-t-elle à percer le mystère de cette bande armée?

Neuf épisodes sont prévus dans cette seconde saison, qui se trouve être très bien ficelée, avec un rythme beaucoup plus soutenu que la saison précédente. Hautement recommandée !

A regarder comme des braqueurs de banque.

Subliminal : résoudre l'erreur "AttributeError: list object has no attribute lower" photo

Dernièrement, le script python que j'ai écrit pour télécharger les sous-titres automatiquement avec Subliminal a renvoyé le message d'erreur suivant :

AttributeError: 'list' object has no attribute 'lower'

Il se trouve que l'attribut lower ne peut-être appliqué qu'à des variables (type string) et non pour des objets (type array).

Nous allons donc éditer le code source de subliminal pour corriger le problème.

Ajout de nouvelles directives à subtitle.py

1. On se connecte au Synology en SSH:

ssh admin@SYNOLOGY

2. On passe root:

sudo -i

3. On recherche le fichier subtitle.py :

find / -type f -name "subtitle.py"

Résultat, 3 fichiers trouvés sur le NAS:

/usr/lib/python2.7/site-packages/subliminal/subtitle.py
/volume1/@appstore/VideoStation/subtitle_plugins/syno_subscene/subtitle.py
/volume1/@appstore/subliminal/env/lib/python2.7/site-packages/subliminal/subtitle.py

4. Le fichier qui nous intéresse se trouve sous /usr/lib donc nous l'éditons:

nano /usr/lib/python2.7/site-packages/subliminal/subtitle.py

5. Faites une recherche avec le terme lower (avec Ctrl+W sous nano). Vous trouver cette ligne:

    # format
    if video.format and 'format' in guess and guess['format'].lower() == video.format.lower():
       matches.add('format')

Nous allons commenter ces lignes et ajouter des conditions pour que lower ne soit appliqué qu'aux chaînes (type string):

    # format
    #if video.format and 'format' in guess and guess['format'].lower() == video.format.lower():
       #matches.add('format')
    if video.format and 'format' in guess:
       guess_format = guess['format'] if isinstance(guess['format'], list) else [guess['format']]
       if any(gf.lower() == video.format.lower() for gf in guess_format):
            matches.add('format')

[box type="info"]Attention à bien respecter le nombre d'espaces pour l'indentation : il s'agit d'un script python donc très tatillon à ce sujet ![/box]

6. Sauvegardez le fichier.

7. Relancez la recherche automatique des sous-titres : plus d'erreurs relatives à l'attribut lower :)

Enjoy!

Dave Matthews Band

Le groupe Dave Matthews Band (DMB) est formé en 1991 par le chanteur et guitariste David J. Matthews, le saxophoniste LeRoi Moore, le bassiste Stefan Lessard, le violoniste Boyd Tinsley, le batteur Carter Beauford, et le pianiste Peter Griesar (qui a quitté le groupe en 1993). Tous les membres du groupe ont rencontré Dave à Charlottesville, en Virginie.

La marque de fabrique du Dave Matthews Band, ce sont les longs « jams » qui étirent les chansons jouées en spectacle jusqu'à 20 minutes (le record étant de 32 minutes pour la chanson #41 en 2002 à Ottawa, Canada). La grande diversité des morceaux joués lors d'une tournée caractérise également le groupe.

Le Dave Matthews Band a partagé la scène avec de grands noms de la musique tels les Rolling Stones, Pearl Jam, Ben Harper, James Brown, Carlos Santana, Herbie Hancock, Buddy Guy, Alanis Morissette, Paul Simon, Victor Wooten, et Toots and the Maytals.

Warren Haynes

Warren Haynes est un guitariste et chanteur américain né le 6 avril 1960 à Asheville, en Caroline du Nord. À la fin des années 70 et au début des années 80, il participe à différents groupes : Ricochet, Rich Hippies, David Alan Coe Band. De 1986 à 1989, il joue dans le Dickey Betts Band en compagnie du batteur Matt Abts. Le 28 juin 1989, il rejoint le Allman Brothers Band où il rencontre le bassiste Allen Woody.

Avec Allen Woody et Matt Abts, Warren Haynes fonde en 1995 le groupe Gov't Mule (il restera cependant membre à part entière du Allman Brothers Band jusqu'au 26 mars 1997).

En 2008, il est invité au Central Park Concert (à New York City donc) du Dave Matthews Band en tant que guitariste solo, où il reprennent ensemble le célèbre Cortez the Killer de Neil Young:

Cette version est tout simplement géniale. Le style de Warren Haynes apporte une autre dimension à la chanson.

Vous remarquerez qu'à 7:33, Dave Matthews se tourne vers son batteur pendant le solo de Warren et lui chuchote "he's badass!".

Warren Haynes a collaboré 45 fois sur des chansons et a fait 28 apparitions lors de concert du Dave Matthews Band, dont deux sur des albums live : Live at Central Park Concert sur lequel il joue "Cortez the Killer" et "Jimi Thing", et Live at Piedmont Park sur lequel il joue "What Would You Say".

Sur un serveur qui héberge plusieurs sites WordPress différents, il est fort probable qu'il y ait quelques plugins en commun sur chaque installation.

WordPress permet de mettre à jour les thèmes et plugins en quelques clics mais cela suppose de s'identifier sur chaque site ou alors de donner permission à une application tierce comme JetPack pour vous faciliter la tâche.

WorddPress : éviter d'avoir à mettre le même plugin à jour sur chaque site hébergé sur le serveur photo

Cela suppose toutefois de bien vouloir rassembler toutes les autorisations sur un seul compte, ce qui n'est pas optimal puisqu'il n'y a plus cloisonnement entre les sites hébergés.

Nous allons donc mettre en place un système de liens symboliques (symlink ou symbolic link en anglais) pour gagner pas mal de temps lors des mises à jour.

Principe d'optimisation de la mise à jour des plugins récurrents

Sur le serveur, j'utilise une petite astuce tout simple : j'utilise mon site comme master officiel du serveur. C'est lui que je mets à jour en premier et tous les autres sites "hériteront" des nouvelles mises à jour, automatiquement et sans manipulation de ma part.

Mise en place de liens symboliques

Comme le serveur tourne sous Linux, il nous suffit de faire un lien symbolique sur le site slave vers le dossier d'un plugin qui se trouve sur le site master.

Lorsque je mettrai certains plugins de SkyMinds à jour par exemple, ces plugins qui sont également installés sur le site du Centre de Kriya Yoga France seront également à jour. En fait, aucun fichier de ce plugin ne sera présent chez eux, seul un lien symbolique.

Concrètement, voici la marche à suivre :

  1. On se place dans le répertoire /wp-content/plugins du site slave (kriyayoga.fr dans cet exemple):
    cd /kriyayoga/wp-content/plugins
  2. On crée un lien symbolique qui va pointer vers le répertoire qui se trouve dans le répertoire de SkyMinds :
    ln -s /skyminds/wp-content/plugins/my-plugin my-plugin
  3. Et voilà !

Rapport de faute d’orthographe

Le texte suivant sera envoyé à nos rédacteurs :