spreadsheets are flawed by design because mixing code and data is exceptionally brittle and difficult to reuse in any other context. excel is a product created to limit the abilities of its users to define reproducible transformations of data in a full programming language
@hipsterelectron@circumstances.run i’ve never thought about this too deeply but yeah you’re damn right
i think a secondary problem is that if every problem involving a pseudo database is a nail then excel becomes a hammer for it
instead of teaching people how to script something up we build eldritch horrors in excel
@hipsterelectron@circumstances.run or instead of teaching we develop a tool for them. python is right there, powershell is right there
@amy i'm such an R betch!!!! RStudio used to be so cool before they went evil and started glazing LLMs for everything
@amy magrittr is so neat because pipelines can be made to work but are just the same as function calls https://magrittr.tidyverse.org/ so you don't get parallelism like a shell pipeline but you naturally define generic operations upon data with a 1:1 mapping to function calls
@hipsterelectron did you know excel has =LAMBDA now
@hipsterelectron this is a real excel example from real microsoft docs
@hipsterelectron this is a real excel example from real microsoft docs
@hipsterelectron Do you believe this is also true of Smalltalk environments?
I'm not really A Smalltalk Developer but I have used cuis/squeak a teensy bit and its normal to pull source code out of an image and version control it "normally", loading it into an image to work on it (or import as a library)
A smalltalk image is a big bundle of state, code and possibly data. That sounds bad at first but *inside* the image you have an IDE and object browser so organising things is easier and its not anywhere near as brittle as Excel (or Jupyter)
@hipsterelectron
smalltalk images have a horrible bootstrap story until recently when mr vuletich ported the microsqueak code to produce SISTA images. i am yet to try to get that to work in another system to bootstrap it.
also images would be incredibly painful without a garbage collector.
By 'Object browser' I mean this GUI where all the things that exist are shown. And that line of buttons (browse, senders, implementors etc) helps with unpacking how something works.
I know that Excel has some analogous dependency visualisation stuff in it but it seems like at a certain point even advanced users need to resort to sifting through every cell double-checking everything is set up correctly and that sucks
@rezmason i'm not familiar enough to critique them but i'm very interested in learning. i do have some misgivings about analogous interactive lisp environments like emacs and org-mode but one very useful and important separation emacs has is separating text properties that annotate data from the functions operating upon that text, whereas excel functions are not remotely reusable. my understanding is that smalltalk environments can be exceptionally interactive like emacs but also allow for the user to define libraries of operations to use across contexts
@hipsterelectron Even so, you may be more familiar with them than me— all I've heard is that they encompass your state and your functions, and you maintain the conglomerate like a Jupyter notebook.
Actually, never mind Smalltalk environments, would you put Jupyter notebooks in the same category as Excel? Regardless of the openness of format, it marries code and data in a big JSON that users rely on dedicated software to execute or read... I'm sorry, I'm a little too tired this very moment to verify my understanding or dig deeper, but you're not on the spot in any way 😅 it might just be pertinent
@rezmason when i worked at twitter one of my major successes was efficiently generating python environments for jupyter notebooks from dependencies + source code and i think if you have that build process working then it can be a really neat kind of REPL environment that allows you to experiment before moving operations into separate source code documents. but in general i think you've hit it on the nail here it's very much like excel in that way
@hipsterelectron I used to say Excel rots your brain before LLMs came along: and this crystallizes that notion: spreadsheets are an assault on numerical and procedural reasoning in the same way that LLMs are an assault on language