Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nouvelle fiche : Bonnes pratiques production-ready Shiny Apps #411

Open
FlorianGivernaud opened this issue Jan 19, 2022 · 2 comments
Open

Comments

@FlorianGivernaud
Copy link

Bonjour,

Tout d'abord, le sujet Shiny a déjà été évoqué par le passé (#75 ) mais sans suite. J'ai trouvé dans ce sujet plusieurs remarques intéressantes qui m'amènent à ré ouvrir une issue sur le sujet, en tenant compte de ces remarques et des besoins que j'ai remarqué des utilisateurs du package à l'Insee (à mon échelle, en tous cas).

La première chose, c'est qu'il semble en effet difficile de concevoir une fiche générale sur le développement en Shiny et on sortirai là peut-être du cadre d'utilitR ;

@CTassart Jul 1, 2021
Il me semble difficile de réaliser une fiche, claire et concise, genre "concevoir une application web avec Rshiny" en pas à pas : les notions à aborder sont trop nombreuses.
Toutefois, il y a une formation nationale en cours de finalisation, à laquelle j'ai contribué avec @ggenin (pilotée par JLL). Elle aborde les différentes notions de base mais elle ne suffira probablement pas pour développer une appli dans les règles de l'art, le respect des bonnes pratiques...
Le cas échéant, cette fiche pourrait s'adresser à des agents déjà initiés (on revient à la cible du produit utilitR)

La seconde, c'est qu'en revanche, une fiche en ce qui concerne les bonnes pratiques, le développement orienté production-ready avec Golem, et du déploiement, ça pourrait faire davantage sens et surtout répondre à une vraie nécessité en venant compléter la formation actuelle en Shiny dispensée à l'Insee qui se termine sur une brève introduction à Golem ;

@RLesur
Je pense que la seule solution, serait d'appliquer les bonnes pratiques présentées dans le livre Engineering Production-Grade Shiny Apps qui est en cours de rédaction ici https://engineering-shiny.org/
Autrement dit, d'utiliser le package golem.

@CTassart
Le cas échéant, cette fiche pourrait s'adresser à des agents déjà initiés (on revient à la cible du produit utilitR) et : s'articuler autour du package golem, aborder le sujet de la mise à disposition, du déploiement d'une application

Le livre que cite Romain est aujourd'hui abouti, et je pense que Golem est suffisamment mature pour que l'on puisse sereinement le porter en méthode de référence comme framework de développement de shiny apps au sein de l'Insee.

▶️ Je me propose de rédiger une fiche sur le développement Shiny avec Golem (je pense qu'une base de connaissance pour rédiger la fiche peut être le livre https://engineering-shiny.org/ ) et son déploiement ensuite à l'Insee.
J'invite bien sûr, dans l'esprit du projet, n'importe quel contributeur à se joindre à la tâche.

@RLesur
Copy link
Member

RLesur commented Jan 19, 2022

Merci @FlorianGivernaud pour la proposition ! Je n'ai qu'une micro remarque sur

et son déploiement ensuite à l'Insee

Etant donné qu'utilitR vise à être lu par un public le plus large possible (SSM et au-delà), il faut faire attention à ne pas rentrer dans le trop spécifique.

Ceci étant dit, le déploiement d'applications Shiny à l'Insee s'oriente vers un déploiement sur Kubernetes en utilisant des pratiques modernes et standards (conteneurisation et chart helm). Aurélien D'Isanto et @avouacr vont bosser dessus dans les prochaines semaines afin de produire un template de projet utilisable sur le cluster Kubernetes interne à l'Insee mais aussi sur le SSPCloud.

@CTassart
Copy link
Contributor

Très bonne proposition de @FlorianGivernaud

La formation Insee permet de présenter les notions élémentaires de développement d'appli avec Shiny et shinydashboard, et il me semble effectivement nécessaire d'aller plus loin et parler "bonnes pratiques" : Golem y contribue.

Bien que utilitR vise à être lu par un public plus large que celui des seuls agents Insee, on s'adresse également (majoritairement ?) au public Insee, alors il me semble également intéressant/important d'aborder les notions de "déploiement" notamment interne.
D'ailleurs, j'en profite pour relayer une information de @RLesur (sur le salon Langage R) : meetup " De la Création au Déploiement d'Applications shiny avec Golem " 😉

Effectivement, on va probablement commencer à aborder des aspects un peu plus techniques (conteneurisation...) qui ouvre peut-être la voie à un utilitR 2 à destination d'un public encore plus large, plus "qualifié"...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants