Very cool article! I also implemented a spreadsheet last year [0] in pure TypeScript, with the fun twist that formulas also update backwards. While the backwards root finding algorithm was challenging, I also found it incredibly humbling to discover how much complexity there is in the UX of the simple spreadsheet interface. Handling selection states, reactive updates, detecting cycles of dependency and gracefully rec…
The idea of backward updating is fascinating but is not generally feasible or computable. What kind of problems can you solve backwardly?
VisiCalc Reconstructed
41–50 of 85 posts
Re: VisiCalc Reconstructed
#42Anyone know what kind of departments/parts of business were the first adopters of visicalc?
After paying by writing out a check, I helped load everything into his car and he drove off into the sunset --- I was then allowed to choose a reformatted disk from the box as a reward and chose _The Softporn Adventure_ (which I then stupidly removed the label from, but it wasn't something I wanted to explain to my parents...).
Re: VisiCalc Reconstructed
#43Though I think the definition of the parser struct should be
struct parser {
const char* s;
const char* p;
struct grid* g;
};
based on the rest of the code.Re: VisiCalc Reconstructed
#44Re: VisiCalc Reconstructed
#45Very cool article! I also implemented a spreadsheet last year [0] in pure TypeScript, with the fun twist that formulas also update backwards. While the backwards root finding algorithm was challenging, I also found it incredibly humbling to discover how much complexity there is in the UX of the simple spreadsheet interface. Handling selection states, reactive updates, detecting cycles of dependency and gracefully rec…
The idea of backward updating is fascinating but is not generally feasible or computable. What kind of problems can you solve backwardly?
But like I said I am not sure that I know what I am talking about and I may be confusing backwards calculation with algebraic engines. I would love for algebra solvers to be a first class object in more languages.
Re: VisiCalc Reconstructed
#46I’m genuinely worried that we’re the last generation who will study and appreciate this craft. Because now a kid learning to program will just say “Write me a terminal spreadsheet app in plain C.”
Re: VisiCalc Reconstructed
#47Very cool article! I also implemented a spreadsheet last year [0] in pure TypeScript, with the fun twist that formulas also update backwards. While the backwards root finding algorithm was challenging, I also found it incredibly humbling to discover how much complexity there is in the UX of the simple spreadsheet interface. Handling selection states, reactive updates, detecting cycles of dependency and gracefully rec…
The idea of backward updating is fascinating but is not generally feasible or computable. What kind of problems can you solve backwardly?
Take, for example, backprop in machine learning. The model operates forwards. Then you solve backwards to figure out how to update the terms.
Re: VisiCalc Reconstructed
#48Earlier quoted context omitted.
Isn’t the existence & success of visicalc a direct counter to this?
Is anyone using visicalc today? I'm not sure how its past success, however fantastic, can be translated into "a dependency graph is often an overkill for a spreadsheet"
Re: VisiCalc Reconstructed
#49Are there good command-line interfaces for spreadsheets? I don't do anything super financially-important and I'd prefer to stay in the terminal for quick editing of things, especially if I can have Vi keybindings.
Visidata[0] is a killer data swiss army knife. It's even inspired off Visicalc [0] https://www.visidata.org/
"But... visidata is not a spreadsheet"
I know, that's what makes it so weird.
On contemplation, I think I grew dissatisfied with the normal spreadsheet data model, I wanted something bettered structured than the "it's a big bag of cells" that spreadsheets present, I wanted row security. The best I found was the relational database. I currently use a local postgres db for most things I would have used a spreadsheet for. The interfaces sort of suck in comparison but at least I have sane data structures.
Re: VisiCalc Reconstructed
#50Earlier quoted context omitted.
Is anyone using visicalc today? I'm not sure how its past success, however fantastic, can be translated into "a dependency graph is often an overkill for a spreadsheet"
The clause "it's absolutely necessary for all but the simplest toy examples" is what I was disagreeing with. But I wouldn't be surprised to hear that visicalc adopted one as soon as it was technically feasible in later versions.