diff --git a/package.json b/package.json index dff96a7..2b5230f 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "license": "MIT", "scripts": { "extract-data": "node tools/extract-data.js", + "speakers": "node tools/generate-speakers.js", "publish": "echo 'TODO: firebase deploy'", "publish:prod": "echo 'TODO: firebase deploy -P devfest-prod'" }, diff --git a/test-hugo/content/blog/_index.md b/test-hugo/content/blog/_index.md index ab76606..9bff67d 100644 --- a/test-hugo/content/blog/_index.md +++ b/test-hugo/content/blog/_index.md @@ -1 +1,3 @@ -# Blogs \ No newline at end of file +--- +title: Blog +--- diff --git a/test-hugo/content/blog/cfp.md b/test-hugo/content/blog/cfp.md new file mode 100644 index 0000000..ed1b673 --- /dev/null +++ b/test-hugo/content/blog/cfp.md @@ -0,0 +1,56 @@ +--- +title: Appel à orateurs +brief: Ouverture du Call for Papers +image: speakers.jpg +color: #fff +date: 2018-04-03T12:47:57+01:00 +draft: true +--- + +Le DevFest Toulouse aura lieu, pour sa troisième édition, **le 08 Novembre 2018 au Centre des Congrès Pierre Baudis de Toulouse** et réunira 600 développeur·se·s, personnes travaillant dans les métiers techniques de l’informatique et étudiant·e·s. + +En attendant, le jour J, le [CFP](https://devfest-toulouse.cfp.io/) (Call For Papers / Appel à Papiers) du DevFest Toulouse est désormais ouvert ! Cette année, vous pouvez soumettre du 1er avril (et non ce n’était pas un poisson ^^) **jusqu’au 1er Juillet 2018**. Nous délibérerons ensuite pendant le mois de Juillet. + +![](sylvain.jpg) + +## Les formats + +Nouveauté cette année, vous vous proposons deux types de talks : +- le format **lightning talk**/quickie, d’une durée de **15 minutes**, comme l’an dernier +- le format **conférence** qui passe de 45 à **40 minutes** SANS QUESTION! + +Pour ce qui est des questions, pas de panique, nous avons essayé de penser à tout. Nous demanderons aux speakers d’être dans le stand “speaker booth” la demi-heure suivant leur talk afin de répondre aux éventuelles questions. +L’avantage de ce format plus court est de se focaliser sur le contenu de la conférence et de donner le temps aux personnes d’aller poser leurs questions tranquillement après. + +![](pauline.jpg) + +## Les catégories/types de talks + +Afin de faciliter la soumission des talks, nous avons diminué le nombre de catégories de l’an dernier, ce qui donne cette petite liste : + +- **Native mobile apps** : Android,iPhones, React Native et autres développements mobiles +- **Web** : Les dernières technos web (PWA, polymer, services workers ...)... +- **Methods & Tools** : Ici on parle de craftsmanship, de DevOps, d’intégration et de déploiement continue, d’IaC (Infrastructure as Code) ... +- **Big Data / ML / AI** : Small et Big Data, Machine Learning et Intelligence Artificielle +- **UX** : Ergonomie et expérience utilisateur +- **IoT** : Objets connectés +- **Cloud** : GCP, AWS, Azure, Kubernetes ... +- **Languages** : Une conf sur un langage en particulier ? A propos de Rust, Golang, Swift … vous pourrez choisir cette catégorie +- **WTF et autres** : Une idée de talk mais qui n'entre pas dans les précédentes catégories ? Pas de soucis, vous pouvez également soumettre votre talk. + +Vous pouvez soumettre un talk en Français ou en Anglais. + +![](speakers.jpg) + +## Vous m’avez convaincu·e, je soumets ! + +Comme dit ci-dessus, les soumissions sont ouvertes **jusqu’au 1er Juillet 2018**. L’année dernière nous avons reçu plus de 150 soumissions ! N’attendez pas le dernier moment, soumettez un talk dès à présent ! + +
+ + Je soumets ! + +
+ +Vous avez des questions ? Vous pouvez écrire un message à l’équipe à [contact@devfesttoulouse.fr](contact@devfesttoulouse.fr +) ou bien sur notre compte Twitter [@DevFestToulouse](https://devfesttoulouse.fr). diff --git a/test-hugo/static/images/posts/2018-04-03-cfp/pauline.jpg b/test-hugo/content/blog/cfp/pauline.jpg similarity index 100% rename from test-hugo/static/images/posts/2018-04-03-cfp/pauline.jpg rename to test-hugo/content/blog/cfp/pauline.jpg diff --git a/test-hugo/static/images/posts/2018-04-03-cfp/speakers.jpg b/test-hugo/content/blog/cfp/speakers.jpg similarity index 100% rename from test-hugo/static/images/posts/2018-04-03-cfp/speakers.jpg rename to test-hugo/content/blog/cfp/speakers.jpg diff --git a/test-hugo/static/images/posts/2018-04-03-cfp/sylvain.jpg b/test-hugo/content/blog/cfp/sylvain.jpg similarity index 100% rename from test-hugo/static/images/posts/2018-04-03-cfp/sylvain.jpg rename to test-hugo/content/blog/cfp/sylvain.jpg diff --git a/test-hugo/static/images/posts/2018-04-03-cfp/tugdual.jpg b/test-hugo/content/blog/cfp/tugdual.jpg similarity index 100% rename from test-hugo/static/images/posts/2018-04-03-cfp/tugdual.jpg rename to test-hugo/content/blog/cfp/tugdual.jpg diff --git a/test-hugo/content/blog/cr-cfp.md b/test-hugo/content/blog/cr-cfp.md new file mode 100644 index 0000000..401d5c9 --- /dev/null +++ b/test-hugo/content/blog/cr-cfp.md @@ -0,0 +1,87 @@ +--- +title: Retrouvez la liste complète des talks ! +brief: Compte rendu CFP +image: cover.jpg +color: #fff +date: 2018-08-02T12:47:57+01:00 +draft: true +--- + +Après plusieurs heures de délibération, de nombreux post it et moult crackers et pizza, nous avons enfin réussi à nous mettre d’accord sur l’ensemble des talks de l’édition 2018 du DevFest Toulouse ! + 💪 +Le travail fut fastidieux, vous avez été nombreux à nous proposer des talks de très bonne qualité. 302 talks soumis soit 146 talks et 65 speakers de plus qu’en 2017 ! + +Merci à tous ! Merci de nous avoir titillé les neurones, d’avoir excité notre curiosité et de nous avoir permis de débattre de longs moments. + +Nous espérons que la sélection sera à la hauteur de vos attentes. + +Avant tout, nous souhaitons remercier les 221 speakers qui ont proposé des sujets jusqu’au dernier moment. +Nous voulons aussi remercier les quelques uns qui n’ont pas pu proposer leur sujet à temps mais qui ont quand même tenu à essayer ;-) + +Et maintenant quelques chiffres dont nous sommes fiers : + +![](nombre-proposition.png) + +Sur les 302 talks proposés nous avons été obligé d’en retenir seulement 41 ! (Quand on vous dit que cela n’a pas été facile !) + +L’année dernière il y avait 156 talks proposés, presque le double cette année. On est super fiers et un peu fatigués. +Et encore une fois : la qualité était au rendez-vous. + +Sur 41 talks vous aurez : +9 quickies +32 talks au format conférence dont 6 en anglais +31 speakeurs (dont 8 super speakeuses) + +Les propositions de sujets ont été assez variées avec une nette domination pour les sujets Web et Méthodes. + +![](graph-theme.png) + +La liste complète des speakers est disponible sur le site : https://devfesttoulouse.fr/speakers/ +Bon, on ne va pas vous mentir, il est possible que cette liste évolue légèrement selon les disponibilités et les contretemps de chacun(e). Nous la mettons à jour dès que possible donc n’hésitez pas à y jeter un coup d’oeil de temps en temps ou vous inscrire à la newsletter pour rester informés (par ici : https://devfesttoulouse.fr/). +Nous vous en informerons aussi sur notre compte Twitter @DevFestToulouse . + +Pour les sujets, allez, on est sympa, on vous dit tout : +* Ceinture noire Karate en tests d’API REST +* Premiers pas avec Capacitor... dans le monde réel +* Votre mission ? Découvrir Haskell et le mettre en prod +* Développer une application web avec Rust +* La programmation fonctionnelle sans céder à la mode +* Architecture Decision Records: Réconciliez vous avec votre documentation +* Machine Learning in the browser +* Détectez et trackez les Zergs qui se cachent dans vos dépendances ! +* La tête dans les nuages avec un Raspberry Pi +* Agile, Craftsmanship, DevOps and other monsters - how to fight with them. +* De la domotique faite-maison avec Android Things et le Google Assistant +* Google Container Tools : développer efficacement dans un monde de conteneurs +* \#RetourAuxSources : 🍪 Les cookies HTTP +* Des APIs de Machine Learning sur étagère, à l'entrainement distribué dans le cloud +* Tests BDD: faites rédiger vos tests End-to-End par les fonctionnels +* Et si on parlait accessibilité du web ? +* Tensorflow, is there really no spoon ? +* Comment perdre sa surchage featurale ? +* Angular Elements +* Comment t'organiser quand tu es b****lique de naissance (et depuis des décennies), que tu as plusieurs jobs (ou projets), sans exploser en vol ... Et bosser à plusieurs ... Et y arriver +* Au pays des Gophers (à partir de 3 ans) +* Découvrir par l’exemple: Microservices et Event Sourcing avec Kafka et Kubernetes +* Testcontainers pour de vrais tests d'intégration d'Elasticsearch +* Systemd, de /dev/null à root +* Burger Quiz s'invite au DevFest avec un Sel ou Poivre "Code, Data ou les deux" +* Introduction à Arrow - Typeclass is the new interface +* Comprendre le théorème de CAP avec Apache Kafka +* Remake de jeux rétro avec Vue.js +* Exploring reactive programming in Java +* The Big Web Quizz +* Getting started with development for the Google Assistant +* Pourquoi et comment crafter la Data-Science sur mesure. +* Multiplatfom projects with Kotlin +* GCP pour les Data Scientists +* CONTEXTVS, STVLTE! (Context, stupid!) +* S'aider du Data-Oriented Design pour écrire des applications performantes + +Concernant le programme, il faudra que vous patientez encore un peu. Mais vous avez vos billets ? c’est le plus important ! Et vous savez quoi ? Nous allons mettre en vente les derniers billets à partir du 1er Août ! + +Vous le savez chaque année on essaie d’innover, et une des nouveautés cette année, est que nous aurons des Sketchnotes ! +Pour ceux qui découvrent, ce sont des prises de note visuelles. On ne vous en dit pas plus, juste que d’habitude, elles sont deux. L’une d’elles, (Amélie) nous a informé qu’elle ne pourra être présente car elle a une superbe opportunité (on lui souhaite une belle réussite!). Anne assurera seule et nous avons hâte de vous la présenter. +Pour finir, merci à toutes et à tous. +C’est grâce à vous que le DevFest Toulouse existe et grâce à vous qu’il prend chaque année un peu plus d’ampleur. +🤗 diff --git a/test-hugo/static/images/posts/2018-08-02-cr-cfp/cover.jpg b/test-hugo/content/blog/cr-cfp/cover.jpg similarity index 100% rename from test-hugo/static/images/posts/2018-08-02-cr-cfp/cover.jpg rename to test-hugo/content/blog/cr-cfp/cover.jpg diff --git a/test-hugo/static/images/posts/2018-08-02-cr-cfp/graph-theme.png b/test-hugo/content/blog/cr-cfp/graph-theme.png similarity index 100% rename from test-hugo/static/images/posts/2018-08-02-cr-cfp/graph-theme.png rename to test-hugo/content/blog/cr-cfp/graph-theme.png diff --git a/test-hugo/static/images/posts/2018-08-02-cr-cfp/nombre-proposition.png b/test-hugo/content/blog/cr-cfp/nombre-proposition.png similarity index 100% rename from test-hugo/static/images/posts/2018-08-02-cr-cfp/nombre-proposition.png rename to test-hugo/content/blog/cr-cfp/nombre-proposition.png diff --git a/test-hugo/content/blog/hello-2019.md b/test-hugo/content/blog/hello-2019.md index 05f3a14..b2ddf0e 100644 --- a/test-hugo/content/blog/hello-2019.md +++ b/test-hugo/content/blog/hello-2019.md @@ -1,22 +1,26 @@ --- -title: "Hello 2019" -date: 2018-12-16T12:47:57+01:00 +title: Hello 2019 +brief: Lancement du DevFest Toulouse 2018 +image: launch2018.jpg +color: #fff +date: 2018-03-27T12:47:57+01:00 draft: true --- +## Tada :tada: + Aujourd’hui, nous avons le plaisir de vous annoncer que la 4e édition se déroulera : -**Le jeudi XX novembre -au Centre des Congrès Pierre Baudis.** +**Le jeudi XX novembre,au Centre des Congrès Pierre Baudis.** Situé en plein coeur de Toulouse, dans le quartier de Compans Cafarelli, accessible en transport en commun et en voiture, nous aurons l’occasion d’accueillir **plus de conférences**, **plus de partenaires** et surtout **plus de participants**. -![](images/posts/2018-03-27-lancement-devfest-toulouse-2018/baudis.jpg) +![baudis](./baudis.jpg) Et… roulement de tambour, petite **nouveauté 2019**, il y aura un thème : -**LE FROMAGE** +**LE FROMAGE :cheese:** Ce thème sera décliné sur l’ensemble de la journée avec des **goodies**, une **décoration au top** et si vous voulez vous déguiser en Camenbert ou en Roquefort, @@ -27,7 +31,6 @@ Nous invitons également nos partenaires à jouer le jeu ;-). ## La suite des réjouissances - Ouverture du CFP : **début Avril** - - Ouverture de la billetterie (environ 700 places disponibles) : **en Avril**. ## En attendant, vous pouvez voir ou revivre le **DevFest** ! @@ -42,12 +45,12 @@ Nous invitons également nos partenaires à jouer le jeu ;-). - et pas mal de nuits courtes, de midis et de week-end bien chargés pour les XX bénévoles. - + ## Vous en voulez encore ? -- [Retrouvez toutes les conférences de l’édition 2018](TODO) -- [Revivez l’édition 2018 en photos](TODO) +- Retrouvez toutes les conférences de l’édition 2018 +- Revivez l’édition 2018 en photos - [Le programme et toutes les infos : sur le site Edition 2018](https://2018.devfesttoulouse.fr/) diff --git a/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/baudis.jpg b/test-hugo/content/blog/hello-2019/baudis.jpg similarity index 100% rename from test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/baudis.jpg rename to test-hugo/content/blog/hello-2019/baudis.jpg diff --git a/test-hugo/static/images/backgrounds/launch2018.jpg b/test-hugo/content/blog/hello-2019/launch2018.jpg old mode 100755 new mode 100644 similarity index 100% rename from test-hugo/static/images/backgrounds/launch2018.jpg rename to test-hugo/content/blog/hello-2019/launch2018.jpg diff --git a/test-hugo/content/speakers/alessio_coltellacci.md b/test-hugo/content/speakers/alessio_coltellacci.md new file mode 100644 index 0000000..19744f2 --- /dev/null +++ b/test-hugo/content/speakers/alessio_coltellacci.md @@ -0,0 +1,18 @@ +--- +id: alessio_coltellacci +name: Alessio Coltellacci +company: Clever Cloud +companyLogo: /images/speakers/company/clever_cloud.jpg +country: 'Toulouse, France' +photo: /images/speakers/alessio_coltellacci.jpg +socials: + - icon: twitter + link: 'https://twitter.com/lightplay8' + name: '@lightplay8' + - icon: github + link: 'https://github.com/NotBad4U' + name: NotBad4U + +--- + +Développeur système chez Clever Cloud, je développe des applications low level en Rust, C, C++. Le reste du temps je m'amuse avec les features low level du kernel: ebpf, XDP socket, Intel SGX ... et Infographiste 3d sur mon free time depuis +7ans. diff --git a/test-hugo/content/speakers/alexandre_delattre.md b/test-hugo/content/speakers/alexandre_delattre.md new file mode 100644 index 0000000..ebdd820 --- /dev/null +++ b/test-hugo/content/speakers/alexandre_delattre.md @@ -0,0 +1,23 @@ +--- +id: alexandre_delattre +name: Alexandre Delattre +company: MonkeyPatch +companyLogo: /images/speakers/company/monkeypatch.jpg +country: 'Toulouse, France' +photo: /images/speakers/alexandre_delattre.jpg +socials: + - icon: twitter + link: 'https://twitter.com/alexandre_del31' + name: '@alexandre_del31' + +--- + +Ingénieur logiciel Fullstack à MonkeyPatch + +32 ans et fort de 7 ans d'expérience dans le développement logiciel, mon parcours, auprès de startups et de grands groupes m'a permis de m'approprier une large gamme de technos fullstack: + +- Mobile : Android (Kotlin), iOS (Swift), Ionic +- Backend : Java, Scala, NodeJS +- Web : Typescript / Angular 1 & 2 + +Je suis passioné par la mobilité, la qualité et l'innovation logicielle, l'UX et l'entrepreunariat digital. diff --git a/test-hugo/content/speakers/anastasia_lieva.md b/test-hugo/content/speakers/anastasia_lieva.md new file mode 100644 index 0000000..8ee70f8 --- /dev/null +++ b/test-hugo/content/speakers/anastasia_lieva.md @@ -0,0 +1,15 @@ +--- +id: anastasia_lieva +name: Anastasia Lieva +company: Comwatt +companyLogo: /images/speakers/company/comwatt.jpg +country: Solar System +photo: /images/speakers/anastasia_lieva.jpg +socials: + - icon: twitter + link: 'https://twitter.com/lievAnastazia' + name: '@lievAnastazia' + +--- + +Fuzzy Humanist, Data Science Witch, The Lambda Wisperer diff --git a/test-hugo/content/speakers/ane_diaz_de_tuesta.md b/test-hugo/content/speakers/ane_diaz_de_tuesta.md new file mode 100644 index 0000000..5a502dc --- /dev/null +++ b/test-hugo/content/speakers/ane_diaz_de_tuesta.md @@ -0,0 +1,24 @@ +--- +id: ane_diaz_de_tuesta +name: Ane DIAZ DE TUESTA +company: Lectra +companyLogo: /images/speakers/company/lectra.jpg +country: 'Bordeaux, France' +photo: /images/speakers/ane_diaz_de_tuesta.jpg +socials: + - icon: twitter + link: 'https://twitter.com/ane_naiz' + name: '@ane_naiz' + - icon: github + link: 'https://github.com/anediaz' + name: anediaz + - icon: linkedin + link: >- + https://www.linkedin.com/in/ane-diaz-de-tuesta-37785252, + http://anediaz.com/ + name: LinkedIn + +--- + +Je suis une personne dynamique, curieuse et sociable. Je travaille en tant que développeuse depuis 2012, après avoir obtenu mon diplôme d’ingénieur espagnol et ensuite le français. +Actuellement je travaille chez Lectra comme développeuse FrontEnd et je suis Scrum Master. Je suis passionnée par mon travail qui me rend heureuse. diff --git a/test-hugo/content/speakers/arnaud_bos.md b/test-hugo/content/speakers/arnaud_bos.md new file mode 100644 index 0000000..76cc038 --- /dev/null +++ b/test-hugo/content/speakers/arnaud_bos.md @@ -0,0 +1,18 @@ +--- +id: arnaud_bos +name: Arnaud BOS +company: MonkeyPatch +companyLogo: /images/speakers/company/monkeypatch.jpg +country: 'Toulouse, France' +photo: /images/speakers/arnaud_bos.jpg +socials: + - icon: twitter + link: 'https://twitter.com/arnaud_bos' + name: '@arnaud_bos' + - icon: github + link: 'https://github.com/arnaudbos' + name: arnaudbos + +--- + +Amateur de hamacs et de '(parenthèses). Du développement mobile au back-end, je suis revenu à mes premiers amours, les systèmes distribués, au fil des projets. Avec ma casquette de data engineer sur la tête, je me concentre sur le développement de (micro?)services et me passionne pour langages de programmation et les architectures distribuées. diff --git a/test-hugo/content/speakers/benoit_el_amrani.md b/test-hugo/content/speakers/benoit_el_amrani.md new file mode 100644 index 0000000..71ff482 --- /dev/null +++ b/test-hugo/content/speakers/benoit_el_amrani.md @@ -0,0 +1,18 @@ +--- +id: benoit_el_amrani +name: Benoit El Amrani +company: Informatique Banque Populaire +companyLogo: /images/speakers/company/i-bp.png +country: 'Toulouse, France' +photo: /images/speakers/benoit_el_amrani.jpg +socials: + - icon: twitter + link: 'https://twitter.com/bentah31' + name: '@bentah31' + - icon: github + link: 'https://github.com/belamrani' + name: belamrani + +--- + +Passionné par le monde du web, je suis en veille constante pour trouver des nouvelles idées permettant d'améliorer à la fois le quotidien des développeurs et les applications sur lesquelles je travaille. diff --git a/test-hugo/content/speakers/benoit_prioux.md b/test-hugo/content/speakers/benoit_prioux.md new file mode 100644 index 0000000..c8b6997 --- /dev/null +++ b/test-hugo/content/speakers/benoit_prioux.md @@ -0,0 +1,18 @@ +--- +id: benoit_prioux +name: Benoit PRIOUX +company: Lectra +companyLogo: /images/speakers/company/lectra.jpg +country: 'Bordeaux, France' +photo: /images/speakers/benoit_prioux.png +socials: + - icon: twitter + link: 'https://twitter.com/binout' + name: '@binout' + - icon: github + link: 'https://github.com/binout' + name: binout + +--- + +Je suis Technical Leader au centre R&D de Lectra, éditeur de logiciel dans le monde de la mode, à Bordeaux. Je suis un développeur Java depuis 2005, et membre du bureau du Bordeaux JUG. Impliqué dans le projet open-source Asciidoctor, je suis aussi passionné par tout ce qui finit en DD : TDD, BDD, DDD, ... diff --git a/test-hugo/content/speakers/celine_louvet.md b/test-hugo/content/speakers/celine_louvet.md new file mode 100644 index 0000000..3a501e1 --- /dev/null +++ b/test-hugo/content/speakers/celine_louvet.md @@ -0,0 +1,21 @@ +--- +id: celine_louvet +name: Céline LOUVET +company: Fairvioo +companyLogo: /images/speakers/company/fairvioo.jpg +country: Île-de-France +photo: /images/speakers/celine_louvet.jpg +socials: + - icon: twitter + link: 'https://twitter.com/celine_louvet' + name: '@celine_louvet' + - icon: github + link: 'https://github.com/celinelouvet' + name: celinelouvet + - icon: linkedin + link: 'https://www.linkedin.com/in/celinelouvet/' + name: LinkedIn + +--- + +CTO & cofondatrice de Fairvioo et développeuse au quotidien diff --git a/test-hugo/content/speakers/comet_nicolas.md b/test-hugo/content/speakers/comet_nicolas.md new file mode 100644 index 0000000..bcf2fc8 --- /dev/null +++ b/test-hugo/content/speakers/comet_nicolas.md @@ -0,0 +1,24 @@ +--- +id: comet_nicolas +name: Nicolas Comet +company: Lectra +companyLogo: /images/speakers/company/lectra.jpg +country: 'Bordeaux, France' +photo: /images/speakers/comet_nicolas.jpg +socials: + - icon: twitter + link: 'https://twitter.com/NicolasComet' + name: '@NicolasComet' + - icon: github + link: 'https://github.com/ncomet' + name: ncomet + - icon: linkedin + link: 'https://www.linkedin.com/in/nicolascomet/' + name: LinkedIn + +--- + +​ +Développeur passionné, Speaker, grand curieux, j'aime apprendre en permanence. Je ne m'attache pas à une technologie en particulier, même si je gravite plus souvent du côté Java / JavaEE. J'aime les principes fondateurs du TDD. Je porte également un grand intérêt pour la synergie entre DDD et documentation vivante ou "Living Documentation". + +Je suis actuellement ingénieur d'études R&D chez Lectra, numéro un mondial des solutions dédiées à l'industrie textile (logiciels & machines). diff --git a/test-hugo/content/speakers/david_gageot.md b/test-hugo/content/speakers/david_gageot.md new file mode 100644 index 0000000..e2fef11 --- /dev/null +++ b/test-hugo/content/speakers/david_gageot.md @@ -0,0 +1,18 @@ +--- +id: david_gageot +name: David Gageot +company: Google +companyLogo: /images/speakers/company/google.svg +country: 'Paris, France' +photo: /images/speakers/david_gageot.jpg +socials: + - icon: twitter + link: 'https://twitter.com/dgageot' + name: '@dgageot' + - icon: github + link: 'https://github.com/dgageot' + name: dgageot + +--- + +David est Developer Advocate chez Google Cloud. Il travaille sur les Containers Tools. Auparavant, il a participé à l'ouverture du bureau de R&D de Docker, à Paris. diff --git a/test-hugo/content/speakers/david_pilato.md b/test-hugo/content/speakers/david_pilato.md new file mode 100644 index 0000000..989adcb --- /dev/null +++ b/test-hugo/content/speakers/david_pilato.md @@ -0,0 +1,18 @@ +--- +id: david_pilato +name: David Pilato +company: elastic +companyLogo: /images/speakers/company/elastic.jpg +country: France +photo: /images/speakers/david_pilato.jpg +socials: + - icon: twitter + link: 'https://twitter.com/dadoonet' + name: '@dadoonet' + - icon: github + link: 'https://github.com/dadoonet' + name: dadoonet + +--- + +Depuis 2013, David Pilato est développeur et évangéliste chez elastic.co, après avoir passé les deux années précédentes à promouvoir le projet open-source Elasticsearch. Il en anime la communauté française. diff --git a/test-hugo/content/speakers/emmanuel_demey.md b/test-hugo/content/speakers/emmanuel_demey.md new file mode 100644 index 0000000..1882c93 --- /dev/null +++ b/test-hugo/content/speakers/emmanuel_demey.md @@ -0,0 +1,18 @@ +--- +id: emmanuel_demey +name: Emmanuel DEMEY +company: Zenika +companyLogo: /images/speakers/company/zenika.jpg +country: 'Lille, France' +photo: /images/speakers/emmanuel_demey.jpg +socials: + - icon: twitter + link: 'https://twitter.com/EmmanuelDemey' + name: '@EmmanuelDemey' + - icon: github + link: 'https://github.com/Gillespie59' + name: Gillespie59 + +--- + +Directeur technique chez Zenika Lille et Google Developer Expert, je suis spécialisé dans AngularJS / Angular / TypeScript et l'Accessibilité Web. Speaker à ses heures perdues. Aime également les bières (et oui quand on vient de Lille c'est normal...), le Jazz et la Domotique. Plusieurs expériences en tant que conférencier, notamment depuis septembre 2015 autour du sujet Angular2. - ESLint au Jug Summer Camp et ChtiJS - Angular 2 : ChtiJUG, LyonJS, GDG Paris, GDG Nantes, Meetup AngularJS Grenoble, Devoxx, RivieraDev, Bdx.io, DevFest Nantes, Codeurs en Seine diff --git a/test-hugo/content/speakers/estelle_landry.md b/test-hugo/content/speakers/estelle_landry.md new file mode 100644 index 0000000..65c7c5b --- /dev/null +++ b/test-hugo/content/speakers/estelle_landry.md @@ -0,0 +1,15 @@ +--- +id: estelle_landry +name: Estelle Landry +company: Elium +companyLogo: /images/speakers/company/elium.jpg +country: 'Montpellier, France' +photo: /images/speakers/estelle_landry.jpg +socials: + - icon: twitter + link: 'https://twitter.com/estelandry' + name: '@estelandry' + +--- + +Product Owner and UX Designer apprentice at @elium_tech , Former Project Manager , Proud to be member of @DuchessFR, @Flupa and @sunnytech_mtp diff --git a/test-hugo/content/speakers/fabien_tregan.md b/test-hugo/content/speakers/fabien_tregan.md new file mode 100644 index 0000000..b4a27a9 --- /dev/null +++ b/test-hugo/content/speakers/fabien_tregan.md @@ -0,0 +1,14 @@ +--- +id: fabien_tregan +name: Fabien Tregan +company: Freelance +country: 'Toulouse, France' +photo: /images/speakers/fabien_tregan.jpg +socials: + - icon: twitter + link: 'https://twitter.com/ftregan' + name: '@ftregan' + +--- + +Essaie de faire des logiciels depuis vingt ou trente ans. Au début en se concentrant surtout sur le code, aujourd'hui en essayant de débusquer les problèmes là où ils se trouvent. Heureusement, des fois c'est dans le code. diff --git a/test-hugo/content/speakers/francois_teychene.md b/test-hugo/content/speakers/francois_teychene.md new file mode 100644 index 0000000..b545f06 --- /dev/null +++ b/test-hugo/content/speakers/francois_teychene.md @@ -0,0 +1,19 @@ +--- +id: francois_teychene +name: Francois Teychene +company: Saagie +companyLogo: /images/speakers/company/saagie.jpg +country: 'Montpellier, France' +photo: /images/speakers/francois_teychene.jpg +socials: + - icon: twitter + link: 'https://twitter.com/fteychene' + name: '@fteychene' + - icon: github + link: 'https://github.com/fteychene' + name: fteychene + +--- + +Cloud Developper @ Saagie , meetup addict & organiser @ Montpellier et Organisateur SunnyTech. +Développeur couteau suisse pouvant intervenir du Javascript à la table de routage. Mes passions actuelles sont le Rust, le DevOps et le Scala en plus de vouloir mettre des conteneurs partout. diff --git a/test-hugo/content/speakers/frederic_cabestre.md b/test-hugo/content/speakers/frederic_cabestre.md new file mode 100644 index 0000000..3c4c6ae --- /dev/null +++ b/test-hugo/content/speakers/frederic_cabestre.md @@ -0,0 +1,18 @@ +--- +id: frederic_cabestre +name: Frédéric Cabestre +company: Easy Mile +companyLogo: /images/speakers/company/easy_mile.jpg +country: 'Toulouse, France' +photo: /images/speakers/frederic_cabestre.png +socials: + - icon: twitter + link: 'https://twitter.com/fcabestre' + name: '@fcabestre' + - icon: github + link: 'https://github.com/fcabestre' + name: fcabestre + +--- + +Développeur, tendance «software craftman». Depuis longtemps attiré par les langages et leur mise en œuvre. Grand amateur de programmation fonctionnelle, même quand ce n'était pas encore cool. Curieux des systèmes, surtout s'ils sont distribués. diff --git a/test-hugo/content/speakers/giulia_bianchi.md b/test-hugo/content/speakers/giulia_bianchi.md new file mode 100644 index 0000000..e841b99 --- /dev/null +++ b/test-hugo/content/speakers/giulia_bianchi.md @@ -0,0 +1,21 @@ +--- +id: giulia_bianchi +name: Giulia Bianchi +company: Xebia +companyLogo: /images/speakers/company/xebia.jpg +country: 'Paris, France' +photo: /images/speakers/giulia_bianchi.jpg +socials: + - icon: twitter + link: 'https://twitter.com/Giuliabianchl' + name: '@Giuliabianchl' + - icon: github + link: 'https://github.com/giulbia' + name: giulbia + +--- + +Giulia est Data Scientist de plus de 4 ans d’expérience, elle est consultante à Xebia depuis deux ans et demi. +Elle travaille actuellement sur des volumes de données importants en mettant en place des algorithmes de Machine Learning, avec un objectif concret d’industrialisation. +En 2018 elle a organisé la première édition du [DataXDay](https://dataxday.fr/). +Elle suit les nouvelles tendances du monde de la Data en participant aux différents Meetups et en suivant des blogs. Elle contribue activement à cet écosystème en donnant des [talks](https://www.youtube.com/watch?v=N-LXrheCIKM) et en écrivant sur le [blog Xebia](https://blog.xebia.fr/author/gbianchi/). diff --git a/test-hugo/content/speakers/guillaume_andrieu.md b/test-hugo/content/speakers/guillaume_andrieu.md new file mode 100644 index 0000000..bfcada5 --- /dev/null +++ b/test-hugo/content/speakers/guillaume_andrieu.md @@ -0,0 +1,15 @@ +--- +id: guillaume_andrieu +name: Guillaume ANDRIEU +company: MonkeyPatch +companyLogo: /images/speakers/company/monkeypatch.jpg +country: 'Toulouse, France' +photo: /images/speakers/guillaume_andrieu.jpg +socials: + - icon: twitter + link: 'https://twitter.com/glmxndr' + name: '@glmxndr' + +--- + +FP enthusiast diff --git a/test-hugo/content/speakers/guillaume_laforge.md b/test-hugo/content/speakers/guillaume_laforge.md new file mode 100644 index 0000000..786779b --- /dev/null +++ b/test-hugo/content/speakers/guillaume_laforge.md @@ -0,0 +1,18 @@ +--- +id: guillaume_laforge +name: Guillaume Laforge +company: Google +companyLogo: /images/speakers/company/google.jpg +country: 'Paris, France' +photo: /images/speakers/guillaume_laforge.jpeg +socials: + - icon: twitter + link: 'https://twitter.com/glaforge' + name: '@glaforge' + - icon: github + link: 'https://github.com/glaforge' + name: glaforge + +--- + +Le jour, Guillaume Laforge est Developer Advocate chez Google, sur les solutions cloud, et de nuit, il reprends sa casquette de contributeur au projet Apache Groovy. Guillaume est également un des membres du podcast Les Cast Codeurs diff --git a/test-hugo/content/speakers/guillaume_membre.md b/test-hugo/content/speakers/guillaume_membre.md new file mode 100644 index 0000000..f0ea143 --- /dev/null +++ b/test-hugo/content/speakers/guillaume_membre.md @@ -0,0 +1,19 @@ +--- +id: guillaume_membre +name: Guillaume Membré +company: Zenika +companyLogo: /images/speakers/company/zenika.jpg +country: 'Nantes, France' +photo: /images/speakers/guillaume_membre.jpg +socials: + - icon: twitter + link: 'https://twitter.com/GuillaumeMembre' + name: '@GuillaumeMembre' + - icon: github + link: 'https://github.com/gmembre-zenika' + name: gmembre-zenika + +--- + +Geek à toute heure, je travaille principalement autour des technologies Java/JavaEE mais aussi sur des problématiques de déploiement continu, de qualimétrie. Désormais, je partage son expérience pour faciliter la mise en place de démarche devops chez différents acteurs. J'adore bidouiller des RaspberryPi ou Arduino pour créer des choses inutiles donc indispensables. +Lorsque le temps le permet, je décris mes aventures sur mon [site web](https://www.geekeries.fun). diff --git a/test-hugo/content/speakers/horacio_gonzalez.md b/test-hugo/content/speakers/horacio_gonzalez.md new file mode 100644 index 0000000..95f4f1f --- /dev/null +++ b/test-hugo/content/speakers/horacio_gonzalez.md @@ -0,0 +1,18 @@ +--- +id: horacio_gonzalez +name: Horacio Gonzalez +company: OVH +companyLogo: /images/speakers/company/ovh.jpg +country: 'Brittany, France' +photo: /images/speakers/horacio_gonzalez.jpg +socials: + - icon: twitter + link: 'https://twitter.com/LostInBrittany' + name: '@LostInBrittany' + - icon: github + link: 'https://github.com/LostInBrittany' + name: LostInBrittany + +--- + +Malgré ce que son accent espagnol bien prononcé peut suggérer, Horacio est arrivé en France il y a une quinzaine d'années déjà. Passionné d'informatique, dans laquelle il est tombé depuis tout petit, il a découvert Java en 1997 et depuis il n'a pas arrêté de bosser autour. Après quelques années comme tech leader de la partie frontend de @warp10io chez Cityzen Data, Horacio a rejoint OVH en janvier 2018 en tant que Developer Advocate. Il est aussi leader et cofondateur du FinistDevs et du GDG Finistère, le GDG francophone le plus proche de la Silicon Valley. Passionné par le développement web et tout ce qui gravite autour des composants web, Horacio est Google Developer Expert (GDE) en Web Technologies et Polymer. diff --git a/test-hugo/content/speakers/hubert_sablonniere.md b/test-hugo/content/speakers/hubert_sablonniere.md new file mode 100644 index 0000000..562631a --- /dev/null +++ b/test-hugo/content/speakers/hubert_sablonniere.md @@ -0,0 +1,18 @@ +--- +id: hubert_sablonniere +name: Hubert Sablonnière +company: Clever Cloud +companyLogo: /images/speakers/company/clever_cloud.png +country: 'Lille, France' +photo: /images/speakers/hubert_sablonniere.jpg +socials: + - icon: twitter + link: 'https://twitter.com/hsablonniere' + name: '@hsablonniere' + - icon: github + link: 'https://github.com/hsablonniere' + name: hsablonniere + +--- + +Hubert est passionné par le Web. Il est toujours à la recherche de nouvelles idées et autres bidouilles pour améliorer l'expérience des utilisateurs et des développeurs. diff --git a/test-hugo/content/speakers/jean-francois_garreau.md b/test-hugo/content/speakers/jean-francois_garreau.md new file mode 100644 index 0000000..461c2ae --- /dev/null +++ b/test-hugo/content/speakers/jean-francois_garreau.md @@ -0,0 +1,18 @@ +--- +id: jean-francois_garreau +name: Jean-francois Garreau +company: Sfeir +companyLogo: /images/speakers/company/sfeir.jpg +country: 'Nantes, France' +photo: /images/speakers/jean-francois_garreau.jpg +socials: + - icon: twitter + link: 'https://twitter.com/jefBinomed' + name: '@jefBinomed' + - icon: github + link: 'https://github.com/jefBinomed' + name: jefBinomed + +--- + +En dehors du travail, je suis co-fondateur du GDG Nantes, organisateur du DevFest Nantes, co-créateur des Nantes Wit et organisateur de Devoxx4Kids diff --git a/test-hugo/content/speakers/jimenez_raul.md b/test-hugo/content/speakers/jimenez_raul.md new file mode 100644 index 0000000..ba0b69e --- /dev/null +++ b/test-hugo/content/speakers/jimenez_raul.md @@ -0,0 +1,18 @@ +--- +id: jimenez_raul +name: Raúl Jiménez +company: Google Developer Expert +companyLogo: /images/speakers/company/gde.jpg +country: 'Barcelona, Spain' +photo: /images/speakers/raul_jimenez.png +socials: + - icon: twitter + link: 'https://twitter.com/elecash' + name: '@elecash' + - icon: github + link: 'https://github.com/elecash' + name: elecash + +--- + +Raul is a software engineer passionate about JS frameworks, web technologies and cross-platform development. Since 2012 he's focused in Angular, HTML5 video and his open source project Videogular. Raul works as CEO of Byte Default, an Angular consultancy company for companies around the world helping them to build high-performance web apps. In his spare time he's usually involved in local meetups, writing blog posts, speaking at conferences and contributing to open source projects. He lives in Barcelona and is happy by default :) diff --git a/test-hugo/content/speakers/juliane_blier.md b/test-hugo/content/speakers/juliane_blier.md new file mode 100644 index 0000000..de63228 --- /dev/null +++ b/test-hugo/content/speakers/juliane_blier.md @@ -0,0 +1,18 @@ +--- +id: juliane_blier +name: Juliane Blier +company: SchoolMouv +companyLogo: /images/speakers/company/schoolmouv.jpg +country: 'Toulouse, France' +photo: /images/speakers/juliane_blier.jpg +socials: + - icon: twitter + link: 'https://twitter.com/tactless7' + name: '@tactless7' + - icon: github + link: 'https://github.com/Tactless7' + name: Tactless7 + +--- + +Développeuse Web, Amoureuse de Vuejs, Node et PHP, Curieuse de nouvelles découvertes diff --git a/test-hugo/content/speakers/julien_topcu.md b/test-hugo/content/speakers/julien_topcu.md new file mode 100644 index 0000000..a0b680c --- /dev/null +++ b/test-hugo/content/speakers/julien_topcu.md @@ -0,0 +1,24 @@ +--- +id: julien_topcu +name: Julien Topçu +company: Société Générale & OWASP fundation +companyLogo: /images/speakers/company/societe_generale.png +country: 'Île-de-France, France' +photo: /images/speakers/julien_topcu.jpeg +socials: + - icon: twitter + link: 'https://twitter.com/JulienTopcu' + name: '@JulienTopcu' + - icon: linkedin + link: >- + https://www.linkedin.com/in/julien-top%C3%A7u/, + https://beyondxscratch.wordpress.com/ + name: LinkedIn + +--- + +Senior Lead Developer à la Société Générale, je suis un fervent défenseur du Software Craftsmanship. + +J'évangélise activement autour de DDD/Hexagonal Architecture, l'XP et le Kanban #NoEstimates au sein de cours et de [meetups](https://www.youtube.com/watch?v=P0_M00X4Xlw/) ainsi qu'à travers d'articles de [blog](https://beyondxscratch.wordpress.com/). + +Membre de la fondation OWASP, je m'efforce de transmettre à la communauté une philosophie DevSecOps que je pense être l'avenir du métier de développeur. J'ai participé à la mise en place de pipeline de Continuous Security à l'échelles d'entreprises. diff --git a/test-hugo/content/speakers/laurent_victorino.md b/test-hugo/content/speakers/laurent_victorino.md new file mode 100644 index 0000000..178145d --- /dev/null +++ b/test-hugo/content/speakers/laurent_victorino.md @@ -0,0 +1,18 @@ +--- +id: laurent_victorino +name: Laurent Victorino +company: Monkey Moon +companyLogo: /images/speakers/company/monkey_moon.png +country: 'Lyon, France' +photo: /images/speakers/laurent_victorino.jpg +socials: + - icon: twitter + link: 'https://twitter.com/on_code' + name: '@on_code' + - icon: github + link: 'https://github.com/lvictorino' + name: lvictorino + +--- + +Pas très bon en jeux vidéo Laurent préfère les créer pour se donner une bonne raison de ne pas y jouer. Programmeur moyen mais sympa, Laurent est à la tête de Monkey Moon, un studio de jeux vidéo basé à Lyon qui développe actuellement Night Call, un jeu qui se passe à Paris, parce que Laurent aime les paradoxes. Speaker internationalement reconnu pour sa keynote « 400 vannes sur le Java en moins de 20 minutes », Laurent aime les conférences IT et Web pour les rencontres, les échanges, et la nourriture gratuite. Laurent a vraiment du mal à parler de lui à la troisième personne. diff --git a/test-hugo/content/speakers/laurent_wroblewski.md b/test-hugo/content/speakers/laurent_wroblewski.md new file mode 100644 index 0000000..4b9370f --- /dev/null +++ b/test-hugo/content/speakers/laurent_wroblewski.md @@ -0,0 +1,18 @@ +--- +id: laurent_wroblewski +name: Laurent Wroblewski +company: Davidson Consulting +companyLogo: /images/speakers/company/davidson_consulting.jpg +country: 'Toulouse, France' +photo: /images/speakers/laurent_wroblewski.jpg +socials: + - icon: twitter + link: 'https://twitter.com/@LaurentWrob' + name: '@LaurentWrob' + - icon: github + link: 'https://github.com/LWroblewski' + name: LWroblewski + +--- + +Laurent Wroblewski, ingénieur développement full stack depuis maintenant près de 9 ans, passionné par les technologies web/mobile. Récent expatrié lillois, qui revient à domicile à la recherche de bières convenables et de bon échanges techniques (l'un n'excluant pas l'autre ;)). J'aime partager autour du JS et de ses principales stars du moment, comme Angular et React, et du riche écosystème qui gravite autour. Mais le mobile n'est pas en reste non plus, que ce soient le natif (Kotlin4ever), les solutions hybrides ou les PWAs. diff --git a/test-hugo/content/speakers/mathieu_passenaud.md b/test-hugo/content/speakers/mathieu_passenaud.md new file mode 100644 index 0000000..2667928 --- /dev/null +++ b/test-hugo/content/speakers/mathieu_passenaud.md @@ -0,0 +1,18 @@ +--- +id: mathieu_passenaud +name: Mathieu Passenaud +company: please-open.it +companyLogo: /images/speakers/company/please-open.png +country: 'Toulouse, France' +photo: /images/speakers/mathieu_passenaud.png +socials: + - icon: twitter + link: 'https://twitter.com/mathieupassenau' + name: '@mathieupassenau' + - icon: github + link: 'https://github.com/mathieupassenaud' + name: mathieupassenaud + +--- + +DevOps (Teevity, Berger Levrault, OVH, Connit, Ubleam) depuis 8 ans maintenant sur Toulouse. Issu du milieu de l'embarqué (calculateurs ferroviaires/militaires), je me suis retrouvé parachuté dans l'univers du cloud pendant quelques années jusqu'à revenir au croisement de ces deux mondes : l'IOT. Touche à tout, j'aime beaucoup prototyper et répondre à la question 'est-ce que c'est possible ?' diff --git a/test-hugo/content/speakers/miro_miro_cupak.md b/test-hugo/content/speakers/miro_miro_cupak.md new file mode 100644 index 0000000..b694596 --- /dev/null +++ b/test-hugo/content/speakers/miro_miro_cupak.md @@ -0,0 +1,21 @@ +--- +id: miro_miro_cupak +name: Miro Cupak +company: DNAstack +companyLogo: /images/speakers/company/dnastack.jpg +country: 'Toronto, Ontario' +photo: /images/speakers/miro_miro_cupak.jpg +socials: + - icon: twitter + link: 'https://twitter.com/mirocupak' + name: '@mirocupak' + - icon: github + link: 'https://github.com/mcupak' + name: mcupak + - icon: linkedin + link: 'https://mirocupak.com, https://www.linkedin.com/in/mirocupak' + name: LinkedIn + +--- + +Miro is a VP of Engineering at DNAstack, where he builds a leading genomics cloud platform. He is a Java enthusiast with expertise in distributed systems and middleware, passionate about genetics and making meaningful software. Miro is the creator of the largest search and discovery engine of human genetic data, and the author of a book on parallelization of genomic queries. In his spare time, he blogs and contributes to several open-source projects. diff --git a/test-hugo/content/speakers/nicolas_decoster.md b/test-hugo/content/speakers/nicolas_decoster.md new file mode 100644 index 0000000..e0ecaeb --- /dev/null +++ b/test-hugo/content/speakers/nicolas_decoster.md @@ -0,0 +1,15 @@ +--- +id: nicolas_decoster +name: Nicolas Decoster +company: Magellium +companyLogo: /images/speakers/company/magellium.jpg +country: 'Toulouse, France' +photo: /images/speakers/nicolas_decoster.jpg +socials: + - icon: twitter + link: 'https://twitter.com/nnodot' + name: '@nnodot' + +--- + +Informaticien curieux depuis 35 ans, de métier depuis 20 ans (principalement dans le spatial). Non spécialiste touche à tout : du développement logiciel à l'étude scientifique, du développement d'algorithmes de traitement à la mise en œuvre de systèmes, de la programmation en C++ ou Python à l'utilisation des technos Web, de la petite appli en ligne de commande aux IHM ou aux systèmes distribués. Ingénieur chez Magellium et co-fondateur et animateur à la Compagnie du Code. diff --git a/test-hugo/content/speakers/olivier_flebus.md b/test-hugo/content/speakers/olivier_flebus.md new file mode 100644 index 0000000..224a1b3 --- /dev/null +++ b/test-hugo/content/speakers/olivier_flebus.md @@ -0,0 +1,18 @@ +--- +id: olivier_flebus +name: Olivier Flebus +company: Continental Digital Services France +companyLogo: /images/speakers/company/continental_digital_services_france.jpg +country: 'Toulouse, France' +photo: /images/speakers/olivier_flebus.jpg +socials: + - icon: twitter + link: 'https://twitter.com/olivierflebus' + name: '@olivierflebus' + - icon: linkedin + link: 'https://www.linkedin.com/in/olivierflebus' + name: LinkedIn + +--- + +Enterprise Architect, #Agile enthusiast. Leading #BigData @Continental Digital Services France. Building a #Cloud platform for #ConnectedCars. diff --git a/test-hugo/content/speakers/olivier_leplus.md b/test-hugo/content/speakers/olivier_leplus.md new file mode 100644 index 0000000..4a62307 --- /dev/null +++ b/test-hugo/content/speakers/olivier_leplus.md @@ -0,0 +1,22 @@ +--- +id: olivier_leplus +name: Olivier Leplus +company: Botfuel +companyLogo: /images/speakers/company/botfuel.jpg +country: 'Paris, France' +photo: /images/speakers/olivier_leplus.jpg +socials: + - icon: twitter + link: 'https://twitter.com/olivierleplus' + name: '@olivierleplus' + - icon: github + link: 'https://github.com/tagazok' + name: tagazok + - icon: linkedin + link: 'https://www.linkedin.com/in/olivierleplus/, https://tagazok.github.io/' + name: LinkedIn + +--- + +My day to day my mission is to help developers create successful and quality apps. +As a passionate web developer, I am always discovering and playing with new web technologies ! diff --git a/test-hugo/content/speakers/philippe_charriere.md b/test-hugo/content/speakers/philippe_charriere.md new file mode 100644 index 0000000..f3c6316 --- /dev/null +++ b/test-hugo/content/speakers/philippe_charriere.md @@ -0,0 +1,18 @@ +--- +id: philippe_charriere +name: Philippe Charrière +company: CleverCloud +companyLogo: /images/speakers/company/clevercloud.jpg +country: 'Lyon, France' +photo: /images/speakers/philippe_charriere.jpg +socials: + - icon: twitter + link: 'https://twitter.com/k33g_org' + name: '@k33g_org' + - icon: github + link: 'https://github.com/k33g' + name: k33g + +--- + +currently: 🇪🇺 TAM @GitLab 🦊 + deploying apps as CSO @clever_cloud 💡☁️ + core committer @golo_lang + raising 🤖 @BotsGarden, previously: SE @github diff --git a/test-hugo/content/speakers/piotr_przybyl.md b/test-hugo/content/speakers/piotr_przybyl.md new file mode 100644 index 0000000..407242d --- /dev/null +++ b/test-hugo/content/speakers/piotr_przybyl.md @@ -0,0 +1,15 @@ +--- +id: piotr_przybyl +name: Piotr Przybyl +company: Remote Freelance Software Gardener +companyLogo: '' +country: 'Wroclaw, Poland' +photo: /images/speakers/piotr_przybyl.jpg +socials: + - icon: twitter + link: 'https://twitter.com/piotrprz' + name: '@piotrprz' + +--- + +Notorious engineer at work and after hours, tracing meanders of the art of software engineering. Software Gardener, mostly working in web-oriented Java gardens. Fan of agility, seen mostly as choosing the right tools and approaches. Lead developer, trainer and conference speaker. diff --git a/test-hugo/content/speakers/quentin_adam.md b/test-hugo/content/speakers/quentin_adam.md new file mode 100644 index 0000000..52089f6 --- /dev/null +++ b/test-hugo/content/speakers/quentin_adam.md @@ -0,0 +1,18 @@ +--- +id: quentin_adam +name: Quentin Adam +company: Clever Cloud +companyLogo: /images/speakers/company/clever_cloud.png +country: 'Nantes, France' +photo: /images/speakers/quentin_adam.jpg +socials: + - icon: twitter + link: 'https://twitter.com/waxzce' + name: '@waxzce' + - icon: github + link: 'https://github.com/waxzce' + name: waxzce + +--- + +Quentin is the CEO of Clever Cloud : a Platform as a Service company allowing you to run java, scala, ruby, node.js, php, python or go applications, with auto scaling and auto healing features. This position allow him to study lots of applications, code, practice, and extract some talks and advises. Regular speaker at various tech conference, he’s focused to help developers to deliver quickly and happily good applications. diff --git a/test-hugo/content/speakers/robert_firek.md b/test-hugo/content/speakers/robert_firek.md new file mode 100644 index 0000000..3ab0904 --- /dev/null +++ b/test-hugo/content/speakers/robert_firek.md @@ -0,0 +1,18 @@ +--- +id: robert_firek +name: Robert Firek +company: Codurance +companyLogo: /images/speakers/company/codurance.jpg +country: 'London, Royaume-Uni' +photo: /images/speakers/robert_firek.jpg +socials: + - icon: twitter + link: 'https://twitter.com/RobertFirek' + name: '@RobertFirek' + - icon: github + link: 'https://github.com/robertfirek' + name: robertfirek + +--- + +Robert Firek is a software craftsman who has tasted many different flavours of programming. His broad range of experiences has helped to deliver quality software in many companies and organisations. He strives to create software according to the rule "Simplicity is the final achievement". He is trying to unite worlds of the software development and the infrastructure delivery by promoting the DevOps culture. diff --git a/test-hugo/content/speakers/sebastien_guilloux.md b/test-hugo/content/speakers/sebastien_guilloux.md new file mode 100644 index 0000000..b8cd6c7 --- /dev/null +++ b/test-hugo/content/speakers/sebastien_guilloux.md @@ -0,0 +1,19 @@ +--- +id: sebastien_guilloux +name: Sébastien Guilloux +company: Elastic +companyLogo: /images/speakers/company/elastic.jpg +country: 'Toulouse, France' +photo: /images/speakers/sebastien_guilloux.jpg +socials: + - icon: twitter + link: 'https://twitter.com/_sebgl' + name: '@_sebgl' + - icon: github + link: 'https://github.com/sebgl' + name: sebgl + +--- + +Cloud Engineer chez Elastic. J'ai un petit faible pour les systèmes distribués, pour le fun et les challenges qu'ils nous apportent ! Auparavant j'ai travaillé chez OVH, en tant que développeur sur plusieurs services (Kafka, Kubernetes, Serverless Functions). +Ah, j'ai une légère tendance à faire des jeux de mots, aussi :) diff --git a/test-hugo/content/speakers/sylvain_wallez.md b/test-hugo/content/speakers/sylvain_wallez.md new file mode 100644 index 0000000..b9622c9 --- /dev/null +++ b/test-hugo/content/speakers/sylvain_wallez.md @@ -0,0 +1,18 @@ +--- +id: sylvain_wallez +name: Sylvain Wallez +company: Elastic +companyLogo: /images/speakers/company/elastic.png +country: 'Toulouse, France' +photo: /images/speakers/sylvain_wallez.png +socials: + - icon: twitter + link: 'https://twitter.com/bluxte' + name: '@bluxte' + - icon: github + link: 'https://github.com/swallez' + name: swallez + +--- + +Architecte et développeur passionné, tech lead dans l'équipe Cloud chez Elastic. A travaillé comme architecte, CTO et leader technique dans plusieurs startups. Expert technique multi-compétences : systèmes scalables, NoSQL, moteurs de recherche, mais aussi front-end, devops et Iot. Bref, full-stack. Membre de la fondation Apache. diff --git a/test-hugo/content/speakers/tiffany_souterre.md b/test-hugo/content/speakers/tiffany_souterre.md new file mode 100644 index 0000000..4798d04 --- /dev/null +++ b/test-hugo/content/speakers/tiffany_souterre.md @@ -0,0 +1,18 @@ +--- +id: tiffany_souterre +name: Tiffany Souterre +company: JEMS Datafactory +companyLogo: /images/speakers/company/jems_datafactory.jpg +country: 'Paris, France' +photo: /images/speakers/tiffany_souterre.jpg +socials: + - icon: twitter + link: 'https://twitter.com/tiffanysouterre' + name: '@tiffanysouterre' + - icon: github + link: 'https://github.com/Amagash' + name: Amagash + +--- + +I love science and I love data! After finishing a Ph.D. in genetic engineering, I continued my quest for discovering new patterns through data science and machine learning. I currently work as a Big Data engineer and I play with machine learning algorithms on my free time. Someday, I wish to leverage data exploration to improve people's life. diff --git a/test-hugo/content/speakers/tugdual_grall.md b/test-hugo/content/speakers/tugdual_grall.md new file mode 100644 index 0000000..8da1e44 --- /dev/null +++ b/test-hugo/content/speakers/tugdual_grall.md @@ -0,0 +1,22 @@ +--- +id: tugdual_grall +name: Tugdual Grall +company: MapR +companyLogo: /images/speakers/company/mapr.MapR +country: It depends! +photo: /images/speakers/tugdual_grall.jpg +socials: + - icon: twitter + link: 'https://twitter.com/tgrall' + name: '@tgrall' + - icon: github + link: 'https://github.com/tgrall' + name: tgrall + +--- + +Tugdual Grall Bio: Tugdual Grall, est Chief Technical Evangelist EMEA chez MapR. Il travaille avec les clients et les communautés de développeurs européennes, pour faciliter l’adoption de MapR, Hadoop et NoSQL. + +Avant de travailler chez MapR, “Tug”, était Technical Evangelist chez MongoDB et Couchbase. Tug a travaillé comme CTO chez eXo Platform, et comme Product Manager et Développeur sur la platform Java/JavaEE d’Oracle. + +Tugdual est également co-fondateur du Nantes JUG (Java Users Group) qui réunit tous les mois depuis 2008 les développeurs et architectes de la région nantaise. diff --git a/test-hugo/content/speakers/victor_kropp.md b/test-hugo/content/speakers/victor_kropp.md new file mode 100644 index 0000000..02dbc24 --- /dev/null +++ b/test-hugo/content/speakers/victor_kropp.md @@ -0,0 +1,18 @@ +--- +id: victor_kropp +name: Victor Kropp +company: JetBrains +companyLogo: /images/speakers/company/jetbrains.jpg +country: 'München, Deutschland' +photo: /images/speakers/victor_kropp.jpg +socials: + - icon: twitter + link: 'https://twitter.com/kropp' + name: '@kropp' + - icon: github + link: 'https://github.com/kropp' + name: kropp + +--- + +Victor Kropp is a Software Engineer at JetBrains, where he has contributed to many projects including ReSharper, dotCover, Hub and Toolbox App. His interests include modern programming languages, practices and tools, and cross-platform development. In his free time, he runs marathons and long distance triathlons or travels with his family. diff --git a/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/lancement-1.jpg b/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/lancement-1.jpg deleted file mode 100755 index f231d15..0000000 Binary files a/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/lancement-1.jpg and /dev/null differ diff --git a/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/lancement-2.jpg b/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/lancement-2.jpg deleted file mode 100755 index 5a3760e..0000000 Binary files a/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/lancement-2.jpg and /dev/null differ diff --git a/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/lancement-3.jpg b/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/lancement-3.jpg deleted file mode 100755 index cae48fd..0000000 Binary files a/test-hugo/static/images/posts/2018-03-27-lancement-devfest-toulouse-2018/lancement-3.jpg and /dev/null differ diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/main.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/main.scss index bd417d3..a533f67 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/main.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/main.scss @@ -20,10 +20,10 @@ --color-gold: #b7935b; --color-error: firebrick; - --space-1: .125rem; --space-2: .25rem; --space-3: .5rem; + --space-4: 1rem; --container-margin: 10vw; --toolbar-height: 3rem; @@ -32,8 +32,6 @@ Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; /*--font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif;*/ - --extruded: 1px 0 0 var(--darken-3); - /* Tags */ /*from https://github.com/d3/d3-scale-chromatic#schemePastel2*/ --tag1: #b3e2cd; @@ -53,18 +51,18 @@ --animation: 0.3s cubic-bezier(0.4, 0, 0.2, 1); + --extruded: 1px 0 0 var(--darken-3); + --box-shadow-1: 0 0 2px 0 rgba(0, 0, 0, 0.07), 0 2px 2px 0 rgba(0, 0, 0, 0.15); --box-shadow-2: 0 3px 3px -2px rgba(0, 0, 0, 0.2), 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 1px 8px 0 rgba(0, 0, 0, 0.12); } -/* base */ - - @import "partials/base"; @import "partials/header"; @import "partials/main"; @import "partials/footer"; @import "partials/buttons"; +@import "partials/socials"; @import "partials/jumbo"; @import "partials/hero"; @import "partials/table_of_contents"; @@ -73,7 +71,12 @@ @import "partials/partners"; @import "pages/home"; +@import "pages/sessions"; +@import "pages/session"; @import "pages/speakers"; +@import "pages/speaker"; +@import "pages/blogs"; +@import "pages/blog"; @import "pages/team"; @import "pages/faq"; @import "pages/code_of_conduct"; \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_blog.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_blog.scss new file mode 100644 index 0000000..9b55ed2 --- /dev/null +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_blog.scss @@ -0,0 +1,57 @@ +.page.blog { + + .hero { + .img { + padding: var(--container-margin); + background-repeat: no-repeat; + background-size: cover; + background-position: center center; + + text-shadow: 1px 0 0 var(--lighten-3); + } + + h1 { + color: var(--primary); + padding-left: 0; + padding-right: 0; + small { + display: block; + } + } + + hr { + opacity: .25; + } + } + + .content { + padding-left: 0; + padding-right: 0; + margin: 2rem var(--container-margin); + + img { + max-width: 100%; + } + + h1, h2, h3, h4, h5, h6 { + color: var(--primary); + } + + p { + margin-left: var(--space-4); + text-align: justify; + + &::first-letter { + margin-left: var(--space-4); + } + } + + ul { + margin-left: 2rem; + + li { + line-height: 1.25; + } + } + } +} \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_blogs.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_blogs.scss new file mode 100644 index 0000000..517de99 --- /dev/null +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_blogs.scss @@ -0,0 +1,65 @@ +.section.blog { + + + main > section { + padding-left: 0; + padding-right: 0; + margin: 2rem var(--container-margin); + } + + + .blogs { + display: grid; + grid-gap: var(--space-4); + + a { + text-decoration: none; + padding: var(--space-4); + border-radius: var(--space-3); + min-height: 25vw; + display: grid; + grid-template-columns: auto 1fr; + grid-template-rows: auto 1fr; + grid-gap: var(--space-4); + color: inherit; + border: thin solid var(--darken-1); + + box-shadow: var(--space-1) var(--space-1) var(--space-2) var(--darken-2); + transition: box-shadow var(--animation); + + .img { + display: inline-block; + background-position: center center; + background-size: cover; + --size: 6rem; + height: var(--size); + width: var(--size); + border-radius: var(--space-2); + } + + .info { + justify-content: center; + .reading { + align-self: flex-end; + + &::after { + content: ' min.'; + } + } + + .date { + align-self: flex-start; + } + } + + p { + grid-column: 1 / -1; + } + + &:hover, &:focus { + box-shadow: var(--space-2) var(--space-2) var(--space-2) var(--darken-3); + } + + } + } +} \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_code_of_conduct.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_code_of_conduct.scss index f3052c6..e5029a5 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_code_of_conduct.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_code_of_conduct.scss @@ -1,12 +1,14 @@ .page.code-of-conduct .content { - margin: 2rem 4rem; + margin: 2rem var(--container-margin); + padding-left: 0; + padding-right: 0; p { - margin-left: 1rem; - line-height: 1.25; + margin-left: var(--space-4); + text-align: justify; &::first-letter { - margin-left: 1rem; + margin-left: var(--space-4); } } diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_faq.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_faq.scss index ab0a248..609bb64 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_faq.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_faq.scss @@ -5,6 +5,6 @@ } h3, h4, h5, h6, ul, ol, p { - margin-left: 30vw; + margin-left: calc(var(--container-margin) - 2rem); } } \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_home.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_home.scss index b1e1b97..4fa8e32 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_home.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_home.scss @@ -1,4 +1,14 @@ .home { + + + section > h2 { + margin-bottom: 1.5rem; + padding: 0; + font-size: 2rem; + line-height: 1.875rem; + font-weight: 300; + } + section.info > div { display: flex; @@ -32,9 +42,18 @@ } section.speakers { - // Keep only 4 first speakers - ul li:nth-child(n+5) { - display: none; + + ul { + list-style: none; + display: flex; + justify-content: space-around; + align-items: flex-start; + flex-wrap: wrap; + + // Keep only 4 first speakers + li:nth-child(n+5) { + display: none; + } } } diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_session.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_session.scss new file mode 100644 index 0000000..e2d6091 --- /dev/null +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_session.scss @@ -0,0 +1,3 @@ +.page.sessions { + +} \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_sessions.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_sessions.scss new file mode 100644 index 0000000..5644af3 --- /dev/null +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_sessions.scss @@ -0,0 +1,3 @@ +.section.sessions { + +} \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_speaker.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_speaker.scss new file mode 100644 index 0000000..d8f5b4f --- /dev/null +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_speaker.scss @@ -0,0 +1,60 @@ +.page.speakers { + + .hero { + header, .description { + padding: var(--space-4) var(--container-margin); + } + + header { + display: flex; + align-items: center; + + .speaker-img { + --size: 6rem; + height: var(--size); + min-width: var(--size); + border-radius: 100%; + background-size: cover; + box-shadow: 0 0 var(--space-3) var(--darken-3); + margin-right: var(--space-4); + } + + h1 { + margin: 0; + padding: 0; + } + + ul.socials { + display: flex; + list-style: none; + padding: 0; + margin: 0; + li { + padding-right: var(--space-4); + } + } + } + + } + + section.speaker { + padding: var(--space-4) var(--container-margin); + + header { + display: flex; + align-items: center; + justify-content: space-between; + } + + .speaker-company { + margin: var(--space-3) 0; + display: flex; + align-items: center; + + img { + height: 4rem; + margin-right: var(--space-4); + } + } + } +} \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_speakers.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_speakers.scss index 709c51e..1ec8ba2 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_speakers.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_speakers.scss @@ -1,6 +1,7 @@ .section.speakers { ul.speakers { + list-style: none; padding: 0; margin: 0; display: grid; @@ -8,14 +9,17 @@ grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); li a.speaker { - padding: 1rem; + padding: var(--space-4); border: thin solid var(--darken-1); box-shadow: var(--space-1) var(--space-1) var(--space-2) var(--darken-2); + transition: box-shadow var(--animation); + border-radius: var(--space-2); display: flex; flex-direction: row; + height: 100%; .speaker-img { - margin-right: 1rem; + margin-right: var(--space-4); } .speaker-company { @@ -28,9 +32,8 @@ } } - &:hover, &:focus { - box-shadow: var(--box-shadow-2); + box-shadow: var(--space-2) var(--space-2) var(--space-2) var(--darken-3); } } } diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_team.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_team.scss index 2d606f2..048d19c 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_team.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/pages/_team.scss @@ -13,7 +13,7 @@ --size: 6rem; box-shadow: 0 0 0 var(--space-2) var(--darken-2); height: var(--size); - width: var(--size); + min-width: var(--size); border-radius: 100%; background-size: cover; diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_base.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_base.scss index 3e1d254..f44f822 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_base.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_base.scss @@ -21,6 +21,7 @@ body { margin: var(--toolbar-height) 0 0; display: flex; flex-direction: column; + min-height: calc(100vh - var(--toolbar-height)); } h1, h2, h3, h4, h5, h6 { @@ -28,6 +29,10 @@ h1, h2, h3, h4, h5, h6 { font-weight: normal; } +p { + line-height: 1.25; +} + .content { a, a:visited { diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_footer.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_footer.scss index cc8ef8d..a4fddd4 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_footer.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_footer.scss @@ -1,7 +1,7 @@ body > footer { background-color: var(--darken-1); color: var(--base-secondary-text); - padding: 1rem var(--container-margin); + padding: var(--space-4) var(--container-margin); font-weight: 200; a { @@ -22,6 +22,11 @@ body > footer { display: flex; justify-content: space-between; font-weight: 300; + flex-wrap: wrap; + + header { + margin-right: var(--space-2); + } & > div { display: flex; @@ -57,6 +62,7 @@ body > footer { .footer-content { display: flex; justify-content: space-between; + flex-wrap: wrap; section { header { diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_header.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_header.scss index eeacde4..9847493 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_header.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_header.scss @@ -1,4 +1,6 @@ body > header { + // FIXME responsive + position: fixed; top: 0; z-index: 100; diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_hero.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_hero.scss index 45737f6..91509fa 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_hero.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_hero.scss @@ -1,11 +1,11 @@ .hero { h1 { - padding: 2rem; + padding: 2rem var(--container-margin); } .description { - padding: 2rem; + padding: 2rem var(--container-margin); background: var(--color-hero); border-top: thin solid var(--darken-1); border-bottom: thin solid var(--darken-1); diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_jumbo.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_jumbo.scss index 0d1f86e..593b369 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_jumbo.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_jumbo.scss @@ -7,7 +7,7 @@ align-items: center; .inner { - padding: 1rem; + padding: var(--space-4); color: var(--primary-txt); background: var(--darken-2); border-radius: var(--space-3); diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_main.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_main.scss index e6ca2ea..b082526 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_main.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_main.scss @@ -1,4 +1,5 @@ body > main { + flex-grow: 1; & > section { padding: 2rem; @@ -8,12 +9,5 @@ body > main { color: var(--primary-txt); } - & > h2 { - margin-bottom: 1.5rem; - padding: 0; - font-size: 2rem; - line-height: 1.875rem; - font-weight: 300; - } } } diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_partners.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_partners.scss index c8abd70..eda3765 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_partners.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_partners.scss @@ -1,7 +1,7 @@ .partners-group { h3 { text-align: center; - margin: 1rem 0; + margin: var(--space-4) 0; } ul { diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_socials.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_socials.scss index b777252..46934c0 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_socials.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_socials.scss @@ -1,33 +1,49 @@ a[class*='social-'] { - height: 1rem; - width: 1rem; - display: inline-block; + display: inline-flex; margin: var(--space-1); background-size: contain; background-position: center center; background-repeat: no-repeat; + + align-items: center; + color: inherit; + text-decoration: none; + + &::before { + display: inline-block; + content: ''; + --size: 1rem; + height: var(--size); + width: var(--size); + background-repeat: no-repeat; + margin-right: var(--space-1); + } + + &:focus, &:hover { + text-decoration: underline; + } } -.social-facebook { +.social-facebook::before { background-image: url('data:image/svg+xml;utf8,'); } -.social-twitter { +.social-twitter::before { background-image: url('data:image/svg+xml;utf8,'); } -.social-linkedin { +.social-linkedin::before { background-image: url('data:image/svg+xml;utf8,'); } -.social-youtube { +.social-youtube::before { background-image: url('data:image/svg+xml;utf8,'); } -.social-github { +.social-github::before { background-image: url('data:image/svg+xml;utf8,'); } -.social-website { +.social-website::before { background-image: url('data:image/svg+xml;utf8,'); } \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_speakers.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_speakers.scss index fe117b7..41d86b9 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_speakers.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_speakers.scss @@ -1,8 +1,4 @@ .speakers ul { - list-style: none; - display: flex; - justify-content: space-around; - align-items: flex-start; li .speaker { display: flex; diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_table_of_contents.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_table_of_contents.scss index fdd47a6..7a0c805 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_table_of_contents.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_table_of_contents.scss @@ -1,16 +1,20 @@ -#TableOfContents ul li { +#TableOfContents ul { + padding-left: 0; list-style: none; - font-size: 1rem; - margin: var(--space-1) 0; - padding: var(--space-1) 0; - a { - color: var(--primary); - text-decoration: none; + li { + font-size: 1rem; + margin: var(--space-1) 0; + padding: var(--space-1) 0; - &:focus, &:hover { - text-decoration: underline; + a { + color: var(--primary); + text-decoration: none; + &:focus, &:hover { + text-decoration: underline; + + } } } -} +} \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_tickets.scss b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_tickets.scss index bcf669c..ca8df34 100644 --- a/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_tickets.scss +++ b/test-hugo/themes/devfest-theme-hugo/assets/style/partials/_tickets.scss @@ -3,9 +3,8 @@ list-style: none; display: grid; grid-auto-columns: 1fr; - grid-gap: 1rem; - grid-auto-flow: column; - + grid-gap: var(--space-4); + grid-auto-flow: column; // FIXME responsive li .ticket { padding: 2rem var(--space-3); @@ -40,7 +39,7 @@ } .btn { - margin: 1rem; + margin: var(--space-4); } } } diff --git a/test-hugo/themes/devfest-theme-hugo/layouts/_default/baseof.html b/test-hugo/themes/devfest-theme-hugo/layouts/_default/baseof.html index 3f700a1..2bb64ca 100644 --- a/test-hugo/themes/devfest-theme-hugo/layouts/_default/baseof.html +++ b/test-hugo/themes/devfest-theme-hugo/layouts/_default/baseof.html @@ -2,7 +2,7 @@ {{ partial "head.html" . }} - + {{ block "header" . }} {{ partial "header.html" . }} diff --git a/test-hugo/themes/devfest-theme-hugo/layouts/blog/list.html b/test-hugo/themes/devfest-theme-hugo/layouts/blog/list.html new file mode 100644 index 0000000..0cce39f --- /dev/null +++ b/test-hugo/themes/devfest-theme-hugo/layouts/blog/list.html @@ -0,0 +1,28 @@ +{{ define "main" }} + +
+

{{ $.Page.Params.Title }}

+
+ {{ .Content }} +
+
+ +
+ {{ range .Pages }} +
+ +
+
+

{{ .Title }}

+ {{ .Params.brief }} +
{{ dateFormat "2 Jan 2016" .Date }}
+
{{ .ReadingTime }}
+
+

{{ .Summary }} ...

+
+
+ {{ end }} +
+ + +{{ end }} \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/layouts/blog/single.html b/test-hugo/themes/devfest-theme-hugo/layouts/blog/single.html new file mode 100644 index 0000000..02af55b --- /dev/null +++ b/test-hugo/themes/devfest-theme-hugo/layouts/blog/single.html @@ -0,0 +1,23 @@ +{{ define "main" }} + +
+
+ +
+ +

+ {{ .Title }} + {{ .Params.brief }} +

+ +
+ {{ .TableOfContents }} +
+
+ +
+ + {{ .Content }} +
+ +{{ end }} \ No newline at end of file diff --git a/test-hugo/themes/devfest-theme-hugo/layouts/partials/speaker.html b/test-hugo/themes/devfest-theme-hugo/layouts/partials/speaker.html index c26fa92..f44554b 100644 --- a/test-hugo/themes/devfest-theme-hugo/layouts/partials/speaker.html +++ b/test-hugo/themes/devfest-theme-hugo/layouts/partials/speaker.html @@ -2,7 +2,7 @@
- {{ .company }} +
{{ .company }}
{{ .name }} diff --git a/test-hugo/themes/devfest-theme-hugo/layouts/speakers/single.html b/test-hugo/themes/devfest-theme-hugo/layouts/speakers/single.html new file mode 100644 index 0000000..34dd125 --- /dev/null +++ b/test-hugo/themes/devfest-theme-hugo/layouts/speakers/single.html @@ -0,0 +1,48 @@ +{{ define "main" }} + +
+ +
+
+
+

{{ .Page.Params.name }}

+ +
    + {{ range .Page.Params.socials }} +
  • + +
  • + {{ end }} +
+
+
+ +
+
    + {{ range sort (where .Site.Data.sessions "speakers" "intersect" (slice .Page.Params.id)) "id" "desc" }} +
  • + {{ .title }} +
  • + {{ end }} +
+
+
+ +
+ +
+
+ {{ .Page.Params.company }} +
{{ .Page.Params.company }}
+
+

{{ .Page.Params.country }}

+
+ +
+ {{ .Content }} +
+ +
+ + +{{ end }} diff --git a/tools/extract-data.js b/tools/extract-data.js index d5fb366..7920797 100644 --- a/tools/extract-data.js +++ b/tools/extract-data.js @@ -2,25 +2,25 @@ const yaml = require('js-yaml'); const fs = require('fs'); const path = require('path'); -const wtf = () => { - throw Error('WTF!') +const writeOption = { + flag: 'w' }; -const writeTo = (list, dest) => { - const dump = yaml.safeDump(list); +const writeToYml = (list, dest) => { + const data = yaml.safeDump(list); console.log('Write to', dest); - fs.writeFileSync(dest, dump, { - flag: 'w' - }); + + fs.writeFileSync(dest, data, writeOption); }; const firebaseData = require('../test-hugo/data/firebase-data.json'); -const identity= obj => obj; +const identity = obj => obj; const idValue = obj => Object.entries(obj) - .map(([key, elt]) => ({ ...elt, - id: key - })); + .map(([key, elt]) => ({ + ...elt, + id: key + })); const dataExtractor = { sessions: idValue, @@ -28,11 +28,11 @@ const dataExtractor = { partners: identity, team: identity, tickets: identity, -} +}; Object.entries(dataExtractor) .forEach(([key, value]) => { - const dest = path.join(__dirname, `../test-hugo/data/${key}.yml`); - const data = value(firebaseData[key]); - writeTo(data, dest); -}); \ No newline at end of file + const dest = path.join(__dirname, `../test-hugo/data/${key}.yml`); + const data = value(firebaseData[key]); + writeToYml(data, dest); + }); diff --git a/tools/generate-speakers.js b/tools/generate-speakers.js new file mode 100644 index 0000000..e6ca809 --- /dev/null +++ b/tools/generate-speakers.js @@ -0,0 +1,29 @@ +const yaml = require('js-yaml'); +const fs = require('fs'); +const path = require('path'); + + +const writeOption = { + flag: 'w' +}; + +const firebaseData = require('../test-hugo/data/firebase-data.json'); + +const generateSpeakerData = (id, speaker) => { + const {name, bio, company, companyLogo, country, photo, socials} = speaker; + const frontMatter = {id, name, company, companyLogo, country, photo, socials}; + return `--- +${yaml.safeDump(frontMatter, {skipInvalid: true})} +--- + +${bio} +`; +}; + +Object.entries(firebaseData.speakers) + .map(([id, speaker]) => ([id, generateSpeakerData(id, speaker)])) + .forEach(([id, data]) => { + const dest = path.join(__dirname, `../test-hugo/content/speakers/${id}.md`); + console.log('Write to', dest); + fs.writeFileSync(dest, data, writeOption); + }); \ No newline at end of file