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

description: Compartmentalization (a.k.a., sandboxing) can be used to protect applications from themselves and protect users from applications. However, today's techniques require applications to be willing participants: invasive modifications are required, and it's up to the application whether or not it will sandbox itself. We would like to move towards a model in which moderately complex applications like compilers can be started from sandboxes and have their access to global namespaces transparently mediated. This talk will describe recent work in FreeBSD that is driving at the goal of transparent, oblivious sandboxing. We will discuss changes in the ELF image activator and run-time linker to support transparent sandboxing as well as a support library for managing pre-opened directory descriptors and a simple shell application to start applications from within sandboxes. Together, these techniques allow us to take a few more steps towards our goal of usefully confining applications whether they like it or not. Application compartmentalization (a.k.a., sandboxing) can be used to protect applications from themselves and protect users from misbehaving applications. However, the current state of the art requires applications to be willing participants: invasive modifications are required, and it's up to the application whether or not it will voluntarily sandbox itself. We would like to move towards a world in which applications can be started from within compartments (created with technologies like Capsicum) and have their access to global namespace like filesystems transparently mediated. This approach may never scale to applications with complex event models like web browsers, but we believe that there is a great deal of mileage to get out of it with more straightforward (though still sophisticated) applications like compilers. This talk will describe recent work in FreeBSD that is driving at the goal of transparent, oblivious sandboxing. We will discuss changes in the ELF image activator and run-time linker to support transparent sandboxing as well as a support library for managing pre-opened directory descriptors and a simple shell application to start applications from within sandboxes. Together, these techniques allow us to take a few more steps towards our goal of usefully confining applications whether they like it or not

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

name: Oblivious sandboxing: Developments in transparent sandboxing with Capsicum


IP Forwarding Fastpath

Nanako Momiyama

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: User-space packet forwarding has demonstrated impressive performance. However, doing so in production has introduced a lot of fundamental and engineering problems, such as isolation, scalability to the number of VMs and API/ CLI compatibility. We therefore explore a software packet switching architecture to address these problems, basing our solution on the kernel packet forwarding plane. At EuroBSDcon 2016 we demonstrated that applying VALE/mSwitch for packet I/O and DXR for IPv4 lookup accelerates the FreeBSD packet forwarding rate by a factor of 1.7, reaching to 2.4 Mpps on a single CPU core. In this talk we present new methods which increase this rate to 5.6 Mpps. Despite of the superior performance, commercial interests have exposed problems with using user-space software switches and routers; examples include lack of compatibility with existing CLIs and APIs, complexity to (securely) serve VMs, scalability to the number of ports or VMs, energy consumption (e.g., due to polling on a NIC) and lack of extensive protocol support. In this work we therefore do not take a path of user-space networking; we instead explore a kernel forwarding plane architecture that achieves similar performance to user-space networking. We start from improving packet I/O and IP lookup, because they are known to be bottlenecks. We used current FreeBSD for baseline and applied VALE/mSwitch for packet I/O and DXR for IP lookup. Default FreeBSD forwards packets at 1.4 Mpps and applying VALE/mSwitch and DXR increases this rate to 2.4 Mpps. Since this rate is still far away from the 10 Gbps line rate at which mSwitch/VALE can forward, we carefully analyse bottlenecks in our system. We find that L2 and L3 protocol processing is expensive at both input and output paths. We therefore implemented new methods to conditionally bypass expensive code paths: quick protocol identification for input and destination MAC address caching within DXR FIB for output. As a result, we increase the packet forwarding rate to 5.6 Mpps.

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

Berkeley Software Distribution (BSD)

type: Organization

cs: Video

de: Video

fi: Video

uk: Відео

en: Video

fr: Vidéo

da: Video

nl: Video

es: Video


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

description: What can you accomplish with a full, remotely-accessible API for performing system administration tasks? The new SysAdm project for TrueOS and FreeBSD systems is here to help answer this question. It provides a fully-documented and simple API to transparently perform a multitude of tasks on FreeBSD systems, without the use of a separate system database. Instead, it automatically performs the same system-level changes to configuration files, services, and more. Generally, FreeBSD administrators typically conduct these changes by hand, but using SysAdm avoids interfering with any currently used toolchains or administration routines for servers in production environments. This session explains the details of the SysAdm server (with usage API examples), and demonstrates a cross-platform GUI client for administrating systems via the API, which is currently available on FreeBSD, Windows, and Mac OSX. SysAdm is a new project by the developers of TrueOS designed to provide a full-system API for administration of FreeBSD systems (servers and desktops). This project has three components: a small service/daemon for FreeBSD systems (the "sysadm-server") an optional graphical client to communicate with the server (the "sysadm-client") an experimental discovery service to facilitate finding and connecting to a server (the "sysadm-bridge"). The server is designed as a remotely-accessible API for FreeBSD itself, which means there is no internal database for SysAdm which can get out of sync. Instead, it is simply an interface to the same configuration files administrators typically modify some other way, allowing SysAdm to be implemented on current production systems without changing the workflow for administrators. The server also provides many built-in security features such as blacklisting, PAM authentication, SSL authentication, and privilege separation, simplifying the deployment process. The client side of SysAdm is completely written in Qt5 and currently available for FreeBSD/TrueOS, Windows, and Mac OSX. While many think of SysAdm as "just" a graphical front-end to the server API, there is more to the project. SysAdm also provides a complete multi-system connection and management solution with system event messages, in addition to notifications about system health and other general status updates. The interface framework is also highly modular, and will present various "pages" to the user. These "pages" depend on the specific subsystems which the server reports as being available at that time. This makes SysAdm very flexible, as every system connection can be extended by installing additional 3rd party packages (such as "iocage" or "iohyve") to enable even more management options. This session breaks down each of the SysAdm components to discuss how they are designed, give usage examples, and list some future improvements.

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

name: SysAdm: FreeBSD Administration Made Easy


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

description: There will be a few short announcements before and after the keynote by Dr Michael Geist. If you follow law and technology issues, you are sure to have read something by Dr Michael Geist. Dr Geist will speak on the need for active engagement on policy by the technical community.

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

name: The Technical BSD Conference 2017 - The opening session & keynote


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

description: FreeBSD’s continuous integration project started in the late 2013. We use Jenkins automation server to build our continuous integration system. It monitors the svn repository for new commits and triggers a new build of it. In each build, the build machine compiles the latest code, creates disk image and creates a virtual machine to run test suite. In the meantime, we collect the compiler warnings and perform some further checks like clang analyzer. All these information are published to the developers and users to improve the quality of the FreeBSD project. In this talk, we describe the details of the system implementation. Continuous integration is an important and common practice of modern software engineering. The benefits of CI are developers can know the conflicts and bugs as earlier as possible, this reduces the resource consumed for resolving them later. Also, the status of the project is clearer and it is easier to estimate project progress. There are many software designed for various CI needs, among them, the most popular one is Jenkins, an open source automation server written in Java. We use Jenkins as the main component, along with some other daemons like Pure-FTPd, to build FreeBSD project’s CI system. We developed a set scripts to setup a clean and secure build environment with jails for each build. We also provide job templates for making developers to submit their jobs easier. Finally, we introduced artifact server, to keep the artifacts created in each stage of a build pipeline. Users and downstream developers can fetch these files for doing further testing. We will go through the history of FreeBSD’s CI work, and discuss how we we setup the latest CI system of the FreeBSD project, in which new build triggered by changes in the version control system, then the system does tests and publishes results. We'll explain the underlaying mechanisms and how we use interesting Jenkins plugins or other tools to make it more useful.

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

name: Continuous Integration of The FreeBSD Project: Build daemon with daemon


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

description: Materials from renewable feedstocks may cause significant environmental impacts due to land use and land use change related to feedstock sourcing. Whilst these impacts are clearly spatially-dependent, spatially-resolved impact assessment is often hampered by lack of data, and in some cases, methods or models. In addition, the location and impacts of production are likely to change in the future, e.g. due to the consequences of climate change and due to sourcing trends in a growing economy and considering geopolitical conditions. This discussion forum will focus on 1) Methods that can be used to track the current locations of crop production systems in complex supply chains to support spatially resolved impact assessment and 2) Methods and tools to predict future locations of crops in the context of megatrends such as climate change and increasing demand for agricultural raw materials. 3) Advances of methods for spatially resolved consideration of environmental impacts of land use change will also be covered in this LCA forum.

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

name: Using land use & land cover datasets to assess variability in estimates of and use change and associated GHG emissions in selected regions of Indonesia

name: Eidgenössische Technische Hochschule Zürich (ETH Zürich)

addressCountry: CH

addressLocality: Zurich

addressRegion: Zurich


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

description: Integrating OpenZFS into a product requires programmatic administration - writing a program to tell ZFS to create filesystems, set properties, and destroy snapshots. This talk introduces a new API for doing so: OpenZFS Channel Programs (aka “zfs program” or “ZCP”). User-defined compound operations with flexible error handling can be executed quickly and atomically. The desired semantics are expressed by writing a script in a new domain-specific language based on Lua. The kernel atomically executes the script in a safe environment. This talk will cover: examples of when channel programs are especially helpful how to write channel programs how channel programs are implemented internally safeguards implemented to prevent problems with running an interpreted program in the kernel how Delphix has used channel programs to improve performance and fix bugs why we called it “channel programs” This talk will not cover: channel partner programs Using VARs to maximize your sales

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

