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

description: Computer attacks occur in a constantly changing environment. To meet these challenges, it is necessary to implement a global approach to risk management within the organization. The mapping of the Information System allows to have a global view of all the elements which compose the information system to obtain a better readability, and thus a better control. The elaboration of a cartography participates in the protection, the defense and the resilience of the information system. It is an essential tool for the control of its Information System and is an obligation for Operators of Vital Importance (OVI) and is part of a global risk management and a global risk management approach. At a time when cyberattacks are growing in number and complexity, it is necessary for organizations to develop a general risk management strategy. As part of an overall approach, Mercator is a key tool in keeping control over the information system. It provides insight into all of the information system’s components and a clearer picture of the information system by presenting it from different angles. Mercator helps organisations mapping their information systems in order for them to meet the operational requirements of cybersecurity. It helps to build a map in five simple, practical steps. It can be used by any organisation, irrespective of their type, size, maturity in terms of cybersecurity or the complexity of their information system. It is Open Source and can be used by organisations in the public and private sectors alike.

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

name: Mercator: Mapping the information system


Alexander Bokovoy

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: Passwordless and multi-factor authentication (MFA) are becoming a trend and their usage will increase in the near future. However, most of the solutions target the web/online pattern, or the local users, thus leaving centralized identity management for console and POSIX system applications lacking those capabilities. For the last year FreeIPA and SSSD have been working on enabling FIDO2/WebAuthn support for remotely managed users. One part of it is enabling a user stored in a LDAP server to locally authenticate in a system using a FIDO2 key. Another part is to use FIDO2 authentication to obtain a Kerberos ticket. This opens a new world to organizations to tighten their security, while maintaining strict control as to who access their systems. This talk will focus on the progress in FIDO2/WebAuthn authentication in SSSD by providing the implementation state, the solution details and a demo. Additional information on the possible expansion of the solution will also be provided.

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: Enabling FIDO2/WebAuthn support for remotely managed users

FOSDEM VZW

type: Organization

cs: Video

de: Video

fi: Video

uk: Відео

en: Video

fr: Vidéo

da: Video

nl: Video

es: Video


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

description: Cosign, fulcio, rekor are all components in keyless signing with Sigstore. Each piece has its responsibility to provide a smooth developer experience for container signing. How does it all work together to complete that complicated dance to tie identity to cryptographic signatures? And what's more cryptic than rugby? In this talk, James and Lewis will educate attendees about sigstore and container signing using examples from the best sport in the world, rugby. If you're interested in learning more about sigstore and what a hooker does, this talk is for you.

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

name: What Does Rugby Have To Do With Sigstore?: Learning Sigstore via Rugby


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

description: StackRox integrates with every stage of the container lifecycle: build, deploy, and runtime. It has the ability to monitor, scan, and prevent the execution of vulnerable code, and container images in multiple and almost any flavor of your Kubernetes clusters that too from a single control plane. It plays a huge role in its supply chain security pattern by providing continuous scanning via CI/CD pipelines and integration with image registries so that vulnerable and misconfigured container images could be remediated within the same developer environment, with real-time feedback and alerts. At the end of this session, users will have a fair knowledge on: - How StackRox in a cloud-native way could help to observe, analyze and react on 1:N Kubernetes clusters with minimal human efforts (1: Control Plane, N: Secured Kubernetes Clusters) - How teams could reduce operational overhead and streamline security practices in large-scale environments. As a developer or security admin, you might have questions like: - What kind of tracing and monitoring is needed to determine potential threats in a large-scale cluster? - How to ensure the code is being delivered through secured infrastructure? - How one could proactively detect the vulnerabilities and secure the components as soon as they are affected? The intent of this session is to address these concerns and this would also emphasize on: - How StackRox helps to shift left the security efforts for developers and security teams - Glimpse of an Admission Controller detecting policy violations caused by insecure workloads - Significance of eBPF nodes - The DevSecOps model & supply chain security practices. Here, the demonstration would cover standard CI/CD definitions via Jenkins or ArgoCD that integrates with Kubernetes clusters where a security admin could keep the day2 security tasks in an auto-pilot mode and yet be able to maintain an end-to-end secured infrastructure.

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

name: Demystifying StackRox: Unlock zero trust cloud-native security in Kubernetes


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

description: You clone a Git repository, then pull from it. How can you tell its contents are “authentic”—i.e., coming from the “genuine” project you think you’re pulling from? With commit signatures and “verified” badges ✅ flourishing, you’d think this has long been solved—but nope! This is in essence the problem GNU Guix, as a software deployment tool and GNU/Linux distribution, had to solve as we will see in this talk. A key element of supply chain security is updates: how can we make sure software updates are secure? That one doesn’t risk running malicious software when updating software their system? For free system distributions, The Update Framework (TUF) has become a reference on these matters. However, TUF is designed with binary distributions in mind—think Debian or even PyPI—and is not suite for “source distributions” like GNU Guix. In this talk I will present how Guix distributes software packages and the mechanisms central to supply chain security in Guix: reproducible builds, builds from source (the “full-source bootstrap”), and provenance tracking. Software updates in Guix amount to ‘git pull’ so the security of updates translates to the ability to authenticate Git checkouts. Believe it or not, this pretty fundamental problem was still in search of a solution. Guix developed a simple mechanism for Git authentication, which has been used in production for a couple of years. I will present it and, given that the solution is generic, show how it could benefit Git users alike. We’ll also reflect on how Guix’s approach compares to those developed by tools like slsa or in-toto.

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

name: Where does that code come from?: Git Checkout Authentication to the Rescue of Supply Chain Security


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

description: The level of privacy awareness once reserved for messaging applications is reaching other forms of online collaboration such as office suites. Many companies, including "big tech", claim that their platforms enable users to privately collaborate. However, the definition of what privacy actually means varies widely. While there are no ways to verify claims made about proprietary software, the impact on users is very tangible. CryptPad is an end-to-end encrypted open source collaboration suite. It seeks to reconcile collaboration and privacy. Users make changes to documents and these are encrypted by their client (web browser) before being sent to the server for real-time synchronization. In this talk I will detail CryptPad's privacy definition and introduce the assumed threat model of an honest-but-curious server. While users have to trust the server to not actively attack their privacy, they can nevertheless protect themselves against a passively sniffing server. I will show why end-to-end encryption is not enough, but must be combined with open source to achieve reasonable privacy in this model. I am an R&D engineer who joined the team a few months ago with a focus on cryptography. I quickly realized that security and privacy in CryptPad rely on much more than just algorithms.

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

name: Whom Do You Trust?: Privacy and Collaboration in CryptPad


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

description: Phones running Linux became reality in last few years, and they do have cameras, but taking sharp and correctly exposed photos is still not easy, and neither is recording even short movies. I'm trying to change that, and have some successes I'd like to talk about, but there is more work are more challenges in front of us. There are three major platforms available today: PinePhone, Librem 5 and PinePhone Pro. PinePhone includes "smart" camera sensor, which is able to do auto-exposure, auto-focus and JPEG compression on its own. Capturing good photos is relatively simple using Megapixels. Capturing 2MP, 30fps video is possible with some "interesting" solutions I'll describe. Librem 5 is much more interesting. It includes dumb 13MP sensor, with support for phase-detection auto focus. Auto-exposure and auto-focus needs to be done in software, with auto-focus being quite complex and requiring different solutions based on use case. I do have unoptimized solutions for auto-exposure and auto-focus in Millipixels project, but they really belong to libcamera. It is possible to capture 0.8MP, 20fps movie. There's really more work to be done on all sides, including kernel -- bayer10 support, caching, libcamera and applications.

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

name: Sharp photos and short movies on a mobile phone


Shrinking in the Age of Kotlin

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

description: Java is now more than 25 years old and throughout the Age of Java there has been many tools for shrinking, optimizing and obfuscating Java bytecode. This was and is especially important for mobile devices, which have certain resource constraints, from the early J2ME devices to today's Android devices. Today, in the Age of Kotlin, shrinking is more relevant than ever and not just for mobile applications. As well as mobile Android applications, desktop & server applications are also ever growing in size; for example Compose for Desktop typically generates large application packages. JetBrains has recently integrated ProGuard into the Compose for Desktop Gradle plugin to tackle this issue. But what has changed and how does Kotlin affect shrinkers like ProGuard (which is 20 years old and originally created to process Java compiler produced bytecode)? How does ProGuard shrink classes produced by the Kotlin compiler? The Kotlin compiler just produces Java bytecode anyway, so nothing changes? The talk will take a look at ProGuard under the hood and what's required to process Kotlin apps & libraries. In particular, there will be a deep dive into Kotlin metadata and how ProGuard (via the ProGuardCORE library) makes use of JetBrains' kotlinx.metadata library to read & write the metadata.

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


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

description: In this talk I show how to use Finite State Machine Pattern for control a web interface. Talk starts with an overview of the pattern, with some examples and a little session of live coding where I write a little porting of famous arcade game into a web page using only the FSM pattern and few lines of code, and finish with an overview of major js framework and libraries that implements this pattern.

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

name: Finite state machine (and some retrogaming)


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

