From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Authentication-Results: plum.tunbury.org; dkim=pass (1024-bit key; unprotected) header.d=inria.fr header.i=@inria.fr header.a=rsa-sha256 header.s=dc header.b=Nw8OlhgZ; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=deinprogramm.de header.i=@deinprogramm.de header.a=rsa-sha256 header.s=default header.b=vqwOo5bN; dkim-atps=neutral Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=192.134.164.83; helo=mail2-relais-roc.national.inria.fr; envelope-from=caml-list-owner@inria.fr; receiver=tunbury.org Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by plum.tunbury.org (Postfix) with ESMTPS id DF11A4AC97 for ; Mon, 16 Dec 2024 11:56:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inria.fr; s=dc; h=from:to:date:message-id:mime-version: content-transfer-encoding:subject:reply-to:sender:list-id: list-help:list-subscribe:list-unsubscribe:list-post: list-owner:list-archive; bh=5DIP5CbboFT7Lhd0JtNaawPQ8DtzrZ6+OCFAcOXJDq8=; b=Nw8OlhgZQpBlMwCmx14kYFWhSDNsc9djxz8s9b/F8bfKNCqLYfyHIlmO BUDsdxwViaY9bQmUdeCFfMSicd0tW7abTuW3vW//thMkroaEa8yFVvocg hfWyroec6CV1E/yveQ3G1WTDZ31B6uf+SaLFHDeLDkxpCaAw3/rNL12yn g=; Received-SPF: Pass (mail2-relais-roc.national.inria.fr: domain of caml-list-owner@inria.fr designates 128.93.162.160 as permitted sender) identity=mailfrom; client-ip=128.93.162.160; receiver=mail2-relais-roc.national.inria.fr; envelope-from="caml-list-owner@inria.fr"; x-sender="caml-list-owner@inria.fr"; x-conformance=spf_only; x-record-type="v=spf1"; x-record-text="v=spf1 include:mailout.safebrands.com a:basic-mail.safebrands.com a:basic-mail01.safebrands.com a:basic-mail02.safebrands.com ip4:128.93.142.0/24 ip4:192.134.164.0/24 ip4:128.93.162.160 ip4:128.93.162.3 ip4:128.93.162.88 ip4:89.107.174.7 mx ~all" Received-SPF: None (mail2-relais-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@sympa.inria.fr) identity=helo; client-ip=128.93.162.160; receiver=mail2-relais-roc.national.inria.fr; envelope-from="caml-list-owner@inria.fr"; x-sender="postmaster@sympa.inria.fr"; x-conformance=spf_only Authentication-Results: mail2-relais-roc.national.inria.fr; spf=Pass smtp.mailfrom=caml-list-owner@inria.fr; spf=None smtp.helo=postmaster@sympa.inria.fr; dkim=hardfail (signature did not verify [final]) header.i=@deinprogramm.de X-IronPort-AV: E=Sophos;i="6.12,238,1728943200"; d="scan'208";a="199390723" Received: from prod-listesu18.inria.fr (HELO sympa.inria.fr) ([128.93.162.160]) by mail2-relais-roc.national.inria.fr with ESMTP; 16 Dec 2024 12:56:44 +0100 Received: by sympa.inria.fr (Postfix, from userid 20132) id 3500CE0D20; Mon, 16 Dec 2024 12:56:44 +0100 (CET) Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id C4AF5E0077 for ; Mon, 16 Dec 2024 12:56:41 +0100 (CET) IronPort-SDR: 67601579_wjVc6lNSr6uxNsRcFA3p3pgNkYQOeGQi0lyPOJIoqYF/bHD QU4ynfdaNOeRoslw/3U4zhmVlxwt+jlYI5AZV8w== X-IPAS-Result: =?us-ascii?q?A0GPMAAFFGBn/9Oqd6haGwEBAQE8AQEBAwMBAQECAQEBB?= =?us-ascii?q?QEBARWBUwKCQgd2WhEiBwhIhFaDT4UtCYkcnWiBfg8BAwENFAIBAg4SCAECB?= =?us-ascii?q?AEBAwEDggyNYwIfBgEEMQgOAQIEAQEBAQMCAwEBAQEBARABAQUBAQECAQECB?= =?us-ascii?q?AYBAoEKE4V7DYJbO4IWLA2BIQYdAQEmEjQCBRMOAhEBBINdgmQDBA0GsRaBM?= =?us-ascii?q?oEBggwBAQaBCIFf2xwDBoEaLgGITQGFa4UeG4INgxGBbIEFgVwDgUdlgw6Ca?= =?us-ascii?q?YInF4VUgQyDfoQag3KBQYI+ggiLRYFNHANZIREBVRMXCwcFgXMDgRWDYEY9g?= =?us-ascii?q?kppSTcCDQI2giJ8gk2FGIRhYS8DAwMDgzyGGoIXghYuHUADC209NxQbnTBHh?= =?us-ascii?q?CF7AoERQJROsmWCP4FlhG+HKZV7l1GTAJh7iyGCYZsogWkBOoFZMxoIHBSDI?= =?us-ascii?q?k8DGQ+OOIQWwCECQjU8AgcBCgEBAwmFRAGKNYFLAQE?= IronPort-PHdr: A9a23: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 tXOkrrpLzhY+tfRu8cRVZG8FQ== IronPort-Data: A9a23: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 IronPort-HdrOrdr: A9a23:tz6k56zeVgK8T3V0UtyhKrPwAr1zdoMgy1knxilNoERuA6ulf8 DHppsmPGzP+VAssRAb6Kq90ca7MBDhHPJOjLX5eI3SODUO21HYUb2Kj7GSoQEIcheWnoU26U 4jSdkaNDSaNzZHZLPBgDVQZOxA/DDoysyVbKzlvg5QpElRGtldBilCe32mLnE= X-Talos-CUID: =?us-ascii?q?9a23=3AA3VP/2jCVJiBAjTdJnGjRrwI9jJuUHHyxWf8OnS?= =?us-ascii?q?BG2tYdoO4ZW+V84lOqp87?= X-Talos-MUID: 9a23:+WTH2wQBXDNnfEWORXTR1BRhDfdwyZiXJ10Sq7Msksa/BAhZbmI= X-IronPort-Anti-Spam-Filtered: true X-IronPort-AV: E=Sophos;i="6.12,238,1728943200"; d="scan'208";a="199390701" X-MGA-submission: =?us-ascii?q?MDE2fh0JeUsJ3+PwDwAG80akyMxYRzwWqVTxpy?= =?us-ascii?q?mqJY070bGxPVD+Y+O44IfxjdN6o7cJKGmOUVh7KKRF3QKUYTE0HrY3zL?= =?us-ascii?q?8U2DWEXo61eSG98t41uhePzUl7mBEP2kLVdAaKBvCN9UCxJigVV2uoPv?= =?us-ascii?q?qy6v2Uz/3fsQJuw3GwmXLWbw=3D=3D?= Received: from deinprogramm.de ([168.119.170.211]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Dec 2024 12:56:41 +0100 Received: from Tourvel.local (ip-185-104-138-79.ptr.icomera.net [185.104.138.79]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by deinprogramm.de (Postfix) with ESMTPSA id C8D98855B62 for ; Mon, 16 Dec 2024 12:56:39 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=deinprogramm.de; s=default; t=1734350200; bh=LPa4l0vwq/fg3l1i2f6TzJ27A9ZmcXFCrl820yoS6Hs=; h=From:To:Subject:Date; b=vqwOo5bNuk7mUgRFQa1PXt4RrR1ZeKY0dkQYjALyzW6w2ejjuYrKXMlF4zCQ2W8Gs T1xXVsRaxoM8iSdPG2DbRsLQtexNpI7WrkQPioSmWbz65/ULqoBp5LlhYd9wgsicyV HS+qUZ13CzvrzI5Pfbi8CRMp3/OEInBqTNsZQELs= From: Michael Sperber To: caml-list@inria.fr Date: Mon, 16 Dec 2024 12:56:39 +0100 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: [Caml-list] Last Call for Participation: BOB 2025 (Berlin, Mar 14) Reply-To: Michael Sperber X-Loop: caml-list@inria.fr X-Sequence: 19233 Errors-To: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: (And of course, there's OCaml material at BOB!) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D BOB 2025 Conference =E2=80=9CWhat happens if we simply use what=E2=80=99s best?=E2=80=9D March 14, 2025, Berlin https://bobkonf.de/2025/ Program: https://bobkonf.de/2025/program.html Registration: https://bobkonf.de/2025/registration.html =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =09=09=09=09=20=20=20 BOB conference is a place for developers, architects, and decision-makers to explore technologies beyond the mainstream in software development and to find the best tools available to software developers today. Our goal is for all participants of BOB to return home with new insights that enable them to improve their own software development experience. The program features 16 talks and 8 tutorials on current topics: https://bobkonf.de/2025/program.html Talk subjects includes functional programming, property-based testing, language server implementation, domain-specific languages, domain-driven design, local-first software, formal methods, and microservices. BOB tutorial include sessions on frontend development, local-first programming, data science, Elixir, and software documentation, combining mob programming, TDD, and AI. Anette Bieniusa will give the keynote talk. Registration is open - many discount options are available, as are grants for members of groups underrepresented in tech. Early-bird discounts apply until Jan 17. https://bobkonf.de/2025/registration.html