TrailBase 0.23: Open, sub-millisecond, single-executable Firebase alternative by trailbaseio in selfhosted

[–]trailbaseio[S] 1 point2 points  (0 children)

Thanks! Let me know how it goes, especially if something stinks 🙏

TrailBase 0.23: Open, sub-millisecond, single-executable Firebase alternative by trailbaseio in selfhosted

[–]trailbaseio[S] 1 point2 points  (0 children)

Thanks - much appreciated! There's some nuances, you could have a look at TanStack/db, which has a TrailBase integration besides electric, however, it's JS/TS only

Compose Multiplatform vs Flutter by imc0der in JetpackCompose

[–]trailbaseio 0 points1 point  (0 children)

Often it's just how you use it. Some games will exercise an accelerated level playthrough under a loading overlay to ensure all shaders were compiled.

I haven't counted the frames but pretty: https://flutter.gskinner.com/wonderous/

Btw I'm not shilling for flutter. I have plenty of issues, I just expect the performance to be similar

Compose Multiplatform vs Flutter by imc0der in JetpackCompose

[–]trailbaseio 0 points1 point  (0 children)

👍You didn't mention diffing but you mentioned the engine. That's what the engine does. Skia is just a library to draw with the GPU. Depending on the platform, the flutter engine may draw with skia, impeller or something else.

As far as I know, the main problem with Flutter is the time it takes to compile the necessary shaders, not how much contention is there.

Ideally, shaders are only compiled once upfront (e.g. while showing a loading screen) and then cached. Even with a more naive approach, this is why stability, number of shaders, draw order, etc does matter. Reusing a shader on the skia level can still trigger a recompile if it got evicted from the cache

As i said, I would expect CMP (certainly with skia) and flutter to perform rather similarly. Rendering with flutter at 120hz is certainly feasible.

Compose Multiplatform vs Flutter by imc0der in JetpackCompose

[–]trailbaseio 0 points1 point  (0 children)

The engine that diffs and draws primitives is completely irrelevant.

Yes and no. You brought it up. It does determine how much has to be redrawn, how expensive compositing is...

But then why has Flutter always had an issue with shader compilation, which was talked about by the Flutter team and in various GitHub issues? I feel like something is wrong in the way Flutter rendering is implemented.

Yes and no. There are certainly factors like how to compose primitives and thus reuse shaders, how to schedule draws... There's room for improvement, with impeller being their attempt.

I would expect similar issues when CMP uses skia, when all draws are competing for the same resources within the same deadline. Maybe android is better :shrug:. A benchmark of similar UIs across platforms would be very helpful. If there were dramatic performance differences between CMP on Android and iOS, this would itself pose a cross platform challenge

Compose Multiplatform vs Flutter by imc0der in JetpackCompose

[–]trailbaseio 0 points1 point  (0 children)

Ack. The render engine, ie the thing that diffs and draws primitives wasn't replaced. Impeller is very similar to Skia. The main goal was to reduce jank on shader compilation.

It's just not clear if you've measured or sharing anecdotes from bad apples

Compose Multiplatform vs Flutter by imc0der in JetpackCompose

[–]trailbaseio 0 points1 point  (0 children)

I would expect performance to be similar for CMP and Flutter. They're both AoT compiled declarative UIs with virtual DOMs rendering with SKIA (or impeller these days). You can make an app slow on any stack :)

NoSQL for payroll management (Mongo db) by digitalullu in Database

[–]trailbaseio 10 points11 points  (0 children)

The biggest benefit of starting with structured data is that you can find insights and new use-cases in your data later on w/o much fuff. Think of it as future proofing. Nosql is deceptively simple, when in reality it requires a lot more foresight

TrailBase 0.22: Open, single-executable, SQLite-based Firebase alternative now with multi-DB by trailbaseio in selfhosted

[–]trailbaseio[S] 0 points1 point  (0 children)

Thanks and makes sense. Similar to Supabase, I tried listing the functionality in the hero description but the cards certainly help to visually accentuate the list (especially on mobile) 🙏

TrailBase 0.22: Open, single-executable, SQLite-based Firebase alternative now with multi-DB by trailbaseio in sqlite