description: From the workstation /home partition to a certificate store on an embedded system, use cases abound for encrypting data at rest. The common goal is thwarting offline attacks by keeping the plaintext key material safe from where an attacker could extract it. In his talk, Ahmad will give a brief introduction to the kernel's trusted key subsystem and his work in enabling it for unattended disk decryption on NXP's i.MX line of embedded SoCs.

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

name: Having Something To Hide: Trusted Key Storage in Linux


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

description: JavaScript developers learned to love TypeScript after seeing the benefits of static type-checking. But there is still a lot of data that that TypeScript is not able to check, because it is only known at runtime: JSON responses from an API, user inputs in a form, content taken from client-side local storages, browsers API quirks... In that case, you can only assume the types and pray for the best, or manually code tedious specific type checks. I'd like to introduce you to ObjectModel, an open source library I created with the intent to bring automatic strong dynamic type-checking to JavaScript projects. By leveraging ES6 Proxies, this library ensures that your variables always match the model definition and validation constraints you added to them. Thanks to the generated exceptions, it will help you spot potential bugs and save you time spent on debugging. I will also discuss the many other benefits of validating types at runtime, because as you will see, it leads to more than just type checking. I will present a few scenarios where TypeScript is helpless to detect type errors. Then I will discuss about ES6 Proxies, and how you can make type-safe objects in JavaScript itself. Finally I will present ObjectModel, a mature, well tested open source library that has ~2500 weekly downloads on NPM. ObjectModel is very easy to master: no new language to learn, no new tools, no compilation step, just a minimalist and intuitive API in a plain old JS micro-library. The audience should be able to immediately understand the interest of this library regarding the type assertions, but as a conclusion I will show how ObjectModel can also be used for other usecases such as form validation or API unit testing.

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

name: Strong Dynamic Type Checking for JavaScript: Where TypeScript is helpless, JavaScript Proxies come to the rescue!


Take your shot of Vitamin!

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

description: First 3:55 minutes of video does not have audio. Decathlon has more than 160 frontend products, including 50 dedicated to mobile applications. Due to this context, it is hard to align the user interface across all these projects while respecting the platform. Vitamin is a Design System developed by Decathlon as a product which can be adapted to any context and with multiple technical implementations for Android, iOS and Web. In theory, you can use this Design System in your application and customize it to fit your theme and your needs. In this presentation, I'll focus on Vitamin Compose, the design and technical architecture, biases and what are the next steps.

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


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

description: Termie introduces a new concept in terminal automation: an additional layer of interactivity on top of another interactive terminal session. Modern debuggers and interfaces can overwhelm console users and clutter the screen with stack traces, excessive debugging information, database query details, and more. Docker containers can also remove precious command line histories, which makes the console experience more tedious. Termie allows for persistent histories across sessions, and adds a mechanism for clutter-free interaction. It also provides some of the functionality of the venerable "expect", to further improve automation of interactive consoles. This talk will be about using termie, and about some aspects of its implementation in the Raku programming language.

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

name: Practical and fun automation for all your terminal sessions


The State of Kotlin

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

description: Kotlin ecosystem is rapidly evolving over the years and 2022 was not an exception. Let's gather to recap everything that happened with Kotlin in the past year and to have a closer look at the language roadmap: from the new K2 compiler, to stable Kotlin Multiplatform and beyond.

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


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

description: The O11y toolkit is a set of utilities that help you debug, augment, and manage your open source observability stack.

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

name: The O11y toolkit: A toolkit to improve, augment and debug your Prometheus stack


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

description: Dependency Injection has become boring in Kotlin Multiplatform projects. Now compiler plugins can make the use of this pattern exciting again! Kotlin Symbol Processor (KSP) brings the fun back and helps us manage our dependencies with a nice fully typed API. Let's deep dive into it and see how it works. In this presentation we will talk about what makes Compiler plugins useful. How they help us build more reliable applications by reducing boilerplate and generating robust APIs. How we generate code and why can be confusing or misunderstanding. So, we will take Dependency Injection as an excuse for our Kotlin Symbol Processor tour. First of all, we will configure a new processor module. Then we will see how we can create our own Kotlin symbol processor to enhance our architecture by providing a fully typed Dependency Injection API.

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

name: Better Kotlin Multiplatform architecture with Dependency Injection and KSP


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

description: Tracking a request’s flow across different components in distributed systems is essential. With the rise of microservices, their importance has risen to critical levels. Some proprietary tools for tracking have been used already: Jaeger and Zipkin naturally come to mind. Observability is built on three pillars: logging, metrics, and tracing. OpenTelemetry is a joint effort to bring an open standard to them. Jaeger and Zipkin joined the effort so that they are now OpenTelemetry compatible. In this talk, I’ll describe the above in more detail and showcase a (simple) use case to demo how you could benefit from OpenTelemetry in your distributed architecture.

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

name: Practical introduction to OpenTelemetry tracing


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

description: We have a rich and evolving set of standards that we use to build and deploy interoperable systems. We also have a talented and productive open source community that creates code intended for use in these systems and their ongoing operation. The challenge is shifting from defining standards and writing code to knowing which standards to use and finding code that accelerates implementation and deployment of these standards. This challenge increases as we become more efficient at defining new standards and creating new open source projects. What if we could make it easier to navigate this landscape? What if we could create clear links between standards and code? This would make our open source and standards communities more productive. It would also make the great work they do more useful and rewarding. Fortunately, a set of practices is being defined and put in practice to make make it easy to identify and find open source code related to IETF standards. Join this session to learn what new mechanisms exist, how to use them, and to how help shape what comes next.

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

name: Uncover the Missing Link: Creating Clear Linkage between Open Source and Standards


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

description: In 2016 a group of innovators from healthcare, mental healthcare, social work and design teamed up to create a roadmap to a future-proof (health)care system. An important part of this healthcare system is an open source ecosystem of digital health applications that can cooperate in an integrated way. Right from the start, privacy has been an important part of the project: agency is at the core of the innovation project and agency is among the central values within privacy. So one of the central questions of the project was: “How to translate the principle of agency into design choices for data privacy within an ecosystem of digital health applications.” We will tell how this question was answered by looking back at the process and at the choices made about the user interaction and technology. During this project we were confronted with three separate perspectives on privacy: a theoretical perspective that is generally focused on the philosophical meaning of privacy, secondly, a technological perspective driven by the suppliers of digital products and lastly a user interaction perspective, driven by the end user’s experience of privacy. The conflicting perspectives were holding back the progress of the project. Therefore we had to find a way to mediate between these separate perspectives. An important part of this mediation process was finding common values and translating these to overarching principles that are comprehensible to the different perspectives and stakeholders. Next these newfound principles were validated with end-users, representing the interaction perspective. For this purpose we used gamification and mock-ups to make the more abstract principles tangible and testable. Finally the general principles were translated to clear design guidelines for the technological perspective. This presentation will show how we combined a theoretical view on privacy with the users perspective and how we translated these into guidelines for user interaction and into a technical architecture. And you will leave with some practical tips when conducting comparable projects!

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

name: Value driven design: A case study on a successful privacy by design project where we did everything wrong


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

description: For years, the majority of internet applications have used either TCP or UDP as the transport layer protocol of choice. Recently, a new contestant - QUIC, an end-to-end encrypted protocol - has entered the ring. QUIC is being marketed as the successor to TCP and tackles some of its inherent problems. An excellent example is the Head-Of-Line (HOL) blocking issue perceived by, for example, web pages. While QUIC holds many advantages over its predecessor, it still suffers from interoperability challenges and holds a number of open questions. The biggest one is: how do we efficiently test, measure, and debug the performance of applications using QUIC? Answering the above question is non-trivial and plays a significant part in my research as a Ph.D. candidate. In this talk, we will – from a beginner's perspective – discuss why getting started with optimizing applications using QUIC as a protocol might seem daunting. We will discuss some tools available such as qlog, and why they can be more insightful than solely relying on packet traces. Finally, we will demonstrate our in-house developed automation framework called Vegvisir. Initially designed for analyzing the performance of video streaming over QUIC, it is now generalized for end-to-end testing of any networked applications. The goal of Vegvisir is to help alleviate some of the obstacles mentioned earlier, but also to ensure that developers and researchers can perform tests with QUIC consistently and reliably.

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

name: Introducing Vegvisir: An automation framework for testing QUIC application logic: Who said using QUIC was easy?


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

description: Are you eager to migrate your entire codebase to Vue 3 and composition API? Before starting the long journey away from Vue 2.6 you should consider a few intermediate steps: - compatibility with your dependencies - tests - maintainability - consider a step-by-step migration passing trough Vue 2.7 - what about the Vite/Vitest ecosystem?

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

name: Is it time to migrate to Vue 3?: TLDR: it depends


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

description: Implementing profilers and tracers in BPF offers a high degree of flexibility and allows for tools that have lower overhead and can make them suitable for production usage. BPF has a helper to unwind native stacks with frame pointers that works great. Unfortunately, most Linux distros and compilation pipelines omit frame pointers. We've built a BPF program that uses DWARF-unwind information to walk native stacks without frame pointers in BPF. We've integrated it into our continuous profiler project, Parca Agent.

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

