Author

Matt

Browsing

Filmed and recorded live at the Nassau Coliseum, Long Island in August 1988 during the ‘Momentary Lapse Of Reason’ World Tour.

In December 2019 Pink Floyd released The Later Years box set. It features newly re-edited version of the ‘Delicate Sound Of Thunder’ video with newly remixed audio as one of the main features. But unfortunately it wasn’t expanded to the full setlist concert. Several originally omitted tracks presented there on the bonus Blu-Ray/DVD disc. Also two instrumental compositions remained in shortened form. Unfortunately, footage of another two tracks from the setlist weren’t included at all for unknown reasons. I present the expanded edition of this beautiful concert video with all available footage in the right place.

This edition expands official 2019 version by 17 minutes.

  1. Shine On You Crazy Diamond [00:00:00]
  2. Signs of Life [00:12:16]
  3. Learning to Fly [00:16:34]
  4. Yet Another Movie [00:21:48]
  5. Round And Around [00:28:08]
  6. A New Machine (part 1) [00:28:42]
  7. Terminal Frost [00:30:17]
  8. A New Machine (part 2) [00:36:33]
  9. Sorrow [00:37:11]
  10. The Dogs Of War *
  11. On The Turning Away [00:47:36]
  12. One Of These Days [00:56:40]
  13. Time [01:02:57]
  14. On The Run [01:08:18]
  15. The Great Gig In The Sky [01:11:49]
  16. Wish You Were Here [01:16:34]
  17. Us And Them [01:21:25]
  18. Money [01:29:01]
  19. Comfortably Numb *
  20. One Slip [01:37:28]
  21. Run Like Hell [01:43:34]
  22. Terminal Frost (credits) [01:52:42]

Expanded by CMI in January 2020.

Total running time: 2 hours 12 minutes 20 seconds
Unfortunately ‘The Dogs Of War’ and ‘Comfortably Numb’ were excluded by YouTube policy.

Details:
The source for this project is Blu-Ray 1080p with 24/96 audio.

  1. ‘Signs Of Life’ expanded to its original length using footage from Screen Film.
  2. ‘Yet Another Movie’ / ‘Round And Around’ / ‘A New Machine’ (part 1) / Terminal Frost / A New Machine (part 2) segment placed in the original order of the set.
  3. Small re-edit in ‘The Dogs Of War’ before 1st verse using footage from Screen Film.
  4. ‘On The Run’ expanded to its original length using footage from Screen Film.
  5. Syncronisation is corrected for 3 final drum hits in ‘Money’.

Aujourd’hui, on importe la base de données d’un site existant dans la nouvelle version de Local Lightning, estampillée 5.4.1.

D’habitude, je lance Adminer > Import, je sélectionne mon fichier de base de données et boom, la base est importée. Mais aujourd’hui, rien ne se passe comme prévu: Adminer mouline, mouline, perd la moitié du design de sa page et n’importe pas la base.

SSH à la rescousse

Je me dis qu’on aura peut-être plus de chance depuis la console SSH. Dans Local, faites un clic droit sur le site > Open Site Shell. Une fenêtre de terminal apparaît alors.

Utilisation de WP-CLI

On commence d’abord par la méthode wp-cli. On copie notre fichier adminer.sql sous /app/public et on lance la commande suivante:

wp db import ./adminer.sql

Résultat:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

Cela commence bien. La version 5 de Local utilise MySQL 8 donc certaines choses ne sont peut-être pas tout à fait au point. Comme il n’y a pas de socket mysql dans /tmp/mysql.sock, nous allons manuellement spécifier notre socket MySQL dans notre commande. Local nous donne l’adresse du socket dans l’onglet Database:

wp db import ./adminer.sql --socket="/Users/matt/Library/Application Support/Local/run/rvrb6Ce-Z/mysql/mysqld.sock"

Résultat:
ERROR 1067 (42000) at line 23841 in file: './adminer.sql': Invalid default value for 'comment_date'

La bonne nouvelle, c’est que l’on peut se connecter à la base de données MySQL. Mais tiens donc, nous sommes déjà tombés sur cette erreur Invalid default value for comment_date !

Configuration de MySQL

Pour régler le problème sous Local, la marche à suivre diffère un peu de ce que nous avions lancé sur notre serveur puisqu’il n’y a pas une mais deux variables de configuration de mysqld à modifier.

On se connecte au serveur mysql:

