GTnotebook
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
      • Invitee
    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Engagement control
    • Transfer ownership
    • Delete this note
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Sharing URL Help
Menu
Options
Versions and GitHub Sync Engagement control Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Write
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
Invitee
Publish Note

Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

Your note will be visible on your profile and discoverable by anyone.
Your note is now live.
This note is visible on your profile and discoverable online.
Everyone on the web can find and read all notes of this public team.
See published notes
Unpublish note
Please check the box to agree to the Community Guidelines.
View profile
Engagement control
Commenting
Permission
Disabled Forbidden Owners Signed-in users Everyone
Enable
Permission
  • Forbidden
  • Owners
  • Signed-in users
  • Everyone
Suggest edit
Permission
Disabled Forbidden Owners Signed-in users Everyone
Enable
Permission
  • Forbidden
  • Owners
  • Signed-in users
Emoji Reply
Enable
Import from Dropbox Google Drive Gist Clipboard
   owned this note    owned this note      
Published Linked with GitHub
Subscribed
  • Any changes
    Be notified of any changes
  • Mention me
    Be notified of mention me
  • Unsubscribe
Subscribe
# Webinaire 1 GT Notebook ###### tags: `gt notebook`,`webinaire` ## Disciplines et mots-clefs disciplines : toutes mots-clefs : - notebook - cartographie - publication - intéractivité - reproductibilité - guix ![](https://i.imgur.com/9H8EYaz.png =200x) :::info - Présent.e.s : - [x] Sébastien Rey-Coyrehourcq - [x] Raphaëlle Krummeich - [x] Nicolas Roelandt - [x] Konrad Hinsen - [x] Thierry Feuillet - [x] Paulette Lieby - [x] Romain Mejean - [x] Michael Nauge - [x] Nicolas Sauret - [x] Hugues pecout - [x] Emilien Schultz - [x] [Ghislain DURIF](https://gdurif.perso.math.cnrs.fr/) - [x] Benjamin Cuer - [x] Matthieu Guionnet - [x] Elisabeth Guerard - [x] Jey Puget Gil - [x] Nicolas P. Rougier - Excusé.e.s : - Lien site web : https://gt-notebook.gitpages.huma-num.fr/site_quarto/ - Issue & ODJ : https://gitlab.huma-num.fr/gt-notebook/webinaires/-/issues - Lien visio BBB : https://webconf.univ-rouen.fr/greenlight/rey-px2-ewg-7av - Lien chat public : https://rocket.esup-portail.org/channel/GT-Notebook - Lien mailling-list : https://groupes.renater.fr/sympa/info/notebooks-inter-reseaux - Lien support présentation et notebooks de démonstration: https://gitlab.huma-num.fr/gt-notebook/webinaires/-/tree/main/20230330_presentation_quarto ::: ## Ordre du Jour - Accueil (5 minutes) - Présentation du GT (5 minutes / Raphaëlle Krummeich & Sébastien Rey-Coyrehourcq) - Introduction à Quarto (20-30 minutes / Nicolas Roelandt) - Retour d'expérience Packaging de Quarto dans Guix (5 minutes / Sébastien Rey-Coyrehourcq) - Revue d'article (10 minutes / Raphaëlle Krummeich) - Discussions avec le public et les intervenants (10-15 minutes) - Intro prochaine date Webinaire 2 ### Présentation du GT - Genèse : Construire en interdisciplinarité un atelier reproductible pour la sensibilisation aux Notebooks, un objet complexe dans le cycle de vie de la donnée. - Manifeste : :::info Nous sommes vigileant·es à ce que ce lieu soit et reste inclusif de toutes les communautés, de toutes les pratiques, de toutes les initiatives, dès lors qu'elles respectent quelques règles communes. Celles-ci ne vous surprendront pas si venez de l'ESR. Nous réflechissons à l'écriture d'un manifeste du gt. ::: - Objectifs : - Interdisciplinarité : parce que cela se construit dans le dialogue et dans la durée :) - Axes de réflexions et de veille (WIP) autour du Notebook - Epistémologie de l'objet et des pratiques autour de l'objet - Ecosophie, un engagement réflexif et critique vis à vis des pratiques du numérique - Littératie(s) Numérique(s), pour (re)-penser l'écriture (enjeux, pratiques, etc.) au prisme de la machine et de son contexte - Reproductibilité, comme un axe transversal de réflexion et horizon - Mise en oeuvre au sein d'Actions, conçues et portées par les volontés des membres du GT : - liste de diffusion - sous-groupe(s) par axe d'intérêt - webinaires d'une heure mensuel, CR et enregistrement - opérationalisation - veille sur les outils, les plateformes, - élaboration d'une base de connaissance - réalisation de supports et d'ateliers de sensibilisation reproductibles - (WIP) Une journée annuelle de discussions/retranscriptions des GT ? **Welcome Aboard !** ### Quarto #### Système open source de publication scientifique et technique basé sur Pandoc, par Nicolas Roelandt [accès au dépôt](https://gitlab.huma-num.fr/gt-notebook/webinaires/-/tree/main/20230330_presentation_quarto) - quarto.org - 2020 - v1.0 en juillet 2022 - développé par Posit (ex-Rstudio) Alternative aux Jupyter notebooks ? Langages: python, R, Julia, Observable Multi-plateforme (Mac, W, Linux), multi-format (rapports, présentations, livres, sites web) Intégration : outil CLI (initialement), Rstudio, VsCode, Jupyter Notebook Avantages: - fichier texte en markdown (contrairement au Jupyter notebook qui est basé sur json) - blocs de code intégrés au texte (code et narration sont mêlés au sens *literate programming*) - basé sur pandoc (appel de scripts LUA, templates propres, etc.) - hérite de Rmarkdown (+améliorations) Quarto est un seul utilitaire (contrairement aux packages R) Un package R pour éviter l'utilisation via l'interface en ligne de commande : https://cran.r-project.org/package=quarto #### Retour d'expérience - _packager_ Quarto avec Guix, Sébastien Rey-Coreyhourcq Raphaelle K.: Question du milieu pour gérer la complexité **Guix** Je n'arriverai pas à résumer tout l'intérêt de Guix pour la reproductibilité en 2 minutes, mais si il y a bien une chose à retenir c'est que Guix a été pensé pour atteindre cet objectif en particulier ( plus de détail ici [Vallet2022] et ici [Courtes]) Le projet a fêté ses 10 ans cette année, et la base utilisateur tend à se renforcer. Pour plus d'informations et une sensibilisation à ce système, vous pouvez voir [les cafés guix](https://hpc.guix.info/events/2022/caf%C3%A9-guix/) qui ont lieu régulièrement et la dernière présentation au [FOSDEM 2023](https://fosdem.org/2023/schedule/event/openresearch_guix/) GNU Guix est le terme raccourci qui désigne à la fois un gestionnaire de paquet et un système d'exploitation / OS à part entière. Autrement dit vous pouvez utiliser Gnu Guix directement pour installer des logiciels dans Ubuntu, ou alors vous pouvez Gnu Guix System comme votre OS principal. Je ne vais pas citer tout les avantages et je préfère me concentrer sur les trois qui peuvent parler au plus grand monde : - La possibilité (et pas l'obligation, guix fournit aussi des binaires) de compiler le code source des programmes ainsi que toutes les dépendances associées. Par *compiler* on entend ici le fait de transformer le code source en programme exécutable. - La possibilité d'isoler et/ou de faire cohabiter différentes versions de programmes en même temps sur le même système. Tout est identifié par un HASH, une signature cryptographique / référence unique. - La possibilité de reproduire au bit près le programme avec toutes ces dépendances avec un autre utilisateur Guix, et cela quelque soit son écosystème et son Linux/OS. Si cela marche chez moi, cela marche chez vous. Si quelqu'un vous envoie un projet fait avec R 3.2 et Quarto 0.3 il y a 6 mois, et que vous avez R 4.0 et Quarto 1.5 sur votre machine, avec Guix vous pourrez sans soucis l'executer (avec [guix time-machine](https://guix.gnu.org/manual/fr/html_node/Invoquer-guix-time_002dmachine.html)). Toutes les personnes qui ont déjà fait un peu de développement, peu importe finalement le langage, savent à quel point il est complexe de maintenir et de packager un script fonctionnel dans le temps. Des solutions existent, mais elles ne répondent que partiellement à la problématique, comme les fichiers Lockfiles, les containers Docker, etc. Guix répond à une grande partie de ces difficultés. **Packager Quarto pour Guix, pourquoi ?** Quarto comme RMarkdown avant lui, permet de générer des analyses reproductibles à partir de blocs de codes executables. Seulement on sait que cette reproductibilité reste par bien des aspects une illusion [Wang2020]. Ne serait ce que parceque vous ne maitrisez pas l'environnement qui executera votre Notebook. Il suffit parfois tout simplement qu'un paquet x ou y ne soit plus disponible avec la dernière version de R que vous avez installé lors de la mise à jour de votre système par exemple... ![](https://i.imgur.com/3CCjO0E.png) _Figure 1 : Chaque niveau ignore plus ou moins ce qui se passe dans le niveau du dessous. Src : Konrad Hinsen_ Packager Quarto cela veut dire rendre reproductible une grande partie des couches invisibles qui supporte son execution. Bref, c'est ce qu'on apelle plus courrament les dépendances. Si pour RMarkdown les dépendances sont relativement simple car le package R nécessite "seulement" l'existence de Pandoc sur le système. Et encore, si vous utilisez RStudio, Pandoc est fourni comme un binaire avec le logiciel. Ce n'est plus du tout le cas de Quarto, qui n'est plus un package mais un programme à part entière [Quarto-Cli](https://github.com/quarto-dev/quarto-cli) dont il faut être en mesure de comprendre et de compiler l'ensemble des dépendances. On observe bien ce qu'à mis en image Konrad, l'utilisateur final ne voit que le sommet de l'Iceberg, c'est à dire le produit final. Quarto n'est -pour le moment- pas pensé pour être -facilement- compilé depuis zéro avec toutes ses dépendances. Ce qui en fait un logiciel difficile à mettre en package, pour plusieurs raisons, que j'ai appris de façon très empirique. Je ne rentre pas dans les détails pour ne garder ici que les principaux écueils : - Quarto est écrit en Javascript/Typescript et dépend de Deno, écrit dans le langage Rust, pour son execution - Deno dépend d'une partie (JS) du navigateur _Chromium V8_, or les navigateurs et leurs API sont des objets complexes à compiler et à appréhender (600000 lignes de C++). Cela prend ~ 2 heures minimum sur un ordinateur portable (i7 4 coeurs 32 go Ram) pour une compilation, ce qui a rendu l'opération pour packager cette V8 très pénible. - Rust dispose de son propre gestionnaire de package (comme de nombreux langages), et Deno fait appel à des centaines de dépendances dont il faut aussi s'assurer qu'elles peuvent être compilé sous Guix ... - Les paquets dans Rust change très régulièrement de version, et suit une logique de Semver (https://semver.org/ ) difficile à apprehender dans la façon dont la compilation Rust est géré par Guix. - Pour "simplifier" son usage en _mode développeur_, Quarto télécharge des logiciels/dépendances directement sur internet, ce qui n'est pas une bonne pratique pour la reproductibilité (lien cassé ?). Autrement dit, vous installez un logiciel qui installe lui-même d'autres logiciels en les téléchargeant sans le déclarer au niveau de l'OS ... On voit à quel point cela pose problème dans le cas de Guix ou tout est suivi et déclaratif. - Quarto est à sa **1253ème release**, soit en moyenne plusieurs _release_ par semaine, avec des versions dans les dépendances qui changent très souvent. **Perspectives** Que faut il penser de tout çà ? - En tant que débutant sur le packaging dans Guix, j'ai très clairement pris sans le savoir la décision de monter la face nord du mont blanc un jour de blizzard. - J'ai packagé Deno et 95% des dépendances de Quarto, je suis très proche de réussir, mais la version packagé aura plusieurs mois de retard sur la version actuelle :sweat_smile: . Et oui il faudra se repencher sur toute la pile logicielle pour les futures versions, ce qui pose clairement question quand on sait le jeune âge de Quarto. - Sur le plan purement logiciel, Quarto est très très loin encore d'afficher une stabilité qui fait de lui un bon candidat à la reproductibilité. Si certaines chosent ne bougeront probablement plus (la dépendance à Deno par exemple) les versions opérant dans la pile logicielle bouge encore beaucoup. **Reférences** _[Courtes2021] Ludovic Courtès. Reproduire les environnements logiciels : un maillon incontournable de la recherche reproductible. 1024 : Bulletin de la Société Informatique de France, 2021, 18, pp.15-22. ⟨10.48556/SIF.1024.18.15⟩. ⟨hal-03450690⟩_ _[Vallet2022] Vallet, N., Michonneau, D. & Tournier, S. Toward practical transparent verifiable and long-term reproducible research using Guix. Sci Data 9, 597 (2022)._ https://doi.org/10.1038/s41597-022-01720-9 _[Wang2020] J. Wang, T. KUO, L. Li and A. Zeller, "Assessing and Restoring Reproducibility of Jupyter Notebooks," in 2020 35th IEEE/ACM International Conference on Automated Software Engineering (ASE), Melbourne, 2020 pp. 138-149._ ### Revue d'article Georges Canguilhem, La connaissance de la vie, 1952 ![](https://i.imgur.com/FQZ0HE0.png) #### éléments pour la revue de lecture d'Andrew Feenberg, "Concrétiser Simondon et le constructivisme", Raphaëlle Krummeich - Andrew Feenberg, philosophe américain de la technique - ancien étudiant d'Herbert Marcuse (_l'homme unidimensionnel_, 1964) - Canadian Research Chair in Philosophy of Technology à la Simon Fraser University de Vancouver - directeur de programme au Collège International de Philosophie à Paris - Contexte de l'article / de la revue - la décade de Cerisy, 2013, Simondon ou l'invention du futur - débat entre déterminisme et constructivisme de la technique - discussion sur un positionnement critique du gt notebook - Réconcilier technique & social - la théorie de la concrétisation chez Simondon peut être imaginée comme une analyse fondant le développement de la complexité des techniques telle des _condensations élégantes visant à réaliser des compatibilités entre des fonctionnalités internes ou externes_ de la machine (p. 318). - cette concrétisation (la réalisation _élégante_ de plusieurs fonctions par une machine) a des _causes intrinsèques_ - la technicité à un moment donné de l'histoire des techniques ou des inventions, et _extrinsèques_ - leur utilité sociale. - le cas de l'appareil photographique : - l'invention de l'appareil photo reflex pour déclencher la prise de vue est utilitaire (extrinsèque), - le polaroïd _concrétise_ la prise de vue par la fonctionnalité d'impression de la photographie (intrinsèque), _la critique porte sur la tentative de limiter l'invention à un seul but_, utilitaire ou associé à une logique technique (technicité). - Trouver le lien entre la technique et le social - le constructivisme focalise sur la perception contingente de la pertinence sociale de la technique - une _épokhé*_ de la technicité, qui pourtant en définit le contenu (_la technique en soi est évincée_) - la théorie des réseaux d'actants (le _parlement des choses_ de Latour) évacue la fonction de médiation de la technique avec la nature et l'humain, alors que les transformations sociales de la modernité (quantification, formalisation) relèvent de la technicité - combinant le concept constructiviste d'acteur et celui de concrétisation, l'auteur formule que la concrétisation d'un objet ou d'une machine résulte en un faisceau de variantes potentielles, en relation avec la variété des demandes sociales: elles rassemblent des groupes sociaux autour des artefacts réalisés ou réels. - Lier Simondon et l'école de Francfort : une théorie de l'instrumentalisation - _les théories de la modernité abordent rarement le plan technicisé de la société qui est aussi un plan socialisé de la technique_ - une instrumentalisation primaire serait _la décontextualisation des aspects utiles et la réduction aux fonctions techniques_ toujours _accompagnée d'une instrumentalisation secondaire_, les besoins de la société, dont _la dialectique définit une rationalité technologique_. - l'_environnement humain et naturel_ ne sont pas externes à la technique, _ces connexions doivent s'internaliser dans la reproduction de la technique sous l'égide d'un code technique nouveau_, une concrétisation démocratique des principes techniques, des _rationnalisations démocratiques_. **Reférences** _[Feenberg, 2013]_ _[Widmaier, 2020]_ :::info Quelques éléments critiques mis en débat pour le gt (Widmaier, 2020) ? le notebook - non comme _modèle_ : c'est à dire - des imitations d'objets en vue d'une "perfection" formelle ou computationnelle marquant des ressemblances au schème utilitaire qu'il "faudrait atteindre" - ou des associations d'idées ("détourner" un concept disciplinaire ou une méthode associée à un champ), - mais plutôt comme _paradigmatique_ : c'est à dire au sein d'une analogie rigoureuse des rapports opératoires réalisés - dans les relations entre opérations et structures réelles dans leur milieu (disciplinaire), - et les processus de co-individuations d'objets _notebook_ et de collectifs (pluri ou interdisciplinaires) associés. ::: #### Index [WIP] *_épokhé_ : suspension du jugement, ne pas considérer l'objet / le sujet dans le raisonnement technicité concrétisation individuation allagmatique (analogie) parlement des choses pertinence (cercle de crédibilité scientifique) ### Discussions diverses & webinaire à venir - Michael Nauge, mapstorytelling avec Quarto - https://gitlab.huma-num.fr/mshs-poitiers/plateforme/maps-storytelling-low-cost-experiment - interactivité(s) du notebook - Une présentation d’Onyxia par ses développeurs pourrait être intéressante dans le cadre de ce GT https://github.com/InseeFrLab/onyxia-web - je peux proposer une présentation de Computo (https://computo.sfds.asso.fr/), nouveau journal (open access diamant) porté par la Société Française de Statistiques (SFdS), qui promeut des avancés en stats et machine learning, avec un accent très fort sur la reproductibilité (dans le sens que la soumission correspond à un notebook rendu par quarto reproduisant les résultat et le texte de l'article) ### Infos diverses - veille et liens - Le GT Atelier Données organise une **webinaire le 31/03 (demain) de 10h à 12h :** [**Interroger les données**](https://mi-gt-donnees.pages.math.unistra.fr/site/#ev%C3%A8nements) avec ![](https://i.imgur.com/tS9OJmA.png) - [name=Ghislain DURIF] il y a un package R pour éviter l'utilisation via l'interface en ligne de commande : https://cran.r-project.org/package=quarto - [name=Frédéric Santos] Et il y a aussi un mode quarto pour les utilisateurs d'Emacs : https://github.com/quarto-dev/quarto-emacs - le lien vers les extensions : https://quarto.org/docs/extensions/ - autre lien (Mickaël) : https://github.com/mcanouil/awesome-quarto - pandoc qui assure la conversion entre le fichier quarto et le jupyter notebook - service en ligne type Binderhub pour exécuter les notebooks Quarto : serveur RStudio, https://onyxia.lab.sspcloud.fr/home (développé par l'INSEE). Permet l'utilisation d'images docker, le stockage de données volumineuses et le travail collaboratif. Cet outil est libre, vous pouvez également monter une instance sur votre propre serveur. Contact : Frédéric Comte (Insee), Shiraz Adamaly (Insee) et Romain Avouac (Insee) - Pour la configuration de la version de R, de Python serait-il possible de revoir le fichier de configuration? - Finalement quels sont les principaux apports par rapport à Rmd ? on peut faire des documents complexes (site web, livre) beaucoup plus simplement. > 1. Ce n'est plus lié à Rstudio (on peut l'utiliser dans VScode par exemple) - n'ai pas testé, n'ayant pas eu le cas d'usage mais cela semble possible: https://quarto.org/docs/computations/ojs.html#data-sources - [name=Hugues Pécout] un exemple qui mix avec R et Observable : https://rcarto.github.io/Quarto/ - autre exemple (chargement long) : https://rysebaert.github.io/climbing_paris/ - [name=Ghislain] pour faire des notebooks sans installation locale ou serveurs https://jupyterlite.readthedocs.io/en/latest/_static/lab/index.html - [name=Konrad] Mais attention: JupyterLite vient avec un environnement Python integré qui est très difficile à changer. Ou c'est bon pour vous, ou... il vaut mieux laisser tomber. - [name=Nicolas Roelandt] il existe un équivalent R (R codé en web Assembly): https://github.com/r-wasm/webr