name: Improving the ZFS Userland-Kernel API: Channel Programs


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

description: I've been hearing and talking about IPv6 for at least the last 10 years, and I really believe in the technology. Over the course of time a lot has happened in IPv6 and the outlook keeps improving. However, in my position as trainer at one of the regional internet registries, when I start discussing IPv6, I often get a lot of questions revolving around "is it really happening? When do you think we will have it ?". This talk is meant to show that things are happening, and discusses what the present and the future look like. IPv6 is happening. Many countries are already in the double digit range of traffic percentage according to many sources, including the US. Some of these countries represent examples of virtue in the field, while some others are strange cases. This talk, while trying not to be too heavily technical, aims at showing that IPv6 is happening and silently getting into our lives, and there's a lot of data proving it. There are many different reasons it's now time to jump onboard the IPv6 train, and this talk will show them, pointing to cases where this has happened (and worked), while also discussing less successful stories, and presenting lots of data and technical pointers to show the reasons.

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

name: Where is IPv6 going ?: Current state of affairs from "the land of plentyful addresses"


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

description: The members of the BSD Unix lineage of operating systems, notably the original U.C. Berkeley CSRG BSD, BSDi, NetBSD, FreeBSD and OpenBSD have reliably provided infrastructure for a myriad of enterprise-level tasks and services with a distinct emphasis on Internet services. As open source operating systems, the BSDs have relied heavily on frequent individual contributions and less-frequent, but potentially-larger vendor contributions such as the OpenZFS file system and bhyve hypervisor. In some cases, vendors have maintained private BSD operating systems in parallel to the community ones and make few, if any community contributions. The burdens of maintaining an operating system are increasingly motivating vendors to align themselves more closely with community efforts in recognition of community-provided innovations such as SMP support, 64-bit addressing and new file systems. The benefits of any such realignments will frequently outweigh their costs and we have arguably entered an era of unprecedented volunteer/vendor relations. With any improved relations however, come greater familiarity with each party by the other, and it is no different in BSD volunteer/vendor relationships: With an era of improved volunteer/vendor relations comes a better understanding of the others? technological and procedural shortcomings. This talk will explore several misalignments of the FreeBSD developer community with its vendor community based on real-world experiences and will survey proposed and in-progress solutions to each distinct misalignment.

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

name: FreeBSD as a Service: Challenges and Opportunities to Better Use FreeBSD in Enterprise Environments


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

description: After more than 20 years of fighting, the spam problem isn't getting better. Spam has system costs, people costs, and organizational costs. The costs go up the further along the delivery path it progresses. We can't prevent spammers from spamming, but we can prevent much of it from entering our mail handler. Fighting spam at the frontline (firewall and MTA) is the earliest and cheapest place we can wage the war. Tools and strategies like greylisting (along with whitelisting and blacklisting), and tar-pitting have their place, but are we using them effectively? Is there more we can do? In this talk we'll look at the various strategies we can take to improve our ability to block spam at the MTA without blocking or delaying (or delaying for long) legitimate senders. One of the biggest complaints about greylisting and blocking is impact on legitimate mail. For low-traffic email domains delayed delivery and the odd-lost email might be acceptable. For higher-traffic domains, or those where timely delivery is critical, effective blocking requires a more active, but automatable, approach. In this talk we'll look at the current state of ip-x-listing (whitelisting, greylisting, and blacklisting), additional tools and strategies we can use to improve the accuracy and effectiveness of our lists, while ensuring timely delivery of email from legitimate senders. We'll also discuss strategies for keeping groups of mail servers in sync with the latests lists. Some of the tools and techniques we'll look at: MTA-specific features like postscreen Using SPF records to whitelist well-known senders Using the mail logs to whitelist outbound recipient domains Integrating feedback from SpamAssassin Using log files to identify bad actors Effectiveness of third-party lists

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

name: Fighting Spam at the Frontline: Using DNS, Log Files and Other Tools in the Fight Against Spam


Pledge, and Unveil, in OpenBSD

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

description: A technical discussion of OpenBSD pledge(2), including recent/forthcoming changes. OpenBSD has been integrating pledge(2) into a large portion of the OpenBSD base system. Pledge has not been static however, and has some aspects that are continuing to evolve. in this talk we will review pledge briefly for the uninitiated, and why it exists, as well as discussing where and how pledge has been used in OpenBSD to date. We will discuss how programs are adapted for use with pledge. and examine recent/forthcoming additions of exec/execpromises and pledgepath and how they are used to make programs more secure.

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


Leveraging Jails for a FaaS System

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

description: Function as a service (FaaS) is the latest frontier of cloud computing freeing developers from writing more code than necessary and abstracting away discrete behavior. Jails provide a great abstraction between the host system and another separate execution environment. With FaaS concepts and jails, in conjunction with ZFS, these components can be leveraged to provide powerful, on-demand, dynamic binary executions with the safety and performance that jails offer. We will go through system setup including package installation, jail creation, etc & show attendees how we can use jails for these purposes. We will use a proof of concept implementation that will be available on GitHub. I'd like to speak about this with the most broast strokes as possible so not to limit it to the view from that implementation, since the possibilities are endless. Another reason is to highlight that you don't necessarily need Docker to containerize your static or dynamic workflows. We'll begin by going over what jails are and how they're traditionally used as well as what ZFS is. We'll talk about how the use of snapshots and clones are critical in achieving a clean environment for each function execution. Then we will venture into how jails can be used in a more on-demand way and look at how this is done using code. I'll provide this in a couple languages for as much context as possible but will reference the POC implementation for the full view. I'll get into the details of networking with jails and how to provide network access to those jails executing functions that need those resources. This will entail going over security concerns of enabling raw sockets or the necessity of building IP management into the system of which I have a very simple example. Once the components themselves are understood and put together, I'll show how this all works, with a number of demonstrations highlighting the benefits of a this approach. As part of the demonstration, I'll show how a simple HTTP REST API can be used to trigger function execution and also provide insight into the system as well as administrative abilities. The format of the talk would be a lecture and slides with live demonstrations but I'm happy to hear any and all suggestions. I've been a FreeBSD user for around 10 years, using Jails a for a good portion of that time and using Go for the past 4. The combination of the two present a the portion of my free and personal time.

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


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

description: Consistent backups are vital to any operation. Making sure this process is simple is key to making sure it is done at all. Tools like Amanda and Bacula are sophisticated and complex tools that do the task, but they require care and feeding to ensure they work consistently. Leveraging the built-in features of ZFS such as replication and snapshots can greatly simplify the backup process. Using portable management tools such as zfSnap and zxfer to manage backups across your infrastructure ensures that backups are done and can be even more granular than the typical daily/weekly backup schemes. We will look at using these tools from desktops to the server environment and how to have your backups easily distributed to multiple locations using FreeNAS’s scheduled tasks and replication. We will explore how to easily keep rolling snapshots and replicate them to backup servers. Easily give the ability to rollback on a file servers to a snapshot taken within minutes instantly, but also allow long term snapshots to be kept and replicated efficiently to backup volumes. We will also cover deployment techniques to ensure that systems have the correct packages installed and configured via configuration management.

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

name: Replacing Traditional Backup Systems with ZFS: Using ZFS Snapshots and Replication to Simplify Backups


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

description: ZFS replication functionality has been greatly extended in recent years, e.g., through bookmarks and compressed, deduplicated and encrypted send & receive. However, the surrounding tooling has struggled to keep up: Many shell-script-based solutions are left unmaintained by their original authors. We present zrepl, a one-stop solution for continuous ZFS filesystem replication, featuring automatic snapshotting, replication and pruning of filesystem snapshots. zrepl runs as a daemon and provides activity information via detailed structured logging, control & status commands and remote monitoring endpoints. Replication is implemented using a custom low-overhead RPC-protocol that only requires an authenticated, reliable, bidirectional byte stream channel. Explicit communication enables ZFS feature negotiation, cross-platform compatibility and the ability to distrust a remote zrepl instance, enabling SaaS-type use cases. The latter is particularly interesting in the light of upcoming OpenZFS native encryption. zrepl is implemented in Go and thus works on and between all combinations of OSes supporting OpenZFS. This talk presents the core functionality provided by zrepl, typical use cases, software architecture and implementation, pain points / lacking functionality / feature wishlist in OpenZFS.

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

name: zrepl: One-Stop ZFS Replication Solution


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

description: I will describe work I did to profile the FreeBSD kernel boot — both adding instrumentation to the kernel to collect data while the system is booting, and converting the resulting timestamp records into a graphical visualization of where time is spent in the boot process. I will show results from some systems and highlight places where it is clear that the performance of the FreeBSD boot process can be improved. Many users have complained over the years about the time it takes for FreeBSD to boot, but little work has been done until now to investigate this. Unfortunately it is difficult to profile the very beginning of the FreeBSD boot process; as a result, in late 2017 I introduced a new "TSLOG" framework for recording timestamps at points in the kernel boot. I will explain why existing mechanisms were insufficient and how the TSLOG framework operates, and how I utilized the TSLOG framework to annotate key parts of the FreeBSD kernel boot process. Finally, I will explain the process of converting logged timestamps from the kernel boot into a "flame chart". The audience is expected to be generally familiar with C, but an understanding of FreeBSD kernel internals will not be assumed.

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

