Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IntroToRx 2nd edition #2071

Merged
merged 27 commits into from
Dec 19, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
c5540cf
IntroToRx 2nd edition
idg10 Dec 15, 2023
1ab6ce9
Remove unused old cover image
idg10 Dec 15, 2023
2b37ddb
Removed unneeded kindle file
idg10 Dec 15, 2023
1d91dfa
Put IntroToRx link in main readme
idg10 Dec 15, 2023
1ff172a
Remove unused frontmatter.
HowardvanRooijen Dec 15, 2023
7870b9a
Remove old kindle formatting
HowardvanRooijen Dec 15, 2023
fdef832
Remove double empty lines
HowardvanRooijen Dec 15, 2023
1687c9c
Fix formatting issues detected in ebook production
HowardvanRooijen Dec 16, 2023
0240d34
Typos
HowardvanRooijen Dec 17, 2023
3eab41d
Add link to Ian's profile
HowardvanRooijen Dec 18, 2023
e06e5c6
Update SVGs
HowardvanRooijen Dec 18, 2023
4a21457
Add book cover
HowardvanRooijen Dec 18, 2023
7309a99
Fix incorrect link
HowardvanRooijen Dec 18, 2023
be68ed1
Fix broken link
HowardvanRooijen Dec 18, 2023
a02564d
FIx anchor link
HowardvanRooijen Dec 18, 2023
e5da385
Fix malformed link
HowardvanRooijen Dec 18, 2023
7b3f4a4
Fix link
HowardvanRooijen Dec 18, 2023
bc8282a
Fix links
HowardvanRooijen Dec 18, 2023
7fa31cb
Fix anchor links
HowardvanRooijen Dec 18, 2023
b27aab5
Fix link
HowardvanRooijen Dec 19, 2023
2d6d6de
Update readme
HowardvanRooijen Dec 19, 2023
2178bc6
Tweak image
HowardvanRooijen Dec 19, 2023
d192b41
Tweak formatting
HowardvanRooijen Dec 19, 2023
5aba2a1
Tweak intro
HowardvanRooijen Dec 19, 2023
3708f02
Tweak
HowardvanRooijen Dec 19, 2023
d1a5eaa
Update with community video links
HowardvanRooijen Dec 19, 2023
e9e150f
Consolidate roadmap
HowardvanRooijen Dec 19, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 22 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,20 @@ This repository contains four libraries which are conceptually related in that t

Each will be described later in this README.

## FREE Introduction to Rx.NET 2nd Edition eBook

<a href="https://introtorx.com/"><img align="left" alt="Introduction to Rx.NET 2nd Edition book cover." src="Rx.NET/Resources/Artwork/title_page_sm.png"/></a>

Reactive programming provides clarity when our code needs to respond to events. The Rx.NET libraries were designed to enable cloud-native applications to process live data in reliable, predictable ways.

We've written a FREE book which explains the vital abstractions that underpin Rx, and shows how to exploit the powerful and extensive functionality built into the Rx.NET libraries.

Based on Lee Campbell's 2010 book (kindly donated to the project), it has been re-written to bring it up to date with Rx.NET v6.0, .NET 8.0, and modern cloud native use cases such as IoT and real-time stream data processing.