Import from clipboard

Paste your markdown or webpage here...

Advanced permission required

Your current role can only read. Ask the system administrator to acquire write and comment permission.

This team is disabled

Sorry, this team is disabled. You can't edit this note.

This note is locked

Sorry, only owner can edit this note.

Reach the limit

Sorry, you've reached the max length this note can be.
Please reduce the content or divide it to more notes, thank you!

Import from Gist

Import from Snippet

or

Export to Snippet

Are you sure?

Do you really want to delete this note?
All users will lose their connection.

Create a note from template

Create a note from template

Oops...
This template has been removed or transferred.
Upgrade
All
  • All
  • Team
No template.

Create a template

Upgrade

Delete template

Do you really want to delete this template?
Turn this template into a regular note and keep its content, versions, and comments.

This page need refresh

You have an incompatible client version.
Refresh to update.
New version available!
See releases notes here
Refresh to enjoy new features.
Your user state has changed.
Refresh to load new user state.

Sign in

Forgot password

or

By clicking below, you agree to our terms of service.

Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
Wallet ( )
Connect another wallet

New to HackMD? Sign up

Help

  • English
  • 中文
  • Français
  • Deutsch
  • 日本語
  • Español
  • Català
  • Ελληνικά
  • Português
  • italiano
  • Türkçe
  • Русский
  • Nederlands
  • hrvatski jezik
  • język polski
  • Українська
  • हिन्दी
  • svenska
  • Esperanto
  • dansk