name: Profiling the FreeBSD kernel boot: From hammer_time to start_init


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

description: Welcome

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

name: The Technical BSD Conference 2018 - Opening session


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

description: The closing Fun. Games. Awards.

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

name: The Technical BSD Conference 2018 - Closing session: The wrap up


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

description: While porting FreeBSD to a new architecture can be hard and requires a lot of knowledge of a lot of the kernel subsystem, porting to a new board is much easier. We will take the Rock64 board from Pine64 for the exercise of porting FreeBSD to it and see what it take to have kernel booting for the first time and what are the next step when porting to a new SoC. Even if the Rock64 is an ARM64 board the step are the same for an ARM32 one. During this talk you will learn what steps are needed for porting FreeBSD on a new ARM32/ARM64 board. We will take the Rock64 as an example for ARM64 and, if time permit, the Tinker board for ARM32. We will start by looking at resources on the board to make a list of task to do. Then we will look at how boot the FreeBSD GENERIC kernel on the board to see if we can, without SoC specific drivers, at least boot to multiuser mode. And finally we will see how to make a clock driver to allow kernel modules to enable/disable the component of the SoC.

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

name: FreeBSD ARM32/ARM64 : Porting to a new board


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

description: This talk describes a proposed design for a public-key trust infrastructure for the FreeBSD operating system which manages the notion of delegated trust in the form of public-key cryptographic signatures. It is designed to integrate easily with existing userland applications as well as other similar components such as secure/trusted boot and the NetBSD VeriExec infrastructures, and to provide a workable foundation for future developments. Additionally, it is designed in such a way that existing post-quantum signature schemes can be used practically. This talk gives a detailed overview of a proposed design for a public-key trust infrastructure for the FreeBSD operating system. This proposal has been developed in response to discussions in various venues, including the FreeBSD mailing lists as well as plenary sessions at previous BSD conferences. It aims to design, develop, and ultimately deploy a powerful and general trust infrastructure that will hopefully become the foundation for new developments in operating system security and provide FreeBSD and the rest of the BSD family with new tools for growth. This infrastructure has a number of potential uses, some of which include signed kernels and modules, executable signing, and remote delegation of capabilities. The proposed trust infrastructure manages trust delegation through public-key cryptographic signatures. It proposes a kernel-based interface for managing public key trust and verifying signatures at runtime, as well as a convention for defining the trust configuration when building a system from source. It includes a design for continuing a secure chain of custody from the boot loader through to the kernel and in to runtime, and includes several mechanisms for defining the root-of-trust for the boot loader and kernel. It also includes proposed standards for signing executables, as well as a tool for batch-signing and signing with ephemeral keys. Additionally, the proposed infrastructure is designed to integrate with and work alongside the NetBSD VeriExec infrastructure, and both systems benefit from doing so. Finally, the proposed infrastructure incorporates considerations for utilization of post-quantum cryptography in its design. This talk is intended to be a review of the proposed design and to elicit serious consideration and feedback. Input and suggestions are welcome, and will be considered as possible modifications to the design.

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

name: Design of a Public- Key Trust System for Free BSD


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

description: Modern, digital x-ray machines are pretty complex beasts. They contain several networked systems and must in turn be connected to the hospital or doctor's office network - basically, requests with the patient data are being sent to the x-ray machine, the operator processes these requests and the records are sent back with the images attached. To further complicate matters, there are external image readers in some cases, connected to the external network, not the x-ray machine itself, that the x-ray machine needs to talk to. Thanks to the wonderful combination of high certification costs and monopolies in certain areas, some of these sensors only speak ftp. The x-ray machine's internal network must be the same layer 2 network as the external one thanks to the mandatory protocols involved, and medical regulations make any kind of investigation or information gathering on production systems outright impossible. The same regulations impose very very strict limits on remote access - only if the machine is in maintenance mode and not operational, of course. Certification requirements make upgrading hard, and the field engineers are x-ray engineers, not networking specialists. Even a DoS has unexpected consequences - if the data transfer between the image sensor and the imaging station fails, the x-ray process has to be repeated, and that is considered bodily injury. While most vendors just ignore the problem, one vendor's digital x-ray and fluoroscopy (think x-ray movies) ship with an OpenBSD bridge for roughly 10 years now to separate the internal from the external network. This system as recently been redone and is getting rolled out to their CT and MRI machines as well. I will show how OpenBSD is being used on this scenario, dive into the arp filter I wrote for the bridge in the process as well as several smaller pf changes, and provide new insights - even in the literal sense.

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

name: OpenBSD/x-ray: OpenBSD on medical x-ray machines


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

description: Many new features and applications have been developed with the mandoc(1) manual page toolbox during the last three years, including a new database backend, a markdown output mode, much improved WWW output and roff(7) and ports handling, the application to LibreSSL documentation, and more. I'll provide an overview and explain what we learnt from these projects. At BSDCan 2015, i explained how mandoc(1) managed to become the standard BSD manual toolbox both for the command line and for the web. So you might think it is now finished and nothing more was done during the last three years. But that's far from the truth! We can still learn a lot both from developing it further and from applying it to large-scale real-world tasks. I will present lessons from five quite different larger projects completed in and with mandoc in 2016 and 2017, and from several smaller ones, and i will show that we are not quite done yet and worthwhile tasks remain. The major topics are: 1. Deletion of SQLite from the OpenBSD base system (July 16): why that was done, what the immediate benefits for mandoc are, and what that teaches us. Among other points, this is where the deliberately provocative title comes from: maybe you should not completely forget about reusability, but it is definitely over-valued nowadays, both when designing new code and when choosing third-party components to employ. 2. mdoc(7) conversion and polishing of LibreSSL manuals (Nov 16 to Jan 17): Tools used, additional work that was done by hand, current state of affairs, ongoing maintenance, what is still missing, and lessons learnt from that work - not only about mandoc, but also some about LibreSSL and about library design in general. 3. Improvements of WWW online manuals (e.g. man.openbsd.org): Lots (more than ten) different important improvements were implemented here in 2016/17 alone, not counting minor ones. While each single step may seem of easily manageable size and difficulty, i think the end result is something to be proud of, and that is being noticed even beyond the BSD world: Both Debian and Arch Linux now also use the mandoc formatter for their official online manuals. 4. The new markdown output (Mar 17) does not only demonstrate how simple it has become to implement a new mandoc output mode, but also how a markup language should not be designed and which kinds of tools you should not use for your documentation. 5. Parser unification and coping with ports (Apr to June 17): Reorganizing the parsers such that syntax tree nodes can now be generated on the roff(7) level allowed implementing lots of new roff(7) requests and escape sequences (ab)used by some third party man(7) pages in ports. Together with rather tricky improvements in the tbl(7) formatter, this allowed reducing the number of OpenBSD ports that still USE_GROFF from over 200 to just 25. Even more than such major new features, successful maintenance really means taking care of lots and lots of small things including keeping up with newly developed security features, moving ahead with regression testing, coordinating with other implementations of the languages in question (in this case, mainly groff), further improving search and diagnostic functionalities, and more. There won't be time to discuss all that in detail, but i'll briefly mention about a dozen specific examples, and why they matter - for active maintenance of free software in general.

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

name: Forget reusability, aim for perfection: New lessons from mandoc development


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

description: Serial lines as consoles are still with us, since a serial port can be used for communication even when all else has failed on the system. I built my own based on an off-hand comment by someone on the OpenBSD lists. I'll walk through how and why I did it along with the history and improvements in my solution. The talk will walk through my implementation choices and their good points, bad points, and points I shouldn't admit to in public. At the end of this talk, attendees should have a good sense of the issues around building their own console server and be able to avoid some of the pitfalls I came across. Points of discussion: Choosing hardware: Qualities and trade-offs Advantages to using software in base Driver Issues and other bumps along the way How the console server has changed over the years Advantages over IPMI, iLOM, and others Features you may want Problems others have run across What I'd do differently Kein Ton, aber Präsentation!

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

name: Making your own console server using OpenBSD: Using only base... and serial hardware


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

description: This talk is about the Home Networking Control Protocol (RFC7788) and how these specifications can be used to create a future-proof, IPv6 compliant SOHO router. Almost two years ago, RFC7788 introduced the Home Networking Control Protocol - also called homenet - which "enables discovery of network borders, automated configuration of addresses, name resolution, service discovery, and the use of any routing protocol that supports routing based on both the source and destination address." Many routers in SOHO environments nowadays run different forms of BSDs, prominently being OpenBSD and FreeBSD under the hood of a PFSense install. Homenet's focus is specifically on IPv6-enabled networks, although support for IPv4 is also included. Homenet introduces many new functionalities in a home network, and makes it easy for devices to interconnect, making it a better platform to support the IoT now and in the future. In this talk, I will discuss all the services and protocols involved in the homenet specifications and documents, and will outline how these can be integrated into the BSDs by showing configurations for OpenBSD and FreeBSD.

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

