Presentation at Code BEAM America 2021
https://codesync.global/conferences/code-beam-sf-2021
https://codesync.global/speaker/hideki-takase/
How do we install the magic of Elixir into robot systems? One of the solutions is "Rclex", that is a client library for ROS 2 platform. ROS (Robot Operating System) provides publish/subscribe based messaging mechanism between robot modules with the DDS (Data Distribution Service) stack. We suggest that the force of Erlang/Elixir can power up the scalability of ROS 2 communication. This talk will introduce how did we integrate ROS 2 and Elixir by using NIFs, and discuss the possibility of this library in the IoT field.
In this deck from the 2016 Stanford HPC Conference, Kurt Keville from R&D Labs at MIT presents: Introduction to RISC-V.
"Today’s server systems provide many knobs which influence energy efficiency and performance. Some of these knobs control the behavior of the operating systems, whereas others control the behavior of the hardware itself. Choosing the optimal configuration of the knobs is critical for energy efficiency. In this talk recent research results will be presented, including examples of big data applications that consume less energy when dynamic tuning is employed."
Kurt works on optimizing HPC codes for educational and institutional (R&D labs) purposes at MIT. He assesses new supercomputing hardware as part of his responsibilities. He has published in IEEE conferences and journals and he teaches embedded programming once a year. Kurt has a BS from West Point and an MS from MIT.
Learn more: http://soc.mit.edu
Sign up for our insideHPC Newsletter: http://insideHPC.com/newsletter
「TECH x GAME COLLEGE #21」 2019/06/05 登壇資料
https://techxgamecollege.connpass.com/event/130420/
【Laravelを用いたゲームサーバーのチューニング】
主にDB周りの話題で、
・速度を出す
・水平分散をする
という観点で
Laravelをゲームサーバーで用いた際にチューニングしてきたことを紹介します。
In this deck from the 2016 Stanford HPC Conference, Kurt Keville from R&D Labs at MIT presents: Introduction to RISC-V.
"Today’s server systems provide many knobs which influence energy efficiency and performance. Some of these knobs control the behavior of the operating systems, whereas others control the behavior of the hardware itself. Choosing the optimal configuration of the knobs is critical for energy efficiency. In this talk recent research results will be presented, including examples of big data applications that consume less energy when dynamic tuning is employed."
Kurt works on optimizing HPC codes for educational and institutional (R&D labs) purposes at MIT. He assesses new supercomputing hardware as part of his responsibilities. He has published in IEEE conferences and journals and he teaches embedded programming once a year. Kurt has a BS from West Point and an MS from MIT.
Learn more: http://soc.mit.edu
Sign up for our insideHPC Newsletter: http://insideHPC.com/newsletter
「TECH x GAME COLLEGE #21」 2019/06/05 登壇資料
https://techxgamecollege.connpass.com/event/130420/
【Laravelを用いたゲームサーバーのチューニング】
主にDB周りの話題で、
・速度を出す
・水平分散をする
という観点で
Laravelをゲームサーバーで用いた際にチューニングしてきたことを紹介します。
Find in this presentation an overview of the micro-ROS project, with its latest developments and new features
This presentation contains the workshop: Deeply embedded software" delivered at the European Robotics Forum on April 13th, 2021..
ROS Based Programming and Visualization of Quadrotor HelicoptersAtılay Mayadağ
ROS Based Programming and Visualization of Quadrotor Helicopters
Contents
Purpose of Thesis
Robot Operating System ( ROS )
What is Robot Operating System ( ROS ) ?
ROS structure
HOW does ROS work ?
Navigation of Robot with ROS
URDF : Unified Robot Description Format
ROS with 3D Modelling and Simulation
Quadrotor Simulation on Rviz and Gazebo with ROS
Conclusion and Recommendation
ROS publish / subscribe method
unmanned air vehicle
Robot Operating System
ATILAY MAYADAG
BUD17-104: Scripting Languages in IoT: Challenges and ApproachesLinaro
"Session ID: BUD17-104
Session Name: Scripting Languages in IoT: Challenges and Approaches - BUD17-104
Speaker: Paul Sokolovsky,
Track: LITE
★ Session Summary ★
Scripting languages is hot emerging topic in IoT. They allow easy learnability and rapid prototyping and further benefits (like production use) as they evolve. This session compares approaches of MicroPython and JerryScript/Zephyr.js projects and gives status update on their Zephyr RTOS ports.
---------------------------------------------------
★ Resources ★
Event Page: http://connect.linaro.org/resource/bud17/bud17-104/
Presentation: https://www.slideshare.net/linaroorg/bud17104-scripting-languages-in-iot-challenges-and-approaches
Video: https://youtu.be/lIO8QL2SRuU
---------------------------------------------------
★ Event Details ★
Linaro Connect Budapest 2017 (BUD17)
6-10 March 2017
Corinthia Hotel, Budapest,
Erzsébet krt. 43-49,
1073 Hungary
---------------------------------------------------
Keyword: IoT, scripting languages, Zephyr, LITE, Paul Sokolovsky,
http://www.linaro.org
http://connect.linaro.org
---------------------------------------------------
Follow us on Social Media
https://www.facebook.com/LinaroOrg
https://twitter.com/linaroorg
https://www.youtube.com/user/linaroorg?sub_confirmation=1
https://www.linkedin.com/company/1026961"
ConFoo Montreal - Microservices for building an IDE - The innards of JetBrain...Maarten Balliauw
Ever wondered how IDE’s are built? In this talk, we’ll skip the marketing bit and dive into the architecture and implementation of JetBrains Rider. We’ll look at how and why we have built (and open sourced) a reactive protocol, and how the IDE uses a “microservices” architecture to communicate with the debugger, Roslyn, a WPF renderer and even other tools like Unity3D. We’ll explore how things are wired together, both in-process and across those microservices. Let’s geek out!
Realizing the promise of portable data processing with Apache BeamDataWorks Summit
The world of big data involves an ever changing field of players. Much as SQL stands as a lingua franca for declarative data analysis, Apache Beam aims to provide a portable standard for expressing robust, out-of-order data processing pipelines in a variety of languages across a variety of platforms. In a way, Apache Beam is a glue that can connect the Big Data ecosystem together; it enables users to "run-anything-anywhere".
This talk will briefly cover the capabilities of the Beam model for data processing, as well as the current state of the Beam ecosystem. We'll discuss Beam architecture and dive into the portability layer. We'll offer a technical analysis of the Beam's powerful primitive operations that enable true and reliable portability across diverse environments. Finally, we'll demonstrate a complex pipeline running on multiple runners in multiple deployment scenarios (e.g. Apache Spark on Amazon Web Services, Apache Flink on Google Cloud, Apache Apex on-premise), and give a glimpse at some of the challenges Beam aims to address in the future.
What's Running My Containers? A review of runtimes and standards.Phil Estes
A talk given at Open Source Leadership Summit (OSLS) on Thursday, March 14th in Half Moon Bay, CA. In this talk the current status of the Open Container Initiative (OCI) standards as well as the Kubernetes Container Runtime Interface (CRI) were presented, with a view towards how these components have provided a level playing field with significant choice when it comes to container runtimes for use in Kubernetes, as well as interoperability per the OCI standards.
Similar to Rclex: A Library for Robotics meet Elixir (20)
ROS Japan UG #34 LT大会 で飛び込みLTした資料です.
https://rosjp.connpass.com/event/161041/
ROS 2のDashing/Eloquentで QoS (Quality of Service) 周りのAPIがそれぞれ破壊的に更新されててツラかったので,そのTIPS・知見を共有させていただきました.
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!
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
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.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
When stars align: studies in data quality, knowledge graphs, and machine lear...
Rclex: A Library for Robotics meet Elixir
1. A Library for Robotics meet Elixir
2021/11/05
Hideki Takase
(Univ. of Tokyo / JST PRESTO)
2. Who is ⾼瀬英希?
@takasehideki
Associate Professor at Univ. of Tokyo
Researcher at PRESTO Program, JST
üResearch topics: runtime optimization and
design methodology for IoT systems
ナーブスはナウでヤングでcoolなすごいやつです。
“Nerves is awesome!!
because it is now, young and cool!!”
191 members in Japan
https://nerves-jp.connpass.com/
Sapporo.beam
3. 3
(Robot Operating System)
1. Plumbing: pub/sub messaging infrastructure
2. Tools: configuring, debugging, visualizing, etc.
3. Capabilities: broad collection of libraries
4. Ecosystem: world-wide powerful OSS community
Platform for accelerating development of robot software
http://www.ros.org
4. 4
Capabilities
• ROS package:
a broad collection of libraries for useful robot functionality
can be installed by apt and built into the project by colcon
ü2,000+ package have been published as open source
• ROS realizes component based development approach
name description
tf 3D coordinate and chain relation
teleop operation of movement direction
usb_cam importing images from USB camera
ros_control control of actuators with abstracted hardware
MoveIt manipulation and controlling of robotics
Navigation localization and mapping for autonomous driving
https://index.ros.org/packages/
5. 5
• Asynchronous comm. between nodes via Topics
Protocol: DDS (Data Distribution Service, standardized by OMG)
ROS application can be developed by combining nodes
• Easy to construct loosely coupled architecture
Pub/Sub nodes can be added/deleted/restarted independently
• Other methods
Service: sync. server-client
Action: combo of topic/service
Parameter: key-value store
Plumbing
node1
node2
node3
node4
topicA
[string]
topicB
[image]
node5
publish subscribe
DDS Domain
msg
msg
msg
msg
6. … …
6
rclcpp rclpy
node.cpp node.py
RCL (ROS Client Library)
RMW (ROS MiddleWare)
DDS B
DDS A
General Purpose OS
• common functions for ROS 2
• implemented by C
• any client library can be
implemented by calling it
• Abstraction layer for DDS
• Able to select prefer DDS
rclrs
node.rs
DDS C
DDS (Data Distribution Service)
• OMG standard specification
• Pub/Sub communication functions
• Automatic search of nodes by RTPS
Software Structure
7. 7
Simple Publisher by Rclpy
https://github.com/ros2/demos/blob/foxy/demo_nodes_py/demo_nodes_py/topics/talker.py
create node from
Talker class
set callback func
and timer interval
publish message
to topic
specify
node name
register as publisher
with topic and type
prepare
massage
class definition
8. 8
• Actors on BEAM send and receive messages
• (I believe) Actor Model is suitable for robot systems🤖
"Let it Crash" could also contribute to robot
• (I suggest) Robot programming should be functional!!
ROS concept of combining existing packages has a high affinity
System is like,,,
node1
node2
node3
node4
topicA
[string]
topicB
[image]
node5
publish subscribe
DDS Domain
msg
msg
msg
msg
Actor Model!!
9. ROS 2 Client Library for,,,
Rclex
9
rclcpp rclpy
node.cpp node.py node.ex
RCL (ROS Client Library)
RMW (ROS MiddleWare)
DDS B
DDS A
General Purpose OS
rclrs
node.rs
DDS C
github.com/rclex
10. RCL
RMW
DDS
10
OS process space
rclcpp
node1
Erlang VM
rclex
node1
rclex
node2
process
exec. mngr.
process pub1
process sub2
process pub2
...
NIFs
github.com/rclex
calls RCL APIs and converts
Erlang resource objects and
RCL structures to each other
manages Rclex pub/sub functions
(implemented with GenServer)
How to realize Rclex
rclpy
node2
rcl.so
rclex nodes will be created as
Erlang lightweight process!!
11. sub.ex
sub.ex
sub.ex
sub.ex
sub.ex
github.com/rclex
pub.ex
pub.ex pub.ex
pub.ex
pub.ex
11
Ø Massively spawn ROS 2 nodes from Elixir code at the same time
Ø Asynchronously execute pub/sub comm. and corresponding callbacks
Improve ROS 2 communication scalability with
parallel processing of Erlang lightweight processes
pub.ex sub.ex
topic
pub.ex
pub.ex
pub.ex
sub.ex
sub.ex
sub.ex
pub.ex sub.ex
topic
pub.ex sub.ex
topic
pub.ex sub.ex
topic
pub.ex sub.ex
topic
pub.ex sub.ex
topic
pub.ex sub.ex
topic
pub.ex sub.ex
topic
Objective and Advantage
12. 12
Simple Publisher by Rclex
github.com/rclex
number
of nodes
create node by
name and index
create topic
:single-> one topic
:multi-> multiple
set callback func
and timer interval
create list of
messages for
each node
publish message
setting node info.
with pipe operator
processing a data
message with Enum
14. 14
• For ROS developers
will acquire better communication performance!
will want to employ Elixir/Erlang ecosystem
• For Elixir developers
will utilize OSS packages published for ROS!!
More Benefits!! (in the future,,,
MAY THE BEAM
BE WITH
YOUR ROBOT!!
[pic]https://aliexpress.com/
item/32604221183.html
15. 15
Wrapping Up
Give us your contributions!!
https://github.com/rclex/rclex
https://hex.pm/packages/rclex
• Rclex: Robotics meets Elixir!
ROS will acquire Elixir's scalability
Elixir will utilize ROS packages
• Ongoing/upcoming works
Service, Action and Parameter
ROS 2 MassageType generation
integration into Nerves
case study applied to actual robots
documentation, and academic paper,,,