Perspectives
Code Spelunking: Uncovering Convex's API Generation Secrets
As the newest member of the Convex team I am keen to find out how the magic works. Join me as I go spelunking through the codebase and uncover how the API generation actually works under the covers.
Mike Cann
11 days ago
Company Values that Matter
A good set of values can be critically important in establishing a team that stands for something. This post outlines why company values are important, what characteristics good and bad company values have, and how to run a process to determine your company values. This applies equally well to a company or team or any other organization.
James Cowling
13 days ago
Convex: The Database that Made Me Switch Careers
Today is my first day working for Convex 🎉, so I thought I’d take the opportunity to share my thoughts on why I decided to join and what excites me about the technology.
Mike Cann
16 days ago
An Object Sync Engine for Local-first Apps
Object sync engines manage a rich object graph across multiple clients and a centralized server and are a great fit for building local-first apps.
Sujay Jayakar
a month ago
Mobile-first: Building Google Photos
Indy, our Head of Product, led building Google Photos for Android. This is his story.
Indy Khare
a month ago
A Map of Sync
We can categorize sync platforms across nine dimensions: data size, data update rate, the structure of the data, input latency, offline support, number of concurrent clients, centralization, flexibility, and consistency.
Sujay Jayakar
2 months ago
What is Sync?
Sync platforms like Convex simplify distributed state management, ensuring that developers can focus on building their applications rather than managing backend complexities.
Jamie Turner
2 months ago
Configure Cron Jobs at Runtime
Even though Convex supports the creation of cron jobs out of the box, until now, we've only supported static jobs. With user space crons, we now support the programmatic definition of crons at runtime.
James Cowling
5 months ago
The “full-stack framework” fallacy
When people want a full-stack framework, what they really want is an opinionated backend that interoperates seamlessly with their frontends in a way that empowers full-stack developers to easily build apps that can scale.
Ian Macartney
6 months ago
The Ultimate Caching Definition: Invalidation, Optimization, and Layers
A cache is a non-authoritative representation of data maintained for performance reasons. Find out what these words mean and when you should care about them here.
Jamie Turner
7 months ago
Work Stealing: Load-balancing for compute-heavy tasks
Compare push-based load balancing with pull-based work stealing as scalable strategies for distributing resource-intensive workloads, such as running LLM models for AI apps.
Ian Macartney
7 months ago
Databases are Spreadsheets
I want to share my mental model of databases:
- Databases are just big spreadsheets
- An index is just a view of the spreadsheet sorted by one or more columns
- Binary search over a sorted list is faster than a linear scan (for large lists)
Sarah Shader
8 months ago
How We Horizontally Scaled Function Execution
We shipped a behind-the-scenes update that lets customers run 10x concurrent functions than they used to. Emma, who helped ship the update, provides the context, architecture, and impact.
Emma Forman Ling
8 months ago
How Convex Works
The full, unabridged story on how the Convex internals work.
Sujay Jayakar
8 months ago
Compiling the Convex Open-Source Backend
Read this article to learn how you can build our open-source backend from source.
Nipunn Koorapati
9 months ago
Backends Should be Designed for Product Developers
Our CTO James gave a talk at Developer Week 2024 about how backends have been letting down product developers by not providing clean abstractions that empower development without introducing unnecessary complexity.
James outlines four major failures of the status quo:
* Bad ideas in query models
* Bad ideas in type systems
* Bad ideas in caching and performance
* Bad ideas in data sync
He explains why these exist, how they are holding back developers, and discusses recent innovations at Convex that address these four areas.
James Cowling
9 months ago
Convex: The Software-Defined Database
Which to choose, the expressive power of code, or the robustness of built-in database features? With Convex, you can have both. By eliminating the boundary between the application and the database, Convex provides a uniform and powerful way to model your entire backend data flow and security using plain ol' code.
Jamie Turner
10 months ago
Why I use Convex over Supabase as my BaaS
An overview of Convex and Supabase, comparing the DX and capabilities of both products when building out the same application.
Web Dev Cody
10 months ago
Building Context Augmented AI Chat in Practice: AICamp 2023 EOY Meetup
At AICamp's end-of-year meetup for 2023, Michal goes over why you should build a custom AI-powered chat for your product, what options you have for building one, and which one you should ultimately choose.
Michal Srb
a year ago
Everyone Can Be a Full-Stack Engineer
Alex Cole discusses dynamic web apps, how serverless solutions compare to in-house stacks, and how product development changes when individual engineers can own features end-to-end.
Alex Cole
2 years ago
Searching for Sanity
Your document is safely stored, but search is coming up empty? Inconsistent search systems can really confuse users! Don't worry–in Convex, transactional search indexing ensures that users always get what they expect and your apps just work.
Jamie Turner
2 years ago
It's not you, it's SQL
SQL has been a part of computing for a very long time, and SQL-based database systems underly most of the world's applications. But recently, developers have been clamoring for something better, and it's time to move on.
Jamie Turner
2 years ago
Ready for Actions
Convex 0.5.0 introduces built-in support for actions — arbitrary lambda functions that run in a Node.js environment on the Convex cloud. We use the term action to differentiate these functions from Convex mutation and query functions, which enable transactional writes and dynamic subscriptions that update whenever data changes.
James Cowling
2 years ago
Jamstack Conf 2022 Panel: The Future of Databases
Today, a new wave of innovation is making databases approachable for developers without requiring a specialized skillset, opening the door to a whole new category of ambitious web experiences. In this panel, you’ll hear from the people pushing the boundaries of database technology and learn what’s possible — and what’s coming.
James Cowling
2 years ago
The serverless revolution deserves more than just a serverless database
The serverless movement has eliminated so many problems but it has left application developers with the hardest one of all: managing distributed state.
James Cowling
2 years ago
The future of databases is not just a database
The future of databases is Convex. This video originally aired at Jamstack 2022, highlighting the next evolution of modern web development architecture.
James Cowling
2 years ago
The platform you need, when you need it
You don’t have to worry about the platform locking you into a decision that seems convenient at first but is a headache to deal with later.
Indy Khare
3 years ago
Data Interactivity in the Serverless Future (HYTRADBOI 2022)
Dynamic application developers need global state management, not a database.
James (@jamesacowling) presents his talk from the HYTRADBOI 2022 database conference on how Convex is rethinking how app developers manage global state.
James Cowling
3 years ago
The unfulfilled promise of functional ideals on the web
Ideas around immutability, purity, and dataflow programming are quietly saturating our technologies like Bitcoin and React. And while these early inroads are enabling exciting new ways to build large and dependable applications, there is still much to do to realize the full potential of this revolution.
Jamie Turner
3 years ago