uk: Комп'ютерні науки

description: A low cost, digital video broadcast-terrestrial (DVB-T) receiver is used to collect radiofrequency signals emitted from the low Earth orbiting Russian satellite Meteor-M2. The QPSK encoded signal is analyzed all the way from extracting bit values, to recovering the JPEG encoded image transmitted from the satellite. This investigation is an opportunity to experimentally assess all the layers of digital communication widely used from Deep Space communication to daily mobile phone communication, including Viterbi encoding, Reed Solomon error correction, and JPEG image display. Few members of the audience might have any interest in the details of Meteor M2 weather satellite transmissions. However, tackling the reception of this digital weather satellite opens the opportunity to address most if not all the layers of the OSI model, from the physical layer by collecting the radiofrequency signal using a cost-effective DVB-T receiver acting as a general purpose software defined radio signal source, to the data link layer with the various error correction schemes implemented to address the corruption introduced by the noisy radiofrequency communication channel (Viterbi, Reed Solomon) and the network layer with the frame encoding including telemetry and, of course, the payload as a digital picture. The latter is encoded in JPEG format, adding more abstractions with the lossy compression to be reverted to display greyscale images representative of the atmosphere and ground reflectivity in the various wavelengths monitored by Meteor M2. This decoding path matches most recent space-borne signal transmissions, as documented by the Consultative Committee for Space Data Systems (CCSDS [1]), and despite extensive documentation available online, a practical demonstration of the various decoding steps helps understanding the many documents over which the information is spread.

uk: вхід без авторизації

name: Decoding Meteor-M2: QPSK, Viterbi, Reed Solomon and JPEG: from IQ coefficients to images, analysis of digital weather satellite transmissions


Romain Keramitas

type: Person

cs: Informatika

de: Informatik

fi: tietojenkäsittelytiede

uk: Комп'ютерні науки

en: Computer Science

fr: Informatique

da: Datalogi

es: Ciencias de la Computación

nl: Informatica

cs: Technické vědy

de: Ingenieurwissenschaften

fi: tekniikka

uk: Інженерія

en: Engineering Sciences

fr: Ingénierie

da: Ingeniørvidenskab

es: Ingeniería

nl: Engineering

description: In this talk I will discuss how to deduplicate large amounts of source code using the source{d} stack, and more specifically the Apollo project. The 3 steps of the process used in Apollo will be detailed, ie: - the feature extraction step; - the hashing step; - the connected component and community detection step; I'll then go on describing some of the results found from applying Apollo to Public Git Archive, as well as the issues I faced and how these issues could have been somewhat avoided. The talk will be concluded by discussing Gemini, the production-ready sibling project to Apollo, and imagining applications that could extract value from Apollo. After a quick introduction on the motivation behind Apollo, as said in the abstract I'll describe each step of Apollo's process. As a rule of thumb I'll first describe it formally, then go into how we did it in practice. Feature extraction: I'll describe code representation, specifically as UASTs, then from there detail the features used. This will allow me to differentiate Apollo from it's inspiration, DejaVu, and talk about code clones taxonomy a bit. TF-IDF will also be touched upon. Hashing: I'll describe the basic Minhashing algorithm, then the improvements Sergey Ioffe's variant brought. I'll justify it's use in our case simultaneously. Connected components/Community detection: I'll describe the connected components and community notion's first (as in in graphs), then talk about the different ways we can extract them from the similarity graph. After this I'll talk about the issues I had applying Apollo to PGA due to the amount of data, and how I went around the major issued faced. Then I'll go on talking about the results, show some of the communities, and explain in light of these results how issues could have been avoided, and the whole process improved. Finally I'll talk about Gemini, and outline some of the applications that could be imagined to Source code Deduplication.

TIB AV-Portal

type: Service

type: WebContent

type: MediaObject

@language: en

cs: přihlášení není vyžadováno

de: keine Anmeldung erforderlich

uk: вхід без авторизації

en: no login required

nl: geen login vereist

name: Deduplication on large amounts of code: Fuzzy deduplication of PGA using source{d} stack

FOSDEM VZW

type: Organization

cs: Video

de: Video

fi: Video

uk: Відео

en: Video

fr: Vidéo

da: Video

nl: Video

es: Video


uk: Комп'ютерні науки

description: Kubernetes traditionally uses metrics for its core scheduling decisions - in the beginning all of this started with an opinionated internal stack. Since then Kubernetes has introduced 3 orthogonal standardized metrics APIs. As of today many implementations exist - i.e. for cloud providers and on premise. In this talk we will first show the community process around metrics in Kubernetes, how the Special Interest Group (SIG) for instrumentation works and how to get involved. We will do an overview and deep dive in all 3 metric APIs, with a concrete fully open source Prometheus based deployment example. Once we have Prometheus running we will show how to bridge the gap between Prometheus and Kubernetes to use these APIs. Finally, we will conclude the talk with an example on scaling your deployments based on custom metrics served by your Prometheus.

uk: вхід без авторизації

name: Deep Dive: Kubernetes Metrics with Prometheus


uk: Комп'ютерні науки

description: In this talk we will explore how coroutines work and how they are implemented in Python. We will learn that generators lie at the heart of coroutines, and how this long-standing feature of Python evolved over time to support the new capabilities of asynchronous programming. It’s a time travelling tale that explores the milestones in Python that relate to generators, coroutines, and asynchronous programming. The talk is intended to explore coroutines and asynchronous programming in Python, in full detail. It provides a historical revision of all the milestones in Python that led to the current implementation of coroutines, asynchronous programming, and event loops (asyncio) as we know them today. Starting from generators, it reviews their original idea and rationale, and then it explores how they became the pythonic solution for supporting coroutines, by extending their interface with new methods (PEP-342). Later on, generators (and coroutines) were extended once again in PEP-380, to support even more advanced functionality (like the "yield from" syntax). This was a major milestone that actually allowed programmers to start working with non-blocking I/O asynchronously fashion, and the idioms used for that resemble modern asynchronous programming with Python. Understanding what's behind those idioms helps to explain much of the current asynchronous frameworks. The dynamic nature of Python made the syntax prone to mixing iterators with coroutines, so the community (wisely) agreed on the fact that the language had to evolve, and new syntax needed to be added. New specific types were added for coroutines in Python 3.5, and Python 3.6 incorporated asynchronous generators. Finally in Python 3.7, "async" and "await" were promoted to keywords, and there were several enhancements to the asyncio library, marking the current state of the art of asynchronous programming in Python. The talk concludes by providing food for thought on what asynchronous programming actually means in Python, and what to expect for the future (Python 3.8 and beyond).

uk: вхід без авторизації

name: Demystifying Coroutines and Asynchronous Programming in Python


uk: Комп'ютерні науки

description: The EPFL logic synthesis libraries are a collection of open source C++ libraries for the development of logic synthesis applications. Today, there are six libraries focused on classical computing: alice, easy, kitty, lorina, mockturtle and percy. All libraries are well documented and tested. Furthermore, being header-only, the libraries can be readily used as core components in complex design automation systems, e.g., Yosys. In this talk, I will demonstrate how simple it is to compose these libraries to create a personalized synthesis tool capable of reading a Verilog description of a circuit, building a logic network out of it, optimizing the logic network, and then map it to lookup tables of six inputs (LUT6). The libraries: - The alice library is a lightweight wrapper for shell interfaces, which is the typical user interface for most design automation applications. It includes a Python interface to support scripting. - The lorina library is a parsing library for simple CAD file formats. - The kitty library is a truth table library for explicit representation and manipulation of Boolean functions. - The mockturtle library implements several logic network representations and logic optimization algorithms. - percy is an exact synthesis library with multiple engines to find optimum logic networks.

uk: вхід без авторизації

name: Design Automation in Wonderland: The EPFL Logic Synthesis Libraries


uk: Комп'ютерні науки

description: It is a joy to build command-line tools that are not only easy to learn, but that other developers are willing to maintain. Often a team's engineering efforts are spent on the backend, while the cli doesn't receive the same level of attention. This can result in hard-to-test tools, and dumping maintenance of them to whoever most recently joined the team. Learn how to take full advantage of popular Go libraries, structure your Go code to improve reuse and testability, publish binaries, and of course design your commands to be user friendly.

uk: вхід без авторизації

name: Designing Command-Line Tools People Love


Designing for Security

uk: Комп'ютерні науки

description: Good security requires usability. If a secure technology isn’t usable, users will simply use something else - or worse, they might work around the technology to do what they need to do. We will demonstrate this universal truth with a handful of examples and supplement them with good design principles. We will cover UX of key handling, password managers and anti-phishing, and also spend some time on why these products and services so often lack usability. We also won't miss this opportunity to introduce simple human-centered design methods to incorporate in the development process!

uk: вхід без авторизації


uk: Комп'ютерні науки

description: There is a tenacious misconception nowadays that people working with JavaScript do not need to know much about data structures because developing for the web is still often deemed to be, and this cannot be more false, an easier task than "real" programming. Web applications have become complex beasts and node.js allows to build programs that used to be other backend languages' turf. JavaScript developers now need to develop, as with any other programming language, custom data structures to solve particular problems when arrays and objects are simply not enough. The intention of this presentation is therefore to compile series of tips, tricks and use cases regarding the implementation of data structures in JavaScript and the challenges it poses. It is indeed tricky to ensure consistent performance in a high-level language with JIT and where engines like v8 apply a lot of optimization magic. One has to be able to evolve around those constraints. Examples will be taken from libraries such as graphology, sigma.js' newest version and finally mnemonist to demonstrate that 1. performant data structures can be designed for JavaScript using the language's capabilities and that 2. everyone can use them to solve problems more efficiently.

