Skip to content

Latest commit

 

History

History
445 lines (234 loc) · 25.3 KB

books_and_links.MD

File metadata and controls

445 lines (234 loc) · 25.3 KB

Ressources documentaires pour les "creative coders"

Petite sélection de ressources documentaires pour les membres du meetup CreativeCodeParis :

https://www.meetup.com/fr-FR/CreativeCodeParis/


Voici deux nouvelles pages, créées juste après le 1er confinement, sur des thématiques plus ciblées :

  • ressources autour du graphisme 3D (notamment WebGL mais pas seulement)

https://github.com/gregja/CreativeCodingParis/blob/master/ressources_webgl.md

  • ressoures autour du son et de l'API WebAudio (page très incomplète... en chantier...)

https://github.com/gregja/CreativeCodingParis/blob/master/ressources_webaudio.md


Dans cette page, que nous avons réactualisée en janvier 2023, nous vous proposons un tour d'horizon de sites pour :

  • vous procurer de bons bouquins, de préférence en version numérique (PDF notamment)

  • vous former en ligne, apprendre de nouvelles techniques, ou vous perfectionner

Beaucoup des ressources les plus récentes en matière de creative coding sont en anglais, mais il y a quelques exceptions, et si nous en débusquons de nouvelles dans les jours et les semaines qui viennent, nous mettrons à jour cette page.

Si vous avez un compte Github, pensez à sélectionner l'option "watch" en haut de cette page, histoire d'être tenu au courant des mises à jour qui pourraient intervenir sur cette page.