mysql -u root -proot

Commençons par voir ce que les variables sql_mode contiennent:

SELECT @@GLOBAL.sql_mode; SELECT @@SESSION.sql_mode; 

Résultat:

+------------------------------------------------------------------------------------------+
| @@GLOBAL.sql_mode                                                                        |
+------------------------------------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION |
+------------------------------------------------------------------------------------------+
1 row in set (0,00 sec)

+------------------------------------------------------------------------------------------+
| @@SESSION.sql_mode                                                                       |
+------------------------------------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION |
+------------------------------------------------------------------------------------------+

Le problème est, comme la dernière fois, la présence de ces deux instructions: NO_ZERO_IN_DATE,NO_ZERO_DATE.

On enlève donc ces deux instructions de nos deux directives:

SET @@GLOBAL.sql_mode="ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION";
SET @@SESSION.sql_mode="ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION";

Voilà ce que nous obtenons au final:

+------------------------------------------------------------------------------------------+
| @@GLOBAL.sql_mode                                                                        |
+------------------------------------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION |
+------------------------------------------------------------------------------------------+
1 row in set (0,00 sec)

+------------------------------------------------------------------------------------------+
| @@SESSION.sql_mode                                                                       |
+------------------------------------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION |
+------------------------------------------------------------------------------------------+
1 row in set (0,00 sec)

On peut désormais importer notre fichier SQL:

mysql -u root -proot local < ./adminer.sql 

Hop l’import de la base de données se passe maintenant sans aucun problème.

45 ans après le “Live At Pompeii” de Pink Floyd dans le légendaire amphithéâtre romain, Davig Gilmour est revenu pour deux spectacles spectaculaires en juillet 2016, dans le cadre de sa tournée pour l’album Rattle That Lock.

Les performances étaient les tout premiers concerts de rock pour un public dans l’amphithéâtre romain en pierre, et, pendant deux nuits seulement, la foule de 2600 personnes se tenait exactement là où les gladiateurs auraient combattu au premier siècle de notre ère.

Natasha Sultana, de son nom de scène Tash Sultana, nait le 15 juin 1995 à Melbourne et est un(e) auteure-compositrice-interprète et musicienne multi-instrumentriste Australienne, d’un père originaire de Malte et d’une mère australienne. À l’âge de trois ans, son grand-père lui offre sa première guitare.

Tash Sultana subit l’influence d’artistes néo-soul tels que Erykah Badu, D’Angelo, Lauryn Hill mais également rock comme Jimi Hendrix, Pink Floyd, Fleetwood Mac ou encore Led Zeppelin, ou Bob Marley et Amy Winehouse.

Sultana se produit en solo sur scène, pieds nus et enregistre ses instruments au fur et à mesure grâce aux pédales d’effets: c’est la technique du looping. Autodidacte, Sultana joue d’une vingtaine d’instruments dont la guitare (basse, électrique, folk), la mandoline, le piano, la trompette et le saxophone.

Voici Tash Sultana lors de l’un des Tiny Desk Concert organisé par NPR:

C’est très dub planant, vraiment à part.

Pendant cette période de confinement, Pink Floyd offre gratuitement des concerts complets pour les fans. pendant le confinement.

Jusqu’à récemment, le groupe diffusait des extraits de chansons individuelles sur YouTube, mais avec le Royaume-Uni confronté à trois semaines supplémentaires de confinement pendant la pandémie de Covid-19, et la plupart des autres pays du monde connaissant des restrictions à des degrés divers, le groupe a décidé de passer à des concerts complets.

Voici la version restaurée et rééditée des masters originaux en 2019 de Pulse, filmé live le 20 Octobre 1994 à l’Earls Court de Londres:

L’édition de Pulse d’hier soir est tirée du coffret Later Years, qui est sorti l’année dernière et qui a été réédité.

Enjoy!

Gravity Forms : supprimer les entrées mais garder les fichiers uploadés sur le site

Gravity Forms garde en base de données toutes les entrées des formulaires. Sur un site qui génère énormément de demandes (formulaire de contact, demandes d’informations, formulaire de commande ou pré-commande…), cela signifie des milliers d’enregistrements dans la base de données, ce qui n’est pas toujours souhaitable, pour des raisons de stockage et de performance.

Supprimer les entrées des formulaires Gravity Forms

