This talk will focus on Grilo, a framework which purpose is to provide media application developers with proper tools to access online and offline multimedia. More specifically, Grilo provides:
- A single, high-level API that abstracts the differences among various media content providers, allowing application developers to browse and search content from various services and sources with little work on the application side.
- A collection of plugins for accessing content from various media providers. Developers can share efforts and code by writing plugins for the framework that are application agnostic.
- A flexible API that allows plugin developers to write plugins of various kinds.
Today, Grilo is already being used by various GNOME applications, such as Totem, Rhythmbox or MediaExplorer and it will have even more relevance in the future of the platform, where it is expected to be a key component of the new multimedia applications.
During this talk we will look at the current version of Grilo, and we will cover the new features that are coming for the 0.2 release: new API aimed to be extensible, new capabilities for filtering, a new design of plugins architecture, support for declarative plugin development, and, of course, the new plugins.
Talk from GUADEC 2012.
By Juan A. Suárez Romero.
This talk will focus on Grilo[1], a framework which purpose is to provide media application developers with proper tools to access online and offline multimedia. More specifically, Grilo provides:
- A single, high-level API that abstracts the differences among various media content providers, allowing application developers to browse and search content from various services and sources with little work on the application side.
- A collection of plugins for accessing content from various media providers. Developers can share efforts and code by writing plugins for the framework that are application agnostic.
- A flexible API that allows plugin developers to write plugins of various kinds.
Today, Grilo is already being used by various GNOME applications, such as Totem[2], Rhythmbox[3] or MediaExplorer[4] and it will have even more relevance in the future of the platform, where it is expected to be a key component of the new multimedia applications[5][6].
During this talk we will look at the current version of Grilo, and we will cover the new features that are coming for the 0.2 release: new API aimed to be extensible, new capabilities for filtering, a new design of plugins architecture, support for declarative plugin development, and, of course, the new plugins.
[1] http://live.gnome.org/Grilo
[2] http://projects.gnome.org/totem/
[3] http://projects.gnome.org/rhythmbox/
[4] http://media-explorer.org/
[5] http://live.gnome.org/Design/Apps/Music
[6] http://live.gnome.org/Design/Apps/Videos
This document proposes two new behaviors for the JADE agent framework called ParallelPriorityBehaviour and SequentialPriorityBehaviour. These behaviors allow agents to execute other behaviors in parallel or sequentially while assigning each a priority. The behaviors are able to run like the current scheduler implementations and provide a way to manage behaviors with priority.
The document proposes integrating a priority-based scheduler into the JADE agent development framework. It describes JADE's current scheduler and introduces two new scheduler behaviors: ParallelPriorityBehaviour and SequentialPriorityBehaviour. These behaviors allow scheduling agent tasks or behaviors based on static and dynamic priorities. This provides a way to prioritize some tasks over others, useful for applications like request handling where some requests require more urgent attention. The behaviors reuse existing JADE behaviors while adding prioritization, providing flexibility while penalizing scheduler performance.
This document discusses debugging software by finding, reporting, locating, and fixing bugs. It describes different types of bugs and bugfixing steps. Tools for debugging like Bugzilla, GDB, Valgrind, Electric Fence, OProfile, and G_DEBUG are also covered. The document provides tutorials and explanations on using Bugzilla for reporting bugs and tracking issues, and using GDB for debugging programs.
Rygel-Grilo provides a library and daemon to allow multimedia applications to access content over D-Bus using the Grilo framework and MediaServer2 specification. The library enables applications to consume media served by the Rygel-Grilo daemon, which uses Grilo to retrieve content from sources like YouTube and make it available to clients over D-Bus.
This document provides biographical information about D'Angelo Moore, a 10th grade student at Trezevant High School. It details his family, hobbies which include basketball, rapping, and spending time with friends. His future goals are to become a successful lawyer with multiple law firms worldwide, get married at 30, have two children, and retire at 40 as a wealthy man.
By Juan A. Suárez Romero.
This talk will focus on Grilo[1], a framework which purpose is to provide media application developers with proper tools to access online and offline multimedia. More specifically, Grilo provides:
- A single, high-level API that abstracts the differences among various media content providers, allowing application developers to browse and search content from various services and sources with little work on the application side.
- A collection of plugins for accessing content from various media providers. Developers can share efforts and code by writing plugins for the framework that are application agnostic.
- A flexible API that allows plugin developers to write plugins of various kinds.
Today, Grilo is already being used by various GNOME applications, such as Totem[2], Rhythmbox[3] or MediaExplorer[4] and it will have even more relevance in the future of the platform, where it is expected to be a key component of the new multimedia applications[5][6].
During this talk we will look at the current version of Grilo, and we will cover the new features that are coming for the 0.2 release: new API aimed to be extensible, new capabilities for filtering, a new design of plugins architecture, support for declarative plugin development, and, of course, the new plugins.
[1] http://live.gnome.org/Grilo
[2] http://projects.gnome.org/totem/
[3] http://projects.gnome.org/rhythmbox/
[4] http://media-explorer.org/
[5] http://live.gnome.org/Design/Apps/Music
[6] http://live.gnome.org/Design/Apps/Videos
This document proposes two new behaviors for the JADE agent framework called ParallelPriorityBehaviour and SequentialPriorityBehaviour. These behaviors allow agents to execute other behaviors in parallel or sequentially while assigning each a priority. The behaviors are able to run like the current scheduler implementations and provide a way to manage behaviors with priority.
The document proposes integrating a priority-based scheduler into the JADE agent development framework. It describes JADE's current scheduler and introduces two new scheduler behaviors: ParallelPriorityBehaviour and SequentialPriorityBehaviour. These behaviors allow scheduling agent tasks or behaviors based on static and dynamic priorities. This provides a way to prioritize some tasks over others, useful for applications like request handling where some requests require more urgent attention. The behaviors reuse existing JADE behaviors while adding prioritization, providing flexibility while penalizing scheduler performance.
This document discusses debugging software by finding, reporting, locating, and fixing bugs. It describes different types of bugs and bugfixing steps. Tools for debugging like Bugzilla, GDB, Valgrind, Electric Fence, OProfile, and G_DEBUG are also covered. The document provides tutorials and explanations on using Bugzilla for reporting bugs and tracking issues, and using GDB for debugging programs.
Rygel-Grilo provides a library and daemon to allow multimedia applications to access content over D-Bus using the Grilo framework and MediaServer2 specification. The library enables applications to consume media served by the Rygel-Grilo daemon, which uses Grilo to retrieve content from sources like YouTube and make it available to clients over D-Bus.
This document provides biographical information about D'Angelo Moore, a 10th grade student at Trezevant High School. It details his family, hobbies which include basketball, rapping, and spending time with friends. His future goals are to become a successful lawyer with multiple law firms worldwide, get married at 30, have two children, and retire at 40 as a wealthy man.
GStreamer is a framework for processing multimedia data through a pipes and filters model. It has been in development for 10 years and uses a graph-based system with elements like sources, decoders, and sinks linked together to handle different media formats. Plugins can be added to support various media types, containers, and operations. The framework provides APIs to create graphs of elements programmatically and control playback.
Grilo: Feeding applications with multimedia content (GUADEC 2010)Igalia
The document provides an overview of Grilo, a framework for integrating multimedia content from various sources into applications. Grilo allows application developers to browse, search, and retrieve media content through a single API, hiding differences in how each media source works. It also allows backend developers to create plugins that provide media sources or metadata sources to Grilo. The document discusses how application and backend developers can use Grilo, including browsing, searching, resolving metadata, and creating plugin classes and methods.
Nikos Katirtzis gave a presentation on improving source code searching capabilities. He discussed why source code search engines are needed as developers spend more time reading code than writing it. He then compared popular code search engines like Searchcode Server, Hound, Zoekt, and Sourcegraph. Finally, he described HApiDoc, a service developed by Hotels.com that mines API usage examples from client source code using an approach called CLAMS.
Improving your team’s source code searching capabilitiesNikos Katirtzis
Nikos Katirtzis gave a presentation on improving source code searching capabilities. He discussed why source code search engines are needed, compared popular options like Searchcode Server, Hound, Zoekt, and Sourcegraph. He also described HApiDoc, a service that mines API usage examples from client source code using CLAMS, an approach to cluster and summarize examples. The presentation provided recommendations on source code search and considerations for setting one up.
Makoto Yui will give a talk about Apache Hivemall, an open-source machine learning library for Apache Hive, Spark, and Pig. He will discuss his experience with open-source software (OSS) and how Hivemall was accepted into the Apache Software Foundation incubator. The talk will cover what Hivemall is, its features, use cases at Treasure Data, and lessons learned from the incubation process.
This document discusses analyzing social media data from Meetup.com using graph technologies. It describes retrieving data via the Meetup API, modeling the data as a graph, analyzing the graph using algorithms and tools like PGX and PGQL, and visualizing results in Cytoscape. Potential questions that could be answered include identifying influential people and groups, relationships between groups, and hot topics. The demo environment uses Oracle Big Data Lite with Oracle NoSQL Database to store the graph and analyze it.
Grilo: Easy Access to Online Multimedia Content (LinuxCon Europe 2012)Igalia
By Juan A. Suárez Romero.
Grilo makes it easier for application developers to access online multimedia content from many different sources, removing the need to implement an interface to each content source type.Grilo is a framework that provides:
- A single, high-level API that abstracts the differences between various media content providers
- A collection of plugins that implement the access to various media providers
- A flexible API to write more plugins. Developers can share efforts and code by writing plugins for the framework that are application agnostic
This talk is targeted at developers with an interest in multimedia and in retrieving remote and local content homogeneously. Attendees can expect to learn what is Grilo and how it can be used and extended. The presentation aims to be useful to the community by allowing developers to join forces in the work needed to access remote multimedia content.
Enabling interoperable and rights-aware DRM using the Semantic WebRoberto García
This presentation, which was carried out at the DRM track of SmartUniversity'07, presents a Semantic Web approach to Digital Rights Management. This approach is based on a Copyright Ontology, implemented using OWL and DL reasoning.
Perceval, Graal and Arthur: The Quest for Software Project DataValerio Cosentino
Perceval gathers data from software repositories through backends. Graal enhances Perceval to analyze source code from repositories, running tools on checked-out code and embedding results. Arthur allows running Perceval and Graal at scale through distributed Redis queues. The tools provide open source software for software analytics through extraction of data from repositories and analysis of source code changes.
The android application analyzer is the GUI to do the process of static analysis during the android application penetration testing with single-click support of jd-gui, apktool, MobSF, frida script hook and android logcat.
PeeringDB is a database of interconnection information that is useful for peering coordinators, network operators, and IXPs. However, some Japanese network operators face a language barrier as PeeringDB's interface is only in English by default. To address this, the PeeringDB project is working to internationalize the interface by generating locale files for different languages on GitHub. Contributors can help by editing locale files in their own language and submitting pull requests. This will allow network operators in more economies and languages to easily use and benefit from PeeringDB.
Gstreamer is a framework for building multimedia applications. It provides APIs and plugins for playing, editing, and streaming audio and video. Applications can manipulate multimedia data by linking together elements like sources, decoders, filters and sinks into a pipeline. Gstreamer uses a plugin architecture so new media types and processing options can be easily added. It is released under the LGPL license so it can be used commercially by linking it with proprietary code.
ML Best Practices: Prepare Data, Build Models, and Manage Lifecycle (AIM396-S...Amazon Web Services
In this session, we cover best practices for enterprises that want to use powerful open-source technologies to simplify and scale their machine learning (ML) efforts. Learn how to use Apache Spark, the data processing and analytics engine commonly used at enterprises today, for data preparation as it unifies data at massive scale across various sources. We train models using TensorFlow, and we use MLflow to track experiment runs between multiple users within a reproducible environment. We then manage the deployment of models to production. We show you how MLflow can be used with any existing ML library and incrementally incorporated into an existing ML development process. This session is brought to you by AWS partner, Databricks.
This document provides an overview and introduction to Pig, an infrastructure for analyzing large datasets using Hadoop MapReduce. It discusses what Pig is, why it should be used, how to install and set up Pig, the components of Pig including Pig Latin and the Pig engine, and provides examples of how to perform common data analysis tasks like filtering, grouping, joining and ordering data using Pig Latin scripts.
The document discusses the basics of Git version control system including:
- Git allows tracking changes to files and coordinating work among contributors.
- Common Git commands like add, commit, push are covered to explain how changes are tracked locally and shared.
- Additional topics covered include branches, commits, checkouts and resets. Real examples are provided to demonstrate key Git concepts.
By Xabier Rodriguez Calvar.
This talk is about how the evolution from MAFW (Multimedia Aplication FrameWork used in Fremantle official media player) to Grilo (new multimedia framework for application aiming to provide easy access to many sources of media) and how they can work together to provide a better user experience and access to more media in the Maemo 5 platform (Fremantle). It will introduce everybody to the new Grilo technology into Maemo Fremantle, specifically targeting people interested in multimedia, Grilo and all owners of a N900. For more info: http://gitorious.org/grilo/mafw-grilo-source.
This talk will show the efforts done in the Open-Source graphics stack for supporting Raspberry Pi devices. Although the talk will focus on the recently launched new Raspberry Pi 5, we will show the improvements done for previous generations of the Raspberry Pi hardware.
Raspberry Pi 5 has available FLOSS GPU drivers on product launch, exposing OpenGL-ES 3.1 and Vulkan 1.2. We'll go through the changes needed to enable desktop OpenGL 3.1 on RPi4/5.
We will also review the changes done to the kernel driver to expose the RPi5 capabilities and the new GPU stats support for RPi4/5.
Finally, we will show the work done to use Wayfire as the default Wayland compositor on the Raspberry Pi OS.
- https://www.mesa3d.org/
- https://www.raspberrypi.com/
- https://wayfire.org/
On-going challenges in the Raspberry Pi driver stack: OpenGL 3, Vulkan and mo...Juan A. Suárez Romero
The document discusses ongoing challenges with Raspberry Pi drivers. It covers supporting the new Raspberry Pi 5 while merging drivers, implementing CPU job handling in Vulkan to avoid stalls, exposing OpenGL 3.1 features by fixing bugs, adding global GPU stats exposure, and taking questions. The presenters are from Igalia and discuss their work on the Raspberry Pi driver stack.
GStreamer is a framework for processing multimedia data through a pipes and filters model. It has been in development for 10 years and uses a graph-based system with elements like sources, decoders, and sinks linked together to handle different media formats. Plugins can be added to support various media types, containers, and operations. The framework provides APIs to create graphs of elements programmatically and control playback.
Grilo: Feeding applications with multimedia content (GUADEC 2010)Igalia
The document provides an overview of Grilo, a framework for integrating multimedia content from various sources into applications. Grilo allows application developers to browse, search, and retrieve media content through a single API, hiding differences in how each media source works. It also allows backend developers to create plugins that provide media sources or metadata sources to Grilo. The document discusses how application and backend developers can use Grilo, including browsing, searching, resolving metadata, and creating plugin classes and methods.
Nikos Katirtzis gave a presentation on improving source code searching capabilities. He discussed why source code search engines are needed as developers spend more time reading code than writing it. He then compared popular code search engines like Searchcode Server, Hound, Zoekt, and Sourcegraph. Finally, he described HApiDoc, a service developed by Hotels.com that mines API usage examples from client source code using an approach called CLAMS.
Improving your team’s source code searching capabilitiesNikos Katirtzis
Nikos Katirtzis gave a presentation on improving source code searching capabilities. He discussed why source code search engines are needed, compared popular options like Searchcode Server, Hound, Zoekt, and Sourcegraph. He also described HApiDoc, a service that mines API usage examples from client source code using CLAMS, an approach to cluster and summarize examples. The presentation provided recommendations on source code search and considerations for setting one up.
Makoto Yui will give a talk about Apache Hivemall, an open-source machine learning library for Apache Hive, Spark, and Pig. He will discuss his experience with open-source software (OSS) and how Hivemall was accepted into the Apache Software Foundation incubator. The talk will cover what Hivemall is, its features, use cases at Treasure Data, and lessons learned from the incubation process.
This document discusses analyzing social media data from Meetup.com using graph technologies. It describes retrieving data via the Meetup API, modeling the data as a graph, analyzing the graph using algorithms and tools like PGX and PGQL, and visualizing results in Cytoscape. Potential questions that could be answered include identifying influential people and groups, relationships between groups, and hot topics. The demo environment uses Oracle Big Data Lite with Oracle NoSQL Database to store the graph and analyze it.
Grilo: Easy Access to Online Multimedia Content (LinuxCon Europe 2012)Igalia
By Juan A. Suárez Romero.
Grilo makes it easier for application developers to access online multimedia content from many different sources, removing the need to implement an interface to each content source type.Grilo is a framework that provides:
- A single, high-level API that abstracts the differences between various media content providers
- A collection of plugins that implement the access to various media providers
- A flexible API to write more plugins. Developers can share efforts and code by writing plugins for the framework that are application agnostic
This talk is targeted at developers with an interest in multimedia and in retrieving remote and local content homogeneously. Attendees can expect to learn what is Grilo and how it can be used and extended. The presentation aims to be useful to the community by allowing developers to join forces in the work needed to access remote multimedia content.
Enabling interoperable and rights-aware DRM using the Semantic WebRoberto García
This presentation, which was carried out at the DRM track of SmartUniversity'07, presents a Semantic Web approach to Digital Rights Management. This approach is based on a Copyright Ontology, implemented using OWL and DL reasoning.
Perceval, Graal and Arthur: The Quest for Software Project DataValerio Cosentino
Perceval gathers data from software repositories through backends. Graal enhances Perceval to analyze source code from repositories, running tools on checked-out code and embedding results. Arthur allows running Perceval and Graal at scale through distributed Redis queues. The tools provide open source software for software analytics through extraction of data from repositories and analysis of source code changes.
The android application analyzer is the GUI to do the process of static analysis during the android application penetration testing with single-click support of jd-gui, apktool, MobSF, frida script hook and android logcat.
PeeringDB is a database of interconnection information that is useful for peering coordinators, network operators, and IXPs. However, some Japanese network operators face a language barrier as PeeringDB's interface is only in English by default. To address this, the PeeringDB project is working to internationalize the interface by generating locale files for different languages on GitHub. Contributors can help by editing locale files in their own language and submitting pull requests. This will allow network operators in more economies and languages to easily use and benefit from PeeringDB.
Gstreamer is a framework for building multimedia applications. It provides APIs and plugins for playing, editing, and streaming audio and video. Applications can manipulate multimedia data by linking together elements like sources, decoders, filters and sinks into a pipeline. Gstreamer uses a plugin architecture so new media types and processing options can be easily added. It is released under the LGPL license so it can be used commercially by linking it with proprietary code.
ML Best Practices: Prepare Data, Build Models, and Manage Lifecycle (AIM396-S...Amazon Web Services
In this session, we cover best practices for enterprises that want to use powerful open-source technologies to simplify and scale their machine learning (ML) efforts. Learn how to use Apache Spark, the data processing and analytics engine commonly used at enterprises today, for data preparation as it unifies data at massive scale across various sources. We train models using TensorFlow, and we use MLflow to track experiment runs between multiple users within a reproducible environment. We then manage the deployment of models to production. We show you how MLflow can be used with any existing ML library and incrementally incorporated into an existing ML development process. This session is brought to you by AWS partner, Databricks.
This document provides an overview and introduction to Pig, an infrastructure for analyzing large datasets using Hadoop MapReduce. It discusses what Pig is, why it should be used, how to install and set up Pig, the components of Pig including Pig Latin and the Pig engine, and provides examples of how to perform common data analysis tasks like filtering, grouping, joining and ordering data using Pig Latin scripts.
The document discusses the basics of Git version control system including:
- Git allows tracking changes to files and coordinating work among contributors.
- Common Git commands like add, commit, push are covered to explain how changes are tracked locally and shared.
- Additional topics covered include branches, commits, checkouts and resets. Real examples are provided to demonstrate key Git concepts.
By Xabier Rodriguez Calvar.
This talk is about how the evolution from MAFW (Multimedia Aplication FrameWork used in Fremantle official media player) to Grilo (new multimedia framework for application aiming to provide easy access to many sources of media) and how they can work together to provide a better user experience and access to more media in the Maemo 5 platform (Fremantle). It will introduce everybody to the new Grilo technology into Maemo Fremantle, specifically targeting people interested in multimedia, Grilo and all owners of a N900. For more info: http://gitorious.org/grilo/mafw-grilo-source.
This talk will show the efforts done in the Open-Source graphics stack for supporting Raspberry Pi devices. Although the talk will focus on the recently launched new Raspberry Pi 5, we will show the improvements done for previous generations of the Raspberry Pi hardware.
Raspberry Pi 5 has available FLOSS GPU drivers on product launch, exposing OpenGL-ES 3.1 and Vulkan 1.2. We'll go through the changes needed to enable desktop OpenGL 3.1 on RPi4/5.
We will also review the changes done to the kernel driver to expose the RPi5 capabilities and the new GPU stats support for RPi4/5.
Finally, we will show the work done to use Wayfire as the default Wayland compositor on the Raspberry Pi OS.
- https://www.mesa3d.org/
- https://www.raspberrypi.com/
- https://wayfire.org/
On-going challenges in the Raspberry Pi driver stack: OpenGL 3, Vulkan and mo...Juan A. Suárez Romero
The document discusses ongoing challenges with Raspberry Pi drivers. It covers supporting the new Raspberry Pi 5 while merging drivers, implementing CPU job handling in Vulkan to avoid stalls, exposing OpenGL 3.1 features by fixing bugs, adding global GPU stats exposure, and taking questions. The presenters are from Igalia and discuss their work on the Raspberry Pi driver stack.
Valgrind is an instrumentation framework for building analysis tools. It includes tools like Memcheck for detecting memory errors, and Callgrind for profiling call graphs and cache usage. Common errors it detects include illegal memory reads/writes, use of uninitialized values, and memory leaks. Leaks can be still reachable if a pointer is found, possibly lost if an interior pointer is found, or definitely lost if no pointer is found. Valgrind is useful for debugging but runs programs very slowly.
GDB is a GNU debugger that allows debugging C programs. It can trace code execution, inspect variable values, and debug running or crashed programs. Some key GDB commands include run, continue, backtrace, break, next, step, print, and display. Debugging requires compiling programs with debugging symbols and without optimizations. Core dumps created when programs crash can also be debugged with GDB.
LVM (Logical Volume Manager) allows managing disks in a different way by creating virtual disks called logical volumes from physical partitions. It does not have the same limitations as physical disks. LVM concepts include physical volumes representing physical partitions, volume groups which act as virtual disks by combining multiple physical volumes, and logical volumes which are partitions within volume groups that can be resized and moved independently of physical storage. LVM provides flexibility in managing storage and can be used with other technologies like encryption and RAID.
Una Arquitectura Multiagente Inteligente para la Detección de IntrusosJuan A. Suárez Romero
El documento describe una propuesta de arquitectura multiagente inteligente para la detección de intrusos. La arquitectura consta de cinco tipos de agentes: agentes de información, agentes especiales, agentes de prevención, agentes de detección y agentes de respuesta. Los agentes interactúan entre sí de forma dinámica y flexible para proveer información, prevenir, detectar y responder a posibles ataques de forma autónoma y tolerante a fallos.
A New Learning Method for Single Layer Neural Networks Based on a Regularized...Juan A. Suárez Romero
The document proposes a new learning method for single layer neural networks based on a regularized cost function. The method formulates an alternative cost function that can be solved using a system of linear equations, allowing for fast training with low computational cost. The method was tested on an intrusion detection classification problem and a time series regression problem. Results showed regularization generally obtained better solutions than an unregularized approach, especially with small training sets or noisy data. Future work will analyze methods for obtaining the optimal regularization parameter.
This document describes a tool that was developed for agent communication in the Mozart/Oz programming language. The tool allows agents to communicate using KQML, which Mozart/Oz previously lacked support for. The tool features a modular design with components like a ConversationMaster, PolicyManager, MessageDistributor, and MessageConverter to control conversations and route messages between agents on the internal Mozart/Oz platform and other external platforms. The tool aims to provide a flexible and scalable way for Mozart/Oz agents to communicate using KQML while maintaining the advantages of the Mozart/Oz programming environment.
The document proposes a new multi-agent architecture for intrusion detection that improves upon previous rigid systems. It describes seven classes of agents - information, prevention, detection, response, evidence-search, interface, and special agents - that would dynamically cooperate using both domain and social knowledge to detect intrusions. The architecture aims to provide a more flexible and fault-tolerant system compared to earlier work.
The document describes the KNITTER system, which implements the KQML agent communication language in Erlang to allow for the development of complex multi-agent systems. KNITTER features a modular architecture that separates different components like the conversation manager, transport protocols, and agent name service as plug-in modules. This allows KNITTER to interoperate with other KQML implementations and provides flexibility to change or add different modules as needed. The goal of KNITTER is to bring the benefits of KQML-based agent communication to the Erlang programming language.
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.
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.
What is an RPA CoE? Session 1 – CoE VisionDianaGray10
In the first session, we will review the organization's vision and how this has an impact on the COE Structure.
Topics covered:
• The role of a steering committee
• How do the organization’s priorities determine CoE Structure?
Speaker:
Chris Bolin, Senior Intelligent Automation Architect Anika Systems
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
"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.
The Department of Veteran Affairs (VA) invited Taylor Paschal, Knowledge & Information Management Consultant at Enterprise Knowledge, to speak at a Knowledge Management Lunch and Learn hosted on June 12, 2024. All Office of Administration staff were invited to attend and received professional development credit for participating in the voluntary event.
The objectives of the Lunch and Learn presentation were to:
- Review what KM ‘is’ and ‘isn’t’
- Understand the value of KM and the benefits of engaging
- Define and reflect on your “what’s in it for me?”
- Share actionable ways you can participate in Knowledge - - Capture & Transfer
Discover top-tier mobile app development services, offering innovative solutions for iOS and Android. Enhance your business with custom, user-friendly mobile applications.
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...Alex Pruden
Folding is a recent technique for building efficient recursive SNARKs. Several elegant folding protocols have been proposed, such as Nova, Supernova, Hypernova, Protostar, and others. However, all of them rely on an additively homomorphic commitment scheme based on discrete log, and are therefore not post-quantum secure. In this work we present LatticeFold, the first lattice-based folding protocol based on the Module SIS problem. This folding protocol naturally leads to an efficient recursive lattice-based SNARK and an efficient PCD scheme. LatticeFold supports folding low-degree relations, such as R1CS, as well as high-degree relations, such as CCS. The key challenge is to construct a secure folding protocol that works with the Ajtai commitment scheme. The difficulty, is ensuring that extracted witnesses are low norm through many rounds of folding. We present a novel technique using the sumcheck protocol to ensure that extracted witnesses are always low norm no matter how many rounds of folding are used. Our evaluation of the final proof system suggests that it is as performant as Hypernova, while providing post-quantum security.
Paper Link: https://eprint.iacr.org/2024/257
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/
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.
"$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.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/temporal-event-neural-networks-a-more-efficient-alternative-to-the-transformer-a-presentation-from-brainchip/
Chris Jones, Director of Product Management at BrainChip , presents the “Temporal Event Neural Networks: A More Efficient Alternative to the Transformer” tutorial at the May 2024 Embedded Vision Summit.
The expansion of AI services necessitates enhanced computational capabilities on edge devices. Temporal Event Neural Networks (TENNs), developed by BrainChip, represent a novel and highly efficient state-space network. TENNs demonstrate exceptional proficiency in handling multi-dimensional streaming data, facilitating advancements in object detection, action recognition, speech enhancement and language model/sequence generation. Through the utilization of polynomial-based continuous convolutions, TENNs streamline models, expedite training processes and significantly diminish memory requirements, achieving notable reductions of up to 50x in parameters and 5,000x in energy consumption compared to prevailing methodologies like transformers.
Integration with BrainChip’s Akida neuromorphic hardware IP further enhances TENNs’ capabilities, enabling the realization of highly capable, portable and passively cooled edge devices. This presentation delves into the technical innovations underlying TENNs, presents real-world benchmarks, and elucidates how this cutting-edge approach is positioned to revolutionize edge AI across diverse applications.
ScyllaDB is making a major architecture shift. We’re moving from vNode replication to tablets – fragments of tables that are distributed independently, enabling dynamic data distribution and extreme elasticity. In this keynote, ScyllaDB co-founder and CTO Avi Kivity explains the reason for this shift, provides a look at the implementation and roadmap, and shares how this shift benefits ScyllaDB users.
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/
From Natural Language to Structured Solr Queries using LLMsSease
This talk draws on experimentation to enable AI applications with Solr. One important use case is to use AI for better accessibility and discoverability of the data: while User eXperience techniques, lexical search improvements, and data harmonization can take organizations to a good level of accessibility, a structural (or “cognitive” gap) remains between the data user needs and the data producer constraints.
That is where AI – and most importantly, Natural Language Processing and Large Language Model techniques – could make a difference. This natural language, conversational engine could facilitate access and usage of the data leveraging the semantics of any data source.
The objective of the presentation is to propose a technical approach and a way forward to achieve this goal.
The key concept is to enable users to express their search queries in natural language, which the LLM then enriches, interprets, and translates into structured queries based on the Solr index’s metadata.
This approach leverages the LLM’s ability to understand the nuances of natural language and the structure of documents within Apache Solr.
The LLM acts as an intermediary agent, offering a transparent experience to users automatically and potentially uncovering relevant documents that conventional search methods might overlook. The presentation will include the results of this experimental work, lessons learned, best practices, and the scope of future work that should improve the approach and make it production-ready.
"NATO Hackathon Winner: AI-Powered Drug Search", Taras KlobaFwdays
This is a session that details how PostgreSQL's features and Azure AI Services can be effectively used to significantly enhance the search functionality in any application.
In this session, we'll share insights on how we used PostgreSQL to facilitate precise searches across multiple fields in our mobile application. The techniques include using LIKE and ILIKE operators and integrating a trigram-based search to handle potential misspellings, thereby increasing the search accuracy.
We'll also discuss how the azure_ai extension on PostgreSQL databases in Azure and Azure AI Services were utilized to create vectors from user input, a feature beneficial when users wish to find specific items based on text prompts. While our application's case study involves a drug search, the techniques and principles shared in this session can be adapted to improve search functionality in a wide range of applications. Join us to learn how PostgreSQL and Azure AI can be harnessed to enhance your application's search capability.
QA or the Highway - Component Testing: Bridging the gap between frontend appl...zjhamm304
These are the slides for the presentation, "Component Testing: Bridging the gap between frontend applications" that was presented at QA or the Highway 2024 in Columbus, OH by Zachary Hamm.
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. Grilo Key Components
Plugin
registers Registry registers
Metadata
Metadata
Metadata enriches Key
Metadata
Source 1..*
Source
Source
Data contains Low level API
Media
Media Media
Media provides 1..*
Source
Source
Source High level API
Audio Video Image Box
Provided by plugins
11. Grilo Sources
● Provides the multimedia content
● Plugins
– Dynamic loaded libraries
– Each plugin provides one or more sources
● Two types of sources:
– Media Sources
– Metadata Sources
17. Caps/Opts
● How to filter results?
– Filter by type
– Filter by specific key
● Problems
– Support in sources
– Too many parameters in function signature
19. Caps/Opts
● Capabilities (GrlCaps)
– Defines what the source can do
– Currently, different types of filtering
● Filter by media type
● Filter by key
● Filter by range
– Extend for other capabilities
● Sorting
20. Caps/Opts
● Options (GrlOperationOptions)
– Defines what the application want to do
– Matches the source capabilities
– Simplifies the function signature
search (GrlMediaSource *source,
const gchar *text,
const GList *keys,
GrlOperationOptions *options,
GrlMediaSourceResultCb callback,
gpointer user_data);
24. Improved full resolution algorithm
● Several metadata sources solving the same
key
– If one fails, try the next one
● Dependency not provided by media source
– Chain the resolution
25. Resources
● Wiki
– http://live.gnome.org/Grilo
● Source code
– git://git.gnome.org/grilo
– git://git.gnome.org/grilo-plugins
● IRC
– #grilo at irc.gnome.org
● Mailing list
– http://mail.gnome.org/mailman/listinfo/grilo-list
26. Credits
● Television Icon by The Noun Project (CC Attribution)
http://www.iconspedia.com/icon/television-icon-19995.html
● Icon Mobile Phone by Jean Victor Balin http://openclipart.org/detail/29119
● Hard Disk Icon by Mazenl77 (CC Attribution) http://www.iconspedia.com/icon/hard-disk-1600.html
● Memory Card Icon by Custom Icon Design Studio
http://www.gettyicons.com/free-icon/103/pretty-office-2-icon-set/free-memory-card-icon-png/
● Vimeo, Flickr, Jamendo, YouTube and UpnP logos under copyright of their own brands
● Option by rofltosh (CC BY-NC 2.0) http://www.flickr.com/photos/atomicbartbeans/71575328/
● Hold on by Andrew Pescod (CC BY-NC-SA 2.0) http://www.flickr.com/photos/andrewpescod/175668680/
● Train by Andifeelfine (CC BY-NC-ND 2.0) http://www.flickr.com/photos/andifeelfine/235779841/
Editor's Notes
Why Grilo exists What is exactly Grilo, and his components What is coming for the next releases of Grilo
Let's figure out we are implementing a multimedia application Roughly speaking, we need to fetch content and play it Let's see what happens when we have the media to play
When trying to play a content there are different combinations of options Content can be inside different containers Content can use different codecs The hardware to render the content can have different properties: different sizes, resolutions, some of them can have accelerated hardware, etc. So how to handle all this mess? More important, how to allow the application working even new codecs appears in the future?
The solution that most people use is Gstreamer It's a pluggable framework that isolates all those details from the application, so it doesn't need to deal with them Each plugin is in charge of solving one of those details So if a new codec is added, just implementing the proper plugin the application will able to play it
What happens with the fetch? Until some years ago, everything was stored locally Hard disks, USB pendrives, memory cards All these storages shares the same structure: they are a filesystem So using a filesystem API like syscalls, GIO, or other, you can fetch the content to play But this was until some years ago.
Now, everything is connected Content can be everywhere: YouTube, flickr, jamendo, etc. Each place uses their own protocol and API But users want to play the content anyway in their devices How is this done? A good example is to look how the TV manufacturers does with their smart TVs
As it can be seen, basically each service is a different application, with their own dependencies, and user experience There is no single application to access all the service in a consistent way Looking carefully one of those applications, besides the libraries to implement the UI and to play the content, they use specific libraries to access the content of the service If the application want to support other service, it needs to use the libraries specific for this new service The API is different for each library. But if you think about it, there are common structures in all this services For instance, most services allows to search, which means sending a text and getting the results. The difference is how the application needs to send the text, and how the results are encoded So it would be great to follow the same approach as Gstreamer, and have a system where all these differences are hidden, and have a common API to access the services
This is Grilo: a pluggable framework that allows application to discover content and fetch it New sources of information can be added by adding new plugins to the system So now our multimedia application can use the same API to access different services, making it simple and reusable
Let's see the main components in Grilo Basically, Grilo is composed of several sources that provide the multimedia content containing the information requested by users (titles, artists, albums, urls, so forth) User uses the registry to know the available sources and also what information can be requested, which are the metadata keys
Sources provides the content This is the extensible part: plugins can be added as dynamic libraries, which can be loaded and can create one or more sources There are two types of sources Media sources provide new content like audio, video or images Metadata sources extend existent content (coming from any media source) with new information
We can see here examples of those sources We have media sources which provide content from YouTube, Jamendo o UpnP servers. Each source is provided by its own plugin. Note that upnp plugin provides multiple sources, each for one server. So when a new server comes up a new source representing it is created, and when it goes away the source disappears There are also a coumple of metadata sources, one for Gravatar and another for thumbnails for music