Nous vous proposons aussi, à la fin de cette page, quelques pistes de lecture, qui ne sont pas en lien avec le creative coding, mais qui pourraient vous inspirer dans vos projets créatifs (notamment quelques essais d'historiens et de sociologues).

Si vous recherchez un ouvrage en français, nous vous recommandons la plateforme de libraires indépendants "Place des libraires", sur laquelle nous espérons que vous trouverez votre bonheur. Cette plateforme offre la possibilité d'acheter les ouvrages en format papier, et dans certains cas, numérique :

https://www.placedeslibraires.fr/

A notre connaissance, les deux éditeurs français proposant des ouvrages sur la programmation sont Eyrolles et Dunod. Eyrolles a intégré à son catalogue, en les traduisant, quelques ouvrages pour le creative coding de l'éditeur NoStarch, nous y reviendrons par la suite.


Si vous recherchez des ouvrages sur la programmation et le creative coding, et qu'ils n'existent pas en version française, voici une liste d'éditeurs en langue anglaise qu'on aime bien à CreativeCodeParis. Nous avons privilégié dans cette sélection des éditeurs qui proposent des ouvrages en version numérique, dans différents formats (PDF, Epub, etc.) et sans DRM. Nous sommes plusieurs, à CreativeCodeParis, à nous approvisionner sur ces plateformes pour notre veille techno et notre formation personnelle.

Attention, quel que soit l'ouvrage retenant votre attention, nous vous conseillons de toujours vérifier sa date de publication. Les technologies évoluent vite, et un livre publié il y a 4 ou 5 ans peut très bien être obsolète. Donc si vous hésitez entre deux livres aux contenus proches, il est peut être préférable de sélectionner celui qui a la date de parution la plus récente.

Ce dernier conseil est à prendre avec précaution, car certains livres plus anciens, même s'ils ne sont pas à jour par rapport à une technologie donnée, peuvent regorger d'astuces et de bonnes idées à côté desquelles il serait dommage de passer (on pense par exemple à des ouvrages consacrés à Processing 2 proposés par Packt Publishing).

Il y a aussi d'excellents ouvrages consacrés à ActionScript - la version de Javascript intégrée dans Flash, plus guère utilisée aujourd'hui - qui fourmillent de bonnes idées qui peuvent être reprises en Javascript ou sur d'autres langages. Comme par exemple l'ouvrage "Flash Math Creativity" disponible chez Apress.


Editeur n° 1 : Packt Publishing

https://www.packtpub.com/

Chez Packt Publising, vous trouverez de nombreux livres sur Javascript, Webgl, OpenGL, ThreeJS, BabylonJS, Processing 2 (certes un peu anciens mais contenant de bonnes idées à adapter sur Processing 3 ou sur d'autres outils), des livres sur le "Machine Learning" (ML), le "Natural Language Processing" (NLP), des livres sur Unreal, Unity, sur le "Game Programming", etc.

Et vous y trouverez aussi un ouvrage, paru en janvier 2020 et écrit par un de nos membres, Alexandre Dubreuil. Cet ouvrage est consacré à Magenta, un outil basé sur Tensorflow et dédié à la musique générative :

https://www.packtpub.com/data/hands-on-music-generation-with-magenta

Alexandre était venu nous présenter Magenta, lors d'un meetup en octobre 2018.


Editeur n° 2 : NoStarch

https://nostarch.com/

NoStarch a à son catalogue plusieurs ouvrages pour s'initier à la programmation, s'adressant à différentes tranches d'âge. On y trouve des livres consacrés à Scratch, à Minecraft, etc.

Plusieurs des livres de NoStarch ont été traduits en français. Par exemple, l'excellent livre "Javascript for kids" de Nick Morgan, a été traduit chez Eyrolles sous le titre "Javascript pour les kids" (vous pouvez le commander sur le site "Place des Libraires" cité plus haut). Si vous n'êtes pas sûr de la manière dont un titre a pu être traduit en français, faites une recherche avec le nom de l'auteur, c'est plus sûr.


Editeur n° 3 : Manning

https://www.manning.com/

Moins d'ouvrages consacrés au Creative Coding sur ce site, mais de très bons ouvrages qui traitent de sujets qui peuvent vous être utiles dans vos projets créatifs (Machine Learning, Deep Learning, Javascript, etc.).

A noter que les livres estampillés MEAP sont des livres en cours d'écriture, que vous pouvez commander et recevoir dans leurs versions partielles tout en bénéficiant de mises à jour plus ou moins régulières (une version définitive est mise à votre disposition sur la plateforme de l'éditeur lorsque le livre est terminé). C'est une approche intéressante si vous avez besoin de vous former sur une techno émergente pour laquelle il existe peu de documentation.

Signalons un des rares ouvrages de Manning à avoir été traduit en français :

  • "Deep Learning avec Javascript, Réseaux de neurones dans Tensorflow.js", de Cai/Bileschi/Nielsen/Chollet, éd. Manning / First Interactive (2020)

Un ouvrage un peu à part (par rapport aux thèmes habituels de l'éditeur), c'est "Programming for Musicians and Digital Artists". C'est un livre consacré à la synthèse sonore, et dédié à Chuck (un langage de programmation destiné à la création sonore que vous pouvez télécharger sur https://chuck.cs.princeton.edu/ )


Editeur n° 4 : Leanpub

https://leanpub.com

Un éditeur dédié aux auteurs indépendants, sur lequel vous trouverez de tout : Game programming, Javascript, etc.

A notre connaissance, le seul livre consacré à la carte son Axoloti - carte qu'on aime bien à CreativeCodeParis - se trouve sur cette plateforme: https://leanpub.com/getting-started-with-axoloti

Le catalogue de Leanpub est en perpétuelle évolution, le mieux c'est d'explorer en fonction de vos centres d'intérêt.


Editeur n° 5 :

https://link.springer.com

Apress était anciennement un éditeur indépendant, qui a été racheté par Springer. Le fond d'ouvrages d'Apress est désormais en vente au travers du site de Springer, qui propose de surcroît un large catalogue qui va bien au delà de la programmation et de l'informatique.

Dans ce catalogue, qui s'enrichit continuellement, on trouve beaucoup de livres intéressants pour les "creative coders". Certains de ces livres sont un peu anciens, mais ils fourmillent de bonnes idées à reprendre et à adapter, comme par exemple le livre "Flash Math Creativity", rédigé par un collectif d'artistes. Il est orienté sur Actionscript, mais il est très inspirant.

Un très bon livre que l'on vous recommande également, c'est "Foundation Game Design with HTML5 and JavaScript", de Rex Van der Spuy (2012).

A signaler aussi, un très bon livre de Keith Peters, "Foundation Actionscript 3.0 Animation", qui date de 2007. C'est un ouvrage de référence pour acquérir de bonnes bases en matière d'animation 2D en particulier (plus quelques notions de 3D). Ce livre a fait l'objet d'une adaptation au Javascript par Billy Lamberta (en 2011), sous le titre "Foundation HTML5 Animation with JavaScript" (livre également disponible au catalogue de Springer).

A noter que Keith Peters anime la chaîne Youtube CodingMath, et qu'il a publié - indépendamment de Springer - un ouvrage consacré à la programmation d'images fractales, "Playing with Chaos", que vous pouvez acquérir en version numérique ici : http://www.playingwithchaos.net/


Puisqu'on en est à parler (un peu) d'Actionscript, faisons un petit décrochage dans le temps.

En 2002, un brillant développeur Actionscript, Robert Penner, publie chez McGrawHill l'ouvrage suivant :

"Programming Macromedia Flash MX"

Ce livre est aujourd'hui épuisé, et c'est bien dommage car il est passionnant, son auteur étant un excellent pédagogue. Mais vous pouvez quand même télécharger librement le chapitre 7 du livre, qui s'intitule "Motion, Tweening, and Easing", sur la page suivante (cf. le lien "Tweening chapter of my book") :

http://robertpenner.com/easing/

Les techniques que Robert Penner décrit dans ce chapitre sont à la base des effets d'animation de frameworks Javascript comme jQuery, D3.js ou TweenMax.js (GSAP). C'est très intéressant de savoir comment ça marche, car vous pouvez réutiliser facilement ces techniques dans vos popres projets.


Et si on parlait des MOOC ?

Car les livres en version numérique, c'est cool, mais se former seul ce n'est pas toujours facile, surtout si vous vous attaquez à un sujet qui est très nouveau pour vous.

Pour rappel, MOOC est l'acronyme de "Massive Open Online Course", que l'on peut traduire en français par "formation en ligne ouverte à tous".

Les plateformes de MOOC suivantes peuvent vous apporter une aide précieuse pour aborder toutes sortes de sujets (en lien avec le creative coding ou pas) :

Coursera et Kadenze sont des plateformes reconnues qui proposent de nombreux MOOCs orientés sur le design visuel et sonore, le graphisme 2D et 3D, la composition musicale, etc.

La plupart des cours vidéos de Elephorm sont en français, et on y trouve beaucoup de cours orienté sur la composition musicale, le sound design (Ableton, Reaper, plugins VST, etc.), ainsi que la 3D avec Blender et d'autres outils.

Frontendmasters est plutôt orienté Développement Web, mais le site propose aussi des cours très intéressants de Matt DesLauriers, que beaucoup de creative coders connaissent (je recommande ses cours sur ThreeJS et WebAudio).

Domestika est un nouveau venu qui propose de nombreux MOOCs sur le graphisme 3D, mais aussi 2D.

Le site FUN-MOOC propose la plupart des ses MOOC en français. On y trouve quelques MOOCS orientés vers les arts numériques, tels que :

  • Modéliser en 3D avec FreeCAD
  • Imprimer en 3D
  • S'initier à la fabrication numérique
  • Programmer un objet avec Arduino
  • Anima Podi 1 : À la recherche du rebond parfait (MOOC de l'Ecole des Gobelins)
  • Anima Podi 2: À la recherche du pas perdu (MOOC de l'Ecole des Gobelins)

Sur Fun-MOOC, les MOOCs sont gratuits, mais ils ne sont pas accessibles en permanence. Certains MOOCs terminés sont réouverts périodiquement. Si vous vous êtes inscrit à un MOOC mais que vous n'avez pas eu le temps de le finir dans les temps, il demeure dans votre portfolio et vous pouvez le terminer à votre rythme.


Editions ISTE

Les éditions ISTE proposent différents ouvrages de niveau universitaire, dont certains pourraient se révéler utiles aux creative coders. Dans leurs versions numériques (ebooks au format PDF), tous les ouvrages sont proposés - en version française mais aussi en version anglaise - au tarif imbattable de 9,90 euros:

https://www.istegroup.com/fr

Parmi les ouvrages qui nous semblent pouvoir intéresser les creative coders, on trouve :

  • Les machines de la musique électronique, de Jean-Michel Réveillac
  • Les effets sonores musicaux, de Jean-Michel Réveillac
  • Techniques musicales, de Dominique Paret et Serge Sibony

A signaler également, une série de 3 ouvrages consacrés à la modélisation géométrique, avec application à la 3D et à la CAO (le 3ème tome étant consacré à la modélisation de fractales en 3D) : https://www.istegroup.com/fr/series/modelisation-geometrique-et-applications/

Pour les plus courageux, une série d'ouvrages consacrés aux équations mathématiques du mouvement : https://www.istegroup.com/fr/search/equations%20du%20mouvement


Nous terminons cette page par des informations en vrac, difficilement classables, nous vous laissons le soin d'y piocher ce qui vous intéresse.


Pure Data

Pure Data est un logiciel passionnant que beaucoup de musiciens affectionnent. Si vous ne connaissez pas, un petit détour par Wikipedia s'impose :

https://fr.wikipedia.org/wiki/Pure_Data

De nombreuses ressources existent sur internet concernant Pure Data, en voici deux :


Les cahiers de l'ACME

Pour les passionnés de son et de musique électronique, signalons l'existence de l'association "Les Cahiers de l'ACME". C'est une association fondée en 1981, qui publie des dossiers et des livres (format papier uniquement) consacrés au son et à la norme MIDI :


L'API WebAudio

La newsletter WebAudio Weekly, à laquelle vous devez IMPERATIVEMENT vous abonner (car elle est très intéressante): https://www.webaudioweekly.com/

Voici quelques bonnes ressources sur WebAudio, répertoriées par nos amis Simon et Simon (en 2018), animateurs de technos Jams à la Paillasse : https://hackmd.io/s/SJ6KZ_lPz#

Une liste de ressources répertoriée par Alejandro, le créateur de Pizzicato.js : https://github.com/alemangui/web-audio-resources


Processing et P5.js

Beaucoup de creative coders se sont initiés à la programmation via Processing, une plateforme de développement basée sur le langage de programmation Java.

Si vous débutez dans le creative coding et ne connaissez pas bien Processing, un petit détour par Wikipedia peut être utile :

https://fr.wikipedia.org/wiki/Processing

Le site officiel de Processing répertorie les meilleurs livres consacrés à ce bel outil :

https://www.processing.org

Pour éliminer par avance tout risque de confusion, il est important de retenir qu'il existe deux adaptations de Processing en Javascript, les projets Processing.js et P5.js :

  • Processing.js : ce projet permet de coder soit intégralement en Java, soit intégralement en Javascript, ou de mixer les deux langages. Ce très beau projet a été pendant une période la seule solution pour faire fonctionner des sketchs Processing dans un navigateur (avant l'arrivé de P5.js). Processing.js est malheureusement à l'arrêt depuis décembre 2018, même s'il est encore utilisé par le site openprocessing.org pour faire fonctionner en ligne tous les sketchs Processing qui sont proposés par la communauté.

site officiel : http://processingjs.org/

  • P5.js : c'est le projet officiel de la fondation Processing pour le portage de Processing en Javascript

site officiel : https://p5js.org/

La communauté des développeurs Processing et P5 est très active et vous pouvez décourir de nombreux sketchs Processing ou P5 sur OpenProcessing.org :

site officiel : https://www.openprocessing.org/

A noter un Floss Manual en français sur Processing : https://frama.link/zTXBvvMf


Alice

Vous avez envie de vous initier à la programmation de graphisme 3D ? Vous avez envie de créer des mondes virtuels en 3D ? Vous avez envie de vous initier à la programmtion en Java ?

Et si vous vous mettiez à Alice.

Développé par des enseignants et chercheurs de l'Université Carnegie Mellon, Alice est un outil conçu pour s'initier à la fois à la programmation en Java et à la création et à l'animation de mondes en 3D.

Alice est multiplateforme, librement téléchargeable, et il existe une version intégrable dans Unity :

http://www.alice.org/

Le site officiel propose de nombreux tutos et ressources en ligne. Et vous pouvez vous former via un MOOC proposé sur Coursera:

https://www.coursera.org/learn/introtoalice


L'histoire de la musique électronique

Si vous vous intéressez à l'histoire de la musique électronique, le livre "The Sound Of Innovation", consultable gratuitement en ligne, devrait vous intéresser.

Pour info, le CCRMA est l'équivalent aux Etats-Unis de l'IRCAM en France. D'ailleurs les deux instituts ont collaboré étroitement à de nombreuses reprises. Pour la petite histoire, c'est au CCRMA qu'a été développée l'architecture du synthé DX7 qui sera commercialisé par Yamaha au début des années 80 (avec un succès retentissant).

Si vous n'êtes pas assez à l'aise en anglais pour vous attaquer au livre du CCRMA, tout n'est pas perdu, car il existe de très bons livres en français :

  • "Les fous du son", de Laurent De Wilde, aux éditions Grasset, 2016
  • "Musiques électroniques, des avant-gardes aux dance-floors", de Guillaume Kosmicki, éd. Le mot et le reste, 2016
  • "Techno rebelle, un siècle de musiques électroniques", de Ariel Kyrou, éd. Denoël X-Trème, 2002

Le livre de Ariel Kyrou est plus difficile à trouver car plus édité, mais on arrive à le trouver d'occasion. Autre livre ancien et difficile à trouver, mais tout aussi passionnant :

  • "Le son musical, musique, acoustique et informatique", de John R.Pierce, éd. Pour la Science / Belin, 1984 pour la version française

Live coding

Un certain nombre de "creative coders" pratiquent le "live coding", qui est une activité hautement addictive.

Le "live coding" (codage en direct) est une nouvelle direction dans la musique et la vidéo électroniques. Les "live coders" modifient leur code en direct pour générer de la musique et/ou des visuels improvisés. Le code est projeté sur un écran et le public assiste en direct aux effets des modifications opérées dans le code, pour le meilleur et quelquefois pour le pire (ah, les affres du bug en direct...).

Le codage en direct fonctionne à travers différents genres musicaux, on en a vu dans les salles de concert, les bars de jazz de fin de soirée, ainsi que les algoraves.

Une algorave (terme composé à partir d'algorithme et de rave) est un événement où les gens dansent sur de la musique générée à partir d'algorithmes, qui sont souvent écrits ou modifiés en live. Alex McLean et Nick Collins ont inventé le mot "algorave" en 2011, et le premier événement sous un tel nom a été organisé à Londres, au Royaume-Uni. Depuis lors, des algoraves se déroulent dans le monde entier.

TOPLAP est une organisation fondée en 2004 dans le but d'explorer et de promouvoir le codage en direct :

Certains logiciels de "live coding" sont dédiés au son, d'autres à la vidéo, mais certains outils permettent de générer simultanément du son et de la vidéo, créant ainsi des expériences synesthésiques. Vous allez trouver sur la page ci-dessous une liste impressionnante d'outils dédiés au "live coding" :

Toplap est très actif et on peut discuter directement avec les créateurs des différentes technos, entre autre @yaxu (Alex McLean) qui a créé le logiciel Tidal Cycles.

A propos de Live coding, voici un outil fort sympathique, découvert tout récemment, pour live coder du shader en WebGL, jusqu'à plus soif :

L'outil s'installe en local très simplement, et pour vous faire une idée, vous pouvez le tester en ligne ici : https://shawnlawson.github.io/The_Force/

Autre projet découvert tout récemment, le projet Sonic Pi, pour live coder du gros son et de bonnes rythmiques jusqu'à tard dans la nuit :


Quelques documentaires à voir :

  • un beau documentaire sur le compositeur Steve Reich, "Phase to Face", à voir absolument :

  • un beau documentaire sur un groupe mythique de la musique électronique

    • Tangerine Dream, de Margarete Kreuzer (All., 2016, 60 min).

Quelques bonnes ressources en vrac :

Un bon livre en français sur OpenGL qui couvre également WebGL (on l'a lu, il est top) :

A noter que l'on trouve aussi chez D-Booker quelques ouvrages en français consacrés à des moteurs de création de jeux comme Godot, Unity, etc.


Des livres pour comprendre et repenser le monde

  • "Du nouveau sous le soleil, Une histoire de l'environnement mondial au XXème siècle", de John R. McNeill, éd. ChampVallon / Points

  • "6 Le soulèvement des machines", de Alexandre Laumonier, éd. Zones Sensibles / Points

  • "5 Retour vers le Futur", de Alexandre Laumonier, éd. Zones Sensibles / Points

  • "4/3", de Alexandre Laumonier, éd. Zones Sensibles, Janvier 2019

  • "La théorie de l'information", de Aurélien Bellanger, éd. Gallimard 2012

  • "Le virtuel, vertus et vertiges", de Philippe Quéau, éd. Champ Vallon / INA 1993

  • "Le miroir automate, introduction à une philosophie de l'informatique", de Gérard Chazal, éd. Champ Vallon / INA 1995

  • "Le théorème de Gödel", de Nagel/Newman/Gödel/Girard, éd. Seuil 1989

  • "L'empire cybernétique, des machines à penser à la pensée machine", de Céline Lafontaine, éd. Seuil 2004

  • "La cybernétique", de Norbert Wiener, éd. Seuil 2014

  • "Les objets fractals", de Benoit Mandelbrot, éd. Flammarion 1989

  • "La théorie du chaos", de James Gleick, éd. Champs Flammarion - Science - octobre 2008

  • "Hasard et Chaos", de David Ruelle, éd. Odile Jacob (mars 2010)


Nous vous souhaitons de bonnes lectures, et de belles découvertes...

L'équipe de CreativeCodeParis