EmbeddedRelated.com
Forums

Intel Atom: pros/cons/hazzards?

Started by Don Y September 17, 2014
On 9/21/2014 2:25 AM, Don Y wrote:
> On 9/20/2014 7:05 PM, rickman wrote: >>>>> It *requires* you to share it! >>>> >>>> No, that is factually incorrect. You are free to modify GPL code all >>>> day long >>>> and not share it with anyone at any time. GPL talks about what you >>>> must do >>>> when you *do* share it. >>> >>> "Sharing" meant to also include *sell* a product incorporating that >>> code! >>> You can use GPL'd tools to create other works. But, if you take those >>> GPL tools and derive yet another product from them (or any portion of >>> them), then the license terms apply to those derived works as well. >>> >>> IF YOU ONLY USE THAT DERIVED WORK INTERNALLY, then you have no practical >>> obligations. However, if you start selling or distributing that >>> modified >>> (enhanced/derived/etc.) tool, then the license's terms apply. >> >> BINGO. The point is you have not explained what is so onerous about >> the GPL. > > Anything that would discourage others from embracing a codebase! Given > that > there are many commercial concerns who avoid GPL'd code, this seems to be > a reasonable concern (ask THEM for their reasons why -- perhaps they > dislike > the letter 'G'? -- it doesn't really matter to me what their reasons > are. As > I said before, I am not interested in educating people as to why or how > they > can embrace GPL.) > >> You seem to have a problem with the fact that others will be subject >> to the >> same conditions if they use your work which is GPL'd. So? So far you >> have not >> explained why *any* of your work would be covered by GPL. > > My work would be tainted by the GPL if it was derived from any GPL'd > "product". > E.g., if I snip the network stack from the Linux (GPL'd!) kernel and use > that > as the basis for my MODIFIED network stack, then I am subjected to the > terms > of the GPL.
Isn't that easy enough *not* to do? We started out talking about *using* Linux. Everyone knows that if you modify Linux and then ship it you have to make your mods available. No one disputes that.
> If I snip the network stack from the NetBSD (or FreeBSD) kernel > (nonGPL'd) then > the issue goes away. This should be a no-brainer decision! > >>>>> Does your employer share *his* codebase with his customers? >>>>> Competitors?? >>>> >>>> I am my employer and I don't use GPL code in my work. But that is >>>> only because >>>> there is very little GPL code available in the work I do. I mostly >>>> write my >>>> stuff from scratch so far. There are processors cores for FPGAs which >>>> I might >>>> consider using some day. But not so far. >>> >>> If those cores are GPL'd, then you will have to conform to the GPL's >>> terms >>> if you adopt one (for use in a product -- if you instead use one to >>> create >>> an electronic flyswatter that you use in your office, no problems!) >> >> Yes and that only makes sense to me. > > As does the same for a piece of GPL'd software! > > Now, REAL hypothetical for you: you have two essentially equivalent cores > that you can embrace. One license says: "Put a copyright notice in your > manual that acknowledges that a portion of YOUR PRODUCT was derived from > code that was originally copyrighted by ABC". The other license says > this PLUS: "Make available the sources for the core that you got from us > to all of your users/customers. If your modifications can not easily be > separated from that, then publish your modifications as well. And, > ensure that anyone to whom you sell or license your product/FPGA design > ALSO follows these rules" > > Which core are you going to use, all else being equal?
Since when is all else equal?
> At the very *simplest* level, the former license is far easier to > OBVIOUSLY comply with: "Here is the copyright notice that you required > printed clearly on page 12 of my manual." No wiggling around with > lawyers (potentially) arguing about whether your code fragment: > if (FatherName == "Bob") then... > is effectively the same as: > if (NameFather == bob) then... > etc. > > (e.g., imagine specifying a logic term as a sum of products vs. an > equivalent product of sums -- and arguing about whether they are > just thinly veiled attempts to sidestep licensing requirements: > "No, this isn't 'Windows'; it's 'Doorways'!" > :-/ > >>>> No, you don't have to share anything. There are any number of vendors >>>> who use >>>> GPL code and they have never shared any of it with me and they won't >>>> even if I >>>> ask... because I haven't bought their product, so they aren't >>>> obligated to >>>> share with me. >>> >>> Um, you might want to reread the terms of their license! And, if, >>> indeed, >>> they are NOT complying with those terms, call the FSF-police and let >>> them badger them into compliance. >> >> No, they have no obligation to distribute source to anyone they didn't >> sell or >> give the binary code to. > > Actually, 3b suggests otherwise: > > b) Accompany it with a written offer, valid for at least three > years, to give any third party, for a charge no more than your > -----------^^^^^^^^^^^^^^^^^^^^^^^ > cost of physically performing source distribution, a complete > machine-readable copy of the corresponding source code, to be > distributed under the terms of Sections 1 and 2 above on a medium > customarily used for software interchange; or, > > The point is to get you involved in redistributing the GPL'd code.
Only if you ship the code.
>>> The whole point of the GPL is to *promote* sharing -- by requiring you >>> to propagate the licensed code (you are encouraged to also share your >>> improvements but can excise them from what you distribute if they are >>> clearly "freestanding" >>> >>> 2b) You must cause any work that you distribute or publish, that in >>> whole or in part contains or is derived from the Program or any >>> part thereof, to be licensed as a whole at no charge to all third >>> parties under the terms of this License. >>> >>> 2c) ... These requirements apply to the modified work as a >>> whole. If >>> identifiable sections of that work are not derived from the >>> Program, >>> and can be reasonably considered independent and separate works in >>> themselves, then this License, and its terms, do not apply to those >>> sections when you distribute them as separate works. But when you >>> >>> So, if I excise my "patches" from the "derived/modified" work, then I >>> can distribute *those* as "separate works" under a different license >>> (of my choosing). >>> >>> This only makes sense when you are building a "module" or some other >>> object that has merit in a free-standing manner. NOT when you are >>> modifying something else and adding or altering its functionality in >>> some (small or large) way! >> >> You get so hung up on the details you can't see the issues. > > The issue is when and how the GPL "attaches" to a work. I.e., if I can > make something that has inherent freestanding value (no GPL'd code > included), then it is free of the GPL's taint. (as it SHOULD BE!) > > So, unless your work is free-standing in the absence of GPL'd code, > you're work is probably affected!
Bingo!
>>>>> *I* may opt to share it; but, someone who embraces my codebase might >>>>> NOT want >>>>> to share it or his further improvements. E.g., a commercial entity >>>>> that >>>>> wants >>>>> to exploit the work without sharing his enhancements, being called >>>>> on to >>>>> redistribute the original sources that he received or even tipping his >>>>> hand as >>>>> to *what* codebase he based his product on! (e.g., if my license >>>>> terms >>>>> force >>>>> him to include a notice that says "Portions copyright Don Y" that >>>>> doesn't >>>>> tell anyone *what* sources he used, which version, changes, etc. And, >>>>> *I* am >>>>> under no obligation to provide those sources to those "other >>>>> interested >>>>> parties", either! I can abandon it or take it in yet another >>>>> direction, >>>>> entirely!) >>>> >>>> A bit long winded and confusing, but this is different. Here you are >>>> talking >>>> about a product that someone used GPL code in and now wants to profit >>>> by. Yes, >>>> here the GPL says you must share the original code as well as your >>>> modified code. >>>> >>>> Your code would be shared though him since he is obligated to share it >>>> if he >>>> used it in a product. >>>> >>>> If you are describing a situation where your code was written with GPL >>>> code and >>>> distributed that way but you also distribute it as stand alone... I >>>> find that a >>>> very odd scenario and one that is very unlikely. Certainly I have no >>>> horse in >>>> this race so I won't even try to figure it out. >>> >>> The point is to let others accept your (my) code with as light a "touch" >>> as is legally possible. I surely don't want to place things in the >>> public >>> domain. I *deserve* to hold the copyright on my works. However, >>> telling >>> others whom I would like to ENCOURAGE to adopt those works that they >>> have >>> some "other requirements" that they must additionally satisfy (and be >>> prepared >>> to defend in a court of law) is entirely different. >> >> None of this makes sense to me. You say the GPL is too restrictive on >> those >> you share your work with but you want to retain your copyright... GPL >> doesn't >> take your copyright. It requires you to *share*. > > GPL doesn't take away anyone's copyright. They still are the legal > copyright holder. However, the GPL requires you to freely *share* > that which is covered by the GPL!
Which is exactly what you said you wanted to do, share your work.
> As copyright holder to a nonGPL'd work, I don't have to share with > *anyone* that I choose not to share with! Or, I can change my mind > later. Or, put different terms on each licensee. My choice, entirely.
No, you can't share your code and then later decide not to... unless you forbid those you share it with to share it again. Is that your intent.
> "Microsoft Windows, Copyright XXXX Microsoft Corporation" > > They don't have to make sources available. They don't have to agree to > sell > you a BINARY license to their product! They can change their mind next > week. > They can offer a license that is good for 30 days. Or, "one boot" (like > the > 99c per play iTunes example I mentioned). > > However, if MS did something that caused their codebase to become > tainted with > GPL'd code, then the rules are different! By embracing the GPL'd code, > they > would have subjected themselves to its terms! > >>> I can't think of anyone who would cringe at burying a copyright >>> notice in >>> some publication -- ink is practically free! >>> >>> OTOH, agreeing to provide *my* sources (even WITHOUT their >>> modifications) >>> to *others* -- presumably who also want to COMPETE in their market -- >>> raises >>> the bar. Not only the (reasonably trivial) responsibility of putting it >>> on a publicly accessible server somewhere (for some amount of time) but, >>> also, ANNOUNCING to those competitors that you started with THIS >>> codebase! >>> (I don't think many businesses are eager to share ANYTHING about their >>> products or processes! They fret when they have to disclose INGREDIENTS >>> on food labels -- and those say nothing about QUANTITIES, etc.) >> >> Yeah, some people don't like that, but many *do*. > > And THE MARKET decides who to reward/punish! If consumers were concerned > about no ingredient labels on products (assuming this was legal) and > avoided those products, then the folks who didn't provide ingredient > lists would either have to change their policy or live with reduced > sales. > > Obviously, the free software "market" has decided that the GPL isn't the > solution! If people disliked the fact that PostgreSQL isn't under the > GPL and *avoided* it -- in favor of MySQL (which is GPL'd, IIRC), then > the PostgreSQL folks would either decide to embrace the GPL *or* live > with the market that NOT embracing it leaves them!
Really? The market has decide? Seems to me like there is tons of the GPL stuff all over the place.
>>>>> David seems to think I *can* do this under the terms of the GPL. I >>>>> believe >>>>> he is wrong. (read the GPL -- any version -- for yourself) >>>> >>>> I haven't seen anything by David that says this. >>> >>> He has EMPHATICALLY stated that: >>> >>> "I think you totally and completely misunderstand the GPL, >>> totally and >>> completely misunderstand how it applies to an operating system like >>> Linux, >>> and totally and completely misunderstand how open source development >>> works, >>> where it is a good choice, and where it is a bad choice." >>> >>> I believe I have stated what I *want* from a license. And, why the >>> simple >>> "3 paragraph" example is so much more preferable (Gee, folks complain >>> about >>> the lengths of my posts -- but not the length of the GPL vs. other >>> licenses??). >>> >>> Given that he is so convinced that I "misunderstand", I would like >>> him to >>> clarify how the GPL lets me -- and anyone who embraces my codebase -- do >>> "whatever they want" with it! And still comply with the terms of the >>> GPL! >> >> There is no license that lets others do "whatever they want" with your >> code >> other than just placing it in the public domain with no copyright and no >> restrictions. Is that what you want? > > "Put a copyright acknowledgement in your printed documentation" is > pretty damn > close to "do whatever you want"! I'm reasonably sure anyone using a GPL'd > product would be willing to "accept" those terms as well!
No, that is not the same. If you don't retain copyright someone else is free to copyright it and prevent *you* from sharing it. That is total freedom to do with it as they please.
>>> Can YOU tell me how I can do this? How I can tell a potential >>> commercial >>> entity that they can freely embrace my codebase in their products >>> JUST by >>> adding those 3 paragraphs to some "user manual"? That, as long as they >>> have done exactly this, I will have no legal recourse to come after them >>> for violating the terms of the license, etc.? >> >> But you started out talking about why you didn't *use* Linux. How is >> that >> related to giving away your code? > > I've covered this in another post. Briefly, because I will consult the > sources for any OS that I am USING, here, in the natural course of > maintaining > that software and LEARNING FROM THE WORKING IMPLEMENTATION THAT IT > REPRESENTS. > Why learn about some code that I can't/am-not-willing to incorporate into > my own codebase? Why "infect" my codebase with a license from an > encumbered > piece of software when I can, instead, USE (day to day) unencumbered > software > and learn from *that*?
Why indeed. -- Rick
On 9/21/2014 2:40 AM, Don Y wrote:
> On 9/20/2014 9:56 PM, rickman wrote: >> On 9/20/2014 11:40 PM, Don Y wrote: >> ....snip... >> This is going around and around in circles so I'm just not going to >> worry with >> it anymore. > > Ditto! :> Little to do with "Intel Atoms"! :-/ > >>>> I'll make money selling the assembled boards. If someone wants to >>>> try to >>>> compete with me go for it! It's not like it is a difficult thing to >>>> reinvent >>>> anyway and it's not a big market. Look at all the Arduino clones. Is >>>> Arduino >>>> not selling anymore? >>> >>> Different size operation. The items I am talking about would typically >>> have >>> initial builds in the 10,000 - 100,000 quantity. I.e., something that >>> requires >>> a significant investment on someone's (commercial) part. >> >> I want to make sure I understand. You want to design something that >> you will >> make one or two of and the intent is that someone else will be making >> them in >> the 10's of thousands but you will receive nothing in return. But you >> want to >> preserve their ability to use your work to make profits. > > Yes, exactly. > >> Why do you care again? > > So they are willing/eager to embrace the codebase and the products that are > consequent to it! So I (and friends, colleagues, etc.), in turn, can buy > those products off-the-shelf instead of having to build every instance of > every product myself! (I don't want to be building boards!) > > "Gee, that's really cool! Would you build me one if I paid you?"
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. :)
>>> E.g., my thermostat is far more capable that a "Nest" thermostat. >>> Costs far >>> less to build. Would obviously SELL for less. Do you really think *I* >>> am going to invest in a custom injection mold, packaging, etc. and an >>> initial build of 10K (1000 would be silly... 20 for each state in the >>> Union?)? >>> Sell them out of my garage?? :-/ >> >> WTF are you talking about??? > > One of my designs is a smart HVAC controller (thermostat). The "Nest" is a > similar product offered by "Nest" (recently acquired by Google). Nice sexy > little package. Expensive price tag (e.g., $200-300?). > > Anyone wanting to bring my thermostat to market (more features, lower > "cost") > would have to invest in an injection mold for it, pretty cardboard boxes > to package it in, sales literature, distribution channel, components for > "many thousands" (unless they wanted to sell out of a garage), etc. > > This is a sizable investment. One would want to be sure to be able to make > money on the manufacture (and any future product enhancements) before > opening up their wallet!
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?
>>> You (I) need to attract folks willing to make big financial commitments. >>> Anything that causes them to be uncomfortable ("What's to keep some >>> chinese >>> manufacturer from going into direct competition with us?") just >>> decreases the >>> chance of the product (i.e., DESIGN) being used! >>> >>> [I can build *one* and AMAZE the neighbors. But, that's pretty small >>> thinking] >> >> I have no interest in trying to build many thousands of anything. I >> already >> have a product I make that I only need to sell a few hundred per year >> and it >> keeps me quite happy. > > I don't want to build even HUNDREDS! I spent a fair bit of time, recently, > trying to avoid building the *prototypes*! I am far more interested in > getting the *design* right. So everything "plays well" together, looks > like it was designed with a consistent philosophy and methodology, user > interface, etc. Building (even prototype quantities) is largely a "chore"!
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.
>> I think the problem is that from the beginning the discussion was >> about *using* >> a GPL'd OS. But in your mind that means modifying it and including it a >> product which you have only skirted around until now. The rest of us >> have not >> been talking about building products that include the GPL'd code. > > You initially asked why Linux "couldn't do that" (probe the Atom's > hardware). > I mentioned that I don't *use* Linux. From there, explained why I didn't > (because I can't leverage anything that I learn/copy from its sources > without > being encumbered with it's GPL).
So you don't use any appliance that is not open source?
> I obviously have no problem using CLOSED OS's -- Windows, Solaris being two > examples, here. There's nothing that I can "go peek at" in those so its > not > an issue.
That's even more bizarre... If you don't like the GPL don't look at the GPL sources!
> However, with FOSS software, the whole appeal (IMO) is being able to > inspect > the sources... to learn from a "working example"... a "reference > design", so > to speak. Pick a reference design from which you can FREELY learn/benefit! > > (sigh) Done for tonight. Another cheesecake to put in the oven. Then, > one *final* one next week. Thank God! :-/
I've spent enough time with you I feel I should get a slice..... :p -- Rick
On 9/21/2014 12:28 AM, rickman wrote:
> On 9/21/2014 2:25 AM, Don Y wrote:
>>>>> No, you don't have to share anything. There are any number of vendors >>>>> who use >>>>> GPL code and they have never shared any of it with me and they won't >>>>> even if I >>>>> ask... because I haven't bought their product, so they aren't >>>>> obligated to >>>>> share with me. >>>> >>>> Um, you might want to reread the terms of their license! And, if, >>>> indeed, >>>> they are NOT complying with those terms, call the FSF-police and let >>>> them badger them into compliance. >>> >>> No, they have no obligation to distribute source to anyone they didn't >>> sell or give the binary code to. >> >> Actually, 3b suggests otherwise: >> >> b) Accompany it with a written offer, valid for at least three >> years, to give any third party, for a charge no more than your >> -----------^^^^^^^^^^^^^^^^^^^^^^^ >> cost of physically performing source distribution, a complete >> machine-readable copy of the corresponding source code, to be >> distributed under the terms of Sections 1 and 2 above on a medium >> customarily used for software interchange; or, >> >> The point is to get you involved in redistributing the GPL'd code. > > Only if you ship the code.
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"?
>> The issue is when and how the GPL "attaches" to a work. I.e., if I can >> make something that has inherent freestanding value (no GPL'd code >> included), then it is free of the GPL's taint. (as it SHOULD BE!) >> >> So, unless your work is free-standing in the absence of GPL'd code, >> you're work is probably affected! > > Bingo!
In practice, it's pretty hard to "modify something" and still end up with your changes being something that is "free standing".
>> As copyright holder to a nonGPL'd work, I don't have to share with >> *anyone* that I choose not to share with! Or, I can change my mind >> later. Or, put different terms on each licensee. My choice, entirely. > > No, you can't share your code and then later decide not to... unless you forbid > those you share it with to share it again. Is that your intent.
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.
>> And THE MARKET decides who to reward/punish! If consumers were concerned >> about no ingredient labels on products (assuming this was legal) and >> avoided those products, then the folks who didn't provide ingredient >> lists would either have to change their policy or live with reduced >> sales. >> >> Obviously, the free software "market" has decided that the GPL isn't the >> solution! If people disliked the fact that PostgreSQL isn't under the >> GPL and *avoided* it -- in favor of MySQL (which is GPL'd, IIRC), then >> the PostgreSQL folks would either decide to embrace the GPL *or* live >> with the market that NOT embracing it leaves them! > > Really? The market has decide? Seems to me like there is tons of the GPL > stuff all over the place.
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".
On 9/21/2014 12:35 AM, rickman wrote:
> On 9/21/2014 2:40 AM, Don Y wrote: >>> ....snip... >>> Why do you care again? >> >> So they are willing/eager to embrace the codebase and the products that are >> consequent to it! So I (and friends, colleagues, etc.), in turn, can buy >> those products off-the-shelf instead of having to build every instance of >> every product myself! (I don't want to be building boards!) >> >> "Gee, that's really cool! Would you build me one if I paid you?" > > The question is why do you want someone to build 100,000 of them?
Don't *you* want your designs used?
> Heck, if you want something built, I'd be happy to do that. :) > >>>> E.g., my thermostat is far more capable that a "Nest" thermostat. >>>> Costs far >>>> less to build. Would obviously SELL for less. Do you really think *I* >>>> am going to invest in a custom injection mold, packaging, etc. and an >>>> initial build of 10K (1000 would be silly... 20 for each state in the >>>> Union?)? >>>> Sell them out of my garage?? :-/ >>> >>> WTF are you talking about??? >> >> One of my designs is a smart HVAC controller (thermostat). The "Nest" is a >> similar product offered by "Nest" (recently acquired by Google). Nice sexy >> little package. Expensive price tag (e.g., $200-300?). >> >> Anyone wanting to bring my thermostat to market (more features, lower >> "cost") >> would have to invest in an injection mold for it, pretty cardboard boxes >> to package it in, sales literature, distribution channel, components for >> "many thousands" (unless they wanted to sell out of a garage), etc. >> >> This is a sizable investment. One would want to be sure to be able to make >> money on the manufacture (and any future product enhancements) before >> opening up their wallet! > > 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.
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 think I have the answer to that... the answer to my previous question... is > anyone interested?
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...
>> I don't want to build even HUNDREDS! I spent a fair bit of time, recently, >> trying to avoid building the *prototypes*! I am far more interested in >> getting the *design* right. So everything "plays well" together, looks >> like it was designed with a consistent philosophy and methodology, user >> interface, etc. Building (even prototype quantities) is largely a "chore"! > > 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.
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 think the problem is that from the beginning the discussion was >>> about *using* >>> a GPL'd OS. But in your mind that means modifying it and including it a >>> product which you have only skirted around until now. The rest of us >>> have not >>> been talking about building products that include the GPL'd code. >> >> You initially asked why Linux "couldn't do that" (probe the Atom's >> hardware). >> I mentioned that I don't *use* Linux. From there, explained why I didn't >> (because I can't leverage anything that I learn/copy from its sources >> without >> being encumbered with it's GPL). > > So you don't use any appliance that is not open source?
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)
>> However, with FOSS software, the whole appeal (IMO) is being able to >> inspect >> the sources... to learn from a "working example"... a "reference >> design", so >> to speak. Pick a reference design from which you can FREELY learn/benefit! >> >> (sigh) Done for tonight. Another cheesecake to put in the oven. Then, >> one *final* one next week. Thank God! :-/ > > I've spent enough time with you I feel I should get a slice..... :p
<grin> 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!
On 20/09/14 22:33, Don Y wrote:

> > C'mon, David. Tell me where it says I can freely copy WHATEVER I WANT out > of the Linux kernel and do *NOTHING* more than put a notice saying > "portions > copyright XXXXX" in the documentation. Are you sure *you* don't > "misunderstand the GPL"? >
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.)
On 21/09/14 08:25, Don Y wrote:

> Obviously, the free software "market" has decided that the GPL isn't the > solution! If people disliked the fact that PostgreSQL isn't under the > GPL and *avoided* it -- in favor of MySQL (which is GPL'd, IIRC), then > the PostgreSQL folks would either decide to embrace the GPL *or* live > with the market that NOT embracing it leaves them! >
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.
On 9/21/2014 4:47 AM, Don Y wrote:
> On 9/21/2014 12:35 AM, rickman wrote: >> On 9/21/2014 2:40 AM, Don Y wrote: >>>> ....snip... >>>> Why do you care again? >>> >>> So they are willing/eager to embrace the codebase and the products >>> that are >>> consequent to it! So I (and friends, colleagues, etc.), in turn, can >>> buy >>> those products off-the-shelf instead of having to build every >>> instance of >>> every product myself! (I don't want to be building boards!) >>> >>> "Gee, that's really cool! Would you build me one if I paid you?" >> >> The question is why do you want someone to build 100,000 of them? > > Don't *you* want your designs used?
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.
>> Heck, if you want something built, I'd be happy to do that. :) >> >>>>> E.g., my thermostat is far more capable that a "Nest" thermostat. >>>>> Costs far >>>>> less to build. Would obviously SELL for less. Do you really think >>>>> *I* >>>>> am going to invest in a custom injection mold, packaging, etc. and an >>>>> initial build of 10K (1000 would be silly... 20 for each state in the >>>>> Union?)? >>>>> Sell them out of my garage?? :-/ >>>> >>>> WTF are you talking about??? >>> >>> One of my designs is a smart HVAC controller (thermostat). The >>> "Nest" is a >>> similar product offered by "Nest" (recently acquired by Google). >>> Nice sexy >>> little package. Expensive price tag (e.g., $200-300?). >>> >>> Anyone wanting to bring my thermostat to market (more features, lower >>> "cost") >>> would have to invest in an injection mold for it, pretty cardboard boxes >>> to package it in, sales literature, distribution channel, components for >>> "many thousands" (unless they wanted to sell out of a garage), etc. >>> >>> This is a sizable investment. One would want to be sure to be able >>> to make >>> money on the manufacture (and any future product enhancements) before >>> opening up their wallet! >> >> 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. > > 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?? :>
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 I have the answer to that... the answer to my previous >> question... is >> anyone interested? > > 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?)
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.
> Regardless, *I* am ready and see this as a vehicle to explore some of > my design ideas...
That doesn't require that someone be interested in making 100,000 of them.
>>> I don't want to build even HUNDREDS! I spent a fair bit of time, >>> recently, >>> trying to avoid building the *prototypes*! I am far more interested in >>> getting the *design* right. So everything "plays well" together, looks >>> like it was designed with a consistent philosophy and methodology, user >>> interface, etc. Building (even prototype quantities) is largely a >>> "chore"! >> >> 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. > > 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.
So how does this relate to Linux?
>>>> I think the problem is that from the beginning the discussion was >>>> about *using* >>>> a GPL'd OS. But in your mind that means modifying it and including >>>> it a >>>> product which you have only skirted around until now. The rest of us >>>> have not >>>> been talking about building products that include the GPL'd code. >>> >>> You initially asked why Linux "couldn't do that" (probe the Atom's >>> hardware). >>> I mentioned that I don't *use* Linux. From there, explained why I >>> didn't >>> (because I can't leverage anything that I learn/copy from its sources >>> without >>> being encumbered with it's GPL). >> >> So you don't use any appliance that is not open source? > > 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)
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.
>>> However, with FOSS software, the whole appeal (IMO) is being able to >>> inspect >>> the sources... to learn from a "working example"... a "reference >>> design", so >>> to speak. Pick a reference design from which you can FREELY >>> learn/benefit! >>> >>> (sigh) Done for tonight. Another cheesecake to put in the oven. Then, >>> one *final* one next week. Thank God! :-/ >> >> I've spent enough time with you I feel I should get a slice..... :p > > <grin> 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)
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. :)
> (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!
Holidays... I think I'll go to Florida. -- Rick
Op 21-Sep-14 10:27, Don Y schreef:

> 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"??
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.
On Thu, 18 Sep 2014 00:28:45 -0700, Don Y wrote:

> Perhaps next step will be to try a *Windows* install if only to get an > enumeration of the various "devices" in the box! Then, use that > information to build an appropriate kernel.
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.
On 2014-09-20, Dombo <dombo@disposable.invalid> wrote:
> Op 20-Sep-14 23:29, rickman schreef: >> On 9/20/2014 4:41 PM, Don Y wrote: > >>> I want to make changes, improvements to a piece of code. I don't >>> want to *have to* share it. >> >> No, you don't have to share anything. There are any number of vendors >> who use GPL code and they have never shared any of it with me and they >> won't even if I ask... because I haven't bought their product, so they >> aren't obligated to share with me. > > True, but you do have to share it with your customers,
No, you don't. You can modify GPL code and not share it. What the GPL does is place requirements on _how_ you share it should you decide to do so.
> and if they want to share it with the rest of the world GPL assures > they are allowed to do exactly that. So in practical terms your > modifications are open to the rest of the world.
Only if you decide to share the modified program. If you just want to modify and and _not_ share it at all, that's fine. -- Grant