I'm not sure what you're asking for specifically. The Swiss data protection act is here [0] and is reasonably comprehensive, especially compared to the US, in which data protection is essentially nonexistent.
As for it being tested, I can assure you that it's taken very seriously. One ruling that demonstrates that is [1], in which Switzerland's highest court ruled that an individual's right to privacy has higher precedence than a copyright-owner's right to police copyright infringement.
There's also a constitutional right to privacy [2], though the Swiss constitution is a little different to the American one.
One notable and enormous hole in Switzerland's record however is the BÜPF [3], which, as I understand it, requires ISPs to log DNS requests, among other things. That shouldn't be relevant here though, so long as Quad9 doesn't become a telecommunications provider.
Deepl [0] is available in English but doesn't seem well-known outside of the non-Anglophone Western European countries. It's essentially Google Translate but generally has better quality translations for the languages it supports.
Deepl was an incredible tool when I was struggling though my first full length novel in Spanish. It gave much more lucid and nuanced translations than any other automated translation tool I tried.
I find deepl better than Google translate for some languages now. Just the fact that you can change some specific words in the translated text is a game changer for me
I'd go even further and recommend GrapheneOS [0] on a Pixel.
It has some extra security improvements on top of AOSP and most importantly, the builds are signed and the device can be locked after you install the ROM.
Doesn't the same argument apply to basically every security and privacy feature?
"No no no. The problem isn't unencrypted network connections, it's companies and people who use them in evil ways. I would rather handle that even if it's much harder."
Should we not have introduced HTTPS? Permission models on modern operating systems? 2-factor authentication?
What about Javascript makes it different to the problems solved by these other features?
To give you a less clear example, think about writing a library that sends telemetry to some cloud service. The telemetry could be readings from a sensor attached to a microcontroller with 512K of RAM or it could be readings from a server sitting in a datacenter with 256GB of RAM.
You need some helper library to handle the protocol and there's a really nice full-featured library that comes with a bunch of handy debugging tools but it's too memory-hungry for that tiny microcontroller.
Another option is a minimalist library that uses very little memory but also has less flexibility in say TLS.
If you pick just one, one of your platforms ends up suffering needlessly.
Adding the options allows the user to decide what's best for them.
Sure, you can have different make targets if you really need to. Or Makefile.linux and Makefile.embedded everybody understands what to do in that case.
I simply don't understand the explosion of complexity associated to autotools, cmake, and the like.
Because the cartesian product of options quickly explodes and you're suddenly managing 256 targets or makefiles (though even in Make there's a better way to handle this, though it's made painful by the syntax). It's very common for larger pieces of software to have 30-50 different configuration options for building.
> I simply don't understand the explosion of complexity associated to autotools, cmake, and the like.
If you refer to tools like cmake as "explosion of complexity" then I have to say that you are using them entirely wrong, and you should review your practice thoroughly.
I mean, cmake is a makefile generator. You specify a high-level description of your project, and then you run cmake for it to generate your Makefile that performs the whole build.
With cmake you don't even care which compiler you use. You can simply state you require, say, c++ 14 with constexpr support and you're done for all platforms and all compiler picks.
If you believe cmake is more complex than a makefile then either you only work on single-foot projects or you have been cursed with hideously managed cmake projects.
Autoconf for example can abstract across different compilers from different vendors, with all their various incompatible command–line arguments. And it does that for a dozen or so different languages, not just C.
It can abstract across different function signatures in the libraries you're using. For example if you're calling a libc function where the arguments have changed, you can detect which version of the function you have and make your code work with either one.
It can do the same for structs and types as well.
It can test for system services, such as X Windows or the ability to run Perl scripts.
It can abstract over the differences between different implementations of common utility commands such as awk, grep, install, mkdir, and so on.
Then it wasn't written for you. It was written for people who want to distribute software to users who do not all run the same Unix operating system (not to mention the radically incompatible hardware of the day), and whose Unix vendors are all mutually hostile to any form of cooperation with each other. If all you ever install your software on is Ubuntu running in a VM at your cloud provider, then of course this will all be irrelevant to you.
I watch a lot of both American-made movies and TV shows as well as a lot of Japanese anime.
One thing I find curious is how different the models for time travel usually are.
In American media, it seems more often than not, time travel is modelled as if the past and the future are simultaneously existing parallel worlds, where the future is affected by the past in "real-time", e.g. Back to the Future's Marty gradually fading as the chances of his birth diminish, or Timeless's people in the future "watching" people arrive in the past and making sure their own team leaves "in time" to catch them.
These models don't really offer a solution to the grandfather paradox.
In anime however, time travel is near universally modelled with timelines, where time travel essentially creates a new parallel world each time. If you travel back in time and kill your grandfather, you simply create a timeline in which you were not born, but can continue to exist, because you are from a timeline where you were born.
I'm by no means suggesting that either model is unique to America/Japan (Rick and Morty for example uses the branching timeline model), I just find it interesting how they differ.
I think it depends on the show in anime. SPOILERS FOLLOW. Erased is not a parallel world, but someone trying to change their past. Madoka finds Homura repeatedly doing whatever is possible to save Madoka. Steins:Gate is timelines and parallel worlds (think of how many times Okabe again and again tries to save Mayuri). Girl who Leapt Through Time is the Groundhog Day story, same day over and again; bit like Tatami Galaxy. No idea where something like Haruhi Suzumiya might fall where time is played with in many different ways.
Meanwhile Evangelion (the later films) and Attack on Titan both seem to be veering towards some kind of inability to stop the same grand narrative cycle repeating again and again...
It also depends on the show in American media. Star Trek, for example, has nearly every version of time travel at some point or another - except the "simultaneous worlds" version described in GP with Back to the Future and Timeless.
I've been running a small CNC for a while now and though I've had skipped steps, they've never been the cause of a failure. When they've failed, it's been because:
- I stalled the spindle and I'm trying to plow the no-longer-rotating endmill straight through my stock (and if steps weren't skipped, the tool would break)
- I forgot to turn on the spindle and I'm trying to plow the endmill straight through my stock (and if steps weren't skipped, the tool would break)
- I've somehow forced the machine to try to push through its limits and crashed an axis into the chassis (and if steps weren't skipped, the machine would be seriously damaged)
Basically, the only time the steppers have failed is when not doing so would lead to much greater damage, so I'd go so far as to say that skipping steps are a feature, not a bug.
If your steppers are failing in the middle of a job where nothing has gone wrong, either your steppers or your drivers are messed up but it's not because steppers are inherently bad.
I'd recommend servos for applications that are demanding on torque, power, speed and/or accuracy. I wouldn't recommend them for your first DIY machine because of the additional risk, expense and complexity they add.
This is a really good starting place but as someone in the middle of retrofitting a commercial CNC, it's missing _a lot_ as well. My highlights while reading:
- For an Aluminium frame, you could also use solid Aluminium bar or plate. Depending on your location, it might be cheaper/easier to acquire. One benefit is that plate especially can be purchased pre-milled, so you can get it very flat, which is good for things like mounting linear rails, which require high-tolerances from their mounting surfaces.
- Missing from the "Linear guides" section is the varying tolerances and rigidity specifications of the various options. Linear rails can have some crazy high ratings for stiffness (e.g. page 27 of [0]) and high degrees of parallelism and overall precision. Shafts are often unspecified. However a tradeoff here is that linear rails also require high tolerances from the surfaces they're mounting, otherwise they're out of spec and can wear out quicker. It also misses that rails can be quite expensive. I'd also add that though the rails are low-profile, if you want more clearance you can always elevate them.
- Missing from the "Linear actuation" section is how much stuff and expense goes into a proper ballscrew setup. In addition to the ballscrew and nut (which usually have to be purchased pre-assembled together), you also need a fixed support to hold the motor-end of the screw (this keeps the axial load off the motor), a floating support at the opposite end of the screw, some kind of mount to hold the stepper motor concentric with the screw and a coupler to connect the screw to the motor shaft. Ballscrews can also be expensive.
- I'd actually add a whole section for the stepper drivers. 3D printing in particular has led to some interesting options that can be applicable to smaller DIY CNCs. Trinamic stepper drivers for example are able to drive stepper motors silently, even with high current.
- I'd add accuracy to the pros of servos. They're typically limited by the resolution of the attached encoder, which can be obscenely high.
- The controller section is focused on Arduino-based or derived controllers which aren't much seen in much of the DIY CNC community. The most popular options by far are [1] Mach 3 and LinuxCNC/PathPilot. Personally, I really like EdingCNC [2] but it seems to see limited success outside the German-speaking parts of Europe.
It's not more complicated than that. There is a confusion between incremental torque, which does get reduced (as correctly noted in the above) but only because the increments get reduced, and stall torque or holding torque, which in almost all cases do not. The latter are the ones that people generally care about, but because they read about a reduced incremental torque, they get the misconception microstepping creates some torque compromise.
But a full-stepping motor also has bad incremental torque for small displacements; by disabling microstepping you're just forfeiting the option to command them.
If anything, microstepping lets you run even closer to the motor's torque envelope, because you're less likely to induce a dynamic stall by either exciting a resonance or letting the stator's magnetic field get too far away from the rotor angle.
Why would they pay the owner for "seizure of property"?
The owner of the bird is responsible for the bird. Therefore, the owner is responsible for the bird illegally entering Australia in violation of local customs laws, just as a dog owner would be responsible should their dog bite somebody.
I'm all for returning the bird to the owner but from Australia's perspective, the owner committed a crime. It's ridiculous to suggest that the owner should be compensated for the consequences.
The bird should be returned upon payment of a fine and reimbursement for the costs of finding, capturing and transporting the bird back to the US.
As for it being tested, I can assure you that it's taken very seriously. One ruling that demonstrates that is [1], in which Switzerland's highest court ruled that an individual's right to privacy has higher precedence than a copyright-owner's right to police copyright infringement.
There's also a constitutional right to privacy [2], though the Swiss constitution is a little different to the American one.
One notable and enormous hole in Switzerland's record however is the BÜPF [3], which, as I understand it, requires ISPs to log DNS requests, among other things. That shouldn't be relevant here though, so long as Quad9 doesn't become a telecommunications provider.
[0]: https://www.fedlex.admin.ch/eli/cc/1993/1945_1945_1945/en
[1]: https://www.swissinfo.ch/eng/privacy-triumphs-in-internet-pi...
[2]: https://www.fedlex.admin.ch/eli/cc/1999/404/en#art_13
[3]: https://www.fedlex.admin.ch/eli/cc/2018/31/en