remotes/1693055039339581669/master
Igor Laborie 5 years ago
parent 0d06bb367b
commit 54b6ee6432
  1. 6
      .firebaserc
  2. 7
      .gitignore
  3. 36
      .gitlab-ci.yml
  4. 3
      .gitmodules
  5. 21
      LICENSE
  6. 75
      README.md
  7. 75
      config.toml
  8. 129
      content/_index.fr.md
  9. 129
      content/_index.md
  10. 8
      content/blog/_index.fr.md
  11. 8
      content/blog/_index.md
  12. 28
      content/blog/find-out-when-is-edition-2019-contest.fr.md
  13. 28
      content/blog/find-out-when-is-edition-2019-contest.md
  14. 27
      content/blog/get-ready-for-2019.fr.md
  15. 27
      content/blog/get-ready-for-2019.md
  16. 57
      content/code-of-conduct.fr.md
  17. 57
      content/code-of-conduct.md
  18. 129
      content/faq.fr.md
  19. 121
      content/faq.md
  20. 22
      content/partners/_index.fr.md
  21. 26
      content/partners/_index.md
  22. 12
      content/partners/communautes/duchess-fr.md
  23. 12
      content/partners/communautes/gdg-toulouse.md
  24. 12
      content/partners/communautes/toulouse-data-science.md
  25. 12
      content/partners/communautes/toulouse-devops.md
  26. 12
      content/partners/communautes/toulouse-jug.md
  27. 12
      content/partners/communautes/toulousejs.md
  28. 12
      content/partners/gold/capgemini.md
  29. 13
      content/partners/gold/cirruseo.md
  30. 12
      content/partners/gold/cs-systemes-d'information.md
  31. 12
      content/partners/gold/fittingbox.md
  32. 13
      content/partners/gold/fullsave.md
  33. 12
      content/partners/gold/informatique-banque-populaire.md
  34. 12
      content/partners/gold/ippon.md
  35. 13
      content/partners/gold/jfrog.md
  36. 12
      content/partners/gold/lyra-network.md
  37. 13
      content/partners/gold/monkey-patch.md
  38. 12
      content/partners/gold/onepoint.md
  39. 12
      content/partners/gold/palo-it.md
  40. 12
      content/partners/gold/projixi.md
  41. 13
      content/partners/gold/sigfox.md
  42. 12
      content/partners/gold/sogeti.md
  43. 13
      content/partners/gold/stack-labs.md
  44. 12
      content/partners/media/programmez.md
  45. 13
      content/partners/platinium/airbus.md
  46. 12
      content/partners/platinium/continental.md
  47. 14
      content/partners/platinium/delair.md
  48. 13
      content/partners/platinium/toulouse-metropole.md
  49. 12
      content/partners/soutien/cnes.md
  50. 12
      content/partners/soutien/commit42.md
  51. 12
      content/partners/soutien/docdoku.md
  52. 12
      content/partners/soutien/etincelle-coworking.md
  53. 12
      content/partners/soutien/gisaia.md
  54. 12
      content/partners/soutien/morning.md
  55. 12
      content/partners/soutien/pierre-fabre.md
  56. 12
      content/partners/soutien/sii.md
  57. 12
      content/partners/soutien/sqli.md
  58. 12
      content/partners/soutien/viseo.md
  59. 13
      content/schedule/_index.fr.md
  60. 12
      content/schedule/_index.md
  61. 17
      content/sessions/101_keynote_d_ouverture.md
  62. 15
      content/sessions/102_keynote_de_fermeture.md
  63. 14
      content/sessions/201_office_hours.md
  64. 14
      content/sessions/202_office_hours.md
  65. 14
      content/sessions/203_office_hours.md
  66. 14
      content/sessions/204_office_hours.md
  67. 14
      content/sessions/205_office_hours.md
  68. 14
      content/sessions/206_office_hours.md
  69. 15
      content/sessions/207_office_hours.md
  70. 16
      content/sessions/208_office_hours.md
  71. 17
      content/sessions/4125_let_s_sketchnote___prise_de_notes_visuelle.md
  72. 25
      content/sessions/4128_ceinture_noire_karate_en_tests_d_api_rest.md
  73. 15
      content/sessions/4132_premiers_pas_avec_capacitor____dans_le_monde_reel.md
  74. 19
      content/sessions/4142_votre_mission___decouvrir_haskell_et_le_mettre_en_prod.md
  75. 17
      content/sessions/4195_developper_une_application_web_avec_rust.md
  76. 21
      content/sessions/4207_la_programmation_fonctionnelle_sans_ceder_a_la_mode.md
  77. 29
      content/sessions/4211_architecture_decision_records__reconciliez_vous_avec_votre_documentation.md
  78. 24
      content/sessions/4225_detectez_et_trackez_les_zergs_qui_se_cachent_dans_vos_dependances__.md
  79. 17
      content/sessions/4231_la_tete_dans_les_nuages_avec_un_raspberry_pi.md
  80. 21
      content/sessions/4282_agile__craftsmanship__devops_and_other_monsters___how_to_fight_with_them_.md
  81. 15
      content/sessions/4305_google_container_tools___developper_efficacement_dans_un_monde_de_conteneurs.md
  82. 35
      content/sessions/4306_s_aider_du_data_oriented_design_pour_ecrire_des_applications_performantes.md
  83. 15
      content/sessions/4307__retourauxsources______les_cookies_http.md
  84. 23
      content/sessions/4312_des_apis_de_machine_learning_sur_etagere__a_l_entrainement_distribue_dans_le_cloud.md
  85. 15
      content/sessions/4313_tests_bdd__faites_rediger_vos_tests_end_to_end_par_les_fonctionnels.md
  86. 20
      content/sessions/4322_lighthouse___mesurer_et_ameliorer_votre_performance_web.md
  87. 15
      content/sessions/4331_et_si_on_parlait_accessibilite_du_web__.md
  88. 17
      content/sessions/4334_tensorflow__is_there_really_no_spoon__.md
  89. 17
      content/sessions/4338_comment_perdre_sa_surchage_featurale__.md
  90. 17
      content/sessions/4340_angular_elements.md
  91. 29
      content/sessions/4349_comment_t_organiser_quand_tu_es_b____lique_de_naissance__et_depuis_des_decennies___que_tu_as_plusieurs_jobs__ou_projets___sans_exploser_en_vol_____et_bosser_a_plusieurs_____et_y_arriver.md
  92. 27
      content/sessions/4420_decouvrir_par_l_exemple__microservices_et_event_sourcing_avec_kafka_et_kubernetes.md
  93. 25
      content/sessions/4432_testcontainers_pour_de_vrais_tests_d_integration_d_elasticsearch.md
  94. 20
      content/sessions/4447_systemd__de__dev_null_a_root.md
  95. 17
      content/sessions/4457_template_de_deploiements_kubernetes_avec_kontemplate.md
  96. 21
      content/sessions/4473_burger_quiz_s_invite_au_devfest_avec_un_sel_ou_poivre__code__data_ou_les_deux_.md
  97. 29
      content/sessions/4507_introduction_a_arrow___typeclass_is_the_new_interface.md
  98. 21
      content/sessions/4509_comprendre_le_theoreme_de_cap_avec_apache_kafka.md
  99. 20
      content/sessions/4515_remake_de_jeux_retro_avec_vue_js.md
  100. 19
      content/sessions/4528_exploring_reactive_programming_in_java.md
  101. Some files were not shown because too many files have changed in this diff Show More

@ -0,0 +1,6 @@
{
"projects": {
"default": "sandbox-devfesttoulouse",
"prod": "2019-devfesttoulouse"
}
}

7
.gitignore vendored

@ -1 +1,6 @@
_gen/
/resources/
public/
node_modules/
.firebase/
.idea/
.firebase/

@ -0,0 +1,36 @@
image: ilaborie/hugonode:1
variables:
GIT_SUBMODULE_STRATEGY: recursive
before_script:
- hugo version
- echo node `node --version`
- echo yarn `yarn --version`
- pushd themes/devfest-theme-hugo
- yarn
- popd
sandbox:
script:
- hugo
- node themes/devfest-theme-hugo/minify.js
- firebase use default
- firebase deploy --token "$FIREBASE_SANDBOX_TOKEN"
artifacts:
paths:
- public
only:
- develop
prod:
script:
- hugo
- node themes/devfest-theme-hugo/minify.js
- firebase use prod
- firebase deploy --token "$FIREBASE_PROD_TOKEN"
artifacts:
paths:
- public
only:
- master

3
.gitmodules vendored

@ -0,0 +1,3 @@
[submodule "themes/devfest-theme-hugo"]
path = themes/devfest-theme-hugo
url = https://github.com/GDGToulouse/devfest-theme-hugo.git

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2019 devfest-toulouse
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

