@multiverseofbadness
I feel the same! With my latest hobby project (link in my profile), I kept the UI as simple as possible to not waste time with selecting, learning, using & fighting one of the millions of #JS #frameworks.
But the time will come when I have to replace that UI with one that looks attractive. I'll use #Flutter Web for that; I used it for another project and am absolutely in love with that framework and #DartLang!
So I'm actually looking forward to coding that UI. Weird.
#js #frameworks #flutter #dartlang
#Google presenta el vostre curs gratuït d'introducció a #Dart
https://facialix.com/google-presenta-su-curso-gratuito-de-introduccion-a-dart/
#dartlang #Programming #dart #Google
🌿 Learn how to sync database entities in your cross-platform #Flutter apps: https://youtu.be/nURi-ngxxpU
Join Erico in his tutorial where he'll teach you how to use ObjectBox Sync in a food sharing app. English subtitles included!
#flutter #flutterdev #dartlang #tutorial
🌿 Learn how to sync database entities in your cross-platform #Flutter apps: https://youtu.be/nURi-ngxxpU
Join Erico in his tutorial where he'll teach you how to use ObjectBox Sync in a food sharing app. English subtitles included!
#flutter #flutterdev #dartlang #tutorial
Trying out #lemmy. You can find me at https://lemmy.world/u/fperson.
Also, created a community for #dartlang; feel free to join at https://lemmy.world/c/dartlang!
🎇💙 ObjectBox Database for Flutter / Dart 2.1
Now you can store vector embeddings with ObjectBox in your Flutter AI apps ↗➡↘
Check it out and share your thoughts: https://github.com/objectbox/objectbox-dart
#flutterdev #flutter #dartlang #mobiledev #AI #vectordb
🎇💙 ObjectBox Database for Flutter / Dart 2.1
Now with vector type support ↗➡↘
Check it out and share your thoughts: https://github.com/objectbox/objectbox-dart
#flutterdev #flutter #dartlang #mobiledev #AI #vectordb
What is it with Google and shipping skia into #wasm clients?? Can’t we just have #kotlin with #JetpackCompose and #dartlang with #flutter rendering to the DOM instead of a canvas element?🥴
#wasm #kotlin #JetpackCompose #dartlang #flutter
Posted an update to reddit about my #godotengine #DartLang progress. https://www.reddit.com/r/dartlang/comments/143qha3/godot_dart_update/
Go give me some upboats (if you're so inclined....)
Progress on using #DartLang in #godotengine! I've been able to write most of the the 2D tutorial for Godot in pure Dart. There is a TON of boilerplate here and I'm sure it's incredibly inefficient, but it does work!
> Why build a cross platform social media client?
Trying to see how far I can stretch the capabilities of #flutter before I want to pull my hair out and beat my skull into the keyboard. So far, not many dents in the desk (or my head for that matter). The framework and language (#dartlang) have been super simple to pick up and run with.
🤖 A new #Flutter release is available 🎉!
Channel: beta
Version: 3.10.0-1.5.pre
#flutterdev #flutterio #dartlang
#Flutter #flutterdev #flutterio #dartlang
🤖 A new #Flutter release is available 🎉!
Channel: beta
Version: 3.10.0-1.4.pre
#flutterdev #flutterio #dartlang
#Flutter #flutterdev #flutterio #dartlang
I'm back on the #dartlang / #flutter bandwagon again.
#dartlang #flutter #flutterdev
Why did the Dart language copy the awful C case statement syntax?
I was a hardcore C developer for years and not once did I find letting code fall through cases useful.
Google should know better.
#embarrassing #dartlang #programming
In #Cicero / #Ginlo we all messages are E2E-encrypted. For historical reasons we still use AES256 CBC. So, messages are always encrypted using CBC.
But when I receive the messages, I decrypt and re-encrypt them with a local Account-key. So, each device on which you receive the message has its own AES256 account key with which local data (database as well as attachment content) is encrypted.
This way, we can protect your communication in-transit as well as at-rest/
So far, so good. For local storage we also used to use AES256 CBC with its own IV.
Today, I decided to switch to AES256 GCM with IV and AAD. This has a few benefits:
- HW-supported encryption / decryption on iOS, Android, macOS
- Parallel encryption/decryption: multi-threaded in native code or `compute` in pure dart
- Built-in Verification using Mac/authTag
- And also slightly safer than CBC wrt certain attack vectors
The beauty? Each encrypted data has its own authTag stored separately so that we can also verify integrity of each data item.
While switching to AES-GCM, I also added streamed encryption/decryption for files. This way I can encrypt/decrypt directly from a file into another file without much memory use. This way, we can now (technically) support attachments as big as approximately <Free space on local disk>/2.2.
And yes, it is absolutely super-fast. On iOS/Android/macOS, we achieve about 120MB/s with CBC but 1-1.5GB/s with GCM, including Mac-validation.
On Windows, we "only" achieve about 100-500MB/s (depending on CPU), because there is no native GCM-chip-supported library there.
All in all, it was a difficult week because I had to first introduce "device coupling" (adding device to your account) BEFORE switching encryption method.
Now you can install the new client on a second device, add it to your "old" client, transfer the account to new device, delete on old device, and then transfer back to old device. This way, you easily switch from old, CBC-encryption to new, safer and faster GCM-encryption.
YAY!
#Flutter #DartLang #iOS #Android #macOS #Windows #Linux (hopefully)
#WorkTopics
@ginlo
#cicero #ginlo #flutter #dartlang #ios #android #macos #windows #linux #worktopics
🤖 A new #Flutter release is available 🎉!
Channel: stable
Version: 3.7.12
#flutterdev #flutterio #dartlang
#Flutter #flutterdev #flutterio #dartlang