Stop Using Excel, Finance Chiefs Tell Staffs
wsj.com
wsj.com
It's a brilliant reactive data programming model that makes intuitive sense to non-technical users. They feel empowered to use it to solve problems right now with a computer. They experiment with it, try things, Google how to do more things- just like any programmer does. And they feel capable of doing this because they don't know they're programming.
Within the Amazon warehouse world, I have seen incredible innovation using it. An acquaintance of mine got into development by using it to help save soldiers lives while serving in Afghanistan[0].
I agree that mission critical data needs to get out of it and into a centralized system, but I still feel Excel is an incredible tool in any business.
Notes still let you see data as rows and columns and had very spreadsheet-like functions, many of which could be transferred directly from Lotus 1-2-3 - but it was a full client-server system which supported decentralized replication, built-in messaging and email, and a solid security model (yes yes I know it was also a crazy confused mess and a UI nightmare but that's a different topic).
Back in the day, organizations had teams going around finding the most useful ad-hoc spreadsheets and converting them into simple Lotus Notes databases. Other organizations would sometimes also give staff training in building simple Notes databases - not a whole lot more difficult than doing a spreadsheet - and then have expert teams come in and polish them up as needed. This made business software bottom-up rather than top-down, which turned out to be a whole lot more useful in a lot of cases.
In many ways, even after I left the Notes world for PHP and Rails and JS, my career in business software has still mostly been about converting spreadsheets into more "proper" applications.
Spreadsheets are the 'blue-green algae' of the software world: the simple base level that's everywhere and surprisingly essential.
Still true for many people in 2017. @patio11 probably said it best:
> Every spreadsheet shared in a business is an angel announcing another SaaS app still needs to be built.
https://twitter.com/patio11/status/655674551615942657
FWIW we ended up in business software after one of our open source libraries to read and write spreadsheets (https://github.com/sheetjs/js-xlsx, demo http://oss.sheetjs.com/) ended up garnering lots of demand from businesses looking to build those "proper" applications
It's a pithy quote, you'll get a very different reaction from a finance or small to med-sized business professional.
Excel is the ultimate maker studio that actually lives up to the promise of "build your own mini-app". I'm not saying it can't be improved on. It's just that the core model of flexibility is so compelling, pushing everyone into a SaaS app is invariably going to take away substantial power from the user.
Having worked with a number of finance teams, the biggest problem is not when Excel is used as an analytics tool but as a financial database. Excel as a source of truth for financial data is truly terrifying. Even financial audits are still often handled with custom data pulls exchanged over Excel spreadsheets.
Shameless plug: that's why we ended up developing one of those SaaS tools (http://modfin.io). It lets finance teams map their source data to a proper, easily auditable accounting ledger so that they don't need to do their "magic" in Excel.
With new (or prospective) clients that are SMBs, one of the first things I ask is, "so, what are you still using spreadsheets for?"
Really? I am working in company which is not handling super-sensitive data (i.e. not a Bank, for example) but I can assure you that if went around proposing to adopt a SAAS for what Excel is used internally I would not get very far.
No matter how good you are as a SAAS provider, our data stay in-house. End of story.
But we have to give Dan Bricklin and Bob Frankston their dues because Visicalc is the original killer app spreadsheet in the literal sense: people used to say they didn't know if Visicalc sold more Apples or if Apple sold more Visicalc. It truly was the program for which people bought the platform.
Many people seem to say the same thing but the only problem I could ever see (in occasional use) was a non-standard UI which non-technical users had trouble grasping. What made it so awful?
It's common to tell kids (and everyone) that they need to "learn to code." That is what Excel already is! And it's incredibly powerful, especially if you don't have any other coding skills.
But, of course, it's messy. When tens of millions of people can each write their own programs and easily modify them and change them to suit their own needs without needing to recompile or anything, then you get the mess which is Excel.
...and, in fact, that's also what you'd get if you taught everyone how to program Python in high school instead of Excel. You'd get tens of millions of non-interoperable messes of programs (which still get the job done!).
But that's fine. Give humans tools, and they'll find clever ways of using them that you don't intend. And it'll continue to drive people crazy. In some ways, the Excel hate (though obviously not unfounded) seems almost kind of like a bourgeoisie elitism. THIS is what it looks like when you give everyone the ability to code!
I disagree. Python leaves a readable instruction set, while Excel buries the logic in an opaque two dimensional grid of cells (plus or minus atrocious VBA). I think this gives a better ladder for people to improve their skills to the point of not producing unmaintainable garbage.
Which you prefer depends to some extent on which end of the problem you're coming from; if you're starting out with a lot of domain knowledge, a spreadsheet is attractive because you can look at the data, see whether the way it's being stored/processed is basically correct by spot checking it, and then automate. I'll still often reach for a spreadsheet if I don't know off the top of my head what the rules or relationships are and I need the equivalent of a whiteboard with logic.
If you have a top-down perspective and you want to automate a process whose fundamentals you know well, code is more comfortable. And you can go back and expand, modify, or adjust it later. But two things I don't like about code for handling large volumes of data are that I have to construct some sort of viewer to format the output (requiring more coding, or slower bug discovery if I press ahead without), and endless typing I like selecting things from menus and tool palettes because while I don't mind holding an instruction set in my head I don't like doing the same for every library I might want to use, especially remembering all the parameters. I hate hate hate writing glue code and want the computer to do that stuff for me.
Fortunately a lot of these problems seem to be receding thanks to tools like Jupyter and some of the promising Flow-based programming tools that let you easily visualize structure, code, and visualization without getting bogged down in details.
I should add that I prefer hacking to software engineering; that is, I'm only interested in programming as a means to an end of having a customizable tool for myself rather than building a product for other people, so I want spend as little of my time as possible on constructing the tool.
Not everyone structures programs in the same way, or puts functions in easily found locations, or names things usefully, or even approaches the problem in a way that makes sense to the majority of other people. For a concrete example, see this[1].
> Excel buries the logic in an opaque two dimensional grid of cells
It would be trivial to represent excel grid formulas as a set of predefined functions, or a special data structure that you register functions in, and then it could be in textual form. It wouldn't make it any easier to reason about, but then again control flow isn't always easy to reason about when a program is split into many different objects and functions, until you've internalized a fair amount of the program. Spreadsheets give people a very limited, but structured output and a very limited, but easily reasoned about way or processing. It's different than "normal" programming, but that difference allows for very intuitive use.
> I think this gives a better ladder for people to improve their skills to the point of not producing unmaintainable garbage.
How much work has been put into making spreadsheets easier to share with other people? I'm not sure the same culture has existed for spreadsheets as for programming, where people have needed to share and reason about complex algorithms and data structures. If it had, I'm sure we'd have much more in the way of how to structure your excel well so it can easily be consumed by others, or yourself in the future (if it doesn't already exist, which it may).
That's exactly what happened with Perl when everyone learned to use, modify, and develop CGI scripts in the early days of web-based application development. Dynamically-generated website content worked and evolved into the web we know today, but those scripts were awful and did a lot of harm to Perl's reputation.
We recommended they implement a PDM (product data management) system - it would have saved them millions of dollars (considering they had a staff of 20 whose sole job was to update the claims processing system by hand based on these spreadsheets.) Unfortunately when the 2008 financial crisis happened, management balked at the initial outlay. It's quite possible they're still using Excel to this day.
The health insurance people of various sorts who use this setup are the ones with domain knowledge. With an excel program, they can (1) understand how it works (2) add to it, modify it (3) create a copy and break it (4) debug it (5) have ideas about how it could work differently…
I’m not saying that excel is the tool for the job (sounds like it is definitely not), and those advantages erode as the setup gets more complex and/or has more people using it. But, there are reasons excel gets used this way.
The alternative is often rough. Software projects like this have high failure rates. Getting “requirements” out of users’/clients’ heads and into programmer’s is difficult. It means the standard (natural?) gap between domain knowledge and programming knowledge is restored. That has costs.
I’m going to repeat again that I am not advocating health insurance companies run policies and claims in excel. It is a bad idea, almost certainly. I am saying that we should be curious at why they are doing it this way. I think it’s a “good” question in that it leads to interesting places.
If the excel team was blessed with a plague of inspiration tomorrow morning, Is there a way they could make it so that excel is the right way to manage an insurance business?
I've seen this a lot where a consultant will swoop in and tell them that they need to use Peoplesoft or something and the organization spends millions of dollars and years of retraining to get a system that has a lot more friction in their actual workflow and is never quite as good for getting the job done.
Of course there are often side benefits that can't be overlooked, like a much more sane backup solution, interoperability with other providers, etc... But in the end most of the employees will tell you straight up that the old system was better. Too much of the domain knowledge was baked into the old system and doesn't make the transition to the new system.
>We recommended they get a system that manages their product data
Yep, I believe you are a consultant.
https://stackoverflow.com/questions/27419804/vba-excel-downl...
I have no idea how watertight this is though, it’s Microsoft quality (and some of the most ancient code they have) so I wouldn’t bet the farm on it.
A spreadsheet optimized for integration into software build processes would probably create more than a billion dollars of real value every year with even limited adoption.
While it may be true that Excel is overused, I believe that the spreadsheet is chronically underused as a model for software development.
I'm working on a plugin for Excel for dev's and other technical people. It lets the user use SQL and C# in Excel, connect to various types of databases and move data in either direction, and provides a runtime for automation.
The idea is basically to let tech users use their existing skills to make life easier. Main areas of use are:
- process (live) data in Excel via SQL and C#/linq
- move data between Excel and databases
- fetch data from various sources using .net (e.g. get data from a AD, file system, REST etc. in a few lines of code)
- replace VBA with C# and .NET for automation
It's also very useful for prototyping. Business logic goes inside C# scripts, and Excel takes care of user input, displaying results, data binding (formulas and graphs) and data storage.
It's commercial but freemium, the url is http://www.querystorm.com.
I posted about it a few times: https://news.ycombinator.com/item?id=15670030 https://news.ycombinator.com/item?id=11583488
Here's an intro video: https://vimeo.com/242216594
"A spreadsheet is an aggregate of concurrently active objects, usually organized into a rectangular array of cells similar to the paper spreadsheet used by an accountant. […] A spreadsheet is a simulated pocket universe that continuously maintains its fabric; it is a kit for a surprising range of applications.”
– Alan Kay, “Computer Software”, Scientific American (1984). pp. 56–57. PDF: https://frameworker.files.wordpress.com/2008/05/alan-kay-com...
Republished as “Computer Software” (1984). pp. 6–7. PDF: http://home.cc.gatech.edu/guzdial/uploads/130/Alan%20Kay%20-...
Spreadsheets have a lot of similarities to the sort of code bases that as an industry we've been moving away from. E.g., no version control, no tests, opaque code, bugs are hard to find, write-only code, bit rot, random antique scripts used in critical spots, poor reusability, latest version is on somebody's hard drive somewhere, nobody knows which version is the right one.
I also think it's deeply unfortunate that there's no good path from spreadsheet master to real developer. As great as spreadsheets are, they're a cul de sac. I hope this new generation of tools fixes that. If not, somebody sure should.
Version control for excel is terrible at best. Code review is basically non-existent and how could it be when logic is split over several cells and variables are named $A17 or B23.
I think the win with excel is its super simple interface, that said there is plenty of room to improve on the programming language interface.
Excel lets you name tables, cell ranges, or individual cells. I have seen spreadsheets put together by people who take the time to do this, and they are remarkably readable!
Anyway, it basically worked like a stack, with the currently selected cell being the instruction pointer. So when debugging you could either look at your data and watch blocks of numbers flashing in and out of existence or changing state, or look at the macro sheet and watch the pointer bounce around as it went to different branches or sat in loops or whatever. There were commands to turn screen updates on and off (which sped things up considerably) so as you got more and more of it working it would go from looking like some confusing nightmare to a smooth list of progress bars and passed sanity checks.
They moved to VBS because programmers were finding the cell model too restrictive/weird, and for integration with Access, but doing it all in cells was remarkably and pleasantly like assembly-level debugging. You'd hack something up quickly, figure out your algorithm, then name the ranges and use and index value, and you could lock ranges and what-all else. It wasn't as easy to read as a page of code (eg no whitespace) but the crudity of it pushed you towards that sort of 1-operation-per-line discipline that assembler demands and really forced you to think about semantic efficiency. I had macros consisting of thousands of cells of code with every single operation commented. You could, in turn, name the ranges that had macro code in them and do code profiling to find out where your performance bottlenecks were, and so on.
Some HN comments here: https://news.ycombinator.com/item?id=12448545
Because of this "bit more work", it's also much less flexible in the long run.
Excel is not a great database, but it's a highly flexible one.
Every single department in any company can benefit from knowing it well.
The problem is getting people comfortable and competent to know it well.
This is where I think google sheets fucking failed: they should have made an effort to make sure every single gmail user had a tutorial to know how to empower their curiosities and interests via google sheets.
An idea I've been toying with for a few months now is an automation app (read: window manager) whose UI is somewhere between Excel and GameMaker Studio's drag & drop UI. Like where you just have a giant grid/canvas, and where you can define "routines" and "variables" as groups of cells. If I could figure it out, I think it would open up the idea of an automation app to a broader scope, to people who aren't programmers, and I might be able to make some money off it. Especially considering I made like $500 in donations for Hydra back when I was doing more WM stuff for Mac, so there seems to be some excitement for the idea of programming your Mac, but perhaps it could be a living if I can figure out how to reach out to power users who aren't programmers. And it was your comment that gave me the idea of making it more like a grid instead of more like GameMaker. So, thanks!
Why do we readers take these sorts of things at face value? You know the whole article is a sales pitch.
Or you get irritated by it, while waiting for the "inevitable" collapse of this promotional/propaganda model...
Honestly I don't know what is happening, but it seemed like the first option, which I've followed for a couple of decades is a good enough cure for disillusionment and depression. (Caused by investing in the second option)
Edit: add quotes to inevitable.
Edit: UDF is user defined functions. What's LPT?
Implicit & unexplained business rules, no tests, no version control, unlabeled cell references, hardwired variables, everything is global, no encapsulation, no logs and no documentation.
Even assembly code is easier read and maintain than a complicated excel workbook.
I think that's just as true today, at least as far as business software goes.
I do think this is a tooling issue that could generate code based on Excel workbooks.
You would have thought this would be obvious- it seems analogous to perl/python or other such Swiss army knife tools we use for quick one-off solutions that occasionally get pressed into permanent formal use where they shouldn't.
Anytime another programmer asks me what language they should learn I tell them Excel and they think I'm joking. Besides being a quick and dirty way to solve a variety of problems it helps you speak in the language of your users (if you work in B2B)
Indeed, I'd also argue that the most commonly used database is Excel. Although few people using it realize they're designing schema.
Can we say "one way dataflow constraint system"? They're even called "spreadsheet constraints"...
Also known as functional programming
It can be a really powerful one I agree. It's simple to use, a lot of people knows how to handle it. And it's probably one of the best tools to do some quick data analysis.
However, like every tool, it has its pros & cons. One of the main cons, IMHO, is that data tends to be mixed with processing a lot (but it also simplify usage, so...).
Overall spreadsheets have been really helpful. Retrospectively, there is a good reason why it triggered the personal computers boom in the 80ies. They are good adhoc tools that can help lot. And Excel is the dominant one.
However, there are tons of horror stories around Excel, worst case scenario, it has lead to wrong decisions affecting the world economy.
I've personally a few horror stories (fortunately, not affecting the world economy).
At my last job, we used an internal spreadsheet to evaluate costs and margins when answering contract bids. This spreadsheet was a monstrosity taking ages to compute and it was a nightmare to manage, sync, and share between all the participants.
I've also seen the traditional "on what did you work last week" spreadsheet, quite annoying to update, even more given that my workstation is under Linux...
I've also seen spreadsheets as specification documents, generating an xml file, which in turn, through some xslt, was used to generate C++/C++ headers files describing an interface between two sub-systems. The concept (automating spec to code translation) was really interesting. However, I don't know about you, but I personally hate to have MS Office in the tool chain used to compile a piece of software, specially when it targets Linux and only Linux...
But those are not the most terrifying spreadsheets I've seen. The most terrifying on was a giant spreadsheet basically managing every aspects of a huge project (thousands of piece of equipment, hundreds of sites). This document was so big it took several hours just to open it. It was like a giant CMDB of all the configuration items, and, trust me there were a lot. But it also did more, a lot more. It was generating configuration files for applications, background images for monitoring maps, firewall rules... It was also a tool that helped architect and size the number of equipment required for a given site. I probably don't know the full extent of its functionalities. Just to give you an idea of its complexity, at one point, even the number of cells in a whole excel document was reached (with Office 2003 however). All the auto-generated stuff were always kind of wrong and had to be fixed by hand, which made for a repetitive, annoying and error prone process. Also, there was no clear naming convention, and it was a mess to take the generated stuff and load it in our automation scripts. It was, de-facto, a huge piece of software with no versioning, tests or QA and it showed. There was only one guy behind it, basically managing the beast full time. When he was sick or on PTO, the whole project was impacted. And when he left, it was a huge mess, nobody was able to take over.
Spreadsheets are great, but past an adhoc usage, please, please, please, implement something more serious. And also, keep track of Excel usage to avoid these kinds of monsters. Often there are real needs behind these beasts, but Excel is a really horrible choice in the long run.
Related commitstrip:
http://www.commitstrip.com/en/2014/12/19/the-coder-and-the-b...
I wouldn't say Excel is a programming language - unless you are referring to VBA attached to excel. Excel is a spreadsheet application. It's no more a programming language than Microsoft Word is a programming language.
I would agree with OP that Excel is the most-used programming environment of all time
Excel endures because it's the non-programmer's REPL for data. Like a Lisp REPL, using Excel is nimble and has an instant feedback loop. Click "A-Z" to sort ascending, click "Z-A" to sort descending. Move/hide/freeze columns. If one has intermediate-to-advanced skills, one can pivot the data on multiple axis. None of the centralized systems with even the slickest web GUIs can match Excel's capabilities.
That's why the centralized systems like SAP ERP, Microsoft Team Foundation, mainframe sytems, etc offer functionality to export to Excel spreadsheets. (Or they offer export to csv files -- which is 1 step removed from Excel.) With MS TFS, you can even re-import from Excel so in that case, Excel acts as a sort of offline data-entry client for the project management tool.
One middle ground between Excel data silos and the utopia of a centralized system is a shared document store like Sharepoint or Dropbox. The hierarchy would be something like:
1) Excel spreadsheets emailed around. Lots of redundancy; uncertainty of which version is canonical.
2) Excel xls file stored on Sharepoint with automatic version control. Employees must have discipline to only email links to the "one true" spreadsheet and never attach the actual xls file in the emails.
3) The data that was in Excel is migrated to centralized system and all data entry and reporting is done there. However, because the central systems are so cumbersome, this abstraction "leaks" back out to Excel because of the highly desired "export to Excel" functions! (This restarts the dreaded Excel "data silos" complaint cycle all over again.)
There isn't an IT department in the world that can develop centralized IT solutions fast enough to keep up with the ways employees slice & dice data. That's why Excel is "overused".
It wasn't very long ago that I realized that my two decades in IT could be summed up as: making proper applications out of Excel workbooks with feeble macros. I hate Microsoft as much as the next Linux zealot, but dang if they didn't create a world in which I've made a career. Where I'm at now, I'm drowning in opportunities to ameliorate horrific Excel-based workflows, and I'm fairly confident that there's enough work out there to last me until another 20 years to retirement.
Yes, exactly.
If we're being uncharitable, we can spin Greenspun's 10th rule[1] of programming as:
>"Any sufficiently complicated Excel spreadsheet contains an ad-hoc, informally-specified, bug-ridden, slow implementation of a proper centralized database."
Or, if we're being charitable, we frame it as an internal MVP (Minimum Viable Product):
>"Spreadsheets are the internal 'mvp' that proves the business value before you build the centralized systems. When the spreadsheet becomes unmaintable spaghetti formulas and the xls email workflow crushes under its own weight, that will give the company the evidence and the confidence to spend $1 million and migrate the spreadsheet to a proper centralized database."
You can very easily use Excel as a client to a central database and get the best of both worlds.
Yes it seems that way but many spreadsheets exist because the centralized system is an incomplete solution.
For example, a company might have a "human resources tracking" centralized system. (E.g. Ariba, Peoplesoft, etc). It has some standard features like ingesting resumes and extracting "skills" from parsing MS Word docs, etc.
However, the company happens to use a interviewing process where the candidate must pass (1) phone interview and (2) onsite with 5 peer programmers, and (3) hiring manager.
The hiring manager wants to "capture" all of those states (phone_passed=True/False, peer interviews with 5 different numerical scores, manager_pass=True/False). The centralized system doesn't have fields that capture all that so the hiring manager creates a spreadsheet that has those extra columns. Many spreadsheets out in the wild "fill the gap" between incomplete centralized systems and custom IT programming. An adhoc xls file can be created far faster than submitting a change request to the corporate IT department to customize Ariba -- which could take months (or never) to implement.
Or spreadsheets act as the "intersection" of data between multiple systems. Again, one purpose of centralized "data warehouses" was to eliminate Excel "data silos" but again, no IT department can create data warehouse solutions (which also includes all the custom reports) as fast as someone creating spreadsheets and just emailing them around.
Having a hybrid process where Excel acts as a round-trip offline client to a central db doesn't really eliminate the fundamental reason Excel (over)use keeps multiplying like rabbits.
I know Google Sheets gives you a little bit of this with Javascript embedding but I was searching for something more tightly integrated with Excel or LibreOffice.
That's why the principal way you sell centralized systems to users isn't in the ease of manipulating results but in the ease / automation of data entry. The whole pain point and problem with Excel is in manual data entry, and having a single source of truth, even if you succeed in enforcing its property as a single source of truth, does not automatically solve disagreements between different human sources of data.
That's why tools like Grafana have interesting futures for business users, because they enforce a clear separation between data sources and data visualization, while offering a lot of control to the end user over statistical manipulations and visualizations that they can create, and keeping those visualizations updated in real time, so that they don't have to be re-prepared every time period for some new report.
What about Business Intelligence products such as Hyperion? They can provide reports from a defined data model which gets data directly from the database. People can create their pivots and other transformations on the data fairly easily. Is their something that Excel offers that makes it much better than one of these Business Intelligence products in certain situations?
A simple one: If I have been asked to do a report, but it turns out I don't have the correct access rights to some data, my manager can simply send it to me in an Excel sheet, or he can log an issue with IT to change the acess rights to a specific key/dimension/hierarchy.
The 'one true data source' move often correspond to tighter access controls when good auditing really would have been the correct solution, hence the above situation is fairly common.
Got a complex work stream? Got thousand small problems that needs to be slowly figured out over 50 different main topics? Got a team of 2,50 or 1000? No problem.
1. Just set up a bunch of jira entries while tagging them with the same labels
2. set up filters on these labels.
3. Set up dashboard(s) that give a complete realtime/update to any inquiring user.
Need to report status? No problem, screenshot of the Dashboard and done.
It's really great tbh.
Yep. Even if they get centralize data via RDBMs like SQL Server or even god forbid Microsoft Access, office workers are going to want the front-end of that data to be excel.
There is too much knowledge investment in excel for many office workers to want to switch.
Then I believe it should say stop abusing Excel.
Excel can be an incredibly useful tool, but it's definitely not universally useful. If you're using it to manually collate data from 400+ sources, you're doing it wrong.
> A year ago, Mr. Bell’s team spent hours distributing hundreds of Excel spreadsheets to regional and unit leaders each month for planning and performance tracking of the company’s 415 U.S. restaurants, he said. Now the same process takes minutes.
Reads to me like, "last year Mr. Bell's team spent hours hammering in nails by smacking them with the wooden part of the hammer's handle"
And the premise that things have changed enough to warrant reevaluating worn out business processes like Mr. Bell's here is true enough.
But dumping a tool because some out of touch C-level tool says so is a recipe for huge traction loss.
I mean ... people that use nail-guns for a living still have to use hammers.
Edit: I just noticed that I'm the third person to reply to you and we all referenced hammers.
edit: my favorite thing about using excel is that instead of spitting out an answer, you can spit out an Excel sheet that shows a lot of the work itself, therefore partially explaining the answer to the people that have to consume it. The product of your program can often be another program, giving the person receiving the report the opportunity to tweak or add new parameters to your output. Basically currying accounting calculations.
Many moons ago large bank I worked at purchased a company and soon it became apparent that their entire business ran on a Lotus 1-2-3 spreadsheet with 30,000 lines of really dense, uncommented, unindented, spaghetti LotusScript code spread over 2 or 3 functions. The kicker is it would only run in the 16-bit edition of the product for whatever reason. So we had to have a VM to run it in because Windows 2000 had a problem with either Lotus 1-2-3 16 bit edition or the spreadsheet itself.
So yeah, stop abusing Excel - Lotus 1-2-3 in this case.
Maybe I'm a bit bias having used Excel my entire career and very dependent on it, but everytime I've seen companies steer away from the desktop application with 0365/sheets/tableau its simply not as useful for adhoc data analysis and reporting.
This is one of those solved problems that companies inexplicably keep working to solve again.
I mean, this is the problem that distributed version control was designed to solve. Emailing a spreadsheet around and calling one a source of truth doesn’t solve the simultaneous edits problem.
<rant>
You wanna know what's even more useful? Code notebooks.
I store everything from my sql queries to my processing pipeline to my models, and my vizualizations. Most notebooks have slide-show modes now so your presentation to business stakeholders is simple to prepare as well, and with the right plotting packages you can draw interactive charts that do all the fancy stuff. And when it's time to update the analysis, you just re-run the notebook.
But business analysts are too freaking lazy to just learn to write some python or R, and they're perfectly happy to get paid to do the same task over and over again when it comes time to making updates.
And don't get me started on source control.
</rant>
In practice what I've seen is that IT and finance departments don't even let business analysts write their own SQL queries for fear that they'll write bad ones that bring the database server to its knees.
I'll take data warehouses for 600, Alex.
I know there's " automatically check stuff into git" sort of models but would really like an integrated Jupyter + GitHub + Google Drive system so that it's easier to track what's happening and to find older versions of stuff.
Installing a notebook server is an option though. IBM will be happy to let you pay to have them help, or you can do it the sane way with continuum analytics.
I happen to use and advocate for R/RStudio for ad-hoc work (I spin it as "excel on steroids" when I am trying to convince someone). But it is hard to pull people away from something that has worked for them.
The alternatives to excel in the past have been really, really unpleasant to use. A now EOL product from Oracle comes to mind. It is called "Discoverer"-- that's right, "Discover" + "er". It is a turgid POS requiring extreme suffering and handholding/permission granting from your local friendly DBA-- all this to produce 90's era bar charts that are all but impossible to tweak.
The presentation mentioned that the company is/was working on reporting add-ons, I think.
In big biz, the "finance chiefs" (or other persons with purchase authority) usually get pampered by vendors with expensive business trips or whatever... especially at the scales that require SAP or Oracle solutions. So this likely means: the CFOs bought some expensive software that promises to replace Excel without any due diligence, the staff looks at the software and decides it's crap and continues to use Excel => CFO gets mad because no one uses the expensive software.
If you don't believe me, just ask yourselves how Oracle, IBM and Accidenture are still in business despite numerous highly expensive and publicized failures. It's all due to CxO pampering (in addition to a bit of vendor lock in).
See also http://exposingevilempire.com/.
Not sure if the misspelling is "accidental" or on purpose, in which case both it and this sentence are puns.
To replace Excel with software X, you would have to deliver software that would provide the Same kind of flexibilty. That is a very difficult kind of software to develop!
One very basic and powerful aspect of excel is simply the fluidity of the display. You can cram a lot of information onto a single screen, resize and move rows/columns, use colors.
As apposed to a clunky web app interface that has low information density, inflexible data scheme,and the crippled UX of a typical web app.
That's not to say that the example given in the article doesn't point out a real problem. But I wonder if doing some custom UI and re-factoring while building on the current system the users already understand wouldn't be a much more cost effective strategy.
When I see the clunky interfaces that so many workers are saddled with these days, it makes me sad.
This!
I know this is reality in so many companies that don't have technically educated staff to tell them about more suitable ways to do it. So the teams get data from one department or system, manually transform data (in the editor via search/replace), and if they are "very sophisticated" they save it in MS Access, join tables, connect the dots, export back to Excel, analyse the data via Pivot Tables etc. And they do these steps repeatedly, every week. Without stopping and asking if there might be better solutions out there. (In German IT curriculums they call this "Medienbruch" = "media discontinuity"?)
I have seen this in so many companies and thought to myself: This is an excellent case for a consulting pitch. And I could literally transform their work.
And I am not talking about selling data warehouse solutions with ETL processes and the like.
Twenty years ago I realized I could do all these preprocessing and transformations with Perl. Now I do these kind of things with Python and Pandas etc. So there are so many solutions that are a huge improvement. Still these departments do it with Excel/VBA/Access.
This seems like a good idea at first: automate manual processes, have a real database with one source of truth and consistency rules, multiple people can access it at the same time, etc. You can do it if the process is very well known and fixed.
But most of the time a web app would cause more hassle for the companies than having a team of people doing the work "by hand" in Excel would be.
* The process and desired data schema might change every few months - or even weekly when doing something like marketing reports. * Now they need regular maintenance - keeping servers up, doing and testing backups, applying security patches. * But the problem being solved is not big enough to justify hiring a full-time team of software developers to maintain it forever.
"Executive 1 likes to see the data presented in formats A and B, Executive 2 likes to see it presented in formats C and D, and occasionally E, and Executive 3 will only look at it if you format it as F and cut/paste it to PowerPoint."
So you end up with 20 analysts who all have input, each manually re-formatting their own data in 6 different ways, making sure they all stay in sync. Then someone else collates it all together into 3 different exec-specific presentations, and double checks to make sure they tell approximately the same story. Welcome to life as an office drone!
Then one executive who didn’t like the story would have one of his analysts pull the same data in a slightly different way and adjust it. The executive would then show it to the CFO and tell him that’s the real story. The CFO would turn to you and ask why his number is different than yours. Then you would spend hours with the analyst reconciling the data and building a waterfall chart to send to the CFO to explain the difference.
Then if you’re really unlucky the CFO says he wants to see the data both ways with a waterfall reconciliation every month.
- excel is much more flexible, I can add a column, delete those I don’t want etc
- speed: many of those large corporate systems are just damn slow, maybe because of stupid configurations, but still often very slow an annoying
- analysis: It's easy to do some basic analysis without studying CS
All outputs were generated by a .Net application generating read-only Excel spreadsheets (which might have 30 tabs and up to 15,000 values on a tab) - was done this way to meet the very complex reporting requirements. All the ~20 report packs in the company were produced with one click in a simple web app.
Ah-hoc querying of Hyperion was done from Excel using the SmartView plugin.
I'm not implying this is due to nefarious reasons (though sometimes it is): sometimes the official version of the truth is just not adequate.
I use Excel because my boss wants to use Excel, because all his bosses have wanted to use Excel, because all their previous bosses have wanted to use Excel.
That's how it works in the electronics manufacturing industry, anyway.
"Wouldn't it be great to automatically get averages each month"
"Perhaps we could pull in exchange rates so we have up to date currency values"
"As we need to compare this to employees here, and because we actually have a list of employees in another sheet for holiday and sickness, why don't we put the employees into another separate sheet and cross reference it from both places"
"When we add a new employee wouldn't it be nice if these sheets automatically update"
"We want to pull in this live data every day at midnight, perhaps we can have an automated job for that"
Then when someone says "hmm, I don't think Excel is the right tool for the job" there is often general agreement, but at that point there are lots of interconnected sheets, formulas, external data being pulled in, cron jobs, etc. and the system manages a lot of different things, none of which you particularly want to be without and despite the complexities, people have been with it over iterations, so they are actually quite familiar with how it all works.
But then a couple of people with the knowledge leave, a new person takes over, and their first job is to remove Excel and come up with a much better system. They try, users complain it doesn't do certain things as well, over time in improves, somehow certain things never seem quite as good, but then new features have been added so people forget and find the next thing to complain about instead!
At the same time. I have seen banks transfer money between branches by literally FTP transferring an Excel file. At some point there has got to be a better way. At least use SFTP :)
I often wish there was an intermediate between writing a fully custom piece of software for something and using excel. This about how many times you've worked on a web service (or other technology) and how much of the code is basically identical to every other webservice in that technology minus some unique data models and a few functions of custom logic.
You host a web server that runs Python or PHP or whatever and it queries and pulls data from any number of places, and dumps the information to CSV. Then in the Google Doc, you request the data from your server with the IMPORTHTML function. It populates your spreadsheet automatically, and then you can show graphs and other various things. And it will update on its own!
There you have it! Single source of truth! And you still get to use a spreadsheet!
It's a fucking beautiful, elegant solution to the entire "Excel problem" that I don't see enough people using.
Instead they're going with enterprise 3rd party "solutions", like Anaplan. Who knows how much money they're blowing because the execs don't know tech...
It didn't even occur to me that anyone would use Excel as the database. Holy hell. Nevermind.
Still, it shouldn't be hard to convert Excel to an SQL database. Then you dump to CSV, and use ImportHTML to have a spreadsheet be your source of information.
But polling is just as good for these purposes, your data will be up to a few minutes old.
If you want true live data then you should use something else, but that's not what the finance chiefs are complaining about. They want people to stop manually importing CSV data because it's really slow, and causes lots of errors.
EDIT:
I was going off the assumption that there was actually a database somewhere. Turns out they're using Excel as the database.
I'd still argue that one person who codes can fix it. Take your Excel sheets, put them into an SQL database, and dump to CSV for importing to Google Docs for graph/display purposes.
[1] - www.paulgraham.com/submarine.html
Points for their SEO/clickbait headline: it hooked me... this time (-1 one added to my personal WSJ lifetime value calculation)
* the single source of truth for a set of primary data
* the mechanism by which regular (i.e. repeated) reports and analysis are conducted
But it overlooks the fact that:
* Excel has, for many years, had real-time integration to pull data from many systems (not just 'Export to Excel', but the ability to pull data via ODBC connectors). I've used this, e.g. to pull trial balances from Sage into Excel for custom, but repeated, financial reporting.
* You can't beat Excel as a prototyping tool, or for ad hoc analysis from disparate data sources (without a huge learning curve for the people we're talking about). Telling finance/accounting professionals not to use Excel is like telling designers to use D3.js instead of Illustrator. D3 might integrate better with data sources, and be easier to version control and share etc., but for a quick sketch you'll use Illustrator.
From the title, you'd assume these 'Finance Chiefs' were expecting none of their staff would even need Excel installed, after some transition period, but this isn't the case. There's always some lag between the needs you have, and the capability of more structured tools.
That said, it's a great tool to survive in the woods :)
There are ways around that. Here's something I just put together as an example:
=EXACT(COUNT(A2:A6),COUNTA(A2:A6))
That will only return true if all the cells in range A2:A6 contain numbers.
There are other approaches that would work, if that doesn't suit you.
I use IntelliJ and Git, so you know what I'm missing.
I desperately need some tool I can tell non-tech people to use where they can input arbitrary structured data.
After the data is there, in any format the user wants, as long as it is structured somehow, millions of programs can be written to use that data and combine it, but somehow the data has to be written FIRST. It is not feasible to come up with the schema, write a software based on that schema and then give it to the non-tech people.
- treat inputs and outputs separately
- always use simple tables for input (no breaks, first lines are titles, basic vlookups for relationships, etc.)
- use pivot tables to summarize the tables, and build reports on top of the pivot tables.
EDIT: BTW, on a personal level, I've moved to CSV/Jupyter Notebooks combo, but I have no hope that my fellow non-tech workers will do the same...
To add a couple more:
- Use actual tables. (Select data+headers, Insert -> Tables -> Table). In most cases the data is tabular but not formatted as a table. Making this one change makes the formulas self-documenting, and rather than selecting rows 2:5000, it will automatically accommodate more data as it's added. Tables can also be named (click in the table, Table Tools [Design] -> Properties -> Table Name). E.g. tbl_sales. This allows nice formulas like
=SUM(tbl_sales[Sales])
or =SUMIF(tbl_sales[Region],"West",tbl_sales[Sales])
At a certain point, it really needs to be SQL, but between this and pivot tables you can greatly extend the time before a database is needed.- Add a sheet with instructions. Explain hiccups which may be encountered, and how to fix them.
- Add comments to VBA. There is about 1 person at my facility (other than me) who adds any comments at all. Most use the Macro Recorder then add in the loops and logic as needed. Makes it really tough to figure out.
- Protect cells which hold calculations. I recently saw a spreadsheet which has been giving sub-optimal output for years because the ranges used in a function were messed up and copied down every week.
- Use the built-in styles (Home -> Styles). Same goes for Word (Heading 1, Heading 2, etc.). It makes spreadsheets way more straightforward to read if there are some cells using Explanatory, Input, and Note styles, and it's less abrasive to read. I particularly like the Input style because you can tell users "You'll only need to update the orange cells".
- Use multi-line formulas. Alt+Enter while editing a cell allows multiple lines on a single formula. You can also improve the readability by adding four spaces at the start of the new lines. E.g.
=SUMIFS(tbl_sales[Total_Sales],
tbl_sales[Month], "Jan",
tbl_sales[Region], "West")Would it be feasible if you only had to write the schema and the software were generated based on the schema?
I was working on something like that based on https://postgrest.com/, but I'm now reconsidering the approach.
For small companies, Excel may really be all that you need. But at a certain size, you might want to use something like PowerBI instead since it will also pull directly from the database and you can share the dashboards you create very easily. Large companies like the article are referring to might be able to get by with PowerBI (Microsoft would certainly argue there are still plenty of places where it works) or ERP/HR tools more specifically designed for certain uses.
What I like to call the product is "excel on steroids".
You can check it at www.ninoxdb.de.
I know these tools and I like them, but this wasn't what I was talking about in my comment. I meant something more flexible and more arbitrary, like a key-value store non-tech people could edit.
Are there any good tools available for version control and/or diffing of spreadsheets?
If my coworker updates a formula in cell E3 and emails it to be, is there any way for me to know what changed?
See: https://support.office.com/en-us/article/Basic-tasks-in-Spre...
You can see user edits, old cell value and new one.
It gets latest data on save and even does merge
Databases are meant for tech stacks, not working with lists.
Instead, companies are turning to new, cloud-based technologies from Anaplan Inc., Workiva Inc., Adaptive Insights and their competitors.
The newer software connects with existing accounting and enterprise resource management systems, including those made by Oracle Corp. or SAP SE . This lets accountants aggregate, analyze and report data on one unified platform, often without additional training.
---
reads like a "submarine
The thing is, I never use Excel because the data I work with every day is almost always multidimensional, so I work with xarray[1]. It drives me crazy to see coworkers using Excel for things that it is not suitable for and having crazy solutions like multiple tables per sheet, multiple sheets, multiple files or other hacks to describe another dimension of data.
Whenever a value for such a unique (key, arguments) cell would be required, the application would collect all such that need updates -- or, you could click a button to update them all --, create a message that would contain all paths and arguments, and auth info (each user would require to authenticate with some centralized system, so that the auth key would be used for that RPC, and that the service could check for authentication and authorization ), call out to some service and get values for each of those cells (value could depend on the authenticated user, or could even be denied depending on privileges ).
Furthermore, the application would cache each such cell value (auth key, resource path, arguments digest, value) and it would periodically update them, or do so on demand (so that you can use it say on a plane, and refresh them when you land). That’s the gist of it, but there’s more to it and there are some optimization opportunities I am ignoring here, but it could work.
Then again, for all I know, there are already such services, or apps that kind of do this sort of thing.
Incidentally, there are a lot of people who move from Excel to Salesforce ! Because of the ability to program it like an Excel sheet.
Unfortunately, if you're not technically inclined and someone gives you a big hammer, at a certain point you're gonna have to stop hammering everything you encounter and learn how to use a screwdriver.
Joel Spolsky's essay "Controlling Your Environment Makes You Happy" comes to mind.
Often excel users are stereotyped as having error-prone, sporadic workflows where they are often mistakenly writing over raw data, etc. And that is often a valid stereotype. However, I believe that there exist scenarios where excel is part of the optimal workflow.
From that perspective WSJ is doing a great job in making the bed for these ideas: startups will eventually want to sell to those "Finance Chiefs" which is never an easy job.
Desktop apps like Excel are fabulous at letting you work alone with data in front of you.
But they are a shitstorm of horror when you try to work with other people, collecting data from multiple places. And sure, Office 365 is a step in the right direction, but it's not nearly enough. Google Sheets is slightly better, but it's still not enough.
To be frank, the same way that "anyone can do SQL," we've fallen into a trap of thinking "anyone can do Excel," and it's just not true. And no amount of improving the commercial product Excel will make it work for businesses like they need, in my opinion.
At some point you need to hire engineers, mathematicians, statisticians, process engineers, business analysts, etc., to help you manage your data.
Asking people to "Learn Excel" in order to replace a real team of qualified domain experts is folly.
If the finance team (and I have been part of one early in my career at a major conglomerate) is doing essentially the same repetitive analysis on periodic data sets, it is their bad for not reaching out to their systems people for a better way. Those types of reporting can be canned at a much earlier level and output generated/delivered in the desired format directly to the end users. And nothing precludes still making data available for new types of analysis.
Excel is great for small operations, ad hoc stuff and just quick and dirty work (a REPL of sorts as others have said). But not as a primary/crucial reporting tool for large operations.
I was shocked to hear about my old company still using Excel heavily for key business operations. I think those are the ones that should be replaced by bespoke software.
On the other hand what likely happens is you need a way to quickly perform some analytical task and your company doesn't have the process or speed to whip up some software quickly. After seeing how a lot of Fortune 500 companies work I'm not sure they ever will with compliance and other regulations in the way.
Excel is very accessible and will probably be the way businesses whip up analyses in the face of business fire-drills unless they have software engineers embedded in their teams or they get their current staff to learn how to code.
The only thing that Excel is awkward at is unlimited recursion. For everything else, if you can't turn your computation into a nicely laid-out spreadsheet, then you probably don't understand your problem well enough to explain to others.
Had a fun time doing many of the Euler problems in Excel, even though they theoretically many require recursion. Oftentimes I got the answer more quickly and easily than in Python.
But working full time and having to create Excel spreadhseets on a regular basis as an engineer (mainly for budgeting and capacity plannig, but also do some schedule/timeline display), I have to say once you know how to cross reference things in Excel, life saver...
Automating spreadsheet creation has helped save hours of manual recompiling every quarter (do this Python is pretty pleasant). Yes. The scrolling and wrapping really sucks, but nonetheless everyone understands excels. I have been given tours and free trials from SaaS companies to try their AWS budgeting interface. They are great for some (like some prettt graph), but just not easy and flexible at all.
But, joking aside, Excel is the most amazingly useful and adaptable tool but it's incredible how many obvious improvements have been left out. Parts of it are stuck in the stone age. As others have mentioned, version control and information flow are hugely limited with it and there's a real feeling that it went backwards for things like charting (I suspect it's partly that other methods are now more intuitive). And why on earth don't they do something (anything) to make pressing F1 not be such an annoying experience...
A more accurate headline in terms of the article's contents would be something like, "Stop Using Excel For ERP, CRM, And Workflow-Based Use Cases, Finance Chiefs Tell Staffs". Or to be extra snarky, "Follow Known Best Practices, Finance Chiefs Tell Staffs".
Not that attention should not be paid to the article's subject matter -- there is SO MUCH wood to chop in terms of helping enterprise customers run their companies better and/or get rid of inefficiency and general jankiness.
This reminds me of my 2 months working for a Big 4 accounting firm in, basically, SOX auditing.
We mapped out controls on our little 14" laptop screens using excel spreadsheets with tens of thousands of rows and hundreds if not thousands of columns.
I'd say we were writing novels in Excel but, to be honest, there were probably far more words than the average novel contained.
Talk about using the wrong tool for the job -- and using low-paid monkeys on inadequate equipment rather than developing a proper application for the task (or paying someone else to do the same).
I'll never look at excel the same way again.
My only are the applications slow and buggy (unless I’m guessing you’re running Windows?) the file format is very hard to work with / from if you want to do anything with it outside the vendors application, data quickly becomes stale and it’s not easy to populate automatically using standard tooling let alone share the information generated there from in an accessible, digestible format.
Article doesn't mention companies by name: "The reporter didn't include any specifics! Lazy journalism!"
Advertising usually costs 80k.
The newer software connects with existing accounting and enterprise resource management systems, including those made by Oracle Corp. or SAP SE. This lets accountants aggregate, analyze and report data on one unified platform, often without additional training.
Adobe switched to Anaplan early last year and many of the tasks previously performed in spreadsheets are now done in the system, maintaining “one source of truth,” Mr. Garrett said."
> Instead, companies are turning to new, cloud-based technologies from Anaplan Inc., Workiva Inc., Adaptive Insights and their competitors.
Indeed Very fast into the article I classified it as advertisment.
Instead, companies are turning to new, cloud-based technologies from Anaplan Inc., Workiva Inc., Adaptive Insights and their competitors.
Could also be the updates in Excel.
There is currently simply no viable substitute. (And don't tell me LibreOffice). Excel's mindshare is off the charts in the finance world.
Even if LibreOffice was anywhere close - it wouldn't matter...the finance staff wants what they already know & since they approve the $$$ they usually get what they want.
For certain tasks other applications may be more suitable, but as a general swiss army knife it's here to stay
We use Google sheets at work too - almost exclusively for shared trackers though which don't require any serious functionality.
This sounds great if you know exactly what reports you need and have the resources to build them, but I'm not really sure how this kind of initiative means "stop using excel". This article is advocating for a solid API / data management / data catalog program from what I'm reading.
If any of those products grows a more user friendly model for _thinking_ about how to do things (Flow is arguably the closest) they could revolutionise how things are done here. PowerBI has enormous power to express data as stories, but the technical hurdles are still high. It's not _harder_ than excel, but there's a competency cliff.
"Motley of disparate accounting systems" is your problem, not Excel. Heavy Excel use/misuse by end analysts is a symptom of poor data practices, not a cause. If Excel is being used to compile and distribute complicated/big/important reports, it's extremely likely they lack better and more coherent tools and data sources.
It combines the structured-ness of a database with the ease of use of a spreadsheet. And it lets you slowly evolve your datamodel (we adjust fields/tables every few months and it usually only takes 15 minutes).
Just wondering: can you make an API call / ORM query to a database from within Excel macros? How much I/O can you do with macros?
You can talk to a database: https://stackoverflow.com/questions/18313899/vba-new-databas...
Interact with the filesystem: https://stackoverflow.com/questions/11528694/read-parse-text...
Open arbitrary sockets, with some caveats: https://stackoverflow.com/questions/125921/mswinsock-winsock...
And more!
The thing with excel is that it’s repl-like and lets you sketch up a solution. If users could build more data driven apps (I don’t doubt it’s possible but it should be easy) like those Access popularized then you could start off using sketch data and finish with using a “single source of truth”.
Also I laughed when one of the complaints was "Older versions of Excel don't allow multiple users to collaborate on the same document". Well, is that Excel's fault, or should they just go and get the latest version?
Now that I am grown up a bit, I recognize it can be useful. The real life problem, for me, is recognizing when comes the moment to stop sending spreadsheets by mail and write software, instead.
Or buy it. Lots of people buy sofware, they tell me. Why don't they feel the pleasure of crafting every single bit by themselves?
Not sure if these cloud offerings have the same breadth of features that Excel has as I've never used them, but Workviva seems to be some sort of cloud based spreadsheet and analytics tool.
The interface is very familiar for many professionals, its just a matter of coordinating and working off a the same data.
I mean at some point if you cannot teach everyone a programming language, you can at least give them some tool that can do a similar job.
Teaching programming is so expensive, the money has always been into making programming just easier and easier.
Doing this gives us the best of both worlds
I understand, there may ve different needs in big corporations, of course. But that doesn't mean "everyone should stop using Excel and buy our cloud SW", sigh.
But given how much shit is in Excel, and how many edges cases have just been worked out already in Excel... man sometimes it's just nice to have Excel.
Want to de-dupe a list? There's a button for that in Excel. (I know there are tools... but look my point is just that it's so much easier in Excel.)
Want to convert some list of dates that were saved based on a 1904 calendar over? Easy, Excel even offers to do it when you paste. Google docs? Yeah not so much. You're left doing this by hand... 4 years and 1 day off... ugh.
Want to see all the formulas and know how they work? You get only so much visibility into the apps for Google Sheets... I don't really want to run code / grant access to things unless I know what they are doing. Not keen on adding 3rd party functionality that may be sending my data back to the mother ship.
I love me some Google Sheets... but just saying when I need to get shit done, Excel is usually a slightly more robust experience.
That is literally all I did when I was a financial analyst and is how I became a programmer. This should be automatic, I thought.
Good, I would be concerned if they knew exactly what each customer was using their software for.
The software itself was available for download for a time.
When you show up to work on wall street, your new buddies will yank the mouse out of your machine and remove the F1 key. Then you can begin your apprenticeship with a fresh perspective.
The point is, you can be incredibly productive in excel against a very large problem space. It can't handle GB datasets, but once you have filtered down to a manageable size you can answer questions via ad-hoc analysis, automate financial reporting documents, solve multivariable regressions, run machine learning algorithms (see 'Data Smart') etc. with aplomb. I understand the objections to the data model and its inappropriate uses, but excel can take raw data from disparate sources to finished documentation for regulatory requirements and helps you automate most of that -- I don't think the finance industry is going to move away from it. I certainly don't perceive an understanding of the costs involved with building a different way.
>“I don’t want financial planning people spending their time importing and exporting and manipulating data, I want them to focus on what is the data telling us,” Mr. Garrett said
I hear this complaint all the time from business leadership, Mr. Garrett doesn't seem to understand that extracting/munging/preprocessing and then analyzing data is inextricable from the end product which is visibility and understanding at the business leader level. There isn't a follow-up to say Mr. Garret is hiring data engineers and software developers to serve the now-liberated 'data focusers'. I'm very skeptical that these sentiments are different than the past, or are a signal of changing times ahead.
Lastly, I'd to share the following funny snippet from the reprehensible though satirical leveraged sellout blog:
>I turned and tapped Josh on the shoulder to get his attention. I didn’t say a word, but my face said “Yo…yeah you, McKposer.” We locked eyes. I slowly and dramatically reached for my mouse cable. Staring him down, I methodically unplugged it from my computer’s USB port. The cable came out slowly but smoothly and with it’s final, climactic release, I heard Josh gulp with fear.
>I continued to glare at him as I started to “fly around.” My eyeballs burned through his unweathered, 60-hour-a-week-when-he-should-have-done-90 face as I hid and unhid sheets and conditionally formatted and applied validation to cells with triple nested conditional and indirect functions and then culminated by on-the-fly writing a macro that took my data and made it into a Marimekko (and we don’t even use that shit!). I never turned to look at the screen, and my eyes never left his.
Also if this guy thinks he's going to escape silos by putting everything in the cloud, he's quite mistaken. The cloud is just code running somewhere else. It does not change fundamental computing paradigms.
http://www.sciencemag.org/news/2016/08/one-five-genetics-pap...
https://www.economist.com/blogs/graphicdetail/2016/09/daily-...
he authors found that Microsoft Excel would often interpret “SEPT2”, which corresponds to the gene Septin 2, as “September 2nd”. The programme also tended to mistake identification codes like “2310009E13” for numbers in scientific notation—in this particular instance, the code would be read as 2.310009 times 101
Excel is fine for the home user. But the implicit conversions of input data can play havoc with any complex analysis.
Plus, it's limited precision can cause errors such as subtractive cancellation, etc. In order to correctly calculate complex formulae, the calculations must be done with an understanding of the limitations of the computers.
e.g. you don't calculate (a^2-b^2) for large 'a' and 'b'. Instead, you calculate (a+b)*(a-b). That has the same mathematical result, but is not affected by subtractive cancellation.
> Excel shouldn't be used for much other than trivial things
Good luck with that, but it ain't gonna happen anytime soon.Many "non-trivial" applications got their start at someone's desk in the form of a shitty excel spreadsheet with horrific macros. Is it optimal for "complex analysis"? No, but it doesn't matter because most things are computationally simple. The hard part is the intricate business logic and the timeliness of getting results and these things are not "trivial" at all.
Instead of complaining about how terrible excel is, the community here should be providing alternatives. And no, engaging a software team/consultant for a million dollars to develop bespoke applications or interfaces to enterprise systems for every little project isn't a viable solution for people who need to get stuff done pronto.
A real alternative to Excel is no small feat.
Yeah... like I'm going to compete with MS by writing my own Excel replacement. That just isn't realistic.
What would be realistic is for MS to acknowledge that a large proportion of their customers use Excel for a particular purpose. And then tailor their software to the needs of their customer base.
But why would MS care? The researchers already bought Excel. So why "fix" it?
On top of that, no one is aware the the published papers are crap.
The real solution would be for journals to deny publication of papers based on shitty Excel analysis.
Excel completely corrupts dates before the year 1900. It just boggles the mind -- if your spreadsheet has dates for 10,000 years from now that works fine, but if there are any dates from the 19th century or earlier, it can cause big problems.
Can you not turn all of that off (and only need to turn it off once per sheet/file)?
In general, one of the worst things about Excel is there's no obvious way to lock anything to keep it from getting changed by accident.
Heck, even integration has been re-discovered and published:
https://fliptomato.wordpress.com/2007/03/19/medical-research...
If the tool doesn't work correctly by default. Then it's likely the wrong tool for the job.
The default conversions are fine for 99% of use-cases. But no one should mistake Excel for a robust data analysis tool.
I’m not a mechanic, but is WD40 an example? Or maybe some tool like a hand held circular saw, in home construction?
And, other examples from the tech world?
Having tickets in JIRA is for the team to track and plan work that needs to be done, not for storing personal garbage.
My dad brought home an IBM PC in 82, using Multiplan for chemical mixing calculations. He thought it was the cat’s meow. Though Multiplan was the predecessor to Excel, the spreadsheet had been out since late 70’s.
Several CEO's (plural) tell their Staff (singular ) a CEO only has one set of employees.
The headline implies that all the CEO's have multiple sets of staff