name: Getting your routers future-proof?: What about Homenet on BSD?


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

description: The FreeBSD installer bsdinstall can be easily modified to create block and file-backed "guest" hosts for jail, bhyve and Xen, but with the addition of ZFS, NFS and DHCPd, a highly flexible environment can be built that both supports booting FreeBSD as far back as 5.0 and booting boot environments on both virtual machines and real hardware machines on the network. These abilities are not only useful for decoupling hardware and software machines, but also tracking regressions down to the guilty commits that produced them. The FreeBSD operating system includes the isolation and virtualization features chroot(8), jail(8), bhyve(8) and Xen, but offers limited abilities for creating and managing jail, bhyve or Xen "guest" hosts. The bsdinstall(8) jail, jail.conf(8), and vmrun.sh tools support rudimentary jail and bhyve guest host creation and management but are not designed for automation using in-base or external tools. This talk will describe how the bsdinstall(8), nfsd(8) and zfs(8) in-base resources can be leveraged to create authentic, file and block storage-backed FreeBSD root installations suitable for use with not only jail(8), bhyve(8) and Xen, but also network-booted hardware machines. Leveraging in-base tools in support of in-base isolation and virtualization features not only makes it easer to create guest hosts, but also enables the comprehensive testing of current and past versions FreeBSD in pursuit of regressions. Of the leveraged components: bsdinstall is extended (work completed and under peer review) to remove assumptions of a "fresh install" and to support "nested" or "deep" boot environments as supported by /etc/rc.d/zfsbe. ZFS is used to both to provide zvols for block-backed virtual machines and boot environments for jail and NFS-shared bhyve virtual machines. The in-kernel NFSd is used to provide high-performance "root on NFS" support for software and hardware machines. The methodologies described in this talk should apply in part or in full to other BSD operating systems.

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

name: Institutionalizing FreeBSD Isolated and Virtualized Hosts Using bsdinstall(8), zfs(8) and nfsd(8): Authentic jail and VM hosts are best created with authentic tools


Large Scale SSH

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

description: SSH is arguably the most widely deployed systems administration tool. It's also arguably the least well configured. Many sysadmins already know how to disable passwords and chroot users, but when it comes to managing host and user SSH keys, we rely on manually copying files around. That's fine with three servers and two sysadmins, but not so good with three thousand servers and two hundred sysadmins. We'll fill in those gaps. SSH is arguably the most widely deployed systems administration tool. It's also arguably the least well configured. Many sysadmins already know how to disable passwords and chroot users, but when it comes to managing host and user SSH keys, we rely on manually copying files around. That's fine with three servers and two sysadmins, but not so good with three thousand servers and two hundred sysadmins. This talk takes you through: Key file formats Distributing the host key cache to OpenSSH and PuTTY clients Distributing client configurations OpenSSH configuration for automatic deployment and cloud configuration Improving the security of known_hosts SSH keys for automation Building and deploying SSH Certificate Authorities Attendees will leave understanding how to scale their SSH systems--and, more importantly, when to scale those systems to the next level. Based on the book "SSH Mastery, 2nd Edition"

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


IT automation with Puppet

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

description: Puppet is a Free/Libre configuration management tool. Rarely used standalone, Puppet is generally the core of a more complex setup used to manage an organization's computers. As a consequence, each organization has it's own set of tools and workflows; and when discovering Puppet for the first time, you might get scared by the number of different resources explaining how to do similar things in slightly (and sometimes very) different ways. In this talk, you will learn the fundamentals of Puppet, you will be introduced to some of the tools often found in a Puppet setup, and understand how these tools share responsibility to configure all the nodes you are in charge of. The following topics will be covered: Puppet itself Puppet Modules and the Puppet Forge Facts Hiera r10k control-repo The Roles and Profiles pattern PuppetDB External Node Classification Marionette Collective Choria And that's a lot! So, in order to make this easier to digest, all these tools will not be introduced one after the other independently; but rather introduced when they become useful in the deployment of Puppet in a fictive company that was not using configuration management before. This will help you to determine which tools might be useful when building your IT automation infrastructure, and schedule the next steps for bringing-in Puppet to your workplace (or home). Last but not least, Puppet is cross-platform, but since we are in a BSD-centric conference, a particular emphasis will be put on *BSD operating systems.

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


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

description: Kernel coredumps over the network are useful for debugging embedded machines, disk driver and for high memory machines. This talk covers my experience porting netdump to use the iflib framework, debugging with mdb and dtrace and the resulting performance outcomes. Kernel coredumps over the network are useful for debugging embedded machines, disk driver and for high memory machines. There has been a netdump patch for FreeBSD since the early 2000s. iflib was introduced in Fall of 2017 providing a standarized set of functions for network driver implementation. iflib currently supports most Intel drivers and Broadcom NetExtreme Family cards, with vtnet support and more planned. Porting netdump to iflib gives all drivers that iflib support netdump support. Improving the netdump facility by generalizing it's driver support with iflib will ease supporting new hardware. Improving core dump performance on >= 10G network cards can improve core dump times over dumping to traditional disks. The following paper and talk describes my experience porting netdump to iflib, debugging with mdb, and improving the netdump network stack flow control.

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

name: Improving netdump hardware support and performance with iflib


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

description: FreeBSD’s use in virtualization workloads has been hampered by its lack of Virtual Private Cloud (“VPC”) functionality. While the bhyve(4) hypervisor has proven to be robust and performant Hardware Virtual Machine (“HVM”), it has lacked the necessary companion networking stack in order to be used as a first-class hypervisor for cloud computing workloads. The FreeBSD vpc(4) subsystem was designed to augment the capabilities of bhyve(4) in order to support the demands of cloud workloads. FreeBSD’s use in virtualization workloads has been hampered by its lack of Virtual Private Cloud (“VPC”) functionality. While the bhyve(4) hypervisor has proven to be robust and performant Hardware Virtual Machine (“HVM”), it has lacked the necessary companion networking stack in order to be used as a first-class hypervisor for cloud computing workloads. The FreeBSD vpc(4) subsystem was designed to augment the capabilities of bhyve(4) in order to support the demands of cloud workloads. After experimentation and extending with the existing network interfaces (e.g. bridge(4), tap(4), ptnetmap(9)), it became clear that it would be necessary to implement a new networking subsystem custom built for virtualization workloadschange course. We settled on implementing vpc(4) by extending the iflib(9) framework, a generalized NIC interface in the FreeBSD kernel. Using iflib(9) we created a suite of network services that allow FreeBSD to be used as a performant and flexible hypervisor for cloud workloads. Depending on the configuration and policies, it is also possible to use vpc(4) for desktop applications, too. We outline the intial performance achieved, both with ptnetmap(9) and iflib(9), the list of services in vpc(4), and how to deploy a cloud environment.

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

name: Introducing FreeBSD VPC: Introduction to Virtual Private Cloud


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

description: Over the last 15 years, the author have introduced successfully FreeBSD in various professional environments. This talk will focus on the reactions discovering FreeBSD, it will cover the good surprises from end users, the bad ones and the really ugly ones. During the last 15 years, the author has introduced FreeBSD in various companies, for various usage, from remote desktops to database servers, from routers to storage servers. The talk will cover the myth about FreeBSD people often have and how there usually surprised in a positive way by FreeBSD when actually really using it. What are the main blockers? How do people react when having to change some of there linux centric habits? In some cases FreeBSD has really simplified the workload and maintenance, in other cases it has been a real pain to do things that were actually really simple on linux.

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

name: Introducing FreeBSD in new environment: the good, the bad, the ugly


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

description: Secure boot is a popular topic these days. Junos (a FreeBSD based OS) has shipped with Verified Exec (from NetBSD) for over a decade, but there is a big gap between firmware power on and veriexec enforcement. Adding the equivalent of verified exec to the loader addresses this gap. Fixing the loader to verify modules and kernel has been on our roadmap for ages, but trying to squeeze enough of OpenSSL into the loader to handle verification of X.509 certificate chains, was simply not feasible. Thomas Pornin's talk last year on BearSSL, changed the game. With this tiny library in hand I was able to add verification to the FreeBSD loader in a manner compatible with Verified Exec, while adding only about 100K to the size of the loader. This talk will discuss the background, design decisions and implementation.

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

name: Adding verification to FreeBSD loader: aka; loader verified exec


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

