EtherCalc: Open-source web spreadsheet
ethercalc.org
ethercalc.org
1) Click "start the demo" at: https://demo.sandstorm.io
2) Open this link to install EtherCalc: https://demo.sandstorm.io/install/100cdd4f5eb0ad2110b98a81c5...
(You can also install on your own Sandstorm server, if you have one, by substituting it for demo.sandstorm.io. Instructions for setting up your own server are at https://github.com/sandstorm-io/sandstorm .)
Thanks to Jake Weisz for this port, and of course the EtherCalc people for developing this and making it open source in the first place.
- time and dedication/enthusiasm can enable some pretty great things in a whole range of different circumstances [+]
- there are a lot of interesting opportunities for work (and people doing interesting things) out there in the world than that which is readily talked about
[1]: https://github.com/audreyt
[2]: http://www.linkedin.com/in/tangaudrey
[+]: some would at this point say 'and so we should not pre-judge' - pre-judging can be a helpful general-purpose heuristic, though - more useful advice might be to avoid 'final judgement' of anyone
The AOSA article is a great read. Further, the result of that EtherCalc work is one of the coolest projects around- an implementation of Web Workers for Node.js using native threading:
"This module provides an asynchronous, evented and/or continuation passing style API for moving blocking/longish CPU-bound tasks out of Node's event loop to JavaScript threads that run in parallel in the background and that use all the available CPU cores automatically; all from within a single Node process."
"I'm entirely self-educated, having quit the school system at 14."
Kudos on achieving so much!
An area which I'm struggling with is the formatting; and this was because I didn't see the 'Save to: A1:A20' at the top, I expected the button to be below or expected it to save when I changed the values.
Other than that, it's really good!
I've styled the cell/sheet save buttons so it stands out better as of https://github.com/audreyt/ethercalc/commit/1e819ebf and released to npm as of 0.20140804.1 — Shift-refresh on the ethercalc.org site to see the highlighted buttons in the format tab.
OwnCloud already has document support, but with this it would make it a killer Google Docs replacement.
Check out sandstorm.io though. (There's another comment about it above.) I got EtherCalc working on it pretty easily, and I think it really IS a killer Google Docs replacement. :D
The main problem for our use case is that you can't have multiple sheets for one "document" (as far as I can tell). There are other small but important problems such as the weird formatting interface. All things combined make SocialCalc about twice as slow as LibreOffice for me so far. I still have to use it since there's nothing better at the moment, but I'm not really happy about it.
For a web app, linking to other independent sheets should be the way to go. You'd need a convenient way to define links to other sheets (perhaps defining an alias for links to the other sheet), browse linked sheets and open them in another browser tab. Browsers already have multiple tabs, so there's no need to have a tab based structure for this inside a browser tab.
Just throwing it out there, I've not thought the consequences through really, but it seems a shame to just blindly recreate a file based metaphor.
Tracy Ruggles helped getting a better formatting UI (modeled after CKEditor at that time) for Socialtext — screenshot at https://www.socialtext.net/help-en/socialcalc_move_source_ex... — but something more touch-friendly and intuitive (post-bootstrap) would be awesome.
Please get in touch on ethercalc repo or write me if you know a UX designer interested in revamping our UI!
* understand how event bubbling works (so that you can put something more complex than a html button in a html cell, maybe a select menu)
* disable dynamic rendering (where cells get reinstantiated upon each redraw)
* possibly implement both by using a specific th cell subtype
By the way I've been able to bake in extended excel formula support from the formulajs project by hacking inside the SocialCalc.CalculateFunction function.. Bit of a kludge but it's handy to support some of them more arcane xl functions.
I've still going to use it because yes, it's very necessary to have a social spreadsheet platform that is open-source and that you can host on your own servers. Thanks for the work you put in.
Re UI, each cell supports basic WikiText, and clicking the "Format" tab next to the default "Edit" shows the Format:Text dropdown that one can change to "HTML" and then click the top-left "Save to: CellCoordinate". That allows arbitrary HTML in cell presentations.
Alignment, font, etc can also be adjusted in the same tab.
If you'd like to use HTML formatting for all cells by default, the third button on that tab "Show sheet settings" allows sheet-wide formatting customizations. Hope this helps!
"Drop a CSV or an Excel XML (.xlsx) file here to import it"
what sort of left-mouse/middle-mouse or ctrl-C/ctrl-V does "Drop" refer to in the above?