Tell HN: Let's learn from Unity's f-up Plastic SCM migration and data hostage
I'm posting this because it is a great example of what can go wrong in a product migration.

I've never been a big fan of Unity, because we hit bugs in their engine and they refused to even name me the price for paid support, so our entire project got derailed by their unwillingness to fix the bug. But my company did have some projects hosted with Unity Collaborate. Apparently, Unity recently purchased Plastic SCM and now they decided to make it the default. Here's what they did:

1. They sent us a Japanese email from @codicesoftware.com to inform us that our Unity Collaborate data will be migrated to Unity SCM in 2 business days. Needless to say, this went straight to spam at the time.

Lesson learned #1: If you send localized emails, cross-check your data. This is a German company with a German billing address, so it would have been easy to automatically verify if Japanese emails are a go or no-go.

Lesson learned #2: For important announcements, use the email address that you always use. I'm guessing codicesoftware.com was the developer of Plastic before Unity bought it, but we have no relationship with them. @unity3d.com would have been whitelisted in the spam filter.

2. While the old system allowed export as a zipped Git repo, the new system does not. So due to their migration, we lost our export ability, meaning all revision data stored with them is now incompatible with our other tools and, hence, effectively worthless. The email didn't offer any opt out or delay ability and they only informed us 2 days in advance in the first place.

Lesson learned #3: Make "upgrades" that deprecate export features opt-in. Yes, that is more work. And yes, I'm sure Unity is confident that Plastic SCM is better than Unity Collaborate. But in our case, the upgrade caused data loss.

3. They now tried to charge our company credit card, which thankfully didn't go through. This is how I became aware of this mess. Apparently, while our Unity Collaborate storage was included in our Unity Teams accounts, Unity Plastic SCM storage is not included. So they now want us to pay more for them not to delete what's left of our data after their broken migration. This just strikes me as somewhat offensive and greedy. Also, I wonder if it's legal for codicesoftware.com to use the credit card that I had on file with unity3d.com. Plus they signed us up for their new Plastic Cloud Edition subscription without anyone knowing. And visiting http://codicesoftware.com/ didn't exactly reduce the confusion.

Lesson learned #4: Do not subscribe customers to paid plans without opt-in. Should be obvious, but they did screw it up, so I'm listing it.

Lesson learned #5: Don't share payment methods between seemingly unrelated business units. To an outsider, it is not obvious that Codice Software is now a part of Unity Technologies ApS. That's probably why my bank denied their transaction.

Lesson learned #6: Make sure the domain in your payment emails and on your invoices displays something useful.

Lesson learned #7: Don't keep people hostage with their data. The fact that there's no way for us to recover the data we had stored with Unity Collaborate and that we're now expected to pay a monthly fee just to have a chance at recovering parts of our old data is what made all of this so infuriating in the first place.