Does anyone have a good reference on how analog is done on logic processes, specifically the bits that have to interface off the chip, like gpio, lvds, and serdes. I'd much appreciate it.
There's something I once encountered, but can't find the reference to, that suggested a kind of "digital-analog" process whereby voltage levels were replaced by timing measurement (?) due to the limits of feature size in analog design. I'm not in the field so forgive my ignorance.
I don't know about modern chips, but 1970s and 1980s logic chips just used big MOSFETs to drive their outputs. There wasn't any weird timing magic going on.
There are also processes like analog BiCMOS that let you mix bipolar analog circuitry and CMOS on the same chip. I also wrote recently about the 76477 sound chip that combined I2L logic with bipolar analog circuits.
Thanks for pointing out your article about the 76477. Fascinating stuff.
As for my second paragraph about "digital-analog", this reference on VCO-based quantizers [1] is not the one I remember but I think is related. Not that I really understand the intricacies, but it's a way of doing analog at low-voltages and finer geometries.
I'd be interested as well; even when I was working with digital logic designers they described this process (eg bandgap references and PLLs) as "black magic", and it's very rare in undergrad or even master's courses.
Anyway, anybody who's anybody knows that "Théorie des espèces et combinatoire des structures arborescentes" is what you should be reading, since the later English version isn't as good.
Congratulations. I hope Samsung nurtures the technical excellence at Joyent.
Please, please continue to develop your public cloud offerings. Having options other that the myopic, me-too, feature-matching, monoculture that is AWS/GCE/Azure is incredibly important.
That said, for my use profile, you guys need to work on your price competitiveness. Hopefully Samsung will inject the necessary cash for economies-of-scale.
The Samsung TV I got came with a pirated copy of linux, which is quite a feat (came with a copy of the GPL 3, which is a clear breach of the GPL 2 only license of linux).
About 3 years ago Samsung realised that they were having trouble understanding how to deal with free and open source software. They were actively recruiting people to help them improve on that area.
Source: I applied for the job. I didn't get it ;-)
Linux has a specific amendment to the GPLv2 stating that it must always be distributed under the terms of the GPLv2, not the GPLv3 or any later version.
Honest question, how is anyone expected to keep up with all of this? Software licenses are not all that interesting to me, I just like making things, but now I have to also read pages and pages of legalize for every single dependency. I thought it would be good enough to know most mainstream licenses, but apparently Linux has a modified version of the GPLv2? I would never notice that, nor would I trust myself to even comprehend it properly.
It's starting to feel like I need to consult a lawyer before I could ever publish an open source project, and that's never going to happen. I'd rather just stop publishing.
Honest question, how is anyone expected to keep up with all of this?
That is a good, honest question, but there is a different standard of expectations for some random programmer doing a project and one of the biggest, most powerful multinational corporations on the planet with business operations (and legal advisors) in most of the world's countries.
If Samsung has the legal muscle to go up against Apple and others in the courtrooms of the world, and the technical muscle to customize multiple operating systems for countless products, they have the resources to read and understand the Linux license. While inept bungling is always a possible explanation for any party, a more likely explanation for a license violation for something as fundamental as an operating system by any party with that level of resources (if one were to ever occur) would be that they examined the issue, understood the situation, and decided that they could probably get away with it.
> apparently Linux has a modified version of the GPLv2? I would never notice that, nor would I trust myself to even comprehend it properly.
The amendment is actually the first paragraph of the COPYING file. If you modify any of the terms of the license directy, you have to remove the preamble and refer to it as something other than the GPL.
The other option for modifying the GPL is to distribute a separate LICENSE file alongside it stating something like "this software is released under the GPL, except for <specific changes>". When this happens, there's almost always an FAQ somewhere on the internet describing what the changes are intended to mean.
So, basically - check the source files to see if they mention a license, then check if there's a file named LICENSE, then check if there's a file named COPYING. One of these should always point you to the right license.
Additionally, as a point, it's not actually a modification of the license, merely a clarification - see section 9 of the GPLv2, which states that the program must explicitly state that it is usable under later versions of the GPL to be usable under later versions of the GPL. The boilerplate text that GNU give you to put at the top of each source code file does that by default, but, it's not required.
Which in turn means that the only way to check whether code you're using is GPLv2-only and cannot be combined with GPLv3 code is to check the license header in every source file. I guess that's not too hard - I mean, Linux only has 40,000 or so source files?
This is why I won't use any third party library that's not available under a MIT/BSD style license (and likewise, when I release source it's always under a very permissive license.) I hate wasting time trying to parse legalese and I hate being strongarmed by viral licenses, and I wouldn't inflict either on anyone else.
> Honest question, how is anyone expected to keep up with all of this?
* ... apparently Linux has a modified version of the GPLv2? I would never notice that,*
From the point of view of a personal project it doesn't matter that much. If you accidentally breach a license and someone notices they'll tell you and you'll fix the issue.
It gets much hairier once money is involved (i.e. OS code used by a company like Samsung) but the process they need to go through is no different from the due diligence that they have to do when licensing non-OS code from other bodies (commercial or otherwise).
When transitioning from pet project to commercial interest things are a bit more muddy. In the case of an individual or small company making the transition there may be some pain as they are not initially setup for this, but in the case of a commercial interest taking over (buying the project, taking over the smaller company, employing the individual specifically to work on the project, just negotiating non-OS use of the code etc.) this is again covered by the same due diligence requirements they follow when dealing with commercial code.
> I'd rather just stop publishing.
This only affects making modifications to other projects or taking some of their code to supplement your's (in both cases you are creating a derivative work), and even then only if you subsequently publish the work (i.e. it isn't purely a personal or in-house project). It shouldn't stop you publishing work that is definitely your own, just chose a license that you do understand.
If in doubt, write it yourself. For bringing in libraries (as "write it yourself" is seldom completely practical for all but the smallest projects) keep to the "soft" licenses that you understand (in no particular order this for me is: BSD, MIT, CC, LGPL, ASL) and avoid the "hard" OS licenses (GPL proper) & non-OS licenses unless you intend to stay GPL or accept the limitations of commercial/other licensing, and ignore code under other licenses unless you have time to read and understand them. Also avoid code with no clear license.
They are legally bound to contribute their modifications back to Linux (if they distribute them), it may be a different matter when they don't have to.
I can't say I know either way, however I do recall their Tizen SDK licensing not being accepted as open source due to it only granting the right to use certain components on 'Tizen Certified Platforms'.
No.. they are obliged to provide the source... not contribute them back. (Although the cost of maintaining patches internally, makes it cheaper to contribute them back)
I think a lot of hardware companies are still in the "smart" transition phase. In the sense that they've only been offering a product line with GUI driven software component for the past ~5 years.
Which means the larger companies* are probably on schedule for development to start slowing because of technical debt. And therefore solving that (modern development practices and open source involvement!) will become a competive advantage.
* Sadly, the smaller companies will probably always be hacked-together-MVP stacks on top of whatever release they started dev on
Bitcoin is simply going through a discontinuity brought on by a fixed blocksize. Personally, I feel uncertainty is the real issue. The "community" should either accept this, or opt for a potentially unlimited ceiling (limited by physics and network size and topology).
If you choose to remain with the fixed blocksize, then you're betting the system will reach another equilibrium (which may be total collapse). This equilibrium will revolve a natural evolution in the pricing of transactions.
Either way, at some other point in the future another source of discontinuity will be the circulation limit. Again, which may or may not kill the system.
Bitcoin is simply evolving, as it necessarily needs to.
It's definitely interesting to watch as an outsider.
There is a sort of analogue to this: parents praising their children as beautiful/pretty or brave/strong. Both vacuously reduce the childs ability to reflect genuinely on their strengths and their source of self-worth. Beauty (or the appreciation of) becomes solely reduced to the physical (and external), and courage reduced to dare-devilism/ego-centrism instead of the appreciation of fear and acting to overcome it.
In a related fashion, it's irritating to observe random strangers who exclaim "you are so cute!" to our daughter, e.g. in stores or coffee shops, but then don't have anything to say when she starts talking about her latest interest in biology or astronomy. They think they're giving a compliment, and they ignore the actual substance of the person in front of them.
I wish they would hear the child, engage in conversation that builds on what they say, not what they look like or how they're dressed. And stop that "you're so cute" thing, as it undermines the development of a healthy sense of self-esteem.
Okay, so how does the "free market" address a growing underclass that can't afford to live outside poverty? How does the "free market" address social issues caused as a result of this poverty? Inconveniently, for the "free market", these people will not go quietly, and when things get really bad, violence will become an issue. So the "free market" incarcerates them, hoping they don't reproduce, unless they accept their slavery. Then afterwards, everyone is happy, living in paradise.
Why, the free market already addresses these issues: commercial prison services, commercial security forces - mostly used outside of the country of origin, for now - and bail bond companies and and and... a whole industry is based around services tailored to the growing underclass.
This is firstly about the client software. If you have the client program's source and you can confirm that it does encrypt files with a local key and does not transmit the key to the servers, then it's not really a big deal (although it could be) what runs on the server.
If you have the client program's source, you should be able to build it yourself and use it with the service. This could eliminate the need to use precompiled binaries that SpiderOak provides on its website.
Sure if it's about the client then sure but as soon as SpiderOak open sources their software they start competing on price because anyone can write a backend to use another storage provider.
Yes, price would be a big factor, but scaling such a backend, providing a stable solution, etc., are not child's play either. Cyphertite has open source clients and I'm sure they have things other than price that they can compete on.
If there's one thing that the open source model has shown, it's that not everyone wants to bother with maintaining the source or adding features or fixing bugs. However, open sourcing will provide a level of confidence on the privacy aspect like nothing else can (assuming there are people interested in examining the code for issues).
I'll stop with this comment. This submission is not going to be prominent on HN anyway, and currently the sole signature on the petition is mine.
There's something I once encountered, but can't find the reference to, that suggested a kind of "digital-analog" process whereby voltage levels were replaced by timing measurement (?) due to the limits of feature size in analog design. I'm not in the field so forgive my ignorance.