Why should people be forced to distance themselves from their public service work in order to be safe from abuse?
Another aspect is that releasing something under copyleft without putting an identity behind it is toothless. Someone can copy it and now if you want to go after them, you need to out yourself anyway.
Core XY didn't exist in consumer printers outside of Vorons that took hours to build. If all a new company did was take an obvious concept and make it accessible, then that just reflects poorly on the previous market leaders.
Vorons are not consumer printers. They are enthusiast DIY projects.
That aside, sure, maybe Bambu were the first to make an affordable core XY machine. But, outside of China, we still don't have an affordable core XY machine by this definition.
So Bambu were the first Chinese company to take advantage of cheap Chinese manufacturing to stop making crappy Prusa i3 clones, crappy other things, or v slot Bowden crap (Ender 3, etc.).
They were the first to "clone"[0] some existing core XY designs and make a polished and affordable product.
Cool.
I am not saying its a bad thing, but do we need to applaud it when China repeatedly undercuts the rest of the world by not playing on the same playing field?
[0]: I say clone only because many of the "clones" Prusa complained about so much were only visually similar to the uninitiated and were otherwise quite distinct (and also much lower quality). The Bambu core XY designs look a lot like other more expensive core XY designs of the time. But really core XY isn't hard, the hard part is all the fine details, which every "clone" maker has to deal with inevitably.
Again, the predecessors also looked like bambu printers, I don't know what to tell you. There are not that many ways to design an enclosed core XY machine.
Nothing in Prusa's OCL stops anyone from cloning and selling their printer.
It only stops the honest people from doing that (and possibly much more, like manufacturing and selling replacement parts or mods).
Creating 3D models from existing products is relatively fast and easy. The hard parts have always been the actual design process, materials selection, and setting up the supply and manufacturing chain.
Prusa took what was practically a non-issue (cloning of their modern printers which have multiple custom parts and are overall not easy to clone cheaply anyway) and used it to restrict the freedoms of end users and small businesses while crying about how they are the victims.
I lost a lot of respect for Prusa when they came out with the OCL.
A damn patent would have been both more effective and less restrictive for reasonable commercial purposes.
What you’ve said is true but also misses the point. Licenses have never been about stopping bad actions because a bit of text can’t prevent someone from buying materials and building things, just like a speed limit sign has never stopped someone from speeding (unless they crash into it).
They ARE however deterrents to bad actions from less-than-scrupulous entities, and enforcement mechanisms against fully-unscrupulous entities.
I suspect (but will admit I am just guessing here) that Prusa would prefer not to get to the enforcement stage because it is both costly and annoying, but having that in your back pocket is, sadly, necessary in a litigious society with some number of unscrupulous actors, and the deterrent effect alone is likely enough to achieve most of their goals.
Even if the unscrupulous entities cared about the license, they would just get their (already paid for) CAD person to reverse engineer every single necessary model over the course of a week. If an amateur like me can reliably do that in his spare time, imagine what a professional could do during an 8 hour shift.
But it doesn't matter either way because no unscrupulous entity is going to be dumb enough to publicly announce that they used the models to produce their clone.
If I manufacture a clone of a Prusa, there is no way for anyone to prove that I used the original 3D models. If it were possible to prove that, it would also be possible to "prove" that I copied 3D CAD models that I've never seen, which could put me in legal trouble. Reverse engineering is not a crime, and reverse engineering (and all the costs associated with manufacturing and prototyping[0]) likely _can_ reproduce a near identical Prusa printer.
As an aside, if you've seen the average Prusa clone, it's often quite far from the original design. Almost nobody 1:1 cloned Prusas back when that was a thing, because the Prusa design didn't cut corners. Those clones would often use designs which were probably derived from the original, and were unpublished. Why didn't Prusa go after them for this? He should have had just as much luck given that those manufacturers were potentially in breach of the GPL.
In summary, the OCL cannot actually stop clones, because if it did, we'd have some serious problems with our legal systems, prohibiting perfectly legal reverse engineering (irrespective of if the cloners did the reverse engineering or not).
It _only_ stops people who are honest enough to state that their designs are derived from Prusa's models. People who weren't a threat to begin with, and who now are voluntarily subscribing to legal issues if they ever felt like selling a Prusa modification without Prusa's approval.
The real deterrents are:
* Design complexity
* Extreme amounts of competition (almost nobody would buy a prusa clone these days unless they _wanted_ to have an almost broken printer to force them to learn how to make it work reliably). We have cheap, good, first party 3D printer designs.
[0]: To clarify, when I say prototyping, this needs to happen irrespective of if you reverse engineer or not. Once you have the models, which will be true to life, you still have to "reverse engineer" the tools/dies/materials/etc, for which Prusa sensibly does _not_ offer the models.
Can you explain how releasing model files under a restrictive license vs not releasing model is a net restriction of the freedoms of end users and small businesses? The impression I'm getting is that if they locked away those files and never released them, you would have nothing to complain about.
This is like complaining about Valve letting game developers generate free Steam keys (=Valve doesn't get fees) that can be sold on other storefronts with the caveat that the developer must sell the keys for at least the same price he set on steam. Being allowed to sell those keys is a sign of goodwill, but the goodwill is conditional upon the source of goodwill not destroying itself. If you buy a game on the Humble Store, Valve won't get a single cent, most of the money goes to the developer, and yet Valve still has all of the ongoing infrastructure costs.
The problem is that while you might be able to trust the crypto, the government won't trust you to do the crypto entirely by yourself. And this introduces avenues for deanonymisation. Moreover, collusion between the government and the entity making the age check can also theoretically deanonimize.
It's a complicated problem.
We continue to seek a technological solution to a parenting problem.
I feel like it becomes bad faith at some point. With a sufficiently advanced attack, you can be personally identified today. ZKP for age verification does not make this worse, does it?
It's a bit like saying "no but Signal is not really encrypted, because the government can extract some metadata by looking at the network around the server".
The plastic will also shrink and grow depending on its temperature (yes this will have a significant impact over the normal temperature range of the inside of a computer).
Interactive UI design tools are cool when you're not a programmer, an inexperienced programmer, or lack the imagination necessary to create new abstractions.
UI preview tools are incredibly useful, hot reloading when doing UI work is, again, incredibly useful.
What nobody needs in their life is to meticulously hand place elements and align them only for the auto-resizing logic to fuck things up.
You want good abstractions which let you easily and quickly define UI elements and to define new composable widgets. So that you can declare in your code details of how things should be aligned with respect to each other, and leave final layout to more code which, if you are lucky, you might not even need to write.
For an example, check out jetpack compose. It's not completely flawless, but it truly isn't bad.
Yeah this is the kind of programmer’s thinking that led to complexity that is present by default and sometimes not warranted.
> meticulously hand place elements and align them
You don’t need as much meticulousness as you imagine. Have you tried placing some text boxes in Keynote or PowerPoint and hand aligning them?
> for the auto-resizing logic to fuck things up.
Auto-resizing is often unnecessary during rapid prototyping. Even in prod, even if you are developing internal apps in an enterprise environment, it’s still not necessary. Make your window non-resizable if you are targeting native, and set a fixed viewport <meta> for web apps.
> define new composable widgets
The kind of people who are enjoying VB6 don’t need new widgets let alone composable widgets. Just use whatever widgets that are builtin.
Basically your entire comment is describing the kind of complexity that I said was not always necessary.
You don't need to be meticulous if you want your software to look like a 5 year old drew it, which maybe you don't care about.
But even so, hand placing 20 labels, editing them to say the right thing, then hand placing the entries, making sure the tab order is correct, you don't want to be doing that by hand. And it gets worse if you need to edit this in the future.
I am not saying this because I think it sounds stupid, I am saying this because I spent 4 years at an organization where this was the only method to do things and I _know_ for a fact that it is stupid and tedious. Given that we had the list of fields, if the language wasn't hot garbage, and the organization wasn't stuck in the past, we could have made it so 99% of fields on 99% of forms could have been placed automatically and cleanly saving literally months of development time in total.
We needed a complex UI for something which could not be done natively using this technology and I proved this to be true when I made a data driven UI in a fraction of the time it was taking to iterate on the legacy version which had 1/10 of the features.
You're better off for having done the measurements.
Broadly, it is just good training since you're normally _not_ going to have CAD drawings. If you do this enough, it becomes second nature, and with a 3D printer it's fast to make test prints which you can use to check your measurements against.
More specifically, it avoids having to wonder if you'd be breaching some law by using those CAD drawings to make a "derivative work". While there's nothing illegal about using precise tools to measure an existing product and create a CAD model. It's (apparently) a silly grey area to take measurements from a CAD representation of a product to make your own CAD model. It can be argued that you're just taking factual information from a reference and using it to produce your own design. But whenever you find yourself saying to yourself that something "can be argued" then you really need to take pause to consider if you want to find that out for yourself or avoid the problem entirely.
This is the same absurd nonsense that Prusa's "Open" Community License imposes. If I buy a Prusa 3D printer and I just carefully measure it (I don't find this that hard, and I am at best an amateur, consider what an experienced CAD designer could achieve with the right tools), I can create a 3D model of the printer and, as long as I've omitted any separable purely aesthetic elements, I own all rights to that 3D model.
Moreover, as long as there are no patents on the product, I can manufacture and sell it.
The hard part of cloning a product like a 3D printer or silent fan is not in getting the exact CAD model, it's in the choice and sourcing of materials, making the right tooling, finding places to make all the parts, etc.
There are also some secrets on how certain things are manufactured. But those either don't appear in the CAD model or can be easily omitted.
If manufacturers want to hand out CAD models of their products, they should do so under some highly permissive license, with only enough detail to actually aid in producing mods. The alternative where the license is restrictive, is that you're just giving out poisoned apples that solely restrict the freedoms of anyone who decides to take them.
Many cases, including as a last resort as part of shutdown, to try to trigger remaining services into a graceful exit (although these days cgroups help avoid ever being in such a situation).
Another aspect is that releasing something under copyleft without putting an identity behind it is toothless. Someone can copy it and now if you want to go after them, you need to out yourself anyway.
reply