16 ms·
I don't understand why spreadsheets are so fervourously bashed: most times they do the job and in a fast and inclusive way. The spreadsheet is certainly one of
by galfarragem 7y ago
I don't understand why spreadsheets are so fervourously bashed: most times they do the job and in a fast and inclusive way.
The spreadsheet is certainly one of the best tools ever invented.
[0] Joel's Spolsky must-watch talk on Excel: https://www.youtube.com/watch?v=0nbkaYsR94c https://www.youtube.com/watch?v=0nbkaYsR94c
- arethuza 7y agoAnd like any tool they can be abused - I really like Excel but I've seen it used for things that were unwise. I've spent months reverse engineering a vast, complex, costing application that had evolved within a spreadsheet and needed (for very good reasons) to be turned into a proper application. The really entertaining part was trying to convince people that their spreadsheet didn't actually do what they thought it did.... Edit: It was costing a complex heavy industrial process so it had logic that was basically physics right through to finance.
- maxxxxx 7y agoI think the solution should be to have better excel reverse engineering tools. I have seen plenty of crazy complex spreadsheets that had hit a wall and were hard to refactor but the solution would never have happened if they hadn’t had excel enabling regular users to create it.
- deleted 7y ago[deleted]
- cwyers 7y agoBecause lots of people have lived through a spreadsheet that had grown too large and too important, and the original author might be gone, and reverse engineering a spreadsheet that's hundreds of megabytes in size and has a dependency graph that's longer than a page quickly becomes... burdensome.
- lowkeyokay 7y agoI don’t think Excel is ever bashed for its primary use case. It’s when someone starts building complex, multi user applications things start to go wrong. It almost always becomes an entangled mess. And good luck to anyone taking over when the creator leaves. I’ve been both the creator and maintainer of such Excel applications, and I do not miss it.
- MrEldritch 7y agoOne thing that frequently comes to my mind - rather than trying to convince people to move to a general-purpose programming language (and ignoring all the reasons that people turn to Excel in the first place), is it possible to turn an Excel-style spreadsheet into a general-purpose programming environment that is powerful enough to do that sort of stuff? People really underrate Excel as a programming environment, honestly. Yes, it's crippled and leads people to produce massive gross un-debuggable hellsheets ... but there's reasons (beyond just "it was the only usable software that could be run on office computers") that end users with a problem to solve keep turning to it despite those flaws. The combination of reactive programming, data-first visibility, no hidden state, decent approximations to structured programming by way of click-drag-and-copy-paste, and being able to reference variables and values without needing to name them has some kind of magic to it. There's quite a bit of interesting research I've seen from Microsoft on how to take something like Excel and turn it into a non-crippled programming environment - spreadsheet-defined functions (including recursion, lambdas, and higher-order functions natively in the spreadsheet environment, without having to drop into VBA!), dynamic arrays, an alternate computation-first textual view that exists simultaneously with the data-first spreadsheet view, first-class complex data structures ... Between HyperCard, Jupyter/Mathematica notebooks, and Excel, there's a lot of common features that seem to point to a vision of a truly useful end-user-accessible programming tool, something that would let people write real, useful programs intuitively and quickly enough to be worth building them themselves for whatever they needed them for, without forcing them into condescendingly-simplified drag-and-drop "visual programming" codeless clunkfests.
- pjc50 7y agoExcel is a general-purpose programming environment, it has a full programming language inside it (VBA) with the ability to call out to the operating system and load functionality through DLLs. No, the way to tame Excel is to make it less general, to impose principles of structured programming on it. Separate code and data and presentation. Put some of the data in a database. Impose types on it, so Excel doesn't interpret genomes as dates etc. Make the control and data flow visible. Split it into pieces with defined responsibilities. Excel is really a "two dimensional assembler": you put an operation in each cell, and they can read any other cell, and it all executes together.
- brohee 7y agoExcel doesn't have a compeling, standard way of doing version control that I know of, and most Excel files mix freely data and code in the same sheet, which makes debugging pretty hard. Excel files go from assets to liabilities when they start boxing over their own weight, which happens pretty fast...
- _bxg1 7y agoMakes me wonder if there's a market for an Excel clone whose files are easily machine- and human-readable, and version-control friendly.
- robbiemitchell 7y agoGoogle Sheets
- oblio 7y agoHave you tried using Google Sheets? I have. You can't even cut and insert a bunch of rows. That's a primitive functionality that is very much needed that was available in Excel circa 1988 (I'm exaggerating, but it's been in Excel for at least 2 decades).
- lrem 7y agoWhile sheets is nowhere near my idea of ergonomic, I've figured out this one every time I needed it. And, despite working for Google, I'm nowhere near a regular user. Maybe your browser, or some extension, got in your way?
- naravara 7y agoSheets is way less powerful than Excel. Losing a lot of the keyboard shortcuts also makes it way less useful for power users. It also doesn't do well at generating macros and its chart generation capabilities are much less flexible.
- bartread 7y ago
- briandear 7y ago> inclusive way.. How is a spreadsheet “inclusive?” What does that mean?
- ericras 7y agoIt means that non-programmers can do "programming".
- pavlov 7y agoThe quotes seem unnecessary. Programming isn't just an expert activity. Many applications offer macro recording and other facilities to create programs without scripting. Dataflow programming is often used in graphics and media applications. Spreadsheets are one very successful implementation of dataflow programming. What Excel doesn't let you do (without heroic effort in support toolchains) is software engineering...
- mch82 7y agoIt also allows domain experts to program. So while they may not be expert programmers, they are experts in the problem area and will come up with expert solutions.
- sokoloff 7y agoI would wager that 10 times (perhaps 50 times or more) as many people can make a simple Excel worksheet as could program the same functionality in a mainstream, general purpose "programming" language.
- deleted 7y ago[deleted]
- liveoneggs 7y agobecause the one you got emailed last year is out of date vs the one your boss got emailed last month which is also out of date from the finance team's version
- cfarm 7y agoAs usable data starts getting larger, the trade off between Excel and databases will get smaller.
- pravj 7y agoAfter switching from technical to a product role, I have seen a complete change of perception towards excel/google-sheets. I still observe the passive hate towards excel by developer companions, but for me, it's a goto tool, the same as it was the case with Python, the goto language. I like to call it a fundamental or building block technology that enables you to develop things on top of it, my favorite being a finite-state-machine we modeled in a sheet. Won't be surprised if we end up talking about Google sheets being one of my favorite products.
- tracker1 7y agoNot only that, but Excel can tether back to a traditional rdbms for pull/push data. It's often the preferred way for PMs to interact with, for example, VSTS/TFS. There is absolutely a LOT that can be done with Excel and other spreadsheets, and it shouldn't be underestimated. I'd rather not work with them more than basic/classic usage of a more well formed data dump. I use spreadsheets for monthly finances, some historical information that fits well, and a few other use cases. I'm not big on VBA and have little desire to work in the space. I have, however, seen some amazing usage of Excel and other spreadsheets for everything from charting and pivot data, to multi-user applications tethering to other data stores.
- monkeydust 7y agoAgreed. The bashing does not really come from the end users / business people who benefit from the spreadsheet but those that are either competing against it (engineers) or having to take on risk through misuse (compliance).
- ibejoeb 7y agoAs other comments have noted, it gives rise to the new problem of the proliferation of stale, incomplete, or otherwise incorrect data. Google Sheets, on the other hand, is truly compelling, and a lt of the work I've been doing lately has been using Sheets and Apps Script to build really powerful "apps" on the super-cheap. This is the stuff we used to do with VB years ago, and it would take weeks. Now I can get at least a PoC of a fully multi-user system in front of a client in a day, and they don't pay anything to host it.