opmac
Joined 11 years ago
Joined 11 years ago
Probably because it has the backing of Google.
Thickness is always going to be an issue with automatic watches. You can get thinner watches if they are manual wind since they don't have a rotor. Usually, the thinner they get, the more expensive they get though, so keep that in mind. You can get super thin manual wind watches but they will cost hundreds to thousands of dollars usually.
That being said, I think there is something fascinating about eco-drive movements, or just plain quartz movements in general. In the eco-drive case, you're harnessing the raw energy of the sun! Right there on your wrist! And they're using piezoelectricity to accurately keep time!
It's so simple nowadays that we all take it for granted, but centuries of scientific improvements have gone into making that relatively inexpensive and accurate wristwatch accessible to everybody.
For anybody interested, there's also an awesome video from Hamilton made in the late 40s that shows a lot of the information in this article!
That being said, in PostgreSQL, you are correct --- having a UUID (or something similar) as a PK is usually fine assuming you understand the implications. However I would absolutely avoid it in a DB like MySQL where PKs are clustered.
If you look up the resource by some other field, that means that you now need to support two indexes - one for the primary key, and one for the "public" primary key. This obviously requires more storage and comes with the performance overhead of keeping the second index updated on modifications to the table. Additionally, for something like DynamoDB where you pay per index, it could be cost prohibitive.
A better pattern is to simply encrypt/decrypt the primary key before exposing it publicly, such as in a URL. This requires no additional database overhead.
> Do you have a question or comment that involves "security" and "hashids" in the same sentence? Don't use Hashids.
[ my public key: https://keybase.io/ccampo; my proof: https://keybase.io/ccampo/sigs/r0TB2nnc4n-KDP9sjiTv0cfAsC9sbaMyE_yhMxL8Fvs ]