@ -0,0 +1,75 @@
# Site DevFest 2019
[![pipeline status](https://gitlab.com/devfest-toulouse/site-devfest-2019/badges/develop/pipeline.svg)](https://gitlab.com/devfest-toulouse/site-devfest-2019/commits/develop)
## Requirement
* [Install Hugo](https://gohugo.io/getting-started/installing/)
Note: you need to install the extended version.
* If you need to use tools, or deploy, you also need [NodeJS](https://nodejs.org/en/) and [Yarn](https://yarnpkg.com/lang/en/docs/install).
## Install Theme
```bash
git submodule init
git submodule update themes/devfest-theme-hugo
```
## Run Local site
Just run
```bash
hugo server -D
```
Notice that the `-D` flag is used to rendrer draft elements.
More information [here](https://gohugo.io/commands/hugo_server/)
## Build
Just run
```bash
hugo
```
More information [here](https://gohugo.io/commands/hugo/)
## Edit data
You can edit
* general information about the site into the `config.toml` file.
* some data into `data/*.yml` files, like header or footer information
* some content into `content/**` files.
* some static assets like images into the `static/*` folder
### Create a new blog entry
You can use `hugo new blog/i-create-a-new-entry.md` command and then edit it.
Or just copy an already existing blog entry, and update the content.
## Tooling
First you need to install dependencies with `yarn`.
### Publish
To publish the site on firebase, just run `firebase deploy`.
Note that you need to authenticate once with `firebase login`
### Extract data from CFP
TODO...
## TODO
* [] i18n
* [] a11y
* [] optimizations
* [] more tooling
* [] last tweet
* [] add the author for the blog

@ -0,0 +1,75 @@
baseURL = "https://sandbox-devfesttoulouse.firebaseapp.com/"
languageCode = "en"
title = "Devfest Toulouse 2019"
# Theme
theme = "devfest-theme-hugo"
# Params
enableEmoji = true
enableRobotsTXT = true
enableMissingTranslationPlaceholders = true
googleAnalytics = "UA-37717223-7"
[params]
favicon = "/images/favicon.ico"
themeColor = "#673ab7"
title = "DevFest Toulouse 2019"
date = "2019-10-03"
description = "The DevFest, or 'Developers Festival', is a technical conference for developers. It is aimed at students, professionals or simply curious technophiles."
images = ["/images/logo.svg", "/images/logo-monochrome.svg"]
email = "contact@devfesttoulouse.fr"
keywords = "event, gdg, gde, devfest, google, programming, android, chrome, developers, web, cloud, androiddev"
copyright = "We :heart: chocolatines"
subscriptionUrl = "http://eepurl.com/dps1j5"
[params.logos]
header = "/images/logos/devfest_color_text.png"
footer = "/images/logos/devfest_gray_text.png"
#[menu]
#[[menu.main]]
# identifier = "jobs"
# name = "Jobs"
# url = "https://jobs.devfesttoulouse.fr/"
# weight = 200
# external = true
[languages]
[languages.en]
weight = 1
languageName = "gb"
[languages.fr]
weight = 2
languageName = "fr"
[languages.fr.params]
description = "Le DevFest, ou 'Developers Festival', est une conférence technique destinée aux développeurs. Elle s'adresse aussi bien aux étudiants, aux professionnels ou tout simplement aux curieux technophiles."
[taxonomies]
tag = "tags"
[privacy]
[privacy.disqus]
disable = true
[privacy.googleAnalytics]
anonymizeIP = false
disable = false
respectDoNotTrack = false
useSessionStorage = false
[privacy.instagram]
disable = true
simple = false
[privacy.twitter]
disable = false
enableDNT = false
simple = false
[privacy.vimeo]
disable = true
simple = false
[privacy.youtube]
disable = false
privacyEnhanced = false

@ -0,0 +1,129 @@
---
title: Accueil
menu:
main:
weight: -1
---
{{% jumbo img="/images/backgrounds/back-0.jpg" imgLabel="DevFest Toulouse 2019" %}}
# ![](/images/logos/devfest_color_text.png)
le 3 Octobre, 2019
Centre de Congrès Pierre Baudis
{{% /jumbo %}}
<!-- ... -->
{{% home-info what="Participants:900,Journée:1,Conférences:36,Tracks en parallèle:4" %}}
## Le DevFest Toulouse, c'est quoi ?
Le DevFest, ou 'Developers Festival', est une conférence technique destinée aux développeurs. Elle s'adresse aussi bien aux étudiants, aux professionnels ou tout simplement aux curieux technophiles.
{{% /home-info %}}
<!-- ...
{{% home-speakers %}}
## Conférenciers en vedette
{{< button-link label="Proposer une présentation"
url="http://www.conference-hall.io"
icon="cfp" >}}
{{< button-link label="Voir tous les conférenciers"
url="./speakers"
icon="right" >}}
{{% /home-speakers %}}
-->
<!-- ... -->
{{% home-subscribe %}}
## Soyez notifié des dernières informations !
{{% /home-subscribe %}}
<!-- ...
{{% home-tickets %}}
# Billets
<ul>
<li>{{< ticket name="Blind Birds"
starts="2019-04-04"
ends="2019-11-08"
price="40 €"
info="50 premières places"
soldOut="true"
url="https://www.billetweb.fr/devfest-toulouse-2018" >}}</li>
<li>{{< ticket name="Early Birds"
starts="2019-04-04"
ends="2019-11-08"
price="60 €"
info="70 premières places"
soldOut="true"
url="https://www.billetweb.fr/devfest-toulouse-2018" >}}</li>
<li>{{< ticket name="Normal"
starts="2019-04-04"
ends="2019-11-08"
price="80 €"
info="250 places restantes"
soldOut=""
url="https://www.billetweb.fr/devfest-toulouse-2018" >}}</li>
</ul>
\* Votre billet vous donne accès à toutes les conférences, aux pauses café, et au repas. L'hébergement n'est PAS inclus dans ce prix.
{{% /home-tickets %}}
-->
<!-- ... -->
{{% home-location
image="/images/map.png"
address="11 Espl. Compans Caffarelli, 31000 Toulouse"
latitude="43.6110956"
longitude="1.4332799" %}}
## Le lieu
### Centre de Congrès Pierre Baudis
Le Centre de Congrès Pierre Baudis est un lieu d'échanges moderne,
situé sur un emplacement privilégié,
à proximité immédiate du centre de Toulouse et dans un environnement verdoyant.
{{% /home-location %}}
<!-- ... -->
{{% album images="/images/album/2018/_25A9313.jpg,/images/album/2018/_25A9386.jpg,/images/album/2018/_25A9671.jpg,/images/album/2018/_25A9334.jpg,/images/album/2018/_25A9282.jpg,/images/album/2018/_25A9612.jpg,/images/album/2018/_25A9452.jpg,/images/album/2018/_25A9628.jpg" %}}
### Quelques photos du **DevFest Toulouse 2018** avec le thème 👾 _retro-gaming_.
<a class="btn inverse icon-right" target="_blank" rel="noopener" href="https://photos.app.goo.gl/nJYFVReFUk9mnXbv9">
Voir toutes les photos
</a>
<a class="btn inverse icon-right" target="_blank" rel="noopener" href="https://www.youtube.com/watch?v=ZQGRMJzi6yU">
Voir les meilleurs moments 2018!
</a>
{{% /album %}}
<!-- ...
{{% partners categories="platinium,gold,soutien,media,communautes" %}}
# Partenaires
{{% /partners %}}
-->

@ -0,0 +1,129 @@
---
title: Home
menu:
main:
weight: -1
---
{{% jumbo img="/images/backgrounds/back-0.jpg" imgLabel="DevFest Toulouse 2019" %}}
# ![](/images/logos/devfest_color_text.png)
3rd October, 2019
Centre de Congrès Pierre Baudis
{{% /jumbo %}}
<!-- ... -->
{{% home-info what="Participants:900,Day:1,Sessions:36,Parallel Tracks:4" %}}
## What is DevFest Toulouse?
The DevFest, or 'Developers Festival', is a technical conference for developers.
It is aimed at students, professionals or simply curious technophiles.
{{% /home-info %}}
<!-- ...
{{% home-speakers %}}
## Featured Speakers
{{< button-link label="Submit a presentation"
url="http://www.conference-hall.io"
icon="cfp" >}}
{{< button-link label="See all speakers"
url="./speakers"
icon="right" >}}
{{% /home-speakers %}}
-->
<!-- ... -->
{{% home-subscribe %}}
## Get notified about the important conference updates
{{% /home-subscribe %}}
<!-- ...
{{% home-tickets %}}
# Tickets
<ul>
<li>{{< ticket name="Blind Birds"
starts="2019-04-04"
ends="2019-11-08"
price="40 €"
info="50 first places"
soldOut="true"
url="https://www.billetweb.fr/devfest-toulouse-2018" >}}</li>
<li>{{< ticket name="Early Birds"
starts="2019-04-04"
ends="2019-11-08"
price="60 €"
info="70 first places"
soldOut="true"
url="https://www.billetweb.fr/devfest-toulouse-2018" >}}</li>
<li>{{< ticket name="Normal"
starts="2019-04-04"
ends="2019-11-08"
price="80 €"
info="250 last places"
soldOut=""
url="https://www.billetweb.fr/devfest-toulouse-2018" >}}</li>
</ul>
\* Your ticket gives you access to all conferences, coffee breaks, and lunch. Accommodation is NOT included in this price.
{{% /home-tickets %}}
-->
<!-- ... -->
{{% home-location
image="/images/map.png"
address="11 Espl. Compans Caffarelli, 31000 Toulouse"
latitude="43.6110956"
longitude="1.4332799" %}}
## The venue
### Centre de Congrès Pierre Baudis
The Centre de Congrès Pierre Baudis is a modern place of exchange,
located on a privileged location,
in the immediate vicinity of the centre of Toulouse and in a green environment.
{{% /home-location %}}
<!-- ... -->
{{% album images="/images/album/2018/_25A9313.jpg,/images/album/2018/_25A9386.jpg,/images/album/2018/_25A9671.jpg,/images/album/2018/_25A9334.jpg,/images/album/2018/_25A9282.jpg,/images/album/2018/_25A9612.jpg,/images/album/2018/_25A9452.jpg,/images/album/2018/_25A9628.jpg" %}}
### Some pictures of the **DevFest Toulouse 2018** with the 👾 _retro-gaming_ theme.
<a class="btn inverse icon-right" target="_blank" rel="noopener" href="https://photos.app.goo.gl/nJYFVReFUk9mnXbv9">
See all photos
</a>
<a class="btn inverse icon-right" target="_blank" rel="noopener" href="https://www.youtube.com/watch?v=ZQGRMJzi6yU">
See the best moments of 2018!
</a>
{{% /album %}}
<!-- ...
{{% partners categories="platinium,gold,soutien,media,communautes" %}}
# Partners
{{% /partners %}}
-->

@ -0,0 +1,8 @@
---
title: Blog
menu:
main:
weight: 50
draft: false
---

@ -0,0 +1,8 @@
---
title: Blog
menu:
main:
weight: 50
draft: false
---

@ -0,0 +1,28 @@
---
title: "[Jeux] Découvrez quand aura lieu le Devfest 2019"
brief: Plusieurs dizaines de personnes ont participé à notre concours pour gagner le premier ticket DevFest Toulouse 2019!
image: /images/blog/encryption.jpeg
date: 2019-01-20
draft: false
---
Aujourd'hui nous avons lancé un jeu concours pour découvrir quand aura lieu le DevFest 2019:
{{< tweet 1087257164182364160 >}}
Nous avons crée ce jeu pour engager la communauté et il n'aura fallut que 20 minutes pour que quelqu'un trouve la bonne réponse 😱!
{{< tweet 1089767584302579712 >}}
Si vous avez été bloqués, voici la solution:
## Solution
1. Téléchargez ce [fichier](http://bit.ly/SaurasTuTrouverLaDateDuDevFestToulouse2019)
1. Decodez le JWT via <http://jwt.io> par exemple
1. Recuperez le champ data, decodez le via `base64 -d ...`
1. Recuperez le fichier jpg
1. Ouvrez le avec <https://hexed.it/>
1. Decouvrez la date!
Si vous êtes pressé de savoir cliquez [ici]({{< ref "/blog/get-ready-for-2019" >}})

@ -0,0 +1,28 @@
---
title: "[Contest] Find out when is the 2019 edition taking place"
brief: Several dozen of people played our contest to get the first 2019 ticket
image: /images/blog/encryption.jpeg
date: 2019-01-20
draft: false
---
Today we released the following tweet
{{< tweet 1087257164182364160 >}}
We created this contest to engage our community and it did not take long (around 20 minutes) until we got a winner 😱!
{{< tweet 1089767584302579712 >}}
If you got stuck , here is the solution:
## Solution
1. Download the [file](http://bit.ly/SaurasTuTrouverLaDateDuDevFestToulouse2019)
1. Recognize that it is a JWT and decode it with <http://jwt.io> for example
1. Extract the data field, and do `base64 -d ...`
1. a `files` on the result says that is a jpeg
1. open it with <https://hexed.it/>
1. and voilà!
Shortcut => [edition 2019 announcement]({{< ref "/blog/get-ready-for-2019" >}})

@ -0,0 +1,27 @@
---
title: Lancement du DevFest Toulouse édition 2019
brief: Soyez prêt!
image: /images/blog/hello-2019.png
date: 2019-01-28
draft: false
---
Aujourd’hui, nous avons le plaisir de vous annoncer que la 4ème édition du DevFest Toulouse se déroulera **le jeudi 03 Octobre 2019 au Centre des Congrès Pierre Baudis**.
Tout comme l’année dernière, la journée se déroulera en plein coeur de Toulouse, dans le quartier de Compans Cafarelli. Le Centre de Congrès est 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**.
![baudis](/images/blog/baudis.jpg)
## La suite des réjouissances:
* Ouverture du [CFP](https://conference-hall.io/public/event/HJRThubF4uYPkb7jSUxi) : 1er Avril
* Ouverture de la billetterie (environ 900 places disponibles) : en Avril.
Dans les jours/semaines à venir nous communiquerons sur le thème de l'édition 2019. Suivez-nous sur Twitter, LinkedIn ou sur ce site afin de rester informés ! :-)
## Vous en voulez encore ?
* [Vidéo des meilleurs moments 2018](https://www.youtube.com/watch?v=ZQGRMJzi6yU)
* [Retrouvez toutes les conférences de l’édition 2018](https://www.youtube.com/watch?v=ZQGRMJzi6yU&list=PLuZ_sYdawLiXmCwIYJs7AcBaXmUsVgPMU)
* [Revivez l’édition 2018 avec les photos officielles](https://photos.google.com/share/AF1QipNXrf4emzX-sHvtCLQ6oJOHoTKs-JpNS34QLOQ3J_vQPIwAOS6mA1svo_-EUsLAdA?key=TVY3dlFTMHBkX2tYazR0U0lBTGhJMEpHZWE4UHR3)
* [Le programme et toutes les infos : sur le site Edition 2018](https://2018.devfesttoulouse.fr/)

@ -0,0 +1,27 @@
---
title: Get ready for DevFest Toulouse 2019!
brief: DevFest season is back
image: /images/blog/hello-2019.png
date: 2019-01-28
draft: false
---
Today it is with great pleasure that we announce you that the 4th edition of DevFest Toulouse will take place **October 3rd 2019 at the center of congress Pierre Baudis**.
As last year, the event will be right in the city center, in the Compans Cafarelli neighborhood. The center of congress Pierre Baudis is acecssible by the subway, bus or even by car. This year we will have **more space**, **more sponsors** and **more attendees**
![baudis](/images/blog/baudis.jpg)
## What's next?
* The [CFP](https://conference-hall.io/public/event/HJRThubF4uYPkb7jSUxi) will open April the 1st
* Tickets will open in April as well (900 tickets available)
We will be communicating about this year theme pretty soon on Twitter [@DevFestToulouse](https://twitter.com/DevFestToulouse/), stay tuned!
## How was 2018 edition?
* [A video recap of 2018](https://www.youtube.com/watch?v=ZQGRMJzi6yU)
* [Youtube playlist with 2018 talks](https://www.youtube.com/watch?v=ZQGRMJzi6yU&list=PLuZ_sYdawLiXmCwIYJs7AcBaXmUsVgPMU)
* [2018 Official pictures](https://photos.google.com/share/AF1QipNXrf4emzX-sHvtCLQ6oJOHoTKs-JpNS34QLOQ3J_vQPIwAOS6mA1svo_-EUsLAdA?key=TVY3dlFTMHBkX2tYazR0U0lBTGhJMEpHZWE4UHR3)
* [2018 website](https://2018.devfesttoulouse.fr/)

@ -0,0 +1,57 @@
---
title: Code of Conduct
draft: false
---
## 1. Purpose
A primary goal of [GDG Toulouse](http://www.gdgtoulouse.fr/) is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof).
GDG Toulouse prides itself on being an open, respectful, and inclusive community. That means the [jerky behavior](https://meta.wikimedia.org/wiki/Don%27t_be_a_jerk) isn’t allowed at GDG meetings.
This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior.
We invite all those who participate in Google Developers Group to help us create safe and positive experiences for everyone.
## 2. Open [Source/Culture/Tech] Citizenship
A supplemental goal of this Code of Conduct is to increase open [source/culture/tech] citizenship by encouraging participants to recognize and strengthen the relationships between our actions and their effects on our community. Communities mirror the societies in which they exist, and positive action is essential to counteract the many forms of inequality and abuses of power that exist in society. If you see someone who is making an extra effort to ensure our community is welcoming, friendly, and encourages all participants to contribute to the fullest extent, we want to know.
## 3. Expected Behavior
The following behaviors are expected and requested of all community members:
- Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community.
- Exercise consideration and respect in your speech and actions.
- Attempt collaboration before a conflict.
- Refrain from demeaning, discriminatory, or harassing behavior and speech.
- Be mindful of your surroundings and your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential.
## 4. Unacceptable Behavior
The following actions are considered harassment and are unacceptable within our community:
- Violence, threats of violence or violent language directed against another person.
- Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language.
- Posting or displaying sexually explicit or violent material.
- Posting or threatening to post other people’s personally identifying information ("doxing").
- Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability.
- Inappropriate photography or recording.
- Inappropriate physical contact. You should have someone’s consent before touching them.
- Unwelcome sexual attention. This includes sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances.
- Deliberate intimidation, stalking or following (online or in person).
- Advocating for, or encouraging, any of the above behavior.
- Sustained disruption of community events, including talks and, presentations.
## 5. Consequences of Unacceptable Behavior
Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated.
Anyone asked to stop unacceptable behavior is expected to comply immediately.
If a community member engages in unacceptable behavior, the community organizers may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning (and without refund in the case of a paid event.
## 6. Scope
We expect all community participants to abide by this Code of Conduct in all community venues–online and in-person–as well as in all one-on-one communications about community business. This code of conduct and its related procedures also applies to unacceptable behavior occurring outside the scope of community activities when such behavior has the potential to affect the safety and well-being of community members adversely.
## 7. Contact info
<contact@devfesttoulouse.fr>

@ -0,0 +1,57 @@
---
title: Code of Conduct
draft: false
---
## 1. Purpose
A primary goal of [GDG Toulouse](http://www.gdgtoulouse.fr/) is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof).
GDG Toulouse prides itself on being an open, respectful, and inclusive community. That means the [jerky behavior](https://meta.wikimedia.org/wiki/Don%27t_be_a_jerk) isn’t allowed at GDG meetings.
This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior.
We invite all those who participate in Google Developers Group to help us create safe and positive experiences for everyone.
## 2. Open [Source/Culture/Tech] Citizenship
A supplemental goal of this Code of Conduct is to increase open [source/culture/tech] citizenship by encouraging participants to recognize and strengthen the relationships between our actions and their effects on our community. Communities mirror the societies in which they exist, and positive action is essential to counteract the many forms of inequality and abuses of power that exist in society. If you see someone who is making an extra effort to ensure our community is welcoming, friendly, and encourages all participants to contribute to the fullest extent, we want to know.
## 3. Expected Behavior
The following behaviors are expected and requested of all community members:
- Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community.
- Exercise consideration and respect in your speech and actions.
- Attempt collaboration before a conflict.
- Refrain from demeaning, discriminatory, or harassing behavior and speech.
- Be mindful of your surroundings and your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential.
## 4. Unacceptable Behavior
The following actions are considered harassment and are unacceptable within our community:
- Violence, threats of violence or violent language directed against another person.
- Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language.
- Posting or displaying sexually explicit or violent material.
- Posting or threatening to post other people’s personally identifying information ("doxing").
- Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability.
- Inappropriate photography or recording.
- Inappropriate physical contact. You should have someone’s consent before touching them.
- Unwelcome sexual attention. This includes sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances.
- Deliberate intimidation, stalking or following (online or in person).
- Advocating for, or encouraging, any of the above behavior.
- Sustained disruption of community events, including talks and, presentations.
## 5. Consequences of Unacceptable Behavior
Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated.
Anyone asked to stop unacceptable behavior is expected to comply immediately.
If a community member engages in unacceptable behavior, the community organizers may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning (and without refund in the case of a paid event.
## 6. Scope
We expect all community participants to abide by this Code of Conduct in all community venues–online and in-person–as well as in all one-on-one communications about community business. This code of conduct and its related procedures also applies to unacceptable behavior occurring outside the scope of community activities when such behavior has the potential to affect the safety and well-being of community members adversely.
## 7. Contact info
<contact@devfesttoulouse.fr>

@ -0,0 +1,129 @@
---
title: FAQs
menu:
faq:
weight: 80
draft: false
---
## Général
### Qu'est ce que le DevFest Toulouse ?
Le DevFest, ou “Developers Festival”, est une conférence technique destinée aux développeur·se·s.
Elle s'adresse aussi bien aux étudiants, aux professionnels ou tout simplement aux curieux technophiles.
Durant toute la journée, des orateurs reconnus viendront présenter des sujets variés : autour du développement mobile, du web, de la data, des objets connectés, du cloud, du DevOps, etc... ainsi que des bonnes pratiques de développement.
Des pauses permettent d'engager le dialogue et d'approfondir les sujets présentés.
Le développement logiciel est un sujet très vaste et notre comité de sélection a à cœur de proposer un programme varié et intéressant.
Cette journée sera l'occasion de rencontrer des orateurs de renommée internationale mais également nationale, en effet nous avons aussi pour objectif de faire une place importante aux conférenciers locaux.
Le DevFest s'inscrit dans un [cadre international](https://developers.google.com/events/devfest/) et est organisé en partenariat avec Google.
### Les communautés organisatrices
Le DevFest Toulouse est un événement organisé par les communautés de développeurs de Toulouse, et porté administrativement par le GDG Toulouse.
Vous retrouverez la liste des communautés en bas de page principale.
Pour rendre tout cela possible, une équipe de bénévoles sur-vitaminée s’active en coulisse.
## Conférence
### Où et quand aura lieu le DevFest ?
Le DevFest Toulouse 2017 a lieu le jeudi 8 novembre au Centre de Congrés Pierre Baudis.
### Comment s'y rendre ?
Le centre de congrés est idéalement situé en centre ville.
EN AVION :
Depuis l'aéroport Blagnac, le plus simple est de prendre la navette aéroport pour descendre à Compans-Cafarelli. Vous pouvez aussi prendre le tramway jusqu'à la station Arènes puis la ligne A du métro jusqu'à Jean Jaurès, enfin la ligne B pour descendre à Compans-Cafarelli.
EN VOITURE :
Un parking (payant) est situé à deux pas de la conférence.
EN TRAIN :
Depuis la gare Matabiau, prenez simplement le métro ligne A jusqu'à Jean Jaurès, puis la ligne B pour descendre à Compans-Cafarelli.
EN METRO :
Ligne B, descendez station Compans-Cafarelli.
### Comment devenir sponsor/partenaire ?
Le dossier de partenariat est en cours de finalisation.
## CFP
### Quel est le format des conférences ?
Deux types de conférences sont proposées :
- Les **lightning talks**, d’une durée de **15 minutes**, sans question.
- Les **conférences**, d’une durée de **40 minutes**, sans question dans la salle.
Les orateur·rice·s sont invités à rejoindre le speaker booth après leur conférence, où ils pourront interagir avec les spectateurs désireux de poursuivre le dialogue.
Pour les conférences données en toute fin de de journée, 10 minutes de questions/réponses sont prévues dans le même auditoire à l’issue des 40 minutes de conférence.
### Comment devenir orateur/oratrice ?
Le CFP est ouvert, il ferme le 1 Juillet 2018.
Il vous suffit de soumettre un ou plusieurs sujets sur notre [CFP](https://devfest-toulouse.cfp.io).
Si votre sujet a été pré-sélectionné, nous vous offrons une place à la conférence, vous n'avez donc pas à acheter votre place à l'avance.
Que vous présentiez un talk seul ou en duo, chaque conférencier a son entrée offerte.
### Est-ce que l'on peut soumettre un talk a plusieurs ?
Oui, sur le site du CFP, si vous n'êtes pas seul lors de la présentation, renseignez l'e-mail des autres conférenciers, ceux-ci doivent s'être préalablement inscrits sur le CFP avec cette même adresse.
Pour des raisons pratiques, nous n’acceptons pas les sujets impliquant plus de trois orateur·rice·s.
### J’ai proposé une conférence. Dois-je acheter mon entrée ?
Si votre sujet (conférence ou lightning talk) a été sélectionné, nous vous offrons votre entrée au DevFest, vous n'avez donc pas à acheter votre place à l'avance.
Si vous présentez un talk à plusieurs, deux entrées vous seront offertes par conférence, les autres intervenants devront acheter leur propre place (en l’absence d’autres conférences acceptées.)
Au cas où votre sujet ne serait pas accepté, il vous sera encore possible d’acheter votre place après la notification, au tarif early-bird.
### Prenez-vous en charge les frais de déplacement et d’hébergement?
Les speakers présentant une conférence complète (40 minutes) peuvent demander un remboursement de leurs frais (transport et hébergement) sur présentation des factures, et dans une limite de 250€ par conférence (et non pas par speaker).
Pour les lightning talks, les frais de déplacement ne sont pas remboursés.
### Quels lieux recommandez-vous pour loger ?
Le centre de congrès Pierre Baudis est situé à 15 minutes à pied de l’hyper-centre de Toulouse, ou 5 minutes en métro (arrêt Compans-Caffarelli).
De nombreux hôtels et chambres d’hôtes sont disponibles à proximité.
### Quel est le format attendu pour les slides ?
Vous pouvez présenter votre conférence à partir de votre propre ordinateur, ou nous fournir au préalable les slides au format PDF.
Le thème des slides est entièrement libre, et les présentations seront diffusées ensuite sur la chaîne YouTube GDG France, qui héberge déjà les présentations des années précédentes.
## Billetterie
### Quelles sont les conditions de remboursements de votre billet ?
Nous permettons un remboursement jusqu'à 15 jours avant l'événement hors frais de traitement de notre partenaire billetterie.
### Faut-il se munir d'une pièce d'identité ou y-a-t-il un âge minimum pour entrer à l'événement ?
Votre billet suffit, il n'y a pas d'âge minimum.
### Puis-je mettre à jour les informations de mon inscription ?
Oui, vous pouvez modifier les informations de votre commande sur le site de notre partenaire billetterie.
### Est-ce un problème si le nom indiqué sur mon billet ou mon inscription ne correspond pas à celui du participant ?
Oui. Merci de nous contacter en cas de question précise.
### J'aimerais une facture, comment l'obtenir ?
Notre association est désormais soumise à TVA. Il vous est donc possible d'obtenir une facture auprès de notre partenaire billetterie.

@ -0,0 +1,121 @@
---
title: FAQs
menu:
faq:
weight: 80
draft: false
---
## General
### What is DevFest Toulouse?
The DevFest, or "Developers Festival", is a technical conference for developers.
It is aimed at students, professionals or simply curious technophiles.
Throughout the day, renowned speakers will present a variety of topics: around mobile development, the web, data, connected objects, the cloud, DevOps, etc... as well as good development practices.
Pauses are used to engage in dialogue and deepen the topics presented.
Software development is a very broad subject and our selection committee is committed to providing a varied and interesting program.
This day will be an opportunity to meet speakers of international but also national renown, indeed we also aim to make an important place for local speakers.
DevFest is part of an [international event](https://developers.google.com/events/devfest/) and is organised in partnership with Google.
### Organizing communities
DevFest Toulouse is an event organized by the developer communities of Toulouse, and administratively supported by GDG Toulouse.
You will find the list of communities at the bottom of the main page.
To make all this possible, an over-vitaminated team of volunteers is working behind the scenes.
## Conference
### Where and when will DevFest take place?
Le DevFest Toulouse 2019 a lieu le jeudi 3 octobre au Centre de Congrés Pierre Baudis.
### How to get there?
The congress centre is ideally located in the city centre.
:airplane: BY PLANE :
From Blagnac airport, the easiest way is to take the airport shuttle to get off at Compans-Cafarelli. You can also take the tramway to the Arena station, then line A of the metro to Jean Jaurès, and finally line B to get off at Compans-Cafarelli.
:car: BY CAR:
A parking lot (subject to charge) is located a stone's throw from the conference.
:train: BY TRAIN :
From Matabiau station, simply take the metro line A to Jean Jaurès, then line B to get off at Compans-Cafarelli.
:metro: IN METRO :
Line B, get off at Compans-Cafarelli station.
### How to become a sponsor/partner?
The partnership file is currently being finalized.
## CFP: Call for Paper
### What is the format of the conferences?
Two types of conferences are available:
- The **lightning talks**, lasting **15 minutes**, no questions asked.
- The **conferences**, lasting **40 minutes**, no questions asked in the room.
### How to become a speaker?
The CFP is not yet open.
### Can we submit a talk to several people?
Yes, on the CFP website, if you are not alone during the presentation, fill in the e-mail of the other speakers, they must have previously registered on the CFP with the same address.
For practical reasons, we do not accept topics involving more than three speakers.
### I proposed a conference. Do I have to buy my ticket?
If your subject (conference or lightning talk) has been selected, we offer you your entry to DevFest, so you do not have to buy your ticket in advance.
If you are presenting a multi-party talk, two tickets will be offered per conference, other speakers will have to buy their own seats (in the absence of other accepted conferences.)
In case your subject is not accepted, you will still be able to buy your ticket after the notification, at the early-bird rate.
### Do you cover travel and accommodation costs?
Speakers presenting a full conference (40 minutes) may request reimbursement of their expenses (travel and accommodation) upon presentation of invoices, and up to a maximum of 250€ per conference (and not per speaker).
For lightning talks, travel expenses are not reimbursed.
### What places do you recommend for accommodation?
The Pierre Baudis Congress Centre is located 15 minutes walk from the hyper-centre of Toulouse, or 5 minutes by metro (Compans-Caffarelli stop).
Many hotels and guest rooms are available nearby.
### What is the expected format for slides?
You can present your conference from your own computer, or provide us with the slides in PDF format in advance.
The slides theme is entirely free, and the presentations will then be broadcast on the YouTube channel GDG France, which already hosts the presentations of previous years.
## Ticketing
### What are the conditions for refunding your ticket?
We allow a refund up to 15 days before the event excluding the processing fee of our ticketing partner.
### Is it necessary to bring an identity document or is there a minimum age to enter the event?
Your ticket is enough, there is no minimum age.
### Can I update my registration information?
Yes, you can change your order information on our ticketing partner's website.
### Is it a problem if the name on my ticket or registration does not match the name of the participant?
Yes, please contact us if you have any specific questions.
### I would like an invoice, how do I get it?
Our association is now subject to VAT. It is therefore possible to obtain an invoice from our ticketing partner.

@ -0,0 +1,22 @@
---
title: Partenaires
menu:
main:
weight: 20
draft: true
---
{{% hero %}}
Vous souhaitez devenir sponsor, consultez notre dossier de sponsoring et contactez-nous à
{{< button-link label="contact@devfesttoulouse.fr"
url="mailto:contact@devfesttoulouse.fr"
icon="email" >}}
{{% /hero %}}
<!-- Parteners list -->
{{< partners categories="platinium,gold,soutien,media,communautes" >}}

@ -0,0 +1,26 @@
---
title: Partners
menu:
main:
weight: 20
draft: true
---
{{% hero %}}
If you wish to become a sponsor, consult our sponsorship file and contact us at
{{< button-link label="contact@devfesttoulouse.fr"
url="mailto:contact@devfesttoulouse.fr"
icon="email" >}}
{{% /hero %}}
<!-- Parteners list -->
{{% partners categories="platinium,gold,soutien,media,communautes" %}}
{{% /partners %}}

@ -0,0 +1,12 @@
---
title: Duchess FR
type: partner
category: communautes
website: 'https://www.duchess-france.org/'
logo: /images/partners/community/duchess_fr.svg
socials: []
---
Find Duchess FR on [https://www.duchess-france.org/](https://www.duchess-france.org/)
![Duchess FR](/images/partners/community/duchess_fr.svg)

@ -0,0 +1,12 @@
---
title: GDG Toulouse
type: partner
category: communautes
website: 'https://www.gdgtoulouse.fr/'
logo: /images/partners/community/gdgtoulouse.svg
socials: []
---
Find GDG Toulouse on [https://www.gdgtoulouse.fr/](https://www.gdgtoulouse.fr/)
![GDG Toulouse](/images/partners/community/gdgtoulouse.svg)

@ -0,0 +1,12 @@
---
title: Toulouse Data Science
type: partner
category: communautes
website: 'http://www.tlse-data-science.fr/'
logo: /images/partners/community/tds.png
socials: []
---
Find Toulouse Data Science on [http://www.tlse-data-science.fr/](http://www.tlse-data-science.fr/)
![Toulouse Data Science](/images/partners/community/tds.png)

@ -0,0 +1,12 @@
---
title: Toulouse Devops
type: partner
category: communautes
website: 'http://toulousedevops.org/'
logo: /images/partners/community/toulousedevops.jpg
socials: []
---
Find Toulouse Devops on [http://toulousedevops.org/](http://toulousedevops.org/)
![Toulouse Devops](/images/partners/community/toulousedevops.jpg)

@ -0,0 +1,12 @@
---
title: Toulouse JUG
type: partner
category: communautes
website: 'https://www.toulousejug.org/'
logo: /images/partners/community/toulouse_jug.png
socials: []
---
Find Toulouse JUG on [https://www.toulousejug.org/](https://www.toulousejug.org/)
![Toulouse JUG](/images/partners/community/toulouse_jug.png)

@ -0,0 +1,12 @@
---
title: ToulouseJS
type: partner
category: communautes
website: 'https://twitter.com/ToulouseJS'
logo: /images/partners/community/toulousejs.png
socials: []
---
Find ToulouseJS on [https://twitter.com/ToulouseJS](https://twitter.com/ToulouseJS)
![ToulouseJS](/images/partners/community/toulousejs.png)

@ -0,0 +1,12 @@
---
title: Capgemini
type: partner
category: gold
website: 'https://www.capgemini.com/fr-fr/'
logo: /images/partners/logo-capgemini.svg
socials: []
---
Find Capgemini on [https://www.capgemini.com/fr-fr/](https://www.capgemini.com/fr-fr/)
![Capgemini](/images/partners/logo-capgemini.svg)

@ -0,0 +1,13 @@
---
title: Cirruseo
type: partner
category: gold
website: 'https://www.cirruseo.com/'
logo: /images/partners/logo-cirruseo.png
socials: []
---
Find Cirruseo on [https://www.cirruseo.com/](https://www.cirruseo.com/)
![Cirruseo](/images/partners/logo-cirruseo.png)

@ -0,0 +1,12 @@
---
title: CS Systèmes d'information
type: partner
category: gold
website: 'https://www.c-s.fr/'
logo: /images/partners/logo-cs.png
socials: []
---
Find CS Systèmes d'information on [https://www.c-s.fr/](https://www.c-s.fr/)
![CS Systèmes d'information](/images/partners/logo-cs.png)

@ -0,0 +1,12 @@
---
title: FittingBox
type: partner
category: gold
website: 'https://www.fittingbox.com/'
logo: /images/partners/logo-fittingbox.png
socials: []
---
Find FittingBox on [https://www.fittingbox.com/](https://www.fittingbox.com/)
![FittingBox](/images/partners/logo-fittingbox.png)

@ -0,0 +1,13 @@
---
title: FullSave
type: partner
category: gold
website: 'https://www.fullsave.com/'
logo: /images/partners/logo-fullsave.png
socials: []
---
Find FullSave on [https://www.fullsave.com/](https://www.fullsave.com/)
![FullSave](/images/partners/logo-fullsave.png)

@ -0,0 +1,12 @@
---
title: Informatique Banque Populaire
type: partner
category: gold
website: 'https://informatique.banquepopulaire.fr/'
logo: /images/partners/logo_i-BP2.png
socials: []
---
Find Informatique Banque Populaire on [https://informatique.banquepopulaire.fr/](https://informatique.banquepopulaire.fr/)
![Informatique Banque Populaire](/images/partners/logo_i-BP2.png)

@ -0,0 +1,12 @@
---
title: Ippon
type: partner
category: gold
website: 'https://fr.ippon.tech/'
logo: /images/partners/logo-ippon.svg
socials: []
---
Find Ippon on [https://fr.ippon.tech/](https://fr.ippon.tech/)
![Ippon](/images/partners/logo-ippon.svg)

@ -0,0 +1,13 @@
---
title: JFrog
type: partner
category: gold
website: 'https://jfrog.com/'
logo: /images/partners/logo-jfrog.svg
socials: []
---
Find JFrog on [https://jfrog.com/](https://jfrog.com/)
![JFrog](/images/partners/logo-jfrog.svg)

@ -0,0 +1,12 @@
---
title: Lyra Network
type: partner
category: gold
website: 'https://www.lyra-network.com/'
logo: /images/partners/logo-lyra.png
socials: []
---
Find Lyra Network on [https://www.lyra-network.com/](https://www.lyra-network.com/)
![Lyra Network](/images/partners/logo-lyra.png)

@ -0,0 +1,13 @@
---
title: Monkey Patch
type: partner
category: gold
website: 'http://www.monkeypatch.io/'
logo: /images/partners/Logo_MonkeyPatch_Bleu.png
socials: []
---
Find Monkey Patch on [http://www.monkeypatch.io/](http://www.monkeypatch.io/)
![Monkey Patch](/images/partners/Logo_MonkeyPatch_Bleu.png)

@ -0,0 +1,12 @@
---
title: OnePoint
type: partner
category: gold
website: 'https://www.groupeonepoint.com/'
logo: /images/partners/logo-onepoint.png
socials: []
---
Find OnePoint on [https://www.groupeonepoint.com/](https://www.groupeonepoint.com/)
![OnePoint](/images/partners/logo-onepoint.png)

@ -0,0 +1,12 @@
---
title: Palo IT
type: partner
category: gold
website: 'http://fr.palo-it.com/'
logo: /images/partners/logo-paloit.png
socials: []
---
Find Palo IT on [http://fr.palo-it.com/](http://fr.palo-it.com/)
![Palo IT](/images/partners/logo-paloit.png)

@ -0,0 +1,12 @@
---
title: PROJIXI
type: partner
category: gold
website: 'http://www.projixi-europe.com/'
logo: /images/partners/logo-projixi.png
socials: []
---
Find PROJIXI on [http://www.projixi-europe.com/](http://www.projixi-europe.com/)
![PROJIXI](/images/partners/logo-projixi.png)

@ -0,0 +1,13 @@
---
title: Sigfox
type: partner
category: gold
website: 'https://www.sigfox.com/en'
logo: /images/partners/logo-sigfox.svg
socials: []
---
Find Sigfox on [https://www.sigfox.com/en](https://www.sigfox.com/en)
![Sigfox](/images/partners/logo-sigfox.svg)

@ -0,0 +1,12 @@
---
title: Sogeti
type: partner
category: gold
website: 'https://www.fr.sogeti.com/'
logo: /images/partners/logo-sogeti.jpg
socials: []
---
Find Sogeti on [https://www.fr.sogeti.com/](https://www.fr.sogeti.com/)
![Sogeti](/images/partners/logo-sogeti.jpg)

@ -0,0 +1,13 @@
---
title: Stack Labs
type: partner
category: gold
website: 'https://www.stack-labs.com/'
logo: /images/partners/logo-stacklab.png
socials: []
---
Find Stack Labs on [https://www.stack-labs.com/](https://www.stack-labs.com/)
![Stack Labs](/images/partners/logo-stacklab.png)

@ -0,0 +1,12 @@
---
title: Programmez
type: partner
category: media
website: 'https://www.programmez.com/'
logo: /images/partners/media/logo_programmez.svg
socials: []
---
Find Programmez on [https://www.programmez.com/](https://www.programmez.com/)
![Programmez](/images/partners/media/logo_programmez.svg)

@ -0,0 +1,13 @@
---
title: Airbus
type: partner
category: platinium
website: 'https://www.airbus.com/'
logo: /images/partners/logo-airbus.png
socials: []
---
Find Airbus on [https://www.airbus.com/](https://www.airbus.com/)
![Airbus](/images/partners/logo-airbus.png)

@ -0,0 +1,12 @@
---
title: Continental
type: partner
category: platinium
website: 'https://www.continental-corporation.com/fr-fr/'
logo: /images/partners/logo-continental.png
socials: []
---
Find Continental on [https://www.continental-corporation.com/fr-fr/](https://www.continental-corporation.com/fr-fr/)
![Continental](/images/partners/logo-continental.png)

@ -0,0 +1,14 @@
---
title: Delair
type: partner
category: platinium
website: 'https://delair.aero/'
logo: /images/partners/Delair.png
socials: []
---
Find Delair on [https://delair.aero/](https://delair.aero/)
![Delair](/images/partners/Delair.png)

@ -0,0 +1,13 @@
---
title: Toulouse Métropole
type: partner
category: platinium
website: 'https://www.toulouse-metropole.fr/'
logo: /images/partners/tls-metropole.png
socials: []
---
Find Toulouse Métropole on [https://www.toulouse-metropole.fr/](https://www.toulouse-metropole.fr/)
![Toulouse Métropole](/images/partners/tls-metropole.png)

@ -0,0 +1,12 @@
---
title: CNES
type: partner
category: soutien
website: 'https://cnes.fr/'
logo: /images/partners/logo-cnes.jpg
socials: []
---
Find CNES on [https://cnes.fr/](https://cnes.fr/)
![CNES](/images/partners/logo-cnes.jpg)

@ -0,0 +1,12 @@
---
title: Commit42
type: partner
category: soutien
website: 'https://www.commit42.fr/'
logo: /images/partners/commit42.png
socials: []
---
Find Commit42 on [https://www.commit42.fr/](https://www.commit42.fr/)
![Commit42](/images/partners/commit42.png)

@ -0,0 +1,12 @@
---
title: DocDoku
type: partner
category: soutien
website: 'https://www.docdoku.com/'
logo: /images/partners/docdoku_inverse_web.png
socials: []
---
Find DocDoku on [https://www.docdoku.com/](https://www.docdoku.com/)
![DocDoku](/images/partners/docdoku_inverse_web.png)

@ -0,0 +1,12 @@
---
title: Étincelle Coworking
type: partner
category: soutien
website: 'http://www.coworking-toulouse.com/'
logo: /images/partners/logo-etincelle.gif
socials: []
---
Find Étincelle Coworking on [http://www.coworking-toulouse.com/](http://www.coworking-toulouse.com/)
![Étincelle Coworking](/images/partners/logo-etincelle.gif)

@ -0,0 +1,12 @@
---
title: Gisaia
type: partner
category: soutien
website: 'http://gisaia.fr/'
logo: /images/partners/logo-gisaia.png
socials: []
---
Find Gisaia on [http://gisaia.fr/](http://gisaia.fr/)
![Gisaia](/images/partners/logo-gisaia.png)

@ -0,0 +1,12 @@
---
title: Morning
type: partner
category: soutien
website: 'https://morning.com/fr/'
logo: /images/partners/logo-morning.svg
socials: []
---
Find Morning on [https://morning.com/fr/](https://morning.com/fr/)
![Morning](/images/partners/logo-morning.svg)

@ -0,0 +1,12 @@
---
title: Pierre Fabre
type: partner
category: soutien
website: 'https://www.pierre-fabre.com/fr'
logo: /images/partners/logo-pierrefabre.png
socials: []
---
Find Pierre Fabre on [https://www.pierre-fabre.com/fr](https://www.pierre-fabre.com/fr)
![Pierre Fabre](/images/partners/logo-pierrefabre.png)

@ -0,0 +1,12 @@
---
title: SII
type: partner
category: soutien
website: 'http://www.groupe-sii.com/fr'
logo: /images/partners/logo-sii.png
socials: []
---
Find SII on [http://www.groupe-sii.com/fr](http://www.groupe-sii.com/fr)
![SII](/images/partners/logo-sii.png)

@ -0,0 +1,12 @@
---
title: SQLI
type: partner
category: soutien
website: 'http://www.sqli.com/'
logo: /images/partners/logo-sqli.png
socials: []
---
Find SQLI on [http://www.sqli.com/](http://www.sqli.com/)
![SQLI](/images/partners/logo-sqli.png)

@ -0,0 +1,12 @@
---
title: VISEO
type: partner
category: soutien
website: 'http://www.viseo.com/fr'
logo: /images/partners/logo-viseo.png
socials: []
---
Find VISEO on [http://www.viseo.com/fr](http://www.viseo.com/fr)
![VISEO](/images/partners/logo-viseo.png)

@ -0,0 +1,13 @@
---
title: Programme
menu:
main:
weight: 10
draft: true
---
{{% hero %}}
<!-- TODO: filter and search -->
{{% /hero %}}

@ -0,0 +1,12 @@
---
title: Schedule
menu:
main:
weight: 10
draft: true
---
{{% hero %}}
<!-- TODO: filter and search -->
{{% /hero %}}

@ -0,0 +1,17 @@
---
id: 101
title: Keynote d'ouverture
image: /images/backgrounds/game.png
class: intro
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F101-gamedev-mischief-LaurentVictorino.pdf?alt=media&token=8c65f60b-731f-4223-bd02-3e2cdd15f064
videoId: jwaJ7U9SSDM
tags:
- General
speakers:
- laurent_victorino
talkType: Keynote
---
Développeurs de jeux vidéo : rois de la combine ?

@ -0,0 +1,15 @@
---
id: 102
title: Keynote de fermeture
image: /images/backgrounds/sky.png
class: end
videoId: nfd3wh-GOQI
tags:
- General
speakers:
- quentin_adam
talkType: Keynote
---
Hype Driven Development

@ -0,0 +1,14 @@
---
id: 201
title: Office Hours
tags: []
speakers:
- miro_miro_cupak
- fabien_tregan
- horacio_gonzalez
- celine_louvet
talkType: Office Hours
---
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -0,0 +1,14 @@
---
id: 202
title: Office Hours
tags: []
speakers:
- david_gageot
- guillaume_membre
- olivier_leplus
- piotr_przybyl
talkType: Office Hours
---
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -0,0 +1,14 @@
---
id: 203
title: Office Hours
tags: []
speakers:
- robert_firek
- sylvain_wallez
- hubert_sablonniere
- sebastien_guilloux
talkType: Office Hours
---
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -0,0 +1,14 @@
---
id: 204
title: Office Hours
tags: []
speakers:
- olivier_flebus
- david_pilato
- mathieu_passenaud
- benoit_el_amrani
talkType: Office Hours
---
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -0,0 +1,14 @@
---
id: 205
title: Office Hours
tags: []
speakers:
- ane_diaz_de_tuesta
- arnaud_bos
- julien_topcu
- giulia_bianchi
talkType: Office Hours
---
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -0,0 +1,14 @@
---
id: 206
title: Office Hours
tags: []
speakers:
- jimenez_raul
- alessio_coltellacci
- guillaume_laforge
- francois_teychene
talkType: Office Hours
---
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -0,0 +1,15 @@
---
id: 207
title: Office Hours
tags: []
speakers:
- tugdual_grall
- nicolas_decoster
- juliane_blier
- victor_kropp
- estelle_landry
talkType: Office Hours
---
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -0,0 +1,16 @@
---
id: 208
title: Office Hours
tags: []
speakers:
- frederic_cabestre
- comet_nicolas
- benoit_prioux
- anastasia_lieva
- emmanuel_demey
- jean-francois_garreau
talkType: Office Hours
---
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -0,0 +1,17 @@
---
id: 4125
title: 'Let’s Sketchnote : prise de notes visuelle'
language: Français
complexity: Débutant
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4125-LetsSketchnote-AneDiazDeTuesta.pdf?alt=media&token=a57cb98d-3b45-46d5-8752-b18a8dd745ff
tags:
- Method & Tools
videoId: NInM_wndk2U
speakers:
- ane_diaz_de_tuesta
talkType: Quickie
---
La communication fait aujourd’hui partie intégrante de notre travail; il nous arrive régulièrement de vouloir diffuser une information importante, réaliser une présentation, un compte rendu de réunion… Mais comment être sûrs que le message que l’on souhaite faire passer a bien été compris et retenu par les interlocuteurs ? Le sketchnoting apporte une solution ludique, créative et agréable autant à créer qu’à lire. Venez découvrir comment mettre en valeur votre communication à l’aide de procédés très visuels, simples et accessibles à tous.

@ -0,0 +1,25 @@
---
id: 4128
title: Ceinture noire Karate en tests d’API REST
language: Français
complexity: Débutant
tags:
- Method & Tools
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4128-karate-NicolasComet.pdf?alt=media&token=d1b81627-6683-4134-bc71-e604ac0b1c55
videoId: ZNrCw5T-wls
speakers:
- comet_nicolas
- benoit_prioux
talkType: Conférence
---
Vous aviez toujours rêvé d'une syntaxe facile pour tester vos APIs REST ?
`Karate` est fait pour vous !
Son format DSL plain text inspiré de la syntaxe Cucumber (ie. Gherkin) permet même aux personnes aux notions basiques en développement de venir couvrir vos APIs ou Web services (micros, nanos ou pas!)
Il n'y a plus ~~Karate~~ qu'à réussir ses tests d'intégration !
Venez apprendre comment avec `Java` et `maven` comme simples prérequis d'infrastructure, vous pouvez mettre en place et industrialiser ces tests. On l'utilise chez nous, et on ne s'en passe plus.

@ -0,0 +1,15 @@
---
id: 4132
title: Premiers pas avec Capacitor... dans le monde réel
tags:
- Native mobile apps
language: Français
complexity: Débutant
videoId: a4zCakyQN-o
speakers:
- horacio_gonzalez
talkType: Conférence
---
Ah, Capacitor, quelle belle idée, une alternative à Cordova plus facile à utiliser, utilisable dans n'importe quel framework, complètement intégré à la prochaine version d'Ionic... Ben non, au moins au début, l'idée de Capacitor me laissait sceptique. J'ai passé les deux dernières années a développer des PWA, alors la pensée de devoir revenir à faire des applications hybrides ou native me paressait simplement obsolète. Dans ma tête j'avais mis Capacitor dans la case techno cool qui ne m'intéresse pas dans la vraie vie. Mais à ce moment j'ai relu avec attention leur site et j'ai vu une ligne qui m'a séduit: Build web apps that run equally well on iOS, Android, Electron, and as Progressive Web Apps. Hmmm, si je pouvais prendre une PWA et générer à partir d'elle une appli native Android, une autre iOS et une implémentation Electron en bonus, ça pourrait être carrément cool ! J'ai donc décidé de teste Capacitor sur certaines de mes PWA pour voir si je pouvais les transformer en applications natives. Et ce talk est le retour d'expérience de ce processus, mes premiers pas avec Capacitor, ce qui a marché et ce qui n'a pas marché, et surtout ce que j'ai appris dans le processus.

@ -0,0 +1,19 @@
---
id: 4142
title: Votre mission ? Découvrir Haskell et le mettre en prod
language: Français
complexity: Débutant
tags:
- Languages
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4142-Haskellenprod-CelineLouvet.pdf?alt=media&token=96f84ad6-2bfd-4016-a94c-f51fb58b32de
videoId: 5VCIaYvWecM
speakers:
- celine_louvet
talkType: Conférence
---
On entend parler de Haskell de plus en plus, mais il parait souvent bien compliqué de se lancer. Haskell fait peur, avec ses Monades, Monoïdes et autres gros mots.
On verra ensemble que vous n'avez absolument pas besoin de savoir ce que ces termes signifient pour vous lancer. Je vous propose de regarder ce dont vous aurez besoin pour créer une petite API, avec de la sécurité et de la gestion de données, soit de quoi mettre une petite application en prod.

@ -0,0 +1,17 @@
---
id: 4195
title: Développer une application web avec Rust
tags:
- Languages
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4195-WebappswithRust-SylvainWallez.pdf?alt=media&token=b79694bf-a25e-41aa-bc7b-64506797e29a
language: Français
complexity: Débutant
videoId: rhAqG4gh400
speakers:
- sylvain_wallez
talkType: Conférence
---
Développé par la fondation Mozilla, Rust est un langage fortement typé, sûr, très performant et très économe en ressources (oui oui, tout ça à la fois). Initialement orienté système et bas niveau, l'écosystème Rust s'agrandit rapidement et propose maintenant toutes les librairies nécessaires au développement d'applications web. Pour découvrir le développement web avec Rust, nous parcourerons l'architecture et le code d'un serveur de commentaires open source à la Disqus, développé par le speaker pour les sites statiques faits par exemple avec Jekyll ou Hugo. Nous découvrirons routage http avec extraction typée de paramètres, réponses asynchrones, appel de services tiers, accès aux bases de données, cache, templating HTML, envoi d'emails, logs, métriques, etc. Et nous verrons qu'une application Rust c'est tout petit et très rapide, permettant d'héberger le serveur sur des configurations très modestes.

@ -0,0 +1,21 @@
---
id: 4207
title: La programmation fonctionnelle sans céder à la mode
language: Français
complexity: Intermédiaire
tags:
- Languages
videoId: AQ_q-hdtNS4
speakers:
- frederic_cabestre
talkType: Conférence
---
Aujourd'hui, pour être à la mode, il faut parler de programmation fonctionnelle. Et de suite on convoque les mots en vogue: « *Immutabilité* », « *Monade* » ou « *Catamorphisme* ». Au mieux le message est brouillé, mal reçu. Au pire la salle se vide !
Ce que je vous propose c'est de repartir des principes de base, avec des idées bien arrêtées et peut-être parfois provocatrices. Comprendre, comme le disait **John Hugues**, « *Why functionnal programming matters* ». Cerner les quelques idées directrices de la programmation fonctionnelle et ce qu'elles apportent concrètement au quotidien. Voir comment et pourquoi d'autres concepts en découlent nécessairement...
Il sera peut-être finalement question de « *Théorie des catégories* » ! Mais il sera surtout question, en vrac, d'histoire et de mise en œuvre des langages, de typage, de performance, d'artisanat du logiciel, de « *Design patterns* », d'abstraction et, soyons fou, de *réification*.
En somme, je vais vous parler de programmation fonctionnelle en essayant de ne pas être à la mode !

@ -0,0 +1,29 @@
---
id: 4211
title: 'Architecture Decision Records: Réconciliez vous avec votre documentation'
language: Français
complexity: Débutant
tags:
- Method & Tools
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4211-ArchitectureDecisionRecords-ArnaudBos.pdf?alt=media&token=20dac175-6460-4bd3-a490-544ceae883bb
videoId: EDYplU1PB5s
speakers:
- arnaud_bos
talkType: Quickie
---
Les développeurs aiment écrire de la documentation... ou pas !
Pourtant même les plus réfractaires doivent l'admettre, garder une trace des décisions techniques prises au cours d'un projet peut s'avérer indispensable pour la pérennité et maintenabilité de celui-ci.
Alors comment éviter l'obsolescence programmée de la documentation, tout en réduisant la pénibilité de la rédaction ?
Depuis près d'un an, dans "mon" équipe, nous utilisons un format simple, les Architecture Decision Records (ADRs), pour écrire des documents d'architecture sous la forme d'un journal immuable.
Cette technique simple gagne en popularité et a donné de bons résultats sur notre projet.
Durant cette présentation vous construirez en direct un ADR.
En partant d'un problème constaté sur un projet, vous élaborerez une réponse technique qui servira de base à une implémentation ultérieure.
Vous décrirez les raisons qui vous poussent à faire des compromis, tout en capturant le contexte dans lequel cette décision a été prise pour référence future.
Réconciliez vous avec votre documentation !

@ -0,0 +1,24 @@
---
id: 4225
title: Détectez et trackez les Zergs qui se cachent dans vos dépendances !
language: Français
complexity: Débutant
tags:
- Method & Tools
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4225-detectez-et-traquez-les-zergs-qui-se-cachent-dans-vos-dpendances.pdf?alt=media&token=b96358e5-0b6f-444c-9b0e-cbcf628700b4
videoId: aZeR6PypJ8k
speakers:
- julien_topcu
talkType: Quickie
---
[44% des applications contiennent des vulnérabilités critiques dans les librairies open-source qu'elles utilisent](https://www.veracode.com/products/software-composition-analysis) et cela bien que des bonnes pratiques comme OWASP Top 10 se soient généralisées.
Ne laissez plus ces aliens incuber bien au chaud dans le ventre de votre appli!
Grâce à ce talk, vous apprendrez comment sont répertoriées ces vilaines bestioles (NVD, CVE) et comment est évaluée leur dangerosité (CVSS).
Puis vous verrez comment créer votre première pipeline de Continuous Security dans Jenkins au moyen de [OWASP DependencyCheck](https://www.owasp.org/index.php/OWASP_Dependency_Check) qui détecte les vulnérabilités et trackez les grâce à [OWASP DependencyTrack](https://www.owasp.org/index.php/OWASP_Dependency_Track_Project) (logiciels open-source)
Faites le premier pas vers le DevSecOps !!!

@ -0,0 +1,17 @@
---
id: 4231
title: La tête dans les nuages avec un Raspberry Pi
language: Français
complexity: Débutant
tags:
- IOT
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4231-20181108-DevfestToulouse-Raspberry-Avions.pdf?alt=media&token=d675b039-61c1-4366-9532-b2c137b317eb
videoId: UcADSVfOg3k
speakers:
- guillaume_membre
talkType: Conférence
---
En hackant une clé USB de réception TNT, La Radio Logicielle (ou SDR) est à la portée de tous. Il est alors possible d'écouter les balises de positionnement des avions de lignes sur un rayon de plusieurs dizaines de km avec une simple antenne. Voulez vous connaitre le fonctionnement du projet comme [flightradar24](https://www.flightradar24.com) ? Nous verrons comment mettre en oeuvre un tel projet avec du matériel grand public et accessible comme un Raspberry Pi.

@ -0,0 +1,21 @@
---
id: 4282
title: 'Agile, Craftsmanship, DevOps and other monsters - how to fight with them.'
language: English
complexity: Débutant
tags:
- Method & Tools
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4282-monsters-RobertFirek.pdf?alt=media&token=1b5d4644-4636-4187-b919-76c0cb9b6f68
videoId: tWPlvgtJgF4
speakers:
- robert_firek
talkType: Conférence
---
Our industry has an amazing ability to build extremely good theoretical models, methodologies and approaches that actually drive us crazy. Theoretically, we can show how easy it is to introduce Waterfall, XP, Agile or DevOps (delete as appropriate) but the reality is more complicated. Sometimes, something does not work in our unique context and we end with so well known sentence "It doesn't work for us".
Many hours of discussions with colleagues about the state of our industry indicate that we have to come up with something new and glowing. Something that allowed us to avoid the mistakes we made so far.
In this presentation, we will look at all errors we made in the past and we will take a closer look at elements which could have been done better and which ideas can change to better our industry. By retrospecting our achievements, we will try to define what awaits us and why this time we will succeed;)

@ -0,0 +1,15 @@
---
id: 4305
title: 'Google Container Tools : développer efficacement dans un monde de conteneurs'
tags:
- Cloud
language: Français
complexity: Intermédiaire
videoId: '-t1cTnhoGTg'
speakers:
- david_gageot
talkType: Conférence
---
Kubernetes est devenu l'orchestrateur de choix pour déployer des applications. Mais qu'en est-il du quotidien des développeurs qui créent ces applications ? Plus on s'appuie sur la plateforme, plus il est compliqué de développer en dehors de la plateforme. Et développer à l'intérieur de conteneurs n'est pas réputé facile ni agréable. Google est à l'origine de plusieurs projets Open-Source qui se focalisent sur l'expérience des développeurs dans un monde de conteneurs. Kaniko permet de construire une image Docker à partir d'un Dockerfile, dans un cluster Kubernetes, de manière sécurisée. Skaffold facilite le déploiement continu d'applications pour Kubernetes. Les images Distroless offrent des images de base légères, sécurisées et de qualité. Bazel permet meme de construire des images Docker sans Docker. Venez découvrir comment ces outils se combinent pour offrir un environment de développement agréable et performant dans le monde des conteneurs.

@ -0,0 +1,35 @@
---
id: 4306
title: S'aider du Data-Oriented Design pour écrire des applications performantes
language: Français
complexity: Débutant
videoId: 3lzpK45cyBo
tags:
- Method & Tools
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4306-introductionaudataorienteddesign-AlessioColtellacci.pptx?alt=media&token=e80249cd-d945-4e23-8b29-2e4e58e8739e
speakers:
- alessio_coltellacci
talkType: Conférence
---
La performance est redevenue un sujet critique aujourd’hui avec le Cloud et les traitements de la données avec le Big data.
Au delà des choix d'algorithmes et de structures de données, un moyen d'écrire du code performant, c'est de s'assurer que le processeur soit utilisé le plus efficacement possible et d'éviter qu’il perde du temps à charger/déplacer des données en mémoire.
Le Data Oriented Design se place justement dans cette optique et fournit des méthodes pour écrire du code performant en prenant en compte les limitations du hardware.
Contenu de la présentation:
* Explication du concept du Dod.
* Comment fonctionnent les processeurs et montrer les grosses différences d’ordres de grandeurs des accès à la mémoire.
* Comment le DoD permet de régler ces problèmes, avec des exemples de structures de données adaptées.
* Comment le Dod a été mis en place sur le reverse proxy http de Clever Cloud: Sozu.
* Comment mettre en place une approche DoD sur un cas concret par la création d’un entity manager qu'on trouve dans un moteur de jeu.
* Réduire le temps d'exécution d'un programme JavaScript par 6 en s'aidant du Data-Oriented Design.

@ -0,0 +1,15 @@
---
id: 4307
title: "#RetourAuxSources : \U0001F36A Les cookies HTTP"
tags:
- Web
language: Français
complexity: Débutant
videoId: CcTbecZ67_o
speakers:
- hubert_sablonniere
talkType: Conférence
---
Les cookies HTTP sont partout ! Pas une journée sans qu’un site nous demande “d’accepter les cookies”. Rares sont les projets Web qui ne les utilisent pas et pourtant leur fonctionnement nous échappe trop souvent. On confond les règles auxquelles ils sont soumis au sein des navigateurs. On fait des amalgames avec les sessions côté serveur. Ces petits trous dans le gigantesque éventail de connaissances du développeur moderne ont parfois des impacts non négligeables sur la sécurité de nos applications et sur la préservation de notre vie privée en tant qu’utilisateur du Web. Au menu de cette session, je vous propose de (re)découvrir les cookies HTTP par l’exemple et la pratique. Nous reviendrons sur leurs origines et nous verrons en détails leur fonctionnement. Enfin, nous aborderons les aspects les plus récents dans le domaine (SameSite, cookie prefix...). Ce talk sera plus généralement l’occasion de parler de sécurité, de tracking et de vie privée.

@ -0,0 +1,23 @@
---
id: 4312
title: >-
Des APIs de Machine Learning sur étagère, à l'entrainement distribué dans le
cloud
language: Français
complexity: Débutant
tags:
- Big Data / ML / AI
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4312-MachineLearningAPIsv3-GuillaumeLaforge.pdf?alt=media&token=62acf4e0-378a-4577-ac3c-42dc8691bf80
videoId: gSewdZrom10
speakers:
- guillaume_laforge
talkType: Conférence
---
Vous pouvez booster vos applications grâce aux APIs de Machine Learning, afin d'analyser ce que contiennent les images uploadées par vos utilisateurs, de comprendre la structure du texte, ou de reconnaître la voix. Pour le développeur, un simple appel REST suffit, pour interroger les APIs Google Cloud Vision, Speech, Translate ou Natural Language.
A l'opposé, le framework open source Tensorflow permets au data scientist de créer ses propres modèles de Machine Learning, de les entrainer localement ou dans le Cloud, et de lancer ses prédictions en ligne ou même embarquées dans des applis mobiles.
Entre les deux, il est aussi possible de personnaliser les modèles sur étagère, pour reconnaître vos propres images, classifier vos textes, grâce à Google Cloud AutoML.

@ -0,0 +1,15 @@
---
id: 4313
title: 'Tests BDD: faites rédiger vos tests End-to-End par les fonctionnels'
tags:
- Web
language: Français
complexity: Intermédiaire
videoId: 7u3luu6BmDg
speakers:
- laurent_wroblewski
talkType: Conférence
---
Tout le monde (dans un monde idéal) fait des tests unitaires. Rares par contre sont ceux qui s'aventurent à mettre en place des tests end-to-end. Longs à développer, laborieux à maintenir, ils sont souvent les premiers à passer à la trappe. Et si ces tests devenaient faciles à développer et à lancer? Mieux encore, si ce n'était plus aux développeurs (déjà chargés comme des mules, c'est bien connu) de les rédiger, mais aux fonctionnels? Des tests à base de phrases compréhensibles par tous, faciles à lancer et à maintenir? Ce sera le but de ce talk: à partir d'une application web Angular, nous verrons comment configurer et lancer vos tests BDD avec TestCafe, Serenity et Cucumber.

@ -0,0 +1,20 @@
---
id: 4322
title: 'Lighthouse : mesurer et améliorer votre performance web'
language: Français
complexity: Intermédiaire
tags:
- Web
speakers:
- sara_harkousse
talkType: Conférence
---
L'idée de ce talk est de présenter une série de bonnes pratiques / tips and tricks pour améliorer la performance d'un site web grâce à l'outil open source lighthouse sur plusieurs niveaux:
- performance
- progressive web app
- accessibilité
- autres bonnes pratiques.
La présentation démarre par la génération d'un blog statique , le lancement d'un audit et un score de performance médiocre. Puis une série d'améliorations en live coding. Le talk se termine par un résumé des techniques utilisées et bien sûr un excellent score dans lighthouse.

@ -0,0 +1,15 @@
---
id: 4331
title: Et si on parlait accessibilité du web ?
language: Français
complexity: Débutant
tags:
- Web
videoId: 1oKEcDdYANY
speakers:
- olivier_leplus
talkType: Conférence
---
**Aria**, **a11Y**, que veulent dire ces termes exotiques ? Nous verrons à travers des exemples les bonnes pratiques pour que votre site soit accessible. Puis, nous passerons en revue les sites internet des géants du web afin de voir si ce sont de bons élèves... ou pas.

@ -0,0 +1,17 @@
---
id: 4334
title: 'Tensorflow, is there really no spoon ?'
language: English
complexity: Intermédiaire
tags:
- Big Data / ML / AI
videoId: 4QIjIoHP0x4
speakers:
- tiffany_souterre
talkType: Conférence
---
With the advance of Deep learning, Image recognition is everywhere! But like all technologies, it has its flaws. It is indeed possible to fool neural network models used for critical applications such as self-driving cars, drones, security cameras... Together, we will see how to generate adversarial images and fool a neural network into seeing something in an image that is not there.
No Tensorflow, there is no spoon!

@ -0,0 +1,17 @@
---
id: 4338
title: Comment perdre sa surchage featurale ?
tags:
- Method & Tools
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4338-Commentperdresasurchargefeaturale-EstelleLandry.pdf?alt=media&token=ca4f3bdf-95da-4e22-81e5-abc17178b390
language: Français
complexity: Débutant
videoId: YM3pnJDhATE
speakers:
- estelle_landry
talkType: Conférence
---
Le cycle de vie d'une application est un chemin nébuleux et plein de dangers. La complexité ne fait que croitre durant les mois et les années d'utilisation. L'un des plus gros challenges d'un développeur est de pouvoir la contrôler tout en ajoutant de nouvelles fonctionnalités (features). Des solutions existent : le ré-écriture de code ou encore la maitrise de la dette technique. En effet, ces deux actions permettent de lever "la complexité accidentelle". Mais que faisons nous de la "complexité essentielle" ? La complexité qui n'est pas liée au code. La seule solution : Supprimer des fonctionnalités ! Ce talk vous expliquera comment perdre la surcharge featurale de vos applications en comprenant la différence entre la complexité essentielle et la complexité accidentelle, mais aussi en vous donnant des clés pour mener à bien ce changement de vie dans vos équipes projet.

@ -0,0 +1,17 @@
---
id: 4340
title: Angular Elements
tags:
- Web
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4340-angular-elements-v7-RaulJimenez.zip?alt=media&token=be14bae6-4ed2-471e-bb99-e5767ee1b02c
language: English
complexity: Débutant
videoId: ozVffQPTQXk
speakers:
- jimenez_raul
talkType: Conférence
---
In this session we will see how to create our first Web Component with Angular Elements and use it in a plain JS app.

@ -0,0 +1,29 @@
---
id: 4349
title: >-
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
language: Français
complexity: Débutant
tags:
- Method & Tools
videoId: 2_hdqZ3TuQo
speakers:
- philippe_charriere
talkType: Conférence
---
À (presque) 50 ans, je crois que j'y arrive enfin. ... à m'organiser.
J'ai fait pas mal de choses (le plus souvent en SSII ... *lire ESN*) et notamment chef de projet, directeur de projets, responsable de centre de services, ... Le tout accompagné:
- d'oublis (oh p... 🙀 j'ai oublié de répondre au client, c'était urgent ... il y a une semaine),
- d'angoisses (et crises d'angoisse) (rahhhh 😥 je vais jamais arriver à tout faire),
- d'anéantissements (vous me faites tous ... J'arrête, bande de gros c...)
- de (grands) moments de solitude (ah? On t'a pas dit, la réunion est en 🇬🇧, c'est toi qui mène ... 😡 euh, mais l'🇬🇧 je l'écris ... et encore ...)
- etc ...
Aujourd'hui, j'ai 2 métiers (un commercial et un technique), dont un à 95% en 🇬🇧, et j'arrive à faire les 2 (et plutôt correctement il me semble), sans crise d'angoisse, en ayant encore du temps pour mes sides projects, dormir, m'occuper de ma famille (pas assez, mes geekeries peuvent prendre le dessus), aller à la pêche, regarder des séries, ...
J'ai donc tenté de me trouver des "méthodes" de travail à la fois pour mes tâches en solo mais aussi pour les moments où je travaille en équipe, pour cela j'ai utilisé les outils que j'avais sous la main (mais d'une certaine manière), dans mon cas: VSCode, DropBox, le markdown (asciidoc c'est bien aussi), Slack, GitLab (avec GitBucket, GitHub ou BitBucket ça fonctionne aussi), une façon limitée et particulière d'utiliser GMail, 1 écran externe, ...
Rien de magique, mais ça fonctionne pour moi

@ -0,0 +1,27 @@
---
id: 4420
title: >-
Découvrir par l’exemple: Microservices et Event Sourcing avec Kafka et
Kubernetes
language: Français
complexity: Débutant
tags:
- Big Data / ML / AI
videoId: RXaGjS5C-lE
speakers:
- tugdual_grall
talkType: Conférence
---
Lorsque vous développez des applications vous avez besoin de vous adapter rapidements aux changements (métiers, comme technologiques). Pour cela les développeurs et les “ops” doivent travailler de concert, pour déployer toujours plus rapidement de nouveaux services tout en garantissant la haute disponibilité et la montée en charge des applications.
Les microservices et l’event-sourcing offrent une grande flexibilité aux développeurs; et la containerization par la biais de Kubernetes permet de déployer ces services en toute tranquillité.
Cette présentation, en s’appuyant sur des cas d’usage et des démonstration, vous permettra de découvrir:
* Les micro-services l'’event sourcing avec Apache Kafka
* Les containers avec Docker
* Le déploiement et management des services avec Kubernetes
Si vous n’utilisez pas encore ces technologies, cette présentation vous donnera une bonne idées des avantages qu’elles apportent aux développeurs, administrateurs systèmes, et donc aux utilisateurs; et je suis certain que vous les adopterez rapidement pour vos prochains développements!

@ -0,0 +1,25 @@
---
id: 4432
title: Testcontainers pour de vrais tests d'intégration d'Elasticsearch
language: Français
complexity: Intermédiaire
tags:
- Method & Tools
presentation: 'https://github.com/dadoonet/elasticsearch-integration-tests'
videoId: KgcV15lCDk4
speakers:
- david_pilato
talkType: Quickie
---
Les tests d'intégration peuvent devenir un cauchemar lorsqu'ils sont lancés depuis la même JVM que votre code:
* Conflit de JARs (JAR Hell)
* Security Manager
* Effets de bord
De plus, tester avec un produit qui est lancé de façon différente de la façon dont il est lancé en production, ne garantira jamais que les tests d'intégration sont sincères.
Aussi, après avoir découvert le projet [TestContainers](https://www.testcontainers.org/) qui lance des conteneurs Docker depuis, j'ai décidé d'écrire une implémentation pour Elasticsearch: [testcontainers-java-module-elasticsearch](https://github.com/dadoonet/testcontainers-java-module-elasticsearch).
Je vous propose de découvrir tout cela pendant ce quickie.

@ -0,0 +1,20 @@
---
id: 4447
title: 'Systemd, de /dev/null à root'
language: Français
complexity: Débutant
tags:
- Cloud
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4447-systemd.pdf?alt=media&token=7744eee3-d691-4120-a71a-14a28839cff7
videoId: 4AqbpZrBaOE
speakers:
- francois_teychene
talkType: Conférence
---
La démocratisation de la culture Devops et du cloud public amènent de plus en plus les dévelopeurs à travailler sur la mise en production de leurs applications.
Si vous n'êtes pas équipé d'un orchestrateur de conteneurs, il y a fort à parier que vous soyez amené à intéragir avec systemd voir d'écrire des services pour vos applications. N'ayez pas peur ! non seulement c'est accessible mais cela vous offre de nombreuses possibilités .
Découvrons ensemble systemd et sa galaxie, ce qu'il peut vous apporter pour l'installation et le run de vos application mais également comment il peut vous aider tout les jours dans votre vie de développeur.

@ -0,0 +1,17 @@
---
id: 4457
title: Template de déploiements Kubernetes avec Kontemplate
language: Français
complexity: Intermédiaire
tags:
- Cloud
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4457-Templatedede%CC%81ploiementsKubernetesaveckontemplate-MathieuPassenaud.pptx?alt=media&token=7262e90f-74d9-4618-b63c-ef8c3a574985
videoId: KF3gvGnpjIg
speakers:
- mathieu_passenaud
talkType: Quickie
---
Kontemplate est un projet qui vise à faire des templates de déploiement pour Kubernetes. Petit retour d'expérience de l'utilisation de kontemplate dans le cadre de la vie d'une plateforme depuis l'environnement de développement jusqu'à la production.

@ -0,0 +1,21 @@
---
id: 4473
title: 'Burger Quiz s''invite au DevFest avec un Sel ou Poivre "Code, Data ou les deux"'
language: Français
complexity: Débutant
tags:
- WTF
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4473-CodeDataoules2-OlivierFlebus.pdf?alt=media&token=7a222481-e789-4f8b-aee0-4e01e0cbaabb
videoId: 9kUmvV947X8
speakers:
- olivier_flebus
talkType: Quickie
---
Etes-vous incollable plutôt sur le "Code" (Software Engineer) ou sur la "Data" (Data Engineer, Data Scientist) ?
Retrouvons-nous pour un moment fun autour de questions et situations de notre quotidien pour lesquelles il faudra choisir "Code, Data ou les deux". Avec des images, du rythme, un soupçon d'injustice, des surprises et une Jeep Renegade à la fin.
La salle est également ouverte aux personnes sérieuses qui y trouveront j'espère une stimulation pour réfléchir sur le sujet de fond d'évolution du métier de développeur avec la montée des approches centrées sur les données.

@ -0,0 +1,29 @@
---
id: 4507
title: Introduction à Arrow - Typeclass is the new interface
language: Français
complexity: Intermédiaire
tags:
- Languages
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4507-TalkTypeclasses-AlexandreDelattre.pdf?alt=media&token=d773b637-537b-4e08-9cf1-c1a1441a6a33
videoId: uiLimq64zJI
speakers:
- alexandre_delattre
- guillaume_andrieu
talkType: Conférence
---
Introduction à Arrow - `Typeclass` is the new `interface`
===
La programmation fonctionnelle, c'est à la mode ! Et pour de bonnes raisons: l'industrie impose des architectures de plus en plus distribuées. Code facilement composable, immutabilité, contrôle des effets de bord: l'application de ces concepts rend le code plus sûr et efficace.
*"Mais qu'est-ce que ça m'apporte vraiment ?"*, demande le programmeur pragmatique. En plus d'offrir des structures de données et opérateurs vraiment utiles, la notion de `typeclass` nous permet de rajouter des comportements/interfaces sur n'importe quel type de données.
Pour illustrer cette notion, nous nous appuierons sur la librairie `Arrow` en `Kotlin`. `Kotlin` est un langage de plus en plus populaire qui mixe plusieurs paradigmes. À défaut d'être un langage fonctionnel "pur", il dispose de nombreuses caractéristiques "fonctionnelles", et permet d'émuler des `typeclasses`.
Cette présentation, accessible sans connaissance de programmation fonctionnelle, permettra de se familiariser avec `Arrow` et les `typeclasses`.
*(😸 Aucune monade ne sera maltraitée durant ce talk. 😸)*

@ -0,0 +1,21 @@
---
id: 4509
title: Comprendre le théorème de CAP avec Apache Kafka
language: Français
complexity: Intermédiaire
tags:
- Cloud
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4509-UnderstandingtheCAPtheoremwithApacheKafka-Se%CC%81bastienGuilloux.pdf?alt=media&token=e26a3b33-ec28-409e-9b5f-e02df89c484b
videoId: yLp0crdThzQ
speakers:
- sebastien_guilloux
talkType: Conférence
---
Durant cette présentation, nous nous pencherons sur le théorème de CAP (choix entre consistence, disponibilité et partition pour tout système distribué). Quand s'applique-t'il? Quels sont les choix qu'il propose?
Nous prendrons pour exemple Apache Kafka, afin de comprendre comment ce théorème s'applique en pratique. Nous étudierons les scénarios catastrophe potentiels en cas de crash d'un ou plusieurs noeuds. Quel est le niveau de garantie de délivrance d'un message? Que se passe-t'il quand le leader du cluster tombe? Comment est assurée la réplication des données? Quand et comment est-il possible d'ajuster le curseur entre consistence et disponibilité?
Il n'est pas nécessaire de connaitre Kafka pour pouvoir suivre cette présentation.

@ -0,0 +1,20 @@
---
id: 4515
title: Remake de jeux rétro avec Vue.js
language: Français
complexity: Débutant
tags:
- Web
videoId: TDgln192b-Y
speakers:
- nicolas_decoster
- juliane_blier
talkType: Conférence
---
Quoi de mieux que de recoder son jeu préféré pour apprendre une nouvelle techno ? Nous allons nous replonger dans notre enfance pour découvrir les concepts de Vue.js appliqués à Pong, Pac-Man, Tetris ou autre Pokemon.
Un jeu n’est rien d’autre qu’un joueur interagissant avec un univers représenté à l’écran. Et Vue est un framework pensé pour isoler interactions, informations (qui décrivent l’univers du jeu) et la représentation visuelle basée sur ces informations.
Nous verrons ensemble pourquoi Vue est un outil adapté au développement de jeu et qu’inversement, le développement d’un jeu offre un bon angle pour découvrir les concepts clés de Vue.

@ -0,0 +1,19 @@
---
id: 4528
title: Exploring reactive programming in Java
language: English
complexity: Confirmé
tags:
- Languages
presentation: >-
https://firebasestorage.googleapis.com/v0/b/devfesttoulouse-2018.appspot.com/o/presentation%2F4528-reactivejava-MiroCupak.zip?alt=media&token=09822fe0-47e7-401c-b5a9-165778bf0dc9
videoId: LxBn42ROcwg
speakers:
- miro_miro_cupak
talkType: Conférence
---
When Java 8 was first introduced, it revolutionized the way Java applications were written by providing the core constructs for asynchronous programming and handling data streams. With Java 9, 10, and 11, these capabilities were extended to the level that allows us to write truly modern, reactive applications with the JDK.
In this live-coding session, we explore JDK 9-11 features enabling all the aspects of reactive programming - updates to the Stream and CompletableFuture APIs, Reactive Streams publish-subscribe framework, HTTP/2 client, and more.

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save