name: Walking native stacks in BPF without frame pointers


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

description: On 2018 Luca purchases a Lenovo Tablet/PC and, since it comes with Microsoft Windows pre-installed, he requested the refund to Lenovo, but Lenovo denied to refund Luca. A court case was initiated, and Lenovo was condemned to pay a punitive damages of 20000 euros for its abusive behaviour. After this "historic" case, some other refund were request to other companies, such as HP, Dell, Microsoft, Acer, and again to Lenovo. Each OEM tried to deny the refund, with various reasons such as contractual clauses contained in the sale contract or in the same license agreement, or the need to delete the Product Key stored in the MSDM BIOS ACPI table and therefore they require to send the PC to their laboratories. These reasons have no valid legal basis, because – at least in Italy – the license agreement is a contract totally unrelated to the sale contract, so a third party may not impose any action on your material good, and the license agreement has remained without causal and economic justification, because not accepted and missed to be concluded.

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

name: Windows and Office "tax" refund: Various cases about the refund of pre-installed software, and the right to install any software on any device


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

description: This session will review the history of women’s contributions to Linux distributions and open source, how Linux communities are a catalyst for improving tech diversity, and what we can continue to improve to bring in the next generation of women FOSS contributors. Linux distributions are a hub for technical excellence and open source innovation. Most people think of our efforts around packaging, integrating new technologies in our distros, and building communities around what we do. But how our communities innovate goes beyond technology alone. There is also innovation around diversity and inclusion in our communities. For women, Linux distro communities can provide a place to learn about open source, start building a career, and growing their professional networks. The goal of this session is to call out women’s contributions in this space, highlight ongoing progress to make Linux communities more inclusive, and a wish list of things our communities could improve so the diversity of our community increases. The future's looking bright for women who aspire to leave their mark in the world of Open Source. Let’s look at their contributions in distributions and FOSS spaces as we move at light speed from on-prem to cloud to edge computing.

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

name: On-prem to Cloud to Edge and beyond: Evolution of women contributors in distros & FOSS: A timeline from past, present, and future


5 errors when building embedded systems

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

description: Building embedded systems is complex, especially if they will last. This talk will be a collection of (funny!) cases and stories of errors made in different projects. Examples cover a wide range of situations, for example, not using git at all (or poorly) or optimizing too early. Marta will also show best practices to follow instead and how to convince customers and coworkers actually to follow those practices. The talk applies to an intermediate audience, but experts could also find a suggestion or two.

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


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

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

name: 20 minutes from zero to a live chatbot with Tock


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

description: Reflection is a very powerful JVM feature that allows to create implementations of interfaces on the go, as well as exploring the type hierarchy, methods and properties of a given class. These capabilities do not exist in Kotlin/Multiplatform, so we will explore an alternative method to runtime reflection: a compile-time symbol processor to create compile time mirrors. Using Mocking as an excuse (as mocking typically needs reflection), we will explore how we can use KSP (Kotlin Symbol Processor) to circumvent the absence of reflection and generate efficient test mocks at compile time. We will also see the limitations that multiplatform brings to both the KSP generator and its associated runtime, and we will explain the tradeoff that needs to be made when using KSP, and why they are needed.

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

name: A mirror without reflection for Kotlin/Multiplatform


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

description: Web Accessibility should concern everyone of us and it’s our responsibility as developers to ensure a most accessible user experience. Danny and Maximilian will show you how to easily build your Web Applications accessibly at a high level. We’ll introduce you to effective methods and tools, that support you regarding implementation and testing. Don't be afraid: We won’t go through each and every of the WCAG criteria – we’d like to provide a practical introduction into the topic as well as guide you through some tricks and snares.

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

name: A11y: EAA, WCAG, WAI, ARIA, WTF? – it’s for the people stupid!: The web is already accessible – it's us as developers who are including barriers. Let's make the web accessible together.


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

description: Drupal has been a leader in digital accessibility for over an decade, and open source has played a key role. Mike Gifford has been spearheading accessibility in Drupal, and working with an open community has allowed us to pioneer some new design challenges. Working in the open has allowed us to tap expertise outside of our community. It has also given space for people with disabilities to become involved in a variety of roles. Accessibility best practices make it clear that accessibility needs to be considered at all levels of a project. This talk will draw on the Drupal community but also engagement with other open communities, particularly through the We4Authors Cluster initiative of Funka with the European Commission.

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

name: Accessibility & Open Source: How open source is key to building a more inclusive world.


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

description: The strength of FOSS lies in their corresponding licenses. Public administrations however sometimes have a hard time wrapping their heads around the specifics of FOSS licenses although they more and more understand the advantages. In this talk we want to illustrate the underlying reasons for the existing problems and present ideas how the procurement of FOSS can be improved and made easier for all those involved. We combine this with an outlook to the impending changes and developments with regard to the public procurement of FOSS in Germany. When procuring software the German administration usually works with standardized model contracts (the so-called EVB-IT) which are not ideally designed for the procurement of FOSS. In 2022 members of the Open Source Business Alliance performed a number of workshops with the German Ministry of Interior that maintains the EVB-IT in order to remove existing barriers and to eventually reform these standardized model contracts. Additionally a survey among members of the Open Source Business Alliance revealed typical recurring practical problems that companies face when offering Open Source Software or corresponding services to public administrations.

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

name: How to get public administrations to use more FOSS


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

description: This talk will present how support for an advanced camera use case was integrated into the mainline Linux kernel, using the Media and V4L2 APIs. It involves supporting a sensor using the raw Bayer RGB format, transmission over the MIPI CSI-2 bus as well as support for the Image Signal Processor (ISP) found on Allwinner platforms. A specific focus will be set on this ISP, with details about the features it implements as well as the internal and userspace APIs that are used to support it. Capturing pixels with a camera involves a number of steps, from the ADC reading the photosites in the image sensor to the final pixel values that are ready for encode/display, with various processing and transmission taking place along the way. While simple cases put most of the heavy lifting on the image sensor's side (through its embedded processor) and use a simple parallel bus for transmission, advanced cases require more work to be done outside of the sensor. In addition, modern high-speed transmission buses also bring-in more complexity.

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

name: Advanced Camera Support on Allwinner SoCs with Mainline Linux


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

description: In the space of a year the Fedora installer Web UI turned from an idea to first preview of installation media being published. There is still a long way ahead before the new Web-based UI can replace the existing GTK3-powered graphical interface of the Anaconda installer in Fedora. Still it is a good time to talk about reasons for starting the Web UI effort, the technology being used, our progress so far, the challenges encountered & what comes next.

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

name: Building a Web UI for the Fedora installer: the reasons, the tools and progress so far


OpenTelemetry with Grafana

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

description: OpenTelemetry is a collection of standards and tools to make it easy to get metrics, distributed traces, and logs out of applications. For example, OpenTelemetry's Java agent will instrument Java applications out-of-the-box, with no code change required. This talk shows how to use these signals for application monitoring. We will introduce Grafana's open source databases: Loki for logs, Tempo for traces, and Mimir for metrics. And we will show how to use Grafana to explore the telemetry data for an example application running on Kubernetes. Grafana and Prometheus metrics have been popular among platform engineers for monitoring Kubernetes clusters for a long time. This talk will show how application developers can benefit from Grafana as well, using open standards like OpenTelemetry, and open source monitoring backends like Loki, Tempo, and Mimir.

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


Squeezing a go function

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

description: Go is a very performant language, so, normally you don't need to optimize it at all. But what happen when you need it? This talk is a walk through some techniques and tools that you can use to squeeze that last drops from your functions. We are going to see tools like pprof or go benchmarks, and explore some of the results. We are going to explore other topis like escape analysis, function inlining or the garbage collector, that all of them can affect the performance of your application.

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


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

description: Go 1.20 is planned to be released in February 2023 and this talk covers what's coming up with it. We'll talk about new features and fixes in Go, new proposals for Go. All of the new things you might have missed!

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

name: The State of Go: What's new since Go 1.19


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

description: Join me in this experiment, we'll make some Go programs visually without writing a single line of Go code. Programming will be a required skill in the future, but for some people can be scary and difficult at first: too many keywords or too many grammar rules. We could lower the entry bar with a visual programming language, like Scratch is being taught at school. Could Go be a good option for this task? In this talk you could learn what can be done, the problems encountered and how to contribute to the future of this new way of programming Go. According to the Wikipedia, a visual programming language (VPL) is any programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually.

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

name: Visually programming Go: Let's mix Blockly + Go and see what happens!


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

