selfup
I was replying to a comment asking why PII data shouldn't be stored in git vs a database. Just tried to give a general rundown of how to think about the tools.
Totally agreed that the data should have been synthetic/scrubbed and that a small sample set (large enough to validate) would be ok.
Sometimes a PDF or a few pictures are necessary (or just much simpler). I get that. I have seen some repos with an unreasonable amount of PDFs/Docs/pictures/etc.. and that's when a script that copies them into a gitignored directory from someplace (Dropbox/S3/etc..) is a better fit.
If a diff is not useful, don't store it in git. Doing a code review on PII is not useful.
You also shouldn't add packages in a git repo if they can be downloaded immutably in CI/locally. It adds a lot of space. Every commit is a snapshot + new code. Commits are not diffs.
I have found that async or even in Go with goroutines, a large amount of small threads are not faster even if they should be in theory when it comes to CPU intensive work.
I use it to generate a 3D universe (at the atomic level) but store the data as enums.
Here is the repo: https://github.com/selfup/oxidizy
Big help from rayon:
1) https://github.com/selfup/oxidizy/blob/master/crates/unigen/...
2) https://github.com/selfup/oxidizy/blob/master/crates/unigen/...
3) https://github.com/selfup/oxidizy/blob/master/crates/unigen/...
Example perf generating an obscene amount of data on a 32GB machine with 16 threads (3800x):
Atoms: 110592000 Baryons: 26099712000 Quarks: 78299136000
real 0m12.779s user 0m0.000s sys 0m0.000s
Essentially something that both quantum and classical computers cannot crack/brute force.
I would look into lattice-based crypto. It is one of the strongest candidates under review by NIST for post-quantum public/private key mechanisms.
Also Apple buying into using 1Password company wide helps gain some trust (I am sure there was some serious auditing): https://medium.com/enrique-dans/apple-and-1passwords-deal-sh...
Chrome decluttering by removing some features
Ubuntu 18.04 LTS / Fedora / Manjaro are all good on this platform.
Have fun picking!
Installed erpalma/throttled from github to squeeze my CPU perf to max. Also make sure to set sleep to S3 in BIOS. Otherwise nothing else to do. Everything seems to work just fine.
The 7th Gen just came out so there might still be some issues but I would look around and see if it's good to go.
I use Ubuntu 18.04 LTS. Once 19 is done I will more than likely move on to 20.04 LTS
I mainly use Windows for games but every now and then I don't want to leave my desktop to make some changes to a repo while my character is respawning/spectating or something haha
WSL2 is going to be awesome for sure
From a performance to value perspective you cannot beat Linux. Docker/Microk8s the overhead is so low. Dev speed is leagues ahead the unfortunate circumstance of having to run Docker/Minikube in a VM on Windows and macOS. Also filesystem IO is unreal compared to Windows at least.
Getting a refurb Thinkpad on ebay and having better compute hardware than a mac pro for half the price is also a nice cherry on top so to speak. That and the insane sales Lenovo has all the time for brand new machines is kind of hard to beat as well.
Next up is Windows from a hardware perspective. Same refurb thinkpad can dual boot without issue.
Then lastly macOS. I have had a mac since 2011. I am having a hard time with the direction Apple is going with their laptops.
I have all 3 and they all have their merits, but I find myself using Windows/Linux at home exclusively and macOS at work and I don't mind the context switch.
To each their own!
With the uncertain future of mac with their potential switch to ARM and not shipping python and ruby by default, I see some drawbacks to the dev ecosystem. I know brew will package a ruby version to handle this but I do worry about the ARM switch.
Linux used to be quite difficult, but I stuck with Ubuntu and the UX/UI has improved so much :)