Hacker News new | past | comments | ask | show | jobs | submit login

You don't need a domain-specific tool for every problem your business has. If a spreadsheet works, great. If it ain't broke, don't fix it.

In a similar vein, there are plenty of small software teams that use nothing more than a whiteboard for project management. Yet there are teams tooled up with Jira/Trello/Slack with much less productivity.




I have to argue against this, because spreadsheets are a real pet peeve of mine. It can be hard sometimes to see _why_ a spreadsheet is broken. Spreadsheets simply don't scale (and I don't mean lolwebscale or whatever.)

If two business processes interact through a spreadsheet, or more than two people edit, you're going to immediately run up against the rough edges. Multiple people editing the same sheet inevitably ends in error. It can take a really gross amount of time to update the data when you're pulling/pushing from two sources. It may seem small on the surface, but even 2 hours a week adds up to nearly 3 weeks of work over a year. Can you replace this spreadsheet in 3 weeks?

I've seen this play out many times at large and small scale. The first example that comes to mind is a 10-hour day trip my wife took to go out of town and manually update a whiteboard because somebody messed up the shared spreadsheet. She was very unhappy, and this wasted a precious day during a _very_ busy period. Initially, the whiteboard and spreadsheet worked great, so they didn't "fix" it. It didn't scale to the busy times and really screwed them over.

At a much smaller scale, I wrote a quick SQL query to get some business metrics for the CEO. He asked if I could run it for him every week. Since I didn't have a good place to put this query, I just ran it manually and emailed it to him at first. Then he wanted to share it with someone on the opposite coast outside our network, so he asked if I could start putting it in a shared spreadsheet. My initial thought was to bang out a page they could pull up instead, but I figured it wasn't worth it. Then he wanted another metric. And another that required a bit of logic that couldn't be done in SQL. Pretty soon I was spending an hour a week manually running SQL and copying the results in to a spreadsheet. (We're a Google Drive shop. No way to connect Sheets to DB2.) That's simply not worth my time. I should've listened to my first instinct.

The initial investment in a spreadsheet isn't large, but the ongoing maintenance can really rack up hours. I think it's very often worth investigating any spreadsheet that users have been maintaining/recreating for more than a quarter.


> We're a Google Drive shop. No way to connect Sheets to DB2.

FWIW, Google has an API that can be used to get data into and out of things like Sheets. The documentation for it is abysmal and there are only a few libraries out there, most of which aren't complete. But, I've done it, and have some rough (but easy-to-understand) code that can "import" Sheets into MySQL. Going the other way should be a matter of tweaking the Google account permissions and calling a couple of different functions.

It's in PHP, but it's not gross PHP, so you can probably translate it into whatever you're familiar with.


Here's a freebie that I wrote in like 15 minutes and use in multiple prod situations. Treat any Google Sheet like a JSON data source. https://gist.github.com/chrsstrm/3fb0ce6820acecf62c5490d220d...

Yes, the App Script API is kind of limited, but also extremely powerful for simple services or to glue services together.


There's another really cool way that I've started using lately - doPost[0]. You can set up a js (appscript) function with that name and then publish it for anonymous use (such that the long endpoint url is the secret key).

You can for example set up a cron job to post some json to that endpoint and have the js validate it and update a sheet accordingly (or even create a new one).

[0] https://developers.google.com/apps-script/guides/web


I use pydrive. If you're doing something reasonable once a week it'll easily be fine. I had problems trying to push a few hundred thousand things in a short time, but otherwise I highly recommend this as a first step for sharing data.


What's not worth your time? You're being paid for this all the same aren't you? 1 hr/week would be 52 hours for the whole year, are you able to create something that much better in less time? And will that maintain all the flexibility?

There's a reason Excel is so powerful, but it can't magically solve for people lacking a process and most software solutions solve it by using complex permissions, versioning and collaboration features. You can just easily lock down the shared spreadsheet to readonly and have 1 or 2 people who are designated editors and get the same effect, or just have the changes done on a new tab and compare that way.

Even the most amazing software can and will get screwed up by users who don't have a process.


We programmers are paid for the time we do at work, but side projects like this very often aren't taken into account for the things we are expected to do during the regular work week. That is it's own problem, but this happens to a lot of people. You are paid for doing "the big projects", but then someone asks you to do this little thing on the side that gets bigger and bigger, but it's taking away time and focus on the big projects. Your boss probably doesn't think the side thing is what your job is.


Then take ownership and communicate so that they know.

If there's a better way then suggest it, or at the very least document the time and effort spent on these reports. If they are that critical (which they usually are for decision making) then it shouldn't be an issue when planning future work.


I think I understand the situation you described.

I’m not sure how “global level” organisations are, but mostly you just can’t convince a typical layman CEO that something looks easy, is really not easy.

Then when you serve the “small request”, next he’s in doubt why adding a small feature could increase the complexity of your work by a few order of magnitude.


Maybe today, but its going to keep growing until you hear it groaning under the weight of features that have more and more risk, and generally an unknown amount because those Excel methods are getting creakier and creakier over time as you try to accomplish more with the same tools.

The problem isnt Excel or any useful tool, its the misapplication of the tool and seeing people driving that same road already extremely well traveled.

http://www.laputan.org/mud/


This, a million times.

I can't count the many times a business process is done (poorly) by inputing lots of data in an excel file, running a huge (poorly written) macro, and spending the file via email to the next person and so on...


> Spreadsheets simply don't scale

This means that if your computing problem doesn't need to scale, a spreadsheet may just be the perfect tool.

However, I agree with you. The next Facebook might be of whomever builds a spreadsheet that scales.


Check our Air Table. https://airtable.com. I’ve not used it in production yet but it looks like a good excel replacement for database type info. The UI is very slick.