description: Many people miss event-driven architecture benefits because they believe it is complex and challenging to implement. In this talk, I will show you how my Watermill library can help you to build a basic event-driven application in Go in 20 minutes. In this talk, I will show that building a basic event-driven application is not that scary with the open-source Watermill library (that I'm the author of). As part of this presentation, I will do live coding so you can see that building an event-driven application may be as straightforward as building an HTTP server. I will briefly overview event-driven architecture (EDA) and why it is a valuable tool for building scalable, resilient applications.

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

name: Introduction to Watermill: Siple Go Event-Driven application in 20 minutes


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

description: With Graphics Processing Units (GPUs) capable of teraflop performance double digit speedups over single core execution are possible. An alternative application of GPU acceleration is quality up: if we can afford to wait the same amount of time as on a single core, then how much more accurately can we compute the same result? A multiple double is an unevaluated sum of doubles and multiple double arithmetic exploits the optimized hardware for floating-point arithmetic, with predictable overhead and simple memory management. The talk will present experiences with software package QDlib (Hida, Li, Bailey, 2001) and the more recent CAMPARY software (Joldes, Muller, Popescu, Tucker, 2016) on NVIDIA GPUs, in particular the P100, V100, and RTX 2080. Code to evaluate and differentiate polynomials at power series and to accelerated the blocked Householder QR in multiple double precision is used in the software PHCpack, publicly available at github, and released under the GNU GPL v3.0 license.

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

name: Multiple Double Arithmetic on Graphics Processing Units: GPU acceleration to offset the cost overhead of multiple double arithmetic


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

description: Testing applications intended to run on high-performance computing clusters can be a painful process, especially when you do not have access to the resources you need. Sometimes you just want to check if you have the right compile flag specified, if the script you wrote actually works, or if your application can successfully use multiple cores. One way to test your HPC software is by emulation; instead of wasting precious compute time on your bare-metal cluster, you use a micro-HPC cluster that provides the same functionality as the bare-metal cluster on a smaller scale. This talk will discuss the concept and implementation of an open-source testing framework that builds upon micro-HPC clusters. We will explore how a micro-HPC cluster can be brought up using Python and deploy core software such as identity management, shared file systems, and environment modules. We will also be exploring the transferability of the testing framework, such as how we can ensure that tests can both be run in CI pipelines and on local development machines, or how can use pre-existing frameworks such as pytest or unittest to run the tests. Lastly, we will discuss limitations of the testing framework and future work that can be done to improve its capabilities.

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

name: Developing effective testing pipelines for HPC applications


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

description: Scientific Computing is constantly evolving, relying on technologies increasing in complexity. Codes produced in that field require testing and validation to assess their performance and reliability. This additional but inevitable task is often of low direct added value compared to the deployment costs. Yet multiple solutions dedicated to testings, including some HPC specific, are currently available -- our solution has unique specificities. "Parallel Computing Validation System" (PCVS) is an HPC-aware YAML-based job orchestration tool. It offers the unique capability of retargeting tests, decoupling benchmarks and execution environments. This way, it allows the same job set to be re-run to compare two standards without modifying test specifications. This validation set may be scaled automatically depending on available resources, whether the process runs on a single node (like a workstation) or a thousand-node supercomputer. Beyond a one-time shot, PCVS can log several successive executions of benchmarks for browsing, inspection, and post-processing through a dedicated Python interface. More than a metric, PCVS can build validation trends, providing better visualization to track project evolution, leading to better software quality. In this presentation, we introduce PCVS, a powerful and user-friendly job orchestration tool designed to streamline and scale test workflows. Utilizing a simple and intuitive YAML syntax, PCVS allows for flexible and efficient scheduling of tests based on massively parallel resources. Our retargeting model allows for the remapping of benchmark workflows, commonly associated with compilation and execution phases, across multiple environments. This approach has been used to build an high-quality MPI evaluation system, higlighting differences between API support among multiple implementations, demonstrating the potential of PCVS to assess API/ABI support across different implementations. Initially designed for validation processing, PCVS is versatile and can handle a wide range of use cases, from single test directory to large cluster-wide application stack. It should be viewed not as a test framework but as a coordinator between existing test bases and supercomputers.

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

name: How to deal with validation as an HPC software?: An approach to power software testing at scale


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

description: As an embedded software engineer, I'm used to be at the border between software and hardware. However, for many years I delegated everything more complex than finding a GPIO number to a dedicated hardware team. Now working as a freelance engineer, I've decided to get over the barrier, to be more independent. In this talk, I'll share my journey to the hardware world, from simple hardware designing and routing using free software to more complex design review. As a big difference between hardware and software is the required equipment, I will also go through the equipment I had to buy and how I use it. I hope to convey the message that while hardware is a vast world, it is a real advantage for the software engineer to get familiar with a few basic tools of our hardware colleagues.

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

name: A journey to the hardware world: A software engineer retrospective


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

description: Exploring the hardware and software of an Ikea Dirigera zigbee hub. State of the opensource software used Is Ikea commited to opensource? API description.

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

name: Exploring a swedish smarthome hub: Review by a Linux Hacker


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

description: Azimuth helps users self-service create Science Platforms, such as JuyterHub and Slurm. Sometimes this requires self-service creation of RDMA enabled Kubernetes clusters. OpenStack can use SR-IOV using VF-LAG to provide RoCE RDMA within VMs. We make use of K8s Cluster API to provision K8s using OpenStack servers. We then use multus and macvlan CNIs to give k8s pods RDMA networking. Testing the performance is automated using a Volcano based K8s operator. We are working on also bringing this power to OpenStack Magnum.

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

name: Self-service Kubernetes Platforms with RDMA on OpenStack: K8s, OpenStack and RDMA are just like oil, vinegar and bread?


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

description: We will show-case how Eclipse KUKSA project can help to leverage the advantages of a standardized description of vehicle signals. A large challenge for automotive software is the lack of standardization inside a vehicle. The basic data fabric of a vehicle consists of "signals", such as for example the speed of the vehicle or the state of a door. For this kind of data traditionally there was no standardized way how it is represented or transmitted. This makes even seemingly simple end-to-end applications such as "upload mileage to the cloud" very hard and costly in the industry. With the COVESA Vehicle Signal Specification (https://covesa.github.io/vehiclesignalspecification/) there exist an approach that is currently quickly adopted throughout the industry addressing this by introducing a domain taxonomy for vehicle signals. KUKSA.val is an Open Source solution that helps transforming and serving such standardised signals inside a vehicle computer enabling faster development of reusable cross-fleet in-vehicle software. The talk will show the architectural answer given by the Eclipse KUKSA project to leverage the COVESA Vehicle Signal Specification inside a vehicle: We will show how to use KUKSA components to gather and transform the data from lower embedded layers in the vehicle, and providing them in a secure way to apps and services. We will take a look the APIs provided in KUKSA and touch upon questions of data security and privacy. This demonstrates why within the context of the current Software Defined Vehicle Trend, Vehicle Computers are a worthwhile target for OSS solutions. A lot of benefit can be created by adopting standardised solutions for common challenges, laying a solid and cost-effective foundation for all kind of applications and services on top.

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

name: KUKSA.val Vehicle Abstraction: In-vehicle access to standardized VSS Vehicle Signals


The LDBC benchmark suite

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

description: We motivate and present an open-source benchmark suite for graph processing, created and maintained by the Linked Data Benchmark Council (LDBC). We first define common graph workloads and the pitfalls of benchmarking systems that support them, then explain our guiding principles that allow for conducting meaningful benchmarks. We outline our open-source ecosystem that consists of a scalable graph generator (capable of producing property graphs with 100B+ edges) and benchmarks drivers with several reference implementations. Finally, we highlight the results of recent audited benchmark runs. Data processing pipelines frequently involve graph computations: running complex path queries in graph databases, evaluating metrics for network science, training graph neural networks for classification, and so on. While graph technology has received significant attention in academia and industry, the performance of graph processing systems is often lacklustre, which hinders their adoption for large-scale problems. The Linked Data Benchmark Council (LDBC) was founded in 2012 by vendors and academic researchers with the aim of making graph processing performance measurable and comparable. To this end, LDBC provides open-source benchmark suites with openly available data sets starting at 1 GB and scaling up to 30 TB. Additionally, it allows vendors to submit their benchmark implementations to LDBC-certified auditors who ensure that the benchmark executions are reproducible and comply with the specification. In this talk, we describe three LDBC benchmarks: (1) the Graphalytics benchmark for offline graph analytics, (2) the Social Network Benchmark's Interactive workload for transactional graph database systems, and (3) the Business Intelligence workload for analytical graph data systems. For each benchmark, we explain how it ensures meaningful and interpretable results. Then, we summarize the main features of the benchmark drivers and list the current reference implementations (maintained by vendors and community members). Finally, we highlight recent audited benchmark results. Information on the talk: - Expected prior knowledge: specialized prior knowledge is not needed - Intended audience: developers and users of graph processing frameworks

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


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

description: Many science and engineering models reduce to problems involving huge sparse matrices -- matrices where most of the values are zeroes. Such computations are resource-intensive (time, memory, energy), and much research was devoted into data structures ("formats") and algorithms leading to fast sparse matrix operations. Yet, most such formats are highly specialized and seldom make it into a solid software package apt for general use. The RSB (Recursive Sparse Blocks) data structure is a format that addresses performance concerns for current shared-memory multicore CPUs, while also avoiding dead ends in terms of usability. The LIBRSB library implements RSB with all the necessary operations to manipulate sparse matrices in most computations, in the most popular programming languages, and on many hardware platforms. This talk will give an overview of the concepts behind LIBRSB and its main usage modes. Intended audience: Developers of Linear Systems Solvers based on Iterative Methods, or General Computing Packages. Expected prior knowledge: Familiarity in any of C, C++, Fortran, Python, GNU Octave.

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

name: LIBRSB: Universal Sparse BLAS Library: A highly interoperable Library for Sparse Basic Linear Algebra Subroutines and more for Multicore CPUs


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

description: Code instrumentation is the primary means for extracting fine-grained performance data from programs. However, special care has to be taken to with regard to overhead management, as a full instrumentation can increase the runtime by orders of magnitude. Careful selection of the instrumentation configuration (IC), typically via filter lists, is therefore crucial to retain the performance characteristics of the original application. In order to give the user better control of what is measured, we have developed CaPI, an open-source tool for the creation of low-overhead, user-defined ICs. CaPI relies on a statically constructed whole-program call-graph as its central data structure, enabling the user to select functions based on the context they are called in, in addition to function-level metrics. Currently, this call-graph is generated externally by tools running on the source level. This can be cumbersome, especially when targeting large-scale scientific software. To mitigate this issue, we are developing an approach that runs the analysis on the LLVM intermediate representation during link-time optimization. Running during link-time also allows us to embed the result into the binary, improving the workflow and usability of CaPI. In this talk we will discuss the advantages and shortcomings of link time generated call graphs compared to source level generated call graphs, and show how statically generated information can be augmented dynamically at runtime. 1. Workflow of the CaPI instrumentation selection tool 2.Usability issues occurring with large-scale target applications 3. Link-Time idiosyncrasies a) Information availability at source vs link time b) How to regenerate missing information 4. Embedding knowledge into the binary 5. Requesting knowledge from binaries

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