Introduction to Rx.NET is available [Online](https://introtorx.com/), [on GitHub](Rx.NET/Documentation/IntroToRx/), as [PDF](https://endjincdn.blob.core.windows.net/assets/ebooks/introduction-to-rx-dotnet/introduction-to-rx-dotnet-2nd-edition.pdf), and [EPUB](https://endjincdn.blob.core.windows.net/assets/ebooks/introduction-to-rx-dotnet/introduction-to-rx-dotnet-2nd-edition.epub).

<br clear="left"/>

## Getting the bits

Channel | Rx | AsyncRx | Ix | System.Linq.Async
Expand All @@ -26,7 +40,6 @@ For nightly builds, configure NuGet to use this feed: `https://pkgs.dev.azure.co

Catch us in the #rxnet channel over at http://reactiveui.net/slack


## A Brief Introduction to Rx

In this digital age, live data streams are ubiquitous. Financial applications depend on a swift response to timely information. Computer networks have always been able to provide extensive information about their health and operation. Utility companies such as water providers have vast numbers of devices monitoring their operations. User interface and game building frameworks report user interactions in great detail. Delivery vans continuously report their progress. Aircraft provide performance telemetry to detect potential maintenance issues before they become serious problems, and cars are now starting to do the same. Many of us wear or carry devices that track our physical activity and even [vital signs](https://www.youtube.com/watch?v=6yjl_h7-WYA&t=2443s). And the improvements in machine learning have enriched the insights that can be derived from the ever-increasing volume and variety of live data.
Expand Down Expand Up @@ -60,7 +73,7 @@ The two key features of Rx are:

Rx has been particularly successfully applied in user interfaces. (This is also true outside of .NET—[RxJS](https://rxjs.dev/) is a JavaScript spin-off of Rx, and it is very popular in user interface code.) The https://github.com/reactiveui/reactiveui makes deep use of Rx to support .NET UI development.

To learn more, see this [Rx playlist](https://www.youtube.com/playlist?list=PLJt9xcgQpM60Fz20FIXBvj6ku4a7WOLGb).
Ian Griffiths presented a concise 60 minute overview of [Reactive Extensions for .NET](https://endjin.com/what-we-think/talks/reactive-extensions-for-dotnet) at the dotnetsheff meetup in 2020. More videos are available on the [Rx playlist](https://www.youtube.com/playlist?list=PLJt9xcgQpM60Fz20FIXBvj6ku4a7WOLGb).

## AsyncRx.Net

Expand Down Expand Up @@ -140,6 +153,13 @@ Rx has been around for roughly a decade and a half, so we owe a great deal to it

## Roadmap

As part of .NET Conf 2023, Ian Griffiths provided an update on the efforts to [modernize Rx.NET for v6.0 and the plans to for v7.0](https://endjin.com/what-we-think/talks/modernizing-reactive-extensions-for-dotnet).

For more information, see the following discussions:

- [Future Rx.NET Packaging](https://github.com/dotnet/reactive/discussions/2038)
- [Rx.NET v6.0 & v7.0 high-level plan](https://github.com/dotnet/reactive/discussions/1868)

We have set out a [roadmap](Rx.NET/Documentation/Rx-Roadmap-2023.md) explaining our medium term plans for ongoing development of Rx. This diagram illustrates our view of the platforms on which Rx is used, and the planned support lifecycles for these various targets:

![The support lifecycle for various .NET platforms, represented as a set of timelines, showing the published plans for widely used versions that are current as of 2023, with a particular focus on which versions will be current as of November 2023. The top section of the diagram shows .NET releases starting with .NET 6.0 being released in November 2021, and shows for each subsequent release occurring in November of each subsequent year, up as far as .NET 13.0 in November 2028. It also shows that even-numbered releases are Long Term Support (LTS for short) releases, supported for 3 years, while odd-numbered releases are supported only for 18 months. The section beneath this shows that .NET Framework versions 4.7.2, 4.8.0, and 4.8.1 will all be in support as of November 2023, and will continue to be in support beyond the timescale covered by this diagram, i.e., beyond November 2028. The section beneath this shows the release plan for MAUI, starting with version 8.0 on November 2023, and subsequent releases at the same time each subsequent year, up to version 13.0 in November 2028. The diagram shows that each of these versions is supported for only 18 months. Beneath this is are two lines showing Xamarin iOS 16.0, and Xamarin Android 13.0 support being active on November 2023, and running for 18 months. Beneath this is a line showing UWP version 10.0.16299 support being active on November 2023, and running beyond the timescale covered by the diagram. Beneath this is a section showing that Unity 2021 was released in 2021, and will go out of support near the end of 2023, and it shows a Unity 2022 release labelled as "Release soon," with a release date somewhere in the middle of 2023. The bottom of the diagram shows the endjin logo, and endjin's corporate motto: "we help small teams achieve big things."](Rx.NET/Documentation/RX-Platform-Support-Roadmap.png ".NET Platform Support Roadmap")
Loading