Workshop slides from the Alt.Net Seattle 2011 workshop. Presented by Wes Dyer and Ryan Riley. Get the slides and the workshop code at http://rxworkshop.codeplex.com/
Slides from a brief presentation about the 'docase' notation that I did at Haskell Hackathon in Cambridge. The notation makes it easier to work with monads that have some additional operations (such as Par monad or Parsers).
Slides from a brief presentation about the 'docase' notation that I did at Haskell Hackathon in Cambridge. The notation makes it easier to work with monads that have some additional operations (such as Par monad or Parsers).
One of the key concepts of functional programming is compositionality – the fact that we can build complex software using several basic “building blocks” and just a few ways of combining them. In this talk, I’ll demonstrate how we can teach this concept using F#. We’ll start with a basic example of this approach that even high-school students can easily understand – numerical expressions. Then we’ll move to more exciting examples of using library for composing 3D graphics. We’ll see that creating a fractal tree is not much more complicated than calculating the area of a triangle.
The recording is available online at: http://www.communityforfsharp.net/
(Video and code at https://fsharpforfunandprofit.com/pipeline/)
Passing data through a pipeline of transformations is an alternative approach to classic OOP. The LINQ methods in .NET are designed around this, but the pipeline approach can be used for so much more than manipulating collections.
In this talk, I'll look at pipeline-oriented programming and how it relates to functional programming, the open-closed principle, unit testing, the onion architecture, and more. I'll finish up by showing how you can build a complete web app using only this approach.
Python Programming Course Lecture by IoT Code Lab Training.
Discussed Topic:
Chapter 1: Basic Programming
* Operator
* Arithmetic Operation Example
* Assignment Operation Example
* Built in Function Example
* Math Module Example
* Other Operators
* Practice Problem 1.1
* Practice Problem 1.2
* Practice Problem 1.3
Game of Life - Polyglot FP - Haskell - Scala - Unison - Part 3Philip Schwarz
(download for picture-perfect quality) Follow along as Trampolining is used to overcome Stack Overflow issues with the simple IO monad, deepening you understanding of the IO monad in the process. See Game of Life IO actions migrated to the Cats Effect IO monad, which is trampolined in its flatMap evaluation.
Errata:
slide 33: "impure factorial function" should be "initial factorial function"
slide 34: there is a pointless short vertical bar inside a speech bubble
slide 39: "it is till annoying" should be "it is still annoying"
slide 44: "values that we are interested" should be "values that we are interested in"
This is continuation of the slide Advanced C part 1. In part 1 you learnt about fundamentals of C - How to build an algorithm, operators. In this module - Advanced C part 2 you will be learning about functions, pointers and standard Input Output functions. This slide will help you to move a further ahead in Advanced C and gain deeper knowledge on it.
The F# community has been steadily working on extensions to the F# core libraries. These extensions provide helpful features that are "missing," add common parts found in other functional languages, and help with compatibility in other .NET languages.
One of the key concepts of functional programming is compositionality – the fact that we can build complex software using several basic “building blocks” and just a few ways of combining them. In this talk, I’ll demonstrate how we can teach this concept using F#. We’ll start with a basic example of this approach that even high-school students can easily understand – numerical expressions. Then we’ll move to more exciting examples of using library for composing 3D graphics. We’ll see that creating a fractal tree is not much more complicated than calculating the area of a triangle.
The recording is available online at: http://www.communityforfsharp.net/
(Video and code at https://fsharpforfunandprofit.com/pipeline/)
Passing data through a pipeline of transformations is an alternative approach to classic OOP. The LINQ methods in .NET are designed around this, but the pipeline approach can be used for so much more than manipulating collections.
In this talk, I'll look at pipeline-oriented programming and how it relates to functional programming, the open-closed principle, unit testing, the onion architecture, and more. I'll finish up by showing how you can build a complete web app using only this approach.
Python Programming Course Lecture by IoT Code Lab Training.
Discussed Topic:
Chapter 1: Basic Programming
* Operator
* Arithmetic Operation Example
* Assignment Operation Example
* Built in Function Example
* Math Module Example
* Other Operators
* Practice Problem 1.1
* Practice Problem 1.2
* Practice Problem 1.3
Game of Life - Polyglot FP - Haskell - Scala - Unison - Part 3Philip Schwarz
(download for picture-perfect quality) Follow along as Trampolining is used to overcome Stack Overflow issues with the simple IO monad, deepening you understanding of the IO monad in the process. See Game of Life IO actions migrated to the Cats Effect IO monad, which is trampolined in its flatMap evaluation.
Errata:
slide 33: "impure factorial function" should be "initial factorial function"
slide 34: there is a pointless short vertical bar inside a speech bubble
slide 39: "it is till annoying" should be "it is still annoying"
slide 44: "values that we are interested" should be "values that we are interested in"
This is continuation of the slide Advanced C part 1. In part 1 you learnt about fundamentals of C - How to build an algorithm, operators. In this module - Advanced C part 2 you will be learning about functions, pointers and standard Input Output functions. This slide will help you to move a further ahead in Advanced C and gain deeper knowledge on it.
The F# community has been steadily working on extensions to the F# core libraries. These extensions provide helpful features that are "missing," add common parts found in other functional languages, and help with compatibility in other .NET languages.
The HTTP protocol adheres to the functional programming paradigm. This talk looks at HTTP on .NET and illustrates how F# allows for a more direct correlation to the patterns of composition inherent in the design of HTTP.
Presented at Houston Tech Fest 2009.
Many developers use enterprise service bus (ESB) tools such as BizTalk or, for those looking at a lighter-weight approach, NServiceBus. What many fail to realize is that we have another option, one that has been tried and tested for many years and that we all use daily: HTTP. Find out how HTTP can deliver a much more maintainable, simpler solution to your ESB problems.
An exploration into RxJava on Android for the experienced, yet uninitiated software engineer. This presentation explores Declarative vs Imperative programming paradigms and expands the discussion into Functional Reactive Programming. It explains the benefits of the observer contract, high-order functions, and schedulers available in RxJava. It also explains the purpose of the Android integration libraries: RxAndroid, RxLifecycle, and RxBindings.
Since these presentations were spare time hobby - I've decided to share them :)
Hopefully someone will find them useful.
This part continues 1. part with more design patterns like Command, State, NullObject.
Reactive Programming Patterns with RxSwiftFlorent Pillet
In this introduction to reactive programming and RxSwift you'll learn how common problems are solved in a reactive way to improve your architecture and write more reliable code.
Building Scalable Stateless Applications with RxJavaRick Warren
RxJava is a lightweight open-source library, originally from Netflix, that makes it easy to compose asynchronous data sources and operations. This presentation is a high-level intro to this library and how it can fit into your application.
Sergiy Grytsenko, Senior Software Engineer
“Reactive Extensions: classic Observer in .NET”
• Why should we use Rx when we have events?
• Key types & methods
• Lifetime management, flow control
• Combining several streams
• Tests, I need unit tests!
Welocme to ViralQR, your best QR code generator.ViralQR
Welcome to ViralQR, your best QR code generator available on the market!
At ViralQR, we design static and dynamic QR codes. Our mission is to make business operations easier and customer engagement more powerful through the use of QR technology. Be it a small-scale business or a huge enterprise, our easy-to-use platform provides multiple choices that can be tailored according to your company's branding and marketing strategies.
Our Vision
We are here to make the process of creating QR codes easy and smooth, thus enhancing customer interaction and making business more fluid. We very strongly believe in the ability of QR codes to change the world for businesses in their interaction with customers and are set on making that technology accessible and usable far and wide.
Our Achievements
Ever since its inception, we have successfully served many clients by offering QR codes in their marketing, service delivery, and collection of feedback across various industries. Our platform has been recognized for its ease of use and amazing features, which helped a business to make QR codes.
Our Services
At ViralQR, here is a comprehensive suite of services that caters to your very needs:
Static QR Codes: Create free static QR codes. These QR codes are able to store significant information such as URLs, vCards, plain text, emails and SMS, Wi-Fi credentials, and Bitcoin addresses.
Dynamic QR codes: These also have all the advanced features but are subscription-based. They can directly link to PDF files, images, micro-landing pages, social accounts, review forms, business pages, and applications. In addition, they can be branded with CTAs, frames, patterns, colors, and logos to enhance your branding.
Pricing and Packages
Additionally, there is a 14-day free offer to ViralQR, which is an exceptional opportunity for new users to take a feel of this platform. One can easily subscribe from there and experience the full dynamic of using QR codes. The subscription plans are not only meant for business; they are priced very flexibly so that literally every business could afford to benefit from our service.
Why choose us?
ViralQR will provide services for marketing, advertising, catering, retail, and the like. The QR codes can be posted on fliers, packaging, merchandise, and banners, as well as to substitute for cash and cards in a restaurant or coffee shop. With QR codes integrated into your business, improve customer engagement and streamline operations.
Comprehensive Analytics
Subscribers of ViralQR receive detailed analytics and tracking tools in light of having a view of the core values of QR code performance. Our analytics dashboard shows aggregate views and unique views, as well as detailed information about each impression, including time, device, browser, and estimated location by city and country.
So, thank you for choosing ViralQR; we have an offer of nothing but the best in terms of QR code services to meet business diversity!
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/
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!
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.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
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/
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™UiPathCommunity
In questo evento online gratuito, organizzato dalla Community Italiana di UiPath, potrai esplorare le nuove funzionalità di Autopilot, il tool che integra l'Intelligenza Artificiale nei processi di sviluppo e utilizzo delle Automazioni.
📕 Vedremo insieme alcuni esempi dell'utilizzo di Autopilot in diversi tool della Suite UiPath:
Autopilot per Studio Web
Autopilot per Studio
Autopilot per Apps
Clipboard AI
GenAI applicata alla Document Understanding
👨🏫👨💻 Speakers:
Stefano Negro, UiPath MVPx3, RPA Tech Lead @ BSP Consultant
Flavio Martinelli, UiPath MVP 2023, Technical Account Manager @UiPath
Andrei Tasca, RPA Solutions Team Lead @NTT Data
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.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
2. Logistics 30 minute sections 10 minutes presentation 10 minutes coding 10 minutes discussion New partner every section Prizes for best code during each section
3. Where can I get them? Install with NuGet Download at MSDN Data Developer Center
4. Outline Introduction to Rx A Unified Programming Model The Power of Rx RxJS Schedulers Event Processing Reactive Coincidence Continuations Everywhere Programming the Cloud
6. The Reactive Extensions Rx is … a set of types representing asynchronous data streams a set of operators to query asynchronous data streams a set of types to parameterize concurrency Rx = Observables + LINQ + Schedulers
7. Reactive Programming In computing, reactive programming is a programming paradigm oriented around data flows and the propagation of change. http://en.wikipedia.org/wiki/Reactive_programming
8. Why should I care? GPS RSS feeds Stock tickers Social media UI events Server management
9. Reactive Programming using Events Declare eventAction<int> E; Publish E(42); Subscribe E += x => Console.WriteLine(x);
10. Reactive Programming using Rx Declare ISubject<int> S = newSubject<int>(); Publish S.OnNext(42); Subscribe S.Subscribe(x => Console.WriteLine(x));
11. The Reactive Extensions Rx is … a set of types representing asynchronous data streams a set of operators to query asynchronous data streams a set of types to parameterize concurrency Rx = Observables + LINQ + Schedulers
12. classProgram { ISubject<int> S = newSubject<int>(); static void Main() { var p = newProgram(); p.S.Subscribe(x => Console.WriteLine(x)); p.S.OnNext(1); p.S.OnNext(2); p.S.OnNext(3); } } classProgram { eventAction<int> E; static void Main() { var p = newProgram(); p.E += x => Console.WriteLine(x); p.E(1); p.E(2); p.E(3); } } A Little Example
14. First-Class “Events” An object is first-class when it: can be stored in variables and data structures can be passed as a parameter to a subroutine can be returned as the result of a subroutine can be constructed at runtime has intrinsic identity (independent of any given name) http://en.wikipedia.org/wiki/First-class_object
21. The Reactive Extensions Rx is … a set of types representing asynchronous data streams a set of operators to query asynchronous data streams a set of types to parameterize concurrency Rx = Observables + LINQ + Schedulers
46. The Reactive Extensions Rx is … a set of types representing asynchronous data streams a set of operators to query asynchronous data streams a set of types to parameterize concurrency Rx = Observables + LINQ + Schedulers
50. Operational Layering Operators varxs = Observable.Range(1, 10, Scheduler.ThreadPool); var q = from x inxs where x % 2 == 0 select -x; q.Subscribe(Console.WriteLine);
51. Operational Layering Operators Observables varxs = newRangeObservable<int>(1, 10, Scheduler.ThreadPool); var q = newSelectObservable<int>( newWhereObservable<int>( xs, x => x % 2 == 0), x => -x); q.Subscribe( newLambdaObserver<int>(Console.WriteLine));
52. Operational Layering Operators Observables var n = 0; Scheduler.ThreadPool.Schedule(self => { if (n < 10) { if ((n + 1) % 2 == 0) Console.WriteLine(-(n + 1)); n++; self(); } }); Schedulers
53. Operational Layering Operators Observables var n = 0; Action<object> work = null; work = _ => { if (n < 10) { if ((n + 1) % 2 == 0) Console.WriteLine(-(n + 1)); n++; ThreadPool.QueueUserWorkItem(null, work); }}; ThreadPool.QueueUserWorkItem(null, work); Schedulers Native Concurrency
63. The Reactive Extensions Rx is … a set of types representing asynchronous data streams a set of operators to query asynchronous data streams a set of types to parameterize concurrency Rx = Observables + LINQ + Schedulers
70. from tick instockTicks group tick bytick.SymbolintosymbolStream from window insymbolStream.Buffer(2, 1) let increase = PriceIncrease(window) where increase > .1 select new { symbol = symbolStream.Key, increase }; LINQ: Event Processing source group aggregate apply filter reduce
71. Change MainForm.Query to compute the Average High and Average Low over the past 5 trading days as well as the current Close and Date Challenge: Event Processing
74. The Reactive Extensions Rx is … a set of types representing asynchronous data streams a set of operators to query asynchronous data streams a set of types to parameterize concurrency Rx = Observables + LINQ + Schedulers
85. The Reactive Extensions Rx is … a set of types representing asynchronous data streams a set of operators to query asynchronous data streams a set of types to parameterize concurrency Rx = Observables + LINQ + Schedulers
89. var x = 42; scheduler.Schedule(() => Console.WriteLine(x)); classClosure { public intx; public void M() { Console.WriteLine(x); } } var closure = newClosure(); closure.x = 42; scheduler.Schedule(closure.M); Distributed Scheduling Pass by value or reference?
97. var d = scheduler.Schedule(42, (s, x) => { var d1 = s.Schedule(x + 1, Console.WriteLine); var d2 = s.Schedule(x + 2, Console.WriteLine); }); Fan-out Scheduling How do we make d depend on d1 & d2?
106. node.js var net = require('net'); var server = net.createServer(function (socket) { socket.write("Echo server"); socket.pipe(socket); }); server.listen(1337, "127.0.0.1");
107. Challenge Using Rx, build a TCP server that works in a similar manner to node.js.
108. The Reactive Extensions Rx is … a set of types representing asynchronous data streams a set of operators to query asynchronous data streams a set of types to parameterize concurrency Rx = Observables + LINQ + Schedulers
109. Learn More Resources Rx Developer Center Rx on Channel 9 Projects ReactiveUI Fluent State Observer Reactive ETL ReactiveOAuth Reactive Remoting Extensions to the Extensions Reactive Extensions – Extensions Rx Contrib RxUtilities Rx Power Toys
Editor's Notes
Guaranteed sequential or
Does the code correctly add/remove multiple handlers?Is the code thread-safe?Can the code be refactored into a method?Can the code be generalized?
Discuss: Using Rx for web clients – same library with an Rx prefix, library integrationDemo: run through demos from the Bridging from the Existing World sectionDemo: jQuery integrationImage from http://www.skorks.com/wp-content/uploads/2010/04/javascript.jpg
How did you create an observablein GetQuotes?Did GetQuotes have any specific knowledge of what type of scheduler it uses?Did Query have any specific knowledge of how the observable it uses was produced?Why can we return IObservable<object> from Query?What does MyHistoricalScheduler.Run do?Ext.BindToChart contains an operator called ObserveOn, what does this do? What happens if we remove it?
Were you able to reuse most of your previous code?Could you create more complex queries from the results of your new query?What would you do if you wanted to capture the last 5 days and not the last 5 trading days?What really is the power of LINQ?
Which event has a duration?Which event stream defines the windows?Which event stream defines the data?Can an event stream without duration define the windows?Given a stream of points how can we compute deltas?Did you consider the initial point where the mouse button was clicked?
What are the two basic parameter passing mechanisms in distributed systems? How are they indicated?Why don’t closures work in distributed systems?Regarding the scheduler interface…Why is the state passed in?Why is a disposable returned by the func?Why is there a scheduler argument in the func?