name: Link-time Call Graph Analysis to facilitate user-guided program instrumentation: An LLVM based approach


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

description: Linux desktop camera applications have traditionally been limited to support USB cameras preventing their usage on mobile Linux platforms with complex camera systems. With the adoption of Pipewire and libcamera traditional camera applications are not anymore limited to desktop system but can be re-used for mobile platforms. This talks presents the implementation of the components that allow a desktop camera application to run on a mobile system, using a Pinephone Pro running PostMarketOS as development platform. Linux desktop camera applications have historically supported only simple use cases and are generally limited to the usage of USB cameras. This has traditionally prevented their adoption on embedded and mobile devices, such as Linux smartphones, where the camera system requires precise configuration of the several components that realize it. The increasing adoption of Pipewire as the system media device manager in conjunction with its libcamera backend that enables support for complex cameras, allows the usage of 'traditional' camera application in new contexts. The talk will demo a desktop camera application such as gnome-camera or cheese running on a PinephonePro with PostMarketOS and presents the architecture and the implementation of the components that allow a 'desktop' camera application to run on a mobile Linux system.

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

name: Convergent camera applications for mobile Linux devices: What does it take to run your desktop camera application on your phone


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

description: Throughout Europe a large collection of 54 stations each with hundreds of antennae collect a large amount of data for radio astronomy. These stations separated by 2000 kilometers of distance combine at a core of 24 stations in Exloo, the Netherlands and two HPC clusters in Groningen, the Netherlands. Together this entire system is known as the LOw Frequency ARray (LOFAR). This talk focuses on the 400gbps datastream and aggregation across the 2000 kilometers distance between stations and how both a GPU and CPU cluster translate these data into images. We will cover the open-source tools that enable this processing, discover some of the history about our clusters, gain insights into some of the pipelines and steps to do data transformations and finally show you some of LOFARs current achievements and future directions.

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

name: LOFAR: FOSS HPC across 2000 kilometers: The unknown world of open source radio astronomy software


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

description: Matter is the new kid in town when it comes to IoT protocols. As an application layer protocol based on IPv6 it aims to be the language for IoT devices. With Thread it supports a low-power wireless protocol which allows sleepy devices to operate on a coin cell battery for years and still allow end-to-end connectivity. This talk will look at the technology in Thread and Matter and its open source implementations. Topics include mesh capabilities of Thread, the border router and service discovery. Based on my OpenThread FOSDEM talk from last year this shows an extended blueprint we created for the Oniro project to provide a connectivity solution for embedded devices running Linux or Zephyr. The Matter specification, together with an open source SDK, got just released in October 2022. As Matter is based on IPv6 it can run over a different number of connectivity solutions. From the start it supports Ethernet, Wi-Fi and Thread. The later being a low-power wireless protocol for a few years already, but without to much traction. With Matter support this might change in 2023 and forward. With border router support in popular devices like Apple Homepod and TV, Google Nest and Wi-Fi or Eero access points the needed technology infrastructure will become available in normal households.

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

name: Matter and Thread as Connectivity Solution for Embedded


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

description: While containerization revolutionized the delivery and execution of software, it introduces new challenges as the usual practice with one big software file-system with a subsequent module load to rule all environments is not feasable with containers. The talk introduces the 'HPC Container Conformance' Project which aims to provide guidance on how to build container images and how to annotate them so that end-users and system admins can integrate them in their workflows. The talk also introduces the MetaHub Registry, an OCI compliant container registry to serve environment/hardware specific images and reduce overall complexity of herding all the container images. By using profiles when logging in MetaHub is aware of the context the image is going to be executed and picks the right image from previously pushed/configured container images. Centralising the logic of picking the right software variant (module load) within the registry enables a series of enhancements to the user experience and a reduction in complexity which allows users and admins to focus on their science.

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

name: HPC Container Conformance: HPC3: Provide guidance on how to build and annotate HPC containers


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

description: In the context of MPI (Message Passing Interface), our talk presents a long-standing collaboration between RWTH Aachen and TU Darmstadt to further extend the MPI correctness checker tool MUST with memory allocation checking capabilities in the context of MPI (communication) calls for C/C++ target programs. To that end, we developed the LLVM compiler plugin TypeART. Both tools are open source and available under the BSD 3-clause license, see https://itc.rwth-aachen.de/must/ and https://github.com/tudasc/TypeART. In general, MUST’s correctness checking includes errors that already manifest - segmentation faults or incorrect results - and many errors that are invisible to the developer or only manifest with certain HPC systems and MPI libraries. MUST works by intercepting MPI calls of a target application at runtime, allowing for bookkeeping of the current program state. Thus, MUST can cope with the complex MPI semantics of, e.g., (a) collectives, (b) wildcards, or (c) datatypes. As a consequence of relying on intercepting MPI calls, though, MUST is unaware of the effective type of the allocated void* buffers used for the low-level MPI API. To that end, TypeART was developed to track memory (de-) allocation relevant to MPI communication. TypeART instruments heap, stack and global variable allocations with a callback to our runtime. The callback consists of (a) the memory address, (b) the type-layout information of the allocation (built-ins, user-defined structs etc.) and (c) number of elements. Thus, with TypeART, MUST can check for type compatibility between the type- less MPI communication buffer and the declared MPI datatype. Our tools also handle derived datatypes with complex underlying C/C++ data structures.

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

name: MUST: Compiler-aided MPI correctness checking with TypeART


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