description: Iocage is a FreeBSD jail manager based on ZFS that heavily uses operating system features to define and maintain userland compartments. Each compartment can have constrained access to filesystem, network and system resources. This talk tells the story of libiocage, a Python library and commandline tool made for programmatic usage, security, stability and performance. We will explore the reason for yet another version of iocage, question design choices and look in the future of the project. A practical view on the command line client and Python interfaces is taken to outline key concepts while quickly diving into advanced use cases that satisfy paranoia and invite for automation. libiocage is a jail management library following the iocage approach. The project started about one year ago as Pull-Request on the Python implementation of iocage to make the tool accessible for Python programmers. Initially this was required to reliably reproduce a kernel crash in VNET by spawning massive amounts of jails - since then the project evolved and moved forward to be compatible with jails from all previous versions of iocage with an object oriented Python 3 implementation. The project aims for secure, reliable and efficient management of jails that system administrators and DevOps engineers may use to compartmentalize userland environments and their peripherals like network and storage access. The speed improvements introduced allow using it for socket-based activated jails and encapsulation of each individual command invoked in a shell. If this sounds boring, that's probably a good thing. In operations we have a lot of excitement, and the best way to weather it, is to have a solid tool. At the time of writing the tool is moving towards alpha testing to collect user feedback that will be turned into integration tests.

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

name: Imprisoning software with libiocage: Utilizing FreeBSD to build secure compartments


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

description: If you have ever delved into the world of BGP routing on the Internet, you know that it can be quite an undertaking. Fortunately, we can utilize BSD and a couple of open source tools to build a solution that will provide high availability and easy management, at a fraction of the cost of commercial solutions. This talk is an introduction to the basics of building a BGP presence on the Internet, and orchestrating it with Ansible. If you have ever delved into the world of routing on the Internet, you probably know that it can be daunting. You learned that BGP is the protocol used to build the global routing table, but likely discover that every answer leads to two more questions. Bureaucracy and expensive, proprietary solutions are everywhere. BSD can't stop the red tape, but it does offer a fantastic solution for your technical dilemma. This talk is a whirlwind tour of building an Internet presence in three parts (and an opportunity to learn from my mistakes). Act one is a brief introduction to the BGP protocol, the process to obtain numbering resources, and connectivity. The basics of rigging a FreeBSD host for routing are covered, and the routing daemon BIRD. Next up is discussion of network design for high-availability, and the FreeBSD/BIRD configuration to make it happen. Setting up one router may be fun, but we're going to want automation. Enter Ansible. After a quick introduction, we'll use it to deploy a live demo of our configuration Finally, now that we have a fault-tolerant solution; so let's introduce some faults, and see what happens! We'll induce some failures, and watch how our network responds. Time-permitting, I will wrap up with some discussion of resources for checking the status of your installation. I'll also discuss some more complex tasks, such as multi-site failover, and taking a router out of service.

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

name: Plumbing the Internet, BSD-style: Building your Internet presence with BSD


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

description: FreeBSD ships a large (28MB) kernel by default. One reason is that FreeBSD cannot dynamically load drivers based on their identifying information. All FreeBSD drivers must match this information, and almost all have tables of device ids and other information they use to claim devices. There has been no general way to load these drivers, until devmatch. devmatch uses these tables in kernel modules to match them to devices in the system without drivers. devmatch matches both at boot, and as devices are dynamically added to the system. The kernel is smaller for everybody, while still preserving the convenience of today's larger kernel by loading seldom used drivers as needed. FreeBSD's kernel has been growing since the earliest days. FreeBSD 1.0R had a kernel that would fit on a floppy drive (the kernel + boot loader fit on a 1.2MB floppy). Now it is approaching 28MB on amd64. A large part of this growth has been due to the drivers. A kernel with all the drivers removed is only about 5MB, meaning over 80% of the kernel is drivers, most of them for devices that aren't in any given system. Since FreeBSD 3.2, newbus has published information about devices in the system. Each bus has it's own names for the identifying information the devices have, but FreeBSD uses pnpinfo as a generic term for this information. devd was added in FreeBSD 5.0 to generically do things with this information, including when no currently-loaded driver matched a device some self-enumerating bus found. At the time, it was thought it would be a simple matter to generate devd scripts from the plug and play information in the kernel. PC Card and USB drivers all used the the same format in FreeBSD 4, but all other busses were ad-hoc. In FreeBSD 8, USB moved its plug and play information into its own ELF section and extracted by a script to create devd scripts for autoloading. The experience with USB lead to the next generation design. Starting in FreeBSD 10, kldxref could extract the marked tables embedded in modules, along with metadata describing the table's layour (to better cope with the PCI mess). All the USB and PC Card drivers were marked in FreeBSD 11, as well as a few other drivers with other bus attachments to prove the design. devmatch, to be in FreeBSD 12, looks at the loader.hints file created by kldxref and matches it against unattached devices in the tree. Scripts in /etc/rc.d and devd tie this together. FreeBSD 12 is anticipated to ship with a smaller GENERIC kernel, with the bulk of the drivers loaded automatically through these means

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

name: devmatch - matching devices to modules: PNP plays matchmaker for kernel modules


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

description: Diagnosing crashes from core dumps is painful and time consuming. Record/replay offers an alternative, allowing buggy program execution to be recorded and reproduced when crashes occur. Tools that use record/replay to capture live bugs, or to provide an enhanced debugging experience are becoming increasingly common, including commercial offerings for Linux by UndoDB and RogueWave, Mozilla’s rr, and recently added support for replay in WinDBG. We describe our ongoing work to build a practical record/replay system for FreeBSD called Castor. Castor offers several novel capabilities compared to other record/replay systems, most notably the ability to record demanding multi-core workloads with very low overhead, making it practical to use in production settings. This talk will explore the basics of record and replay and its applications, then dive into Castor's internals and performance. We will do a live demonstration of how to use Castor to capture and diagnose application bugs. We will talk about how Castor integrates with FreeBSD including Clang/LLVM support, and changes to libc to support cleaner system call interposition for Castor and similar tools with the addition of libsyscall. We will talk about ongoing work to make record/replay logging more space efficient through incremental checkpointing, and potential future applications of record/replay such as efficient fault tolerance. kein Ton, aber Präsentation

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

name: Why did my application crash?: Practical Low Overhead Record/Replay in FreeBSD


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

description: In this talk I will describe the needed steps to write a DRM (As in Direct Rendering Manager) driver on FreeBSD for an arm64 board. DRM is the defacto standard to have graphics on a modern system using the standard software stack like Xorg or Wayland. While FreeBSD amd64 have correct support for DRM drivers, arm and arm64 are way behind and except on some system like Raspberry Pi where a simple framebuffer is available or NVidia Tegra where a DRM driver is available, the only way to have graphics is to use EFIFB. Both EFIFB and the simple framebuffer on RPI have severe limitations. You cannot have 2D acceleration, have a multi screen setup or even change the resolution at runtime. Writing a DRM driver can be hard and scary, especially when it is the first one that you are writing and don't know the DRM subsystem API. During this talk I'll explain what a DRM driver is consisted of : framebuffer, planes, crtc and encoder won't have anymore secrets for you. You will see why I've chosen to write my first DRM driver for the Allwinner A64 (An ARM64 System on Chip present on the Pine64 board or on the Pinebook, a cheap laptop), what problems I had and how I solved them. Of course a driver related talk will not be complete without a tips and tricks part that will help you having graphics shown on your screen quicker.

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

name: Adventure in DRMland: Or how to write a drm driver for an arm64 DRM driver


The Future of OpenZFS and FreeBSD

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

description: An overview of the forthcoming changes to the OpenZFS Project, and how FreeBSD will interact with the OpenZFS Project. This talk will discuss: How the OpenZFS project has changed New problems as ZFS has matured (deprecation policy) How the OpenZFS project is working to reduce the differences across platforms (command line switches, NFS interoperability) Interoperability improvements (feature flag 'compatibility' groups) New procedures to prevent divergence and coordinate development across platforms (reserving flags, wider discussion before names for features/flags are decided) The monthly ZFS Leadership Call Then switch gears and cover FreeBSD specific issues: The switch to ZoL as upstream Why we are making the change What we get out of it How it is better for all of OpenZFS Status report ZoL is OpenZFS, not Linux There is no LinuxKPI in ZFS (kill the FUD) What has OpenZFS done for me lately Then an overview of upcoming changes and features in ZFS.

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


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

description: This talk presents the results of a use case study I performed together with my friend Maurice throughout the first quarter of 2019. Maurice is an actor who survived a brain hemorrhage in 1996 and has since lived with severe physical and cognitive disabilities. His ability to use computers is restricted in many ways. For example, while Maurice can read text just fine, he is unable to fluently spell words and he can only use the fingers on one of his hands. Computers Maurice has at his disposal are a PC and a netbook running Windows in standard configuration. He depends on friends and caretakers to perform basic tasks such as writing email messages. Security of these systems is of course on the lower end of the spectrum. Fooling Maurice into clicking a wrong button and installing malware is not hard. Maurice is certainly not a typical OpenBSD user, but we wanted to find out to which degree we could shape an OpenBSD system towards his needs. We had to find suitable hardware with good device support, configure the base system, a desktop environment, typical desktop programs, system backup and restore, and allow for secure remote system administration. We also looked into porting accessibility software, such as open source speech-to-text systems, to OpenBSD. Any resulting changes and enhancements to both the base system and the ports tree were submitted back to the OpenBSD project. Maurice runs -current!

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

name: Building an accessible OpenBSD laptop: Enabling secure and functional computing for a person with severe disabilities.


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