Si vous avez besoin de supprimer les entrées créées par Gravity Forms une fois que le message a été envoyé, vous pouvez utiliser cette fonction:

// Delete all entries from form ID  1.
add_action( 'gform_after_submission_1', 'sky_remove_form_entry' );
function sky_remove_form_entry( $entry ) {
    GFAPI::delete_entry( $entry['id'] );
}

Dans l’exemple ci-dessus, on ne supprime que les entrées du formulaire qui a l’ID 1. Si vous souhaitez supprimer toutes les entrées de tous les formulaires Gravity Forms d’un site, il suffit d’enlever le _1de la cible de l’action gform_after_submission:

// Delete all entries from all forms.
add_action( 'gform_after_submission', 'sky_remove_form_entry' );
function sky_remove_form_entry( $entry ) {
    GFAPI::delete_entry( $entry['id'] );
}

Garder les fichiers uploadés lors de la suppression des entrées

Attention: supprimer les entrées Gravity Forms revient également à supprimer les fichiers qui auront été uploadés via les formulaires. C’est tout à fait normal puisqu’ils font partie des champs du formulaire.

Pour garder les fichiers uploadés, même si les entrées associées sont supprimées, il faut utiliser le filtre gform_field_types_delete_files:

add_filter( 'gform_field_types_delete_files', '__return_empty_array' );

Supprimer les fichiers associés à un champ upload particulier

Si vous souhaitez supprimer tous les fichiers qui auront été uploadés via un champ upload particulier, il suffit de préciser ce champ dans le tableau $field_types avant de le passer à gform_field_types_delete_files:

add_filter( 'gform_field_types_delete_files', 'sky_delete_custom_upload_field' );
function sky_delete_custom_upload_field( $field_types ) {
    $field_types[] = 'my_custom_upload_field';
    return $field_types;
}

Dans cet exemple, notre champ upload s’appelle my_custom_upload_field.

In an article entitled The Family in Modern Drama, Arthur Miller insisted that all “great plays” finally grapple with one central issue: “how may a man make of the outside world a home?”. Making of the outside world a home would imply being “well-liked”: managing to turn anonymous, business relations into close family ties – that is to say being able, like Dave Singleman, “to go… into twenty or thirty different cities, and pick up a phone, and be remembered and loved and helped by so many different people?” (p.63). In Death of a Salesman, the dream of social success cannot be disentangled from the idyllic vision of society as a large, tightly-knit family.

Yet, there is every reason to believe that Dave Singleman, as his patronymic shows, is a bachelor, when the foundation of the much-vaunted American ideal remains the nuclear family: the nuclear family as an agent of socialization and as a stabilizing influence.

Precisely in Death of a Salesman spectators are given privileged access into the private sphere of a family and occasionally turned into voyeurs. It seems that far from offering a secure, reassuring nest the family also reverberates the tensions of society at large in the 1950s.

1. The Green World patriarchal clan

Willy, through his conversation with Ben (38-41) harks back to his infancy. The image of the father is mythologized by both sons – the elder Ben and the younger Willy – even if Father Loman deserted his wife and children to lead an adventurous life.

The mother is hardly ever referred to. She must nevertheless have had a hard life to provide sustenance and comfort for her two sons. When Ben followed in his father’s footsteps by running off for adventure, Mother Loman still had Willy to look after. Willy, who recalls sitting on “Mamma’s lap” (38), suffered from his father’s absence. The lack of paternal care resulted in his feeling “kind of temporary about (himself)” (40). Mother Loman’s caring presence is trivialized: “fine specimen of a Lady, Mother” (35) and the “old girl”, when reunion with the vanished father is Ben and Willy’s single purpose. Ben started off for Alaska hoping to find his father (37) and Willy elects a father-figure through his total devotion for Dave Singleman, another salesman.

Willy has remained so obsessed with the myth of his Father that he entreats Ben to tell Biff and Happy about their grandfather, so they can learn “the kind of stock they spring from” (38). So, in a way, it is as if all the Loman men sprang directly from their father’s side and as if their mother had had no part to play in their birth. An edenic myth is implied which seems to preclude, or at least downplay woman’s role in the procreation process.

