Akka Streams: A Motivating Example
A demonstration of why Akka Streams is an awesome tool.
Colin Breck (@breckcs)
Minutes of the 6th meeting of the Scala Center, Q3 2017. Lambda World, October 26 - 27, Cádiz, Spain -15% discount. Scala eXchange, December 14-15, London. Reactive Summit, October 18-20, Austin, TX - 15% discount. Play 2.6.5 released.
Covariance, Contravariance and Culture in Scala. Builder Pattern in Scala with Phantom Types. Handling exceptions in Scala. Catch bugs with Scalafix v0.5. Status of the Collections.
Stalagmite and its speed. Integrating Akka Streams and Akka Actors: Part IV. There are at least three types of strings. Reactive Streams in Scala meet a Game Engine - Part 6. Use lambdas and combinators to improve your API.
Akka Message Delivery: At-Most, At-Least, and Exactly-Once. Scala, Learning FP By Terminology. Bootstrapping the Web with Scala Native (Part 1). 15% discount for Lambda World, October 26th, 27th 2017, Cádiz, Spain. Full Stack Fest 2017, September 4th - 8th, Barcelona, Spain.
5 New features in Akka (Streams) 2.5.4 you may have missed. Why I'm Excited About Scalaz 8. 15% discount for Lambda World, October 26th, 27th 2017, Cádiz, Spain. Full Stack Fest 2017, September 4th - 8th, Barcelona, Spain. Scala eXchange 2017, December 14th - 15th, London.
Zinc (sbt) friendly code. Spark SQL under the hood - part I. Using Scala.js with React and GraphQL. Learning Scala By Terminology Root Cause Analysis. Meow! Start using Cats in your project right now.
Integrating Eta Into Your Scala Projects. Scala Vector operations aren't "Effectively Constant" time. Avoiding Mocks in ScalaTest. Exploring Tagless Final pattern for extensive and readable Scala code. 15% discount for Lambda World, October 26th, 27th 2017, Cádiz, Spain.
Don't fear the Monad. A new adaptive accrual failure detector for Akka. Continuing or dropping Scala 2.10 maintenance in the ecosystem?. Hacker News API Part 2. Introduction to Tagless final.
ScalaQuest - a game to learn Scala. |> Operator in Scala. Scala Futures vs Monix Tasks. 15% discount for Lambda World, October 26th, 27th 2017, Cádiz, Spain. Full Stack Fest 2017, September 4-8 2007, Barcelona, Spain.
Reactive Streams in Scala: Akka Streams vs Monix - part 3. Scala in 2017 - The State of Developer Ecosystem. Analyzing GitHub, how developers change programming languages over time. Managing Library Dependencies in SBT Builds. Improving Akka dispatchers | Scalac.
Longevity Goes Finally Tagless. Reactive Streams in Scala meet a Game Engine - Part 4. A tale of bad framework choices. Making UI easily with Binding.scala. Simplified Testing with ScalaTest and Custom Matchers.
Integrating Akka Streams and Akka Actors: Part III. Monitoring Akka based applications with Cinnamon and DataDog. The State Of In-Application State: What No One Is Talking About. Reactive Streams in Scala meet a Game Engine - Part 3. The three laws of config dynamics.
Reactive Streams in Scala: Akka Streams vs Monix - part 2. A summary of Scala Days Copenhagen 2017. Cluster Aware Actors. Exploring Scala AST in your browser. Domain Models - Early Abstractions and Polymorphic Domain Behaviors.
Reactive Streams in Scala: Akka Streams vs Monix - part 1. Optics beyond Lenses with Monocle. The evolution of scalable microservices. Futures in Scala Protips (part 4): BlockContexts. What if I told you, Scala compiler can understand SQL queries?.
Data Structures Are Antithetical to Functional Programming. Integrating Akka Streams and Akka Actors: Part II. ScalaFiddle comes to Medium. Towards a faster Scala compiler. Akka monitoring with Kamon part 3.
Scala Enumerations Summary. Akka monitoring with Kamon part 2. Evaluation strategies in Scala. Five Early Challenges Of Building Streaming & Fast Data Applications. Functional Web Services with Final Encoding.
SoftwareMill blog: An interval-based rate limiter for Akka Stream. What's new with Scala Native?. Akka Typed: Timers. Warts of the Scala Programming Language. How well do you know your Scala trivia?.
Building a CQRS / ES Framework (part 1). Scastie is out of beta and available to everybody!. How to write a Scala compiler plugin?. Consider syntax with significant indentation. Akka Streams - What is NotUsed all about.
Akka Typed: Protocols. Akka anti-patterns: blocking. Lightbend's annual charity survey. Essential sbt Plugins. Akka Typed: Supervision.
Akka Typed: Coexistence. 5 tips for ScalaTest that will make Testing Great Again. Patterns for Streaming Measurement Data with Akka Streams. Akka Typed: Hello World in the new API. Scalar Conference 2017.
Crushing boilerplate with Scala macros. Custom GraphStage in Akka Streams. The Most Popular Languages for Data Science. An IO monad for cats. When the Scala compiler doesn't help.
Lightbend Monitoring Now Integrates With Datadog. Scala popularity contest: Scalar 2017 whiteboard voting results. ScalaSwarm weekly ticket giveaway or a discount for Scala Times readers!. 20% discount for LX Scala, May 12th 2017, Lisbon, Portugal. 25% discount for Scala Italy 2017, May 12th, Rome.
Monad Transformers for the working programmer. Comparing Scala relational database access libraries. Scalera tip: Handling sticky implicit contexts. Achieving 3.2x Faster Scala Compile Time. Why not both?.
ThCS. Introduction to programming with dependent types in Scala. The High Cost of AnyVal subclasses.... Your First Application With Play and Scala - DZone Java. Scala interview questions. Benchmarking Single-result Query Performance in Slick Using JMH.
Example Apache Spark ETL Pipeline Integrating a SaaS. Building on top of Reactive Streams. Integrating Akka Streams and Akka Actors: Part I. Equivalence versus Equality. Swagger with Play.
Adopting Scala: The Next Steps. Upgrading From Play Framework 2.3 to Play 2.5. Capturing Packets with Scala Native and libpcap. What are Scala Type Classes?. Type Families in Scala.
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.