<?xml version="1.0" encoding="UTF-8"?>
<schedule>
  <conference>
    <title>FOSDEM 2014</title>
    <subtitle/>
    <venue>ULB (Université Libre de Bruxelles)</venue>
    <city>Brussels</city>
    <start>2014-02-01</start>
    <end>2014-02-02</end>
    <days>2</days>
    <day_change>09:00:00</day_change>
    <timeslot_duration>00:05:00</timeslot_duration>
  </conference>
  <day index="1" date="2014-02-01">
    <room name="Janson">
      <event id="1616">
        <start>10:30</start>
        <duration>00:25</duration>
        <room>Janson</room>
        <slug>keynotes_welcome</slug>
        <title>Welcome to FOSDEM 2014</title>
        <subtitle/>
        <track>Keynotes</track>
        <type>keynote</type>
        <language/>
        <abstract>&lt;p&gt;FOSDEM welcome and opening talk.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Welcome to FOSDEM 2014!&lt;/p&gt;</description>
        <persons>
          <person id="6">FOSDEM Staff</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Saturday/Welcome_to_FOSDEM_2014.webm">Video</link>
        </links>
      </event>
      <event id="1650">
        <start>11:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>how_we_found_600000_grammar_errors</slug>
        <title>How we found a million style and grammar errors in the English Wikipedia</title>
        <subtitle>...and how to fix them</subtitle>
        <track>Keynotes</track>
        <type>keynote</type>
        <language/>
        <abstract>&lt;p&gt;LanguageTool is an Open Source proofreading tool developed to detect errors that a common spell checker cannot find, including grammar and style issues. The talk shows how we run LanguageTool on Wikipedia texts, finding many errors (as well as a lot of false alarms). Errors are detected by searching for error patterns that can be specified in XML, making LanguageTool easily extensible.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;LanguageTool exists since 2003, and it now contains almost 1000 patterns to detect errors in English texts. These patterns are a lot like regular expressions, only that they can, for example, also refer to the words' part-of-speech. The fact that all patterns are independent of each other makes adding more patterns easy. I'll explain the XML syntax of the rules and how more complicated errors, for which the XML syntax is not powerful enough, can be detected by writing Java code.&lt;/p&gt;

&lt;p&gt;Running LanguageTool on a random 20,000 article subset of the English Wikipedia led to 37,000 errors being detected. However, many of these errors are false alarms, either because of problems with the Wikipedia syntax or because the LanguageTool error patterns are too strict. So we manually looked at 200 of the errors, finding that 29 of the 200 errors were real errors. Projected to the whole Wikipedia (currently at 4.3 million articles), that's about 1.1 million real errors - and that does not even count simple typos that could be detected by a spell checker. If you want less errors in your Wikipedia: LanguageTool offers a web-based tool to send corrections directly to Wikipedia with just a few clicks. And while these numbers refer to the English Wikipedia, LanguageTool also supports German, French, Polish, and many other languages.&lt;/p&gt;

&lt;p&gt;This talk will contain lots of examples of errors that can be detected automatically, and others that can't. I'll also explain that LanguageTool itself is just a core written in Java (and available on Maven Central), but that it also comes with several front-ends: a stand-alone user interface, add-ons for LibreOffice/OpenOffice and Firefox and an embedded HTTP server.&lt;/p&gt;</description>
        <persons>
          <person id="1531">Daniel Naber</person>
        </persons>
        <links>
          <link href="http://languagetool.org">Main page</link>
          <link href="http://languagetool.org/wikicheck/">Wikipedia Check</link>
          <link href="http://video.fosdem.org/2014/Janson/Saturday/How_we_found_a_million_style_and_grammar_errors_in_the_English_Wikipedia.webm">Video</link>
        </links>
      </event>
      <event id="1624">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>software_archaeology_for_beginners</slug>
        <title>Software Archaeology for Beginners</title>
        <subtitle>Code, Culture and Community</subtitle>
        <track>Keynotes</track>
        <type>keynote</type>
        <language/>
        <abstract>&lt;p&gt;Most open source projects are rightly proud of their communities, long histories (both measured in time and version control), passionate debates and occasional trolling. Newcomers to these communities often face an uphill battle, though. Not just in understanding decision making processes and community standards, but in coming to terms with often complex, contradictory, and poorly documented code bases. This talk will introduce you to the concepts and tools you need to be an expert code, culture, and community archaeologist and quickly become productive and knowledgeable in an unknown or legacy code base.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will introduce you to the concepts and tools you need to be an expert code, culture and community archaeologist and quickly become productive and knowledgeable in an unknown or legacy code base and will cover:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Navigating culture&lt;/li&gt;
&lt;li&gt;Understanding open source communities and how to become part of one&lt;/li&gt;
&lt;li&gt;Spelunking legacy code bases&lt;/li&gt;
&lt;li&gt;Reverse documentation&lt;/li&gt;
&lt;li&gt;Tests, testing, and statistics&lt;/li&gt;
&lt;li&gt;Modeling, profiling, and tracing&lt;/li&gt;
&lt;li&gt;Avoiding curses, rolling boulders, and snakes&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;You'll learn how to navigate code, community, and culture in open source projects and learn skills that are useful in any legacy code base.&lt;/p&gt;</description>
        <persons>
          <person id="13">James Turnbull</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Saturday/Software_Archaeology_for_Beginners.webm">Video</link>
        </links>
      </event>
      <event id="1627">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>linux_tracing_with_lttng</slug>
        <title>Linux tracing with LTTng</title>
        <subtitle>The love of development without printf()</subtitle>
        <track>Tracing and debugging</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;In the past, a lot of effort has been invested in high performance kernel tracing tools, but now the focus of the tracing community seems to be shifting over to
efficient user space application tracing. By providing joint kernel and user space tracing, developers now have deeper insights into their applications. Furthermore, system administrators can now put in place a new way to monitor and debug systems using a low intrusiveness tracing system, LTTng.&lt;/p&gt;

&lt;p&gt;This presentation explains how LTTng can be used as a powerful development and debugging tool for user space applications taking advantage of this year's exciting new features such as network streaming and snapshots. It demonstrates how open source developers and hackers can use LTTng kernel and user space tracers to create powerful logging systems and easier debugging, thus greatly improving development and maintainability of their project(s).&lt;/p&gt;

&lt;p&gt;Finally, this talk concludes with the future work we will be doing on LTTng, and how the community can help with improving the project from feedback to very valuable contributions.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1496">David Goulet</person>
        </persons>
        <links>
          <link href="https://lttng.org">https://lttng.org</link>
          <link href="http://video.fosdem.org/2014/Janson/Saturday/Linux_tracing_with_LTTng.webm">Video</link>
        </links>
      </event>
      <event id="1630">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>making_the_linux_kernel_better</slug>
        <title>Making the Linux Kernel better (without coding)</title>
        <subtitle/>
        <track>Tracing and debugging</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;In this presentation, I want to show little-known mechanisms to add hardware support to the kernel at runtime, i.e. without recompiling. After this presentation, the Linux kernel will have gained support for a previously unsupported USB device (without having to write any code).&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Not everyone is interested in becoming a kernel developer or being able to write device drivers from scratch. Yet, there are a number of people who would like to help the kernel development "just a little bit". Yay, this is easily done!&lt;/p&gt;

&lt;p&gt;I aim to enable people to improve the kernel by adding support for previously unsupported hardware. How? Consumer hardware often shares a common core which is then simply re-branded by the actual vendor. This branding often includes changing the USB-ID or PCI-ID. A kernel developer can make a driver for that core, but will not be able to know all the incarnations of that device, i.e. all the IDs. This is where the community comes in. Having all kinds of hardware, people can add missing pieces to the puzzle.&lt;/p&gt;

&lt;p&gt;In this presentation, I want to show some little-known mechanisms to add hardware support to the kernel at run-time, i.e. without recompiling. For that, I will also present ways to effectively obtain the required information about hardware to be added. Finally, information is given how to report the findings.&lt;/p&gt;

&lt;p&gt;Intended audience: Everyone who is interested in kernel hacking is invited. Basic shell knowledge (sudo, echo) and ability to send e-mail are enough.&lt;/p&gt;</description>
        <persons>
          <person id="1002">Wolfram Sang</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Saturday/Making_the_Linux_Kernel_better_without_coding.webm">Video</link>
        </links>
      </event>
      <event id="1701">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>your_application_versus_gdb</slug>
        <title>Your Application versus GDB</title>
        <subtitle/>
        <track>Tracing and debugging</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;In recent years GDB has undergone a renaissance, adding Python scripting and other cool new features.  This talk will show you how to customize GDB for your application and your debugging needs.  We'll go into depth about pretty printing, stack trace filtering, and writing new commands; and will also discuss writing GUIs and other tools inside GDB.  Finally, we'll cover other interesting and useful GDB projects.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this talk we'll cover:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;A high-level overview of how GDB has modernized in the last few years&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Customizing GDB for your application, using Python:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Writing a pretty-printer&lt;/li&gt;
&lt;li&gt;Writing a stack trace ("frame") filter&lt;/li&gt;
&lt;li&gt;Writing new commands, functions and other goodies&lt;/li&gt;
&lt;li&gt;Cool use cases like built-in GUIs&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Other projects to help your debugging&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Scalability&lt;/li&gt;
&lt;li&gt;Local/remote feature parity&lt;/li&gt;
&lt;li&gt;C++ features&lt;/li&gt;
&lt;li&gt;Multi-inferior, multi-target debugging&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1585">Tom Tromey</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Saturday/Your_Application_versus_GDB.webm">Video</link>
        </links>
      </event>
      <event id="1673">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>who_ate_my_battery</slug>
        <title>Who ate my battery?</title>
        <subtitle>Why free and open source systems are solving the problem of excessive energy consumption. </subtitle>
        <track>Tracing and debugging</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Despite a decade of innovative development, and despite improvements in battery technology, a modern smartphone needs recharging far more often than its turn-of-the-century predecessor. Yet the blame cannot be laid at the door of hardware engineers; the problem lies in the software. Fortunately free and open source technology is racing to the rescue. With this talk we aim to promote energy efficiency to a first class software design goal.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Modern silicon chips are able use very little power. Multiple clock domains, clock gating and dynamic voltage and frequency control have all served to make modern hardware highly energy efficient. Yet all that can be destroyed by the software running on the chip. In this presentation we will look at how the entire software design process needs reworking to bring the software engineering team into low power design from day one. Central to this is the availability of good software development tool support, debug functionality, and energy transparency from hardware to software. We will explain why developers should consider energy consumption as a primary design goal for software, give an insight into how energy consumption of code can be measured and present some of the tools we are currently working on to enable more energy efficient software development.&lt;/p&gt;

&lt;p&gt;Open source is playing a central role in giving developers access to tools that enable energy efficient design. We will present details of MAGEEC, a UK government funded project to build the next generation of open source machine learning compilers, which will optimize for energy efficiency. We will present the compiler framework, and the energy measurement hardware, both of which are fully open source. We will also introduce the EU ENTRA project, which aims to promote energy aware system development by enabling energy transparency from the hardware to the software in a computer system. This will be achieved using advanced energy modelling and program analysis techniques to make predictions of energy usage available to the system developer and to the software engineering tool chain. We will present energy consumption analysis tools developed in the ENTRA project.&lt;/p&gt;

&lt;p&gt;The talk leads into the Energy Efficient Computing devroom happening on Sunday.&lt;/p&gt;</description>
        <persons>
          <person id="1569">Jeremy Bennett</person>
          <person id="1730">Kerstin Eder</person>
        </persons>
        <links>
          <link href="http://mageec.org/">MAGEEC project</link>
          <link href="http://entraproject.eu/">ENTRA project</link>
          <link href="http://video.fosdem.org/2014/Janson/Saturday/Who_ate_my_battery.webm">Video</link>
        </links>
      </event>
      <event id="2459">
        <start>17:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>the_fosdem_network</slug>
        <title>The FOSDEM network</title>
        <subtitle>What is NAT64 and DNS64; and why should you care?</subtitle>
        <track>IPv6</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;IPv4 has run out.&lt;/p&gt;

&lt;p&gt;This talk will show one of the cleanest, and future-proof, ways to enable legacy connections to the legacy IPv4 Internet while ensuring you, your hardware, and software, are ready for the technology of the year 1998 (seriously): IPv6&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="59">Andrew Yourtchenko</person>
          <person id="497">Richard Hartmann</person>
          <person id="2190">Peter Van Eynde</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Saturday/The_FOSDEM_network.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="K.1.105 (La Fontaine)">
      <event id="1639">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>an_introduction_to_sage</slug>
        <title>An Introduction to Sage</title>
        <subtitle/>
        <track>Mathematics</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Sage is an open source mathematical software system that is built on many components, such as Python, sympy, numpy, gap and scipy, and also brings along the power of the Python programming language. This talk will introduce cover some capabilities of Sage and enable participants to use Sage for their computation needs.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Sage is an open source mathematical software system that is built on many components, such as Python, sympy, numpy, gap and scipy, and also brings along the power of the Python programming language. It greatly augments the Python programming language with a rich set of libraries that enable number theoretic computations, differential and integral calculus, combinatorics, polynomials, matrix operations, cryptographic functions, 2D/3D plotting, etc. to be performed from Sage. Sage also uses iPython, a wonderful interactive shell for Python with features such as saving session history, autocomplete etc. Sage also has a notebook interface(with an authentication system) which enables users to collaborate with each other on Sage projects.&lt;/p&gt;

&lt;p&gt;It would be impossible to cover everything about Sage. I will try to cover some applications of Sage which will be useful to a majority of  people interested in using Python for mathematical computations.&lt;/p&gt;

&lt;p&gt;Below is a broad outline of the various topics I hope to cover.
1. Introduction: Modes, usage, customizing.
2. Arithmetic and built-in functions.
3. Algebra related functions.
4. Graph plotting.
5. Number theory.
6. Matrices.
7. Generating LaTeX representation of Sage code.
8. Calling Sage functions from LaTeX.
9. Writing Sage scripts.
10. Conclusion and further reading.&lt;/p&gt;</description>
        <persons>
          <person id="1523">Arvind S Raj</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K1105/Saturday/An_Introduction_to_Sage.webm">Video</link>
        </links>
      </event>
      <event id="1719">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>calc_gpu_enabling_a_spreadsheet</slug>
        <title>Calc: GPU enabling a spreadsheet</title>
        <subtitle>LibreOffice Calc - now available on your GPU</subtitle>
        <track>Mathematics</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Traditionally, LibreOffice has had an appallingly slow and
mis-architected spreadsheet core. Come and hear how we've re-designed
it to take advantage of the major wins possible with both GPU and CPU
parallelism, and extrapolate that to your application.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Traditionally, LibreOffice has had an appallingly slow and
mis-architected spreadsheet core. Come and hear how we've re-designed
it to take advantage of the major wins possible with both GPU and CPU
parallelism, and extrapolate that to your application. See how Calc
can now give you a real appreciation of what a teraflop of GPU
computing power can really do inside your workstation, and understand
how terrible things used to be.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Hear about the structural challenges that OpenCL and the GPU
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;brings, and how getting the underlying data structures and design
right is the key to better performance. Grasp how the next generation
of integrated CPU/GPU hardware with a Heterogenous System Architecture
starts to enable efficient crunching of huge data-sets.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;We'll also look at how we're starting to use threading to
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;speed up load/save not just in calc, but also in other parts of the
suite. I'll also showcase some of the latest improvements in our
FOSDEM release: LibreOffice 4.2.&lt;/p&gt;</description>
        <persons>
          <person id="425">Michael Meeks</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K1105/Saturday/Calc_GPU_enabling_a_spreadsheet.webm">Video</link>
        </links>
      </event>
      <event id="1770">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>dovecots_way_of_scaling_to_millions_of_users</slug>
        <title>Dovecot's way of scaling to millions of users</title>
        <subtitle/>
        <track>Mail</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Dovecot is an IMAP/POP3 server that can easily run in both tiny installations
and in installations with tens of millions of users. This talk explains some
methods and design decisions on how Dovecot nowadays does clustering, as well
as some problems found on the way there: Proxying, NFS issues, dsync
replication, caching, object storage.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="512">Timo Sirainen</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K1105/Saturday/Dovecots_way_of_scaling_to_millions_of_users.webm">Video</link>
        </links>
      </event>
      <event id="2196">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>postfix_lessons_learned_and_recent_developments</slug>
        <title>Postfix open source mail server - lessons learned and recent developments</title>
        <subtitle/>
        <track>Mail</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;In the 15 years since its initial release, the Postfix mail system has become a significant component of the email infrastructure. As the system became more feature-complete, the focus of development has moved towards making the system more extensible and more resilient in the face of changing threats. I will present lessons learned and recent developments, including some new features in this year's release.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1807">Wietse Venema</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K1105/Saturday/Postfix_open_source_mail_server_lessons_learned_and_recent_developments.webm">Video</link>
        </links>
      </event>
      <event id="2224">
        <start>17:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>mailpile</slug>
        <title>Mailpile</title>
        <subtitle/>
        <track>Mail</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Mailpile is the new kid on the block in the world of F/LOSS e-mail clients. This talk introduces Mailpile from a F/LOSS hacker's perspective, going briefly into the motivation of the project before delving into demos and technical implementation details.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Mailpile is a Free and Open Source Software e-mail client which raised over $163,000 USD last September (on IndieGoGo and Bitcoin) to support development of the first version of the software.&lt;/p&gt;

&lt;p&gt;Mailpile is built around a powerful search engine and uses web technology for the user interface, hoping to rival GMail and other popular web-mail services when it comes to both usability and speed. The project places a strong emphasis on privacy and decentralization and is integrating GPG encryption as a core feature of the user interface. Written in Python and using modern web technology for the user interface, Mailpile aims to very accesible and easy for F/LOSS hackers to tweak and explore.&lt;/p&gt;

&lt;p&gt;This talk will serve as an introduction both for potential end users and for folks interested in helping us reboot the world of Free Software e-mail.&lt;/p&gt;</description>
        <persons>
          <person id="2048">Bjarni Rúnar Einarsson</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K1105/Saturday/Mailpile.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.2215 (Ferrer)">
      <event id="2393">
        <start>12:55</start>
        <duration>00:05</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>lightning_talk_opening</slug>
        <title>Lightning Talks opening</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Opening of the Lightning Talks at FOSDEM14.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="16">Tias Guns</person>
          <person id="466">Alasdair Kergon</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Lightning_Talks_opening.webm">Video</link>
        </links>
      </event>
      <event id="1846">
        <start>13:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>you_os</slug>
        <title>Why You Should Be an Open Source Project</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;You are a collection of code. You’ve got your initial commit from your parents, the pull requests of childhood influences that they either rejected or accepted, and then you’ve got you, grown up project who can decide how you want to develop. (Pun fully intended.)&lt;/p&gt;

&lt;p&gt;How do you continue to develop, i.e. mature as a human being? You expose your code and accept pull requests. IRL, that means sharing your background (bugs and all) and integrating lessons from other people because it turns out the same things that make a good open source project make a good open source person. While you could certainly be a closed source project that doesn’t make any changes unless you see a clear benefit to you, that results in a life where you miss opportunities to better yourself simply due to someone believing you can be better.&lt;/p&gt;

&lt;p&gt;This talk will take the criteria that make a good open source project and explore how they can be applied to being a good "open source person."&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1598">Carol Huang</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Why_You_Should_Be_an_Open_Source_Project.webm">Video</link>
        </links>
      </event>
      <event id="1957">
        <start>13:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>entangle</slug>
        <title> Entangle: Tethered Camera Control &amp; Capture</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Entangle is an open source project that provides a Linux desktop application for “tethered shooting”. It uses the ligphoto2 library to trigger the camera shutter, preview shots via the camera's "live view" capability, download captured images and access all the live camera settings. It is useful for a variety of use cases including studio model shoots, macro still life, stop motion animation shoots, astro-photography and more.&lt;/p&gt;

&lt;p&gt;The talk will be targeted at Linux users &amp;amp; developers who are photographers interested in any of the aforementioned use cases.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The talk will provide an overview of the important capabilities of the program and, if all goes to plan, a live demonstration of the application in use.&lt;/p&gt;

&lt;p&gt;The aim is to demonstrate the potential of the application to users who are not already aware of its existence, and attract open source developers to contribute to the project.&lt;/p&gt;</description>
        <persons>
          <person id="623">Daniel Berrange</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Entangle_Tethered_Camera_Control_Capture.webm">Video</link>
        </links>
      </event>
      <event id="1865">
        <start>13:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>tozen_home</slug>
        <title>How to Build a Tizen Device at Home?</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;DIY: Build Linux kernel and Tizen platform image from scratch; create an open-source hardware device powered by SoC with Allwinner processors and boot Tizen on it.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Tizen is an open source Linux-based software platform for multiple device categories such as smartphones, tablets, personal computers, in-vehicle infotainment devices and smart TVs. Tizen is registered trademark of the Linux Foundation and it is governed by a Technical Steering Group composed by Samsung, Intel and other industry-leading companies.&lt;/p&gt;

&lt;p&gt;Sunxi represents the family of ARM System on Chip (SoC) devices with Allwinner A10, A10s, A13, A20 and A31 processors. A variety of devices on the market relies on Allwinner ARM processors. Among them are the popular open-source hardware development boards OLinuXino which are designed and manufactured by Olimex as well as Cubieboard by cubieTech.&lt;/p&gt;

&lt;p&gt;The talk will discuss the status of Tizen-sunxi - a community-driven project for porting Tizen to Allwinner devices as well as building a Tizen device based on open-source hardware components. The following topic will be briefly covered:
* Assembling Tizen device using open-source components
* Building Linux-sunxi and u-boot boot loader from scratch
* Building Tizen platform image from scratch using GBS (git-build-system)
* Preparing bootable Tizen microSD card
* Booting Tizen and debugging through UART0&lt;/p&gt;

&lt;p&gt;YouTube video of a homemade Tizen tablet: http://youtu.be/vMQmf4hype4&lt;/p&gt;</description>
        <persons>
          <person id="1603">Leon Anavi</person>
        </persons>
        <links>
          <link href="https://github.com/leon-anavi/tizen-sunxi">Tizen-sunxi</link>
          <link href="https://github.com/linux-sunxi/linux-sunxi">Linux-sunxi</link>
          <link href="http://linux-sunxi.org/Main_Page">Linux-sunxi Wiki</link>
          <link href="https://www.tizen.org/">Tizen Project</link>
          <link href="https://wiki.tizen.org/">Tizen Wiki</link>
          <link href="https://wiki.tizen.org/wiki/Tizen_IVI_Getting_Started_Guide_For_PandaBoard">Tizen IVI Getting Started Guide For PandaBoard</link>
          <link href="https://source.tizen.org/documentation/articles/creating-tizen-platform-image-scratch-through-local-build">Creating a Tizen Platform Image from Scratch through Local Build</link>
          <link href="https://developer.tizen.org/help/topic/org.tizen.platform.development/html/platform_dev_env/git_build_system.htm">Git Build System</link>
          <link href="https://www.youtube.com/watch?v=vMQmf4hype4">Video: Tizen-sunxi: Tizen 2.0 on A10S-OLinuXino-MICRO </link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/How_to_Build_a_Tizen_Device_at_Home.webm">Video</link>
        </links>
      </event>
      <event id="1768">
        <start>14:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>armstrong</slug>
        <title>Armstrong - Music with the Arduino</title>
        <subtitle>No shields required!</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Generating music from an Arduino usually needs a shield. And shields cost money. This talk introduces a project that makes it free and easy to play sound without a shield, nor a knowledge of musical theory.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;We shall introduce a number of projects that make the Arduino make noises, other than the squeaks of the example code. This includes the new library, Armstrong, which supports various methods of playing music, along with MIDI functionality, all from a vanilla Arduino.&lt;/p&gt;</description>
        <persons>
          <person id="392">Steven Goodwin</person>
        </persons>
        <links>
          <link href="http://marquisdegeek.com/code_armstrong.php">Main code site</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Armstrong_Music_with_the_Arduino.webm">Video</link>
        </links>
      </event>
      <event id="1745">
        <start>14:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>olinuxino</slug>
        <title>Do It Yourself OSHW Linux Computer</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;OLinuXino is Open Source Hardware Linux Computer with ARM processor, this allow people to learn, explore, modify and customize the boards for their own needs and projects. We will demonstrate how easy is to make your own Linux computer based on OLinuXino design.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1641">Tsvetan Usunov</person>
        </persons>
        <links>
          <link href="https://github.com/OLIMEX/OLINUXINO">CAD sources</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Do_It_Yourself_OSHW_Linux_Computer.webm">Video</link>
        </links>
      </event>
      <event id="1875">
        <start>14:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>bareos</slug>
        <title>Open Source Backup: from Bacula to Bareos</title>
        <subtitle>Forking to develop new features and reanimate the community</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Bareos is a reliable network open source software to backup, archive and restore files from all major operating systems. The fork was founded 2010 out of the Bacula project. The fork has been actively developed and many new features have been added.
This talk explains the reason for the fork highlights some new features and show community participation options.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Today Bareos comes with LTO hardware encryption, bandwidth limitation and handy new console commands, among other new features. The source is available on Github and is licensed with AGPLv3. There are ready to install repositories for all major Linux distributions and windows installer packages.&lt;/p&gt;

&lt;p&gt;Bareos was inspired by the idea to reanimate the Bacula community, in order to pursue development of new capabilities and sustainable ensure it's open source character. Today Bareos is a transparent, high quality open source solution, which is the only one with a comprehensive multi-level support, provided by trained and certified open source professionals.&lt;/p&gt;

&lt;p&gt;The presentation will have the following subjects:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open source evolution: reasons for forking and speed up development&lt;/li&gt;
&lt;li&gt;Some new feature highlights, like passive clients to ease backup of DMZ clients, transparent backup replication 'Backup to disk to cloud', hardware encryption.&lt;/li&gt;
&lt;li&gt;Stringent open source strategy&lt;/li&gt;
&lt;li&gt;How to participate&lt;/li&gt;
&lt;/ol&gt;
</description>
        <persons>
          <person id="2100">Philipp Storz</person>
        </persons>
        <links>
          <link href="http://www.bareos.org">Bareos Community Page</link>
          <link href="http://www.admin-magazine.com/Articles/Free-Enterprise-Backup-with-Bareos">Bacula / Bareos Article in the ADMIN Magazine</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Open_Source_Backup_from_Bacula_to_Bareos.webm">Video</link>
        </links>
      </event>
      <event id="2039">
        <start>15:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>kernel_llvm</slug>
        <title>The Linux kernel on dragon wings</title>
        <subtitle>Compiling the Kernel with LLVM/clang</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Jan-Simon Möller will introduce the audience to the LLVMLinux project which goal is to compile the Linux kernel with the compiler tools provided by the LLVM project (clang). He will talk about the steps needed to compile the Kernel itself, the issues found during this endeavour and the status of upstreaming the patches to the Kernel and the LLVM project.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1318">Jan-Simon Möller</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/The_Linux_kernel_on_dragon_wings.webm">Video</link>
        </links>
      </event>
      <event id="1883">
        <start>15:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>syscall</slug>
        <title>Software engineering tools based on syscall instrumentation</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;In this lightning talk, we would like to share our experiences
regarding a couple of software engineering tools we wrote.  Those are
all based on syscall instrumentation, and they are daily used in an
industrial environment:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;PRoot is initially a user-mode implementation of some kernel
features: chroot, mount --bind, binfmt&lt;em&gt;misc, ...  Its original
purpose is to build and to validate programs on systems that are
supposed to be not compatible (distro, kernel, CPU, ...).  PRoot
does not require any privileges since it relies only on ptrace,
process&lt;/em&gt;vm_[read|write]v, and seccomp-filter to observe and modify
syscalls between programs and the kernel.  With time, PRoot has
become a generic Linux process instrumentation engine, used by the
two following tools.&lt;/p&gt;

&lt;p&gt;-- http://proot.me, GPLv2+&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;CARE -- short for "Comprehensive Archiver for Reproducible
Executions" -- creates automatically an archive that contains all
the material required to re-execute the monitored programs in their
original context (environment, files, expected kernel features,
...).  CARE is typically useful to get reliable bug reports,
demonstrations, academic experiences, tutorials, ...&lt;/p&gt;

&lt;p&gt;-- http://reproducible.io, GPLv2+&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;DepsTracker observes the execution of any processes in order to
compute their mutual dependencies with respect to the file-system.
It is currently used to re-generate highly parallel build-systems
that are then dispatched by another tool on build-farms, in order
to find the best performance by brute-forcing compiler internal
configuration.&lt;/p&gt;

&lt;p&gt;-- not published publicly, GPLv2+&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
</abstract>
        <description></description>
        <persons>
          <person id="1749">Cédric Vincent</person>
        </persons>
        <links>
          <link href="http://proot.me">PRoot homepage</link>
          <link href="http://reproducible.io">CARE homepage</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Software_engineering_tools_based_on_syscall_instrumentation.webm">Video</link>
        </links>
      </event>
      <event id="1895">
        <start>15:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>listaller</slug>
        <title>Listaller</title>
        <subtitle>A simple and secure way to distribute 3rd-party applications</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Listaller is a new approach for making 3rd-party software installations on Linux possible, without interfering with the native package manager.
Listaller's primary focus is system-integration, so users will not notice that they are using the tool, as it integrates with existing PackageKit-based software management frontends.
The installer also contains a new approach to dependency-handling, and makes use of existing specifications, such as AppStream.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Software management on Linux is traditionally done using packages, although Linux desktop users are more interested in applications instead and do not care much about how something is packaged.
Also, users often want to install software which is not available in the repositories (e.g. new applications or new versions of them), without having to upgrade the whole distribution.
Listaller extends the package manager with the ability to install 3rd-party applications. It is built on top of the AppStream specs and PackageKit and focuses on system-integration. This means no additional UI must be added in order to install applications packages using Listaller. Listaller apps can be managed using existing tools like GNOME-Software or Apper.
Because software from 3rd-party sources is a potential security risk, Listaller also tries to give users a hint if they can trust a certain application, and makes it possible to run these applications in a sandbox automatically.
For developers, it contains some helper tools to make applications work on multiple distributions.&lt;/p&gt;</description>
        <persons>
          <person id="1475">Matthias Klumpp</person>
        </persons>
        <links>
          <link href="http://listaller.tenstral.net">http://listaller.tenstral.net</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Listaller.webm">Video</link>
        </links>
      </event>
      <event id="1854">
        <start>16:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>sozi</slug>
        <title>An overview of Sozi</title>
        <subtitle>SVG-based zooming presentation software</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Initially inspired by the proprietary software Prezi, &lt;a href="http://sozi.baierouge.fr"&gt;Sozi&lt;/a&gt; is a free and open-source "zooming presentation" tool based on open standards.
This talk will expose the general concepts of Sozi and how it benefits from the use of open standards, from a user's as well as a developer's point of view.
We will give an overview of the current status of the project and the expected future developments.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Over the last few years, several presentation tools have emerged that provide alternatives to the traditional desktop slideshow software.
Some of them, like reveal.js, allow to create slideshows using web standards such as HTML5, CSS3 and JavaScript.
Others, like the proprietary software Prezi, have set a new paradigm based on a sequence of camera movements (translations, zooms, rotations) over a single, unlimited canvas where all the visual content of your document is laid out.&lt;/p&gt;

&lt;p&gt;Initially inspired by Prezi, &lt;a href="http://sozi.baierouge.fr"&gt;Sozi&lt;/a&gt; is a free and open-source "zooming presentation" tool based on open standards.
A Sozi presentation is an SVG document augmented with presentation data and a player script in JavaScript.
As a consequence, such a document can be played directly by any standards-compliant web browser without the need to install a plugin or a specific viewing software.
For presentation creators, we have chosen to build the Sozi editor as an extension to the free SVG editor Inkscape.
Sozi is open to contributions: volunteers have provided translations to 8 languages, others have created packages for several widely-used GNU/Linux distributions.&lt;/p&gt;

&lt;p&gt;While the tool is used on a daily basis by teachers and researchers, several issues prevent a wider adoption:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On the editor side, the usability of the user interface needs to be improved but is constrained by the Inkscape extension system.&lt;/li&gt;
&lt;li&gt;No one has volunteered to create installers for Windows and OS X, so users of these operating systems must install all dependencies manually.&lt;/li&gt;
&lt;li&gt;On the player side, poor SVG rendering performance in some browsers can make the animations jerky for complex documents that contain gradients and bitmap images.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;To address the first two issues, we consider the possibility to create a new editor using web technologies.
The current form-based UI would be replaced by direct manipulation and live preview, allowing significant improvement of the user experience.
Moreover, the use of JavaScript would allow to share code between the editor and the player.&lt;/p&gt;

&lt;p&gt;However, while Sozi has been mostly the work of a single developer working on his spare time, creating a new editor and integrating new features will require the constitution of a real development team.&lt;/p&gt;</description>
        <persons>
          <person id="1746">Guillaume Savaton</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/An_overview_of_Sozi.webm">Video</link>
        </links>
      </event>
      <event id="1896">
        <start>16:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>mate</slug>
        <title>MATE Desktop</title>
        <subtitle>The continuation of GNOME 2 </subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;MATE Desktop is a fork of GNOME 2. It provides an intuitive and attractive desktop to Linux users using traditional metaphors.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;MATE Desktop is a fork of GNOME 2. It provides an intuitive and attractive desktop to Linux users using traditional metaphors.
The talk introduces MATE to those who haven't heard of it, explains the reasons of its birth, explains the difference with GNOME Classic and GNOME Flashback sessions, describes the features and changes added after the fork and shows the current roadmap for the future versions.&lt;/p&gt;</description>
        <persons>
          <person id="1798">Stefano Karapetsas</person>
        </persons>
        <links>
          <link href="http://mate-desktop.org">MATE official website</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/MATE_Desktop.webm">Video</link>
        </links>
      </event>
      <event id="1830">
        <start>16:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>doudoulinux</slug>
        <title>Discover DoudouLinux live!</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;DoudouLinux is a computer environment focussed on children fulfillment, ease of use, security and mastering digital tools. DoudouLinux want to compete with gaming consoles, TV and tablets, as early as 2 years old. After few explanations about the project itself, a live demonstration will show you how it is designed, its functionnalities and the proposed activities.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;DoudouLinux is a community initiative dedicated at giving children digital tools favoring self-fulfillment and not alienating, as well as the desire to take back full control over the digital tools that will shape their future. By placing children and parents at the center of the project concerns, DoudouLinux stresses ease and pleasure of use, security or even absolute respect of privacy. DoudouLinux wants to show children the best information technologies, in full confidence.&lt;/p&gt;

&lt;p&gt;With more than 75 applications that cover education, creative activities, entertainment and culture, DoudouLinux give children the opportunity to discover many facets of computers in order to stimulate their curiosity, their learning potential and their creativity. Its interface, rethought from ground up, targets the simplicity of a gaming console without sacrificing essential functions. Come and discover it live!&lt;/p&gt;

&lt;p&gt;With a wealth of more than 100 contributors, DoudouLinux is being translated into more than 40 languages and its website saw more than 400.000 visitors coming from the 4 corners of the world since the beginning. After 3 years of existence, the pedagogical usefulness of DoudouLinux is approved by teachers since it is already in use in many nursery schools. Nevertheless the project is still starting out and bursting with ideas that just need new contributors to come to life!&lt;/p&gt;</description>
        <persons>
          <person id="1742">Jean-Michel Philippe</person>
        </persons>
        <links>
          <link href="http://www.doudoulinux.org/">website</link>
          <link href="http://www.doudoulinux.org/web/english/tell-the-world/promotional-material/presentations-201/article/rmll-2013.html">RMLL 2013 presentation</link>
          <link href="http://www.doudoulinux.org/web/english/tell-the-world/promotional-material/presentations-201/article/debconf-2013.html">DebConf 2013 talk</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Discover_DoudouLinux_live.webm">Video</link>
        </links>
      </event>
      <event id="1872">
        <start>17:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>mykolab</slug>
        <title>MyKolab.com: Free Software to the Rescue</title>
        <subtitle>Business collaboration platform turned privacy asylum</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;MyKolab.com was originally announced for FOSDEM 2013 and saw great response from many people in the community. Planned as an enterprise platform for SMEs as well as collaboration platform for people who prefer to be customers, not products, its focus saw a dramatic shift when Edward Snowden released the PRISM revelations. Georg Greve will share the story on what's behind MyKolab, how it is part of the Free Software ecosystem by design, and how the team experienced the months of ever-new revelations that brought lawyers, journalists and many others into the platform.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1779">Georg Greve</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/MyKolabcom_Free_Software_to_the_Rescue.webm">Video</link>
        </links>
      </event>
      <event id="1908">
        <start>17:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>jitsi</slug>
        <title>Jitsi Videobridge and WebRTC</title>
        <subtitle>The life of a rich communications client in Webland</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract></abstract>
        <description></description>
        <persons>
          <person id="1107">Emil Ivov</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Jitsi_Videobridge_and_WebRTC.webm">Video</link>
        </links>
      </event>
      <event id="1700">
        <start>17:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>vmux</slug>
        <title>VMUX: P2P plugin-free videocalls in your browser</title>
        <subtitle>WebRTC powered videocalls</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract></abstract>
        <description></description>
        <persons>
          <person id="1584">Mauro Pompilio</person>
        </persons>
        <links>
          <link href="http://vmux.co">http://vmux.co</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/VMUX_P2P_pluginfree_videocalls_in_your_browser.webm">Video</link>
        </links>
      </event>
      <event id="1887">
        <start>18:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>opensips</slug>
        <title>Distributed VoIP Platforms</title>
        <subtitle>OpenSIPS at the core of a distributed and fully redundant VoIP platform</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;As any other production environments, in order to maximize availability, VoIP platforms have to be fault tolerant. This presentation focuses on solving the various VoIP distribution and replication issues by using the latest additions in the OpenSIPS SIP Proxy.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;OpenSIPS (Open SIP Server) is a mature Open Source implementation of a SIP server. As a SIP proxy/router, is the core component of any SIP-based VoIP solution. With a very flexible and customizable routing engine, OpenSIPS unifies voice, video, IM and presence services in a highly efficient way, thanks to its scalable (modular) design.&lt;/p&gt;

&lt;p&gt;When talking about a large number of customers / calls, using a distributed architecture is a natural way to go. First, you would want to cover the entire map in order to provide the best quality everywhere to the customers. Secondly, you would want to have multiple points of presence in order to be able to spread the load from the global pool of customers. Last but not least, redundancy is a mandatory requirement for any VoIP platform, both within the same Point of Presence, and also at a geographically distributed level.&lt;/p&gt;

&lt;p&gt;The latest additions in OpenSIPS make it an excellent choice for the core server of a distributed and highly available VoIP platform. OpenSIPS has support for a large variety of NoSQL backends that can be used to share data between different OpenSIPS instances ( MongoDB, Cassandra, CouchBase ). Furthermore, several mechanisms are in place that allow for real-time call information replication between two or more OpenSIPS servers, allowing for hot backups to be deployed, which ensure instant call recovery in case of failures, with 0 down time.&lt;/p&gt;</description>
        <persons>
          <person id="1789">Vlad Paiu</person>
        </persons>
        <links>
          <link href="http://opensips.org">OpenSIPS Official Website</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Distributed_VoIP_Platforms.webm">Video</link>
        </links>
      </event>
      <event id="1843">
        <start>18:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>upipe</slug>
        <title>Upipe video pipelines for multimedia transcoders, streamers and players</title>
        <subtitle>Flexible data flow framework</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Upipe is a brand new flexible dataflow framework. It is primarily designed to be the core of a multimedia player, transcoder or streamer. The framework organizes the processing of incoming data in buffers inside a pipeline of modules. It exposes core types for buffers and modules (called "pipes"), and the API for communication between pipes and between the application and pipes. This presentation will show how developers can take advantage of Upipe to build complex processing pipelines.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1754">Christophe Massiot</person>
        </persons>
        <links>
          <link href="http://upipe.org/">Upipe website</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Upipe_video_pipelines_for_multimedia_transcoders_streamers_and_players.webm">Video</link>
        </links>
      </event>
      <event id="1889">
        <start>18:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>meteor</slug>
        <title>Social and Real-time Web Applications using Meteor</title>
        <subtitle>Developing Real-time Web Apps in JavaScript on Linux</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;In this lightning talk, I'll give a quick introduction to and an overview of key concepts of Meteor, followed by live examples on how to go about creating and deploying your very own purely JavaScript-based reactive and real-time web apps.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Making reactive and real-time web applications is in fashion these days. Among popular real-time programming frameworks is meteor.js. Meteor is an open-source platform for building top-quality web apps in a fraction of the time. Meteor is based on the popular server-side JavaScript framework node.js, and relies on the easy, fast and scalable MongoDB for data storage.&lt;/p&gt;

&lt;p&gt;Meteor gives developers the opportunity to create quality web apps completely in JavaScript. For existing web developers, this is nothing short of pure awesomeness. For others, creating new apps is simple because of the easy-to-learn language that is JavaScript. Meteor comes with a rich set of API and utilities that help in creating, bundling and deploying apps in a few keystrokes.&lt;/p&gt;

&lt;p&gt;Meteor is maintained by an active lot of developers and contributors. As its official site mentions, "Meteor is still a work in progress", but that hasn't stopped it from attracting a lively community around it. The idea of using the meteor.js framework for building that app came from my mentor who had then recently given a presentation on it at an event. Awed by the concept of reactivity, a rich API and the power of MongoDB, I fell in love with Meteor pretty quickly.&lt;/p&gt;

&lt;p&gt;In this session, I will quickly delve into:
* introduction
* key concepts
* creating your first app
* making your app reactive
* deploying your app (taking it live)&lt;/p&gt;</description>
        <persons>
          <person id="1795">Anurag Bhandari</person>
        </persons>
        <links>
          <link href="http://meteor.com/">Meteor homepage</link>
          <link href="http://docs.meteor.com/">Meteor API and docs</link>
          <link href="https://www.meteor.com/examples/parties">Meteor sample app (Parties)</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Saturday/Social_and_Realtime_Web_Applications_using_Meteor.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="UD2.120 (Chavanne)">
      <event id="2057">
        <start>11:00</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas02</slug>
        <title>Unified Cloud Storage with Synnefo + Ganeti + Archipelago + Ceph</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk presents Synnefo's evolution since FOSDEM '13, focusing on its integration with Ganeti, Archipelago, and Ceph to deliver a unified, scalable storage substrate for IaaS clouds.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The talk will begin with an overview of the Synnefo architecture (Python,
Django, Ganeti, and Xen or KVM). Then, it will introduce Archipelago, a
software-defined, distributed storage layer that decouples Volume and File
operations/logic from the underlying storage technology, used to store the
actual data. Archipelago provides a unified way to provision, handle and
present Files, Images, Volumes and Snapshots independently of the storage
backend. We will focus on using Ceph/RADOS as a backend for Archipelago.&lt;/p&gt;

&lt;p&gt;With Archipelago and its integration with Synnefo and Ganeti one can:
* maintain commonly-used data sets as snapshots and attach them as read-only
disks or writeable clones in VMs running the application,
* begin with a base OS image, bundle all application and supporting
library code inside it, and upload it to the Archipelago backend in a
syncing, Dropbox-like manner,
* start a parallel HPC application in hundreds of VMs, thinly provisioned
from this Image,
* modify the I/O processing pipeline to enable aggressive client-side
caching for improved number of IOPS,
* create point-in-time snapshots of running VM disks,
* share snapshots with other users, with fine-grained Access Control Lists,
* and sync them back to their PC for further processing.&lt;/p&gt;

&lt;p&gt;The talk will include a live demonstration of a workflow including
this functionality in the context of a large-scale public cloud.&lt;/p&gt;

&lt;p&gt;The intended audience spans from enterprise users comparing cloud platforms, to developers who wish to discover a different design approach to IaaS clouds and storage virtualization.&lt;/p&gt;

&lt;p&gt;Please see the abstract above for a rough sketch of the proposed presentation.
The presentation will mostly consist of live demonstration and a small deck of slides,
meant to describe the main features of Archipelago and its integration with Synnefo,
as well as provoke discussion in the Q&amp;amp;A session.&lt;/p&gt;

&lt;p&gt;The main workflow in the demonstration will be [copied and pasted from the Abstract]:
* begin with a base OS image, bundle all application and supporting
library code inside it, and upload it to the Archipelago backend in a
syncing, Dropbox-like manner,
* start a parallel HPC application in hundreds of VMs, thinly provisioned
from this Image,
* modify the I/O processing pipeline to enable aggressive client-side
caching for improved number of IOPS,
* create point-in-time snapshots of running VM disks,
* share snapshots with other users, with fine-grained Access Control Lists,
* and sync them back to their PC for further processing.&lt;/p&gt;</description>
        <persons>
          <person id="1043">Vangelis Koukis</person>
        </persons>
        <links>
          <link href="http://www.synnefo.org">Synnefo site</link>
          <link href="http://okeanos.grnet.gr">The ~okeanos service, powered by Synnefo</link>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/Unified_Cloud_Storage_with_Synnefo_Ganeti_Archipelago_Ceph.webm">Video</link>
        </links>
      </event>
      <event id="2045">
        <start>11:40</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas03</slug>
        <title>Dual-Android on Nexus 10 using XEN</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Samsung will present the challenges of creating a dual-Android platform on the Nexus 10 (Cortex A15 based) using Xen on ARM.
Samsung has been endeavoring to run XEN on ARM based mobile devices using para-virtualization for CortexA9 devices earlier and now with virtualization extensions on cortexA15 devices.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The primary end user use case is BYOD(Bring Your Own Device), where two isolated OSs run simultaneously. One OS would be “personal” OS and the other a “work” OS.  The user experience should not deteriorate in either of the OSs and GPU is the biggest hurdle in achieving this. Samsung would present its approach in virtualization of the GPU within the context of XEN and discuss the challenges encountered in achieving a good FPS(frames per second) in both OSs (two Androids in this case).&lt;/p&gt;

&lt;p&gt;The main points would be stress the following points
* Virtualization on mobile devices and user experience importance for its success.
* GPU virtualization is achievable with very good performance using XEN.
* XEN and open source collaboration from Samsung.
* Paravirtualization cahllenges of IO/peripheral devices on a typical Mobile device with virtualization extension support for CPU and Memory.&lt;/p&gt;</description>
        <persons>
          <person id="1850">Srinivas Kalaga</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/DualAndroid_on_Nexus_10_using_XEN.webm">Video</link>
        </links>
      </event>
      <event id="1820">
        <start>12:20</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas04</slug>
        <title>Autoscaling best practices</title>
        <subtitle>How did we survive the peak</subtitle>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will cover the basics of autoscaling, different types of auto-scaling, and how you can use your metrics to take good auto-scaling decisions.
Targeted to entry level to mid level auto-scaling users.&lt;/p&gt;</abstract>
        <description>&lt;ul&gt;
&lt;li&gt;What is autoscaling&lt;/li&gt;
&lt;li&gt;Different kinds of traffic peak scenarios&lt;/li&gt;
&lt;li&gt;Autoscaling reactive vs proactive&lt;/li&gt;
&lt;li&gt;Autoscaling with external tools - Rightscale, Autoscale API, Heat, Ceilometer&lt;/li&gt;
&lt;li&gt;Autoscaling with your metrics - Graphite, Provisioning, Configuration Management&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1729">Marc Cluet</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/Autoscaling_best_practices.webm">Video</link>
        </links>
      </event>
      <event id="1752">
        <start>13:00</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas05</slug>
        <title>Network Function Virtualization and Network Service Insertion and Chaining</title>
        <subtitle>OpenStack for NFV and SDN</subtitle>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Network Function Virtualization and Network Service Insertion and Chaining has several advantages like reducing the CAPEX and OPEX along with ease of use for Network Services deployment. In this session we describe how these dynamic network service requirements can be handled using KVM, libvirt and Openstack. They can understand how virtualization can be used for designing systems for data centre environment. Basic knowledge of virtualization would be helpful while attending the session.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Key Goals for this Talk:&lt;/p&gt;

&lt;p&gt;i)Deployment of Network Function Virtualization using OpenStack and OpenFlow Controller in DC networks.
ii) Network Service Insertion and Chaining Deployment using OpenStack
iii) NFV using KVM Hypervisor and Libvirt, Improvements for NFV performance.
iv)Cloud Resource Discovery Service for NFV deployments with OpenStack and OpenFlow Controller
v) Advantages of NFV and Network Service Insertion and Chaining using OpenStack.&lt;/p&gt;</description>
        <persons>
          <person id="1494">Balaji Padnala</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/Network_Function_Virtualization_and_Network_Service_Insertion_and_Chaining.webm">Video</link>
        </links>
      </event>
      <event id="2055">
        <start>13:40</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas06</slug>
        <title>oVirt and OpenStack Storage (present and future)</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This session will cover the current status of integration between oVirt and the OpenStack image repository (Glance), analyzing the motivations, the low level implementation (including Keystone authentication), and ideas for the future. This presentation will include also an ample part dedicated to the future work and ideas to introduce the integration with Cinder (the OpenStack volume manager).&lt;/p&gt;</abstract>
        <description>&lt;ul&gt;
&lt;li&gt;Introduction to oVirt Storage Architecture&lt;/li&gt;
&lt;li&gt;Glance Integration Motivations&lt;/li&gt;
&lt;li&gt;Glance Integration Deep Dive&lt;/li&gt;
&lt;li&gt;Ideas and Future Work on Glance Integration&lt;/li&gt;
&lt;li&gt;Future Integration with Cinder&lt;/li&gt;
&lt;li&gt;Roadmap&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="620">Federico Simoncelli</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/oVirt_and_OpenStack_Storage_present_and_future.webm">Video</link>
        </links>
      </event>
      <event id="1842">
        <start>14:20</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas07</slug>
        <title>New Developments and Advanced Features in the Libvirt Management API</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Topics to be covered in the talk include&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Capabilities for mutual exclusion / locking of guest disk images&lt;/li&gt;
&lt;li&gt;Fine grained access control against individual operations, users and objects in the API&lt;/li&gt;
&lt;li&gt;The sVirt mandatory access control framework&lt;/li&gt;
&lt;li&gt;Auditing and structured logging via the systemd journal&lt;/li&gt;
&lt;li&gt;Integration with systemd and cgroups for resource management&lt;/li&gt;
&lt;/ul&gt;
</abstract>
        <description>&lt;p&gt;In the 8+ years since it has been founded, the libvirt project has grown to become the leading open source API for the management of virtualization hosts, with a strong focus on supporting the open source virtualization &amp;amp; container technologies, KVM, QEMU, Xen and LXC. Many people working in the open source virtualization management space already have an understanding of the core features and architecture of libvirt. This talk will thus focus on a selection of recently developed features and of some of the other important, but less well known, features of libvirt.&lt;/p&gt;

&lt;p&gt;The talk will be targeted at virtualization application developers using libvirt, with a bias towards those using KVM or LXC. At the end of the talk the audience will better understand how to take advantage of libvirt for their development needs.&lt;/p&gt;</description>
        <persons>
          <person id="623">Daniel Berrange</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/New_Developments_and_Advanced_Features_in_the_Libvirt_Management_API.webm">Video</link>
        </links>
      </event>
      <event id="1941">
        <start>15:00</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas08</slug>
        <title>Why, Where, What and How to contribute to OpenStack</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk should appeal to curious developers interested in learning about OpenStack development and why contributing to it is a smart, interesting, and simple move. Although familiarity with open source development is assumed, no previous knowledge of OpenStack itself is necessary.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;OpenStack is a software stack written in Python that you can use to deploy public and private "Infrastructure as a service" providers, potentially at massive scale. This talk will look into why contributing to OpenStack should be interesting to you personally, where in the various pieces and teams of OpenStack you should consider helping, what various shapes your contribution to OpenStack may take, and finally deep dive in the details of our development infrastructure and how you can actually make your first contribution.&lt;/p&gt;</description>
        <persons>
          <person id="427">Thierry Carrez</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/Why_Where_What_and_How_to_contribute_to_OpenStack.webm">Video</link>
        </links>
      </event>
      <event id="2041">
        <start>15:40</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas09</slug>
        <title>Foreman Project</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Foreman is a complete lifecycle management tool for virtual, cloud, and physical servers. Through deep integration with configuration management, infrastructure services, and PXE and Image-based unattended installations, Foreman manages every stage of the lifecycle of your servers. Foreman provides comprehensive, auditable interaction facilities including a web frontend and robust, RESTful API.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Managing what actually runs on your instances could at times be tricky in large dynamic environments, in this talk, we'll introduce Foreman which can help managing your datacenter and cloud infrastructure, making it a perfect hybrid cloud management tool.&lt;/p&gt;

&lt;p&gt;Foreman is a life cycle management tool for servers, helping to provision (integrates with many virt and cloud providers - openstack/ovirt/libvirt/ec2/gce/rackspace etc) and to define their purpose in life, their content (e.g. package versions, configuration etc) on an ongoing basis.&lt;/p&gt;

&lt;p&gt;Foreman is already 4+ years old, and deployed at many small and large scale organizations, and is a used in distributions such as RDO and RHOS (redhat version of openstack distribution).&lt;/p&gt;

&lt;p&gt;Foreman provides comprehensive, auditable interaction facilities including a web frontend robust RESTful API and CLI, which makes building higher level business logic on top.&lt;/p&gt;

&lt;p&gt;With Foreman you could:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Discover, Provision and upgrade your entire baremetal infrastructure (e.g. build up an openstack cluster or your favorite pets)&lt;/li&gt;
&lt;li&gt;Create and Manage instances across baremetal/virt/cloud infrastructure (openstack/ovirt/libvirt/ec2/gce/rackspace etc).&lt;/li&gt;
&lt;li&gt;Group your hosts and manage them in bulks regardless of location&lt;/li&gt;
&lt;li&gt;Review historical changes and stuff to look at when something goes wrong&lt;/li&gt;
&lt;li&gt;Extend as needed via a robust plugin architecture.&lt;/li&gt;
&lt;li&gt;Automatically build images(on each platform) per system definition to optimize deployment.&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="114">Ohad Levy</person>
        </persons>
        <links>
          <link href="http://theforeman.org">Foreman website</link>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/Foreman_Project.webm">Video</link>
        </links>
      </event>
      <event id="2117">
        <start>16:20</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas99</slug>
        <title>OSv, a New Operating System Designed for the Cloud</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;OSv is a new open source operating system for the cloud. It is designed to run a single application per virtual machine and its tuned for applications running under the Java virtual machine.&lt;/p&gt;

&lt;p&gt;In this talk, we will introduce OSv, showcase its architecture, and explain performance and application management improvements. We will also talk about OSv specific improvements to the JVM that improve application performance in virtualized environments.&lt;/p&gt;

&lt;p&gt;Operating system developers, as well as application developers who deploy to the cloud, may enjoy the talk. No special expertise is required.&lt;/p&gt;</abstract>
        <description>&lt;ul&gt;
&lt;li&gt;Why do we need a Cloud Operating System?&lt;/li&gt;
&lt;li&gt;OSv design overview&lt;/li&gt;
&lt;li&gt;JVM optimizations for OSv and the cloud&lt;/li&gt;
&lt;li&gt;Management&lt;/li&gt;
&lt;li&gt;Performance&lt;/li&gt;
&lt;li&gt;Future&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1555">Pekka Enberg</person>
        </persons>
        <links>
          <link href="http://cloudius-systems.com">Cloudius</link>
          <link href="http://github.com/cloudius-systems/osv">http://github.com/cloudius-systems/osv</link>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/OSv_a_New_Operating_System_Designed_for_the_Cloud.webm">Video</link>
        </links>
      </event>
      <event id="2033">
        <start>17:00</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas11</slug>
        <title>High Performance Network Function Virtualization with ClickOS</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Middleboxes are both crucial to today's networks and ubiquitous, but embed knowledge of today's protocols and applications to the detriment of those of tomorrow, making the network harder to evolve. While virtualization technologies like Xen have been around for a long time, it is only in recent years that they have started to be targeted as viable systems for implementing middlebox processing (e.g., firewalls, NATs).&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Can they provide this functionality while yielding the high performance expected from hardware-based middlebox offerings? In this talk Joao Martins will introduce ClickOS, a tiny, MiniOS-based virtual machine tailored for network processing. In addition to the vm itself, this talk will hopefully help to clarify where some of the bottlenecks in Xen's network I/O pipe are, and describe performance improvements done to the entire system. Finally, Joao Martins will discuss an evaluation showing that ClickOS can be instantiated in 30 msecs, can process traffic at 10Gb/s for almost all packet sizes, introduces delay of only 40 microseconds and can run middleboxes at rates of 5 Mp/s. The audience is anyone interested in improving the network performance of Xen, including improvements to the MiniOS and Linux netfront drivers. In addition, the talk should interest people working towards running large numbers of small virtual machines for network processing, as well as those involved with the recent network function virtualization trend.&lt;/p&gt;

&lt;p&gt;The outline of this talk and goals for this session:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;showing a new use-case for virtualization, targeting virtual machines
as replacement for hardware middleboxes&lt;/li&gt;
&lt;li&gt;requirements and our solution to this problem&lt;/li&gt;
&lt;li&gt;what is Click and how we program middleboxes in Click&lt;/li&gt;
&lt;li&gt;what is ClickOS and our contributions&lt;/li&gt;
&lt;li&gt;network processing under XEN, and bottlenecks in the I/O pipe&lt;/li&gt;
&lt;li&gt;how packet processing performance was improved&lt;/li&gt;
&lt;li&gt;initialization, memory usage and synchronization between
backend/frontend&lt;/li&gt;
&lt;li&gt;delay and throughput evaluation using high numbers of VMs&lt;/li&gt;
&lt;li&gt;performance of some middleboxes (load balancers, firewalls, intrusion
detection systems, etc)&lt;/li&gt;
&lt;li&gt;conclusions and remarks&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1906">Joao Martins</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/High_Performance_Network_Function_Virtualization_with_ClickOS.webm">Video</link>
        </links>
      </event>
      <event id="1968">
        <start>17:40</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas12</slug>
        <title>oVirt applying Nova scheduler concepts for data center virtualization</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;For several years now, the oVirt project has been leveraging KVM and relevant technologies (ksm, etc) in data center virtualizations. Being a mature
and feature reach, oVirt takes another step forward with introducing a Pluggable Scheduling API. This presentation will review recent oVirt improvements in the areas of VM scheduling. The first part will discuss the architecture of the new scheduler. In the second part we will show samples of VM scheduling plug-ins, and integrate it to a live setup.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1857">Gilad Chaplik</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/oVirt_applying_Nova_scheduler_concepts_for_data_center_virtualization.webm">Video</link>
        </links>
      </event>
      <event id="2068">
        <start>18:20</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas13</slug>
        <title>Jailhouse, a Partitioning Hypervisor for Linux</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will introduce the architecture of Jailhouse, describe typical use cases, demonstrate the development progress on a target system and sketch the project road map.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Jailhouse project provides a minimal-sized hypervisor for running demanding real-time, safety or security workloads on fully isolated CPU cores aside Linux. In contrast to other commercial and open source hypervisors of similar scope, it is booted and managed via a standard Linux system. Its focus is on keeping the core code base as small as feasible, generally trading simplicity over features.&lt;/p&gt;

&lt;p&gt;Jailhouse has been released under GPLv2 and is being developed in an open manner. The talks aims at attracting further users and contributors, specifically from the embedded domain, but may also trigger discussions about additional use cases.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;motivation &amp;amp; use cases&lt;/li&gt;
&lt;li&gt;architecture and design principles&lt;/li&gt;
&lt;li&gt;current state&lt;/li&gt;
&lt;li&gt;short demonstration&lt;/li&gt;
&lt;li&gt;outlook&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1928">Jan Kiszka</person>
        </persons>
        <links>
          <link href="https://github.com/siemens/jailhouse">Project homepage</link>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Saturday/Jailhouse_a_Partitioning_Hypervisor_for_Linux.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="UB2.252A (Lameere)">
      <event id="2176">
        <start>12:00</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>socs_fpgas</slug>
        <title>SoCs + FPGAs</title>
        <subtitle>Why settle for only one if you can have them both?</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Xilinx and Altera both took the next step in integrating System on Chips (SoC) with Field Programmable Gate Arrays (FPGA): put them both on the same die and connect them with a high speed interface.
This talk will describe the Altera Socfpga platform, its current support in the mainline Linux kernel, lessons learned in using the vendor supplied information and what this new kind of dual core CPU and FPGA alliance opens up for possibilities in low latency RT applications.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2016">Steffen Trumtrar</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2171">
        <start>12:30</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>abf_as_a_development_framework_with_arm_powered_build_nodes_by_the_example_of_openmandriva_20130_/_cooker_armv7hl</slug>
        <title>ABF as a development framework with ARM-powered build nodes by the example of OpenMandriva 2013.0 / Cooker armv7hl</title>
        <subtitle/>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;ABF as a development framework with ARM-powered build nodes by the example of OpenMandriva 2013.0 / Cooker armv7hl&lt;/p&gt;</abstract>
        <description>&lt;ol&gt;
&lt;li&gt;&lt;p&gt;OpenMandriva 2013.0 / Cooker armv7hl (Development Release)
Little presentation of OpenMandriva distro on Freescale ARM devices
with RazorQt and KDE&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Automated Build Farm (abf.io) as a development framework&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;what is it and what differences from other systems&lt;/li&gt;
&lt;li&gt;&lt;p&gt;external nodes for building packages on ARM and other platforms&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;WandBoard (www.wandboard.org) as a simple build node for Automated Build Farm cluster.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;How it works?&lt;/li&gt;
&lt;li&gt;Why we use it?&lt;/li&gt;
&lt;li&gt;Perfomance&lt;/li&gt;
&lt;/ol&gt;
</description>
        <persons>
          <person id="2011">Aleksei Vokhmin</person>
          <person id="2168">Aleksandr Khriukin</person>
        </persons>
        <links>
          <link href="https://abf.io/">ABF</link>
          <link href="http://openmandriva.org/">Openmandriva</link>
        </links>
      </event>
      <event id="2208">
        <start>13:00</start>
        <duration>01:00</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>profiling_sensor_nodes_with_call_graphs</slug>
        <title>Profiling sensor nodes with call graphs</title>
        <subtitle/>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Due to resource constraints common in sensor nodes it is often complicated to profile the performance of an application. One solution is simulating the node and profiling the application in there. This talk presents a flexible infrastructure to generate a call graph and calculate the function runtime.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1769">Daniel Willmann</person>
        </persons>
        <links>
          <link href="http://totalueberwachung.de/blog/files/opt_mudtn.pdf">Optimizing µDTN</link>
          <link href="http://video.fosdem.org/2014/UB2252A_Lameere/Saturday/Profiling_sensor_nodes_with_call_graphs.webm">Video</link>
        </links>
      </event>
      <event id="1813">
        <start>14:00</start>
        <duration>01:00</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>minix_3_on_arm</slug>
        <title>MINIX 3 on ARM</title>
        <subtitle/>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In the past one and a half years the MINIX team has been working on a port of MINIX 3 to the ARM platform. We now have a port of MINIX 3 to the popular BeagleBone Black.&lt;/p&gt;

&lt;p&gt;In this talk I will look back at MINIX 3 on ARM and explain how it became what it is. I will show a few nice features it has, including some stolen from NetBSD and some related to automatic recovery from otherwise fatal system errors.&lt;/p&gt;

&lt;p&gt;The goal of the talk is to shine an other light at embedded development and share our experience in this area.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1688">Kees Jongenburger</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UB2252A_Lameere/Saturday/MINIX_3_on_ARM.webm">Video</link>
        </links>
      </event>
      <event id="2299">
        <start>15:00</start>
        <duration>01:00</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>technical_introduction_to_the_deeper_parts_of_sailfishos,_a_qt5_wayland_based_mobile_os</slug>
        <title>Technical introduction to the deeper parts of SailfishOS, a Qt5-Wayland based mobile OS</title>
        <subtitle/>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk, I'd like to walk through some of the more technical parts of SailfishOS (www.sailfishos.org). Recently, Jolla (www.jolla.com) has shipped a mobile device based on the typical GNU/Linux stack together with new technologies such as Qt5 and Wayland. Information is presented such as how factual contribution to the open source parts of SailfishOS is done, with projects such as Mer Core and Nemo Mobile in the picture plus a walk-through of some of the more exotic pieces such as the ability to leverage Android hardware adaptations for Wayland based systems, through libhybris.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="426">Carsten Munk</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UB2252A_Lameere/Saturday/Technical_introduction_to_the_deeper_parts_of_SailfishOS_a_Qt5Wayland_based_mobile_OS.webm">Video</link>
        </links>
      </event>
      <event id="1885">
        <start>16:00</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>contributing_to_the_tizen_project</slug>
        <title>Contributing to the Tizen Project</title>
        <subtitle>Tizen : Apps, core, platform, hardware, what ? where ? how ? and when ?</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;General presentation of the Tizen project and how to interact with it at the application or core level or even for designing your own Tizen system.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Tizen is a Linux Operating System for phones, vehicles, and other devices. Talk will give a short introduction to the project and focus on how can any developer interact with it.&lt;/p&gt;

&lt;p&gt;Application level:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creating HTML5 apps with W3C + tizen APIs&lt;/li&gt;
&lt;li&gt;Creating native apps in C++ using Tizen Osp API&lt;/li&gt;
&lt;li&gt;Creating hybrid apps&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Platform/distro level:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bug reporting / submitting patches&lt;/li&gt;
&lt;li&gt;Building packages&lt;/li&gt;
&lt;li&gt;Workflow Integration in the project&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Profile / Hardware level:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create a new profile&lt;/li&gt;
&lt;li&gt;Adapt to unsupported hardware&lt;/li&gt;
&lt;li&gt;Rebuilding your own image&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1773">Phil Coval (rzr)</person>
        </persons>
        <links>
          <link href="http://tizen.org">http://tizen.org</link>
          <link href="https://wiki.tizen.org/wiki/User:Pcoval">https://wiki.tizen.org/wiki/User:Pcoval</link>
          <link href="http://video.fosdem.org/2014/UB2252A_Lameere/Saturday/Contributing_to_the_Tizen_Project.webm">Video</link>
        </links>
      </event>
      <event id="1711">
        <start>16:30</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>the_xpcc_microcontroller_framework</slug>
        <title>The xpcc microcontroller framework</title>
        <subtitle>An efficient, object-oriented approach to embedded software development.</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk introduces the xpcc framework for efficient object-oriented programming for micro-controllers.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Originally developed by the Roboterclub Aachen e.V. for the Eurobot competition, xpcc became a separate project in 2009 and since then focussed on a new approach to cross target microcontroller libraries.
It stands out for its extensive use of static C++ classes and templates which is unusual in this field, but lends itself well to the static nature of embedded development.
The main goal of xpcc is to provide a simple API which is efficient enough to be deployed on a small ATtiny, yet powerful enough to make use of advanced capabilities found on 32bit ARM Cortex-M.&lt;/p&gt;

&lt;p&gt;The xpcc library main features are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;efficient object-oriented C++ API,&lt;/li&gt;
&lt;li&gt;support of AVR and ARM Cortex-M based micro-controllers from Atmel, NXP and ST,&lt;/li&gt;
&lt;li&gt;build system based on SCons and Jinja2 template engine,&lt;/li&gt;
&lt;li&gt;cross platform peripheral interfaces: Gpio, Uart, I²C, Spi, Can,&lt;/li&gt;
&lt;li&gt;write once, run anywhere external IC drivers using these interfaces, and&lt;/li&gt;
&lt;li&gt;lightweight, non-blocking workflow using timers and cooperative multitasking.&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1601">Niklas Hauser</person>
          <person id="1602">Kevin Laeufer</person>
        </persons>
        <links>
          <link href="http://xpcc.io">xpcc Website</link>
          <link href="http://github.com/roboterclubaachen/xpcc">xpcc on GitHub</link>
          <link href="http://mailman.rwth-aachen.de/mailman/listinfo/xpcc-dev">xpcc Developer Mailing List</link>
          <link href="http://www.roboterclub.rwth-aachen.de">Roboterclub Aachen e.V.</link>
          <link href="http://video.fosdem.org/2014/UB2252A_Lameere/Saturday/The_xpcc_microcontroller_framework.webm">Video</link>
        </links>
      </event>
      <event id="2211">
        <start>17:00</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>qtcreator_baremetal_development</slug>
        <title>QtCreator BareMetal development</title>
        <subtitle>See QtCreator, OpenOCD and qbs in action.</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;QtCreator gained the ability to talk with these really small ARM Boards with CortexM processor. This presentation will show how easy it is to get into development on these boards with a GCC toolchain, OpenOCD and QtCreator with BareMetal plugin.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The presentation will walk through all the needed parts needed for embedded development with an CortexM4 ARM processor.
The talk focuses on OpenOCD in combination with the BareMetal and QbsProject Plugin of QtCreator.
OpenOCD is an opensource hardware debugger which as multiple backends for different debugging hardware.
QtCreator is a powerful IDE which has all the bells and whistles of an IDE. It is the main develoment IDE for the Qt toolkit and
has a focus on C++ and C development. QtCreator is based on plugins. The two new plugins used in this presentation is the
BareMetal plugin for talking with the OpenOCD (or other gdbserver based) hw-debugger and the QbsProjectmanager which is the new
qbs build system based software builder based on JavaScript project descriptions.
There will be a live demonstration of using an STM32F4 board.&lt;/p&gt;</description>
        <persons>
          <person id="2040">Tim Sander</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UB2252A_Lameere/Saturday/QtCreator_BareMetal_development.webm">Video</link>
        </links>
      </event>
      <event id="2300">
        <start>17:30</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>wolfssl_2013_technical_and_community_update</slug>
        <title>wolfSSL 2013 Technical and Community Update</title>
        <subtitle/>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;wolfSSL, author of the open source CyaSSL embedded SSL library has made significant progress in 2013 towards bringing the community a more usable, feature-rich, and better supported library for use in an ever-growing range of embedded platforms and environments.  This talk will provide an overview of technical progress in the last year and news on the current state of wolfSSL.  Details on what's new include the addition of new crypto ciphers and algorithms, better hardware cryptography support, more flexible abstraction layers, a JNI wrapper, new platform support, and better development tool integration.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="912">Chris Conlon</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UB2252A_Lameere/Saturday/wolfSSL_2013_Technical_and_Community_Update.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.1301 (Cornil)">
      <event id="2345">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>intel_glsl</slug>
        <title>Three Years Experience with a Tree-like Shader IR</title>
        <subtitle/>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Three years ago a small team at Intel took on the task of rewriting the OpenGL Shading Language compiler in Mesa.  One of the most fundamental design choices in any compiler is the intermediate representation (IR) used for programs.  The IR is the internal data structure used for all program transformations including optimization and code generation.  At the time the compiler was designed, a number of alternatives were investigated.  In the end, a tree-like IR was selected.  With hindsight being 20/20, this talk will present the tree-like IR that was chosen and the issues that have been found with that IR in the interim.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1462">Ian Romanick</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Saturday/Three_Years_Experience_with_a_Treelike_Shader_IR.webm">Video</link>
        </links>
      </event>
      <event id="1789">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>xorg_foundation</slug>
        <title>State of the X.org foundation</title>
        <subtitle>Merging with SPI, including Wayland and Mesa under the umbrella</subtitle>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The state of the FLOSS graphics stack is rapidly changing and so is the X.org foundation. We are currently working on merging with SPI to get rid of the bureaucracy that goes along with having the non-profit association status in the USA (501(c)(3)). Since we are changing our legal status, it is also grand-time for us to broaden our purpose beyond the X Windowing System. Projects like Mesa and Wayland have accepted to be placed under the X.org foundation umbrella, it is time for us to make it clear that the X.org foundation is not only about X anymore! This talk will also advise people to become members of the foundation in order to get a voice in this process.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="900">Martin Peres</person>
        </persons>
        <links>
          <link href="http://www.x.org/">Website of the X.org foundation</link>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Saturday/State_of_the_Xorg_foundation.webm">Video</link>
        </links>
      </event>
      <event id="1772">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>miracast</slug>
        <title>Open-Source Miracast</title>
        <subtitle>Wifi-Display on linux</subtitle>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Miracast is the name of a WiFi-Alliance certification program for the WiFi-Display standard. It basically defines a "wireless HDMI-cable" so you can connect monitors via WiFi. Some Android vendors implement it, Microsoft ships it with Windows 8.1 and with OpenWFD we now also have the first Open-Source implementation available. This talk shows what Miracast is, how it works, and how you can use it on your favourite linux distribution already.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Wifi-Display standard (abbr. WFD) was created to define a common way to connect TVs and monitors to your PC or smartphone. It is not meant as media-file streaming protocol like DLNA, but rather as a "wireless HDMI-cable". It provides only a single video/audio stream from a source to sink, is optimized for low-latency and allows easy setup.&lt;/p&gt;

&lt;p&gt;WFD uses Wifi-Direct (wifi peer-2-peer / Wifi-P2P) to create a direct connection between two devices. A mode-negotiation follows and once all parameters are clear, an mpeg stream is established. Several extended features like split video/audio-sinks, enhanced timing-protocols or more are available.&lt;/p&gt;

&lt;p&gt;OpenWFD is the first Open-Source implementation of WFD. It is targeted at linux and provides some example source/sink daemons so you can already use it. However, proper integration into the linux software-stack is still ongoing and the final setup will probably differ highly from the current project state.&lt;/p&gt;</description>
        <persons>
          <person id="1204">David Herrmann</person>
        </persons>
        <links>
          <link href="http://www.freedesktop.org/wiki/Software/openwfd/">OpenWFD Project</link>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Saturday/OpenSource_Miracast.webm">Video</link>
        </links>
      </event>
      <event id="1939">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>rootless_xserver</slug>
        <title>Making the X-server run without root rights</title>
        <subtitle/>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Xorg (the X-server) is a big and complex beast. Currently it runs as root as it needs root privileges for various reasons. But with the latest systemd-logind all necessary infrastructure is in place to allow the server to run as a normal user and use systemd-logind to do input and graphics device management.&lt;/p&gt;

&lt;p&gt;This talk looks at the work being done to leverage this new infrastructure to run Xorg without root rights.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="80">Hans de Goede</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Saturday/Making_the_Xserver_run_without_root_rights.webm">Video</link>
        </links>
      </event>
      <event id="2105">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>dri3000</slug>
        <title>CANCELLED - DRI3000 and Compositing CANCELLED</title>
        <subtitle>Saving Power by Reducing Copies</subtitle>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Due to a cancelled flight, Keith is not able to make it to FOSDEM this year. This talk will therefor not be taking place.&lt;/p&gt;

&lt;p&gt;The X Composite extension opened up a wealth of possibilities for enhancing the free software desktop, however it came with a cost in performance and power -- extra memory used by applications and extra copies of that memory from application buffers to the screen. This presentation will describe and demonstrate enhancements to the Present extension which can eliminate most of these additional copies, and with suitable kernel and application changes, eliminate even more copies for non full-screen double buffered applications.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="469">Keith Packard</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2265">
        <start>17:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>movit</slug>
        <title>Movit: High-speed, high-quality video filters on the GPU</title>
        <subtitle/>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Movit (the “Modern VIdeo Toolkit”) is a high-performance, high-quality, open-source library for video filters, running on the GPU. Come see what the future holds when open-source video editing steps into 2014!&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Movit contains everything you need and expect for basic video filtering requirements (scale, blur, sharpen, mix, overlay, simple color grading, and others). Movit is supported in MLT, has full support in Shotcut and is on track for Kdenlive support.&lt;/p&gt;

&lt;p&gt;In this talk, I'll talk a bit about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What does Movit do, and what doesn't it do?&lt;/li&gt;
&lt;li&gt;What do we mean by “high-performance”? Why the GPU?&lt;/li&gt;
&lt;li&gt;What do we mean by “high-quality”? How hard can a blend be anyway?&lt;/li&gt;
&lt;li&gt;What goes on behind the scenes in Movit's filter graph?&lt;/li&gt;
&lt;li&gt;How do you embed Movit in your own application?&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;There will also be a demo of Movit in action, and of course Q&amp;amp;A if time permits.&lt;/p&gt;</description>
        <persons>
          <person id="2066">Steinar H. Gunderson</person>
        </persons>
        <links>
          <link href="http://movit.sesse.net/">Homepage</link>
          <link href="http://movit.sesse.net/movit-fosdem2014.pdf">Slides</link>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Saturday/Movit_Highspeed_highquality_video_filters_on_the_GPU.webm">Video</link>
        </links>
      </event>
      <event id="2350">
        <start>18:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>wayland_gpu</slug>
        <title>Status of GPU offloading on Wayland</title>
        <subtitle/>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will be about the principles of GPU offloading, how it is handled with X DRI2, and how we decided to handle it on Wayland.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;It's been about 3-4 years since first experiments on GPU offloading on X were done.
How is GPU offloading handled with X ? And how the different design of Wayland could influence the way it's handled ?&lt;/p&gt;

&lt;p&gt;In this talk, I'll present:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the technical difficulties involved in GPU offloading.&lt;/li&gt;
&lt;li&gt;how X DRI2 handles GPU offloading.&lt;/li&gt;
&lt;li&gt;What choices we made when designing Wayland GPU offloading support.&lt;/li&gt;
&lt;li&gt;The work that has been done, and what is remaining to do for a better user experience.&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="2120">Axel Davy</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Saturday/Status_of_GPU_offloading_on_Wayland.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.1302 (Depage)">
      <event id="2151">
        <start>11:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>reproducibledebian</slug>
        <title>Reproducible Builds for Debian</title>
        <subtitle/>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;How can we enable multiple parties to verify that a binary package has been produced untampered from a given source in a distribution like Debian?&lt;/p&gt;</abstract>
        <description>&lt;p&gt;With free software, anyone can inspect the source code for malicious flaws. But most distributions provide binary packages to their users. We would like them to be able to verify that no flaws are introduced during the build process. The idea of “deterministic” or “reproducible” builds is to enable anyone to reproduce a byte-for-byte identical binary packages from a given source.&lt;/p&gt;

&lt;p&gt;A research effort started last summer towards reproducible builds for Debian. After several small tweaks to core Debian tools, a massive rebuild in September reached 24% of builds resulting in identical binaries out of 5000+ source
packages. The process uncovered challenges about both the reproducibility of the build environment and about the build processes themselves. We will
review them, along with possible solutions and what remains to be done.&lt;/p&gt;</description>
        <persons>
          <person id="1998">Jérémy Bobbio (Lunar)</person>
        </persons>
        <links>
          <link href="http://wiki.debian.org/ReproducibleBuilds">Reproducible builds on Debian Wiki</link>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Saturday/Reproducible_Builds_for_Debian.webm">Video</link>
        </links>
      </event>
      <event id="2304">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>obsolete</slug>
        <title>Is distribution-level package management obsolete?</title>
        <subtitle/>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Recent trends in software development have raised questions as to whether package management in Linux distributions is still relevant. Whether it's independent package managers in popular Web frameworks and languages (Node.js, Ruby, Python, etc) or bundling and containerization that's become increasingly popular in DevOps culture, it appears that integrated approaches to package management are on the decline. Yet at the same time we've seen package managers in the Windows world such as NuGet grow more popular. This talk from a leader of the Gentoo Linux distribution will explore the reasoning and history behind this shift and whether it's the right move for the FLOSS movement as a whole.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="840">Donnie Berkholz</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Saturday/Is_distributionlevel_package_management_obsolete.webm">Video</link>
        </links>
      </event>
      <event id="1976">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>braindamaged_desktop_linux</slug>
        <title>Do you have to be brain damaged to care about desktop Linux?</title>
        <subtitle>A personal account of severe head trauma and distro development</subtitle>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A personal talk about what happened when a car crash left me in a coma for three days and the recovery that has happened in the two years since.  The ups and downs of this is mixed with the ups and downs of developing a KDE Linux distro, Kubuntu.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1873">Jonathan Riddell</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Saturday/Do_you_have_to_be_brain_damaged_to_care_about_desktop_Linux.webm">Video</link>
        </links>
      </event>
      <event id="2322">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>methodsapplications</slug>
        <title>A Method for Distributing Applications Independent from the Distro </title>
        <subtitle/>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;For many years the Linux distro concept has been about "inclusion of applications" sometimes at the detriment to co-habitating applications and the stability of the core OS. Much discussion has been made over the years about JEOS, embedded Linux, custom distros, applicance building, etc, but not a lot of discussion about how applications could be delivered such that they were more readily able to co-habitate.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Open source applications (because distros are so "inclusive") are put through significant scrutiny around their design and deployment related to their integration with the core OS that may or may not make sense. The scrutiny is certainly more intense than proprietary software is required to undergo. This talk proposes a new'ish technology, Software Collections, as a method for resolution.&lt;/p&gt;</description>
        <persons>
          <person id="1335">Langdon White</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Saturday/A_Method_for_Distributing_Applications_Independent_from_the_Distro.webm">Video</link>
        </links>
      </event>
      <event id="2341">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>centos</slug>
        <title>CentOS: Planning for Variants and the Next Chapter</title>
        <subtitle>A Broader, Faster, Easier Route to Contributions in CentOS</subtitle>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;CentOS has cemented a reputation as the "community enterprise operating system" - one that provides a reliable rebuild, but is not known for innovation in its own right. With the news that Red Hat and CentOS are joining forces, this is going to change. Here's how CentOS is planning to change, and how other distros can learn from our next phase.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This includes our governance changes, and how we'll address several different special interest groups (SIGs) that have different ideas they want to realize with CentOS. It also includes technical changes, and I'll explain how we're going to manage our build system and source control for accepting upstream code and then creating new variants.&lt;/p&gt;

&lt;p&gt;Most importantly, I'll also be taking questions about the new direction and how we got to this point.&lt;/p&gt;</description>
        <persons>
          <person id="2109">Karanbir Singh</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Saturday/CentOS_Planning_for_Variants_and_the_Next_Chapter.webm">Video</link>
        </links>
      </event>
      <event id="2076">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>fednext</slug>
        <title>Fedora.NEXT</title>
        <subtitle>Developing the Fedora Server, Workstation and Cloud</subtitle>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;As you may or may not be aware, Fedora is transitioning from its classic "one-size-fits-all" approach to one where we intend to target three specific user types with  individual products: Fedora Workstation, Fedora Server and Fedora Cloud. Gathering Fedora contributors at FOSDEM to work on the logistics around this change in direction would be a valuable opportunity.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;If you have an idea for how to improve Fedora or how to make one or more of the three new products really stand out, please join us for this planning and working session for Fedora's future. The Fedora.NEXT effort was launched recently as a means to reinvigorate interest in this most storied of distributions. We know that this will only succeed if we are meeting the real needs of our users, both current and potential. We would like anyone with an interest in guiding Fedora towards being the best solution for them to join us for this discussion.&lt;/p&gt;</description>
        <persons>
          <person id="1549">Stephen Gallagher</person>
        </persons>
        <links>
          <link href="http://fedoraproject.org/wiki/Fedora.next">Fedora.next Main Page</link>
          <link href="http://fedoraproject.org/wiki/Server">Fedora Server</link>
          <link href="http://fedoraproject.org/wiki/Workstation">Fedora Workstation</link>
          <link href="http://fedoraproject.org/wiki/Cloud">Fedora Cloud</link>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Saturday/FedoraNEXT.webm">Video</link>
        </links>
      </event>
      <event id="2080">
        <start>17:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>debicancontribs</slug>
        <title>Debian Contributors</title>
        <subtitle>A new, automatic, doocratic membership to change the face of Debian</subtitle>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;There is a new hat in Debian, bearing the flattering title of "Debian Contributor". Everyone who contributes to Debian is entitled to have it, and gets it automatically.
It is a way to give due credit to all manners of contributions to the project. It is a way to make all the energy that is poured into Debian visible.
I will show the reasons behind the idea, and how contributors.debian.org works.
I will show how it may change the way we perceive Debian, and very much for the better.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="860">Enrico Zini</person>
        </persons>
        <links>
          <link href="http://contributors.debian.org">The Debian Contributors site</link>
          <link href="https://wiki.debian.org/Teams/FrontDesk/DcSiteDevel">Development information</link>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Saturday/Debian_Contributors.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.1308 (Rolin)">
      <event id="2411">
        <start>10:55</start>
        <duration>00:05</duration>
        <room>H.1308 (Rolin)</room>
        <slug>desktops_devroom_opening</slug>
        <title>Desktops DevRoom Opening</title>
        <subtitle/>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Presentation of the Desktops DevRoom by its Organization Team &amp;amp; Technical Committee: Christophe Fergeau (Gnome), Pau Garcia i Quiles (KDE), Didier Roche (Unity), Philippe Caseiro (Englightenment) and Jérome Leclanche (LXDE)&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="157">Christophe Fergeau</person>
          <person id="666">Pau Garcia i Quiles</person>
          <person id="668">Philippe Caseiro</person>
          <person id="2019">Jerome Leclanche</person>
          <person id="2078">Didier Roche</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2253">
        <start>11:00</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>whats_cooking_gstreamer</slug>
        <title>What's cooking in GStreamer</title>
        <subtitle/>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will take a look at what's been happening in the GStreamer multimedia framework as of late and what shiny new features you can expect to land in the near future.&lt;/p&gt;

&lt;p&gt;It is targeted at both application developers and anyone interested in multimedia on the Linux desktop and elsewhere.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;GStreamer is a highly versatile plugin-based multimedia framework that caters to a whole range of multimedia needs, whether desktop applications, streaming servers or multimedia middleware; embedded systems, desktops, or server farms. It is also cross-platform and works on Linux, *BSD, Solaris, OS/X, Windows, iOS and Android.&lt;/p&gt;

&lt;p&gt;In late 2012 GStreamer 1.0 was released, the next generation of the rather successful GStreamer 0.10.x API series. 1.2 was released just about year later towards the end of 2013 sporting quite a few new features. With 1.4 already in the making and 1.6 on the horizon, we'll take a bird's eye view at what's new and improved and what upcoming new features you can look forward to.&lt;/p&gt;

&lt;p&gt;Does hardware-accelerated video playback finally work out of the box on the Linux desktop? Can you get a list of available devices now? Does Blu-ray playback work? How about OpenGL? Will it work on Wayland? Can you use it on the Raspberry Pi?&lt;/p&gt;

&lt;p&gt;Join us to find out!&lt;/p&gt;</description>
        <persons>
          <person id="671">Tim-Philipp Müller</person>
          <person id="2102">Sebastian Dröge (slomo)</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1308_Rolin/Saturday/Whats_cooking_in_GStreamer.webm">Video</link>
        </links>
      </event>
      <event id="1950">
        <start>11:35</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>enlightenment_standalone_wayland_compositor</slug>
        <title>Enlightenment as Standalone Wayland Compositor</title>
        <subtitle/>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Porting a X window manager to the wayland protocol is huge task. This talk describes the journey we took to make it possible to run Enlightenment as a standalone wayland compositor.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;While the Enlightenment project has had support for wayland in the EFL toolkit for a long time, the window manager itself always relied on some pieces of X for things like input devices, VT switching, etc.&lt;/p&gt;

&lt;p&gt;In this talk we will lay out what problems we faced and also show our solutions. We will talk about the handling of input devices, interaction with DRM, VT handling as well as missing pieces of the wayland protocol for a full desktop experience. For compatibility we are using XWayland with integration into the window manager to launch XWayland if needed.&lt;/p&gt;

&lt;p&gt;The end result is Enlightenment running without any X dependencies&lt;/p&gt;</description>
        <persons>
          <person id="1814">Stefan Schmidt</person>
          <person id="1849">Chris Michael</person>
        </persons>
        <links>
          <link href="https://www.enlightenment.org/">Enlightenment homepage</link>
          <link href="http://video.fosdem.org/2014/H1308_Rolin/Saturday/Enlightenment_as_Standalone_Wayland_Compositor.webm">Video</link>
        </links>
      </event>
      <event id="2180">
        <start>12:10</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>gnome3_outreach</slug>
        <title>Swimming with chum in shark infested waters</title>
        <subtitle>GNOME 3 outreach in the modern age.</subtitle>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A talk on engaging the F/OSS community and the lessons learned in the many releases after GNOME 3.  Discuss measures we took to engage community, the effect of social media in the modern age, and lessons for others who also release software.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Bad news travel fast, ugly news travel even faster.  The world was not the same when GNOME released 2.0, and in today's world you need to know how to engage with the community, apply damage control when needed, and understand how information propagates through social media and to create an effective message.&lt;/p&gt;

&lt;p&gt;This talk is about the key lessons we learned when releasing GNOME 3.0 and subsequent releases after and discuss possible solutions, or the measures we have used to help reduce friction with the community.&lt;/p&gt;</description>
        <persons>
          <person id="2018">Sriram Ramkrishna</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1308_Rolin/Saturday/Swimming_with_chum_in_shark_infested_waters.webm">Video</link>
        </links>
      </event>
      <event id="2075">
        <start>12:45</start>
        <duration>00:45</duration>
        <room>H.1308 (Rolin)</room>
        <slug>anatomy_of_kdbus</slug>
        <title>Anatomy of kdbus</title>
        <subtitle/>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;With kdbus we move the D-Bus IPC system into the Linux kernel to improve performance and functionality while keeping compatibility.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Most more modern OS designs than Unix started out with a high-level IPC from the beginning, and then built the rest of the OS on top of it. Linux/Unix began with only the most basic low-level IPC primitives in place (Pipes and AF_UNIX sockets). Building on those over time various higher-level IPC systems were built, but only very few stood the test of time or became universal. On current Linux systems the best established high-level IPC layer is D-Bus. It implements a reliable message passing scheme, with access control, multicasting, filtering, introspection and supports a flexible object model.&lt;/p&gt;

&lt;p&gt;D-Bus is a powerful design. However, being mostly a userspace solution its latency and throughput are not ideal. A full transaction consisting of method call and method reply requires 10 (!) copy operations for the messages passed. It is only useful for transfer of control messages, and not capable of streaming larger amounts of data.&lt;/p&gt;

&lt;p&gt;In this talk I'd like to discuss the "kdbus" IPC system, a kernel implementation of the D-Bus logic and its userspace side. "kdbus" takes the concepts of classic D-Bus but makes them more universally useful, reducing latency and roundtrips, and increasing bandwidth, even covering streaming usecases. (For comparison, with kdbus, a full transaction takes only 2 copy operations, even supporting zero-copy for large messages). I'll discuss the lessons we learnt from Android's binder, Solaris' doors IPC system, and Mach's port scheme. We'll discuss how we implemented a reliable (though probabilistic) multicasting scheme, and the tricks we used in userspace to make transparent zero-copy work, without compromising on security, and providing compatibility with classic D-Bus.&lt;/p&gt;

&lt;p&gt;kdbus might soon show up in your favourite distribution as part of the systemd package, please attend if you want to know more about the ideas behind it.&lt;/p&gt;</description>
        <persons>
          <person id="945">Lennart Poettering</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1308_Rolin/Saturday/Anatomy_of_kdbus.webm">Video</link>
        </links>
      </event>
      <event id="2319">
        <start>13:35</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>porting_legacy_x11_to_wayland</slug>
        <title>Porting legacy X11/GL applications to Wayland</title>
        <subtitle>OpenCPN and wxWidgets wrapped for Wayland</subtitle>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Many state-of-the-art graphical applications and frameworks still use direct X11 and legacy GL API calls.
As we need to move further and follow new evolutions of the UNIX display stack, especially on embedded platforms, we need to adapt or wrap our codebase to Wayland and GLES.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;X has been part of UNIX ecosystem for more than 20 years now ; it will now progressively become “deprecated” in favor of Wayland, which targets both desktop and mobile platforms. On the other hand, while OpenGL has been extensively used will still be, its numerous API evolutions, breakages and target profiles tend to render old code unusable on new implementations, and especially those of current Wayland compositors.&lt;/p&gt;

&lt;p&gt;Starting from a practical development case (an application -OpenCPN- using deprecated OpenGL1 calls and a toolkit -wxWidgets- which itself has not been fully ported to Wayland yet), we will describe how we managed to get it accelerated-running on Weston by wrapping :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;X11/GLX and wxWidgets-GDKX calls with our EGLX library ;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;OpenGL 1 calls with the jwzGLES library.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;We will finally explain what efforts remained pending to obtain a fully-working port of the application (deprecated concepts in core code, API misuse…) to an embedded GNU/Linux platform.&lt;/p&gt;</description>
        <persons>
          <person id="1792">Manuel Bachmann</person>
        </persons>
        <links>
          <link href="https://github.com/Tarnyko/EGLX">X11/GLX wrapper</link>
          <link href="https://github.com/Tarnyko/wxWidgets-EGLX">EGLX integration for wxWidgets</link>
          <link href="https://github.com/Tarnyko/OpenCPN-EGLX">EGLX integration for OpenCPN</link>
          <link href="http://www.youtube.com/watch?v=7Ijqq4dYbnw">Runtime video (EGLX)</link>
          <link href="http://www.youtube.com/watch?v=cce6ucW8vZ4">Runtime video (OpenCPN-EGLX)</link>
          <link href="http://video.fosdem.org/2014/H1308_Rolin/Saturday/Porting_legacy_X11GL_applications_to_Wayland.webm">Video</link>
        </links>
      </event>
      <event id="1790">
        <start>14:10</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>qtcreator_desktop_developers</slug>
        <title>Qt Creator for desktop developers</title>
        <subtitle>Why you should not waste time coding in a text editor</subtitle>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Qt Creator is a full-featured IDE that can help you with your C++ (and C where that does not conflict with C++) coding -- with and without Qt!&lt;/p&gt;

&lt;p&gt;In this presentation I want to encourage all the a-texteditor-is-all-I-need developers out there to give integrated development environments a try.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Using an integrated development environment (IDE) raises your productivity and can make your live as a programmer more enjoyable. This fact is widely known in the proprietary software world, but in the free and open source software world there still is a huge following for programming in a text editor.&lt;/p&gt;

&lt;p&gt;This presentation shows why you should not be content with primitive tools and uses Qt Creator as an example to demonstrate what an IDE can do for you.&lt;/p&gt;</description>
        <persons>
          <person id="1682">Tobias Hunger</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2181">
        <start>14:45</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>lxqt_introducing_intents</slug>
        <title>LXQt: Introducing Intents</title>
        <subtitle/>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Intents are a way for applications to declaratively describe their capabilities and let other applications invoke it. Sounds simple? It's still not possible today.&lt;/p&gt;

&lt;p&gt;LXQt is introducing intents. Inspired by Android's intents, they solve several long-standing issues on the desktop. Best of all, they are being developed as an open spec, so that other DEs can use them.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Intents are the declaration of standardized D-Bus interfaces to a type of application. A demo of their various capabilities will be performed. This talk will also introduce the audience to the related improvements being made to application declaration, invocation, interaction, and integration.&lt;/p&gt;</description>
        <persons>
          <person id="2019">Jerome Leclanche</person>
        </persons>
        <links>
          <link href="http://lxde.org/">LXDE website</link>
          <link href="http://video.fosdem.org/2014/H1308_Rolin/Saturday/LXQt_Introducing_Intents.webm">Video</link>
        </links>
      </event>
      <event id="1948">
        <start>15:20</start>
        <duration>00:45</duration>
        <room>H.1308 (Rolin)</room>
        <slug>unity_convergence_ubuntu_touch</slug>
        <title>Unity and convergence to an Ubuntu Touch world</title>
        <subtitle/>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Ubuntu, through Unity is tackling the convergence topic between multiple form factors. We will expand the past and future evolutions throughout that goal.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk is about presenting how Unity was built and its history through the Ubuntu Netbook Remix to become the default on this distribution desktop flavor. We will discuss what to expect as well for the next Unity desktop version and how Mir and the newly Unity8, based on Qt and QML, was needed for the phone flavor. The different technologies and a demonstration of the current progress will close the talk before opening to a QA.&lt;/p&gt;</description>
        <persons>
          <person id="2078">Didier Roche</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1308_Rolin/Saturday/Mir_Unity8_in_the_Converged_World.webm">Video</link>
        </links>
      </event>
      <event id="2254">
        <start>16:10</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>hawaii_wayland_qtquick_desktop</slug>
        <title>Hawaii</title>
        <subtitle>Meet Hawaii, the Wayland QtQuick based desktop</subtitle>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Hawaii is a Wayland and QtQuick based desktop environment with few dependencies aiming at desktop and mobile convergence.
It is primarily used by Maui, a Linux system with atomic upgrades and bundles.
This talk introduces the project to those who don't know it yet, presents the progress that have been made and future directions.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Traditional desktop systems with mouse and keyboard have different requirements compared to mobile platforms with touch input.
With QtQuick, desktop and mobile convergence becomes easier to implement not only for applications but also within desktop environments.
Hawaii is designed from the beginning to have different UX for different needs.
The Hawaii desktop environment is part of the Maui project.
Maui is a Linux system aiming at improving user experience with atomic upgrades and bundles instead of packages, but can (and it's encouraged to) be packaged for other distributions.
This talk introduces the project to those who don't know it yet, presents the progress that have been made, and future directions.&lt;/p&gt;</description>
        <persons>
          <person id="2060">Pier Luigi Fiorini</person>
        </persons>
        <links>
          <link href="http://www.maui-project.org">Maui project</link>
        </links>
      </event>
      <event id="2194">
        <start>16:45</start>
        <duration>00:45</duration>
        <room>H.1308 (Rolin)</room>
        <slug>kde_frameworks</slug>
        <title>The KDE Frameworks are here</title>
        <subtitle>Adopt it!</subtitle>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The KDE software has been built on Qt since its birth, but often we've needed to create libraries on top of Qt to solve our needs. This ended up being a huge project that was both hard to maintain and a huge dependency, especially on embedded platforms.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The situation has evolved, we moved as much as we could to Qt and we split the features we have available when it made sense. Now we offer a lightweight set of frameworks on top of Qt that will help you make applications with the power of Qt and the KDE Frameworks combined.&lt;/p&gt;</description>
        <persons>
          <person id="298">Aleix Pol Gonzalez</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2258">
        <start>17:35</start>
        <duration>00:20</duration>
        <room>H.1308 (Rolin)</room>
        <slug>kde_connect</slug>
        <title>KDE Connect</title>
        <subtitle>Making devices know each other</subtitle>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;KDE Connect tries to create a network of "KDE Connect"-aware devices that will enable interaction among them by means of compatible services. This talk will explain why we created yet another universal service provider, what is the current status and where we want to go.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The free software workspaces have been trying to integrate with other platforms for years, we can find examples of integration for: Windows (ActiveSync, Samba), OS X (bonjour, AFP), Palm (Pilot) and various standards like UPnP. Each of this bits of integration works in a different way, making it hard to make it all work in harmony and most of them are specific to a service.&lt;/p&gt;

&lt;p&gt;KDE Connect takes a new approach: it tries to create a network of "KDE Connect" aware devices that will enable between them compatible services all designed to be simple, functional and easy to use for both, developer and user.&lt;/p&gt;

&lt;p&gt;During this talk I plan to explain:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the reasons why we came to develop KDE Connect (why yet another universal service provider was needed for us)&lt;/li&gt;
&lt;li&gt;its state, including a demo if wifi is working&lt;/li&gt;
&lt;li&gt;imminent future and where we want to go&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="2062">Àlex Fiestas</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2199">
        <start>18:00</start>
        <duration>00:50</duration>
        <room>H.1308 (Rolin)</room>
        <slug>panel_governing_bodies_gnome_kde</slug>
        <title>Panel with the governing bodies of the GNOME Foundation and KDE eV</title>
        <subtitle/>
        <track>Desktops</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The GNOME Foundation and the KDE e.V. are the governing bodies for the GNOME and KDE project, respectively. Their roles are to find funds to enable creative hackers to do a great job at creating awesome Free Software for everyone.&lt;/p&gt;

&lt;p&gt;We want to shed light into the inner workings of the GNOME Foundation Board of Directors and the KDE eV Board, not only to give you information about how we work, but also to demystify the ivory tower we're sitting in.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="290">Lydia Pintscher</person>
          <person id="2029">Tobias Mueller</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1308_Rolin/Saturday/Panel_with_the_governing_bodies_of_the_GNOME_Foundation_and_KDE_eV.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.1309 (Van Rijn)">
      <event id="2158">
        <start>11:00</start>
        <duration>01:00</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>configuration_management_101</slug>
        <title>Configuration Management 101</title>
        <subtitle/>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Common threads run through modern configuration management systems.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will explore CM by examining promise theory, convergent systems, idempotence, and order. We'll also touch on orchestration, immutable systems, and containers, and testing.&lt;/p&gt;</description>
        <persons>
          <person id="1692">Sean OMeara</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/Configuration_Management_101.webm">Video</link>
        </links>
      </event>
      <event id="2013">
        <start>12:00</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>use_case_configuration_management_enterprise_linux_environment</slug>
        <title>Use case: Configuration Management in an enterprise Linux Team</title>
        <subtitle>--How I automated myself out of my job--</subtitle>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;How I automated myself out of my job.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;About a year ago I accepted a new job in an enterprise Linux environment, running ~450 Linux servers. These servers were running on an internal network and had never been updated. Most work was done ad-hoc and in response to issues or failure.&lt;/p&gt;

&lt;p&gt;I transformed the team to a pro-active way of working where automation was key. By solving the most frequent problems first, we found the time to automate more and more. Every server was updated and configuration management was introduced.&lt;/p&gt;

&lt;p&gt;One interesting year later I've automated myself out of my job. The team can easily handle the (now much lighter) workload without me. Users are happy, so mission completed!&lt;/p&gt;

&lt;p&gt;Configuration management is done using CFEngine 3 and we use other DevOps style tools like Git, Vagrant, Trello, Logstash etc.&lt;/p&gt;

&lt;p&gt;In this talk I'll talk about the journey we took and answer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What was the problem with the old way of working?&lt;/li&gt;
&lt;li&gt;How did we implement configuration management in an already running environment?&lt;/li&gt;
&lt;li&gt;Why did we choose CFEngine 3?&lt;/li&gt;
&lt;li&gt;What is the new way of working?&lt;/li&gt;
&lt;li&gt;What are the lessons learned?&lt;/li&gt;
&lt;li&gt;How to automate yourself out of your job?&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;To get an idea: I have recently written blog post about the technical side of the story:
http://blog.remibergsma.com/2013/08/31/managing-hundreds-of-servers-with-cfengine-and-git-full-control-over-configuration/&lt;/p&gt;

&lt;p&gt;The presentation will also focus on the process of getting there and the lessons learned, so others can benefit.&lt;/p&gt;</description>
        <persons>
          <person id="1876">Remi Bergsma</person>
        </persons>
        <links>
          <link href="http://blog.remibergsma.com/2013/08/31/managing-hundreds-of-servers-with-cfengine-and-git-full-control-over-configuration/">Blog: Managing hundreds of Linux servers with CFEngine and Git: full control over configuration</link>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/Use_case_Configuration_Management_in_an_enterprise_Linux_Team.webm">Video</link>
        </links>
      </event>
      <event id="2012">
        <start>12:30</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>ncf_abstracting_cfengines_complexity_provide_structured_powerful_framework</slug>
        <title>ncf</title>
        <subtitle>abstracting CFEngine's complexity to provide a structured and powerful framework</subtitle>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;After 4 years of "experience in the trenches" providing enterprise configuration management solutions based on CFEngine 3, it became clear that our customers wanted CFEngine's speed, small footprint, and features but were having a hard time with the language and tooling, and needed an easier way.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The goal of ncf is to abstract the knowledge of "how" to achieve tasks in CFEngine, and expose these capabilities for non-expert users. Thus, you can express your intent in a very succinct and expressive manner, integrating simply with CFEngine and its power, while keeping everything "under the hood" tunable.&lt;/p&gt;

&lt;p&gt;ncf promotes DRY-ness and sharing knowledge. It is built from the ground-up to be easy to learn, flexible and extensible. The framework is written in pure CFEngine language, introducing a well-structured design built on multiple decoupled layers with clearly-defined interfaces and roles.&lt;/p&gt;

&lt;p&gt;In our presentation we will introduce ncf and explain how ncf can be used to solve real-world examples, explain our design choices, the architectural approach taken, and demo the new magic at our finger tips to build CFEngine solutions that are extensible and easier to work with.&lt;/p&gt;</description>
        <persons>
          <person id="1883">Jonathan Clarke</person>
        </persons>
        <links>
          <link href="http://rudder-project.org">Rudder Project</link>
          <link href="http://cfengine.com">CFEngine AS</link>
          <link href="http://normation.com">Normation SAS</link>
          <link href="http://lanyrd.com/profile/jooooooon42/">Speaker: Jonathan Clarke, CTO, Normation</link>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/ncf.webm">Video</link>
        </links>
      </event>
      <event id="1945">
        <start>13:00</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>deploying_cloudstack_chef</slug>
        <title>Deploying Cloudstack with Chef</title>
        <subtitle/>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Learn about how to use the OSS Automation Platform Chef to deploy the OSS Cloud Platform Cloudstack.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Learn about how to use the OSS Automation Platform Chef to deploy the OSS Cloud Platform Cloudstack. In this talk I'll cover the steps and gotchas in writing cookbooks to deploy Cloudstack, the reasons for doing so, and the ways the deployment process was optimized to cut the overall time required to deploy. Additionally we'll talk about how to automatically configure the Cloudstack environment once it is deployed.&lt;/p&gt;</description>
        <persons>
          <person id="1705">Michael Ducy</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/Deploying_Cloudstack_with_Chef.webm">Video</link>
        </links>
      </event>
      <event id="1788">
        <start>14:00</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>introduction_docker</slug>
        <title>Introduction to Docker</title>
        <subtitle>Containerization is the new virtualization</subtitle>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Docker is an open source LXC-based container service that was released in March 2013. It makes it easy to create lightweight, portable, and self-sufficient containers. Containers which you can use to test applications, build, and run services or even to build your own platform-as-a-service. Learn why Docker matters, how to get started with it and see some cool examples of Docker in action.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will explain:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Why Docker?&lt;/li&gt;
&lt;li&gt;Installing Docker&lt;/li&gt;
&lt;li&gt;Getting started with Docker&lt;/li&gt;
&lt;li&gt;Demo some cool Docker use cases&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;It'll also discuss the right places to use Docker and try to answer some of the questions around using Docker with other tools like Puppet and Chef. By the end of the talk I will demonstrate both how Docker is useful and how to make use of it.&lt;/p&gt;</description>
        <persons>
          <person id="13">James Turnbull</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/Introduction_to_Docker.webm">Video</link>
        </links>
      </event>
      <event id="1819">
        <start>14:30</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>metadata_ocean_puppet_chef</slug>
        <title>A metadata ocean in Puppet and Chef</title>
        <subtitle>How to cope with metadata organisation</subtitle>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;How to handle metadata in puppet and chef, what are our observed best practices and how to maintain coherency&lt;/p&gt;</abstract>
        <description>&lt;ul&gt;
&lt;li&gt;Introduction to metadata in chef&lt;/li&gt;
&lt;li&gt;Metadata organisation in chef&lt;/li&gt;
&lt;li&gt;Introduction to metadata in puppet (classic and hiera)&lt;/li&gt;
&lt;li&gt;Metadata organisation in puppet (hiera)&lt;/li&gt;
&lt;li&gt;Bad metadata practices in chef and puppet&lt;/li&gt;
&lt;li&gt;How to enforce good behaviours&lt;/li&gt;
&lt;li&gt;How to avoid brain metadata fragmentation between provisioners and configuration management&lt;/li&gt;
&lt;li&gt;Questions&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1729">Marc Cluet</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/A_metadata_ocean_in_Puppet_and_Chef.webm">Video</link>
        </links>
      </event>
      <event id="1740">
        <start>15:00</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>saltstack_configuration_management_meets_remote_execution</slug>
        <title>SaltStack</title>
        <subtitle>Configuration Management Meets Remote Execution</subtitle>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Saltstack is arguably one of the best of the "new breed" of configuration management solutions. In this talk, Corey takes the audience through a stand-up of a Salt environment and leads into some examples of how you can leverage the message bus to automate not just configuration management, but your entire infrastructure.&lt;/p&gt;

&lt;p&gt;Corey will show you how his sausage is made...&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Built with simplicity and speed as its overarching design goals, Salt has taken the configuration management world by storm over the past three years. Built atop a zeroMQ based message bus, realtime analysis of your existing environment, and rapid deployment and orchestration of your entire environment are now within reach. In this talk, we'll go through an initial setup of Saltstack in a lab environment, investigate signal passing from one node to another, and demonstrate how Salt can orchestrate entire environments both simply and effectively.&lt;/p&gt;</description>
        <persons>
          <person id="1636">Corey Quinn</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/SaltStack.webm">Video</link>
        </links>
      </event>
      <event id="1915">
        <start>15:30</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>razor_provision_like_boss</slug>
        <title>Razor - Provision like a Boss</title>
        <subtitle/>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Razor is a flexible open-source provisioning tool that makes it easy to control how machines are built based on rules and policies. It maintains an inventory of nodes and their hardware characteristics, gathered by booting each node into a discovery image. Discovery information, together with user-defined policies is used to make installation decisions.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Razor can install a wide variety of operating systems, from common Linux flavors like Debian, Ubuntu, CentOS, and RHEL, to operating systems known for their resistance to automated installation like ESXi and Windows. Beyond installation, Razor strives to be a tool for managing a machine's lifecycle, including power control via IPMI etc. and easy integration with external systems.&lt;/p&gt;

&lt;p&gt;Razor is an opinionated tool that focuses narrowly on provisioning, but makes it easy to hand off a node after installation to a configuration management system like Puppet to perform more complicated setup tasks and for ongoing maintenance. This talk will give an overview of Razor's capabilities and provide some hands-on examples about its use; it will also give examples of how Razor and Puppet can be used to address common provisioning problems, like building an OpenStack cloud.&lt;/p&gt;</description>
        <persons>
          <person id="1816">David Lutterkort</person>
        </persons>
        <links>
          <link href="https://github.com/puppetlabs/razor-server">Main code repository and Wiki</link>
          <link href="https://github.com/puppetlabs/razor-client">Command line client for the server's REST interface</link>
          <link href="https://github.com/puppetlabs/razor-el-mk">Microkernel used for discovery</link>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/Razor_Provision_like_a_Boss.webm">Video</link>
        </links>
      </event>
      <event id="1983">
        <start>16:30</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>foreman_integration_chef</slug>
        <title>Foreman integration with Chef (and others)</title>
        <subtitle/>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk I'd like to show a live demo covering status of Foreman and Chef integration and try to answer the question "where do we want to get"? Also I could sum up what's needed to add similar support for config management tools of your will.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1875">Marek Hulán</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/Foreman_integration_with_Chef_and_others.webm">Video</link>
        </links>
      </event>
      <event id="2090">
        <start>17:00</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>manageable_puppet_infrastructure</slug>
        <title>Manageable Puppet Infrastructure</title>
        <subtitle>Forging the pieces together</subtitle>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk is not about a specific component or a small part of using Puppet, but about a complete workflow on a Puppet infrastructure design that is easy to collaborate on, well-structured, and safe to use.&lt;/p&gt;

&lt;p&gt;Target audience: Puppet users with prior experience, but the basics are covered quickly as well.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;How to set up a manageable Puppet infrastructure, using 100% opensource tools. All talks that I've seen are about specific components, this talk/demo is about how to combine them to get a Puppet environment that is easy to collaborate on, well-structured, and safe to use.&lt;/p&gt;

&lt;p&gt;The demo shows the setup, including the workflow with Git-Flow, Gerrit. It also shows some common design problems and their solutions.&lt;/p&gt;

&lt;p&gt;Detailed instructions on configuring the environment that is demonstrated and the workflow can be found on http://puppetspecialist.nl&lt;/p&gt;</description>
        <persons>
          <person id="1949">Ger Apeldoorn</person>
        </persons>
        <links>
          <link href="http://puppetspecialist.nl">Blog</link>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/Manageable_Puppet_Infrastructure.webm">Video</link>
        </links>
      </event>
      <event id="2154">
        <start>17:30</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>classification_problem_challenges_solutions</slug>
        <title>The classification problem: challenges and solutions</title>
        <subtitle>External node classification, the CFEngine way</subtitle>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk I’ll briefly compare the approach to External Node Classification (ENC) of Puppet and CFEngine, and then describe a very simple yet powerful approach that has so far allowed Opera to cope with a sudden increase of managed nodes.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Classification in Configuration Management is the process of defining common traits of the managed systems (the classes), and tying classes and systems together. Classes collect nodes together in broadly defined sets: in each class most of the nodes share exactly the same traits, and different settings are applied to different classes of nodes.&lt;/p&gt;

&lt;p&gt;A node can be managed effectively only if it can be tied to the classes that describe its features, thus making classification a critical process. As all critical processes, classification either scales with the infrastructure or becomes a hindrance to its growth.&lt;/p&gt;

&lt;p&gt;Settings are supposed to be homogeneous across all systems in a certain class. However, there are nodes which are part of a class, and yet need some special settings that are different from all (or most) other nodes in the same class. One can well say that exceptions are actually the rule. If classification is critical, to be able to cope with exceptions efficiently in the classification process is crucial.&lt;/p&gt;

&lt;p&gt;It’s easy to understand that a simple “internal” node classification done in the tools’ configuration files does not scale (for many reasons), and that other ways must be found to connect together a scalable and manageable “classification database” with the Configuration Management tool of choice: you need “external” node classification to scale.&lt;/p&gt;

&lt;p&gt;Configuration Management tools acknowledge this need; for example: Puppet provides “plugs” in its configuration to get classification information from an executable program, and it has done so for ages. That sprung a large ecosystem of ENC tools, where hiera is a popular choice. What about CFEngine?&lt;/p&gt;</description>
        <persons>
          <person id="1950">Marco Marongiu</person>
        </persons>
        <links>
          <link href="http://wp.me/p3wWVC-gu">My article/post "External node classification, the CFEngine way"</link>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/The_classification_problem_challenges_and_solutions.webm">Video</link>
        </links>
      </event>
      <event id="2028">
        <start>18:00</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>nixos_declarative_configuration_linux_distribution</slug>
        <title>NixOS: declarative configuration Linux distribution</title>
        <subtitle/>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In recent years, we've seen many advances from typical imperative configuration of Linux distributions to more sophisticated declarative configuration systems. NixOS takes a different path to achieve declarative configuration than current widely used state-of-art configuration management systems. By redefining how we package software today using Nix package manager, Linux distribution is configured stateless without examining current state of configuration on the machine.&lt;/p&gt;

&lt;p&gt;During the talk, we'll be looking at concepts behind NixOS stack and I'll show some real world examples of usage.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Following technologies will be presented:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Nix, a purely functional package manager. This means that it can ensure that an upgrade to one package cannot break others, that you can always roll back to previous version, that multiple versions of a package can coexist on the same system, and much more.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;NixOS, a Nix-based Linux distribution. Thanks to Nix, it supports atomic upgrades, rollbacks and multi-user package management, and it has a declarative approach to system configuration management that makes it easy to reproduce a configuration on another machine.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;NixOps, a tool for deploying NixOS machines in a network or cloud.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1908">Domen Kožar</person>
        </persons>
        <links>
          <link href="http://nixos.org/nixos/">Nix-based Linux distribution</link>
          <link href="http://nixos.org/nix/">Purely functional package manager</link>
          <link href="https://github.com/NixOS/nixops">the NixOS-based cloud deployment tool</link>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/NixOS_declarative_configuration_Linux_distribution.webm">Video</link>
        </links>
      </event>
      <event id="2173">
        <start>18:30</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>service_orchestration_cloud_juju</slug>
        <title>Service orchestration in the cloud with Juju</title>
        <subtitle/>
        <track>Configuration management</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Building service orchestration with any language! Be it Bash, Python, Ruby, Chef, Node.js, Ansible, Salt, and most anything in between.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;What if we could stop caring about individual machines (unless you really want to) and just model deployments in the cloud like you can with Lego blocks?&lt;/p&gt;

&lt;p&gt;In Ubuntu we're building a collection of services, things that any one can deploy. Need a load balanced WordPress deployment with MySQL and memcached? What if instead of searching the web for "the perfect WordPress deployment" we built that into the operating system? Deploy it either via CLI or a web interface. Need more resources? Click a button for more instances.&lt;/p&gt;

&lt;p&gt;Smart DevOps have already figured out how to deploy these services in a way that scales; what if we could encapsulate that person's expertise, generalize it, and then let everyone deploy it that way?
Too many people are wasting time learning how to deploy "Hadoop" and getting lost in the weeds fixing config files rather than learning the actual technology. That's the problem we're trying to solve. Find the experts, define what a reliable, scalable, robust configuration is for that service, and stick it in the operating system, all open source, peer reviewed, and tested.&lt;/p&gt;

&lt;p&gt;And not just for the complicated things like Hadoop. In Ubuntu we're making so services can be made into lego blocks via a tool we call Juju. With over 100 "blocks" ready to deploy, I'm going to show you how you can spend less time searching for custom AMIs all over the internet to deploying entire stacks in as little as 4 or 5 commands.&lt;/p&gt;

&lt;p&gt;This talk is generally for system administrators and web developers (Ruby, Python, node, and so on) who want to save time when they need to spin up deployments for dev, testing, or production in the cloud, be it Amazon Web Services, HP Cloud, any OpenStack cloud, or even your own bare metal in your datacenter.&lt;/p&gt;</description>
        <persons>
          <person id="2012">Marco Ceppi</person>
        </persons>
        <links>
          <link href="http://juju.ubuntu.com">Juju Webpage</link>
          <link href="http://video.fosdem.org/2014/H1309_Van_Rijn/Saturday/Service_orchestration_in_the_cloud_with_Juju.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.2213">
      <event id="2051">
        <start>11:00</start>
        <duration>00:05</duration>
        <room>H.2213</room>
        <slug>legal_welcome</slug>
        <title>Welcome to the Legal and Policy Issues DevRoom</title>
        <subtitle>Third Year of This DevRoom Includes an Excellent Panel of Speakers</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Now in its third year, the FOSDEM Legal and Policy Issues DevRoom covers topics of licensing, legal, governance issues, and more as it relates to Open Source and Free Software projects.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Attendees are welcome to come and engage in lively debate with our excellent speakers.  Please come with your questions, comments or concerns.  The DevRoom talks are carefully chosen to avoid merely being introductory: we believe that FOSDEM attendees are well informed on these issues, and we welcome participation for all.  Our goal in organizing this DevRoom is to bring the previously secretive and non-public discussion on these sorts of issues to a public forum.&lt;/p&gt;</description>
        <persons>
          <person id="418">Tom Marble</person>
          <person id="441">Bradley M. Kuhn</person>
          <person id="448">Karen Sandler</person>
          <person id="583">Richard Fontana</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Saturday/Welcome_to_the_Legal_and_Policy_Issues_DevRoom.webm">Video</link>
        </links>
      </event>
      <event id="1799">
        <start>11:05</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>trolls_under_the_bridge</slug>
        <title>Trolls Aren't the Only Threat Under the Bridge</title>
        <subtitle>What should we do about anti-competitive software patent suits?  </subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Many small and medium free software projects are staffed by volunteers that don't have any money to tempt a patent aggression entity. There's been plenty of talk about patent trolls, but money isn't the only motive for a patent suit. Even if non-practicing entities are eventually curtailed, ill-intentioned practicing entities may not be affected. The free software community will still have to worry about anti-competitive suits, nuisance suits and suits designed to spread fear, uncertainty and doubt about the adoption of free software. So, what can we as free software builders, promoters and users do to protect the code we care about?&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Some solutions are only effective against non-practicing entities, while others may impact all kinds of bad actors. The strengths and weaknesses of proposed legislation, recent and ongoing campaigns and academic writings will be examined. If legislators and international trade negotiators won't take a stand against anti-competitive patent aggression, then we must do so as a community. Find out about some of the community solutions that are underway and how we can combat the threat of anti-FLOSS plaintiffs together.&lt;/p&gt;

&lt;p&gt;Getting rid of the trolls won't be enough. We must also defend ourselves against those who mean to slowly bleed resources out of free software with unjust patent aggression.&lt;/p&gt;</description>
        <persons>
          <person id="698">Deb Nicholson</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Saturday/Trolls_Arent_the_Only_Threat_Under_the_Bridge.webm">Video</link>
        </links>
      </event>
      <event id="2062">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>compliance_at_twitter</slug>
        <title>Open Source Compliance at Twitter</title>
        <subtitle>Lessons from the Twitter Open Source Office</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In 2011, Twitter embarked on creating an open source office. Since there's no real book out there when it comes to starting an open source office, we have a lot of interesting/hilarious lessons and stories to tell about the experience.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;From how we handle open source compliance issues to starting an open data program to our attitudes towards open source, there's lessons to share. In particular, we will share our views on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;open source licenses: strong copyleft versus weak copyleft&lt;/li&gt;
&lt;li&gt;scalable open source policies for engineers&lt;/li&gt;
&lt;li&gt;open source foundations vs. github&lt;/li&gt;
&lt;li&gt;practical open data&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1926">Chris Aniszczyk</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Saturday/Open_Source_Compliance_at_Twitter.webm">Video</link>
        </links>
      </event>
      <event id="2285">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>safety_critical_devices</slug>
        <title>Legal and Technical Issues of Safety Critical Devices</title>
        <subtitle/>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Safety Critical Devices.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;We rely on software more and more for critical functionality in our
society. Medical Devices and Cars are two areas where our lives
literally depend on the safety of this software. As more exploits are
demonstrated on cars, pacemakers and insulin pumps that show them to be
vulnerable, the industries are evaluating their technology and some are
advocating for free software as partial solution to these problems.
This panel will discuss free software in Safety critical devices.
including the implications of different licenses, issues regarding
warranties and indemnities and liability issues for manufacturers The
panel will discuss automotive and medical devices and consider
regulatory issues.&lt;/p&gt;</description>
        <persons>
          <person id="448">Karen Sandler</person>
          <person id="693">John Sullivan</person>
          <person id="1046">Jeremiah C. Foster</person>
          <person id="1244">Amanda Brock</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Saturday/Legal_and_Technical_Issues_of_Safety_Critical_Devices.webm">Video</link>
        </links>
      </event>
      <event id="1758">
        <start>15:00</start>
        <duration>00:25</duration>
        <room>H.2213</room>
        <slug>fla</slug>
        <title>Fiduciary License Agreement</title>
        <subtitle>Lessons Learned</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The first version of the Fiduciary License Agreement was published by the FSFE in 2007 in order to offer something that was missing at that time — a well balanced copyright assignment for the FS community.&lt;/p&gt;

&lt;p&gt;Since then different FS projects have made use of it. Some to assign copyright to FSFE and others to assign it to different entities in order to take care of paperwork and copyright issues for the FS project.&lt;/p&gt;

&lt;p&gt;In this presentation we will look at the lessons learnt in the diverse history of the FLA and look ahead what is in line for the next version of the FLA.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Fiduciary License Agreement [FLA] is a very well balanced copyright assignment that is beneficial for both organisations that foster FS project and the contributors.&lt;/p&gt;

&lt;p&gt;Its main goals are to:
- make sure the project stays Free Software;
- make license maintenance easier for the Fiduciary (the entity);
- retain as much freedom and power to the Beneficiaries (the contributors) over their own code as possible not to make the software non-Free.&lt;/p&gt;

&lt;p&gt;After a short introduction, we will look at how FSFE and other entities — from dedicated FS organisations to businesses and individuals — have made use of the FLA and which lessons were learnt in those 6 years.&lt;/p&gt;

&lt;p&gt;At the end of this session we will peek into the future of the FLA and discuss improvements aimed at the next revision.&lt;/p&gt;</description>
        <persons>
          <person id="1658">Matija Šuklje</person>
        </persons>
        <links>
          <link href="https://fsfe.org/activities/ftf/fla.html">Text of the FLA</link>
          <link href="https://fsfe.org/activities/ftf/fiduciary.html">FSFE's Fiduciary Programme</link>
          <link href="http://mail.fsfeurope.org/pipermail/press-release/2007q1/000168.html">Announcement of FLA launch</link>
          <link href="http://video.fosdem.org/2014/H2213/Saturday/Fiduciary_License_Agreement.webm">Video</link>
        </links>
      </event>
      <event id="2283">
        <start>15:30</start>
        <duration>00:25</duration>
        <room>H.2213</room>
        <slug>patents_free_software</slug>
        <title>Patents, Free Software &amp; Standards (Oh My!)</title>
        <subtitle/>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;h264, MPEG LA and patents.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Recently, Cisco released a software component for H264 video support under the BSD license. This would normally be considered Free Software, except for the fact that this standard is considered to be patented (where software patents apply). They are covering the MPEG LA licensing fees, but only for pre-built binaries, not for the corresponding source. I will discuss this issue, and why the resulting software is not only non-free, but does not solve any issues for distributors with a focus on Freedom (such as Fedora).&lt;/p&gt;</description>
        <persons>
          <person id="1777">Tom Callaway</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Saturday/Patents_Free_Software_Standards_Oh_My.webm">Video</link>
        </links>
      </event>
      <event id="2282">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>free_javascript</slug>
        <title>JavaScript</title>
        <subtitle>If you love it, set it free</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;On the Free Software implications of JavaScript.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;JavaScript served to you by a site is still software. It runs on your local computer. Typical computer use for just about everyone involves executing copious amounts of JavaScript on a daily basis, no matter what operating system they are using.  The vast majority of it carries no license or copyright notice at all, often because of concerns about optimizing bandwidth and speed. This makes it proprietary for the users who receive and execute it in their browsers, even if the source code is available elsewhere on the Internet in some repository under a free license.  The Free Software Foundation has proposed and implemented a couple of licensing metadata methods by which JavaScript which is intended to be free software can clearly say so, and therefore actually respect the freedom of its users. This is the first step in compliant and realistic distribution of copyleft-licensed JavaScript, as well as a step toward allowing free software users to run only free software inside the browser as they do outside the browser.  Other approaches have been proposed as well. What are the advantages and disadvantages to each? Why has JavaScript licensing been such a problem in general? What are the concrete impacts of this phenomenon? We will discuss these questions and seek input on the FSF approach so far.&lt;/p&gt;</description>
        <persons>
          <person id="693">John Sullivan</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Saturday/JavaScript.webm">Video</link>
        </links>
      </event>
      <event id="1929">
        <start>17:00</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>network_freedom</slug>
        <title>The road ahead for network freedom</title>
        <subtitle/>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Christopher Allan Webber of GNU MediaGoblin discusses the past, present, and future of free network services.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Issues of network freedom have gained much attention over the last six years, and increasingly so both within and outside of the software freedom communities.  Progress has been made, but present adoption shows we seem to have a ways to go.&lt;/p&gt;

&lt;p&gt;What opportunities and challenges face free network services?  Ranging from licensing decisions, technical choices, protocols, deployment configuration, and how we message ourselves, many components inform the past, present and future of this field.  Join Christopher Allan Webber of GNU MediaGoblin in talking about what can be done so that network freedom can be something that everyone can feasibly enjoy.&lt;/p&gt;</description>
        <persons>
          <person id="1062">Christopher Webber</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Saturday/The_road_ahead_for_network_freedom.webm">Video</link>
        </links>
      </event>
      <event id="2083">
        <start>18:00</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>governance_round_table</slug>
        <title>Open Source Governance best practices roundtable</title>
        <subtitle>Query panelists for their best ideas on Open Source Governance</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Five of our speakers from the Legal and Policy Issues devroom have agreed to participate in a governance best practices roundtable.
These practices may touch on contribution policy, review boards, policy manuals, licensing tools, trademark guidelines, etc.&lt;/p&gt;

&lt;p&gt;Questions will be asked of the panelists to start the roundtable and the audience will also be encouraged to participate in order to have more interaction with the panelists. Karen Sandler will be the moderator.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="66">Stefano Zacchiroli</person>
          <person id="448">Karen Sandler</person>
          <person id="1062">Christopher Webber</person>
          <person id="1246">Eileen Evans</person>
          <person id="1777">Tom Callaway</person>
          <person id="1926">Chris Aniszczyk</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Saturday/Open_Source_Governance_best_practices_roundtable.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.2214">
      <event id="2361">
        <start>11:00</start>
        <duration>00:05</duration>
        <room>H.2214</room>
        <slug>welcome</slug>
        <title>Welcome</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Welcome and introduction to the open document editors devroom.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="312">Italo Vignoli</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1690">
        <start>11:05</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>webodf_office_in_the_browser</slug>
        <title>WebODF: office in the browser</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;WebODF is an office suite for both local and cloud use. It works anywhere there is a browser or a browser widget. With WebODF you can edit office documents, share them, or publish them. WebODF is compatible with LibreOffice, Microsoft Office, OpenOffice and others, but can also be used stand-alone. It requires no special server software; it can be easily integrated with any web software.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Since WebODF started in 2010, it has grown in many directions. The new breakthrough feature is document editing. No other software makes it so easy to add office document editing functionality to your application. Not only did we add document editing, we added document editing for groups (collaborative editing).
Good software is easy to use and packed with features. That is why we made viewer.js. It makes it easy to publish PDF and ODF documents on your website or display them in your content management system.
In this talk, we will demonstrate all these exciting new features and explain how you can use them in your software.&lt;/p&gt;</description>
        <persons>
          <person id="101">Jos van den Oever</person>
        </persons>
        <links>
          <link href="http://webodf.org">main site</link>
          <link href="http://webodf.org/demo">editor demo</link>
          <link href="http://viewerjs.org">viewer site</link>
        </links>
      </event>
      <event id="2267">
        <start>11:20</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>libreoffice_plumbing_on_ios_and_android</slug>
        <title>LibreOffice plumbing on iOS and Android</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this presentation, I will present a summary of the peculiarities of LibreOffice internals on iOS and Android, and tell about some recent advances like running as 64-bit ARM64 code on the newest iOS devices.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Note: I am intentionally using the term "LibreOffice code", not "LibreOffice".&lt;/p&gt;

&lt;p&gt;Porting the LibreOffice codebase to iOS and Android was quite fun and many interesting issues had to be worked on. Some tasks were expected, like having to create new C++/UNO bridges for the two new platforms (not from scratch, but borrowing code from appropriate existing ones of course). Other issues were unexpected, like discovering the arbitrary and (relatively) low limit on the number of dynamic libraries loaded into a process on Android.&lt;/p&gt;

&lt;p&gt;In general the restrictions placed on iOS apps that would require significant changes to some part of LibreOffice internals were well documented and known in advance, while restrictions in Android were undocumented, often presumably coincidental (or even simply bugs), and thus came as a surprise.&lt;/p&gt;

&lt;p&gt;The porting efforts, and cross-compilation support in general, started back when we were still using a hybrid of old and new build mechanisms, which brought its own charms. But luckily dmake is dead now.&lt;/p&gt;</description>
        <persons>
          <person id="2013">Tor Lillqvist</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2214/Saturday/LibreOffice_plumbing_on_iOS_and_Android.webm">Video</link>
        </links>
      </event>
      <event id="2279">
        <start>11:45</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>changes_to_fields_in_writer_for_apache_openoffice_41</slug>
        <title>Changes to 'fields' in Writer for Apache OpenOffice 4.1</title>
        <subtitle>in-place editing of Input Fields and annotations on text ranges</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Presentation on the two changes in Writer for Apache OpenOffice 4.1 regarding 'fields' from the developers point of view.
The in-place editing of Input Fields is the one PoV, the other is the enhancement of comments/annotations to apply them on arbitrary text ranges.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Two changes made in Writer for Apache OpenOffice 4.1 are presented from the developers point of view. One of these changes is to improve the user experience for editing Input Fields - the content of these fields can now be filled/changed directly inside the text document's content. The other is the enhancement to apply comments/annotations to arbitrary text ranges. The enhancement for the comments/annotations based on patches provided by the OOXML improvement project, initiated by the OSBA.
First the impact of these changes for the user - which is the ultimate motivation for these changes - will be shortly presented. Afterwards the talk will concentrate on the code changes itself. It will be shown what kind of changes were needed and which parts of the code were touched. It will become clear why these two changes are somehow similar regarding the touched code. Used features, like the overlays from the drawing layer, will be discussed in detail. It is planned to give room for discussions on the made changes for better understanding, knowledge sharing and hopefully also further code improvements.&lt;/p&gt;</description>
        <persons>
          <person id="2075">Oliver-Rainer Wittmann</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2111">
        <start>12:00</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>writer_internals_how_are_the_pages_rendered</slug>
        <title>Writer internals: How are the pages rendered</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Witer internals: How are the pages rendered?&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="317">Jan Holesovsky</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2273">
        <start>12:30</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>real_time_compatible_odf_change_tracking</slug>
        <title>Real-time compatible ODF change-tracking</title>
        <subtitle>OASIS ODF Standardization</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The OASIS Advanced Document Collaboration subcommittee is working on an update of OpenDocument change-tracking (CT). The update will not only enhance the existing CT feature set to the current state of the art, e.g. tracking style changes, but also lay the foundation for the standardization of real-time collaboration (RTC) by making CT compatible to RTC.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The new design in a nutshell
Pattern of trackable changes of OpenDocument will be derived from common user actions and defined as "operations". The overall design of ODF change-tracking will change from a before/after XML design to a sequence of serialized operations, improving the merge ability using Operational Transformation. To split overall complexity the overall set of valid documents defined by the RelaxNG schema will be split into smaller XML components based on semantic entities known by the user, e.g. table, image, paragraph and character. A complete XML document tree is mappable to a component tree and operations are always referring to a component they are altering, choosing one of the 6 meta operation types: add, remove, split, merge, move and replace.
The theory part - new design in a nutshell
Pattern of trackable changes of OpenDocument will be derived from common user actions and defined as "operations". The overall design of ODF change-tracking will change from a before/after XML design to a sequence of serialized operations, improving the merge ability using Operational Transformation. To split overall complexity the overall set of valid documents defined by the RelaxNG schema will be split into smaller XML components based on semantic entities known by the user, e.g. table, image, paragraph and character. A complete XML document tree is mappable to a component tree and operations are always referring to a component they are altering, choosing one of the 6 meta operation types: add, remove, split, merge, move and replace.&lt;/p&gt;</description>
        <persons>
          <person id="1853">Svante Schubert</person>
        </persons>
        <links>
          <link href="https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office-collab">Homepage of OASIS Advanced Document Collaboration subcomittee</link>
        </links>
      </event>
      <event id="2306">
        <start>12:45</start>
        <duration>00:10</duration>
        <room>H.2214</room>
        <slug>ox_documents</slug>
        <title>OX Documents</title>
        <subtitle>OpenDocument Editor</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;OX Documents is a browser based ODF editor using the upcoming OASIS ODF change operations as principle design.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;OX Documents is a combination of word processing, spreadsheet and presentation editor.
Released is OX Text, which directly reads and writes native ODF and OOXML documents without loss of format. Known document parts are sent to clients via
operations and user changes are merged back into the DOM on the server. Merging is easy as OX Text already uses the upcoming ODF change operations as principle design. This session provides a brief introduction of the operation design in OX Text and lessons being learned.&lt;/p&gt;</description>
        <persons>
          <person id="1853">Svante Schubert</person>
        </persons>
        <links>
          <link href="https://www.ox.io/ox_text">OX Text home page</link>
        </links>
      </event>
      <event id="2167">
        <start>12:55</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>once_upon_a_primitive_slideshow</slug>
        <title>Once Upon a Primitive Slideshow</title>
        <subtitle>and other news from LibreOffice graphics</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Once Upon a Primitive Slideshow, and other news from LibreOffice graphics.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will outline recent progress on bringing forward slideshow and graphics stack in LibreOffice. Helpful pointers to code and feature branches will be given, and should you show up, expect to be chatted up for providing patches!&lt;/p&gt;</description>
        <persons>
          <person id="2006">Thorsten Behrens</person>
        </persons>
        <links>
          <link href="http://users.freedesktop.org/~thorsten/talks/fosdem_2014_slideshow_news_final.pdf">Slides</link>
        </links>
      </event>
      <event id="2295">
        <start>13:10</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>simplifying_reuse_with_metadata_support_in_odf_and_plugin_apis</slug>
        <title>Simplifying reuse with metadata support in ODF and plugin APIs</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Reusing images shared with Creative Commons licenses would be much easier if we could use tools that keep track of the attribution and license metadata for the images. This talk shows how this can be done today with a set of plugins to Firefox and LibreOffice/OpenOffice, and what could be done better with improved support in the plugin APIs.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;It is common to use images from e.g. Flickr to make a presentation or a document more engaging. Photographers can license their images with one of the Creative Commons licenses to allow this reuse, but they require that you credit the original creator by providing an attribution, preferably with a link to the original image, and the license information. This is typically done in the image caption in a document, or on an attribution slide towards the end of a presentation.&lt;/p&gt;

&lt;p&gt;The information required for the credit is sometimes available as machine-readable metadata, e.g. embedded as XMP in the file itself or as RDFa on the source web page. Tools can extract the attribution and license properties from this metadata and automatically insert credits in suitable places. Support for metadata is not very widespread today, but would make it much easier to reuse images by drastically reducing the effort for providing the required attribution.&lt;/p&gt;

&lt;p&gt;The plugins and libraries developed by Commons Machinery support using RDFa metadata on copy-paste. When an image is copied from Firefox using the plugin, both the image and the RDF triples are copied to the clipboard. The LibreOffice/OpenOffice plugin pick up the properties together with the image when it is pasted to automatically generate a correct attribution.  The talk will explain how this works, and suggest improvements to the plugin APIs and to LibreOffice/OpenOffice to make this metadata even more useful in ODF documents.&lt;/p&gt;</description>
        <persons>
          <person id="1556">Peter Liljenberg</person>
        </persons>
        <links>
          <link href="http://commonsmachinery.se/labs/">Firefox and LibreOffice plugins</link>
        </links>
      </event>
      <event id="2220">
        <start>13:25</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>time_based_charting_for_libreoffice</slug>
        <title>Time based charting for Libreoffice</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A short overview of the new time based charting feature in Libreoffice.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Libreoffice brings now support for new time based charting. We will present this new feature and show some possible development ideas for the future. Additionally we we show the new 4D real time charting that is possible with this new approach.&lt;/p&gt;</description>
        <persons>
          <person id="775">Markus Mohrhard</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2221">
        <start>13:50</start>
        <duration>00:10</duration>
        <room>H.2214</room>
        <slug>automated_import_and_export_testing_of_file_import_and_export</slug>
        <title>Automated import and export testing of file import and export</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A short presentation of the tests the Libreoffice team uses to test import and export filters.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Libreoffice team uses a number of tests for import and export testing. We will present what and how we use different approaches to make Libreoffice better. As a highlight we will present our script that imports around 45000 documents in various formats and exports more than 60000 documents regularly on a server. Additionally we will show some of the in-build file format testing approaches used in the Libreoffice project.&lt;/p&gt;</description>
        <persons>
          <person id="775">Markus Mohrhard</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2309">
        <start>14:00</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>improving_the_xhtml_export_filter</slug>
        <title>Improving the XHTML export filter</title>
        <subtitle>And mentoring students through patches and licenses</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The XHTML Export filter in OpenOffice has traditionally been quite limited. In an ongoing project, students are being mentored to integrate work by Habib Louafi based on an older version of OpenOffice into the current trunk. This work adds substantial new features such as: support for fonts, better layout, better support for images, and support for shapes. We will see the technical progress, but also the process with students working in different phases and having to work around licensing issues and dependency issues.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1275">Andrea Pescetti</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2214/Saturday/Improving_the_XHTML_export_filter.webm">Video</link>
        </links>
      </event>
      <event id="1961">
        <start>14:15</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>interopgrabbag_in_libreoffice_writer</slug>
        <title>InteropGrabBag in LibreOffice Writer</title>
        <subtitle>What it is, how to use it and what uses it already.</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;LibreOffice Writer's ODF filter was always capable of remembering attributes of elements which it does not understand, so after a load and save, such attributes were not lost. But what about the rest of the file formats? InteropGrabBag is a new API we have been creating over the past few months that lets foreign filters store their unhandled attributes, so such information is not lost during such a round trip. Come and see where we are, what still needs to be done, and how you can help.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="779">Miklos Vajna</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2292">
        <start>14:30</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>librevenge_is_suite</slug>
        <title>librevenge is suite</title>
        <subtitle>What is new in the world of import filters and what is coming soon</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;What is new in the file-format coverage within LibreOffice? Focusing on new improved APIs which will land in LibreOffice 4.3, encouraging details about the growth of filter-writing community.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The talk will focus on the new import filters that entered LibreOffice since last FOSDEM. We will also speak about two new libraries with improved APIs that help filter-writers to generate different flavours of ODF (ODG, ODP, ODS and ODT) in a simplified way. The tools used for reverse-engineering and introspection of files will be also presented.&lt;/p&gt;</description>
        <persons>
          <person id="315">Fridrich Strba</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2274">
        <start>15:00</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>genlang_a_new_workflow_for_translation</slug>
        <title>genLang, a new workflow for translation.</title>
        <subtitle>Apache OpenOffice</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Workflow from developer creates a text string, until a released product with n languages.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1013">Jan Iversen</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2214/Saturday/genLang_a_new_workflow_for_translation.webm">Video</link>
        </links>
      </event>
      <event id="2089">
        <start>15:15</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>how_to_squeeze_a_language_tag_into_a_locale</slug>
        <title>How to squeeze a language tag into a Locale</title>
        <subtitle>What you need to know about BCP 47 language tags in your ODF editor.</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;ODF 1.2, additionally to the fo:language and fo:country attributes, introduced fo:script and *:rfc-language-tag attributes to allow for the full range of BCP 47 language tags. This talk will give a brief overview what it means to applications and how LibreOffice implemented it and the consequences it may have for extension developers.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="777">Eike Rathke</person>
        </persons>
        <links>
          <link href="http://erack.org/material/2014-02-01_FOSDEM_How-to-squeeze-a-language-tag-into-a-Locale.pdf">Slides of the talk.</link>
          <link href="http://video.fosdem.org/2014/H2214/Saturday/How_to_squeeze_a_language_tag_into_a_Locale.webm">Video</link>
        </links>
      </event>
      <event id="2308">
        <start>15:30</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>quality_assurance</slug>
        <title>Quality Assurance</title>
        <subtitle>The important work, who no one wants to pay for</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The important work which no one wants to pay for.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2084">Raphael Bircher</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2270">
        <start>15:55</start>
        <duration>00:10</duration>
        <room>H.2214</room>
        <slug>create_sidebar_extensions_for_openoffice</slug>
        <title>Create Sidebar Extensions for OpenOffice</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;An introduction of how to create new panels for the OpenOffice sidebar.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Creating new panels for the OpenOffice sidebar is easy once you understand which steps have to be taken and why they are necessary.  There are three different aspects:&lt;/p&gt;

&lt;p&gt;1 The UNO API of OpenOffice
2 The general structure of addons.
3 The additional requirements of the sidebar.&lt;/p&gt;

&lt;p&gt;This talk will skip the first, mention the second and focus on the third.&lt;/p&gt;</description>
        <persons>
          <person id="2069">Andre Fischer</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2269">
        <start>16:05</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>how_to_use_the_new_ui_format_to_do_accessibility_right</slug>
        <title>How to use the new ui format to do Accessibility right</title>
        <subtitle>Notes for developers to get accessibility right in dialogs for LibreOffice when using the new ui format</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Notes for developers to get accessibility right in dialogs for LibreOffice when using the new UI format. How to convert existing accessibility relations in old code into the new XML descriptions. How to set mnemonics and why it is important. How to tweak containers to enhance accessibility.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2068">Caolán McNamara</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2225">
        <start>16:20</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>re_using_and_re_targetting_libreoffice</slug>
        <title>re-using and re-targetting LibreOffice</title>
        <subtitle>liblibreoffice and other ways of re-using us</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Come and hear how you can re-use LibreOffice's powerful functionality in a variety of settings: for document indexing, headless on a server, file format shifting, charting, and more.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;LibreOffice has a ton of interesting and useful functionality,
and a supposedly wonderful abstract component model. However
in-practise re-using it for different purposes than a PC office suite
is a real pain. Come and hear how we're overcoming this in various
ways. Hear about our command-line format conversion avoiding remote
control RPC issues. See how you can use liblibreoffice to bring a
complete libreoffice into your process without a dependency and
linking nightmare. Hear about our new tiled rendering and how it can
be applied to new user interfaces.&lt;/p&gt;</description>
        <persons>
          <person id="425">Michael Meeks</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2271">
        <start>16:50</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>openoffice_and_eclipse</slug>
        <title>OpenOffice and Eclipse</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Use Eclipse and CDT to improve OpenOffice development.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Many features of an IDE like code assist/completion, refactoring, exploration of type hierarchies are common place for languages like Java.  For C++ and especially for such a large and complex project as OpenOffice these features where not easily available.  Or so I thought.  With recent versions of Eclipse and CDT and with proper organization of OpenOffice modules it is possible develop more easily and more productively than with mere command line interfaces.&lt;/p&gt;

&lt;p&gt;With addons tailored to the needs of OpenOffice development the whole development cycle of editing, building, deployment, testing (debugging to some extent) can be done from within Eclipse with just a few key presses.&lt;/p&gt;

&lt;p&gt;I will describe
- how to set up Eclipse to handle the huge codebase of OpenOffice
- some of the highlights that Eclipse and CDT bring to editing source code
- how to build and deploy code changes&lt;/p&gt;</description>
        <persons>
          <person id="2069">Andre Fischer</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2290">
        <start>17:05</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>central_configuration_management_of_large_libreoffice_deployments</slug>
        <title>Central configuration management of large LibreOffice deployments</title>
        <subtitle>... demonstration of new tools and new options</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In large organizations there is a need for central configuration management of desktops, including LibreOffice deployments. The new Windows registry configuration backend allows integration of LibreOffice into Windows Server environments. LibreOffice can be configured with Group Policy Objects. Under Linux, configuration packages can be managed with Remote Root, which is an easy to use, new open source central management solution for Linux (or other package based) systems. This talk will show how these tools work.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="313">Andras Timar</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2074">
        <start>17:20</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>debugging_bof</slug>
        <title>Debugging BoF</title>
        <subtitle>Community Outreach for Open Document Developers</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Workshop for questions related to GDB usage and strategies, and outreach from the GDB community to developers in the field of open document design and implementation.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;A debugging workshop for open document developers.  Both Openoffice and Libreoffice (and others) are large and complex programs, and we in the GDB community would like to help you, listen to your issues, and try to make life a little easier. The purpose of the workshop will be open.  There is no talk.  The content will be lead by the people in the room.  We in the GDB community want to listen to your concerns, and help you achieve the goals that you wish to achieve in your development life-cycle.&lt;/p&gt;</description>
        <persons>
          <person id="1930">Phillip Muldoon</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2307">
        <start>17:35</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>exploring_openoffice_history_using_git_grafts</slug>
        <title>Exploring OpenOffice History using GIT Grafts</title>
        <subtitle>Abandon hope all ye who enter here</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;OpenOffice has a huge and old code base. When working with it one all too often stumbles over parts where knowledge of some code's unmangled commit comments, the motivation behind a change, the caveats surrounding it, references to issue numbers, its relationship with other source files, or its relationship with other issues would be very useful. Some of this knowledge is still available but many pieces were almost lost in each major change of the repository. Using GIT grafts allows to revive that old history as well as possible in only one revison control system: Git.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;OpenOffice has a code history of over 25 years. Its proprietary ancestry in the form of revision control system and issue trackers are gone for good, but the almost 14 years of progress as open source are available. Over time different revision control systems were used: CVS, Subversion, Mercurial, Subversion/GIT for AOO/LO.&lt;/p&gt;

&lt;p&gt;Fortunately tarballs of the CVS repository were published and archived, the Subversion server supported svn syncing and much of the Mercurial history could be salvaged. For each of these sources it was possible to create GIT imports, the lingua franca of revision control systems. Using git grafts it is possible to stitch these old histories together which makes it much easier to research the code.&lt;/p&gt;</description>
        <persons>
          <person id="2083">Herbert Duerr</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2264">
        <start>17:50</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>lo_14</slug>
        <title>LO++14</title>
        <subtitle>How to make use of 21st century C++ in LibreOffice development</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Advances in C++ have gathered momentum with C++11 and forthcoming C++14, and compiler writers busy to keep up. However, for reasons of cross-platform, cross-compiler, aging baselines, etc., the LibreOffice code base is still mostly stuck with C++98. We will discuss how to overcome blockers in adoption of modern C++ features and in what ways LibreOffice would benefit from them.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="780">Stephan Bergmann</person>
        </persons>
        <links>
          <link href="http://people.redhat.com/~sbergman/FOSDEM2014.odp">slides</link>
        </links>
      </event>
      <event id="2296">
        <start>18:20</start>
        <duration>00:15</duration>
        <room>H.2214</room>
        <slug>liberated_build_system_mission_accomplished</slug>
        <title>Liberated Build System: Mission Accomplished</title>
        <subtitle>What's next?</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;LibreOffice now uses a purely GNU make based gbuild build system, where do we get from here?&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Now that we can leave behind the artificial restrictions of the old system, while enjoying the opportunities of the freedoms gained with the new system, we can reap what we sowed: &lt;a href="http://skyfromme.wordpress.com/2013/12/04/libreoffice-ide-integration/"&gt;IDE integration&lt;/a&gt;, reliable incremental builds, sensible splitting of the build for packaging and building a directly runnable relocatable product without additional copies are a few benefits we already achieved. More will soon join these, making it even more &lt;a href="http://www.rants.org/2013/07/28/libreoffice_insanely_easy_build_process/"&gt;"ridiculously easy"&lt;/a&gt; (Karl Fogel) to build and develop LibreOffice.&lt;/p&gt;</description>
        <persons>
          <person id="2082">Bjoern Michaelsen</person>
        </persons>
        <links>
          <link href="http://skyfromme.wordpress.com/">speakers blog</link>
          <link href="http://skyfromme.wordpress.com/2013/02/28/one/">announcement of completed migration</link>
          <link href="http://skyfromme.wordpress.com/2013/12/04/libreoffice-ide-integration/">LibreOffice IDE integation</link>
          <link href="http://www.rants.org/2013/07/28/libreoffice_insanely_easy_build_process/">LibreOffice rediculously easy to build</link>
          <link href="http://people.canonical.com/~bjoern/presentations/build-system.odp">slidedeck (odp)</link>
          <link href="https://speakerdeck.com/sweetshark1/liberated-build-system-mission-accomplished">slidedeck (pdf/web version)</link>
          <link href="http://">http://</link>
        </links>
      </event>
      <event id="2276">
        <start>18:35</start>
        <duration>00:10</duration>
        <room>H.2214</room>
        <slug>digital_signing_of_releases</slug>
        <title>Digital signing of releases</title>
        <subtitle>Apache OpenOffice</subtitle>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Digital signatures for OpenOffice releases.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1013">Jan Iversen</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2362">
        <start>18:55</start>
        <duration>00:05</duration>
        <room>H.2214</room>
        <slug>wrap_up</slug>
        <title>Wrap Up</title>
        <subtitle/>
        <track>Open document editors</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Wrap Up&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="312">Italo Vignoli</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="AW1.120">
      <event id="1860">
        <start>11:00</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikicomparison</slug>
        <title>A comparison between MediaWiki, TWiki and XWiki communities</title>
        <subtitle>Using metrics to measure communities</subtitle>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Presentation about the communities around. The report will be based in gathering community metrics from the three projects. Code and Issues contributors will be covered and analyzed with total global metrics and the evolution in time of those metrics.&lt;/p&gt;

&lt;p&gt;Using information in development repositories of MediaWiki, TWiki, and XWiki, this talk will explore how the communities are evolving. Different techniques will be used to show different aspects of the evolution, from analysis of commits or tickets to comparison of released source code.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;A detailed analysis of how a software project is evolving, performing and behaving can be produced based on information in its development repositories. In this case, MediaWiki, TWiki and XWiki are analyzed, thanks to its open development model which allows for public access to those repositories.&lt;/p&gt;

&lt;p&gt;The analysis includes several aspects of the project, and proposes some parameters that could be monitored to learn about how some of those aspects are evolving over time, so that corrective actions can be taken if needed. Some of the aspects that are analyzed are: the community of developers and contributors, the evolution of the source code, and the attention to tickets. Plots and graphs with various kinds of information obtained from this analysis will be presented, along with their interpretation and possible uses for the improvement of the project or the benefit of its users. The methodology and tools used for the analysis will also be explained, with the aim of letting others reproduce it.&lt;/p&gt;

&lt;p&gt;As a result of the analysis, a dashboard with detailed information about the development of MediaWiki, TWiki and XWiki will be produced, made publicly available, and presented in the talk.&lt;/p&gt;</description>
        <persons>
          <person id="1774">Alvaro del Castillo San Felix</person>
        </persons>
        <links>
          <link href="http://korma.wmflabs.org/browser/">MediaWiki analysis</link>
          <link href="http://bitergia.com/report/">Other reports</link>
        </links>
      </event>
      <event id="1958">
        <start>11:30</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wiki_show_tiki_org</slug>
        <title>show.tiki.org project: improve bug reporting and solving</title>
        <subtitle>The new Tiki infrastructure for improving bug reporting and solving</subtitle>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Tiki Wiki CMS Groupware (Tiki for short) is the Free and Open Source Web Application with the most built-in features. It also has a very open developer community policy which supports "the wiki way of writing software". This emphasizes some common challenges, especially in terms of debugging and bug reporting.&lt;/p&gt;

&lt;p&gt;This talk is about the infrastructure at show.tiki.org which we have set up for bug reporters to showcase the bugs on a running Tiki instance.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This project was started during the April 2013 Ottawa TikiFest where we pondered ways of improving Tiki by improving our debugging process.
We have already had a bug tracker for ages, but too many bugs stay unresolved because they are not understood or not reproduced by the volunteer developers.&lt;/p&gt;

&lt;p&gt;So we started this new project to facilitate bug reporting and solving.
It can be quite time consuming to read and understand some of the bug reports (They are often edge cases). Experience shows that if you can demonstrate a bug (and for a regression, pinpoint which commit introduces it), things can get fixed quickly.&lt;/p&gt;

&lt;p&gt;This talk will:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Explain what issues this infrastructure solves&lt;/li&gt;
&lt;li&gt;Explain the benefits to bug reporters and how they use it&lt;/li&gt;
&lt;li&gt;Explain the benefits to developers and how they use it&lt;/li&gt;
&lt;li&gt;Explain the scope, early requirements, technical choices and plans for the future&lt;/li&gt;
&lt;li&gt;Describe the underlying technical infrastructure&lt;/li&gt;
&lt;li&gt;What was postponed/is planned for version 2.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;This is a very successful project which brought many benefits to the Tiki community. Both users and coders appreciate it. It hosts 200 live sites after 4 months of existence. There will definitely be a version 2.&lt;/p&gt;

&lt;p&gt;We feel it could be of benefit to other web-based projects. It might be either reproduced from general principles by rewriting and adapting our code or, if there is interest, it could be branched off Tiki and expanded as a more generic solution for any wiki (or web-based) application.&lt;/p&gt;</description>
        <persons>
          <person id="1713">Jean-Marc Libs</person>
        </persons>
        <links>
          <link href="http://dev.tiki.org/show.tiki.org+Overview">Working Overview of show.tiki.org project</link>
          <link href="http://dev.tiki.org/show.tiki.org">Technical Working Overview of show.tiki.org project</link>
        </links>
      </event>
      <event id="2262">
        <start>12:00</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikilanguagedashboard</slug>
        <title>Coverage for basic language support components -- A Dashboard view</title>
        <subtitle/>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Language Coverage Matrix Dashboard, a product supported by the Language Engineering Team, aims to provide an overview of all the resources that are available for Wikipedia and its sister projects. The talk will cover the basic introduction to this product, followed by the detailed description of its architecture, roadmap, and future plans.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Language Engineering Team of the Wikimedia Foundation actively works on building the language support for Wikipedia and its sister projects. For all the 300 different languages that these wikis are available in, the team works on developing the support for various fonts and input methods to provide the users with all manner of language related technical support that are needed. Clearly, there was a need of gathering all the information around the language support and the resources for the languages currently supported in the Wikimedia sites, provided by the Language Engineering team. Language Coverage Matrix Dashboard is aimed to serve that purpose.&lt;/p&gt;

&lt;p&gt;An instance of the Dashboard is now up on Wikimedia Labs. While the database has MySQL in background, it's a single page website with JavaScript filters to automate the search. This also has got an API console to generate raw data about the language components along with the query detail, that could be used to implement the data on any web-project.&lt;/p&gt;

&lt;p&gt;In the talk, a basic introduction to LCMD will be given, along with a demo of the product. While the basic features will be shown in the demo, there will be a discussion about that in the talk. A detailed description of the architecture and the technologies used will talked about as well. I hope to interact with the audience during this session especially about the visualization of the data, which is the next area of focus for the product. I also look forward to receiving feedback from users and developers already familiar with the LCMD or similar dashboards.&lt;/p&gt;

&lt;p&gt;Language Coverage Matrix Dashboard has been developed as a Google Summer of Code project by Harsh Kothari under the mentorship of Runa Bhattacharjee and Alolita Sharma. I have been associated with it since quite some time and have been working on the maintenance of the product. I would like to add Harsh Kothari as the co-speaker, who has been the primary developer for the project.&lt;/p&gt;</description>
        <persons>
          <person id="1610">Harsh Kothari</person>
          <person id="2064">Sucheta  Ghoshal</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1969">
        <start>12:30</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikitranslation</slug>
        <title>Crowdsourced translation using MediaWiki</title>
        <subtitle/>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The MediaWiki Translate extension was first introduced in 2007. Initially it was only used on translatewiki.net for software localisation. Later it was enabled on KDE's userbase wiki for translating their documentation. These days, the Translate extension is also used on Wikimedia wikis where the equivalent of more than one thousand A4 pages of pages of structured documentations is being translated each month. The next step is a feature for the mass translation of Wikipedia pages into any language combination to combine machine translation and content generation to allow every single human to freely share in the sum of all knowledge.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1865">Siebrand Mazeland</person>
        </persons>
        <links>
          <link href="https://commons.wikimedia.org/wiki/File:FOSDEM_2014_Crowdsourced_translation_using_MediaWiki_-_Siebrand_Mazeland.pdf">Slides Crowdsourced translation using MediaWiki</link>
        </links>
      </event>
      <event id="2257">
        <start>13:00</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikicounting</slug>
        <title>Counting (on) views — Page views on Wikipedia</title>
        <subtitle/>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;While “total number of page views” still serves as simple, purely traffic-based metric to compare sites, it is an often misused metric around wikis. Management, analysts, and wiki communities have different understandings about which requests (should) qualify as page views. We exhibit the key differences, expose the resulting challenges and finally discuss possible solutions in a Wikipedia context.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1910">Christian Aistleitner</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2102">
        <start>13:30</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikilingo</slug>
        <title>wikiLingo - a unified approach to wysiwyg... programming?!?!</title>
        <subtitle>what you see is programming</subtitle>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;wikiLingo is a programming environment that is wysiwyg first.  It is parsed JIT and creates a sort of DOM that is traversable and modifiable.  wikiLingo comes with wiki markup, but it is so much more than that.  It is a cross CMS platform for a living whiteboard.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Imagine a living whiteboard, where you could tell the whiteboard you wanted to have a movie, a tabbed interface, a report, and logic, in sort of pseudo way, and the whiteboard do what you want... without ever writing a line of code.  Meet wikiLingo.&lt;/p&gt;

&lt;p&gt;Why is wikiLingo different?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Editing: wikiLingo uses html5's contenteditable and complements it with javascript that forces it to act the same in modern browsers, thus limiting the amount of code needed for a wysiwyg editor, because you are using the browser, not a monolithic wysiwyg project.&lt;/li&gt;
&lt;li&gt;Parsing: wikiLingo parses to an object oriented structure, just like a DOM does with html (a POM, or Parsed Object Model).  This structure can then be rendered to whatever component is needed abstractly.  You want html? fine.  wysiwyg html? ok!  PDF, sweet! EPUB, no problem.  These are abstract layers that can be manipulated at will.&lt;/li&gt;
&lt;li&gt;WYSIWYG HTML: html is seen as a separate item within wikiLingo, although in the wysiwyg output, there are both standard html and wikiLingo markup html, they are treated completely different.&lt;/li&gt;
&lt;li&gt;Drag and Drop in WYSIWYG: CKEditor says this is going to be a very complicated task, and it is like they are doing it.  They say you can't nest widgets, they are just doing it wrong.  What we have come up with is the ability to insert a drag handle image into the page when wysiwyg is needed, this handle forces the plugin to detach from the page when dragging and is then reinserted where the image is dragged to.  By doing this, we have ALREADY SOLVED drag and drop.&lt;/li&gt;
&lt;li&gt;Standardisation: We are already compliant with Drupal, and WordPress, and are brainstorming an easy transition into Tiki.&lt;/li&gt;
&lt;li&gt;Security: wikiLingo parses html tags, and knows which ones are acceptable (this can be changed with events), when a tag is not acceptable, it is rendered in a way that it is safe, and won't be parsed on the client.&lt;/li&gt;
&lt;li&gt;Implementation: wikiLingo is event driven, so ANY system can tap into these events and do things like limit certain plugins for security, only allow certain users to user certain plugins.  The sky is the limit.&lt;/li&gt;
&lt;li&gt;CSS and Javascript management: wikiLingo has a css and javascript collector that is used internally, this makes cross platform implementation a breeze!&lt;/li&gt;
&lt;li&gt;Multi Language: It is a very simple event, wikiLingo is easily tapped into to facilitate any language needed&lt;/li&gt;
&lt;li&gt;Roadmap?:  wikiLingo is built in php, but it is strongly typed in order for it to be used on other platforms in the future... Like C# ;)&lt;/li&gt;
&lt;li&gt;What is the goal?: To make a wysiwyg tool that a grandma could use.&lt;/li&gt;
&lt;li&gt;But it is programming?!?: Yes but you don't have to code, it is "programming... without".&lt;/li&gt;
&lt;li&gt;I've heard enough, I want to see it! ok:&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;(please note, the is a preview, the site has not launched yet)
http://wikiLingoDoesThat.com/demo/editor.php (a simple editor implementation, highlight some text)
http://wikiLingoDoesThat.com/demo/mirror.php (if you actually want to code, here you can)
http://wikiLingoDoesThat.com/demo/test.php (unit tests)
http://wikiLingoDoesThat.com/demo/compare.php (reciprical wikiLingo to html5 wysiwsyg to wikiLingo test, please ignore the php warnings, we are fixing them)&lt;/p&gt;

&lt;p&gt;Github Links:
The organization: https://github.com/wikilingo
The code, and examples of accepted syntax: https://github.com/wikiLingo/wikiLingo
The code wiki: https://github.com/wikiLingo/wikiLingo/wiki
The drupal plugin: https://github.com/wikiLingo/drupal
the wordpress plugin: https://github.com/wikiLingo/wordpress&lt;/p&gt;</description>
        <persons>
          <person id="2092">Torsten Fabricius</person>
        </persons>
        <links>
          <link href="http://wikilingodoesthat.com/mirror.php">Reflect wikiLingo as simple html</link>
          <link href="http://wikilingodoesthat.com/editor.php">Write wikiLingo, with wysiwyg</link>
          <link href="http://video.fosdem.org/2014/AW1120/Saturday/wikiLingo_a_unified_approach_to_wysiwyg_programming.webm">Video</link>
        </links>
      </event>
      <event id="2004">
        <start>14:00</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikixwikirendering</slug>
        <title>XWiki Rendering: A content rendering engine</title>
        <subtitle/>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Presents http://rendering.xwiki.org/ a generic engine for transforming content in a given syntax (mediawiki, confluence, JSPWiki, Markdown, HTML, XWiki Syntax, etc) into an output format (PDF, HTML, XML, etc), applying optional transformations.&lt;/p&gt;

&lt;p&gt;This framework is generic and can be used outside of XWiki easily into your own Java applications.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1387">Vincent Massol</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1120/Saturday/XWiki_Rendering_A_content_rendering_engine.webm">Video</link>
        </links>
      </event>
      <event id="2245">
        <start>14:30</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikivisualeditor</slug>
        <title>VisualEditor</title>
        <subtitle>Wikipedia's new editing system for wikis and for the web</subtitle>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Wikipedia is supposed to be "the free encyclopedia that anyone can edit". However, from our research we know that that's not really true. The wikitext markup used on most Wikipedia articles has gotten so complex that most people can't figure out how to make changes. To address this problem, the Wikimedia Foundation and Wikia are developing VisualEditor, a new, WYSIWYG-like editor for wiki pages. VisualEditor is already available on Wikipedia, but in this presentation I will show you how you can install VisualEditor on your own wiki and customize it to your needs.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;While VisualEditor is primarily developed with editing MediaWiki pages in mind, we deliberately designed it from the ground up to be a generic HTML editor, completely independent from MediaWiki. Our long-term goal is to make VisualEditor the FLOSS HTML editor for the web; to make it so much better than other editors out there that other projects will want to use it too. We're very excited about the prospect of integrating VisualEditor with other applications than MediaWiki, because so many HTML / rich text editors on the web today just aren't things people want to use.&lt;/p&gt;</description>
        <persons>
          <person id="2056">Roan Kattouw</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1120/Saturday/VisualEditor.webm">Video</link>
        </links>
      </event>
      <event id="2314">
        <start>15:00</start>
        <duration>00:55</duration>
        <room>AW1.120</room>
        <slug>wikipanel</slug>
        <title>Wikis cross-project collaboration</title>
        <subtitle>Open discussion: in which areas should different wiki projects work together?</subtitle>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Cross-wiki collaboration topic and speakers to be decided at the wikis-devroom mailing list.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
        </persons>
        <links>
        </links>
      </event>
      <event id="1999">
        <start>16:00</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikixwiki</slug>
        <title>Developing the XWiki software</title>
        <subtitle/>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Explains how the XWiki software is developed on all aspects:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Governance&lt;/li&gt;
&lt;li&gt;Build process&lt;/li&gt;
&lt;li&gt;Release process&lt;/li&gt;
&lt;li&gt;Communication tools&lt;/li&gt;
&lt;li&gt;Code quality&lt;/li&gt;
&lt;li&gt;xwiki.org vs xwiki.com
And more...&lt;/li&gt;
&lt;/ul&gt;
</abstract>
        <description></description>
        <persons>
          <person id="529">Marius Florea</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1765">
        <start>16:30</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikitools</slug>
        <title>Force Multiplication</title>
        <subtitle>Victory through external tool writing</subtitle>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Fostering an environment where user-developers are enabled and encouraged to automate and interface with our wikis with their code has allowed their productivity and impact to be greatly increased, has stimulated development work on the core code itself, and has allowed the establishment of a vibrant ecosystem of open source development around our projects.&lt;/p&gt;

&lt;p&gt;In this presentation, I show what measures we took to stimulate that ecosystem and what lessons we learned about the impact it has on vitality of the developer community of our projects.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1666">Marc A. Pelletier</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1826">
        <start>17:00</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikidata</slug>
        <title>Wikidata</title>
        <subtitle>What we learned in its first 2 years and what is in store for the future</subtitle>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Wikidata is a new Wikimedia project that builds a free and open knowledgebase of structured data for Wikipedia and the world. We want to take a look back and talk about what we learned while building the project and take a look at what is coming in the future.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Wikidata is a new Wikimedia project that builds a free and open knowledgebase of structured data for Wikipedia and the world. The development started 2 years ago. Since then the project has grown rapidly. The project has taken off, a large community has gathered around it and a diverse 3rd-party ecosystem around it is growing. We want to take a look back and talk about what we learned while building the project and take a look at what is coming in the future for Wikimedia's shooting star.&lt;/p&gt;</description>
        <persons>
          <person id="290">Lydia Pintscher</person>
          <person id="545">Jeroen De Dauw</person>
        </persons>
        <links>
          <link href="http://wikidata.org">Wikidata</link>
          <link href="http://video.fosdem.org/2014/AW1120/Saturday/Wikidata.webm">Video</link>
        </links>
      </event>
      <event id="1729">
        <start>17:30</start>
        <duration>00:10</duration>
        <room>AW1.120</room>
        <slug>wikihattawiki</slug>
        <title>Repository-based wikis</title>
        <subtitle>Using mercurial, git or bazaar for storing wiki pages</subtitle>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Hatta Wiki is one of the many small wiki engines that use a version control system repository for storage of their pages. I want to talk about the benefits and drawbacks of using a repository instead of a database, and about different approaches to doing that.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1620">Radomir Dopieralski</person>
        </persons>
        <links>
          <link href="http://hatta-wiki.org">Hatta Wiki</link>
        </links>
      </event>
      <event id="2261">
        <start>17:40</start>
        <duration>00:10</duration>
        <room>AW1.120</room>
        <slug>wikigadgets</slug>
        <title>Useful and Necessary Mediawiki Gadgets</title>
        <subtitle/>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Gadgets are very useful and a time saver. In this talk, I will show some of very useful and necessary gadgets that may be less known. Gadgets make editing and reading task very easy. I will show few gadgets that really make great impact on reading as well as editing stuff.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1610">Harsh Kothari</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2002">
        <start>17:50</start>
        <duration>00:10</duration>
        <room>AW1.120</room>
        <slug>wikiunexpected</slug>
        <title>5 Unexpected usages of wikis</title>
        <subtitle/>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Wikis have been evolving dramatically in the past few years and they are no longer the first generation wikis we used to know like Wikipedia. This session will be an eye opener showing all the capabilities of the next generation wikis. Examples will be mostly from XWiki open source project usages in the wild (http://xwiki.org).&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1387">Vincent Massol</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1998">
        <start>18:00</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikiwebruntime</slug>
        <title>A web development runtime platform based on the wiki paradigm</title>
        <subtitle/>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;When developing a web application, the traditional way is to develop the application from scratch using a general purpose language such as PHP, Grails, Play, Java/JSP, etc.&lt;/p&gt;

&lt;p&gt;This presentation will show that a next generation wiki (examples based on XWiki: http://xwiki.org) can be used as a web development platform to develop applications on top of it, providing a strong  infrastructure scaffolding to building web applications.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The advantages are similar to those of using an application sever. However whereas an application server offers technical services only, a wiki platform offers higher level services such as content management, rendering, storage, WYSIWYGeditor, user management, and a lot more.&lt;/p&gt;

&lt;p&gt;Not only are these services offered, you can develop using them in your traditional IDE or in the runtime, directly in wiki pages. This allows developing web applications extremely quickly, collaboratively and with a fast turnaround time, which is perfect for adhoc web application development.&lt;/p&gt;</description>
        <persons>
          <person id="1387">Vincent Massol</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1997">
        <start>18:30</start>
        <duration>00:25</duration>
        <room>AW1.120</room>
        <slug>wikilongtail</slug>
        <title>Addressing the long tail of applications</title>
        <subtitle/>
        <track>Wikis</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;We'll demonstrate how a next generation wiki platform allows to do just that by using the XWiki open source project as an example.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Every day we imagine some new apps we'd love to have: having an application to allow people to submit talks, to register new holiday requests, expense reports, simply get data from one site and combine it with data from another site and display that, etc. This is the long tail of application (see http://platform.xwiki.org/xwiki/bin/view/Main/SecondGenerationWiki).&lt;/p&gt;

&lt;p&gt;However in most cases we just drop the idea and continue with our life because we know it would take days or weeks to be able to develop that quickly before you could reap the benefits.&lt;/p&gt;

&lt;p&gt;What if there was a way to have these apps developed and working in just a few minutes!&lt;/p&gt;</description>
        <persons>
          <person id="1387">Vincent Massol</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="AW1.121">
      <event id="2455">
        <start>10:55</start>
        <duration>00:05</duration>
        <room>AW1.121</room>
        <slug>welcome_bsd_devroom</slug>
        <title>Welcome to the BSD devroom</title>
        <subtitle/>
        <track>BSD</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Your host will kick off the BSD devroom with a few opening remarks.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="848">Benny Siegert</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1991">
        <start>11:00</start>
        <duration>01:00</duration>
        <room>AW1.121</room>
        <slug>freenas_development</slug>
        <title>Introduction to FreeNAS development</title>
        <subtitle/>
        <track>BSD</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;How to develop on FreeNAS.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;FreeNAS has been around for several years now but development on it has been by very few people. Even with corporate sponsorship and a team of full time developers, outside interest has been minimal. Not a week goes by when a bug report or feature request is not filed. Documentation on how to develop on FreeNAS simply does not exist. Currently, the only way to come up to speed on FreeNAS development is to obtain the source code, read through it, modify it, and verify it works. The goal of this paper is to create a simple FreeNAS application to demonstrate some of the common methods used when dealing with FreeNAS development, as well as showcase some of the API.&lt;/p&gt;</description>
        <persons>
          <person id="1884">John Hixson</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2312">
        <start>12:00</start>
        <duration>00:45</duration>
        <room>AW1.121</room>
        <slug>dtrace</slug>
        <title>DTrace integration and quick start</title>
        <subtitle/>
        <track>BSD</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will explain how to use DTrace, where to use it, and how to quickly introduce DTrace in your applications.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;DTrace is a powerful framework for tracing applications on the fly. We will look at:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How DTrace works&lt;/li&gt;
&lt;li&gt;Who DTrace uses&lt;/li&gt;
&lt;li&gt;How to use DTrace&lt;/li&gt;
&lt;li&gt;How to integrate it in your awesome applications&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="2087">Veniamin Gvozdikov</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1121/Saturday/DTrace_integration_and_quick_start.webm">Video</link>
        </links>
      </event>
      <event id="2336">
        <start>13:00</start>
        <duration>01:00</duration>
        <room>AW1.121</room>
        <slug>edgebsd</slug>
        <title>The EdgeBSD Project</title>
        <subtitle>Introducing the EdgeBSD Project</subtitle>
        <track>BSD</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This presentation will detail the reasons, objective, status and roadmap of the EdgeBSD project, which started from the NetBSD codebase earlier this year. It aims at broadening and experimenting around community development around NetBSD thanks to a tentatively more modern development workflow, based on Git.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;NetBSD is arguably the first community-based Free/Open Source Software project: it featured a public version control system and mailing-lists back
during its inception, 20 years ago. Driven by its very thorough approach to development and technical design, it gained and deserved a reputation of being
clean, portable, and simply a cool platform to work and research on.&lt;/p&gt;

&lt;p&gt;Over the years, NetBSD received contributions from hundreds of developers, pioneering in areas such as cryptography, host security, networking, and
virtualization. However, its rigorous code &amp;amp; member integration process can also be seen as harmful, especially when compared to modern project management and distributed version control systems.&lt;/p&gt;

&lt;p&gt;This is where EdgeBSD kicks in. A new member of the family of BSD-based Operating Systems, it is starting development with the current NetBSD codebase
and Git for Source Code Management. Package management is based on pkgsrc.&lt;/p&gt;

&lt;p&gt;The primary goal of EdgeBSD is to provide an ambitious environment for working as a bigger community on the NetBSD Project. This will be achieved thanks to a more modern development infrastructure, while taking a more aggressive stance on integrating and enabling features (many readily available).&lt;/p&gt;

&lt;p&gt;Ultimately, EdgeBSD should be just as fun and attractive as a Research &amp;amp; Development platform while delivering a modern, robust, and industrial-grade
system for all ranges of computer devices, thanks to a more versatile and personalized development workflow.&lt;/p&gt;</description>
        <persons>
          <person id="2105">Pierre Pronchery</person>
        </persons>
        <links>
          <link href="http://www.edgebsd.org/">The EdgeBSD Project</link>
          <link href="http://www.netbsd.org/">The NetBSD Project</link>
          <link href="http://video.fosdem.org/2014/AW1121/Saturday/The_EdgeBSD_Project.webm">Video</link>
        </links>
      </event>
      <event id="2330">
        <start>14:00</start>
        <duration>01:00</duration>
        <room>AW1.121</room>
        <slug>deforaos</slug>
        <title>The DeforaOS desktop environment</title>
        <subtitle>An alternative desktop for all ranges of devices</subtitle>
        <track>BSD</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The DeforaOS desktop environment is one of three major components from the DeforaOS Operating System project. It is Open Source and meant to be portable, currently supporting Linux, *BSD, MacOS X, and possibly more. More than just an alternative desktop, it can be adapted for embedded use, be it with a stylus or with finger-based interaction. It has already been released and presented as a Debian-based smartphone (Openmoko) and a NetBSD-based tablet device for instance.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The DeforaOS Project was started in 2005 with one specific goal: seamlessly integrating software on personal devices (workstation, laptop, PDA...), possibly involving the migration of running applications across them. While this is still being worked on (with a working prototype), the development of the project involved a deep understanding of the design and implementation of existing systems. Therefore, a number of components has been developed again from scratch, so as to more easily support the more innovative components.&lt;/p&gt;

&lt;p&gt;Doing so quickly highlighted three major parts: a self-hosted environment (libc, basic tools, assembler and compiler), the distributed framework (main objective of the project), and a desktop environment which is what will be presented here. While initially intended to fully grasp the specific constraints of GUI applications when supporting the distributed framework for the DeforaOS Project, it is meant to be fully usable and sufficient for regular desktop use, including a file manager, desktop manager, panel, web browser, e-mail client, telephony application and more.&lt;/p&gt;

&lt;p&gt;The DeforaOS desktop is currently based on the Gtk+ toolkit, usually requiring version 2.6 or newer (including Gtk+ 3.0). It can be found packaged for Debian (via the hackable:1 project), FreeBSD (official ports), NetBSD and more (via pkgsrc).&lt;/p&gt;</description>
        <persons>
          <person id="2105">Pierre Pronchery</person>
        </persons>
        <links>
          <link href="http://www.defora.org/">The DeforaOS Project</link>
          <link href="http://www.netbsd.org/">The NetBSD Project</link>
          <link href="http://www.pkgsrc.org/">pkgsrc</link>
          <link href="http://pkgsrc-wip.sf.net/">pkgsrc-wip</link>
          <link href="http://video.fosdem.org/2014/AW1121/Saturday/The_DeforaOS_desktop_environment.webm">Video</link>
        </links>
      </event>
      <event id="2288">
        <start>15:00</start>
        <duration>00:45</duration>
        <room>AW1.121</room>
        <slug>freebsd_xen_arm</slug>
        <title>Porting FreeBSD on Xen on ARM</title>
        <subtitle>How to support your OS as Xen ARM guest</subtitle>
        <track>BSD</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The goal of this talk is to provide information about Xen on ARM project and encourage hackers to port their OSes as ARM guests.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Xen recently supports ARMv7 and ARMv8 platforms, such as the Arndale Board, Midway, Cubieboard...
With the new Xen architecture for ARM, porting your OS as a guest is easier that you might think. It will allow your guest to be shared on your virtualized ARM server. This session will focus on requirements and what needs to be done in order to get your OS working as a guest. Examples will be provided about how we ported FreeBSD to run as a Xen ARM guest.&lt;/p&gt;

&lt;p&gt;Topics which will be covered:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; * Xen on ARM architecture
 * Prequisites to boot an OS as Xen guest
 * What was modified in FreeBSD ARM core?
 * What about BSD as DOM0?
&lt;/code&gt;&lt;/pre&gt;</description>
        <persons>
          <person id="1871">Julien Grall</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1121/Saturday/Porting_FreeBSD_on_Xen_on_ARM.webm">Video</link>
        </links>
      </event>
      <event id="2348">
        <start>16:00</start>
        <duration>01:00</duration>
        <room>AW1.121</room>
        <slug>freebsd_10</slug>
        <title>What's new in FreeBSD 10?</title>
        <subtitle/>
        <track>BSD</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The new FreeBSD 10.0 has been released just before FOSDEM. This new release adds many new features and enhancements to FreeBSD.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;To tease your appetite, here are some of the highlights:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;FreeBSD now includes the BSD native hypervisor bhyve.&lt;/li&gt;
&lt;li&gt;The build system now uses the CLANG compiler instead of GCC by default.&lt;/li&gt;
&lt;li&gt;The ports and packages system now uses the new PKGNG package repository by default.&lt;/li&gt;
&lt;li&gt;A new kernel-based iSCSI target and initiator have been added.&lt;/li&gt;
&lt;li&gt;FUSE is now part of the base system which allows you to run nearly all fusefs filesystems.&lt;/li&gt;
&lt;li&gt;Growfs can now enlarge filesystems while mounted.&lt;/li&gt;
&lt;li&gt;A new and better implementation of the CARP protocol.&lt;/li&gt;
&lt;li&gt;The PF packet filter now supports fine-grained locking which significantly improves performance on multi-core systems.&lt;/li&gt;
&lt;li&gt;More GNU utilities replaced by BSD licensed implementations.&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1430">Paul Schenkeveld</person>
        </persons>
        <links>
          <link href="http://www.freebsd.org/">http://www.freebsd.org/</link>
          <link href="http://video.fosdem.org/2014/AW1121/Saturday/Whats_new_in_FreeBSD_10.webm">Video</link>
        </links>
      </event>
      <event id="2343">
        <start>17:00</start>
        <duration>01:00</duration>
        <room>AW1.121</room>
        <slug>freebsd_ports_v2</slug>
        <title>FreeBSD: toward ports v2</title>
        <subtitle>Trimming the biggest bonsai</subtitle>
        <track>BSD</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A summary of 3 years of heavy lifting of the ports tree, and what is coming next: cross compilation, sub packages, requires/provides and more.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="553">Baptiste Daroussin</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1121/Saturday/FreeBSD_toward_ports_v2.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="AW1.125">
      <event id="2160">
        <start>11:00</start>
        <duration>00:45</duration>
        <room>AW1.125</room>
        <slug>games_eventdriven_boost</slug>
        <title>Event-driven networking library</title>
        <subtitle>On top of Boost.Asio</subtitle>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk presents Neev, a simple high-level networking library in C++ based on Boost.Asio that allows to setup client-server applications in a few lines of code. This library was designed and then used to code an add-on server for the game Battle for Wesnoth during Google Summer of Code.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Neev is an asynchronous and event-driven library for the networking on top of the Proactor/reactor design pattern (implemented by Boost.Asio). This is a small library for the networking part of any projects. We'll present it through the code of a simple example. We'll discuss the relation between the different coding styles and the strengths and weaknesses of event-driven development.&lt;/p&gt;</description>
        <persons>
          <person id="1955">Pierre Talbot</person>
        </persons>
        <links>
          <link href="https://github.com/ptal/neev">github of the neev project</link>
          <link href="http://www.hyc.io/neev/fosdem2014_neev.pdf">latest slides</link>
        </links>
      </event>
      <event id="2150">
        <start>11:50</start>
        <duration>01:00</duration>
        <room>AW1.125</room>
        <slug>games_ethical</slug>
        <title>Ethical questions of game developing</title>
        <subtitle/>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract></abstract>
        <description></description>
        <persons>
          <person id="1997">Fabian Müller (fendrin)</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Saturday/Ethical_questions_of_game_developing.webm">Video</link>
        </links>
      </event>
      <event id="2079">
        <start>13:00</start>
        <duration>00:25</duration>
        <room>AW1.125</room>
        <slug>doom3_cross_platform</slug>
        <title>Building a cross platform media layer based on Doom 3</title>
        <subtitle>Resolving API dependencies and Id Tech 4 modding</subtitle>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A short talk on common programming APIs used by games as well as creating simple Doom 3 levels and menus - with examples from current programming projects AdaDoom3 and a Neotokyo tribute modification.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1934">Justin Squirek</person>
        </persons>
        <links>
          <link href="https://github.com/AdaDoom3/AdaDoom3">Main code repository</link>
          <link href="https://github.com/AdaDoom3/NeotokyoMod">Doom 3 Modification</link>
        </links>
      </event>
      <event id="1930">
        <start>13:30</start>
        <duration>00:45</duration>
        <room>AW1.125</room>
        <slug>game_qt_sim</slug>
        <title>Game and Simulation development with Qt</title>
        <subtitle>Use of Qt for developing tools and core components for games and simulations</subtitle>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The Qt toolkit offers a huge amount of cross-platform functionality. Qt can be used in a lot of different ways for game programming, from quickly creating throw-away external debug tools to providing core game infrastructure. This talk will highlight different ways that Qt can make the lives of game developers easier.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Qt contains a huge number of well-tested and cross-platform modules that can be used for game development purposes.
Of course, Qt is great for creating level editors and other tools with a nice cross-platform GUI. But Qt can also be helpful in building the game itself, even when the Qt GUI parts are not used.&lt;/p&gt;

&lt;p&gt;The QObject system provides ways to give generic access to properties and methods of C++ objects. This can be used for introspection and live manipulation of game objects. With the generic QVariant data type it is easy to make game objects serializable and to give scripting languages like JavaScript access to the game. Other useful parts are the multithreading support, the QML markup language and OpenGL integration.&lt;/p&gt;

&lt;p&gt;This talk gives an overview of these different techniques and also discusses issues like performance, memory management, ways of implementing the game loop and integrating various render engines like OSG or Ogre3D.&lt;/p&gt;</description>
        <persons>
          <person id="1748">Martin Scheffler</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Saturday/Game_and_Simulation_development_with_Qt.webm">Video</link>
        </links>
      </event>
      <event id="2116">
        <start>14:20</start>
        <duration>01:00</duration>
        <room>AW1.125</room>
        <slug>game_killer_engine</slug>
        <title>Killer Engine for Remixing Games</title>
        <subtitle>Great game developers steal!</subtitle>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Game programming is so fragile that most new games get written from scratch, again and again. We've created a new game engine for pulling apart games into atoms and stitching them back together in novel ways. Our techniques are inspired by functional programming, reactive programming, and dataflow, but still use imperative blocks that many programmers are familiar with. The game engine is completely open source, as are the games written on it.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;We could do it as a talk, or as a tutorial where we show people how to use it.&lt;/p&gt;

&lt;p&gt;The project is hosted at https://github.com/CyberCRI/gamEvolve/.
We work at the CRI in Paris (http://www.cri-paris.org/).&lt;/p&gt;</description>
        <persons>
          <person id="1981">Jesse Himmelstein</person>
        </persons>
        <links>
          <link href="https://github.com/CyberCRI/gamEvolve/">Project repo</link>
          <link href="http://www.cri-paris.org/">CRI website</link>
          <link href="http://video.fosdem.org/2014/AW1125/Saturday/Killer_Engine_for_Remixing_Games.webm">Video</link>
        </links>
      </event>
      <event id="2200">
        <start>15:25</start>
        <duration>00:15</duration>
        <room>AW1.125</room>
        <slug>games_made</slug>
        <title>MADE</title>
        <subtitle>Massive Artificial Drama Engine for non-player characters</subtitle>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;MADE (Massive Artificial Drama Engine for non-player characters) is a procedural content generator (PGC), with stochastic generation and modelled as a generate-and-test algorithm (search based) that performs the optimizations of the process during the game development (offline). It presents an environment where many characters interact to generate plots where complex behaviors can emerge. Currently, an article about MADE is being evaluated by the committee of the Evostar 2014 (European conference on the applications of evolutionary computation).&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2031">Rubén Héctor</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Saturday/MADE.webm">Video</link>
        </links>
      </event>
      <event id="2291">
        <start>15:45</start>
        <duration>00:15</duration>
        <room>AW1.125</room>
        <slug>game_erocoli</slug>
        <title>Ero.coli - a synthetic biology game</title>
        <subtitle>Citizen Science: Popularisation &amp; crowdsourcing</subtitle>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Ero.Coli retraces the journey of a nano-robot in its quest of ensuring the balance and prosperity of their living world.&lt;/p&gt;

&lt;p&gt;This project is a single-player 2D top-down adventure game where the hero, a tiny nano-robot, has to explore a living world, collect, and combine functional DNA fragments in order to engineer and control the abilities of his bacterium companion and face obstacles and dangers.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This project is based on three main axes:
- This game should allow players to understand the basics of synthetic biology, popularise the open BioBrick system - see biobricks.org
- Players will have the opportunity to play with DNA fragments to create their own abilities, and, in the long haul, participate digitally in research, or even in our wet labs
- This game will be a real gaming experience: fun and engaging&lt;/p&gt;</description>
        <persons>
          <person id="2080">Raphael Goujet</person>
        </persons>
        <links>
          <link href="http://www.dsynbio.com/">Main web site for the project</link>
          <link href="http://http://biobricks.org/">Web site for the BioBrick project, which we used in the game mechanics</link>
          <link href="https://www.facebook.com/Ero.coli">Our facebook page</link>
          <link href="https://twitter.com/dsynbio">Our twitter account</link>
          <link href="https://github.com/CyberCRI/DsynBio_reloaded">The sources of our game</link>
          <link href="http://www.cri-paris.org/">Our lab's website</link>
          <link href="http://video.fosdem.org/2014/AW1125/Saturday/Erocoli_a_synthetic_biology_game.webm">Video</link>
        </links>
      </event>
      <event id="2149">
        <start>16:05</start>
        <duration>01:00</duration>
        <room>AW1.125</room>
        <slug>game_rise_fall</slug>
        <title>The rise and fall of open source gaming projects</title>
        <subtitle/>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract></abstract>
        <description></description>
        <persons>
          <person id="1997">Fabian Müller (fendrin)</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Saturday/The_rise_and_fall_of_open_source_gaming_projects.webm">Video</link>
        </links>
      </event>
      <event id="2032">
        <start>17:10</start>
        <duration>00:45</duration>
        <room>AW1.125</room>
        <slug>games_i18n</slug>
        <title>Community based translations of games</title>
        <subtitle>Why babelfish ain’t enough</subtitle>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The battle for Wesnoth is in the rare position of being an open source game project featuring many different translations for its huge amount of content. Currently Wesnoth features 54 translations of which 15 translations of the stable series are more than 90% complete.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This session is about sharing the history behind this and factors which can help projects gain a stable internationalization community. The talk will focus on best practices which have shown themselves as working nicely for getting the translation community started as well as keeping translators happy. It might also show how the translation process is connected to the release cycle and what common problems for game translations are.&lt;/p&gt;</description>
        <persons>
          <person id="586">Nils Kneuper</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Saturday/Community_based_translations_of_games.webm">Video</link>
        </links>
      </event>
      <event id="2157">
        <start>18:00</start>
        <duration>01:00</duration>
        <room>AW1.125</room>
        <slug>game_openpandora</slug>
        <title>OpenPandora and a peek into the future</title>
        <subtitle>OpenSource video game handheld</subtitle>
        <track>Game development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Presenting the currently available OpenPandora handheld, which is a miniature PC with Gaming controls running Linux, to interested people.
Additionally, there will be a sneak peek into the future, maybe already with some hardware to demonstrate.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="597">Michael Mrozek</person>
        </persons>
        <links>
          <link href="http://www.openpandora.org">Main website</link>
          <link href="http://video.fosdem.org/2014/AW1125/Saturday/OpenPandora_and_a_peek_into_the_future.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="AW1.126">
      <event id="1704">
        <start>11:00</start>
        <duration>00:15</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_welcome</slug>
        <title>HPC devroom welcome, introduction to HPC-UGent and VSC</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A word of welcome, the devroom agenda, and other practical info followed by a brief introduction to HPC-UGent and the Flemish Supercomputer Centre (VSC).&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1401">Kenneth Hoste</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/HPC_devroom_welcome_introduction_to_HPCUGent_and_VSC.webm">Video</link>
        </links>
      </event>
      <event id="1859">
        <start>11:20</start>
        <duration>01:00</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_openmp_tutorial</slug>
        <title>Using OpenMP to Simply Parallelize CPU-Intensive C Code</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Compute-intensive applications usually benefit hugely from parallelization: running code on multiple CPU cores at the same time.
One mechanism to implement such parallelism is to use OpenMP, an official open standard that allows for easy parallelization of existing C or C++ code.
The latest OpenMP version (4.0, released summer 2013) also covers offloading to accelerators like GPUs and SIMD.&lt;/p&gt;

&lt;p&gt;Klaas van Gend will introduce OpenMP, its applicability and usefulness and how to use OpenMP to speed up your code.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;OpenMP is an official, open standard to specify multi-threading, computational offload (to accelerators like GPGPUs) and SIMD (vectorization).
OpenMP is a big topic, it is impossible to cover everything.&lt;/p&gt;

&lt;p&gt;Amongst the topics discussed will be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;how to start using OpenMP&lt;/li&gt;
&lt;li&gt;the benefit of OpenMP: it is just code annotation&lt;/li&gt;
&lt;li&gt;how to implement functional parallelism: using parallel sections&lt;/li&gt;
&lt;li&gt;how to implement data parallelism: using parallel for&lt;/li&gt;
&lt;li&gt;how to work with OpenMP tasks&lt;/li&gt;
&lt;li&gt;simple comparison of OpenMP against 'competing' standards like OpenACC, OpenCL, C++11 and MPI&lt;/li&gt;
&lt;li&gt;the current state of the OpenMP implementations in GCC and Clang&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1770">Klaas van Gend</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/Using_OpenMP_to_Simply_Parallelize_CPUIntensive_C_Code.webm">Video</link>
        </links>
      </event>
      <event id="2278">
        <start>12:25</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_kadeploy</slug>
        <title>Kadeploy: From Scalable and Reliable Bare-metal Provisioning to a Reconfigurable Experimental Testbed</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Kadeploy is a scalable, efficient, and reliable bare-metal provisioning solution for HPC clusters. In this talk, I will first present the design choices that enable system administrators to install a 300-nodes cluster in a couple of minutes. Then, I will present how Kadeploy is used in the context of the Grid'5000 testbed. Grid'5000 is a large-scale testbed for research on HPC, Cloud, Grid and P2P computing, where Kadeploy provides users with the ability to deploy their own software stacks, making it the ideal testbed to design, test and evaluate IaaS Cloud stacks.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Links:
http://kadeploy3.gforge.inria.fr/
http://www.grid5000.fr/&lt;/p&gt;</description>
        <persons>
          <person id="2073">Lucas Nussbaum</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/Kadeploy_From_Scalable_and_Reliable_Baremetal_Provisioning_to_a_Reconfigurable_Experimental_Testbed.webm">Video</link>
        </links>
      </event>
      <event id="1749">
        <start>12:50</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_quattor</slug>
        <title>Quattor - Configuration and Fabric Management Done Right</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Quattor is a systems administration toolkit allowing controlling the whole life cycle of large and very large computer fabrics. It aims to provide great flexibility (use as much or as little of it as you want), accuracy, and consistency (catching lots of configuration errors way before deployment) and scalability, with installations from tens to tens of thousands of systems.&lt;/p&gt;

&lt;p&gt;In this talk we'll describe the main characteristics of Quattor, its simple language and show how a simple service can be deployed.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Quattor is a systems administration toolkit started in the LHC Computing Grid and used in several academic and commercial environments, ranging from tens to over 30,000 systems.&lt;/p&gt;

&lt;p&gt;In this talk we'll cover the basics of the Quattor architecture, how different tools are integrated together to manage the entire life cycle of a system, and give a minimal example of a configuration with Quattor.&lt;/p&gt;

&lt;p&gt;We'll explain briefly how the Pan language helps in re-use of configurations, consistency and correctness. We'll give a quick overview of some tools available in the Quattor toolkit to install hosts and show how a part of a host can be put easily under Quattor control.&lt;/p&gt;</description>
        <persons>
          <person id="1644">Luis Fernando Muñoz Mejías</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/Quattor_Configuration_and_Fabric_Management_Done_Right.webm">Video</link>
        </links>
      </event>
      <event id="2130">
        <start>13:15</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_aquilon</slug>
        <title>An Overview of Aquilon</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Aquilon is the third generation configuration data-store for Quattor (The first being CDB and the second being SCDB).&lt;/p&gt;

&lt;p&gt;This talk will cover the architecture and motivation behind Aquilon, experience from a site migrating to it and some examples of the power it can give to SysAdmins.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Aquilon features a broker daemon with overall ownership of the system including profile compilation and host notification.
The broker models an organisation's infrastructure as objects in a RDBMS, generating configuration code from this as needed.
User interaction takes place over a kerberos secured connection to the broker, which delegates sandboxes (cloned git branches) to users when changes to configuration code is needed.&lt;/p&gt;</description>
        <persons>
          <person id="2123">James Adams</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/An_Overview_of_Aquilon.webm">Video</link>
        </links>
      </event>
      <event id="1801">
        <start>13:40</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_rozofs</slug>
        <title>Reduce the Storage Consumption of Your Storage Clusters with RozoFS</title>
        <subtitle>The Flexible Distributed File System, based on an Erasure Code</subtitle>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Distributed storage systems like RozoFS provide the best solution to adapt the resources of your system to an evolving demand, but data protection entails a huge data consumption.&lt;/p&gt;

&lt;p&gt;This topic would interest those who cares about the data consumption (which is directly linked with energy consumption and architecture cost) of their clusters.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Erasure coding (EC) is a technique providing the same data protection and availability as traditional block replication, while reducing storage usage  significantly (e.g. up to 50%).
Of course, EC comes with drawbacks, as it performs complex computations. However, the Mojette transform, used in RozoFS for its erasure code behaviour, brings fast computations since it relies on simple additions.
Efforts are done to open up EC-based systems to data-intensive applications.&lt;/p&gt;

&lt;p&gt;The growth of the global storage is alarming. IDC's Digital Universe study [&lt;a href="IDC's"&gt;1&lt;/a&gt;] forecasts that the global amount of data will reach 40 zettabytes (ZB) by 2020. Data protection plays a major role in this storage consumption.&lt;/p&gt;

&lt;p&gt;The Mojette transform [&lt;a href="The"&gt;2&lt;/a&gt;] is a mathematical tool from the University of Nantes that computes 'n' redundant projection blocks from 'k' information blocks. Any 'k' blocks among the 'n' are sufficient to retrieve the original data, behaving like an erasure code. Distributing these 'n' projection blocks over network storage nodes, RozoFS [&lt;a href="RozoFS"&gt;3&lt;/a&gt;] is able to face 'n-k' node failures (including disk, network, server failures).
Providing the same data protection and availability as traditional block replication [&lt;a href="Erasure"&gt;4&lt;/a&gt;], this technique reduces significantly the storage capacity (e.g. up to 50%).
Of course, erasure coding comes with drawbacks as it performs complex computations. The Mojette transform, however, brings fast computations since it relies on simple additions.
RozoFS holds many important characteristics for a distributed storage system, such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;scalability: clusters of storage nodes can be added on demand;&lt;/li&gt;
&lt;li&gt;openness: compatible with different protocols (CIFS,NFS,...), Amazon S3, Hadoop,...;&lt;/li&gt;
&lt;li&gt;transparency: users manage their file exactly as usual;&lt;/li&gt;
&lt;li&gt;management: provide a tool to make the administration tasks easier.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;http://www.emc.com/collateral/analyst-reports/idc-the-digital-universe-in-2020.pdf
JeanPierre Guédon and Nicolas Normand
http://link.springer.com/chapter/10.1007%2F978-3-540-31965-8&lt;em&gt;8
http://www.rozofs.com/
Hakim Weatherspoon and John D. Kubiatowicz
http://oceanstore.cs.berkeley.edu/publications/papers/pdf/erasure&lt;/em&gt;iptps.pdf&lt;/p&gt;</description>
        <persons>
          <person id="1473">Dimitri Pertin</person>
        </persons>
        <links>
          <link href="https://github.com/rozofs/rozofs">GitHub page of RozoFS</link>
          <link href="http://www.mojette.net/">The Mojette Game !</link>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/Reduce_the_Storage_Consumption_of_Your_Storage_Clusters_with_RozoFS.webm">Video</link>
        </links>
      </event>
      <event id="2072">
        <start>14:05</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_restfs</slug>
        <title>RestFS: the Next Generation Cloud Storage</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;RestFS is an experimental project to develop an open-source distributed filesystem for large environments. It is designed to scale up from a single server to thousand of nodes and delivering a high-availability storage system with special features for high i/o performance and network optimisation for work better in WAN environment. The Project is on the beginning stage, with some technology previews released.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Restfs is pure-python, but several of the libraries that it depends upon use C extensions (sometimes for speed, sometimes to interface to pre-existing C libraries).
The main characteristics of the RestFS are :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Scalability, no limits on storage  and clients size&lt;/li&gt;
&lt;li&gt;High availability, no single point of failure and data replication&lt;/li&gt;
&lt;li&gt;Adaptive, load balancing and uniform distribution&lt;/li&gt;
&lt;li&gt;High Performance, parallel transfer,  local cache consistency , data transfer by difference&lt;/li&gt;
&lt;li&gt;Flexible, S3 compatibility interface, dedicated library for integration in web server and application layer&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;This talk describes the architecture, internals of RestFS and  comparison among different free software solutions. The session will discuss our experience in this development and detailed information on performance and scalability&lt;/p&gt;</description>
        <persons>
          <person id="1929">Fabrizio Manfredi</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/RestFS_the_Next_Generation_Cloud_Storage.webm">Video</link>
        </links>
      </event>
      <event id="2086">
        <start>14:30</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_environment</slug>
        <title>How To Save The Environment</title>
        <subtitle>..and get rid of virtualenv, rvm, pythonbrew, rbenv, pythonz (...)</subtitle>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Although the "Modules" system has been around since the early 1990ties it has yet to find widespread adoption outside of the scientific computing and HPC community.
Most FOSS developers rely on a wide range of tools to abstract and manage their Linux and UN!X environments for different scripting languages,
compiler toolchains and applications. This problem has been long solved in the world of High Performance Computing where optimization of
applications, toolchains and libraries is paramount. Environment Modules are a wonderful tool that will save time, help ease of development
processes, reproducibility, and management of your development environment. This talk will give insight into how Modules work, which implementations
are out there and how to use Modules instead of language bound tools as well as a comparison with common tools that the community uses to develop
on Python and Ruby (for example) projects.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;I intend to give a 20 min overview of the "Environment Modules" system as deployed on many scientific and HPC sites to FOSS developers, students and linux enthusiasts.&lt;/p&gt;

&lt;p&gt;This will include a comparison of different Modules implementations their history and typical use cases in HPC and development environments and how Modules can be of
help to FOSS developers and systems administrators. As a developer and systems engineer, I am familiar with a lot of different systems to manage multiple installations of e.g.
script languages their environments and libraries. I'll give a short overview and comparison of those and compare these systems with Modules and show how developers and
engineers alike can save time and effort in managing their environment for all applications, toolchains and script languages.&lt;/p&gt;</description>
        <persons>
          <person id="1943">Aaron Zauner</person>
        </persons>
        <links>
          <link href="https://www.tacc.utexas.edu/tacc-projects/mclay/lmod">Lmod</link>
          <link href="http://modules.sourceforge.net/">classical Environment Modules</link>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/How_To_Save_The_Environment.webm">Video</link>
        </links>
      </event>
      <event id="1707">
        <start>14:55</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_easybuild</slug>
        <title>EasyBuild: Building Software With Ease</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;EasyBuild is a software build and installation framework written in Python that allows you to install software in a structured, repeatable, and robust way.
This talk will present the problem with building with scientific software, introduce EasyBuild, and discuss the main features of the tool.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;EasyBuild is motivated by the need for a tool that allows to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;independently install multiple versions of software side-by-side&lt;/li&gt;
&lt;li&gt;support multiple compilers and libraries for building software and its dependencies&lt;/li&gt;
&lt;li&gt;keep the software build configuration simple&lt;/li&gt;
&lt;li&gt;divert from the standard configure / make / make install with custom procedures (which is often necessary for scientific software)&lt;/li&gt;
&lt;li&gt;use environment modules for dependency resolution and making the software available to users in a transparent way&lt;/li&gt;
&lt;li&gt;keep record of the installation logs&lt;/li&gt;
&lt;li&gt;keep track of installation configuration in version control&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Some key properties of EasyBuild:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;installation configuration is done using a (very concise) .eb specification file&lt;/li&gt;
&lt;li&gt;custom behaviour is described in easyblocks; these are Python classes that can be plugged into the EasyBuild framework&lt;/li&gt;
&lt;li&gt;the generation of the module files to easily make the software available to users&lt;/li&gt;
&lt;li&gt;the dependencies for installation are resolved using environment modules and can be automatically installed using the robot feature&lt;/li&gt;
&lt;li&gt;after the installation, the specification files can be sent to a repository for archiving&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1053">Jens Timmerman</person>
        </persons>
        <links>
          <link href="http://hpcugent.github.com/easybuild">http://hpcugent.github.com/easybuild</link>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/EasyBuild_Building_Software_With_Ease.webm">Video</link>
        </links>
      </event>
      <event id="2127">
        <start>15:20</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_hpcbios</slug>
        <title>HPCBIOS: Getting Your Software, Users &amp; Documentation in Sync</title>
        <subtitle>Definition of Common Environment for HPC Platforms and Beyond</subtitle>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;HPCBIOS is concerned with the ability of users to handle tasks across computational platforms (HPC, Grids, Clouds) uniformly and painlessly, as much as technically feasible.&lt;/p&gt;

&lt;p&gt;The aim of this work is to present ongoing efforts and concepts tried in centers located in the EU &amp;amp; US, trying to streamline the user experience in scientific computing, as well as, probe the interest of the community for current needs and future work.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Points to be considered include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Aspects of computational infrastructures that puzzle or delay scientific users&lt;/li&gt;
&lt;li&gt;Common Applications or Tools that are needed and, categories thereof&lt;/li&gt;
&lt;li&gt;Logical organization of software environments, modules technologies and status&lt;/li&gt;
&lt;li&gt;Common Failure Modes which may be encountered/avoided on scientific platforms&lt;/li&gt;
&lt;li&gt;Which software code helps in the above topics and where/how to contribute to it&lt;/li&gt;
&lt;li&gt;Feedback by the audience, current challenges&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1991">Fotis Georgatos</person>
        </persons>
        <links>
          <link href="http://hpcbios.readthedocs.org/en/latest/HPC_Baseline_Configuration.html">HPCBIOS Baseline Configuration</link>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/HPCBIOS_Getting_Your_Software_Users_Documentation_in_Sync.webm">Video</link>
        </links>
      </event>
      <event id="2136">
        <start>15:45</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_automatic_testing</slug>
        <title>Automatic Testing of Installed Software</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Automatic Testing of Installed Software is a testing framework to validate the various flavors of software installed on an HPC site. It is composed of a set of unit tests, a runtime and a result-gathering dashboard.
These tests are user-oriented as they assess the basic features that a general user expect to work on an HPC platform.&lt;/p&gt;

&lt;p&gt;Currently, it only focuses on generic MPI functionality as it is one complex and critical component of an HPC platform, but it will be extended to compilers, libraries and performance validation and regression in the future.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;HPC centers tend to provide a wide choice a software. Different users requires different software, but also different versions of the same software. Combined with the different compilers, MPI stacks, library dependencies, there is an explosion of software flavors installed on an HPC site.&lt;/p&gt;

&lt;p&gt;Tools already exist to help managing this large variety of software. Users can choose their software through the software list using the 'module' system. Administrators can perform automatic compilation and installation of software using EasyBuild. Additionally, software also require some customizations on some HPC sites. Thus, software flavors need to be validated after installation to check they're working as expected by the users.&lt;/p&gt;

&lt;p&gt;We developed and provide a set of unit tests together with a runtime and result-gathering framework to perform a such Automatic Testing of Installed Software. These tests take the side of the users in order to test any basic feature that a general user expect to work on an HPC platform.
So far, the proposed tests only focus on generic MPI functionality as it is one complex and critical component of an HPC platform. The unit tests include, for example, compilation with &lt;code&gt;mpicc&lt;/code&gt; and distributed execution with &lt;code&gt;mpiexec&lt;/code&gt;. It has been applied successfully on the HPC platforms of the University of Luxembourg to assess builds of OpenMPI, MPICH, MVAPICH2 and IntelMPI generated with EasyBuild.&lt;/p&gt;

&lt;p&gt;In the future, we consider extending our unit tests to validate more components like compilers, libraries, toolchains and even applications. Another future direction is to consider performance validation and regression.&lt;/p&gt;</description>
        <persons>
          <person id="1987">Xavier Besseron</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/Automatic_Testing_of_Installed_Software.webm">Video</link>
        </links>
      </event>
      <event id="2129">
        <start>16:10</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_scalasca</slug>
        <title>Introduction to Scalasca: A Performance Analysis Toolset for Parallel Programs</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Scalasca is a comprehensive open source performance analysis toolset for parallel programs, built with the aim of helping developers to identify opportunities for optimization. It covers all steps of performance analysis, from code instrumentation, measurement, and analysis to the visualization of the results.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Scalasca can be used with parallel codes of any size, from multicore machines to the fastest supercomputers in the world. It supports MPI and/or OpenMP libraries. It supports Blue Gene, Cray XT and Linux clusters.&lt;/p&gt;

&lt;p&gt;Scalasca combines runtime summaries suitable to obtain a performance overview with in-depth studies of concurrent behavior via event tracing. The traces are analyzed to identify wait states that occur, for example, as a result of unevenly distributed workloads.&lt;/p&gt;

&lt;p&gt;The new version of Scalasca is based on the community instrumentation and measurement infrastructure Score-P. This improves interoperability with other performance analysis tools, by the use of the Open Trace Format 2 for event trace data, and CUBE4 for application profiles.&lt;/p&gt;

&lt;p&gt;CUBE is the interactive analysis report explorer GUI for Scalasca. Its color-coded scheme makes observation of timing phenomena straightforward.&lt;/p&gt;

&lt;p&gt;The talk will introduce the main components of Scalasca to the audience.&lt;/p&gt;

&lt;p&gt;Topics will cover:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Examples of delays caused by imbalances&lt;/li&gt;
&lt;li&gt;Propagation effects of such imbalances&lt;/li&gt;
&lt;li&gt;How to spot these events in GUI&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;After the audience understands why the imbalances exist, a quick how-to follows, showing&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Instrumenting the code&lt;/li&gt;
&lt;li&gt;Measurement&lt;/li&gt;
&lt;li&gt;Analysis&lt;/li&gt;
&lt;li&gt;Evaluation&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1982">Alexandre Strube</person>
        </persons>
        <links>
          <link href="http://www.scalasca.org">Project Website</link>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/Introduction_to_Scalasca_A_Performance_Analysis_Toolset_for_Parallel_Programs.webm">Video</link>
        </links>
      </event>
      <event id="1753">
        <start>16:35</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_sniper</slug>
        <title>HPC Node Performance and Power Simulation with Sniper</title>
        <subtitle/>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Sniper is a performance modeling simulator. The goal of Sniper is to provide software developers with an easy way to analyze their applications. We provide both performance and energy/power analysis, as well as advanced visualization support.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will cover the basics of how to download Sniper and get started quickly, but more importantly show the benefits that simulating your application can provide. With per-function, detailed simulation analysis, CPI stacks over time and energy stacks, software developers that would like to optimize their applications can now do so quite easily and with more insight compared to using performance counter metrics typically available on machines today.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Downloading Sniper&lt;/li&gt;
&lt;li&gt;Using Sniper&lt;/li&gt;
&lt;li&gt;Visualization and Power Overview&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The intended audience is both HPC and scientific software developers, but is also applicable to software optimization in general.&lt;/p&gt;</description>
        <persons>
          <person id="1649">Trevor Carlson</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/HPC_Node_Performance_and_Power_Simulation_with_Sniper.webm">Video</link>
        </links>
      </event>
      <event id="1933">
        <start>17:00</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_metaheuristics</slug>
        <title>Solving NP-complete Problems with Metaheuristics</title>
        <subtitle>An Introduction to Tabu Search, Simulated Annealing and Late Acceptance</subtitle>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Some scientific research problems inherently suffer from an NP-complete problem.
This session will explain several meta-heuristic algorithms which can handle such problems in reasonable time.&lt;/p&gt;

&lt;p&gt;This session will also do lightning introduction of OptaPlanner, an open source Apache licensed Java library, which implements those algorithms.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Specifically, these algorithms will be explained:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First Fit&lt;/li&gt;
&lt;li&gt;First Fit Decreasing&lt;/li&gt;
&lt;li&gt;Hill Climbing&lt;/li&gt;
&lt;li&gt;Tabu Search&lt;/li&gt;
&lt;li&gt;Simulated Annealing&lt;/li&gt;
&lt;li&gt;Late Acceptance&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="598">Geoffrey De Smet</person>
        </persons>
        <links>
          <link href="http://www.optaplanner.org">OptaPlanner (java, ASL)</link>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/Solving_NPcomplete_Problems_with_Metaheuristics.webm">Video</link>
        </links>
      </event>
      <event id="1761">
        <start>17:25</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_go</slug>
        <title>Scientific GPU Computing with Google's Go Language</title>
        <subtitle>A Novel Approach to Highly Reliable CUDA HPC</subtitle>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;We show general purpose GPU computing using Google's Go language together with minimal use of Nvidia CUDA. This unusual match can perform very reliable, high-performance scientific computation using surprisingly brief and clear code.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;GPU-accelerated scientific computing is gaining popularity because of its high performance. Often, nvidia's CUDA toolkit is used together with C/C++. Although undeniably popular, subtle or hard-to-debug issues commonly pop-up. This is especially problematic in a research context where correctness should be the main priority and where we don't want to spend most of our time with low-level debugging.&lt;/p&gt;

&lt;p&gt;In this talk we present our uncommon and quite novel approach of pairing google's Go language on the CPU with minimal CUDA on the GPU. In this way we developed an open-source (GPLv3) GPU-accelerated simulation package using about 5x less code than a version using C++ and python, and running about 100x faster than a state-of-the art CPU implementation. The Go+CUDA combination is highly type-safe and memory safe, concurrent (GPU-CPU parallelism) and relieves the programmer from most of the GPU's typical memory management and synchronization issues.&lt;/p&gt;

&lt;p&gt;Outline&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Brief introduction to Go and CUDA&lt;/li&gt;
&lt;li&gt;Our Go GPU libraries (BSD-licensed)&lt;/li&gt;
&lt;li&gt;Nearly overhead-free and type-safe GPU memory management&lt;/li&gt;
&lt;li&gt;Automated unit testing of GPU code&lt;/li&gt;
&lt;li&gt;Brief demonstration our open-source software simulating a byte being written by a hard disk head.
(shown live in an HTML5 web GUI, provided by an HTTP server embedded in the simulation software)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Intended for researchers using scientific GPU computing. Illustrates how Go can be used in conjunction with CUDA. What to expect/not to expect from Go+CUDA.&lt;/p&gt;</description>
        <persons>
          <person id="1657">Arne Vansteenkiste</person>
        </persons>
        <links>
          <link href="http://mumax.github.io">project website</link>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/Scientific_GPU_Computing_with_Googles_Go_Language.webm">Video</link>
        </links>
      </event>
      <event id="2131">
        <start>17:50</start>
        <duration>00:20</duration>
        <room>AW1.126</room>
        <slug>hpc_devroom_open_microscopy</slug>
        <title>Open Microscopy Environment</title>
        <subtitle>Informatics for Biological Imaging</subtitle>
        <track>HPC and computational science</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The Open Microscopy Environment (OME) is an open-source software framework for addressing informatics challenges in biological imaging and analysis: proprietary file formats, lack of storage, and analysis facilities and standards for sharing image data and results. The Java-based OMERO client-server platform and its model-based architecture is applicable to a range of imaging domains, including light and electron microscopy, high-content screening, and recently into applications using non-image data from clinical and genomic studies.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Despite significant advances in biological imaging and analysis, major informatics challenges remain unsolved: file formats are proprietary, storage and analysis facilities are lacking, as are standards for sharing image data and results. The Open Microscopy Environment (OME) is an open-source software framework developed to address these challenges [&lt;a href="http://openmicroscopy.org"&gt;1&lt;/a&gt;]. OME has three components—an open data model for biological imaging; standardised file formats (OME-TIFF) and software libraries for file conversion (Bio-Formats [&lt;a href="http://openmicroscopy.org/site/products/bio-formats"&gt;2&lt;/a&gt;]); and a software platform for image data management and analysis (OMERO [&lt;a href="http://openmicroscopy.org/site/products/omero"&gt;3&lt;/a&gt;]). In this presentation, we discuss the design and use of OMERO.&lt;/p&gt;

&lt;p&gt;The Java-based OMERO client-server platform [&lt;a href="http://openmicroscopy.org/site/products/omero"&gt;3&lt;/a&gt;] comprises an image metadata store, an image data repository, visualization and analysis by remote access, enabling sharing and publishing of image data. OMERO.grid [&lt;a href="http://www.openmicroscopy.org/site/support/omero4/sysadmins/grid.html"&gt;4&lt;/a&gt;] facilitates distributed computing including scripting facility for image processing. OMERO.grid manages processes across nodes, providing distributed background processing, log handling, and several other features, using ZeroC’s IceGrid framework [&lt;a href="http://www.zeroc.com/icegrid/"&gt;5&lt;/a&gt;]. Several third-party applications use the OMERO API  (e.g. image-based searching, tracking and automatic image tagging; sophisticated image analysis modules [&lt;a href="http://www.openmicroscopy.org/site/products/partner"&gt;6&lt;/a&gt;]). OMERO’s model-based architecture has enabled its extension into a range of imaging domains, including light and electron microscopy, high-content screening, and recently into applications using non-image data from clinical and genomic studies [&lt;a href="http://www.openmicroscopy.org/site/support/partner/omero.biobank"&gt;7&lt;/a&gt;].&lt;/p&gt;

&lt;p&gt;Our next version, OMERO-5 improves support for large datasets, and reads images directly from their original file format, allowing access by third-party software.
OMERO and Bio-Formats run the JCB DataViewer [&lt;a href="http://jcb-dataviewer.rupress.org/"&gt;8&lt;/a&gt;] online scientific image publishing system and other institutional image data repositories [&lt;a href="http://odr.stowers.org"&gt;9&lt;/a&gt;], [&lt;a href="http://emdatabank.org/"&gt;10&lt;/a&gt;].&lt;/p&gt;</description>
        <persons>
          <person id="1942">Blazej Pindelski</person>
          <person id="2116">Douglas Russell</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Saturday/Open_Microscopy_Environment.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="UA2.220 (Guillissen)">
      <event id="2162">
        <start>12:00</start>
        <duration>02:00</duration>
        <room>UA2.220 (Guillissen)</room>
        <slug>cert_bsdcg</slug>
        <title>BSDCG Exam Session</title>
        <subtitle/>
        <track>Certification</track>
        <type>certification</type>
        <language/>
        <abstract>&lt;p&gt;The BSDA certification is designed to be an entry-level certification on BSD Unix systems administration.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Testing candidates with a general Unix background and at least six months of work experience as a BSD systems administrator, or who wish to obtain employment as a BSD systems administrator, will benefit most from this certification.&lt;/p&gt;

&lt;p&gt;The successful BSDA candidate is able to complete common administrative and troubleshooting tasks and has a good understanding of general BSD Unix and networking principles. In addition, the successful candidate demonstrates basic skills with these BSD operating systems: Dragonfly BSD, FreeBSD, NetBSD and OpenBSD. This does not mean that the candidate needs to learn the complete details of four operating systems. It does mean that the candidate is aware of the basic utilities common to these operating systems, and where specified in the exam objectives, of features unique to some of the BSD operating systems.&lt;/p&gt;</description>
        <persons>
          <person id="625">BSDCG Team</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2092">
        <start>14:00</start>
        <duration>01:45</duration>
        <room>UA2.220 (Guillissen)</room>
        <slug>lpi_1</slug>
        <title>LPI Exam Session 1</title>
        <subtitle/>
        <track>Certification</track>
        <type>certification</type>
        <language/>
        <abstract>&lt;h3&gt;LPI offers discounted certification exams at FOSDEM&lt;/h3&gt;</abstract>
        <description>&lt;p&gt;As in previous years, the Linux Professional Institute (LPI) will offer discounted certification exams to FOSDEM attendees.
LPI offers level 1, level 2 and level 3 certification exams at FOSDEM with an almost &lt;strong&gt;50% discount&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;For further information and instructions see &lt;a href="https://fosdem.org/certification"&gt;https://fosdem.org/certification&lt;/a&gt;.&lt;/p&gt;</description>
        <persons>
          <person id="1083">LPI Team</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2093">
        <start>16:00</start>
        <duration>01:45</duration>
        <room>UA2.220 (Guillissen)</room>
        <slug>lpi_2</slug>
        <title>LPI Exam Session 2</title>
        <subtitle/>
        <track>Certification</track>
        <type>certification</type>
        <language/>
        <abstract>&lt;h3&gt;LPI offers discounted certification exams at FOSDEM&lt;/h3&gt;</abstract>
        <description>&lt;p&gt;As in previous years, the Linux Professional Institute (LPI) will offer discounted certification exams to FOSDEM attendees.
LPI offers level 1, level 2 and level 3 certification exams at FOSDEM with an almost &lt;strong&gt;50% discount&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;For further information and instructions see &lt;a href="https://fosdem.org/certification"&gt;https://fosdem.org/certification&lt;/a&gt;.&lt;/p&gt;</description>
        <persons>
          <person id="1083">LPI Team</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="UA2.114 (Baudoux)">
      <event id="1702">
        <start>11:00</start>
        <duration>00:05</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>welcome_mysql2014</slug>
        <title>Welcome in the MySQL &amp; Friends Devroom 2014</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Open and welcome session&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="580">Frédéric Descamps</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1734">
        <start>11:05</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>mysql_ps</slug>
        <title>Getting started with MySQL Performance Schema</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Getting started with MySQL Performance Schema - a short overview of features available by default with zero efforts from user and zero config as well.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1630">Dimitri Kravtchuk</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UA2114/Saturday/Getting_started_with_MySQL_Performance_Schema.webm">Video</link>
        </links>
      </event>
      <event id="1738">
        <start>11:35</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>mysqlv8udfs</slug>
        <title>mysqlv8udfs - Writing MySQL UDFs in Javascript</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;MySQL offers two paths for users who want to add custom functions: SQL stored routines (SRs) and user-defined functions (UDFs).&lt;/p&gt;

&lt;p&gt;SRs are simple to create, safe to execute, and offer features such as SQL queries. Their downside is poor performance, clunky syntax, and no support for aggregate functions. UDFs are harder to create and can be unsafe. However, performance is about as fast as it ever gets. UDFs do support aggregate functions.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Stored Routines are simple to create and safe to execute and offer features such as SQL queries. Their downside is poor performance, clunky syntax, and no support for aggregate functions. User-defined functions are usually coded in C/C++ and are typically harder to create and can be unsafe. However, performance is about as fast as it ever gets. UDFs do support aggregate functions.&lt;/p&gt;

&lt;p&gt;The MySQLv8UDFs project offers UDFs that exposes the UDF interface to Google’s v8 JavaScript engine. This enables you to write MySQL scalar and aggregate functions in JavaScript. Although typically not as fast as C/C++ UDFs, we have examples where the javascript UDF solution is 5-8 times the performance of stored SQL functions, and even 2 times faster than the equivalent straight SQL expression. For more computationally intensive tasks, the javascript UDFs easily win from MySQL stored functions, while being relatively easy to code as compared to a straight C/C++ UDF.&lt;/p&gt;

&lt;p&gt;Apart from just UDFs to run javascript, the javascript environment offers many useful built-ins. Apart from the standard javascript built-ins, which include powerful string functions, an expressive and fast regular expression engine, and a convenient and safe JSON parser/serializer, MySQLv8udfs adds a number of utilities that are useful in a specfic MySQL context, such as functions to write to the MySQL error log and a fully functional MySQL client that allows you run queries to any MySQL server accessible through the network.&lt;/p&gt;

&lt;p&gt;Code: https://github.com/rpbouman/mysqlv8udfs.&lt;/p&gt;</description>
        <persons>
          <person id="1633">Roland Bouman</person>
        </persons>
        <links>
          <link href="https://oracleus.activeevents.com/2013/connect/search.ww?eventRef=mysqlconnect#loadSearch-event=null&amp;searchPhrase=&amp;searchType=session&amp;tc=0&amp;sortBy=&amp;p=&amp;i(11180)=20802">Abstract of a similar presentatino at MySQL Connect 2013</link>
          <link href="http://video.fosdem.org/2014/UA2114/Saturday/mysqlv8udfs_Writing_MySQL_UDFs_in_Javascript.webm">Video</link>
        </links>
      </event>
      <event id="2077">
        <start>12:05</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>galera_irl</slug>
        <title>Galera Cluster IRL</title>
        <subtitle>Migrate an infrastructure to Galera Cluster</subtitle>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Galera Cluster is a synchronous multi-master cluster for MySQL which allows you to synchronously replicate your data to every node in the cluster. Galera Cluster makes the life of a DBA easier with features like automatic node joining, electing donor nodes, and automatic node removal once a node has failed. There is no need to distinguish master and slave relations in your application as all nodes in the cluster are writable. Consider all nodes in the cluster as one big MySQL database server.&lt;/p&gt;

&lt;p&gt;The session will include design choices, lessons learned, and the pitfalls us at Spil Games fell into.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this talk I will explain how Spil Games strives to have their entire MySQL environment running on Galera Cluster. At Spil Games we have a large variety of MySQL implementations ranging from traditional functionally sharded database master-master pairs, single masters with many read slaves and user/location sharded database nodes. Migrating these different implementations to a Galera Cluster requires careful planning.&lt;/p&gt;

&lt;p&gt;The biggest challenge is to migrate all our existing (ageing) asynchronous Master-Master setup to a synchronous Galera replicator. Because the ageing servers are less performant than the new servers used for Galera we merge multiple existing clusters into one cluster, saving us lots of space and power in our data center.&lt;/p&gt;

&lt;p&gt;The session will include design choices, learnings and the pitfalls we fell into.&lt;/p&gt;</description>
        <persons>
          <person id="1933">Art van Scheppingen</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1781">
        <start>12:35</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>15_tips_galera</slug>
        <title>15 Tips to improve your Galera Cluster</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;15 tips to boost your Galera Cluster.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;During this presentation, I will show how to implement several stuff that will improve your day-to-day workload.&lt;/p&gt;

&lt;p&gt;The points will cover topics like Point in Time Recovery, WAN replication with group segments, Avoiding SST when adding new Percona XtraDB Cluster node, ... the tips will be briefly explained to the audience and then put in practice.&lt;/p&gt;

&lt;p&gt;Currently, the covered tips are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Point in Time Recovery&lt;/li&gt;
&lt;li&gt;Accelerate XtraBAckup SST&lt;/li&gt;
&lt;li&gt;Move async slave to a new master 5.5&lt;/li&gt;
&lt;li&gt;Move async slave to a new master 5.6&lt;/li&gt;
&lt;li&gt;Allow longer downtime for a node&lt;/li&gt;
&lt;li&gt;Measuring Max Replication Throughput on Percona XtraDB Cluster with wsrep_desync&lt;/li&gt;
&lt;li&gt;Multicast replication&lt;/li&gt;
&lt;li&gt;SSL everywhere&lt;/li&gt;
&lt;li&gt;decode GRA* files&lt;/li&gt;
&lt;li&gt;Realtime stats to pay attention to in Percona XtraDB Cluster and Galera&lt;/li&gt;
&lt;li&gt;Avoiding SST when adding new Percona XtraDB Cluster node&lt;/li&gt;
&lt;li&gt;Play with quorum and weight&lt;/li&gt;
&lt;li&gt;WAN replication with group segments&lt;/li&gt;
&lt;li&gt;Load balancer and TIME_WAIT&lt;/li&gt;
&lt;li&gt;Load balancer and persistent connections&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="580">Frédéric Descamps</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1866">
        <start>13:05</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>fulltextsearch_sphinx</slug>
        <title>Advanced Fulltext Search with Sphinx</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Sphinx is one of the best open-source alternative to replace MySQLs full text indices. This is not only because of its superior speed and smaller resource usage, but also because it provides extended features for full text searching, which are not available on MySQL FTS indices.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The talk will do a quick exploration on the syntax used for creating fulltext queries. Sphinx offers text matching operators like proximity, qourum, strict order operators as well as some special operators like SENTENCE,PARAGRAPH,ZONE. In Sphinx it's possible to choose between several built-in rankers, but also offers users a way to build custom ranking expressions with the expression ranker. Currently there are over 20 metrics that can be used to build a custom ranking expression. Also Sphinx comes with a SQL dialect for communication, which makes an easy transition from a FTS MySQL query to a Sphinx query.&lt;/p&gt;</description>
        <persons>
          <person id="1187">Adrian Nuta</person>
        </persons>
        <links>
          <link href="http://sphinxsearch.com/">Sphinx website</link>
        </links>
      </event>
      <event id="1886">
        <start>13:35</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>mariadb_connect_engine</slug>
        <title>MariaDB Connect Storage Engine</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The MariaDB CONNECT Storage Engine allows access to various file formats (CSV, XML, Excel, etc). It give access to any ODBC data sources (Oracle, DB2, SQLServer, etc). Also, it allows access to remote MySQL tables. A CONNECT table itself can be a set of remote MySQL tables. This opens the door to interesting distributed architectures that can help to address big data.
We will show practical examples of how the MariaDB CONNECT Storage Engine can help you get benefits from your existing data sources.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;MariaDB storages engines are bringing a lot of value to users: CONNECT is still quite unknown.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The CONNECT storage engine allows to access various file formats. It also allows to access remote MySQL tables. A table itself can be a set of remote tables. This open the door to interesting distributed architectures.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;We will present possible use cases.  We will present  interesting benchmark results of distributed queries.&lt;/p&gt;

&lt;p&gt;When it comes to Big Data with MySQL the answer is not simple and the  CONNECT storage engine introduce a new range of possibilities.&lt;/p&gt;</description>
        <persons>
          <person id="1796">Serge Frezefond</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2104">
        <start>14:05</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>incompatible_changes_57</slug>
        <title>Incompatible changes proposed in MySQL 5.7</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;For MySQL 5.7, one of the engineering goals is to continue to clean up and simplify code, and improve the architecture of the MySQL Server.&lt;/p&gt;

&lt;p&gt;As part of this spring cleaning process, some features in MySQL 5.7 had a change in behaviour; for example the EXPLAIN PARTITIONS and EXPLAIN EXTENDED syntax will be enabled by default. Other features will be deprecated and may be removed; for example the InnoDB Monitor tables.&lt;/p&gt;

&lt;p&gt;This session aims to describe the motivations behind each of these changes proposed, and how they will affect those that administrate MySQL servers.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1964">Morgan Tocker</person>
        </persons>
        <links>
          <link href="http://www.tocker.ca/categories/community/">List of changes blogged about so far</link>
        </links>
      </event>
      <event id="2107">
        <start>14:35</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>inisde57_replication</slug>
        <title>Inside MySQL 5.7 Replication Features</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The new replication features in MySQL 5.7 help users to further reduce downtime, thus increasing data and service availability. Moreover, they consolidate MySQL as a perfect fit for distributed environments such as elastic clouds.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The most recent Development Milestone Release presents a lot of new
and exciting enhancements. Worth noting the latest developments on
semi-synchronous replication, multi-threaded slave, and replication
instrumentation for accessing internal stats through performance
schema tables. In addition, the work done to make replication more
scalable, perform even better and be more user friendly also deserves
some of the spotlight.&lt;/p&gt;

&lt;p&gt;Therefore, don't miss this chance to meet with the engineers behind
the product, to get to know the next generation of replication
features and to influence future development. Lets talk about MySQL
Replication!&lt;/p&gt;</description>
        <persons>
          <person id="1347">Luis Soares</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2110">
        <start>15:05</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>mysql56_gtid</slug>
        <title>Handling failover with MySQL 5.6 and Global Transaction IDs</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Global Transaction IDs (GTIDs) are a new feature of MySQL 5.6 that can ease failover. Discover the benefits and challenges of GTIDs.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Replication has been used for a long time to provide high availability. However the traditional position-based replication has a serious drawback: a same transaction will never have the same position on two different servers. Reconfiguring replication is then difficult and error-prone, which is bad when you want to make failovers as graceful and reliable as possible.&lt;/p&gt;

&lt;p&gt;Enter MySQL 5.6 and Global Transaction IDs (GTIDs): a transaction is guaranteed to have the same identifiers across all servers of a given replication topology. This opens up new ways to handle failover, for instance when used in combination with Oracle's MySQL Utilities.&lt;/p&gt;

&lt;p&gt;But are GTIDs ready for production usage? How do you set up GTIDs and the MySQL Utilities to provide high availability and automatic failover to your replication cluster? What are the limitations of the MySQL Utilities? How do they compare to existing tools, for instance with MHA which is a robust and widely used tool?&lt;/p&gt;

&lt;p&gt;Come to this session to get a sense of the benefits and challenges of the high-availability solutions available with MySQL 5.6.&lt;/p&gt;</description>
        <persons>
          <person id="1970">Stephane Combaudon</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2121">
        <start>15:35</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>spider_storage_engine</slug>
        <title>Spider Storage Engine</title>
        <subtitle>The sharding plugin for MySQL/MariaDB</subtitle>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Spider is a storage engine for database sharding for MySQL/MariaDB. Spider is already bundled in MariaDB 10.0. I will introduce Spider and new topics.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Database sharding is the technique of splitting huge datas, a horizontal partition a database or search engine. Each individual partition is referred to as a shard or database shard. Spider Storage Engine enables tables of different MySQL instances to be treated like a table of a same instance. Because XA transaction and partitioning is supported, it can do decentralized arrangement to two or more servers of data of same table.
If your database is growing, you need considering to make sharding into multiple servers for splitting data and request. This session is for introducing database sharding especially database level sharding.
In addition, some other plugins are convenient by combination with Spider.
Spider is a unique and useful plugin of MySQL for database sharding such as a Storage Engine.&lt;/p&gt;</description>
        <persons>
          <person id="709">Stéphane Varoqui </person>
          <person id="1193">Colin Charles</person>
        </persons>
        <links>
          <link href="http://spiderformysql.com">Spider's home page</link>
          <link href="https://mariadb.com/kb/en/spider-storage-engine-overview/">MariaDB's Spider page</link>
          <link href="http://video.fosdem.org/2014/UA2114/Saturday/Spider_Storage_Engine.webm">Video</link>
        </links>
      </event>
      <event id="2118">
        <start>16:05</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>sharding_fabric</slug>
        <title>Sharding and Scale-out using MySQL Fabric</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;MySQL Fabric is an open-source solution released by the MySQL Engineering team at Oracle. It makes management of MySQL server farms easy and available for both applications with small and large number of servers.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In order to provide resilience to server failures, MySQL Fabric
organizes the servers in groups and deploys high-availability
solutions within each group. The concept is independent of the
implementation, which can be done using traditional asynchronous
primary backup approach, MySQL Cluster or solutions with shared or
replicated storage.  In the first version, availability is implemented
using the asynchronous primary backup approach.&lt;/p&gt;

&lt;p&gt;As the enterprise grows, so does the data and the number of requests
for the data. A single server will not be able to handle the increased
demands on size and load of the database. A common technique for
scaling is to shard the database thereby reducing the write load and
data size for each server. MySQL Fabric is integrated with the
connectors and provides an enhanced API for working with massively
sharded databases.&lt;/p&gt;

&lt;p&gt;In this presentation, you will get an introduction to MySQL Fabric and
how it support high-availability and sharding as well as how to write
and manage applications taking advantage of the latest features of
MySQL Fabric.&lt;/p&gt;</description>
        <persons>
          <person id="1241">Lars Thalmann</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2142">
        <start>16:35</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>trouble_mysql</slug>
        <title>Troubleshooting performance problems in MySQL</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;It is a typical day at work when suddenly someone notices that the application loads slow. They immediately switch to complaining about database performance and demand that you find the problem and fix it. But how to verify the problem is really with the database? What are the common symptoms and where to look for them? And how to isolate the culprit?&lt;/p&gt;

&lt;p&gt;The session will discuss the practical approach to troubleshooting performance problems in MySQL: where to start the investigation, what information to look at and how to interpret it. I will also be talking about useful tools and preparing the environment for effective troubleshooting.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1191">Maciej Dobrzanski</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2135">
        <start>17:05</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>proxysql</slug>
        <title>ProxySQL : High Availability and High Performance Proxy for MySQL</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;There are excellent Enterprise software which are able to scale out and boost performances of a cluster, but none open source. ProxySQL is a new proxy (currently under development) that aims to become the first open source proxy in the MySQL ecosystem able to provide HA and high performance with no changes in the application, using several built-in features and integration with clustering software.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Features under development are:
- read/write split ;
- queries caching ;
- queries filtering and rewrite ;
- logging ;
- transparent reconnect ;
- connection pooling ;
- built-in key/value storage ;
- integration with clustering solution like MHA for planned and/or automatic failover;
- support for master-slave setups (MySQL replication) or multi-masters (NDB or Galera) .&lt;/p&gt;

&lt;p&gt;The project is currently under active development, its source code and a mini how-to is available at https://github.com/renecannao/proxysql , and some initial benchmark are available at http://www.proxysql.com&lt;/p&gt;</description>
        <persons>
          <person id="1992">René Cannaò</person>
        </persons>
        <links>
          <link href="https://github.com/renecannao/proxysql">https://github.com/renecannao/proxysql</link>
          <link href="http://www.proxysql.com">http://www.proxysql.com</link>
        </links>
      </event>
      <event id="2120">
        <start>17:35</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>lepeterborosrulez</slug>
        <title>Practical sysbench</title>
        <subtitle>Benchmarking mysql and IO subsystems</subtitle>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This session will be about benchmarking MySQL and disk IO subsystems with sysbench and interpreting the results. In our consulting company, I helped a reasonable number of customers with sysbench so I know the common caveats most people run into. This talk will cover benchmarking IO subsystems with fileio tests, as well as benchmarking MySQL.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1986">Peter Boros</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UA2114/Saturday/Practical_sysbench.webm">Video</link>
        </links>
      </event>
      <event id="2148">
        <start>18:05</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>osm_mysql</slug>
        <title>OSM data in MySQL</title>
        <subtitle>All the world in a few large tables</subtitle>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;So far the main workhorse database for OpenStreeMap data was PostgreSQL/PostGIS. With the GIS improvements in latest MySQL and MariaDB releases, especially having true spatial relationship functions instead of just max bounding rectangle (MBR) based ones, have become viable alternatives though. This talk is going to present the most important improvements, a MySQL backend for the osm2pgsql importer tool, and some sample applications including performance comparisons.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1996">Hartmut Holzgraefe</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2112">
        <start>18:35</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>maxscale</slug>
        <title>MaxScale, the Pluggable Router</title>
        <subtitle/>
        <track>MySQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Flexible database clusters impose challenges in terms of load balancing, load splitting, write conflict avoidance, and service availability to name a few.
MaxScale is a highly modular proxy with a pluggable API, which assists in offloading tasks away from both clients and the back-end servers. In its simplest form it acts as a non-blocking zero-copy load balancer for read-only connections, while in the other extreme it examines packets and parses queries, which are then processed according to the dynamically changeable rules exposed by plugged-in modules.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;At its core MaxScale is a server handling massively parallel client load and processing it according to the associated router. Connections are handled with epoll, and whenever possible, packets are routed without making unnecessary copies of them. MaxScale has efficient, flexible and rich logging facilities including logging on disk, to shared memory or to syslog.
MaxScale is opensource software, licensed under the GPLv2, providing a plug-in API for query routing, server monitoring and for protocols such as MySQL and httpd. Pluggable authentication is in plans. Initially supported platforms are CentOS and Debian on x86_64.
In our presentation we introduce the architecture of MaxScale, modularity, the plug-in API, how it is integrated with Galera and MySQL replication, and some typical use cases.&lt;/p&gt;</description>
        <persons>
          <person id="1974">Massimiliano Pinto</person>
          <person id="1975">Vilho Raatikka</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="UD2.218A">
      <event id="2355">
        <start>11:00</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>webmaker_mozedu</slug>
        <title>Webmaker and MozEdu - Mozilla in the education and the code</title>
        <subtitle>A new way to learn code</subtitle>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This is a project that already has been in operation for a few months, born about a year ago from Mozilla Hispano, primarily about teaching young children and schools about the dangers out there on the Internet, how to avoid them, privacy in social networks, and others. Webmaker is a preamble (prior to beginning need to know these things). Success Stories of our events in Paraguay (the pioneers) and other countries, with rooms full of people who want to learn.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;We will also show webmaker project that seeks to encourage, teach and motivate people of all edadea create anywhere you, through simple and powerful tools that mozilla provides.&lt;/p&gt;</description>
        <persons>
          <person id="2134">Flore Allemandou</person>
          <person id="2141">Eduardo Urcullú</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Webmaker_and_MozEdu_Mozilla_in_the_education_and_the_code.webm">Video</link>
        </links>
      </event>
      <event id="2364">
        <start>11:30</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>webapps</slug>
        <title>Developing Webapps for Firefox OS</title>
        <subtitle>The Efficient &amp; Simplistic Approach</subtitle>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This session will mostly concentrate on tips for designing and developing apps for the web as a platform while using the latest development tools and resources for Firefox OS in an efficient way.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;With each passing day we see the web becoming more and more popular as a platform. What makes these apps so special? How can someone build such apps which aesthetically appeal to users? This session would be mostly concentrate on tips for designing and developing apps for the web as a platform while using the latest development tools and resources for Firefox OS such as the App Manager in an efficient way.&lt;/p&gt;</description>
        <persons>
          <person id="142">Robert Kaiser</person>
          <person id="2133">Sayak Sarkar</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Developing_Webapps_for_Firefox_OS.webm">Video</link>
        </links>
      </event>
      <event id="2443">
        <start>12:00</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>state_of_firefox_for_android</slug>
        <title>State of Firefox for Android</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;We'll provide an overview of what happened with Firefox for Android in the past year. What features did we add, what performance improvements did we achieve, what usability improvements we made, and what entertaining stories we can tell from that experience? Also, where did we fail and where are we still aiming to improve?&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="850">Chris Lord</person>
          <person id="2178">Gian-Carlo Pascutto</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/State_of_Firefox_for_Android.webm">Video</link>
        </links>
      </event>
      <event id="2444">
        <start>12:30</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>state_of_firefox_os</slug>
        <title>State of Firefox OS</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;What we did in 2013, the cool dev tools we got for X-mas, the great stuff we’re planning for 2014, and how to get a free tablet.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="284">Fabien Cazenave</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/State_of_Firefox_OS.webm">Video</link>
        </links>
      </event>
      <event id="2367">
        <start>13:00</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>persona</slug>
        <title>Mozilla Persona: an easy way to sign into websites</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;What is Persona?
How does it work?
What are benefits of Persona?
Let's see it through a demo!&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2124">Srikar Ananthula</person>
        </persons>
        <links>
          <link href="https://login.persona.org/">Mozilla Persona</link>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Mozilla_Persona_an_easy_way_to_sign_into_websites.webm">Video</link>
        </links>
      </event>
      <event id="2368">
        <start>13:30</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>designing_for_participation_web_litteracy</slug>
        <title>Designing for Participation and Web Litteracy</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Mozilla has 4 pillars of activity, to build, empower, teach, and shape the web. One of the ways we can help others join with these activities is to design our systems and processes with participation in mind, but why stop there? We also try to teach, and its a waste to teach someone a proces, and not tie it into a broader understanding.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This interactive talk, derived from the "Desigining for Participation" session at the Mozilla Summit, and spured on by the release of the Web Literacy Standard v1.0, aims to not only help drive better participation by making systems and processes more accessible, but connect skills people learn + use within these to a broader understanding and web literacy.&lt;/p&gt;</description>
        <persons>
          <person id="906">William Duyck (FuzzyFox)</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Designing_for_Participation_and_Web_Litteracy.webm">Video</link>
        </links>
      </event>
      <event id="2369">
        <start>14:00</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>google_summer_of_code_mozilla</slug>
        <title>Google Summer of Code and Mozilla</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Mozilla has participated in the Google Summer of Code every year since it started. This talk will review what Mozilla has gained, show off a few successful projects, and explain the great opportunities to participate for both students and mentors.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="127">Gervase Markham</person>
          <person id="140">Florian Quèze</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Google_Summer_of_Code_and_Mozilla.webm">Video</link>
        </links>
      </event>
      <event id="2370">
        <start>14:30</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>javascript_for_skeptics</slug>
        <title>JavaScript for the skeptics</title>
        <subtitle>A contemporary retrospective on Advanced &amp; Applied JavaScript</subtitle>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Starting with pdf.js, spiraling around shumway &amp;amp; zipfile.js, we'll explore what JS is already capable of, even though it never seemed practical. Then we'll go on to explain the WebAPIs to bring the "native" right in the browser (with a tinge of FxOS - so that it's not up in the air, it's already there - in fact it's &lt;em&gt;so-last-FOSDEM&lt;/em&gt; actually). Finally, we will talk about the (near) future, and how broadway.js, asm.js (Emscripten, LLVM) et al. are going the change the web - for good!&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2125">Soumya Deb</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/JavaScript_for_the_skeptics.webm">Video</link>
        </links>
      </event>
      <event id="2371">
        <start>15:00</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>servo_building_a_parallel_web_browser</slug>
        <title>Servo: building a parallel web browser</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Servo is a brand new browser engine being written by Mozilla Research, Samsung, and members of the Mozilla community. It's built in Rust, a new programming language created by Mozilla, and designed to take full advantage of modern hardware and security practices. Come learn about what sets Servo apart from the competition, and how you can contribute!&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1343">Josh Matthews</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Servo_building_a_parallel_web_browser.webm">Video</link>
        </links>
      </event>
      <event id="2372">
        <start>15:30</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>web_audio</slug>
        <title>Web Audio API</title>
        <subtitle>How to properly make noise on the Web</subtitle>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Now that &amp;lt;audio&gt; starts to get traction on the Web, let's talk about the new API authors can use to make noise in their web pages.&lt;/p&gt;

&lt;p&gt;We will briefly cover the API, and then show what is possible to achieve with it (and what is, at the moment, hard or impossible) and how it fits in the Web platform. We finish with possible plans for future of the API.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="283">Paul Adenot</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Web_Audio_API.webm">Video</link>
        </links>
      </event>
      <event id="2373">
        <start>16:00</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>extending_firefox_developer_tools</slug>
        <title>Extending Firefox Developer Tools</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The Firefox Developer Tools team has been working hard over the last two years to provide web developers with useful, performant developer tools in Firefox. These tools are now excellent and are receiving a lot of attention from web developers. We have always thought that in addition to being useful and performant they also need to be extensible so that add-on hackers and web developers can create their own customized tools and provide better support for specific web frameworks and technologies.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Firefox Developer Tools team has been working hard over the last two years  to provide web developers with useful, performant developer tools in Firefox. The tools are now excellent and recieving a lot of attention from web developers. We have always thought that in addition to being useful and performant, in order to be Firefox they also need to be extensible so that add-on hackers and web developers can create their own customized tools and provide better support for specific web frameworks and technologies.
This talk will cover the current apis and techniques used to extend the developer tools, how to get started, where to find help and real-world examples.&lt;/p&gt;</description>
        <persons>
          <person id="650">Jeff Griffiths</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Extending_Firefox_Developer_Tools.webm">Video</link>
        </links>
      </event>
      <event id="2374">
        <start>16:30</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>graphics_in_gecko</slug>
        <title> Utilizing GPUs to accelerate 2D content</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Over the last 15 years, GPUs have gone from being a piece of hardware found almost exclusively on the machines of gamers to being present in almost every single desktop and laptop computer. This hardware presents opportunities to greatly improve power usage and performance for graphics applications. Over the last 5 years GPU utilization in the desktop application world for accelerating 2D graphics has slowly moved forward, however their intended use for video games also presents us with a number of limitations.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Over the last 15 years GPUs have gone from being a piece of hardware found almost exclusively on the machines of gamers, to being present in almost every single desktop and laptop computer. This hardware presents opportunities to greatly improve power usage and performance for graphics applications. Over the last 5 years GPU utilization in the desktop application world for accelerating 2D graphics has slowly moved forward, however their intended use for video games also presents us with a number of limitations.&lt;/p&gt;

&lt;p&gt;In this presentation I will talk about what GPUs are, why we want to use them, in what different ways they can be put to use, and some of the challenges we've encountered when using them at Mozilla. I will also try and touch on some of the technical details on the different tradeoffs that the most common algorithms present.&lt;/p&gt;</description>
        <persons>
          <person id="1390">Bas Schouten</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Utilizing_GPUs_to_accelerate_2D_content.webm">Video</link>
        </links>
      </event>
      <event id="2445">
        <start>17:00</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>testing_for_a_better_web</slug>
        <title>Testing for a Better Web</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Poor interoperability between browsers is one of the main frustrations faced when trying to develop for the web platform. Solving this is essential for safeguarding the future of the open web, and requires a comprehensive web platform testsuite that is run by all browser vendors. The challenge of creating this test suite is being coordinated by the W3C under the "Test The Web Forward" banner. In this talk, I will present the current state of the test suite, how Mozilla are using these tests in their automated testing infrastructure, and explain how to get involved with improving the web by contributing to the testing effort.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2174">James Graham</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Testing_for_a_Better_Web.webm">Video</link>
        </links>
      </event>
      <event id="2352">
        <start>17:30</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>women_and_technology</slug>
        <title>Women and Technology</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Most of us are aware of the shocking statistic of 'Men vs Women' ratio in the Open Source world. The tough job right now is to find the reason for this shocking difference and figure out ways to get more women involved in Open Source. Being a woman in the Open source world, I have analyzed a few reasons for this scenario. This lightning talk will let me share my views with others and in turn will help me get a more global view point.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;I would like this session to be as interactive as possible. The slides used will be simple and I will try not to throw any technical jargons at the crowd.&lt;/p&gt;</description>
        <persons>
          <person id="2122">Priyanka Nag</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Women_and_Technology.webm">Video</link>
        </links>
      </event>
      <event id="2375">
        <start>18:00</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>observe_online_tracking_with_lightbeam</slug>
        <title>Observe online tracking with Lightbeam</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Using the new Lightbeam add-on for Firefox, we will monitor web-tracking and discover solutions to protect ourselves.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1209">Antoine Duparay</person>
        </persons>
        <links>
          <link href="https://addons.mozilla.org/firefox/addon/lightbeam/">Lightbeam addon</link>
          <link href="https://www.mozilla.org/lightbeam/">Lightbeam website</link>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/Observe_online_tracking_with_Lightbeam.webm">Video</link>
        </links>
      </event>
      <event id="2376">
        <start>18:30</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>state_of_thunderbird</slug>
        <title>State of Thunderbird</title>
        <subtitle/>
        <track>Mozilla</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;What happened to the Thunderbird Project since the last version completely done by Mozilla staff. How things are going and what the plans are for the next version.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;I'll give an overview of the project and will hold a Q&amp;amp;A cession.&lt;/p&gt;</description>
        <persons>
          <person id="332">Ludovic Hirlimann</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2218A/Saturday/State_of_Thunderbird.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="K.3.201">
      <event id="2427">
        <start>11:00</start>
        <duration>00:15</duration>
        <room>K.3.201</room>
        <slug>welcome_perl</slug>
        <title>Welcome to the Perl devroom</title>
        <subtitle/>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Welcome!&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="582">Claudio Ramirez</person>
          <person id="1447">Wendy Van Dijk</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Welcome_to_the_Perl_devroom.webm">Video</link>
        </links>
      </event>
      <event id="2409">
        <start>11:15</start>
        <duration>00:40</duration>
        <room>K.3.201</room>
        <slug>convos_async_html5</slug>
        <title>Convos, a modern IRC client for your browser</title>
        <subtitle>A fullly HTML5 async Node.js-like application in Perl</subtitle>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Convos is a modern IRC client for your browser, built in the Mojolicious framework using HTML5 Web Technologies like Web Sockets, Desktop Notifications, Media Queries, and Push State. It's always on, storing your messages in a Redis backend even when you are not connected. In my presentation, I will go through some of our technology choices and challenges in building a fully asynchronous Node.js-like application in Perl.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2159">Marcus Ramberg</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Convos_a_modern_IRC_client_for_your_browser.webm">Video</link>
        </links>
      </event>
      <event id="2422">
        <start>12:00</start>
        <duration>00:40</duration>
        <room>K.3.201</room>
        <slug>futures</slug>
        <title>Asynchronous programming: Futures</title>
        <subtitle/>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A Future object represents an operation that is currently in progress, or has recently completed. It can be used in a variety of ways to manage the flow of control and data, through an asynchronous program. It is intended that library functions which perform asynchronous operations would use future objects to represent outstanding operations, and allow their calling programs to control or wait for these operations to complete.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2162">Paul 'LeoNerd' Evans</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Asynchronous_programming_Futures.webm">Video</link>
        </links>
      </event>
      <event id="2423">
        <start>12:45</start>
        <duration>00:40</duration>
        <room>K.3.201</room>
        <slug>perl_community</slug>
        <title>Perl Community Essentials</title>
        <subtitle>How to get the most out of the Perl community?</subtitle>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;How can one get the most out of the Perl community? Good question! I'm so glad you asked.&lt;/p&gt;

&lt;p&gt;In this presentation, Salve J. Nilsen attempts to give a concise and information-rich overview of what the Perl community can offer, what to expect, and how to get the most out of it. The intended audience is &lt;em&gt;everyone&lt;/em&gt; who wants to be ore useful and effective with Perl, and isn't already familiar with the community.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this talk you'll find answers to questions like...&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Where and how do I find Perl people to have a beer with?&lt;/li&gt;
&lt;li&gt;How do I find out which modules are cool, powerful and the the easiest to work with?&lt;/li&gt;
&lt;li&gt;How can I find useful software, good recommendations and what the current best practices are?&lt;/li&gt;
&lt;li&gt;What are the most useful community services offered, and how can I get the most out of them?&lt;/li&gt;
&lt;li&gt;How can I build a positive reputation within the Perl community? &lt;/li&gt;
&lt;li&gt;How can my employment opportunities and pay grade be improved with the help of the Perl community?&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="2163">Salve J Nilsen</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Perl_Community_Essentials.webm">Video</link>
        </links>
      </event>
      <event id="2424">
        <start>13:30</start>
        <duration>00:40</duration>
        <room>K.3.201</room>
        <slug>novels_with_perl</slug>
        <title>Writing novels using Perl</title>
        <subtitle/>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Do you need Perl to write a novel? Indeed you don't and many, if not most, novelists write them without using it, and I'm positive about this. However, Perl can help you through the process of writing a novel and that's what I've done with the open source "Manuel the Magnificent Mechanical Man", which you can either buy in Amazon or download as a CPAN module.
I'll talk about how I organized the workflow for writing the novel using Perl, Git, GitHub, and the modules and Perl features which helped me through the process.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1263">Juan Julián Merelo</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Writing_novels_using_Perl.webm">Video</link>
        </links>
      </event>
      <event id="2425">
        <start>14:15</start>
        <duration>00:40</duration>
        <room>K.3.201</room>
        <slug>ab_testing</slug>
        <title>A/B testing: what your mother never told you</title>
        <subtitle/>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;People keep hearing about A/B testing, but not a lot of people understand it. Rather than focusing on what your software does, it helps you focus on what your customers do. This talk will introduce some basic concepts of A/B testing, explain some common mistakes people make, and (if I'm lucky), will introduce the first open-source A/B testing module for Perl (I've already written it, but it needs to be renamed and have a better interface).&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1554">Curtis 'Ovid' Poe</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/AB_testing_what_your_mother_never_told_you.webm">Video</link>
        </links>
      </event>
      <event id="2426">
        <start>15:00</start>
        <duration>00:40</duration>
        <room>K.3.201</room>
        <slug>perl_web_love</slug>
        <title>Perl and the Web - A Love Story</title>
        <subtitle/>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In the beginning of the great kingdom of the Internet, there was one ruler: Perl. With time, fallen from grace, the beautiful princess language lost its place on the throne, giving way to Ruby, Python, and to the dismay and horror of everyone in the kingdom, PHP.&lt;/p&gt;

&lt;p&gt;But all is not lost. While underground, Perl has schemed a plot to overthrow the competitors. That plan is Plack/PSGI.&lt;/p&gt;

&lt;p&gt;Interested in knowing more? Attend the talk, if you dare!&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="210">Sawyer X</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Perl_and_the_Web_A_Love_Story.webm">Video</link>
        </links>
      </event>
      <event id="2446">
        <start>15:45</start>
        <duration>00:40</duration>
        <room>K.3.201</room>
        <slug>perl5_unicode</slug>
        <title>Perl 5 and Unicode</title>
        <subtitle>A Thorough Introduction</subtitle>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will start at the basics that any programmer in any language will need to know, moving on to Perl's approach to Unicode and its gotchas. To keep things interesting there will be a short puzzle to figure out every few slides. Some of them will be testing if you've been paying attention to the previous slides, and some of them will be trick questions which will be explained subsequently. See if you can get a perfect score!&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2169">David Lowe</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Perl_5_and_Unicode.webm">Video</link>
        </links>
      </event>
      <event id="2430">
        <start>16:30</start>
        <duration>00:20</duration>
        <room>K.3.201</room>
        <slug>optimatization</slug>
        <title>Nearly Everything you do is Optimization</title>
        <subtitle>Stop. -- Really, Stop</subtitle>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Which of your daily programming or system analysis and design activities aren't attempts to find and choose the best way to do something - an activity in which computers and automation are, in the long run, far superior?  Learn to do those things instead of doing the things machines can do better than you.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2165">Matthew 'diakopter' Wilson</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Nearly_Everything_you_do_is_Optimization.webm">Video</link>
        </links>
      </event>
      <event id="2442">
        <start>16:50</start>
        <duration>00:20</duration>
        <room>K.3.201</room>
        <slug>bridges_moaevm</slug>
        <title>Stop Building Bridges to Nowhere: Build Bridges to MoarVM instead</title>
        <subtitle/>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;How many ways to interoperate? Build bindings to libraries in-process. Build bindings as RPC wrappers. Build bindings as web service wrappers. Build bindings as cross-VM sharing. OR build bindings to a VM which has bindings to all the others.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2165">Matthew 'diakopter' Wilson</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Stop_Building_Bridges_to_Nowhere_Build_Bridges_to_MoarVM_instead.webm">Video</link>
        </links>
      </event>
      <event id="2407">
        <start>17:15</start>
        <duration>00:40</duration>
        <room>K.3.201</room>
        <slug>net_ldap</slug>
        <title>Net::LDAP</title>
        <subtitle>Basic concepts of LDAP, the Net::LDAP module and some real life examples</subtitle>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Net::LDAP is a great LDAP client API, managing standard LDAP operations (add, search, bind, modify, ...), and extended operations and controls (VLV, password policy, change password, etc.).
It also includes an LDIF API which is very useful when managing mass import/export between directories.
This talk will present basic concepts of LDAP, the Net::LDAP module, and some real life examples.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="888">Clément Oudot</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/NetLDAP.webm">Video</link>
        </links>
      </event>
      <event id="2429">
        <start>18:00</start>
        <duration>01:00</duration>
        <room>K.3.201</room>
        <slug>perl6_today</slug>
        <title>Perl 6: what can you do today?</title>
        <subtitle>State of the Butterfly</subtitle>
        <track>Perl</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this session, we'll answer "how far along is Perl 6" by exploring the things you can do with Perl 6 today. Along the way we'll discover a powerful way to parse, composable concurrent programming, a rich and extensible object system, and much more.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2164">Jonathan Worthington</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3201/Saturday/Perl_6_what_can_you_do_today.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="K.3.401">
      <event id="2396">
        <start>11:00</start>
        <duration>00:50</duration>
        <room>K.3.401</room>
        <slug>managing_postgres_in_a_devops_environment</slug>
        <title>Managing Postgres in a devops environment</title>
        <subtitle/>
        <track>PostgreSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Communication and collaboration between developers and systems administrators represent a key aspect of the "devops" cultural movement that has been growing in popularity over the last few years.
Database administrators, most of the times, find themselves in between developers and sysadmins and their role is strategic.
This talk will address some of the main concepts of "devops" as well as outline the reasons why Postgres can be considered the perfect companion in the database area.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2153">Gabriele Bartolini</person>
          <person id="2181">Marco Nenciarini</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2397">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>K.3.401</room>
        <slug>real_life_postgresql_json</slug>
        <title>Real-Life PostgreSQL JSON</title>
        <subtitle/>
        <track>PostgreSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;PostgreSQL has added some wonderful new JSON features in 9.2 and 9.3. They look fascinating, exciting, and should have all kinds of great applications...&lt;/p&gt;

&lt;p&gt;Like what?&lt;/p&gt;

&lt;p&gt;We'll talk about some real-life use-cases that actual companies are deploying, and what the trade-offs, performance issues, and challenges they've faced are.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1429">Christophe Pettus</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3401/Saturday/RealLife_PostgreSQL_JSON.webm">Video</link>
        </links>
      </event>
      <event id="2398">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>K.3.401</room>
        <slug>a_look_at_the_elephants_trunk</slug>
        <title>A look at the Elephants trunk - PostgreSQL 9.4</title>
        <subtitle/>
        <track>PostgreSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;PostgreSQL 9.3 was released in September 2013, but the development of 9.4 is close to reaching beta. This talk will take a look at some of the things that are available in what will eventually become PostgreSQL 9.4.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2154">Magnus Hagander</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3401/Saturday/A_look_at_the_Elephants_trunk_PostgreSQL_94.webm">Video</link>
        </links>
      </event>
      <event id="2399">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>K.3.401</room>
        <slug>postgres_performance_for_humans</slug>
        <title>Postgres Performance for Humans</title>
        <subtitle/>
        <track>PostgreSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;To many developers the database is a black box. You expect to be able to put data into your database, have it to stay there, and get it out when you query it... hopefully in a performant manner. When its not performant enough the two options are usually add some indices or throw some hardware at it. We'll walk through a bit of a clearer guide of how you can understand how database is doing from a 30,000 foot perspective as well as analyze specific problematic queries and how to tune them. In particular we'll cover:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Postgres Caching&lt;/li&gt;
&lt;li&gt;Postgres Indexing&lt;/li&gt;
&lt;li&gt;Explain Plans&lt;/li&gt;
&lt;li&gt;Extensions&lt;/li&gt;
&lt;li&gt;More&lt;/li&gt;
&lt;/ul&gt;
</abstract>
        <description></description>
        <persons>
          <person id="1428">Craig Kerstiens</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3401/Saturday/Postgres_Performance_for_Humans.webm">Video</link>
        </links>
      </event>
      <event id="2400">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>K.3.401</room>
        <slug>postgres_for_application_developers</slug>
        <title>Postgres for Application Developers</title>
        <subtitle/>
        <track>PostgreSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In recent years, Postgres has gone beyond a traditional database and has become more of a data platform. While keeping its roots as a robust RDMS, it has added flexible, friendly document storage, and more.&lt;/p&gt;

&lt;p&gt;We'll take a tour of features which make Postgres a compelling choice for your next project, including&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Embedded JavaScript and JSON&lt;/li&gt;
&lt;li&gt;Other Extensions and Datatypes&lt;/li&gt;
&lt;li&gt;Window Functions&lt;/li&gt;
&lt;li&gt;Accessing non-postgres data like Redis, Mysql, and even Mongo&lt;/li&gt;
&lt;/ul&gt;
</abstract>
        <description></description>
        <persons>
          <person id="2155">Will Leinweber</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3401/Saturday/Postgres_for_Application_Developers.webm">Video</link>
        </links>
      </event>
      <event id="2401">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>K.3.401</room>
        <slug>identifying_hotspots_in_the_postgresql_build_process</slug>
        <title>Identifying Hotspots in the PostgreSQL Build Process</title>
        <subtitle/>
        <track>PostgreSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Software developers rely on a fast and correct build system to compile their source code changes and produce modified deliverables for testing and deployment. The scale and complexity of the PostgreSQL build process makes build performance an important topic to discuss and address.&lt;/p&gt;

&lt;p&gt;In this talk, we will introduce a new build performance analysis technique which identifies "build hotspots", i.e., files that are slow to rebuild (by analyzing a build dependency graph), yet change often (by analyzing version control history). We will discuss the identified hotspots in the 9.2.4 release of PostgreSQL.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1993">Shane McIntosh</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3401/Saturday/Identifying_Hotspots_in_the_PostgreSQL_Build_Process.webm">Video</link>
        </links>
      </event>
      <event id="2403">
        <start>17:00</start>
        <duration>00:30</duration>
        <room>K.3.401</room>
        <slug>announcements_annual_report_and_election_results</slug>
        <title>Announcements, Annual Report and Election Results</title>
        <subtitle/>
        <track>PostgreSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;PostgreSQL Europe's Annual report will be presented along with other announcements, and the results of the 2014 board elections revealed.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2154">Magnus Hagander</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3401/Saturday/Announcements_Annual_Report_and_Election_Results.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="K.4.201">
      <event id="2231">
        <start>11:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>state_openjdk</slug>
        <title>The State of OpenJDK</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A review of the past year in the life of the OpenJDK Community, with a particular focus on the nearly-finished JDK 8 release, the upcoming JDK 9 release, and a look ahead to planned process and infrastructure improvements.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="218">Mark Reinhold</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2230">
        <start>11:30</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>openjdk_aarch64_update</slug>
        <title>OpenJDK on AArch64 Update</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Red Hat's project of porting OpenJDK to run on ARM's new 64-bit architecture began about 18 months ago. This talk will describe the work we have performed over the last year, explaining how we went about implementing the client and server JIT compilers. In particular, we will give details and examples of how we have tuned the server compiler to generate code that has been optimized to make use of the AArch64 instruction set.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Red Hat's project of porting OpenJDK to run on ARM's new 64-bit
architecture began about 18 months ago. Our rapid progress implementing
the interpreted runtime was demonstrated at last year's FOSDEM. Since
then we have completed our implementation of both the client and server
JIT compilers and the project is now approaching its finishing stages.
All of which implies that the first high quality, high performance Java
runtime available to AArch64 developers will be Free Software.&lt;/p&gt;

&lt;p&gt;This talk will describe the work we have performed over the last year,
explaining how we went about implementing the two JIT compilers. In
particular, we will give details of how we have tuned the server
compiler to generate code that has been optimized to make use of the
AArch64 instruction set. We will demonstrate the latter by running some
 example programs, displaying the generated AArch64 machine code and
comparing it with the code generated by the x86 JIT compiler.&lt;/p&gt;</description>
        <persons>
          <person id="719">Andrew Haley</person>
          <person id="742">Andrew Dinn</person>
        </persons>
        <links>
          <link href="http://aph.fedorapeople.org/Aarch64-fosdem-2014.pdf">Aarch64-fosdem-2014.pdf</link>
        </links>
      </event>
      <event id="2232">
        <start>12:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>shenandoah</slug>
        <title>Shenandoah - an ultra-low pause-time GC for OpenJDK</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Current garbage collectors for OpenJDK all need to stop the application periodically to perform garbage collection tasks. This is a scalability bottleneck because those pause times are dependend on heap size. Shenandoah is a new garbage collector for OpenJDK, currently developed by Red Hat, that aims to reduce GC pause times to a minimum by implementing marking and object evacuation to run concurrently with application threads, and utilizing parallel garbage collection threads.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Current garbage collectors for OpenJDK all need to stop the application
periodically to perform garbage collection tasks. This is a scalability
bottleneck because those pause times are dependend on heap size. This is
a problem for large-scale applications that require 100GB+ of heap.
Shenandoah is a new garbage collector for OpenJDK, currently developed
by Red Hat, that aims to reduce GC pause times to a minimum.
Specifically, pause time are no longer dependend on heap size. It
implements marking and object evacuation to run concurrently with
application threads, and utilizing parallel garbage collection threads.&lt;/p&gt;

&lt;p&gt;In this talk I want to introduce the Shenandoah GC, talk about our
motivations, present the technical innvoations that enable Shenandoah to
achieve concurrent marking and evacuation, compare Shenandoah with other
garbage collectors, and finally give an overview of what we plan to do
in the future.&lt;/p&gt;</description>
        <persons>
          <person id="740">Roman Kennke</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2233">
        <start>12:30</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>openjdk_powerpc_endgame</slug>
        <title>The OpenJDK PowerPC/AIX port endgame</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The PowerPC/AIX porting project currently driven by IBM and SAP is a good example how the OpenJDK fosters the cooperation of different players in the Java ecosystem in an open environment. At last years' FOSDEM, we presented our JCK-certified JDK7 port. This year, we will showcase our JDK8 port. But more importantly, we will describe the lengthy process of integrating the port into the main OpenJDK repository, thus making it a first class citizen in the OpenJDK environment.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The PowerPC/AIX porting project currently driven by IBM and SAP
is a good example how the OpenJDK fosters the cooperation of different
players in the Java ecosystem in an open environment.&lt;/p&gt;

&lt;p&gt;At last years FOSDEM, we presented our JCK-certified JDK7 port. This
year, we will showcase our JDK8 port. But more importantly, we will
describe the lengthy process of integrating the port into the main
OpenJDK repository, thus making it a first class citizen in the OpenJDK
environment. This process includes the creation of a JDK Enhancement
Proposals, the agreement on a detailed Integration Plan between all
parties, the thorough review of all changes by OpenJDK reviewers, the
integration into the main development repositories and finally the
downport into a released version.&lt;/p&gt;

&lt;p&gt;Of course we will also highlight the general improvements in the
OpenJDK code base which are the result of our port. Finally, we will
be happy to answer any kind of technical questions regarding a JDK port
to a new CPU and OS platform.&lt;/p&gt;</description>
        <persons>
          <person id="1289">Volker Simonis</person>
          <person id="1290">Goetz Lindenmaier</person>
        </persons>
        <links>
          <link href="http://openjdk.java.net/projects/ppc-aix-port"> PowerPC/AIX porting project</link>
          <link href="https://wiki.openjdk.java.net/display/PPCAIXPort"> PowerPC/AIX porting project</link>
          <link href="http://openjdk.java.net/jeps/175"> PowerPC/AIX JEP</link>
          <link href="https://wiki.openjdk.java.net/pages/viewpage.action?pageId=13729959">Integration Plan</link>
        </links>
      </event>
      <event id="2234">
        <start>14:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>present_past_future_java</slug>
        <title>What a Long Strange Trip It's Been: The Past, Present and Future of Java</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;From its early beginnings in 1991 as the runtime for interactive television set top boxes to its fundamental role in everything from big data to cloud today, Java's rise has had more than its share of twists and turns. In this session, we'll quantitatively explore the decline of some Java projects against the rise of others. Understanding what Java was, is, and might become will help Java advocates from all areas to better communicate the strengths and future of the platform moving forward.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Even today, in spite of its widespread and evident market success, there are
those who would claim that Java is either dead or dying.&lt;/p&gt;

&lt;p&gt;Part of the problem, however, may be in outdated perceptions of what Java
was versus what it is today. In this session, we'll quantitatively explore
the decline of some Java projects against the rise of still others.
Understanding what Java was, is and might be will help Java advocates from
all areas better communicate the strengths and future of the platform
moving forward.&lt;/p&gt;

&lt;p&gt;What Java is has changed, and the better appreciated these changes are, the
better equipped the Java community is to navigate the years ahead.&lt;/p&gt;</description>
        <persons>
          <person id="229">Steve O’Grady</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2235">
        <start>14:30</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>evolution_androind_runtime</slug>
        <title>The evolution of Android's runtime</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Android is a popular open source Linux based operating system that has been activated on over 1 billion mobile devices. This talk will describe the evolution of Android's runtime from Dalvik to ART, a new runtime introduced as a developer preview in the 4.4 release.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Android is a popular open source Linux based operating system that has been activated on over 1 billion mobile devices. This talk will describe the evolution of Android's runtime from Dalvik to ART, a new runtime introduced as a developer preview in the 4.4 release.&lt;/p&gt;</description>
        <persons>
          <person id="2050">Ian Rogers</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2236">
        <start>15:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>openjdk8_jamvm</slug>
        <title>Adding support for OpenJDK 8 to JamVM</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;OpenJDK 8 has required substantial changes to the VM to support the new features in the language.  This talk will provide an overview of the modifications required to JamVM to support them.  This includes JSR292 (invokedynamic), JSR308 (type annotations), JSR335 (lambda expressions) and JSR901 (method parameter reflection).  As of now, JamVM fully supports OpenJDK 8.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="230">Robert Lougher</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2237">
        <start>15:30</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>ji_gong_high_availability_jvm</slug>
        <title>Ji Gong: Proposal for High Availability JVM Technology on All Platforms</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Ji Gong project focuses on empowering JVM technology and guaranteeing its availability. Ji Gong discusses deployment of a minimal and efficient JVM on all platforms including web browsers on mobile devices. Ji Gong re-purpose and utilizes existing work, e.g. IcedTea-web, OpenJDK 8 and FOSS JVM implementations such as JamVM. We will showcase deployment of SCC signed applications using JogAmp APIs running on top of Ji Gong within a browser on embedded devices and desktop.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Ji Gong implements Source Certification Contract, SCC, to verify binary object's. When attempting to run a binary object on your system, users need to trust the binary and its original source code. The question should ask for the authorship of the binary and it's assumed source code, hence SCC authenticates the binary against the source code it claims to be originated from. We will showcase deployment of SCC signed applications, using JogAmp APIs running on top of Ji Gong within a browser on embedded devices and desktop.&lt;/p&gt;</description>
        <persons>
          <person id="1294">Sven Gothel</person>
          <person id="1296">Xerxes Rånby</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2238">
        <start>16:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>java_native_runtime</slug>
        <title>The Java Native Runtime</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Write once run anywhere is both a blessing and a curse. For years, the WORA promise has ensured a consistent, compile-free experience for JVM users. Unfortunately, sometimes pure-Java libraries just can't do what developers need done. Sometimes, you just have to go full native. The Java Native Runtime is a core library and suite of support libraries for binding and calling out to native code. I'll show how JNR is designed, compare code and
performance with alternative approaches, and talk about why the JDK needs a standard FFI (foreign function interface) in Java 9.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Write once run anywhere is both a blessing and a curse. For years, the
WORA promise has ensured a consistent, compile-free experience for JVM
users. Unfortunately, sometimes pure-Java libraries just can't do what
developers need done. Sometimes, you just have to go full native. The
Java Native Runtime is a core library and suite of support libraries
for binding and calling out to native code. Without writing a line of
C, you can make native calls, pass callbacks, and manage off-heap
memory; every OS, library, and kernel-level feature is available to
Java developers. I'll show how JNR is designed, compare code and
performance with alternative approaches, and talk about why the JDK
needs a standard FFI (foreign function interface) in Java 9.&lt;/p&gt;</description>
        <persons>
          <person id="743">Charles Nutter</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2240">
        <start>16:30</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>from_webrev_to_betterrev</slug>
        <title>From Webrev to Betterrev: Facilitating Contributions to OpenJDK </title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;With the rise of GitHub and the recent move of the Eclipse foundation to a social coding model, more and more people are wondering why participation in OpenJDK isn’t keeping up with the times. A small group of people from the London Java Community (LJC) and Adopt OpenJDK are trying to solve this problem by building Betterrev, a platform that will reduce barriers to entry for participation in OpenJDK: our intent is that all attendees will be excited by the potential benefits that the social-coding philosophy could bring to OpenJDK.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;With the rise of GitHub and the recent move of the Eclipse foundation to
a social coding model, more and more people are wondering why
participation in OpenJDK isn’t keeping up with the times. A small group
of people from the London Java Community (LJC) and Adopt OpenJDK are
trying to solve this problem by building Betterrev, a platform that will
reduce barriers to entry for participation in OpenJDK and also improve
visibility of contributions.&lt;/p&gt;

&lt;p&gt;This presentation will highlight our motivations for the Betterrev
project, the primary goals (and proposed roadmap), and our current
progress. Our intent is that all attendees will be excited by the
potential benefits that the social-coding philosophy could bring to the
OpenJDK, and will be encouraged to generously volunteer their time and
skills to help push the development of Betterrev forward, with the
ultimate goal of creating a highly social ecosystem around contributions
to a free Java.&lt;/p&gt;</description>
        <persons>
          <person id="2051">Daniel Bryant</person>
          <person id="2052">Mani Sarkar</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2241">
        <start>17:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>jdk7_updates_lessons_learned</slug>
        <title>JDK 7 Updates: Lessons Learned</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The JDK 7 Updates Project in the OpenJDK Community has been around for more then two years, breaking a new ground in how JDK updates are made and trying out a few new things in the process. This session will go into lessons learned from producing updates to the JDK as part of an Open Source project.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The JDK 7 Updates Project in the OpenJDK Community has been around for more
then two years, breaking a new ground in how JDK updates are made and trying
out a few new things in the process.&lt;/p&gt;

&lt;p&gt;This session will go into lessons learned from producing updates to the JDK
as part of an open source Project. Some of the new things worked, while others
required some tweaking. I'll cover lessons learned on a broad set of technical
issues, from forest and repository management, tagging, development processes
&amp;amp; transparency to release management and communication.&lt;/p&gt;</description>
        <persons>
          <person id="718">Dalibor Topić</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2242">
        <start>17:30</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>thermostat_10</slug>
        <title>Thermostat 1.0, two years of awesomness and beyond</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Thermostat is an awesome platform with the focus on Java Virtual Machines monitoring. This short presentation will discuss what has been done in the past two years until the release of Thermostat 1.0 and its current features and will disclose some spoilers on the future of Thermostat.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Thermostat is an awesome platform with the focus on Java Virtual Machines
monitoring. With the recent release of the 1.0 version, developers have
finalised the plugin API, allowing external contributors to write new tools
on top of the platform. This short presentation will discuss what has been
done in the past two years until the release of Thermostat 1.0 and its
current features and will disclose some spoilers on the future of
Thermostat.&lt;/p&gt;</description>
        <persons>
          <person id="222">Mario Torre</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2243">
        <start>18:00</start>
        <duration>01:00</duration>
        <room>K.4.201</room>
        <slug>openjdk_governing_board_qa</slug>
        <title>OpenJDK Governing Board Q&amp;A Panel Session</title>
        <subtitle/>
        <track>Java</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;An open Q&amp;amp;A session with members of the OpenJDK Governing Board.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="218">Mark Reinhold</person>
          <person id="719">Andrew Haley</person>
          <person id="1345">Georges Saab</person>
          <person id="1346">Doug Lea</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="K.4.401">
      <event id="2421">
        <start>11:00</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>babymock2</slug>
        <title>TDD with BabyMock2</title>
        <subtitle/>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A new mocking framework for Pharo. It provides an animation of the interaction between the tested objects.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2175">Attila Magyar</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/TDD_with_BabyMock2.webm">Video</link>
        </links>
      </event>
      <event id="2420">
        <start>11:30</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>som</slug>
        <title>How to get a JIT Compiler for Free</title>
        <subtitle>Implementing Smalltalk with RPython and Truffle/Graal</subtitle>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;SOM (Simple Object Machine) Smalltalk has Truffle-based and RPython (PyPy) based implementations. It shows modern ways of language implementations with the goal of achieving high performance.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="857">Stefan Marr</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/How_to_get_a_JIT_Compiler_for_Free.webm">Video</link>
        </links>
      </event>
      <event id="2417">
        <start>12:00</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>pharo3status</slug>
        <title>Pharo3: Status</title>
        <subtitle/>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Pharo 2 was released in March 2013. Not even a year later, we are close to the release of Pharo3. With over 1200 issues fixed and many deep changes, it is
the release with most changes yet.&lt;/p&gt;

&lt;p&gt;This talk will give an overview of the changes and improvements done and present some examples of what can be done with Pharo3.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="853">Marcus Denker</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/Pharo3_Status.webm">Video</link>
        </links>
      </event>
      <event id="2414">
        <start>13:00</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>squeakshoutout</slug>
        <title>Annual Squeak Shoutout</title>
        <subtitle/>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Progress made in squeak the past year and a look at the development of spur, the new VM.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="858">Craig Latta</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/Annual_Squeak_Shoutout.webm">Video</link>
        </links>
      </event>
      <event id="2416">
        <start>13:30</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>pharo4plans</slug>
        <title>Pharo4: Plans and Dreams</title>
        <subtitle/>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Pharo3 is close to being released. But development is not standing still: Soon the development of Pharo4 will start. As with Pharo3, the plan is to integrate changes for 10 months with a 2 month bug fix period and a release within one year.&lt;/p&gt;

&lt;p&gt;This talk will give an overview of what people are working on for Pharo4. Topics will be
- Boostrap from Source
- Minimal and virtual images
- towards one image file
- better model for saving changes
- VM level work (e.g. type feedback optimisation)&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="853">Marcus Denker</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/Pharo4_Plans_and_Dreams.webm">Video</link>
        </links>
      </event>
      <event id="2358">
        <start>14:00</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>objectivesmalltalk</slug>
        <title>Objective-Smalltalk</title>
        <subtitle/>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Objective-Smalltalk is a re-imagining of Objective-C for the 21st century. Like Objective-C, it blends features from Smalltalk and C, but instead of adding some Smalltalk features to C, it adds ideas from Objective-C to Smalltalk.&lt;/p&gt;

&lt;p&gt;It is intended as a full-stack language capable of complementing or replacing Objective-C for iOS and Mac OS X programming as well as replacing most scripting language use in those environments. It is not Smalltalk-80 compatible.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2177">Marcel Weiher</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/ObjectiveSmalltalk.webm">Video</link>
        </links>
      </event>
      <event id="2418">
        <start>14:30</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>visualizingdelphi</slug>
        <title>Visualizing Delphi with Moose</title>
        <subtitle/>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Moose provides the tools allowing the analysis, visualization and refactoring of Delphi source code.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="107">Stephan Eggermont</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/Visualizing_Delphi_with_Moose.webm">Video</link>
        </links>
      </event>
      <event id="2415">
        <start>15:00</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>gravel</slug>
        <title>Gravel</title>
        <subtitle/>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Gravel is a modern Smalltalk implementation for the JVM. It's aim is to provide an interactive development environment in the Smalltalk philosophy as well as a stable and fast runtime platform. Gravel aims to be fully ANSI Smalltalk compatible.&lt;/p&gt;

&lt;p&gt;(Family circumstances might force the speaker to cancel at the last moment. The time slot would then be used for "Show us your projects" instead.)&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2176">Wouter Gazendam</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/Gravel.webm">Video</link>
        </links>
      </event>
      <event id="2413">
        <start>15:30</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>pharos</slug>
        <title>PhaROS</title>
        <subtitle>Towards live environments in robotics</subtitle>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;ROS is an open software integration framework for robots that is becoming more mature day by day.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2161">Santiago Bragagnolo</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/PhaROS.webm">Video</link>
        </links>
      </event>
      <event id="2357">
        <start>16:00</start>
        <duration>00:30</duration>
        <room>K.4.401</room>
        <slug>spoon</slug>
        <title>A Spoonful of Raspberry Pi</title>
        <subtitle/>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Spoon on the Raspberry Pi.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="858">Craig Latta</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/A_Spoonful_of_Raspberry_Pi.webm">Video</link>
        </links>
      </event>
      <event id="2419">
        <start>16:30</start>
        <duration>02:30</duration>
        <room>K.4.401</room>
        <slug>smalltalkgettingstarted</slug>
        <title>Getting started with Smalltalk</title>
        <subtitle/>
        <track>Smalltalk</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Learn how to use a smalltalk system.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="107">Stephan Eggermont</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Saturday/Getting_started_with_Smalltalk.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="K.4.601">
      <event id="2433">
        <start>11:00</start>
        <duration>00:05</duration>
        <room>K.4.601</room>
        <slug>ada_welcome</slug>
        <title>Welcome</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Welcome to the Ada Developer Room at FOSDEM 2014, which is organized by Ada-Belgium in cooperation with Ada-Europe.&lt;/p&gt;

&lt;p&gt;Ada-Belgium and Ada-Europe are non-profit organizations set up to promote the use of the Ada programming language and related technology, and to disseminate knowledge and experience into academia, research and industry in Belgium and Europe, resp.  Ada-Europe has member-organizations, such as Ada-Belgium, in various countries.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;More information on this DevRoom is available on the Ada-Belgium web-site.&lt;/p&gt;</description>
        <persons>
          <person id="581">Dirk Craeynest</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#welcome">More info on Ada-Belgium web site</link>
          <link href="http://video.fosdem.org/2014/K4601/Saturday/Welcome.webm">Video</link>
        </links>
      </event>
      <event id="2434">
        <start>11:05</start>
        <duration>00:50</duration>
        <room>K.4.601</room>
        <slug>ada_introduction</slug>
        <title>Introduction to Ada for Beginning and Experienced Programmers</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Overview of the main features of the Ada language, with special emphasis on those features that make it especially attractive for free software development.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Ada is a feature-rich language, but what really makes Ada stand out is that the features are nicely integrated towards serving the goals of software engineering. If you prefer to spend your time on designing elegant solutions rather than on low-level debugging, if you think that software should not fail, if you like to build programs from readily available components that you can trust, you should really consider Ada!&lt;/p&gt;</description>
        <persons>
          <person id="861">Jean-Pierre Rosen</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#introduction">More info on Ada-Belgium web site</link>
          <link href="http://video.fosdem.org/2014/K4601/Saturday/Introduction_to_Ada_for_Beginning_and_Experienced_Programmers.webm">Video</link>
        </links>
      </event>
      <event id="2435">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>K.4.601</room>
        <slug>ada_multithreading</slug>
        <title>Ada Task Pools: Multithreading Made Easy</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Ada is one of very few programming languages that support multi-threading as part of the language, as opposed to libraries.&lt;/p&gt;

&lt;p&gt;Last year, we showed how Ada makes it easy to turn a single-threaded program into a multi-threaded program.  We ended up with ten thousand threads working concurrently.  I will briefly recap this first episode and then continue with the same program, introducing a task pool wherein a small number of threads (one per processor core) process thousands of small work units.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This presentation will feature live editing of source code, compilation, and debugging.  Questions from beginners are encouraged.  It is not necessary to have attended the first installment.  The sources of our example program will be provided to those who want to tinker with them.&lt;/p&gt;</description>
        <persons>
          <person id="19">Ludovic Brenta</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#multithreading">More info on Ada-Belgium web site</link>
          <link href="http://video.fosdem.org/2014/K4601/Saturday/Ada_Task_Pools_Multithreading_Made_Easy.webm">Video</link>
        </links>
      </event>
      <event id="2448">
        <start>13:00</start>
        <duration>01:00</duration>
        <room>K.4.601</room>
        <slug>ada_informal</slug>
        <title>Informal Discussion &amp; Lunch Break</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A one-hour slot has been reserved for much needed interaction and informal discussion among Ada DevRoom participants and anyone potentially interested in Ada.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
        </persons>
        <links>
        </links>
      </event>
      <event id="2436">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>K.4.601</room>
        <slug>ada_spark</slug>
        <title>SPARK 2014: Hybrid Verification using Proofs and Tests</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This presentation will talk about hybrid verification, an innovative approach to demonstrating the functional correctness of a program using a combination of automated proof and unit testing.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;SPARK 2014 comprises a subset of Ada 2012, excluding those features not amenable to sound static verification.  SPARK 2014 uses the contract-based programming provided by the latest Ada 2012 version, and uses the Ada 2012 aspect notation to strengthen the specification capabilities of Ada by the addition of new contracts for data dependencies, information flows, state abstraction, and data and behavior refinement.&lt;/p&gt;

&lt;p&gt;Once the functional behavior or low-level requirements of a program have been captured as SPARK 2014 contracts, the verification tool-set can be applied to prove that the implementation is correct and free from run-time exceptions automatically.  Only where verification cannot be completed by themselves is it necessary to write unit tests, with the same contracts used to check the correct run-time behavior of the relevant subprograms.&lt;/p&gt;</description>
        <persons>
          <person id="863">José F. Ruiz</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#spark">More info on Ada-Belgium web site</link>
          <link href="http://video.fosdem.org/2014/K4601/Saturday/SPARK_2014_Hybrid_Verification_using_Proofs_and_Tests.webm">Video</link>
        </links>
      </event>
      <event id="2437">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>K.4.601</room>
        <slug>ada_contracts</slug>
        <title>Contract Based Programming in Ada 2012</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A tutorial on how to use the Ada 2012 features for specifying detailed, checked contracts for types and subprograms -- "classes, functions, and methods" if you aren't an Ada programmer already.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Contracts document constraints on how types and subprograms behave, but unlike comments they are checked -- either by when the program is compiled or on-the-fly as the program is running.&lt;/p&gt;

&lt;p&gt;Ada 2012 contract aspects will be presented together with a set of guidelines for using contract aspects consistently.  The tutorial will conclude with a live test of the guidelines on some example source text.&lt;/p&gt;</description>
        <persons>
          <person id="862">Jacob Sparre Andersen</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#contracts">More info on Ada-Belgium web site</link>
          <link href="http://video.fosdem.org/2014/K4601/Saturday/Contract_Based_Programming_in_Ada_2012.webm">Video</link>
        </links>
      </event>
      <event id="2438">
        <start>16:00</start>
        <duration>00:25</duration>
        <room>K.4.601</room>
        <slug>ada_verification</slug>
        <title>Formal Verification with Ada 2012: a Very Simple Case Study</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;After a quick reminder of the Hoare Logic and the approach for designing software by contracts, the tool suite developed by AdaCore for formal verifications is presented.  To make the concepts easily understood, a little program simulating a sandpile is used.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2166">Didier Willame</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#verification">More info on Ada-Belgium web site</link>
          <link href="http://video.fosdem.org/2014/K4601/Saturday/Formal_Verification_with_Ada_2012_a_Very_Simple_Case_Study.webm">Video</link>
        </links>
      </event>
      <event id="2014">
        <start>16:30</start>
        <duration>00:25</duration>
        <room>K.4.601</room>
        <slug>ada_phcpack</slug>
        <title>Speedup and Quality Up with Ada Tasking</title>
        <subtitle>Solving polynomial systems faster and better on multicore computers with PHCpack</subtitle>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Writing parallel versions for shared memory multi-core computers with Ada tasks requires minimal modifications of the original source code.  For pleasingly parallel computations we experienced almost optimal speedups.  If we can afford to spend the same amount of time as one core, then we can ask how much better (e.g.: how much more accurate) we can solve a problem with p cores.  This leads to the notion to "quality up".  Similar to speedup factors, we can compute "quality up" factors.&lt;/p&gt;

&lt;p&gt;In this talk we report on our coding efforts to write multi-core versions of the path trackers in PHCpack, a free and open source software package to solve polynomial systems.  We started investigating the use of multi-threading to compensate for the overhead of double double and quad double arithmetic.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;PHCpack is a software package to solve polynomial systems with homotopy continuation methods.  The Ada 83 code of version 1.0 was archived as Algorithm 795 by ACM Transactions on Mathematical Software in 1999.  Version 2.0 was rewritten using concepts of Ada 95.  Multitasking was introduced in version 2.3.45.  Its current version 2.3.84 is available on GitHub.&lt;/p&gt;

&lt;p&gt;PHCpack relies on two external software packages: (1) the QD library of Y. Hida, X.S. Li and D.H. Bailey for double double and quad double floating point arithmetic; and (2) MixedVol by T. Gao, T.Y. Li and M. Wu for a faster mixed volume computation.  The advantages of double double arithmetic are its simple memory management (a double double is stored in the same way as a complex number) and its predictable cost overhead (just as complex arithmetic).  In joint work with Genady Yoffe, we experienced that on 8 cores may already be sufficient to compensate for the cost overhead caused by double double arithmetic.&lt;/p&gt;

&lt;p&gt;As computers become more powerful and larger problems lead to more propagation of numerical errors, it may well happen that double double arithmetic replaces common double precision arithmetic.&lt;/p&gt;</description>
        <persons>
          <person id="1899">Jan Verschelde</person>
        </persons>
        <links>
          <link href="https://github.com/janverschelde/PHCpack">code repository on github </link>
          <link href="http://www.math.uic.edu/~jan/phcpack_doc_html/index.html">documentation made with Sphinx</link>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#phcpack">More info on Ada-Belgium web site</link>
        </links>
      </event>
      <event id="2439">
        <start>17:00</start>
        <duration>00:50</duration>
        <room>K.4.601</room>
        <slug>ada_web</slug>
        <title>Safer Web Servers with Ada and AWS</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;AWS is a framework that allows web servers to be written entirely in Ada.  This presentation shows the main principles of AWS, emphasizes how Ada features can be used to make servers more secure and immune to buffer overrun attacks.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="861">Jean-Pierre Rosen</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#web">More info on Ada-Belgium web site</link>
        </links>
      </event>
      <event id="1710">
        <start>18:00</start>
        <duration>00:15</duration>
        <room>K.4.601</room>
        <slug>ada_fedora</slug>
        <title>Ada in Fedora Linux</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This presentation explains and demonstrates how the Fedora Linux distribution can be used for developing in the Ada language. Available tools and frameworks will be demonstrated.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1599">Pavel Zhukov</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#fedora">More info on Ada-Belgium web site</link>
          <link href="http://video.fosdem.org/2014/K4601/Saturday/Ada_in_Fedora_Linux.webm">Video</link>
        </links>
      </event>
      <event id="2440">
        <start>18:15</start>
        <duration>00:15</duration>
        <room>K.4.601</room>
        <slug>ada_debian</slug>
        <title>Ada in Debian Linux</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A short update on the current state of Ada in Debian and the plans for the next stable release which is due early 2015.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="19">Ludovic Brenta</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#debian">More info on Ada-Belgium web site</link>
          <link href="http://video.fosdem.org/2014/K4601/Saturday/Ada_in_Debian_Linux.webm">Video</link>
        </links>
      </event>
      <event id="2441">
        <start>18:30</start>
        <duration>00:15</duration>
        <room>K.4.601</room>
        <slug>ada_bsd</slug>
        <title>Ada in *BSD</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A short overview of the Ada compilers and packages available on FreeBSD, NetBSD, and DragonFly.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2167">John Marino</person>
        </persons>
        <links>
          <link href="http://www.cs.kuleuven.be/~dirk/ada-belgium/events/14/140201-fosdem.html#bsd">More info on Ada-Belgium web site</link>
        </links>
      </event>
      <event id="2450">
        <start>18:45</start>
        <duration>00:15</duration>
        <room>K.4.601</room>
        <slug>ada_wrapup</slug>
        <title>Wrap Up &amp; Future Plans</title>
        <subtitle/>
        <track>Ada</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Informal discussion on ideas and proposals for future events.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
        </persons>
        <links>
        </links>
      </event>
    </room>
  </day>
  <day index="2" date="2014-02-02">
    <room name="Janson">
      <event id="1692">
        <start>10:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>f_droid</slug>
        <title>F-Droid</title>
        <subtitle>Free Software app distribution for Android</subtitle>
        <track>Miscellaneous</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;F-Droid brings Free Software to your Android and helps you regain control over your device.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;A project founded in 2010, its aim has always been to deliver Free Software to our users similar to how most repository-based GNU/Linux distributions do it. We believe that this makes the project a crucial part in Android as an entirely free system.&lt;/p&gt;

&lt;p&gt;Over the years, the project has grown and matured. The quantity and variety of apps available in the main repo have increased, but it has been after the many privacy scandals in 2013 that people and the media have started paying more attention to the project.&lt;/p&gt;

&lt;p&gt;In this talk, we will try to show how useful can F-Droid be to not only app developers and maintainers, but also to everyday users who would like to know what is being installed on their devices.&lt;/p&gt;</description>
        <persons>
          <person id="1575">Daniel Martí</person>
        </persons>
        <links>
          <link href="https://f-droid.org/">Main site</link>
          <link href="https://prism-break.org/#android">F-Droid on Prism Break</link>
          <link href="http://fsfe.org/campaigns/android/liberate.en.html#F-Droid">F-Droid on FreeYourAndroid.org</link>
          <link href="https://en.wikipedia.org/wiki/F-Droid">Wikipedia article</link>
          <link href="https://identi.ca/fdroid">identi.ca account</link>
          <link href="https://www.google.com/trends/explore#q=fdroid">F-Droid at Google Trends</link>
          <link href="http://www.ohloh.net/p/fdroid">F-Droid at ohloh</link>
          <link href="http://redmine.replicant.us/projects/replicant/wiki/FDroid">Replicant introducing F-Droid</link>
          <link href="http://libreplanet.org/wiki/GNU30/F-Droid">F-Droid at the GNU 30th</link>
          <link href="https://f-droid.org/wiki/page/Main_Page">F-Droid's wiki</link>
          <link href="http://video.fosdem.org/2014/Janson/Sunday/FDroid.webm">Video</link>
        </links>
      </event>
      <event id="1657">
        <start>11:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>html5_video_part_deux</slug>
        <title>HTML5 Video Part Deux</title>
        <subtitle>New Opportunities and New Challenges</subtitle>
        <track>Miscellaneous</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;This talk gives a close look at second wave HTML5 features around video delivery — specifically,  mediaSource API / adaptive streaming, encrypted media extension and WebRTC. We look at open tools and techniques for transcending platform limitations and delivery these experiences across increasingly diverse set of devices and platforms. Real world usage examples are highlighted from experience with open tools we have built and integrated.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This presentation outlines real-world production usage of second wave HTML5 video features with a focus on technical integration into arbitrary application contexts and the trade offs for targeting a given feature set.&lt;/p&gt;

&lt;p&gt;We begin with a short review of challenges in the first wave of HTML5 video; codecs, consistent JS API and lack of unified adaptive streaming support standard. We then transition into HTML5 Part Dux and see how "the sequel" is a lot like the original with respect to a powerful new set of features but with equally impressive platform fragmentation and API inconsistencies. We highlight the compounded challenges of the entrance of additional mobile and smart tv platforms generating more device targets to support then ever before.&lt;/p&gt;

&lt;p&gt;We review open video platform solutions developed to bridge these limitations on native devices. Specifically we look at the technical architecture of a native video component that we have built to bridge android and iOS web view limitations in an native environment while seamlessly leveraging a feature rich HTML5 player platform.&lt;/p&gt;

&lt;p&gt;We also review the current state of mpeg-dash and highlight technical inconsistencies in implementation that drive the use of shared code libraries such as dash.js. We preset our production dash.js usage for VOD, Live and associated encrypted media extension options for content controls, along with technical implementation details to help inform integration options and trade offs.&lt;/p&gt;

&lt;p&gt;Finally we look to WebRTC and the types of experiences it can enable and how they can be delivered within the contemporary platform ecosystem. We look at technical approaches towards enabling usage and cross platform delivery options.&lt;/p&gt;</description>
        <persons>
          <person id="1505">Michael Dale</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Sunday/HTML5_Video_Part_Deux.webm">Video</link>
        </links>
      </event>
      <event id="1699">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>the_wikipedia_stack</slug>
        <title>The Wikipedia stack</title>
        <subtitle>An insider's look at the free encyclopedia's code that anyone can clone, branch &amp; commit</subtitle>
        <track>Miscellaneous</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Let's explore the fully open source technology stack of Wikipedia and Wikimedia's other projects, and the many ways to get involved in making the sum of all knowledge available to every person on the planet.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Wikipedia and the other Wikimedia projects serve more than 500 million users every month. That's about 20B pageviews/month (4B on mobile). The Wikimedia Foundation does all its work as open source development. From being entirely volunteer-driven, it has grown to employ a staff of 100+ in engineering, analytics, design &amp;amp; product development. What do these folks do? In this session we'll talk about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;templates, Lua scripting, and the promises and challenges of visually editing Wikipedia on desktop and mobile clients;&lt;/li&gt;
&lt;li&gt;task recommendation and onboarding for new users, and how to build a modern discussion/collaboration engine that won't turn Wikipedia into Facebook;&lt;/li&gt;
&lt;li&gt;Wikimedia Labs, the MediaWiki API, OAuth, MediaWiki extensions, user scripts and gadgets - the many ways to be part of the development and operations community.&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1735">Erik Moeller</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Sunday/The_Wikipedia_stack.webm">Video</link>
        </links>
      </event>
      <event id="2353">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>mirageos</slug>
        <title>MirageOS: compiling functional library operating systems</title>
        <subtitle/>
        <track>Miscellaneous</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Public compute clouds provide a flexible platform to host applications as a set of appliances, e.g., web servers or databases. Each appliance usually contains an OS kernel and userspace processes, within which applications access resources via APIs such as POSIX. The flexible architecture of the cloud comes at a cost: the addition of another layer in the already complex software stack. This reduces performance and increases the size of the trusted computing base.&lt;/p&gt;

&lt;p&gt;Our Mirage operating system proposes a radically different way of building these appliances. Mirage supports the progressive specialisation of functional language (OCaml) application source code, and gradually replaces traditional OS components with type-safe libraries. This ultimately results in "unikernels": sealed, fixed-purpose images that run directly on a hypervisor without an intervening guest OS such as Linux.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Developers can write their code using their usual tools, only making the final push to the cloud once they are satisfied their code works. As they explicitly link in components that would normally be provided by the host OS, the resulting unikernels are also highly compact: facilities that are not used are simply not included in the resulting unikernel. For example, the self-hosting Mirage web server image is less than a megabyte in size!&lt;/p&gt;

&lt;p&gt;We will describe the architecture of Mirage in the talk, show some code examples, and interesting benchmark results that compare the performance of our unikernels to traditional applications such as Apache, BIND and OpenSSH.&lt;/p&gt;</description>
        <persons>
          <person id="496">Anil Madhavapeddy</person>
          <person id="2130">Richard Mortier</person>
        </persons>
        <links>
          <link href="http://openmirage.org">Homepage</link>
          <link href="http://decks.openmirage.org">Slides</link>
          <link href="http://video.fosdem.org/2014/Janson/Sunday/MirageOS_compiling_functional_library_operating_systems.webm">Video</link>
        </links>
      </event>
      <event id="1631">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>whats_new_in_openldap</slug>
        <title>What's New in OpenLDAP</title>
        <subtitle/>
        <track>Memory and storage</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Overview of recent developments in the OpenLDAP Project, features for OpenLDAP 2.5, and new work related to the Lightning Database LMDB.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Lightning Memory-Mapped Database was introduced at the previous LDAPCon and has been enjoying tremendous success in the intervening two years.  The success of LMDB has led down many different paths:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Use of LMDB eliminated bottlenecks at the database level but revealed the presence of other bottlenecks in the slapd code. Recently a number of these other bottlenecks have also been removed, yielding even greater performance gains.&lt;/li&gt;
&lt;li&gt;LMDB has proved to be a superior database engine for many other projects and uses, and its adoption outside the OpenLDAP Project continues to grow.&lt;/li&gt;
&lt;li&gt;Use of LMDB in NoSQL projects like HyperDex presents us with the opportunity to again address horizontal scaling, replacing the previous work on back-ndb with a clustered backend that uses OpenLDAP technology at both the highest and lowest layers of the solution.&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;The talk will discuss some of the internal improvements in slapd due to LMDB, as well as the impact of LMDB on other projects. Also the new HyperDex backend will be presented, as well as new interoperability work with Samba.&lt;/p&gt;</description>
        <persons>
          <person id="1508">Howard Chu</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Sunday/Whats_New_in_OpenLDAP.webm">Video</link>
        </links>
      </event>
      <event id="1721">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>persistent_memory</slug>
        <title>Persistent Memory</title>
        <subtitle>Changing the Way We Store Data</subtitle>
        <track>Memory and storage</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Persistent memory parts have roughly the same capacity, speed and cost as current DRAM, but do not lose state when the power goes out. Some of these parts are on the market today, more will be coming out over the next few years. The Linux IO and File System stack is already challenged in handling existing SSD devices at hundreds of thousands of IO's per second and these devices will be able to sustain an order of magnitude more IOP's.&lt;/p&gt;

&lt;p&gt;This talk will give an overview of what is being proposed in standards bodies and the Linux based solutions being proposed that will help us take full advantage of these new parts.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Persistent memory is a new class of devices that can sustain millions of IOP's per part. Some of the parts on the market today fit into DRAM slots on special motherboards.&lt;/p&gt;

&lt;p&gt;Challenges and unique uses for this technology abound, but the Linux community needs to be able to support these parts at every level of our ecosystem, starting with the storage and file system stack and going up to modifying key system libraries and applications to take advantage of the new capabilities.&lt;/p&gt;

&lt;p&gt;This talk will give details about the work that has been pursued in standards bodies, Linux kernel based projects to provide persistent memory aware block device drivers and new file systems. It will conclude with a discussion of how these changes will impact our applications.&lt;/p&gt;</description>
        <persons>
          <person id="1017">Ric Wheeler</person>
        </persons>
        <links>
          <link href="http://lwn.net/Articles/547903/">LWN.net coverage of an earlier presentation.</link>
          <link href="http://video.fosdem.org/2014/Janson/Sunday/Persistent_Memory.webm">Video</link>
        </links>
      </event>
      <event id="1688">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>concurrent_programming_made_simple</slug>
        <title>Concurrent Programming Made Simple</title>
        <subtitle>The (r)evolution of Transactional Memory</subtitle>
        <track>Memory and storage</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;This talk will present Transactional Memory, a programming abstraction for managing concurrency, both in multi-threaded programs running on multi-core processors as well as in distributed cloud infra-structures.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will present Transactional Memory (TM), a programming abstraction for managing concurrency, both in multi-threaded programs running on multi-core processors as well as in distributed cloud infra-structures.  TM allows programmers to declare which parts of a program need to run atomically (i.e., as indivisible steps), while a generic implementation involving compilers, runtime libraries, middleware, and hardware support for TM takes care of ensuring this atomicity at runtime. The two presenters will give an overview of recent advances, standardization efforts (e.g., for C++), and open-source tools providing support for TM (e.g., GCC).&lt;/p&gt;</description>
        <persons>
          <person id="1574">Nuno Diegues</person>
          <person id="1887">Torvald Riegel</person>
        </persons>
        <links>
          <link href="http://www.eurotm.org/">Euro-TM COST action that assembles research in Transactional Memory</link>
          <link href="http://www.velox-project.eu/">European Project on the multi-core Transactional Memory Stack</link>
          <link href="http://www.cloudtm.eu/">European Project on the cloud Transactional Memory stack</link>
          <link href="http://video.fosdem.org/2014/Janson/Sunday/Concurrent_Programming_Made_Simple.webm">Video</link>
        </links>
      </event>
      <event id="2454">
        <start>17:00</start>
        <duration>00:50</duration>
        <room>Janson</room>
        <slug>nsa_operation_orchestra</slug>
        <title>NSA operation ORCHESTRA: Annual Status Report</title>
        <subtitle/>
        <track>Keynotes</track>
        <type>keynote</type>
        <language/>
        <abstract>&lt;p&gt;(TOP SECRET/COMINT) NSAs operation ORCHESTRA has been a resounding success again this year.  This year's status report will update decision makers and programme liasons on the goals, achievements and means of ORCHESTRA.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This is the NATO headquarters, right?  Cool!  No, no, I was just surprised that nobody was in uniform today, but I guess it's the weekend, eh?  That's so cool -- I wish we were allowed to do that too.  It's quite a crowd isn't it?  I had no idea you had so many people with COMINT clearance over here... Amazing really.  Anyway, lets get started, shall we?&lt;/p&gt;</description>
        <persons>
          <person id="2182">Poul-Henning Kamp</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Sunday/NSA_operation_ORCHESTRA_Annual_Status_Report.webm">Video</link>
        </links>
      </event>
      <event id="1617">
        <start>17:50</start>
        <duration>00:10</duration>
        <room>Janson</room>
        <slug>closing_fosdem</slug>
        <title>Closing FOSDEM 2014</title>
        <subtitle/>
        <track>Keynotes</track>
        <type>keynote</type>
        <language/>
        <abstract>&lt;p&gt;Some closing words, and the legendary FOSDEM dance.  Don't miss it!&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="6">FOSDEM Staff</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/Janson/Sunday/Closing_FOSDEM_2014.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="K.1.105 (La Fontaine)">
      <event id="1663">
        <start>10:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>optimisoc</slug>
        <title>OpTiMSoC</title>
        <subtitle>Build Your Own System-on-Chip!</subtitle>
        <track>Hardware</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;This talk introduces OpTiMSoC, a set of open source building blocks to create
your own System-on-Chip, which then runs on an FPGA or can be simulated on a
PC. The system is formed by tiles like processors or memories connected
by a Network-on-Chip, all written in Verilog and supported by a set of software
required to run it out of the box. The talk shows how you can use OpTiMSoC to
gain insight into a complex System-on-Chip, to evaluate the benefit of new
hardware accelerators, or to compare different multicore hardware architectures.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Have you ever wondered what exactly is happening inside a System-on-Chip, like
the one that's inside your cellphone, your washing machine, or your car? Have
you ever thought "wow, this algorithm could be implemented so much faster in
hardware"? Do you do research on embedded hardware architectures and need a
platform on which you can try out your ideas?&lt;/p&gt;

&lt;p&gt;Then we might have something for you: OpTiMSoC. The "Open Tiled Manycore
System-on-Chip" is an open source collection of building blocks
to create your own System-on-Chip (SoC). It is based on the concept of
"tiles", elements like CPUs, memories, hardware accelerators or external
interfaces, which are connected by a Network-on-Chip. On top of those hardware
components, which are written mostly in Verilog and can be synthesized to run
on an FPGA as well as simulated on a PC, OpTiMSoC contains all necessary
software components to get a SoC up and running (a basic "operating
system", a C library port, debug support). Of course some running demo systems
are included, so you can get started easily by modifying existing designs.&lt;/p&gt;

&lt;p&gt;OpTiMSoC was designed by researchers at the Technische Universität München
(TUM) and is used there to evaluate new hardware architectures. Over the last
two years it grew massiveley in scale and we think it's now useful to others as
well. By providing a signal-level insight into a complex SoC it serves as
teaching tool and as experimentation and research platform at the same time.&lt;/p&gt;

&lt;p&gt;This talk gives an overview over OpTiMSoC, how we use it and how you
can make use of it to realize your own ideas.&lt;/p&gt;</description>
        <persons>
          <person id="661">Philipp Wagner</person>
        </persons>
        <links>
          <link href="http://www.optimsoc.org">Project Homepage</link>
          <link href="http://video.fosdem.org/2014/K1105/Sunday/OpTiMSoC.webm">Video</link>
        </links>
      </event>
      <event id="1648">
        <start>11:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>arm_allwinner_sunxi_socs</slug>
        <title>ARM: Allwinner sunxi SoC's and the community behind it</title>
        <subtitle>The most opensource (friendly) SoC!</subtitle>
        <track>Hardware</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;The Allwinner series of System on Chip (SoC)'s has a healthy community around this interesting little chip. This talk will bring interested listeners up to speed in how it all got started and where we, as a community, are today.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In 2011 Allwinner surprised the market with its low-cost Cortex-A8 A10 SoC. In 2012 the A10 and it's smaller brothers the A10s and A13 where found in nearly all Cheap tablets and android-tv-sticks. This alone attracted a lot of hackers and enthusiasts to work on the Allwinner A-series of SoC's.&lt;/p&gt;

&lt;p&gt;A few of these hackers started to form the linux-sunxi.org community supporting, hacking and even Reverse Engineering these SoC's.&lt;/p&gt;

&lt;p&gt;We are excited to share with you in this talk of what has been done so far and where we are heading. One of the most famous hackers amongst the Fosdem crowd would have to be Luc Verhagen (libv) with his lima work, which he did a lot of on A10 hardware. But many others have worked since then on these little SoC's and the most important recent breakthrough is the Reverse engineering of the CedarX Video Processing Unit (VPU) which makes it possible to playback accelerated mpeg and h264 video with zero closed source blobs or firmwares which in itself is an amazing feat.&lt;/p&gt;

&lt;p&gt;Taking this opportunity we welcome you to join us to learn more about these amazing SoC's, see what they are capable of in a little Demo and how you could potentially contribute come join us at FOSDEM 2014.&lt;/p&gt;</description>
        <persons>
          <person id="1534">Olliver Schinagl</person>
        </persons>
        <links>
          <link href="http://linux-sunxi.org">Linux sunxi</link>
          <link href="http://video.fosdem.org/2014/K1105/Sunday/ARM_Allwinner_sunxi_SoCs_and_the_community_behind_it.webm">Presentation Video</link>
        </links>
      </event>
      <event id="2321">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>powermanagement_a_system_wide_challenge</slug>
        <title>Power management: a system wide challenge</title>
        <subtitle/>
        <track>Hardware</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;In this presentation we will start from basic CMOS power consumption factors. We will use that as the basis to explain the various possibilities to   balance power versus performance. We will then continue explaining how these techniques are implemented both in the SoC hardware and in the the      operating system and application software. Android, maemo, OMAP and Tegra will be used to illustrate the techniques.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;We will start by explaining which factors influence power consumption in CMOS chips. We will then explain a number of commonly used techniques to control the power versus performance balance such as clock and powergating, clock and supply voltage scaling and heterogenous multiprocessing. We will continue explaining how these techniques are implemented in linux using various frameworks such as cpuidle, cpufreq, common clock framework, runtime PM, generic powerdomains, device QoS constraints, system suspend. We will then discuss how application code affects the device power consumption and discuss how Android and Maemo handle this. We will also discuss various debugging mechanisms and tools such as powertop, ftrace and other information in linux sysfs and debugfs. We will also explain hardware techniques we have used to gain insight in the system operation beyond the view of software.&lt;/p&gt;</description>
        <persons>
          <person id="2096">Peter De Schrijver</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K1105/Sunday/Power_management_a_system_wide_challenge.webm">Video</link>
        </links>
      </event>
      <event id="1626">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>use_otr</slug>
        <title>USE OTR or how we learned to start worrying and love cryptography</title>
        <subtitle/>
        <track>Security</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;USE OTR (USable Encryption with OTR) is an organisation with a simple goal:
improving security, usability and encryption of IM software. This talk will
outline our organization, the ecosystem of Off The Record Messaging (OTR) and
how to start loving end-to-end encryption.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;We are an organisation that works on security, encryption and usability of open
source instant messengers (IM).&lt;/p&gt;

&lt;p&gt;One key aspect is to have developers, resources and funds available to maintain
OTR software over time and thus making them sustainable, up-to-date and secure.
While we have already started collaborating with the LEAP project, we want to
extend our network and reach out to more people. By developing safer, usable
encryption instant messaging tools we believe that it directly supports freedom
of speech and expression worldwide.&lt;/p&gt;

&lt;p&gt;Following this, we will explain what "Off The Record Messaging" is, the current
state of the ecosystem around it. We want to raise awareness about the
importance of using end-to-end encryption and bring the open source community
together to help with this endeavour!&lt;/p&gt;</description>
        <persons>
          <person id="1496">David Goulet</person>
        </persons>
        <links>
          <link href="https://www.useotrproject.org">USE OTR Project page</link>
          <link href="https://otr.cypherpunks.ca/">Off-the-Record Messaging official page</link>
          <link href="https://leap.se">LEAP Encryption Access Project</link>
          <link href="http://video.fosdem.org/2014/K1105/Sunday/USE_OTR_or_how_we_learned_to_start_worrying_and_love_cryptography.webm">Video</link>
        </links>
      </event>
      <event id="2347">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>capiscum</slug>
        <title>Capsicum</title>
        <subtitle>Practical capabilities for UNIX</subtitle>
        <track>Security</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;The Capsicum project adds new security primitives to FreeBSD and other UNIX-like operating systems, blending security models from capability systems with the practicality of real running code, today. This talk will describe what Capsicum is, how it works, and several exciting new developments in its deployment.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2118">Jonathan Anderson</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K1105/Sunday/Capsicum.webm">Video</link>
        </links>
      </event>
      <event id="2281">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>no_more_ipv4</slug>
        <title>No more IPv4</title>
        <subtitle>Impact on applications and measuring IPv6 deployment</subtitle>
        <track>IPv6</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;The IPv4 address exhaustion brings a broken Internet with the heavy use of NAT. While HTTP is now a major vehicle for any application, and while NAT is friendly with HTTP, there are still issues with large scale NAT as used by some ISPs (mainly mobile).
This session explains the security and application issues of NAT, but also explains how an application can easily be extended to support the next generation IPv6, which does not require NAT.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2071">Eric Vyncke</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K1105/Sunday/No_more_IPv4.webm">Video</link>
        </links>
      </event>
      <event id="2005">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>K.1.105 (La Fontaine)</room>
        <slug>using_ripe_atlas_api_for_measuring_ipv6_reachability</slug>
        <title>Using RIPE Atlas API for measuring IPv6 Reachability</title>
        <subtitle/>
        <track>IPv6</track>
        <type>maintrack</type>
        <language/>
        <abstract>&lt;p&gt;Cooperation and sharing are the keywords for this talk — sharing of data, of efforts, or results.&lt;/p&gt;

&lt;p&gt;RIPE Atlas is a global network of probes that measure Internet connectivity and reachability. Out of 5000 active probes, more than 1000 support IPv6. Supported measurements are ping, traceroute6, DNS and SSL. There are API calls for starting your own measurements, and for downloading results of "built-in" measurements from all probes towards root nameservers. Code for analysing data is shared on GitHub.&lt;/p&gt;

&lt;p&gt;Many analysis papers and articles were already published using RIPE Atlas data.&lt;/p&gt;

&lt;p&gt;My goal is to encourage FOSDEM participants to contribute with their knowledge and their curiosity, by using the existing data and producing interesting research, and by sharing their code with others.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;RIPE Atlas is a global network of probes that measure Internet connectivity and reachability, providing an unprecedented understanding of the state of the Internet in real time.&lt;/p&gt;

&lt;p&gt;There are currently several thousand active probes in the RIPE Atlas network, concentrated in the RIPE NCC service region of Europe, the Middle East and parts of Central Asia, and the network is constantly growing.
Probes are hosted by volunteers, individuals and organisations, who share a portion of their bandwidth and electricity, and allow all the other RIPE Atlas hosts to perform the measurements from their probe, thus contributing to the wealth of measurement data. RIPE Atlas users who host a probe can also use the entire RIPE Atlas network to conduct customised measurements that provide valuable data about their own network(s).&lt;/p&gt;

&lt;p&gt;The RIPE NCC collects the data from this network and provides useful maps and graphs based on the aggregated results.&lt;/p&gt;

&lt;p&gt;IPv6 is a popular topic for the research community, and there are many articles published already based on RIPE Atlas IPv6 data.&lt;/p&gt;

&lt;p&gt;In my presentation, I will make an introduction to RIPE Atlas measurements, explain various IPv6-related features, point to the existing research and code, and invite participants to contribute their own.&lt;/p&gt;

&lt;p&gt;IPv6:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://labs.ripe.net/Members/becha/world-ipv6-launch-ripe-atlas-use-cases"&gt;https://labs.ripe.net/Members/becha/world-ipv6-launch-ripe-atlas-use-cases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://labs.ripe.net/Members/stephane_bortzmeyer/how-many-atlas-probes-believe-they-have-ipv6-but-are-wrong"&gt;https://labs.ripe.net/Members/stephane_bortzmeyer/how-many-atlas-probes-believe-they-have-ipv6-but-are-wrong&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://labs.ripe.net/Members/emileaben/ripe-atlas-case-study-of-aaaa-filtering"&gt;https://labs.ripe.net/Members/emileaben/ripe-atlas-case-study-of-aaaa-filtering&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://labs.ripe.net/Members/emileaben/ripe-atlas-a-case-study-of-ipv6-48-filtering"&gt;https://labs.ripe.net/Members/emileaben/ripe-atlas-a-case-study-of-ipv6-48-filtering&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Measurements source code is public:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://labs.ripe.net/Members/philip_homburg/ripe-atlas-measurements-source-code"&gt;https://labs.ripe.net/Members/philip_homburg/ripe-atlas-measurements-source-code&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;REST APIs for performing and analysing measurements are provided by RIPE NCC, and contributions are made by the community who share their code and provide tutorials:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://labs.ripe.net/Members/wilhelm/ripe-atlas-code-for-analysis-and-statistics-reporting"&gt;https://labs.ripe.net/Members/wilhelm/ripe-atlas-code-for-analysis-and-statistics-reporting&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Nikolay Melnikov, Hands-on: RIPE Atlas, AIMS 2013&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://cnds.eecs.jacobs-university.de/users/nmelnikov/aims2013-ripe-atlas.html"&gt;http://cnds.eecs.jacobs-university.de/users/nmelnikov/aims2013-ripe-atlas.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Stéphane Bortzmeyer, Creating and Analysing RIPE Atlas Measurements, RIPE67&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://ripe67.ripe.net/presentations/153-ripe-atlas-udm-api-1.pdf"&gt;https://ripe67.ripe.net/presentations/153-ripe-atlas-udm-api-1.pdf&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1890">Vesna Manojlovic</person>
        </persons>
        <links>
          <link href="http://atlas.ripe.net">RIPE Atlas </link>
          <link href="http://video.fosdem.org/2014/K1105/Sunday/Using_RIPE_Atlas_API_for_measuring_IPv6_Reachability.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.2215 (Ferrer)">
      <event id="1767">
        <start>10:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>python_netsnmpagent</slug>
        <title>python-netsnmpagent -- Writing net-snmp AgentX subagents in Python</title>
        <subtitle>Implementing custom MIBs made easy</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;python-netsnmpagent is a Python module that facilitates writing Net-SNMP subagents in Python. Subagents connect to a locally running Master agent (snmpd) over a Unix domain socket (eg. "/var/run/agentx/master") and using the AgentX protocol (RFC2747). They implement custom Management Information Base (MIB) modules that extend the local node's MIB tree. Usually, this requires writing a MIB as well, ie. a text file that specifies the structure, names and data types of the information within the MIB module.&lt;/p&gt;

&lt;p&gt;This lightning talk will give a really quick introduction to SNMP and MIBs and show how easy it is to implement your own custom MIBs using Python and python-netsnmpagent.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1669">Pieter Hollants</person>
        </persons>
        <links>
          <link href="https://github.com/pief/python-netsnmpagent/">The project's GitHub repo</link>
          <link href="https://pypi.python.org/pypi">The project's Python Package Index (PyPI) page</link>
          <link href="http://www.0xf8.org/">The author's tech blog</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Sunday/pythonnetsnmpagent_Writing_netsnmp_AgentX_subagents_in_Python.webm">Video</link>
        </links>
      </event>
      <event id="1712">
        <start>10:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>cfg2html</slug>
        <title>Linux Configuration Collector</title>
        <subtitle>cfg2html</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Cfg2html is a little utility to collect the necessary system configuration files and system set-up to an ASCII file and HTML file. Simple to use and very helpful in disaster recovery situations.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Collects Linux system configuration into a HTML and text file. Config to HTML is the "swiss army knife" for the sysadmins. It was written to get the necessary informations to plan an update,  to perform basic trouble shooting or performance analysis.
As a bonus cfg2html creates a nice HTML and plain ASCII documentation from Linux System, Cron and At, installed Hardware, installed Software, Filesystems, Dump- and Swap-configuration, LVM, Network Settings,  Kernel, System enhancements and Applications, Subsystems.&lt;/p&gt;</description>
        <persons>
          <person id="8">Gratien D'haese</person>
        </persons>
        <links>
          <link href="http://www.cfg2html.com">cfg2html</link>
          <link href="https://github.com/cfg2html/cfg2html">GitHub cfg2html</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Sunday/Linux_Configuration_Collector.webm">Video</link>
        </links>
      </event>
      <event id="1832">
        <start>10:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>bibos</slug>
        <title>BibOS Admin - a web-based, easy to use admin system for Ubuntu</title>
        <subtitle>Because Landscape is too expensive</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;The public libraries in Denmark wanted an admin system for their new BibOS-system, which is an Ubuntu-based GNU/Linux distribution for audience PCs. To achieve this, we built a completely new and completely free administration system for Debian-based PCs.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The public libraries in several Danish municipalities are in the process of switching their audience PCs from Windows to Ubuntu.&lt;/p&gt;

&lt;p&gt;They needed a central administration system to manage it, and Canonical's Landscape product was unacceptable for them; they needed the system to be completely free/open source, and Canonical's licensing when running Landscape as software-as-a-service was too expensive. The available free alternatives are either too technical for library staff, or they don't support Debian-based systems well.&lt;/p&gt;

&lt;p&gt;In response, we created "BibOS Admin", a completely new administration system for all Debian-like systems. It enables users to remotely manage, maintain and upgrade PCs and run arbitrary, centrally defined scripts on them. The system is designed to be easy to use for non-technical staff who can rely on a set of pre-defined scripts, which should be set up as part of the setup for each organization (source code available here: https://github.com/magenta-aps/bibos_admin).&lt;/p&gt;

&lt;p&gt;In the talk, I will discuss the technical and organizational challenges of building a new management from scratch in collaboration with the public libraries in Aarhus and Silkeborg, who kindly funded the effort.&lt;/p&gt;</description>
        <persons>
          <person id="1743">Carsten Agger</person>
        </persons>
        <links>
          <link href="https://github.com/magenta-aps/bibos_admin">Source code for the BibOS Admin system</link>
          <link href="https://github.com/magenta-aps/bibos_image">Source code for the BibOS client system (based on Ubuntu 12.04)</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Sunday/BibOS_Admin_a_webbased_easy_to_use_admin_system_for_Ubuntu.webm">Video</link>
        </links>
      </event>
      <event id="1810">
        <start>11:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>commit_digest</slug>
        <title>What's New in a Project?</title>
        <subtitle>Or: How We Do Regular Development Reports in KDE Commit Digest</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;What is new in your Open Source project? The answer to this question is both important and interesting for developers and users. When the project is small, browsing the revision system log is an easy way to get the answer. Then the project becomes a success and the answer is getting more complicated to obtain.&lt;/p&gt;

&lt;p&gt;In this talk we would like to show how we produce the KDE Commit Digest, the weekly oveview of the developer activity in KDE. We will show the whole system. This starts with the infrastructure that allows semi-automatic classification. Then we have the KDE revision control system and the special tags developers may put to mark the most important changes. We will finish with the team that handles this by reviewing, writing the summary and publishing.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="936">Marta Rybczynska</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1853">
        <start>11:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>grimoire</slug>
        <title>Project development &amp; community metrics for fun and profit</title>
        <subtitle>How and why to use *Grimoire for analyzing projects </subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Free / open source software projects are producing, as a byproduct of their usual activity, a great deal of data about how they develop software, and about how their community coordinates. Development and community metrics can be derived from this information, which can be later visualized in project development dashboards. The talk will show how tools in the *Grimoire toolset can be easily used to build those dashboards, from data retrieval up to analysis and visualization. As examples, dashboards for real projects, such as OpenStack, Puppet and MediaWiki, will be used to show how to interpret the data, and get insight about their development processes and their community. Examples of specific areas in which metrics are useful to track important parameters of the project will also be explored in detail, such as code review performance, time to close tickets, or the structure of the community.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;FLOSS (free, libre, open source software) projects are usually developed in the open. A lot of information about their inner life is available in their development repositories: source code management (aka version control), issue tracking (aka bug reporting) systems, mailing lists, IRC channel logs, etc. This information can be organized and analyzed, and be used to gain understanding about how the project is performing, about the processes their developers are using, and in general about how it is evolving.&lt;/p&gt;

&lt;p&gt;The kind of quantitative analytics that can be obtained from these repositories allow also for a direct tracking of several parameters that can characterize specific aspects of software development. The impact of changes in project policies or uses can therefore be evaluated quantitatively, and be observed and tracked.&lt;/p&gt;

&lt;p&gt;Fortunately, having these analysis done for a given FLOSS project is becoming an easy task. Some web-based services, such as Ohloh, are already producing some of them, and some platforms, such as GitHub and Jira, also allow for tracking some parameters. In this talk we will present &lt;em&gt;Grimoire, a FLOSS platform allowing anyone to do their own metrics dashboard, from data retrieval from repositories to analysis and visualization of the parameters of interest. &lt;/em&gt;Grimoire is composed of two main components: MetricsGrimoire, a set of Python tools supporting most common development and community repositories, and vizGrimoire, which provides an R package and a JavaScript library for analyzing and visualizing the data.&lt;/p&gt;

&lt;p&gt;As a part of the talk, the whole process of how to analyze repositories using *Grimoire will be briefly described. As case examples, some well known projects, such as OpenStack, Puppet or MediaWiki, will be explored based on the information from their dashboards, which are already being used by their communities. In addition, specific areas in which metrics are useful to track important parameters of the project will also be explored.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://metricsgrimoire.github.io/"&gt;More information about MetricsGrimoire&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://vizgrimoire.github.io/"&gt;More information about vizGrimoire&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Some of the dashboards that will be presented in the talk are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="http://activity.openstack.org/dash/"&gt;OpenStack Development Dashboard&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="http://korma.wmflabs.org/browser/"&gt;MediaWiki Community Dashboard&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1004">Jesus M. Gonzalez-Barahona</person>
        </persons>
        <links>
          <link href="http://metricsgrimoire.github.io/">MetricsGrimoire</link>
          <link href="http://vizgrimoire.github.io/">vizGrimoire</link>
          <link href="http://activity.openstack.org/dash/">OpenStack Dashboard</link>
          <link href="http://korma.wmflabs.org/browser/">MediaWiki Dashboard</link>
        </links>
      </event>
      <event id="1899">
        <start>11:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>acronyms</slug>
        <title>LSB, LANANA, FHS, LSB 5, LF, RPM5</title>
        <subtitle>attack of the acronyms</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Find out why you care about LSB, LANANA, FHS, LSB 5, LF, RPM5&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Why do you (an attendee at FOSDEM) care to come to a lightning talk on:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;    LSB, LANANA, FHS, LF, LSB 5, RPM5
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Everyone who has been involved in FOSS knows that a new project needs to ship running code at once, or be passed over as 'not relevant', 'not ready', or plain old 'vaporware'. But everyone in FOSS also knows that once credibility is established by a project or a distribution, future updates and releases can have the leisure of a road-map, and not shipping 'until it is ready', because there is not the commercial pressure of a sponsoring company needing to push out potentially unfinished work to meet a marketing schedule. This also is expressed in the 'time boxed' vs. 'feature complete' release stabilization approaches.  Agile methods and 'rolling releases' and the emergence of the tension between 'latest and greatest' vs. 'Enterprise' and 'LTS' permeates Linux-dom&lt;/p&gt;

&lt;p&gt;The other common attribute of FOSS projects, is that the documentation seems always to be stale, always incomplete, and often wholly absent.  How can a consumer of a project (individual or commercial) know what to rely on, or to 'write to'?&lt;/p&gt;

&lt;p&gt;Fortunately, the ATT variant of Unix was produced by a designer, manufacture, and provider of telephone grade hardware, where manuals were not just 'nice to have' but also an essential part of the deliverables.  The 'Unix wars', harsh as they were to adoption by end consumers of operating systems, also were 'fought in the trenches' of standards committee meeting rooms&lt;/p&gt;

&lt;p&gt;And so POSIX and Unix-like expectations are quite well known, and so the need for formal testing for completeness and mandatory behaviors, and The Open Group carried some of the early hard work of writing and maintaining the test suites needed.  Later the Linux Standards Base ('LSB') emerged as the reference standard, open and non-commercial, where a Independent Software Vendor, an end user, and a Distribution could each look for the needed interfaces, the certification of portability, and the benchmark of what to provide for inter-operability, in the Linux part of the 'nix world&lt;/p&gt;

&lt;p&gt;LSB has been one of 'documenters', along with the minimal man page practice of Debian, and the Linux Documentation project ("LDP").  LSB was content to follow along and has a niche (perhaps not wanted by others, but so what?), and gravitated into sponsorship under the Linux Foundation ("LF)") in due course.  Also, pulled into orbit was the Linux Assigned Names and Numbers Authority ("LANANA"), which recently has had ITS sub-project the File Hierarchy Standard {"FHS"} some need for extension of its specification to provide a way for package vendors, projects, and sub-parts from a vendor to obtain 'guaranteed uniquely managed' name-space paths in the file-system&lt;/p&gt;

&lt;p&gt;The LSB has followed along, documenting expectation and tracking changes, so that expectations are explicit, tests are freely available, and that users of conformant software can count on portability as they move between distribution environments.  Motif has pretty well died off, but Gtk and Qt came along; System V initscripts are slated for the dustbin as upstart and systemd fight it out.  and so the recent update for LSB -- its new major version: 5.0 has been in beta, and went gold on (TBA)&lt;/p&gt;

&lt;p&gt;So, come learn about how to write portable applications, or how to provide an environment which fosters uses of your project rather than another toolkit.&lt;/p&gt;

&lt;p&gt;One of the items that was cut out of 'LSB 5.0 initial' due to incufficient resources, was an uplift of the RPM (LSB variant, which lacks triggers, and some other aspects which time has shown are needed -- ldconfig management and SELinux hooks come to mind). Also new compression schemes have come out of patent or emerged; new database stores for all the 'book-keeping' which a distribution's package manager needs.  RPM5 has been exploring this space for a decade, and a companion presentation by Jeff Johnson has been proposed for FOSDEM 2014 as well, and will be briefly reprised here&lt;/p&gt;</description>
        <persons>
          <person id="1803">Russ Herrold</person>
        </persons>
        <links>
          <link href="http://www.linuxfoundation.org/collaborate/workgroups/lsb">LSB </link>
          <link href="https://wiki.linuxfoundation.org/en/ProjectPlan50">LSB 5.0 (placeholder)</link>
          <link href="http://www.lanana.org/">LANANA</link>
          <link href="http://www.linuxfoundation.org/collaborate/workgroups/lsb/fhs">FHS</link>
          <link href="http://www.linuxfoundation.org/">LF</link>
          <link href="http://rpm5.org/">RPM5</link>
        </links>
      </event>
      <event id="1869">
        <start>12:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>syslog_ng</slug>
        <title>Babelfish for DevOps: syslog-ng</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Most people still think of syslog-ng as a logging system with a flexible configuration language. It is now databases, message parsing, mongodb, JSON, message queuing and a lot more.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Over the years, syslog-ng has evolved from a flexible and reliable logging system into a feature-rich log-processing tool. It's not just store and forward anymore, for example, with syslog-ng you can:
 * Process and parse the body of messages to find important information and send e-mail alerts for specific events
 * Receive structured JSON messages from your applications and store-them in a schema-free MongoDB NoSQL database
 * Publish your messages to different message-queuing systems, for example, STOMP or AMQP
 * Collect real-time statistics from your hosts and applications using the redis or riemann destinations
All of these illustrated with short real life examples, how they can be used during development or operating your servers.&lt;/p&gt;</description>
        <persons>
          <person id="828">Peter Czanik</person>
        </persons>
        <links>
          <link href="http://czanik.blogs.balabit.com/">CzP Blog</link>
          <link href="http://www.balabit.com/network-security/syslog-ng/opensource-logging-system">syslog-ng</link>
        </links>
      </event>
      <event id="1652">
        <start>12:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>blare</slug>
        <title>Blare: policy-based intrusion detection systems</title>
        <subtitle>Blare can track information flows in the linux kernel, android and the JVM</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Blare is a model for policy-based intrusion detection systems. It works by
tracking information flows. The model has been implemented for the Linux kernel
as well as for the Java Virtual Machine and Android. This talk will present the
model and show how we implemented it for the kernel as a Linux Security Module
in order to leverage existing hooks to intercept system calls.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Blare is a family of policy-based intrusion detection systems (IDS). These IDSs
are based on a common information flow monitoring model. The user defines the
policy by specifying authorised flows beforehand and these IDSs dynamically
check this policy in different types of systems.
KBlare is an implementation of this model at the Linux kernel level. It is a
security extension using the LSM framework to intercept system calls and add
meta-information, called security labels, to the different types of information
containers in the system (files, memory pages). KBlare updates these labels
depending on the flows it tracks ie. based on executed system calls. It throws
alerts whenever one of these flows does not satisfy the policy ie. whenever one
of the security property becomes invalid for a container's label.
We will briefly present the theoretical model and proceed to explain how we
implemented it in the Linux kernel. Using the LSM framework, we intercept
system calls and deduce information flows. We will also show a brief
demonstration of KBlare detecting an intrusion.&lt;/p&gt;</description>
        <persons>
          <person id="1542">Guillaume Brogi</person>
        </persons>
        <links>
          <link href="http://www.blare-ids.org">Official website of the Blare project</link>
        </links>
      </event>
      <event id="1861">
        <start>12:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>mailvelope</slug>
        <title>Mailvelope: OpenPGP for the browser</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Mailvelope is a browser extension and allows to enhance existing web-mailers like Gmail™ or Yahoo™ with functionality to encrypt and decrypt mails. Mailvelope is based on the OpenPGP standard, offers key management, and is therefore compatible to existing PGP implementations.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The issue that Mailvelope wants to address is the low adoption rate of email encryption solutions. Although S/MIME and PGP have been around for many years, we see only limited proliferation.&lt;/p&gt;

&lt;p&gt;It is our view that the most limiting factor of encryption applications are usability issues. Mailvelope wants to address this problem not by reinventing the wheel, but by tapping on established standards like OpenPGP and by making these more accessible.&lt;/p&gt;

&lt;p&gt;The focus of Mailvelope are webmail providers. The extension comes preconfigured for major providers like Gmail™, Yahoo™, Outlook.com™ and GMX™ but is designed as a generic solution, that should work with any provider or website. Whenever an OpenPGP armored message is displayed in the browser, it will be identified as such and the user has the option to process and decrypt it. For the encryption scenario, we provide a secure way to compose the user message and then transfer it back to the website after it has been encrypted.&lt;/p&gt;

&lt;p&gt;Mailvelope is currently available in the Chrome Web Store, a Firefox version is almost complete and expected for Firefox 27. The current feature set supports a basic mail encryption scenario and key management. Planned features are key server integration, signing of messages and attachments.&lt;/p&gt;</description>
        <persons>
          <person id="1775">Thomas Oberndörfer</person>
        </persons>
        <links>
          <link href="http://mailvelope.com/">Mailvelope Website</link>
          <link href="https://github.com/toberndo/mailvelope">GitHub repository</link>
          <link href="http://openpgpjs.org/">OpenPGP.js Project</link>
          <link href="https://chrome.google.com/webstore/detail/mailvelope/kajibbejlbohfaggdiogboambcijhkke">Mailvelope extension in the Chrome Web Store</link>
          <link href="http://fosdem2014.mailvelope.com/">Slides</link>
        </links>
      </event>
      <event id="2139">
        <start>14:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>hotspots</slug>
        <title>Identifying Hotspots in Software Build Processes</title>
        <subtitle/>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Software developers rely on a fast and correct build system to compile their source code changes and produce modified deliverables for testing and deployment. The scale and complexity of modern build processes makes build performance an important topic to discuss and address.&lt;/p&gt;

&lt;p&gt;In this talk, we will introduce a new build performance analysis technique that identifies "build hotspots", i.e., files that are slow to rebuild (by analyzing a build dependency graph), yet change often (by analyzing version control history). We will also discuss the hotspots that we have uncovered in the GLib, PostgreSQL, Qt, and Ruby systems. Our approach helps developers focus build performance optimization effort (e.g., refactoring) onto those files that will yield the most performance improvement.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1993">Shane McIntosh</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Sunday/Identifying_Hotspots_in_Software_Build_Processes.webm">Video</link>
        </links>
      </event>
      <event id="1897">
        <start>14:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>meson</slug>
        <title>Introducing the Meson build system</title>
        <subtitle>The fastest build system in the world</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;This talk will present the Meson build system. It has been designed from the ground up to be fast. These tips and tricks are explained and their performance impact is demonstrated via measurements. The total impact of these techniques is that in some common cases builds can be done up to two orders of magnitude faster than with regular build systems. In spite of this the syntax of Meson is clearer and easier to edit than with other build systems.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1564">Jussi Pakkanen</person>
        </persons>
        <links>
          <link href="http://sourceforge.net/projects/meson/">Meson project page</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Sunday/Introducing_the_Meson_build_system.webm">Video</link>
        </links>
      </event>
      <event id="2103">
        <start>14:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>lava</slug>
        <title>Introduction to LAVA</title>
        <subtitle>Automation and validation for Linux on ARM</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Linaro is a not-for-profit organisation to provide support services for member companies and the open source community to make it easier to develop and support Linux on ARM. This talk introduces Linaro and the automation and validation system, LAVA.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;LAVA is a python framework for testing software on hardware which accepts test jobs to perform on selected hardware to provide a black box to continuous integration tests. LAVA development and deployment is fully open, using git, gerrit, wiki, IRC &amp;amp; mailing lists. The majority of hardware is hosted at the lab in Cambridge, UK and includes around one hundred devices including panda, beaglebone-black and arndale boards as well as calxeda servers. Jobs can be run on multiple nodes using a variety of test environments - the main requirement is that the device has a serial connection which is usable for the entirety of the test.&lt;/p&gt;</description>
        <persons>
          <person id="1712">Neil Williams</person>
        </persons>
        <links>
          <link href="http://validation.linaro.org/scheduler/">Production server</link>
          <link href="http://validation.linaro.org/static/docs/">Documentation</link>
          <link href="https://wiki.linaro.org/Platform/LAVA">Wiki</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Sunday/Introduction_to_LAVA.webm">Video</link>
        </links>
      </event>
      <event id="1877">
        <start>15:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>smack</slug>
        <title>Security model using Smack for embedded systems</title>
        <subtitle>Small but secure</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Smack (Simplified Mandatory Access Control Kernel) is a linux security module particularily well suited for small systems.&lt;/p&gt;

&lt;p&gt;After presenting basic concepts and tools related to Smack, some concrete models for implementing Smack will be exposed.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;I usually share my handset or my tablet to people of my family. Is it really secure?&lt;/p&gt;

&lt;p&gt;Will my child install a backdoor? Will my dear spouse send jokes by SMS in my name? Will my mother destroy sensitive data? And me? How can I trust the policy manager? Will installed applications respect the contract? Even if native?&lt;/p&gt;

&lt;p&gt;For Tizen, the implementation of Smack is declined for several targets:
 * for telephonic handsets (mostly dedicated for one person);
 * for notebooks (where multi-user is really need -think to your children-);
 * for automobiles (where multi-user and multi-session/multi-seat is targeted).&lt;/p&gt;

&lt;p&gt;Also on Tizen, installable applications (coming from a store) must expose their requirement and then conform to it. That is even more important for Tizen because it currently allows native and/or mixed applications to be deployed.&lt;/p&gt;

&lt;p&gt;The policy manager can rely on Smack to achieve the security for the whole system.&lt;/p&gt;</description>
        <persons>
          <person id="1784">José Bollo</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1845">
        <start>15:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>appium_selenium</slug>
        <title>Web and mobile testing made awesome</title>
        <subtitle>with open source</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;&lt;strong&gt;Web and mobile functional testing has never been so simple&lt;/strong&gt;. Let me show you Appium and Selenium - two game changers in mobile and web automation world.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Web and mobile functional testing has never been so simple. All the tools that you need to create a solid maintainable apps are at your fingertips. Big and small companies are already using it to provide their users better experience. In this short talk I will tell you a bit about Appium and Selenium which are completely free open source projects that revolutionized mobile and web automation world. I'll show you why testing is important, when it is worth the effort and how to do effectively. Stay tuned if you are serious about the products you make - both free and paid ones!&lt;/p&gt;</description>
        <persons>
          <person id="1757">Bernard Kobos</person>
        </persons>
        <links>
          <link href="http://www.seleniumhq.org">Selenium Project Homepage</link>
          <link href="http://appium.io/">Appium Project Homepage</link>
        </links>
      </event>
      <event id="1824">
        <start>15:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>community_lab</slug>
        <title>Community-Lab</title>
        <subtitle>Community-supported Service Provision and Network Experimentation</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;The &lt;a href="http://community-lab.net/"&gt;Community-Lab&lt;/a&gt; testbed helps community networks provide and manage their own infrastructure to support cloud-like service provision and realistic experimentation in network technologies.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Developed by the &lt;a href="http://confine-project.eu/"&gt;CONFINE&lt;/a&gt; project, the &lt;a href="http://community-lab.net/"&gt;Community-Lab&lt;/a&gt; testbed pushes the envelope of FLOSS technologies (OpenWrt+LXC Linux containers, open REST APIs over Django, tinc+IPv6 mesh networking…) to provide community networks with free/libre software and knowledge that enable them to run realistic networking experiments and support cloud-like service provision on top of self-provided and self-managed computing and networking infrastructure.  CONFINE also participates in major FLOSS projects related with community and mesh networking (OpenWrt, qMp, bmx6, OLSR, DLEP…) together with some of the largest community networks (AWMN, FunkFeuer, Guifi.net).&lt;/p&gt;</description>
        <persons>
          <person id="1731">Ivan Vilata-i-Balaguer</person>
        </persons>
        <links>
          <link href="http://community-lab.net/">The Community-Lab testbed</link>
          <link href="http://confine-project.eu/">The CONFINE project</link>
        </links>
      </event>
      <event id="1776">
        <start>16:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>libguestfs</slug>
        <title>Advanced disk image management with libguestfs</title>
        <subtitle>libguestfs, virt-builder, virt-sparsify and more</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;Libguestfs (http://libguestfs.org) is a library and set of tools for securely and automatically performing many operations on disk images, from creating them to finding out what is in them.&lt;/p&gt;

&lt;p&gt;In this 15 minute lightning talk, Richard Jones will talk about a few of the latest features, including the ability to churn out a new guest every 60 seconds using virt-builder, how to really compress disk images using virt-sparsify and xz. and "sysprepping" using virt-sysprep.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Libguestfs (http://libguestfs.org) is a library and set of tools for securely and automatically performing many operations on disk images, from creating them to finding out what is in them.&lt;/p&gt;

&lt;p&gt;It is a C library with bindings in many different programming languages.  It also comes with many "virt-*" tools for performing common operations, such as building operating systems from scratch (virt-builder), resizing operating systems (virt-resize), sparsifying disk images (virt-sparsify), editing files (virt-edit) and more.&lt;/p&gt;

&lt;p&gt;In this 15 minute lightning talk, Richard Jones will talk about a few of the latest features from the recently announced version 1.24.  This will include a demonstration of how virt-builder can build a new OS image in well under 60 seconds.  How you can really compress huge disk images down to relatively small files using virt-sparsify and xz.  And how you can use virt-sysprep to "sysprep" cloned virtual machines.&lt;/p&gt;</description>
        <persons>
          <person id="611">Richard Jones</person>
        </persons>
        <links>
          <link href="http://libguestfs.org">Libguestfs home page</link>
          <link href="http://libguestfs.org/virt-builder.1.html">virt-builder</link>
          <link href="http://libguestfs.org/virt-sparsify.1.html">virt-sparsify</link>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Sunday/Advanced_disk_image_management_with_libguestfs.webm">Video</link>
        </links>
      </event>
      <event id="1901">
        <start>16:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>ceph</slug>
        <title>Ceph</title>
        <subtitle>a fully open source distributed object store, network block device, and file system designed for reliability, performance, and scalability from terabytes to exabytes</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;For more than a year, Ceph has become increasingly popular and saw several deployments inside and outside OpenStack. The community and Ceph itself has greatly matured.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Ceph is a fully open source distributed object store, network block device, and file system designed for reliability, performance, and scalability from terabytes to exabytes. Ceph utilizes a novel placement algorithm (CRUSH), active storage nodes, and peer-to-peer gossip protocols to avoid the scalability and reliability problems associated with centralized controllers and lookup tables.&lt;/p&gt;

&lt;p&gt;Since Grizzly, the Ceph integration gained some good additions: Havana definitely brought tons of awesome features. It also made the integration easier and definitely removed all the tiny hacks. All these things, will certainly encourage people to use Ceph in OpenStack. Ceph is excellent to back OpenStack platforms, no matter how big and complex the platform..&lt;/p&gt;

&lt;p&gt;The main goal of the talk is to convince those of you who aren't already using Ceph as a storage backend for OpenStack to do so. I consider the Ceph technology to be the de facto storage backend for OpenStack for a lot of good reasons that I'll expose during the talk.&lt;/p&gt;

&lt;p&gt;In this session, Sebastien Han from eNovance will go through several subjects such as :&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;    • Ceph overview (for those of you who are not familiar with it)
    • Building a Ceph cluster - general considerations
    • State of the integration with OpenStack (general state and Havana's best additions)
    • Icehouse roadmap and beyond
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;The presenter is Sebastian Han- Cloud  Engineer&lt;/p&gt;</description>
        <persons>
          <person id="2097">Sebastien Han</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Sunday/Ceph.webm">Video</link>
        </links>
      </event>
      <event id="1871">
        <start>16:40</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>saml</slug>
        <title>The SAML protocol</title>
        <subtitle>Single Sign On in the cloud</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;This conference will introduce the main concepts of SAML (authentication request and response, NameID, conditions, Logout, etc.).&lt;/p&gt;</abstract>
        <description>&lt;p&gt;SAML (Security Assertion Markup Language) is a standard born at the beginning of the XXI century, providing SSO (Single Sign On) and SLO (Single Logout) mechanisms for decentralized identities and applications running on the Internet. The version 2.0 of the standard, unifying SAML 1, Liberty Alliance and Shibboleth is now implemented in many services (Google Apps, Salesforce) and in many softwares, free or closed. One major advantage is that you can connect to an online service without providing your password to it. You just authenticate on your enterprise identity provider, and open trough SAML your session on the SaaS application. SAML can assure security and anonymity, and let the user manage his federation links between services. The most known usage in France is Mon Service Public. The drawback is the complexity of the standard.&lt;/p&gt;</description>
        <persons>
          <person id="888">Clément Oudot</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2215_Ferrer/Sunday/The_SAML_protocol.webm">Video</link>
        </links>
      </event>
      <event id="1779">
        <start>17:00</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>openshift_origin</slug>
        <title>Putting the PaaS in OpenStack</title>
        <subtitle>update on cross community collaboration: OpenStack, OpenShift, Heat, Nova, Docker, Solum - oh my!</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;A brief update on all the cross community collaboration going on between OpenStack, OpenShift, Heat, Nova, Docker, and now Solum communities to bring PaaS functionality &amp;amp; Container portability to OpenStack. I will show how all the projects are inter-dependent, and how all the parties are working together to make application lifecycle management a reality on OpenStack.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1678">Diane Mueller</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1817">
        <start>17:20</start>
        <duration>00:15</duration>
        <room>H.2215 (Ferrer)</room>
        <slug>os_cloud</slug>
        <title>Your Complete Open Source Cloud</title>
        <subtitle>Mixing oVirt, OpenStack, OpenShift and Gluster for a full private cloud</subtitle>
        <track>Lightning talks</track>
        <type>lightningtalk</type>
        <language/>
        <abstract>&lt;p&gt;This talk will be a whirlwind tour around why you might want to use both oVirt and OpenStack in your infrastructure, how you can use Gluster as a common shared storage back-end for the whole thing, and what value OpenShift adds into the mix. A full open source cloud on commodity hardware, in a couple of hours, covering virt, storage, IaaS and PaaS.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="949">Dave Neary</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="UD2.120 (Chavanne)">
      <event id="2043">
        <start>09:00</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas15</slug>
        <title>News from the VirtualSquare World</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;VirtualSquare community has created a number of tools for virtuality: VDE, View-OS, PureLibC, LWIPv6, etc.
An entire new generation of our tools is being designed. This seminar will provide a preview on new developments and new features.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;News ideas and tools will be presented during this seminar:
- modular libvdeplug
- vde-vxlan
- parallel ptracing
- ... and many others (all those which will be demo-able in time for the Fosdem date)&lt;/p&gt;</description>
        <persons>
          <person id="444">Renzo Davoli</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2019">
        <start>09:40</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas16</slug>
        <title>Virtualization in Android based and embedded systems</title>
        <subtitle>Can you run Xen on your phone or car?</subtitle>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Embedded systems are becoming powerful enough that virtualization is now both possible and interesting. Xen, as a very tiny microkernel based hypervisor looks like a very good fit for the embedded environment, not to mention that it has been ported to ARM with the number of supported boards in constant increase.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will outline the major strengths of the Xen architecture, when it comes to use Xen on embedded systems. It will also identify and  discuss the areas where there is still room for improvement. It will go through preliminary experimental results on assessing some of the typical real-time requirements (such as responsiveness and predictability), for the benefit of everyone out there that would like to build its embedded product on top of Xen.&lt;/p&gt;

&lt;p&gt;On the concrete side, we will show how to setup an 'Andorid on Xen' environment, which results from a fruitful collaboration between the Xen community and other interested parties from the Android community. We think this could be very useful as an example for anyone interested in working with us, with the aim of being successful in the embedded  virtualization product space.&lt;/p&gt;

&lt;p&gt;Full description:
 The goal of this talk is twofold:
  - provide a general enough view of the Xen architecture, focusing on&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;why it could be particularly well suited for the embedded
virtualization usecases
&lt;/code&gt;&lt;/pre&gt;

&lt;ul&gt;
&lt;li&gt;show how the Xen community is tackling this new challenge, trying to
involve all the (potentially) interesting parties and reaching the
highest possible levels of cross-project collaboration&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt; Outline:
 * Embedded virtualization: some typical usecases
   * The xen architecture, and why it fits so well there&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; * it's tiny: small memory footprint, easier to certify
 * it's extensible: pluggable scheduling architecture
 * it's flexible: different Dom0s, driver domains
&lt;/code&gt;&lt;/pre&gt;

&lt;ul&gt;
&lt;li&gt; Areas of further improvements:

&lt;ul&gt;
&lt;li&gt;new hard real-time schedulers&lt;/li&gt;
&lt;li&gt;more determinism within the driver model&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt; Some benchmarks on how Xen behaves in low latency workloads&lt;/li&gt;
&lt;li&gt;Already ongoing projects/effort:

&lt;ul&gt;
&lt;li&gt;Xen on tablets, cars, industrial CNCs, ...&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bootstrapping a (sub)community

&lt;ul&gt;
&lt;li&gt;getting in touch with all the interested parties&lt;/li&gt;
&lt;li&gt;keeping in touch with them&lt;/li&gt;
&lt;li&gt;handling feedback, coordinate collaboration&lt;/li&gt;
&lt;li&gt;concrete example: setup a Android on Xen environment&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1902">Dario Faggioli</person>
        </persons>
        <links>
          <link href="http://wiki.xenproject.org/wiki/Category:Android">Android category on the Xen Wiki</link>
          <link href="http://wiki.xenproject.org/wiki/Category:Embedded">Embeded category on the Xen Wiki</link>
          <link href="http://bugs.xenproject.org/xen/mid/%3C528CF8AF.6010706@xen.org%3E">Dicsussion on Android on the Xen dev mailing list</link>
          <link href="http://bugs.xenproject.org/xen/mid/%3C1384802050.16918.219.camel@Solace%3E">Discussion on embedded on the Xen dev mailing list</link>
          <link href="http://www.slideshare.net/xen_com_mgr/sruk-xen-presentation2013v7dualandroid">Research work about Android on Xen on a NEXUS10 tablet</link>
          <link href="http://www.youtube.com/watch?v=Km6gBnIqaWo&amp;feature=youtu.be">Video about Android on Xen on NEXUS10</link>
          <link href="http://www.slideshare.net/xen_com_mgr/xen-in-oss-based-in-vehicle-infotainment-systems">Presentation about Xen in car software stack</link>
          <link href="http://www.youtube.com/watch?v=po1IeElg8tg&amp;feature=youtu.be">Video about Xen in car software stack</link>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/Virtualization_in_Android_based_and_embedded_systems.webm">Video</link>
        </links>
      </event>
      <event id="1986">
        <start>10:20</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas17</slug>
        <title>Getting cross-platform: bringing virtualization management to the PPC world</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will cover
* a short intro to ovirt
* a bit about the code contribution effort by eldorado.org research center that made this happen
* design consideration of multi arch support - objectives and constraints
* basic flow for provisioning PPC enabled clusters
* some code, config files etc to demonstrate what ties it up altogether&lt;/p&gt;

&lt;p&gt;Target audience:
Whoever is interested in data-center virtualization in general, ovirt-engine specifically, and PPC support.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Getting cross-platform: bringing virtualization management to the PPC world
oVirt, the open source data center virtualization management solution is expanding the x86_64 architecture
support to PowerPC hardware, among them IBM Power processor based hosts.&lt;/p&gt;

&lt;p&gt;Entering PPC world raises challenges of
managing mixed arch data-centers with the need to distinguish PPC from x86_64 VMs. In this session we'll cover the main differences
in virtualization needs, how we enabled the support for that in our management engine(a.k.a ovirt-engine)&lt;/p&gt;

&lt;p&gt;PPC virtualization main differences is in virtualized devices supports. Built around x86&lt;em&gt;64, ovirt-engine needed to expand its
cluster and VMs provisioning to fit multi architecture, and to keep migration support and proper VM configuration solid for
the supported operating systems. Since some parts are work in progress (e.g live migration) for the PPC VDSM, the engine has to also manage features
which are not supported for PPC while is supported for x86&lt;/em&gt;64&lt;/p&gt;

&lt;p&gt;To cope with a change that span various parts and components a repository for Operating Systems and they're hipervisor's demands was created
along with strategy functions around the code to ensure correct provisions and life cycle related VM functions.&lt;/p&gt;

&lt;p&gt;The session will cover what is now supported (hypervisor and VM OSs), how we provision PPC clusters and VMs
and a little deeper dive to explore the mechanisms which enabled this multi-platform support
along with some code examples (yes, we're going to see some code!)&lt;/p&gt;</description>
        <persons>
          <person id="621">Omer Frenkel</person>
        </persons>
        <links>
          <link href="http://ovirt.org">oVirt project page</link>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/Getting_crossplatform_bringing_virtualization_management_to_the_PPC_world.webm">Video</link>
        </links>
      </event>
      <event id="1834">
        <start>11:00</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas18</slug>
        <title>Ganeti: the New&amp;Arcane</title>
        <subtitle>The best known secrets that can help your deployment</subtitle>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;New or unknown Ganeti functionality. We will discuss:
- monitoring daemon
- confd
- network management
- ext storage&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Ganeti is an open source cluster virtualization manager that's been presented at FOSDEM previously. This talk will discuss what's new in the Ganeti codebase since last year, and also focus on less widely known features that might make life easier for current and future adopters. We will also provide hints into what's coming soon, in the current release candidate, beta and bleeding edge version.&lt;/p&gt;</description>
        <persons>
          <person id="389">Guido Trotter</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/Ganeti_the_NewArcane.webm">Video</link>
        </links>
      </event>
      <event id="1906">
        <start>11:40</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas19</slug>
        <title>Expanding oVirt's horizons</title>
        <subtitle>How to extends and modify oVirt even further</subtitle>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;As the prominent open-source data center virtualization solution, oVirt has many features that help you virtualize data center and cloud offerings.
Sometimes a feature might be needed to extend oVirt's capabilities, but even though oVirt is open source, you might want to provide a quick and dirty solution..&lt;/p&gt;

&lt;p&gt;Mike Kolesnik from Red Hat will show you how you can extends oVirt's capabilities with ease throughout the oVirt stack - UI, engine and host.&lt;/p&gt;

&lt;p&gt;Developers are welcome to join us in this session to learn how you can leverage oVirt to suit your virtualization needs.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1804">Mike Kolesnik</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/Expanding_oVirts_horizons.webm">Video</link>
        </links>
      </event>
      <event id="1967">
        <start>12:20</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas20</slug>
        <title>oVirt Hosted Engine: The Egg That Hosts its Parent Chicken</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;For several years now, oVirt has managed Virtual Machines. Then came the question: can you run oVirt inside a VM, which in turn will be managed by the hosted oVirt? In this session we'll look at the intricacies of an egg hosting it's parent chicken. We'll cover the various aspects starting with installation, going through standard operations, and ending with high-availability for the hosted engine. Participants will be able to get insights of this unique setup, which will save them a physical server (or even two) while allowing standard flows to run the same way they did in the past years.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1417">Doron Fediuck</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/oVirt_Hosted_Engine_The_Egg_That_Hosts_its_Parent_Chicken.webm">Video</link>
        </links>
      </event>
      <event id="2015">
        <start>13:00</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas21</slug>
        <title>Adventures with CloudStack and OpenDaylight</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;I've been involved with CloudStack as a project management committee member and I have been focusing mainly on the software defined networking implementations. When the OpenDaylight project started to become more popular integration between OpenDaylight and CloudStack was soon something on my wish list. This talk is about my journey to get support of OpenDaylight into the CloudStack project. This talk is partially about the technical implementation is getting the code bases to work together, but also on how ideas on implementation needs to be aligned between project for any interoperation to become a success.&lt;/p&gt;

&lt;p&gt;The intended audience for this talk is developers who are interested in software defined networking or who are interested in hearing about some of the cross project hurdles one might have to cross when doing an integration.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will be discussion on the lessons learned from driving an integration between two Open Source projects, OpenDaylight and CloudStack. The topics touched are the technical integration details on how both project think about networking and how this is aligned to allow for interoperation. The following topics will be covered in the talk:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Networking model in CloudStack&lt;/li&gt;
&lt;li&gt;Networking models in OpenDaylight&lt;/li&gt;
&lt;li&gt;Integration issues, where are the brains at&lt;/li&gt;
&lt;li&gt;Integration issues, a CloudStack fanboy in an OpenStack crowd&lt;/li&gt;
&lt;li&gt;Integration issues, release pressure versus doing-things-right&lt;/li&gt;
&lt;li&gt;Current status of the integrations work&lt;/li&gt;
&lt;li&gt;The way forward&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Technical depth of the talk will be all the way down to the OVSDB integration and implementation details of OpenDaylights modules structure. Mixed with a piece of my mind on how the communities reacted to this integration process.&lt;/p&gt;</description>
        <persons>
          <person id="1901">Hugo Trippaers</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/Adventures_with_CloudStack_and_OpenDaylight.webm">Video</link>
        </links>
      </event>
      <event id="1951">
        <start>13:40</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas22</slug>
        <title>Tunnels as a Connectivity and Segregation Solution for Virtualized Networks</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Join me for an architectural, developer oriented overview of (GRE and VXLAN) tunnels in OpenStack Networking.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In the virtualization environment virtual machines are hosted on hypervisors. These VMs then obtain network connectivity via software switches run in the same hypervisors. Data centers that provide infrastructure as a service have (hopefully) multiple customers (Or 'tenants'). As you can imagine we don't want tenants' VMs interacting with one another.&lt;/p&gt;

&lt;p&gt;VLANs are a natural approach to achieve tenant segregation. However, how do we maintain scalability with a growing number of hypervisors and VMs, when the administrator has to constantly configure the hardware switches manually? Is there another way?&lt;/p&gt;

&lt;p&gt;We all use VPNs to connect to our office resources remotely, or to connect two office sites into one seamless network. VPNs are essentially encrypted tunnels, but what are tunnels?&lt;/p&gt;

&lt;p&gt;Tunnels allow us to wrap packets inside more packets. In our context - VM traffic in exterior IP packets. That way, to the intermediate networking hardware, it looks like traffic between the hypervisors. Since the hypervisors should already be able to talk to each other, this makes VM connectivity a breeze!&lt;/p&gt;

&lt;p&gt;Let's explore how tunnels are used in the cloud as a means to achieve an overlay network. What is an overlay network? How does traffic flow between virtual machines on the same hypervisor, and on different hypervisors? What are the similarities between a layer 2 learning switch and tunnel logic in OpenStack? How does Open vSwitch fit in? Is there a cost to using tunnels?&lt;/p&gt;

&lt;p&gt;This talk will be useful to developers interested in learning about new networking concepts - Minimal background knowledge will be assumed.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A look at hypervisor and VM networking topology in the data center&lt;/li&gt;
&lt;li&gt;Multi-tenancy and tenant segregation using VLANs&lt;/li&gt;
&lt;li&gt;The disadvantage of VLANs (Manual administrator configuration of switches)&lt;/li&gt;
&lt;li&gt;Traditional tunnel usages and how tunnel encapsulation works&lt;/li&gt;
&lt;li&gt;Tunnels in OpenStack&lt;/li&gt;
&lt;li&gt;How are tunnels formed and when&lt;/li&gt;
&lt;li&gt;How does traffic flow look like between virtual machines on the same hypervisor and on different hypervisors&lt;/li&gt;
&lt;li&gt;How are these flows achieved?&lt;/li&gt;
&lt;li&gt;Open vSwitch flows – How does one read a flow table and how is it processed&lt;/li&gt;
&lt;li&gt;Logical similarities between tunnels in OpenStack and the operation of a layer 2 learning switch&lt;/li&gt;
&lt;li&gt;Tunnels as a means of segregation&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1842">Assaf Muller</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/Tunnels_as_a_Connectivity_and_Segregation_Solution_for_Virtualized_Networks.webm">Video</link>
        </links>
      </event>
      <event id="2044">
        <start>14:20</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas23</slug>
        <title>Media redirection for Spice remote computing solution</title>
        <subtitle>Project Melange: optimizing media stream processing for media players and VoIP clients in virtual desktop infrastructures</subtitle>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Outline:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Common media processing use cases&lt;/li&gt;
&lt;li&gt;Red Hat Spice overview&lt;/li&gt;
&lt;li&gt;Description of media stream processing problem in VDI&lt;/li&gt;
&lt;li&gt;Media redirection concept description&lt;/li&gt;
&lt;li&gt;Media redirection prototype description and demo&lt;/li&gt;
&lt;li&gt;Feature evolution plan&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Discussion topics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Architecture &amp;amp; design considerations (Apache Thrift vs D-Bus)&lt;/li&gt;
&lt;li&gt;New Spice APIs for virtual channels and overlay rendering&lt;/li&gt;
&lt;li&gt;Fault-tolerance practices (crash, disconnect)&lt;/li&gt;
&lt;/ul&gt;
</abstract>
        <description>&lt;p&gt;Handling of media streams is suboptimal in virtual desktop infrastructures if it is done at virtual machines. Consider two main use cases:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Playback of a media stream from remote server e.g. user watches Youtube&lt;/li&gt;
&lt;li&gt;IP telephony e.g. user makes a video call&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;In both cases media streams are not delivered to the user's device directly but transcoded at the virtualization server. This results in increased network load, server CPU load (less VM density), quality loss of media streams. A solution for this problem, &lt;a href="http://www.spice-space.org/page/Features/MediaRedirection"&gt;Media Redirection&lt;/a&gt; for Red Hat Spice remote computing system is proposed. A separate project &lt;a href="https://github.com/lyakhov/melange"&gt;Melange&lt;/a&gt; has been created.&lt;/p&gt;

&lt;p&gt;Solution concept introduces following components: Media Engine and RPC-like service at user's device, Media Engine stubs and RPC-like client at Guest OS. To integrate the solution with Spice, new Spice APIs are proposed: API for establishing virtual channels and API for overlay rendering.&lt;/p&gt;

&lt;p&gt;Two prototypes of Media Redirection are under development in Melange project: a demo audio player from GStreamer and a demo softphone based on Google WebRTC internal audio engine. Audio player will utilize D-Bus for RPC, the softphone will use Apache Thrift.&lt;/p&gt;

&lt;p&gt;The event will be interesting for remote computing system developers and users (in particular, Red Hat Spice), RPC system developers and users, media engine developers, media player and IP telephony client developers&lt;/p&gt;

&lt;p&gt;Note: the authors are NOT working for Red Hat, this work is being done by volunteers in their spare time.&lt;/p&gt;</description>
        <persons>
          <person id="1686">Fedor Lyakhov</person>
        </persons>
        <links>
          <link href="https://github.com/lyakhov/melange">Project Melange at the Github</link>
          <link href="http://www.spice-space.org/page/Features/MediaRedirection">Media Redirection feature description at Spice wiki</link>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/Media_redirection_for_Spice_remote_computing_solution.webm">Video</link>
        </links>
      </event>
      <event id="2008">
        <start>15:00</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas24</slug>
        <title>How we ported FreeBSD to PVH</title>
        <subtitle> A description of PVH and how to port an OS to it</subtitle>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Xen has recently gained a new guest type called PVH and it can run as both DomU and Dom0. This talk will focus on the architecture of PVH and the interface exposed to guest OSes in order to run under this mode.&lt;/p&gt;

&lt;p&gt;Also, examples will be provided about how we ported FreeBSD to run under this new virtualization mode.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The goal of this talk is to provide information about the PVH architecture, and to encourage other OS hackers to port their OSes to PVH.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Description of the PVH architecture:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Why was PVH introduced?&lt;/li&gt;
&lt;li&gt;Differences between PV, PVHVM and PVH.&lt;/li&gt;
&lt;li&gt;Description of the current PVH interface.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Practical example: changes in FreeBSD in order to run as PVH:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How does FreeBSD make use of the PVH interfaces.&lt;/li&gt;
&lt;li&gt;The road so far: from HVM to PVH, a progressive implementation.&lt;/li&gt;
&lt;li&gt;General tips about best ways to add PVH support to an existing OS.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1851">Roger Pau Monné</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/How_we_ported_FreeBSD_to_PVH.webm">Video</link>
        </links>
      </event>
      <event id="2035">
        <start>15:40</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas25</slug>
        <title>You have a Cloud, now What ?</title>
        <subtitle/>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;You have a Cloud, now what? In the last few years we have seen many presentations focused on how to build IaaS clouds. However very few, if any, actually tackle the issue of how to use a Cloud once you are done building it. In this presentation will look at key open source software that form the cloud ecosystem and are used to make use of a working cloud. Specifically we will review software like apache libcloud, jclouds, delatcloud, hadoop. We will also review the state of configuration management systems and their support for IaaS cloud software. We will go beyond talking about Cloud APIs and focus on API wrappers and how they are used to automate provisioning of virtual infrastructure within IaaS deployments.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;These software typically are not key to building a cloud but are used to make use of a working cloud. The higher level software are key to build applications, workflows or higher level abstractions like PaaS.&lt;/p&gt;

&lt;p&gt;We will go beyond talking about Cloud APIs and focus on API wrappers and how they are used to automate provisioning of virtual infrastructure within IaaS deployments. Specifically we will discuss API wrappers within the apache software foundation: libcloud, jclouds and delatcloud. To complement this wrappers we will also discuss OCCI and CIMI standard interfaces to IaaS systems (CloudStack, Opennebula and OpenStack). We will also discuss the state of configuration management systems (Chef, Puppet, Salt and Ansible) and their support/use for IaaS cloud software. These systems are of course used to build clouds but can also be used to provision virtual infrastructure within these clouds, the latter will be our focus.&lt;/p&gt;

&lt;p&gt;To illustrate our point we will describe several scenarios where we use Chef and SaltStack to provision a hadoop cluster, an elasticsearch cluster and a RiakCS cluster on a CloudStack based cloud.&lt;/p&gt;

&lt;p&gt;People attending the talk will see how the open source ecosystem build around IaaS solutions is used to deploy applications and workloads that they need. They will see how a IaaS gets them to the point of thinking about the applications and a faster provisioning time for their workloads instead of thinking of just building a IaaS.&lt;/p&gt;</description>
        <persons>
          <person id="1912">Sebastien Goasguen</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/You_have_a_Cloud_now_What.webm">Video</link>
        </links>
      </event>
      <event id="1903">
        <start>16:20</start>
        <duration>00:40</duration>
        <room>UD2.120 (Chavanne)</room>
        <slug>virtiaas26</slug>
        <title>Bring your virtualized networking stack to the next level</title>
        <subtitle>oVirt &amp; OpenStack Neutron integration</subtitle>
        <track>Virtualisation and IaaS</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;As the prominent open-source data center virtualization solution, oVirt relies on a powerful and easy approach to configuring a data center's network.
By leveraging the advanced network capabilities offered by OpenStack Networking, oVirt's maintainers aim to bring this field even further, allowing data center administrators to use advanced networking capabilities while maintaining the simplicity of oVirt's network management approach.&lt;/p&gt;

&lt;p&gt;Developers &amp;amp; Users are welcome to join us in this session, and to discover how oVirt currently leverages OpenStack Networking, and see the road-map to future network virtualization in the Data Center, all using open source enterprise-grade software.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this session Mike Kolesnik from Red Hat's Cloud Networking Group will cover the networking capabilities of both of these projects, covering Neutron's popular use cases, including:
* Overlay networking
* Security Groups
* IP address management
* Other capabilities, as well as covering the traditional data center virtualization offering.&lt;/p&gt;

&lt;p&gt;In addition we'll review the integration of these two products, and see how you can leverage the advanced networking capabilities from the cloud in your virtualized data center.
The future is still ahead, as we will explore what's already there and what's yet to come in this emerging collaboration.&lt;/p&gt;

&lt;p&gt;Developers &amp;amp; Users are welcome to join us in this session, and to discover how oVirt currently leverages OpenStack Networking, and see the road-map to future network virtualization in the Data Center, all using open source enterprise-grade software.&lt;/p&gt;</description>
        <persons>
          <person id="1804">Mike Kolesnik</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UD2120_Chavanne/Sunday/Bring_your_virtualized_networking_stack_to_the_next_level.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="UB2.252A (Lameere)">
      <event id="2178">
        <start>10:00</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>the_mbed_platform</slug>
        <title>The mbed platform</title>
        <subtitle>Development platform for embedded devices</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The mbed platform is a framework for developing embedded applications with ARM MCUs. It consists of a SDK (software development kit) and a HDK (hardware development kit) which work together to provide a complete software and hardware solution and reference platform for developing a broad range of embedded applications.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;mbed also provides a platform agnostic on-line development environment that can be used to develop embedded applications, as well as a large number of drivers and libraries for various peripherals and protocols, many of them written and maintained by a large community of open source developers. Applications can also be exported (and subsequently developed) off-line for a number of popular IDEs. The whole framework is provided under a permissive open source license that allows using the framework for both non-commercial and commercial applications. This presentations will give an overview of the mbed framework, with an accent on how easy it is to develop embedded applications with mbed.&lt;/p&gt;</description>
        <persons>
          <person id="734">Bogdan Marinescu</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UB2252A_Lameere/Sunday/The_mbed_platform.webm">Video</link>
        </links>
      </event>
      <event id="1804">
        <start>10:30</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>mbed_open_sdk_&amp;_open_hdk</slug>
        <title>mbed Open SDK &amp; Open HDK</title>
        <subtitle>meet the mbed open platform</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Meet the mbed open platform for developing ARM-based embedded devices. A clean and concise presentation about how to start developing today your new embedded device on the mbed platform only using the Free GNU GCC Toolchain and the open mbed SDK (Apache v2).&lt;/p&gt;</abstract>
        <description>&lt;p&gt;mbed is an open platform for developing ARM-based embedded systems (with a focus on IoT devices).&lt;/p&gt;

&lt;p&gt;The aim is to build a platform and ecosystem of open-source software and hardware building blocks that are available to a very wide professional developer audience, allowing new industries to take advantage of the huge potential IoT presents. Think embedded intelligence everywhere...&lt;/p&gt;

&lt;p&gt;This talk will provide an overview of the platform and a clean and concise presentation about how to start developing today your new embedded device on the mbed platform only using the Free GNU GCC Toolchain and the open mbed SDK (Apache v2).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;mbed SDK: https://github.com/mbedmicro/mbed&lt;/li&gt;
&lt;li&gt;GNU Tools for ARM Embedded Processors: https://launchpad.net/gcc-arm-embedded&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1709">Emilio Monti</person>
        </persons>
        <links>
          <link href="https://github.com/mbedmicro">mbed platform Apache v2</link>
          <link href="http://mbed.org/handbook/mbed-SDK">mbed SDK</link>
          <link href="http://mbed.org/handbook/mbed-HDK">mbed HDK</link>
          <link href="https://launchpad.net/gcc-arm-embedded">GNU Tools for ARM Embedded Processors</link>
        </links>
      </event>
      <event id="2207">
        <start>11:00</start>
        <duration>01:00</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>memory_tuning_android_for_low_ram_devices</slug>
        <title>Memory Tuning Android for Low-RAM Devices</title>
        <subtitle>Tuning Android to run on Low-RAM Devices</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Running Android on low-RAM systems can present unique challenges. Tuning Android for these systems requires a knowledge of general Linux memory management and the memory tuning mechanisms specific to Android. This presentation will explore the tools and knobs available at all levels of the system to optimize and configure Android for devices at, or below, the recommended available RAM.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2035">Chris Kühl</person>
          <person id="2036">Iago López</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/UB2252A_Lameere/Sunday/Memory_Tuning_Android_for_LowRAM_devices.webm">Video</link>
        </links>
      </event>
      <event id="2302">
        <start>12:00</start>
        <duration>01:00</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>_booting_linux_made_easy:_a_barebox_update</slug>
        <title> Booting Linux Made Easy: A Barebox Update</title>
        <subtitle/>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The talk starts with a short introduction of the Barebox bootloader. Recently, barebox gained several new features: one of the most prominent is multi image support with full initialization from the open firmware device tree. Using this method, it is now possible to generate bootloader binaries for a whole family of devices, just by writing an open firmware device tree. Porting Linux to new hardware has never been so easy.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Other new features include support for the freedesktop.org bootspec: This method to define "boot target" makes it much easier to realize redundancy-boot setups and in-system upgrade mechanisms for industrial devices. For community hardware, the bootspec makes it quite easy to boot standard distributions without taking care of all the ARM specialties.&lt;/p&gt;</description>
        <persons>
          <person id="242">Robert Schwebel</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2301">
        <start>13:00</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>lumicall_an_open_alternative_to_viber</slug>
        <title>Lumicall - an open alternative to Viber</title>
        <subtitle>Free and open communications from mobile devices</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;&lt;a href="http://www.lumicall.org"&gt;Lumicall&lt;/a&gt; is a fork of the original Sipdroid SIP phone for Android.  As far as forks go, it is one of the more innovative ones, loading up the
original project with cool features like encryption (TLS, SRTP, and &lt;a href="http://www.lumicall.org/encryption"&gt;ZRTP&lt;/a&gt;), ICE for NAT traversal and &lt;a href="http://www.sip5060.net/enum"&gt;ENUM dialing&lt;/a&gt;.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;All together, it aims to provide a completely free, open and secure alternative to the popular Viber app for mobiles.  &lt;a href="http://danielpocock.com"&gt;Daniel Pocock&lt;/a&gt;, Lumicall project founder, will look at questions like why he chose to start with the Sipdroid code base, why he uses SIP, what level of security is really achievable on a mobile device and what kind of community effort is necessary to make
this initiative successful.&lt;/p&gt;</description>
        <persons>
          <person id="925">Daniel Pocock</person>
        </persons>
        <links>
          <link href="http://www.lumicall.org">Lumicall web site</link>
          <link href="http://danielpocock.com/free-calling-from-browser-to-mobile">Free calls from browser to mobile with WebRTC and Lumicall</link>
          <link href="http://www.opentelecoms.org">OpenTelecoms.org</link>
          <link href="http://www.rtcquickstart.org">Real-time communications (RTC) quick start guide</link>
          <link href="https://lists.fsfe.org/mailman/listinfo/free-rtc">FSF Europe Free RTC mailing list</link>
          <link href="http://en.wikipedia.org/wiki/ZRTP">ZRTP overview (Wikipedia)</link>
          <link href="http://jscommunicator.org">JSCommunicator for WebRTC</link>
        </links>
      </event>
      <event id="2185">
        <start>13:30</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>android_sensors_101</slug>
        <title>Android Sensors 101</title>
        <subtitle>What you can do with sensors and how you can integrate them with Android</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This presentation is about a general information on sensors, how to "fuse" data from multiple sensors for more accurate information, how Android handles the available sensors, and also a practical tutorial on how to introduce new sensors to Android so they can be seamlessly accessed by applications.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;As sensor chips get cheaper and mobile devices get more powerful, every smartphone and tablet includes multiple sensors to gather data from the physical environment. These include but are not limited to acceleration, magnetic filed, humidity, air pressure, and rotation.&lt;/p&gt;</description>
        <persons>
          <person id="2023">Atilla Filiz</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1878">
        <start>14:00</start>
        <duration>01:00</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>underwater_acoustics_to_opkg</slug>
        <title>Underwater Acoustics to Opkg</title>
        <subtitle>via The Yocto Project</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Underwater noise produced by human activities in the ocean is a serious problem for marine mammals and fish. To produce the data needed to address this problem, an underwater noise monitoring device (the UDAQ) and a software toolkit for noise analysis (named TUNA) has been developed. Both of these components act as open platforms for the further development of noise monitoring and analysis methods. An initial prototype of the UDAQ platform has been produced using a Beagleboard xM single board computer along with an appropriate analog-to-digital converter, preamplfier, battery pack and pressure housing.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Beagleboard xM runs a custom Linux image producing using the OpenEmbedded build system.&lt;/p&gt;

&lt;p&gt;The first half of this talk will focus on how OpenEmbedded has been used in the development of the UDAQ platform and how the unique challenges of developing software for a device that must operate unattended in the ocean for long time durations have been addressed. These challenges include the fact that sending an engineer to fix a device requires hiring a ship, giving some of the most expensive call-out rates of any industry! The abilities of OpenEmbedded to tightly control what software is executed on the device and to provide updates from a customised package feed are critical in this application. As this platform is designed to be open and customisable for further research, the ability to produce a cross-development toolchain for other developers to use is also a great benefit.&lt;/p&gt;

&lt;p&gt;The second half of this talk will discuss how I began contributing patches to OpenEmbedded due to its use in the above project and how I've became maintainer of opkg, a package manager for embedded Linux. This is the default package manager for both OpenEmbedded and OpenWRT and is also used by several other projects and is a fork of the older ipkg package manager. Development had slowed down due to the maintainer having other time commitments and so I stepped in around August 2013 and have been reviving the project. It has recently seen many new patches and bug fixes and is again attracting active development. The history, current status and future directions of opkg will be outlined and opportunities for people to contribute to this project will be highlighted.&lt;/p&gt;</description>
        <persons>
          <person id="1787">Paul Barker</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2206">
        <start>15:00</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>what_if_we_could_change_programming_languages</slug>
        <title>What if we could change programming languages?</title>
        <subtitle>How mbeddr works and how you can use it</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;I would like to give brief overview about the mbeddr project. Which is a open source extensible C implementation. I would like to show the existing extensions which are built for embedded systems and how we were able to enrich C with stuff like state machines and components. I will also show how language extensions can help to work with hardware feature at an Arduino example.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2000">Kolja Dummann</person>
        </persons>
        <links>
          <link href="http://mbeddr.com">homepage</link>
        </links>
      </event>
      <event id="1956">
        <start>15:30</start>
        <duration>00:30</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>integrity_protection_solutions_for_embedded_systems</slug>
        <title>Integrity protection solutions for embedded systems</title>
        <subtitle/>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Runtime system integrity is protected by access control mechanisms. The Linux kernel provides Discretionary Access Control (DAC) and several Mandatory Access Control modules, such as SELinux, SMACK, Tomoyo, AppArmor. All of these assume trustworthiness of the access control related data. Integrity protection is required to ensure that offline modification of such data will not remain undetected. This presentation will summarize the different methods of achieving integrity protection at different layers, compare them and will show how to use them to build integrity protected embedded system.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will present the current state and future of the VFS level Linux kernel Integrity Subsystem, which allows since 3.7 to build integrity protected system, and compare it with block-level integrity protection modules, such as dm-integrity and dv-verity. Presentation will also discuss secure boot support of the u-boot.&lt;/p&gt;</description>
        <persons>
          <person id="1847">Dmitry Kasatkin</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2324">
        <start>16:00</start>
        <duration>01:00</duration>
        <room>UB2.252A (Lameere)</room>
        <slug>metadata_tracker</slug>
        <title>Metadata tracker</title>
        <subtitle>Metadata indexing and RDF SPARQL endpoint for mobile and embedded</subtitle>
        <track>Embedded</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A presentation about the current state of the project and technologies where the software is being used (Jolla Phone, N9, N900, GNOME and infotainment systems in cars). Encountered pitfalls and lessons learned.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Metadata Tracker is now being used not only on the N900 and N9, but is and will be used on the Jolla Phone. On top a software developer for several car brands, Pelagicore, claims to be using it with custom made ontologies. Other hardware companies have approached the team about integrating the software with their products. In this presentation I'd like to highlight the difficulties those companies encountered and how the project deals with them, dependencies to get a minimal system up and running cleanly and I'd like to propose some future ideas.&lt;/p&gt;</description>
        <persons>
          <person id="2101">Philip Van Hoof</person>
        </persons>
        <links>
          <link href="https://github.com/Pelagicore/tracker-ivi/">Pelagicore's Tracker-IVI branch</link>
          <link href="https://github.com/nemomobile-packages/tracker">Jolla's Tracker branch</link>
          <link href="https://git.gnome.org/browse/tracker/">Upstream Tracker's master and branches</link>
          <link href="https://gitorious.org/tracker/tracker/commits/59b5389488d25ec056d4370a17b9fbcabc016f4b">N9 - Harmattan 1.3's Tracker</link>
          <link href="https://gitorious.org/tracker/tracker/commits/33bd46301a05e79ddd181877a6a87f6b36e06e4a">N900 - Fremantle's Tracker</link>
        </links>
      </event>
    </room>
    <room name="H.1301 (Cornil)">
      <event id="2377">
        <start>10:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>gfx_driver_testing</slug>
        <title>Testing Kernel GFX Drivers</title>
        <subtitle>How to get drm/i915 off the number 1 spot on the kernel regression list ...</subtitle>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Three years ago, the Intel kernel gfx driver infamously occupied the top spot on the regression list. This sordid state has massively improved thanks to a big effort over the past few years.&lt;/p&gt;

&lt;p&gt;This talk will detail what we've all done to achieve this. Process improvements, improvements in the driver, test-suite infrastructure and new testing techniques developed to exercise specific features will all be covered. And of course a unsparing look at what didn't work out, what still needs to be improved, and the plans for the near future won't be missing, either.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="898">Daniel Vetter</person>
        </persons>
        <links>
          <link href="http://blog.ffwll.ch/2013/11/testing-requirements-for-drmi915.html">Testing Requirements for drm/i915 Features and Patches </link>
          <link href="http://blog.ffwll.ch/2013/08/recent-drmi915-testsuite-improvements.html">Recent drm/i915 Testsuite Improvements </link>
          <link href="http://blog.ffwll.ch/2013/09/more-drmi915-testsuite-infrastructure.html">More drm/i915 Testsuite Infrastructure</link>
          <link href="http://people.freedesktop.org/~danvet/presentations/fosdem-2014.odp">Slides for the presentation</link>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Sunday/Testing_Kernel_GFX_Drivers.webm">Video</link>
        </links>
      </event>
      <event id="1825">
        <start>11:00</start>
        <duration>00:20</duration>
        <room>H.1301 (Cornil)</room>
        <slug>intel_baytrail</slug>
        <title>Intel BayTrail graphics overview</title>
        <subtitle>Discussion of the Intel BayTrail platform and architecture</subtitle>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Discussion of Intel BayTrail SoC architecture from a graphics perspective, including overview of render engine, display engine, memory architecture characteristics, and current status in Linux.  Hopefully the presenter will have some sample platforms for people to play with after the talk.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Intel BayTrail platform incorporates a new, out of order Atom CPU, an Intel HD graphics engine, and various IP blocks to support both tablet and notebook platforms.  This talk will give an overview of the new hardware features, and the status of the graphics driver support in Linux.&lt;/p&gt;</description>
        <persons>
          <person id="899">Jesse Barnes</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Sunday/Intel_BayTrail_graphics_overview.webm">Video</link>
        </links>
      </event>
      <event id="1769">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>nouveau</slug>
        <title>Nouveau - On-going work, demos and research</title>
        <subtitle/>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Nouveau is an open-source driver for NVIDIA GPUs developed through reverse engineering by the community. This talk will discuss the achievements of the driver, what happened these last 2 years, what we are working on and what may change in the future. Special emphasis will be put on power management as it is the most-lacking feature in our driver. Some demos and Q&amp;amp;A will close the talk.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="900">Martin Peres</person>
        </persons>
        <links>
          <link href="http://nouveau.freedesktop.org">Website of the Nouveau project</link>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Sunday/Nouveau_Ongoing_work_demos_and_research.webm">Video</link>
        </links>
      </event>
      <event id="1744">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>grate_driver</slug>
        <title>Grate</title>
        <subtitle>Liberating the Tegra GPU</subtitle>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The Grate project works on liberating NVIDIA's Tegra GPU user-space components by reverse-engineering the proprietary drivers. This talk will discuss where we are and what the future might bring.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1639">Erik Faye-Lund</person>
        </persons>
        <links>
          <link href="http://github.com/grate-driver/">grate - github</link>
          <link href="http://github.com/kusma/fosdem14">slides - source code</link>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Sunday/Grate.webm">Video</link>
        </links>
      </event>
      <event id="1742">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>v4l_intro</slug>
        <title>An Introduction to the Video4Linux Framework</title>
        <subtitle>How to write a video capture driver</subtitle>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;During the past five years a lot of work went into the video4linux subsystem of the kernel, in particular with respect to the frameworks that help the driver developers. This talk gives an overview of the kernel frameworks that help video4linux driver developers create good drivers.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Writing video capture or codec drivers used to be quite complex, but these days there are several frameworks available in the video4linux subsystem that take care of a lot of the common problems that all drivers have to solve, allowing the developer to concentrate on the actual code that controls the hardware.&lt;/p&gt;

&lt;p&gt;This presentation examines how modern V4L drivers are written and which frameworks are available to help you write good driver code in less time.&lt;/p&gt;</description>
        <persons>
          <person id="1637">Hans Verkuil</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Sunday/An_Introduction_to_the_Video4Linux_Framework.webm">Video</link>
        </links>
      </event>
      <event id="1741">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>lima_driver</slug>
        <title>The Lima driver</title>
        <subtitle>An update on the command stream/driver side of the open source driver for ARM Mali GPUs.</subtitle>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk provides an update on the lima driver progress of the past year. It will cover the work done on providing a Mesa driver for the Mali M family (M200/M400), and it will describe the current status of the reverse engineering work on the Mali T-series GPUs.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Like Vivante, ARMs Mali GPU is used only as an IP block in mix-n-match ARM based SoCs. This poses some specific challenges for graphics driver development. Then there is the unique design of the Mali M series GPUs and of ARMs kernel driver which has some further repercussions on the design of the mesa driver. The current working state of the Lima Mesa driver will be demonstrated and some of its design decisions and limitations will be explained.&lt;/p&gt;

&lt;p&gt;To finish off, the status of the initial work on the Tamil driver, the future open source driver for Mali T-series (T6xx/T7xx) GPUs, will be described.&lt;/p&gt;</description>
        <persons>
          <person id="577">Luc Verhaegen</person>
        </persons>
        <links>
          <link href="http://limadriver.org/">Project website</link>
          <link href="https://gitorious.org/lima">Driver repository</link>
          <link href="http://libv.livejournal.com">Libv's blog</link>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Sunday/The_Lima_driver.webm">Video</link>
        </links>
      </event>
      <event id="2331">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>H.1301 (Cornil)</room>
        <slug>lima_shader</slug>
        <title>lima driver: Opening up the Mali instruction set </title>
        <subtitle/>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will describe the Instruction Set Architecture of the Mali 200/400 Geometry Processor and Pixel Processor, efforts to write an open-source compiler backend, and preliminary information about the new T6xx instruction set.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1365">Connor Abbott</person>
        </persons>
        <links>
          <link href="http://limadriver.org/">main lima driver site</link>
          <link href="https://gitorious.org/open-gpu-tools/cwabbotts-open-gpu-tools">assemblers and disassemblers, as well as experimental compiler backends for Mali GP and PP</link>
          <link href="http://limadriver.org/Lima+ISA/">Mali 200/400 GP and PP ISA documentation</link>
          <link href="http://limadriver.org/T6xx+ISA/">Preliminary Mali T6xx ISA documentation</link>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Sunday/lima_driver_Opening_up_the_Mali_instruction_set.webm">Video</link>
        </links>
      </event>
      <event id="2366">
        <start>17:00</start>
        <duration>00:20</duration>
        <room>H.1301 (Cornil)</room>
        <slug>sunxi_kms</slug>
        <title>Sunxi KMS driver</title>
        <subtitle>A new display driver for allwinner SoCs</subtitle>
        <track>Graphics</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This short talk covers the Allwinner SoCs display engines and the development of a (work in progress) KMS driver for this hardware.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="577">Luc Verhaegen</person>
        </persons>
        <links>
          <link href="http://linux-sunxi.org">Linux sunxi website</link>
          <link href="http://video.fosdem.org/2014/H1301_Cornil/Sunday/Sunxi_KMS_driver.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.1302 (Depage)">
      <event id="2215">
        <start>10:00</start>
        <duration>00:55</duration>
        <room>H.1302 (Depage)</room>
        <slug>appstreamandlistaller</slug>
        <title>AppStream &amp; Listaller</title>
        <subtitle>The next step in application management and deployment on Linux</subtitle>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;AppStream provides a solution for application-centric software management using existing package managers, while Listaller extends the package manager with the ability to install 3rd-party applications in a secure way, without introducing additional UI.
This talk explains the basic concepts of both projects and the motivation behind them, as well as the obstacles in cross-distro collaboration which we hit while developing these tools.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Software management on Linux is traditionally done using packages, although desktop users are more interested in applications instead and do not care much about how something is packaged.
Also, users often want to install software which is not available in the repositories (e.g. unpackaged stuff, as well as new versions of applications), without having to upgrade the whole distribution.
AppStream provides a solution for application-centric software management using the existing package-managers, by providing extra metadata for packages. This allows developers to create cross-distro application-centers, like GNOME-Software or Apper.
Listaller extends the package manager with the ability to install 3rd-party applications, which are not (yet) in the distribution's repositories. It builds on top of the AppStream specs and focuses on integration, so the installation process is completely transparent for users, and Listaller-installed applications can be managed with existing software-management tools.
Because software from 3rd-party sources is a potential security risk, Listaller also tries to give users a hint if they can trust a certain application, and includes sandboxing for these applications.
Both projects rely heavily on metadata provided by upstream projects and distributions.
This talk will explain the concepts of AppStream and Listaller, which new metadata needs to be added and why as well as how distributions can make a software-center available for their users. If the time allows it, the talk will also highlight the problems we had with the AppStream project in the first place and how we could improve cross-distribution collaboration in general.&lt;/p&gt;</description>
        <persons>
          <person id="1475">Matthias Klumpp</person>
        </persons>
        <links>
          <link href="http://www.freedesktop.org/wiki/Distributions/AppStream/">AppStream page</link>
          <link href="http://listaller.tenstral.net">Listaller page</link>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Sunday/AppStream_Listaller.webm">Video</link>
        </links>
      </event>
      <event id="2310">
        <start>11:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>crossdistroauto</slug>
        <title>Cross Distro Automation</title>
        <subtitle/>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Automation is eating the world. No longer can you run systems with out any level of automation. But how do you build that automation so that it will work in a mixed distro environment? This talk will cover how to build cross distro automation using Chef.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1705">Michael Ducy</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2161">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>gnuguix</slug>
        <title>Growing a GNU with Guix</title>
        <subtitle>A Foundation for the GNU System</subtitle>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Guix is GNU's package manager and distribution. It seeks to empower users in several ways: by being a dependable system foundation, by providing the tools to formally correlate a binary package and the "recipes" and source code that led to it, by allowing users to customize the distribution, and by lowering the barrier to entry in distribution development.&lt;/p&gt;

&lt;p&gt;This talk will describe the features and foundations of GNU Guix as a package manager.  It will report on the current status of building a stand-alone GNU distribution, and outline design goals that set it apart from existing distros.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;&lt;a href="http://www.gnu.org/software/guix"&gt;Guix&lt;/a&gt; is GNU's package manager and distribution.  Its goal is to be a foundation for the GNU system that is dependable, hackable, and liberating.&lt;/p&gt;

&lt;p&gt;Guix is a dependable package manager in that it supports transactional upgrades and roll-backs---valuable features pioneered by the &lt;a href="http://nixos.org/nix/"&gt;Nix&lt;/a&gt; package manager it is based upon.  The underlying functional package management paradigm, where packages are built in isolated containers, maximizes chances that builds are bit-reproducible---allowing users to compare independent builds of a given package, rather than relying on a single distribution point for binaries.&lt;/p&gt;

&lt;p&gt;Packages are declared in a high-level fashion, using a domain-specific language embedded in the Scheme programming language.  This is the first step in making it hackable to our eyes: packagers do not even need to know Scheme to write a package definition, yet the full power of Scheme, of &lt;a href="http://www.gnu.org/software/guile/guile.html"&gt;GNU Guile&lt;/a&gt;, and of the &lt;a href="http://www.nongnu.org/geiser"&gt;Geiser&lt;/a&gt; programming environment is available.  From a programming viewpoint, Guix and the GNU distribution are just a bunch of "normal" Guile modules, some of which export "package" objects---one can easily write Guile code that builds atop the distribution, customizes it, or otherwise fiddles with packages.&lt;/p&gt;

&lt;p&gt;This feature set serves one goal: to put users in control.  We are putting together an operating system made of software that respects the user's freedom---GNU's goal as stated 30 years ago.  By allowing users to know exactly what dependencies and build scripts led to a given binary, the functional package management paradigm increases the control users have over the software they're running.  By offering a consistent view, tool set, and APIs, we hope to make it easier for users to exert their freedom to adapt the software to their needs.&lt;/p&gt;

&lt;p&gt;This talk will present these features, the underlying foundations, and our motivations.  We'll report on the project's status after more than a year of development, and discuss what's cooking in the GNU system.&lt;/p&gt;</description>
        <persons>
          <person id="2003">Ludovic Courtès</person>
        </persons>
        <links>
          <link href="http://www.gnu.org/software/guix">GNU Guix web site</link>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Sunday/Growing_a_GNU_with_Guix.webm">Video</link>
        </links>
      </event>
      <event id="1731">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>devassistant</slug>
        <title>DevAssistant - What's in it for You?</title>
        <subtitle>A brief introduction of DevAssistant project</subtitle>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;&lt;a href="http://devassisstant.org"&gt;DevAssistant&lt;/a&gt; aims at making developers' lives easier. It can kickstart new projects, work with existing projects and prepare environment for development of upstream projects. We want DevAssistant to become a standard developer tool across all major Linux distributions. This presentation will introduce you to DevAssistant concept, will discuss DevAssistant internals and show you how to use it.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;&lt;a href="http://devassisstant.org"&gt;DevAssistant&lt;/a&gt; is a new project that aims at making developers' lives easier by automation of repetitive and time consuming tasks. It uses assistants, Yaml "recipe files", that contain information on how to create new projects, modify existing projects and how to setup environment for development of upstream projects. DevAssistant features include:
* dependency installation
* scaffolding source code for new projects or checking out source code from SCM
* setting up environment on developer's machine
DevAssistant is written in Python and it features a command line interface and gtk+ GUI.&lt;/p&gt;</description>
        <persons>
          <person id="1624">Slavek Kabrda</person>
        </persons>
        <links>
          <link href="http://devassistant.org">http://devassistant.org</link>
          <link href="https://github.com/bkabrda/devassistant">https://github.com/bkabrda/devassistant</link>
        </links>
      </event>
      <event id="2247">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>fedmsg</slug>
        <title>See Your Project Pulse in Real-Time with Fedmsg</title>
        <subtitle/>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Fedmsg, the federated message bus, is a distributed system allowing bits of a project's infrastructure to publish events. This lightweight framework provides a central place to watch the life of a project, and allows anyone to listen in and trigger actions when an event is received.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Initially built by the Fedora Infrastructure team to uniformise communication between its services, the Fedmsg framework has now been adopted by Debian and even outside the realm of Linux distributions to broadcast events. All those deployments are using the same framework, and the same tools, fostering the ever-needed interoperability and collaboration between free software and open data projects.&lt;/p&gt;

&lt;p&gt;In this talk, we will present how fedmsg works, how it was deployed in the Fedora and Debian infrastructures, and some of the technical choices that were made during those deployments. We will also present the applications being developed around the bus, as well as some ideas for future ones.&lt;/p&gt;</description>
        <persons>
          <person id="1963">Nicolas Dandrimont</person>
          <person id="2140">Pierre-Yves Chibon</person>
        </persons>
        <links>
          <link href="http://fedmsg.com">The Fedmsg homepage</link>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Sunday/See_Your_Project_Pulse_in_RealTime_with_Fedmsg.webm">Video</link>
        </links>
      </event>
      <event id="2213">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>noncoders</slug>
        <title>Non-Coders Wanted</title>
        <subtitle>How to Get and Keep Non-technical Volunteers</subtitle>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Many distributions sorely need writers for documentation, press releases and blogging or experts on outreach, fundraising and volunteer management or a friendly pack of translators, but aren't sure how to get them. In this talk, I'll discuss how to set parameters for non-coding tasks so that everyone is happy. With some basic benchmarks for scheduling, accountability and volunteer empowerment, you'll be able to retain and excite your new non-coding volunteers.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Non-coders do want to contribute to free software, but they need slightly different framing and like all contributors they thrive with the proper care and feeding. Tweaking your volunteer pitch, looking in different places, being open to different communications channels, and finding ways to appreciate folks will help immensely.&lt;/p&gt;

&lt;p&gt;Once you've got them, letting your new non-coding contributors get on with what they're good at will help them feel invested. In this talk, I'll discuss how to set parameters for non-coding tasks so that everyone is happy. With some basic benchmarks for scheduling, accountability and volunteer empowerment, you'll be able to retain and excite your new non-coding volunteers. Want more visibility, a better user experience, nicer materials or more well-organized events for your distro? Start bringing in folks with the skills and enthusiasm to make it happen!&lt;/p&gt;</description>
        <persons>
          <person id="698">Deb Nicholson</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Sunday/NonCoders_Wanted.webm">Video</link>
        </links>
      </event>
      <event id="2197">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>uefienemy</slug>
        <title>UEFI is not your enemy</title>
        <subtitle/>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk gives an overview of UEFI and the components and organisations surrounding it - intending to clarify certain topics that may have been muddled by association.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Apart from on IA64, UEFI was pretty invisible in the open source community up until the point where Microsoft announced their plans/requirements for mandating UEFI Secure Boot. While BIOS was outliving its usefulness on x86, even those hardware vendors that shifted to using UEFI "under the hood" provided BIOS emulation for backward compatibility.&lt;/p&gt;

&lt;p&gt;This has now changed/is now changing. Some x86 systems are already shipping without legacy mode, and AArch64 (or arm64, depending on your water supply) servers will be shipping with UEFI firmware next year.&lt;/p&gt;

&lt;p&gt;So, since the community cannot ignore UEFI, this presentation hopes to clarify the various aspects of UEFI - helping everyone hate the bit they should be hating for the right reasons, rather than bundling it all together :)&lt;/p&gt;

&lt;p&gt;This is an updated/evolved version of the talk that was given at the 2013 UK mini Debconf.&lt;/p&gt;</description>
        <persons>
          <person id="1936">Leif Lindholm</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1302_Depage/Sunday/UEFI_is_not_your_enemy.webm">Video</link>
        </links>
      </event>
      <event id="2113">
        <start>17:00</start>
        <duration>00:50</duration>
        <room>H.1302 (Depage)</room>
        <slug>ubuhelp</slug>
        <title>What Ubuntu Does to Help Users</title>
        <subtitle>And What other Distros Can Learn from Ubuntu</subtitle>
        <track>Distributions</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;I will be presenting a practical guide that shows an overview of the ways that Ubuntu offers support to their users and relate this to how other developers and distributions can help out their users.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Ubuntu is a distribution with a great number of users, who all need help in different ways. I will be going over these different ways that Ubuntu offers support for users through the great community of Ubuntu, and in the process allowing people from other distributions to see the some opportunities for them to ways that they can adopt some of our ways. I will be going over several different platforms and communities, including but not limited to: The Ubuntu Community as a whole and the ways that the community can come together to help each other. Some of these areas that the community uses to benefit all the users are : Ask Ubuntu, Ubuntu Forms, Ubuntu Lo-Co's, as well as the parts of the Ubuntu Local Communities that are best to help users out with. This will be done in an effort to allow people to see how they can adopt Ubuntu's support strategy to their distributions in ways that they need.&lt;/p&gt;</description>
        <persons>
          <person id="1976">Philip Ballew</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="H.1308 (Rolin)">
      <event id="1778">
        <start>09:00</start>
        <duration>00:05</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_welcome2014</slug>
        <title>Welcome to Graph Devroom 2014</title>
        <subtitle>Welcome to Graph Devroom 2014</subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Welcome talk...&lt;/p&gt;</abstract>
        <description></description>
        <persons>
        </persons>
        <links>
        </links>
      </event>
      <event id="2395">
        <start>09:05</start>
        <duration>00:40</duration>
        <room>H.1308 (Rolin)</room>
        <slug>intelgraphbuilder</slug>
        <title>Graphbuilder</title>
        <subtitle>Where'd you get that big old graph?</subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will discuss the basics, the challenges, and the possibilities of graph construction.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Often, the most painful and time-consuming part of graph processing at the massive scale is constructing the graph from raw data.&lt;/p&gt;

&lt;p&gt;Technologies such as the many Hadoop/Python make it possible to create ad-hoc solutions. But even then, the task requires familiarity with writing and debugging Map-Reduce code, and graph construction can involve consistency checks and cleanup tasks that can prove tricky even for experienced data scientists.&lt;/p&gt;

&lt;p&gt;The Intel Graph Analytics operation has been using the GraphBuilder library of tools in multiple projects analyzing large scale graph data, and recently an alpha version of the toolkit has had an open source release in Pig. GraphBuilder occupies the boundary between non-graph and graph processing: Raw data comes in from text files, big tables, etc, non-graph transformations are performed in Pig, then rules are specified to construct the graph from raw data, and finally the graph is stored in a graph database, such as Titan, or in a standard graph format, such as RDF.&lt;/p&gt;

&lt;p&gt;Where'd you get that big old graph?&lt;/p&gt;</description>
        <persons>
          <person id="2151">Nathan Segerlind</person>
        </persons>
        <links>
          <link href="http://www.mlconf.com/mlconf-2013/mlconf-2013-agenda/ted-willke/">Ted Willke's MLConf 2013 talk</link>
          <link href="http://">http://</link>
        </links>
      </event>
      <event id="1771">
        <start>09:45</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_structr</slug>
        <title>From 0 to a complex webapp in 30 minutes </title>
        <subtitle>Let's create a complex, graph-based webapp, live, within 30 min, with input from the audience only</subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;With the help of the audience, I'll try to create a complex webapp within 30 minutes.
Complex in the sense of: Custom use case (unprepared, told by audience), custom JSON/REST backend, beautiful HTML5/CSS3 template, dynamic data, user interaction, Twitter/FB connect).
Everything we need is the Open Source framework Structr, on top of the graph database Neo4j.
This will be very interactive, and even fun if it works. ;-)&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1172">Axel  Morgner</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H1308_Rolin/Sunday/From_0_to_a_complex_webapp_in_30_minutes.webm">Video</link>
        </links>
      </event>
      <event id="2184">
        <start>10:15</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_graphhopper</slug>
        <title>Fast and Memory Efficient Road Routing with GraphHopper</title>
        <subtitle>Solving spatial problems with Graphs and OpenStreetMap</subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;GraphHopper is a fast Open Source road routing engine written in Java running on the server as well as on Android. It uses OpenStreetMap as data source and implements road routing via Dijkstra algorithm and variations. In this talk I'll describe the challenges faced while implementing fast and memory efficient graph algorithms and storage solutions.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;GraphHopper is a fast Open Source road routing engine written in Java. It uses OpenStreetMap as data source and implements road routing via Dijkstra algorithm and variations. To make shortest-path calculations in under 50ms possible - even for paths of continental length - GraphHopper uses a special "shortcut-technique".&lt;/p&gt;

&lt;p&gt;In this talk I'll give you a brief summary of the internal graph representation and how to scale this to gigabytes of memory and still make it running on Android. Including a short overview of Dijkstra, the memory efficient graph traversal API and how to map the real, geographical world with GPS coordinates and roads into a mathematical graph representation with edges and nodes.&lt;/p&gt;</description>
        <persons>
          <person id="2022">Peter Karich</person>
        </persons>
        <links>
          <link href="http://graphhopper.com/">GraphHopper</link>
        </links>
      </event>
      <event id="2098">
        <start>10:45</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_ldbc</slug>
        <title>The LDBC Social Graph Data Generator</title>
        <subtitle>Graph Query Benchmarking to the next level</subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The Linked Data Benchmark Council (LDBC) is an initiative to develop industry-grade database benchmarks. This talk focuses on the activities of its Social Network Benchmark (SNB) task force of LDBC, which developed an advanced graph generator during past year which creates a huge social graph with realistic correlations between structure and data. The datasets it generates will be tested by three different workloads (interactive, BI, graph anatytics), that I will shortly outline.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;talk will cover:
- mission of LDBC in general and the social network benchmark task force in specific
- the LDBC social network graph generator;
  * schema, data examples
  * how it generates correlated data
  * technical information
- benchmarks that use it:
  * interactive workload: many small graph queries and updates
  * business intelligence workloads: grouping, counting, subqueries and graph navigation
  * graph analytics: algorithms (not queries) that analyze graphs (e.g. clustering, pagerank, etc)&lt;/p&gt;</description>
        <persons>
          <person id="1957">Peter Boncz</person>
        </persons>
        <links>
          <link href="http://www.ldbc.eu">general LDBC project website</link>
        </links>
      </event>
      <event id="2159">
        <start>11:15</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_giraph</slug>
        <title>Giraph: two years later</title>
        <subtitle>The new Giraph APIs for Python, Rexster and Gora.</subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Since its initial incubation, Giraph has turned into a different beast. It is now a solid, full-featured tool used in production at many companies that need
to analyse massive graphs. The success of a data analysis tool relies on the usability if its programming API and its ability to play well with the ecosystem of data stores.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this last year, much has been done in this aspects, with a new programming
API that allows composable jobs, and scripting support. You can now write
Giraph applications that will run over billion of vertices with 20 lines of
python code.&lt;/p&gt;

&lt;p&gt;Moreover, Giraph is now able to read and write graphs from any
Blueprints-compatible graph database. Furthermore, thanks to Gora, it can read
and write data modelled as graphs from a large set of NoSQL (even SQL!) stores.&lt;/p&gt;

&lt;p&gt;In this presentation, I will focus on these new contributions to Giraph,
namely its python API and the rexster and gora input formats.&lt;/p&gt;

&lt;p&gt;I will show samples or working code, and run a demo where I compute a graph
computation expressed in python over a graph stored in a graph database.&lt;/p&gt;</description>
        <persons>
          <person id="1939">Armando Miraglia</person>
        </persons>
        <links>
          <link href="http://giraph.apache.org/rexster.html">Rexster I/O</link>
        </links>
      </event>
      <event id="1966">
        <start>11:45</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_analyzebio4j</slug>
        <title>The Power of Graphs to Analyze Biological Data</title>
        <subtitle/>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will illustrate the power and flexibility of Graph Databases to help in the overall analysis of biological data sets. Davy will show how to build a visual exploration environment that helps researchers at identifying clusters within various biological data sets, including gene expression and mutation prevalence data. Additionally, he will demo BRAIN (Bio Relations and Intelligence Network), a powerful data exploration platform that combines various scientific data sources (including Pubmed, Swissprot and Drugbank). It uses a graph database under the cover to both store and enable powerful querying capabilities that provide key insights and deductions.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1166">Davy  Suvee</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2256">
        <start>12:15</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_bio4j_2</slug>
        <title>Bio4j: bigger, faster, leaner</title>
        <subtitle/>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Bio4j is a high-performance cloud-enabled graph-based bioinformatics data platform. It integrates most data available in UniProt KB (SwissProt + Trembl), Gene Ontology (GO), UniRef (50, 90, 100), RefSeq, NCBI taxonomy, and Expasy Enzyme DBs. Data is organized in a way semantically equivalent to what it represents in the graph structure, and thanks to this, queries which would even be impossible to perform with a standard Relational DB can just take a couple of seconds with Bio4j.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This year has seen important updates and new developments on Bio4j. It now includes 1.216.993.547 relationships and 190.625.351 nodes, almost triple the figures from one year ago. We have introduced a new level of abstraction for the domain model, by decoupling the inner database implementation from the relationships among entities themselves. Interfaces has been developed for each node and relationship present in the database, including methods to access both the properties of the entity it represents and utility methods that allow to easily navigate to the entities that will be linked to it.&lt;/p&gt;

&lt;p&gt;Implementing that set of interfaces we have developed another layer for the domain model using Blueprints, the de-facto graph data model standard, making the domain model independent from the choice of database technology. Building on that, we now offer specifically tuned data binary distributions for TitanDB, yielding a dramatic increase in performance due to vertex-local edge-typed indexes.&lt;/p&gt;

&lt;p&gt;Bio4j is open source, available under the AGPLv3 license.&lt;/p&gt;</description>
        <persons>
          <person id="2061">Pablo Pareja</person>
        </persons>
        <links>
          <link href="http://www.bio4j.com">Bio4j</link>
        </links>
      </event>
      <event id="2255">
        <start>12:45</start>
        <duration>00:15</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_bio4j_1</slug>
        <title>Bio4j + Statika</title>
        <subtitle>Managing module dependencies on the type level</subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Bio4j bioinformatics graph database is modular and customizable, allowing you to import just the data you are interested in. There exist, though, dependencies among these resources that must be taken into account and that's where Statika enters the picture; a set of Scala libraries which allows you to declare dependencies between components of any modular system and track their correctness using Scala type system. Thanks to this, it's possible now to deploy only selected components of the integrated data sets, with Amazon Web Services deployments on hardware specifically configured for them.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2194">Alexey Alekhin</person>
        </persons>
        <links>
          <link href="http://ohnosequences.com/statika/">Statika</link>
          <link href="http://www.bio4j.com">Bio4j </link>
        </links>
      </event>
      <event id="2204">
        <start>13:00</start>
        <duration>01:00</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_stardog</slug>
        <title>Semantic Graphs Are For Everyone</title>
        <subtitle>Stardog RDF Database </subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Stardog is an RDF database for querying, searching, and reasoning about semantic graphs.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Semantic Graphs Are For Everybody explains the approach to query answering, reasoning, integrity constraint validation, and graph analysis of RDF encoded semantic graphs. The talk will explain how we provide these services to users by focusing relentlessly on usability and UX out of the box. The goal of the system and of this talk is to show how semantic graphs are useful for information integration and analysis problems.&lt;/p&gt;</description>
        <persons>
          <person id="2033">Hector Perez-Urbina</person>
        </persons>
        <links>
          <link href="http://slid.es/kendallclark/stardog-20/fullscreen">Some background info</link>
        </links>
      </event>
      <event id="2198">
        <start>14:00</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_levelgraph</slug>
        <title>LevelGraph - a graph store for node.js and the browser!</title>
        <subtitle>#JIFSNIF - JavaScript is fun so node is funnier...</subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;https://github.com/mcollina/levelgraph&lt;/p&gt;

&lt;p&gt;I would like to publish similar interactive walk through for LevelGraph ASAP: http://nodeschool.io/#levelmeup and we could use it during hands on workshop!&lt;/p&gt;

&lt;p&gt;Currently it supports RDF through two extensions LevelGraph-N3 and LevelGraph-JSON-LD. We also plan work on LevelGraph-SPARQL&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2030">elf Pavlik</person>
        </persons>
        <links>
          <link href="http://http://nodeschool.io/#levelmeup">LevelDB interactive walkthrough</link>
          <link href="http://www.w3.org/community/rdfjs/">W3C: RDF JavaScript Libraries Community Group</link>
        </links>
      </event>
      <event id="2175">
        <start>14:30</start>
        <duration>00:45</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_neo4jnlp</slug>
        <title>Natural Language Processing with Neo4J</title>
        <subtitle/>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Recent natural language processing advancements have propelled search engine and information retrieval innovations into the public spotlight. People want to be able to interact with their devices in a natural way. In this talk I will be introducing you to natural language search using a Neo4j graph database. I will show you how to interact with an abstract graph data structure using natural language and how this approach is key to future innovations in the way we interact with our devices.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2014">Kenny Bastani</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2222">
        <start>15:15</start>
        <duration>00:45</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_graphgist</slug>
        <title>Graphgists - live graph documentation on steroids.</title>
        <subtitle/>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk, Peter will describe the implementation and working of http://gist.neo4j.org. It is based on ASCIIDOC, Opal.js, Heroku and Neo4j and rendered all client side. Also, Peter will show some of the examples community members have been contributing - everything from Chess play graphs to product configurations.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1622">Peter Neubauer</person>
        </persons>
        <links>
          <link href="http://gist.neo4j.org">Graphgists</link>
        </links>
      </event>
      <event id="2201">
        <start>16:00</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_graphsearch</slug>
        <title>Graph Search</title>
        <subtitle/>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Facebook Graph Search has given the Graph Database community a simpler way to explain what it is we do and why it matters. Max will show you how easy it is to build your own Graph Search... and for the truly lazy, a second way to perform graph search with just mouse clicks using the connectedness of the data and a little metadata magic to build a multi-term search bar.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Facebook Graph Search has given the Graph Database community a simpler way to explain what it is we do and why it matters. Max will show you how easy is to build your own Graph Search... and for the truly lazy, a second way to perform graph search with just mouse clicks using the connectedness of the data and a little metadata magic to build a multi term search bar.  I'll also touch on the dangers and privacy issues of this data.  Some folks gave me their 4000 facebook likes, I know everything about them and so does the rest of the world.  You may keep your information quiet, but your friends curiosity may just betray you.... and it gets scarier.... while I can only retrieve data from your 300 or so facebook friends, I can get the data of the first 500 people you or any of your friends are in.  That's thousands of profile data from a single facebook token.  "The only winning move is not to play" with your privacy.&lt;/p&gt;</description>
        <persons>
          <person id="760">Max De Marzi</person>
        </persons>
        <links>
          <link href="http://maxdemarzi.com/2013/01/28/facebook-graph-search-with-cypher-and-neo4j/">Facebook Graph Search</link>
          <link href="http://maxdemarzi.com/2013/07/03/the-last-mile/">Visual Graph Search</link>
        </links>
      </event>
      <event id="2100">
        <start>16:30</start>
        <duration>00:30</duration>
        <room>H.1308 (Rolin)</room>
        <slug>graphdevroom_arangodb</slug>
        <title>Visualize your Graph Database</title>
        <subtitle>Techniques to view, explore and modify your graph data with ArangoDB</subtitle>
        <track>Graph processing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;If you are using a graph database you might want to get a visual representation of your data.
In this talk I will present a visualization tool build on top of the Open Source Database ArangoDB.
This tool allows a user to explore the graph by visually traversing through it.
I will also present some challenges of graph visualization and my solutions for them.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In the NoSQL world a type of databases has emerged which is called graph database.
These databases allow you to store data in a graph format (like social networks) natively and query it efficiently.
But how can we visualize the data?
Typically the resulting graph is too large to be displayed as a whole, but a local view on specific vertex is often useful.
The user should be able to continue exploring the graph from this starting point.
As we are talking about a graph database the user should be able to modify the graph during this process.&lt;/p&gt;

&lt;p&gt;In this talk we will see strategies to layout the graph in the process above.
Further more we will see limitations of such visualisation and I will present my solutions to these limitations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;grouping of vertices&lt;/li&gt;
&lt;li&gt;zooming strategies&lt;/li&gt;
&lt;li&gt;&lt;p&gt;layout optimization
Technologies presented in this talk:&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;d3.js: Library to render the graph and for the layout algorithm&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;ArangoDB: The underlying graph database&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1794">Michael Hackstein</person>
        </persons>
        <links>
          <link href="https://www.arangodb.org/2013/11/29/visualize-graphs-screencast">Screencast</link>
          <link href="http://d3js.org">D3.js A javascript graph library</link>
          <link href="http://www.arangodb.org">ArangoDB Homepage</link>
        </links>
      </event>
    </room>
    <room name="H.1309 (Van Rijn)">
      <event id="1709">
        <start>09:00</start>
        <duration>00:20</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>autodevroomintro</slug>
        <title>Automotive Development devroom</title>
        <subtitle>Quick introduction to the automotive devroom at FOSDEM</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A quick overview of the state of Open Source Automotive software.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;There are a number of initiatives around Open Source automotive software. In this short introduction we will take a look at them and the projects which are part of them. The Automotive devroom will also dig deeper into a number of areas: In-vehicle Infotainment, autonomous driving, automotive networks, and graphical interfaces in both "native" and HTML 5.&lt;/p&gt;</description>
        <persons>
          <person id="1046">Jeremiah C. Foster</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1822">
        <start>09:25</start>
        <duration>00:35</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>mediatrackerivi</slug>
        <title>Media wrangling in the car with GENIVI requirements</title>
        <subtitle>Collecting all your music in one place</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Having all your media available in the car is the Holy Grail for carmakers. Unifying playlists, quick access to Internet radio, AM/FM, and traffic information is a complex task. This talk will discuss the currently available ways to index media in the car providing one of the pieces of the complex puzzle.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Indexing media can be CPU and memory intensive, so what are the best strategies? What tools can be reused to get from to here to there more quickly? What is the vision of car makers, what are they looking for. We'll try and address those questions and provide some room for discussion on the best path forward.&lt;/p&gt;</description>
        <persons>
          <person id="2189">Jonatan Palsson</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2119">
        <start>10:00</start>
        <duration>00:40</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>reautonomocar</slug>
        <title>Research on an Open-Source Software Platform for Autonomous Driving Systems</title>
        <subtitle>Open Source platform for autonomous driving</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The next larger step in automotive development will be towards autonomously driving cars. Autonomous driving is a highly complex and safety-related function in future vehicles, and current software platforms are not adequate for this function. We present our ongoing research on an open-source software platform for autonomous driving software systems.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;From our experience with use cases of existing driver assistance systems and research projects, we derive requirements on the software platform. We show the advantages of open-source development over proprietary development and provide arguments for an open-source qualified (open-proof) software platform. Furthermore, we propose an architecture for the software platform based on the Linux operating system and other open-source software. This architecture fulfills the requirements and makes development and qualification of such systems efficient.&lt;/p&gt;</description>
        <persons>
          <person id="1984">Lukas Bulwahn</person>
        </persons>
        <links>
          <link href="http://www.bmw-carit.com/downloads/publications/ResearchOnAnOpenSourceSoftwarePlatformForAutonomousDrivingSystems.pdf">Link to Paper: Research on an Open-Source Software Platform for Autonomous Driving Systems</link>
        </links>
      </event>
      <event id="2018">
        <start>10:45</start>
        <duration>00:50</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>franca</slug>
        <title>Building automotive HTML 5 UIs with Franca</title>
        <subtitle>Franca is proposed as an official project of the Eclipse Foundation</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Franca is an open source framework for definition and transformation of software interfaces. It is especially useful for integrating software components e.g. in the context of the GENIVI Automotive/Infotainment platform.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this presentation, we will show how Franca helps in building HTML5 user interfaces. From Franca interface definitions, code is generated which connects the JavaScript client to the underlying server application via Websockets. Franca has been proposed as an official Eclipse project (http://www.eclipse.org/proposals/modeling.franca).&lt;/p&gt;</description>
        <persons>
          <person id="2095">Klaus Birken</person>
        </persons>
        <links>
          <link href="https://code.google.com/a/eclipselabs.org/p/franca/wiki/BuildingHTML5UIsWithFranca">Building HTML5 UIs with Franca</link>
        </links>
      </event>
      <event id="2009">
        <start>11:45</start>
        <duration>00:40</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>virtarmauto</slug>
        <title>Xen on ARM</title>
        <subtitle>Virtualization for the Automotive industry</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;During the last few months of 2011 the Xen Community started an effort to port Xen to ARMv7 with virtualization extensions, using the Cortex A15 processor as reference platform.&lt;/p&gt;

&lt;p&gt;The new Xen port is exploiting this set of hardware capabilities to run guest VMs in the most efficient way possible while keeping the ARM specific changes to the hypervisor and the Linux kernel to a minimum.
Developing the new port we took the chance to remove legacy concepts like PV or HVM guests and only support a single kind of guests that is comparable to "PVH" in the Xen X86 world.&lt;/p&gt;

&lt;p&gt;Linux 3.7 was the first kernel release to run Xen on ARM as Dom0 and DomU. Xen 4.3, out in July 2013, is the first hypervisor release to support ARMv7 with virtualization extensions and ARMv8.&lt;/p&gt;

&lt;p&gt;This talk will explain why ARM virtualization is set to be increasingly relevant for the automotive industry in the coming years.  We will go on to describe how Xen exploits the strengths of the hardware to meet the requirements of the industry.  We will illustrate the early design choices and we will evaluate whether they were proven successful or a failure.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The goals of the talk are to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;describe the Xen architecture&lt;/li&gt;
&lt;li&gt;explain how Xen on ARM is different from Xen on x86&lt;/li&gt;
&lt;li&gt;&lt;p&gt;provide a status update of the project&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;explain what are the benefits of virtualization for the automotive industry&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;explain what Xen provides for this use case that other hypervisors do not&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1892">Stefano Stabellini</person>
        </persons>
        <links>
          <link href="http://">http://</link>
        </links>
      </event>
      <event id="2153">
        <start>12:30</start>
        <duration>00:40</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>conncarfoss</slug>
        <title>The Connected Car and FOSS</title>
        <subtitle>How does the modern connected car use and interact with FOSS?</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;How do modern connected cars use and interact with FOSS?  How can an industry adopt the best practices from Open Source and Free Software? Its more than just using Linux and incorporating environments like Android, you have to engage communities. How do you as a developer engage?&lt;/p&gt;

&lt;p&gt;This talk will describe how you can engage with various initiatives in the industry. We'll also describe the landscape of various collaboration projects and alliances to help negotiate a rapidly changing ecosystem.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In the Big Picture, FOSS has had a huge impact. This talk will describe the strategic landscape of the various alliances and projects that allow individual developers to connect to the vehicle.   We'll also look at the specific technologies and protocols that are being brought forward in the open that are concrete examples of how they bridge the two communities (FOSS and automotive.) Topics like Ethernet Audio Video Bridging (EAVB), Android for In-Vehicle Infotainment, Qt, Wayland, and others will be addressed to show an example of FOSS' impact on vehicles.&lt;/p&gt;</description>
        <persons>
          <person id="2179">Mikael Söderberg</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2325">
        <start>13:15</start>
        <duration>00:25</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>ividlnaygeldleyna</slug>
        <title>In-vehicle DLNA with Rygel and dLeyna</title>
        <subtitle/>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In-vehicle media systems are going to be increasingly connected with other devices and media sources, that much seems certain. This could just mean integrating services like Spotify into the system or it could mean delegating actual media handling to personal devices and using the vehicle media system as just a dumb output device... but it could also mean car entertainment systems that use DLNA to interoperate with other media devices to give users all the media they want on whatever device they want.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk provides an overview of what DLNA can be used for in a car environment; it also tries to define what actually makes sense in that context. Rygel and dLeyna (as deployed in Tizen IVI) are used to show a practical example of this. The relevant features and requirements of Rygel and dLeyna are explained. More importantly, there will be discussion on what is required when integrating these stacks with different media players, media engines, media storages, and content security systems.&lt;/p&gt;

&lt;p&gt;https://wiki.gnome.org/action/show/Projects/Rygel
https://01.org/dleyna/&lt;/p&gt;</description>
        <persons>
          <person id="2093">Jussi Kukkonen</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2378">
        <start>13:45</start>
        <duration>00:45</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>connmancar</slug>
        <title>Managing the Car Cloud connection</title>
        <subtitle>ConnMan, systemd, and the Internet</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Modern vehicle infotainment systems depend on Internet connections, but there are different use cases and expectations from the driver. We'll dive into the topic of managing internet connections in the car.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In a car it is impractical to ask the user to determine when an Internet connection should be established and when it should be torn down. This talk will describe best practices of handling Internet connections in a car on an embedded Linux system effectively.&lt;/p&gt;

&lt;p&gt;In this presentation Daniel Wagner will give a short introduction to the topic, show use cases, and then present how it has been addressed with ConnMan. Furthermore, Daniel  will give an overview with the current activities in networking in systemd and how they relate to ConnMan.&lt;/p&gt;</description>
        <persons>
          <person id="2144">Daniel Wagner</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1960">
        <start>14:35</start>
        <duration>00:35</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>fuelstopadviser</slug>
        <title>Fuel Stop Advisor: the GENIVI LBS APIs into action</title>
        <subtitle>Current status of the Fuel Stop Advisor project</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Fuel Stop Advisor (FSA) is software based on GENIVI APIs that gives a predictive evaluation of the tank distance on the route ahead and, if needed, propose to reroute to an available and reachable refill station. The navigation engine of the FSA is powered by Navit.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Modern cars, whether electric or otherwise, all require fuel. Beyond merely determining fuel consumption, the Fuel Stop Advisor helps the driver determine when they may need to refuel. This software helps drivers with planning, navigating, and calculating their fuel usage so that they don't run out of fuel and can plan accordingly when low.&lt;/p&gt;</description>
        <persons>
          <person id="2143">Philippe Colliot</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2317">
        <start>15:15</start>
        <duration>00:40</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>tizen3appframework</slug>
        <title>Tizen 3 Application Framework</title>
        <subtitle>A multi User App Framework for IVI</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Embedded system such as those used in Automotive, TV, or phones did not need to offer multi user support until recently.
With the increasing of personalisation and security requirement, offering single user model, in particular for Automotive, is not any more acceptable.
Tizen 3 new Application Framework, which is currently under developement at Tizen.org, introduces a new model which aims at solving those issues.
This talk explains how.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Traditional login and application launch process used on Linux PCs does not fit well with Automotive use cases.
A new multi user model is currently Under development in the Open at Tizen.org.&lt;/p&gt;

&lt;p&gt;We will see how the new Tizen Multi User Application Framework introduces a separation between the screen for the connected user while offering Application sandboxing.
We will explain how the model can support guest users, enabling key generic applications to be started before any user login, making them available in a few seconds.
We will also clarify what model is offered for Application Sandboxing by default and how it can be expanded to support more security demanding requirements.&lt;/p&gt;

&lt;p&gt;We will conclude by explaining what the current state of the codebase is and clarify how to join the project for those interested.&lt;/p&gt;</description>
        <persons>
          <person id="1783">Dominig ar Foll</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2318">
        <start>16:00</start>
        <duration>00:30</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>scratchtiz</slug>
        <title>Tizen IVI "from scratch": customizing, building and testing </title>
        <subtitle>Setting up your own build system to mirror Tizen IVI and automate tests for your own requirements.</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Currently, Tizen images are built with infrastructure on tizen.org.
But if someone wants to customize the distro for their own requirements (specific device, pre-installed applications...), a way to do this is to setup a private build infrastructure.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this talk, we’ll explain a method to rebuild Tizen from sources and achieve specific customizations and automate tests. The proposed infrastructure can be used during the development phase and later on for middle to long term support.&lt;/p&gt;

&lt;p&gt;The following topics will be detailed:
- general build workflow in Tizen
- requirements for setting up a private build infrastructure
- setup
- build packages from source
- publish packages in repositories
- build custom Tizen images
- install and test images; manually or automatically&lt;/p&gt;</description>
        <persons>
          <person id="1782">Stéphane Desneux</person>
        </persons>
        <links>
          <link href="https://wiki.tizen.org/wiki/User:Sdx">Tizen Wiki Personal Page</link>
        </links>
      </event>
      <event id="2406">
        <start>16:35</start>
        <duration>00:30</duration>
        <room>H.1309 (Van Rijn)</room>
        <slug>nfccar</slug>
        <title>NFC and the Vehicle</title>
        <subtitle>Testing the linux NFC stack</subtitle>
        <track>Automotive development</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The use cases for NFC in modern vehicles are growing with the number of NFC-enabled smartphones. Establishing a Wi-Fi or Bluetooth connection or opening the car by simply touching it with your smartphone are just two examples.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;To support advanced use cases Linux currently offers a solid NFC stack: neard. However, thorough testing will be crucial to enable this stack for use inside a car.&lt;/p&gt;

&lt;p&gt;In this talk Timo Mueller will give a brief overview about the NFC functionality that is currently supported and the testing mechanisms that are available. Furthermore, Timo will talk about the idea of using a virtual NFC adapter to allow testing of the complete stack in a controlled environment without the need for actual hardware.&lt;/p&gt;</description>
        <persons>
          <person id="2157">Timo Müller</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="H.2213">
      <event id="1947">
        <start>09:00</start>
        <duration>00:25</duration>
        <room>H.2213</room>
        <slug>ip_risks</slug>
        <title>IP risks for OSS developers</title>
        <subtitle>How to protect yourself against IP infringements by other developers in an open source project?</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Open source software developers, just like any other developers, have to be aware of the legal liability they can incur.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The topic of this talk is the infringement liability of contributors in open source projects. Typical for open source projects is that they contain multiple (more or less anonymous) contributions by multiple developers. Since the regulation on patent and copyright protection applies also in case of open source software development, co-authors in the project should take care that the re-use of pieces of code does not infringe intellectual property rights of third parties.&lt;/p&gt;

&lt;p&gt;The proposed talk aims to address two pertinent questions in this regard:
-   Can co-authors, contributing to an open source project, be held liable for the wrongful re-use of code by other co-authors, contributing to the project?
-   If so, which legal mechanisms could be used to protect good faith OSS developers against such liability?&lt;/p&gt;

&lt;p&gt;This research is funded by the EU FP7 Framework Programme under grant agreement No. 318508 (MUSES).&lt;/p&gt;</description>
        <persons>
          <person id="1817">Yung Shin Van Der Sype</person>
          <person id="2067">Soo Mee Provoost</person>
        </persons>
        <links>
          <link href="https://www.musesproject.eu/">MUSES project</link>
          <link href="http://www.law.kuleuven.be/icri/">ICRI - KU Leuven</link>
          <link href="http://video.fosdem.org/2014/H2213/Sunday/IP_risks_for_OSS_developers.webm">Video</link>
        </links>
      </event>
      <event id="2036">
        <start>09:30</start>
        <duration>00:25</duration>
        <room>H.2213</room>
        <slug>sisyphus</slug>
        <title>Sisyphus is Happy</title>
        <subtitle>Fighting for Software Legal Compliance</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Nowadays software is usually a combination of own-written code and FOSS; in some cases it also contains parts licensed under non-FOSS licenses. FOSS licenses stipulate different obligations and, in order to be legally compliant, one has to abide by the obligations of every license.&lt;/p&gt;

&lt;p&gt;This talk will present lessons learned while building a corporate compliance system that is sensitive to the needs of developers while still pleasing the lawyers.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will present lessons learned while trying to ensure legal compliance in a large company. It will touch upon different aspects of the set of processes and mechanisms used. Such mechanisms exist to provide answers to questions such as:
- how can FOSS be used?
- how can FOSS be integrated? and
- how can FOSS be released?&lt;/p&gt;

&lt;p&gt;It is obvious that the task of legal compliance involves developers as well as people from legal professions; therefore an important part of structuring any system or set of processes has to be the satisfaction of both these groups of users. More specifically, legal people should neither become overwhelmed by their tasks, nor end up being the bottleneck of the whole workflow. On the other hand, software development should be disrupted as little as possible, since this is usually the main business.&lt;/p&gt;

&lt;p&gt;It is hoped that such practices can greatly help everyone facing this inherently difficult and potentially risky issue. Moreover, such practices can facilitate the use of FOSS in a commercial environment.&lt;/p&gt;</description>
        <persons>
          <person id="1286">Alexios Zavras</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Sunday/Sisyphus_is_Happy.webm">Video</link>
        </links>
      </event>
      <event id="1756">
        <start>10:00</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>spdx</slug>
        <title>Licensing and Packaging FOSS with SPDX </title>
        <subtitle>Learning to combine and distribute software with open source licenses</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;As developers of open source and free software, we share our code freely, we make a positive change on this world. However, too often great pieces of open source software are declined for integration inside amazing projects. Aren't they good enough? From a technical perspective, yes. But when you don't express clearly which licenses and third-party resources were used (images, libraries, code) then these "unknown libraries" become too much a risk to bear.&lt;/p&gt;

&lt;p&gt;Are we doing the right things in regards to licensing? Come and join our talk to find out.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;We'd like to change that, ensure that licensing terms are not a burden to explain. Some developers use a web page, others Maven and mature projects include source code headers. Yet, we need a consistency, we need a way to check and revise if the licensing attributions are correct or not. The SPDX document from the Linux Foundation helps to make this possible. Anyone with a text editor can double-check which licensing terms are applicable, where the third party resources come from and solve the exposed issues.&lt;/p&gt;

&lt;p&gt;The Linux Foundation promotes a document format for exchanging open source licensing information. It is called SPDX. The basic principle is that you should be able of describing the applicable license terms for your software, for the libraries that you are using and give the licensing details that are needed for sharing your work. In return, people receiving your software can either read for themselves what licenses are applicable or use tools that help get this sorted across thousands of files.&lt;/p&gt;

&lt;p&gt;It is not a complicated document to understand, it is a plain text file. On our talk we discuss the specific cases where SPDX documents make a difference to bring transparency and the techniques/tools that are used for creating them. We cover cases of mixing multiple libraries and what you should take into attention when placing these libraries inside your own software.&lt;/p&gt;

&lt;p&gt;This is an intense lecture, bring a camera to take quick pics of the slides that you find interesting and a laptop to test your licensing investigation skills right there in the class room.&lt;/p&gt;</description>
        <persons>
          <person id="1656">Nuno Brito</person>
        </persons>
        <links>
          <link href="http://spdx.org">The official page for SPDX</link>
          <link href="http://triplecheck.de">Open source compliance @ TripleCheck</link>
          <link href="http://video.fosdem.org/2014/H2213/Sunday/Licensing_and_Packaging_FOSS_with_SPDX.webm">Video</link>
        </links>
      </event>
      <event id="1674">
        <start>11:00</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>futurecopyleft</slug>
        <title>Considering the Future of Copyleft</title>
        <subtitle>How Will The Next Generation Perceive GPL?</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Copyleft licenses, particularly the GPL and LGPL, are widely used throughout the Free Software community.  Over the last few years, recent debates have led many to various conclusions about the popularity of copyleft.  This talk will discuss where copyleft stands today, how it interacts with the modern Free Software world, and how copyleft advocates may need to adapt to the future of Free Software licensing.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Copyleft licenses, particularly the GPL and LGPL, are widely used
throughout the Free Software community.  However, recent for-profit
corporate interest in Free Software development has led to a renewed
preference toward non-copyleft licensing by for-profit entities.
Meanwhile, many for-profit entities that do use copyleft for their own
software now do so in a manner that most copyleft aficionados find, at
best, distasteful and at worst, abusive.&lt;/p&gt;

&lt;p&gt;A long-standing truce exists in our community between fans of non-copyleft
licensing and copyleft.  No one in the copyleft communities disputes that
non-copylefted Free Software is an important part of our community.
However, copyleft faces new challenges that make past debates about the
appropriateness of copyleft seem quite minor by comparison.&lt;/p&gt;

&lt;p&gt;This talk will discuss all aspects of the complicated situation facing
copyleft, including younger developers apparent preference for
non-copyleft licensing (as expressed, in part,
&lt;a href="http://en.wikipedia.org/wiki/Post_Open_Source"&gt;in the "post-open source" debates&lt;/a&gt;),
the widespread and common failures for companies to comply with
GPL's relatively easy requirements, and how licensing choices are today,
unlike in the past, rarely in the hands of individual developers, but
instead their corporate employers.&lt;/p&gt;</description>
        <persons>
          <person id="441">Bradley M. Kuhn</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Sunday/Considering_the_Future_of_Copyleft.webm">Video</link>
        </links>
      </event>
      <event id="1791">
        <start>12:00</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>radical_community_angle</slug>
        <title>Legal issues from a radical community angle</title>
        <subtitle/>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Throughout its 20-year history, Debian had to face a number of legal issues, in all fields of the so (improperly) called "Intellectual Property". From trademarks to patents, from copyright to export control and embargoes, Debian didn't miss a single pesky issue. In this talk we review some of the most relevant legal issues that Debian has faced in recent years and how the project has responded to them. Doing so is a chance not only to share legal best practices with other Free Software communities, but also to highlight the policy annoyances that widespread legal systems imposes on radical Free Software communities such as Debian.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="66">Stefano Zacchiroli</person>
        </persons>
        <links>
          <link href="https://lwn.net/Articles/546411/">LWN review of a previous (and shorter) version of this talk</link>
          <link href="http://video.fosdem.org/2014/H2213/Sunday/Legal_issues_from_a_radical_community_angle.webm">Video</link>
        </links>
      </event>
      <event id="2052">
        <start>14:00</start>
        <duration>01:00</duration>
        <room>H.2213</room>
        <slug>licensecompat</slug>
        <title>Taking license compatibility semi-seriously</title>
        <subtitle/>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk critiques what passes for orthodox license compatibility doctrine and suggests ways of adjusting how we interpret licenses (and therefore how we think about compatibility) to reconcile formalist notions of incompatibility with actual behavior by FLOSS community developers.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;License compatibility is generally understood to refer to the problem
of creating combined works out of code under different, clashing FLOSS
licenses. Usually, it is seen as an issue only if at least one of the
licenses in question is copyleft.&lt;/p&gt;

&lt;p&gt;A surprising amount of intellectual energy among members of free software
and free culture communities has been devoted to dealing with the
issue of license compatibility. The same can be said of open source legal
specialists associated with the more sophisticated corporate open source
vendors, as well as companies in the business of selling tools and services
to aid corporate management of open source. In general, incompatibility seems
to be spoken of as a significant compliance issue. But critical analysis of
the legal assumptions underlying received wisdom about license compatibility
seems to be oddly absent. Moreover, and ironically, much of that
received wisdom seems to bear little relation to actual conduct by free
software developers.&lt;/p&gt;

&lt;p&gt;This talk attempts to make some sense out of the topic of license
compatibility, noting where it makes sense and where it seems to lack
sufficient rational underpinning. I propose ways of adjusting how we
think about copyleft license interpretation to place license
compatibility doctrine on more solid ground and in line with the realities
of free software development.&lt;/p&gt;</description>
        <persons>
          <person id="583">Richard Fontana</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Sunday/Taking_license_compatibility_semiseriously.webm">Video</link>
        </links>
      </event>
      <event id="2064">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>H.2213</room>
        <slug>trademark_licenses</slug>
        <title>Why Licenses Requiring Use of Trademarks are Non-Free</title>
        <subtitle/>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Why "badgeware" or other licenses that require use of a trademark are non-free licenses under both the Four Freedoms and the Open Source Definition.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;There is an understandable desire for credit for creating open source projects. This generally manifests as a requirement that attribution in code may not be removed. Occasionally this desire manifests as imposing a duty to display or retain a trademark in modifications. The OSI-approved Common Public Attribution License Version 1.0 includes a provision like this, as does the FSF-approved Yahoo! Public License Version 1.1. There are still efforts to include these types of provisions, for example, the Beanbooks Public License is another attempt.&lt;/p&gt;

&lt;p&gt;This appears to arise because there was an over-expansive interpretation of "attribution" to include "trademark." The talk will discuss the qualitative differences between the two and argue that license that require the use of trademarks are not free licenses under either the Four Freedoms or the Open Source Definition.&lt;/p&gt;</description>
        <persons>
          <person id="1245">Pamela Chestek</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Sunday/Why_Licenses_Requiring_Use_of_Trademarks_are_NonFree.webm">Video</link>
        </links>
      </event>
      <event id="2284">
        <start>16:00</start>
        <duration>00:25</duration>
        <room>H.2213</room>
        <slug>licensing_models</slug>
        <title>Licensing Models and Building an Open Source Community</title>
        <subtitle/>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Do you need a copyleft license to build a community?  Answering this ten years ago, the answer may have been yes, primarily driven by the contractual obligation to contribute back to the project.  However, looking at the question now, open source has grown such that a vibrant, active community may be built with a permissive licensing model.  Come hear some thoughts about how licensing models affect building an open source community and how their use has evolved over time.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1246">Eileen Evans</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/H2213/Sunday/Licensing_Models_and_Building_an_Open_Source_Community.webm">Video</link>
        </links>
      </event>
      <event id="1852">
        <start>16:30</start>
        <duration>00:25</duration>
        <room>H.2213</room>
        <slug>eu_research_funding</slug>
        <title>EU research funding - Horizon 2020 and Free Software</title>
        <subtitle>How to apply for funding, legal implications and required project organization</subtitle>
        <track>Legal and policy issues</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk introduces EU research funding for Free Software.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The new EU research funding scheme "Horizon 2020" starts in 2014.  For
the first time research groups can choose open access licenses for all
project results.  This allows Free Software and research projects to
explicitly set "open intellectual property" rules and require
publication of all outcomes from EU funding.&lt;/p&gt;

&lt;p&gt;This talk&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;shows how to apply for Horizon 2020 funding&lt;/li&gt;
&lt;li&gt;shows how to position Free Software within an EU research project&lt;/li&gt;
&lt;li&gt;highlights prospective funding areas for Free Software&lt;/li&gt;
&lt;li&gt;explains the required project organization / legal status to get
funding&lt;/li&gt;
&lt;li&gt;gives an informal impression on what to expect from a project
submission&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1751">Marc Hoffmann</person>
        </persons>
        <links>
          <link href="http://horizonbook.eu">Horizonbook</link>
          <link href="http://h-rd.org">H-RD</link>
          <link href="http://h-rd.org/publications/fosdem2014/fosdem-horizon.html">slides of talk</link>
          <link href="http://video.fosdem.org/2014/H2213/Sunday/EU_research_funding_Horizon_2020_and_Free_Software.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="H.2214">
      <event id="1717">
        <start>09:00</start>
        <duration>00:05</duration>
        <room>H.2214</room>
        <slug>00_uk_welcome</slug>
        <title>Welcoming and Introduction</title>
        <subtitle/>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A short introduction of the hosts of the devroom and some warm words.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="608">Julian Stecklina</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1988">
        <start>09:05</start>
        <duration>00:45</duration>
        <room>H.2214</room>
        <slug>01_uk_rump_kernels</slug>
        <title>Rump Kernels, Just Components</title>
        <subtitle/>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The talk will concentrate more on anecdotes from the "drivers first" development approach.  Technical details for how rump kernels work will be provided as links.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Rump kernels are NetBSD kernel drivers running on top of a set of high-level hypercalls.  The term "drivers" is used in the broad sense, and includes for example file system, TCP/IP and system call drivers.  The hypercall interface makes virtually no assumptions about the host, apart from it being able to execute code and access I/O functions required by the drivers (e.g. NIC-like devices for the networking stack).  The original motivation for rump kernels was being able to debug NetBSD kernel drivers in a nice, non-monolithic kernel environment (i.e. userspace processes).  This motivation dictated that drivers running in the non-monolithic environment had to be unmodified with respect to the NetBSD kernel version under the hammer.  The implication was that instead of modifying drivers to work in userspace, NetBSD was modified to allow the drivers to run anywhere.  The result of work begun in 2007 is that NetBSD kernel drivers from any snapshot or release of NetBSD now run more or less anywhere: in userspace on most operating systems, in a web browser, on top of the Xen hypervisor, or in the Linux kernel.  The only component required for running NetBSD kernel drivers in a given environment is the rump kernel hypercall implementation.  This implementation generally speaking 1000 lines of code (figure includes comments and whitespace and rudimentary I/O access routines).&lt;/p&gt;</description>
        <persons>
          <person id="1033">Antti Kantee</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1974">
        <start>09:55</start>
        <duration>00:45</duration>
        <room>H.2214</room>
        <slug>02_uk_genode_as_gp_os</slug>
        <title>Genode as general-purpose OS - progress report and demonstration</title>
        <subtitle/>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The Genode OS project started 2006 as tool kit for building microkernel-based special-purpose operating systems. Over the course of the past years, it has grown to a state where it becomes feasible to be used as general-purpose OS for daily computing needs. This talk will present the many challenges that we faced on our way during the past year.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The topics range from making microkernels such as NOVA fit for highly dynamic workloads, over the creation of low-level OS infrastructure and the porting of existing software stacks, to the question of how the user interacts with a system that that largely deviates from the classical path of Unix-like OSes. In the line of the presentations of the past years, the talk will be garnished with various demonstrations.&lt;/p&gt;</description>
        <persons>
          <person id="607">Norman Feske</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2016">
        <start>10:45</start>
        <duration>00:45</duration>
        <room>H.2214</room>
        <slug>03_uk_helenos</slug>
        <title>HelenOS annual update</title>
        <subtitle/>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this presentation, I will briefly talk about the developments that have taken place within the HelenOS project since the last FOSDEM. Codewise, I will mention both the new interesting features already merged into the HelenOS mainline repository and a selection of not yet merged ones. This includes features from a variety of areas such as networking, file systems, platforms, audio, testing, and others. In addition, I would like to utter a word or two about our participation in the Summer of Code in Space program during 2013.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="604">Jakub Jermář</person>
        </persons>
        <links>
          <link href="http://www.helenos.org">HelenOS homepage</link>
        </links>
      </event>
      <event id="2017">
        <start>11:35</start>
        <duration>00:45</duration>
        <room>H.2214</room>
        <slug>04_uk_escape</slug>
        <title>The microkernel OS Escape</title>
        <subtitle/>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In the talk I'll give an overview about Escape and explain the most important concepts. Especially, I'll present the virtual file system that the kernel provides and that is among others used for getting access to drivers.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Escape is a UNIX-like microkernel operating system which I'm developing since October 2008 as a hobby. It runs on x86 and the two rather exotic architectures ECO32 and MMIX. The kernel provides processes, threads, memory management, a virtual file system and message passing. The userspace consists of drivers/services (ATA/ATAPI, ROM-disk, filesystem with support for ext2 and iso9660, UI-manager, window-manager, virtual terminal, keyboard, mouse, PCI, RTC, VGA, VESA and a few others), libraries (C, C++, GUI and others), simple versions of the well known UNIX tools (ls, ps, cat, head, less, ...) and a GUI.&lt;/p&gt;</description>
        <persons>
          <person id="1159">Nils Asmussen</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2099">
        <start>13:00</start>
        <duration>00:45</duration>
        <room>H.2214</room>
        <slug>05_uk_whats_new_in_l4re</slug>
        <title>State of the Union: What's new in the L4Re Microkernel System</title>
        <subtitle/>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk we will present which changes and extensions to the L4Re microkernel system were required to actually ship L4Re in a commercial product. The talk will be a mix of an experience report and an overview of major features of the L4Re system.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The L4Re microkernel system, or L4Re in short, is a multi-tier system which is composed of the L4Re microkernel, the L4Re runtime environment and applications. L4Re aims at building sytems where components with different security mechanisms require strict isolation. Throughout the last two years L4Re has made the move from a mostly university-centric project into commercial systems.&lt;/p&gt;</description>
        <persons>
          <person id="2015">Adam Lackorzynski</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2021">
        <start>13:50</start>
        <duration>00:30</duration>
        <room>H.2214</room>
        <slug>06_uk_secure_apps_on_l4</slug>
        <title>Secure applications on top of L4</title>
        <subtitle/>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;L4ReAp: L4Re additional packages, is a collection of "real-life" packages and solutions optimized for working in L4 environment. Main area of usage is  high performance and secure networking. In this presentation we outline security enhancements of L4Reap such as stack protection. In addition, new use-cases will be discussed.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1138">Sartakov A. Vasily</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1839">
        <start>14:25</start>
        <duration>00:30</duration>
        <room>H.2214</room>
        <slug>07_uk_dde_on_hurd</slug>
        <title>GNU/Hurd DDE userland device drivers</title>
        <subtitle/>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;We will explain how userland drivers are implement in GNU/Hurd thanks to the DDE layer, and what kernel support is needed for that. We will also show the flexibility this brings for the user.&lt;/p&gt;

&lt;p&gt;A longer version of this talk (incl video) is also available at https://www.gnu.org/ghm/2013/paris/&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1133">Samuel Thibault</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1993">
        <start>15:00</start>
        <duration>00:30</duration>
        <room>H.2214</room>
        <slug>08_uk_arm_virtualization_dungeon</slug>
        <title>Virtualization Dungeon on ARM</title>
        <subtitle>Hands on experience talk about virtualization experiments</subtitle>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The talk introduces ARM's security extensions called TrustZone, and how they are used to run a guest OS on top of Genode's native ARM kernel. It is a hands on experience talk covering pitfalls and blind alleys on the road to success.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Genode OS framework, which generally runs on top of various kernels, also contains a kernel library that allows Genode to run directly on bare ARM hardware. Therefore, the so called hw-kernel provides exactly the mechanisms required by Genode, making it in particular low-complex and at large understandable. This makes this kernel the ideal playground to do various experiments, including testing new hardware features. In this talk, the kernel will be briefly described, followed by an adventure report about our experiments with TrustZone support in Genode. The hw-kernel is used to executed an almost fully featured Genode system within the "secure world", while Android is executed concurrently in the "non-secure world" of TrustZone. The talk will include a short demo showing the results of these experiments.&lt;/p&gt;</description>
        <persons>
          <person id="769">Stefan Kalkowski</person>
        </persons>
        <links>
          <link href="http://genode.org">Genode OS project</link>
        </links>
      </event>
      <event id="1856">
        <start>15:40</start>
        <duration>00:45</duration>
        <room>H.2214</room>
        <slug>09_uk_rcu_for_helenos</slug>
        <title>Read-Copy-Update for HelenOS</title>
        <subtitle/>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk briefly introduces the RCU mechanism and the usual trade-offs that specific RCU implementations need to make. Furthermore, the talk also presents two novel RCU algorithms designed for a microkernel environment and implemented in HelenOS.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Read-Copy-Update (RCU) is a generic synchronization mechanism suitable for read-mostly shared data. There are many various implementations of the RCU mechanism, but their common goal is to provide non-blocking concurrent access with only a small overhead for the readers and also concurrent access for the updaters. Such an arrangement provides for excellent scalability compared to traditional mutual exclusion synchronization mechanisms while at the same time isolating the user of the RCU from the complexity of designing custom non-blocking algorithms.&lt;/p&gt;</description>
        <persons>
          <person id="605">Martin Děcký</person>
        </persons>
        <links>
          <link href="http://d3s.mff.cuni.cz/publications/download/PodzimekDeckyBulejTuma-ICPADS-2012.pdf">Podzimek A., Děcký M., Bulej L., Tůma P.: A Non-Intrusive Read-Copy-Update for UTS</link>
          <link href="http://www.helenos.org/doc/theses/ah-thesis.pdf">Hraška A.: Read-Copy-Update for HelenOS</link>
        </links>
      </event>
      <event id="2058">
        <start>16:30</start>
        <duration>00:30</duration>
        <room>H.2214</room>
        <slug>10_uk_resource_control</slug>
        <title>Rethinking Resource Control</title>
        <subtitle>Making use of hardware-OS-Compiler interactions</subtitle>
        <track>Microkernel-based operating systems</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;While resource allocation is deemed a domain of the OS, many resource allocation and scheduling decisions actually are performed by the CPU or by a compiler strategy or by a combination of OS, compiler and CPU microarchitecture. In this talk, we provide a basis for discussion how systems can benefit from a closer interaction of these tree HW/SW components, especially in the context of micro- and exokernel systems.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;One of the major functional properties of operating systems is the control, allocation, and isolation of resources such as processor time and memory. However, fine-grained resource allocation also is defined by other components in the hardware/software stack. For example, memory allocation on the processor stack is defined by a combination of operating system (setting the stack pointer, switching stacks), compiler (defining stack frame formats), and processor microarchitecture (defining automatically saved parameters, offsets, etc.). Another example is the allocation of processor time; coarse-grained allocation is handled by the OS, whereas fine-grained allocation (which instructions execute at what time, how to handle hardware multithreading) is handled by the processor. Additionally, cooperative multithreading might be handled by the compiler or the application itself.&lt;/p&gt;

&lt;p&gt;This talk intends to provide food for thought how a more close-knit interaction between OS, processor and compiler might benefit system designers. Based on experiences from a research project on flexible fault-tolerance, we examine resource control in the context of minimal OS abstractions, such as micro- and exokernels and propose methods to benefit from OS-CPU-compiler interaction in this context.&lt;/p&gt;</description>
        <persons>
          <person id="1862">Michael Engel</person>
        </persons>
        <links>
          <link href="http://ls12-www.cs.tu-dortmund.de/daes/en/forschung/dependable-embedded-real-time-systems.html">Our research project on dependable embedded systems</link>
          <link href="http://pdos.csail.mit.edu/exo.html">MIT's exokernel system</link>
        </links>
      </event>
    </room>
    <room name="AW1.120">
      <event id="2333">
        <start>09:00</start>
        <duration>00:30</duration>
        <room>AW1.120</room>
        <slug>wine_keynote</slug>
        <title>State of Wine</title>
        <subtitle/>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will present a quick summary of the current state of Wine and of the plans for the upcoming 1.8 release.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1100">Alexandre Julliard</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2082">
        <start>09:30</start>
        <duration>01:00</duration>
        <room>AW1.120</room>
        <slug>wine_pipelight</slug>
        <title>Pipelight - Netflix and more via Wine</title>
        <subtitle/>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will discuss how Pipelight combines Wine with native Linux code to run Windows NPAPI plugins such as Silverlight, Flash, and Unity3D in Linux browsers.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Pipelight is a special browser plugin which allows one to use Windows browser plugins inside Linux browsers. To make this possible Pipelight acts as a normal plugin and redirects function calls through a pipe to a process running in Wine. Although the idea may seem to be a bit overly complicated at first sight it turned out to be very useful from many perspectives. This approach allows for the seamless integration of these plugin into Linux browsers, while only running the plugin itself in Wine (which improves the performance and makes debugging a lot easier). In this talk we will especially focus on what is going on behind the scenes. We will show various problems we came across while developing Pipelight when trying to combine Linux and Wine applications inside a single project and explain how it is possible to translate between the differences of the Linux and Windows API and NPAPI. We will also talk about changes we made to Wine, including embedding the Wine window inside the browser and properly capturing input for the embedded windows. While working on Pipelight we also stumbled over bugs and raceconditions inside browsers like Chrome or Opera and the plugins themselves. We'll briefly talk about these issues and how Pipelight tries to workaround them. Last, but not least, we will discuss the security aspects arising from running Windows plugins and how Pipelight intrinsically protects you from certain kinds of attacks without any extra configuration.&lt;/p&gt;</description>
        <persons>
          <person id="1935">Michael Müller</person>
          <person id="2115">Sebastian Lackner</person>
        </persons>
        <links>
          <link href="http://fds-team.de/cms/articles/2013-08/pipelight-using-silverlight-in-linux-browsers.html">Pipelight release article </link>
          <link href="https://launchpad.net/pipelight">Pipelight on Launchpad</link>
          <link href="http://video.fosdem.org/2014/AW1120/Sunday/Pipelight_Netflix_and_more_via_Wine.webm">video</link>
        </links>
      </event>
      <event id="2354">
        <start>10:30</start>
        <duration>01:00</duration>
        <room>AW1.120</room>
        <slug>wine_users</slug>
        <title>The User Experience</title>
        <subtitle/>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Report and discussion of issues that impact Wine users.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2126">Rosanne DiMesio</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1120/Sunday/The_User_Experience.webm">Video</link>
        </links>
      </event>
      <event id="2359">
        <start>11:30</start>
        <duration>00:30</duration>
        <room>AW1.120</room>
        <slug>wine_test</slug>
        <title>The Amazing Wine Test Framework</title>
        <subtitle/>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This event will briefly describe the amazing Wine unit test framework, along with the full Windows Test Bot.
It will amaze you so much that you will joyfully leap up to answer our resounding cry for help.
This is a particularly good opportunity for Windows developers to help the Wine project.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1092">Jeremy White</person>
          <person id="1424">François Gouget</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1120/Sunday/The_Amazing_Wine_Test_Framework.webm">Video</link>
        </links>
      </event>
      <event id="2337">
        <start>12:00</start>
        <duration>01:00</duration>
        <room>AW1.120</room>
        <slug>wine_bof</slug>
        <title>Wine BOF</title>
        <subtitle>Wine birds of a feather sessions</subtitle>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Wine Birds of a Feather gathering.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This will be a designated time for sub groups to form and to discuss areas of interest, potentially over a bite to eat.&lt;/p&gt;</description>
        <persons>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1120/Sunday/Wine_BOF.webm">Video</link>
        </links>
      </event>
      <event id="2081">
        <start>13:00</start>
        <duration>01:00</duration>
        <room>AW1.120</room>
        <slug>wine_android</slug>
        <title>Wine on Android</title>
        <subtitle/>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will present the goals and the current status of the Android version of Wine, and explain some of the technical challenges involved in running Windows applications on Android devices.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1100">Alexandre Julliard</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1120/Sunday/Wine_on_Android.webm">Video</link>
        </links>
      </event>
      <event id="1743">
        <start>14:00</start>
        <duration>01:00</duration>
        <room>AW1.120</room>
        <slug>wine_graphics</slug>
        <title>Performance of Wine and Common Graphics Drivers</title>
        <subtitle/>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Last year I gave a presentation about the 3D performance of Wine and various GPU drivers. This talk will review the changes made to Wine and Mesa and their performance improvements.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1284">Stefan Dösinger</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1120/Sunday/Performance_of_Wine_and_Common_Graphics_Drivers.webm">Video</link>
        </links>
      </event>
      <event id="2332">
        <start>15:00</start>
        <duration>00:30</duration>
        <room>AW1.120</room>
        <slug>wine_d3d</slug>
        <title>Direct3D Q&amp;A</title>
        <subtitle/>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Ask wined3d developers questions, and they'll try to answer them.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2107">Henri Verbeet</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1120/Sunday/Direct3D_QA.webm">Video</link>
        </links>
      </event>
      <event id="2059">
        <start>15:30</start>
        <duration>00:40</duration>
        <room>AW1.120</room>
        <slug>wine_mingw64</slug>
        <title>Win-builds and Mingw-w64: Package manager and modern toolchains for Windows</title>
        <subtitle>Setup your development environment in less than 5 minutes</subtitle>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Building for Windows is not the pain it used to be. This talk is an introduction to the history, philosophy, and current status of two FOSS projects mingw-w64 and win-builds which, when combined, offer a package manager and up-to-date toolchains and packages for Windows.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk will present two projects:&lt;/p&gt;

&lt;p&gt;First, mingw-w64 which has brought most of the current changes for Windows toolchains: better API coverage in headers, GCC and binutils improvements, better standard conformance and Windows-related tooling.&lt;/p&gt;

&lt;p&gt;Second, win-builds.org, a software distribution for Windows which can be installed on Windows or GNU/Linux through a package manager.&lt;/p&gt;

&lt;p&gt;Roughly the first third of the presentation will be dedicated to mingw-w64. The remaining time will be for win-builds and will feature a status report for both the package manager and the packages it handles (i.e. your code).
The intended audience is not limited to Wine users but also includes anyone interested in Windows support for free software. One of the goal of the talk is to foster cooperation between free software developers for this particular issue.&lt;/p&gt;</description>
        <persons>
          <person id="1559">Adrien Nader</person>
        </persons>
        <links>
          <link href="http://win-builds.org">Win-builds homepage</link>
          <link href="http://mingw-w64.sourceforge.net">Mingw-w64 homepage</link>
          <link href="http://video.fosdem.org/2014/AW1120/Sunday/Winbuilds_and_Mingww64_Package_manager_and_modern_toolchains_for_Windows.webm">Video</link>
        </links>
      </event>
      <event id="2458">
        <start>16:10</start>
        <duration>00:50</duration>
        <room>AW1.120</room>
        <slug>wine_hacking</slug>
        <title>Wine hacking session</title>
        <subtitle/>
        <track>Wine</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This end of day session will be an open meeting for hacking of all kinds.  From hacking 101 - to learn how to be a hacker, to unit test review, to complex studies.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1092">Jeremy White</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="AW1.121">
      <event id="1706">
        <start>09:45</start>
        <duration>00:15</duration>
        <room>AW1.121</room>
        <slug>deviot00</slug>
        <title>Welcome to IoT Devroom</title>
        <subtitle>Welcome to participants and explanation of the day</subtitle>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Welcome to participants and explanation of the devroom format.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="522">Pieter Hintjens</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/Welcome_to_IoT_Devroom.webm">Video</link>
        </links>
      </event>
      <event id="2060">
        <start>10:00</start>
        <duration>00:25</duration>
        <room>AW1.121</room>
        <slug>deviot02</slug>
        <title>Flow-based programming for heterogeneous systems</title>
        <subtitle>with NoFlo and MicroFlo</subtitle>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Heterogeneous systems as found in the Internet of Things are made up of many devices of different types working together. Each device class is typically developed with separate tools using different paradigms. We propose that using NoFlo and MicroFlo one can develop heterogeneous systems consisting of micro-controllers, servers, and mobile devices using flow-based programming (FBP) as an unifying programming model.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Systems qualifying for the label "Internet of Things" are often complex hetrogenous systems
consisting of many nodes spanning over several device classes, working individually and together to realize the intended function:
Microcontrollers w/peripherals are used as sensors and actuators, servers used for data-aggregation and analysis,
desktops and mobile devices as user interfaces for monitoring and configuration.
Typically each of these classes of device are programmed with separate tools, by different people using different paradigms:
for example C/C++ for microcontrollers, Python for servers, JavaScript+HTML5 for user interfaces.&lt;/p&gt;

&lt;p&gt;This talks aim to introduce flow-based programming (FBP) as a programming paradigm that can be used
across and between device classes, and to show how NoFlo and MicroFlo can be used to implement heterogeneous systems.&lt;/p&gt;

&lt;p&gt;About:
NoFlo is a JavaScript-based FBP runtime by Henri Bergius, which runs on Node.js and in the browser. http://noflojs.org
MicroFlo is a C++ based FBP runtime by Jon Nordby. It runs on AVR and Cortex-M microcontrollers, including Arduino. http://microflo.org&lt;/p&gt;

&lt;p&gt;NoFlo and MicroFlo can both be targeted by the NoFlo UI, an IDE for flow-based programming currently in development.
Systems can be programmed visually, using a domain-specific language or the runtimes can be embedded and controlled programmatically.&lt;/p&gt;</description>
        <persons>
          <person id="639">Jon Nordby</person>
        </persons>
        <links>
          <link href="http://microflo.org">MicroFLo</link>
          <link href="http://noflojs.org">NoFlo</link>
          <link href="http://flowhub.io">Flowhub</link>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/Flowbased_programming_for_heterogeneous_systems.webm">Video</link>
        </links>
      </event>
      <event id="1800">
        <start>10:30</start>
        <duration>00:25</duration>
        <room>AW1.121</room>
        <slug>deviot08</slug>
        <title>OpenIoT</title>
        <subtitle>The Open Source Project for the Internet of Things</subtitle>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The aim of this talk is to introduce OpenIoT, a FOSS project for developing/integrating Internet-of-Things (IoT) applications and services. OpenIoT is developing a platform and a range of tools for developing and deploying non-trivial IoT solutions. The introduction of the project will be made in the form of a lecture/presentation/lighening talk, yet it will also include practical examples and demonstrations of IoT applications based on the OpenIoT platform. Furthermore, a short programming tutorial could be provided. The aim of the presentation will be to attract interested developers/contributors to the project, thereby boosting OpenIoT's community building efforts.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The main goal of the OpenIoT project (openiot.eu) is to develop a bluepring middleware infrastructure for implementing/integrating Internet-of-Things solutions. OpenIoT is supported (co-funded) by the European Commission as part of the FP7 programme. It is a joint effort of several developer teams around Europe, including open source enthousiasts and developers of other prominent open source IoT platforms such as Global Sensor Networks (GSN) (http://sourceforge.net/apps/trac/gsn) and AspireRfid (http://wiki.aspire.ow2.org).&lt;/p&gt;

&lt;p&gt;OpenIoT is a java-based IoT project, which features unique properties. In particular, it provides the means for:&lt;/p&gt;

&lt;p&gt;1.Collecting and processing data from virtually any sensor/ data stream, including physical devices, sensor processing algorithms, social media processing algorithms and more. In OpenIoT the term sensor refers to any components that can provide observations. OpenIoT will facilitate the integration of the above sensors with only minimal effort (i.e. few man days effort) for implementing an appropriate access driver.
2. Semantically annotating sensor data, according to the W3C Semantic Sensor Networks (SSN) specifications (http://www.w3.org/2005/Incubator/ssn/).
3. Streaming data of the various sensors to a cloud computing infrastructure.
4. Dynamically discovering/querying sensors and their data.
5 Composing and delivering IoT services that comprise data from multiple sensors based on minimal programming and through the use of visual tools.
6. Visualizing IoT data based on appropriate mashups (charts, graphs, maps etc.)
7. Optimizing resources within the T middleware and cloud computing infrastructure.&lt;/p&gt;

&lt;p&gt;The above features make the project innovative and differentiate it from other/similar IoT middleware projects.&lt;/p&gt;

&lt;p&gt;The OpenIoT founders and developers aspire to gradually engage open source developers in the OpenIoT community, as users, developers and contributors. The development and expansion of an open source community is deemed as a critical step for improving the project and boosting its wide adoption.&lt;/p&gt;

&lt;p&gt;The project's presentation during FOSDEM could comprise:
1. An overview presentation of the project.
2. An anatomy of the open source components comprising the FOSS project on Github.
3. Short/targeted demonstrations of IoT applications build based on the project.
4. Short tutorials on downloading/using/deploying OpenIoT
5. Q&amp;amp;A sessions aiming at resolving key questions and issues.&lt;/p&gt;</description>
        <persons>
          <person id="1704">John Soldatos</person>
        </persons>
        <links>
          <link href="https://github.com/OpenIotOrg/openiot/">Open Source Project</link>
          <link href="https://github.com/OpenIotOrg/openiot/wiki">On-Line Documentation</link>
          <link href="http://openiot.eu">EU FP7 Project Supporting the FOSS project</link>
          <link href="http://sourceforge.net/apps/trac/gsn">GSN OSS Project - Background project of OpenIoT</link>
          <link href="http://wiki.aspire.ow2.org">AspireRFID OSS Project - Background project of OpenIoT</link>
          <link href="http://lsm.deri.ie">LSM OSS Project Demo - Background Project of OpenIoT</link>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/OpenIoT.webm">Video</link>
        </links>
      </event>
      <event id="2006">
        <start>11:00</start>
        <duration>00:25</duration>
        <room>AW1.121</room>
        <slug>deviot04</slug>
        <title>Current State of IEEE 802.15.4/6LoWPAN Stack inside the Linux Kernel</title>
        <subtitle/>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;At the moment the most common solution to bring Linux embedded devices into the Internet of Things world requires a gateway or border router device. These devices use a separate IEEE 802.15.4/6LoWPAN Stack from ContikiOS, TinyOS, etc.&lt;/p&gt;

&lt;p&gt;The somewhat misnamed linux-zigbee project aims to implement the IEEE 802.15.4/6LoWPAN functionality (but not ZigBee) inside the Linux kernel so that you can bring a Linux machine into the Internet of Things world easily. The required hardware is an IEEE 802.15.4 radio frequency module which is typically connected via SPI or USB. On top of the 6LoWPAN stack you can run any IPv6 userspace software.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The main goal of the linux-zigbee project is to support the IEEE 802.15.4 MAC layer with 6LoWPAN on top in Linux kernel. Without linux-zigbee, a gateway or border router device running a separate IEEE 802.15.4/6LoWPAN stack was required. These devices are connected via ethernet, SLIP or USB-RNDIS to Linux. We want to bring the IEEE 802.15.4/6LoWPAN functionality into the Linux kernel which makes unnecessary to run a different stack on a separate device.&lt;/p&gt;

&lt;p&gt;The project started in 2008 and part of the work have already been included in the Linux kernel. At the moment the Linux Kernel supports various IEEE 802.15.4 radio frequency modules which are typically connected via SPI or USB. With the project's userspace tools you can setup a WPAN interface with a virtual LoWPAN interface on top. This LoWPAN interface translates an IPv6 header to a 6LoWPAN header and vice versa.&lt;/p&gt;

&lt;p&gt;In the last year the 6LoWPAN implementation in Linux became more RFC compliant so communication in a heterogeneous network becomes possible. The IEEE 802.15.4 stack only supports data frames right now. The 6LoWPAN stack supports IPHC, UDP compression/uncompression and fragmentation at the moment. A limited RPL python implementation was released which adds a basic support of Routing Protocol for Low-Power and Lossy Networks. The libcoap library adds support to run CoAP applications in userspace.&lt;/p&gt;

&lt;p&gt;There is a draft for supporting 6LoWPAN on Bluetooth. We are working with the Bluetooth community to support 6LoWPAN in Linux kernel. Another wish is to support RFC6775 for 6LoWPAN neighbor discovery optimizations which isn't implemented yet.&lt;/p&gt;

&lt;p&gt;This talk is for developers who are interested in the actual state of IEEE 802.15.4 and the 6LoWPAN stack under Linux.&lt;/p&gt;</description>
        <persons>
          <person id="1745">Alexander Aring</person>
        </persons>
        <links>
          <link href="http://sourceforge.net/projects/linux-zigbee/">Project Website</link>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/Current_State_of_IEEE_8021546LoWPAN_Stack_inside_the_Linux_Kernel.webm">Video</link>
        </links>
      </event>
      <event id="1964">
        <start>11:30</start>
        <duration>00:25</duration>
        <room>AW1.121</room>
        <slug>deviot05</slug>
        <title>Federating Access to IoT using OAuth</title>
        <subtitle/>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The Internet of Things (IoT) is being used for lots of personal data, but what little authentication and authorization is mainly being done using traditional centralized role-based approaches. This talk shows how we can use Federated identity and access management approaches such as OAuth2 with MQTT and CoAP to support IoT.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The Internet of Things and Machine to Machine are growing areas, and security and privacy are prime issues. In this session we will examine the security challenges around using M2M devices, with special reference to Authorization and Authentication. Much of the IoT is used for personal systems, and so there is a strong need for person-centred identity and access management. The OAuth2 protocol is gaining wide acceptance in the Web, and has been designed to support federated identity, personal delegation of access control and dynamic permissions.&lt;/p&gt;

&lt;p&gt;We look at how we can use OAuth with MQTT and CoAP. We will use a combination of open source hardware (based on Arduino) and open source software (including Mosquitto and WSO2 Identity Server) to demonstrate
an Arduino based IoT device interacting with MQTT based systems using OAuth2 bearer tokens.&lt;/p&gt;

&lt;p&gt;The session will cover:
- Challenges with IoT security
- Using OAuth2 to support federation and user-directed authorization
- Issues and areas for further work
- Future directions&lt;/p&gt;

&lt;p&gt;The session will include a live demonstration of Arduino and Eclipse Paho interoperating secured by OAuth 2.0.&lt;/p&gt;</description>
        <persons>
          <person id="1859">Paul Fremantle</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/Federating_Access_to_IoT_using_OAuth.webm">Video</link>
        </links>
      </event>
      <event id="1760">
        <start>12:00</start>
        <duration>00:25</duration>
        <room>AW1.121</room>
        <slug>deviot07</slug>
        <title>XMPP in the world of IoT </title>
        <subtitle>An open standard for interoperable IoT</subtitle>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Talk on how XMPP fit into the world of IoT. The big advantages, technologies, possibilities, and differences.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The XMPP Standards Foundation has accepted a series of extensions for internet of things available at http://xmpp.org/extensions/.&lt;/p&gt;

&lt;p&gt;The talk is about how XMPP could be a solutions to several of the challenges in deployment of massive IoT&lt;/p&gt;

&lt;p&gt;This talk gives an example on how to connect realworld devices using the extensions XEP323 and XEP325&lt;/p&gt;

&lt;p&gt;The session is also an inspiration for the afternoon hacking session where people are encouraged to try the code out and&lt;/p&gt;

&lt;p&gt;Gives a hint on how a Semantic web approach can be added in a secure way.&lt;/p&gt;</description>
        <persons>
          <person id="1660">Joachim Lindborg</person>
        </persons>
        <links>
          <link href="https://github.com/joachimlindborg/SleekXMPP/tree/xep_0323_325">example code that will be used during talk</link>
          <link href="http://xmpp.org/extensions/xep-0323.html">XMPP extension for reading data from devices</link>
          <link href="http://xmpp.org/extensions/xep-0325.html">XMPP extension for controling</link>
          <link href="http://wiki.xmpp.org/web/Tech_pages/IoT_systems">Wiki with information on the effort</link>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/XMPP_in_the_world_of_IoT.webm">Video</link>
        </links>
      </event>
      <event id="1949">
        <start>12:30</start>
        <duration>00:25</duration>
        <room>AW1.121</room>
        <slug>deviot10</slug>
        <title>LTE in your Linux-based system</title>
        <subtitle/>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Wireless connections have improved a lot lately and the data-rates and latencies that are now achievable with LTE make mobile broadband connections a key ingredient in every M2M recipe. But LTE mobile broadband connections in Linux-based systems are no longer setup using the good old AT+PPP pair. LTE-capable modems now use ECM-like network interfaces and even new control protocols, like QMI or MBIM.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This talk is about how the new LTE-capable devices are exposed in the Linux kernel (e.g. qmi_wwan, cdc-mbim...), and which user-space tools (e.g. ModemManager, libqmi, libmbim...) are available to control them. The talk will be a hands-on demonstration of how to use these modems with these tools, focused on what users need to do to use them properly, and also how developers can benefit from them to write new applications.&lt;/p&gt;</description>
        <persons>
          <person id="632">Aleksander Morgado</person>
        </persons>
        <links>
          <link href="http://www.freedesktop.org/wiki/Software/ModemManager/">ModemManager</link>
          <link href="http://www.freedesktop.org/wiki/Software/libqmi/">libqmi</link>
          <link href="http://www.freedesktop.org/wiki/Software/libmbim/">libmbim</link>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/LTE_in_your_Linuxbased_system.webm">Video</link>
        </links>
      </event>
      <event id="2054">
        <start>13:00</start>
        <duration>00:25</duration>
        <room>AW1.121</room>
        <slug>deviot09</slug>
        <title>The Fluksometer as an IoT hub</title>
        <subtitle/>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The Fluksometer is an open hardware/software platform that facilitates the visualisation and monitoring of 'utility' streams like water, gas, and electricity. The recently released v2B of the hardware comes with a Jeenode-compatible 868MHz radio interface. As such, the Fluksometer can now take on the role of an IoT hub which greatly expands the possible range of domestic applications it can enable. This talk would like to describe and demonstrate the new hardware as well as software components we are currently building that will turn this concept into reality.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="246">Bart Van Der Meerssche</person>
        </persons>
        <links>
          <link href="http://www.flukso.net">Flukso</link>
          <link href="http://www.jeelabs.org">Jeelabs</link>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/The_Fluksometer_as_an_IoT_hub.webm">Video</link>
        </links>
      </event>
      <event id="1980">
        <start>13:30</start>
        <duration>00:25</duration>
        <room>AW1.121</room>
        <slug>deviot03</slug>
        <title>PicoTCP</title>
        <subtitle>the reference TCP/IP stack for IoT</subtitle>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;PicoTCP: the reference TCP/IP stack for IoT&lt;/p&gt;

&lt;p&gt;PicoTCP is a fully featured TCP/IP stack designed for embedded devices and released under the terms of GNU GPL. Our purpose is to propose it as the reference TCP/IP stack for IoT, especially due to its high portability and modularity.&lt;/p&gt;

&lt;p&gt;This talk will explain the architecture of the stack, the way we have been developing it and the many features we support. Moreover, we will briefly show how easy it is to port the stack to a complete new architecture in no time.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;After the presentation, as a test scenario, we would like to show a demo illustrating how it is possible to transport MIDI flows over WiFi with a PIC24 based board using ZMTP protocol.&lt;/p&gt;</description>
        <persons>
          <person id="1866">Maxime Vincent</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/PicoTCP.webm">Video</link>
        </links>
      </event>
      <event id="1635">
        <start>14:00</start>
        <duration>00:25</duration>
        <room>AW1.121</room>
        <slug>deviot06</slug>
        <title>OpenTRV: resource-constained computing: less is more</title>
        <subtitle>Saving energy while saving energy</subtitle>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A talk about work so far on OpenTRV.&lt;/p&gt;

&lt;p&gt;OpenTRV sets out to make it easy to save lots of energy by not heating rooms that you're not in, and by no longer trying to use a single thermostat to get your whole house comfortable.&lt;/p&gt;

&lt;p&gt;OpenTRV also allows a simple schedule to be set (no complex displays though!) and tries to anticipate when you'll need heating to improve comfort while boosting efficiency.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;OpenTRV is designed to be simple to (retro-)fit to existing UK housing stock with radiator central heating.&lt;/p&gt;

&lt;p&gt;OpenTRV runs on PICAXE and AVR/ATMega microcontrollers drawing micro-watts to run for a year or two on AA cells while saving you kilowatts in space heating and is completely open source (Apache/SolderPad), software and hardware. We like to call it FOSSH - "free open source software and hardware".&lt;/p&gt;

&lt;p&gt;We've been working on a combination of open hardware and software projects this year to prove the concept that retrofitted programmable thermostatic radiator valves can reduce the energy required to heat a house and thereby reduce carbon emissions. Along the way we've encountered and solved problems with developing open hardware and software devices and commenced testing in conjunction with a local university. The talk highlights the lessons learned and maps out the current state and future plans.&lt;/p&gt;

&lt;p&gt;We've designed a PCB, got it manufactured, populated it ourselves and via a manufacturer, sourced components, 3D printed boxes, written software, entered competitions, are in the process of testing it with real end users in conjunction with a local university and generally sweated, got frustrated and elated at various times. Now we'd like to share the lessons learned, let people know what the project is about, outline the future plans and hopefully inspire some talented people to help the project out with reducing carbon emissions significantly.&lt;/p&gt;</description>
        <persons>
          <person id="1514">Damon Hart-Davis</person>
        </persons>
        <links>
          <link href="http://opentrv.org.uk">OpenTRV home page</link>
          <link href="http://www.earth.org.uk/open-source-programmable-thermostatic-radiator-valve.html">OpenTRV developers page</link>
          <link href="http://video.fosdem.org/2014/AW1121/Sunday/OpenTRV_resourceconstained_computing_less_is_more.webm">Video</link>
        </links>
      </event>
      <event id="2456">
        <start>14:30</start>
        <duration>02:00</duration>
        <room>AW1.121</room>
        <slug>deviot11</slug>
        <title>Participant driven discussion</title>
        <subtitle/>
        <track>Internet of things</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A space for participant-driven discussions, unconference style.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="AW1.125">
      <event id="1726">
        <start>09:45</start>
        <duration>00:15</duration>
        <room>AW1.125</room>
        <slug>intro_to_the_sdr_devroom</slug>
        <title>Intro to the SDR devroom</title>
        <subtitle/>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This year is the first year that FOSDEM will have a developer room dedicated to Software Defined Radio. Here, we will present a quick overview of SDR projects out there and those attending FOSDEM and then start off the day.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1510">Philip Balister</person>
          <person id="1616">Martin Braun</person>
          <person id="1632">Sylvain Munaut</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/Intro_to_the_SDR_devroom.webm">Video</link>
        </links>
      </event>
      <event id="1730">
        <start>10:00</start>
        <duration>00:45</duration>
        <room>AW1.125</room>
        <slug>working_with_gnu_radio</slug>
        <title>Working with GNU Radio</title>
        <subtitle/>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Although GNU Radio is now over ten years old, the project has recently seen an incredible amount of growth in features. The capabilities we have been adding to the project are focused on improving current signal handling techniques, extending the GNU Radio project's ability to handle newer and developing digital wireless signals, and focusing more on the embedded systems world.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this talk, we will go over the basics of GNU Radio and a list of some of the newer features. We will then explore a few ways of interacting with GNU Radio to explore the wireless spectrum and signal processing techniques. To do this, we will look at how we use concepts of GUI instruments and interactions, stream tags and messages, and ControlPort for monitoring and controlling GNU Radio applications.&lt;/p&gt;</description>
        <persons>
          <person id="1623">Tom Rondeau</person>
        </persons>
        <links>
          <link href="http://gnuradio.org">http://gnuradio.org</link>
          <link href="http://www.trondeau.com">http://www.trondeau.com</link>
        </links>
      </event>
      <event id="1932">
        <start>10:45</start>
        <duration>00:45</duration>
        <room>AW1.125</room>
        <slug>building_link_layer_protocols_in_a_lego_like_fashion</slug>
        <title>Building Link-Layer Protocols in a Lego-like Fashion</title>
        <subtitle/>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Most of the flexibility that has been brought to the development of software defined radios resides in components that can be associated with the physical layer of the radio. This talk tries to shed some light on how SDRs can also benefit from flexibility in higher protocol layers such as link-layer protocols.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Specifically, the talk introduces a component-based link-layer protocol architecture that allows to build self-contained protocol components that can be combined to complete link-layer protocol solutions in a Lego-like manner. The talk will cover some architectural aspects as well as some implementation-specific problems that we came across during the development of a prototype using Iris.&lt;/p&gt;</description>
        <persons>
          <person id="1833">Andre Puschmann</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/Building_LinkLayer_Protocols_in_a_Legolike_Fashion.webm">Video</link>
        </links>
      </event>
      <event id="2223">
        <start>11:30</start>
        <duration>00:45</duration>
        <room>AW1.125</room>
        <slug>osmocom_verview_of_our_sdr_projects</slug>
        <title>osmocom: Overview of our SDR projects</title>
        <subtitle>rtl-sdr, gr-osmosdr, osmo-tetra, osmo-gmr, gr-fosphor and more !</subtitle>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Osmocom stands for Open-Source MObile COMmunication. It's an umbrella project for several sub-projects that focus on implementing various telecom standard. A growing part of these are using SDR and theses are the the ones that will be presented in this talk.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Among theses are rtl-sdr, a library to use cheap dvb-t dongle as SDR receiver; gr-osmosdr, a GNURadio source block to support multiple capture hardware easily in your apps; osmo-tetra, an sdr implementation of a TETRA receiver; osmo-gmr, a protocol stack for this satphone standard; gr-fosphor, a GPU accelerated spectrum visualization block for GNURadio.&lt;/p&gt;</description>
        <persons>
          <person id="1632">Sylvain Munaut</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/osmocom_Overview_of_our_SDR_projects.webm">Video</link>
        </links>
      </event>
      <event id="1823">
        <start>12:15</start>
        <duration>01:00</duration>
        <room>AW1.125</room>
        <slug>tutorial_ofdm_packet_transceivers</slug>
        <title>Tutorial: OFDM Packet Transceivers</title>
        <subtitle>Intro on how to write an OFDM-based PHY/MAC/App</subtitle>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;GNU Radio is a powerful tool for signal processing of any kind. It is very much suited for setting up any kind of communication link. In this tutorial, we will discuss how to set up a PHY that can be attached to an application and MAC layer in order to experiment with arbitrarily configured wireless networks.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Tutorial overview:
* OFDM blocks basics
* How to set up links between nodes
* How to start working on MACs&lt;/p&gt;</description>
        <persons>
          <person id="1616">Martin Braun</person>
        </persons>
        <links>
          <link href="http://www.gnuradio.org">GNU Radio Website</link>
          <link href="http://www.ettus.com">Ettus Research LLC</link>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/Tutorial_OFDM_Packet_Transceivers.webm">Video</link>
        </links>
      </event>
      <event id="1863">
        <start>13:15</start>
        <duration>00:30</duration>
        <room>AW1.125</room>
        <slug>towards_an_open_source_ieee_802_11p_stack</slug>
        <title>Towards an Open Source IEEE 802.11p Stack</title>
        <subtitle>An SDR-based Transceiver in GNURadio</subtitle>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;I will discuss new ideas and application domains of our Open Source IEEE 802.11a/g/p OFDM transceiver for GNU Radio.
The transceiver is implemented completely in software without the need for changing the firmware of the FPGA.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;For that reason, the structure and mode of operation of the transceiver is easy to understand and it is straightforward to extend.
In our opinion, an SDR based WiFi transceiver has several interesting applications, one of them being its use for research in Vehicular Ad Hoc Networks (VANETs).
In this field, the applications for an SDR implementation range from investigation of security and privacy issues, through simulative performance evaluation of receive algorithms, to experiments in field tests.
In the talk, we discuss the possibilities and limitations of the SDR platform, as well as our current state of the art.
We will highlight what is already possible, present results of our performance studies, and also show where improvements, hopefully with the help of people from the Open Source community, would be desirable.&lt;/p&gt;</description>
        <persons>
          <person id="1776">Bastian Bloessl</person>
        </persons>
        <links>
          <link href="http://www.ccs-labs.org/projects/wime/">project page</link>
          <link href="http://ccs-labs.org/software/gr-ieee802-11/">software page</link>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/Towards_an_Open_Source_IEEE_80211p_Stack.webm">Video</link>
        </links>
      </event>
      <event id="1913">
        <start>13:45</start>
        <duration>00:30</duration>
        <room>AW1.125</room>
        <slug>gnuradio_as_a_general_purpose_digital_signal_processing_environment_adding_custom_sources</slug>
        <title>GNURadio as a general purpose DSP environment</title>
        <subtitle>application to software defined radio and low-cost physics experiments</subtitle>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Software defined radio has exhibited tremendous growth in the last years thanks to the wide availability of significant computational power available in embedded and personal computers and ubiquity of radiofrequency interfaces. One Open Source environment suitable for grasping the basics of digital signal processing, in particular applied to radiofrequency signals, is GNURadio. While software is freely available and shared through the internet, hardware remains dependent on the availability of suitable boards from hardware vendors. In order to justify the time investment in learning to use this signal processing environment, we discuss the development of custom processing blocks and adding custom sources.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Radiofrequency communication has become ubiquitous with the proliferation of digital radiofrequency networks and the continuing use of analog communication through wireless links (eg satellite and commercial FM transmission). The trend to shift from analog, hardware based receiver to software-based digital signal processing is dictated by the flexibility of the approach in which hardware is developed once and then used for multiple purposes by updating the firmware and processing algorithms. GNURadio provides a development environment in which a signal source is fed multiple processing blocks before reaching a data sink (oscilloscope output, sound card, file storage). Not only are most basic processing blocks already available, but the opensource aspect of the software allows for new developers to quickly become familiar with the various interfaces by browsing through the source codes. Hence, the time investment of learning the constraints of complying with the framework requirements of GNURadio is compensated for by the availability of most useful processing functions and quick display of basic processing functionalities (eg oscilloscope or FM radio reception). Dedicated applications of this processing environment to unusual applications such as physics lab or experiments is possible by implementing dedicated processing blocks and including these in the processing chain.&lt;/p&gt;

&lt;p&gt;Indeed, signal processing functionalities are not limited to radiofrequency signals but can be extended to all sorts of capabilities: in this presentation, we will start by illustrating the development steps for implementing a new digital communication procotol (ACARS communication protocol used between aircrafts and ground) from prototyping using an interpreted language (GNU/Octave) in order to identify the core processing steps, to converting to C and then complying with the GNURadio framework. We will further discuss the development of such signal processing blocks as part of low-cost physics experiments in which various input sources (sound card and DVB-T receivers) are connected to dedicated digital signal blocks to extract the transfer function of a quartz tuning fork. Complying with the GNURadio framework allows for real time processing. Finally, we present the addition of custom hardware as input source, demonstrating the flexibility of the opensource approach and the relevance of the investment of learning this new development framework whose use is hence mostly independent of available hardware peripherals.&lt;/p&gt;

&lt;p&gt;The last issue in the&lt;/p&gt;</description>
        <persons>
          <person id="1813">Jean-Michel Friedt</person>
        </persons>
        <links>
          <link href="http://jmfriedt.free.fr/ohm2013_jmfriedt.pdf">OHM2013 presentation</link>
          <link href="http://jmfriedt.free.fr/1306bup.pdf">GNURadio for low cost physics [French]</link>
          <link href="http://jmfriedt.free.fr/en_sdr.pdf">introduction to SDR and processing block development</link>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/GNURadio_as_a_general_purpose_DSP_environment.webm">Video</link>
        </links>
      </event>
      <event id="2053">
        <start>14:15</start>
        <duration>00:30</duration>
        <room>AW1.125</room>
        <slug>wireless_networks_in_the_loop</slug>
        <title>Wireless Networks In-the-Loop</title>
        <subtitle>gr-winelo - A GNU Radio Network Emulator</subtitle>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk introduces gr-winelo, an in-the-loop simulation framework for communication networks which are based on the GNU Radio software radio toolkit.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;gr-winelo mimics the behavior of common RF frontends such as the USRP, but instead of sending the signal over the air, a central server plays the role of the wireless communication channel. Arbitrary channel models can be simulated, by passing their respective GNU Radio processing block to the server. Since this whole setup is completely transparent to GNU Radio applications, it is at any moment possible to switch between simulations and real-world tests. For the Demo a frequency hopping network will be simulated and analyzed using gr-winelo.&lt;/p&gt;</description>
        <persons>
          <person id="1886">Nico Otterbach</person>
          <person id="2170">Gerald Baier</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/Wireless_Networks_IntheLoop.webm">Video</link>
        </links>
      </event>
      <event id="1910">
        <start>14:45</start>
        <duration>00:30</duration>
        <room>AW1.125</room>
        <slug>osld_lib</slug>
        <title>libLTE</title>
        <subtitle>An Open Source LTE Library</subtitle>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;libLTE is a free and open source LTE library for SDR mobile terminals and base stations. The library does not rely on any external dependencies or frameworks.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The project contains a set of Python tools for the automatic code generation of modules for popular SDR frameworks, including GNURadio, ALOE++, IRIS, and OSSIE. These tools are easy to use and adapt for generating targets for specific platforms or frameworks.&lt;/p&gt;

&lt;p&gt;libLTE is a continuation of the Open-Source LTE Deployment (OSLD) project. OSLD provides an LTE library together with ALOE++, a real-time SDR framework.  libLTE builds upon the success of OSLD and provides complementary tools for researchers and manufacturers that do not wish to use a specific SDR framework.&lt;/p&gt;

&lt;p&gt;More info and download on ALOE++ and OSLD: https://github.com/flexnets/aloe/wiki&lt;/p&gt;</description>
        <persons>
          <person id="1808">Ismael Gomez </person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/libLTE.webm">Video</link>
        </links>
      </event>
      <event id="1821">
        <start>15:15</start>
        <duration>00:20</duration>
        <room>AW1.125</room>
        <slug>gnu_radio_hardware_acceleration_on_xilinx_zynq</slug>
        <title>GNU Radio Hardware Acceleration on Xilinx Zynq</title>
        <subtitle/>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Although some of the currently available SDRs come with means of adding FPGA based acceleration to boost performance, almost nobody is making use of them. One of several reasons for that is, that the learning curve is quite steep for a beginner.&lt;/p&gt;

&lt;p&gt;This talk will briefly describe a way to add hardware acceleration to Zynq based SDRs, that has already been successfully used in Jonathon Pendlum's GSoC project.&lt;/p&gt;

&lt;p&gt;I'll give an overview of where we are at the moment, what the development experience right now is like, what parts are still missing, and what I'm planning on adding.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1728">Moritz Fischer</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/GNU_Radio_Hardware_Acceleration_on_Xilinx_Zynq.webm">Video</link>
        </links>
      </event>
      <event id="2202">
        <start>15:45</start>
        <duration>01:15</duration>
        <room>AW1.125</room>
        <slug>sdr_devroom_closing_session</slug>
        <title>SDR devroom closing session</title>
        <subtitle/>
        <track>Software defined radio</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;We'll wrap up the day with summaries, hacking, and discussion of ideas for the next year.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1125/Sunday/SDR_devroom_closing_session.webm">Video</link>
        </links>
      </event>
    </room>
    <room name="AW1.126">
      <event id="2328">
        <start>09:00</start>
        <duration>00:30</duration>
        <room>AW1.126</room>
        <slug>energy_effiency_matters</slug>
        <title>Energy scavenging, battery life and should we build more power stations</title>
        <subtitle>Why energy-efficiency of hardware and software matters</subtitle>
        <track>Energy-efficient computing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This introductory talk will set the context for the day. It will take a look at how energy efficiency is &lt;em&gt;the&lt;/em&gt; major challenge for systems developers, and will then provide an overview of a number of open source projects that demonstrate how the energy efficiency of the entire system can be significantly improved.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Energy efficiency of systems - hardware and software - matters. For the smallest energy scavenging systems it is a matter of eking out the picowatts. For handheld consumer electronics it is battery life that is a key product differentiator. Even for mains powered consumer devices, energy efficiency affects utility bills. And for datacenters run by the Googles and Facebooks of this world, more efficient systems mean fewer new power stations need to be built.&lt;/p&gt;

&lt;p&gt;This dev room is dedicated to the whole subject of energy efficiency in computer systems. This introductory talk provides an overview of all the approaches being taken to address this issue, particularly looking at how free and open source hardware and software is taking a leading role. It will provide a guide to the remaining sessions of the day, including the hands-on workshop where participants will have the opportunity to work with energy measurement hardware for themselves.&lt;/p&gt;</description>
        <persons>
          <person id="1569">Jeremy Bennett</person>
        </persons>
        <links>
          <link href="http://mageec.org/">MAGEEC project home page</link>
          <link href="http://video.fosdem.org/2014/AW1126/Sunday/Energy_scavenging_battery_life_and_should_we_build_more_power_stations.webm">Video</link>
        </links>
      </event>
      <event id="1918">
        <start>09:30</start>
        <duration>00:45</duration>
        <room>AW1.126</room>
        <slug>energyembedded</slug>
        <title>Measuring energy consumption in embedded systems</title>
        <subtitle/>
        <track>Energy-efficient computing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk, I will introduce the need for energy measurements for embedded devices and show how they may be performed accurately and for very low cost using a combination of off-the shelf parts and a wide range of target embedded systems.&lt;/p&gt;

&lt;p&gt;I will cover the basic physics of energy measurement and go on to display designs for energy measurement kits, including the power sensing boards recently developed as part of the MAGEEC research project.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1820">Simon Hollis</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Sunday/Measuring_energy_consumption_in_embedded_systems.webm">Video</link>
        </links>
      </event>
      <event id="1928">
        <start>10:15</start>
        <duration>00:30</duration>
        <room>AW1.126</room>
        <slug>energyllvm</slug>
        <title>An approach for energy consumption analysis of programs using LLVM</title>
        <subtitle/>
        <track>Energy-efficient computing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Energy models can be constructed by characterizing the energy consumed by executing each instruction in a processor's instruction set. This can be used to determine how much energy is required to execute a sequence of assembly instructions.&lt;/p&gt;

&lt;p&gt;However, statically analyzing low level program structures is hard, and the gap between the high-level program structure and the low-level energy models needs to be bridged. We have developed a tool for performing a static analysis on the intermediate compiler representations of a program. Specifically, we target LLVM IR, a representation used by most modern compilers including Clang.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;One of the challenges in doing so is that of determining an energy cost of executing LLVM IR program segments, for which we have developed a mapping tool. This tool associates LLVM IR program segments with assembly program segments, producing a mapping. Mapping information is useful when performing an analysis at one layer using energy models defined at a lower layer.
Essentially, this propagates the energy model defined at the instruction set
level up to the LLVM IR level, at which the analysis is performed. When this is
used with our analysis tool, we are able to infer energy formulae that
characterize the energy consumption for a particular program. This approach can
be applied to any languages targeting the LLVM toolchain or architectures
supported by LLVM.&lt;/p&gt;

&lt;p&gt;Static energy estimation has applications in program optimization, and enables
energy-aware software development.&lt;/p&gt;</description>
        <persons>
          <person id="1730">Kerstin Eder</person>
          <person id="1825">Kyriakos Georgiou</person>
          <person id="1826">Neville Grech</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/AW1126/Sunday/An_approach_for_energy_consumption_analysis_of_programs_using_LLVM.webm">Video</link>
        </links>
      </event>
      <event id="2342">
        <start>10:45</start>
        <duration>01:00</duration>
        <room>AW1.126</room>
        <slug>speedo</slug>
        <title>spEEDO: Energy Efficiency through Debug suppOrt</title>
        <subtitle/>
        <track>Energy-efficient computing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The spEEDO project aims to augment existing debug APIs (such as GNU's RSP and ARM's Coresight) with a power component for reporting and tracing energy use in multicore systems-on-chip. Energy is logged per IP block and per application thread and reports are made available to the operating system, to applications programs and over the debug interface. The aim is facilitate optimizations for energy-efficiency at all stages of software and silicon development.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Dr Greaves will report on the current state of the API and solicit adoption by and improvements from the SoC community.&lt;/p&gt;

&lt;p&gt;Dr David J Greaves.&lt;/p&gt;

&lt;p&gt;University of Cambridge Computer Laboratory in Collaboration with
Ultrasoc Limited.&lt;/p&gt;</description>
        <persons>
          <person id="2111">David Greaves</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1942">
        <start>11:45</start>
        <duration>00:30</duration>
        <room>AW1.126</room>
        <slug>energy_measurement_hw</slug>
        <title>Open Energy Measurement Hardware</title>
        <subtitle/>
        <track>Energy-efficient computing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;I will discuss how to measure energy consumption and show off the University of Bristol-designed energy monitor. This board can sample energy use with up to 6 million samples per second and the designs are open. This will allow fine-grained measurements of energy consumption, and power profiling of applications to find the energy hot-spots of a program&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1836">James Pallister</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1805">
        <start>12:15</start>
        <duration>00:15</duration>
        <room>AW1.126</room>
        <slug>open_low_power</slug>
        <title>Open Low Power Devices</title>
        <subtitle>meet the mbed open platform</subtitle>
        <track>Energy-efficient computing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;mbed is an open platform for developing ARM-based low power embedded systems (with a focus on IoT devices).&lt;/p&gt;

&lt;p&gt;This talk will provide an overview about:
  * why you might want to base your next low power device on the mbed platform
  * how to start developing only using the Free GNU GCC Toolchain and the open mbed SDK (Apache v2)
  * the measuring of the energy consumption of an mbed&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1709">Emilio Monti</person>
        </persons>
        <links>
          <link href="https://github.com/mbedmicro">mbed platform Apache v2</link>
          <link href="http://mbed.org/handbook/mbed-SDK">mbed SDK</link>
          <link href="http://mbed.org/handbook/mbed-HDK">mbed HDK</link>
        </links>
      </event>
      <event id="2329">
        <start>12:30</start>
        <duration>03:00</duration>
        <room>AW1.126</room>
        <slug>measure_energy_consumption</slug>
        <title>Measuring application energy consumption with instrumented hardware (workshop)</title>
        <subtitle/>
        <track>Energy-efficient computing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Bring along your applications and have their energy consumption measured on a pre-instrumented Arduino, Raspberry Pi or BeagleBone. Alternatively, bring along your own design on a breadboard and we'll hook up a PowerSense shield to measure the energy usage.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1517">Andrew Back</person>
          <person id="1569">Jeremy Bennett</person>
          <person id="1730">Kerstin Eder</person>
          <person id="1820">Simon Hollis</person>
          <person id="1836">James Pallister</person>
          <person id="1845">Simon Cook</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1954">
        <start>15:30</start>
        <duration>00:45</duration>
        <room>AW1.126</room>
        <slug>mageec</slug>
        <title>MAGEEC</title>
        <subtitle>MAchine Guided Energy Efficient Compilation</subtitle>
        <track>Energy-efficient computing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;MAGEEC, a collaboration between the open source software house, Embecosm, and Bristol University's microcomputer group, aims to use machine learning to improve the energy efficiency of compiled code. This entirely open source project is funded by the UK government through the Technology Strategy Board, and aims to provide working systems based on LLVM and GCC by the end of 2014.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1845">Simon Cook</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1773">
        <start>16:15</start>
        <duration>00:30</duration>
        <room>AW1.126</room>
        <slug>eacof</slug>
        <title>EACOF: The Energy-Aware COmputing Framework</title>
        <subtitle/>
        <track>Energy-efficient computing</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will cover a new open source framework, EACOF, that provides energy transparency to enable energy-aware software development.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;EACOF, an Energy Aware COmputing Framework, is a modular framework that provides a layer of abstraction between sources of energy data and the applications that exploit them. It replaces platform specific instrumentation with two APIs, to input and output data from the framework. This design allows developers to profile their code for energy consumption in a simple and portable manner.&lt;/p&gt;

&lt;p&gt;This talk will provide an overview of the structure and implementation of EACOF. It will also demonstrate how the framework can be integrated into real code to provide useful information about software energy consumption.&lt;/p&gt;</description>
        <persons>
          <person id="1651">Hayden Field</person>
          <person id="1730">Kerstin Eder</person>
          <person id="2103">James Pedlingham</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="UA2.220 (Guillissen)">
      <event id="2094">
        <start>10:30</start>
        <duration>01:45</duration>
        <room>UA2.220 (Guillissen)</room>
        <slug>lpi_3</slug>
        <title>LPI Exam Session 3</title>
        <subtitle/>
        <track>Certification</track>
        <type>certification</type>
        <language/>
        <abstract>&lt;h3&gt;LPI offers discounted certification exams at FOSDEM&lt;/h3&gt;</abstract>
        <description>&lt;p&gt;As in previous years, the Linux Professional Institute (LPI) will offer discounted certification exams to FOSDEM attendees.
LPI offers level 1, level 2 and level 3 certification exams at FOSDEM with an almost &lt;strong&gt;50% discount&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;For further information and instructions see &lt;a href="https://fosdem.org/certification"&gt;https://fosdem.org/certification&lt;/a&gt;.&lt;/p&gt;</description>
        <persons>
          <person id="1083">LPI Team</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2095">
        <start>13:00</start>
        <duration>01:45</duration>
        <room>UA2.220 (Guillissen)</room>
        <slug>lpi_4</slug>
        <title>LPI Exam Session 4</title>
        <subtitle/>
        <track>Certification</track>
        <type>certification</type>
        <language/>
        <abstract>&lt;h3&gt;LPI offers discounted certification exams at FOSDEM&lt;/h3&gt;</abstract>
        <description>&lt;p&gt;As in previous years, the Linux Professional Institute (LPI) will offer discounted certification exams to FOSDEM attendees.
LPI offers level 1, level 2 and level 3 certification exams at FOSDEM with an almost &lt;strong&gt;50% discount&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;For further information and instructions see &lt;a href="https://fosdem.org/certification"&gt;https://fosdem.org/certification&lt;/a&gt;.&lt;/p&gt;</description>
        <persons>
          <person id="1083">LPI Team</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2096">
        <start>15:00</start>
        <duration>01:45</duration>
        <room>UA2.220 (Guillissen)</room>
        <slug>lpi_5</slug>
        <title>LPI Exam Session 5</title>
        <subtitle/>
        <track>Certification</track>
        <type>certification</type>
        <language/>
        <abstract>&lt;h3&gt;LPI offers discounted certification exams at FOSDEM&lt;/h3&gt;</abstract>
        <description>&lt;p&gt;As in previous years, the Linux Professional Institute (LPI) will offer discounted certification exams to FOSDEM attendees.
LPI offers level 1, level 2 and level 3 certification exams at FOSDEM with an almost &lt;strong&gt;50% discount&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;For further information and instructions see &lt;a href="https://fosdem.org/certification"&gt;https://fosdem.org/certification&lt;/a&gt;.&lt;/p&gt;</description>
        <persons>
          <person id="1083">LPI Team</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="UA2.114 (Baudoux)">
      <event id="1840">
        <start>10:00</start>
        <duration>00:50</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>elasticsearch</slug>
        <title>Elasticsearch 1.0</title>
        <subtitle>Exploring the new features</subtitle>
        <track>NoSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Elasticsearch has reached 1.0 with many new exciting features including backup &amp;amp; restore, aggregations, and many other smaller changes. I'd like to introduce what's new on real life examples and show what they can be used for.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Elasticsearch is an open-source fully distributed search engine based on Apache Lucene. In the month prior to Fosdem there should be a 1.0 release that introduces a lot of exciting features as well as other properties - backwards compatibility guarantee for example.&lt;/p&gt;

&lt;p&gt;The talk will start with a brief introduction of what Elasticsearch is and what it can be used for. After a brief run through of the existing features we will dive into the new features, each one will be introduced and then shown in real-life code examples and live demo.&lt;/p&gt;</description>
        <persons>
          <person id="1734">Honza Král</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1763">
        <start>10:50</start>
        <duration>00:50</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>benefit_redis</slug>
        <title>How you can benefit from using Redis</title>
        <subtitle/>
        <track>NoSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;All the cool cats are using Redis and with reason: It's fast, it's robust, it's easy, and it's web scale. Redis is powering sites like twitter, instagram or pinterest, but you can also benefit from the power of redis even in a more modest project.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this session I will talk about what is redis, what you can do with it, how you can use it from your application, why you should be using it already and some common patterns when dealing with it. I will talk about:&lt;/p&gt;

&lt;p&gt;what REALLY FAST means
Redis data structures&lt;/p&gt;

&lt;p&gt;How twitter, pinterest or instagram use redis.&lt;/p&gt;

&lt;p&gt;queuing slow operations
using redis for cross-language development
atomic counters and generating sequences
dealing with temporary data in your application
redis as a cache
how to store relational data in a non relational data store
interesting problems when distributing your application.&lt;/p&gt;

&lt;p&gt;Using Lua scripting for atomic operations&lt;/p&gt;</description>
        <persons>
          <person id="1477">Javier Ramírez</person>
        </persons>
        <links>
          <link href="http://www.slideshare.net/supercoco9/fun-with-ruby-and-redis-arrrrcamp-edition-teowakijavierramirezarrrrcamp2013">slides for a similar talk I delivered at Arrrrcamp in Ghent </link>
        </links>
      </event>
      <event id="2351">
        <start>11:45</start>
        <duration>00:50</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>mongodb_schema</slug>
        <title>Schema Design with MongoDB</title>
        <subtitle/>
        <track>NoSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;MongoDB’s basic unit of storage is a document. Documents can represent rich, schema-free data structures, meaning that we have several viable alternatives to the normalized, relational model. In this talk, we’ll discuss the tradeoff of various data modeling strategies in MongoDB using a library as a sample application. You will learn how to work with documents, evolve your schema, and common schema design patterns.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1405">Christian Kvalheim</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2360">
        <start>13:35</start>
        <duration>00:50</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>interactive_couchbase</slug>
        <title>Managing data for interactive applications with Couchbase</title>
        <subtitle>Building scalable applications on top of a distributed JSON store</subtitle>
        <track>NoSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Couchbase is a highly scalable distributed database which acts both as a JSON document store and a K/V store. Uniquely, it has an integrated Memcached-compatible caching layer for blistering fast read/write operations. It’s an open source, Apache-licensed project.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2137">Terry Dhariwal</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2239">
        <start>14:30</start>
        <duration>00:50</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>nyt_cassandra</slug>
        <title>Headless with Cassandra</title>
        <subtitle>The nyt⨍aбrik project at the New York Times</subtitle>
        <track>NoSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Cassandra provides the global persistence layer for the New York Times nyt⨍aбrik project.&lt;/p&gt;

&lt;p&gt;nyt⨍aбrik (in production January 2014) is reliable, low latency messaging middleware connecting internal clients at the New York Times (breaking news, user generated content, etc) with millions of external clients around the world. The primary technologies employed are: RabbitMQ (AMQP), Cassandra, and websockets/sockjs. Components developed by the New York TImes will be made open source beginning in 2014.&lt;/p&gt;

&lt;p&gt;This presentation will focus on the use of Cassandra as the high performance distributed data store supporting the nyt⨍aбrik.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Two years ago, the New York Times launched a speculative project to radically simplify application connections among internal and external clients. The project was based upon an observation, a prediction, and a fact:&lt;/p&gt;

&lt;p&gt;Observation: World-class messaging middleware is available as open source, e.g. RabbitMQ.&lt;/p&gt;

&lt;p&gt;Prediction: Websocket messaging to almost all client devices of interest will be practical by 2014.&lt;/p&gt;

&lt;p&gt;Fact: Messaging architectures are proven to be very resilient, highly scalable, fast, and efficient.&lt;/p&gt;

&lt;p&gt;The project was named nyt⨍aбrik because: 1) my boss is Russian, 2) the result is a fabric topology, 3) I liked it.&lt;/p&gt;

&lt;p&gt;We use Amazon Web Services. A complementary idea for this project was to be completely independent of the "old" infrastructure and its management. We managed everything on our own, as well as developing software, so we could optimize both the application AND its supporting infrastructure.&lt;/p&gt;

&lt;p&gt;As you can see, the architecture implied by the above requires a gateway between websockets and "normal" messaging, e.g. AMQP (RabbitMQ). We put these gateways in the "retail" layer - they autoscale based upon client load.&lt;/p&gt;

&lt;p&gt;The "retail" instances each connect to one or more "wholesale" instances, organized into pipeline clusters. The "retail" and "wholesale" layers are spread horizontally across datacenters within regions around the world. Suffice it to say that they are 'meshed' such that there are no single points of failure. And the application structure is stateless, except for transitory queues.&lt;/p&gt;

&lt;p&gt;But we need state. When a client connects, we need to get subscription preferences and deliver breaking news, latest videos, and any personal messages for that client. And it needs to be fast. And it has to be headless and resilient like the rest of the nyt⨍aбrik.&lt;/p&gt;

&lt;p&gt;So we "outsourced" state information to Cassandra. My talk will address in detail how we chose and architected Cassandra to support the nyt⨍aбrik.&lt;/p&gt;</description>
        <persons>
          <person id="1960">Michael Laing</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2453">
        <start>15:25</start>
        <duration>00:50</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>sql_to_nosql</slug>
        <title>SQL to NoSQL, what you need to know</title>
        <subtitle>Ensuring success in a NoSQL world.</subtitle>
        <track>NoSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will cover what you need to know for success when developing against MongoDB. Schema design, indexing performance, scalability concerns, and data sharding will be covered.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2180">Christian Hergert</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2380">
        <start>16:20</start>
        <duration>00:10</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>openshift_and_mongodb</slug>
        <title>OpenShift &amp; MongoDB</title>
        <subtitle>MongoDB under the hood &amp; in the gears @OpenShift</subtitle>
        <track>NoSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;OpenShift lightning talk: OpenShift Origin is the Red Hat-sponsored Open Source Platform-as-a-Service. Under the hood, OpenShift itself utilizes a fast and reliable MongoDB cluster. With OpenShift, you can easily deploy and run applications backed by MongoDB using your favorite servers and frameworks. In this lightning talk, we'll quickly talk about MongoDb from both sides of this cloud-based application.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1678">Diane Mueller</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1638">
        <start>16:30</start>
        <duration>00:30</duration>
        <room>UA2.114 (Baudoux)</room>
        <slug>yarn_apache_hadoop</slug>
        <title>YARN, the Apache Hadoop Platform for Streaming, Realtime and Batch Processing</title>
        <subtitle>Bring your Hadoop Cluster to the next Level</subtitle>
        <track>NoSQL</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;As part of Hadoop 2.0, YARN takes the resource management capabilities that were in MapReduce and packages them so they can be used by new engines. This also streamlines MapReduce to do what it does best: process data. With YARN, you can now run multiple applications in Hadoop, all sharing a common resource management. Many organizations are already building applications on YARN in order to bring them in to Hadoop.&lt;/p&gt;

&lt;p&gt;A developer room is also organized to apply the presented technologies.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Apache Hadoop YARN is a sub-project of Hadoop at the Apache Software Foundation introduced in Hadoop 2.0 that separates the resource management and processing components. YARN was born of a need to enable a broader array of interaction patterns for data stored in HDFS beyond MapReduce, not constrained to MapReduce.&lt;/p&gt;

&lt;p&gt;The fundamental idea of YARN is to split up the two major responsibilities of the JobTracker/TaskTracker into separate entities:
- A global Resource Manager.
- A per-application Application Master.
- A per-node slave Node Manager.
- A per-application Container running on a Node Manager.&lt;/p&gt;

&lt;p&gt;These added capabilities allow enterprises to realize near real-time processing and increased ROI on their Hadoop investments. With MapReduce becoming a user-land library, it can evolve
independently of the underlying resource manager layer and in a much more agile manner.&lt;/p&gt;</description>
        <persons>
          <person id="1513">Eric Charles</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="UD2.218A">
      <event id="2326">
        <start>09:50</start>
        <duration>00:10</duration>
        <room>UD2.218A</room>
        <slug>welcome_to_testing_automation</slug>
        <title>Welcome to the Testing/Automation Devroom</title>
        <subtitle/>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A quick introduction to the devroom.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
        </persons>
        <links>
        </links>
      </event>
      <event id="1940">
        <start>10:00</start>
        <duration>00:50</duration>
        <room>UD2.218A</room>
        <slug>openstack_testing_automation</slug>
        <title>Preventing craziness: a deep dive into OpenStack testing automation</title>
        <subtitle/>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;OpenStack is a large infrastructure software stack openly developed by hundreds of developers across the world, producing hundreds of changes per day. How do we stay sane, make sure this complex software stack works, and produce releases every 6 months like clockwork?&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this talk, we'll look into the principles behind the OpenStack gate, which ensures that every proposed change goes through rigorous automated testing before being merged. We'll look into the implementation details of our cloud-based solution, which involves Jenkins, Gerrit and a set of homegrown open source tools. We'll explore the unique set of challenges created by running such a strict gating system while maintaining our development velocity. And best of all, we'll see how this whole system setup is entirely automated by Puppet with open-sourced configuration everyone can contribute to.&lt;/p&gt;

&lt;p&gt;This talk should appeal to anyone interested in successfully applying testing and automation principles in large open source projects. No previous knowledge of OpenStack is necessary.&lt;/p&gt;</description>
        <persons>
          <person id="427">Thierry Carrez</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2023">
        <start>11:00</start>
        <duration>00:20</duration>
        <room>UD2.218A</room>
        <slug>advanced_network_service_testing</slug>
        <title>ANSTE - Advanced Network Service Testing Environment</title>
        <subtitle>Testing Network Services in Multimachine Scenarios</subtitle>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;ANSTE is an open source tool designed to reproduce complex scenarios and simplify the execution of tests in several machines.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;ANSTE, uses libvirt (KVM) to virtualize networks and machines and then run on them tests written in any scripting language. This allow you to test a lot of different scenarios with different setups in an easy way.&lt;/p&gt;

&lt;p&gt;It is prepared to run additionally WebDriver tests to test web interfaces. For example, it has been used to test the MySQL cluster or complex OpenVPN scenarios configured with Zentyal.&lt;/p&gt;</description>
        <persons>
          <person id="1809">Julio J. García Martín</person>
        </persons>
        <links>
          <link href="http://www.anste.org/">Official ANSTE web page</link>
          <link href="https://github.com/Zentyal/anste">Code repository</link>
        </links>
      </event>
      <event id="1816">
        <start>11:30</start>
        <duration>00:50</duration>
        <room>UD2.218A</room>
        <slug>libc_wrapper_project</slug>
        <title>cwrap - The libc wrapper project</title>
        <subtitle>Testing your full software stack</subtitle>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Testing network applications correctly is hard.
This talk will show how to create a fully isolated network environment for client and server testing on a single host, complete with synthetic account information, hostname resolution, and privilege separation.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The libc wrapper project aims to help client/server software development teams willing to gain full functional test coverage. It makes it possible to run several instances of the full software stack on the same machine and perform locally functional testing of complex network configurations. Daemons run with privilege separation and required user and group accounts, irrespective to the hosting system. The libc wrapper project does not require virtualization and can be used to build environments with different operating systems. The project consists of a socket wrapper, NSS module wrapper (users, groups, hosts), and a (s)uid wrapper with support for GNU/Linux, BSD, OSX, and Solaris.&lt;/p&gt;</description>
        <persons>
          <person id="1540">Andreas Schneider</person>
        </persons>
        <links>
          <link href="http://cwrap.org/">Homepage</link>
        </links>
      </event>
      <event id="1979">
        <start>12:30</start>
        <duration>00:50</duration>
        <room>UD2.218A</room>
        <slug>standalone_app_testing_automation</slug>
        <title>Standalone applications testing and automation</title>
        <subtitle/>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;We are a group of engineers from Red Hat's Desktop QE team and we would like to discuss stand-alone application testing on Linux. During this workshop we'd like to show existing workflows of application testing, discuss testing tools, and overall influence of quality engineers on open source software development process.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This workshop is meant to be discussion point for every person interested in improving quality of open source application. We would like to start with sharing Red Hat's experience and approach to testing and automation across several teams, components (packages) and other interested parties.&lt;/p&gt;

&lt;p&gt;Topics to be covered (no specific order):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Success stories (Evolution, NetworkManager)

&lt;ul&gt;
&lt;li&gt;Bugs found by automated tests&lt;/li&gt;
&lt;li&gt;Code coverage improvement&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt; Static code analysis - cppcheck, clang etc.&lt;/li&gt;
&lt;li&gt; Debugging tests in VM on Jenkins&lt;/li&gt;
&lt;li&gt; 'Run per commit' vs 'daily runs' - Evolution and NetworkManager experience&lt;/li&gt;
&lt;li&gt; Downstream vs. upstream tests

&lt;ul&gt;
&lt;li&gt;Upstream: gnome-continuous, installed tests&lt;/li&gt;
&lt;li&gt;Downstream: beaker and jenkins for fedora project&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt; Integration tests on Beaker. Fedora's experince&lt;/li&gt;
&lt;li&gt; Behaviour driven testing

&lt;ul&gt;
&lt;li&gt;Abstraction and step re-use, which simplifies testing with several frontends ( GTK/QT vs TUI vs CLI testing)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt; Dogtail and accessibility:

&lt;ul&gt;
&lt;li&gt;Upstream tests in PiTiVi&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;We'd like to invite developers and QA-involved participants interested to discuss advanced ways of testing and auotmation for standalone open source applications&lt;/p&gt;</description>
        <persons>
          <person id="1771">Vadim Rutkovsky</person>
        </persons>
        <links>
          <link href="https://fedorahosted.org/dogtail/">Dogtail - UI testing tool</link>
          <link href="http://atodorov.org/blog/2013/11/19/open-source-quality-assurance-infrastructure-for-fedora-qa/">Fedora QA's experinece with Beaker</link>
        </links>
      </event>
      <event id="2152">
        <start>13:30</start>
        <duration>00:20</duration>
        <room>UD2.218A</room>
        <slug>testing_documentation</slug>
        <title>Unicorns</title>
        <subtitle>Testing Documentation</subtitle>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Ever struggled with outdated documentation which was possibly wrong to begin with? You test your components, you test the integration between services, but what about everything that you write about your software? There are approaches to testing documentation, but they are either cumbersome or too simple to be used at a larger scope. Having struggled with building an approach to improve the quality of the technical documentation for Padrino.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this talk, I'd like to both give an overview of the current state of the art of testable documentation approaches as well as discussing their shortcomings. I will also touch some of the problems that make writing such systems hard and also try to give pointers to possible solutions.&lt;/p&gt;</description>
        <persons>
          <person id="1977">Florian Gilcher</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2026">
        <start>14:00</start>
        <duration>00:50</duration>
        <room>UD2.218A</room>
        <slug>automating_foreman_instructure</slug>
        <title>Automation in the Foreman Infrastructure</title>
        <subtitle>A user success story</subtitle>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A look at how Foreman uses automation internally to handle testing and release management.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;In this talk I'll walk through how the Foreman developers use automation to run end-to-end tests, automatically test Pull Requests (including building packages with submitted changes in) and manage the release process for a new release of Foreman. I'll also cover how we use Foreman to manage the Jenkins slaves, and briefly talk about what we'd still like to accomplish with our automation.&lt;/p&gt;</description>
        <persons>
          <person id="1309">Greg Sutcliffe</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2030">
        <start>15:00</start>
        <duration>00:50</duration>
        <room>UD2.218A</room>
        <slug>performance_testing_puppet_with_gatling</slug>
        <title>Using Gatling and Jenkins to Performance Test Puppet</title>
        <subtitle>Puppet Gatling</subtitle>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Puppet Gatling is a Jenkins-CI plugin that post-processes Gatling simulation data to generate useful reports for load-testing Puppet. With this tool, users are able to discover a clear difference in performance between various versions of Puppet. Puppet Gatling is built upon open source tools such as the Gatling Jenkins plugin, Puppet, Cobbler, and Apache’s Maven development tool.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Puppet Gatling builds on the idea that after each commit or version of a project, a graph will be generated from load testing, giving insight into the performance of Puppet. If bugs are fixed or even unintentionally introduced, Puppet Gatlings load test will be able to show the differences after the load test run. With the use of Puppet Gatling, developers will be able to see improvements or bugs right away after each commit to a project.&lt;/p&gt;

&lt;p&gt;The main goal of this project was to develop better reporting tools to automatically display performance increases (or decreases) per commit in a code base such as Puppet. Puppet Gatling will display graphs in Jenkins that show different important facts of performance such as Catalog Compile Time, Agent Run Time, and if there are any failures. Important to note: If failures occur, agent run time will decrease and look fast to the user. So in that case, we placed failures graph right below agent run time.&lt;/p&gt;

&lt;h2&gt;Jenkins CI Plugin Development&lt;/h2&gt;

&lt;p&gt;With the use of Maven, Puppet Gatling was developed using the Jenkins CI Plugin development tools.&lt;/p&gt;

&lt;h2&gt;Modification of Gatling&lt;/h2&gt;

&lt;p&gt;The Gatling Project has provided a plugin that you can hook into Jenkins which keeps track of different simulation information and a detailed view of each build that runs on Jenkins. By simply adding the plugin to a Jenkins job, it will display a few different trend graphs across builds including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mean response time trend&lt;/li&gt;
&lt;li&gt;95th percentiles response time trend&lt;/li&gt;
&lt;li&gt;Percentage of failed requests&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;These graphs provide some great information about the job, however understandably so do not account for how Puppet runs work between a master and its agents. This means that the data is calculated incorrectly. Thus the need for a plugin extension, Puppet-Gatling.&lt;/p&gt;

&lt;h2&gt;Use of Puppet&lt;/h2&gt;

&lt;p&gt;This tool takes advantage of Puppets Facter to gather facts about the operating systems these tests are running on. These facts give a more complete picture about all of the load tests. Some facts that are collected include speed of CPU and number of cores, which version of Puppet is running, the disk size, and memory size.
Benefits of Projects&lt;/p&gt;

&lt;p&gt;With this project, you will be able to see a graphical representation of performance over time between commits and versions of products. After development, graphs showed a flaw in Puppet that was fixed in later version. This bug might of been more obvious had Puppet Gatling been used.&lt;/p&gt;</description>
        <persons>
          <person id="1691">Brian Cain</person>
        </persons>
        <links>
          <link href="http://puppetlabs.com/blog/puppet-gatling-and-jenkins-together">Blog Post</link>
          <link href="https://github.com/puppetlabs/puppet-gatling">Project Home</link>
          <link href="https://github.com/puppetlabs/gatling-puppet-load-test">Setup Project that runs before Puppet Gatling</link>
        </links>
      </event>
      <event id="2020">
        <start>16:00</start>
        <duration>00:50</duration>
        <room>UD2.218A</room>
        <slug>testing_in_the_php_world</slug>
        <title>Pride and Prejudice: Testing in the PHP World</title>
        <subtitle/>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Join Sebastian Bergmann, the creator of PHPUnit, as he shares his experience on how PHPUnit is used in different communities and projects, and what has been learnt along the way.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Parts of the PHP community take pride in code that is of high quality and well tested. Outside of the PHP community the prejudice against the language and its ecosystem still prevails. Quality Assurance in general and Unit Testing in particular have come a long way since the inception of PHPUnit thirteen years ago: simple PHP programming has evolved into software engineering with PHP.&lt;/p&gt;</description>
        <persons>
          <person id="1880">Sebastian Bergmann</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2327">
        <start>17:00</start>
        <duration>00:30</duration>
        <room>UD2.218A</room>
        <slug>jenkins_bof</slug>
        <title>Jenkins developers/users birds of a feather</title>
        <subtitle/>
        <track>Testing and automation</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Ad-hoc meeting of Jenkins developers and users in attendance at FOSDEM.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="K.3.201">
      <event id="2412">
        <start>09:00</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>logic_programming_in_python</slug>
        <title>Logic Programming in Python</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;So far, the Python community has shown little interest in Logic Programming.&lt;/p&gt;

&lt;p&gt;Yet, it is one of the three main programming paradigms, together with imperative and functional programming. Thanks to pyDatalog, a Python package which embeds Logic Programming within Python, Python programmers can now solve complex problems through highly readable and declarative programs. This talk will introduce you to Logic Programming through examples written in Python + pyDatalog.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2160">Pierre Carbonnelle</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2384">
        <start>09:30</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>introduction_to_pytest_fixtures</slug>
        <title>Introduction to py.test fixtures</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;py.test is a powerful and Pythonic unit testing tool which can scale from a few quick no-boilerplate tests to running huge unit and integration test suites.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;One unique and powerful feature of py.test the dependency injection of test fixtures into the tests using function arguments. While the injection of fixtures via function arguments looks uncommon when used to the traditional JUnit setup and teardown mechanisms, py.test's fixtures are simple yet very flexible and arguably more powerful. This talk will walk through simple fixtures building up to show how to create more complicated setups by composing fixtures, controlling their scope and paremetrisation. This should lead to a good understanding of why fixtures are designed the way they are and why this is a very good and helpful mechanism to setup a test suite.&lt;/p&gt;</description>
        <persons>
          <person id="1860">Floris Bruynooghe</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2390">
        <start>10:00</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>openpyxl</slug>
        <title>OpenPyXL</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Presenting how to easily use Excel as a container for typed tabular data in Python, performance hints, and a progress status of the library after 3 years of development.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2147">Eric Gazoni</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2391">
        <start>10:30</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>python_eve_rest_api_framework</slug>
        <title>Introducing the Eve REST API Framework</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;You have data stored somewhere and you want to expose it to your users through a RESTful Web API. How?&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Eve is the BSD-licensed, Flask-powered tool that allows you to quickly and easily go online. Eve provides a robust, feature rich, REST-centered API implementation. MongoDB support comes out of the box, and community-driven efforts to deliver ElasticSearch and SQLAlchemy data layers are ongoing. Eve approach is such that you only need to configure your API settings and behaviour, plug in your datasource, and you’re good to go. Features such as Pagination, Sorting, Conditional Requests, Concurrency Control, Validation, HATEOAS, JSON and XML rendering, Projections, Customisable Endpoints are included. Advanced features such as custom Authentication and Authorisation, Custom Validation, Embedded Resource Serialisation are also available. In my talk I will introduce the project and its community, recount why and how it's being developed, and show the current roadmap.&lt;/p&gt;</description>
        <persons>
          <person id="2149">Nicola Iarocci</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2382">
        <start>11:00</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>stack_switching_for_fun_and_profit</slug>
        <title>Stack switching for fun and profit</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Greenlet is a pretty well-known way for implementing cooperative micro-threads in Python, but how does it actually work? How is it similar and different from Stackless? We'll take a peek at how PyPy implemented it using a small library called 'stacklet' and how the python-fibers project takes advantage of it to build a similar project.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="186">Saúl Ibarra Corretgé</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2394">
        <start>11:30</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>sqlalchemy_drill</slug>
        <title>SQLAlchemy Drill</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;If you have been looking to use SQLAlchemy in one of your projects, but found the documentation a bit overwhelming then this talk is for you.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;If you have used SQLAlchemy but feel there are some holes in your knowledge of the library, then this talk is for you as well. The idea is that during this talk you bring your laptop with you, and make sure you have SQLAlchemy installed. At the beginning of the talk, we fire up our Python interpreter and start to explore the library in a structured way. In the next 25 minutes, we'll go hands on through the various parts of the SQLAlchemy. We try out the concepts of each part of the library and make sure the basics are well understood.&lt;/p&gt;</description>
        <persons>
          <person id="2152">Erik Janssens</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2405">
        <start>12:00</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>some_recipes_with_alembic</slug>
        <title>Some recipes with Alembic</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The SysGrove® project is mainly based on PyQt4 and SQLAlchemy. Application development and enhancement is ongoing and as a matter of fact, the database scheme is changing quite often with many migrations per day.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;As the minimal set of data to test and run the application is quite important, we use Alembic to handle database migrations. It is rather simple to put Alembic in place and to run automatic migrations. The process is well documented in Alembic itself and has been detailed in some places on the web (http://www.chesnok.com/daily/2013/07/02/a-practical-guide-to-using-alembic/ for example). However it is more difficult to find examples of complex migration problems. Alembic auto-migration only handles the following cases : - Table additions, removals. - Column additions, removals. - Change of nullable status on columns. - Basic changes in indexes and explicitly-named unique constraints Combining Alembic together with SQLAlchemy provides many ways to handle more complex cases. In this talk, we will deal with examples such as : - rename a column in a table - adding an Enum column - add a none nullable columns in a table containing data - dealing with sequences - updating data from a migration scripts - ...&lt;/p&gt;

&lt;p&gt;http://sysgrove.com/
http://pyqt.sourceforge.net/Docs/PyQt4/index.html
http://www.sqlalchemy.org/&lt;/p&gt;</description>
        <persons>
          <person id="2156">Claude Huchet</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2386">
        <start>12:30</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>postmortem_debugging_and_web_development</slug>
        <title>Post-mortem Debugging and Web Development</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Developers tend to ignore that users can be more creative than them. Use their debugging skills for your own benefit: post-mortem debugging is one of the most important features your web framework can provide.&lt;/p&gt;

&lt;p&gt;This talk will cover some of the simplest practices and available tools for debugging on production environments and to immediately improve quality of your web applications.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1707">Alessandro Molina</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2392">
        <start>14:00</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>the_next_generation_psf</slug>
        <title>The next generation Python Software Foundation (PSF)</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The PSF was founded in 2001 with a closed membership model in mind. The original idea being that all contributors to Python would become members and to have the PSF provide a platform to defend Python's copyright.
Since then, the PSF has changed its focus from a purely legal entity to one that supports the international Python community by providing guidance, and financial and organizational help. At the last PSF Membership Meeting the members decided it was time to acknowledge this change in focus and to open up PSF membership to the whole Python community. This talk will explain the reasons, the new model, and the road map to get it implemented.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2150">Marc-André Lemburg</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2389">
        <start>14:30</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>how_pypy_makes_your_code_run_fast</slug>
        <title>How PyPy makes your code run fast</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;PyPy is an implementation of Python which is both fast and faithful to the Python syntax, PyPy's Just-In-Time (JIT) compiler is the key to that compromise. This talk will explains how PyPy's JIT can gather data at runtime to produce efficient machine code.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2146">Romain Guillebert</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2408">
        <start>15:00</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>pyp_stm</slug>
        <title>Using All These Cores: Transactional Memory under the hood (PyPy)</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A picture of how the future of multi-threaded programming might looks like, for high-level languages like Python.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;PyPy, the Python implementation written in Python, has grown an experimental branch playing with Transactional Memory (TM). The strength of TM is to enable a novel use of multithreading, inheritently safe, but not limited to special use cases like other approaches. We have played with a lot of variants of STM (Software-only) in PyPy, and based on this experience I can give the strong points of the currently pursued variant. In particular it should have overheads much smaller than the typical "2x", and it would be possible to expand it to Hybrid TM (using the hardware support in recent Intel CPUs).&lt;/p&gt;</description>
        <persons>
          <person id="2148">Armin Rigo</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2383">
        <start>15:30</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>deep_dive_into_pep3156</slug>
        <title>A deep dive into PEP3156, the new asyncio module</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Last year I talked about how PEP-3156 and Tulip (the canonical implementation) would change the async i/o landscape in Python. A year later it became real, merged into stdlib, and will be part of Python 3.4. We'll dive deep into the internals of this new module and learn how those coroutines, tasks, and future work together.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="186">Saúl Ibarra Corretgé</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2381">
        <start>16:00</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>concurrent_programming_with_python</slug>
        <title>Concurrent programming with Python and my little experiment</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Concurrent programming in Python may be hard. A lot of solutions exists though. Most of them are based on an eventloop. In this I talk will present what I discovered and tested along the time with code examples, from asyncore to asyncio, passing by gevent, eventlet, twisted, and some new alternatives like evergreen or gruvi. I will also present my little experiment in porting the Go concurrency model in Python named "offset", how it progressed in 1 year and how it became a fully usable library at the time of this talk.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1385">Benoit Chesneau</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2387">
        <start>16:30</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>integrating_python_and_c_using_cffi</slug>
        <title>Integrating Python and C using CFFI</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;One of Python's early and lasting strengths has been how easy it is to call into or wrap existing C libraries using extension modules. However, there are still many subtle details to take care off and it is all to easy to leak references or memory.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Over time additional mechanisms have been created, like SWIG, ctypes and Cython, all with their own barriers to entry, strong points and limitations. The most recent addition is the CFFI project from PyPy. This talk will try to cover what the limitations of various approaches are and how CFFI tries to address them. Also noting some possible stumbling blocks when chosing CFFI and pointing out where it falls short of it's promises.&lt;/p&gt;</description>
        <persons>
          <person id="1860">Floris Bruynooghe</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2457">
        <start>17:00</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>pyp_fast_python_virtual_machine</slug>
        <title>PyPy : a fast Python Virtual Machine</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;PyPy is a fast Python Virtual Machine written in Python. This talk will tell about the history of the project, how it works, how fast it is, why it is fast, and what other things it can bring to its users.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2146">Romain Guillebert</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2385">
        <start>17:30</start>
        <duration>00:30</duration>
        <room>K.3.201</room>
        <slug>generators_or_how_to_step_to_the_infinite</slug>
        <title>Generators, or how to step to the infinite and beyond</title>
        <subtitle/>
        <track>Python</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;After defining what an iterator is, we will show some interesting use cases and explain how they work in depth.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1397">Andrea Crotti</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="K.3.401">
      <event id="2335">
        <start>09:30</start>
        <duration>00:30</duration>
        <room>K.3.401</room>
        <slug>javascript_welcome</slug>
        <title>Javascript Room Welcome</title>
        <subtitle/>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The organizing team will welcome you and kick off the first ever Fosdem Javascript Devroom!&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1590">Steven Beeckman</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K3401/Sunday/Javascript_Room_Welcome.webm">Video</link>
        </links>
      </event>
      <event id="1798">
        <start>10:00</start>
        <duration>00:40</duration>
        <room>K.3.401</room>
        <slug>beyond_todo_list</slug>
        <title>Beyond the To-do List</title>
        <subtitle>Advanced Javascript Architecture with AMD, Modules, and Backbone</subtitle>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;There are thousands of examples, using a myriad of JavaScript frameworks, of how to code a To-Do list. However, when looking for examples of more complex architectures, it is easy to despair.... Based on experience gathered as a Web Developer at trivago, here is one approach to structuring complex JavaScript applications using AMD, modules, and Backbone.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1703">Jan van Thoor</person>
        </persons>
        <links>
          <link href="http://trivago.com">trivago</link>
        </links>
      </event>
      <event id="1793">
        <start>10:45</start>
        <duration>00:40</duration>
        <room>K.3.401</room>
        <slug>javascript_app_scalable</slug>
        <title>Building front-end JavaScript apps that scale</title>
        <subtitle/>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Developing large apps is difficult. Ensuring that the code is consistent, well structured, tested, and that the architecture encourages maintainability is essential. When it comes to building large server-focused apps the solutions to this problem have been tried and tested. But, how do we achieve this when it comes to HTML5 single page apps?&lt;/p&gt;

&lt;p&gt;In this talk you'll learn about the main concepts we have applied, how we have applied them - and how you can too - to achieve what might sound like the impossible.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;BladeRunnerJS is an open source developer toolkit and lightweight front-end framework that has helped the company I work for (Caplin Systems) ensure that a 200k LoC JavaScript codebase hasn’t become a tangled mess of unstable spaghetti code (with bacon bits). This codebase is then delivered to customers, along with around 50k LoC example functionality for them to build upon, and they're expected not to turn that into a tangled ... you get the idea.&lt;/p&gt;</description>
        <persons>
          <person id="1696">Phil Leggetter</person>
        </persons>
        <links>
          <link href="http://bladerunnerjs.org">BladeRunnerJS website</link>
          <link href="https://github.com/BladeRunnerJS/brjs">BladeRunnerJS github repo</link>
          <link href="http://video.fosdem.org/2014/K3401/Sunday/Building_frontend_JavaScript_apps_that_scale.webm">Video</link>
        </links>
      </event>
      <event id="2339">
        <start>11:30</start>
        <duration>00:40</duration>
        <room>K.3.401</room>
        <slug>javascript_d3_webapps</slug>
        <title>Cute - a smaller Angular</title>
        <subtitle/>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;AngularJS is vodoo, big vodoo. How much of Angular's goodness could be fitted into a library the size of Backbone (10x smaller)? Cute is a attempt to do just that.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2106">Tim Ruffles</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2170">
        <start>12:15</start>
        <duration>00:40</duration>
        <room>K.3.401</room>
        <slug>javascript_evolutionary_algorithms</slug>
        <title>Evolutionary algorithms</title>
        <subtitle>In the browser and in the server and multi-threaded and everywhere</subtitle>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk, we will present the state of the art and history of volunteer and, in particular, browser-based computing, will make a general introduction to evolutionary computation, and then how this type of algorithms can be adapted to run on ephemeral, distributed, asynchronous, and heterogeneous nodes. We will present our NodEO and jsEO evolutionary algorithm libraries and the result of some experiments using this platform. Finally, we will generalize and show a general methodology for doing scientific computing using JavaScript.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1263">Juan Julián Merelo</person>
        </persons>
        <links>
          <link href="https://github.com/CANUBE/jsEO">jsEO, evolutionary algorithms in the browser</link>
          <link href="https://github.com/JJ/nodeo">NodEO, node evolutionary algorithm</link>
        </links>
      </event>
      <event id="1963">
        <start>13:00</start>
        <duration>00:25</duration>
        <room>K.3.401</room>
        <slug>javascript_hypermedia_angular</slug>
        <title>Using a hypermedia API with Angular.js</title>
        <subtitle/>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;A big part of REST is the idea of Hypermedia As The Engine Of Application State. Using HATEOAS brings the qualities of the web such as the robustness and scalability to your system.&lt;/p&gt;

&lt;p&gt;In this presentation you will see how we have built a hypermedia-driven client using Angular.js. The media type we have used is HAL.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1856">Pieter Herroelen</person>
        </persons>
        <links>
          <link href="http://stateless.co/hal_specification.html">HAL specification</link>
          <link href="http://angularjs.org/">Angular.js website</link>
        </links>
      </event>
      <event id="2046">
        <start>13:30</start>
        <duration>00:40</duration>
        <room>K.3.401</room>
        <slug>javascript_enterprise</slug>
        <title>Javascript for enterprise</title>
        <subtitle/>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Developing in enterprise is different to develop alone at home for fun. You need to have a mature stack with a tool chain that covers debugging, unit testing, software architecture, design patterns, etc. Nowadays, the Javascript community is mature enough to propose a stack that matches all aspects of the enterprise world perfectly.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1594">Sandro Munda</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2040">
        <start>14:15</start>
        <duration>00:40</duration>
        <room>K.3.401</room>
        <slug>javascript_hidden_gems_npm</slug>
        <title>Hidden gems in npm</title>
        <subtitle>New features and hidden gems to make you more productive</subtitle>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Node has one of the best package managers around: npm. With more than 50k packages the npm registry has an average growth of 116 packages/day and every month a lot of features are added to npm itself. In my talk I will show some brand new features and hidden gems to make you a more productive npm user.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Most of npm's features are unknown to most developers, but in fact they would make their life more productive.&lt;/p&gt;

&lt;p&gt;In the beginning of my talk I am giving an intro on the history of npm and how npm works behind the scenes. I will show some brand new features and hidden gems to make the audience a more productive npm user and also show some really nice other projects from the node community related to npm which will also increase your productivity.&lt;/p&gt;</description>
        <persons>
          <person id="1915">Robert Kowalski</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1959">
        <start>15:00</start>
        <duration>00:40</duration>
        <room>K.3.401</room>
        <slug>autonomous_flight</slug>
        <title>Javascript &amp; Robotics</title>
        <subtitle>Implementing autonomous flight of a quadcopter in NodeJS.</subtitle>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Will you have an autonomous flying robot taking your pictures and filming you during your next holidays?&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Although it may sound like science fiction, it is in fact possible today, and with just a few hundred euro worth of equipment. Robotics is reaching the stage where every hobbyist can play with it, at low cost, and with accessible programming languages such as Javascript. I'll present my work on implementing autonomous flight of a quadcopter in Javascript. This work is based on the popular #nodecopter project and libraries.&lt;/p&gt;

&lt;p&gt;The talk will consist of a brief introduction to the Nodecopter project, and an overview of some basic robotics concepts and how I implemented them in NodeJS. We will discuss state estimation, Kalman Filters, tag/object detection, mission planning, etc.&lt;/p&gt;</description>
        <persons>
          <person id="1592">Laurent Eschenauer</person>
        </persons>
        <links>
          <link href="http://eschnou.github.io/ardrone-autonomy/">ARDrone Autonomy</link>
          <link href="http://eschnou.github.io/ardrone-webflight/">ARDrone WebFlight</link>
        </links>
      </event>
      <event id="2338">
        <start>15:45</start>
        <duration>00:40</duration>
        <room>K.3.401</room>
        <slug>javascript_in_real_world</slug>
        <title>JavaScript in the Real World</title>
        <subtitle/>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Anything that can be written in JavaScript will eventually be written in JavaScript. First client side web apps, then server side programs, and now you can control hardware, embedded devices and even flying robots with JavaScript.&lt;/p&gt;

&lt;p&gt;We'll look at how you can get started writing JavaScript for Ardunio and Raspberry Pi to read sensors and control servos and build your own JavaScript powered robots.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="2108">Andrew Nesbitt</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2346">
        <start>16:30</start>
        <duration>00:30</duration>
        <room>K.3.401</room>
        <slug>javascript_wrapup</slug>
        <title>Javascript Devroom Wrap-up</title>
        <subtitle>Feedback on the day and discussion about next year</subtitle>
        <track>JavaScript</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;We just had the first ever Javascript Devroom at FOSDEM and want to get some feedback on the day, and an open discussion on future editions.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1590">Steven Beeckman</person>
          <person id="1592">Laurent Eschenauer</person>
          <person id="2108">Andrew Nesbitt</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="K.4.201">
      <event id="2212">
        <start>10:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>valgrind_eclipse</slug>
        <title>Valgrind Support in the Eclipse IDE</title>
        <subtitle>An Overview of the Eclipse Valgrind plugin provided by the Linux Tools Project</subtitle>
        <track>Valgrind</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;For developers, it can often be a bit of a learning curve to learn the proper use of a new tool. For certain development tools the entry barrier can be quite high and can often discourage users. The Linux Tools Project aims to improve the state of C/C++ development on the Eclipse IDE by integrating popular tools, such as Valgrind.&lt;/p&gt;

&lt;p&gt;This talk is aimed at people of varying experience with the Valgrind tool who have never used it within the Eclipse IDE.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;An overview of the Eclipse Valgrind plugin provided by the Linux Tools Project will be given. Topics discussed will include :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Quick overview of the Linux Tools Project&lt;/li&gt;
&lt;li&gt;Introduction to the Eclipse Valgrind plugin&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Demonstration
- Memcheck, Massif, Helgrind, Cachegrind support
- Eclipse Platform specific integrations (Error markers, Problems View)
- Simple Auto-correction for common Memcheck/Helgrind problems
- Support for execution on remote targets&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Possible improvements to Valgrind tool&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Challenges faced regarding Valgrind tool&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="2034">Roland Grunberg</person>
        </persons>
        <links>
          <link href="http://www.eclipse.org/linuxtools/">Linux Tools Project Page</link>
          <link href="http://wiki.eclipse.org/Linux_Tools_Project/Valgrind/User_Guide">Eclipse Valgrind Plugin User Guide</link>
        </links>
      </event>
      <event id="2188">
        <start>10:30</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>valgrind_testing</slug>
        <title>Testing of valgrind RPMs in RHEL</title>
        <subtitle/>
        <track>Valgrind</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Valgrind is a tool which can be used for testing but also needs to be tested itself as any other piece of software.  This talk will focus on testing done before releasing a new Valgrind RPM in Red Hat Enterprise Linux.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Overview:
- types of tests I do
- what they are trying to achieve
- what bugs I often hit
- ideas I have for improvement
- Q/A + Discussion (perhaps how to work closely with upstream)&lt;/p&gt;</description>
        <persons>
          <person id="1985">Miroslav Franc</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1849">
        <start>11:00</start>
        <duration>00:50</duration>
        <room>K.4.201</room>
        <slug>valgrind_simuvex</slug>
        <title>SimuVEX</title>
        <subtitle>Using VEX in Symbolic Analysis</subtitle>
        <track>Valgrind</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;VEX, as part of Valgrind, is well-established in the world of dynamic analysis. However, there are certain questions that are best answered by  symbolic analyses. In this talk I will describe the ideas behind symbolic analysis, detail challenges frequently faced when attempting to implement it, and introduce the work ongoing at UC Santa Barbara to use VEX to address these challenges, and implement a large-scale symbolic analysis system.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;VEX is designed and widely used in dynamic analysis, in the form of Valgrind. Barring some implementation issues, VEX's side-effects-free, mostly-architecture-independent implementation provides an effective base on which to build non-dynamic analyses, as well. Specifically, we have used VEX to implement architecture-independent static and symbolic analyses.&lt;/p&gt;

&lt;p&gt;Symbolic analysis is an active area of research, and many challenges are faced when attempting to implement it. These challenges include tradeoffs between tractability and precision when reasoning about symbolic memory, the NP-completeness of the underlying SMT-solving algorithms, difficult-to-analyze program actions, and many others. Some of these challenges are unsolveable, but compromises can be made to achieve useful results with symbolic analysis. This talk attempts to outline these challenges, describe some solutions, and provide a guide for parties interested in symbolic analysis with VEX.&lt;/p&gt;</description>
        <persons>
          <person id="1761">Yan Shoshitaishvili</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1851">
        <start>13:00</start>
        <duration>00:50</duration>
        <room>K.4.201</room>
        <slug>valgrind_helgrind</slug>
        <title>Helgrind: a constraint-based data race detector</title>
        <subtitle/>
        <track>Valgrind</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will present the basic algorithm, the metadata compression scheme, and the scheme for collecting both stacks of a race.  I'd also like to talk about the relationship between this and "traditional" h-b implementations since both schemes have advantages and disadvantages.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Helgrind, one of the Valgrind tools, provides data race detection
using a pure happens-before algorithm.  Unlike many happens-before
implementations, Helgrind does not detect races by creating
address-indexed bitmaps and checking them at inter-thread
synchronisation points.  Instead, Helgrind maintains, for each byte in
the address space, two vector timestamps that specify the constraints
for future race-free reads and writes to that location.  This presents
major difficulties in storing so much information, but also makes it
possible to provide exact backtraces for both accesses in a race.&lt;/p&gt;

&lt;p&gt;This talk does not cover Helgrind's lock-order checking algorithm.
Although also interesting, that is a different piece of functionality.&lt;/p&gt;</description>
        <persons>
          <person id="143">Julian Seward</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1987">
        <start>14:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>valgrind_solaris</slug>
        <title>Porting Valgrind on Solaris</title>
        <subtitle/>
        <track>Valgrind</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk describes a port of Valgrind to the Solaris operating system. It presents an introduction to the project, a current status of the project, porting difficulties stemming from differences between Linux and Solaris, testing of the port, and plans for the future. A brief introduction to the history of Solaris is included as well.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1732">Ivo Raisr</person>
          <person id="1764">Petr Pavlu</person>
        </persons>
        <links>
          <link href="https://bitbucket.org/setupji/valgrind-solaris/">https://bitbucket.org/setupji/valgrind-solaris/</link>
        </links>
      </event>
      <event id="2137">
        <start>15:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>gdb_target_run_valgrind</slug>
        <title>GDB, so where are we now?</title>
        <subtitle>Status of GDB's ongoing target and run control projects</subtitle>
        <track>Valgrind</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk, I will present an overview of the current state of several GDB projects of interest to Valgrind developers looking at GDB/Valgrind integration, including the current state of GDBserver in GDB, where we are on local vs remote feature parity, all-stop vs non-stop modes, multi-process and multi-target projects, reverse debugging, and possibly others.&lt;/p&gt;</abstract>
        <description>&lt;ul&gt;
&lt;li&gt;current state of GDBserver in GDB&lt;/li&gt;
&lt;li&gt;where we are on local vs remote feature parity&lt;/li&gt;
&lt;li&gt;all-stop vs non-stop modes&lt;/li&gt;
&lt;li&gt;multi-process debugging&lt;/li&gt;
&lt;li&gt;multi-target projects&lt;/li&gt;
&lt;li&gt;reverse debugging&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1954">Pedro Alves</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2217">
        <start>15:30</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>valgrind_gdb</slug>
        <title>Combining the power of Valgrind and GDB</title>
        <subtitle/>
        <track>Valgrind</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk will describe basic and more advanced functionalities provided by the combination of GDB and Valgrind.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Valgrind has an embedded GDB server.  That means it
is possible to control a Valgrind run from GDB, doing all the usual
things that GDB can do (single stepping, breakpoints, examining
data, etc).  Interactive Valgrind tool-specific functionality is available.
For example, it is possible to query the definedness state of variables
or memory from within GDB when running Memcheck; arbitrarily large
memory watchpoints are supported; incremental leak search etc.&lt;/p&gt;

&lt;p&gt;If time permits, a demo or description will be given for
all or most or many or some of the below:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;basic use&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;how to activate the Valgrind gdbserver and connect GDB to it using the vgdb relay.&lt;/li&gt;
&lt;li&gt;valgrind monitor command handling&lt;/li&gt;
&lt;li&gt;Valgrind output redirection&lt;/li&gt;
&lt;li&gt;List the errors (or last error) found by Valgrind&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Memcheck advanced functionalities&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;interactive leak search&lt;/li&gt;
&lt;li&gt;display the addresses and content of leaked blocks&lt;/li&gt;
&lt;li&gt;find who still has pointer(s) to a not freed piece of memory&lt;/li&gt;
&lt;li&gt;arbitrary large memory watchpoints
  (unlimited 'simulated' hardware watchpoints)&lt;/li&gt;
&lt;li&gt;examine or change the Accessibility and Validity bits&lt;/li&gt;
&lt;li&gt;shadow registers examination&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Use vgdb to command Valgrind tools from the shell or from shell scripts.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Other Valgrind tools interactive control&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Massif memory snaphots&lt;/li&gt;
&lt;li&gt;Dump or zero Callgrind counters&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Other Valgrind gdbserver "core" functionality&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Threads state display&lt;/li&gt;
&lt;li&gt;Display "leaked" file descriptors&lt;/li&gt;
&lt;li&gt;Display some internal information about Valgrind&lt;/li&gt;
&lt;li&gt;Limitations of the Valgrind gdbserver&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1402">Philippe Waroquiers</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2334">
        <start>16:00</start>
        <duration>00:25</duration>
        <room>K.4.201</room>
        <slug>gdb_bof</slug>
        <title>BoF: Valgrind and GDB integration</title>
        <subtitle>Crazy and fun ways to make the Valgrind/GDB combo more powerful</subtitle>
        <track>Valgrind</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Given the current state of Valgrind and GDB how can we make things even better and smoother? Put some Valgrind and GDB hackers in the same room and let them discuss the technical details needed on each side. Come and help us brainstorm some crazy and fun ways to make the Valgrind/GDB combo even cooler and more powerful.&lt;/p&gt;</abstract>
        <description>&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Setting up Valgrind with GDB is a bit more work than some would like. Wouldn't it be nice if all one would need to do inside GDB would be:&lt;/p&gt;

&lt;p&gt;(gdb) target valgrind
(gdb) run&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Exactly how one gets here though ... may need changes to both GDB and Valgrind. Can "target valgrind" also work nicely with ssh somehow, so you can gdb a valgrind on a different machine.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;How can we get extended-remote features from Valgrind? In particular it would be nice to have multi-inferior working. This is tricky, though, because in the Valgrind model each new inferior would have its own gdbserver.  Brainstorm solutions.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Can we get Valgrind to handle non-stop? This is the direction GDB is moving towards.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Right now Valgrind provides "monitor" commands to control it. Could instead let Valgrind create real commands with completion; perhaps via Python. Is this worth doing; and how would we do it?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Likewise is it interesting for memcheck to provide a convenience function that can be used to tell whether some memory is valid? On the GDB side it might be interesting if the function could work with ASAN or gdb-heap as well.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Given that Valgrind sees everything you get unlimited "hardware" data watchpoints. Do you want more?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Reverse debugging using Valgrind.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Can GDB put breakpoint tracepoint expressions in a Valgrind inferior that VEX would JIT?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Given the work on GDB catch syscall support are there any more catch targets that Valgrind could/should provide?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="1585">Tom Tromey</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2268">
        <start>16:30</start>
        <duration>01:15</duration>
        <room>K.4.201</room>
        <slug>valgrind_bof</slug>
        <title>BoF: Ideas, new features and directions for Valgrind</title>
        <subtitle>Open discussion about small (or big) ideas to improve or change Valgrind.</subtitle>
        <track>Valgrind</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Valgrind developers and users are encouraged to participate either by submitting ideas/suggestions or by joining the discussion. And of course by kindly (or bitterly:) complain about bugs you find important that are &lt;em&gt;still&lt;/em&gt; &lt;em&gt;Not&lt;/em&gt; &lt;em&gt;YET&lt;/em&gt; solved for &lt;em&gt;that&lt;/em&gt; many years!?@!!!&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Discuss any kind of possible improvement (technical or functional) to Valgrind.&lt;/p&gt;

&lt;p&gt;If you want to put something on the agenda please send a small description (one or two paragraphs) to the the moderator Mark Wielaard &lt;a href="&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#116;&amp;#x6f;&amp;#x3a;&amp;#x6d;&amp;#106;&amp;#x77;&amp;#x40;&amp;#x72;&amp;#101;&amp;#x64;&amp;#x68;&amp;#97;&amp;#116;&amp;#46;&amp;#x63;&amp;#111;&amp;#x6d;"&gt;&amp;#x6d;&amp;#x6a;&amp;#x77;&amp;#x40;&amp;#114;&amp;#x65;&amp;#100;&amp;#x68;&amp;#97;&amp;#116;&amp;#x2e;&amp;#99;&amp;#111;&amp;#109;&lt;/a&gt; with in the subject: "FOSDEM devroom discuss: ..." If you want to discuss a somewhat larger topic please do feel free to send two or three slides in advance.&lt;/p&gt;

&lt;p&gt;Mark will collect ideas/suggestions/... and present these and coordinate the discussion (and keep track of the time, so every idea will be discussed).&lt;/p&gt;

&lt;p&gt;Suggested discussion topics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Release/bugfixing strategy/policy.&lt;/li&gt;
&lt;li&gt;Valgrind and transactional memory.&lt;/li&gt;
&lt;li&gt;Making Valgrind really multi-threaded, parallelising Memcheck, parallelising the rest of the framework, and tools.&lt;/li&gt;
&lt;li&gt;Instant leak detector. Modify memcheck to report the last leaked pointer to a block. Integrate "omega" as a memcheck option or omega as a separate tool.
http://www.brainmurders.eclipse.co.uk/omega.html&lt;/li&gt;
&lt;li&gt;Should we continue to support MacOS? What about Valgrind on MS-Windows?&lt;/li&gt;
&lt;li&gt;Make Callgrind work sanely on ARM (and PPC). The Callgrind algorithm to track call and return is to be improved to work properly on these platforms.
Is there a way to make this better? E.g. by having a fast way working in most cases, and rely on unwind info in the difficult cases.
Can we detect at instrumentation time that an instruction is a difficult case?&lt;/li&gt;
&lt;li&gt;Redo the JIT framework to reduce baseline overheads.
Could we reuse some  "compiler lib" (qemu tcg, llvm or gcclib as code generator)? Probably cannot (easily) link these with V =&gt; use a "co-process"? Destroys startup time?
Any other suggestion to (significantly) improve the speed of Valgrind JITted code?&lt;/li&gt;
&lt;li&gt;Packaging valgrind for distros, handling patches, suppressions, etc.&lt;/li&gt;
&lt;li&gt;An interactive SQL relational interface to Valgrind data structures
https://github.com/mfragkoulis/PiCO_QL/tree/master/src/Valgrind-mod&lt;/li&gt;
&lt;li&gt;80 bit arithmetic on x86/AMD64.&lt;/li&gt;
&lt;li&gt;Which CPUID is it anyway? Valgrind isn't completely consistent in handling host CPU capabilities vs VEX emulation capabilities. What can we do to improve that? Make it user tunable?&lt;/li&gt;
&lt;li&gt;VEX is in theory cross-architecture. What would it take to make valgrind cross-arch? How about starting with i686 on x86_64?&lt;/li&gt;
&lt;li&gt;Improve memcheck leak heuristics.
In 3.9.0, some heuristics were added to memcheck to decrease the false positive
rate of possible leaks for c++ objects (such as std::string).
Add more of such heuristics?
And/or have a more flexible way to define heuristics, e.g. using "user definable expressions"?
Add a way to specify a stack trace to match for a heuristic?&lt;/li&gt;
&lt;li&gt;helgrind improvements:

&lt;ul&gt;
&lt;li&gt;currently, in race conditions errors, locks are only described by an address and their creation stack trace. Add more info (when possible) based e.g. on --read-var-info=yes&lt;/li&gt;
&lt;li&gt;speed up helgrind 'mini stacktrace' capture avoid to take duplicate stack traces? Or have a way to detect only the top most IP has been updated since previous stack trace?&lt;/li&gt;
&lt;li&gt;suppressions entries for helgrind with matching the stack trace of one or the other or both threads involved.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Support stack traces containing IP of "disappeared" code e.g. in memcheck, memory can be allocated by a piece of code that has disappeared at the time the stacktrace has to be shown.

&lt;ul&gt;
&lt;li&gt;Support build-ids https://fedoraproject.org/wiki/Releases/FeatureBuildId&lt;/li&gt;
&lt;li&gt;Better support compiled/JITted code. Allowing the JIT compiler to indicate to Valgrind the link between the JITted code and the source code. (See also GDB BoF, steal their code/design?)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Implement a generalised "xtree"
Massif has a data structure called an xtree. Basically, a bunch of stack traces, represented under the form of a tree, where each node of the tree contains the sum of all the memory size allocated by the called functions. The idea is to generalise this data structure, so as to make it usable in other contexts. Of course; use the generalised one to replace the massif one. also use it in memcheck (to allow massif like output from memcheck) maybe other uses, e.g. to collect and show events or calls to various things, using a common infrastructure.&lt;/li&gt;
&lt;li&gt;Revisit the default value of (some of) the command line options
e.g. Decrease helgrind redzone size from 16 to the minimum needed. Change -keep-stacktraces=alloc-then-free to alloc-and-free default
other relevant options we should change the default ?&lt;/li&gt;
&lt;li&gt;Client Requests as SDT markers? https://sourceware.org/systemtap/wiki/UserSpaceProbeImplementation&lt;/li&gt;
&lt;/ul&gt;
</description>
        <persons>
          <person id="160">Mark Wielaard</person>
        </persons>
        <links>
        </links>
      </event>
    </room>
    <room name="K.4.401">
      <event id="2277">
        <start>09:00</start>
        <duration>00:05</duration>
        <room>K.4.401</room>
        <slug>llvmdevintro</slug>
        <title>Introduction to LLVM dev-room</title>
        <subtitle/>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them. The name "LLVM" itself is not an acronym; it is the full name of the project.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;LLVM began as a research project at the University of Illinois, with the goal of providing a modern, SSA-based compilation strategy capable of supporting both static and dynamic compilation of arbitrary programming languages. Since then, LLVM has grown to be an umbrella project consisting of a number of subprojects, many of which are being used in production by a wide variety of commercial and open source projects as well as being widely used in academic research. Code in the LLVM project is licensed under the "UIUC" BSD-Style license.&lt;/p&gt;

&lt;p&gt;The LLVM dev-room gives room for open source projects to get to know LLVM and to present to a wider audience how they use LLVM themselves.&lt;/p&gt;</description>
        <persons>
          <person id="720">Sylvestre Ledru</person>
          <person id="1586">Tobias Grosser</person>
        </persons>
        <links>
          <link href="http://www.grosser.es">Tobias Grosser</link>
        </links>
      </event>
      <event id="1989">
        <start>09:05</start>
        <duration>00:50</duration>
        <room>K.4.401</room>
        <slug>clangreinventing</slug>
        <title>Clang: Re-inventing the Compiler</title>
        <subtitle/>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;The LLVM clang C++ compiler has exceeded all expectations the last year, gaining unprecedented new features that let you explore, rewrite, and rediscover your source code.&lt;/p&gt;

&lt;p&gt;This is a talk about the human story of a compiler: What can we achieve going beyond compilation? Why are we compelled to invent a better wheel? How can we make everyday life better for coders, and could the compiler itself become an instrument for wider social change?&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Developed by an eclectic team of academics, supercomputer hobbyists and vendors including Apple and Google, the LLVM project has proven itself as a hotbed of innovation leading the renaissance in C-family programming languages, recently receiving the coveted ACM Software System Award.&lt;/p&gt;

&lt;p&gt;Whether you’re a kernel hacker, app developer or front-end designer, clang is different to other compilers, it’s coming to a machine near you in 2014 and may well impact your work: Here’s what you need to know.&lt;/p&gt;</description>
        <persons>
          <person id="1881">Alp Toker</person>
        </persons>
        <links>
          <link href="http://clang.llvm.org">The Clang Project</link>
          <link href="http://video.fosdem.org/2014/K4401/Sunday/Clang_Reinventing_the_Compiler.webm">Video</link>
        </links>
      </event>
      <event id="1812">
        <start>10:00</start>
        <duration>00:25</duration>
        <room>K.4.401</room>
        <slug>llvmautovec</slug>
        <title>Auto-Vectorization in LLVM</title>
        <subtitle>Past, Present and Future</subtitle>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Auto-Vectorization has come a long way since the early vector-processing CPUs, and compilers generally take a long time to implement it, prioritizing other more generic features instead. But with all recent high-end chips containing some form of SIMD operations, auto-vectorization became a necessary feature on any modern compiler. LLVM was perhaps the last of the big compilers to have a decent vectorization engine, but it has grown considerably for the last year, and the investment on SIMD code generation will not diminish. This presentation outlines the past implementations, what we currently have available and peeks into the engineering pipeline to see what else we are working on.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1619">Renato Golin</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="1909">
        <start>10:30</start>
        <duration>00:25</duration>
        <room>K.4.401</room>
        <slug>llvmavatar</slug>
        <title>The Avatar project - improving embedded security with S2E, KLEE and Qemu</title>
        <subtitle>LLVM-powered dynamic security analysis of embedded firmwares</subtitle>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Avatar is a research framework that enables complex dynamic analysis of embedded devices by orchestrating the execution of an emulator together with real hardware. It is built on top of S2E/Qemu, KLEE and LLVM and its main goal is to enable advanced security analysis of pristine ARM source-less firmware,
eg. through dynamic tracing or symbolic execution.&lt;/p&gt;

&lt;p&gt;This talk will show key features of S2E in enabling runtime binary analysis (using Qemu virtualization and KLEE/LLVM symbolic execution) and how Avatar uses it to orchestrate analysis and execution at the emulator&amp;lt;-&gt;device edge.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;To address the growing concerns about the security of embedded
systems, it is important to perform accurate analysis of
firmware binaries, even when the source code or the hardware
documentation are not available. Unlike static analysis, dynamic
analysis relies on the ability to execute software in a controlled
environment, which is however difficult due the lack of documentation
and the large variety of subtly different hardware on the market.&lt;/p&gt;

&lt;p&gt;In this talk we present Avatar, a framework that enables such complex
analysis of embedded devices. In particular we will introduce S2E,
a C++ project which leverages several components to do binary emulation,
including:
  *  Qemu for machine virtualization
  *  LLVM as the IR of choice
  *  KLEE for symbolic execution of LLVM IR
  *  S2E plugins for hooking into data and control flow&lt;/p&gt;

&lt;p&gt;Then we show the Avatar framework, which acts as an analysis driver,
context switcher and memory forwarder. Avatar is currently written
in Python and on top of basic features, it includes several
techniques to improve the system's performance as well as heuristics
to help in vulnerability discovery.&lt;/p&gt;

&lt;p&gt;Both project are FLOSS. S2E is a research project from EPFL, while
Avatar is under development at Eurecom.&lt;/p&gt;</description>
        <persons>
          <person id="1755">Luca Bruno</person>
        </persons>
        <links>
          <link href="http://www.s3.eurecom.fr/tools/avatar/">Project homepage</link>
          <link href="https://github.com/eurecom-s3/">Source code</link>
        </links>
      </event>
      <event id="2037">
        <start>11:00</start>
        <duration>00:55</duration>
        <room>K.4.401</room>
        <slug>llvmlinux</slug>
        <title>The LLVMLinux project</title>
        <subtitle>The Linux Kernel on Dragon Wings</subtitle>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Jan-Simon Möller will introduce the audience to the LLVMLinux project which goal it is to compile the Linux Kernel with the compiler tools provided by the LLVM project (clang). He will talk about the steps needed to compile the Kernel itself, the issues found during this endeavour and the status of upstreaming  patches to the Kernel and the LLVM project.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1318">Jan-Simon Möller</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2250">
        <start>12:00</start>
        <duration>00:25</duration>
        <room>K.4.401</room>
        <slug>contributellvm</slug>
        <title>How to contribute to LLVM</title>
        <subtitle/>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;When starting to contribute to LLVM knowing the technical steps and especially the community habits can make the first (and upcoming) contribution a lot easier and the contribution process will become a more positive experience. This talk will discuss technical points such as your first patch for LLVM, how to get +w permissions, the various workflows, but also more soft skills such as 'how can I find a reviewer for my patch', 'should I review patches myself', or 'what is this the right strategy to add a larger feature to LLVM'?&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="720">Sylvestre Ledru</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4401/Sunday/How_to_contribute_to_LLVM.webm">Video</link>
        </links>
      </event>
      <event id="1990">
        <start>12:30</start>
        <duration>00:25</duration>
        <room>K.4.401</room>
        <slug>usecasesclangcppparser</slug>
        <title>Two uses cases for the clang C++ parser:  Online Code Browser and Qt moc Replacement.</title>
        <subtitle/>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk we will see how one can use the clang libraries to build two practical tools.
The first tool is an online C/C++ online code browser that uses clang to parse the AST in order to provide information about each token and build a cross reference database. [http://code.woboq.org]
The second tool is a replacement for Qt's moc (meta-object compiler) which is used by Qt to provide introspection and enable signals and slots and the QML language, both as a stand alone executable or as a clang plugin. [https://github.com/woboq/moc-ng]
The talk goes over implementation details and challenges encountered while developing.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1143">Olivier Goffart</person>
        </persons>
        <links>
          <link href="http://code.woboq.org">Clang based Online Code Browser</link>
          <link href="http://woboq.com/blog/moc-with-clang.html">Moc with clang</link>
        </links>
      </event>
      <event id="1907">
        <start>13:00</start>
        <duration>00:55</duration>
        <room>K.4.401</room>
        <slug>llvmruby</slug>
        <title>Statically compiling Ruby with LLVM</title>
        <subtitle>... or how RubyMotion works internally</subtitle>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;RubyMotion is a commercial implementation of the Ruby language for iOS and OS X development. RubyMotion makes intensive use of LLVM in order to statically compile Ruby. In this session we will focus on how RubyMotion uses LLVM also a bit of history with the MacRuby project (which uses LLVM as a JIT).&lt;/p&gt;</abstract>
        <description>&lt;p&gt;RubyMotion is a commercial implementation of the Ruby language for iOS and OS X development. The RubyMotion toolchain lets Ruby developers write full-fledged native applications for iPhone, iPad and the Mac. RubyMotion apps are statically compiled into optimized machine code.&lt;/p&gt;

&lt;p&gt;RubyMotion makes intensive use of LLVM in order to statically compile Ruby and target various architectures. In this session we will focus on how RubyMotion uses LLVM, the challenges that we had to solve in order to compile Ruby, some of the various codegen optimizations we implemented and how we integrate with profiling/debugging tools. We will also cover the mistakes we learned from the MacRuby project, which uses LLVM a bit differently.&lt;/p&gt;

&lt;p&gt;(This presentation will only focus on the internals of RubyMotion. We will not cover Ruby, RubyMotion or iOS/OS X development.)&lt;/p&gt;</description>
        <persons>
          <person id="1806">Laurent Sansonetti</person>
        </persons>
        <links>
          <link href="http://rubymotion.com">http://rubymotion.com</link>
          <link href="http://macruby.org">http://macruby.org</link>
        </links>
      </event>
      <event id="2011">
        <start>14:00</start>
        <duration>00:55</duration>
        <room>K.4.401</room>
        <slug>ldccompiler</slug>
        <title>LDC - the LLVM-based D compiler</title>
        <subtitle>Using LLVM as backend for a D compiler</subtitle>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;D is a language with C-like syntax and static typing. It pragmatically combines efficiency, control, and modeling power, with safety and programmer productivity. LDC is a fully open source, portable D compiler which uses LLVM as backend. In my talk, I will introduce the overall architecture of LDC first. I will then use the mapping of the front end AST to LLVM IR to show the required LLVM features. Experiences with LLVM in general, porting to other LLVM backends and integrating features like the AddressSanitizer are highlighted. At last, areas of improvement for LLVM are shown from the perspective of a D compiler (ABI, vararg, exception handling).&lt;/p&gt;</abstract>
        <description>&lt;p&gt;D is a language with C-like syntax and static typing. It
pragmatically combines efficiency, control, and modeling power, with safety and
programmer productivity. Because of its features major companies start to adopt
D.&lt;/p&gt;

&lt;p&gt;LDC is a fully open source, portable D compiler. It uses the frontend from the
reference compiler combined with LLVM as backend to produce efficient native
code. LDC targets x86/x86_64 systems like Linux, OS X and Windows and also
Linux/PPC64. Ports to other architectures like ARM are underway. Currently, LDC
can be built with LLVM 3.1 and all later LLVM releases.&lt;/p&gt;

&lt;p&gt;In my talk, I introduce the overall architecture of LDC first. Using the
frontend AST as starting point I show how types, statements and expression are
mapped to LLVM IR and which LLVM features are required. Experiences with LLVM in
general, porting to other LLVM backends than x86 and integrating features like
the AddressSanitizer are highlighted. At last, areas of improvement for LLVM are
shown from the perspective of a D compiler (ABI, vararg, exception handling).&lt;/p&gt;</description>
        <persons>
          <person id="1708">Kai Nacke</person>
        </persons>
        <links>
          <link href="http://wiki.dlang.org/LDC">LDC landing page</link>
          <link href="https://github.com/ldc-developers/ldc">GitHub repository</link>
          <link href="http://forum.dlang.org/group/digitalmars.D.ldc">LDC forum</link>
          <link href="http://dlang.org/">General D information</link>
        </links>
      </event>
      <event id="1992">
        <start>15:00</start>
        <duration>00:55</duration>
        <room>K.4.401</room>
        <slug>llvmrepl</slug>
        <title>Case study/tutorial on using LLVM in REPL systems</title>
        <subtitle/>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;LLVM is a modular system of compiler components with backends for most popular architectures. It is primarily designed as a compiler construction framework, but also provides facilities for Just-In-Time (JIT) compilation of code. Although a lot of interest has focused on the implementation of LLVM-based compilers for `compiled ahead-of-time' (AOT) languages (eg, clang for C), one of the most exciting uses is to generate code on-the-fly, taking advantage of situation-specific knowledge to perform better on the particular computation at hand.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;This proposal is a short talk that falls somewhere
between a case study and a tutorial, tackling various LLVM
mechanisms which can be used
to boosting performance in interactive
exploratory programs that run in a read-evaluate-print loop (REPL).
It will be cover these aspects at an
intermediate level,
not discussing all the low-level API details but showing how
the various mechanisms of LLVM IR and passes within LLVM can be
easily be used.&lt;/p&gt;

&lt;p&gt;This talk will focus on 7 simple techniques for improving performance of a REPL
based-system with LLVM.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Standard LLVM compiler transformations.&lt;/li&gt;
&lt;li&gt;Inlining.&lt;/li&gt;
&lt;li&gt;Vectorization.&lt;/li&gt;
&lt;li&gt;Special instructions.&lt;/li&gt;
&lt;li&gt;Inline compression.&lt;/li&gt;
&lt;li&gt;Language specific passes.&lt;/li&gt;
&lt;li&gt;Function specialisation.&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;These are all relatively simple to implement with the help of LLVM, and by
following a running example utilising the BEST dataset, we will see how they
can improve the performance of interactive computation.&lt;/p&gt;</description>
        <persons>
          <person id="1885">David Tweed</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2363">
        <start>16:00</start>
        <duration>00:25</duration>
        <room>K.4.401</room>
        <slug>llvmenergy</slug>
        <title>An approach for energy consumption analysis of programs using LLVM</title>
        <subtitle/>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Energy models can be constructed by characterizing the energy consumed by executing each instruction in a processor's instruction set. This can be used to determine how much energy is required to execute a sequence of assembly instructions.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;However, statically analysing low level program structures is hard, and the gap between the high-level program structure and the low-level energy models needs to be bridged. We have developed a tool for performing a static analysis on the intermediate compiler representations of a program. Specifically, we target LLVM IR, a representation used by most modern
compilers including Clang.&lt;/p&gt;

&lt;p&gt;One of the challenges in doing so is that of determining an energy cost of executing LLVM IR program segments, for which we have developed a mapping tool. This tool associates LLVM IR program segments with assembly program segments, producing a mapping. Mapping information is useful when performing an analysis at one layer using energy models defined at a lower layer.
Essentially, this propagates the energy model defined at the instruction set
level up to the LLVM IR level, at which the analysis is performed. When this is
used with our analysis tool, we are able to infer energy formulae that
characterize the energy consumption for a particular program. This approach can
be applied to any languages targeting the LLVM toolchain or architectures
supported by LLVM.&lt;/p&gt;

&lt;p&gt;Static energy estimation has applications in program optimization, and enables
energy-aware software development.&lt;/p&gt;</description>
        <persons>
          <person id="1825">Kyriakos Georgiou</person>
          <person id="1826">Neville Grech</person>
        </persons>
        <links>
        </links>
      </event>
      <event id="2249">
        <start>16:30</start>
        <duration>00:25</duration>
        <room>K.4.401</room>
        <slug>polly</slug>
        <title>High Level Loop Optimizations in LLVM</title>
        <subtitle>A tutorial on how to use Polly/isl/ppcg</subtitle>
        <track>LLVM</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;For several important program classes (image processing, scientific computing, ...) High Level Loop Optimizations are essential to reach top performance. With Polly, we present a high-level loop optimization framework for LLVM, which provides a flexible infrastructure to develop and describe such high-level loop optimizations.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;We present Polly as a classical optimizer for a C compiler, but focus on its use as an infrastructure to develop optimizations for domain specific languages and specialized hardware such as GPUs. This talks gives an overview of the overall structure of Polly itself and also insights into the components and tools essential when working with Polly (isl, ppcg, islpy, islplot).&lt;/p&gt;</description>
        <persons>
          <person id="1586">Tobias Grosser</person>
        </persons>
        <links>
          <link href="http://polly.llvm.org">Polly</link>
          <link href="http://www.grosser.es">Tobias Grosser</link>
        </links>
      </event>
    </room>
    <room name="K.4.601">
      <event id="1718">
        <start>09:45</start>
        <duration>00:15</duration>
        <room>K.4.601</room>
        <slug>go_devroom_welcome</slug>
        <title>Go Devroom Welcome</title>
        <subtitle/>
        <track>Go</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Your host adg will kick off the Go Devroom with some opening remarks.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1479">Andrew Gerrand</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4601/Sunday/Go_Devroom_Welcome.webm">Video</link>
        </links>
      </event>
      <event id="1914">
        <start>10:05</start>
        <duration>00:30</duration>
        <room>K.4.601</room>
        <slug>iris_decentralized_messaging</slug>
        <title>Iris Decentralized Messaging</title>
        <subtitle>Peer-to-peer based messaging for back-end service decentralization</subtitle>
        <track>Go</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;To cope with an ever increasing number of internet connected devices, large scale computer clusters are becoming an everyday requirement for any web-service provider; and with the prevalence of compute clouds, these can be obtained effortlessly at a scale that was previously unimaginable. However, the distribution models available have not caught up with the advancements of clouds yet, and as such, distributed programs running on top of these platforms require significant efforts to take full advantage of their hosts' capabilities.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;We introduce a unique concept into the domain of distributed computing, namely, that the idea of a specific node is impedimental to scalability. The proposed model to achieve a robust system is to raise the unit of abstraction from a single node to a cluster of nodes sharing the same responsibility; and to eliminate all notions related to location, further
breaking dependencies between distributed entities.&lt;/p&gt;

&lt;p&gt;Iris is a decentralized messaging framework with the specific goal of simplifying the development and maintenance of cloud based back-end services by striving towards zero configuration through complete self-organization; achieving full messaging security out of the box; whilst providing the communication primitives to support easily assemblable distributed systems.&lt;/p&gt;</description>
        <persons>
          <person id="1815">Péter Szilágyi</person>
        </persons>
        <links>
          <link href="http://iris.karalabe.com/">Project Iris Website</link>
          <link href="http://video.fosdem.org/2014/K4601/Sunday/Iris_Decentralized_Messaging.webm">Video</link>
        </links>
      </event>
      <event id="1985">
        <start>10:40</start>
        <duration>01:00</duration>
        <room>K.4.601</room>
        <slug>camlistore</slug>
        <title>Camlistore</title>
        <subtitle>your personal storage system for life</subtitle>
        <track>Go</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Camlistore (camlistore.org) is your personal storage system for life, putting you in control, and designed to last. It's open source, under nearly 4 years of active development, and extremely flexible. Come see why we built it, what it does, and hear about its design.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Camlistore is your personal storage system for life, putting you in control, and designed to last for generations.  See camlistore.org.&lt;/p&gt;

&lt;p&gt;It's open source, under nearly 4 years of active development, and extremely flexible. Come see why we built it, what it does, and hear about its design.&lt;/p&gt;

&lt;p&gt;We'll discuss philosophy (data ownership, decentralization, data archaeology), pragmatism (dealing with real users), show plenty of demos, and show the design of Camlistore, including its abstractions which let us run on any device, desktop, cloud, or platform: ARM plug devices, Android phones, desktops, servers, EC2, App Engine, etc.  Storage can be any mix of local disk, S3, App Engine, MySQL, Postgres, SQLite, Level-DB, Mongo, WeedFS, etc.&lt;/p&gt;

&lt;p&gt;While language-agnostic with multiple implementations, Camlistore's primary server and set of tools are written in Go.  We'll try to be only moderately religious about how much we love Go, what we get from Go, and how much of Go's standard library evolved first within Camlistore.&lt;/p&gt;

&lt;p&gt;In addition to discussing what we've built so far, we'll discuss the future and how we'd like to see web services work with regard to data ownership and what we're doing to push things in that direction, both technically and politically (standards bodies, etc).&lt;/p&gt;

&lt;p&gt;About the presenters:&lt;/p&gt;

&lt;p&gt;Brad Fitzpatrick leads the Camlistore project and currently works on the Go language, having previously made LiveJournal, memcached, OpenID, gearman, MogileFS, and other tools.  He also continues to help push WebFinger.  Mathieu Lonjaret works full time on Camlistore.  Andrew Gerrand also works on the Go language and contributes to Camlistore.&lt;/p&gt;</description>
        <persons>
          <person id="1877">Brad Fitzpatrick</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4601/Sunday/Camlistore.webm">Video</link>
        </links>
      </event>
      <event id="1994">
        <start>11:45</start>
        <duration>00:30</duration>
        <room>K.4.601</room>
        <slug>interfaces:_a_new_leaf_for_an_old_book</slug>
        <title>Interfaces: a new leaf for an old book</title>
        <subtitle/>
        <track>Go</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;This talk is about how we can use interfaces in Go to write testable code that can be easily modified, or "grows with grace".&lt;/p&gt;</abstract>
        <description>&lt;blockquote&gt;&lt;p&gt;Go's interfaces — static, checked at compile time, dynamic when asked for — are, for me, the most exciting part of Go from a language design point of view. If I could export one feature of Go into other languages, it would be interfaces.&lt;/p&gt;

&lt;p&gt;— &lt;em&gt;Russ Cox&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;We'll cover the following topics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Taking advantage of Go's automatically satisfied interfaces&lt;/li&gt;
&lt;li&gt;Choosing third-party packages that are easy to extend for your own purposes&lt;/li&gt;
&lt;li&gt;How interfaces are used in Go's standard library&lt;/li&gt;
&lt;li&gt;A look at the internals.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;There will be a mixture of practices I've seen used in third-party packages and the standard library, and also some I've successfully applied to our own large codebase.&lt;/p&gt;</description>
        <persons>
          <person id="1868">Matthew Cottingham</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4601/Sunday/Interfaces_a_new_leaf_for_an_old_book.webm">Video</link>
        </links>
      </event>
      <event id="2219">
        <start>13:00</start>
        <duration>01:00</duration>
        <room>K.4.601</room>
        <slug>scaling_with_go:_youtubes_vitess</slug>
        <title>Scaling with go: Youtube's Vitess</title>
        <subtitle/>
        <track>Go</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;In this talk YouTube Engineer Sugu Sougoumarane describes how they built Vitess in Go to help scale YouTube.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Vitess is a set of servers and tools primarily developed in go. It's meant to facilitate scaling of MySQL databases for the web. It's currently used as a fundamental component of YouTube's MySQL infrastructure.
The talk will cover some history about how and why the team chose Go, and how it paid off.
Sugu will also cover tips and techniques used to scale Vitess using Go.&lt;/p&gt;</description>
        <persons>
          <person id="2043">Sugu Sougoumarane</person>
        </persons>
        <links>
          <link href="https://github.com/youtube/vitess">https://github.com/youtube/vitess</link>
          <link href="http://video.fosdem.org/2014/K4601/Sunday/Scaling_with_go_Youtubes_Vitess.webm">Video</link>
        </links>
      </event>
      <event id="1926">
        <start>14:05</start>
        <duration>00:30</duration>
        <room>K.4.601</room>
        <slug>write_your_own_go_compiler</slug>
        <title>Write your own Go compiler</title>
        <subtitle>More adventures with go.tools/ssa</subtitle>
        <track>Go</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;I'll be explaining the potential I see for Go as a very portable language and reviewing the Go tools that make that such an exciting possibility.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;Based on my experiences writing an experimental Go-&gt;Haxe translator, I'll talk about the practical issues of code generation and runtime emulation required. I'll compare some of my design decisions with those of two other Go compiler/translators that build on the go.tools library.
My aim is to encourage you to try one of these new 'mutant' Go compilers. I hope some of you will be inspired to contribute to one of them or even to write a new one of your own.&lt;/p&gt;</description>
        <persons>
          <person id="1827">Elliott Stoneham</person>
        </persons>
        <links>
          <link href="https://speakerdeck.com/elliott5/ssa">Slides from previous talk: Adventures with go.tools/ssa</link>
          <link href="http://blog.gopheracademy.com/day-08-dr-who-and-the-mutant-go-compilers">Blog: Go Advent Day 8 - Doctor Who and the mutant Go compilers</link>
          <link href="https://github.com/axw/llgo">llgo: a LLVM-based compiler for Go</link>
          <link href="https://github.com/neelance/gopherjs">GopherJS: a transpiler from Go to JavaScript</link>
          <link href="http://tardisgo.github.io/">TARDIS Go: a Go to Haxe transpiler targeting JS, Flash, Java, C++, C#, PHP and Neko  </link>
          <link href="http://atom-symbol.rhcloud.com/a/">Tulgo: a closed-source Go compiler blog </link>
          <link href="https://speakerdeck.com/elliott5/write-your-own-go-compiler">Slides for this talk</link>
          <link href="http://video.fosdem.org/2014/K4601/Sunday/Write_your_own_Go_compiler.webm">Video</link>
        </links>
      </event>
      <event id="2227">
        <start>14:40</start>
        <duration>00:30</duration>
        <room>K.4.601</room>
        <slug>looking_toward_go_13</slug>
        <title>Looking toward Go 1.3</title>
        <subtitle>What's coming in the next major release of Go</subtitle>
        <track>Go</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Go team member Andrew Gerrand will take a look at what's coming in the next major release of Go.&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1479">Andrew Gerrand</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4601/Sunday/Looking_toward_Go_13.webm">Video</link>
        </links>
      </event>
      <event id="2252">
        <start>15:15</start>
        <duration>01:00</duration>
        <room>K.4.601</room>
        <slug>porting_go_to_new_platforms</slug>
        <title>Porting Go to New Platforms</title>
        <subtitle>Lessons learned from the Solaris port</subtitle>
        <track>Go</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Go is easy to port, but through this talk I hope to make it even easier.&lt;/p&gt;</abstract>
        <description>&lt;p&gt;The reference implementation of the Go programming language is relatively easy to port to new systems, but it's somewhat unusual. In this presentation I'll describe the structure of the toolchain, and you'll learn how to modify the Plan 9-derived toolchain to target a new platform. We'll take a look at how the runtime works in areas of synchronisation, scheduling and signals. We will also look at the integration betwen networking and the runtime. We'll delve deep into the Solaris port to illustrate specific issues and pitfalls. I'll show you how to use the debugger to solve real bugs that occurred during the port and I will try to offer advice on how you can avoid these type of bugs in your own port.&lt;/p&gt;

&lt;p&gt;I'll offer as much practical advice as I can; much of it details about the implementation, but also practical advice on how to build your workflow and tips about how to progress faster and how to make sure you are on the right track.&lt;/p&gt;</description>
        <persons>
          <person id="2058">Aram Hăvărnanu</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4601/Sunday/Porting_Go_to_New_Platforms.webm">Video</link>
        </links>
      </event>
      <event id="2226">
        <start>16:20</start>
        <duration>01:00</duration>
        <room>K.4.601</room>
        <slug>go_lightning_talks</slug>
        <title>Go Lightning Talks</title>
        <subtitle/>
        <track>Go</track>
        <type>devroom</type>
        <language/>
        <abstract>&lt;p&gt;Go Lightning Talks. Come over to the Go Devroom to sign up!&lt;/p&gt;</abstract>
        <description></description>
        <persons>
          <person id="1479">Andrew Gerrand</person>
        </persons>
        <links>
          <link href="http://video.fosdem.org/2014/K4601/Sunday/Go_Lightning_Talks.webm">Video</link>
        </links>
      </event>
    </room>
  </day>
</schedule>
