From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id QNvqNZZYOmRqfQAASxT56A (envelope-from ) for ; Sat, 15 Apr 2023 09:56:07 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id EE70NJZYOmRPFgEAG6o9tA (envelope-from ) for ; Sat, 15 Apr 2023 09:56:06 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 849D62F723 for ; Sat, 15 Apr 2023 09:56:06 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pnalA-0001ev-Gl; Sat, 15 Apr 2023 03:55:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pnal6-0001eS-Vd for guix-science@gnu.org; Sat, 15 Apr 2023 03:55:45 -0400 Received: from wout3-smtp.messagingengine.com ([64.147.123.19]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pnal3-0005F5-Vy for guix-science@gnu.org; Sat, 15 Apr 2023 03:55:44 -0400 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.west.internal (Postfix) with ESMTP id 6D03D32009B7; Sat, 15 Apr 2023 03:55:35 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Sat, 15 Apr 2023 03:55:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1681545335; x= 1681631735; bh=Ck9X2VIHEdaZuscH4VjKqVB+KU2idXu+F+4HBTqkdiM=; b=I JHUrr7zKIZ8NfPb84o5WfVqi4Ki1D0l8btabyAjnryDDnHrIsQkx/elI6pizzFqg TjUk3x8BfGqgvbJEEkcTJSrBuMFoBqcej4CkMcZBDHs9ggoAxh5UX4YHY4ejGvKw YIL1z4NQ9Aa7Jcug4tkPUDVj46bcCj44jbYrhhaoFvk+WY+wJgtYyJqLlHtiakhr uPWOAeKF1tV7HFU9r07GQx/fWRmJh7xMLrO6P/wgozkhKHHvx/Z/wTq6jNYcNPnh SALFTIhMejA/Y/W8lylTGHcuKEqv0iDAgIgBMy48tNaR9aCRAVaWSetKHzRdCZ6m eBoc5/gEP0BOsXnQtwq3w== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrvdeluddguddvkecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefhvffujghffffkgggtgfesthhqredttddtjeenucfhrhhomhepmfhonhhr rgguucfjihhnshgvnhcuoehkohhnrhgrugdrhhhinhhsvghnsegtnhhrshdrfhhrqeenuc ggtffrrghtthgvrhhnpeevtedvvdeggfejveduudehgfejfefgiedtkeetleduhfefteff kefhhffgveetkeenucffohhmrghinhepuhhnihhvqdhgrhgvnhhosghlvgdqrghlphgvsh drfhhrpdgtnhhrshdqohhrlhgvrghnshdrfhhrpdhorhgtihgurdhorhhgnecuvehluhhs thgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepkhhonhhrrggurdhhih hnshgvnhestghnrhhsrdhfrh X-ME-Proxy: Feedback-ID: if40146ab:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 15 Apr 2023 03:55:32 -0400 (EDT) From: Konrad Hinsen To: Simon TOURNIER , "guix-science@gnu.org" Subject: Re: Rproducibility for Python and beyond In-Reply-To: <73307ac3c0ef44ea9dcdc220a2307506@inserm.fr> References: <73307ac3c0ef44ea9dcdc220a2307506@inserm.fr> Date: Sat, 15 Apr 2023 09:55:30 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: softfail client-ip=64.147.123.19; envelope-from=konrad.hinsen@cnrs.fr; helo=wout3-smtp.messagingengine.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_SOFTFAIL=0.665, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: guix-science@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-science-bounces+larch=yhetil.org@gnu.org Sender: guix-science-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Seal: i=1; s=key1; d=yhetil.org; t=1681545366; a=rsa-sha256; cv=none; b=qDGMSrdOD6kXIP3h9LuwPQZnOExdYUipplyZ5AHhQQA9RbYwfOVlrzfgx45H4JClRe/7D1 tAKkcBqKjIBJsRwgShao8AIMCZJMUyVfsx71jPomLQq0sfgAFswGRXOzk/gwnR2ebDjX4y vDT857f/dWmYzZe2s1MBjkpQz89suvbv++GM2CJAafGq6pdOAn6FbTg1cG5wIVoNCxPOI8 LXkcxhDX7/sTENiNQKOP2Z2et53zgYoBvd7F69XGUzvx3+Xy4XbEwJg570NPemLwCA5ulV ee33bpZ166a3n+knK/Qm1HWtNawDFw43VKxIB1JjXD70QZohJhnBfIAZzJ6KKg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm3 header.b="I JHUrr7"; spf=pass (aspmx1.migadu.com: domain of "guix-science-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-science-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1681545366; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=Ck9X2VIHEdaZuscH4VjKqVB+KU2idXu+F+4HBTqkdiM=; b=qBsK3wW5+7fwG45pd2SXYUJ1OW0Z8jS3H90qzMSJxjqPHWuF4eRueTEE1VOlxKFL2YdSwj n6QzkWdm5vjU051A/sygBfQT6JyNw92dvtr97VFuAc+62XS5s5dPD4X+ildNW0IV19yG9/ 3lx0rONUL2Bllobf1VcVvK1f05HynJVZfl1WoeqnQs3PbXXAnZyojmgkqoWiYkOICkdXFI hGnZNVdO0/zdHQHXwyPXShXXDCuX/ad5rdwMvCfaEnxD4T2INEObIFGSm727euyTbL9bYz JhtOLRxjjPl3KGFGUA2zroWS6uYEk0lQqnOzaUd89gqrUZ5S12DA7mBzyCiisw== X-Migadu-Scanner: scn1.migadu.com X-Migadu-Spam-Score: -2.12 X-Spam-Score: -2.12 X-Migadu-Queue-Id: 849D62F723 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm3 header.b="I JHUrr7"; spf=pass (aspmx1.migadu.com: domain of "guix-science-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-science-bounces+larch=yhetil.org@gnu.org"; dmarc=none X-TUID: bFoCy9L4tgSG Hi Simon, > French speakers, here is an interesting presentation by Konrad about > the state of Python for scientific computing and reproducibility. > > https://reproducibility.gricad-pages.univ-grenoble-alpes.fr/web/presentat= ion_110423.html#presentation_110423 > > Without watching the video, here the questions I would like to discuss. := -)=20 Summary: Why you should use Guix rather than Conda to manage your Python environments. Now I'll jump to the end: > For instance, the file "guix describe -f channels" is one mean for > capturing (and cite too!) one computational environment. Do we need > to make it more popular? How to link this mean with the archiving > part of source code (relying on SWH, say)? Yes, we should make this more popular. With Guix, a full description of a computational environment is: - hardware architecture - channel file - manifest file Leaving out the Linux kernel and file system, which should in principle be listed but in practice never cause any problems. It would be nice to have tools that automatically extract a list of citations from such a description. That is not as easy as it seems because the list should not really be exhaustive if it is meant to be listed in a paper for human consumption. > 1. Considering the Konrad's schema of some scientific computation > (Model --technical choices--> Code --computational env--> Results), > there are also technical choices about the computational environment, > but they are implicit. And often impossible to scrutinize because of Indeed. Most people are happy to leave "the environment" as a black box, which I think is fine as long as it is (1) archivable and (2) transparent for those who are willing to open the box. > the lack of transparency. The key, IMHO, is not the determinism of > the computation, instead the key is its transparency. Determinism is > one mean to obtain transparency and determinism is not the only mean. Agreed as well. The reason I tend to speak about determinism is to illustrate why we shouldn't consider irreproducibility normal but surprising. > For instance, this determinism is not affordable for very intensive > computation, where is not doable to repeat. How to think about True, but a niche topic. Most computational science is not HPC, and yet suffers from reproducibility issues. > 2. The "redo" of computations is only possible when the citation is > correct. L'Inria is somehow proposing Correct and complete. Cheers, Konrad. --=20 --------------------------------------------------------------------- Konrad Hinsen Centre de Biophysique Mol=C3=A9culaire, CNRS Orl=C3=A9ans Synchrotron Soleil - Division Exp=C3=A9riences Saint Aubin - BP 48 91192 Gif sur Yvette Cedex, France Tel. +33-1 69 35 97 15 E-Mail: konrad DOT hinsen AT cnrs DOT fr http://dirac.cnrs-orleans.fr/~hinsen/ ORCID: https://orcid.org/0000-0003-0330-9428 Mastodon: @khinsen@scholar.social ---------------------------------------------------------------------