Watch the video here: http://bit.ly/1tFiTDM
These are the slides for Allan Jude's lightning talk, "UCL All of the Things", given at MeetBSD California 2014 in San Jose.
Visit www.iXsystems.com or www.MeetBSD.com to learn more.
During the August 2015 meeting, Jordan Hubbard and Kip Macy spoke about their upcoming initiatives on NeXTBSD.
A video of the talk can be seen at the end of the video or here: https://www.youtube.com/watch?v=49sPYHh473U
This document discusses Python and FreeBSD. It begins with an introduction to FreeBSD, highlighting some of the companies and websites that use it. It then discusses the python@FreeBSD mailing list and resources for using Python on FreeBSD, including installing Python via ports or packages. The document provides guidance on running Python applications and developing Python projects on FreeBSD using tools like virtualenv, ZFS, and jails. It also covers creating Python ports and submitting them to be included in the FreeBSD ports collection.
This document discusses Docker, LXC containers, and how Ansible can be used with Docker. It provides an overview of key features of LXC and Docker containers, including portability, isolation, and resource control. It then covers using Dockerfiles to build images, common Docker commands, overriding defaults, and the ambassador pattern. It concludes by briefly mentioning using Ansible to build Docker images and run containers.
Kernel Recipes 2016 - Would an ABI changes visualization tool be useful to Li...Anne Nicolas
Libabigail is a new infrastructure for semantic analysis of ELF binaries containing C or C++ programs that has emerged lately. It powers command line tools like ‘abidiff’, which let users compare ABI changes between two different versions of a given ELF binary by analyzing just the binary and its ancillary debug information.
The result of the binary comparison is a kind of hierarchical ‘diff’ which shows changes up to the types of the interfaces that constitute the ABI of an ELF program.
This interactive talk intents to spark discussions around the idea of having a libabigail-based tool specifically targeted to comparing the ABI of two Linux Kernel binary trees and how it could be useful to maintainers of the stable kernel tree. The main goal of such a tool would be to show the ABI differences between two kernels, in terms of which function or variable — part of the ABI exposed by the kernel to its modules — changed and what the details of the changes are.
This interactive talk will present what libabigail and its associated tools can do today, and how the library can be used to build an hypothetical “kabidiff” new tool. Discussions are going to be very welcome so please make sure to attend.
Dodji Seketeli, Red Hat
FreeBSD: The Next 10 Years (MeetBSD 2014)iXsystems
Watch the video here: http://bit.ly/11wK25T.
These are the slides for Jordan Hubbard's presentation, "FreeBSD: The Next 10 Years", given at MeetBSD California 2014 in San Jose.
Visit us at www.iXsystems.com or www.FreeNAS.org to learn more.
Kernel Recipes 2016 - Kernel documentation: what we have and where it’s goingAnne Nicolas
The Linux kernel features an extensive array of, to put it kindly, somewhat disorganized documentation. A significant effort is underway to make things better, though. This talk will review the state of kernel documentation, cover the changes that are being made (including the adoption of a new system for formatted documentation), and discuss how interested developers can help.
Jonathan Corbet, LWN.net
This document contains a presentation on CoreOS, etcd, and Fleet given by Victor S. Recio. It provides overviews of CoreOS as a minimal Linux distribution focused on running containers, etcd as a distributed key-value store for service discovery and configuration, and Fleet as a cluster manager that controls systemd units across multiple machines. It also lists Victor Recio's contact information and background as CEO of NerCore Inc and leader of several Dominican open source communities.
Introduction to Docker, December 2014 "Tour de France" EditionJérôme Petazzoni
Docker, the Open Source container Engine, lets you build, ship and run, any app, anywhere.
This is the presentation which was shown in December 2014 for the "Tour de France" in Paris, Lille, Lyon, Nice...
During the August 2015 meeting, Jordan Hubbard and Kip Macy spoke about their upcoming initiatives on NeXTBSD.
A video of the talk can be seen at the end of the video or here: https://www.youtube.com/watch?v=49sPYHh473U
This document discusses Python and FreeBSD. It begins with an introduction to FreeBSD, highlighting some of the companies and websites that use it. It then discusses the python@FreeBSD mailing list and resources for using Python on FreeBSD, including installing Python via ports or packages. The document provides guidance on running Python applications and developing Python projects on FreeBSD using tools like virtualenv, ZFS, and jails. It also covers creating Python ports and submitting them to be included in the FreeBSD ports collection.
This document discusses Docker, LXC containers, and how Ansible can be used with Docker. It provides an overview of key features of LXC and Docker containers, including portability, isolation, and resource control. It then covers using Dockerfiles to build images, common Docker commands, overriding defaults, and the ambassador pattern. It concludes by briefly mentioning using Ansible to build Docker images and run containers.
Kernel Recipes 2016 - Would an ABI changes visualization tool be useful to Li...Anne Nicolas
Libabigail is a new infrastructure for semantic analysis of ELF binaries containing C or C++ programs that has emerged lately. It powers command line tools like ‘abidiff’, which let users compare ABI changes between two different versions of a given ELF binary by analyzing just the binary and its ancillary debug information.
The result of the binary comparison is a kind of hierarchical ‘diff’ which shows changes up to the types of the interfaces that constitute the ABI of an ELF program.
This interactive talk intents to spark discussions around the idea of having a libabigail-based tool specifically targeted to comparing the ABI of two Linux Kernel binary trees and how it could be useful to maintainers of the stable kernel tree. The main goal of such a tool would be to show the ABI differences between two kernels, in terms of which function or variable — part of the ABI exposed by the kernel to its modules — changed and what the details of the changes are.
This interactive talk will present what libabigail and its associated tools can do today, and how the library can be used to build an hypothetical “kabidiff” new tool. Discussions are going to be very welcome so please make sure to attend.
Dodji Seketeli, Red Hat
FreeBSD: The Next 10 Years (MeetBSD 2014)iXsystems
Watch the video here: http://bit.ly/11wK25T.
These are the slides for Jordan Hubbard's presentation, "FreeBSD: The Next 10 Years", given at MeetBSD California 2014 in San Jose.
Visit us at www.iXsystems.com or www.FreeNAS.org to learn more.
Kernel Recipes 2016 - Kernel documentation: what we have and where it’s goingAnne Nicolas
The Linux kernel features an extensive array of, to put it kindly, somewhat disorganized documentation. A significant effort is underway to make things better, though. This talk will review the state of kernel documentation, cover the changes that are being made (including the adoption of a new system for formatted documentation), and discuss how interested developers can help.
Jonathan Corbet, LWN.net
This document contains a presentation on CoreOS, etcd, and Fleet given by Victor S. Recio. It provides overviews of CoreOS as a minimal Linux distribution focused on running containers, etcd as a distributed key-value store for service discovery and configuration, and Fleet as a cluster manager that controls systemd units across multiple machines. It also lists Victor Recio's contact information and background as CEO of NerCore Inc and leader of several Dominican open source communities.
Introduction to Docker, December 2014 "Tour de France" EditionJérôme Petazzoni
Docker, the Open Source container Engine, lets you build, ship and run, any app, anywhere.
This is the presentation which was shown in December 2014 for the "Tour de France" in Paris, Lille, Lyon, Nice...
This document discusses Docker internals and components. It covers:
1. Docker provides build once, configure once capabilities to deploy applications everywhere reliably, consistently, efficiently and cheaply.
2. Docker components include the Docker daemon, libcontainer, cgroups, namespaces, AUFS/BTRFS/dm-thinp, and the kernel-userspace interface.
3. Docker uses filesystem isolation through layering, copy-on-write, caching and differencing using union filesystems like AUFS to provide efficient sharing of files between containers.
This document discusses using continuous integration with Docker and Ansible. It describes building and deploying microservices across multiple technologies using Docker containers managed by Ansible playbooks. The process involves cloning repositories, building Docker images, testing, pushing images to a private Docker registry, and deploying containers to environments with Ansible. Benefits include easily managing container environments, portability across machines, and isolated workspaces for each service. Challenges addressed are timeouts, freezes, and long build times.
This document discusses Docker solutions implemented at Hotelsoft to address various challenges in running a multi-tenant SaaS application on Docker across multiple data centers. Key solutions discussed include using Phusion Base image to run multiple processes in a container, securing containers, granting internal access to containers, transferring files, multi-host networking using Weave, and load balancing applications with HAProxy.
Wso2 con 2014-us-tutorial-apache stratos-wso2 private paas with docker integr...Lakmal Warusawithana
This document discusses Apache Stratos/WSO2 private PaaS with Docker integration. It provides an overview of containers, Docker, CoreOS, Kubernetes and Flannel. It then demonstrates how Apache Stratos 4.1.0 can be used to deploy and manage Docker-based applications on a CoreOS cluster using Kubernetes for orchestration and service discovery. Key features of Stratos like automated scaling and updates are shown.
Presented Docker in 15 minutes with two of my classmates at school.
Presentation covering topics:
Virtualization
Virtual Machines
Container Technology (Docker)
Docker Compose
Docker Swarm
The demo can be found at:
https://github.com/DanishKhakwani/SimpleDockerDemo
Introduction to Docker & CoreOS - Symfony User Group CologneD
This document provides an introduction and overview of Docker and CoreOS. It describes Docker as a tool for isolation processes in lightweight Linux containers and discusses CoreOS, a minimal Linux distribution focused on running modern infrastructure stacks. CoreOS utilizes Docker containers and tools like Etcd for service discovery, Locksmith for updates, Cloud Config for initialization, Flannel for networking, and Fleet for cluster management.
This document discusses moving from running Docker containers using the Docker run command to using Docker Compose. It introduces Docker Compose as a tool for defining and running multi-container Docker applications. It provides examples of using Docker Compose to run a WordPress site with MySQL instead of using complex Docker run commands. It also covers installing Docker Compose, the structure of a Compose file in YAML format, and common Docker Compose commands.
Red Teaming macOS Environments with Hermes the Swift MessengerJustin Bui
1. The document introduces Hermes, a Swift payload for the Mythic framework that provides post-exploitation functionality on macOS systems. It discusses the development of Hermes, including cross-compiling Swift from Linux, and its key capabilities like file operations, process interaction, and screenshotting.
2. It also covers considerations for detecting Hermes using Apple's Endpoint Security Framework, which allows monitoring of process execution, file access, and other events.
In this deck, I quickly summarize how people have dealt with logging in Docker historically and then describe a comprehensive approach to logging and monitoring in Docker, based on research and customer interviews.
While Docker adds a welcome layer of abstraction to the deployment of applications, it also challenges assumptions on how those applications should be managed. I discuss a comprehensive approach for collecting logs and metrics into a centralized platform and dissect the latest additions to Docker itself (log drivers, stats).
Adrian Otto from Rackspace will present "Docker 102", This includes a summary of Docker 101 as a refresher from the August session, and builds upon that by discussing who should use a registry, and what options are available for keeping them private. We will discuss best practices for keeping your production environments evergreen with updated operating system environments, library dependencies, and maintaining an immutable infrastructure.
This document provides an overview of a talk about Docker. It introduces Docker features like images, containers, and the workflow. It describes how Docker uses namespaces and control groups for isolation. It compares Docker to virtual machines and explains why Docker is popular. The document then demonstrates Docker through a tutorial of pulling an image, running a container, and viewing container logs. It also discusses the Dockerfile for automating builds.
Gentoo Linux, or Why in the World You Should Compile EverythingDonnie Berkholz
Gentoo Linux is a special flavor of Linux that can be automatically optimized and customized for just about any application or need. Extreme performance, configurability and a top-notch user and developer community are all hallmarks of the Gentoo experience.
As a leader of Gentoo, I will provide an overview of how it works from a developer's and a user's point of view, and why you should be running it especially if you're:
- In need of an awesome development environment;
- Interested in learning what's inside the black box of Linux;
- OCD about having a perfectly configured setup; or
- Building an embedded, minimal system or a high-performance cluster.
If there's interest, I can also talk about future developments on the horizon for Gentoo, package management in general, etc.
Lawrence Livermore National Laboratory uses Linux clusters with large amounts of storage and processing power for advanced simulation and data-intensive work. They have implemented the ZFS filesystem on Linux to meet their storage needs, as existing Linux filesystems did not provide sufficient scalability, data integrity, or online manageability. ZFS on Linux required changes to interfaces and memory management to work within the Linux kernel but retains the core ZFS functionality. It is now stable, high performing, and in active use at LLNL and other organizations.
Embedded Systems: Lecture 13: Introduction to GNU Toolchain (Build Tools)Ahmed El-Arabawy
The document discusses Linux toolchains used for embedded systems development. It describes the main components of the GNU toolchain including gcc (compiler), ld (linker), ar (library archiver) and other tools. It explains the compilation process from source code to executable, use of static and dynamic libraries, and how the dynamic linker locates libraries at runtime. Commands for building, linking and debugging programs are also covered.
The document provides an overview of writing a Linux USB device driver. It discusses key concepts such as loadable kernel modules (LKMs), registering and unregistering a device driver, common device driver types, and important kernel functions for device drivers. It also outlines the general steps to implement a device driver, including understanding the device, mapping operations to file operations, creating a special device file, and loading the driver module.
This document summarizes key aspects of Docker internals, including how it provides isolation using namespaces and cgroups, manages images using AUFS and layers, and runs and manages containers via its daemon. It outlines Docker's use of isolation, images, process management, and roadmap for future versions including new backend interfaces and improved service discovery.
OpenWrt is a Linux distribution for embedded systems that runs on many routers and networking devices today. In this session we'll talk about OpenWrt's origins, architecture and get down to building apps for the platform.
Along the way we will touch on some basic firmware concepts and at last present the final working OpenWrt router and its capabilities.
Anton Lerner, Architect at Sitaro, computer geek, developer and occasional maker.
Sitaro provides total cyber protection for small business and home networks. Sitaro prevents massive scale IoT cyber attacks.
Find out more information in the meetup event page - https://www.meetup.com/Tel-Aviv-Yafo-Linux-Kernel-Meetup/events/245319189/
The document discusses Docker and container orchestration tools. It begins with an agenda on multi-machine Docker swarms and alternatives like Kubernetes and Mesos. It then covers setting up a multi-node Docker swarm across two virtual machines, deploying an application to the swarm, and accessing the clustered application. Moby Project is introduced as the new name for Docker's open source components to distinguish them from commercial Docker products. Tools like Kitematic, Docker's Universal Control Plane, and Panamax are also briefly mentioned.
This document provides an agenda for a Docker Academy PRO course. It introduces containers and containerization basics. It discusses how Docker works and the evolution of IT that led to its development. It compares containers to virtual machines and the advantages of containers. Key Docker concepts are explained like images, the Docker daemon, and official Docker images. The document concludes by asking if there are any questions.
Containers are becoming increasingly popular as the future of cloud computing. The document discusses and compares several open source container virtualization platforms - KVM, Xen, OpenVZ, and LXC. It provides details on each platform such as the main developer, status, hardware support, virtualization type, and supported operating systems. OpenVZ is highlighted as being production ready since 2006, having extremely low overhead compared to Xen and KVM, and being widely used in projects like Docker.
Since 2008, the Malaria Consortium programme, Support to the Nigeria Malaria Programme (SuNMaP), has been working in Nigeria to strengthen the national effort to control malaria. Among the programme’s activities is the harmonisation of malaria control – which means working with supporting partners locally, nationally and internationally, for the common purpose to reduce the burden of malaria in Nigeria. The paper describes some of SuNMaP’s successes in rolling out harmonisation – such as leading a unified approach to the rollout of a nationwide LLIN campaign rollout, and developing standardised modules for the training of health workers in service delivery and programme management.
Este documento describe el caso de un hombre de 63 años que sufrió un accidente de motocicleta. Presentaba sangrado abundante en la cabeza y estaba inconsciente. Fue valorado y tratado en la escena, donde se le realizó intubación rápida y se le administró oxígeno y fluidos. Durante el traslado al hospital desarrolló signos de presión intracraneal elevada como bradicardia, presión arterial alta y depresión respiratoria. En el hospital se confirmó que había sufrido un grave traumatismo craneo
This document discusses Docker internals and components. It covers:
1. Docker provides build once, configure once capabilities to deploy applications everywhere reliably, consistently, efficiently and cheaply.
2. Docker components include the Docker daemon, libcontainer, cgroups, namespaces, AUFS/BTRFS/dm-thinp, and the kernel-userspace interface.
3. Docker uses filesystem isolation through layering, copy-on-write, caching and differencing using union filesystems like AUFS to provide efficient sharing of files between containers.
This document discusses using continuous integration with Docker and Ansible. It describes building and deploying microservices across multiple technologies using Docker containers managed by Ansible playbooks. The process involves cloning repositories, building Docker images, testing, pushing images to a private Docker registry, and deploying containers to environments with Ansible. Benefits include easily managing container environments, portability across machines, and isolated workspaces for each service. Challenges addressed are timeouts, freezes, and long build times.
This document discusses Docker solutions implemented at Hotelsoft to address various challenges in running a multi-tenant SaaS application on Docker across multiple data centers. Key solutions discussed include using Phusion Base image to run multiple processes in a container, securing containers, granting internal access to containers, transferring files, multi-host networking using Weave, and load balancing applications with HAProxy.
Wso2 con 2014-us-tutorial-apache stratos-wso2 private paas with docker integr...Lakmal Warusawithana
This document discusses Apache Stratos/WSO2 private PaaS with Docker integration. It provides an overview of containers, Docker, CoreOS, Kubernetes and Flannel. It then demonstrates how Apache Stratos 4.1.0 can be used to deploy and manage Docker-based applications on a CoreOS cluster using Kubernetes for orchestration and service discovery. Key features of Stratos like automated scaling and updates are shown.
Presented Docker in 15 minutes with two of my classmates at school.
Presentation covering topics:
Virtualization
Virtual Machines
Container Technology (Docker)
Docker Compose
Docker Swarm
The demo can be found at:
https://github.com/DanishKhakwani/SimpleDockerDemo
Introduction to Docker & CoreOS - Symfony User Group CologneD
This document provides an introduction and overview of Docker and CoreOS. It describes Docker as a tool for isolation processes in lightweight Linux containers and discusses CoreOS, a minimal Linux distribution focused on running modern infrastructure stacks. CoreOS utilizes Docker containers and tools like Etcd for service discovery, Locksmith for updates, Cloud Config for initialization, Flannel for networking, and Fleet for cluster management.
This document discusses moving from running Docker containers using the Docker run command to using Docker Compose. It introduces Docker Compose as a tool for defining and running multi-container Docker applications. It provides examples of using Docker Compose to run a WordPress site with MySQL instead of using complex Docker run commands. It also covers installing Docker Compose, the structure of a Compose file in YAML format, and common Docker Compose commands.
Red Teaming macOS Environments with Hermes the Swift MessengerJustin Bui
1. The document introduces Hermes, a Swift payload for the Mythic framework that provides post-exploitation functionality on macOS systems. It discusses the development of Hermes, including cross-compiling Swift from Linux, and its key capabilities like file operations, process interaction, and screenshotting.
2. It also covers considerations for detecting Hermes using Apple's Endpoint Security Framework, which allows monitoring of process execution, file access, and other events.
In this deck, I quickly summarize how people have dealt with logging in Docker historically and then describe a comprehensive approach to logging and monitoring in Docker, based on research and customer interviews.
While Docker adds a welcome layer of abstraction to the deployment of applications, it also challenges assumptions on how those applications should be managed. I discuss a comprehensive approach for collecting logs and metrics into a centralized platform and dissect the latest additions to Docker itself (log drivers, stats).
Adrian Otto from Rackspace will present "Docker 102", This includes a summary of Docker 101 as a refresher from the August session, and builds upon that by discussing who should use a registry, and what options are available for keeping them private. We will discuss best practices for keeping your production environments evergreen with updated operating system environments, library dependencies, and maintaining an immutable infrastructure.
This document provides an overview of a talk about Docker. It introduces Docker features like images, containers, and the workflow. It describes how Docker uses namespaces and control groups for isolation. It compares Docker to virtual machines and explains why Docker is popular. The document then demonstrates Docker through a tutorial of pulling an image, running a container, and viewing container logs. It also discusses the Dockerfile for automating builds.
Gentoo Linux, or Why in the World You Should Compile EverythingDonnie Berkholz
Gentoo Linux is a special flavor of Linux that can be automatically optimized and customized for just about any application or need. Extreme performance, configurability and a top-notch user and developer community are all hallmarks of the Gentoo experience.
As a leader of Gentoo, I will provide an overview of how it works from a developer's and a user's point of view, and why you should be running it especially if you're:
- In need of an awesome development environment;
- Interested in learning what's inside the black box of Linux;
- OCD about having a perfectly configured setup; or
- Building an embedded, minimal system or a high-performance cluster.
If there's interest, I can also talk about future developments on the horizon for Gentoo, package management in general, etc.
Lawrence Livermore National Laboratory uses Linux clusters with large amounts of storage and processing power for advanced simulation and data-intensive work. They have implemented the ZFS filesystem on Linux to meet their storage needs, as existing Linux filesystems did not provide sufficient scalability, data integrity, or online manageability. ZFS on Linux required changes to interfaces and memory management to work within the Linux kernel but retains the core ZFS functionality. It is now stable, high performing, and in active use at LLNL and other organizations.
Embedded Systems: Lecture 13: Introduction to GNU Toolchain (Build Tools)Ahmed El-Arabawy
The document discusses Linux toolchains used for embedded systems development. It describes the main components of the GNU toolchain including gcc (compiler), ld (linker), ar (library archiver) and other tools. It explains the compilation process from source code to executable, use of static and dynamic libraries, and how the dynamic linker locates libraries at runtime. Commands for building, linking and debugging programs are also covered.
The document provides an overview of writing a Linux USB device driver. It discusses key concepts such as loadable kernel modules (LKMs), registering and unregistering a device driver, common device driver types, and important kernel functions for device drivers. It also outlines the general steps to implement a device driver, including understanding the device, mapping operations to file operations, creating a special device file, and loading the driver module.
This document summarizes key aspects of Docker internals, including how it provides isolation using namespaces and cgroups, manages images using AUFS and layers, and runs and manages containers via its daemon. It outlines Docker's use of isolation, images, process management, and roadmap for future versions including new backend interfaces and improved service discovery.
OpenWrt is a Linux distribution for embedded systems that runs on many routers and networking devices today. In this session we'll talk about OpenWrt's origins, architecture and get down to building apps for the platform.
Along the way we will touch on some basic firmware concepts and at last present the final working OpenWrt router and its capabilities.
Anton Lerner, Architect at Sitaro, computer geek, developer and occasional maker.
Sitaro provides total cyber protection for small business and home networks. Sitaro prevents massive scale IoT cyber attacks.
Find out more information in the meetup event page - https://www.meetup.com/Tel-Aviv-Yafo-Linux-Kernel-Meetup/events/245319189/
The document discusses Docker and container orchestration tools. It begins with an agenda on multi-machine Docker swarms and alternatives like Kubernetes and Mesos. It then covers setting up a multi-node Docker swarm across two virtual machines, deploying an application to the swarm, and accessing the clustered application. Moby Project is introduced as the new name for Docker's open source components to distinguish them from commercial Docker products. Tools like Kitematic, Docker's Universal Control Plane, and Panamax are also briefly mentioned.
This document provides an agenda for a Docker Academy PRO course. It introduces containers and containerization basics. It discusses how Docker works and the evolution of IT that led to its development. It compares containers to virtual machines and the advantages of containers. Key Docker concepts are explained like images, the Docker daemon, and official Docker images. The document concludes by asking if there are any questions.
Containers are becoming increasingly popular as the future of cloud computing. The document discusses and compares several open source container virtualization platforms - KVM, Xen, OpenVZ, and LXC. It provides details on each platform such as the main developer, status, hardware support, virtualization type, and supported operating systems. OpenVZ is highlighted as being production ready since 2006, having extremely low overhead compared to Xen and KVM, and being widely used in projects like Docker.
Since 2008, the Malaria Consortium programme, Support to the Nigeria Malaria Programme (SuNMaP), has been working in Nigeria to strengthen the national effort to control malaria. Among the programme’s activities is the harmonisation of malaria control – which means working with supporting partners locally, nationally and internationally, for the common purpose to reduce the burden of malaria in Nigeria. The paper describes some of SuNMaP’s successes in rolling out harmonisation – such as leading a unified approach to the rollout of a nationwide LLIN campaign rollout, and developing standardised modules for the training of health workers in service delivery and programme management.
Este documento describe el caso de un hombre de 63 años que sufrió un accidente de motocicleta. Presentaba sangrado abundante en la cabeza y estaba inconsciente. Fue valorado y tratado en la escena, donde se le realizó intubación rápida y se le administró oxígeno y fluidos. Durante el traslado al hospital desarrolló signos de presión intracraneal elevada como bradicardia, presión arterial alta y depresión respiratoria. En el hospital se confirmó que había sufrido un grave traumatismo craneo
The document compares the traditional method of translating audio to text with TexTerpreting's one-step method. The traditional method involves transcribing audio to the source language text, translating that text to the target language, and has higher costs due to transcription fees. TexTerpreting directly translates audio to the target language text in one step for a flat $15 per minute rate, delivers the results faster, and avoids potential errors from transcription.
An 11-month-old infant presented with fever, bloody diarrhea, and abdominal distension for 2 days. Laboratory tests showed an elevated white blood cell count and C-reactive protein level. Microscopic examination of a stool sample found numerous red blood cells and thick-shelled eggs with two polar plugs, suggesting a diagnosis of Trichuris trichiura (whipworm) infection. The patient was treated with mebendazole for 3 days, which resolved her symptoms and no eggs were found in follow up stool samples.
Dairy Science Park has been launched as a mission for economic growth of the war hit region of Khyber Pakhtunkhwa and FATA prepared by Prof M Subhan Qureshi, Chief Patron DS Park; Part I covers the problem statement.
Per Solvay Specialty Polymers, it Consult ha fornito josh, il software a supporto dei processi di business della organizzazione. Con josh, Solvay, è riuscita a rendere la gestione documentale veloce e omogenea, integrandola con i processi di lavoro esistenti ed estendendo le capacità di SahrePoint.
DATA DRIVEN RETAIL SUCCESS White PaperKen Prokopec
This document discusses how data sharing between retailers and suppliers can help both parties. It notes that most retailers now share point-of-sale data with suppliers, seeing it as a strategic initiative. This data allows suppliers to better plan demand, manage inventories, and target marketing. However, retailers often share the data in formats like Excel that are difficult for suppliers to analyze. Standardizing and automating this data sharing process could help suppliers gain more actionable insights into retail sales.
3rd International Workshop on Dairy Science
Park scheduled for November 16-18, 2015 in the historic city of Peshawar, Pakistan. The theme of the workshop
is “Supporting the war-hit economy of Khyber Pakhtunkhwa through self-employment and hygienic food
production for local consumers and international Halal Meat Market”. T
5 Strategies for choosing a worthy CNAM providerFlowroute
The document provides 5 strategies for choosing a caller name (CNAM) provider:
1. Choose a provider that offers fresh, up-to-date data to avoid displaying outdated caller names.
2. Ensure the provider offers interoperable solutions that are compatible with your needs to avoid technical issues.
3. Look for providers that offer reporting on usage and performance to track how well the service is working.
4. Make sure the provider can deliver useful information like city/state when caller names are unavailable.
5. Consider providers that allow custom tagging of data for analyzing campaign performance.
Rialadvertising is an advertising company that focuses on advertising for ships and is considered one of the best advertising companies in its region, as it is the only such company located in Illa de Arosa.
This document provides materials to help write a cover letter for a sales supervisor position, including two sample cover letters, tips for writing an effective cover letter, resume samples, interview questions and answers, and other job application resources. The samples cover letters highlight the applicants' relevant experience in sales, customer service, meeting sales goals, and staff management. They also request an interview to further discuss how the applicant can help and benefit the company.
CDays14 - CPP05 - Standard Library: STL e boost, la BCL di C++Alessio Gogna
This document is a slide presentation about the C++ Standard Library and Boost libraries. It discusses containers, iterators, algorithms, strings, input/output and other components of the C++ Standard Library introduced in C++11. It also provides an overview of the different categories of Boost libraries and some examples of commonly used Boost libraries. The presentation aims to provide an introduction to these libraries and show some practical examples of using them.
Bauer Media Group would be well-suited to publish Rebel magazine. As a large, multinational media company that already publishes similar magazines like Q and Kerrang!, Bauer Media Group has experience targeting the same young adult audience. It also has television holdings that could help expand Rebel magazine's brand. Rebel magazine would be a good fit for Bauer Media Group's existing portfolio and ability to distribute across multiple media platforms.
This document analyzes the profiles of members in a professional network based in Stockholm. It finds that over 80% of members hold a university degree, primarily in business-related fields. Most members have 15+ years of work experience and work in the IT field, with almost a quarter holding high-level positions like CXO or Director. The network's members are fluent in numerous languages and predominantly fall in the 40-45 and 50-55 age groups. Schneider and Cisco are identified as the network's main partners at the federation and local levels respectively.
Tips and Tricks for Increased Development EfficiencyOlivier Bourgeois
Short presentation targetted at university students showing some tools and software that are usually not talked about in courses which helps development productivity.
UltraESB - Installation and ConfigurationAdroitLogic
This document provides instructions on installing and getting started with UltraESB. It discusses key links, prerequisites like Java, software releases, distributions, and the UltraESB "project". It then covers setting up a development environment in Eclipse, configuring Eclipse, starting the ESB, stopping it, and details the default configuration and deployment units.
The document discusses EXPath Packaging, which is a framework for packaging libraries and applications for core XML technologies. It provides a standardized way to package and distribute reusable modules so they can be imported and used across different XML processors and platforms. The key components include a package descriptor, standardized package structure within a ZIP file, and automated installers to make it easy for users to install and import modules.
This document introduces Docker and provides an overview of its key concepts and capabilities. It explains that Docker allows deploying applications into lightweight Linux containers that are isolated but share resources and run at native speeds. It describes how Docker uses namespaces and cgroups for isolation and copy-on-write storage for efficiency. The document also outlines common Docker workflows for building, testing, and deploying containerized applications both locally and in production environments at scale.
Linux has become integral part of Embedded systems. This three part presentation gives deeper perspective of Linux from system programming perspective. Stating with basics of Linux it goes on till advanced aspects like thread and IPC programming.
Docker and Containers for Development and Deployment — SCALE12XJérôme Petazzoni
Docker is an Open Source engine to build, run, and manage containers. We'll explain what are Linux Containers, what powers them (under the hood), and what extra value Docker brings to the table. Then we'll see what the typical Docker workflow looks like from a developer point of view. We'll also give an Ops perspective, including deployment options. If you already saw a "Docker 101", consider this presentation as the February 2014 update! :-)
The U-Boot is an "Universal Bootloader" ("Das U-Boot") is a monitor program that is under GPL. This production quality boot-loader is used as default boot loader by several board vendors. It is easily portable and easy to port and to debug by supporting PPC, ARM, MIPS, x86,m68k, NIOS, Microblaze architectures. Here is a presentation that introduces U-Boot.
This document provides an introduction to Linux, including its history and architecture. It describes Linux's origins from Unix in the 1960s and the development of the Linux kernel by Linus Torvalds in 1991. It outlines the key components of a Linux system, including the kernel, shell, file system, processes, networking, and desktop environments. It also discusses booting a Linux system and provides resources for learning more about Linux distributions and building your own operating system.
Puppet Camp Seattle 2014: Docker and Puppet: 1+1=3 Puppet
This document discusses Docker and Puppet and how they can be used together. It suggests using Puppet to install and configure Docker on the host system, and then using Dockerfiles to build container images in a deterministic way. While Puppet could theoretically be used to build containers, the document argues it is better to use Dockerfiles for image builds and to separate operational concerns like logging and monitoring into separate containers for better portability and flexibility.
LAS16-209: Finished and Upcoming Projects in LMGLinaro
LMG's finished and upcoming projects include:
- Memory allocator and file system analyses to reduce memory usage on low-RAM devices.
- Monthly LCR releases and migrating their builds to ci.linaro.org.
- Updating toolchains and enabling new hardware like the HiKey board in AOSP.
- Increasing participation in upstream projects like merging an SystemUI patch.
- Integrating features in AOSP like Energy Aware Scheduling, OP-TEE, and an Overlay Manager.
- Continuing work on the HiKey board in AOSP including new features, fixes, and upstreaming components.
Workflow story: Theory versus Practice in large enterprises by Marcin PiebiakNETWAYS
Uphill battle against large enterprise it environments and IT corporate culture. How those difficulties turned out opportunities and clever implementations. Interesting modules, integrations and workflow pieces.
Docker is an open platform for building and running distributed applications across multiple isolated containers. It allows encapsulating applications into lightweight executable packages called containers that include all necessary dependencies. The document discusses Docker's architecture, components, image layers, repositories, building images using Dockerfiles, and challenges in implementing Docker in real-world systems due to limitations in separating runtime configuration and data. Competition in the container space from projects like Rocket, Project Atomic, and Vagga is also discussed.
Using Ansible for Deploying to Cloud Environmentsahamilton55
Andrew Hamilton presented on using Ansible for deploying to cloud environments. He discussed that Ansible was chosen to provide a simple and repeatable way to build services and deploy them to configured environments. It allows deploying to multiple languages and cloud platforms. Ansible uses a simple execution model and YAML files. Its key advantages include being agentless over SSH, supporting dynamic inventories, and having modules for common tasks. Hamilton provided tips for using Ansible effectively in cloud environments, such as using dynamic inventories, separating variables, and testing changes thoroughly.
Best practices in Drupal make individual developers more productive which makes the entire team more productive. This was presented by Somedutta Ghosh in Drupal Camp Kolkata. #drupalcampkolkata
#OktoCampus - Workshop : An introduction to AnsibleCédric Delgehier
- A playbook is defined to check if a pattern is present in the content of a web page retrieved from localhost. The playbook registers the content and fails if the defined pattern is not found.
- The playbook is modified to define different patterns for different host groups - the groups "prod" and "recette" would each have their own unique pattern to check for.
- The playbook uses Ansible modules like uri to retrieve a web page, register to store the content, and fail if a registered pattern is not found in the content. Variables and conditionals allow defining patterns dynamically based on host groups.
Similar to UCL All of the Things (MeetBSD California 2014 Lightning Talk) (20)
Olivier Cochard-Labbé, the original founder of FreeNAS, shares with us a presentation outlining the history and beginnings of what would become the world's most popular storage operating system.
http://www.ixsystems.com
http://www.freenas.org
FreeNAS 10 is an open source storage and application hosting software based on FreeBSD 11.0. It uses ZFS as its default filesystem and includes over 400 third party packages. The goals of FreeNAS 10 are to make complex storage systems simple for users while retaining powerful features for administrators. It aims to provide flexibility for application hosting and storage, as well as situational awareness through its GUI and CLI interfaces. FreeNAS 10 simplifies many storage and networking tasks including ZFS storage setup, file sharing, directory services, services management, virtualization, and containerized applications.
The slides for Matt Ahrens's presentation, “History of ZFS”, given at MeetBSD California 2016 in Berkeley, CA.
A recording of the talk can be viewed at: http://bit.ly/2gKDyr1.
PCI Pass-through - FreeBSD VM on Hyper-V (MeetBSD California 2016)iXsystems
The slides for Kylie Liang's presentation, “PCI Pass-through - FreeBSD VM on Hyper-V”, given at MeetBSD California 2016 in Berkeley, CA.
A recording of the talk can be viewed at: http://bit.ly/2hteton.
FreeNAS 10: Challenges of Building a Modern Storage Appliance based on FreeBS...iXsystems
The slides for Jordan Hubbard's presentation, “FreeNAS 10: Challenges of Building a Modern Storage Appliance based on FreeBSD”, given at MeetBSD California 2016 in Berkeley, CA.
A recording of the talk can be viewed at: http://bit.ly/2hH7nua.
600M+ Unsuspecting FreeBSD Users (MeetBSD California 2014)iXsystems
The slides for Rick Reed's presentation, “WhatsApp: Half a billion unsuspecting FreeBSD users”, given at MeetBSD California 2014 in San Jose.
A recording of the talk can be viewed at: http://bit.ly/1HFc53n.
PBI v10: Application Management Made Easy by Ken MooreiXsystems
These slides accompanied a presentation given at Southeast Linux Fest.
The PBI system provides an easy-to-use package management framework for installing, removing, and running applications while also providing simple methods for keeping your system up to date and in working order. In this session we will discuss the recent developments in the 10.0 PBI format, describe the background systems that make everything run, and demonstrate how an end-user interacts with this system via the AppCafe on PC-BSD. The slides also show how this system can be utilized to manage and use jails on PC-BSD/FreeBSD, enabling the user to isolate applications away from the general system for improved safety and security.
Introduction to FreeNAS development by John HixsoniXsystems
At SCALE 12x, John Hixson, Senior Software Developer at iXsystems, gave a his talk, "Introduction to FreeNAS development". FreeNAS has been around for several years now but development on it has been by very few people. Even with corporate sponsorshipt and a team of full time developers, outside interest has been minimal. Not a week goes by when a bug report or feature request is not filed. Documentation on how to develop on FreeNAS simply does not exist. Currently, the only way to come up to speed on FreeNAS development is to obtain the source code, read through it, modify it and verify it works. The goal of this paper is to create a simple FreeNAS application to demonstrate some of the common methods used when dealing with FreeNAS development, as well as showcase some of the API.
Jenkins, Bhyve, and Webdriver: Continuous Integration testing on FreeNAS by C...iXsystems
On November 7, 2013, the FreeBSD Vendor Summit was held at the Yahoo! campus in Sunnyvale, California. Craig Rodrigues, iXsystems software engineer, gave a presentation, "Jenkins, BHyve, and WebDriver: Continuous Integration Testing on FreeNAS". Craig's presentation described how iXsystems is using modern best practices for building and testing FreeNAS code. Jenkins is a framework for doing continuous builds and integration, and is used by hundreds of companies. BHyve (BSD Hypvervisor) is the new virtual machine system which will be part of FreeBSD 10. Webdriver is a Python toolkit for testing web applications. By combining these technologies, iXsystems is developing a modern and sophisticated workflow for testing and improving the quality of FreeNAS.
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
Maruthi Prithivirajan, Head of ASEAN & IN Solution Architecture, Neo4j
Get an inside look at the latest Neo4j innovations that enable relationship-driven intelligence at scale. Learn more about the newest cloud integrations and product enhancements that make Neo4j an essential choice for developers building apps with interconnected data and generative AI.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
National Security Agency - NSA mobile device best practices
UCL All of the Things (MeetBSD California 2014 Lightning Talk)
1. UCL all of the things
A universal config
language for (almost)
everything in FreeBSD
Allan Jude -- ScaleEngine Inc.
allanjude@freebsd.org twitter: @allanjude
2. Introduction
Allan Jude
● 12 Years as FreeBSD Server Admin
● FreeBSD docs committer (focus: ZFS, bhyve, iscsi)
● Architect of the ScaleEngine CDN (HTTP and Video)
● Host of BSDNow.tv & TechSNAP.tv Podcasts
● Extensive work with Puppet to manage our 100+
servers in 33 data centers in 12 countries
● Lots of work with ZFS to manage large collections of
videos as well as extremely large website caches (15+
million objects in ff*ff directories)
3. Impetus
At EuroBSDCon 2014 in Sofia, Jordan Hubbard
(jkh@freebsd.org) gave the opening keynote
Among the recommendations for how FreeBSD
could be improved and made easier to manage
was to move away from the ‘one config file
format per utility’
I really don’t want the one format to be XML :p
4. What is UCL
● UCL -- universal configuration language
● Inspired by the nginx (or bind) style
configuration file
● Fully compatible with JSON, but more liberal
in what it accepts, so users do not have to
write JSON
● Can output the configuration as
‘configuration’ (nginx style), JSON (compact
or pretty), or YAML
● Supports handy suffixes like k, kb, min, d
6. Why UCL is better than JSON
● UCL can input and output JSON
● However, UCL is less strict
● Quoting is not required
● Commas can be added after every element
(smaller diffs)
● Braces are not necessary
● Can use = instead of :
● Automatic array creation
● In general, just less strict about syntax,
writing JSON by hand is hard
7. Why use UCL?
● Very flexible, so can replace many types of
config files
● Can express complex, structured data,
including nesting. Also supports includes
● Terse. Doesn’t contain a lot of excess
formatting or syntax (like XML)
● Human readable, and importantly, writable
● Not whitespace sensitive like YAML
● Already in the base system, used by pkg(8)
9. newsyslog.conf(5) before:
/var/log/messages 644 5 100 @0101T JC
After:
mylogfile: {
logfile_name: “/var/log/messages”,
mode: 644,
count: 6,
size: 100kb,
when: “@0101T” /* this could be written in crontab(5) style? */
flags: [ ‘C’, ‘J’],
}
include “/usr/local/etc/newsyslog.d/*.conf”;
10. Extending the concept
● Move the defaults for stuff like newsyslog.
conf and /etc/crontab into /etc/defaults
● Extend things like /etc/newsyslog.d/ for
crontab, add a /usr/local/etc/ version as well
● If a user wants to keep more versions of
/var/log/messages, they add /etc/newsyslog.
d/whatever.conf and override the ‘count’ key.
● Disable a crontab? somekey { enabled: no }
11. Ordering Issue
Some configs may be sensitive to the order of
the declarations.
An ‘order’ key, when the configs from:
● /etc/defaults/newsyslog.conf
● /etc/newsyslog.conf
● /etc/newsyslog.d/*.conf
● /usr/local/etc/newsyslog.d/*.conf
are combined, they are sorted by this ‘order’
key, which defaults to MAX, so any config block
without an order key is sorted last.
12. Precedence Issues
If the configurations will allow ‘overlays’, such that the user
can change the values from /etc/defaults/crontab in another
file, it may be required to specify the priority of some of the
config blocks, to solve conflicts. For example:
/etc/pkg/FreeBSD.conf: enabled=yes
/usr/local/etc/pkg/repos/FreeBSD.conf: enabled=no
/usr/local/etc/pkg/repos/something.conf: enabled=yes
What order are they considered in?
A priority key, sorted descendingly, so the config with
‘priority=1’ is considered last and gets ‘the final say’
Secondarily sort lexicographically to resolve conflicts
(Since I wrote this, this has been implemented in libUCL)
13. Moving Forward
● Some UCL tools in base for things like:
○ Schema Validation - maybe a tool like vipw,
atomically update config and block if parse fails.
libUCL uses mmap() for includes, may require
special consideration if files shrink
○ Config compilation - show what the final config looks
like, all of the defaults and the multiple layers of
config applied on top of them to show the final config
(ala samba testparm)
○ Getting and Setting - (see next slide)
14. New Toys
● While writing these slides I came up with the idea for a tool for
interacting with UCL config files via the command line (and via shell
scripts) -- https://github.com/allanjude/uclcmd
● sysrc type tool to be able to extract values in a shell script:
uclcmd --file /etc/pkg/FreeBSD.conf --get freebsd.url
"pkg+http://pkg.FreeBSD.org/${ABI}/latest"
● Maybe write them as well, takes a UCL via STDIN and merges it
with what is already in the file if it already exists
ucl --file /usr/local/etc/pkg/repos/allan.conf --set
developer_mode: true
allan: {
url: “http://pkg.scaleengine.net/${ABI}/latest”,
}
● Already in use: https://github.com/allanjude/bhyveucl
15. Podcasts
BSDNow.tv is a weekly video podcast featuring
News, Interviews and Tutorials about the BSD
family of Operating Systems. Hosted by Kris
Moore (founder of PC-BSD) and Myself.
TechSNAP.tv is a weekly sysadmin video podcast
covering an OS agnostic range of security and
production issues of interest to those working,
studying or interested in the field.
Twitter: @allanjude Email: allanjude@freebsd.org