I tried smartsheets but it’s more calc centric. Asana is great if you are task centric.


It never needs to scale - until one day you find out that it has overgrown this stage many months ago.


> Spreadsheets simply don't scale

You've never seen panic like a multi million dollar business discovering that excel doesn't allow more than some fixed number of rows (1m?).


The issue is the constant need for new features. Much more cost effective to add a tab vs. modify code.

I think something lost in this conversation is how spreadsheets are largely a part of general primary school curriculum. Generally people have a feeling of confidence around them that is lost with other tools. Particularly "easy database" applications that attempt to replace spreadsheets.


They don’t scale well, but you don’t want to over engineer a solution until you really need it.


Check out Google BigQuery. Not sure if you can do exactly what you need, but we use it as glue between some dbs and Google sheets.


DBVisualizer can export any query you just did to a spreadsheet...


> You don't need a domain-specific tool for every problem your business has.

The opposite is also true: You can make a decent living creating, customizing or even just maintaining domain-specific tools, no matter if the customer's business really needs them or not.


> You don't need

It's very easy to criticize something by saying you don't need it. There are very few things in life that you absolutely need.

Yet there are things that add convenience, greater efficiency, etc, and people will pay for them.


Completely agree with you here, but I see it most of the time from another angle: If you're working on a project where you can't just plug in external tooling for certain things, there might be tooling that's rather subpar and slows everybody down. And yet - when you try to convince management that someone should spend a couple of hours bringing them up to snuff the reaction usually is "meh, that already works.", ignoring the manhours you throw away every week because the thing is organized so terribly. You'd think from an expenses standpoint alone it would be pretty easy to decide to "fix" things like this if you do a napkin calculation of how much of a black hole for money the whole situation is...


> If a spreadsheet works, great. If it ain't broke, don't fix it.

A spreadsheet works until it doesn't.

Maybe you load in past, say, 150mb of data.

Perhaps the last person to touch it linked it to a data or content source they only have access to.

Perhaps the person editing it has it checked out from a Sharepoint and forgot to check it back in.

Perhaps the person editing it left it open on their computer and forgot about it being hosted on a shared drive.

Perhaps the business critical sheet is hosted on someone's desktop.

Fundamentally, spreadsheets are cocktail napkins. It's fine to sketch out a basic idea. It's a terribly risky approach to run a business from it.


I usually frame this as "there isn't any single problem for which excel is the right tool, but for surprising amount of problems it is usable tool"

And I've found out that having excel export of essentially any data in your line of bussines application is indispensable unless you expose some kind of excel-like querying and data manipulation mechanism to users as part of your application.


> Yet there are teams tooled up with Jira/Trello/Slack with much less productivity.

I work for a small company, we generally use Jira (which we all hate, some with more of a passion than others... ok mainly me).

More recently we sort of accidentally started using google sheets for managing issues on some long running projects: it's easier to get an overview, i can add and remove unnecessary attributes of issues and filter them appropriately and dynamically without having to define a whole new workflow and start over. It takes basically the smallest amount of time possible to log an issue... I can organise them however I want. Issue management is overrated, issues are simple, and having something as flexible as a spreadsheet is a surprisingly good fit for anything not customer facing.

Oh also, I don't need to _learn_ how to do all those things... it's a spreadsheet so it's obvious, but Jira - it's so hard to do anything unless you live by it, I don't want to live by an issue manager I want it to get the fuck out of the way so i can do work.


What scares me is the whole world runs on Excel. Name a data-intensive critical industry: deep-sea oil drilling? Power grid management? International finance? All powered by Excel at critical junctures.


It works until it doesn't work then you are Donald Ducked.

I one worked at a place where a key part of the finance system ran on a spreadsheet - turns out this SS had mess up or finances and was one of the reasons the company restructured.


Donald Ducked as in royally fubared?


>You don't need a domain-specific tool for every problem your business has. If a spreadsheet works, great.

If what you are doing is applying math formulas over small or medium sizes of data, then excel is OK.

Otherwise it will suck and will be a waste of man-hours at the Office.


The problem is external criterions like data recovery, data security, quality control, access control, auditing etc.


*twitches

I can't believe I'm about to sink so low, but... criteria!

Criterions are what one adds to soup ;)


> Criterions are what one adds to soup ;)

You're thinking of crouta.


Let me introduce you to a cool website:

http://www.dictionary.com/browse/criterion


That something incorrectly oft-repeated can take on a veracity all its own is a wonderful aspect of the English language, but it doesn't make things any less twitch-inducing and, bluntly, incorrect.

Besides, I wanted to make a somewhat self-deprecating comment, rather than - as you have here - regurgitate some half-arsed passive aggressive form.


One advantage of spreadsheets is that data can remain local. Even air-gapped.


So can most other things - I'm aware that it's fashionable to have More Cloud, but domain-specific, local toolchains have zero reason to be non-local. "Spreadsheet xor cloud" is a false dilemma.


Well, there's local, as in your DC. And then there's local, as in your laptop.


Still not unique to spreadsheet.


What do you have in mind?


That custom solutions do not inherently require a server - "either it's Excel or it doesn't run on the workstation" is something that's actually easier to disprove today, with containers and whatnot. Custom solutions can be fully local, i.e. no network access required.


OK, fair enough. And indeed, I use MySQL with MySQL Workbench in Ubuntu VMs. But still, Excel on equivalent Windows VMs pivots much faster.


Pivoting is a feature, not a solution; plus it might pivot well on tiny datasets, but for anything over 100k rows, it scales about as well as a brick.


It wasn't that I had too many lines, but too many columns. As I recall, a few hundred columns and maybe 50-100K lines. Even after increasing the field/column limit in MySQL, the query wouldn't complete. But in Excel on an equivalent VM, it computed in a few minutes.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: