The question is why do you want someone to build 100,000 of them?
Heck, if you want something built, I'd be happy to do that. :)
Do you have anyone interested? If someone wanted to market such a product, the actual engineering of the board and software is not the biggest part of their expense. As you realize the packaging is a huge investment and the marketing on top. Why would they bother with your design rather than design it themselves.
I think I have the answer to that... the answer to my previous question... is anyone interested?
I'm not sure why you are designing hardware really. Some things I do for fun, but most I do for profit and there can be lots of profit in designing the right hardware.
So you don't use any appliance that is not open source?
That's even more bizarre... If you don't like the GPL don't look at the GPL sources!
I've spent enough time with you I feel I should get a slice..... :p
The question is: if I make the sources available to "customer A" under terms of the license, am I similarly required to make it available to NONcustomer B? "ANY third party"??
I.e., if I *sit* on the sources and only use them "internally", I don't have to give anyone anything! But, once I've opted to publish or produce something (distribute it), am I obligated to provide the GPOL'd sources to "anyone who asks"? As long as they are willing to pay a "duplication fee"?
In practice, it's pretty hard to "modify something" and still end up with your changes being something that is "free standing".
If I own the copyright outright -- without the terms of GPL applying -- I can elect to sell licenses, today -- subject to the licensing restriction that prohibits the licensee from disclosing or otherwise making known the contents of that licensed software. Next week, I can decide not to sell any more licenses! A week later, I can elect to change the license terms to allow licensees to "do with it as you wish".
Because there are no OTHER encumberances on MY code.
The market DECIDES, not "has decided". There is a lot of FOSS software that is NOT GPL'd! I.e., the "market" hasn't made a clear cut "decision".
Why would Google buy Nest? For how many billions of dollars? How many multiples of their total sales?? Heck, can't the folks at Google come up with a thermostat design on their own?? :>
I haven't offered it to anyone. OTOH, you see lots of big companies (e.g., Apple, MS, Google) trying to figure out how to develop this market. None of them seem to have taken "big enough" steps, yet (fearful that consumers may not be ready?)
Regardless, *I* am ready and see this as a vehicle to explore some of my design ideas...
This is mainly "fun" -- an unconstrained learning experience. Of course, I will also benefit from the resulting products (even if I only build prototypes to satisfy my own personal requirements).
I *have to* design and build hardware because I can't purchase anything off the shelf that has similar capabilities/characteristics -- even if I could "drop" my software into it!
E.g., my "network speaker" design has to fit in a traditional "1 gang" junction box. (Well, it doesn't *have* to but it sure would be far more convenient to include in new home designs and existing home retrofits if it just looked like a "light switch/duplex receptacle" -- than if it was a 4" x 4" PCB!)
Without resorting to full (or even semi-custom) implementations, it's just not practical to cram that much stuff on a tiny board. So, I use both sides of a couple of boards, sandwiched to give me the appropriate form factor. No one would build a generic system with the same hardware capabilities in that "odd" form factor/envelope.
I use lots of close source devices! But, any devices that I want to have control over (their implementation) by necessity are open source.
The router/firewall that services this computer is a Linksys device. The sources are *probably* available. But, I have no interest in modifying it as it does what I want well enough.
OTOH, I am annoyed with a couple of the "closed source" NAS boxes that I own. So, one target of the Atom SBC's is to let me discard those "closed" boxes and move the files onto the Atom SBC's (even if that means "external drives" as the Atom can't support ANY 3.5" drives internally)
SWMBO would be annoyed -- for her "artist's reception" next week. And, it doesn't travel well (though the one I made two days ago leaves for Denver on Monday -- LONG drive!). Next week's just has to go across the street, here... (neighbor's daughter's wedding)
(sigh) Let this cool for a few hours then move it into the 'frig'. I can slice it and package it tomorrow.
Then I won't have to look at any more of this disgusting stuff until after the holidays!
I never said anything of the sort. If you distribute modifications you make to the kernel, you have to distribute the sources too (or give "written notice", etc., etc.)
What I said is that this does not affect /your/ code for /your/ programs that run on the system. And even for changes to the kernel (typically new or modified drivers), so what if you have to distribute them? There are three typical situations:
You modify a driver to support particularly odd piece of hardware, or known hardware that is connected in a slightly different way. So what if people can see that code? They can only use it with your hardware.
Or you write a new driver for a something new and useful. Then everyone else can see the code, use it, modify it, improve it maintain it, test it, optimise it - if it turns out to be popular and useful, you get back better code than you gave out. That is how open source development works!
Or you really have something wonderful that you have to keep top-secret or it will ruin your business. The normal procedure is to write it as userland code, with a minimal GPL'ed part in the kernel. If there are significant parts that have to run in kernel space, it is harder - but it is certainly possible to have "binary blobs" in the kernel. You just have to be careful how they are "distributed", and accept that by "tainting" the kernel you will get less help and advice from other kernel developers. (Nvidia and ATI/AMD do this with their graphics drivers.)
No matter what path you pick, you are still giving out a tiny fraction of the amount of code you receive - for free - from others. It is egotistic in the extreme to want to take the power and flexibility of Linux while moaning about letting others see the few lines of kernel code you have written yourself.
Glen mentioned the case of Linksys and their WRT54GL router. Linksys used Linux for that router, and had not made any of the source available
- they ended up in court over the matter. After "realising the error of their ways", they went beyond the basic requirements of handing out code
- they were instrumental in founding the OpenWRT project, and contributed significantly to it, to create a Linux distribution aimed solidly at embedded routers. The result for Linksys is that they got back improved code from the project, and they sold vastly more of these routers as they became popular with OpenWRT users (the WRT54GL are /ancient/ by modern standards, yet they are still massively popular). Their current owner, Cisco, is a major contributor to the Linux kernel, especially in networking - because by working together they get better code for a lower development cost, and can sell more hardware.
This is the power of the GPL - it does not happen in the BSD world, where people take and do not give back. (How many contributions did MS make to BSD after taking their network stack for NT?) And it shows the power of open source development - sharing the costs to get better results.
(I don't mean to suggest that open source development, or the GPL, are the right choices for all development - just that they are the right choice for the Linux kernel, and are a major part of its strength.)
Don, your arguments are all over the place, and you are mixing in all sorts of issues from different places. It is extremely difficult to discuss things with you when you are incapable of sticking to the point. The discussion was about the /Linux kernel/, and whether the fact that it is under the GPL makes it somehow "evil" and restrictive, and that no sane developer would use it because of the GPL.
A database server like PostgreSQL and MySQL is completely different. Most people don't modify or adapt them - they use them as-is, and almost nobody cares about the licenses other than that they are free to use. MySQL is many times more popular than PostgreSQL because it has a reputation for being faster and easier to use than PostgreSQL (which is seen as more advanced but more complex), and has become more well-known. It's a difference in technical features and market familiarity - the license doesn't come into it. (Please don't digress into how PostgreSQL is actually faster or easier than MySQL - I already know, and it is irrelevant here.)
The only people who really care if these are under the BSD or the GPL are EnterpriseDB and Oracle, and they both do perfectly well with the licenses they use and commercial and open source models they use.
There is plenty of place in the world for the BSD and the GPL licenses, as well as many others. You can see this from the vast amount of software available under both these licenses - the "market" has decided that the choice of license depends on the type of software and the preferences of the author.
Are these two things equivalent in your mind? If I want my designs used, I'm not going to worry about whether a company can use them to make profit. I would prefer to make that myself.
This is *very* off the topic we have been discussing.
Do you think the only value of Nest is their electronic designs? Remember all those other things I mentioned that are required to launch a product? Then there is risk. Why try to create something not knowing how well it will turn out vs. grabbing something that is already successful.
I think you will find nearly everyone in the large companies will *not* be at all interested in your design. If nothing else they likely would not want the world to potentially find out they are using your design that they can get themselves. Companies want to be in control of their destiny and this would be out of their control from a marketing perspective.
That doesn't require that someone be interested in making 100,000 of them.
So how does this relate to Linux?
Again we go around in circles. GPL doesn't prevent you from doing any of this. You are fixated on the idea that if you modify your toaster you want someone to be able to make 100,000 toasters with your idea and not have to pay you a dime. Wonderful.
I'm not picky. I once made an applesauce cake and took it to work on the back of my motorcycle... lol, it ended up a pile of mush. No one else would touch it, but I enjoyed the heck out of it. :)
My understanding of GPL is that you only required to make the source code available to "Customer A". However if "Customer A" decides to share the code with "NONcustomer B" or "ANY third party" it is allowed to do that. I.e. GPL gives your customer the same rights to the code as you and doesn't allow those rights to be restricted or taken away in a derivative product.
I usually do the opposite: Linux tends to be better discovering everything that is visible to the processor. Between lspci, lsusb, dmidecode and kernel boot messages Linux is likely to see it all, whereas Windows tends to require installing specific drivers.
This is by the way an advantage that the x86 platform holds over ARM: all peripherals tend to be on self-aware busses like PCI. On ARM everything is memory mapped so you do have to know register addresses and functions. Each platform then has to have a pre-written device tree description of its peripherals---there is no bare metal introspection.
So you are saying I could take a GPL product, for example Linux, modify it, sell it to customers but still deny them access to the source code? That is an interpretation of GPL that I haven't heard before. If your interpretation is correct I wonder what the big deal is with GPL and why companies who sell products based on GPL'ed code even bother which providing (usually not only) their customers access to the source code?
Which is exactly what you do when you sell it to your customers.
That is only when you keep it to yourself, my understanding of GPL is that as soon as you sell it you are not allowed to deny your customers access to your (modified) sources.
What you say is entirely correct. I think what Grant meant is that you don't have to share any particular code with anyone else if you don't want to - but if you /do/ share it, including by selling them binaries, you have to follow the rules of the licences involved. People sometimes think that if they have made changes to some GPL'ed code, they /must/ make those changes available publicly - when in fact they only need to pass on the changes when they pass on the code in binary or source format.
On Sun, 21 Sep 2014 18:19:49 +0200, David Brown Gave us:
Look at the Nvidia driver 'model'... err... cockup.
So bad it actually invades kernel compilations.
What a set of complications!
It is all about little "important" IP code bits that matter. All the basic template glue stuff is no big deal, unless someone is big on calling the interface glitz "IP". That is (or should be) separate from code that essentially forms a "process engine" for handling some other data.
Those little "process engines" are what it is about.
You asked why I would want someone to build 100,000 (or *any*!) of them.
What's the rule or discussions, here? If you ask a question, I should NOT answer it for fear of being accused of dragging the discussion off-topic?
While YOU folks seem to gripe about the length of my posts and how far afield they get, please recall that this happens as a CONSEQUENCE of questions that YOU FOLKS raise!
*I* asked about Atoms. I didn't bring Linux or manufacturing my own products into this discussion. Please browse back upthread to see how these issues were raised.
In the future, please don't be annoyed if I respond to questions for further clarification -- or suggestions -- with a terse: "No", or "that's not important". That way the discussion will remain on topic. I *always* try to provide adequate information to elicit thoughtful responses. If you need more (e.g., "why do you want to do this?") then I'm sorry, I'll just have to reply with "treat it as a homework problem: wombats crossing the road, etc." Presumably, you are all capable of answering a question posed in the abstract? Without being completely constrained/specified?
That way, you won't have to wonder what hair-brained scheme I am working on; or "save" me from an approach you consider fool-hardy; or "educate" me on the marvels of Gismodics. *SO* much easier for all of us, eh? I won't have to write long explanations -- or pose examples of why I am taking a particular approach or a particular situation that I have anticipated (if you invest a comparable amount of time, you can always anticipate that situation yourself! And, if you're not really that interested in the issue, then you won't mind NOT knowing of those pitfalls).
Because it really isn't worth the hassle trying to explain myself and then being berated for "not sticking to the subject", "too long-winded", etc.
The Market hadn't claimed Nest was a "success". Note the bru-ha-ha over the price Google paid.
Yes. Just like nearly everyone in large companies is NOT interested in Linux, PostgreSQL, Apache, etc. Silly me! Obviously no one in business is interested in "free IP"! Everyone adheres to NIH philosophy.
That's why you use an unencumbered license! Here's a working design. Look at ALL of it's implementation details. Read *why* each decision was made in the hardware, software, system choices. *TAKE* from that WHATEVER YOU WANT and use it as the basis for a similar/better product.
["I don't care if you reproduce an identical copy of my code, my hardware or my system approach. But, by adopting the design "conceptually", you will bring products LIKE THIS to the market. That's more than I can get *now*. And, if I think you've done a poor job, I can't sue you -- yet, I can still reproduce *my* designs if I decide to make that investment"]
Of course not! *I* will have my golden master. *My* needs will be satisfied. I have many "gadgets" that exist only in this house. When folks see them and express an interest in having one, I just smile and shake my head.
"Gee, that gizmo that screens your phone calls is really slick! Can you make one for me?"
"Wow, your heating/cooling bill is lower than ours and yet your home is always just as comfortable. Can I get one of those thermostats?"
"How do you keep all those plants thriving IN THE DESERT and not have an outrageous water bill? Can I have whatever it is you're using?"
"Hmmm... how did you know it was me at the front door? I wish *I* could know who it was so I could avoid those damn pollsters and lawn service companies! Really annoying to have to answer the bell only to discover it's someone trying to sell me something!"
Do you see? "No, there are more interesting things that I want to do with my time than build one of those for you!"
You asked why I was making my own hardware.
Don't ask a question and then complain when I answer it!
How does Linux relate to "Intel Atom: pros/cons/hazzards?"
No, David, the discussion WAS about "Intel Atoms". Browse back upthread to see how it "was unable to stick to the point". (I.e., *I* didn't inject Linux into the discussion. I didn't inquire as to why Linux wasn't an option for me. Etc.)
Also, see my (roughly concurrent) reply to Rick re: how discussions get off topic and the remedies I will use to "keep us all happier" in the future.
And that is ****EXACTLY**** what I said: "Obviously, the free software 'market' has decided that the GPL isn't the solution!" would it have been better if I had emphasized "THE solution"? Or, added a second paragraph (and risk even more complains about lack of brevity): Obviously, the free software 'market' has decided that the BSD license isn't the solution! If people disliked the fact that MySQL isn't under the BSD license and *avoided* it -- in favor of PostgreSQL (which is BSD licensed, IIRC), then the MySQL folks would either decide to embrace the BSD license *or* live with the market that NOT embracing it leaves them! Please don't read your own bias into what I write!
And then *complain* when I spend more bytes pointing this out.