Ask Jamie whatever
gonna spend a few hours on threads and stuff here today, so lemme know if I can look at anything đź§µ
26 Replies
please do it in this thread though to keep #general sane
Hey Jamie! đź‘‹
I’ve been curious about digging into scalable schema design for Convex — are there any docs, examples, or best-practice guides you’d recommend ?
well, the new book is going to go into this a lot! for now, starting out with everything in one schema.ts is fine, but make sure to break out your type definitions into top-level things so that you can reuse them in function validators etc. most people find that useful
Totally unimportant question: why is it that your Discord profile pic sometimes appears as you, and other times as Animal (from the Muppets)? At first I thought you might have two profiles, but that's clearly not the case. Just can't understand how they end up swapping, and especially confused when a channel shows one, but pulling up your profile shows another.

as your codebase grows, people will tend to colocate specific table definitions inside subdirectories near all the functions that "manage" those tables, to keep everything encapsulated and easier to read & reason about
I don't think it's worth doing that too early though. KISS is fine out of the gate. refactoring is easy and safe to do when you need to
I dunno, discord confuses me all the time
I love music and play drums, thus animal. I have a server-specific profile here, but I can't figure out how consistently that's how I show up here
re: the whole "define validators and export them", you can see us using that pattern in chef here: https://github.com/get-convex/chef/blob/main/convex/schema.ts
GitHub
chef/convex/schema.ts at main · get-convex/chef
The only AI app builder that knows backend. Contribute to get-convex/chef development by creating an account on GitHub.
A whole new book is coming of convex!!
Okay will stick with schema.ts until the app grows and start moving shared types into top level validators.
By the way when the book is launching ?
hope to have the first draft out within a few weeks. not all sections will be filled out at first, but we'll just keep working in public and getting feedback from everyone while we go
Okay will see the pattern here and try to learn from it.
Would love to read that book..
Thanks for the help.✨️
sure! outline is here: https://discord.com/channels/1019350475847499849/1430974297383633138
probably because you can set a different pic for a specific discord and still have your main profile pic 🤷🏼‍♂️
I've been thinking for a while to create a minuture convex environment on my local machine, so I've wanted to use indexed db along with local storage to keep track of everything, what's stopping me is knowing how to stop deployment to convex, and how to push it to the cloud once when I've regained a stable Internet connection
@Jamie Hey Jamie, what are your thoughts on the convex-helpers directory? There’s a lot of good stuff in there, but since it’s not really covered in the docs, it sometimes feels a bit hacky to rely on.
I wanted to use Rxdb with dixiejs for this, since they offer a decent environment for that
@Patolord the "convex guide" is going to leverage some of convex-helpers
maybe the core 15% or so
this will indicate their graduation into a new convex standard library of sorts (LTS)
convex-helpers will continue to be a proving ground for new abstractions
wdyt about tanstackdb?
I keep wanting to see if it's a natural fit
Any news on the embedded duckdb?
it's slotted behind finishing the planetscale migration (2 weeks?) and then EU region support. if we hire 1-2 more infra engineers, maybe we can start on it sooner
okay! it will unlock so many new possibilities in convex
about eu hosting, will it be possible to migrate an existing project?
This makes sense as well, but using indexed db over local storage means i don't have to worry about exceeding the quota if i wanted to keep the local environment data that i have right now
Yes, but it will have to be done via backup and restore. We won’t support any kind of automatic online migration on day one.
I get that, but why would it not show the profile for the server I'm on? If you look at my screenshot earlier (captured directly from the desktop app moments after he opened this thread), his personal profile—the Animal version—was showing up when clicking on his Convex server name, while the image by his messages was the one for the server. Moments after capturing that screenshot, clicking on his name correctly brought up his Convex server profile.
Sometimes it's the reverse: the image by his messages is Animal, but the profile it displays is the Convex profile. It's like Discord can't decide which one to go with.
What's even more strange is that I've never seen that profile-flipping behavior with any other Discord user.
Hey Jamie! How long do you anticipate the EU hosting to take from when you start working on it?
I dunno. a good question for @James Cowling and @Gautam
@jamwt Hey! 🙂 Any updates on if you'll contiunue to maintain convex auth?
And, any chance of getting a some sort of a public facing roadmap?
A public facing roadmap would be awesome!
From my experience (watching another software company publish a roadmap, and seeing the outcome of doing that), public-facing roadmaps are great for the public, but they're horrible for the company. It's way too easy for users to view a published roadmap as a series of promises; e.g. here's the guaranteed order of new features, or we'll absolutely give you Feature X by Date Y. If a new priority surfaces that needs to move ahead of some others, or accomplishing a given thing takes longer than is announced, the public gets angry because the company didn't stick to their roadmap.
Frankly I like how Jamie and company have dealt with certain roadmap items. In AMAs or in discussions here, they'll sometimes offer a projection on when a thing might be ready, or they'll announce when they're actively working on a thing, but I can't recall them ever promising a given order or specific dates for anything. At most it's something like, "We're hoping for Q3." That's a much safer way to approach software development. Stuff comes up, and companies need to be able to pivot without worrying about how that pivot affects a published roadmap.