description: "No OS left behind" would be an excellent mantra in the Open Source community but the reality is that there are "Tier 1" and "Tier >1" operating systems, file systems and other components throughout the Open Source ecosystem. The OpenZFS file system provides and excellent example and opportunity of a fundamental computing component that enjoys every positive aspect of Open Source, but is relegated to "non-tier-1" status on platforms that are not explicitly essential to commercial endeavors. These "not-yet-essential" platforms include NetBSD and Windows, not to mention non-Intel architectures such as ARM, PowerPC, and FreeBSD/Sparc64. This talk will explore exactly how a POSIX Unix environment and specific utilities can provide a common testing environment for OpenZFS on all supported OpenZFS platforms, including Microsoft Windows. This "parallel" testing approach dictates that all targeted platforms are tested simultaneously on identical hardware for instantaneous comparative results. Two additional dimensions arise from this approach: The testing of FreeBSD across multiple versions as far back as 5.0 and even older, plus the testing of non-OpenZFS code on each supported OpenZFS platform. FreeBSD was chosen as the laboratory host operating system for its unique ability to institutionally provide "Jail" container support for previous versions of FreeBSD, and bhyve hypervisor support for not only FreeBSD releases but non-FreeBSD operating systems. Implementation details include the use of Jail and bhyve for system containment and virtualization, and OpenSSH, Cygwin, and the "rtools" (net/bsdrcmds) utilities for remote system control. Unexpected dependencies include a global effort to rebuild FreeBSD's release history, parallel efforts to implement BSD-licensed S.M.A.R.T., Git and rsync utilities; cross-platform data generation tools, and a continuous validation of "guest" operating systems on the bhyve hypervisor. Urgency factors include the transition of non-Illumos/non-Linux OpenZFS platforms from Illumos to "ZFS on Linux" as their upstream source of truth, warranting expanded testing of parallel code bases of formerly-singular OpenZFS ports. Motivations for this talk include encounters with countless operating system and file system regressions in a commercial support environment, with a particular focus on performance "cliffs" over which acceptable performance travels to an unfortunate collision with lower, unacceptable levels.

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

name: Cross-Platform Parallel Regression and Performance Testing of, and with OpenZFS, FreeBSD and bhyve


Diving and OpenBSD: puffy au naturel

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

description: OpenBSD has as much an association with hiking as it does security and stability. For those of us spending more time below the waterline than above, how can we leverage our favourite operating system? For those of us spending more time below sea-level than above, OpenBSD---and indeed any open source operating system---is a perfect fit in the infrastructure required by diving: photo/video editing and storage, dive planning, and dive computer analysis. In this image-rich talk, I'll discuss how OpenBSD (and open source in general) fits into the fields of free and SCUBA diving. My talk will focus on dive planning, which is integral to technical diving; dive computer analysis, integral to free and technical diving; and most of all, underwater photography, which has its place throughout. I'll pay lip service to videography, but that doesn't quite intersect with my skills. All of the images used throughout the talk---from humpback whales in the Pacific to manta rays in the Indian Ocean---were produced on a fully open source chain of components. As were all of the dives themselves, free and SCUBA, backed by an open source toolchain for planning and analysis. Beyond discussing the tools available, I'll also discuss how open source is important to the diving ecosystem itself, from hardware to nitty-gritty decompression algorithms. I'll update the EuroBSDCon 2018 version with more discussion on practical usage of tools (e.g., darktable) and new developments (e.g., the availability of Subsurface as a port, colour correction in kdenlive, etc.).

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


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

description: Interrupts are used in modern systems to signal events that require immediate action. Current CPUs implement interrupts using some type of controller circuit. As such, the ARM architecture uses a system called Generic Interrupt Controller to manage interrupts. In order for virtualization to be possible on ARM hardware, a Virtual Generic Interrupt Controller needs to be present to manage interrupts for guest operating systems. This research project describes implementing such a system for an ARMv7 processor running the FreeBSD hypervisor - bhyve. Also to have a fully reponsive guest, we present the timer virtualization implementation. In the past, handling of external events - such as keyboard input - was done by polling the respective device in order to check whether any processing was required. This method was inefficient due to the difficulty of balancing the promptness of responding to an event versus the time spent in polling. Furthermore, the method did not scale well with the number of sources of possible events. The alternative developed in order to overcome these shortcomings consists of using an interrupt system. In such a system, an interrupt controller is connected to both the CPU and any devices that may generate events that require handling by the operating system. Whenever such an event occurs, the interrupt controller signals the CPU that an interrupt has occurred and sends a number which identifies the interrupt. In response, the processor saves the current execution state and jumps to the interrupt handler associated to the identifier it has received. Actual implementation details depend on hardware. However, all platforms use some type of interrupt controller in order to manage interrupts. Intel processors use an interrupt controller known as Advanced Programmable Interrupt Controller (APIC). ARM uses a different system, called Generic Interrupt Controller, which is further discussed in this paper. Timed events are a core element of many software systems. Their utility ranges from pre-empting processes while in kernel space to scheduling events in high level programming in user space. It is clear that these types of functionality are also desirable when running software in a virtualized environment. The need for keeping time has brought about the introduction of new timer hardware, such as the Programmable Interval Timer(PIT), the Real Time Clock(RTC), the Advanced Configuration and Power Interface(ACPI) and the High Precision Event Timer(HPET), each with their own utility.

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

name: Heart ticking for a guest running on FreeBSD ARM hypervisor


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

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

name: How ZFS Snapshots Really Work: And why they perform well (usually)


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

description: Do you have a spare mainframe lying around? In this talk, we'll take a look at installing, running, and attempting to use NetBSD on actual VAXen. Trying to perform modern computing tasks on this aging architecture is becoming increasingly infeasible with the rise of encrypted connections as the norm. We'll look at what is actually possible on your spare VAX. NetBSD still supports the VAX architecture from Digital Equipment Corporation, and adventurous users can install the latest NetBSD release on these machines. Would you really want to, though? We'll consider two VAX machines, a relatively common VAXstation 3100 (which will be present) and a far more powerful VAX 4000/200 QBus machine (which won't fit in my car) as example systems. Starting with installation, we'll look at the challenges these machines present simply due to their processing power. While NetBSD does support these systems, using pkgsrc to get your software can be tedious. Setting up a VAX for file sharing at home? Prepare to wait for 72 hours or more while Samba and its dependencies compile. Trying to build almost anything requires days, and we'll just ignore any graphical programs outright. With the modern Internet shifting to encrypted connections for everything, this dated hardware again presents a challenge. Trying to ssh to another server from your VAX? On a VAX 4000, your chances of finishing the handshake are 50% at best before a timeout. Web browsing from the console is painfully slow with every HTTPS connection encountered. Even first boot after installation is an exercise in patience as SSH keys are generated. The VAX does still offer up some fun and questionable practicality for those interested, though. With some lower expectations, anyone can navigate the modern computing world on their spare mainframe.

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

name: Modern BSD Computing for Fun on a VAX!: Trying to use a VAX in today's world


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

description: The sysadmin view of virtualization usually starts at a hypervisor running some kind of "image". Packer is a framework to create such an image using various host and virtualized operating systems and adding some more bolts. This talk shows the efforts and pitfalls of building a plugin for packer using the VMM framework on OpenBSD. Some details go down the rabbit hole (or reducing it) to provide a Go binary runnable as a plugin. For ease of installation, the ways how to package this as an OpenBSD 'port' are shown. On top a bigger picture is provided on how to provide configurable OpenBSD images "at scale" by using the above accomplishments.

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

name: OpenBSD: add VMM to 'packer' (porting Go software): The red pill taken to develop a Go "plugin" for packer.io to be able to create VM images on OpenBSD for VMM and many other virtualizers


Porting Go to netbsd/ arm 64

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

description: Starting out with no knowledge in Go or ARM64, how do you begin porting a language? Go might be one of the hardest languages to port. Having done that, I came back to tell the tale of how. Unusual characteristics of Go Rules to write the 400 lines of assembly code necessary for a port Debugging in the absence of a functional debugger The talk will describe how to start on such a large project, how to find your way around a large unfamiliar codebase, what's a calling convention, how to debug mistakes in your Go port, and some notes about why Go chose to make such strange choices.

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


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

description: Based on the book "FreeBSD Mastery: Jails" Jails started as a limited virtualization system, but over the last two years they've become more and more powerful. This talk takes you through what modern jails can do, discarding the limits of what they were and demonstrating what they can be today. Jails started as a limited virtualization system, but over the last two years they've become more and more powerful. This talk takes you through what modern jails can do, discarding the limits of what they were and demonstrating what they can be today. We'll cover jails using the base system and the new iocage toolkit, discussing: jails as VMs configuring the jail host properties and parameters jail management packages and upgrades base jails virtual networking with VNET firewalls in jails jails in jails resource restrictions You'll leave with an understanding of what modern jails can and cannot do, and hints for future development.

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

name: Twenty Years in Jail: FreeBSD's Jails, Then and Now


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

description: Memory safety bugs such as buffer overflows are an ongoing source of security vulnerabilities. CheriABI is a new process model for FreeBSD on the Capability Hardware Enhanced RISC Instructions (CHERI) hardware platform which eliminates the vast majority of buffer overflows and significantly increases the difficulty of control-flow attacks such as return-oriented programming. Our protections cover programs, the C run-time environment including the dynamic linker, and kernel access to user memory. We have ported virtually all of the FreeBSD user space this platform demonstrating that memory safety can be fitted to existing C software.

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

