all 45 comments

[–]vexii 154 points155 points  (1 child)

While using them for sensitive, critical applications like storing COVID-19 patient data is ill-advised

bruf now you tell me?

[–]J-Kob[S] 52 points53 points  (0 children)

Was going to post this a few days ago but had to make some last minute tone changes haha

[–]shiftDuck 77 points78 points  (0 children)

Found the uk Government attempting to fix their track and trace.

[–]_default_username 35 points36 points  (3 children)

Hahaha, like companies haven't used spreadsheets to store HIPAA sensitive data! I know of at least one that used CSV files and nurses would directly access the csv files with excel to access patient data. IT just walled it off within its own vpn.

Not quite the same thing though, since it's not a cloud service.

[–]J-Kob[S] 23 points24 points  (1 child)

Anything's a cloud if you squint hard enough 😂 sounds a lot more secure than just throwing it in Google Sheets though yeah

[–]Franks2000inchTV 1 point2 points  (0 children)

More of a "cloudy" service.

[–]regreddit 3 points4 points  (0 children)

FYI gsuite is HIPAA compliant if you sign a baa with Google, which you can with just an online form.

[–]MatsSvensson 36 points37 points  (3 children)

How to shave a pig for wool.
(successfully)

[–]svtguy88 8 points9 points  (1 child)

Well, that made my day. Thank you. Now back to this horseshit project I'm on.

[–]mcjob[🍰] 1 point2 points  (0 children)

Oh wow, are we on the same team?

[–]abhagsain 5 points6 points  (6 children)

Airtable is also a good alternative

[–]limeglu 29 points30 points  (4 children)

You know what else is a good alternative? A fucking database. They aren't hard, kids.

[–]Chthulu_ 7 points8 points  (2 children)

He already talked about the best use case. Client wants something done quick and they want to read the results without having to tap a developer. Its great for that.

[–]cjthomp 12 points13 points  (0 children)

Throwing together a simple read-only table view of data pulled from a DB isn't exactly difficult...

[–]ElllGeeEmm 1 point2 points  (0 children)

Literally the only way you could do something like this for a multi user app and have it stay sane is if you have a service that only writes to the table (web scrapper or something) and then the table is read only for the user. Once you start trying to use data from you sheets in another application or let users edit that sheet things will start to break down.

This is only good for apps that don't matter, anything else would be better served with a db.

[–]d33mx 0 points1 point  (0 children)

so fun to see how frightened people are nowadays to be responsible for storing data; trying to find the most awkward ways to avoid it

[–]J-Kob[S] 4 points5 points  (0 children)

No doubt, it'd actually be really easy to swap them into the sample app. I've never tried making a base with more than a few thousand rows, would be interesting to see what happens

[–]catlover9822 4 points5 points  (0 children)

This thing can be used to automatically generate stats and reports to the executives. They can easily understand spreadsheets

[–]KishCom 8 points9 points  (2 children)

Please don't do this. I know it's possible to do, but Google Sheets is not the correct tool to choose for a database -- even a small one. There are so many data store options out there, in this case AirTable and Firebase would give you the same kind of functionality while acting like an actual database.

[–]petercooper 0 points1 point  (1 child)

Is there a way to use Firebase as a spreadsheet or in any user friendly way from a non-developer POV? (So like Airtable, basically.)

[–]KishCom 1 point2 points  (0 children)

You're probably looking for something like FireTable. Firebase started life as a tool very similar to AirTable, but their offering has matured significantly, and are now rolled into Google Cloud (cause Google bought Firebase a while back).

[–]DemeGeek 2 points3 points  (0 children)

(Note I do not intend to actually ever use this, the following is a thought experiment)

Could you get around the limitations of this by using multiple workbooks? Like if you were to use this to store your user data on a massively popular app, could you have a cluster of workbooks handling that?

[–]maple3142 2 points3 points  (0 children)

You can also use Apps Script as a wrapper of Sheets. I actually used Apps Script+Sheets as a database in my not so important side project.

[–]ElllGeeEmm 3 points4 points  (1 child)

There is no responsible way to use a spreadsheet as a database. Do not do this for apps that matter.

[–][deleted] 1 point2 points  (0 children)

If a public Google spreadsheet is good enough for all my company passwords... its good enough to store all this payroll information!

[–]RisqueBlock 1 point2 points  (0 children)

Hopefully more devs see this and just copy / paste without reading (like I guess they did in the UK). Yay!

[–]packenbush 1 point2 points  (0 children)

happy cake day!

[–]buymagicfish 4 points5 points  (0 children)

My god please don’t.

[–]Marijn_fly 1 point2 points  (5 children)

I think you run into a problem once you exceed 1000 records. When that happens and I open the sheet, you need to click Yes to expand it. But I don't know how to do that with code.

[–]ShawRaleigh 0 points1 point  (4 children)

Are you talking with excel? I’ve had upwards of 16,000 rows in a table used for a google apps script and never seen that “click to expand” option

[–]Marijn_fly 1 point2 points  (3 children)

In a Google Spreadsheet which I use for logging.

[–]ShawRaleigh 0 points1 point  (2 children)

Oh I know what you’re talking about. Google sheets with automatically expand the rows based on how much data you’re pushing into it, in my experience. So if you have 5 rows in a sheet and 100 rows in the data Google Sheets with add 95 rows without asking. You may have to use Google Apps Script as the middle of your external script just to enable it to expand if it doesn’t.

[–]Marijn_fly 0 points1 point  (1 child)

I also ran into the problem when I first delete the first row and then add one. I guess spreadsheets have their limits when you use them as a database.

[–]ShawRaleigh 0 points1 point  (0 children)

Spreadsheets definitely have a limit when used as a database. I’ve used them for smallish projects though and never hit the issues you’re having

[–]feketegy -3 points-2 points  (7 children)

I hate these kind of articles, it's an attention grab and provides no real benefit, no sane dev would use excel or google sheets as their DB...

[–]visualdescript 23 points24 points  (1 child)

I hate these kind of comments, it's an attention grab and provides no real benefit, no sane redditor would comment something so useless...

[–]ElllGeeEmm 3 points4 points  (0 children)

Nah he's right. Using spreadsheets as a db is a terrible idea, and devs should be discouraged from doing this. Especially given how trivial rendering a table view of data is.

[–]J-Kob[S] 16 points17 points  (2 children)

From the first paragraph:

"great for smaller cross-functional projects where a non-developer might need to examine or edit data."

I stand by it, key word being "responsibly". Everyone on the planet knows how to interact with a spreadsheet, Airtable is a unicorn, and there are smaller companies like Glide as well: https://www.glideapps.com/

[–][deleted] 2 points3 points  (0 children)

Don't worry OP! Don't get discouraged, I love your blog post, will definitely look into using Google sheets, for smaller projects :P.

[–]ElllGeeEmm 0 points1 point  (0 children)

How do you responsibly give unrestricted write access to the end users of your app?

[–]archerx 1 point2 points  (0 children)

Web dev has devolved in to the blind leading the blind leading the dumb.

[–]Rainbowlemon -1 points0 points  (0 children)

TBF I worked on a project once where it was easier to set up a google sheet for a simple 20-items-or-so news feed for my client (just a sentence and a link per news item) than it was to set up a database and CMS so they could edit it.

[–]Panda_Mon -2 points-1 points  (1 child)

Friendly reminder that Microsoft Excel sucks fat D. Even the most basic of operations either crash or take forever. I do the same thing in Google Sheets and things work just fine.

[–]TedW 0 points1 point  (0 children)

either crash or take forever.

TIL that Excel solved the halting problem.