Amplify News
4.16.2024
Our Investment in Effectful

By Renee Shah and Lenny Pruss

Over the last 25 years, no programming language has established its supremacy quite like JavaScript. Originating in the halls of Netscape in 1995, JavaScript has indelibly shaped the digital canvas of the Web; 99% of websites are wholly or in part built with the language1. Today, there are over 20 million JavaScript developers worldwide and growing rapidly. As such, JavaScript and her younger sister TypeScript have become the lingua franca of the Web.

Notwithstanding its ubiquity, a persistent critique of JavaScript is its perceived lack of gravitas as a backend programming language. While it is acknowledged for its capacity to craft web interfaces, doubts linger regarding its suitability outside the browser. No doubt the ecosystem has come a long way, beginning with Node.js, a runtime environment that enables server-side JavaScript, but it’s still the exception to see large organizations betting on JavaScript as their toolchain of choice for complex, backend systems.

Consider a thought experiment wherein we could retain everything considered amazing about JavaScript – all the same concepts, the ergonomics, the rich toolchain – but enhance it with the robustness akin to a language such as Go or Rust.

Thought experiment over.

Now let us introduce you to Effect.

Effect is a library that bestows upon TypeScript extraordinary superpowers; it empowers JS/TS developers to build scalable, resilient, and reactive apps with less code and complexity. Effect neatly packages distributed computing concepts into a single library, enabling workflows like concurrency, dependency management, data modeling, error management, and resource safety. 

Effect achieves this by applying functional programming principles (FP) to TypeScript – but without all the pain of FP. In functional programming, everything a program needs to run lives within the function itself (e.g. no side effects), with no dependency on global state (e.g. everything is in the request itself – there are no stateful requests). This paradigm leads to modular programming, where “building blocks” can easily be composed into full-fledged applications. 

Despite these benefits, functional programming suffers from a steep learning curve, and thus has historically been limited to a niche set of developers via languages like Scala, Haskell, Kotlin, and Lisp. However, in recent years, we’ve observed a shift in developer taste towards a more modular, FP-inspired programming model. Look no further than the emergence and overwhelming popularity of TypeScript itself, which brings static types to JavaScript. Other examples include React, the most popular JavaScript frontend framework, and Nix, a toolkit to build, package, and deploy software in a reproducible way. Ultimately, we believe Effect will be next in line.

As such, it came to us as no surprise to learn that Effect had already been adopted in production at several companies, and through diligence we heard immense praise for the relatively nascent project from an active community of passionate users. In fact, co-founder of Prisma, Johannes Schickling, called Effect one of the most important web projects in the next 10 years

The community today is just the first step, as Effectful (the company around Effect) has an ambitious product roadmap of commercial offerings all focused on making mission-critical workflows doable, if not approachable, for TS developers worldwide. Their next product, Effect Cluster, is already in alpha and aims to solve the pains around clustering of programs and retry logic – a notorious thorny problem for developers to get right in the event of machine failures. This product will include Durable Business Workflows, which will make it easy to write code for real-time, multiplayer workflows (via the actor pattern), short-lived transactions (via implicit event sourcing), and high frequency scenarios (via state machines).

But of course, this all comes back to Michael Arnaldi, creator of Effect and founder of Effectful. Mike’s passion for a better path forward for the JavaScript ecosystem is clear. Mike conceived of Effect to solve his own pain points, and in the process, he created a beautiful piece of software that has resonated with developers around the world. He’s unfettered, and everything he does is with intention. As such, he’s been a steadfast leader of the growing Effect community, one that features 4,000+ Github stars and 2150+ Discord members. 

Earlier this year, Mike and the Effect community hosted the first Effect conference in February 2024; the conference was small and focused on networking with 100 attendees and speakers like John De Goes (Golem), Jess Martin (DXOS),  Guillermo Rauch (Vercel) and Johannes Schickling (ex-Prisma). 

To us, this is only the beginning of a movement that aims to redefine what’s possible for JS developers worldwide. With that, we’re so excited to announce our Seed Round in Effectful. And we’re looking forward to Effectful shattering the internet in the next 10 years.

(1) Source: Javascript