uk: вхід без авторизації

name: Developing data structures for JavaScript: Why and how to implement efficient data structures to use with node.js or in the browser


Devroom intro

uk: Комп'ютерні науки

uk: вхід без авторизації


uk: Комп'ютерні науки

description: GraphQL is the hottest new technology for building APIs, sometimes touted as a better REST. This practical talk aims at explaining what GraphQL is and how it can help expose an elegant and flexible API for advanced business applications in record time. Real code examples will be shown, based on the Graphene library and Odoo Community. Care will be taken so the audience can easily transpose those to other python frameworks such as Django, Tryton or sqlalchemy. A short comparison of GraphQL with other familiar "RPC" technologies such as SOAP and REST will be provided, as well as a discussion of strengths, weaknesses and potential pitfalls.

uk: вхід без авторизації

name: Discover GraphQL with Python, Graphene and Odoo


uk: Комп'ютерні науки

description: A Wiki is a powerful tool to store and display information provided by users. In this presentation we will show how it can also show information from external applications and connect to external applications. Using macros and internal scripting language on top of the XWiki Open Source Wiki platform, we will show examples of data being displayed from external applications. Examples will include: Elastic Search, Matrix/RIOT, Nagios, Cacti, JIRA, Databases.

uk: вхід без авторизації

name: Displaying other Application data into a Wiki: … and other integrations


uk: Комп'ютерні науки

description: Imagine you have a fantastic Ada program or library but you want more! You want it to be scalable and used by other developers with other languages. The goal of this presentation is to show you the way to achieve it without bending to fashion. :) As of today, we see distributed computing as Web services, mainly RESTful stuff. Some technologies exist since years and are working successfully in many systems. One of these is CORBA which allows Object-Oriented communication between applications in languages such as Ada or C++. In this presentation, the chosen middleware providing CORBA infrastructure is PolyORB. We will use it to make a distributed version of an existing piece of software, the Corporate Bullshit Generator (CBSG), and create client applications in C++ and Ada. This will allow us to put the power of Ada and PolyORB into a distributed system.

uk: вхід без авторизації

name: Distributed Computing with Ada and CORBA using PolyORB


uk: Комп'ютерні науки

description: Our technological society wants digital identities, but previous attempts undermine the user's right to control their personal information. With the advent of distributed ledgers, it is finally possible to have a digital identity that preserves the best aspects of our offline systems of identification, while also providing significant improvements. This talk will describe the challenges in creating a digital identity, and how the Sovrin network's deployment of Hyperledger Indy overcomes those challenges using open source technologies to implement verifiable credentials. The solution involves more than fancy code, and demonstrates the importance of considering the environment where a technology will function.

uk: вхід без авторизації

name: Distributed ledgers finally brought me a usable digital identity!


uk: Комп'ютерні науки

description: Mozilla's announced deployment model for DNS-over-HTTPS made some properties of this protocol apparent to everyone, stirring a lot of discussion. Specifically, DoH could promote a collective switch from local resolvers to a few global public services, and make each application independent from the user's preferences in the operating system. This could provide more privacy and less censorship, or less privacy and more censorship, depending on how it is deployed and who gets to control the resolvers. What would be the advantages and disadvantages of a broad adoption of DoH by Web browsers, and its likely long-term effects? The talk will start with a general introduction to DoH, stressing its main architectural features: hiding DNS queries inside Web traffic in an unblockable way, moving DNS resolution to the application layer, and putting application makers (especially browser makers) in charge for DNS settings. It will then discuss all the things that are broken by mass-scale deployment of DoH under this paradigm, including DNS-based security mechanisms and access control services, local and national content filtering policies, and network monitoring tools. It will also discuss in which use cases DoH creates advantages for the user (i.e. more privacy and freedom of expression) and in which others it creates disadvantages (i.e. less privacy and more control). Finally, it will discuss the changes to the Internet's original principles that would derive from the centralization that DoH could induce, by providing an additional control point to a few of the usual big over-the-top companies from the GAFAM club. We also look forward to a final discussion to listen to more opinions (including those that disagree with us) and allow participants to learn more about the issue and make up their mind - or, perhaps, end up with more questions than they had in the beginning.

uk: вхід без авторизації

name: DNS and the Internet's architecture: the DoH dilemma Impacts of DNS-over-HTTPS on how the Internet works


uk: Комп'ютерні науки

description: Daniel Stenberg, Stéphane Bortzmeyer and Bert Hubert will discuss the changing DNS privacy landscape, including topics such as DoH, DoT. Moderated by Jan-Piet Mens.

uk: вхід без авторизації

name: DNS Privacy panel: A discussion about all aspects of DNS Privacy


uk: Комп'ютерні науки

description: In the beginning there was compiling and static linking. My first programs when I was 10 years old worked like that. Then, we discovered dynamic linking. This was great because we could now patch one library and all of the programs would pick up the change on restart. But we created another problem - dependencies. Throughout the history of computing we have solved one problem and created another. Containers are no different. This talk will walk through why we invented Linux distros and why we should continue to appreciate them in a world full of container images... In the beginning there was compiling and static linking. My first programs when I was 10 years old worked like that. Then, we discovered dynamic linking. This was great because we could now patch one library and all of the programs would pick up the change on restart. But we created another problem - dependencies. Throughout the history of computing we have solved one problem and created another. Containers are no different. This talk will walk through why we invented Linux distros and why we should continue to appreciate them in a world full of container images. The short answer is yes. Yes, they still matter because of several reasons: A linux distribution is a bunch of human beings that work together to create a dependency tree of software packages. This dependency tree is still convenient in container images There is a TON of knowledge embedded in systemd unit files on how to properly start/stop commonly used daemons Mapping CVEs to packages with meta data is still useful in a container Standardized C libraries like glibc are used by binaries, interpreters like Python, and even virtual machines managers like the JVM Critical libraries like libssl, openssl, and hardware accelerated bridges, are useful to everyone Linux distros are a connection point with gravity which builds community. Community is what solves problems Host and container image portability (glibc actually can take different code paths depending on what hardware is made available by the kernel. Also, glibc has a min/max kernel version that it supports well when compiled)

uk: вхід без авторизації

name: Do Linux Distributions Still Matter With Containers?: Yes, because stopped statically compiling things for a reason...


Document Redaction with LibreOffice

uk: Комп'ютерні науки

description: Redaction in its sanitization sense (as distinguished from its other editing sense) is the blacking out or deletion of text in a document, or the result of such an effort. It is intended to allow the selective disclosure of information in a document while keeping other parts of the document secret. Typically the result is a document that is suitable for publication or for dissemination to others than the intended audience of the original document. For example, when a document is subpoenaed in a court case, information not specifically relevant to the case at hand is often redacted. Another example is patient information of hospitals, which is distributed to be used for research purposes. A new document redaction feature for Collabora Office is being developed, and it will also be available on the next major version of LibreOffice. This new feature will provide a much more efficient means than the traditional print-redact-scan process, and will try to prevent also the accidental leakage of redacted information by completely removing them in the resulting PDF document, rather than just hiding.

uk: вхід без авторизації


Documenting Validator Requirements

uk: Комп'ютерні науки

description: Within the IETF there is an effort to document what is needed for a DNSSEC Validator to work. This talk is to "sell" this document to the developer community and to assess the desire to see the document published. An important question to discuss - how is this not another straw on the back of the camel.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: This talk will be about establishing good ethical guidelines and standards for user research for the SecureDrop project. The 2 speakers have contributed to SecureDrop, an open-source software platform for secure communication between journalists and whistleblowers. This talk will be about how we established good ethical guidelines and standards for user research for the SecureDrop project. The 2 speakers have contributed to SecureDrop, an open-source software platform for secure communication between journalists and whistleblowers. It will focus on why ethical research is important in user-centred design, how to do ethical user research in open source projects. It will also explain how to establish a trusting relationship with participants.

uk: вхід без авторизації

name: Dotting the ethics i and crossing the t: Solid ethics for FOSS user research


uk: Комп'ютерні науки

description: A quick introduction to using the vector drawing tool Inkscape with the SVG2Shenzhen plugin to turn arbitrary drawings into PCB design layers in KiCad. No previous knowledge of PCB design, electronics or Inkscape required.

uk: вхід без авторизації

name: Drawing PCBs with Inkscape: Creating printed circuit board designs using Inkscape, SVG2Shenzhen and KiCad


uk: Комп'ютерні науки

description: This talk will focus on an in-zone way of generating dynamic answers to DNS queries using Lua. These LUA records look like TXT in the zone, but the authoritative server will run the code that is inside them to answer a query. This talk details the design, implementation and usecases of these records as implemented in the PowerDNS Authoritative Server 4.2 (unreleased as of talk submission).

uk: вхід без авторизації

name: Dynamic answer generation with Lua: An exploration of the LUA record from the upcoming PowerDNS release


uk: Комп'ютерні науки

description: Since the Linux kernel 4.x series a lot of enanchements reached mainline to the eBPF ecosystem giving us the capability to do a lot more than just network stuff. The purpose of this talk is to give an initial understanding on what eBPF programs are and how to hook them to programs running inside Kubernetes clusters in order to answer targeted questions at cluster level but about very specific fine-grained situations happening in our programs and systems, like: - Had that function in my program been called ? - For a given function which arguments have been passed to it? And what it did return? - Which TCP packets are being retransmitted? - What are the queries running slow? - Insights on programming language events/gc - Had that file been opened? Imagine a programmable Kubernetes performance analysis tool that runs at cluster level without performance implications how would you it to be?

uk: вхід без авторизації

name: eBPF powered: Kubernetes performance analysis