description: We introduce the numba-mpi project, which offers access to the C language Message Passing Interface (MPI) routines from within Numba-JIT-compiled Python code. As a result, high-performance LLVM-accelerated Python code may use MPI communication facilities without leaving the "nopython" mode (still being usable, e.g. for debugging purposes, with the JIT compilation disabled). The numba-mpi API constitutes a thin wrapper around the MPI C API and is built around the Numpy arrays including handling of non-contiguous views over Numpy array slices. The package is implemented in pure Python and depends on numpy, numba and mpi4py (the last dependency is used at initialisation only). Package releases are available on PyPI (https://pypi.org/p/numba-mpi/) and Conda Forge (https://anaconda.org/conda-forge/numba-mpi). Project development is hosted at Github leveraging the mpi4py/setup-mpi workflow enabling continuous integration tests on Linux (MPICH, OpenMPI & Intel MPI), macOS (MPICH & OpenMPI) and Windows (MS MPI). Auto-generated docstring-based API docs are maintained at: https://numba-mpi.github.io/numba-mpi. The project is in continuous development (size/rank, send/recv, allreduce, bcast & barrier available and covered by unit tests as of time of writing). We welcome feedback and contributions.

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

name: numba-mpi: Numba @njittable MPI wrappers tested on Linux, macOS and Windows


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

description: As open source network switching gathers momentum there is significant work being done to upstream support for network switch devices in the Linux kernel. The DENT project is an open source network operating system utilizing the Linux kernel, switchdev, and other Linux-based projects, hosted under the Linux Foundation. This talk will present case studies of driver development for platforms supported by the DENT project — the ONIE NVMEM driver and the switch BSP driver.

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

name: Open Source Switching: Upstreaming ONIE NVMEM and switch BSP drivers: An overview of a DENT upstream WG project and network switch board support in the Linux kernel


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

description: An AI that can lock you out of your own PC every hour or so, and only allow you back in when you did 10 pushups. It sounded like a good idea before I actually made it. What better way to learn about MLOps than over-engineering a pet project to a degree where Google can put it into production tomorrow. Using a raspberry pi coupled with a camera / AI accelerator combo kit, I created a fully featured fitness overlord. The full ML pipeline was handled with ClearML, using a Google Pose Estimation model at its core, both open source ofcourse. The presentation will guide the listener through the journey of creating this overlord, from the specifics on the hardware to the fully automated retraining and deployment pipeline. Mostly the focus will be on the machine learning side of the project, the challenges that I had and how I was able to overcome them using open source tools and industry best practices around managing ML projects.

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

name: Overengineering an ML pet project to learn about MLOps: Force yourself to do pushups while working from home!


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

description: Numerical simulations of physical phenomena are the usual use cases for HPC architectures. However, as they produce more and more data, how can we efficiently analyze and visualize their output ? In this talk, we will present ParaView as a framework for visualizing and analyzing extreme scales of scientific data. Focus will be given specifically to data distribution and resource allocation along with the "in-situ" workflow and current support for heterogeneous compute architectures. Strong of 20 years of development with performance in mind, ParaView is continuously improved, relying on state of the art libraries (such as MPI, OpenMP, VTK-m).

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

name: Efficiently exploit HPC resources in scientific analysis and visualization with ParaView


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

description: Public Invention is a non-profit that pivoted to human respiration during the pandemic. The PolyVent is a fully free-libre open mechanical ventilator educational platform for teaching and research. It is part of a proposed and partially implemented complete free ecosystem of medical devices for respiration called Freespireco. It runs VentOS free software which can drive any ventilator. These projects represent a burgeoning open source medical device movement. Free-libre open design hardware grows out of free software. Hardware has greater capital costs than software and is much more expensive to deploy. Medical hardware is more expensive still. Nonetheless, the COVID-19 global pandemic showed that the fragility of our global supply chains kill people. Open source medical hardware is a potential solution to this predictable catastrophe. In coming decades, we hope it will be as common as free software is now. The PolyVent ventilator was started to address a predicted shortfall in human mechanical invasive and non-invasive ventilators in 2020. This never came to pass in the West, for medical reasons, but it was not a panic—it was a reasonable surmise based on limited data at the time. Over 100 teams tried to create open source ventilators; PolyVent is one of the few still active and fully open. The PolyVent is completely open and very modular to allow for educational tinkering and graduate-level research. It runs fully open software called VentOS which can drive any electromechanical ventilator based on an extensible hardware driver model. It uses a “super loop” Arduino framework deployed with PlatformIO. Combined with other modules, such as the VentMon monitor which provides a clinical display in a public data lake and the GPAD (General Purpose Alarm Device), it is an educational platform that has been piloted at one University. Although not for clinical use, we hope for-profit firms will create clinical ventilators based on this design. We understand how to assist such firms in obtaining regulatory approval. Our hope is that in the next decade, a complete ecosystem of cooperating medical devices, components, data standards, and software, will make safe, reliable, reasonably priced respiratory care available to all people in all nations.

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

name: The PolyVent FLOSS Ventilator: A Free-libre Respiration Ecosystem


Continuous Documentation for Your Code

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

description: Do you document your code? Imagine that you need to get back to your code in 6 month after you wrote it, there is always a big possibility that you will have to spend some time to find out how this code works. Or if someone else wrote some code, which is already in production and your task is to fix a bug in it and there is no documentation and no one actually knows what this code does. There are more benefits of implementing continuous documentation for the code: - easy to onboard new team members, - easy to share knowledge, - if this code is open source - easy to start contributing, - easy to see purpose and motivation of each piece of code, - easy to keep versioning for each new release of the code. It this talk I will show the difference between documentation types and will show a demo in the end of the talk.

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


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

description: Do you need to communicate with DBus in your application? Do you want a quick and easy solution? Are you confused by the DBus specification? Do you make typos in XML? Let me introduce you to the dasbus library and demonstrate some features and capabilities that might be interesting for your project. DBus is a message bus system that provides an easy way of inter-process communication. It is widely used in the Linux ecosystem, but it can be a bit intimidating to work with. I was involved in development of DBus support for an operating system installer that required a fool-proof easy-to-use DBus library, so I have created dasbus. Dasbus is a DBus library written for Python 3.6+, based on GLib and inspired by pydbus. It is trying to be as Pythonic as possible and relies on exceptions, type hints and decorators with a strong focus on composition over inheritance to make its implementation fully customizable.

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

name: Talk to DBus from a Python application: An introduction to the dasbus library


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

description: In this talk, we will present DuckDB. DuckDB is a novel data management system that executes analytical SQL queries without requiring a server. DuckDB has a unique, in-depth integration with the existing PyData ecosystem. This integration allows DuckDB to query and output data from and to other Python libraries without copying it. This makes DuckDB an essential tool for the data scientist. In a live demo, we will showcase how DuckDB performs and integrates with the most used Python data-wrangling tool, Pandas. The talk is catered primarily towards data scientists and data engineers. The talk aims to familiarize users with the design differences between Pandas and DuckDB and how to combine them to solve their data-science needs. We will have an overview about five main characteristics of DuckDB. 1) Vectorized Execution Engine, 2) End-to-end Query Optimization, 3) Automatic Parallelism, 4) Beyond Memory Execution 5) Data Compression. In addition, users will also experience a live demo of DuckDB and Pandas in a typical data science scenario, focusing on comparing their performance and usability while showcasing their cooperation. The demo is most interesting for an audience familiar with Python, the Pandas API, and SQL.

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

name: DuckDB: Bringing analytical SQL directly to your Python shell.


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

description: This is not really a "how-to" -- it's more of a "what-did" I spent an unreasonable amount of time writing a software 3D renderer for an extremely small and low-power ESP32 device running MicroPython. I will talk about the problems I encountered, the optimisations I made, and the eventual contributions I was able to make back to the MicroPython project. If you've been to other hacker conferences like EMFCamp or MCH, you may be familiar with the tradition giving attendees interesting hardware on a lanyard instead of a traditional conference badge. Attendees are encouraged to experiment with and hack on the device both at the conference and afterwards. This year at EMFCamp 2022, the conference badge was a USB thumb drive sized ESP32 device running MicroPython. It has a joystick, an accelerometer, the cutest little LiPo battery, and a lovely 135x240 pixel colour TFT display. It seemed like it would be a fun single-weekend exercise to write a little 3D renderer for it in Python. It turned out to be a "fun" multi-weekend exercise, but I learned a lot that I'd like to share. I learned how to workaround problems in the tooling. I learned there were problems in the display driver. I learned about optimising Python. I learned how to write native MicroPython modules to rewrite some hot functions in C. I learned about optimising how the Python talks to the C. And I even learned how to contribute some improvements back to the MicroPython project. I will bring the device with me, catch me after the talk to see it rendering Utah teapots up close.

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

name: Realtime 3D Graphics on a MicroPython ESP32: Hacking the EMFCamp Conference Badge


Pip install malware

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

description: pip install malware: it’s that easy. Almost all projects depend on external packages, but did you know how easy it can be to install something nasty instead of the dependency you want? You might remember classic typosquatting examples like goggle.com, but it’s now common to see malicious code hidden in spoofed or otherwise fraudulent PyPI packages or nested dependencies. Malware developers can also use techniques like starjacking to appear legitimate, so these unpleasant packages become even more difficult to spot. It’s estimated that over 3% of packages on PyPI could be using this technique. By the end of this talk, you’ll know how to protect yourself when installing and updating dependencies and you’ll leave with a checklist to follow to help you stay safe in future.

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


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

description: Understanding what is happening in a large Python project stinks. Especially when you have a bug in production that cant seem to be reproduced in your dev environment. Pyhton's Logging Enters Stage Left: Python's logging tools may not be the easiest to work with so lets walk through and understand together. To wrap things up we will see what it looks like to use a centralized log store for visualizing these logs.

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

name: Python Logging Like Your Job Depends on It: A fast track to understanding logging in Python


A quick introduction to MicroPython

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

description: Intro to MicroPython for Python programmers. Place of Python in embedded software. Thonny to install and use MicroPython. Demo, from blinky to more complex peripheral hardware (LEDs, SR04, LED matrix, Neopixels, RFID reader, UTP connection). Comparing suitable targets (PiPico, ESP8266, ESP32, Teensy 3.1, a few more).

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


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

description: In a world of complex algorithms to recommend music, Calliope is a simple toolkit of ~6000 lines of Python that you can use to build different types of playlist generators. This talk will touch on: open sources for music metadata, example playlist generators, and tools to speed up working with this kind of "small data".

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

name: Simple, open, music recommendations with Python


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

description: In this talk, through some examples and demos of PyScript, we will see how to use it - just include the CDN URL, understand that it is a frontend-only Python that runs on the browser and learn the fact that it can work with javascript in conjunction. After that, we will look at what is under the hood - Pyodide - which is a Python distribution for the browser. It is what is essential to power PyScript. We will discover what is the difference between using PyScript and Pyodide. Finally, we will conclude what is already available in PyScirpt like which library you can run on PyScript and which ones are still yet to come. In the end, we will answer the question - Will PyScript replace Django? This talk is for those who are curious about PyScript and the idea of running Python in the browser in general. We will assume no piror knowledge about it.

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

name: Will PyScript replace Django?: What PyScript is and is not


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

