A short presentation about Erlang, specifically designed for concurrency characteristics.
For the course: Scientific Writing and Communication (KTH Royal Institute of Technology)
A short presentation about Erlang, specifically designed for concurrency characteristics.
For the course: Scientific Writing and Communication (KTH Royal Institute of Technology)
Webinar: Live without Exception in RustKnoldus Inc.
If you are from Java background, then you would be familiar with Exception Handling where you are forced to use it extensively. But, most of the modern programming language, like Rust doesn't support Exception Handling. You might wonder how is this possible!
In these slides, you will walk through how rust handles exception problem without having exceptions.
These slides also cover:
1. Brief introduction about Rust Programming Language.
2. How Rust handles errors in Compile Time.
3. Dealing with Exception handling in Other Languages vs Rust.
4Developers 2015: Lessons for Erlang VM - Michał ŚlaskiPROIDEA
Speaker: Michał Ślaski
Language: English
YouTube: https://www.youtube.com/watch?v=mCIFPAG1u0k&list=PLnKL6-WWWE_WNYmP_P5x2SfzJ7jeJNzfp&index=56
Goal
Share experiences from using Erlang/OTP in real projects and discuss Erlang VM features, which help maintain and troubleshoot ever running systems.
Details
In this talk we will discuss thinking in a concurrent programming language along with the problems it has to solve.
We will take a look at the real tools Erlang gives you to write highly-available systems that let you sleep through the night: dynamic tracing and remote REPL.
We'll see how these tools are used.
Prerequisites
Attendees should be familiar with functional programming, actor based concurrency, pattern matching, dynamic typing, TCP/IP.
4Developers: http://4developers.org.pl/pl/
What is functional programming? This talk sets out to demystify the functional programming paradigm, debunk common myths, and reveal examples of why FP is advantageous compared to imperative programming.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
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.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
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.
Webinar: Live without Exception in RustKnoldus Inc.
If you are from Java background, then you would be familiar with Exception Handling where you are forced to use it extensively. But, most of the modern programming language, like Rust doesn't support Exception Handling. You might wonder how is this possible!
In these slides, you will walk through how rust handles exception problem without having exceptions.
These slides also cover:
1. Brief introduction about Rust Programming Language.
2. How Rust handles errors in Compile Time.
3. Dealing with Exception handling in Other Languages vs Rust.
4Developers 2015: Lessons for Erlang VM - Michał ŚlaskiPROIDEA
Speaker: Michał Ślaski
Language: English
YouTube: https://www.youtube.com/watch?v=mCIFPAG1u0k&list=PLnKL6-WWWE_WNYmP_P5x2SfzJ7jeJNzfp&index=56
Goal
Share experiences from using Erlang/OTP in real projects and discuss Erlang VM features, which help maintain and troubleshoot ever running systems.
Details
In this talk we will discuss thinking in a concurrent programming language along with the problems it has to solve.
We will take a look at the real tools Erlang gives you to write highly-available systems that let you sleep through the night: dynamic tracing and remote REPL.
We'll see how these tools are used.
Prerequisites
Attendees should be familiar with functional programming, actor based concurrency, pattern matching, dynamic typing, TCP/IP.
4Developers: http://4developers.org.pl/pl/
What is functional programming? This talk sets out to demystify the functional programming paradigm, debunk common myths, and reveal examples of why FP is advantageous compared to imperative programming.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
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.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
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.
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.
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.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Presentation
1. Erlang in a (real) nutshell
Lu´ Ferreira
ıs
Universidade do Minho
Semana da Lei II
zamith.28@gmail.com
July 13, 2010
2. What is Erlang?
Distributed
Lu´ Ferreira
ıs Erlang in a (real) nutshell
3. What is Erlang?
Distributed
Concurrent
Lu´ Ferreira
ıs Erlang in a (real) nutshell
4. What is Erlang?
Distributed
Concurrent
Fault-tolerant
Lu´ Ferreira
ıs Erlang in a (real) nutshell
5. What is Erlang?
Distributed
Concurrent
Fault-tolerant
Functional based
Lu´ Ferreira
ıs Erlang in a (real) nutshell
6. Why use Erlang?
NO
Number-crunching applications
Graphics intesive systems
Lu´ Ferreira
ıs Erlang in a (real) nutshell
7. Why use Erlang?
NO
Number-crunching applications
Graphics intesive systems
YES
High-level, concurrent, robust, soft real-time system that will
scale
Make full use of multicore processors
Integrate with components written in other languages
Lu´ Ferreira
ıs Erlang in a (real) nutshell
8. Some of the essential characteristics
Low memory overhead per process/task
Lu´ Ferreira
ıs Erlang in a (real) nutshell
9. Some of the essential characteristics
Low memory overhead per process/task
Thousands of processes - Own memory space, heap and stack
Lu´ Ferreira
ıs Erlang in a (real) nutshell
10. Some of the essential characteristics
Low memory overhead per process/task
Thousands of processes - Own memory space, heap and stack
No ”global” errors. Stop errors propagating
Lu´ Ferreira
ıs Erlang in a (real) nutshell
11. Some of the essential characteristics
Low memory overhead per process/task
Thousands of processes - Own memory space, heap and stack
No ”global” errors. Stop errors propagating
Predictable performance
Lu´ Ferreira
ıs Erlang in a (real) nutshell
12. Some of the essential characteristics
Low memory overhead per process/task
Thousands of processes - Own memory space, heap and stack
No ”global” errors. Stop errors propagating
Predictable performance
Functional/single-assignment
Lu´ Ferreira
ıs Erlang in a (real) nutshell
13. Some of the essential characteristics
Low memory overhead per process/task
Thousands of processes - Own memory space, heap and stack
No ”global” errors. Stop errors propagating
Predictable performance
Functional/single-assignment
Asynchronous message passing (send and pray) - Any Erlang
value
Lu´ Ferreira
ıs Erlang in a (real) nutshell
14. Some of the essential characteristics
Low memory overhead per process/task
Thousands of processes - Own memory space, heap and stack
No ”global” errors. Stop errors propagating
Predictable performance
Functional/single-assignment
Asynchronous message passing (send and pray) - Any Erlang
value
OS independent
Lu´ Ferreira
ıs Erlang in a (real) nutshell
15. Some of the essential characteristics
Low memory overhead per process/task
Thousands of processes - Own memory space, heap and stack
No ”global” errors. Stop errors propagating
Predictable performance
Functional/single-assignment
Asynchronous message passing (send and pray) - Any Erlang
value
OS independent
Messages retrieved selectively from the mailbox
Lu´ Ferreira
ıs Erlang in a (real) nutshell
16. Some of the essential characteristics
Low memory overhead per process/task
Thousands of processes - Own memory space, heap and stack
No ”global” errors. Stop errors propagating
Predictable performance
Functional/single-assignment
Asynchronous message passing (send and pray) - Any Erlang
value
OS independent
Messages retrieved selectively from the mailbox
Message passing by copy of data
Lu´ Ferreira
ıs Erlang in a (real) nutshell
17. Sequential Erlang
Sort
sort([Pivot|T]) ->
sort([X||X <- T, X =< Pivot]) ++
[Pivot] ++ sort([X||X <- T, X >= Pivot]);
sort([]) -> [].
Lu´ Ferreira
ıs Erlang in a (real) nutshell
19. Concurrent Erlang
Area Client
-module(client).
-export([square/1]).
square(Val) ->
server ! {self(),{square,Val}},
receive
Area ->
io:format("Area: ~p~n",[Val])
end.
Lu´ Ferreira
ıs Erlang in a (real) nutshell
20. Other features
Fault tolerance (catch/throw)
Trapping exits
Linked processes Exception handle
Hot code replacement try return(X) when
Generic behaviours is integer(X) ->
... try return error(X) of
Val -> {normal,Val}
catch
exit:Reason ->
{exit,Reason}
throw:Throw ->
{throw,Throw}
error:Error ->
{error,Error}
end.
Lu´ Ferreira
ıs Erlang in a (real) nutshell
21. Other features
Fault tolerance (catch/throw)
Trapping exits
Linked processes Trap exits
Hot code replacement process flag(trap exits,
Generic behaviours true),
... P = spawn link(Node, Mod,
Func, Args),
receive
{’EXIT’, P, Why}->
Actions;
...
end
Lu´ Ferreira
ıs Erlang in a (real) nutshell
22. Other features
Fault tolerance (catch/throw)
Trapping exits
Linked processes
Hot code replacement
Generic behaviours
...
worker
supervisor
Lu´ Ferreira
ıs Erlang in a (real) nutshell
23. Other features
Fault tolerance (catch/throw)
Trapping exits
Linked processes
Hot code replacement
Generic behaviours
...
Lu´ Ferreira
ıs Erlang in a (real) nutshell
24. Other features
Fault tolerance (catch/throw)
Trapping exits
Linked processes
Hot code replacement
Generic behaviours
...
Lu´ Ferreira
ıs Erlang in a (real) nutshell
25. Other features
Fault tolerance (catch/throw)
Trapping exits
Linked processes
Hot code replacement
Generic behaviours
...
Lu´ Ferreira
ıs Erlang in a (real) nutshell