A young nigga with a dollar and a dream
And these Nikes on my feet, tryna stay up out the streets
So I’m rhyming pulling 187s all on these beats
Stead of on the concrete
Cemeting my future while they were focused on what they chief
But shit, I’m like a chief, head honcho
Tell me that it’s impossible I’ll get it to you pronto
Been workin’ all these late nights and these early mornings like Alonzo
So one day they’ll be callin’ me great, just call me Gonzo
But, I’m never actin’ nor is anybody pulling strings
Everything I have came from sacrificing everything
I traded workin’ 9 to 5 for the minimum
For workin non-stop so my life be like a cinema screen
But in the end I wouldn’t have it any other way
Got on my knees and for this rap to work is what I prayed
And now it’s happening, crunchin’ numbers like captain
A serial (cereal) killer compelling listeners with this passion for words
Never actin, my verbs were truly fashioned to serve
Not only masses but curbs, not just the hood, but the burbs
Know you hear it everytime I grace the mic, then I give it to God
Feeling blinded by the lights, and it’s on!

Hook:

Let me see you put ’em up
Reach the sky, touch the stars up above
Cause it’s, one time for the underdog
One time for the underdog

You got the world on your team
Even if that ain’t what it seems
It’s one time for the underdog
One time for the underdog

A 20 year old dreamin’ of whippin’ Monte Carlo’s
And gold jewlery lookin’ like I cam from El Dorado
Pick up the pen and pad, stead of spittin gin and vag
I’m paintin’ pictures with my words, just call me young picasso
These haters only gas me up and then I mash the throttle
Binge drinkers think its safe to say should drop the bottle
Cause what I’m spittin’ is proof, and truth is hard to swallow
When rappers losin’ they heads, that’s word to sleepy hollow
Nowadays they tryna flex, Johnny Bravo
And I’ll be Rocky in the second fight against Apollo
Underdog, but you see, I won the war
Askin me if I can spit is askin’ me to raise the bar
I been in this place before, matter fact most of my life
They told me I would fail, die before I prove ’em right
Pennin’ verses on my lunch bag, now I’m doin shows
Lady luck blew me a kiss, now I’m a prince, never a toad
Bet your bottom, I’m the greatest, that’s on everything I own
And though it isn’t much, I want the world like Al Capone
I’m coming for the glory, this a sermon to the masses
The kid you shitted on is telling you to wipe his ass

Déroulé de l’épreuve d’expression orale

L’expression orale de LV1 ou LV2 se passe durant le troisième trimestre. L’épreuve compte pour le quart (25%) de la note finale de l’épreuve d’anglais.

Vous allez tirer au sort une des quatre notions au programme:

  • Mythes et héros
  • Espaces et échanges
  • Idées de progrès
  • Lieux et formes du pouvoir

L’épreuve d’expression orale du Bac se déroule en trois temps :

  • 10 minutes de préparation au brouillon,
  • 5 minutes de présentation de la notion (pour les L uniquement: 10 minutes de présentation)
  • 5 minutes de discussion avec l’examinateur (pour les L uniquement: 10 minutes de discussion)

Pour les sections ES et S, l’épreuve se déroulement habituellement avec le professeur de langue de l’année de terminale, dans votre lycée.

La section L est interrogée par un autre examinateur, dans un autre lycée, au moment des épreuves orales finales du baccalauréat, aux alentours du 20 juin et plus.

Préparation

Vous avez 10 minutes au brouillon pour préparer vos notes d’exposé. Je vous conseille de rédiger l’introduction et la conclusion, de manière à être à l’aise au début et à la fin de l’épreuve, pour la première impression et la dernière.

Faites un plan détaillé: grandes parties, arguments, exemples mais ne tentez pas de réécrire l’intégralité de la notion, vous n’en aurez clairement pas le temps.

Exposé

Introduction

Dans l’introduction, commencez par introduire la notion que vous allez exposer, en relation avec les documents et débats que vous avez abordés en cours.

Introduisez ensuite la problématique : elle va vous permettre de vous interroger sur une question qui structurera votre exposé et à laquelle vous donnerez une réponse en conclusion, après la mise en balance de vos arguments et exemples.

Annoncez votre plan clairement. Votre plan peut être en deux ou trois parties, pas plus. Je vous conseille de privilégier un plan thématique, qui aborde la problématique de votre notion sous différents angles.

Format de l’épreuve

Vous allez entendre un document audio trois fois: vous disposerez d’une minute de pause après la première et la seconde écoute. A l’issue de la troisième écoute, vous aurez dix minutes pour rédiger en français un compte-rendu de ce que vous aurez compris.

