Writing and debugging code is hard, but testing shouldn't be. This talk will discuss common techniques for writing simpler tests that still exercise your production code while preventing you from spending time debugging test code.
The document discusses best practices for packaging and distributing Python projects, including structuring the project with modules and tests, using setup.py to define metadata and dependencies, generating documentation, building wheels for distribution, and sharing the code through version control and wheels. It provides examples of commands for installing, building, testing and distributing the project.
CouchDB is a document database. It stores JSON objects with a few special field names. The _id field represents a unique identifier for a document. The _rev field is the revision marker for a document. The _rev field is used for Multi-Version Concurrency Control, a form of optimistic concurrency.
This document provides instructions for performing full-text search using Cloudant. It includes steps to create a Cloudant account, set up an index, add documents, perform searches, handle pagination and sorting, and configure tokenization for text fields. Users are shown examples of searching by field values, getting the next page of results, sorting, and using different analyzers.
PuppetConf 2017: Puppet Platform: A Path Forward- Eric Sorenson, PuppetPuppet
This document outlines the history and future direction of the Puppet platform from 2009 to the present. It shows the major releases of Puppet from versions 2.6 to 5.2, highlighting new features and changes introduced in each. These include improvements to the parser, Hiera configuration layer, PuppetDB, and Puppet Server. The document suggests Puppet is moving from imperative automation to state-based management, with a focus on remote capabilities, cloud-native solutions, and maintaining backwards compatibility.
PuppetConf 2017: How People Actually Write Puppet- Gareth Rushgrove, PuppetPuppet
This document summarizes an analysis of 7.5 million lines of Puppet code from GitHub to understand how people write Puppet code and configure systems. The analysis found that the most common resource types used are files and packages. It also identified common class, defined type, and module names as well as packages, services, gems, and operating systems that Puppet code commonly configures. Some limitations are that only open source code is analyzed and it does not include private Puppet code configurations. The document concludes that analyzing large code datasets can provide useful insights for design and adoption of new features.
Python offers several tool and public services that simplify starting and maintaining an open source project. This presentation show cases some of the most helpful one and explains the process, beginning with an empty folder and finishing with a published PyPI package.
The document discusses the new features of Python 3.8, which was recently released. Some key updates include positional-only arguments, the walrus operator for variable assignment, improved static typing support, and performance enhancements. The document also notes additional developer changes and provides resources for obtaining Python 3.8.
PuppetDB: New Adventures in Higher-Order Automation - PuppetConf 2013Puppet
"PuppetDB: New Adventures in Higher-Order Automation" by
Deepak Giridharagopal, Director of Engineering, Puppet Labs.
Presentation Overview: PuppetDB gives users fast, robust, centralized storage for Puppet-produced data. The 1.0 version landed at Puppetconf 2012, and now we're one year older and one year wiser. It's been deployed in thousands of sites, people have written libraries and tools on top of it, and there's been plenty of activity in the past year. We've tightly integrated it into Puppet Enterprise. We've added new features like report storage, event querying, import/export, better HTTP endpoints, and unified querying. And though we've added features, we've also made PuppetDB faster and consume less disk space. This talk will cover what's happened in the PuppetDB world between Puppetconf 2012 and now. We'll go into the new features, talk about performance and correctness, and discuss lessons learned.
Speaker Bio: Deepak is Director of Engineering at Puppet Labs, one of the authors of PuppetDB, and a many-times-over Puppetconf veteran. Prior to joining Puppet Labs, he was Principal Engineer at Dell/MessageOne, using Puppet to manage thousands of production systems.
The document discusses best practices for packaging and distributing Python projects, including structuring the project with modules and tests, using setup.py to define metadata and dependencies, generating documentation, building wheels for distribution, and sharing the code through version control and wheels. It provides examples of commands for installing, building, testing and distributing the project.
CouchDB is a document database. It stores JSON objects with a few special field names. The _id field represents a unique identifier for a document. The _rev field is the revision marker for a document. The _rev field is used for Multi-Version Concurrency Control, a form of optimistic concurrency.
This document provides instructions for performing full-text search using Cloudant. It includes steps to create a Cloudant account, set up an index, add documents, perform searches, handle pagination and sorting, and configure tokenization for text fields. Users are shown examples of searching by field values, getting the next page of results, sorting, and using different analyzers.
PuppetConf 2017: Puppet Platform: A Path Forward- Eric Sorenson, PuppetPuppet
This document outlines the history and future direction of the Puppet platform from 2009 to the present. It shows the major releases of Puppet from versions 2.6 to 5.2, highlighting new features and changes introduced in each. These include improvements to the parser, Hiera configuration layer, PuppetDB, and Puppet Server. The document suggests Puppet is moving from imperative automation to state-based management, with a focus on remote capabilities, cloud-native solutions, and maintaining backwards compatibility.
PuppetConf 2017: How People Actually Write Puppet- Gareth Rushgrove, PuppetPuppet
This document summarizes an analysis of 7.5 million lines of Puppet code from GitHub to understand how people write Puppet code and configure systems. The analysis found that the most common resource types used are files and packages. It also identified common class, defined type, and module names as well as packages, services, gems, and operating systems that Puppet code commonly configures. Some limitations are that only open source code is analyzed and it does not include private Puppet code configurations. The document concludes that analyzing large code datasets can provide useful insights for design and adoption of new features.
Python offers several tool and public services that simplify starting and maintaining an open source project. This presentation show cases some of the most helpful one and explains the process, beginning with an empty folder and finishing with a published PyPI package.
The document discusses the new features of Python 3.8, which was recently released. Some key updates include positional-only arguments, the walrus operator for variable assignment, improved static typing support, and performance enhancements. The document also notes additional developer changes and provides resources for obtaining Python 3.8.
PuppetDB: New Adventures in Higher-Order Automation - PuppetConf 2013Puppet
"PuppetDB: New Adventures in Higher-Order Automation" by
Deepak Giridharagopal, Director of Engineering, Puppet Labs.
Presentation Overview: PuppetDB gives users fast, robust, centralized storage for Puppet-produced data. The 1.0 version landed at Puppetconf 2012, and now we're one year older and one year wiser. It's been deployed in thousands of sites, people have written libraries and tools on top of it, and there's been plenty of activity in the past year. We've tightly integrated it into Puppet Enterprise. We've added new features like report storage, event querying, import/export, better HTTP endpoints, and unified querying. And though we've added features, we've also made PuppetDB faster and consume less disk space. This talk will cover what's happened in the PuppetDB world between Puppetconf 2012 and now. We'll go into the new features, talk about performance and correctness, and discuss lessons learned.
Speaker Bio: Deepak is Director of Engineering at Puppet Labs, one of the authors of PuppetDB, and a many-times-over Puppetconf veteran. Prior to joining Puppet Labs, he was Principal Engineer at Dell/MessageOne, using Puppet to manage thousands of production systems.
Mango allows users to declaratively define and query Apache CouchDB indexes. Mango leverages Lucene not only to perform text search, but also to enable ad-hoc querying capabilities.
JDO 2019: Serverless Hype Driven Development - Grzegorz Piotrowski PROIDEA
Pojęcie "serverless" słychać już od jakiegoś czasu w programistycznym świecie, a hype wokół niego zdaje się tylko rosnąć. Czy jest to kolejny krok w kierunku ewolucji tworzenia oprogramowania czy tylko ciekawostka, która wkrótce przeminie? Jak wygląda codzienna praca w takim podejściu oraz na co należy zwracać szczególną uwagę? No i najważniejsze - do czego można tak naprawdę stosować serverless oraz jak nie dać się zgubnie ponieść fali tego rosnącego trendu? Na te oraz inne pytania odpowiemy sobie w trakcie niniejszej prelekcji - jesteście gotowi?
From Promises & async/await to Async Algebraic Data TypesRobert Pearce
Small presentation for Charleston.js on the Async algebraic data type in JavaScript (demo omitted) as an alternative way to work with asynchronous control structures than Promises & async/await.
Ring is a Clojure library that provides a common abstraction for building web applications in Clojure. It defines a handler function interface that takes a request map and returns a response map, providing a unified API. Ring serves as the base for other web frameworks in Clojure and is inspired by Python's WSGI and Ruby's Rack. The document includes code examples of creating a basic Ring application and wrapping handler functions.
Digital RSE: automated code quality checks - RSE group meetingHenry Schreiner
Given at a local RSE group meeting. Covers code quality practices, focusing on Python but over multiple languages, with useful tools highlighted throughout.
This document appears to be notes from a presentation on functional programming in JavaScript. It introduces the presenter, Robert, and outlines that the presentation will cover currying, composition, eta conversion, and using the Ramda library to simplify JavaScript code into a more point-free style. Point-free style is explained as defining functions without explicitly naming the arguments they operate on, instead composing other functions. An example is provided of transforming a function that finds the best films into a more simplified, point-free implementation using techniques like currying, composition, and Ramda functions.
Some Functional Programming in JavaScript and Ramda.jsRobert Pearce
A small take on functional programming in JavaScript (JS) with Ramda.js. In the demos, we refactor updating a deeply nested object using the Ramda REPL and refactor analysis of UK rainfall data with Ramda and TypeScript.
Level Up Your Git and GitHub Experience by Jordan McCullough and Brent BeerZeroTurnaround
The document summarizes tips and techniques for maximizing use of GitHub, including linking to issues by number in text or commits, auto-updating issues with commit references, resolving auto-merge conflicts either on GitHub or via the command line, keeping forked repos up to date, retrieving pull requests and prototype branches via the command line, and using rebase interactively and cherry-pick to integrate selected commits or work from other branches. The document also provides shortcuts for searching, blaming, and cleaning up local and remote branches.
Social phenomena is coming. We have lot’s of social applications that we are using every day, let’s say Facebook, twitter, Instagram. Lot’s of such kind apps based on social graph and graph theory. I would like to share my knowledge and expertise about how to work with graphs and build large social graph as engine for Social network using python and Graph databases. We'll compare SQL and NoSQL approaches for friends relationships.
Building Event-Based Systems for the Real-Time Webpauldix
- Event-based systems use events like data updates to trigger actions in real-time, while batch systems periodically process accumulated data
- Building distributed, event-based systems allows applications to scale horizontally by decomposing them into loosely coupled components that communicate asynchronously through messaging
- The publish-subscribe pattern is well-suited for event-based architectures, with systems like RabbitMQ providing message brokers that route events from publishers to subscriber queues based on topics
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)Sho Yoshida
This document discusses using continuous integration (CI) with Pharo Smalltalk projects. It describes using GitHub to host Smalltalk code and configure Baselines to specify dependencies. It also covers integrating Pharo builds with CI services like Travis CI and Jenkins by running scripts before and after builds. Finally, it mentions the SmalltalkCI and SORABITO tools for implementing CI workflows for Smalltalk projects hosted on services like GitHub and SmalltalkHub.
HOW 2019: A complete reproducible ROOT environment in under 5 minutesHenry Schreiner
The document discusses setting up a ROOT environment using Conda in under 5 minutes. It describes downloading and installing Miniconda and then using Conda commands to create a new environment and install ROOT and its dependencies from the conda-forge channel. The ROOT package provides full ROOT functionality, including compilation and graphics, and supports Linux, macOS, and multiple Python versions.
Fgxpress brasil loucura!!! novo plano explosivo de carreira! (brasil - port...Raoni Claro
O documento promove um produto chamado PowerStrips para alívio de dor que é natural e seguro. Ele descreve os benefícios do produto para a saúde e beleza e histórias de clientes. Também apresenta o modelo de negócios de marketing multinível para vender e distribuir o produto.
El documento describe los pasos para crear un juego práctico en Scratch que simula tirar un dado. Los pasos incluyen dibujar un cubo seis veces para representar los lados de un dado, agregar un botón llamado "tirar" y programar el movimiento para simular el lanzamiento del dado.
O documento apresenta as fórmulas para calcular a área de quadrados, retângulos e paralelogramos. Fornece exemplos de como calcular a área de um retângulo de 10cm de base por 15cm de altura, resultando em 150cm2. Também define que um paralelogramo tem os lados opostos paralelos e a fórmula para calcular sua área é a mesma que a de um retângulo.
Fgxpress brasil loucura!!! novo plano explosivo de carreira! (brasil - port...Raoni Claro
O documento promove um produto chamado PowerStrips para alívio de dor que é natural e seguro. Ele descreve os benefícios do produto para a saúde e beleza e histórias de clientes. Também detalha o programa de marketing de rede da empresa para vender e distribuir o produto.
O documento discute os conceitos básicos de ângulo em geometria, definindo um ângulo como a porção do plano entre duas semirretas com um vértice em comum, e definindo o lado de um ângulo como as semirretas que o formam e o vértice como o ponto de origem das semirretas.
O documento define polígonos como superfícies planas limitadas por linhas poligonais fechadas, onde o número de lados de um polígono coincide com o número de ângulos. Ele lista e nomeia os principais polígonos de acordo com seu número de lados, incluindo triângulos, quadriláteros, pentágonos, hexágonos, heptágonos, octógonos e eneágonos.
O documento discute conceitos geométricos básicos como ponto, reta e plano. Ele define cada um destes conceitos e fornece exemplos de como eles são representados. O documento também menciona retas paralelas e retas concorrentes como exemplos adicionais.
O documento discute unidades de medidas geométricas como perímetro, área e volume. Ele fornece as definições de cada um e lista as unidades de medida correspondentes em uma tabela, incluindo metro, centímetro e milímetro. O documento também lista conversões como 1 litro = 1 dm3 = 1 kg.
Mango allows users to declaratively define and query Apache CouchDB indexes. Mango leverages Lucene not only to perform text search, but also to enable ad-hoc querying capabilities.
JDO 2019: Serverless Hype Driven Development - Grzegorz Piotrowski PROIDEA
Pojęcie "serverless" słychać już od jakiegoś czasu w programistycznym świecie, a hype wokół niego zdaje się tylko rosnąć. Czy jest to kolejny krok w kierunku ewolucji tworzenia oprogramowania czy tylko ciekawostka, która wkrótce przeminie? Jak wygląda codzienna praca w takim podejściu oraz na co należy zwracać szczególną uwagę? No i najważniejsze - do czego można tak naprawdę stosować serverless oraz jak nie dać się zgubnie ponieść fali tego rosnącego trendu? Na te oraz inne pytania odpowiemy sobie w trakcie niniejszej prelekcji - jesteście gotowi?
From Promises & async/await to Async Algebraic Data TypesRobert Pearce
Small presentation for Charleston.js on the Async algebraic data type in JavaScript (demo omitted) as an alternative way to work with asynchronous control structures than Promises & async/await.
Ring is a Clojure library that provides a common abstraction for building web applications in Clojure. It defines a handler function interface that takes a request map and returns a response map, providing a unified API. Ring serves as the base for other web frameworks in Clojure and is inspired by Python's WSGI and Ruby's Rack. The document includes code examples of creating a basic Ring application and wrapping handler functions.
Digital RSE: automated code quality checks - RSE group meetingHenry Schreiner
Given at a local RSE group meeting. Covers code quality practices, focusing on Python but over multiple languages, with useful tools highlighted throughout.
This document appears to be notes from a presentation on functional programming in JavaScript. It introduces the presenter, Robert, and outlines that the presentation will cover currying, composition, eta conversion, and using the Ramda library to simplify JavaScript code into a more point-free style. Point-free style is explained as defining functions without explicitly naming the arguments they operate on, instead composing other functions. An example is provided of transforming a function that finds the best films into a more simplified, point-free implementation using techniques like currying, composition, and Ramda functions.
Some Functional Programming in JavaScript and Ramda.jsRobert Pearce
A small take on functional programming in JavaScript (JS) with Ramda.js. In the demos, we refactor updating a deeply nested object using the Ramda REPL and refactor analysis of UK rainfall data with Ramda and TypeScript.
Level Up Your Git and GitHub Experience by Jordan McCullough and Brent BeerZeroTurnaround
The document summarizes tips and techniques for maximizing use of GitHub, including linking to issues by number in text or commits, auto-updating issues with commit references, resolving auto-merge conflicts either on GitHub or via the command line, keeping forked repos up to date, retrieving pull requests and prototype branches via the command line, and using rebase interactively and cherry-pick to integrate selected commits or work from other branches. The document also provides shortcuts for searching, blaming, and cleaning up local and remote branches.
Social phenomena is coming. We have lot’s of social applications that we are using every day, let’s say Facebook, twitter, Instagram. Lot’s of such kind apps based on social graph and graph theory. I would like to share my knowledge and expertise about how to work with graphs and build large social graph as engine for Social network using python and Graph databases. We'll compare SQL and NoSQL approaches for friends relationships.
Building Event-Based Systems for the Real-Time Webpauldix
- Event-based systems use events like data updates to trigger actions in real-time, while batch systems periodically process accumulated data
- Building distributed, event-based systems allows applications to scale horizontally by decomposing them into loosely coupled components that communicate asynchronously through messaging
- The publish-subscribe pattern is well-suited for event-based architectures, with systems like RabbitMQ providing message brokers that route events from publishers to subscriber queues based on topics
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)Sho Yoshida
This document discusses using continuous integration (CI) with Pharo Smalltalk projects. It describes using GitHub to host Smalltalk code and configure Baselines to specify dependencies. It also covers integrating Pharo builds with CI services like Travis CI and Jenkins by running scripts before and after builds. Finally, it mentions the SmalltalkCI and SORABITO tools for implementing CI workflows for Smalltalk projects hosted on services like GitHub and SmalltalkHub.
HOW 2019: A complete reproducible ROOT environment in under 5 minutesHenry Schreiner
The document discusses setting up a ROOT environment using Conda in under 5 minutes. It describes downloading and installing Miniconda and then using Conda commands to create a new environment and install ROOT and its dependencies from the conda-forge channel. The ROOT package provides full ROOT functionality, including compilation and graphics, and supports Linux, macOS, and multiple Python versions.
Fgxpress brasil loucura!!! novo plano explosivo de carreira! (brasil - port...Raoni Claro
O documento promove um produto chamado PowerStrips para alívio de dor que é natural e seguro. Ele descreve os benefícios do produto para a saúde e beleza e histórias de clientes. Também apresenta o modelo de negócios de marketing multinível para vender e distribuir o produto.
El documento describe los pasos para crear un juego práctico en Scratch que simula tirar un dado. Los pasos incluyen dibujar un cubo seis veces para representar los lados de un dado, agregar un botón llamado "tirar" y programar el movimiento para simular el lanzamiento del dado.
O documento apresenta as fórmulas para calcular a área de quadrados, retângulos e paralelogramos. Fornece exemplos de como calcular a área de um retângulo de 10cm de base por 15cm de altura, resultando em 150cm2. Também define que um paralelogramo tem os lados opostos paralelos e a fórmula para calcular sua área é a mesma que a de um retângulo.
Fgxpress brasil loucura!!! novo plano explosivo de carreira! (brasil - port...Raoni Claro
O documento promove um produto chamado PowerStrips para alívio de dor que é natural e seguro. Ele descreve os benefícios do produto para a saúde e beleza e histórias de clientes. Também detalha o programa de marketing de rede da empresa para vender e distribuir o produto.
O documento discute os conceitos básicos de ângulo em geometria, definindo um ângulo como a porção do plano entre duas semirretas com um vértice em comum, e definindo o lado de um ângulo como as semirretas que o formam e o vértice como o ponto de origem das semirretas.
O documento define polígonos como superfícies planas limitadas por linhas poligonais fechadas, onde o número de lados de um polígono coincide com o número de ângulos. Ele lista e nomeia os principais polígonos de acordo com seu número de lados, incluindo triângulos, quadriláteros, pentágonos, hexágonos, heptágonos, octógonos e eneágonos.
O documento discute conceitos geométricos básicos como ponto, reta e plano. Ele define cada um destes conceitos e fornece exemplos de como eles são representados. O documento também menciona retas paralelas e retas concorrentes como exemplos adicionais.
O documento discute unidades de medidas geométricas como perímetro, área e volume. Ele fornece as definições de cada um e lista as unidades de medida correspondentes em uma tabela, incluindo metro, centímetro e milímetro. O documento também lista conversões como 1 litro = 1 dm3 = 1 kg.
O documento apresenta conceitos básicos de geometria como semirreta, segmento de reta, linha aberta e fechada. Explica que uma semirreta é parte de uma reta separada por um ponto e um segmento de reta é a parte entre dois pontos de uma reta. Também diferencia linhas abertas e fechadas, sendo linhas fechadas aquelas que formam figuras com interior definido.
O documento define e descreve diferentes tipos de ângulos como agudos, retos, obtusos e rasos. Também explica ângulos congruentes, complementares e suplementares, definindo-os como ângulos que possuem a mesma medida, cuja soma das medidas é 90° ou 180° respectivamente.
Este documento presenta 10 preguntas sobre diferentes tipos de mercados. Las preguntas cubren temas como mercados constituidos por demandantes, mercados que ofrecen bienes intangibles o servicios, mercados dedicados a explotar recursos naturales, mercados de fuerza de trabajo, mercados nacionales, regionales o locales, mercados de beneficios mutuos entre empresas y clientes, mercados de bienes inmuebles, mercados monopólicos u oligopólicos, mercados de productos y bienes tangibles, y mercados donde las empresas ofrecen bienes simil
Las primeras versiones de Windows (1 y 2) funcionaban como complementos gráficos de DOS y no tuvieron mucho éxito comercial. Windows 3 introdujo mejoras significativas y superó en ventas al sistema operativo de IBM. Windows 95 popularizó el menú Inicio y la barra de tareas e impulsó la adopción de Windows. Windows 8 eliminó el menú Inicio tradicional y modificó la interfaz para adaptarse mejor a pantallas táctiles.
El documento introduce conceptos básicos de informática, incluyendo el tratamiento de la información a través de las fases de entrada, proceso y salida, la representación de datos en sistemas binarios, componentes de hardware como la CPU y memoria, y periféricos de entrada/salida. También describe tipos de conexiones, software y redes informáticas.
Gabriel García Márquez dedicó gran parte de su vida al periodismo mientras construía su carrera literaria. Aunque nunca publicó críticas musicales explícitas, enmascaraba sus juicios sobre música deslizándolos sutilmente en sus obras literarias, mostrando así su afición por la música, sobre la cual adquirió amplios conocimientos.
This document contains data on the flow rate and pressure for different orifice sizes of edge cutter nozzles. It lists orifice diameters from 0.4mm to 1.2mm and measures flow rate in liters per minute and pressure in megapascals at increments from 0.5 to 5.0. It also provides technical details on the dimensions and materials of the nozzle components as well as their applications in paper trimming, timber cutting, and precise component cleaning.
Las sociedades y los espacios geográficos finalllllltefigonzalez87
Este documento presenta información sobre el contenido y objetivos de una unidad de estudio sobre sociedades y espacios geográficos para el 4to grado. El documento explica que la unidad se enfocará en profundizar la comprensión de los estudiantes sobre los espacios urbanos y rurales, analizando la organización, usos del suelo, funciones y actividades en las ciudades. Los objetivos incluyen conocer diferentes espacios rurales y urbanos en Argentina, analizar la estructura interna de las ciudades, y abordar los conceptos
Open Source Tools for Leveling Up Operations FOSSET 2014Mandi Walls
This document discusses using open source tools to improve operations workflows and processes. It introduces various tools including Git for version control, packaging tools like FPM, and testing tools like Nagios plugins. The document advocates applying principles from development like testing, version control, and automation to make operations processes more reliable, transparent and reduce risk.
Updated non-lab version of Level Up. Delivered at LOPSA-East, May 3, 2014.Mandi Walls
The document discusses operational practices and tools for improving operations work. It recommends adopting practices from development such as version control, code review, testing, and metrics collection. Specific tools mentioned include using Git for version control, the fpm tool for packaging files, and Nagios plugins for basic testing of systems like DNS. The goal is to make operational work more transparent, reliable, and efficient through engineering practices.
In this slides, the author demonstrates many software development practices in Python. Including: runtime environment setup, source code management, version control, unit test, coding convention, code duplication, documentation and automation.
This document discusses using Puppet and related tools to automate the configuration and provisioning of development environments and servers. It covers using Vagrant and Puppet to set up local virtual machine environments, managing configurations with Puppet and Hiera, structuring code according to roles and profiles, integrating with version control and the Puppet Forge, and monitoring changes with tools like the Puppet Dashboard and MCollective. The document provides an overview of best practices and strategies for implementing infrastructure as code with Puppet.
GitHub investierte sehr stark im Bereich Security und hat als weltweit grösste Open-Source-Plattform auch die ideale Basis, um Abhängigkeiten und Schwachstellen viel genutzter Bibliotheken zu analysieren und zu notifizieren. In öffentlichen wie auch in privaten Repositories in GitHub Enterprise Cloud und GitHub Enterprise Server stehen einem unter dem Betriff "GitHub Advanced Security" eine Vielzahl von Sicherheitsfunktionen zur Verfügung.
Dieser Vortrag zeigt die Funktionsweise der Features Code Scanning, Secret Scanning und Dependency Review auf. GitHub Actions und Pull Requests runden die Werkzeugkiste für einen erfolgreichen DevSecOps-Prozess ab.
The document discusses various approaches to integrating native code with Ruby:
Native extensions allow Ruby code to directly call C/C++ functions for improved performance or to interface with existing libraries. This can be done through writing C extensions, using the Foreign Function Interface (FFI) gem, or the Simplified Wrapper and Interface Generator (SWIG). FFI provides an easy Ruby DSL for interfacing with native code while handling data conversions. SWIG can generate bindings to interface Ruby and other languages with C/C++ code. Memory management must still be considered when using native extensions.
The document discusses lessons learned from using the Play Framework. It covers that Play is a cool web framework for building applications in Java or Scala. It has a simple yet powerful HTTP API and high-performance scalable architecture. Other topics covered include embracing a stateless architecture, writing clean Scala code, developing with code reloading and error messages, and deploying applications to production environments in the cloud.
(CMP310) Data Processing Pipelines Using Containers & Spot InstancesAmazon Web Services
It's difficult to find off-the-shelf, open-source solutions for creating lean, simple, and language-agnostic data-processing pipelines for machine learning (ML). This session shows you how to use Amazon S3, Docker, Amazon EC2, Auto Scaling, and a number of open source libraries as cornerstones to build one. We also share our experience creating elastically scalable and robust ML infrastructure leveraging the Spot instance market.
Steamlining your puppet development workflowTomas Doran
The document discusses ways to streamline a Puppet development workflow including using revision control, running Puppet in noop or automatic mode, moving changes slowly through testing and using branches, reporting on changes, and implementing testing strategies like unit testing with rspec-puppet and integration testing with serverspec. It also recommends tools like Foreman, Norman, Puppetfile, and Jenkins to improve testing and deployment.
Puppet Camp New York 2014: Streamlining Puppet Development Workflow Puppet
The document discusses ways to streamline a Puppet development workflow including using revision control, running Puppet in noop or automatic mode, moving changes slowly through testing and using branches, reporting on changes, and implementing testing strategies like unit testing with rspec-puppet and integration testing with serverspec. It also recommends tools like Foreman, Norman, Puppetfile, and Jenkins to improve testing and deployment.
Accessing File-Specific Attributes on Steroids - EuroPython 2008Dinu Gherman
This document describes fileinfo, a Python tool for investigating and summarizing file attributes from the command line. It provides concise tabular output of attributes for multiple files. Fileinfo allows users to get a quick overview of file metadata, compare attributes between files, and identify groups of files. It supports plugins to extract attributes from different file types like PDFs, images, and Python source files. The document discusses Spotlight, Mac OS X's file search technology, as potential inspiration and compares fileinfo to tools like Spotlight and iTunes.
Introduction to GitHub Actions - How to easily automate and integrate with Gi...All Things Open
Presented by: Brent Laster
Presented at the All Things Open 2021
Raleigh, NC, USA
Raleigh Convention Center
Abstract: In this talk, open-source author, trainer and DevOps director Brent Laster will provide a solid introduction to GitHub Actions. You’ll learn about the core parts and pieces that make up an action, as well as the types of functionality and features they provide. You’ll also see how to combine them in simple workflows to accomplish basic tasks as well as how they can fit into a CI/CD environment.
I don't know what I'm Doing: A newbie guide for Golang for DevOpsPeter Souter
This document is a summary of a presentation on getting started with the Go programming language for DevOps. It introduces Go and explains why it became popular for infrastructure tools like Docker and Kubernetes. It covers basic Go concepts like variables, types, errors, and concurrency primitives. It also provides examples of building simple Go applications and contributing to open source Go codebases. The presentation aims to encourage attendees who are new to Go to start using the language and contributing to DevOps tools written in Go.
This document provides an introduction to GitHub Actions presented by Brent Laster. It discusses prerequisites for the workshop, an overview of Brent Laster's background and publications, and the agenda for the introduction to GitHub Actions workshop. The agenda covers topics like what GitHub Actions are, how they work through events, workflows, jobs, steps and runners, using public actions, custom actions, and more.
PyCon AU 2012 - Debugging Live Python Web ApplicationsGraham Dumpleton
Monitoring tools record the result of what happened to your web application when a problem arises, but for some classes of problems, monitoring systems are only a starting point. Sometimes it is necessary to take more intrusive steps to plan for the unexpected by embedding mechanisms that will allow you to interact with a live deployed web application and extract even more detailed information.
Walter Heck, founder of OlinData, presented a step-by-step guide on how to set up a proper puppet repository, complete with the brand new PuppetDB, exported resources and usage of open source modules.
Walter Heck, founder of OlinData, presented a step-by-step guide on how to set up a proper puppet repository, complete with the brand new PuppetDB, exported resources and usage of open source modules.
Puppet getting started will show the different components used in puppet environments, starting with facter and puppet to different webinterfaces like puppet enterprise console and foreman. It will also cover an exemplary design for scaling the puppet master and for development livecycle of modules. Furthermore an example for design of modules will be given.
This document discusses reproducible research and provides guidance on how to conduct analysis in a reproducible manner. Reproducible research means distributing all data, code, and tools required to reproduce published results. Key aspects include automating analysis, using version control like Git, and producing human and machine readable reports in R Markdown. The presenter provides examples of documenting analysis in R and using R Markdown documents. Researchers are encouraged to think about reproducibility in their entire workflow and use checklists to ensure all elements like data, code, software details are preserved.
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
High performance Serverless Java on AWS- GoTo Amsterdam 2024Vadym Kazulkin
Java is for many years one of the most popular programming languages, but it used to have hard times in the Serverless community. Java is known for its high cold start times and high memory footprint, comparing to other programming languages like Node.js and Python. In this talk I'll look at the general best practices and techniques we can use to decrease memory consumption, cold start times for Java Serverless development on AWS including GraalVM (Native Image) and AWS own offering SnapStart based on Firecracker microVM snapshot and restore and CRaC (Coordinated Restore at Checkpoint) runtime hooks. I'll also provide a lot of benchmarking on Lambda functions trying out various deployment package sizes, Lambda memory settings, Java compilation options and HTTP (a)synchronous clients and measure their impact on cold and warm start times.
The Microsoft 365 Migration Tutorial For Beginner.pptxoperationspcvita
This presentation will help you understand the power of Microsoft 365. However, we have mentioned every productivity app included in Office 365. Additionally, we have suggested the migration situation related to Office 365 and how we can help you.
You can also read: https://www.systoolsgroup.com/updates/office-365-tenant-to-tenant-migration-step-by-step-complete-guide/
Must Know Postgres Extension for DBA and Developer during MigrationMydbops
Mydbops Opensource Database Meetup 16
Topic: Must-Know PostgreSQL Extensions for Developers and DBAs During Migration
Speaker: Deepak Mahto, Founder of DataCloudGaze Consulting
Date & Time: 8th June | 10 AM - 1 PM IST
Venue: Bangalore International Centre, Bangalore
Abstract: Discover how PostgreSQL extensions can be your secret weapon! This talk explores how key extensions enhance database capabilities and streamline the migration process for users moving from other relational databases like Oracle.
Key Takeaways:
* Learn about crucial extensions like oracle_fdw, pgtt, and pg_audit that ease migration complexities.
* Gain valuable strategies for implementing these extensions in PostgreSQL to achieve license freedom.
* Discover how these key extensions can empower both developers and DBAs during the migration process.
* Don't miss this chance to gain practical knowledge from an industry expert and stay updated on the latest open-source database trends.
Mydbops Managed Services specializes in taking the pain out of database management while optimizing performance. Since 2015, we have been providing top-notch support and assistance for the top three open-source databases: MySQL, MongoDB, and PostgreSQL.
Our team offers a wide range of services, including assistance, support, consulting, 24/7 operations, and expertise in all relevant technologies. We help organizations improve their database's performance, scalability, efficiency, and availability.
Contact us: info@mydbops.com
Visit: https://www.mydbops.com/
Follow us on LinkedIn: https://in.linkedin.com/company/mydbops
For more details and updates, please follow up the below links.
Meetup Page : https://www.meetup.com/mydbops-databa...
Twitter: https://twitter.com/mydbopsofficial
Blogs: https://www.mydbops.com/blog/
Facebook(Meta): https://www.facebook.com/mydbops/
Session 1 - Intro to Robotic Process Automation.pdfUiPathCommunity
👉 Check out our full 'Africa Series - Automation Student Developers (EN)' page to register for the full program:
https://bit.ly/Automation_Student_Kickstart
In this session, we shall introduce you to the world of automation, the UiPath Platform, and guide you on how to install and setup UiPath Studio on your Windows PC.
📕 Detailed agenda:
What is RPA? Benefits of RPA?
RPA Applications
The UiPath End-to-End Automation Platform
UiPath Studio CE Installation and Setup
💻 Extra training through UiPath Academy:
Introduction to Automation
UiPath Business Automation Platform
Explore automation development with UiPath Studio
👉 Register here for our upcoming Session 2 on June 20: Introduction to UiPath Studio Fundamentals: https://community.uipath.com/events/details/uipath-lagos-presents-session-2-introduction-to-uipath-studio-fundamentals/
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...Fwdays
Direct losses from downtime in 1 minute = $5-$10 thousand dollars. Reputation is priceless.
As part of the talk, we will consider the architectural strategies necessary for the development of highly loaded fintech solutions. We will focus on using queues and streaming to efficiently work and manage large amounts of data in real-time and to minimize latency.
We will focus special attention on the architectural patterns used in the design of the fintech system, microservices and event-driven architecture, which ensure scalability, fault tolerance, and consistency of the entire system.
"Choosing proper type of scaling", Olena SyrotaFwdays
Imagine an IoT processing system that is already quite mature and production-ready and for which client coverage is growing and scaling and performance aspects are life and death questions. The system has Redis, MongoDB, and stream processing based on ksqldb. In this talk, firstly, we will analyze scaling approaches and then select the proper ones for our system.
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor IvaniukFwdays
At this talk we will discuss DDoS protection tools and best practices, discuss network architectures and what AWS has to offer. Also, we will look into one of the largest DDoS attacks on Ukrainian infrastructure that happened in February 2022. We'll see, what techniques helped to keep the web resources available for Ukrainians and how AWS improved DDoS protection for all customers based on Ukraine experience
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsDianaGray10
Join us to learn how UiPath Apps can directly and easily interact with prebuilt connectors via Integration Service--including Salesforce, ServiceNow, Open GenAI, and more.
The best part is you can achieve this without building a custom workflow! Say goodbye to the hassle of using separate automations to call APIs. By seamlessly integrating within App Studio, you can now easily streamline your workflow, while gaining direct access to our Connector Catalog of popular applications.
We’ll discuss and demo the benefits of UiPath Apps and connectors including:
Creating a compelling user experience for any software, without the limitations of APIs.
Accelerating the app creation process, saving time and effort
Enjoying high-performance CRUD (create, read, update, delete) operations, for
seamless data management.
Speakers:
Russell Alfeche, Technology Leader, RPA at qBotic and UiPath MVP
Charlie Greenberg, host
AppSec PNW: Android and iOS Application Security with MobSFAjin Abraham
Mobile Security Framework - MobSF is a free and open source automated mobile application security testing environment designed to help security engineers, researchers, developers, and penetration testers to identify security vulnerabilities, malicious behaviours and privacy concerns in mobile applications using static and dynamic analysis. It supports all the popular mobile application binaries and source code formats built for Android and iOS devices. In addition to automated security assessment, it also offers an interactive testing environment to build and execute scenario based test/fuzz cases against the application.
This talk covers:
Using MobSF for static analysis of mobile applications.
Interactive dynamic security assessment of Android and iOS applications.
Solving Mobile app CTF challenges.
Reverse engineering and runtime analysis of Mobile malware.
How to shift left and integrate MobSF/mobsfscan SAST and DAST in your build pipeline.
This talk will cover ScyllaDB Architecture from the cluster-level view and zoom in on data distribution and internal node architecture. In the process, we will learn the secret sauce used to get ScyllaDB's high availability and superior performance. We will also touch on the upcoming changes to ScyllaDB architecture, moving to strongly consistent metadata and tablets.
"Scaling RAG Applications to serve millions of users", Kevin GoedeckeFwdays
How we managed to grow and scale a RAG application from zero to thousands of users in 7 months. Lessons from technical challenges around managing high load for LLMs, RAGs and Vector databases.
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...DanBrown980551
This LF Energy webinar took place June 20, 2024. It featured:
-Alex Thornton, LF Energy
-Hallie Cramer, Google
-Daniel Roesler, UtilityAPI
-Henry Richardson, WattTime
In response to the urgency and scale required to effectively address climate change, open source solutions offer significant potential for driving innovation and progress. Currently, there is a growing demand for standardization and interoperability in energy data and modeling. Open source standards and specifications within the energy sector can also alleviate challenges associated with data fragmentation, transparency, and accessibility. At the same time, it is crucial to consider privacy and security concerns throughout the development of open source platforms.
This webinar will delve into the motivations behind establishing LF Energy’s Carbon Data Specification Consortium. It will provide an overview of the draft specifications and the ongoing progress made by the respective working groups.
Three primary specifications will be discussed:
-Discovery and client registration, emphasizing transparent processes and secure and private access
-Customer data, centering around customer tariffs, bills, energy usage, and full consumption disclosure
-Power systems data, focusing on grid data, inclusive of transmission and distribution networks, generation, intergrid power flows, and market settlement data
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...Jason Yip
The typical problem in product engineering is not bad strategy, so much as “no strategy”. This leads to confusion, lack of motivation, and incoherent action. The next time you look for a strategy and find an empty space, instead of waiting for it to be filled, I will show you how to fill it in yourself. If you’re wrong, it forces a correction. If you’re right, it helps create focus. I’ll share how I’ve approached this in the past, both what works and lessons for what didn’t work so well.
6. Smart Tests
• Too many details
• Data
• Too much software
References: http://bit.ly/dumber_tests_pytx2014
7. Smart Tests
Too Many Details
import collections
entry = collections.namedtuple('entry', ['name', 'value', 'units'])
def lines_to_tuples(filename):
tuples = []
with open(filename, 'r') as file_obj:
for line in file_obj:
fields = line.split()
tuples.append(entry(*fields))
return tuples
References: http://bit.ly/dumber_tests_pytx2014
8. Smart Tests
Too Many Details
def test_lines_to_tuples_1():
# Test.txt contains:
# Height 60 in
# Length 30 in
filename = 'test.txt'
test_tuples = lines_to_tuples(filename)
with open(filename, 'r') as file_obj:
for line, test_tuple in zip(file_obj, test_tuples):
fields = line.split()
assert entry(*fields) == test_tuple
References: http://bit.ly/dumber_tests_pytx2014
9. Smart Tests
Too Many Details
"We've fallen into a trap of testing that the code does what the
code says it does, rather than testing functional behavior we care
about."
-- Daniel Pope, "Every mock.patch is a little smell"
References: http://bit.ly/dumber_tests_pytx2014
10. Smart Tests
Data
Your data is clean, users' data is gold standard
References: http://bit.ly/dumber_tests_pytx2014
13. Smart Tests
Too Much Software
• Too easy to change
• Too much cognitive overhead
References: http://bit.ly/dumber_tests_pytx2014
14. import unittest
class TestSequenceFunctions(unittest.TestCase):
def setUp(self):
self.seq = range(10)
def test_shuffle(self):
# make sure the shuffled sequence does not lose any elements
random.shuffle(self.seq)
self.seq.sort()
self.assertEqual(self.seq, range(10))
# should raise an exception for an immutable sequence
self.assertRaises(TypeError, random.shuffle, (1,2,3))
def test_sample(self):
with self.assertRaises(ValueError):
random.sample(self.seq, 20)
for element in random.sample(self.seq, 5):
self.assertTrue(element in self.seq)
References: http://bit.ly/dumber_tests_pytx2014
25. Dumb Tests
Goals, not implementation
Embrace the experience of other people, people not schooled
in the details of your implementation, you can learn how to
make your work easier to absorb, and therefore more effective
at what it's designed to do.
-- Dave Winer, Early author of RSS software
References: http://bit.ly/dumber_tests_pytx2014
29. Conclusion
1. Uses real world data
2. Focuses on goals not implementation details
3. Lowers cognitive oveheard with brave, simple code
References: http://bit.ly/dumber_tests_pytx2014