Please create an account to participate in the Slashdot moderation system


Forgot your password?
Communications Open Source Your Rights Online Hardware

Bruce Perens On Problems With the Open Hardware Model ( 201

Bruce Perens writes: At the TAPR conference this year, I did a talk on why Open Hardware licenses don't actually work, and how it would actually hurt us if they did. I'm not saying you should stop making Open Hardware, I just want to make sure you don't assume the license works better than it actually does. Also, I explain why my latest project is 100% Open Source but the hardware design is more restrictively licensed than the Open Hardware Definition would allow. The video is here. There's a long prelude of talk about Amateur Radio stuff before the Open Hardware part. But you'll probably find it interesting. Gary didn't succeed with the Kickstarter to fund recording the entire conference this year, but he made the trip and recorded it with a multi-camera shoot anyway, at significant personal expense. If you like the video, please help cover his expenses. Even $1 would help.
This discussion has been archived. No new comments can be posted.

Bruce Perens On Problems With the Open Hardware Model

Comments Filter:
  • Summarize it (Score:5, Insightful)

    by Anonymous Coward on Thursday December 10, 2015 @10:41AM (#51094571)

    No one wants to sit through a video. Just summarize the issues. I'd love to hear the convuluted logic on why Open Source works, but Open Hardware doesn't. After all, information wants to be free.

    • by Anonymous Coward on Thursday December 10, 2015 @10:55AM (#51094647)

      A text summary you could read in 30 seconds would not work, and it would actually hurt us if it did.

      • Re:Summarize it (Score:5, Insightful)

        by RabidReindeer ( 2625839 ) on Thursday December 10, 2015 @11:43AM (#51094917)

        A text summary you could read in 30 seconds would not work, and it would actually hurt us if it did.

        So does the video only run 30 seconds? And is it faster to rewind and repeat to digest the hard parts that it would be to re-read a document? And what about annoying co-workers by playing something with audio on it while they're trying to work? We don't all have headsets at work.

        Also, while I'm not a big fan in general of "simple" explanations, there's a limit on how complicated an explanation should be when applied as a blanket statement.

      • by delt0r ( 999393 )
        Nicely done. Why waste it to an AC?
    • Re:Summarize it (Score:5, Informative)

      by mr_mischief ( 456295 ) on Thursday December 10, 2015 @10:58AM (#51094653) Journal

      Your open source software needs to be compiled to run on the hardware. If you and I have the same hardware, we can share a compiler. If you tweak Chip A to have features 1 and 2 while I tweak Chip A to have features 3 and 4, one of a few things happens. We could just not use those features on software we both use. We could fork the compiler. We could try to work out dynamically adjusting the compilation for our feature sets. That's all fine, even as rough as that last one starts to be. But then we have to consider the 18 other variations among our group of 20 installations using Chip A variants.

      All this goes more or less smoothly until some well-meaning party comes along with Chip A.1 that does 95% of what Chip A does, but a different way, and then re-expands the additional features their own direction. Then the cycle starts over. Meanwhile, we're struggling to maintain compatibility across Chip A, and since A.1 isn't too much incompatible we decide one compiler should work for both. Then along comes A.2 two weeks later...

      So, yeah, information does want to be free. Platforms also want a target that while not entirely stationary can at least have some chance to adapt to the levels beneath them. Some licenses allow you to completely change a work and keep calling it the same thing. With open hardware changing the underlying implementation is fine. If you change the instruction set or change side effects of one instruction being issued after another for any pair of instructions then you've forked the entire environment that sits on top.

      TL;DR: It's not that some sort of open license won't work for hardware. It's that it has to be a carefully worded license that fully considers how hardware is different from software.

      • Apple/Palm type monocultures at one end of the spectrum, Android/AMD-Intel systems in the middle, and a wild unworkable unfragmented west at the other end. What he's saying is that too many hardwares spoil the software - and it's true. Just as true as if the Linux kernel were wildly fragmented, or people got all "innovative" with core software components. I suspect that the strict Open Hardware license in some ways fosters innovation and fragmentation, and that's what he's trying to control.

      • Re:Summarize it (Score:4, Insightful)

        by PostPhil ( 739179 ) on Thursday December 10, 2015 @12:22PM (#51095129)

        Kind of like how the ARM platform is a total flop that no one uses, right? Open Hardware is basically doing what already happens with customization of ARM today, except people wouldn't have to pay ARM Holdings for the privilege. Also, AMD and Intel use compatible instruction sets despite very different underlying architecture. (Even Transmeta chips from back-in-the-day could still run the same software.)

        Openness and experimentation DOES NOT necessitate incompatibility. Closed designs don't necessitate it DOES have compatibility (e.g. vendor lock-in). If a new design does become incompatible when people expect it not to, then that design naturally won't get widely adopted.

        The entire issue is overblown. Let openness allow technology to evolve and improve. Standards and compatibility will arise when the market demands it, and variation/deviation/special-purpose will also arise when the market demands it. That's the way it's SUPPOSED to be.

        • Yes and no. We couldn't use the latest Bluetooth implementation with LE support because nobody had ported the drivers for it to our TI ARM chip. ARM is fragmented, but embedded device manufacturers compensate for it by pumping millions of dollars into customizing firmware for their specific hardware, and hide the differences in the lowest level of firmware (kind of like BIOS used to do for DOS). So you are correct in that the problems can be hidden from most software by adopting a hardware abstraction layer
        • by Bruce Perens ( 3872 ) <> on Thursday December 10, 2015 @01:42PM (#51095639) Homepage Journal
          The poster you're replying to, "mr_mischef", did not summarize my talk. He just wrote jibberish. The name of the poster might have been a clue :-) The slides are here [].
          • Ah, but no simple summary here in a post of equivalent size. Sorry, no interest in paging through some stupid slides. Only morons think powerpoint is the best way to convey that sort of information.

            I mean, really, would we be better off if RFCs were powerpoint? Much less video? Eliminate white papers! Get rid of research papers -- it would be better to just have a video or slide deck.

            If you want to believe you are relevant, you'll have to do better than pimping your slide deck and a friend who recorded vide

          • by jbengt ( 874751 )
            Thank you for that link. Typically, I will avoid informational videos - I just have an easier time understanding when reading at my own pace, and videos usually take more time, anyway. (short video illustrations within what I'm reading can be helpful, of course).
            It seems that your main objection is that open hardware is basically public domain, and the originators have no power to efnorce any provisions. So I'm guessing that fans of permissive licenses, like BSD, would not have the same objections.
            • The BSD license can still provide sufficient incentives for people to develop software, even if they aren't monetary. But when you have a bug in BSD software, you just recompile. I have perfectly valid schematics that as laid out are too noisy to make a good receiver. Rather than just recompile, I spend about $2000 for fast-turn fabrication of a 6-layer PCB with 500 surface-mount components. This is a strong negative monetary incentive unlike one that would apply to fixing bugs in BSD software.

              So, we have t

        • by LWATCDR ( 28044 )

          " Open Hardware is basically doing what already happens with customization of ARM today, except people wouldn't have to pay ARM Holdings for the privilege."
          So would pay for ARM to develop new CPUs

        • Kind of like how the ARM platform is a total flop that no one uses, right? Open Hardware is basically doing what already happens with customization of ARM today, except people wouldn't have to pay ARM Holdings for the privilege.

          No. Having to pay ARM for the privilege is an important part of what makes the ARM world work. Not the "writing the check" part, but the "getting ARM Holding's approval" part. Nearly all ARM "customization" is just deciding which of the ARM IP packages to license, which means that a specific instantiation either has a feature set or it doesn't, but if it does the features work in a known way. Additional customization can be done, but it's rare and ARM manages it pretty carefully.

      • Not sure what you're getting at, but it's not a summary of my talk.
    • short synopsis of one of the most important issues from the talk: Copyright and patent laws don't apply to hardware schematics the way they do to software under US law. You can copyright the schematic and keep people from reproducing it without following the license. You can't keep them from building the hardware the schematic describes.

      • You can't keep them from building the hardware the schematic describes.

        So? If you don't want people to build it, then why would you open source it? I read Bruce's slides and they make no sense to me. Basically he seems to be saying that Open Hardware is a problem because it is Open.

        Disclaimer: I have contributed several designs to OpenCores [].

        • Open doesn't mean public domain.

          If I am going to put in 4 years and $50K expenses, it has to be share-and-share-alike, as in the GPL, rather than a gift with no restrictions to every big company and Chinese manufacturer.

          The problem is that GPL-like terms don't work directly because copyright can't be asserted on schematics.

          • The problem is that GPL-like terms don't work directly

            The GPL is not the only open source license. I agree that Open Hardware is not a way to get rich by restricting who can use your IP. But restricting how people can use it sort of goes against the whole point of being open. When I contribute a design to OpenCores, I consider it a gift to the world, and I am not looking for compensation. If a "big company" or a "Chinese manufacturer" want to use it, that is fine with me.

            That being said, I have actually got some job offers and a good contracting gig becaus

            • If you can code it in VHDL, it's really software. There's a big analog world out there that you still need to master to make receivers, and also good transmitters even if Raspberry Pi folks have coded the modern equivalent of spark transmission. Even if you get the signal into the digital domain as quickly as possible, the digital part can still swamp the analog one with noise if you're not careful. And it's really expensive to deal with. What would be a recompile for VHDL becomes a $2000 board turn. So, th

    • Yes.

      I don't want to see you. I don't want to listen to your ramblings, no matter how good a speaker you are (most people are horrible speakers). And I don't want to see or hear about your cat. Provide a written transcript of the relevant things you have to say.

      • by KGIII ( 973947 )

        I've seen a number of videos of him. The first was one about the Linux operating system. I've seen others and I'm not entirely sure but I might have seen him speak live at one point. At any rate, he's a little quirky but not a bad orator. He's easy to understand and articulate. If he's the one that I'm recalling seeing live then he's passionate but not really a zealot. So, it might be worth watching the video? I've not done so but I probably will.

        I'd watch now but, I confess, I'm watching cricket. I've only

        • Cricket? It has some amazing parallels - and amazing differences - w/ baseball. I am like you, but from the other end. I'd like to figure out baseball, and then get up to speed w/ the NLB
    • Re:Summarize it (Score:4, Insightful)

      by Grishnakh ( 216268 ) on Thursday December 10, 2015 @12:15PM (#51095089)

      Exactly. I'm at work, so I can spare a minute here and there to pop in and read something and make some comment, but I sure as hell can't sit through a video here. WTF are these morons thinking? Honestly, this YouTube generation is really annoying; have people forgotten how to type or something? I can read a whole wall of text in a fraction of the time it takes to sit through some stupid video. Maybe we need to be teaching kids speedreading in early grades.

    • This is why I hate YouTube. I'm searching for how to do something rather trivial, but I'm stuck on one little thing. Why can't I read in 20 seconds how to do what I'm looking for, rather than listen to some mumbling person go about asking me to subscribe to their channel, and do all the crap I've already done in order to get to the bit that I care about?

      Hey YouTube Tutorial guys: I don't need a 5 minute video showing your crappy desktop wallpaper festooned with 200 icons while you laboriously type in a co

      • YouTube videos are free, and you get what you pay for. Yes, some sort of critiquing system to separate the useful from useless videos would be helpful, but that's true of pretty much all web content. And, YouTube does support commenting on videos to give feedback to the creators... but the signal to noise ratio for that is probably even worse than for slashdot comments.
  • by sjbe ( 173966 ) on Thursday December 10, 2015 @10:57AM (#51094649)

    Open hardware is hard mostly for economic and some legal reasons.

    1) Open source works because of copyright. There is no such thing as copyright on hardware. There are patents but they are expensive and (comparatively) difficult to get. Copyright is automatic and free the moment you write something. Not so for hardware so certain types of open source licensing are off the table immediately with hardware unless someone wealthy is willing to spring for a patent and be willing to defend it.

    2) Even if you intend to give away the designs, there are comparatively few people who can do anything with them. The cost of equipment needed to make/modify software is a rounding error compared with most hardware.

    3) Marginal cost of production for hardware is always significant and far higher than for software. For software it is a good approximation of zero cost to make another copy. Even the simplest hardware costs substantial sums of money to produce in any quantity. This makes it far more difficult for individuals to make and modify works economically. It's somewhat like back in the day when you had to actually own an expensive printing press to publish anything. You can reduce the cost of hardware but so far we don't have any way to make it as cheap as software.

    • by AmiMoJo ( 196126 )

      I think this misses some of the biggest benefits of open hardware.

      1) Schematics and PCB artwork allow others to learn from the design and make modifications to suit their needs, or re-use parts of it to save on duplicating effort.

      2) Open source parts (that is, the schematic symbols, PCB footprints and simulation data files) are really valuable. A proven part footprint can save a lot of effort and wasted PCBs.

      Bruce is right, opening hardware is very different to opening software, but both provide benefits.

      • by sjbe ( 173966 )

        I think this misses some of the biggest benefits of open hardware.

        I'm not saying open hardware is bad. Not in any way. Merely that it is more difficult to do.

        1) Schematics and PCB artwork allow others to learn from the design and make modifications to suit their needs, or re-use parts of it to save on duplicating effort.

        All true. However unless they share their modifications as well there is no way for the community to benefit and grow. There is no easy way to do a GPL style license with hardware. You could do something like a BSD license but due to the economics involved in hardware design and production a BSD style license doesn't really help much. You might make it work for some relatively trivial designs but for something

        • 1. Open hardware is only more difficult than open software as far as the 'copyleft' aspect of the concept goes. If the whole deal about Open source was to allow improvisation of designs, and sharing of the information on that, then the 2 would be identical. At a chip level, for instance, if someone put out the HDL models of a chip, 2 companies (to be practical here) could take the same design and burn that code into 2 FPGAs, and then run w/ it.

          Where the similarities end is that in case of software, the

  • Most hardware is software long before it takes physical form. There are designs and simulations that run completely in software. The designs and simulations are what people can open source. When we are talking about open source hardware, we are really talking about software.

    • Huh? Can you show an example?
  • by sbaker ( 47485 ) on Thursday December 10, 2015 @11:59AM (#51095007) Homepage

    The original article, and almost all of the posts following that are construing the word "Hardware" very narrowly.

    * An "open CPU architecture"
    * An "open silicon design of some kind"
    * An "open ASIC design"
    * An "open FPGA design"
    * An "open PCB design"
    * An "open design for a 3D printer"
    * An "open design for a modular house" ...all of these are "hardware". Sure, an open CPU design is problematic because you need massive software infrastructure to maintain compilers and such. Sure, an open silicon design is almost impossible for any of us to reproduce. Sure, most of us are not going to be making custom ASICS. But we *can* all program an off-the-shelf FPGA - or have a PCB manufactured - or figure out how to assemble a 3D printer from stuff you can buy in Home Depot.

    So this conversation needs to be sharply narrowed if it's going to be about the difficult stuff at the top of the list without shutting out the very successful projects at the bottom of the list.

    • Very good point. The reproduciblity won't be there, unless we get to 3D printers that might allow that. But having those designs out there would enable multiple companies to either make cheaper clones of the existing design, or better yet, make useful modifications to the design that enable the user to improvise on the functionality of whatever it is
  • The slide at 24:49 in the video summarizes the argument:
    * Open Hardware licensing attempts to work using copyright but is unsuccessful in doing so. (You can't actually enforce an Open Hardware license in the courts, where the mechanism is a copyright on an electronic circuit. You can't really copyright a circuit.)
    * Open Hardware licensing only works as the developers would have it work when there is a *patent* on the design.
    * Patents are expensive to pursue, and not particularly attractive to people who wor

  • I came to the same conclusions when studying the possibility of "open sourcing" a data standard. Software + forking = good (or OK). Standards + forking = bad. Forking a standard, without careful control, inevitably kills it.

New systems generate new problems.