uk: Комп'ютерні науки

description: Alright, you built an application to show off your impressive skills at data gathering and processing. Now you got data on ElasticSearch that you want to show, but your users may want to see too many data points and will shatter your DB performance. In this talk, we will present a project to formally measure the cost of queries before actually running them, and your app can decide, given a cost value, whether to launch a query or not. ESCOVA leverages the ElasticSearch query parser to generate the parse tree of an ES query, and we use tree-based cost analysis in order to determine the cost of queries. Moreover, users may restrict their queries to only those of forms that have been previously whitelisted in order to avoid blocking the database. ESCOVA is available both as a plugin for an Elasticsearch as well as a library (that can, e.g., be deployed independently as a microservice). The talk will describe: - How you can currently profile queries in Elasticsearch - A discussion about the pros and cons of static analysis/symbolic computation v. profiling - The inner structure of the project - Lessons learned on how to build an Elasticsearch plugin - Future work, questions and feedback No specific prior knowledge required; topics will be presented before diving into them.

uk: вхід без авторизації

name: ElasticSearch Correctness and perfOrmance Validator: Formally measuring the cost of a query before hitting the fan


uk: Комп'ютерні науки

description: An in-depth look at how caching works in ZFS, specifically the Adaptive Replacement Cache (ARC) algorithm. Assumes no prior knowledge of ZFS or operating system internals. ZFS does not use the standard buffer cache provided by the operating system, but instead uses the more advanced "Adaptive Replacement Cache" (ARC). What is a cache How most caches work (LRU) Pros Cons What makes the ARC different? Recently Used Frequently Used Ghost Lists What makes the ARC Adaptive? Access Patterns (How the ARC adjusts over time) Compressed ARC Advantages over compressed memory or swapcache Tuning for... File Server iSCSI Target Database Hypervisor

uk: вхід без авторизації

name: ELI5: ZFS Caching: Explain Like I'm 5: How the ZFS Adaptive Replacement Cache works


uk: Комп'ютерні науки

description: In this talk we describe our experience of bringing up embedded FreeBSD for a heterogeneous 32/64-bit RISC-V system using LLVM, which was more difficult than you might expect. We look at the practical engineering steps needed to bring up an embedded operating system where many of the key components are not fully mature. The result is a reference embedded FreeBSD implementation for RISC-V, freely available to the community. We were tasked with bringing up and testing embedded FreeBSD on a custom five-core 32/64-bit RISC-V processor using LLVM. Given FreeBSD has already been ported to RISC-V and LLVM is the standard BSD C/C++ compiler surely this should be easy. But it wasn't. LLVM for RISC-V is still relatively immature, particularly for 64-bit. FreeBSD runs on symmetric multi-core 64-bit QEMU RISC-V, but not on embedded systems and not on heterogeneous multicore systems. In this talk we'll go through the steps needed to bring up a functioning embedded FreeBSD system on multi-core heterogeneous RISC-V system. Our target hardware was not available at the start of the project, so we used the generally available HiFive Freedom Unleashed board. The result is a reference embedded FreeBSD implementation for RISC-V, freely available to the community. This is not a talk about the deep internals of FreeBSD, but about the practical engineering steps needed to bring up an embedded operating system where many of the key components are not yet fully mature.

uk: вхід без авторизації

name: Embedded FreeBSD on a five-core RISC-V processor using LLVM How hard can it be?


uk: Комп'ютерні науки

description: In this session I will demonstrate how we implemented a language server for the Solidity language, the language for smart contract development on the Ethereum blockchain. The language development is based on Eclipse Xtext, which implements the Language Server Protocol (LSP). By doing so, we were able to deliver Solidity tooling for multiple IDEs at once. I will show the Solidity integration for Eclipse, VSCode and Theia, and give some understanding about the LSP. Further I will show the development of smart contracts with the means of statemachines with the integration of Solidity into the Yakindu Statechart Tools.

uk: вхід без авторизації

name: Embracing Language Servers for Blockchain Development


Extend Emacs in C or Other Languages

uk: Комп'ютерні науки

description: Starting with GNU Emacs 25, your favorite editor can now load and execute shared objects at runtime. That means you can extend Emacs by writing C code for example. This talk will briefly present the history and controversies about binary modules in the GNU world, cover the basics of the module API and show you how to write a simple module.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Enough is a set of tools, online and self-hosted, as well as a community composed of technical people and journalists. The tools were designed to empower journalists and Human Rights Defenders when protecting their privacy, and their sources in the digital era. We will run you through the approach with examples of practical application. We hope to inspire developers and sysadmins to help journalists and provide them with the tools they need when the freedom of the press is challenged. It‘s not news that journalism has undergone significant changes since the beginning of digitalization: from methods and tools applied in news rooms to the pace at which information is received, processed and outdated, today‘s news are as heavily influenced by modern technology as every other aspect of our lives. While many of these changes contribute to the empowerment of citizens, some of them pose challenges and threats to the traditional role of journalism as safeguard of informed public debates which our societies depend on. One of them is the growing number of intermediaries involved in communication: Journalists rely on Google, Facebook and other private companies to communicate with sources or store documents online. At the same time, a lack of regulation facilitates the access of governments to data collected by said intermediaries, and legislation introduced all across the globe in the name of terror prevention and protecting national security contributes to curtailing civil liberties. All of these taken together significantly increase the risk of abuse through regulators to inhibit journalists from doing their job – which, in turn, becomes all the more important in that very same context to protect the public interest in a fair and free society. An answer to this would be to empower journalists to maintain control over their data. But because only few of them have the technological know-how to make use of tools that would allow them to do so, they require support. Establishing closer cooperation between journalists and technological experts is one effective way to close this gap. This is why we promote the use of the communication platform Enough: based on Free Software exclusively, it offers journalists and Human Rights Defenders a way of communicating and exchanging documents with their sources through an interface that seems familiar to them. At the same time, Enough is embedded and maintained by a decentralized community composed of technological experts, who can support users in technical questions.

uk: вхід без авторизації

name: Enough: How journalism can benefit from free software


uk: Комп'ютерні науки

description: Over the years, more and more vendors have embraced DPDK to enable their NICs for userspace packet processing. This trend has advanced DPDK, leading to the development of new APIs with the aim of leveraging the heterogeneous features and capabilities of NICs. This level of diversity in PMDs and APIs is a catalyst for an inconsistent development environment, making it difficult for applications to accommodate all types of NIC. To overcome this, we propose DPDK SoftNIC, which is capable of being programmed to build custom NIC pipelines to augment missing features to HW NICs by using advanced DPDK features without requiring an application redesign. SoftNIC allows the application to be incognizant of the hardware available to it without compromising functionality.

uk: вхід без авторизації

name: Enrich your NIC's capabilities with DPDK Soft NIC


uk: Комп'ютерні науки

description: With Etherlime we aim to solve issues in the deployment of smart contracts and to allow developers to write their own scripts. This way they are not constrained to just the deployment transactions but also they can use the newly deployed contracts right away as part of the initialization sequence. In September 2018 our project received funding from Ethereum foundation, Ethereum community fund and ETHPrize. Etherlime is an Ethereum development and deployment framework based on ethers.js created by our team in LimeChain. The framework was born out of necessity, hardships, and trouble in the development and deployment of ethereum smart contract. We are trying to ease the pain of deployment, compilation and unit testing and add much-needed stability to the process. In our mind ethers.js is a much more stable alternative than web3.js for the moment, and this is one of the main reasons why we created it.

uk: вхід без авторизації

name: Etherlime: open source blockchain development tool: An open source tool for Ethereum developers


uk: Комп'ютерні науки

description: File systems are the cornerstone of operating system functionality. The disk/FS management layer is just as important. Having a driver for a persistent file system is no good if you have to mount it manually after each reboot. We offer a tour of disk and file system management in HelenOS, explained in the most obvious way: chronologically.

uk: вхід без авторизації

name: Evolution of file system and disk management in HelenOS


uk: Комп'ютерні науки

description: What changed, what evolved, best practices, usage for a lecture, and why wisp aka SRFI-119 is completed as a language (though not in tooling or documentation).

uk: вхід без авторизації

name: Experience with wisp: 5 years with fewer parens


uk: Комп'ютерні науки

uk: вхід без авторизації

name: Exponential speedup in progress: Closing remarks


uk: Комп'ютерні науки

description: RGW (Rados Gateway) is the HTTP REST frontend to Ceph, exposing a S3 and Swift API. From the Kraken release of Ceph, RGW introduced the concept of sync modules which allows for forwarding data and metadata to an external tier. This allows for interesting analysis of metadata or archival/backup solutions without the need to support these in Ceph itself. We'll take a brief look into the design of sync modules, peer into the crystal ball for what the future holds and also cover the currently available ElasticSearch and Cloud Sync modules, which allows data to be exported to external clouds supporting a S3 like API including Amazon S3. Ceph is a distributed storage platform that is a contender to become the future of software defined storage, providing unified access to block, object and file interfaces. Rados Gateway (abbreviated RGW from here on) is the Object storage component of Ceph, exposing an all familiar S3 and Swift APIs for object storage. Since the Kraken release, RGW introduced the concept of sync modules which allows for forwarding data and metadata to an external tier. This allows for interesting analysis of metadata or archival/backup solutions without the need to support these in Ceph itself. We'll look into the basic design of sync modules, pointers to look for should you ever need to write one, cover the existing ElasticSearch & Cloud sync modules, and see what the future holds for RGW Sync modules.

uk: вхід без авторизації

name: Exporting Ceph Object Storage data to the outside world: RGW Sync Modules for fun & profit!


Extending Numba

uk: Комп'ютерні науки