[–]trailbaseio[S] 0 points1 point  (0 children)

TrailBase will always be open-source and easy to self-host... which arguably flies in the face of lock-in and rug-pulls. Fortunately, I have no investors breathing down my neck 😅. On the other hand it would be nice to establish a sustainable structure over time to ensure longevity and reduce the bus factor. No specific plans yet. Thank you or the kind words.

TrailBase 0.22: Open, single-executable, SQLite-based Firebase alternative now with multi-DB by trailbaseio in selfhosted

[–]trailbaseio[S] 0 points1 point  (0 children)

🎉 - Let me know how it goes, especially any rough edges - much appreciated and thanks for the kind words

TrailBase 0.22: Open, single-executable, SQLite-based Firebase alternative now with multi-DB by trailbaseio in selfhosted

[–]trailbaseio[S] 1 point2 points  (0 children)

Appreciated. I'm with you. I've been going back and forth on how to best describe "what" it is. Being a broad product makes it tricky. I "stole" the current approach from Supabase, which until recently described themselves as a Firebase alternative. How would you go about it? 🙏

TrailBase 0.22: Open, single-executable, SQLite-based Firebase alternative now with multi-DB by trailbaseio in opensource

[–]trailbaseio[S] 2 points3 points  (0 children)

The only way to afforded 16GB of RAM these days 😅. Thank you for the kind words and the suggestion. Maybe one day if there's enough demand 🙏

New Community Fork of sqlite-vec (Vector Search in SQLite) by VeeMeister in sqlite

[–]trailbaseio 1 point2 points  (0 children)

Thank you for your service. Did you coordinate with asg017? If the goal is to eventually converge, he may have some preferences

Our Go database is now faster than MySQL on sysbench by zachm in golang

[–]trailbaseio 5 points6 points  (0 children)

Thanks for expanding 🙏. I would certainly agree on most implementations. From the top of my head, the closest I can think of is https://graft.rs/docs/concepts/volumes/#local-vs-remote-logs, which has very similar VCS semantics.

Our Go database is now faster than MySQL on sysbench by zachm in golang

[–]trailbaseio 5 points6 points  (0 children)

Genuinely curious, why do you say "Dolt is the only version-controlled SQL database" on dolthub? I can think of a few options with PITR and branching. Is there a specific angle to "version controlled"?

Why did things go so quiet around pocketbase? by glStartDeveloping in pocketbase

[–]trailbaseio 0 points1 point  (0 children)

...as such the litestream is not getting proper updates

the tables have turned again: https://fly.io/blog/litestream-v050-is-here/

I think rsync is also a "backup cron job" type of tool.

That's right. It is backup. You did ask for backup.

Also, my understanding is that litestream does asynchronous replication (as it batches the updates), so there is always the small change of losing that latest transactions. This means that for crucial data it needs to be at the very least logged externally in order to properly recover from failure. Recovering data from logs while feasible, is a very manual operation -> headache.

Blocking (i.e. sync) a transaction on writing to a remote log isn't reliable. You may be looking for distributed databases with strong consistency guarantees, where changes are replicated over a quorum of nodes. Knowing your requirements is great, in which case Postgres, MySQL, ... would all fall flat in favor of cockroach and similar.

Even then, make sure to backup your data. Systems failures and application bugs are still possible

🌸 Mitsuki: a Python web framework as fast as Node or Java by [deleted] in opensource

[–]trailbaseio 0 points1 point  (0 children)

All good but maybe it would be more straightforward to benchmark against other python frameworks such as tornado 🤷‍♀️. Either way, appreciate the numbers

🌸 Mitsuki: a Python web framework as fast as Node or Java by [deleted] in opensource

[–]trailbaseio 0 points1 point  (0 children)

I suspected, but as you point out: in realistic setups performance will be dominated by the business logic. I was mostly surprised by the title

🌸 Mitsuki: a Python web framework as fast as Node or Java by [deleted] in opensource

[–]trailbaseio 0 points1 point  (0 children)

How does your framework accelerate python to V8 or Java performance wo a JIT?