This presentation explores the motivations for and benefits from organizing private code into CPAN-style distributions. It was first given to the San Francisco Perl Mongers in February 2010.
Using routing domains / routing tables in a production network by Peter Hesslereurobsdcon
Abstract
OpenBSD has supported routing domains (aka VRF-lite) since 4.6, released in 2009. In 2014, OpenBSD 5.5 gained support for IPv6 routing domains.
At it's most basic, routing domains are simply multiple routing tables. While seeming like a simple task, there are many gotcha's involved in using routing domains in a production network. This talk will give a brief history, as well as some scenarios for why and how you would use routing domains while describing several of the issues that came up during the initial deployments.
Speaker bio
Peter Hessler is 33 and has been a developer with the OpenBSD project since 2008.
Originally from San Francisco he has an interest in how things work. An OpenBSD user since 2000, he moved to Germany in 2008 and then to Switzerland in 2013. In his spare time, Peter enjoys drinking beer and bad puns.
The PyConTW (http://tw.pycon.org) organizer wishes to improve the quality and quantity of the programming cummunities in Taiwan. Though Python is their core tool and methodology, they know it's worth to learn and communicate with wide-ranging communities. Understanding cultures and ecosystem of a language takes me about three to six months. This six-hour course wraps up what I - an experienced Java developer - have learned from Python ecosystem and the agenda of the past PyConTW.
你可以在以下鏈結找到中文內容:
http://www.codedata.com.tw/python/python-tutorial-the-1st-class-1-preface
This document discusses Scribe and Thrift, log aggregation systems developed by Facebook. It provides an overview of Scribe, which is used to collect log data from different servers and applications. Scribe uses Thrift for its RPC communication and does not rely on a central server - if the central server is unavailable, log data will be stored locally and synced once the server is available again. The document also discusses installing and configuring Scribe and Thrift on a Linux system and implementing a simple logging example.
This document provides instructions for setting up a workspace to build embedded Linux for the Raspberry Pi 3 board. It describes downloading source code and packages, configuring the build environment, building a basic Linux image, writing it to an SD card, and connecting to the board via serial terminal. Key steps include using Git to obtain source, modifying configuration files, issuing bitbake commands to compile the image, and using minicom to interact with the booted board over USB serial.
PE Packers Used in Malicious Software - Part 1amiable_indian
The document discusses PE packers used in malicious software. It provides a refresher on the PE file format and import address tables. It defines what a PE packer is, how they work to hide malicious payloads, and techniques used to detect if a file has been packed, such as small import tables, missing/corrupted string tables, unusually small code size, and non-standard section names. Detection of packers involves manual analysis before using tools to identify the specific packer.
This document summarizes ScavengerEXA, an open source program that aims to fight spam by capturing mail conversations at the network level and analyzing them to determine if they are spam. It dispatches captured conversations to policy servers which make a determination and may trigger actions like blacklisting or filtering spamming IP addresses. The goal is to shift the fight against spam back to identifying and blocking spammers at the source rather than just filtering messages at the receiving end. ScavengerEXA is built on Python and Twisted and its components include capture tools, a dispatch server, policy servers, and action servers to blacklist or filter spamming IPs.
This document discusses setting up a network bridge without Docker. It provides a Vagrantfile to configure a virtual machine environment with Ubuntu 18.04, along with tools like Go and Docker installed. Instructions are given to create a bridge between two network namespaces called RED and BLUE using IP addresses in the 11.11.11.0/24 range. Tests show that hosts can ping each other within this network but not across the real interface and IP range of the host machine. Additional routing and IP configuration is needed to allow outside communication.
PE Packers Used in Malicious Software - Part 2amiable_indian
The document discusses techniques for unpacking packed executable (PE) files. It begins by explaining that packed executables must eventually be unpacked in memory to be executed. It then outlines the objectives and steps to manually unpack a PE file, including locating the original entry point, dumping memory to disk, modifying the entry point and import address table. It notes that automation is preferable to manual unpacking. The document also discusses how some packers use tricks like structured exception handling and debugger detection to make unpacking more difficult.
Using routing domains / routing tables in a production network by Peter Hesslereurobsdcon
Abstract
OpenBSD has supported routing domains (aka VRF-lite) since 4.6, released in 2009. In 2014, OpenBSD 5.5 gained support for IPv6 routing domains.
At it's most basic, routing domains are simply multiple routing tables. While seeming like a simple task, there are many gotcha's involved in using routing domains in a production network. This talk will give a brief history, as well as some scenarios for why and how you would use routing domains while describing several of the issues that came up during the initial deployments.
Speaker bio
Peter Hessler is 33 and has been a developer with the OpenBSD project since 2008.
Originally from San Francisco he has an interest in how things work. An OpenBSD user since 2000, he moved to Germany in 2008 and then to Switzerland in 2013. In his spare time, Peter enjoys drinking beer and bad puns.
The PyConTW (http://tw.pycon.org) organizer wishes to improve the quality and quantity of the programming cummunities in Taiwan. Though Python is their core tool and methodology, they know it's worth to learn and communicate with wide-ranging communities. Understanding cultures and ecosystem of a language takes me about three to six months. This six-hour course wraps up what I - an experienced Java developer - have learned from Python ecosystem and the agenda of the past PyConTW.
你可以在以下鏈結找到中文內容:
http://www.codedata.com.tw/python/python-tutorial-the-1st-class-1-preface
This document discusses Scribe and Thrift, log aggregation systems developed by Facebook. It provides an overview of Scribe, which is used to collect log data from different servers and applications. Scribe uses Thrift for its RPC communication and does not rely on a central server - if the central server is unavailable, log data will be stored locally and synced once the server is available again. The document also discusses installing and configuring Scribe and Thrift on a Linux system and implementing a simple logging example.
This document provides instructions for setting up a workspace to build embedded Linux for the Raspberry Pi 3 board. It describes downloading source code and packages, configuring the build environment, building a basic Linux image, writing it to an SD card, and connecting to the board via serial terminal. Key steps include using Git to obtain source, modifying configuration files, issuing bitbake commands to compile the image, and using minicom to interact with the booted board over USB serial.
PE Packers Used in Malicious Software - Part 1amiable_indian
The document discusses PE packers used in malicious software. It provides a refresher on the PE file format and import address tables. It defines what a PE packer is, how they work to hide malicious payloads, and techniques used to detect if a file has been packed, such as small import tables, missing/corrupted string tables, unusually small code size, and non-standard section names. Detection of packers involves manual analysis before using tools to identify the specific packer.
This document summarizes ScavengerEXA, an open source program that aims to fight spam by capturing mail conversations at the network level and analyzing them to determine if they are spam. It dispatches captured conversations to policy servers which make a determination and may trigger actions like blacklisting or filtering spamming IP addresses. The goal is to shift the fight against spam back to identifying and blocking spammers at the source rather than just filtering messages at the receiving end. ScavengerEXA is built on Python and Twisted and its components include capture tools, a dispatch server, policy servers, and action servers to blacklist or filter spamming IPs.
This document discusses setting up a network bridge without Docker. It provides a Vagrantfile to configure a virtual machine environment with Ubuntu 18.04, along with tools like Go and Docker installed. Instructions are given to create a bridge between two network namespaces called RED and BLUE using IP addresses in the 11.11.11.0/24 range. Tests show that hosts can ping each other within this network but not across the real interface and IP range of the host machine. Additional routing and IP configuration is needed to allow outside communication.
PE Packers Used in Malicious Software - Part 2amiable_indian
The document discusses techniques for unpacking packed executable (PE) files. It begins by explaining that packed executables must eventually be unpacked in memory to be executed. It then outlines the objectives and steps to manually unpack a PE file, including locating the original entry point, dumping memory to disk, modifying the entry point and import address table. It notes that automation is preferable to manual unpacking. The document also discusses how some packers use tricks like structured exception handling and debugger detection to make unpacking more difficult.
Deploying and maintaining your software with RPM/APTJoshua Thijssen
The document describes a conference about deploying and maintaining software with RPM and APT package managers. The conference will take place on April 16-17, 2011 in Antwerp, Belgium and the URL http://joind.in/3315 provides additional information about the event.
aptly is a swiss army knife for Debian repository management: it allows to mirror remote repositories, take snapshots, pull new versions of packages along with dependencies, publish snapshots.
http://www.aptly.info/
Apache Solr Configuration with Drupal 7.x
Apache Solr help implementing fast search in large database system in Drupal.
There are many configuration parameter that needs to be consider to deliver a stable and fast system build using Drupal and using Apache Solr for search capability.
Make container without_docker_6-overlay-network_1 Sam Kim
분산환경에서 컨테이너 간의 통신은 어떻게 이루어 지는 것일까요? 3,4편에서는 호스트 안에 가상네트워크를 만들어보았습니다. 6편에서는 이를 바탕으로 분산환경에서 호스트 간에 가상 네트워크로 통신이 가능하도록 만들어 봅니다. 이 방법은 실제 쿠버네티스 flannel 등의 CNI에서 사용하고 있는 vxlan 기반의 오버레이 네트워크 구성을 다룹니다.
Tonehammer Requiem Professional [KONTAKT] .rarDeborahPadilla1
This document discusses the Tonehammer Requiem Professional virtual choir library for Kontakt. It includes 20 instrument patches, over 2 GB of samples in Kontakt format. The full library requires the paid version of Kontakt while a lighter version called Requiem Light works with the free Kontakt Player. Torrent links and file sizes for both the sample files and installed library are provided.
Linux internet server security and configuration tutorialannik147
The document provides steps to secure a web server, including:
1. Reducing exposed network services by commenting out unused services in configuration files like /etc/initd.conf and restarting daemons;
2. Configuring firewall rules using iptables or ipchains to block unnecessary ports;
3. Removing unneeded users and network services from startup.
This document provides step-by-step instructions for configuring a mail server using SquirrelMail on a Linux system. It describes installing and configuring the required packages - Postfix as the SMTP server, Apache as the web server, BIND as the DNS server, and Dovecot as the IMAP/POP3 server. It also covers basic SquirrelMail configuration using its configuration script and creating a test user to send and receive emails.
This document provides an overview of the Python web framework Flask. It discusses Flask's lightweight and extensible nature. It also covers key Flask concepts like URL routing, parameters, templates, and request handling. Examples are given for basic routing, parameter collection via GET and POST, and rendering templates with dynamic data. The document serves as an introduction to building web applications with the Flask framework in Python.
This document discusses porting Gentoo Linux to DragonFly BSD. It begins by introducing Gentoo and DragonFly BSD. It then discusses the benefits of using Gentoo's Portage package management system compared to traditional ports systems, such as its ability to select package versions, parallel builds, and news notifications. It describes some technical challenges in porting components like the sandbox and OpenRC init system to DragonFly BSD. The document concludes by outlining the steps taken to port Gentoo and its components to DragonFly.
The document discusses the Internet Archive's efforts to make video content more accessible online by supporting open video formats like Ogg Theora. It describes how the Internet Archive converts videos into Ogg Theora format (.ogv files) using FFmpeg and libraries like libtheora to allow playback of videos in browsers like Firefox. It also discusses plans to re-encode a large portion of the Internet Archive's movie collection and make it searchable and embeddable on Wikipedia and other sites using technologies like Metavid.
Device Tree Overlay implementation on AOSP 9.0Cheng Wig
With the popularity of Android phones, along with the success in the consumer field, the industrial Android platform is also becoming more and more popular in Europe.
In this session, the presenter will share his experience of integrating AOSP 9.0 on multiple industrial grade platform with various hardware specifications, as well as demonstrate a real case of using the latest dtbo.img architecture to achieve separating the hardware specifications from the software definitions. With this additional abstract layer, the maintenance costs and upgrade complexity will be dramatically improved while fully matching the security architecture of AOSP.
Walter gives an introduction to compiling PHP from source. Some key points covered include:
- Reasons for compiling PHP yourself include supporting old PHP versions, testing multiple versions, and using proprietary extensions.
- The build process involves running ./configure, make, and make install commands. Various configuration options can be specified.
- Popular PHP extensions like APC, Xdebug, PostgreSQL can be installed via PECL. Extensions are also compiled from source using phpize and make.
- The compiled PHP is typically installed to /usr/local/ and configurations made in the php.ini file.
FreeBSD is an open source Unix-like operating system derived from the Berkeley Software Distribution (BSD), with over 10,000 available packages. It is used widely in enterprise systems, powering many large websites and networks due to its stability, performance, and ability to run Linux applications. FreeBSD has a large developer community contributing to its ongoing development and release of new versions on a regular basis.
The document discusses using netlink and netlink families to enable communication between the kernel and user space processes. Netlink allows a more flexible alternative to ioctl calls by providing a socket-based interface for exchanging information. Various netlink families exist for communicating with different kernel modules, including NETLINK_ROUTE for routing functions. The document then discusses using netlink and the arpd tool to dynamically update ARP and bridge forwarding database tables in response to layer 2 and layer 3 miss events. This allows maintaining overlay networks by handling ARP requests between network namespaces.
Update presented at LINX in November 2013 ( the London Internet Exchange ) regarding ExaBGP, The BGP swiss army knife of networking.
It includes information about the latest developments, and features, including RFC support, for ISP and IXP.
Users of BIRD and Quagga may find some information about features not yet present in other Open Source BGP implementation.
Deploy, Scale and Sleep at Night with JRubyJoe Kutner
1) The document discusses using JRuby to deploy and scale Ruby applications. JRuby runs Ruby code on the Java Virtual Machine (JVM), allowing for features like deployment automation, background jobs, and clustering.
2) It provides examples of using tools like Warbler, Trinidad, and TorqueBox to package and deploy JRuby applications to servers like Tomcat, as well as to PaaS providers. These tools automate deployment and add capabilities like background processing.
3) JRuby and tools like TorqueBox are said to allow applications to scale horizontally by deploying across multiple servers for high availability and load balancing, helping applications "Deploy, Scale and Sleep at Night."
This document provides instructions on installing Linux, including collecting hardware information beforehand, preparing disk partitions, booting from CD-ROM, continuing the installation process by preparing filesystems and installing packages, and basic parts of an installation kit like README files, boot disk images, and the installation CD-ROM. It also covers uninstalling or removing software packages using either the graphical Synaptic tool or command line apt-get commands. Basic Linux commands like mkdir, cd, pwd, rmdir, chown, chmod, ls, and cp are described.
The document discusses various tools that are part of the GNU toolchain used for embedded software development. It provides descriptions of common tools used with the GNU Compiler Collection (GCC) such as ar, autoconf, as, gdb, ld, libtool, make, nm, objcopy, objdump, ranlib, readelf, size, strings and strip. It also covers topics like the preprocessor, compiler options, anonymous unions, arrays of zero length, and using attributes with GCC.
This document provides a quick reference guide for Linux security that includes definitions of common security terms, general security tips, and Linux security resources. It defines terms like buffer overflow, cryptography, denial of service, and port scanning. It offers tips such as using automatic package managers to update software, configuring firewalls and intrusion detection, and enforcing strong password policies. The document also lists various security-related websites, books, and open source tools that can aid in hardening Linux systems.
The document provides an overview of Pinto, a tool for managing dependencies via a CPAN-like repository. Pinto allows users to create custom repositories of Perl modules and distributions, fetch dependencies and their transitive dependencies, inject their own distributions, install and upgrade modules across different "stacks" (named mappings of packages), and pin packages to specific versions. Key features demonstrated include initializing a repository, pulling dependencies, adding a custom distribution, installing modules, upgrading dependencies on a stack, merging stacks, and pinning packages. Pinto aims to provide stability, portability and reproducibility for dependency management.
Deploying and maintaining your software with RPM/APTJoshua Thijssen
The document describes a conference about deploying and maintaining software with RPM and APT package managers. The conference will take place on April 16-17, 2011 in Antwerp, Belgium and the URL http://joind.in/3315 provides additional information about the event.
aptly is a swiss army knife for Debian repository management: it allows to mirror remote repositories, take snapshots, pull new versions of packages along with dependencies, publish snapshots.
http://www.aptly.info/
Apache Solr Configuration with Drupal 7.x
Apache Solr help implementing fast search in large database system in Drupal.
There are many configuration parameter that needs to be consider to deliver a stable and fast system build using Drupal and using Apache Solr for search capability.
Make container without_docker_6-overlay-network_1 Sam Kim
분산환경에서 컨테이너 간의 통신은 어떻게 이루어 지는 것일까요? 3,4편에서는 호스트 안에 가상네트워크를 만들어보았습니다. 6편에서는 이를 바탕으로 분산환경에서 호스트 간에 가상 네트워크로 통신이 가능하도록 만들어 봅니다. 이 방법은 실제 쿠버네티스 flannel 등의 CNI에서 사용하고 있는 vxlan 기반의 오버레이 네트워크 구성을 다룹니다.
Tonehammer Requiem Professional [KONTAKT] .rarDeborahPadilla1
This document discusses the Tonehammer Requiem Professional virtual choir library for Kontakt. It includes 20 instrument patches, over 2 GB of samples in Kontakt format. The full library requires the paid version of Kontakt while a lighter version called Requiem Light works with the free Kontakt Player. Torrent links and file sizes for both the sample files and installed library are provided.
Linux internet server security and configuration tutorialannik147
The document provides steps to secure a web server, including:
1. Reducing exposed network services by commenting out unused services in configuration files like /etc/initd.conf and restarting daemons;
2. Configuring firewall rules using iptables or ipchains to block unnecessary ports;
3. Removing unneeded users and network services from startup.
This document provides step-by-step instructions for configuring a mail server using SquirrelMail on a Linux system. It describes installing and configuring the required packages - Postfix as the SMTP server, Apache as the web server, BIND as the DNS server, and Dovecot as the IMAP/POP3 server. It also covers basic SquirrelMail configuration using its configuration script and creating a test user to send and receive emails.
This document provides an overview of the Python web framework Flask. It discusses Flask's lightweight and extensible nature. It also covers key Flask concepts like URL routing, parameters, templates, and request handling. Examples are given for basic routing, parameter collection via GET and POST, and rendering templates with dynamic data. The document serves as an introduction to building web applications with the Flask framework in Python.
This document discusses porting Gentoo Linux to DragonFly BSD. It begins by introducing Gentoo and DragonFly BSD. It then discusses the benefits of using Gentoo's Portage package management system compared to traditional ports systems, such as its ability to select package versions, parallel builds, and news notifications. It describes some technical challenges in porting components like the sandbox and OpenRC init system to DragonFly BSD. The document concludes by outlining the steps taken to port Gentoo and its components to DragonFly.
The document discusses the Internet Archive's efforts to make video content more accessible online by supporting open video formats like Ogg Theora. It describes how the Internet Archive converts videos into Ogg Theora format (.ogv files) using FFmpeg and libraries like libtheora to allow playback of videos in browsers like Firefox. It also discusses plans to re-encode a large portion of the Internet Archive's movie collection and make it searchable and embeddable on Wikipedia and other sites using technologies like Metavid.
Device Tree Overlay implementation on AOSP 9.0Cheng Wig
With the popularity of Android phones, along with the success in the consumer field, the industrial Android platform is also becoming more and more popular in Europe.
In this session, the presenter will share his experience of integrating AOSP 9.0 on multiple industrial grade platform with various hardware specifications, as well as demonstrate a real case of using the latest dtbo.img architecture to achieve separating the hardware specifications from the software definitions. With this additional abstract layer, the maintenance costs and upgrade complexity will be dramatically improved while fully matching the security architecture of AOSP.
Walter gives an introduction to compiling PHP from source. Some key points covered include:
- Reasons for compiling PHP yourself include supporting old PHP versions, testing multiple versions, and using proprietary extensions.
- The build process involves running ./configure, make, and make install commands. Various configuration options can be specified.
- Popular PHP extensions like APC, Xdebug, PostgreSQL can be installed via PECL. Extensions are also compiled from source using phpize and make.
- The compiled PHP is typically installed to /usr/local/ and configurations made in the php.ini file.
FreeBSD is an open source Unix-like operating system derived from the Berkeley Software Distribution (BSD), with over 10,000 available packages. It is used widely in enterprise systems, powering many large websites and networks due to its stability, performance, and ability to run Linux applications. FreeBSD has a large developer community contributing to its ongoing development and release of new versions on a regular basis.
The document discusses using netlink and netlink families to enable communication between the kernel and user space processes. Netlink allows a more flexible alternative to ioctl calls by providing a socket-based interface for exchanging information. Various netlink families exist for communicating with different kernel modules, including NETLINK_ROUTE for routing functions. The document then discusses using netlink and the arpd tool to dynamically update ARP and bridge forwarding database tables in response to layer 2 and layer 3 miss events. This allows maintaining overlay networks by handling ARP requests between network namespaces.
Update presented at LINX in November 2013 ( the London Internet Exchange ) regarding ExaBGP, The BGP swiss army knife of networking.
It includes information about the latest developments, and features, including RFC support, for ISP and IXP.
Users of BIRD and Quagga may find some information about features not yet present in other Open Source BGP implementation.
Deploy, Scale and Sleep at Night with JRubyJoe Kutner
1) The document discusses using JRuby to deploy and scale Ruby applications. JRuby runs Ruby code on the Java Virtual Machine (JVM), allowing for features like deployment automation, background jobs, and clustering.
2) It provides examples of using tools like Warbler, Trinidad, and TorqueBox to package and deploy JRuby applications to servers like Tomcat, as well as to PaaS providers. These tools automate deployment and add capabilities like background processing.
3) JRuby and tools like TorqueBox are said to allow applications to scale horizontally by deploying across multiple servers for high availability and load balancing, helping applications "Deploy, Scale and Sleep at Night."
This document provides instructions on installing Linux, including collecting hardware information beforehand, preparing disk partitions, booting from CD-ROM, continuing the installation process by preparing filesystems and installing packages, and basic parts of an installation kit like README files, boot disk images, and the installation CD-ROM. It also covers uninstalling or removing software packages using either the graphical Synaptic tool or command line apt-get commands. Basic Linux commands like mkdir, cd, pwd, rmdir, chown, chmod, ls, and cp are described.
The document discusses various tools that are part of the GNU toolchain used for embedded software development. It provides descriptions of common tools used with the GNU Compiler Collection (GCC) such as ar, autoconf, as, gdb, ld, libtool, make, nm, objcopy, objdump, ranlib, readelf, size, strings and strip. It also covers topics like the preprocessor, compiler options, anonymous unions, arrays of zero length, and using attributes with GCC.
This document provides a quick reference guide for Linux security that includes definitions of common security terms, general security tips, and Linux security resources. It defines terms like buffer overflow, cryptography, denial of service, and port scanning. It offers tips such as using automatic package managers to update software, configuring firewalls and intrusion detection, and enforcing strong password policies. The document also lists various security-related websites, books, and open source tools that can aid in hardening Linux systems.
The document provides an overview of Pinto, a tool for managing dependencies via a CPAN-like repository. Pinto allows users to create custom repositories of Perl modules and distributions, fetch dependencies and their transitive dependencies, inject their own distributions, install and upgrade modules across different "stacks" (named mappings of packages), and pin packages to specific versions. Key features demonstrated include initializing a repository, pulling dependencies, adding a custom distribution, installing modules, upgrading dependencies on a stack, merging stacks, and pinning packages. Pinto aims to provide stability, portability and reproducibility for dependency management.
This document discusses the importance of blogging for SEO and provides tips for writing effective blog posts. It notes that blogs provide fresh, keyword-rich content that keeps people and search engines engaged. An effective blog has a keyword-rich title, descriptive images, clear navigation, and regular posting to drive organic search traffic. When writing posts, bloggers should choose focused topics based on consumer interests and keywords, and use techniques like questions, lists, and unexpected words in headlines and formatting to engage readers. Comments and social sharing can further increase a blog's visibility and traffic.
Crisis Planning & Management in a Social Media WorldFlint Group
Director of public relations at WestmorelandFlint, Jessica Stauber presented "Crisis Planning & Management in a Social Media World" at the 2011 Northland Social Media Conference held in Duluth, Minn.
Managing social media with limited resourcesFlint Group
This document provides information on managing social media with limited resources. It discusses organizing a small social media team with three roles: content manager, community manager, and coach/booth. The content manager creates and gathers content based on a content calendar. The community manager monitors social media and engages with audiences. The coach/booth answers complex questions and sets policies. It then gives an example for a mall's social media strategy, outlining types of promotional content that could be posted, including fashion photos, sales, contests, and events. The document stresses finding efficiencies by breaking content into smaller pieces and using free tools to help the small team monitor social media.
The document discusses social spaces for hotels and the importance of claiming them online. It notes that over 114 million Americans will research travel online in 2011. Social media sites like Google Places, TripAdvisor, Yelp and Facebook Places allow hotels to directly communicate with customers and see what is being said about them. The document provides tips for hotels to create a game plan for managing their social spaces online, including setting up a shared email account, designating staff responsibilities, encouraging but not demanding reviews from customers, and responding to reviews gracefully.
This document discusses modulinos, which are files that can work as both programs and modules. It provides examples of a hello.pl file that outputs "Hello World" both when run directly and when used as a module. It then shows how to add unit tests to the file and make the output customizable by passing arguments. The key aspects are running code directly or via require, adding tests, and connecting command line arguments to object initialization.
Statistics and Data Mining with Perl Data Languagemaggiexyz
This document discusses using Perl Data Language (PDL) for statistics and data mining. It covers descriptive statistics like frequency distributions and measures of central tendency. Inferential statistics topics include sampling, hypothesis testing, linear regression, and k-means clustering. PDL provides functions for calculating statistics and fitting models to data.
The document provides instructions for installing and setting up the Symfony PHP framework. It discusses different installation methods like using the sandbox, PEAR, or SVN. It also covers generating a new Symfony project and application, configuring the web server, and troubleshooting common issues. Version control of Symfony projects using Subversion is also described.
The document provides instructions for installing BigBlueButton, an open-source web conferencing system, on an Ubuntu server. It describes downloading and installing dependencies like Ruby, the Nginx web server, FreeSWITCH for voice conferencing, and the BigBlueButton package itself. The instructions also cover adding the BigBlueButton software repository, updating packages, linking directories, and doing a clean restart after installation is complete.
Puppet can be used effectively and at scale without running as root. In many organizations, particularly large ones, different teams are responsible for different pieces of the infrastructure. In my case, I am on a team responsible for installation, configuration, upkeep, and monitoring of an application, but we are denied root access. Despite this, we have a rich puppet infrastructure thats saves us time and reduces configuration drift. I will present our model for success in this kind of limited environment, including recipes for using puppet as non root and some encouraging words and ideas for those who want to implement puppet, but the rest of their organization isn't ready yet.
Spencer Krum
Systems Admin, UTI Worldwide
Spencer is a Linux and application administrator with UTI Worldwide, a shipping and logistics firm. He lives and works in Portland. He has been using Linux and Puppet for years. Spencer is co-authoring (with William Van Hevelingen and Ben Kero) the second edition of Pro Puppet by James Turnbull and Jeff McCune, which should be available from Apress in alpha/beta E-Book in time for Puppet Conf '13. He enjoys hacking, tennis, StarCraft, and Hawaiian food.
Advanced Level Training on Koha / TLS (ToT)Ata Rehman
Advanced Level Training on Koha / Total Library Solution - TLS - (ToT), December 4-8, 2017 – PASTIC, Islamabad
All training material provided during this training can be found at: https://drive.google.com/drive/folders/1hwWGHV1iHgcpjK_tw6-Xgf-ZVUPchIS_
This document discusses RPM packaging in Fedora. It begins by explaining why packaging is important, noting that it automates software installation and management while preventing errors. It then describes RPM, the package format used in Fedora and other distributions. The document outlines the RPM build process using tools like rpmbuild and spec files. It also introduces services like Koji, which builds RPMs, distribution git repositories for packages, Bodhi for release management, and COPR for alternative builds. It concludes by recommending ways for readers to get involved in Fedora packaging.
IPS is a transactional, metadata-driven packaging system used by several Solaris variants to manage software installation and updates. Key concepts include FMRIs to uniquely identify packages, package manifests that describe file actions and dependencies, publishers that provide packages, repositories to store and serve packages, the image where packages are installed, and boot environments that provide bootable snapshots of images. Common IPS commands are used to install, update, list, search, and manage packages.
Dockerizing Symfony Applications - Symfony Live Berlin 2014D
This document discusses Dockerizing Symfony applications. It introduces Docker containers as a lightweight virtualization method using Linux namespaces and union filesystems. It then demonstrates how to containerize the components of a sample Symfony app - Redis, PHP-FPM, Nginx - connecting them using Docker links and volumes. Fig is introduced as a tool to define and run multi-container Docker environments using a YAML configuration file, making management of the Symfony app containers easier. Hosting challenges are mentioned along with an invitation to join Giantswarm's private beta for container management.
5/13/13 presentation to Austin DevOps Meetup Group, describing our system for deploying 15 websites and supporting services in multiple languages to bare redhat 6 VMs. All system-wide software is installed using RPMs, and all application software is installed using GIT or Tarball.
Managing Plone Projects with Perl and SubversionLuciano Rocha
How an in-house solution developed in Perl helped our Plone developers to streamline their work.
From the use of Subversion (and Trac) to keep track of development, sharing code, and bundling packages, to the creation of a program for managing dependencies, building the system, creating release RPMs and tracking deployments.
A test case by Eurotux Informática.
This document provides an overview of Composer, a dependency manager for PHP. It discusses how Composer allows defining dependencies in a composer.json file, installing and updating dependencies, semantic versioning, and additional features like global installation, autoloading, hooks, custom repositories, and using Satis to create a local Composer repository. The document contains over 40 slides covering topics like Composer's usage, commands, configuration, and advantages over older PHP dependency managers.
This document provides an overview of the Symfony components created by Fabien Potencier. It describes that the components are standalone libraries for PHP 5.3 that have no dependencies between them. The components include Event Dispatcher, Output Escaper, YAML, Routing, Console, Dependency Injection Container, Request Handler, and Templating. The document discusses how to download and install the components via Git, SVN, or nightly builds. It also covers autoloading classes using the UniversalClassLoader and describes some of the individual components in more detail like Console, Routing, and Testing.
The document discusses Fabien Potencier and the Symfony components. It provides an overview of Fabien as the creator and lead developer of Symfony and the components. It then summarizes the key Symfony components including the Console, Event Dispatcher, Dependency Injection Container, Request Handler, Templating, Routing, and Output Escaper components. It discusses how the components are standalone, interoperable libraries that can be used independently of Symfony.
This document provides an overview of the Symfony components created by Fabien Potencier. It describes that the components are standalone libraries for PHP 5.3 that have no dependencies between them. The components include Event Dispatcher, Output Escaper, YAML, Routing, Console, Dependency Injection Container, Request Handler, and Templating. The document discusses how to download and install the components via Git, SVN, or nightly builds. It also covers autoloading classes using the UniversalClassLoader and describes some of the individual components in more detail like Console, Routing, and Testing.
Composer Panada Conference 2014 by Mulia Nasutionk4ndar
Composer is a dependency manager for PHP that allows you to declare and manage dependencies for a PHP project. It has over 41,000 packages available and makes it easy to install, update, and deploy packages and their dependencies. Composer uses semantic versioning and supports features like dependency resolution, autoloading, hooks, and custom repositories. It provides a simple way to declare dependencies in a composer.json file and install or update them via the composer command line tool.
Foreman and Puppet Master Install process - Customer Used Case Kanwar Batra
The above process was used for a Customer to automate and deploy virtual and physical infrastrucutre using Foreman. This document outlines the my Install process of Foreman too
The slides from my Deployment Tactics talk at the ThinkVitamin Code Management online conference (http://thinkvitamin.com/online-conferences/code-manage-deploy/).
Slides for the Docker for Java Developers workshop at JavaLand in 2017. It covers building and running containers. It also covers running GUI applications in Docker and using the Docker registry.
This document provides information on using Fortran compilers at the Mississippi Center for Supercomputing Research (MCSR). It describes how to log into the MCSR systems, write a simple Fortran program, use the PICO text editor, compile and run programs using different compilers on systems like Sweetgum, Mimosa, Redwood and Willow. The compilers include MIPSPro, Portland Group, MPICH, Intel and Sun Forte compilers. Accounts are available for students and faculty from Mississippi public universities.
This document discusses packaging Ruby and Rails applications for production. It covers using system packages versus gems, configuration management tools like Chef and Puppet, creating Debian packages, packaging gems, build servers, pain points like outdated Rubygems packages, and ideas for deeper Bundler integration and packaging gems by default. Overall it presents strategies for deploying Ruby applications as system packages for production servers.
This document discusses using Docker and Java on a Raspberry Pi. It provides instructions for installing Docker on a Raspberry Pi and creating Dockerfiles to run a Tomcat application container from a Java WAR file. It also discusses using Docker for continuous delivery by building a Docker image registry to version and distribute application containers.
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.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Infrastructure Challenges in Scaling RAG with Custom AI modelsZilliz
Building Retrieval-Augmented Generation (RAG) systems with open-source and custom AI models is a complex task. This talk explores the challenges in productionizing RAG systems, including retrieval performance, response synthesis, and evaluation. We’ll discuss how to leverage open-source models like text embeddings, language models, and custom fine-tuned models to enhance RAG performance. Additionally, we’ll cover how BentoML can help orchestrate and scale these AI components efficiently, ensuring seamless deployment and management of RAG systems in the cloud.
Fueling AI with Great Data with Airbyte WebinarZilliz
This talk will focus on how to collect data from a variety of sources, leveraging this data for RAG and other GenAI use cases, and finally charting your course to productionalization.
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.
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdfTechgropse Pvt.Ltd.
In this blog post, we'll delve into the intersection of AI and app development in Saudi Arabia, focusing on the food delivery sector. We'll explore how AI is revolutionizing the way Saudi consumers order food, how restaurants manage their operations, and how delivery partners navigate the bustling streets of cities like Riyadh, Jeddah, and Dammam. Through real-world case studies, we'll showcase how leading Saudi food delivery apps are leveraging AI to redefine convenience, personalization, and efficiency.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
Generating privacy-protected synthetic data using Secludy and MilvusZilliz
During this demo, the founders of Secludy will demonstrate how their system utilizes Milvus to store and manipulate embeddings for generating privacy-protected synthetic data. Their approach not only maintains the confidentiality of the original data but also enhances the utility and scalability of LLMs under privacy constraints. Attendees, including machine learning engineers, data scientists, and data managers, will witness first-hand how Secludy's integration with Milvus empowers organizations to harness the power of LLMs securely and efficiently.
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!
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
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.
Things to Consider When Choosing a Website Developer for your Website | FODUUFODUU
Choosing the right website developer is crucial for your business. This article covers essential factors to consider, including experience, portfolio, technical skills, communication, pricing, reputation & reviews, cost and budget considerations and post-launch support. Make an informed decision to ensure your website meets your business goals.
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Speck&Tech
ABSTRACT: A prima vista, un mattoncino Lego e la backdoor XZ potrebbero avere in comune il fatto di essere entrambi blocchi di costruzione, o dipendenze di progetti creativi e software. La realtà è che un mattoncino Lego e il caso della backdoor XZ hanno molto di più di tutto ciò in comune.
Partecipate alla presentazione per immergervi in una storia di interoperabilità, standard e formati aperti, per poi discutere del ruolo importante che i contributori hanno in una comunità open source sostenibile.
BIO: Sostenitrice del software libero e dei formati standard e aperti. È stata un membro attivo dei progetti Fedora e openSUSE e ha co-fondato l'Associazione LibreItalia dove è stata coinvolta in diversi eventi, migrazioni e formazione relativi a LibreOffice. In precedenza ha lavorato a migrazioni e corsi di formazione su LibreOffice per diverse amministrazioni pubbliche e privati. Da gennaio 2020 lavora in SUSE come Software Release Engineer per Uyuni e SUSE Manager e quando non segue la sua passione per i computer e per Geeko coltiva la sua curiosità per l'astronomia (da cui deriva il suo nickname deneb_alpha).
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
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
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.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
9. Dependency
Management
CPAN.pm Does All The Work
Meta-Version Control
Detect Circular Dependencies
Identify Dependency Flavors:
“requires”
“build_requires”
“configure_requires”
“author_requires”
10. Separation Of
Concerns
Author-time Build-time Install-time
Usernames and Passwords
Resource Paths
Configuration Stuff
11. Sharing And
Distribution
Easy to identify (i.e. named, versioned)
Easy to transport (as *.tar.gz files)
Well-known install procedure
13. Case Study:
Foo Financial Company
500k lines of Perl code
100s of scripts, 100s of modules
No automated test cases
RCS-like version control
Quasi-separate DEV and PROD
Deploy by manually copying to PROD
14. Havoc Ensued
Which files need to be deployed?
Which versions of the files?
How do I role back?
What are the parts of this system?
How do changes affect other parts?
15. A Solution:
Divide product into Distros.
Publish Distros into a private CPAN.
Assemble product from private CPAN.
Automate everything!
16. SVN CruiseControl
commit trunk/
Foo-Reporting/ checkout
$ ./Build
Foo-Interfaces/
$ ./Build test
Foo-Utilities/
Empty Distro. $ ./Build install
Simply depends Foo-Everything/
on other top- $ ./Build dist
level Foo::* add & Every
modules trunk/CPAN/authors/id/F/FOO/ commit commit
Foo-Reporting-8.01.tar.gz Foo-Reporting-8.01.tar.gz produces a
Distro with a
Foo-Interfaces-2.37.tar.gz new version
A private CPAN,
containing
Foo-Utilities-6.01.tar.gz number
everything that Foo-Everything-1.02.tar.gz
Foo depends on HTTP GET
$ cpan Foo-Everything
A temporary
location, that will /tmp/lib/perl5/site_perl
contain all Foo::* installs
modules and Foo/Reporting.pm
their non-core Foo/Interfaces.pm
dependencies
Foo-Utilities.pm
Finished product!
archives
Foo-1.45.tar.gz
17. Some Tips:
At first, put Everything in one fat Distro.
But later, may 1000 Distros bloom!
Think about how to name & number versions.
Create special accounts for automated jobs.
Any SCM and build server will do the job.
Know your target Perl environment.
18. Some Supporting Tools
CPAN::Mini
CPAN::Mini::Inject
CPAN::Site
Module::Starter
Dist::Zilla