description: Over the years the Numba project has proven itself to be a pragmatic and effective tool to accelerate numerical computations significantly. Numba however puts some restrictions on the code that can be accelerated. These restrictions can force you to compromise, making your code less readable or more difficult to integrate with the rest of your code. This tradeoff makes Numba less attractive. In this talk I'll share what I've learned integrating Numba in our simulator. We'll look at the architecture of Numba and explore how we can extend it to ensure our code can be accelerated without having to trade in expressiveness.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: The syslog-ng application collects logs from many different sources, performs real-time log analysis by processing and filtering them, and finally it stores the logs, or forwards them for further analysis. It was originally developed in C due to its low footprint and high performance. Recently Python language bindings were added, so you can collect, process, and store log messages using embedded Python code. Learn how to customize your log processing infrastructure in Python using syslog-ng, integrate your logs to local and cloud services, and the implementation details and benefits of such solutions. The syslog-ng application collects logs from many different sources, performs real-time log analysis by processing and filtering them, and finally it stores the logs, or forwards them for further analysis. It was originally developed in C due to its low footprint and high performance. Recently Python language bindings were added, so you can collect, process and store log messages using embedded Python code. Python bindings always have two parts: a configuration part – where you configure a source, parser, or destination – and the actual Python code part. You can store the code in-line in the syslog-ng configuration file, or in external files, if you have a larger project. The first Python binding added to syslog-ng was the Python destination. Many databases and cloud services have an easy to use Python API, while a C implementation of the API is either missing or difficult to implement. The syslog-ng application handles log messages and parsed data as name-value pairs. You can pass name-values to the Python destination code in mulitple ways: an object which contains all of the name-value pairs, or as a dict, which contains only name-value pairs configured in syslog-ng.conf. Recent releases also support the use of templates. Next the Python parser was implemented. Originally it was intended as an easy-to-code parser for messages not supported by the built-in parsers, like PatternDB or csv-parser. But you can also use it to enrich log messages from external databases. For example, you can use it to resolve host names from IP addresses. Recently support for Python source was added. You can use it to fetch data or implement a server in Python, for example, to collect messages over HTTP or Kafka protocols. Obviously the Python code is slower than native C code. On the other hand, extending syslog-ng in Python offers a lot more flexibility than development in C. You do not need a development environment other than a text editor and the Python module installed. Neither do you need you to compile the code. Just write it and use it. It is easy to get started, as there is no need for extra setup. You can get proof-of-concept minimal setup working with a single method quickly. You can extend it later to have proper initialization and connection control for added robustness. Learn how to customize your log processing infrastructure in Python using syslog-ng, integrate your logs to local and cloud services, and the implementation details and benefits of such solutions.

uk: вхід без авторизації

name: Extending syslog-ng in Python: Best of both worlds


uk: Комп'ютерні науки

description: GStreamer is a popular framework of choice for multimedia programming in the Linux world, especially for embedded. Since efficiency is a typical core requirement for embedded solutions, traditionally C/C++ have been the languages of choice for writing GStreamer applications and plugins. Unfortunately, this efficiency comes at the price of safety. Even the most skilled C/C++ developers make mistakes with memory management and the results could potentially be catastrophic. Thread safety is another aspect that is central to multimedia solutions but is extremely difficult to achieve with C/C++. Rust language is designed to be both efficient and safe at the same time. In this talk, Zeeshan will present how GStreamer's Rust bindings not only make multimedia programming a lot safer, easier and fun but also allow developers to write even more efficient code than C/C++ in certain cases.

uk: вхід без авторизації

name: Fearless Multimedia Programming: using GStreamer & Rust


uk: Комп'ютерні науки

description: Data may be the new oil, but refined data is the fuel for AI. Machine learning (ML) systems are only as good as the data they are trained on and getting the data in the right format at the right time is a challenge. ML systems are trained using sets of features, a feature can be as simple as the value of a column in a database entry, or it can be a complex value that is computed from diverse sources. A feature store is a central vault for storing documented and curated features, ideally with support for access control. A feature store enables automatic feature analysis and monitoring, feature sharing across models and teams, feature discovery, feature backfilling, and feature versioning. The feature store is a data management layer that fills an important piece in the modern machine learning infrastructure, it empowers enterprises to scale their machine learning workflows and make full use of their investment in machine learning. In this talk, we will present key points on how to take your machine learning workflow to the next level using a feature store, and demonstrate how the feature store fits into the larger machine learning pipeline. We will introduce HopsML, an open-source, end-to-end machine learning pipeline built on the world's most fastest and most scalable Hadoop distribution, Hops Hadoop. With HopsML you can build production-ready machine learning pipelines using open source software, where features are stored in a shared feature store that is automatically backfilled as new data arrive, where machine learning models can be trained on datasets in the order of billions examples using distributed deep learning, where data scientists can follow engineering principles by using versioned and reproducible experiments, and where models can be automatically deployed in an elastic manner using auto-scaling.

uk: вхід без авторизації

name: Feature store: the missing data layer in ML pipelines?


uk: Комп'ютерні науки

description: Using SpamAssassin at work and loving open source development lead me to improve SpamAssassin and to develop some features. The upcoming release will contain lot of bug fixes and some new interesting and useful features. This talk will be a trip towards the new version and finally to some ideas we have for the future. This talk will be an explanation of some new feature of SpamAssassin and some features some people are using. There will be news about official and unofficial plugins and rules and how to get the best out of SpamAssassin. Some additional services that could be useful for other antispam services will be explained as well.

uk: вхід без авторизації

name: Fighting spam for fun and profit: the long road to SpamAssassin 4.0


uk: Комп'ютерні науки

description: There is no shortage of great tools to monitor distributed applications. However, most of them focus on monitoring overall performance metrics and error rates, giving only a general idea of the health of an infrastructure. Unfortunately, rarely occurring issues are often hidden by general trends making it difficult to completely understand infrequent, yet sometimes catastrophic, problems. Tracers are great at tracking down sporadic problems in production environments, but the amount of data they generate can be hard to manage in the wild. This talk will present how the work done on LTTng over the last year, notably the introduction of a session rotation mode, makes it easier to integrate fine-grained monitoring in production environments. The talk will also cover approaches to collecting traces on multiple hosts to troubleshoot problems occurring in distributed systems using both kernel and user-space traces.

uk: вхід без авторизації

name: Fine-grained Distributed Application Monitoring Using LTTng


uk: Комп'ютерні науки

description: Firecracker, an open-source project published by Amazon, opens up a lot of interesting perspective to the container ecosystem. For the diversity of Kubernetes ecosystem, we should also think about how we should get the new shape of containers integrated with all other high-level container runtimes, such as cri-o or rktlet. Firecracker, an open-source project published by Amazon, opens up a lot of interesting perspective to the container ecosystem. It opens up use cases between containers and VMs, making use of KVM without relying on heavyweight Qemu instances. Though its integration with the Kubernetes ecosystem has only started its first step, only with containerd. For the diversity of Kubernetes ecosystem, we should also think about how we should get the new shape of containers integrated with all other high-level container runtimes, such as cri-o or rktlet. In this talk, I would like to talk about alternative ways of integration for getting firecracker integrated with multiple container runtimes. A proof-of-concept for the concept can be also presented during the talk.

uk: вхід без авторизації

name: Firecracker, should it work only with a single runtime?


uk: Комп'ютерні науки

description: Marionette is the library integrated in specific builds used for unit testing in Firefox. Using Python enables to automatize procedure or other stuff using the browser also in headless mode. Let's see how it is possible to simplify your daily job routine on internet like a pro. Often there are tasks that are easily to automatize with scripting but this portal/website doesn't offer API. Develop a browser extension only for an internal usage can be an over engineering step but there is another way. Python is a powerful language and we can use it also to integrate in other services or to help a community. There will 2 real cases: how to export WordPress posts without having advanced backend permissions to reimport it later and how to automatize the reject of bad translation in the WordPress community based on terms.

uk: вхід без авторизації

name: Firefox is your Marionette: Get fun using the unit test system to control Firefox


uk: Комп'ютерні науки

description: Presentation on the recent "flickerfree" boot work, where the goal is to go from the firmware splashscreen/logo to the GUI in one fluid experience without any modesets (causing the screen to blank) or transitions to text-mode. Topics discussed during the presentation are: The changes made to each of the involved components The upstream status of these changes Steps to take to enable this A typical UEFI boot of a Linux system looks like this: * firmware shows a boot logo * shim loads, clears the screen * grub loads, shows a text menu * kernel efifb loads, clears the screen, may show a bunch of text messages * kernel drm/kms driver loads * bootsplash (plymouth) loads * GUI loads Where the kms driver, plymouth and GUI load all may do a modeset resulting in the display loosing signal for a while. The constant screen clearing, various text-messages and the modesets all result in a quite restless boot experience. My latest project at Red Hat is fixing all this so that we go straight from the logo shown into the GUI, while still being able to show error messages at all stages if necessary. During this presentation I describe: * The changes made to each of the involved components * The upstream status of these changes * Steps to take to enable this Benefits to the eco-system: 1) A nicer boot experience for all Linux systems makes Linux more user-friendly and will hopefully lead to wider boot experience 2) Customized embedded systems can already offer a similar experience by disabling the kernel's fbcon driver. There are 2 downsides to the current solutions: 2.1) They are per project customizations, there is no standard way to do this, 2.2) Without fbcon, no text output is possible at all and if something causes the GUI to not load there is no way to show a message to the end user (who will not have serial console access). My work offers a standardized way to achieve the desired boot experience while keeping fbcon enabled so that error messages can be shown at any stage if necessary.

