cryptee / web-client

Cryptee's web client source code for all platforms.
https://crypt.ee
Other
458 stars 23 forks source link

[Feature] Spreadsheets #64

Open lydenyardley opened 4 years ago

lydenyardley commented 4 years ago

Hello,

My scenario is simply that I'm trying to move away from Google Docs & Photos... to a solution that is privacy focused, elegant, and fairly priced. Cryptee looks to be ticking those boxes :)

Do you have any plan to build a spreadsheet solution in addition to your docs solution? I just read through your #9 feature request, and it looks fantastic... just doesn't offer spreadsheet (formula) functionality.

I think that's all there is to say at the moment.

Thanks for all you do, Lyden

johnozbay commented 4 years ago

Hey there Lyden! 👋🏻

Thanks for filing this!

We are indeed exploring spreadsheets, and trying to figure out the best ways to bring this to life! However the progress and speed with the development for spreadsheets is very very slow compared to most other applications.

The reason is mostly legal. The more Cryptee grew, the more businesses started relying on it for their daily operations. And we have lots and lots of critical users now. – Every week, we hear Cryptee-stories from users with tons of different critical use cases. Be it peace-workers overseas in high-risk parts of the world, or tech companies, or finance companies, or lawyers, psychologists etc.

While all this is amazing and awesome, it means the legal responsibility we have towards our users grew exponentially as well.

Long story short, spreadsheets are a particularly legally difficult thing to develop, because even the tiniest math error or bug could cost lots and lots of money to a business calculating their budget, or worse, cost a peace-worker overseas their life.

While we are indeed working on spreadsheets, things are moving quite slowly overall, mostly held-back by our fantastic attorneys reminding us all the legal ramifications if things go wrong.

This is an especially difficult challenge for a platform like Cryptee, because working with on-device encryption is kind of like coding for a spacecraft. Once it's out of orbit, there's no way to easily de-bug or check what's going on. 🚀 Heavy encryption makes it incredibly complicated to identify and fix errors once they're out there, since we can't see any of users' data or usage behavior / patterns etc.

So things like spreadsheets become particularly difficult and slow to develop. No matter how good we are at testing, we are after all humans, and may one day make an innocent error, or miss a tiny cross-browser compatibility issue, which could have catastrophic side effects for someone in a high-risk country using Cryptee.

So we're developing this one extra-extra-extra slowly and carefully to make sure when it's out, we can sleep well at night knowing it won't break. (Or if it does, we'll have failsafes / pieces of self-repair codes in place)

Hopefully, once everything is running to a degree that satisfies us morally, and our own attorneys legally, we'll release it! 🎉

As much as I would love to give you a clear timeframe for when we can release this, it's such a massive project that I'm sure a thousand things will change by the time it's ready, so in all honesty I don't really know when it'll be ready for primetime either.

--

Like you've noticed, we've been busy building tables into the editor. The good news is that we've learned so much in the process, and a lot of the work that went into building Tables is going to make spreadsheets-development much more easier. Be it things like the column/row-structure, or memory management with long tables, or things like selections, keyboard shortcuts etc. #9 was in many ways the perfect way to get started with spreadsheets basically.

Once we've sorted out all the kinks of working with table-structures in all browsers, the next logical step will be adding in all the math logic we've been building, and make Spreadsheets possible. 📈

--

Chances are, in the interest of cutting time re-building file-management parts of the software, we'll make it so that instead of a separate "Cryptee Spreadsheets" app, spreadsheets will live in "Cryptee Docs" as well. And once you pick a "spreadsheet" from the files list, the app will launch the spreadsheet editor, instead of the docs editor. (just like the way previewer works right now, but instead, it'll swap the docs editor for a spreadsheets editor)

Hoping these make sense, and I could express all the technical, legal and moral factors holding us from launching this fast-and-dirty Silicon Valley style 😅

In the meantime, if that's okay with you too, I'll keep this issue open and collect feedback from others as it comes.

Thanks a lot for this ✌🏻

All the very best, John

frejaya commented 3 years ago

Just want to chime in to say that I love this suggestion and really hope it can be made a reality! One thing that would be amazing in spreadsheets is the ability to put images in cells.

Love the latest update of Cryptee by the way!

johnozbay commented 3 years ago

Hi there @honulii👋🏻

Thanks for chiming in, your kind words and compliments! Glad you're enjoying the new update!

We're working on this and making slow but steady progress. As I mentioned the legal aspects of spreadsheets are unsurprisingly quite scary. – we're being extremely careful and slow for a good reason I promise.

In the meantime, – if we were to add the ability to insert images into tables right now, would that work for your use case? Or for example, if we were to add an image-grid element, where you could easily create image grids (vs tables)?

This summer we've been experimenting with an image-grid element for the editor that allows drag & dropping a bunch of images to create grids. – so I'd be especially curious to hear your use case to see if we can actually address it before even getting to the point we have spreadsheets?

Best, J

frejaya commented 3 years ago

Hi @johnozbay!

Happy to share my thinking! It’s possible what you’re thinking of might work. My use case is that I really want to move my home inventory into Cryptee but docs don’t really work well for home inventory. I have tried many solutions for this like Airtable, Notion, Encircle, “Home Inventory” for iOS. I would prefer Cryptee because I like the product and company and credo much better.

What I’m looking for in a home inventory is just the ability to show an image with a few searchable details like building, room, container, category (tags for this), and maybe if I want to include my estimated replacement cost. It helps a lot when I want to see if I already own a movie I want to rewatch and where it is or when I am moving and need to know which box I put something in.

I’ve tried to use the Cryptee docs for it before but it doesn’t have quite the same result as tying a single record to these details. If I put all my inventory in a table in one document, even if I tag things, searching by tags will just bring up that one document. I could theoretically create many documents, like one per box, but I have a lot of boxes so that could get out of hand pretty quick.

johnozbay commented 3 years ago

Hey @honulii!

I see! This is a really fun use case! There will be a short-term and a long-term solution for this in Cryptee.

We're working on encrypted photo captions for Cryptee Photos, and hope to have this out in the very near future.

So you'll be able to add notes / captions etc to each photo in your gallery. + you can already do encrypted tagging & search in Cryptee Photos. = You'll be able to do what you're looking for inside Cryptee Photos.

Long term: We have a few features planned for Cryptee Docs that could enable this use case. – Tags on PDFs / Images etc in Cryptee Docs. – Image grids / images in tables etc

For better stability, I'd actually recommend you to use Cryptee Photos for your specific use case, and not Docs. Reason being, each inline image in a Cryptee Docs gets encrypted with the document itself on each save. So if your document has 10 x 1mb images, your document will be 10mb large, and on each change / save, your device will have to encrypt, save and upload a 10mb document.

So eventually if you end up with 100s of images in a document, your documents would grow too big, and saving would slow things down to a halt.

Whereas with Cryptee Photos, all photos are encrypted/decrypted individually, and memory-managed. So only what you see on the screen is encrypted/decrypted, everything else is just placeholders. Even if your album has 100,000 photos, only the 30 you see on your screen are encrypted/decrypted to save you downloading/encryption/decryption time. (something we can't do with Docs of course, due to the fact that the entire document's pages / text needs to be computed to lay out all the contents & make them searchable etc)

Hoping this makes sense!