description: While iterating rapidly on Python code, we want to see the result of our changes rapidly. In this talk, we will review the different techniques available to reload Python code. We will see how they work and when each is the best fit. Please note that this talk replaces one titled "The future of Python's asyncio" that was due to have been given by Jonathan Slenders, who has sent his apologies but is now unable to attend as he has fallen ill. We wish him a speedy recovery. The talk will cover both cold and hot reload techniques: Cold reload techniques reset the application state between each reload. Examples include Django and Flask's autoreload tools. Hot reload techniques keep the application state despite the code changing. These include Jupyter kernels and 'reloadr' [1], an open-source module developed by the speaker to allow stateful hot code reloading. AMENDMENT: Please note that this talk replaces one titled "The future of Python's asyncio" that was due to have been given by Jonathan Slenders, who has sent his apologies but is now unable to attend as he has fallen ill. We wish him a speedy recovery.

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

name: Code reloading techniques in Python: Cold and hot code reloading, the different options, how they work and when to use them.


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

description: So much of our knowledge is recorded as textual data. The knowledge is there, but extracting insights out of it is a challenge. Imagine the time you spend trying to get to that one piece of information that you know is buried somewhere in your piles of documents. In this presentation, we will approach this problem by building our own semantic search application in Python, using Haystack. Haystack is an open source NLP framework and its key building blocks support a variety of semantic search pipelines. In this presentation, we will walk through one particular application of semantic search: question answering. We will also have a look at: - What tasks semantic search enables - Key building blocks - How to leverage Haystack’s open source tooling to use the latest resources in NLP

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

name: Building a Semantic Search Application in Python, Using Haystack


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

description: Learn how easy it is to get started with asynchronous programming in Python. The talk will provide a quick introduction to the basic concepts of async programming and demonstrate the techniques based on a Telegram antispam bot using the async library Pyrogram. The talk will provide a quick introduction to the basic concepts of async programming and demonstrate the techniques based on a Telegram antispam bot using the async library Pyrogram. The async event loop will be covered, co-routines, the concept of awaiting input and how to think "async".

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

name: Writing a Telegram Antispam Bot in Python: An introduction to async programming


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

description: In this short tutorial you will learn how to remotely connect to embedded Linux devices running Wayland and Weston using Remote Desktop Protocol (RDP) on GNU/Linux distributions built with the Yocto Project and OpenEmbedded. Exact getting started steps will be provided. We will discuss the advantages and the disadvantages of RDP as well as some troubleshooting guidelines. Wayland is an open source display server protocol aiming to replace X11 on Linux devices with a modern and secure windowing system. As of today most of the popular desktop Linux distributions, including Ubuntu, Debian, Fedora, support Wayland out of the box. Wayland is also widely used on embedded devices and it is supported by hardware running Automotive Grade Linux (AGL), COVESA (previously GENIVI), WebOS, Tizen, postmarketOS, Jolla, etc. There are many compositors compatible with Wayland. Weston is a simple reference compositor. Remote Desktop Protocol (RDP) is a proprietary network protocol with graphical user interface for connecting to other computers developed by Microsoft. It works on Weston with the screen-share.so plugin. This lightning talk will provide the exact steps how to build from scratch core-image-weston, setup RDP and remotely accesss the embedded device using wlfreerdp (for Wayland) or xfreerdp (for X11) from a personal computer with GNU/Linux distribution in the same network. The examples will be based on the long-term support release kirkstone of the Yocto Project. The talk is appropriate for anyone interested in remote access to embedded Linux devices. Previous experience is not required.

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

name: Ups and Downs with Remote Desktop Protocol (RDP) on Wayland, Weston and the Yocto Project


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

description: What happens when you buy a solar roof, and you find out that the logging component has a Raspberry Pi MAC address? Perhaps nothing at the beginning, but sooner or later you'll have to scratch that itch and teach yourself some reverse engineering. Back in 2018 my family installed a solar roof at home. It came with a nice component to log and visualize your production and consumption statistics, and I was pretty surprised to see that its MAC address started with B8:27:EB, the OUI of the Raspberry Pi Foundation. During the 2021 Christmas holidays I finally decided to look into the device, a fun experience covering Modbus, radare2, and even PCB reverse engineering; in this presentation I will explain what I learnt and how I replaced the vendor software with a custom Python program and Home Assistant.

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

name: Reverse engineering a solar roof datalogger: Is that a Raspberry Pi in there?


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

description: The Spack package manager is widely used by HPC sites, users, and developers to install HPC software, and the Spack project began offering a public binary cache in June of 2022. The cache includes builds for x86_64, Power, and aarch64, as well as for AMD and NVIDIA GPUs and Intel's oneapi compiler. Currently, the system handles nearly 40,000 builds per week to maintain a core set of Spack packages. Keeping this many different stacks working continuously has been a challenge, and this talk will dive into the build infrastructure we use to make it happen. Spack is hosted on GitHub, but the CI system is orchestrated by GitLab CI in the cloud. Builds are automated and triggered by pull requests, with runners both in the cloud and on bare metal. We will talk about the architecture of the CI system, from the user-facing stack descriptions in YAML to backend services like Kubernetes, Karpenter, S3, CloudFront, and the challenges of tuning runners to give good build performance. We'll also talk about how we've implemented security in a completely PR-driven CI system, and the difficulty of serving all the relevant HPC platforms when most commits are from untrusted contributors. Finally, we'll talk about some of the architectural decisions in Spack itself that had to change to better support CI.

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

name: Keeping the HPC ecosystem working with Spack CI: Scaling a modern CI workflow to the Spack ecosystem


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

description: In high performance computing, package managers like Nix, Guix, Gentoo Prefix, and Spack are used to install applications and their dependencies. They allow multiple variants and flavors of the same package to coexist, by installing every package into a unique prefix directory that embeds a hash derived from the dependency graph. This non-standard directory structure can result in increased startup time of executables, as the dynamic linker has to search through many directories to locate all required libraries. This is especially problematic in the context of HPC and shared filesystems, since many instances of the same executable may start in parallel, causing a "stat storm" on the typically slow filesystem. This talk explores benefits and drawbacks of different solutions, and shows in particular how the Spack package manager solves this problem.

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

name: How the Spack package manager tames the stat storm


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

description: Slurm is the most widely used batch scheduler for HPC systems. The Open Source Software community is very active in the development surrounding the Slurm ecosystem, contributing CLI tools for accounting, monitoring, and notebooks among others. A lot of these client environments are nowadays created on containers, which have become a ubiquitous part of running applications. However, this way of working provides new challenges in HPC environments, especially when using Slurm. Slurm requires careful management of shared cluster secrets and cluster-wide configuration files that need to be in sync in order to work efficiently and securely. This talk proposes a novel and simple tool called straw, which allows the creation of secret-less and config-less Slurm client environments. Therefore simplifying the creation of (containerised) environments by removing the burdens of maintaining config files, sensitive munge secrets, and additional daemons. This talk will first provide an introduction to Slurm, followed by a description (mostly drawing from personal experience) of common patterns and pitfalls when creating containers that interact with Slurm clusters for different purposes (monitoring, notebooks, etc). Next, I will introduce Straw, explaining why it was needed and why despite its simplicity (it mostly just fetches a bunch of config files), it is able to perform a task that regular Slurm tools can't, therefore simplifying Slurm client environments. Finally, I will conclude by showing a simple example of how the tool can be used, and how it compares to the usual scenarios in which config files, extra daemons, and secrets need to be carefully managed. If time allows it, I might detail some of the weaknesses of this approach: the fact that the Slurm protocol isn't really documented, and therefore this tool relies on "reverse-engineering" (as much as one can say reverse engineering when no documentation exists, but the code is available) to keep up with new Slurm releases.

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

name: Simplifying the creation of Slurm client environments: A Straw for your Slurm beverage


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