Documents

Help & Tutorial

How to use Book mode

Slide Example

API Docs

Edit in VSCode

Install browser extension

Contacts

Feedback

Discord

Send us email

Resources

Releases

Pricing

Blog

Policy

Terms

Privacy

Cheatsheet

Syntax Example Reference
# Header Header 基本排版
- Unordered List
  • Unordered List
1. Ordered List
  1. Ordered List
- [ ] Todo List
  • Todo List
> Blockquote
Blockquote
**Bold font** Bold font
*Italics font* Italics font
~~Strikethrough~~ Strikethrough
19^th^ 19th
H~2~O H2O
++Inserted text++ Inserted text
==Marked text== Marked text
[link text](https:// "title") Link
![image alt](https:// "title") Image
`Code` Code 在筆記中貼入程式碼
```javascript
var i = 0;
```
var i = 0;
:smile: :smile: Emoji list
{%youtube youtube_id %} Externals
$L^aT_eX$ LaTeX
:::info
This is a alert area.
:::

This is a alert area.

Versions and GitHub Sync
Get Full History Access

  • Edit version name
  • Delete

revision author avatar     named on  

More Less

Note content is identical to the latest version.
Compare
    Choose a version
    No search result
    Version not found
Sign in to link this note to GitHub
Learn more
This note is not linked with GitHub
 

Feedback

Submission failed, please try again

Thanks for your support.

On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

Please give us some advice and help us improve HackMD.

 

Thanks for your feedback

Remove version name

Do you want to remove this version name and description?

Transfer ownership

Transfer to
    Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

      Link with GitHub

      Please authorize HackMD on GitHub
      • Please sign in to GitHub and install the HackMD app on your GitHub repo.
      • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
      Learn more  Sign in to GitHub

      Push the note to GitHub Push to GitHub Pull a file from GitHub

        Authorize again
       

      Choose which file to push to

      Select repo
      Refresh Authorize more repos
      Select branch
      Select file
      Select branch
      Choose version(s) to push
      • Save a new version and push
      • Choose from existing versions
      Include title and tags
      Available push count

      Pull from GitHub

       
      File from GitHub
      File from HackMD

      GitHub Link Settings

      File linked

      Linked by
      File path
      Last synced branch
      Available push count

      Danger Zone

      Unlink
      You will no longer receive notification when GitHub file changes after unlink.

      Syncing

      Push failed

      Push successfully