Apache Celix is an effort, under the Apache Incubator, to implement the OSGi specification in C. There are some distinct changes to be able to map the specification to C.
Node.js (Node) , the brain child of Ryan Dahl, was released in 2009 when he worked for Joyent, Inc. Node is one of the most hyped technologies to arrive on the web development scene, though it is also one of the most misunderstood.
So what is Node? Is it a programming language like Python, Java, or C++? Is it an application framework like Django, Rails, or Symphony? Is it maybe some type of middleware that can be plugged into existing web stacks like Memcached or RabbitMQ? Actually, it is none of the above. Node is simply a set of JavaScript language bindings to Google's powerful V8 engine. This begs the question: "what is a language binding and what is V8?"
This presentation introduces Node from an architectural perspective by discussing its implementation followed by a practical demonstration of how to build an application using it through a real-world example. Michael Filbin of Aspenware explains how Ryan liberated JavaScript from the browser and brought the power of event-driven, non-blocked programming to every developer by using the world's most popular programming language.
This talk lays out the elements of an extension including the content model, JS API, Web Scripts, Content Policies, Action Executors, Web Scripts and more. This will draw on years of experience delivering extensions to various projects.
There is a code sample in github: https://github.com/rmknightstar/devcon2018
You can see the presentation as given at the Alfresco Developer Conference here : https://youtu.be/CKRswhh-jHE?list=PLyJdWuUHM3igOUt49uiFqs-6DCQAgJ1vs&t=0
Cloud apps with REST APIs using Windows Azure, Asp.NET, ServiceStack and Angu...mobiweave
In this talk, Ash DCosta will show you how to create compelling HTML5 cloud applications, using ServiceStack, AngularJS, Visual Studio and Azure. Creating great REST APIs with ServiceStack is easy, and so is consuming them with AngularJS, and deploying them to the cloud with Windows Azure. Ash will demonstrate all these pieces working together on a small "to-do" web app.
The speaker
Ash DCosta is the founder and chief architect at Mobi Weave, a cloud and mobile solution provider. He has 20+ years of experience in software with Intel, i2 Technologies, IdentityMine, i3Connect and Wells Fargo. You can follow him on Twitter as @softwareweaver.
Mobile applications Development - Lecture 10
HTML5 Refresher
This presentation has been developed in the context of the Mobile Applications Development course at the Computer Science Department of the University of L’Aquila (Italy).
http://www.di.univaq.it/malavolta
Node.js (Node) , the brain child of Ryan Dahl, was released in 2009 when he worked for Joyent, Inc. Node is one of the most hyped technologies to arrive on the web development scene, though it is also one of the most misunderstood.
So what is Node? Is it a programming language like Python, Java, or C++? Is it an application framework like Django, Rails, or Symphony? Is it maybe some type of middleware that can be plugged into existing web stacks like Memcached or RabbitMQ? Actually, it is none of the above. Node is simply a set of JavaScript language bindings to Google's powerful V8 engine. This begs the question: "what is a language binding and what is V8?"
This presentation introduces Node from an architectural perspective by discussing its implementation followed by a practical demonstration of how to build an application using it through a real-world example. Michael Filbin of Aspenware explains how Ryan liberated JavaScript from the browser and brought the power of event-driven, non-blocked programming to every developer by using the world's most popular programming language.
This talk lays out the elements of an extension including the content model, JS API, Web Scripts, Content Policies, Action Executors, Web Scripts and more. This will draw on years of experience delivering extensions to various projects.
There is a code sample in github: https://github.com/rmknightstar/devcon2018
You can see the presentation as given at the Alfresco Developer Conference here : https://youtu.be/CKRswhh-jHE?list=PLyJdWuUHM3igOUt49uiFqs-6DCQAgJ1vs&t=0
Cloud apps with REST APIs using Windows Azure, Asp.NET, ServiceStack and Angu...mobiweave
In this talk, Ash DCosta will show you how to create compelling HTML5 cloud applications, using ServiceStack, AngularJS, Visual Studio and Azure. Creating great REST APIs with ServiceStack is easy, and so is consuming them with AngularJS, and deploying them to the cloud with Windows Azure. Ash will demonstrate all these pieces working together on a small "to-do" web app.
The speaker
Ash DCosta is the founder and chief architect at Mobi Weave, a cloud and mobile solution provider. He has 20+ years of experience in software with Intel, i2 Technologies, IdentityMine, i3Connect and Wells Fargo. You can follow him on Twitter as @softwareweaver.
Mobile applications Development - Lecture 10
HTML5 Refresher
This presentation has been developed in the context of the Mobile Applications Development course at the Computer Science Department of the University of L’Aquila (Italy).
http://www.di.univaq.it/malavolta
- Emilien Macchi & Chmouel Boudjnah (eNovance)
Emilien et Chmouel sont tous deux développeurs OpenStack et sont de forts contributeurs aux projets Swift et Quantum. Ils introduiront le meetup en donnant une update sur les projets, les fonctionnalités de la release Grizzly et ce que nous pouvons attendre de la release Havana qui se dessinera à l'OpenStack Summit de Portland. Ils présenteront également un rapide bilan sur: "OpenStack: 3 ans après: qui sont les plus gros contributeurs du projet?"
Learn Cloud-Native .NET: Core Configuration Fundamentals with SteeltoeVMware Tanzu
How do you avoid a messy jumble of configuration management? First, you can rule out holding settings internally to the app. Hard coding values in a compiled artifact limits almost everything about an application’s ability to scale. Attaching a .config file to each instance of the application is also not reasonable. (Yes, your externalized config values from the artifact.) But you’re no better off with managing and updating things.
This class will visit the Microsoft.Extensions.Configuration package and the many options it offers .NET Core developers. We’ll cover everything from using the default providers (and what’s going on under the covers) to custom providers implemented in Steeltoe. There are many stops in between where developers can achieve the best mix of business requirements and technical needs.
Attend this class to learn the following:
● How to use external configurations with Spring Config using Steeltoe
● Best practices for externalizing configuration
● How to get the most from Spring Config without adding complexity
David Dieruf, Principal Product Marketing Manager, Pivotal
slides from unconference talk today (18 Apr 2013) with a quick overview of Oasis TOSCA, Oasis CAMP, and OpenStack Heat, and how they can align around a DSL. see also http://adrianotto.com/2013/04/what-is-camp/ and https://wiki.openstack.org/wiki/Heat/DSL .
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...Kasun Gajasinghe
Setting up a cluster is important when developing enterprise software and deploying them in production environments. Distributing deployment artifacts & related metadata to all nodes in a homogeneous cluster is a typical requirement for a clustered deployment of any middleware platform. In such a cluster, all nodes should contain the deployed artifacts as well as the related metadata.
The Deployment Synchronizer (DepSync) is the mechanism used in the WSO2 platform for distributing these artifacts and metadata across all nodes in the cluster. It provides the ability to synchronize data between the worker nodes of a product cluster. When used with the WSO2 Application Server, or the WSO2 ESB, you can synchronize your deployable artifacts like web services, and web applications etc. across the cluster nodes. In addition, with the latest WSO2 Carbon 4 release, WSO2 provides the ability to synchronize service metadata which includes service policies, transports, and service-type specific data. Now you only have to deploy and configure services in one node - called the manager. Then, DepSync will replicate those to other nodes - workers.
In this presentation, we present how this is done in the WSO2 Cloud-enabled middleware platform. Typical deployment artifacts will include webapps, JAXWS/JAXRS apps, data services, proxy services, and BPEL processes . The WSO2 platform also natively supports multi-tenancy. Tenants & tenant artifacts are loaded on demand. We will demonstrate how DepSync works efficiently with multi-tenancy.
Kasun Gajasinghe did the demonstration section of this webinar presentation while Pradeep Fernando provided technical aspects of Deployment Synchronizer
"In recent years, containers have become a key component of modern application design. Increasingly, developers are breaking their applications apart into smaller components and distributing them across a pool of compute resources. It is relatively easy to run a few containers on your laptop, but building and maintaining an entire infrastructure to run and manage distributed applications is hard and requires a lot of undifferentiated heavy lifting.
In this session, we discuss some of the core architectural principles underlying Amazon ECS, a highly scalable, high performance service to run and manage distributed applications using the Docker container engine. We walk through a number of patterns used by our customers to run their microservices platforms, to run batch jobs, and for deployments and continuous integration. We explore the advanced scheduling capabilities of Amazon ECS and dive deep into the Amazon ECS Service Scheduler, which optimizes for long-running applications by monitoring container health, restarting failed containers, and load balancing across containers."
Docker Dublin: Just What is a Service Mesh, and if I get one will it make eve...Elton Stoneman
From the Docker Dublin MeetUp, June 2019. Talking about service meshes – Linkerd and Istio in particular. It’s a technical session so there are lots of demos, but it’s grounded in the practical question – do you really need a service mesh, and is it worth the cost? You’ll learn what a service mesh can do, and how it helps to cut a lot of infrastructure concerns from your code.
- Emilien Macchi & Chmouel Boudjnah (eNovance)
Emilien et Chmouel sont tous deux développeurs OpenStack et sont de forts contributeurs aux projets Swift et Quantum. Ils introduiront le meetup en donnant une update sur les projets, les fonctionnalités de la release Grizzly et ce que nous pouvons attendre de la release Havana qui se dessinera à l'OpenStack Summit de Portland. Ils présenteront également un rapide bilan sur: "OpenStack: 3 ans après: qui sont les plus gros contributeurs du projet?"
Learn Cloud-Native .NET: Core Configuration Fundamentals with SteeltoeVMware Tanzu
How do you avoid a messy jumble of configuration management? First, you can rule out holding settings internally to the app. Hard coding values in a compiled artifact limits almost everything about an application’s ability to scale. Attaching a .config file to each instance of the application is also not reasonable. (Yes, your externalized config values from the artifact.) But you’re no better off with managing and updating things.
This class will visit the Microsoft.Extensions.Configuration package and the many options it offers .NET Core developers. We’ll cover everything from using the default providers (and what’s going on under the covers) to custom providers implemented in Steeltoe. There are many stops in between where developers can achieve the best mix of business requirements and technical needs.
Attend this class to learn the following:
● How to use external configurations with Spring Config using Steeltoe
● Best practices for externalizing configuration
● How to get the most from Spring Config without adding complexity
David Dieruf, Principal Product Marketing Manager, Pivotal
slides from unconference talk today (18 Apr 2013) with a quick overview of Oasis TOSCA, Oasis CAMP, and OpenStack Heat, and how they can align around a DSL. see also http://adrianotto.com/2013/04/what-is-camp/ and https://wiki.openstack.org/wiki/Heat/DSL .
[WSO2] Deployment Synchronizer for Deployment Artifact Synchronization Betwee...Kasun Gajasinghe
Setting up a cluster is important when developing enterprise software and deploying them in production environments. Distributing deployment artifacts & related metadata to all nodes in a homogeneous cluster is a typical requirement for a clustered deployment of any middleware platform. In such a cluster, all nodes should contain the deployed artifacts as well as the related metadata.
The Deployment Synchronizer (DepSync) is the mechanism used in the WSO2 platform for distributing these artifacts and metadata across all nodes in the cluster. It provides the ability to synchronize data between the worker nodes of a product cluster. When used with the WSO2 Application Server, or the WSO2 ESB, you can synchronize your deployable artifacts like web services, and web applications etc. across the cluster nodes. In addition, with the latest WSO2 Carbon 4 release, WSO2 provides the ability to synchronize service metadata which includes service policies, transports, and service-type specific data. Now you only have to deploy and configure services in one node - called the manager. Then, DepSync will replicate those to other nodes - workers.
In this presentation, we present how this is done in the WSO2 Cloud-enabled middleware platform. Typical deployment artifacts will include webapps, JAXWS/JAXRS apps, data services, proxy services, and BPEL processes . The WSO2 platform also natively supports multi-tenancy. Tenants & tenant artifacts are loaded on demand. We will demonstrate how DepSync works efficiently with multi-tenancy.
Kasun Gajasinghe did the demonstration section of this webinar presentation while Pradeep Fernando provided technical aspects of Deployment Synchronizer
"In recent years, containers have become a key component of modern application design. Increasingly, developers are breaking their applications apart into smaller components and distributing them across a pool of compute resources. It is relatively easy to run a few containers on your laptop, but building and maintaining an entire infrastructure to run and manage distributed applications is hard and requires a lot of undifferentiated heavy lifting.
In this session, we discuss some of the core architectural principles underlying Amazon ECS, a highly scalable, high performance service to run and manage distributed applications using the Docker container engine. We walk through a number of patterns used by our customers to run their microservices platforms, to run batch jobs, and for deployments and continuous integration. We explore the advanced scheduling capabilities of Amazon ECS and dive deep into the Amazon ECS Service Scheduler, which optimizes for long-running applications by monitoring container health, restarting failed containers, and load balancing across containers."
Docker Dublin: Just What is a Service Mesh, and if I get one will it make eve...Elton Stoneman
From the Docker Dublin MeetUp, June 2019. Talking about service meshes – Linkerd and Istio in particular. It’s a technical session so there are lots of demos, but it’s grounded in the practical question – do you really need a service mesh, and is it worth the cost? You’ll learn what a service mesh can do, and how it helps to cut a lot of infrastructure concerns from your code.
Managing dependencies in OSGi using the Apache Felix Dependency Manager gives you some powerful tools for expressing and managing all kinds of dependencies between components. This presentation shows you how to use them, and explains what design patterns are available for building applications. It also shows how to extend this system with custom types of dependencies.
Kubernetes Introduction. The concepts you need to understand to effectively develop and run applications in a Kubernetes environment. Focusing primarily on application developers, but it also provides an overview of managing applications from the operational perspective. It’s meant for anyone interested in running and managing containerized applications on more than just a single server.
My presentation at the October Agile Austin DevOps SIG about how we implemented DevOps on my team at National Instruments - techniques we used and lessons learned.
ApacheCon Core: Service Discovery in OSGi: Beyond the JVM using Docker and Co...Frank Lyaruu
OSGi offers an excellent service discovery mechanism, but it is limited to services inside the JVM. With Docker nowadays it is trivially easy to deploy all kind of (micro) services, using pretty much any technology stack, so we’d like to discover those as easily as the ones inside the JVM. We will have a look at how we can use the Docker API to discover services in other containers, and how we can use Consul to expand service discovery to other hosts.
Migrating Enterprise Microservices From Cloud Foundry to KubernetesTony Erwin
Slides originally presented in Shanghai at KubeCon + CloudNativeCon China 2018. Content developed by Tony Erwin and Jonathan Schweikhart.
Abstract: Historically, the forty microservices making up the IBM Cloud UI have been deployed as apps on Cloud Foundry (CF), an open source PaaS. But, recently, this enterprise microservice system has been migrated to run on Kubernetes to take advantage of improved orchestration, higher availability, and better performance. Tony Erwin & Jonathan Schweikhart will discuss their journey and provide insights into the advantages of Kube over CF. Even more importantly, they will describe approaches to solving new problems that took the place of old ones, such as: 1) adapting PaaS apps to run as containers on Kube, 2) enabling geo load balancing between the different platforms (to vet Kube before entirely replacing CF), 3) integrating tools like Prometheus into existing monitoring systems, and more! Their team's experiences will help you avoid pitfalls as you look to perform your own migrations to Kube!
NOTE: CF is always evolving and the limitations on private networking and private host names mentioned in the slides are no longer current. If you have access to CF API 2.115.0 or higher (released on June 25, 2018), you can leverage CF's service discovery feature (see https://docs.cloudfoundry.org/devguide/deploy-apps/cf-networking.html#discovery ).
(ATS4-APP09)Tips and tricks for Managing Symyx Notebook Server PerformanceBIOVIA
Managing Vault server deployments can be a challenging task, especially when corporate environments are managed by several third-parties, each having a very specific role in ensuring that your Vault deployment is reliable and meet your SLAs. This session will share best practices and techniques that will help you achieve your Vault deployment and management goals.
Slides given at Agile 2015 to support talk with Josh Long
Walks through basic ideas of Cloud Foundry BOSH, Cloud Foundry Elastic Runtime and Spring Boot/Spring Cloud.
Covered these slides in ~20 minutes, then did 50 minutes of Lattice demos and Spring live coding.
Developing Java based microservices ready for the world of containersClaus Ibsen
The so-called experts are saying microservices and containers will
change the way we build, maintain, operate, and integrate
applications. This talk is intended for Java developers who wants to hear and see how you can develop Java microservices that are ready to run in containers.
In this talk we will build a set of Java based Microservices that uses a mix of technologies with Apache Camel, Spring Boot and WildFly Swarm.
You will see how we can build small discrete microservices with these Java technologies and build and deploy on the Kubernets container platform.
We will discuss practices how to build distributed and fault tolerant microservices using technologies such as Kubernetes Services, Camel EIPs, and Netflixx Hysterix.
And the self healing and fault tolerant aspects of the Kubernetes platform is also discussed and demoed when we let the chaos monkeys loose killing containers.
This talk is a 50/50 mix between slides and demo.
The talk was presented at JDKIO on September 13th 2016.
Debugging Microservices - key challenges and techniques - Microservices Odesa...Lohika_Odessa_TechTalks
Microservice architecture is widespread our days. It comes with a lot of benefits and challenges to solve. Main goal of this talk is to go through troubleshooting and debugging in the distributed micro-service world. Topic would cover:
main aspects of the logging,
monitoring,
distributed tracing,
debugging services on the cluster.
About speaker:
Andrеy Kolodnitskiy is Staff engineer in the Lohika and his primary focus is around distributed systems, microservices and JVM based languages.
Majority of time engineers spend debugging and fixing the issues. This talk will be dedicated to best practicies and tools Andrеys team uses on its project which do help to find issues more efficiently.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
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.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
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.
3. Celix
• OSGi specificaEon implemented in C
• Adapted where needed
• Focussed on Embedded Dynamic Systems
• Based on Apache Felix
• Remote Services
• Distributed Systems
• Interoperability with Java
4. Services in C
• Follows the OSGi SpecificaEon
• A Service Registry for tracking services
• Bundle AcEvators for registering services
• Bundle Lifecycle for tracking Bundle state
• Structs instead of Interfaces
• Using funcEon pointers to forward calls
5. Services in C
• Service
• Struct with funcEon pointers
• AcEvator
• start / stop
Activator <struct>
• Celix
create
+ start Service
registerService + stop
• bundleContext create
pointer
• registry Celix Component
• etc.. getService depends
13. Universal OSGi
• RFP‐89
• Proposed to the mailing list in 2007
• Since then remained silent
• Ongoing effort to pick up again
• Supported Languages
• C++ / .NET language (C#) / ECMAScript
• What about C?
• Interest from Community?
14. Universal OSGi ‐ Celix
• NaEve port in C
• Status
• Based on the R4 SpecificaEon
• Deployable bundles
• Bundle lifecycle
• Service registry
• Framework API
• Remote Services
• Standards for IPC and communicaEons
- Introduction, what is OSGi and what has Celix to do with it\n- Services in C -> How does Celix solve this\n- Dynamic Assembly -> with services, how does Celix wire these together\n- Remote Services, why are they important, and how to solve\n- Deployment of bundles, how to bundle libraries\n- Current status of Celix\n- What is Universal OSGi, and what is the relation with Celix\n- Demonstration of a simple hello world bundle (and if time permits, an example of service usage)\n
Assuming OSGi is know by most people, only a short overview.\n\n \n
And a simple example of a bundle with a service and the service registry.\nThe bundle contains a Store service, which is implemented by StoreImpl, and finally there is some code to interact with the OSGi framework (the Activator). \n
And a simple example of a bundle with a service and the service registry.\nThe bundle contains a Store service, which is implemented by StoreImpl, and finally there is some code to interact with the OSGi framework (the Activator). \n
And a simple example of a bundle with a service and the service registry.\nThe bundle contains a Store service, which is implemented by StoreImpl, and finally there is some code to interact with the OSGi framework (the Activator). \n
And a simple example of a bundle with a service and the service registry.\nThe bundle contains a Store service, which is implemented by StoreImpl, and finally there is some code to interact with the OSGi framework (the Activator). \n
Celix is an implementation of the OSGi specification in C.\n- Without any relation with Java-OSGi, purely focussed on C\n- Fundamental differences between C and Java, so there are differences\n-- Most important ones: \n--- Services -> Later more on this\n--- Imported/Exported services instead of packages\n- Focus on embedded systems\n-- No relation with Java OSGi, can be used in C only environments\n- Based on Apache Felix (hence the name Celix)\n-- Ported were possible (resolver for example)\n-- But not related too!\n- Additionally, remote services are important\n-- For use in distributed systems\n-- But also provides a means to interact with Java OSGi\n-- Later more on this.\n
Services in C\n- Follow the OSGi spec where possible\n-- Service Registry\n-- Bundle Activators\n-- Bundle lifecycle, state and cache\n- C has no compilable/runtime interfaces, so services can&#x2019;t be exposed using an interface\n-- Use a struct with function pointers to solve this, more details on next slide\n
A service is a struct\n- Uses function pointers to point to the actual implementation of a function\n- An activator creates and initializes the struct\n- The struct is registered at the registry as the service\n- A component can retrieve this struct, and use the function pointers to use the actual implementation.\n-- The component only requires the Struct to be able to compile/link\n-- There is no direct link with the implementing component -> See next slide\n
To be able to dynamically add/remove components from the system, dynamic loading is used.\n- Components require the framework for compilation (bundle activator, registry etc) -> Depicted using &#x201C;depends&#x201D;\n- The framework needs to &#x201C;initialize&#x201D; a component via its activator, this cannot be a direct relation since components can be added/removed during the runtime. \n\n \n \nDynamic Loading in C:\n- libdl\n- dlfcn.h\n-- dlopen / dlclose for loading/unloading libraries\n-- dlsym for library methods\n\n \n
Remote services\n- Follows the Enterprise Specification\n-- Hide remote aspects from the user\n- Important for distributed environments\n- But also important for interoperability -> More about this at Universal OSGi\nThe idea is clear, the implementation not\n- What protocol should be used?\n-- Has to be available in Java and C\n-- Has to be able to serialize to something usable at both ends\n-- Some examples...\n
How are remote services used:\n- In java, reflection is used to create endpoints (stub and proxy) at runtime. Marking a service as remote is enough to expose it. Discovery is used to publish remote services on the network.\n- In C, there is no such thing as reflection, so it is not possible to simple mark a service as remote.\n-- Possible solution is to use a bundle with the service stub for a service, and publish this bundle when remote access is required/requested.\n-- The same applies to the server proxy on the client host.\n
Deployment:\n- Java uses JAR (zip) files, which can contain classes, but also additional resources.\n- In C libraries cannot contain additional resources.\n-- Solution is to use zip files to store the library and resources\n-- Like Java, a Manifest is used to import/export services, but also to identify the library to use\n-- At runtime this zip file is extracted to the cache, and the library is loaded/unloaded by the framework.\n
Status of Celix\n
Besides the framework, there are some additional items to make it easier to use/debug the framework. These are all ported from Java (Felix) to C.\nFinally, Celix is open sources at Apache, and currently in the Incubator.\nWe are always looking for more community members to support/use/implement Celix.\n
What is Universal OSGi:\n- A RFP proposed in 2007\n- After that, silence, but now being picked up again.\nThe RFP mentions:\n- C++/C#/ECMAScript\n- But not C\nLooking for a community.\n- Mailing list can be created.\n\n \n \nWhat has this to do with Celix?\n
Celix is a native port of the OSGi spec in C.\nThe RFP requires that an OSGi implementation is based on the R4 Spec\nCelix implements:\n- Deployable bundles\n- Bundle lifecycle\n- Service registry\n- Most of the Framework API\n- Remote Services (planned)\n-- Remote services are imported to be able to interact with different implementations of OSGi\n-- At the time of the RFP there where no remote service, but they do provide a common/well specced method to solve this.\n-- Remote service should use standards for IPC and com to be able to interact with non-osgi systems.\n\n \n \nCan Celix be an implementation of the Universal OSGi RFP? I do think so..\nFinally, some examples:\n- A hello world example which is only an activator that prints a message when starting/stopping the bundle.\n- (if time permits) An example of the whiteboard pattern with 2 services and a component tracking these services. (using the dependency manager).\n