uk: вхід без авторизації

name: Flickerfree boot: Seamless boot for UEFI systems


uk: Комп'ютерні науки

description: Flamethrower is a new DNS performance and functional testing utility. Originally envisioned as an “improved dnsperf” and allowing simulation of realistic looking traffic patterns it has become a versatile tool for DNS server development and load testing. We will discuss motivations for its existence, its technical architecture, and use cases.

uk: вхід без авторизації

name: Flamethrower: A flexible tool for DNS load and functional testing


FLOSS, the Internet and the Future

uk: Комп'ютерні науки

description: The FLOSS movement is not just about convenience; our DNA includes a set of values that bring life to FLOSS. We’ve seen some of these values encoded in the infrastructure of the Internet and online life. We’ve also seen very troubling characteristics emerge online, where individuals and society face new and sometimes explosive risk. This talk explores how the FLOSS movement might reevaluate our values and seek to apply the lessons to our own projects and perhaps more broadly to online life as well. Today FLOSS software is everywhere. In some ways the dream of 20 years ago has been realized. FLOSS software is the norm, GitHub is mainstream. The technology that dominates our era — the internet — is firmly based in FLOSS software, open standards, and interoperability. These are victories, and we should celebrate them. FLOSS was radical idea, and we proved its value. However, Internet life is increasingly run by a handful of organizations. Many of these, like Facebook, google and amazon have FLOSS software at the core of they systems. However, the layers on top are not FLOSS and there is little openness in the systems they create and run. Today a common refrain is “the Internet is broken. What can we do?” One part of the answer to this is to be found in FLOSS software. That’s because FLOSS is not just a matter of convenience, of grabbing a library somewhere because it’s quick and efficient. FLOSS is not something of the past. FLOSS is not something settled, and comfortable and run of the mill. FLOSS is about freedom. It’s about the choice of the individual to not accept what we are given, the freedom to branch off, to fork off and create something different. Floss software is not about wringing the very last cent of value out of a piece of software for the benefit of a small set of people. FLOSS software is about creating value for everyone. FLOSS software is about collaboration. We need all of these values in digital life today. We don’t have them, just as we didn’t have them in desktop computing in the windows era. We didn’t have them until FLOSSS made them real. Starting with developer tools and compilers and building to operating systems,systems, and then browsers and then all sorts of software. We need that journey in digital life as well. It won’t be easy. Facebook and Google and Amazon and Alibaba are powerful monopolies just as Microsoft was in the previous era. It won’t be easy— there will be a period of building developer tool s and libraries before the FLOSS movement generates a raft of full fledged complex products. It may not be easy, but its worthwhile. its’ beyond worthwhile — its critical. And it can be wildly rewarding. FLOSS advocates and developers can not solve all the problems of digital life. But we can play an important role, a critical role. The world needs technologists who show that a better way is possible. We show a better ways possible by building a better way. By building tools and libraries and products that give a meaningful choice. Some will protect privacy, others will be algorithms and data sets that are transparent and verifiable. Others you will dream up. or perhaps you are working on them now. For many people today technology is becoming frightening. the world is looking for technologists who with values, and technologies who actually live by their values. The FLOSS world does this. We have licenses that we don’t change whenever it’s convenient or might bring us more money than fame. We live with them because we have decided as a community that our licenses reflect enduring values that are bigger than we are. We need FLOSS communities and projects in an every larger variety of the tech world. Perhaps that means reaching outside our own comfort zones. Or perhaps it means expanding the circle to include colleagues in open data, AI and other new technologies. We should be examples, support examples, and demand that more and more of online life incorporate the values that draw us to FLOSS. And we build and support those people and projects that are doing so.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Rigetti Computing manufactures programmable quantum computers. As a part of that, they have developed a number of new technologies: a programming language, compiler, simulator, runtime, language bindings, and execution environment. Together, these form Forest, their quantum software development kit. We discuss Rigetti's open source quantum ecosystem, and how we see it developing in the coming year. Rigetti Computing manufactures quantum integrated circuits, and they become computers when the silicon is made programmable. Programming a quantum computer is fundamentally different than programming a classical one. The earliest quantum computers will run hybrid quantum/classical algorithms, marrying traditional software approaches with very non-traditional paradigms born out of quantum mechanics. In this light, open source quantum software serves dual purposes. First, it makes the mathematical realities of quantum computing more accessible to non-experts, and second, it leverages the vast innovations made by countless open source software engineers around the world. Both of these serve to maximize the power of near-term quantum computers. We discuss the fundamental nature of an open source quantum development ecosystem, starting with the quantum programming language Quil, and discuss how that's made into a practical tool through open source quantum software development kits. We discuss Rigetti's open source quantum ecosystem called Forest, and how we see it developing in the coming year.

uk: вхід без авторизації

name: Forest: An Open Source Quantum Software Development Kit


uk: Комп'ютерні науки

uk: вхід без авторизації

name: FOSDEM infrastructure review: We have become so good, this is basically last year's talk


uk: Комп'ютерні науки

description: Fractalide is a Flow-Based Programming framework for making GUI applications in Racket and Rust, tied together by Nix. As one of the first applications to make use of this, we created Cantor, a cryptocurrency wallet. How did using Racket help us or hinder us, and how does Flow-Based Programming interact and fit with Functional Programming?

uk: вхід без авторизації

name: Fractalide and Cantor: A Racket application built with Flow-Based Programming


FreeBSD Graphics

uk: Комп'ютерні науки

description: FreeBSD Graphics - what is it, and how does it work? In this presentation I will talk about the FreeBSD Graphics effort and the team behind it. I will work my way through the graphics stack, starting with kernel drivers and end with the X server, talking about the various components along the way. In this presentation I will talk about the FreeBSD Graphics effort and the team behind it. I will give an overview of the various components that make up the FreeBSD graphics stack, starting with the kernel drivers and subsystem, and then work my way through the stack. I will talk a bit about Mesa, the X server and other software in the FreeBSD graphics ecosystem. I will also talk a bit about the team behind it, what is going on, and where we are going, as well as challenges working with and porting the graphics software. This talk is intended to give a broad overview of the FreeBSD Graphics stack and the team working on it. I will not go into too much technical details on each part of the Graphics stack, instead focusing on the big picture.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: This presentation is about tuning FreeBSD OS to give more in the sense of real time audio, possibilities of such a studio and how to make one With preemptive real time kernel and base system which is relatively small, FreeBSD makes the perfect platform for music production studio. With OSS and Virtual OSS, routing, which is one of the most demanding tasks of any studio, is easy, big number of channels is handled efficiently and support for LV2 plugins in recent year became excellent. Today, if we ignore proprietary solutions, FreeBSD is at least at the level of Linux in music studios, and in some cases it's even better, especially if used PC is older or not powerful. Presenter will demonstrate his own studio from the view of FreeBSD and talk about what is good and what can be improved.

uk: вхід без авторизації

name: FreeBSD in Audio Studio: FreeBSD is usually not the first choice for music art, but it has quite a lot to offer


uk: Комп'ютерні науки

description: The talk is going to reflect on the effort Fedora development community has done to allow complex solutions like FreeIPA to be tested continuously and to ensure a working solution at any release time. FreeIPA is one of projects that would benefit from a tighter collaboration between distributions and we would also like to discuss how its cross-distribution support could be improved to provide a more consistent behavior to our users across multiple distributions. FreeIPA is an identity management solution for POSIX environments. It is often characterized as an 'Active Directory for Linux systems' which, while not exactly right description, helps to visualize a level of complexity FreeIPA has to deal with. FreeIPA as a solution is built on a number of existing and proven technologies implemented as a free and open source software. As result, a FreeIPA deployment has to deal with coordination between a lot of packages. In Fedora, for example, a fully-functioning FreeIPA deployment requires to install several hundred binary packages, including but not limited to SSSD, MIT Kerberos, 389-ds LDAP server, Samba, Apache, OpenSSH, database libraries, Java components for Dogtag Certificate Authority server, and many Python libraries. It is not a surprise that coordinating these components often leads to complications in an operating system distribution release management. Packages need to be at right versions at right time with knowledge about that not always shared across multiple groups of developers and maintainers. Regressions need to be tracked and fixed. Security updates and cross-platform protocol compatibility issues are adding their own flavor.

uk: вхід без авторизації

name: FreeIPA and cross-distribution packaging experience


uk: Комп'ютерні науки

description: Making electronics accessible to the broad public was mainly made possible by Arduino, the Raspberry PI and last but not least Fritzing. Back in 2009 it was a pain to get from a loose wiring on a breadboard to a PCB. Fritzing came up first with a unique breadboard view and a simple to use PCB layout. Fast forward 10 years Fritzing is still widely used by over 200.000 users but struggles to find a sustainable way to fund its development. This talk will give a rough introduction to Fritzing including its strength and weaknesses and introduce a roadmap for its further development. TBD

uk: вхід без авторизації

name: Fritzing - the past, the present and the future: Paving the way for Fritzing's development


uk: Комп'ютерні науки

description: Migration from legacy javascript to react in a well existing project isn't instant or easy, but the outcome will be worth it. How we can combine legacy with a modern front end, surviving the hybrid umbrella, improving application's client and enjoy coding ! The migration process from legacy javascript to react might take you some time and wouldn’t be easy, but the outcome will be worth it. Two years ago, the foreman project decided to adopt react and started a gradual migration process from legacy javascript (rails assets pipeline) into a modern react web app. We’d like to share with you our journey, the do’s and don’ts Why we should adopt react, Where to begin - The first step, How to survive under the hybrid umbrella, Gradual process - is it good enough? Long term goals (does SPA one of them?)

uk: вхід без авторизації