name: CheriABI: Hardware enforced memory safety for FreeBSD


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

description: Wood is a renewable resource that can be used for a large number of applications ranging from material to chemical to energy applications. In the past, wood resources have been underused in Switzerland, but this is changing rapidly with the demand for more environmentally sustainable products and energy. It is therefore crucial to use the available wood resources in an ecologically optimal way. With this last forum in 2015, we intend to provide to the participants a new perspective on the issue of the ecological use of wood resources and its relevance from various viewpoints of e.g. scientists, of policy makers as well as of practitioners. The forum starts in its first part with a description of the most recent developments in the area of life cycle inventory modelling, followed by an overview of the latest advances in carbon accounting as well as impact assessment. After this update on methodological issues, a broad part of the day will be dealing with various aspects of the application of wood – from the use as construction material to an energetic use – and the related environmental consequences. In the afternoon we will take a systemic perspective looking on an optimisation of the wood management. For closure, a panel discussion will look at the open issues that research has to deal with in order to further enhance an environmentally optimal use of wood resources.

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

name: An environmental perspective on the management of wood in Switzerland: (NFP 66 project results)

name: Eidgenössische Technische Hochschule Zürich (ETH Zürich)


Announcements & Farewell

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

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


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

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

name: Biogenic carbon emissions and climate impact dynamics


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

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

name: Carbon footprint of wood as construction products – Norwegian practice and research


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

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

name: Environmental impacts of shifting energy wood utilizations in the Bavarian heating mix


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

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

name: LCA of a Glue and Metal Free Wooden Wall Element


LCA of ultra-light particle boards

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

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


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

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

name: The Need for LCA to build Green Biorefinery Technologies


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

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

name: Life cycle impact of the European forestry-wood chain (FORMIT project results)


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

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

name: Life cycle inventories of wood in ecoinvent version 3.2


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

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

name: 60th LCA Discussion Forum - Panel discussion


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

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

name: State of the art of climate impact assessment of forest products in LCA


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

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

name: The climate change mitigation potential of forest biomass production and its utilization in Finland


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

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

name: The global impact of wood consumption on biodiversity


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

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

name: The role of wood for the Swiss building stock


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

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

name: Towards a strategy for wood-energy in Canton de Vaud: LCA of various technologies of wood transformation


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

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

name: 60th LCA Discussion Forum - Welcome and Introduction


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

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

name: Wood Modification and Life Cycle Assessment


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

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

name: Deriving Targets for Global Resource Use for Planetary Boundaries - Material, Land Use and Water


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

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

name: Environmental Limits and Swiss Footprints based on Planetary Boundaries: a study commissioned by the Swiss Federal Office for the Emvironment (FOEN)

name: Eidgenössische Technische Hochschule Zürich (ETH Zürich)


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

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

name: General Overview about the Planetary Boundary Concept: and its recent update


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

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

name: Global environmental impacts of consumption and production in Switzerland from 1996 to 2011


Multi-regional input output frameworks

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

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


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

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

name: Planetary Boundary Allowance PBA 05: A Tentative Implementation of Rockström's Planetary Boundaries as Life Cycle Impact Assessment Method


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

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

name: Planetary Boundaries and Ecological Footprint: Is it still alive?


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

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

name: Policy Interest in Relating Footprint Indicators to Planetary Boundaries


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

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

name: 59th LCA Discussion Forum - Welcome and Introduction


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

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

name: 59th LCA Discussion Forum - Wrap-up and announcements


Active in four different markets

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

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


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

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

name: ESG - Analysis of listed companies - further need for data?


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

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

name: Environmental performance of a transport service provider


Scope 3 Evaluator

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

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


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

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

name: Feasibility of assessing the full company LCA of a large multi-national: LCA and ecodesign at Nestlé


Guidance on Organizational LCA

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

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


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

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

name: CO2 Emissons: hot spots and quantification of scope 3 emissions of a telecom provider


Quantis

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

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


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

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

name: 58th LCA Discussion Forum - Welcome and introduction


Wrap-up and announcements

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

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


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

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

name: Modelling the use phase of building materials: Approach and preliminary results


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

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

name: PCR draft for elevator EPDs compatibility with tools and standards


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

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

name: Harmonization in the construction sector: A global EPD Tool for cement and concrete


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

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

name: Overview of EU harmonisation of building environmental assessment tools and labelling: the EeBGuide InfoHub


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

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

name: The Standard for Sustainable Construction in Switzerland: experiences and perspectives

name: Eidgenössische Technische Hochschule Zürich (ETH Zürich)


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

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

name: Mainstreaming Life Cycle Analysis for Buildings and Materials


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

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

name: News from the LCA forum association, announcement of DF 58 and 2015 programme


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

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

name: Plenary discussion - Needs, requirements and expectations related to environmental information on buildings


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

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

name: The Demand for Environmental Information: Why do we rely on Life Cycle Assessment Data?


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

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

name: The Supply of Environmental Information- Flumroc AG


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

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

name: The Swiss landscape of environmental information in the construction sector


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

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

name: The use of environmental information in the planning process: Why do we use life cycle based information?


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

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

name: Environmental assessment of buildings in Austria


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

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

name: Environmental assessment of buildings in France


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

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

name: Situation in Europe - selected examples from Germany, Austria and France


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

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

name: Target values regarding environmental impacts of buildings


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

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

name: The environmental significance of construction: the case of wooden buildings


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

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

name: 57th LCA Discussion Forum - Welcome and introduction


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

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

name: Life Cycle Assessment, wood products and building materials - on-going activities in COST Actions FP1303 and FP 1407


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

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

name: 56th LCA Discussion Forum - Discussion 3


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

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

name: The SENSE-Project: Application of the ENVIFOOD protocol to SMEs


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

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

name: Which harmonisation is achieved with the PEF and OEF guides?

name: Eidgenössische Technische Hochschule Zürich (ETH Zürich)


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

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

name: Can ISO standards on LCA support full harmonization?


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

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

name: Sector initiative: Implementing EN 15804 in a harmonized way with the ECO platform. International activities in ISO TC 207/59


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

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

name: The example of A.I.S.E.’s PEFCR pilot project on household liquid laundry detergents


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

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

name: Role and position of the Swiss Federal Office for the Environmental Declaration of Products


Round table

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

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


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

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

name: What are the observations and expectations of the research? - Focus on database in the agri-food sector


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

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

name: Standardisation: Synergies and conflicts between global, regional and sectorial standards – example PEF and OEF


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

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

name: 56th LCA Discussion Forum - Welcome and introduction


Wrap-up and farewell

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

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


keywords:
Milà i Canals, Llorenç
Mila i Canals, Llorenc

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

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

name: 56th LCA Discussion Forum - Discussion 1


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

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

name: 56th LCA Discussion Forum - Discussion 2


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

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

name: A corporate perspective on the Greenhouse Gas Protocol Product Life Cycle Accounting and Reporting Standard


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

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

name: Practitioner: Dealing with different standards in practical work: examples on biofuels


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

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

name: The UNEP-SETAC Life Cycle Initiative and its position among the harmonisation initiatives


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

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

name: Assessing resource criticality of metals and its relationship to life cycle assessment


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

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

name: Managing Abiotic Resources - How Mine Investment and Production Works


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

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

name: Introduction to workshop topics and formation of groups


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

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

name: Ore grade decrease as a basis for modelling impact assessment for mineral scarcity


keywords:
Life Cycle Assessment (LCA)
Material Flow Analysis (MFA)

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

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

name: Setting the scene: Overview of resource topics in LCA and MFA

name: Eidgenössische Technische Hochschule Zürich (ETH Zürich)


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

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

name: Summary of discussions from group leaders


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

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

name: MFA-based resource management: The cases of Aluminium and Palladium in Austria


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

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

name: Impact assessment of abiotic resources: the role of borrowing and dissipative resource use


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

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

name: 55th LCA Discussion Forum - Welcome and introduction


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

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

name: Addressing natural resources as area of protection in sustainability assessment


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

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

name: Challenge of Impact assessment for by-product and co-product metal


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

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

name: Abiotic resource availability in the context of sustainability – modelling environmental, economic and social constraints


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

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

name: Comparison of resource depletion indicators: Quantitative differences and similarities


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

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

name: Short presentations - Cleantech Resource Strategy


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

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

name: Keynote 1: Overcoming barriers to incorporating uncertainty in LCA


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

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

name: Keynote 2: A protocol for approaching process data uncertainties in Life Cycle Inventory Analysis


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

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

name: Refining the pedigree matrix approach in ecoinvent: Towards empirical uncertainty factors


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

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

name: Comparing methods for uncertainty propagation


Summary

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

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


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

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

name: 53rd LCA Discussion Forum - Welcome and introduction


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

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

name: Effects of distribution choice on the modeling of LCI uncertainty


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

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

name: Uncertainty, variability and contribution-to-variance analysis: It's not just inventory data


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

