Akka Streams: A Motivating Example
A demonstration of why Akka Streams is an awesome tool.
Colin Breck (@breckcs)
7 Most Convenient Ways To Create A Future Either Stack. Herding cats - day 16. Scaling Financial Reporting at Airbnb. Scala Up North 2017 CFP. 10% discount for Scala Essentials Workshop April 7th, 2017, Dallas (TX).
The wrong abstraction. Recap in our reading club. Spark/Scala MOOC + Capstone Project Now Live on Coursera!. Introduction to Recursion Schemes with Matryoshka. Analyzing functions returning Future[T]. Building Web applications with Scala.js and React - Part 1.
The myth of using Scala as a better Java. Allow Typeclasses to Declare Themselves Coherent. Patterns for Streaming Measurement Data with Akka Streams. Using TensorFlow models from the JVM using TensorFlow Serving. Clustering Akka in Kubernetes with Statefulset and Deployment.
Ad hoc polymorphism in Scala for the mere mortals. Customizing Circe's auto generic derivation. A Simple Akka Cluster Application. Extending RequestContext in akka-http for fun and profit. Typeclass encoding in Dotty.
New proposal for lazy semantics of implicit by-name parameters. Introducing Scastie - An interactive playground for Scala. Scala Tutorials Part #11 - String Interpolation. Scala Italy 2017 Call for Paper. ScalaSphere 2017 with 50% discount for Scala Times readers!.
Akka Streams: A Motivating Example. Basics - Scala Documentation. Building Regular DSLs in Scala. Using Shapeless to Validate Typesafe Configuration Data. Scala Italy 2017 Call for Paper.
Akka Streams: A Motivating Example. Scala Italy 2017 Call for Paper. ScalaSphere 2017 with 50% discount for Scala Times readers!. Typelevel Scala 2.12.1.
From Monad Transformers to the Eff Monad. First Scala Platform meeting. Asynchronous Programming and Scala. Bring some color to your Scala compiler. Things I Wish I Knew When I Started Building Reactive Systems.
Free Monads in Web Stack — Part I. What's new in Clippy?. Parsing Simple Grammars In Scala With parboiled2. Borders, Approximations and Geo-Hashes. Scalar Call for Papers (ends Jan 31st!).
Why scala.collection.Traversable Is Bad Design. Akka ❤️ Ammonite. Revisiting Tagless Final Interpreters with Dotty. Community Survey 2016 Summary. Rewriting Process Algebra, Part 1.
Tracing back Scala Future chains in asynchronous programming. TensorFlow in Scala with ScalaPy. Scala Cats library for dummies - part 4. Scala By The Bay 2016. Scalar Call for Papers (ends Jan 31st!).
Work Stealing: What Makes the Play Framework Fast. A New Strategy for Scala. Scala Enumerations - Return of the (Java) Jedi. Best Scala talks I've seen in 2016. Scalar Call for Papers (ends Jan 31st!).
Implicit Design Patterns in Scala. Exploring Currying and Partial Application using Scala. Akka Streams, a Story of Scalability. Scalar Call for Papers (ends Jan 31st!). Scala DevTools Summit 2017, 10% discount for our readers!.
The most important Streaming abstraction. Kentucky Mule — limits of Scala typechecking speed. 10 Amazing Scala Collection Functions. Scalar Call for Papers (ends Jan 31st!). Scala DevTools Summit 2017, 10% discount for our readers!.
Akka Actors to Akka Streams: When You Should Care. Akka Cluster Management. The Proof - Monad as a Monoid in Category of Endofunctors. Essential SBT for Scala. More Longevity Awesomeness with Macro Annotations!.
Request and Session access in Lift Futures. Streams in Artery. Aeron in Artery. Implicit Function Types. Scalar Call for Papers (ends Jan 31st!).
Yet another sbt-docker introduction. Tweet image analysis talks I. Mutual Tail Recursion For Fun and Profit. Old Design Patterns in Scala. Introducing the Scala Platform Process.
SPLASH Amsterdam and Higher-kinded Types. AkkaPaint - simplicity and power of Akka. API Design for Heaps (aka Priority Queues). Introducing a schema-safe Scala Cassandra driver. My journey towards understanding distribution.
Partition Keys in Longevity. Alpakka 0.1 - a call to arms. Event sourced microservices. Typelevel fix point. IntelliJ IDEA 2016.3 RC: Scala.Js, Scala.Meta and More.
ConductR - One tool to rule them all. Gauge interest in and fixes/features wanted for TLS for 2.10.x. Lightbend Tech Digest - October 2016. Scalar Call for Papers (ends Jan 31st!). BeeScala, 20% discount for our readers!.
Akka Streams adapter — Eventuate. Playing with Play. SQL. Scala Cats library for dummies part 3. SBT Native Packager 1.2.0. Scala 2.12.0 is now available!.
Scala Cats library for dummies. Writing AWS Lambdas In Scala. Using RefTree for Visualizing Data Structures. Spotlight: GraphStage emit and friends. Handling failure using Xor and Validated data types.
Handling Split Brain scenarios with Akka. Awesome Error Messages for Dotty. Free Monads Are Expendable. Migrating from sbt 0.12.x. Longevity 0.15.0 - Query Enhancements.
Repository Pattern/Generic DAO Implementation in Scala using Slick. Beyond Code Style. Demystifying Akka Extensions. Descriptive Variable Names: A Code Smell. Modern Functional Programming: Part 2.
Using shapeless' HLists for extra type safety (in Akka Streams). Akka 2.4.11 Released!. Subtype type classes don't work. Chat With Akka HTTP Websockets. Learning Shapeless: HLists.
Machine (re)learning: Neural Networks from scratch. Hodling bitcoins with OP_CHECKLOCKTIMEVERIFY. Scalaz Monad Transformers. Modern Functional Programming: Part 2. Bits of Shapeless part 2: Generic Derivation.
The missing diamond of Scala variance. Getting started with Akka Stream Kafka. New Scalameta Inline Macros- Examples. Akka starter kit. Choosing variance for a phantom type.
Akka Streams Kafka 0.11 Released. FS2: Functional Streams for Scala 0.9. Scala 2.12.0-RC1 is now available!. BeeScala - free ticker raffle! Lubljana, Slovenia, Nov 25-26. Scala.IO Lyon - we have ticket winners!.
Monix: Version 2.0.0 Final Release. Akka Community Survey 2016. Making Sense Of Symbols In Scala's Collections API. Akka Persistence: Testing Persistent Actors. Scala.IO Lyon 2016 - win free tickets!.
CQRS and ES with Akka. Configuration-level Optimistic Locking with Longevity. Pokemon Go with Akka HTTP!. Writing Akka Streams Connectors for existing APIs. What's new in ScalaTest 3.
How to make the Scala compiler to review your code. Akka HTTP - stable, growing and tons of opportunity. Higher-kinded types: the difference between giving up, and moving forward. Minutes of the 2nd meeting of the Scala Center, Q3, 2016. Akka Streams Integration, codename Alpakka.
How PayPal Scaled to Billions of Transactions Daily Using Just 8VMs. The Scala Ecosystem: Infographics. August SIP Meeting Results. Scaladoc has a new look. Comparisons with Other Solutions — Monix.
API Design for Heaps (aka Priority Queues). Windowing data in Akka Streams. Scala Library Index Reaches Beta!. Top Programming Languages Trends: The Rise of Big Data. From first principles: Why I bet on Scala.js.
Mastering GraphStages (part 1). Scala Scripting and the 15 Minute Blog Engine. Towards Scalaz 8. Reactive DDD with Akka - putting the pieces together. Akka 2.4.9-RC1 Released!.
Compile-time Queries with Quill. Refining the play scala actions. How to log in Apache Spark, a functional approach. Getting Started Neo4j with Scala : An Introduction. Understand Scala's core typechecking rules.
Which shoe fits you? Comparing Akka Streams, Actors, and Plain Futures. The worst thing in our Scala code: Futures. Implementing a Custom Akka Streams Graph Stage. SIP Meeting Results: 2 SIPs Numbered and 3 SIPs Updated. Scala eXchange London 2016 - Call for Papers.
Getting Asynchronous in Scala : Part 1 (Future, Callbacks, Combinators etc.). Message formats, marshallers and code quality. Bloom filter for Scala. How I contributed to Akka over the weekend. Akka Http Request Throttling.
Understanding Implicits in Scala. Let it crash! – the Akka team blog. Scala Exercises V.2. Akka Community update July 2016. Reactors, Channels, and Event Streams for Composable Distributed Programming.
6 products every Scala developer should use. What makes type classes better than traits?. Sbt heiroglyphs and multi-projects explained. Scala eXchange London 2016 - Call for Papers.
Strategic Scala Style: Designing Datatypes. Why you can’t always flatMap to Option. Dotty at EPFL. Scala case classes. List of Call For Papers for IT conferences.
Scala for human beings. Futures - 3 (Combinators and Async). Hands on Scalaz. Scala is the new golden child. Reactive Web Request Batching with Scala and Play Framework.
Overview of free monad in cats. Scalar 2016 talks. ScaLAB, Wrocław, June 25th 2016. Devoxx Poland, Krakow, 22-25 June 2016. Akka Streams in Practice.
Combining Reactive Streams, Heroku Kafka, and Play Framework. Getting started with emacs for scala programming. The Scala Center Advisory Board. Micro-optimizing your Scala code. Scalable Fraud Detection for Zalando's Fashion Platform.
Reflections on starting Android project with Scala. Finite state machines with Akka. Akka Remoting (Artery Milestone). Three Scala courses launched on Coursera!. Fetch: A new Scala library for simple and efficient data access.
Improving your project with SBT. Hacking on scalac — 0 to PR in an hour. The Scala Effect. Getting started with scala-native | Smartjava.org. Research & Engineering.
Scalar 2016 Scala Memes. Time Travel in Scala: CPS in Scala. Multiversal Equality for Scala. Simple NLP Search in Your Application. Scala goes Native.
Bridging C++ to Scala with BridJ. Announcing Scala.js 0.6.9. Strategic Scala Style: Practical Type Safety. Painless, type-safe config file parsing with Macwire and Ficus. Migrating from Spray to Akka HTTP – Zalando Tech Blog.
Programming in Scala, Third Edition. How to contribute to IntelliJ Scala plugin. The underrated applicative functor. ScalaMock: macros strike back. Scala macros part III – Intellij Idea Support.
Akka 2.4.4 Released. Implementing type-safe request builder: practical use of HList constraints. Explaining Miles's Magic. Monads are confusing. Let us help. Scalar 2016 presentations & summaries.
Dependency injection in Play Framework using Scala. EasyDI – Who wants some cake?. Scala IDE 4.4-vfinal. Hakk the planet: Implementing Akka HTTP (Un)Marshallers. My Emacs For Scala Development – Part 2.
Swagger for Akka HTTP. A Comonad of Graph Decompositions. Performance akka-http vs scalatra. Play framework and Slick. Functional Programming Infographics – Main Features of Scala.
Scala Options Explained. A first look at Akka streams. Building a lexer and parser with Scala's Parser Combinators. Typeclasses in Scala.
Over Constraining the Aux Type. Typesafe Domain Objects in Scala. WhiteBoard Coder: sbt: customize Shell Prompt with git branch (round 2). Unit Testing - Cassandra with Phantom. ActorLogging vs. scala-logging - what is the difference?.
Information hiding, enforced. "You don't need a macro". WhiteBoard Coder: sbt: Customize the Shell prompt in sbt. The Scala Center. Scalapeño 2016: Scala With a Kick!.
Play 2.5.0 is released!. Diving into Akka Streams. Programming with Algebra - Atlassian Developers. Building microservices with Scala and akka-http. A useful F#-style |> operator for Scala.
Akka Streams Integration With Intel GearPump Data Streaming Engine. Spray and Slick support for New Relic. Inspecting Akka's Supervision Strategy. A Type Level Proof of Uniqueness. |> Operator in Scala.
Futures in Scala 2.12 series. Patterns in Scala: 101. Quill + Cassandra. Futures in Akka. Typesafe Changes Name to Lightbend.
JSON numbers in circe 0.3.0. Strategic Scala Style: Principle of Least Power. Inverse Macro in Scala. Three cool things you can do with scala.meta. Purely Functional Data Structures and JMH.
The Essence of Scala. Adventures with Scala Collections. Akka Streams integration in Play Framework 2.5. Phantom Types in Scala. Fear, Uncertainty and Doubt in Scala land.
My Emacs For Scala Development – Part 1. Slick Extensions Open Sourced. Processing JSON data with Spark SQL. Scala and AWS Lambda Blueprints. 100x speedup by re-implementing batch processing with Akka Streams.
Scalability using Sharding from Akka Cluster. It’s existential on the inside. File upload using akka-http in Scala. Apache Spark as a Distributed SQL Engine. Scala Collection API for C# Developers.
Typelevel - new webpage. Losing track (Part 1). Akka Typed brings type safety to Akka framework. Essential Slick 3 Review. Be Like Water - A Shapeless Primer.
Why Scala.js is preferred language for front-end development. Reactive DDD with Akka - integrating the Event Store. The Rapture Manifesto. Yet another iteratee library. Getting started with Akka Cluster.
Reactive Streams for Kafka 0.9 with Akka Streams 2.0. Top 5 Scala Books in 2015. Why is the Aux technique required for type-level computations?. New Year Resolutions. Introducing Spark Datasets.
Scala best practices. Optimizing SBT resolution times. Circe design guidelines and justification. GearPump Real-time Streaming Engine Using Akka. Moving a team from Scala to Golang.
Sorting in Scala, tails of Functional Programming. Avoid Javaisms: Mocks, Stubs, DI is Code Smell. Typelevel - The benefits of community. A Scala view of Rust. Scala eXchange 2015 - Videos.
SSO for Your Single Page Application (Part 2/2 - Akka HTTP). Reactive Database Access - Part 1 - Why "Async". Approaches to data auditing and introducing Slick-Eventsourcing. Typesafe ConductR available. Akka to the rescue.
Akka Configuration Checker. Akka 2.4.1 Released!. EffScript: Practical Effects for Scala. Akka Stream and Http 2.0-M2 Released!. How to build a Scala REST CRUD application with Spray.
Macro paradise 2.1.0-final. Generalized type constraints in Scala (without a PhD). Arrows, Monads and Kleisli - part II. Scala Plugin EAP Speeds Up Coding Assistance. 5 Scala Puzzlers That Will Make Your Brain Hurt.
Akka HTTP Session 0.2.0. My Five Years of Scala - No Fun Allowed. 5 things we hate about Spark. Scala will be a beginner programming language at LTH. Stream Processing with Apache Flink.
The mystics are coming out. Default type parameters with implicits in Scala. Scala is not a mythical monster! Using scala with Spring boot. Data Science for Losers, Part 3 – Scala & Apache Spark. Writing Monads in Scala with Spark-Notebook.
Customizable gradual polymorphic effects for Scala. Solving problems in a generic way using Shapeless. Akka Cluster 2.4. Custom data validation rules with Shapeless tags. IntelliJ IDEA and Scala plugin 2.0.0.
The Dotty compiler for Scala bootstraps. SBT with an external build tool. A comparison of Akka Persistence with Eventuate - Martin Krasser's Blog. Event sourcing + free monads = free sourcing?. From F to DOT: Type Soundness Proofs with Definitional Interpreters.
Reification, Kleislis, and Stream Libraries. Scala and Spark Notebook: The Next Generation Data Science Toolkit. Typeclass in Scala and Haskell. Real-Time Stream Processing at InMobi - Part 4. Scala Up North 2015 videos.
Akka Typed: First steps with typed actors in Scala. Fuzzing Raft for Fun and Publication. Collections Redesign Proposal. Akka without the Actors. Samsung wants to help IoT speak a common language.
TIOBE Index for October 2015. Spark Dataframes transformations with state Monad. Wanted: Strawman proposals for new collections architecture (Dotty). Free monads - what? and why?. Make Them Suffer / Actors Internal State.
Learn implicits: Type classes. Reactive Monitoring Beta Progam. Better Spray metrics with Kamon. Scala Development with IntelliJ IDEA. Spark Streaming: Tricky Parts.
Redis Plugin for Akka Persistence. Introducing a new MongoDB Scala Driver. Scala in North Lakes. Scala in the browser. Getting Started with Scala.js. Beyond Scala Lens.
Reactive Kafka with Scala. Introduction to Eventuate. The Aux Pattern. Open Sourcing Task Library For Queueing Reliable Task Execution. Entry-level, synchronous & transactional event sourcing.
Akka Streams and Apache Camel. Monifu vs Akka Streams. Understanding Akka's Recommended Practice for Actor Creation in Scala. FS2: The Official Guide. A Hands-On Introduction to ScalaTest.
A Journey into Reactive Streams. Lens in Scala. How To Set Request Throttling on a Dispatch HTTP Client. How Flink handles backpressure. Dockerizing you Scala apps with sbt-docker.
Introduction to Akka Actors. The basics of Lenses in Scala. Connecting dots with Akka Streams. How Autodesk Implemented Scalable Eventing Overs Mesos. Akka Data Stream Processing.
Diving into Spark Streaming's Execution Model. Variance in Scala ("Luke, he is your father too"). Elastically Adding and Removing Nodes Using Akka cluster. Using shapeless HLists with Slick 3. Quasar and Akka - a Comparison.
Category Theory jargon cheat sheet. Learn implicits: views as class extensions. Zero to deep Learning with Scala. Encoding of GADTs in Scala. Scala Dissection: Basic Types.
A Map of Akka. SIP/SLIP Summary, July 27th 2015. Testing without mocking in Scala. Websockets Server with akka-http. Functional patterns for Scala beginners.
Top 100 Scala Libraries in 2015. Some fun with akka-streams and akka-http. The need for Acknowledgement in Streams. Use akka-stream BidiFlows with an IRC client. Scala Up North CFP ends soon!.
Akka Streams & Http 1.0 Released!. A Quick Overview of Slick 3.0. Partially Applied Functions in Scala. Client-side sessions for akka-http. Functional Error Accumulation in Scala.
Bootzooka, Summer 2015. Throttling Instantiations of Scala Futures. Play @ Delft Software Architecture course. Cancelling work in flight. Scala Doesn't Have To Be Complicated.
Learn to cook pancakes, the Akka way. When & why to use Supler for web forms. Akka Distributed Data. Why we chose Scala. Open Source Async MongoDB driver for Scala & Play Framework.
Scala 2.11.7 is now available!. Inventory App Part 1. Easy Performance Wins With Scalaz. How to create XML models in Scala? - scalaxb. Herding Cats - days 9 and 10.
Scala Days Amsterdam 2015. Event-sourced game implementation example: Part 2/3. An Introduction to Cats. Why we picked AKKA cluster as our microservice framework. Peeking Under The Covers in Scala.
Spark monitoring: How to Handle 10B Requests a Day. Escape to an Inner Object. One Up: Bulding machine learning pipelines with Mario. Scala.js: first impressions. Slick-based (Scala) Flyway Migrations.
Typechecking SQL in Slick and doobie. 2.2 Billion Clicks And Beyond. Reactive Streams 1.0.0 interview. Backpressure in action with websockets and akka-streams. A quick look at Scalameta.
Comparing akka-stream and scalaz-stream with code examples. Scala Case Classes in Depth. The Good Parts: Reflections after 1.5 years of Akka. New in Bootzooka - Towards the Reactive. SpinGo <3 Scala.
Huffington Post's new Publishing Platform On Typesafe. ConductR 1.0 released. Ad Hoc Polymorphism in Scala With Type Classes. How one company improved developer productivity by 700% with reactive programming. The Honeymoon Is Over.
Returning the "Current" Type in Scala. Slick 3: Reactive Streams for Asynchronous Database Access in Scala. Herding Cats - day 4. Play framework security with Silhouette. The Bet With Typesafe That Got Me Into Building Akka.
Overview of Akka Typed. Path dependent types - modeling algebraic structures has never been easier. Returning the "Current" Type in Scala.
Monadic IO: Laziness Makes You Free. Introduction to Akka Streams. ConductR: Typesafe's move in lightweight containers and age of distributed clusters.. Practices for Distributed Scala Teams. Akka Streams & HTTP 1.0-RC1.
Free Monads Are Simple. Typesafe ConductR from a developer's perspective. Gems of SBT. Scala vs. Node.js as a RESTful backend server. Developing Play Applications using Gradle.