name: From jQuery to React: Gradual migration with hybrid approach


uk: Комп'ютерні науки

description: Oracle donated NetBeans to Apache in 2016. What's the status of the project, what's the roadmap, and how can you get involved? In this talk we will show what NetBeans has for the future. This includes how to experiment with new Java language features in NetBeans, how to develop OpenJDK with NetBeans and how to add a support for a new language to NetBeans based the language server protocol.

uk: вхід без авторизації

name: From Oracle to Apache - News from Apache NetBeans


uk: Комп'ютерні науки

description: Apache Beam is a programming model for composing parallel and distributed data processing jobs. As many other Apache projects, Beam first used Java as its API language. Unsatisfied with the status quo, Beam developers launched the portability project to enable other languages to run with Beam. Currently, Beam has a Java, Python, and a Go API. Ultimately, these languages won't just coexist in Apache Beam, but they will complement each other in cross-language data processing jobs. In this talk we will learn how it is possible to support multiple languages and why it might be a good idea to combine these languages in data processing jobs. Apache Beam is a programming model for composing parallel and distributed data processing jobs. Once composed, these jobs run on various execution engines like Apache Flink, Apache Spark, or Google Cloud Dataflow. But Apache Beam's vision goes beyond just running on multiple execution engines. As many other Apache projects, Beam first used Java as its API language. Unsatisfied with the status quo, Beam developers launched the portability project to enable other languages to run with Beam. Currently, Beam has a Java, Python, and a Go API. That means users are not restricted to the Java ecosystem but can use their favorite Python libraries like Numpy or Tensorflow with Apache Beam. Ultimately, these languages won't just coexist in Apache Beam, but they will complement each other in cross-language data processing jobs. For example, reading from Kafka can be done with the Java connector but the data can afterwards be processed in Python. In this talk we will learn how it is possible to support multiple languages and why it might be a good idea to combine these languages in data processing jobs.

uk: вхід без авторизації

name: From Zero to Portability: Apache Beam's Journey to Cross-Language Data Processing


uk: Комп'ютерні науки

description: Gnuk Token is a security hardware USB token for GnuPG, which supports OpenPGP card protocol. The important feature is it avoids special thing like hardware accelerator or tool (which comes with NDA). Development environment, Tools, Firmware, and hardware design are all free, as they should be.

uk: вхід без авторизації

name: FST-01SZ (Flying Stone Tiny 01 revision ShenZhen): free hardware design for Gnuk Token


uk: Комп'ютерні науки

description: Futatabi is a free software solution for doing instant replay, e.g. for sports production. It supports multiple cameras, high-quality realtime slow motion on the GPU through optical flow, and seamless integration with Nageru, my live video mixer. We'll talk a bit about how interpolation through optical flow works, challenges in transporting the streams back and forth, and demonstrate a real-world sports production done last year using Nageru and Futatabi.

uk: вхід без авторизації

name: Futatabi: Multi-camera instant replay with slow motion


uk: Комп'ютерні науки

description: During this talk we'll get a good understanding of Game Boy programming by reverse-engineering a ROM using Forth. We go beyond just decompiling the ROM to assembly and show how we created a cross-compiler that allows writing Game Boy games in Forth as well. You'll get to see how Forth interacts with the Game Boy hardware, and how the language can be extended to easily render sprites or play sounds for example. We show you how to use Forth to incrementally refactor Game Boy bytecode into higher levels of abstraction. No black boxes. No magic. This way you can understand and appreciate every layer of the hardware and CPU instructions one by one. A similar approach can help you understand other systems (NES comes to mind) and create a language that is more comfortable than ASM or C to work with. The talk is accessible to developers without former Game Boy, Forth or compiler experience. Topics covered: - Go through the basics of Game Boy hardware - Explain how rendering graphics works on a Game Boy - Outline the challenges of working with the Game Boy memory - Show how to reverse-engineer a binary using Forth - Describe the process of writing the cross-compiler - Talk about using GBForth to write Game Boy games

uk: вхід без авторизації

name: GBForth: Using Forth to understand the Game Boy


GNU Radio meets Scapy

uk: Комп'ютерні науки

description: Most GNU Radio modules focus on the physical layer and less on creating standard compliant data payloads. In this talk, we'll show how easy it is to combine GNU Radio implementations of WLAN and ZigBee with Scapy, a powerful interactive packet manipulation program. Using Scapy, we can quickly craft our own packets and poke at other stations (e.g., by sending deauths) or fuzzing its network stack (e.g, to test an IoT device). Most GNU Radio modules focus on the physical layer and less on creating standard compliant data payloads. In this talk, we'll show how easy it is to combine GNU Radio implementations of WLAN and ZigBee with Scapy, a powerful interactive packet manipulation program. Using Scapy, we can quickly craft packets that encapsulate protocols from the whole network stack, including WLAN, ZigBee, and higher layers like IP and TCP. Thanks to GNU Radio's socket interface, we can forward these packets into the flow graph and send them out through our PHY. With this setup, it becomes trivial to broadcast WLAN beacons, deauth WLAN devices, or even fuzz protocols by sending frames with randomized, not necessarily standard compliant data. The latter is possible, since Scapy allows to fill all fields of a protocol header that are not explicitly set with random data. This might trigger all kinds of interesting behavior.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Gephi is a popular network analysis open source software written in Java. This talk about its future is a joint effort by the Gephi dev team and Javascript experts to explore the issues and opportunities of web technologies for large-scale network analysis and visualization. Gephi relies on the Swing library for the general user interface plus an OpenGL insert for network visualization. This choice made more than 10 years ago was one of the very few options available for a multiplatform software able to harness GPU power for displaying millions of nodes and edges. Despite a number of issues, the situation was considered relatively satisfying. However two long-term trends force the Gephi dev team to reconsider its future: computer infrastructures are moving away from true multiplatform software to web-based interfaces, and Java is moving away from user interface development to server-side computation. Most if not all UX developers agree that web technologies are better supporting modern UX design than the Java ecosystem. However the specific use of OpenGL puts Gephi is a special situation. We know from user surveys that scaling up your network is key to most users. No Gephi user has only small networks, and many of them has tried to analyze networks with hundred thousands nodes or more. This use case is far from usual in the world of web technologies. Is WebGL up to the task of visualizing such amount of objects? We used existing Javascript libraries to build a stack comparable to the basic features of Gephi. Graphology was used as a Javascript equivalent of Gephi's GraphStore library, and a tweaked version of Sigma JS WebGL renderer was used as display engine. We used this prototype to benchmark the performance of web technologies for rendering large graphs in OpenGL. In parallel we explored the possibility to keep the project in the Java world but stop relying on the JOGL library that is at risk of being less and less maintained. In this mind we developed a new OpenGL visualisation engine prototype, with a better code base and better performance than current implementation. In this talk we will showcase both the Javascript proof-of-concept and the new Java prototype. We will present state of our reflections and the results of our benchmarks. Of course technological choices are not only (and even not primarily) a question of performance, and we will take the time to discuss the various issues and limits we met in this exercise of prospective technological exploration. we will conclude with a broader reflection on how Gephi as an open source project tries to adapt to global technological changes. We expect this talk to be useful to Java and/or Javascript developers/engineers dealing with graphs. Eduardo Ramos Ibáñez is lead developer of Gephi Mathieu Jacomy is co-author of Gephi Alexis Jacomy is co-author of the Sigma JS library Guillaume Plique is author of Graphology and co-author of Sigma JS

uk: вхід без авторизації

name: Gephi JS: Exploring the dystopian future of a Javascript Gephi


uk: Комп'ютерні науки

description: LibreOffice has currently an large set of help pages which are hard to maintain and to edit. On the other hand the XML language used was designed for a broader purpose and is not used in its full capacity. The lecture presents simplifications of the help XML and the design of specific XML objects to describe the user interface and to connect the help pages closer to the dialogs of the application. Software user interfaces has menus, toolbars, panes, dialogs, mouse clicks ad even voice to enable complex tasks for the user. Because of the cost of the screen real-estate, elements of interaction are concise either in textual form or in pictorial form (icons). The need of Help pages are necessary to give more details on the elements functionalities. But since the set of UI elements is limited in size, the elements of the Help pages should also be limited, and the corresponding help page element to UI element should be connected. The lecture presents simplifications of the help XML and the design of specific XML objects to describe the user interface, to connect the help pages closer to the dialogs of the application and produce Help contents in a faster way, making easier to upgrade and to address softwares translations processes.

uk: вхід без авторизації

name: Getting to Closer to a Software Help Language: Untangling complexities of the LibreOffice Help


Git database with bitmap index

uk: Комп'ютерні науки