Le document audio fait une minute et trente secondes. En comptant les pauses et le temps de rédaction, la durée totale de l’épreuve est de 16 minutes et 30 secondes.

10 conseils pour bien réussir le compte-rendu de la Compréhension Orale du bac

1. Le document audio que vous allez entendre comporte un titre. Ce titre va vous éclairer sur le thème qui va être abordé. Utilisez-le pour inférer ce que vous allez entendre.

2. Il est normal de ne pas tout comprendre, surtout à la première écoute. Restez concentré, ne paniquez pas. Au fil des différentes écoutes, vous allez comprendre de plus en plus de choses.

3. Utilisez une grande feuille de brouillon sur laquelle vous ne noterez que des mots-clés, et non des phrases entières. Laissez de l’espace entre vos notes de façon à pouvoir les compléter lors des trois écoutes.

4. Lors des pauses d’une minute entre les écoutes, vous pourrez rajouter ce que vous n’avez pas eu le temps d’écrire mais que vous avez mémorisé. Vous pourrez également commencer à organiser vos idées.

5. Prenez vos notes en anglais : c’est ce que vous entendez, c’est donc plus facile et vous n’aurez qu’à copier ce que vous avez compris sans avoir à le traduire.

La continuité pédagogique

La continuité pédagogique est destinée à s’assurer que les élèves poursuivent des activités scolaires leur permettant de progresser dans leurs apprentissages.

Les activités proposées s’inscrivent naturellement dans le prolongement de ce qui s’est fait en classe auparavant et/ou dans une préparation possible de ce qui sera fait dès le retour dans l’établissement.

Le travail demandé doit être régulier. Il doit pouvoir être réalisé dans un temps raisonnable, indiqué explicitement. Le temps consacré à chaque discipline doit être corrélé aux horaires habituels. Les travaux proposés sont adaptés au niveau d’enseignement et aux capacités des élèves. Ils pourront être l’occasion de s’appuyer plus spécifiquement sur des compétences variées adossées au
travail autonome.

Supports de travail

La continuité pédagogique mobilise les supports usuels :

  • Les ressources de l’Espace Numérique de Travail ;
  • Des supports numériques, ressources créées par les enseignants et les ressources éditoriales disponibles (BRNE, Eduthèque…) ;
  • La plateforme du CNED « Ma classe à la maison » . Création d’un compte en tant qu’enseignant lors de la 1ère connexion.
  • Les manuels scolaires en possession des élèves.
  • Les ressources disciplinaires ou transversales du site académique et des autres sites institutionnels.

Les Banques de Ressources Numériques pour l’École (BRNE)

Les Banques de Ressources Numériques pour l’École (BRNE) s’adressent à tous les professeurs du premier et du second degré. Elles offrent gratuitement aux professeurs et aux élèves des ressources pour enseigner et apprendre. Les professeurs bénéficient de l’ensemble des contenus et des services pédagogiques (boîte à outils pour composer des activités numériques interactives) soit en s’inscrivant à l’aide de leur adresse professionnelle académique pour bénéficier d’un accès, soit via l’ENT de leur établissement

Les 14 Banques pour enseigner et pour apprendre du CM1 à la 3e peuvent être utilisées dans les autres niveaux d’enseignement en amont et en aval. Les contenus sont modifiables et les outils permettent aux enseignants de structurer les séquences et activités proposées aux élèves. Les enseignants peuvent également récupérer les travaux.

J’ai eu besoin de tester l’existence d’un paramètre GET dans une URL en utilisant JavaScript. Il se trouve que cela ne prend que quelques lignes.

Pour ce tutoriel, nous allons considérer l’adresse de la page suivante, avec preview=yes passé comme paramètre:

https://example.com/?preview=yes

URLSearchParams() à la rescousse

Il est très simple de récupérer les variables $_GET avec PHP mais avec JavaScript, nous allons utiliser la classe URLSearchParams pour faire cela proprement.

1. On récupère les paramètres passés dans l’URL de la page:

let searchParams = new URLSearchParams(window.location.search);

2. On vérifie si l’un des paramètres recherchés est présent. Ici, on souhaite savoir si le paramètre preview existe:

searchParams.has('preview'); // returns true

3. On vérifie maintenant si preview est égal à yes:

let param = searchParams.get('sent');
param; // echoes 'yes'

Il ne nous reste plus qu’à utiliser la variable param pour l’utiliser ou la comparer.