description: In this talk and technical demo we’re going to walk through a minimal example Django web app, simulate traffic of varied intensity, and monitor the entire system as well as peek deeper in the app. It is 3am. Your phone rings with a special tone - the systems propping up your employer’s or client’s website are down. You open your eyes and groan, fumbling for your laptop. You’re used to the system’s worst problems, you have an idea what it might be. It’s slow going while you manually check if every component is working. You go back to bed in an hour, having written up a few of the most important details and brought the website back up. Hooray! However, at 6am you get another call. You sigh and fix it. Then another at 7am, and at 11am. A few days later the outages repeat. What is going on?! There are types of problems that can’t be solved purely through experience and knowledge of a system. You need deeper monitoring data than “% CPU” and “RAM free” to resolve them. Worse still, there are multiple components involved with failures in one masking a true underlying cause in another, like a slow loading page masking a slow database, which in turn makes you wonder what queries it’s really answering. In this talk we’re going to have a look at how you can monitor small to medium projects to really understand deeper problems at a glance. The talk will pick specific solutions from various vendors as well as open source for different parts of the problem.

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

name: Advanced, free, open-source application performance monitoring for your Python web apps


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

description: What does expensive Victorian era wallpaper have in common with a Cambridge Analytica Facebook quiz? Why is the GDPR like a trip to a seaside resort? How could a cryptoparty have anything to do with a rare book in a library in Michigan? Lilly Ryan - historian, privacy advocate, and penetration tester - walks you through a two hundred year old method for fighting the surveillance state, based on the advocacy led by 19th century scientists to abolish the domestic use of arsenic. You will learn about the tireless efforts used by anti-arsenic activists to change the public perception of arsenic, Cory Doctorow’s theory of Peak Indifference, the lives ruined by data breaches, and how to sustain the recent public shift from “I have nothing to hide” to “I value my privacy”. This session will offer tips for developers, security professionals, and other interested folks on how to help everyday people have more power over their own information and how to sustain hope for the future when we’ve been aware of the solutions for years. Come along and take in stories of murder, mismanagement, and mendacity, and learn how to keep up the fight against mass surveillance now that the tide is turning.

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

name: Keynote: Apathy and Arsenic: a Victorian Era lesson on fighting the surveillance state


Django and Web Security Headers

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

description: Web browsers support several HTTP headers to opt in to extra security features. I’ll explain then and show you how to get an A+ rating for these with the free checker SecurityHeaders.com, using built-in features and a few third-party packages. The web browser is an evolving environment, but with massive backwards compatibility. Because of this, a lot of its security features are opt-in and incremental through headers such as Content-Security-Policy and Feature-Policy. I’ll walk through and explain the main headers recommended by Scott Helme’s SecurityHeaders.com , and how you can get your site to an A+ score, with a mix of built-in features and third party packages for the more cutting edge headers. Also I’ll briefly show some free and paid tools that can aid with deployment.

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


djangocon.close ()

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

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


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

description: An introduction to the tools of modern frontend development for Django developers looking to incorporate UI libraries, CSS preprocessors, bundlers, and ES6 into their projects. Until recently, I wrote frontend code like a backend developer. jQuery and Javascript were synonymous. CSS and JS dependencies were either linked from CDNs or downloaded and shoved into static file directories the ol’ fashioned way. For those willing to take the plunge, the modern frontend ecosystem can offer better user experience design, more robust client-side code, greater test coverage, and powerful build tools that free up your time for the fun stuff. Getting modern frontend tools to play nicely with your Django project can be challenging at first, so in this discussion, we’ll go over some steps that have helped me go from “Frontend Dinosaur” to “Frontend Neanderthal”, including: Using the node package manager with Django CSS preprocessors and listeners Using webpack for managing build processes Adding a simple Vue component into the admin Integrating a webpack-bundled frontend application into Django This talk is intended for Django developers who are comfortable with Django, HTML, CSS, and JS but have little-to-no experience with frontend build tools (webpack, gulp, grunt) or frontend frameworks (react, angular, vue).

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

name: Frontend Development for Backend Developers


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

description: A practical, hands-on guide to using machine learning in your Django projects, including a live demo of four applications. Machine Learning is probably the most important development in our industry (and possibly our civilisation!). Previously restricted to math geniuses with access to supercomputers and massive data centres, machine learning tools are increasingly available as web services which are easily consumed from more traditional web applications. Python has become the lingua franca of machine learning, so Django developers are well placed to take advantage of the next wave of application development. In this talk I’ll outline the various machine learning platforms and provide a set of practical examples that demonstrate how Django developers can start taking advantage of artificial intelligence in their own applications. These will include: Image recognition - using Microsoft Azure Vision to automatically caption and label the images your users upload Entity analysis - using the Google Cloud Natural Language API to tag news articles with people, locations and events Predictions - using Amazon Machine Learning to build a ‘you may also like’ feature Sentiment analysis - using IBM Watson to understand the tone of comments submitted to your site

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

name: Here Come The Robots: Practical Machine Learning with Django


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

description: I believe that Django ORM can fit almost 95% of the projects, however, it doesn’t perform well for some tasks. You can switch to raw SQL, but again: if you need an additional level of abstraction to build a flexible and better-maintained product, it won’t be enough. Here is when SQLAlchemy Core comes to fill the gap. In this talk, I’d like to cover the following topics: Django ORM, SQLAlchemy ORM, SQLAlchemy Core; when it’s time to consider adding SQLAlchemy Core to the Django application; to highlight integration steps; how to write tests with SQLAlchemy Core; some examples and observations from my personal experience.

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

name: How (and why!) to build a Django based project with SQLAlchemy Core for data analysis


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

description: This talk will summarize the history of the creation of PyLadies and Django Girls Brazil and the work done over the last three years to achieve the biggest number of Pyladies subgroups in the world. Initiatives concerning gender disparity have been gaining strength internationally in recent years, and the Brazilian open-source community has stood out in the quantity and effectiveness of actions aimed at these projects, changing the scenario of our regional and national conferences and events. Here in Brazil, we also have the biggest PyLadies community of the world (in number of chapters), with over 30 chapters around the country. But how did we get here? How do we manage to have such a huge group of people working together and specially learning from each other to run our activities so organically? In this talk we will discuss about our experience with PyLadies and Django Girls in different regions in Brazil, where we summarize some of the history of the creation of PyLadies and Django Girls Brazil, how everything started and the path we follow to this day. During the talk, we’ll learn more about how do we get ladies (and gentlemen) to work together for these changes to happen, also how the organizers of the chapters and workshops communicate in order to improve their routines and activities and finally, the annual experience sharing meeting we have to gather people who represent the groups to brainstorm ideas of how to make our community better. It will be mentioned all the construction and exchange that takes place within our community and with the diverse communities that support us in the most various corners of the country, their particularities, difficulties and results.

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

name: How PyLadies Brazil became the biggest PyLadies chapter of the world


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

description: Django’s great for building web apps. Jupyter’s great for sharing reproducible analysis. Altair’s great for making analysis interactive, and easier to understand visually. Here’s how to use them all together. For a large part of last year, I was working in a small, cross disciplinary team in a business information company, building data products to help make sense of public spending data. Our shared language across the team was python, and over the year, we came up with a workflow that let our analysts and data science specialists work with Jupyter notebook to carry out analysis, and build interactive data viz using Altair to explore data, before taking the same code used to generate these charts, and incorporate them in the main django app as data products for our customers. This talk outlines why these tools are useful together, explaining how Altair packages up some of the most recent advances in thinking about data vizualisation techniques, and makes them accessible to python developers for exploratory analysis of data using Jupyter and Django together. We’ll finish by showing how, once you’re happy with them, you can then integrate these same interactive visualisations into an existing django application, and make them accessible to your users.

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

name: Jupyter, Django and Altair: Quick and dirty business analytics


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

description: Let’s dive into the challenges that arise when a Django project starts to become huge. Django is extremely effective for creating a website quickly with top notch features out of the box. But in some codebases, after a while, new developments can become harder and harder. In this talk, we’ll examine some design decisions that have, and haven’t, scaled successfully, in the hope that the next time you start your big scale Django project, you won’t end up cursing your past self after three years. Among the subjects we’ll tackle: the question of where to put your business logic; your model and who should be able to define it (especially third party apps); Views, and code repetition, and whether Class Based Views are the solution; Your test architecture and the infamous TestCaseMixin spaghetti hell…

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

name: Maintaining a Django codebase after 10k commits


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

description: We build services, potentially used by hundreds, thousands or even millions of people. And despite all the testing we do, some operations and interactions with these services will not work out the way we expect or hope. Wouldn’t it be great to be able to reconstruct what led to a problem? And then analyze if the same problem occurred at other times? In this talk, I want to look at structured logging. What are the benefits of it over plain-text logging? How can it be used effectively? Logging, by itself, can help to trace bugs. Structured logging adds additional, post-logging capabilities when used correctly. Because log events are structured data, they can be analyzed much more efficiently and effectively than plain text log messages. Furthermore, one can even build graphs and diagrams to visualize what’s happening in a service nicely.

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

name: Logging Rethought 2: The Actions of Frank Taylor Jr.