2011 年巴黎 GNU 黑客会议

地点:法国巴黎,位于 IRILL (详细信息, 地图),自由软件研究与创新中心。
本次 GNU 黑客会议于 2011 年 8 月 25 日星期四至 8 月 28 日星期日举行。感谢 IRILL 主办本次活动并进行视频录制,感谢 Inria 提供会议室,感谢 FSF 为会议提供资金。
IRILL 位于意大利大道 23 号,三楼,与 Inria 在同一栋建筑内。主要演讲将在 IRILL 三楼的“algorithme”房间进行。IRILL 和 Inria 的入口位于 建筑的左侧,邮局(“La Poste”)入口的左侧。
日程安排
IRILL 的设施在 8 月 25 日星期四至 28 日星期日全天开放。
以下是演讲日程。今年的主题是可扩展性。
8 月 25 日星期四
- 10:00 — 开幕式
- 10:30 — 使用 MELT 扩展 GCC 以支持自由软件(Basile Starynkevitch,Pierre Vittet)(45 分钟)
- 11:15 — Scilab:与非 IT 人员打交道时的可扩展性问题(Sylvestre Ledru)(30 分钟)
- 12:30 — 午餐
- 14:30 — Woodchuck:提高移动设备的数据可用性(Neal Walfield)
- 15:00 — 让旧事物焕发新生(Reuben Thomas)(45 分钟)
- 16:00 — 欧洲自由软件的资金(Karsten Gerloff - FSFE 主席)
- 17:30 — 参观 巴黎天文台
8 月 26 日星期五
- 10:00 — GNU/Hurd,又名:从基础开始的可扩展性(Samuel Thibault)(45 分钟)
- 10:45 — 循环中的用户(Andy Wingo)
- 11:30 — GNU epsilon,一种可扩展的编程语言(Luca Saiu)(45 分钟)
- 12:15 — 午餐
- 14:30 — GNUstep 和 Étoilé 中的可扩展性(Quentin Mathé)(45 分钟)
- 15:20 — Debian 的背景:发行版、上游和下游(Stefano Zacchiroli,Debian 项目负责人)
- 16:15 — 密钥签名会议
- 17:00 — 闪电演讲(每个 15 分钟)- 建议主题
- GNU LibreDWG(Rodrigo Rodrigues da Silva)
- 从法语 http://racketiciel.info/ 到国际 http://racketware.info/index(Alain Coulais,Cyprien Gay)
8 月 27 日星期六
- 10:00 — 再见,世界!依赖 C 语言输出流的危险(Jim Meyering)(45 分钟)
- 10:45 — Org-mode 对于 Emacs 来说,就像 Emacs 对于计算机一样重要(Bastien Guerry)(45 分钟)
- 11:30 — Emacs XWidget 分支(Joakim Verona)(30 分钟)
- 12:00 — 午餐
- 14:30 — GNU 免费呼叫——汽车和手机的健康网络(Haakon Meland Eriksen)
- 15:00 — Emacs Lisp、Guile、JavaScript、一个硬性限制和一个伦理论点(Jim Blandy)(45 分钟)
- 16:00 — 闪电演讲(每个 15 分钟)
- GNU 参与 Google 代码之夏(Rodrigo Rodrigues da Silva)
- GNU 在拉丁美洲,或者为什么我们应该在巴西举办 GHM(Rodrigo Rodrigues da Silva)
- 自由软件和高性能计算(Juan Antonio Añel Cabanelas)
- GNU 数据语言(Alain Coulais,Sylwester Arabas)
- GNU Psychosynth(Juan Pedro Bolívar Puente)
8 月 28 日星期日
- 10:00 —
makeinfo
的最新开发方向(Patrice Dumas) - 10:30 — GNU MPFR 库简介(Vincent Lefevre)
- 11:15 — GNU MPC 库简介(Andreas Enge)
- 12:30 — 午餐
- 14:00 — GNU 顾问委员会的最新消息
- 闪电演讲(15 分钟)
- 16:30 — Guile-Emacs(BT Templeton)
演讲
今年的主题是可扩展性。
演讲列表如下,通常包括摘要、辅助幻灯片和演讲的视频录像。所有视频和本地托管的幻灯片均在 知识共享署名 3.0 未本地化 许可下发布,除非另有说明。视频采用 Ogg 格式。
GNU 黑客会议简介(Ludovic Courtes)
(视频)
闪电演讲
(视频)
再见,世界!依赖 C 语言输出流的危险(Jim Meyering)
如果您使用 C 语言进行开发,并且希望应用程序可靠地检测和诊断输出错误,那么您不希望使用标准流输出函数,例如 putchar
、fputs
、fprintf
等。如果您必须使用它们,那么您需要担心大量的极端情况。在这里,您将看到如何在保留一定程度可维护性的同时处理丑陋的现实。
许多程序将其部分或全部输出写入 stdout
,即标准输出流。然而,尽管大多数经验丰富的程序员都意识到关闭(并诊断其中的任何故障)他们打开的所有文件的重要性,但很少有人将这种纪律应用于 stdout。结果是许多程序没有诊断写入错误。正如您将看到的,尽管应用程序通常不会打开 stdout,但正确关闭它通常与关闭任何其他输出流一样重要。我将说明这个问题,并展示如何以可维护且最小侵入性的方式避免它。虽然处理 stdout 有一些微妙的曲折,但您会看到,可靠地使用任何输出流都需要非常小心,在某些情况下,这几乎是不可能的。最后,您会想知道为什么任何需要可靠输出函数的开发人员仍然使用 C 流。
GNU epsilon,一种可扩展的编程语言(Luca Saiu)
让旧事物焕发新生(Reuben Thomas)
GNU 有许多历史悠久的项目,这些项目仍然是 GNU 在底层运行的核心,并且在许多情况下,用户仍然直接广泛使用这些项目。诸如 coreutils、grep 和 gcc 之类的程序属于此类,Emacs 也是如此。
不幸的是,在这些程序上工作并没有被广泛视为一件有趣或很酷的事情。这很可惜,原因有两个:首先,尽管过去几年重新努力,但这些程序中的许多程序只是保持在良好状态,并没有像他们本可以的那样得到进一步的开发;其次,使用 C 语言和 GNU autotools 进行编程被广泛认为(尤其是在 GNU 之外)是乏味的、低效的和过时的。另一方面,虽然 GNU 工具取得了一些显着的进步,但在不幸的程度上,这种看法仍然是正确的。
本次演讲有两个主要目的:首先,展示 GNU 工具的最新进展,特别是最近快速发展的 gnulib,它使 C 语言编程比许多年前更高效和有趣;其次,探索剩余的障碍,并提出一些使用现有成熟工具、未被广泛使用的现有工具(通常仍然需要工作)以及尚未实施的一个或两个想法来解决这些障碍的建议;第三,表明不仅在“传统 UNIX”风格编程中有很多必要和有价值的工作要做,而且还有很多乐趣,并且也许最令人惊讶的是,对于非内核程序员来说,它仍然可以是令人兴奋的创新的框架。
makeinfo
的最新开发方向(Patrice Dumas)
GNU/Hurd,又名:从基础开始的可扩展性(Samuel Thibault)
Unix 模型通常将“特权”用户与非特权用户严格区分开来。前者通常拥有所有可能的特权,而后者则拥有非常受限的特权,仅限于他们自己的主目录,并且最多有时允许挂载可移动介质。来自用户空间的一个解决方案例如是 GVFS,它允许 GNOME 应用程序透明地访问不仅系统提供的(即实际由特权用户提供的)内容,还包括用户空间提供的内容,例如来自 FTP、SMB 等的文件。另一个有趣的例子是使用 SOCKS 访问内网网站。一些浏览器原生支持使用 SOCKS 代理,而对于那些不支持的浏览器,可以使用 libsocks4 透明地使它们这样做。
然而,这些方法(嵌入)是有限的,并且会阻碍组合,因为它们大多需要在源代码中显式地指定。如果可移动介质使用特殊的文件系统格式化怎么办?如果内网网站无法通过 ssh 访问,只能通过 VPN 访问怎么办?为什么在已经授予了对串行端口的访问权限的情况下,不允许通过串行端口运行 PPP 隧道?这些通常在桌面上不是问题,因为非特权用户实际上也是特权用户,并且人们已经习惯于通过 sudo、FUSE、TAP 等进行一些调整,但它仍然很繁琐,并且存在潜在的安全漏洞。在一个新安装的系统上,难道不能例如直接运行 tar xf /ftp://ftp.gnu.org/pub/gnu/gcc/gcc-4.6.0/gcc-4.6.0.tar.bz2
来一步下载并解压缩一个 tarball 吗?实际上,在 GNU/Hurd 系统上,是可以的。
有趣的是,即使 GNU 不是 Unix,GNU/Hurd 也使用非常类似 Unix 的方法来实现可扩展性:文件。通过引入翻译器的概念,这实际上是它的真正核心,GNU/Hurd 让用户可以轻松完成在通常的 Unix 系统上需要特殊权限的各种任务,例如从 shell 访问 iso 映像的内容、chrooting、通过 VPN 路由应用程序网络流量、IP 转换……
本次演讲将介绍翻译器的概念,并通过一些已经工作的翻译器的例子,展示它为“非特权”用户(即实际上是 #0 自由)带来的强大功能,而不会破坏安全性,以及它与 Linux GVFS/FUSE/CUSE 等同类产品相比如何。
GNU MPFR 库简介 (Vincent Lefevre)
GNU MPC 库简介 (Andreas Enge)
(幻灯片)
将介绍 GNU MPC 库,其中许多方面与 GNU MPFR 库相似,但也存在一些差异。我们将讨论复数的表示和主要实现的功能。还将讨论一些为实现高效实现并同时保证正确舍入而选择的算法。
[未公开主题] (Jose E. Marchesi)
已取消。
Org-mode 对于 Emacs 就像 Emacs 对于计算机 (Bastien Guerry)
Debian 的背景:发行版、上游和下游 (Stefano Zacchiroli, Debian 项目负责人)
Emacs XWidget 分支 (Joakim Verona)
Emacs Xwidgets 是一个实验性分支,用于在 Emacs 窗口内嵌入 GTK+ 小部件。Emacs 抽象称为 Xwidget,代表外部小部件,也参考了 XEmbed 协议。
目前,可以在缓冲区中插入按钮、滑块、WebKit 浏览器和 XEmbed 套接字。它的工作方式类似于 Emacs 中对图像的支持。添加更多类型的小部件应该相当简单,但每种类型都需要适配器代码。
与图像不同的是,xwidget 有自己的生命周期。您使用 API 创建它们,获取引用,并使用显示规范将它们绑定到特定缓冲区。
每个 xwidget 可以有多个视图。在 MVC 术语中,xwidget 是模型,而 xwidget-view 是 xwidget 在特定 Emacs 窗口中的视图。
xwidget 代码尝试通过观察者模式实现来保持视图的视觉外观同步。
GNUstep 和 Étoilé 中的可扩展性 (Quentin Mathé)
本次演讲将介绍 Objective-C 中用于支持可扩展性的各种有趣机制,GNUstep 如何将它们用作符合 Cocoa 的实现,以及 Étoilé 如何利用 Objective-C 和 GNUstep 将用户和开发人员方面的灵活性进一步提升。
Objective-C 具有从其他库扩展类、在运行时内省代码、延迟解析方法等各种能力。我们将讨论这些以及一些不太常见的想法,例如类转换,用于实现原型或键值观察(一种观察其他对象中任意变化的方法)。
GNUstep 使用 Objective-C 的动态性来实现其绘图后端、主题支持或诸如键值编码或键值观察之类的功能,这些功能在 Cocoa 开发人员中更为人所知。GNUstep AppKit 和 Foundation 基于各种重复模式,例如类注册或类集群,以扩展内置类,因此我们将详细介绍它们并给出一些具体示例,例如 NSImageRep
。
在 Objective-C 和 GNUstep 的基础上,Étoilé 构建了一个桌面环境,它或多或少是一个开发人员平台。我们将讨论 LanguageKit,它可以用来创建与 Objective-C 对象无缝集成的动态语言,并使得可以用多种语言编写属于同一类的方法。在更高的层面上,我们将展示 EtoileUI 提供的可能性,EtoileUI 是一个 UI 工具包,其中用户界面完全模块化为可插入的方面(布局、样式、工具、控制器等),从而可以快速创建新的 UI 或在运行时精确轻松地更改 UI。
如果时间允许 ;-) 我将尝试介绍我们关于 CoreObject
作为具有版本控制的面向对象数据库的最新实验,或者至少做一个快速演示。
使用 MELT 扩展 GCC 以实现自由软件 (Basile Starynkevitch, Pierre Vittet)
Scilab:与非 IT 人员打交道时的可扩展性问题 (Sylvestre Ledru)
GNU Free Call — 汽车和手机的健康网络 (Haakon Meland Eriksen)
循环中的用户 (Andy Wingo)
Emacs Lisp、Guile、JavaScript、一个硬性限制和一个伦理论点 (Jim Blandy)
(很抱歉,由于技术原因,本次演讲的视频无法观看。 问答视频第 1 部分, 问答视频第 2 部分)
扩展语言是一种强大的设计模式。然而,您选择的语言会影响您获得的用户群,并且流畅地支持混合语言已经变得比我们许多人预期的要困难。我认为困难在于我们如何将现实世界的含义归因于程序的具体行为。这种困难是编程行为的基础,无法解决。我将提供具体示例进行说明,得出一些令人失望的结论,并提出前进的方向。
来自 GNU 顾问委员会 的新闻
Woodchuck:改进移动设备的数据可用性(Neal Walfield)
移动设备应该最大化数据可用性,即用户想要的数据可访问的可能性。高速蜂窝网络并非万能:无线通信能源消耗大;数据传输上限越来越普遍;而且蜂窝覆盖并非无处不在。
Woodchuck 是一个用于调度延迟容忍内容的传输框架,例如博客、播客、电子邮件、社交网络更新、天气报告和日历数据。Woodchuck 通过监视网络条件和用户行为,并在条件良好时,告诉应用程序(必要时启动它们)执行更新或传输,从而节省电池电量、管理数据上限并隐藏不良的网络覆盖。挑战在于如何有效地管理这些资源并预测用户可能需要什么。
在本次演讲中,我将展示一些关于预取潜在改进的测量结果。我将简要讨论 Woodchuck 的设计。我将介绍 Woodchuck 的 API 以及我正在探索的调度方法。最后,我将讨论我们正在进行的用户研究,以便能够评估调度策略。
有关 Woodchuck 的更多信息,包括 Woodchuck 服务器、C 库和 Python 模块,可以在以下网址找到:
http://hssl.cs.jhu.edu/~neal/woodchuck/
N900 也提供二进制软件包。
GNU 数据语言(Alain Coulais,Sylwester Arabas)
(很抱歉,由于技术原因,本次演讲的视频不可用。幻灯片)
GNU 数据语言 (GDL) 是一个免费/自由/开源的增量编译器,与 IDL 兼容,并在某种程度上与 PV-WAVE 兼容。它与其库例程一起,作为一种数据分析和可视化工具,用于天文学、地球科学和医学成像等学科。GDL 是在 GPL 许可下发布的自由软件。GDL 依赖于大量的其他库,包括:GCC、Readline、GSL、PLplot、ImageMagick、FFTw 等…
从法语 http://racketiciel.info/ 到国际 http://racketware.info/index (Alain Coulais, Cyprien Gay)
“不再有捆绑软件”行动的目标是让消费者在购买计算机时可以选择不为预装软件付费。
Guile-Emacs (BT Templeton)
(幻灯片)
欧洲的自由软件资金(Karsten Gerloff - FSFE 主席)
(幻灯片)
自由软件和高性能计算(Juan Antonio Añel Cabanelas)
(幻灯片)
当您使用 HPC 基础设施时,自由软件可能是一个艰难的选择。当您在时间(因此计算性能)很宝贵的环境中工作时,有时不像您需要的那样多,那么证明您正在“浪费”一半的资金是不容易的。此外,您可能无法控制您正在运行的代码或您正在使用的超级计算机,这使得问题更加复杂。本次演讲将尝试在 GHM 期间就这些问题展开富有成效的讨论。
GNU 参与 Google 代码之夏(Rodrigo Rodrigues da Silva)
(视频)
GNU LibreDWG(Rodrigo Rodrigues da Silva)
(不完整的视频)
出席者
- Ludovic Courtès (GNU Guile)
- Julien Danjou (GNU Emacs)
- Jim Blandy (GDB, GNU Guile, Firefox 等)
- Samuel Thibault (GNU Hurd)
- Andy Wingo (GNU Guile)
- Dodji Seketeli (GCC, Nemiver, GNOME)
- Sylvestre Ledru (IRILL, Debian, Scilab)
- Jose E. Marchesi (GNU PDF, GNU recutils)
- Bastien Guerry (Org-Mode, GNU Emacs)
- Neal Walfield (GNU Hurd)
- Jim Meyering (GNU Coreutils, GNU Parted, Gnulib 等)
- Andreas Enge (GNU MPC)
- Albert Cohen (GCC, IRILL)
- Vincent Lefevre (GNU MPFR)
- Brian Gough (GNU 科学库, GNU 源代码发布集合)
- Quentin Mathé (GNUstep, Étoilé)
- Luca Saiu (GNU epsilon)
- Reuben Thomas (GNU Zile, GNU Hello)
- Patrice Dumas (GNU Texinfo)
- Simon Josefsson (GnuTLS, GNU Libidn, GNU Shishi, GNU SASL 等)
- Juan A. Añel (GNU 西班牙, GNUticias)
- Sylwester Arabas (Gnu 数据语言)
- Jérémie Koenig (GNU/Hurd)
- Giuseppe Scrivano (GNU IceCat, GNU MyServer, GNU Wget, GNU Inetutils 等)
- Alain Coulais (Gnu 数据语言)
- Stefano Zacchiroli (Debian, IRILL)
- Richard Braun (GNU Hurd)
- Rodrigo Rodrigues da Silva (GNU LibreDWG)
- Haakon Meland Eriksen (GNU 自由通话)
- Roman Gopalan
- Joakim Verona (GNU Emacs)
- Ralf Wildenhues (GNU Automake, GNU Libtool, GNU Autoconf, Gnulib 等)
- Basile Starynkevitch (GCC, MELT)
- Francis Southern
- Gaël Le Mignot (GNU Hurd)
- Toby Dylan Hocking (GNU R)
- Pierre Vittet (GCC, MELT)
- Paolo Carlini (GCC)
- Guillaume Smaha
- Juan Pedro Bolívar Puente (GNU Psychosynth, GNU Jump)
- Alexandre Lissy (GCC, MELT)
- Arnaud Patard (Mageia 发行版)
- Arne Babenhauserheide (GNU Hurd)
- Florent Popille (圣艾蒂安大学 - 自由软件开发研究)
- Bruno Haible (GNU gnulib, GNU libunistring)
- Karsten Gerloff (FSFE 主席)
- BT Templeton (GNU Guile, Guile-Emacs)
- Steve White (GNU FreeFont)
- Edlira Nano (INRA)
- Laurent Guerby (GCC 编译农场)
- François Dumont (GCC)
- Dimitri Fontaine (GNU Emacs, el-get)
- Romain Tartière (FreeBSD)
- Brice Lopez
- Arnaud Gambonnet
注册
注册已结束。
- 您可以向 Flattr 捐款,以支持未来的 GNU 黑客会议
所有捐款将用于为那些无法参加会议的人提供旅行补助。
更多信息
参加会议是免费的,但您需要支付自己的差旅费/住宿费/餐费。如果您需要差旅费或住宿费方面的经济支持,请在您的注册电子邮件中注明,并注明允许您参加会议的最低金额。
建议的住宿选择
IRILL 附近的酒店
Hôtel Manet,距离 IRILL 300 米,每晚约 70 欧元(截至 6 月 13 日已满)- Hôtel Ibis, Porte d'Italie (Gentilly), 距离 IRILL 2 公里,每晚约 70 欧元
- Jack's Hotel, 距离 IRILL 300 米,每晚约 80 欧元
- Hôtel Ibis, Italie/Tolbiac, 距离 IRILL 500 米,每晚约 80 欧元
- Hôtel Ibis, avenue d'Italie, 紧邻 IRILL,每晚约 100 欧元
- Etap Hotel, Porte d'Italie est (Le Kremlin-Bicètre), 距离 IRILL 约 1.7 公里,每晚约 45 欧元
- Etap Hotel, Porte d'Italie ouest (Le Kremlin-Bicètre), 距离 IRILL 约 2 公里,每晚约 45 欧元
- Hôtel Minerve, 距离 IRILL 2 公里,每晚约 100 欧元
更远的酒店
- Hôtel Ibis, la Vilette/Cité des Sciences, 每晚约 60 欧元,地铁 7 号线,距离 IRILL 约 35 分钟。
- Hôtel Ibis, Porte d'Orléans, 地铁约 20 分钟,步行约 40 分钟,每晚约 65 欧元
旅馆
- 请参阅
hostelbookers.com
。
交通
餐饮
IRILL 有一份 建议餐厅列表。我们将尝试在中午和晚上进行团体用餐。请注意,不允许在 IRILL 和 Inria 的办公室用餐。
24 日星期三,晚餐在晚上 8 点在 Mussuwam 举行,这是一家位于 巴黎阿拉戈大道 33 号(13 区)的塞内加尔餐厅,距离 IRILL 1.3 公里。
25 日星期四,晚餐在晚上 8 点在 Au P'tit Cahoua 举行,地址是巴黎圣马塞尔大道 39 号,75013。
26 日星期五,晚餐在 “Le temps des cerises” 举行,地址是巴黎 Butte aux Cailles 街 18 号,75013(01 45 89 69 48),距离 IRILL 步行 10 分钟。
有疑问?
请在 ghm-discuss@gnu.org
邮件列表中提问,网址为 http://lists.gnu.org/mailman/listinfo/ghm-discuss。