description: Unikernels aims at improving the way single purpose systems are built with minimalist kernels that the user’s application compiles within. This results in deployments that require less memory, less disk, less cpu and less time to be up and running. Also, the whole system spends most of the time in the user application or doing IO for that single application thus cpu time is used more efficiently. In this presentation, we talk about the use of unikernels for High Performance Computing. We present a work-in-progress that aims at implementing the MPI standard on top of Toro, an open-source non-POSIX unikernel. In this work, we implement a library that conforms to the Open MPI implementation. This library relies on Toro API to implement the MPI functions. In particular, the library leverages Toro’s features like per-CPU memory allocation, cooperative scheduler, thread migration and inter-core communication based on Virtio. During the initialization, Toro creates one instance of the MPI application per core. Each instance is a thread that is migrated to the corresponding core and then executes without any interference. When applications are required to allocate memory, each core has its own memory pool from where memory is allocated. This allows us to keep memory allocation local, thus improving the way cache is used. Also, primitives like MPIGather() or MPIScatter() that require communication between instances are implemented by relying on a new Virtio device named virtio-bus that allows core-to-core communication without locking. At the moment, we have implemented the following APIs: - MPIGather() - MPIScatter() - MPIReduce() - MPIBarrier() The goal of this PoC is to port benchmarks from the osu-microbenchmarking (http://mvapich.cse.ohio-state.edu/benchmarks/) to compare with existing implementations. During the presentation, we present how this is implemented and we demonstrate the use of the current implementation by executing different MPI applications on top of Toro.

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

name: Running MPI applications on Toro unikernel


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

description: There are a wide variety of HPC systems across the world, and nearly as many ways of interacting with them using job submission systems. Therefore, migrating complex HPC workflows from a system to another may prove challenging. We present Troika, a tool that aims to abstract the details of the job submission system from the user, providing a single entry point for submitting, monitoring, and interrupting jobs on multiple HPC systems. Troika allows for a site-agnostic job script with directives, that can be translated to a script that the job submission system understands, based on configuration. Troika has been designed with extensibility in mind, to enable support for as many job submission systems as possible, as well as differences in the use of such systems. Troika is free software written in Python, exposing multiple entry points for hooks and plug-ins. It is a fundamental part of ECMWF's 24/7 time-critical operational and research workflows, making the glue between the batch scheduler and the workflow manager, where it handles hundreds of thousands of jobs each day. We will present how Troika works, as well as giving insights into its current and future applications.

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

name: Troika: Submit, monitor, and interrupt jobs on any HPC system with the same interface


U-Boot as PSCI provider on ARM64

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

description: OS kernel on embedded ARM64 systems requires PSCI interface to bring CPU cores up/down, suspend/resume/reset/power off. U-Boot bootloader provides a PSCI interface and this talk explains it. The talk consists of five parts -- how the PSCI interface works, where and how OS kernel calls it, how and in which hooks on the bootloader side do those calls land, and how those hooks in U-Boot provide functionality required by OS. Last part is an example of U-Boot configured to provide PSCI interface on contemporary SoC . The benefit of using the U-Boot PSCI interface over other PSCI interface providers is twofold. First, it allows for utilizing the full potential of U-Boot, and especially the SPL preloader, which can then boot OS kernel directly and quickly. Second, removing one software component from the boot stack reduces the Software BoM.

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


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

description: WAM is the web runtime used in LG webOS (both for its products and the Open Source Edition), and has been adopted by Automotive Grade Linux. It is built on top of Chromium web engine and its Ozone Wayland backend. In this presentation I will showcase its main features, and talk about its history, from HP/Palm devices, through LG TV and its Raspberry PI Open Source Edition, to end with its adoption in AGL. WAM, also known as WebAppManager, or Web Application Manager, is a system service providing web runtime capabilities in LG webOS and AGL platforms. Its goals are: * Performance through reuse of resources among web applications. * Provide a native-like experience to applications based on the Web Platform standards. It has been a central part of LG webOS in all its flavours, including LG webOS Open Source Edition. As such, it provides a great example of how to integrate the web experience in a Linux system, providing graphics integration through Wayland protocol. It will be a history of web engines. From QtWebKit, to QtWebEngine, to a custom embedding API directly on top of Chromium. This is also going to be a history of the flexibility of the platform, as it was possible to integrate it not only on webOS, but also in the different releases of Automotive Grade Linux, even after different architecture rewrites. This presentation will highlight the strong points that make WAM specially flexible for integrating in different Linux platforms. A retrospective of the main milestones of WAM in last decade. But also a look into its future.

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

name: WAM: an embedded web runtime history: Introduction and retrospective


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

description: Yosys and nextpnr made FPGA development very attractive for developers that prefer to use open-source tools over proprietary vendor tools. Affordable and well documented boards with ECP5 FPGAs lowered the entry threshold for hobbyists even further. Michael will show how to use LiteX to use these tools to build soft-core RISC-V SoCs that are capable of running Linux and combine them with use-case specific cores to custom FPGA bitstreams. LiteX provides a framework to build FPGA SoCs including a few examples of SoCs that are capable of running Linux. However, for fully leveraging the capabilities of FPGAs, one would not only reproduce existing designs, but also implement use-case specific cores and add them to the FPGA bitstream. Michael will give an update on Steffen's and his experiences with using the open-source FPGA tools to build FPGA bitstreams. In recent years, they presented how to build the LiteX example SoCs, run Linux on them, and how to make the systems reproducible by using Yocto. This talk will focus on how to add custom cores that are written in Verilog and Migen to the SoC to implement use-case specific features.

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

name: Building FPGA Bitstreams with Open-Source Tools


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

description: "We're going to build a new type of database in Go" – "Are you mad?!" This was the common reaction when back in 2019, we decided to build an open-source vector database in Go. Today, Weaviate's downloads have exceeded 1.5M (at the time of writing), and we're over the moon with how far we've come. But oh boy, they were right; it was crazy indeed: In this talk, I would like to take you on a journey of the less common and crazier parts of Go: You will learn about pure-assembly optimizations, obscure pitfalls, tricks of heap allocations, and memory management in general. To get the most out of this talk, you should have at least an intermediate experience level of Go. The talk touches on database internals, but no prior knowledge of inner-database mechanics is required.

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

name: Our Mad Journey of Building a Vector Database in Go: Building a Database in Go


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

description: Dagger is a programmable CI/CD engine that runs pipelines in containers allowing developers to build and debug pipelines locally and then run them anywhere avoiding vendor lock-in to a particular CI/CD solution (well...except Dagger). While the portable pipeline concept may not be new, by combining that with the ability to write pipelines as code (Go, Python, TypeScript, JavaScript, CUE supported at the moment) instead of YAML, Dagger revolutionizes how CI/CD pipelines are built and ran.

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

name: Building a CI pipeline with Dagger in Go


Debugging concurrency programs in Go

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

description: Recently the interest in concurrent programming has grown dramatically. Unfortunately, parallel programs do not always have reproducible behavior. Even when they are run with the same inputs, their results can be radically different. In this talk I’ll show how to debug concurrency programs in Go. I’ll start from showing how you can debug your gorotines using delve and gdb debuggers. Then I’ll try to visualize goroutines using different scenarios, sometimes it helps to better understand how things work. Next part of the topic will be about dumping a goroutine stack trace of your application while it’s running and inspect what each goroutine is doing. And I’ll demonstrate how to debug leaking goroutines by tracing the process of how the scheduler runs goroutines on logical processors which are bound to a physical processor via the operating system thread that is attached. As a bonus i’ll cover debugging tips on how to find deadlocks and how to avoid race conditions in your application.

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


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

description: This talk will cover all the new features and changes in Delve since the last in-person FOSDEM and then go right into a deep-dive into how Delve enables extremely low-overhead tracing of Go programs using eBPF. Attendees will learn not only how to use this new feature of Delve, but also how they can leverage eBPF in their own Go programs. I will start by introducing this new feature, showcasing how it can be used, and then I will take the audience into an in-depth look at how it is implemented under the hood. The talk will feature a code walkthrough and detailed explanation of the technical details that went into making this feature a reality. I will also talk in depth about the libraries and approaches used to enable Go programs to leverage eBPF, which will empower attendees to implement such a feature in their own applications as well. This talk is accessible to any level of Go programmer, from novice to advanced. Novice users will get a lot of benefit from learning how to use the tracing feature in Delve to track down problems in their code, while intermediate to advanced users will get a lot of information from the technical deep dive and will also walk away with the knowledge of how to integrate eBPF programs into their own codebases. The information in this talk will be practical and immediately applicable to attendees in their day-to-day Go development.

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

name: What's new in Delve / Tracing Go programs with eBPF


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

description: "Go Even Further Without Wires" is the thrilling part 3 of the "Go Wireless Saga". In "Go Without Wires", we wrote TinyGo code that runs directly on Bluetooth devices. In "Go Further Without Wires", we used TinyGo to connect to WiFi networks, and consequently to the Internet itself. Now, we will extend our reach further out into the real world, with TinyGo programs that can connect to Wide Local Networks (WAN) using the long distance radio protocol LoRA/LoRAWAN. This talk will include several live demonstrations, including a flying object. "Go Even Further Without Wires" is the thrilling part 3 of the "Go Wireless Saga". In "Go Without Wires", we wrote TinyGo code that runs directly on Bluetooth devices. In "Go Further Without Wires", we used TinyGo to connect to WiFi networks, and consequently to the Internet itself. Now, we will extend our reach further out into the real world, with TinyGo programs that can connect to Wide Local Networks (WAN) using the long distance radio protocol LoRA/LoRAWAN. This talk will include several live demonstrations, including a flying object.

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

name: Go Even Further Without Wires: Long Distance Radio Communication Using Go and TinyGo


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

description: Go is a pragmatic choice for developing reliable and robust programs, especially in cloud environments. However, with big data demands, the expensive economy and the ecology aspects, every Go developer will inevitably be required to handle efficiency issues in critical parts of their Go applications or services. In this talk, Bartek Płotka, author of "Efficient Go" O'Reilly book and maintainer of open-source Go projects, will walk you through 5 simple steps that will guide you on how to make effective and pragmatic optimizations in your code in a data-driven manner. The audience will learn about essential open-source tools and strategies that allow them to make their code faster or use fewer resources like memory or CPU when needed. There will also be a chance to win free signed copies of the "Efficient Go" book!

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

name: Five Steps to Make Your Go Code Faster & More Efficient