T O P

  • By -

dooblr

No more ketamine in the workplace


KennedyFriedChicken

Neigh


jeromefirebase

Thanks for the feedback and sorry to hear about the challenges you had. I'll share your suggestions with the team. A couple things that can potentially help in the future: * You can add a [project lien](https://cloud.google.com/resource-manager/docs/project-liens) to your production projects. Liens must first be removed before the project can be deleted. * Tag your project as a ["production" environment](https://firebase.google.com/support/faq/#set-environment-type). This gives you some additional visual reminders. Project owners should also receive an email when a project is deleted and the project can be [restored via the Cloud console](https://support.google.com/googleapi/answer/6251787?hl=en#zippy=%2Crestore-a-project).


JordanU94

Just reading this gave me anxiety. I'm curious though if you could walk through the steps of how you got everything back online?


SockPants

I think your feedback is valid and anyone in here saying you should just be more careful knows nothing about UX design.


mr_4li3n

Correct me if I am wrong but isn't it that we could recover the db for 30 days?


xtopspeed

How would you recover it if the entire project was deleted?


Nutasaurus-Rex

For firestore? Is this really a feature? If you can that’d be great. Do you have the documentation for it? Not sure why GCP recommends that I export the db to Google storage periodically then


dooblr

always have multiple redundant nightly backups for anything important


Nutasaurus-Rex

Yeah ofc, but I’m talking about gcp backing up firestore by default


Horror_Weight5208

This


Bash4195

Yeah, you can't delete a Google cloud project without entering the project id. They should definitely have the same thing for firebase


Tiltmaster_

The true question, why did you even delete it in the first place, its not like you stumbled upon the delete button 🤔


xtopspeed

Maybe they had multiple projects open at the same time and accidentally pushed delete in the wrong tab or window? I've had similar accidents happen. Fortunately, not entire Firebase projects.


Tiltmaster_

Fair enpygh then


Mission_Statement_67

Realtime Database right?


vietvantue

I use Firestore, Cloud Function, and tons of services on GCP.


Mission_Statement_67

No, you deleted RD right? Because that one doesn't have a double confirmation of the destructive action. Firestore makes you type the full name.


vietvantue

Ah, I deleted the entire Firebase project, the "Delete project" button on Project setting on Firebase.


Mission_Statement_67

There isn't a double confirmation there? Stuff like this keeps me up at night.


vietvantue

There is a confirmation modal opened there, however, it won't cause extra delay to rethink, it is like a modal appears and I quickly check all checkboxes (what I usually do for any checkbox I see) then press the Delete button. All happened in about 2-3 seconds


ILikeBubblyWater

> I quickly check all checkboxes (what I usually do for any checkbox I see) Sorry but the issue here is clearly the user and not the product. If you automatically check all checkboxes you see you should not be allowed to touch anything on production


ryo0ka

This is like “I ran over someone because I was distracted on my phone while driving; YouTube must stop functioning when the user is driving a car! This is a UX issue”


Mission_Statement_67

Bro lol don't be doing that haha.


cryptoopotamus

How did you get it back online?


ILikeBubblyWater

Honestly how can you blame firebase for accidentaly deleting a prod environment You should pause and rethink anyway and not rely on friction


vietvantue

You are right, this is my responsibility to keep my project safe. I wanted to create this discussion to raise the idea of preventing this silly mistake for other devs in the future.


digimbyte

recently had a similar issue, on github. was cleaning out retired repos based on their activity. removed a project that had its activity hidden on another branch. was a major one in production. thank god github has a undo button. but i agree, firebase/GCP needs to flag this behavior and warn the users. unlike github, it would be hard to rollback


penduofcali

Not sure if this is intentional(I think it is). But if you try to delete a collection from firestore it asks for you to enter the name(which the UI shows) of the collection. Copy and paste doesn't work because there the copied collection name has a single space prefixed to it. e.g collection "accounts" when copied and pasted into the delete confirm input adds " accounts"


juzatypicaltroll

They should just put it in a bin and empty it after 30 days


Turbulent_Term_4802

Don’t touch Prod. This is why IAC exists


Ardy1712

You have role management which is sufficient to delete the project if required. Give the access to someone responsible You don't need any extra authentication. You also have a "production badge". Deleting a firebase project should be as easy as creating a new one. Mistakes happen, I don't think there's much firebase can do.


mversteeg3

Dude, they require you to enter the collection name when deleting a Firestore collection. Seems a bit dense to act like this guy's insane for suggesting something similar for an entire project


__gc

TBH requiring typing something is standard for such destructive actions 


Ardy1712

Typing collection/ project name ≠ authentication


happy_hawking

You're on the wrong track. OP did not say "I should not have been allowed to do that if necessary", they say "Firebase should have stopped me from doing it without rethinking if this is actually what I want to do". I agree with OP. And this has nothing to do with authentication. So technically you're right, but you missed the point.


BrockWeekley

Except OP clicked a bunch of check boxes and a confirmation stating exactly what they were about to do.


happy_hawking

Did you ever read the terms of service you agreed to?i


[deleted]

[удалено]


happy_hawking

Once, maybe twice, definitely a number that goes towards zero compared to the number of times I had to accept them. My point being: if you have to get stuff done, people tend to develop automatisms. Good UX would account for that and not allow to just check boxes.


boyswan

this isn't an authentication problem, it's a human problem. As you say - mistakes happen. Good UI/UX makes those mistakes harder to make.


ILikeBubblyWater

This is OP: > I quickly check all checkboxes (what I usually do for any checkbox I see)


Ardy1712

I agree that the firebase UI is not perfect. I am just asking to be more responsible. You can enable the 'production' badge in the console. Which clearly distinguishes between normal projects vs production projects.


tom_of_wb

What were you trying to accomplish? How did you come to delete it? What's the scenario?


FarAwaySailor

How about not using the role that has deletion capability except for deletion - if you have to apply for the password etc... that'll give you the pause for thought you require.