description: Data retrieval team at source{d} process lot of data from git repositories. Most of the key components in our workflow like engine, gitbase, mysql-server are implemented in Go. This talk will go through the story how we embedded "pilosa" (distributed bitmap index) in our SQL frontend for git repositories. - Why we decided to use bitmaps as indexes - How we got to the point where we are (we have embedded pilosa's server implementation inside mysql server implementation) - What problems we came across and how we solved them.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Global Consent Manager project is a collaboration between Mozilla, University of Missouri and University of Nebraska Omaha. The result is a browser extension prototype that helps with managing of GDPR cookies and consent dialogs across trusted websites. Description of how consent management on the web works today, and the relationship between user privacy and reputable content providers. Web users face a confusing array of data sharing choices, and click fatigue can lead to poor user experience and possible inadvertent selection of options that do not match the user’s privacy norms. Reputable content providers face revenue disruption arising from changing data privacy regulations. In this session, we will discuss how to improve the consent experience. New standards for user control of data sharing present an opportunity for sites trusted by users to work together with browsers to implement data sharing choices that provide a better experience and a more accurate reflection of the user's privacy preferences.

uk: вхід без авторизації

name: Global Consent Manager: Improving User Privacy and the Consent Experience for Trusted Websites


uk: Комп'ютерні науки

description: Gluster Container Storage (GCS) is a new initiative from the Gluster community. It integrates several different old and new Gluster projects, building on top of the experience gained from the Heketi and gluster-kubernetes projects, and aims to provide the best persistent storage solution for containers. Gluster Container Storage (GCS) is a new initiative from the Gluster community, that aims to build the best persistent storage solution for containers. GCS integrates different Gluster projects, built on top of the experience gained from the Heketi and gluster-kubernetes projects and provides users with simple and robust tools to deploy, monitor and manage Gluster as well-behaved citizens of the Kubernetes world. GCS introduces the new Anthill and gluster-csi-driver projects. Anthill is Kubernetes operator, that deploys and manages GlusterFS with GlusterD2 and the gluster-csi-driver as containerized applications in a Kubernetes cluster. The gluster-csi-driver implements the Container Storage Interface API, and interacts with GlusterD2 to automatically provision persistent volumes for Kubernetes applications when needed. In this session we'll learn how all of these projects work together and form GCS.

uk: вхід без авторизації

name: Gluster Container Storage: Storage for containers, in containers


uk: Комп'ютерні науки

description: Two years ago on FOSDEM'17 a minimalistic bootstrap was a dream; today it has started to become reality. Bootstrapping GNU/Linux without use of the GNU toolchain (gcc, binutils, glibc) was our first milestone that we just reached. Mes became a GNU project. We will talk about what bootstrapping is and why it is important. We will show how Mes' minimalistic Scheme has made this possible and on future milestones (Scheme only bootstrap, other GNU/Linux distributions) before reaching the holy grail: a full source bootstrap.

uk: вхід без авторизації

name: GNU Mes - Reduced Binary Seed bootstrap for GNU Guix


uk: Комп'ютерні науки

description: GNU Radio is one of the biggest and most widely adopted SDR framework in the free software world. In this talk, we will lay out how we intend to keep it going for the next year, and beyond. GNU Radio is one of the biggest and most widely adopted SDR framework in the free software world. It's history is pretty interesting, and spans multiple decades at this point. However, we're far from being done! We will talk about how we intend to keep the samples flowing in 2019, and beyond.

uk: вхід без авторизації

name: GNU Radio in 2019: Facts and Plans: An overview of where GNU Radio is going this fine year


uk: Комп'ютерні науки

description: Spurred out of my need to write a fast decoder block and my seeming inability write presentable CPP code, we explore writing Rust bindings for GNU Radio block, and then implement a work function in the programmable logic of a Xilinx UltraScale+ FPGA. Quick overview of the state of CPP <-❯ Rust bindings Overview of a decoder block implemented on the FPGA. Spurred out of my need to write a fast decoder block and my seeming inability write presentable CPP code, we explore writing Rust bindings for GNU Radio block, and then implement a work function in the programmable logic of a Xilinx UltraScale+ FPGA.

uk: вхід без авторизації

name: GNU Radio with a Rusty FPGA: Experiment building  FPGA accelerated blocks with Rust bindings


uk: Комп'ютерні науки

description: This talk compares the approaches using a simple Go app, once implemented as containerized microservices and once as a serverless app and discusses advantages and limitations of each approach. Increasingly, we find deployments of Go in either a containerized setup (read: Kubernetes) or serverless (think: AWS Lambda). This talk compares the approaches using a simple Go app, once implemented as containerized microservices and once as a serverless app and discusses advantages and limitations of each approach. We will review the workflow end-to-end, and touch on topics like defining domain boundaries, communication, sharing state, observability, and costs, both in terms of learning curve and actual money. Parts of the app will be demoed live.

uk: вхід без авторизації

name: Go containers? Go serverless?: A cloud native journey


Go Lightning Talks - Come speak!

uk: Комп'ютерні науки

description: The last pard of the day will be dedicated to lightning talks. Come watch great short talks, or come present yours! The last hour of the day will be dedicated to lightning talks. Come watch great short talks, or come present yours! We will be accepting lightning talk proposals till a few hours till the lightning talks start happening! Nagpal: Go for Javascript developers, Janiszewski: Debugging Adventure, Dogan: Style Tips for Go Packages, Go Performance tuning, McCabe: Menu Bar Apps with GO, Evans: TinyGO: GO for small places

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Many commonly used libraries from other languages, especially GUI toolkits, make use of Object Oriented Programming (OOP). While Rust has support for many of the OOP concepts in one way or another, there is no easy way for implementing subclassing or inheritance. The topic of this talk will be how to implement subclassing and inheritance in safe Rust, based on the GObject C library. The GObject library is providing Java/ObjectiveC-style OOP features to C. It is used by the GTK+ UI toolkit, the GStreamer multimedia framework and various GNOME libraries. Apart from reasons why you would want to do this in Rust, this talk will cover the new implementation for subclassing that was recently integrated into the existing GLib/GObject, GTK+ and GStreamer bindings. These bindings allowed usage of existing GObject types before, but didn't provide any features to create new GObject types. In addition to usage of the subclassing implementation, a couple of details about the implementation will also be explained. Last but not least, an outlook in the future will be given for how one can take this even one step further with procedural macros to allow writing code that looks very close to Java or C#. This talk will not only be interesting for those who want to make use of GTK+ or GStreamer and extend those libraries, but will also cover various aspects about safely interfacing with C libraries from Rust and all kinds of type tricks to teach the Rust type-system about subclassing and making use of the type-system for enforcing various invariants at compile-time.

uk: вхід без авторизації

name: GObject subclassing in Rust for extending GTK+ & GStreamer: Or: How to safely implement subclassing in Rust while making use of a C library


uk: Комп'ютерні науки

description: Thousands of users, millions of downloads, dozens of distributions. Numbers going up and down and sideways. A look behind the scenes of Snapcraft, the highly popular universal app store for Linux. Canonical developed snaps and snapcraft to enable developers to get their freshest software in the hands of users quickly. Think of snaps on Linux as similar to APKs on Android. Applications published in the Snap Store are easier for users to discover and install. Users love new and interesting software, and appreciate getting the latest features and bug fixes. In this lightning talk Alan will some features unique to the Snap Store, which give developers more control over delivery of their software updates.

uk: вхід без авторизації

name: Good Will Snapping: ~10 benefits of publishing your application in the Snap Store


uk: Комп'ютерні науки

description: gr-Soapy is an OOT module for the GNU Radio platform to configure and manage a plethora of SDR devices through the SoapySDR API. It provides easy to use source and sink blocks with various parameter fields, enabled according to the capabilities of the device specified by the user. With the emergence of various low cost SDR devices that anyone can experiment with, ham radio community continues to expand and create fascinating open source projects. Aside from the ham radio community, also researchers and professionals study and develop protocols and applications for the radio spectrum with the use of SDR devices. To facilitate the interface of users with SDR devices, in this short talk we will present the gr-Soapy OOT module for the GNU Radio platform. gr-Soapy tries to simplify the process of configuring and using SDR devices inside the popular platform of GNU Radio, without omitting functionalities needed by more experienced users. It uses the open source SoapySDR project for the management of the devices. SoapySDR is an active, expanding and robust API, enabling gr-Soapy to be up to date without the need to actively update it with every new SDR device that becomes available.

uk: вхід без авторизації

name: gr-soapy: A handy SDR hardware interface module for GNU Radio


Hacking PostgreSQL

uk: Комп'ютерні науки

description: This talk will include an introduction to the backend code and an example on hacking PG and adding in a new feature. We'll cover what needs to be modified to add an option to an existing command (grammar, execution, etc) and the major components of PG (parser, commands, memory management, etc). We'll also cover the PG style guidelines, a crash-course on using git, how to submit your patch, and the review/commitfest process.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: In this session, we will explore how GraalVM is a polyglot VM based on JDK, supporting languages Java, JS, R, Ruby and Python, while providing various development tools, with integration in IDEs, such as NetBeans and VisualStudio Code, with Chrome Developer Tools to monitor and profile using Graal VisualVM. The Chrome integration is based on implementing Chrome Inspector protocol and Language Server Protocol, among others. GraalVM provides universal tooling support for all languages implemented on top of it.

uk: вхід без авторизації

name: GraalVM: Polyglot Development Platform with Great Toolability


uk: Комп'ютерні науки

description: EFL is a graphical framework that is used on a lot of TVs. The challenge with a TV is, that it needs to be operated with a remote control. Which means, every selectable element on the screen has to be connected to a parent element (i.e. it needs to have a way to navigate to and from itself). In other words, it can be accessed just by pressing the 4 navigation keys on your remote control. To achieve this, graphical elements on the screen are grouped into graphs, which are then connected together after the creation process. The talk will cover: · how the set of graphical components (or elements) on the screen are separated into smaller graphs; · look at how they are connected together; and · show why caching calculation results is now easier to cache, than in the previous system.

uk: вхід без авторизації

name: Graph usage in EFL: using graphs to navigate a UI


uk: Комп'ютерні науки

description: GraphHopper is one of the popular open source routing engines and has a steady stream of new features. For example we recently introduced the Isochrone API and added real time routing features for public transit. In this talk I will give a brief overview of what is possible today and give also some insights of what will be possible with the upcoming releases.

uk: вхід без авторизації

name: GraphHopper Routing Engine - New Features: Overview of the latest features and development


uk: Комп'ютерні науки

description: Greenfield is a Wayland compositor running entirely in your browser. No plugins or black magic required. This talk will go into the conception, exploration and struggles of making this possible. The result is a product far from finished, but already capable of running existing Wayland applications directly in your browser. Greenfield is a in-browser Wayland compositor capable of running existing Wayland applications in the browser. This is made possible by leveraging a large amount existing HTML5 apis. Greenfield is different from existing solutions like VNC or RDP in that it does not stream a final server side generated image to a remote. Instead Greenfield live encodes each individual application to h264 frames using gstreamer. After encoding, frames are send to the browser using a dedicated WebRTC datachannel. On reception, the h264 frames are decoded using a WebAsembly h264 decoder running in a WebWorker while WebGL is used to do color conversion from YUV+A to RGBA. The end result are applications who's content is drawn in their own HTML5 canvas. As a consequence, the entire screen you see in the browser is actually composed of nothing more than ordinary browser DOM elements. All of this is done while adhering to the Wayland mantra 'Every frame is perfect'.

uk: вхід без авторизації

name: Greenfield: An in-browser Wayland compositor: Running a Wayland compositor entirely in your browser


uk: Комп'ютерні науки

description: gRPC is an open source remote procedure call framework built on HTTP/2 that provides an easy way to create high performance, scalable APIs in a multitude of programming languages. In this talk we’ll describe what grPC is, how we it came to be, and compare it to some other alternatives. We’ll talk about the pros and cons and hopefully convince you to take a closer look at it and add it to your toolbox. Best of all we’ll walk through an example of how to build a gRPC based application using gRPC, Protobufs and Go! We’ll even take a look at how easy it is to add a client using another programming language.

uk: вхід без авторизації

name: gRPC, Protobufs and Go... OH MY!: An introduction to building client/server systems with gRPC


GStreamer 1.16 and beyond

uk: Комп'ютерні науки

description: This talk will take a look at what's been happening in the GStreamer multimedia framework as of late: What's new in the latest GStreamer 1.16 release and what features you can expect to land in the near future. It will be fairly high-level and is targeted at both application developers and anyone interested in cross-platform multimedia. 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, macOS, Windows, iOS and Android. Whether WebRTC, RTP, RTSP, SRT or RTMP, decoding or encoding, streaming or recording, we have it all! Join us to find out what's new and improved!

uk: вхід без авторизації


uk: Комп'ютерні науки

description: GStreamer is the de-facto multimedia framework used for embedded Linux systems. I will focus on recent improvements relevant to the embedded community. I'll explain our progress in the Video4Linux support, in particular support for encoders. I'll talk about various optimizations thas have been happening and how they can help embedded developer deliver better devices. Finally, I'll will look forward at the next releases. I'll also discuss the on-going effort to add embedded systems into GStreamer's Continuous Integration & Automated Testing system. 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, macOS, Windows, iOS and Android. This talks targets everyone who cares about Free and Open Source multimedia on embedded systems. GStreamer is the standard multimedia framework, not only on the Linux desktop, but most importantly, in embedded Linux products.

uk: вхід без авторизації

name: GStreamer embedded state of the union 2019


uk: Комп'ютерні науки

description: A tour on newest and future developments for gtk-rs, the Rust bindings to GTK+. Agenda Introduction: Small presentation of Gtk-rs project. Small code demonstration. Last year developments: Add of futures to handle asynchronous function calls. Generation of union types. A lot of new types/functions generated. Next developments: Generate bindings for functions/methods taking callbacks as argument. Long run: being able to "subclass" widgets. Global API improvements as always! Generate sys crates documentation on gtk-rs.org as well? gtk-rs ecosystem: A lot of projects are starting to use gtk-rs, two of them are part of the ten most active GNOME projects on gitlab. Some (nice) API are built upon it like relm. Question time!

uk: вхід без авторизації

name: gtk-rs: newest and future developments: Progress report on GTK+ Rust bindings


uk: Комп'ютерні науки

description: There's a new major version of the Guile language implementation coming, and it's on average around twice as fast as Guile 2.2. Guile 3, expected to be released in Spring 2019, achieves these improvements by adding on a just-in-time compilation system to its virtual machine. Co-maintainer Andy Wingo will walk you through how we managed to achieve these improvements while not increasing startup latency, and give tips and tricks for early adopters.

uk: вхід без авторизації

name: Guile 3: Faster programs via just-in-time compilation


GWL: GNU Workflow Language

uk: Комп'ютерні науки

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Creating a growing open source project can be both rewarding and frustrating. It is rewarding to see the project grow and people contribute, but it can become frustrating and burdensome when your side-project comes to dominate your free time. If you're fortunate, you might be employed to work full-time on your open source project or even start a company around the project; then what? What is your new relationship "with the community?" How do you balance the motivations of various contributors, yourself included, within the project? In this talk we'll look at the history of the Jenkins project, from its origins as a side-project at Sun Microsystems to the growth of the project and on to the relationship with CloudBees, Inc. We'll look at what has and, perhaps more importantly, what hasn't worked well as CloudBees has grown in tandem with the Jenkins project. We will examine the evolving cultural dynamics of the project and the challenges of wearing two hats: corporate and open source.

uk: вхід без авторизації

name: Hackers gotta eat: Building a Company Around an Open Source Project


uk: Комп'ютерні науки

description: NodeJS is one of the fastest growing platforms nowdays and from a security point of view is necessary to know all posibilities that the platform offers to developers.This is a talk that explains some of the most common problems in NodeJS applications and how using frequently used tools it is possible to exploit such vulnerabilities.Also I will show what are the main vulnerabilities we can found and how we can fix them in our applications. These could be the talking points: -Node.js security packages. I will comment how to protect express applications in terms of authentication, logging,middleware and security best practices before put applications in production. -How to prevent OWASP TOP 10 in a NodeJS application In this point I will comment the OWASP NodeGoat project that provides an environment to learn OWASP Top 10 security risks. I will comment the main risks we can find in nodejs applications from a attacker perspective. -Tools which will help to protect our node applications like NodeJSScan allow detecting vulnerabilities following some predefined rules

uk: вхід без авторизації

name: Hacking NodeJS applications for fun and profit: Testing NodeJS Security


uk: Комп'ютерні науки

uk: вхід без авторизації

name: Handling Security Flaws in an Open Source Project


Hands on debugging with Delve

uk: Комп'ютерні науки

description: Hands on Go debugging with Delve. Less slides, more substance: this talk will be focused on live demos that the audience is invited to participate in. Come learn advanced debugging techniques and the intricacies of the Delve debugger. In this talk I will present several demos, all of which will be available online. Each demo will target a specific use case of Delve. The goal is for audience members to walk away with an expert level understanding on the usage of the Delve debugger. During the course of this talk users will be guided through basic to very advanced usage of Delve, exploring features they may not have used, or known existed! Topics covered will include basic debugging, tracing, advanced Goroutine debugging, panic debugging, general advanced debugging and low-level debugging (exploring registers, disassembly, etc). Each demo will have an accompanying program that will be hosted online and available for everyone to download to enable everyone to follow along.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: While the performance overhead of IPC in microkernel multiserver operating systems is no longer considered a blocker for their practical deployment (thanks to many optimization ideas that have been proposed and implemented over the years), it is undeniable that the overhead still does exist and the more fine-grained the architecture of the operating system is (which is desirable from the reliability, dependability, safety and security point of view), the more severe performance penalties due to the IPC overhead it suffers. A closely related issue is the overhead of handing hardware interrupts in user space device drivers. This talk discusses some specific hardware/software co-design ideas to improve the performance of microkernel multiserver operating systems. One reason for the IPC overhead is the fact that current hardware and CPUs were never designed with microkernel multiserver operating systems in mind, but they were rather fitted for the traditional monolithic operating systems. This calls for an out-of-the-box thinking while designing instruction set architecture (ISA) extensions and other hardware features that would support (a) efficient communication between isolated virtual address spaces using synchronous and asynchronous IPC primitives, and (b) treating object references (e.g. capability references) as first-class entities on the hardware level. A good testbed for evaluating such approaches (with the potential to be eventually adopted as industry standard) is the still unspecified RV128 ISA (128-bit variant of RISC-V). This talk discusses some specific hardware/software co-design ideas to improve the performance of microkernel multiserver operating systems.

uk: вхід без авторизації

name: Hardware/Software Co-Design for Efficient Microkernel Execution


uk: Комп'ютерні науки

description: At Hey, we're building a new breed of social network based on the Blockchain. As most main Blockchains present scalability issues (e.g. Etherem scales at 20 transactions/s), we have decided to run our decentralised application on a so-called sidechain, which is an offspring of the Ethereum mainchain and which enables us to scale to the throughput required to support the rich interactions happening within a social network. Come and discover the specific architectural peculiarities that it takes to run a decentralised application on a sidechain. We will be discussing the following elements about building an on-chain social network: - Scalability (volume and throughput) - UX vs Security in fostering users adoption - Loom, an L2 scaling solution on which Hey's sidechain is running - Deep-dive on Hey's architectural peculiarities - How to move assets from a sidechain to the Ethereum mainchain

uk: вхід без авторизації

name: Hey, A Blockchain-Based Social Network: Leveraging Ethereum Sidechains Towards Scalability


uk: Комп'ютерні науки

description: VR is so 2018. Now is time for AR... or is it? In this talk we will explore practically what is feasible today and how. We'll rely on Exokit for the new Magic Leap ML1 after briefly exploring what is AR, what it's good for then some guiding principles. No AR expertise required, just basic JavaScript frontend of backend will do.

uk: вхід без авторизації

name: High end augmented reality using Javascript: Using markers with a webcam is cool but what about a HoloLens or MagicLeap straight from the browser?