Richard Stallman - Re: clang vs free software - <AUTHOR> http://gcc.gnu.org/ml/gcc/2014-01/msg00247.html <comment><USER3> When I finally realized that the FSF is really about being a social movement and that creating useful software is a non-primary goal (or maybe even a non- goal), my level of annoyance with RMS greatly decreased. Of course, along with that, my level of give-a-shit about the FSF and the GNU project decreased proportionally.

Stallman wants you to use Free software because it's free-as-in-ideology, not because it necessarily works well or does what you want.

<comment><USER4> I have to agree.

I love free; what doesn't feel "free" to me is the GPL, since I can't use just about anything GPL in my job.

My job involves creating non-free software. Given the GPL's goals, it's not a surprise at all that I can't use it.

But it strikes me as ironic that RMS talks about "freedom" when really he's advocating _restricting_ your freedom to use the software.

I understand it's in pursuance of a "greater goal" of Freedom to modify everything, but the problem is that, in the large, free software sucks, and I don't really want to be responsible for making it good.

Sure you can come up with a dozen really great free software packages (I'm using Firefox to post here, for one, and I make builds using gcc daily and gnu make). But I can come up with a thousand that suck -- and that includes the "best" packages in a number of different categories: Image editing, document editing, development environments (Eclipse has some nice bells and whistles, but that doesn't make it not suck), 3d editing... ALMOST everything with a GUI, browsers being a huge exception. [1]

Those are just the categories I've tried and tried again to make Free software work for me, because I am attracted to the _ideal_ of working with Free software. But every time, the paid/proprietary solution has been _so much better_ than the free solution that I've defected and paid for the proprietary version.

No, I'm not going to use free software to support an ideal. I'm going to pay for software that helps me get my work done faster and better. Because at the end of the day, I appreciate good tools, not ideals.

There may come a day when I try to make my own "free" software project, but if I do, it will be because I really want to make a world class tool in that category, and I feel that the free model is the best for that tool. But I will continue to choose my tools based on what they allow me to do, not their source code license, and the proprietary tools I do use offer me more advantages _despite_ being closed source than their open source equivalents.

[1] Don't bother posting arguments about this or that free software package in these categories. Unless it's brand new and awesome, in which case I might like to try it out. Regardless, one example doesn't change my overall point, and I don't want the thread to devolve into "Gimp is great!" "No it sucks!" \-- "Good enough" for one person is not always going to be good enough for another.

<comment><USER5> Not an other post about what "freedom" means :(.

Please read [https://en.wikipedia.org/wiki/Negative_and_positive_rights](https://en.wikipedia.org/wiki/Negative_and_positive_rights) and in particularly about the right to be left alone ( _negative rights_ ).

Freedom of speech, private property, freedom from violent crime, freedom of worship, habeas corpus, a fair trial, freedom from slavery are just a few freedoms that can only be implemented by _restricting_ others. You can't have freedom from slavery without restricting slave owners their right to enslave. Thus the term negative rights had to be made by philosophers and political scientists.

The proprietary model is to trade software for money, and then threaten your customers with lawsuit if they share or modify the program. GPL provide software under the freedom from those threats, with the use of negative rights (ie, the user of the program has a right to be left alone). If you can not make software without threatening your users, don't try to start by taking GPL software.

<comment><USER6> A number of companies have been sued for using GPL software in ways incompatible with the GPL, so I don't see how the distinction you're drawing here is meaningful.

</comment></comment></comment></comment><comment><USER7> Context:

This discussion originated on the emacs-devel mailing list, where there was a discussion of adding code to company-mode (text completion) explicitly supporting Clang [1].

It was pointed out [2] that RMS has in the past shown a disinclination to incorporate Clang support into GNU projects because of his perception of its encouragement of proprietary software riding the coattails of open source (but not Free) software.

The discussion then turned [3] to another instance of this: RMS's disapproval of modifications to GCC that would have made the front end more easily separable from the back end, opening the door to a proprietary end-around (or just outright abuse) of the Free license on the GCC frontend.

The article linked above is RMS's response to ESR's comments [4] that such policies have reduced the popularity of GCC compared to Clang.

[1] [http://lists.gnu.org/archive/html/emacs- devel/2014-01/msg017...](http://lists.gnu.org/archive/html/emacs- devel/2014-01/msg01732.html)

[2] [http://lists.gnu.org/archive/html/emacs- devel/2014-01/msg017...](http://lists.gnu.org/archive/html/emacs- devel/2014-01/msg01735.html)

[3] [http://lists.gnu.org/archive/html/emacs- devel/2014-01/msg017...](http://lists.gnu.org/archive/html/emacs- devel/2014-01/msg01739.html)

[4] [http://gcc.gnu.org/ml/gcc/2014-01/msg00209.html](http://gcc.gnu.org/ml/gcc/2014-01/msg00209.html)

<comment><USER8> If LLVM is so bad why are the people who make it so much easier to work with? You shall know a tree by it's fruits. It wouldn't bother me one way or another whether LLVM was copyleft or not, the people who run it are more pleasant to work with.

I think the biggest hurdle to people caring about copyleft is the sheer tonnage of disrespect people like RMS show to others. Nobody wants to work with a curmudgeon.

<comment><USER9> > If LLVM is so bad

RMS doesn't have a problem with LLVM because it's bad, he has a problem with it because it's good.

> the biggest hurdle to people caring about copyleft is the sheer tonnage of > disrespect people like RMS show to others

No, the biggest hurdles to people caring about copyleft are by far the incompatibilities with accepted practices and existing software that make it a lot of work to comply with copyleft ideals.

RMS's tone never seemed disrespectful to me. Uncompromising and occasionally blunt, yes, but never disrespectful. What would you have had him do differently? Compromise his ideals? Spin out a comforting but insincere apology that focused on licensing technicalities rather than the underlying philosophical issues?

<comment><USER10> I find it telling that RMS explicitly has a problem with LLVM because it helps private companies "as well as us" instead of _only_ helping us. It's literally zero-sum for him. He doesn't want companies to benefit in any way from open source.

I think there's a big problem with copyright and software -- the goal of copyright is to provide public goods, but the public goods that copyright protects is the source code, not the binary, yet there are no guarantees that the public will ever get the source code. I think if this problem were addressed (e.g. all software that seeks copyright protection must have its source code placed in escrow) then a lot of RMS's legitimate issues with closed source software would be mitigated. I'm sure he would still resent code being closed source, but at least we'd know that in 25 years or whatever the source code would become available to all.

<comment><USER11> > He doesn't want companies to benefit in any way from open source.

He never said that, and you're really failing to see his point. He doesn't want GCC to be broken up into tiny bits and have each of those pieces replaced by non-copyleft equivalents. Because he doesn't want the hard work of the GCC community to be used as a scaffold for creating a non-free replacement.

He is totally happy for companies to use and benefit from GPL'ed software in all the ways the license permits. He is totally happy for companies to use and benefit from non-free open source software (like Klang) however they like.

He also has no problem with people forking GCC and splitting it up however they want to. He doesn't think that's a good use of resources, and he thinks it's harmful, but he has no interest in stopping them.

What is is not happy for, and what he is standing up against, is companies making changes to _his_ branch of GCC. The GNU project is a group of people maintaining _their_ versions of various Free Software. You can fork any of those projects and make different choices. But within the context of that project, amongst _his_ collaborators he has opinions about what changes to make, and how best to further the goals of the project. And he thinks this change will be bad for the project.

<comment><USER12> I'm not sure if Klang is another software project, but if you meant Clang it is not non-free. Because it is not copyleft, its code can be used in things which _are_ non-free. There is a distinction.

</comment></comment></comment></comment></comment></comment><comment><USER13> The people who campaign for GPL software authors to change their license seem to assume that the authors of the software naively chose the GPL, as opposed to choosing it for its particular spirit.

That's really important distinction that people don't realize about the GPL - it's designed to protect the rights of the END USERS. And that's great when the end user is you and me, but it's also not surprising that we, as developers, will happily throw end user rights under the bus if we think we can make some money (e.g. SaaS, app stores, etc.) or profit otherwise.

<comment><USER14> end users do not give a shit about source code (or software licensing at all).

<comment><USER15> Well yes, that's the basis for Stallman's argument. If end users cared about free code, we wouldn't need to enforce it from the other side - <USER2> software would have no users.

<comment><USER16> I care about free oxygen for all, but if the only way to get it was by buying it, I would still buy it, and applaud those attempting to enforce it.

</comment></comment></comment></comment><comment><USER17> > They have been supported by Apple, the company which hates our freedom so > much that its app store for the ithings _requires_ all apps to be nonfree. > (*)

This is a judgement of the motives of Apple that I do not believe is correct by Stallman and he making a straw man case for it. I don't think that Apple "hates" their freedom.

I do believe Apple added the restrictions on having only non-GPL code because they understand the problems that it presents legally in the App Store as a distributor and their bourdon under the GPL by being the middle man and redistributing the software in question. Apple would be required to field GPL requests for software in the App Store as the main distributor. This is risk and overhead Apple doesn't want to deal with.

They could just as easily make the language not specifically mention GPL at all but instead say that you releasing software on the App Store can't add restrictions, constraints, or additional requirements on how Apple distributes your apps in the App Store not expressly contained the agreement already. This would be the same and would be just as GPL incompatible as it is today.

<comment><USER18> Read what he wrote in the asterisk; he is making a distinction about DRM and terms of use.

A counter example: sourceforge, as the primary distributor of many GPL'ed binaries, does not have to field GPL requests for software. DMCA safe-habor clause removes that burden; all they have to do is comply with takedown requests.

[http://www.openlogic.com/blog/bid/156894/Are-App-Stores- Liab...](http://www.openlogic.com/blog/bid/156894/Are-App-Stores-Liable-for- Open-Source-Software-Compliance)

"Either way, the next question in the legal analysis is whether the app store qualifies as an online service provider under the Digital Millennium Copyright Act (DMCA). Actually, a court may answer this question first as a matter or practicality.[1] The DMCA limits liability of online service providers for infringing material provided to the service by its users (i.e. app developers here) so long as the provider meets certain conditions. Whether an app store can be considered under the DMCA definition of an online service provider has yet to be tested, but it seems likely given the trend of caselaw that has held such vendors as Amazon and YouTube to qualify."

<comment><USER19> > A counter example: sourceforge, as the primary distributor of many GPL'ed > binaries, does not have to field GPL requests for software. DMCA safe-habor > clause removes that burden; all they have to do is comply with takedown > requests.

Sourceforge can get away with that because _Sourceforge has no editorial process_.

Apple could not continue to operate their App Store in the manner they currently do and successfully pursue a section 230 defence under the DMCA.

<comment><USER18> Amazon got away with it and they have an editorial process for the Kindle store. Youtube takes down offensive videos and has a human appeals process.

<comment><USER19> The human appeals process wouldn't really factor into it. It's more about the distinction between "auto-posting anything submitted" and "high-touch pre- posting decision making process prior to posting" that distinguishes "safe harbours" from sites that bear responsibility for what they host.

I'd need to read the Amazon decision for more insight into how that played out. Seems like a somewhat unsettled area of DMCA caselaw.

</comment></comment></comment></comment></comment><comment><USER20> Is it bad I just _don 't_ care that LLVM has enabled non-free software? Because it has done a h*ck of a lot for opensource software. New languages, new compilers, new optimisers, new IDEs have sprung up around an impressive framework.

I also don't understand how LLVM enables non-free software any more than binutils does. I can do:

      binutils/cat my_file | my_incredibly_none_free_program | binutils/grep my_pattern

which is essentially how LLVM works.

<comment><USER21> > _Is it bad I just don 't care that LLVM has enabled non-free software? > Because it has done a h_ck of a lot for opensource software.*

This presents an interesting (to RMS) quandary. I take it as a given that he prioritizes the freedom of software over its technical merits (as discussed in other threads). But, even just from the freedom perspective: LLVM increases the amount of proprietary software produced, and _also_ increases the amount of free software produced. Does RMS consider this a worthwhile trade-off? Or does he think that less software overall, and less free software in particular, is favorable to more free software existing and also some proprietary software.

<comment><USER22> RMS appears to believe that the creation and distribution of non-Free software is a categorical and unscionable evil, such that anything that anything that encourages it (whatever other benefits it provides) is categorically morally wrong, and anything that discourages it is categorically morally obligatory.

<comment><USER23> There a bunch of facts that contradict this, e.g. the exstance of the LGPL, RMS supporting BSD licencing of Xiph codecs etc.

His approach is a lot more nuanced and tactical than it is often portrayed.

<comment><USER22> > There a bunch of facts that contradict this, e.g. the exstance of the LGPL, > RMS supporting BSD licencing of Xiph codecs etc.

Those don't actually contradict it in any way that I can see.

> His approach is a lot more nuanced and tactical than it is often portrayed.

Sure. That doesn't mean that the long-term goal isn't as I've described it (and, in fact, RMS has pretty explicitly said it is for him, though that may or may not be true of the FSF.)

<comment><USER23> The LGPL is explicitly designed to allow non-free software to be created that uses the code under that licence, and it was created by RMS.

He supported BSD licences for Xiph codecs because he recognised the impact of network effects,

You claim that both these thing are considered "evil", "unconscionable" and "categorically wrong" by him regardless of whatever benefits they create. Clearly RMS disagrees, and is happy to use them as tools to achieve his long term goals in specific circumstances.

</comment></comment></comment></comment></comment></comment><comment><USER24> _I invite those working on major add-ons to LLVM to release them under GNU GPL version-3-or-later._

I don't use the GPL because I cannot honestly say that I understand it entirely. I understand copyleft, but the document is written for lawyers and I am not one. I can't expect users to read it either, much less understand it.

I use the BSD licenses because they are simple and clear. If I ever had to defend my intellectual property, I could do so myself, and the case would be over quick. That is more important to me, as a developer without access to lawyers, than ideological battles.

<comment><USER25> [http://www.gnu.org/licenses/gpl-3.0.html](http://www.gnu.org/licenses/gpl-3.0.html) it isn't that bad to get through. There are also more than enough analysis of it on the web from reputable sources (I'm looking for good links...).

If you understand copyleft, then you know what you're giving up by not using a copyleft, license. Do you not care about what you gain from the copyleft or don't want what you gain?

<comment><USER26> I care about what I lose because of copylefting software. I want software to suck less, and if that occasionally means letting someone be a free-rider on my stuff, let it be. At the same time, the existence of the GPL doesn't preclude people from free-riding either. Look at the embedded toolchains that are little more than GCC with a tiny proprietary wrapper, or the many many companies that use GPLed code, and have internal patches that never see light outside of the company. Restrictive licenses like the GPL are not all sunshine and roses.

</comment></comment></comment><comment><USER27> In case anyone doesn't realize this: the ARM64 LLVM backend used by Apple in Xcode 5 to target, for example, the iPhone 5S, is currently not open source. There is a vague promise that it will be merged, but the time frame described was itself long, many months have already passed, and it doesn't really seem like much progress has been made since (although of course things could be happening internally at Apple).

(In fact, none of the code actually backing Xcode 5 or iOS 7, even LGPL code such as WebCore/JavaScriptCore, has yet to be released; but, in the case of the ARM64 backend, there was a specific discussion about it on the mailing list, and in fact some iOS-specific ARM64 patches to LLVM languished seemingly due to the idea that "well, some day the ARM64 stuff will be merged from Apple", so it is already having "chilling effects".)

</comment><comment><USER28> This message conflates two issues in an unfortunate way. One issue is the licensing of GCC, the other issue is the architecture of GCC (how modular it is).

No one is arguing that GCC should change licenses. But he seems to think that making GCC more modular would somehow make it less free:

> If GCC were to change from a free compiler into a platform for nonfree > compilers, it would no longer serve the goal of freedom very well.

There are two embedded assumptions here. First, that making GCC more modular would result in people creating non-free compilers with it (presumably by connecting a non-free component with GCC using an IR rather than linking directly, to get around the GPL). And second, that such use would become more prevalent than just using GCC itself (which is what would "change" GCC from a free compiler into a platform for nonfree compilers).

I imagine a few people would use GCC components that way, if it became more modular. But would that use be a significant one? That's unknown. And would that use "no longer serve the goal of freedom"? If a large number of nonfree tools appear that generate and consume a GCC IR, that could boost GCC as well.

The GPL seems to be able to defend freedom just fine for all the other gnu software, even the modularly-architected projects. I don't see why it can't ultimately do the same for GCC.

<comment><USER29> I've seen the argument made that somehow RMS and the gcc developers are against making gcc more modular. Where is everyone getting that idea, because that's not what I'm reading.

Indeed, this quote from David Edelsohn in response to ESR seems to indicate they _are_ interested in making the gcc more modular:

>GCC is working toward re-factoring its code base toward a more compositional approach for "toolification". One can look at presentations from the recent GNU Cauldron 2013 for discussion of the topic.

So what am I missing?

[1] -- [http://gcc.gnu.org/ml/gcc/2014-01/msg00212.html](http://gcc.gnu.org/ml/gcc/2014-01/msg00212.html)

<comment><USER30> "Anything that makes it easier to use GCC back ends without GCC front ends--or simply brings GCC a big step closer to a form that would make such usage easy --would endanger our leverage for causing new front ends to be free.

Because of this, the GNU Project will in all probability not install such changes, should they be available. This statement reflects a firm conclusion based on a decade of thought."

[http://gcc.gnu.org/ml/gcc/2000-01/msg00572.html](http://gcc.gnu.org/ml/gcc/2000-01/msg00572.html)

<comment><USER31> That's 14 years old. The GP's message is from this year.

</comment></comment></comment></comment><comment><USER32> He's basically saying: "We must avoid design decisions that allow users to do X, because we disagree with X".

Everyone has their own definition of "Free", but to me that seems very similar to Walled Garden decisions regarding my freedom as an end user. You could just as easily say:

"We don't want to allow unsigned code to run, because we disagree with not signing code"

I guess the difference is that you can fork gcc and start a parallel project. Or you can just let it die as llvm and clang become more and more efficient.

<comment><USER33> Is this still surprising or non-obvious, after decades of GPL vs BSD flamewars (and, in particular, discussions on which one is truly "free")?

GPL _is_ restrictive and defending users' freedoms _is_ the exact reason for this. If you care about that, welcome to the GPL side; if you don't want the imposed restrictions but also ready to stop enforcing (through restrictions) GPL-granted freedoms - BSD and company await you.

</comment></comment><comment><USER34> Stallman consistently ignores the free market when writing about software freedom. What users want, the free market will provide. If they want customizable software, the market will give it to them. If they only want feature X, the market will give it to them. If they want interop., they will get that too. If they don't care about modifying the source code, well, people won't offer it.

The GPL is not what allows users to get what they need from software or technology. It's the market. As long as you have a free market, with able competitors, you don't need the GPL, and the whole discussion of "free software" is a red-herring.

Stallman's initial experience with closed software was not in a free market, so I can see how he's grown up with a colored view.

<comment><USER35> ESR, is that you?

All you did was repeat "free market" a bunch of times. Congratulations.

<comment><USER34> Allow me to continue, then. Stallman's original problem was essentially, "I had a broken car once and I couldn't get the part I needed to repair it. That sucked, so all manufacturers should provide everyone with all the information needed make any replacement part."

In today's world that problem really doesn't exist anymore. Software is a mass market product, and the software that is produced already conforms to what people want pretty well. Sure, I'll take cheaper parts for my car, but on the list of humanity's problems, non-GPL software is very, very low.

<comment><USER35> Your ignorance is baffling. I won't continue to humor it.

</comment></comment></comment></comment><comment><USER36> What many GPL supporters fail to understand is that GPL doesn't hinder or hurt big companies at all. If they find a GPL-licensed piece of software they need, they just pay their developers to make another proprietary one. With the exception of huge projects like Linux, it's a rounding error for them.

No, the only ones the GPL hinders are small-time freelance devs and small devs shops who are trying to make a living. Often, these are the same devs who are leading open source projects of their own. When they need to create a proprietary project to pay the bills, a GPL-licensed library is usually the end of the road for their project, since they won't have the manpower to replicate it on their own.

Aside from these issues, do we really care that we can't access the source of Subtle Text? As long as it's got a good API, I don't see the big problem. Don't get me wrong, I'm a strong supporter of open source, and have realized numerous modest projects under the MIT license. But proprietary projects, even ones that use my MIT code, don't offend me to the core like they do RMS and co-ideologues (incidentally, I feel like I'd really get along with RMS as a person, even if he might shun me).

<comment><USER37> tl;dr: "I disagree with the core principle of the FSF and the GPL".

</comment></comment><comment><USER35> Nothing particularly new here, but it's another reminder about the actual goal of Free Software. A lot of people still don't understand the major distinction between Free Software and Open Source.

</comment><comment><USER38> Every once in a while, RMS makes a statement that _doesn 't require translation to avoid seeming ridiculous:_

"When any program fosters non-free software, that works directly against the overall goal.

"Copyleft is our method of making sure that our free software does not generate nonfree competitors which consist of our code plus something else that is off limits to us."

[http://gcc.gnu.org/ml/gcc/2014-01/msg00208.html](http://gcc.gnu.org/ml/gcc/2014-01/msg00208.html)

</comment><comment><USER39> > The values of free software are fundamentally different from the values of > open source, which make "better code" the ultimate goal.

I want to live in a world where innovation thrives and survival of the best technology reigns. Because the ultimate point of technology is to serve humanity by making our lives better. So stifling innovation just so that everyone has access to source code is backwards.

<comment><USER40> The rough line of reasoning here is that non-free software will, eventually, allow business tactics which run counter to software thriving and the best technology reigning.

</comment></comment><comment><USER41> > [Clang and LLVM] have been supported by Apple, the company which hates our > freedom so much that its app store for the ithings _requires_ all apps to be > nonfree.

It's worth pointing out that GCC also "has been supported" by Apple, especially around PowerPC support and the PFE implementation. If you can get past the insane "War on Terror" rhetoric, that is.

<comment><USER42> It's worth pointing out that Steve Jobs at NeXT was a prime example of the benefits of a policy against proprietary linking as Jobs tried to have GCC be the backend of their (NeXT's) proprietary ObjectiveC front end.

He (Jobs) was not allowed to do this due to the licencing (GPL) which is what led to GCC getting a ObjectiveC frontend merged which was then available to all GCC users.

Had Jobs had his way, only NeXT users would have had the benefit of the ObjectiveC front end while NeXT would have enjoyed the benefits of the GCC backend.

<comment><USER43> Well, when you spin it like that... I'm no Steve Jobs apologist, but I think it's important to get the facts straight. NeXT wanted to distribute the frontend as .o files which the user would link with the backend, true. Now, the way you present it makes it seems as though NeXT was hell bent on having a proprietary frontend, but were strongarmed by the GPL to release under the GPL. What actually happened is that Jobs asked RMS if he thought it would be OK to distribute the frontend as .o files, to which Stallman said that it probably would be OK (from a legal standpoint), but then consulted a lawyer who told him that the judge would probably think this is not OK. So RMS then tells Jobs that FSF _believes_ this is not allowed by the GPL. Then NeXT produces GPLed frontend. Notice how smooth all of this went. No attempts of subversion by NeXT or disputing FSF's opinion, they asked, were given a legally worthless negative opinion which they accepted and produced a free frontend. So yes, technically it happened because of the GPL (but only on an assumption that the judge would accept FSF's lawyer reasoning) but based on what actually happened there is no evidence of Jobs wanting to "have his way". If Jobs "hated" "our freedom" and the GPL was the only thing that stood between us and slavery as RMS likes to think, this would unlikely go without any friction whatsoever.

Sources for what happened: [http://www.gnu.org/philosophy/pragmatic.html](http://www.gnu.org/philosophy/pragmatic.html) [http://www.tikirobot.net/wp/2008/11/22/why-gcc-has-a-free- ob...](http://www.tikirobot.net/wp/2008/11/22/why-gcc-has-a-free-objective-c- frontend/)

EDIT: Another source, the first paragraph is telling: [https://groups.google.com/forum/#!topic/gnu.misc.discuss/_pB...](https://groups.google.com/forum/#!topic/gnu.misc.discuss/_pBZdo_bXPc)

</comment></comment></comment><comment><USER44> I am surprised he isn't railing against all the folks selling GCC for extortionate rates to the embedded community. IAR, KEIL, others, $3,000 - $6,000 for a "development tool" which is 99% gcc and 1% some startup code the vendor wrote. Nice margins I guess.

<comment><USER45>
      >> 99% gcc and 1% some startup code

Modifying and selling gcc to compile code optimized for lots of different underpowered processors sounds like an unattractive business model to me, given (I assume) a relatively small number of customers for any given microprocessor type and (again I assume) a significant amount of work for each microprocessor type supported.

<comment><USER44> Sort of. There are folks who have C compilers optimized for smaller processors, my personal favorite are the folks at ImageCraft. That isn't what I'm talking about.

I'm talking about people who take the community developed gcc (which they haven't "optimized" at all) and Eclipse config, and some of their own startup code crt0.a + linkerscript. And then put that together as their tool for $3,000. I'm sure its a wonderful business for them.

RMS was railing that clang wasn't embodying the spirit of "free software" because it parts could be proprietary, but he doesn't rail against those people like IAR who keep their parts proprietary but are riding on the shoulders of the community doing the heavy lifting.

I find that notable because I like what the folks are trying to achieve with clang and do not like what IAR has done with gcc. Granted it is entirely my own personal pain point.

</comment></comment></comment><comment><USER46> "The existence of LLVM is a terrible setback for our community precisely because it is not copylefted and can be used as the basis for nonfree compilers -- so that all contribution to LLVM directly helps proprietary software as much as it helps us."

See, this is why I hate Stallman's position on anything software. It's based on irrational thinking derived from a flawed ideology.

Since LLVM is not copylefted, EVERYONE is able to benefit from it, and that is good... FOR EVERYONE! For example, NVIDIA based their CUDA compiler on LLVM because it was not copylefted. Thanks to LLVM not being copylefted, NVIDIA was able to reduce their R&D time, provide customers with great technology, and consequently sell more products. The money that proprietary companies make from being able to incorporate non-copylefted software into their products has a ripple effect. Companies like NVIDIA can provide more jobs, LLVM developers become more highly sought-after, customers benefit from more rapid advances in the technology, and the entire LLVM-based community benefits from work that filters back down from companies like NVIDIA into the mainline LLVM repo.

Stallman's argument that projects like LLVM help proprietary companies take away users' rights is simply not true. There would be little benefit for a company like NVIDIA to take from the LLVM community, and be unwilling to give anything back. For one, it would be so much harder for them to hire good people out of that community, which they will desperately need in order to drive their products forward. But look at what has actually happened: NVIDIA are releasing the code to their LLVM-based compiler! Why? Because it doesn't really benefit NVIDIA to enforce a proprietary lock-in on their customers.

As for his argument against the Apple App Store, how is it really of benefit to anyone if binaries are "free" the way he thinks they should be? Does anyone really want or need the ability to install a "free" binary onto their iPhone/iPad? Why is wrong for companies to want to protect their proprietary platforms and technology (and also their users) from potentially malicious/illegal code, or code that might brick the device? Oh, that's right! Because Richard Stallman thinks that companies should not be allowed to guard any of their interests when it comes to software. This is an obnoxious opinion, and detrimental to real user freedom.

I do not think the world will suffer AT ALL if clang/LLVM has doomed GCC to irrelevance. I was actually glad to read Stallman's email because it signifies that clang/LLVM really are eroding GCC's relevance, to the point where even Stallman is feeling it. Soon, Stallman and his FSF cronies will be relegated to the footnotes of computing history where they belong.

<comment><USER47> > For example, NVIDIA based their CUDA compiler on LLVM because it was not > copylefted. Thanks to LLVM not being copylefted, NVIDIA was able to reduce > their R&D time, provide customers with great technology, and consequently > sell more products.

Counterpoint: Say I'm writing a new OS, and want to use the hardware I bought. How do I port the CUDA compiler? Porting GCC (or LLVM) should be pretty easy -- but that doesn't help me, because I can't use my software on my hardware.

This is what RMS has a problem with. You argue that if they had to contribute their changes back, we would all have been worse off. I'm not so sure. I think it's more: Nvidia could get lots of code for free and made more money, than if they had to write that code themselves. Great for Nvidia, yes -- but it's a bit of a tautology: If I give you something for free, and you can turn around and make money off it -- that _is_ good for you. It's a bit of a stretch to say it's a lot better for me.

<comment><USER46> Do you not benefit from newer technology delivered at lower costs? Do you not benefit from more paying jobs to work on open source software?

What RMS has a problem with is the fact that companies don't (and shouldn't) always tell you how their products work. Just because you bought something doesn't give you the right to know all of its secrets. If he (or you) is not ok with that, then fine, he lives in America, he has the freedom to disagree. His solution, however, is to try to restrict the freedom of people and companies when it comes to software and software reuse. That's what I have a problem with.

Thankfully, I think LLVM and clang represent the coming ultimate triumph of the Berkeley school of software freedom. The clouds of the Cambridge school have overshadowed the software world for far too long.

<comment><USER47> As I try to support companies that work for a more open architecture, no, I do not benefit from proprietary advances by Nvidia. I would also argue that free research, open technology in general leads to lower costs and higher productivity than closed equivalents -- while they might lead to lower profits (and less concentration of wealth). But since I don't own Nvidia, I don't benefit from their profits.

RMS has just made a choice that he'd like to do his bit to enforce openness and freedom. Everyone is still free not to use GPL software, just as they are free to not use proprietary operating systems. And without the FSF and RMS, I think we'd have a lot less choice in that regard.

There's lots of paying jobs for working on free software too -- we can (and do) have both.

As for:

> Just because you bought something doesn't give you the right to know all of > its secrets.

Perhaps not. But I'd argue you should have the right to use it as you see fit. I don't need to know all the details of a chair to sit on it, use it to reach the top shelf, or burn it to keep warm -- to use it as intended by the manufacturer and otherwise. I do need to know a bit about my graphics card to use it efficiently.

</comment></comment></comment></comment><comment><USER48> I respect RMS a lot and really appreciate his steadfast promotion of free software (copyleft). But isn't it becoming a moot point in this day and age? A decade or two ago the software tools were important and since all of them were proprietary GNU was sorely needed and all the work done by people on GNU and Linux really was needed. But now the concept of open source and free software (not copy left but just free) has really taken roots and businesses have evolved to circumvent the revenue loss from giving away software. Instead they now created a new closed ecosystem - cloud and hosted services. By moving them away from people's computer they have control and we are pretty much in the same situation as we were a decade ago. So we need a new idea of "copyleft" that applies to services and hosted platforms and not just tools. Isn't it where the battle needs to be now with regards to freedom (as RMS puts it)?.

<comment><USER49> And RMS recognizes this. See [https://www.gnu.org/philosophy/who-does-that- server-really-s...](https://www.gnu.org/philosophy/who-does-that-server- really-serve.html)

</comment></comment><comment><USER50> "[The Clang and LLVM developers] object to the measures we have taken to defend freedom because they see the inconvenience of them and do not recognize (or don't care about) the need for them."

I would call this an Orwellian use of language. Stallman and the FSF have adopted a particular definition of "freedom", which is a good deal more particular that the usual definition, but they seem to consistently act as if it was the one and only definition, and therefore that anyone opposed to it is opposed to freedom.

Nevertheless, on one reasonable definition of "freedom", permissive licenses are more free than copyleft licenses. On another reasonable definition (the FSFs), copyleft licenses are more free than permissive licenses.

The statement quoted above implicitly assumes that there is only one definition of freedom, and it's the one the FSF favors.

</comment><comment><USER51> <yet another reminder that Richard Stallman is bat shit crazy but a necessary vocal FOSS proponent for counterbalancing closed-source interests>

<comment><USER52> Obviously you've never read RMS, because "open source" is one of the things he vehemently fights against.

</comment></comment><comment><USER53> How does Stallman fund his life? I'm assuming he gets paid a salary. So he's ok with doing work for money himself, but not ok with other people monetizing their efforts in a slightly different way. I don't understand.

<comment><USER35> He does not get paid a salary, afaik. The FSF certainly does not pay him. In the old days he made his money by selling copies of Emacs and documentation and such. These days, he travels the world and speaks at various institutions. Monetization is _not_ at odds with free software, btw. In fact, software that cannot be used commercially is nonfree! There is no moral objection to a programmer being paid to write software. The objection is to software licensing that denies user of that software the "four freedoms".

[https://www.gnu.org/philosophy/free- sw.html](https://www.gnu.org/philosophy/free-sw.html)

</comment></comment><comment><USER54> I can sympathize with RMS's argument that companies like Apple & Google can create plugins and modules that are proprietary because LLVM/Clang has a non- copyleft license.

However, it would not be in any contributing companies favor to avoid pushing changes back up stream. The pool of people work together to solve really hard problems and they all need to be on the same page. Otherwise that work will become extremely hard to maintain when merges do need to happen.

Maybe I do not understand the licensing, but since LLVM is "more" free, couldn't RMS and his FSF members create a GPLv3 version of it that meets his goal?

<comment><USER47> > Maybe I do not understand the licensing, but since LLVM is "more" free, > couldn't RMS and his FSF members create a GPLv3 version of it that meets his > goal?

Yes, if you could get together a lot of people you could fork llvm under a different license -- GPL or proprietary. But forking to GPL would a) be a bit rude, and perhaps more importantly b) most likely just be a dead fork. You would have to contribute a fairly significant patch (I can't think of anything that would qualify at this stage of LLVM/Clang maturity) under GPL for "most" to want to use your version.

So, no, they can't practically do that, even if the license permits it.

And at any rate; c) Since the _architecture_ of LLVM allows proprietary extensions, even if Clang/LLVM was under the GPL big changes would be needed to "force" the GPL on things like CUDA compilers etc.

(This is the point that ERS originally raised, arguably with limited knowledge of actual modern architecture of GCC, that GCC is artificially kept monolithic and by extension tied to a technically inferior architecture).

See also:

[http://gcc.gnu.org/ml/gcc/2014-01/msg00181.html](http://gcc.gnu.org/ml/gcc/2014-01/msg00181.html) [http://gcc.gnu.org/ml/gcc/2014-01/msg00178.html](http://gcc.gnu.org/ml/gcc/2014-01/msg00178.html)

</comment></comment><comment><USER55> What are the proprietary compilers that LLVM enabled? Are they significant?

Stallman's claim about the practical difference between gcc and LLVM is interesting but I'd like to know more details.

<comment><USER56> And more importantly, does their existence _help_ or _hinder_ the work done on LLVM?

</comment></comment><comment><USER57> "hates our freedom"

I tuned out at this point. Polemics tend to bore me and are a fantastic way of turning people off of the rest of your message. (see also: All FSF anti- Windows campaigns)

<comment> vezzy-fnord Is it really that false, though? I agree it reeks of demagoguery, but it's still not that far from the truth. Where freedom refers to digital freedom, of course.

</comment></comment><comment><USER58> The problem I have with the copyleft movement is an impression that they want developers to have _less_ freedom than end users. As an end user I get free access to all GPL source code, but as a developer I can only use that source code to make new software if I follow certain rules.

It's as if there was a "free recipes" movement arguing that since their method for cultivating cayenne peppers was under GPL, KFC should be forced to tell everyone how to make their chicken.

<comment><USER59> The GPL/Four Freedoms more or less rejects the distinction between developer and user.

<comment><USER58> That seems to make about as much sense as rejecting the distinction between cooking chicken and eating it.

<comment><USER12> I put chicken on my plate. I taste it. It is not salty enough. I add some salt.

Obviously, we wouldn't call this "cooking chicken", but I'm participating in the creation of my final meal. We can add arbitrarily more, arbitrarily complex steps and ingredients.

It totally makes sense to say, "this person is developing software" or "this person is cooking chicken". What is rejected is the notion that eating the chicken means you're not taking any role in shaping it except those roles explicitly given to you.

When I make boxed macaroni and cheese, I add nutmeg, and the result is way better. It's a good thing I have access to enough of the guts of the recipe to make that change (... or maybe it would be better if I ate less boxed macaroni and cheese, but I think you follow the metaphor).

</comment></comment></comment></comment><comment><USER60> This argument is moot. Proprietary software doesn't have to live at a dissonance from FLOSS software, nor does free software protect the integrity of freedom. So there are proprietary compilers being derived from LLVM... How does that prevent somebody from throwing out the proprietary compiler on principle in order to support the open source alternative?

Forcing somebody to respect your ideological beliefs regarding freedom is just as much a wolf in sheep's clothing as a notion to force somebody to bend to your will regarding how the software you use may function by design.

There is a place for open source licenses and there is a place for free software licenses. To say free software protects the interest of technological innovation better than open source software can is a position based on a foundation of ignorant dissension.

Science has little use for politics playing a major role as a core value. 99% of all people Using software could care less about the freedom of software, and the 1% who do care are split between the engineers who value the ideals of innovation by collaboration, and the executives who understand that too much freedom means everybody gets stuck with a bounced cheque.

<comment><USER42> Your argument is 'moot'.

Free software is no more 'forcing' anyone to respect your ideological beliefs than proprietary software is, in neither case you can 'prevent anyone from throwing it out on principle'.

Proprietary limits the rights of end users, you are free to not use proprietary software.

Free software secures rights of end users, you are free to not use Free software.

</comment></comment><comment><USER61> I think Stallman has very much lost sight of who his true 'adversaries' are. I consider myself a strong proponent of open source software but there are reasons - imagined or real - for not making everything open source or for using a permissive licence.

Not using a permissive licence for a software effectively bars most companies from using that software. In my opinion licences such as Affero GPL aren't free at all because they limit what you can do on your own machines. I've experienced this first hand with very useful libraries such as iText.

Sure, iText und many other AGPL-licensed libraries are available under an additional proprietary licence. However, this isn't very much about free software either but simply another sales argument: "You've got to publish the valuable source code of your application unless you pay us a lot of money. In that case: Screw free software!" Sounds a bit like blackmail to me.

I understand that the FSF is an ideological movement that's based on strong principles. Stubbornly insisting on these principles without considering pragmatic concerns does a disservice to free software adoption, though.

</comment><comment><USER62> I just don't get why GCC needs to cripple itself; shouldn't the (in)ability to incorporate GCC be handled by the license? It's a legal issue, not a technical one. Sure, making it easier to plug in to other programs enables proprietary software developers to do so as much as it does free software developers, but the former is still illegal if the software is released that way.

</comment><comment><USER63> In practise, has LLVM/Clang turned into an unfreedom-fest? I haven't noticed as much. It seems to be remaining free in practise.</comment>


CIA cyber weapons stolen in historic breach due to 'woefully lax security' - <AUTHOR> https://www.cnn.com/2020/06/16/politics/cia-wikileaks-vault-7-leak-report/index.html <comment><USER2> [https://news.ycombinator.com/item?id=23538903](https://news.ycombinator.com/item?id=23538903)</comment>


Browser-share-change-2010-2011.png (PNG Image, 902x616 pixels) - <AUTHOR> http://i.zdnet.com/blogs/browser-share-change-2010-2011.png <comment><USER2> It should be noted that Safari is including the iOS market share, too, while Android browser market share is not included in there.

The "growth" of Safari is not really growth of the desktop browser's market share but the addition of Safari Mobile market share, which wasn't included in previous market share stats together with the desktop Safari.

 _"Among other browsers, only Safari has been able to grow over the past year, creeping up roughly 2.6%, largely on the strength of growth in iOS devices."_

The full article from a few days ago:

[http://www.zdnet.com/blog/bott/google-chrome-continues- its-r...](http://www.zdnet.com/blog/bott/google-chrome-continues-its-rapid- rise-ie-and-firefox-fall/3604)</comment>


Design App Creates Beautiful Photo Collages on Your Phone - <AUTHOR> http://mashable.com/2013/12/18/bazaart-mobile/ <comment><USER2> Looks cool. Android version any time soon?

<comment><AUTHOR> Thanks! Android is on our roadmap. Stay tuned :)

</comment></comment><comment><USER3> Very Cool! Love it!

<comment><AUTHOR> Thanks so much! Appreciate it :)</comment></comment>


Good Lisp code to read - <AUTHOR> http://www.reddit.com/r/lisp/comments/caiim/good_lisp_code_to_read/ <comment><USER2> Hadn't seen this one before:

[http://www.cs.northwestern.edu/academics/courses/325/reading...](http://www.cs.northwestern.edu/academics/courses/325/readings/graham/graham- notes.html)

Useful stuff in there.

<comment><USER3> As for Graham's preference about recursion, a Lisp interpreter/compiler should convert recursive loops into queues.

<comment><USER4> loops into queues? Control flow into a data structure?

If you're gonna a make a 'sufficiently smart compiler' argument, get it right. I think you meant "tail calls into jumps".

<comment><USER3> Well, when I want to convert a function that uses recursion but the stack isn't big enough, I make it have a queue where each new item goes on the end, and the next item goes from the front of the queue. This way the stack is replaced by the heap (which is much bigger!).

</comment></comment></comment></comment><comment><USER5> Here are a few good authors, reading their software is very educational - a) Edi Weitz - <http://weitz.de/>. Writes very clean and well documented code. b) Paul Graham - The On Lisp book examples, <http://arclanguage.org/install> (for the source code of news.ycombinator ) c) The Code in - "The Little Schemer" - the best introduction to the lisp way of thinking.

</comment><comment><USER6> "Good X code to read" references are always useful.

I am looking for beautiful Scala code to read. Any pointers greatly appreciated.

<comment><AUTHOR> Beautiful is relative, but I am quite proud of my implementation of a BASIC DSL in Scala. <http://github.com/fogus/baysick></comment></comment>


iPhones 'disabled' if Apple detects third-party repairs - <AUTHOR> http://www.bbc.co.uk/news/technology-35502030 <comment><USER2> When you have car trouble, you can go to the dealership or the mechanic you trust. It prevents the dealer from overcharging. Why can't we have the same thing with computer gadgets, especially since they try to build walled gardens and tightly locked hardware.

</comment><comment><USER3> That's deeply troubling. Does this issue affect iPads too? I have one I got at work I had the screen repaired on at the mall. It's bugging me to update the OS and now I'm worried it'll lock up just the same :S

<comment><USER3> I think I can infer an answer to my own question from this article: [http://www.theguardian.com/money/2016/feb/05/error-53-apple-...](http://www.theguardian.com/money/2016/feb/05/error-53-apple- iphone-software-update-handset-worthless-third-party-repair)

Apple's response was this is due to security stuff with the touch ID sensor and since my iPad doesn't have one, it shouldn't be affected.

<comment><USER4> You're correct, a non-touch id iOS device won't be affected. This is specific to the security involving the match cabling and sensor used in touch id iOS devices only. Everything else can still be replaced third party as this actually IS a security issue. This also shouldn't be news as Apple pointed this out when touch id first came out in that the buttons would not be replaceable except via apple (which if I'm correct, at the time they didn't discus replicability being viable at all).

<comment><USER5> So since it's a "security issue", the only resort for Apple was to BRICK user's phone he paid huge amounts for? Why couldn't they just disable the entire fingerprint system (only) duly informing the user and restoring the phone to factory settings (erasing everything) at the most if needed?

<comment><USER5> Seriously? Downvoting this because you can't hear anything wrong about your favorite company?</comment></comment></comment></comment></comment>


Ask HN: Best chat client for company use - <AUTHOR> I would like to introduce a chat client into our company. Writing mails and dealing with the overhead for something like "no, make it #3c3c3b" just slows everything down.
Right now I am probably the only one using the "fancy" "new" stuff like Slack and as I work for a quite traditional printing company it will need some time to get new things up and running.
Ease of use is a big point and it must run on almost everything (old Macs + Windows systems but also the newest of both worlds, tablet support would be great).
Now I wonder whether Slack is the way to go because it got channels, which I find great, or if there is something better.
I even thought about setting up an IRC server and using that, but... well... traditional company...
Any ideas on this? <comment><USER2> Slack, mattermost</comment>


Obama Administration Declares War on Franchisors and Subcontractors - <AUTHOR> http://www.cato.org/blog/obama-administration-declares-war-franchisors-subcontractors-staffing-firms <comment><USER2> Apocalyptic headline aside, all this really does is prevent corporations from having their cake and eating it, too. If you're directing (and profiting from) the labor of a large population of workers, you can't hide behind franchise or contract agreements to avoid labor law obligations. If it's 'war' at all, it's a war on a common form of corporate labor fraud.

</comment><comment><USER3> I have a friend who works for a major media company, sort of, he works for a staffing agency that puts him at a desk at the media company where he works alongside the media company's employees doing the same work with an email signature saying he works for the major media company even though he technically doesn't...he doesn't get paid holidays or other benefits the media company employees get bc he technically works for the staffing agency..would this change that set-up?</comment>


50% of US engineering students drop out - Why? - <AUTHOR> http://dondodge.typepad.com/the_next_big_thing/2008/11/50-of-us-engineering-students-dropout---why.html <comment><USER3> Because it's far easier for a smart person to get a business degree that pays just as well, if not better?

Because a degree in engineering is a fast-track to career marginalization by the frat-boy MBAs who see technical workers as interchangeable cogs?

Because engineering virtually guarantees you a minimum of social interaction in college, when your peers are actually _enjoying_ their lives?

Because you'll run smack into the wall of age (and possibly sex) discrimination, right when you should be entering your prime earning years?

Because you've got to eternally compete in the job market with 20-year-olds who will always be more proficient with new technologies, and willing to work at lower wages?

Let's be real: as a career, engineering sucks. We shouldn't scratch our heads and act totally _shocked_ when young people turn their noses up at the prospect of working like a dog until they turn 40, only to be laid off by the guys who played frisbee golf and drank their way through school.

<comment><USER4> On the other hand, as an engineer you can:

-Work for a big company, a small company or just work for yourself.

-Work from anywhere in the world you can take a laptop and an internet connection

-Use free tools to create a product you can duplicate (and sell) infinitely

-Be a part of an extremely active and passionate community that is on the cutting edge of the industry that is driving the global economy

Where else are you going to find that much flexibility and potential?

<comment><USER5> You don't need a degree for any of those things.

While 'Engineer' is a set that may overlap 'Open Source Programmer' (what you described), it's definitely not an equivalent set, and I wouldn't even say it's a superset.

<comment><USER6>
      Clean Room Technician: You know what they do with engineers when they turn forty?
      [to Aaron, who shakes his head]
      Clean Room Technician: They take them out and shoot them.

</comment></comment></comment></comment><comment><USER7> I agree that there are probably a lot of improvements to be made in undergraduate engineering education.

However...

I think it's a big mistake to assume that every engineering dropout represents a failure of the college, or even a failure of the student. Maybe it's simply a question of incoming students not having the slightest idea what an engineering degree is all about. I seem to remember a lot of people who signed up for engineering _before_ they discovered that you need to learn a lot of fairly difficult math and physics to be an engineer, after which they switched to something else.

That's why the dropout rate is so much smaller at MIT and other elite engineering schools: The students are preselected for their affinity for math and/or physics. For example, I can't help but notice that Olin's "redefinition of engineering education" includes this bullet point:

 _Applicants are required to spend a weekend at Olin before acceptance. During the weekend they participate in team engineering projects to assess their teamwork and technical skill._

Note: "Assess their technical skill." Now, I'm not saying that Olin's not a great school, but if you get to hand-pick the students, and then _you give them a 100% scholarship_ , having a low dropout rate isn't much of an achievement. I assume with confidence that the vast majority of calculus- phobic people get weeded out before they ever get to Olin. At least, I hope so, because otherwise this practice would be cruel and unusual punishment:

 _Other engineering schools require students to take foundational courses in physics, thermo-dynamics, chemistry, and math for the first two years. Olin introduces these disciplines as needed throughout the 4 years._

If there's anything worse than hitting the wall in year one, it's being encouraged to go through a year or two in the major before you hit the wall.

</comment><comment><USER8> That's because our system somehow rewards real estate speculators, mortgage brokers, middle management, lawyers and healthcare professionals way more than it rewards engineers. I don't really know why this is happening, but I am sure you all have met a few MBA types who have "the vision" and looking for "just" a code monkey to build their fortune. This is also the reason why GE/Ford/Chrysler continued building shit for decades, giving out multi-million dollar bonuses to their top-tier management.

Someone suggested it's because we live in a "services economy" not a "product economy" and, therefore, the value of engineering is declining. There is some truth in that: google isn't an engineering firm, they are in the entertainment business, very much like ESPN, Fox and those annoying guys in big hats at your local Tres Amigos.

<comment><USER9> That's funny, it's a routine complaint at Stanford that all the campus job fairs are filled with companies recruiting engineers and nobody else. :p

Our system also rewards engineers way more than teachers, graduates who go into public service, and-- at graduation time, at least-- anyone with a humanities degree. I'd worry about fixing compensation for teachers before rewarding engineers...

Google is an engineering firm, they just happen to make money from ads.

<comment><USER10> Compensation for teachers is fantastic, as long as you compare it properly to compensation for other workers.

To begin with, multiply by (12 months worked by others)/(9 months worked by teachers).

Then add in the value of the state health plan, usually fantastic.

Then add in the real value of a defined benefit pension plan (chances are you only get a defined contribution plan) available in most states.

Then add in the value of tenure, which I'll tentatively estimate as effectively doubling the salary (1).

All that is actually pretty good for a group of people who tend to come from the bottom of the barrel cognitively ([http://www.ncsu.edu/chass/philo/GRE%20Scores%20by%20Intended...](http://www.ncsu.edu/chass/philo/GRE%20Scores%20by%20Intended%20Graduate%20Major.htm)).

The idea that teachers are underpaid is a myth propagated by teachers unions and their lackeys in the media.

(1) Many tenured professors could easily double their salary by quitting, but choose not to.

<comment><USER11> Your doubling the salary for teachers due to tenure is questionable. The reason tenured professors don't quit is only partly due to tenure, also due to the fact that they find being a professor more interesting than the other work. Regular (grade-school to high-school) teachers don't exactly have tenure (though for those in most unions it is close), and they probably don't have the same employment options outside the profession.

I'd give a multiple of 1.2.

<comment><USER10> It's certainly questionable, I didn't mean to imply it was more than a rough guess. It's true, professor jobs at research universities have an "interestingness" premium, so part of the multiple comes from that.

On the other hand, lack of external employment options makes tenure MORE valuable, since it raises the risk premium the teacher would demand to quit the tenured job.

Since my financial math is rusty, I won't try to compute the actuarial values of these revenue streams, however.

</comment></comment></comment></comment></comment><comment><USER12> A 50% dropout rate may be a sign of health - it means the courses haven't been watered down. I'd be far more worried about a 95% graduation rate. States universities are less selective with general admission, so the engineering departments have to screen out the students who aren't up to the challenge. MIT pre-screens everyone so it's not fair to compare it to state schools.

<comment><USER13> I think the other problem here is that we have no information available about other programs.

Isn't it just as likely that people drop out of all or many programs at relatively the same rate? Psychology, Pre-Med, Law, Business, Journalism, Poli Sci, etc.

These are undergraduates, after all.

</comment></comment><comment><USER14> If I recall correctly, something like 20-30% of undergraduates drop out during the course of their degree. Engineering is generally the most difficult program, so you'd expect that the dropout rates would be higher. I suspect there's also a number of transfers to less demanding programs baked in there.

Why should we want to minimize drop-out rates anyway? It doesn't necessarily indicate there's a problem with the curriculum - engineering _should_ be a tough program. The only way you could minimize drop-outs would be to prevent all but the strongest students from entering in the first place. I think it's telling that the highly-selective schools have very low drop-out rates. Is MIT's methodology all that different from less selective universities? I doubt it.

</comment><comment><USER15> "At the recent Web 2.0 conference John suggested that the US should staple a Green Card to every foreign student's engineering diploma and encourage them to stay in the USA."

I really agree this. It's hard for a foreigner to work here.

<comment><USER11> It isn't really an unmitigated good, though. By increasing the incentive for a foreigner to get a US engineering degree, it would increase the competition for those slots, and result in fewer US students getting degrees. Of course, if the foreign degree holders stay in the US, that might be OK, but things must be thought through carefully. For example, presumably at least some people not interested in engineering, but interested in a green card would get degrees.

Mixing up incentives is a dangerous business. I would prefer a more mundane approach, like increasing the number of H1B visas.

<comment><USER16> Keep in mind that all schools have a foreign student quota - i.e. slots that will either be filled by foreign students or not filled at all. Foreigners do not compete with domestic students for college enrollment at all.

I would prefer an approach that is more realistic and honest about the state of immigration - the H1B is organized as a work visa, not an immigration visa. What the US needs to do is establish means for _direct immigration_ for qualified, professional people. The problem with H1Bs _all_ stem from the fact that, if the recipient desires permanent residency, he/she is essentially a slave to the sponsor company for 5+ years. This encourages abuse both in employee treatment and in wages - which affects everyone.

If highly qualified people can simply _immigrate_ to the US and find jobs, without signing themselves into virtual slavery, we would all benefit.

<comment><USER11> > Keep in mind that all schools have a foreign student quota - i.e. slots that > will either be filled by foreign students or not filled at all. Foreigners > do not compete with domestic students for college enrollment at all.

Well, I _know_ that is false for grad school. (In my department, the percentage of Americans goes up during recessions, as the US applicant pool is stronger at those times. Yet enough Americans apply every year to fill all slots many times over.) I don't know about undergrad, but I would be very surprised if it were true for _all_ schools! Where did you get this information?

</comment></comment></comment></comment><comment><USER17> Because I would have gotten C's & D's in Engineering school working my ass off.

Because in business school I graduated with great grades, didn't do anything, and landed a pretty awesome job.

Undergraduate business school was somewhat worthless, but all the free time allowed me to learn how to start my own business and campus job hop like a mofo.

</comment><comment><USER18> Look like I'm showing up late to this discussion.

I'll just comment on the "stapling a green card to every engineering degree awarded to a foreign national idea."

I have no doubt this would increase the incentives for foreigners to study engineering in the US, but if we _only_ do this in engineering and not in medicine, law, business, art, humanities, etc... well then wouldn't we create an incentive for US citizens to avoid engineering degrees and instead go into areas that are insulated from foreign competition? It seems that this has already happened to some extent. If one of our goals as a nation is to increase the interest of our young people in science and engineering, we should at least consider the effect a program like this on their career choices, shouldn't we?

I'm not saying there's no room for debate on this subject, but I'm eternally amazed that pundits almost _never_ consider this possibility when making this recommendation.

(BTW, in "the world is flat", Friedman suggested doing this for all doctoral degrees, not just engineering...)

</comment><comment><USER19> I was hoping that Don Dodge would actually have some kind of technical background (because mixed technical/business backgrounds are in my opinion the best). Nope - accounting undergrad/MBA. Preach to someone else.

</comment><comment><USER20> The article fails to acknowledge that MIT and Olin have 2% drop-out rates because they are f*ng hard to get in in the first place.

The drop-out rate is directly proportional on how easy it is to enroll in a hard program.

The school I graduated from, FEI (in Brazil), has a very high drop-out rate in the first semester - about 50% on my freshman year, mostly due to calculus and physics. It's also regarded as a top private school in its field.

So, that's why those teachers are not being fired - because students pay for their first semester whether or not they stick around for the second one.

</comment><comment><USER21> Well, I nearly drop out recent two years. It is unbearable in university to see so many students who are 4th year and don't have basic skills in programming (i.e. comparing two double variables in C with == operator). As playing a while with profs, I am so confident that I have all the skills and knowledges I should know in the next 3 years. It is just had to stick on CS major when you had them all. The only reason I still here is that I am so desperately wanting to publish a good paper in next year.

<comment><USER22> That's a language issue and not a people issue. C also allows you to assign variable in if clauses, which can cause hard to find errors.

<comment><USER21> It is not a language issue. In some perspectives, you may say that it is a processor issue of handling float. But this is the fact of every nowadays processor. Languages don't have the responsibility to deal with processor's fault, people do.

</comment></comment></comment><comment><USER23> Any recent engineering grads here who can tell us if there really is a shortage? If you guys are getting multiple job offers with hiring bonuses, there is. If not, there isn't.

<comment><USER24> As class of 2005 grad (who incidentally goes to Olin), I have multiple offers w/ signing bonuses.

Whether this is a sign of a shortage, I am not sure.

<comment><USER25> It's a sign of a shortage of graduates that companies trust to be of a certain caliber. Either you have done something to distinguish yourself, or Olin has developed a track record that companies trust, or both.

</comment></comment></comment><comment><USER26> Because engineering is difficult.

<comment><USER24> I don't agree that difficulty is the reason for high dropout rates. Olin has long been lauded for it's almost zero dropout rate, but I will not use that to make my point since we have a very small sample size (300 people) and we are relatively selective, and therefore not representative of the average US engineering student.

Instead, lets look at ASU in this study: [http://www.foundationcoalition.org/publications/journalpaper...](http://www.foundationcoalition.org/publications/journalpapers/asee97/3553.pdf)

The study found that the top 5 reasons (as summarized on page 3) are:

1) reasons for choice of SME [Science, Math, Engineering] proved inappropriate

2) poor teaching by SME faculty

3) inadequate advising or help with academic problems

4) non-SME major offers better education/more interest

5) lack/loss of interest in SME ("turned off science")

Reasons 2, 3, 4 and 5 are directly related to failures of the institution. Sure, there are students who cannot comprehend the coursework, but those are few and far between compared to the numbers who simply do not receive the support necessary for them to succeed.

This study, along with many others, points to a common trend: we blame the student for being incompetent or unmotivated, instead of blaming the institution for not providing them the necessary help (that they are paying tens of thousands for).

<comment><USER10> Reasons (4) and (5) are not necessarily a failure of the institution. If a student likes dinosaur bones more than ODEs _after being exposed to both_ , how is that a failure at all? Students may have an incorrect idea of either science or their personal preferences, and college may correct these views. That's a good thing.

Another fact to note: I don't see "I'm not smart/hardworking enough to be an engineer" as even an option. It would be interesting to know what fraction of students flunked out or were barely able to avoid this fate.

Plus, I'm highly suspicious of the quality of this study. The authors appear to be morons:

 _...only the difference on the seventh ranked reason... was statistically significant (p=.019). ... However, another [statistically_ insignificant _] difference worth noting is..._

</comment></comment></comment><comment><USER27> It's not useful to compare raw numbers against India and China since their population is larger than ours.

Also, what % of total college students drop out? It's got to be near 50 (though maybe less for declared majors).

<comment><USER28> Furthermore, it's stupid to compare numbers of technical graduates. It's not the numbers that count but the quality.

Has there been any academic research on the average quality of technical graduates in the USA versus India and China? I don't mean just memorization of facts and formulas, but ability to creatively solve real-world problems. Perhaps that's impossible to objectively measure.

<comment><USER25> _"It's not the numbers that count but the quality._ "

For the short term economy (1-5 yrs), the quantity counts much more than quality. If Bank of America needs to hire 500 interchangeable Java programmers, they probably can't use or manage 10 excellent programmers instead. But for the longer term, a couple Sergeys and Zuckerbergs (or for that matter, Grahams and Morrises) are much more valuable.

</comment></comment></comment><comment><USER29> My theory is that a high percentage are forced out because there are incentives for doing so. Undergraduate programs are ranked based on the percentage of graduates they place in competitive graduate programs and top employers. Getting weaker students to change majors lowers the denominator.

Engineering and science faculties, in general, want to produce stars and have little interest in helping students along that find the material interesting but challenging.

</comment><comment><USER28> The Olin program looks pretty similar to what Harvey Mudd College has been doing for decades.

<comment><USER24> You are right - there are many similarities. In fact, our Dean of Faculty came from Harvey Mudd. I think that Olin has a bit more freedom to innovate, though, given it's young age (fourth graduating class this year). There is a joke around campus that no class has ever been the same for two years - <USER2> almost every case, there are significant overhauls that result from student feedback. While this makes things tumultuous (and of course there is no guarantee that change is good), it is clear that the profs are not willing to settle on something that is just "good" or "acceptable". Did you get this feeling at HMC?

I can't really make a more detailed comparison without more information about what aspects of Harvey Mudd you find similar.

</comment></comment><comment><USER30> I thought it was common knowledge that the only 2 useful B.S. degrees are C.S. (and related) and Finance (and related).

<comment><USER23> Biology is good if your grades are good enough to get into a professional program. Not so much otherwise.

<comment><USER31> Biology is worthless as a major; as long as you take the pre-med requirements, they don't care what your major is.

Granted, Biology requires a lot of the same classes, so it might be easier to be a bio major if you're already pre-med, but the biology degree itself isn't worth anything.

<comment><USER32> For the purpose of getting into med school, as long as you take the pre-med requirements, you are better off majoring in anything but biology.

<comment><USER23> That's news to me. It seems like majoring in anything else would be a waste of time because you would have to take more irrelevant classes.

<comment><USER31> Taking more irrelevant classes is probably harder (as I said), but because it's harder it is also more impressive and thus looks better on your resume (as rms said).

</comment></comment></comment></comment></comment></comment><comment><USER33> I know the wash-out rate at my school -- just during the "freshmen engineering" program was 50%. The next year, the wash out rate was 25%.

They don't want airline safety / nuclear reactor controls / bridges devices made by D students. And the best way to ensure that's going to happen is make the person really really really want to call himself an engineer. Its far easier to be a a liberal arts major and convince two girls to follow you back to your place.

</comment><comment><USER22> If my university only had a 5% drop out rate, I would have studied at the wrong university. If everybody get's a degree, everybody is equal and your degree is worthless.

</comment><comment><USER34> I am not sure about the exact numbers, but i suspect it is the same in Germany where I have been studying.

(at least in Stuttgart / Germany)

</comment><comment><USER35> Two words: Linear algebra. Or if you wish, Differential Equations.

</comment><comment><USER36> Because Don Dodge wears a toupee.

Oops wrong article.

</comment><comment><USER37> Incidentally, the National Science Foundation and the National Council for Teachers of Mathematics describe the Obama's education plan as abysmally bad. Specifically the NSF and NCTM are very much against the AP curriculum, which Obama wants to expand by 50% over the next few years. I think the exact quote is that AP science/math courses represent "the worst kind of pedagogy" or something like that.

<comment><USER9> I call bullshit--

1) Not a single source that can be googled.

2) The NSF gave the College Board 1.8 million two years ago to fund AP science courses: <http://www.collegeboard.com/press/releases/51572.html>

3) It's highly unlikely that either organization, which have broader educational concerns than AP curriculum, would ever release a statement condemning either political candidate.

<comment><USER37> 1) Read books.

2) The source you linked to supports my claim, if you actually read it.

3) They didn't release a statement condemning Obama, but they've been criticizing the AP curriculum since the 90s. (And Obama's plan is to increase the number of students taking the AP.) I'm sure they'd never actually criticize Obama himself, at least not yet, since they will depend on him for lots of other stuff.</comment></comment></comment>


Ask HN: Could a virtualized YC work? - <AUTHOR>

I have been mulling this idea around in my head for the better part of a year now and wanted to get the feedback of the community.
What I would like to do is put together a completely virtaulized version of the YC model (with a twist).
In this model, I would not take an equity stake, nor would I be investing in the companies directly.  Instead, I would pick 10 or 15 teams bi-yearly and give them access to resources.  Teams would remain in their own location, but we'd meet via webcast every week, hopefully with guest speakers.  I doubt the speakers would be nearly as forthcoming as they would be face to face, but I think it could still be a very valuable experience and may still instill the peer pressure (though on a lesser scale) that YC does to push people to get stuff done.
Do you think it would work?  Why or why not?  What would you change?
I'm curious to hear your thoughts, comments, questions and concerns. <comment><USER2> I don't think this would work, for the following reasons:

1\. Money. While 14-20k isn't that much, it does provide enough money not to have to think about bills for months. Perhaps even more importantly, taking someone else's money (esp. when that someone else is PG) is a pretty strong incentive to actually produce something.

2\. Environment. When you physically move somewhere with the sole purpose of working on your startup, it's a lot more difficult to screw around. Not to mention the fact that you're constantly around your co-founder(s), and other startup founders, and the natural thing to do at that point is "work".

3\. Distinction. Because YC is well known, people around you will recognize it. You will have some real level of clout, more so than being a part of a newborn virtual combinator clone. Albeit this one can probably improve with time..

Decent idea though. I personally wish there were more YC type people here in LA.

<comment><USER3> I think mark suster's new camp will be a good magnet for gravitating those types, slay2k. You may want to check it out. <http://bit.ly/launchpadla>

</comment></comment><comment><USER4> It might offer some benefit to a group in a remote location like North Dakota, I suppose. But it's hardly an ideal model or something that is likely to add tremendous value.

Overall it does not sound very optimal to me, but I'd love to see you prove me wrong.

</comment><comment><USER5> Why would people join something like that for 'access to resources' ?

What do you mean by that ?

What kind of peer pressure does YC apply to people to get stuff done ? Isn't the whole idea of a start-up to get people together that don't need that kind of pressure ?</comment>


Show HN: Meepi – convert fleeting visitors into customers - <AUTHOR> https://www.meepi.com/how-it-works/

<comment><USER2> A few thoughts:

1) I have to say, I was incredibly disappointed that you do not use your own product. It was the first thing I checked. If it gets results, why aren't you using it?

2) How is this different than Capture by Gleam.io, Exit Monitor, Cloud.iq, Picreel, Optimonk, and the many others that do this? Also, side note, they all use their own service to give a demo when I go to close the page :)

3) You should give different templates for common modals: shopping card abandonment, contests, member only deal, newsletter signup, etc.</comment>


Pros and cons of different ways of storing Enum values in the database - <AUTHOR> https://zubialevich.blogspot.com/2019/08/enum-vaues-in-the-database.html <comment><USER2> _The first pros I can imagine is, of course, size. Integer values will store much less space on a hard drive than any string (4 bytes against 8 bytes per symbol for varchar or 16 bytes per symbol for nvarchar)._

Uh varchar is 1 byte per "symbol" nvarchar is 2 bytes per "symbol" an int will be larger than a 3 character varchar. Mixing up bits and bytes is not a good sign.

 _Usually, enums are not having big lists of keys. The biggest enum I 've ever seen was 300 key in it. which is only 3 symbols. I have rarely met enum names with 3 or fewer symbols._

If its an int then its 4 bytes not 3 "symbols", if your storing string your using the name not index. Seems like a point is trying to be made about 4 bytes int vs 3 byte varchar names but instead mixing int string size.

 _When you are storing enums as a string you are not depend on the order of enums in code, so you can easily reorder them without any side affects. To avoid this you can implicitly specify integer values for enums_

The opposite is also true when storing names instead of ints you can refactor the name without changing the data. What do you do more often change enum order or name?

Not a big fan of using enums anyway, I prefer some sort of coded value where you store a short string code in the db that is human readable with a longer description the users see, that way the description can be reworded if necessary, you can also tack other metadata on to the code if necessary. Many times the coded value is in the db as a table or even one table per coded value with foreign keys so it can be modified and joined. Not as simple but more flexible IMO.

</comment><comment><USER3> How about storing enum values as... enum values in the database?</comment>


The truth about C and Unix history - <AUTHOR> http://www.rutschle.net/tech/c_unix.shtml <comment><USER2> This particular April Fool's joke goes back at least 30 years. I remember getting a chuckle out of it a long time ago.

For context for younger readers, it might be worth pointing out that there was for a while a sort of rivalry between C and Pascal adherents. C was the more "modern" and "professional" language, while Pascal was a "teaching" language (or so some of the arguments went). Windows was coded in C, while MacOS -- before it was called MacOS -- was largely Pascal, with a lot of hand-coded 68k assembly for flavor. Pascal devotees would make fun of C in about the same way that a Python programmer might make fun of Perl. C devotees responded by writing an awful lot more code than Pascal programmers did, which eventually shut them up pretty good.

Pascal got a boost out of OOP, but by 1995 or thereabouts Pascal didn't really have much of a future left, which was sort of a shame.

<comment><USER3> You could have called me a "Pascal devotee" back then, but I had eventually come to realize verbosity kills creativity and dumped Pascal for good.

This

      {
          int a[10];
          ...
      }

wins over this

      begin
        var
          A: array[0..9] of Integer;
        ...
      end;

quite simply because the latter takes longer to _both_ read and write. The proof being that none of the more or less serious languages created in the past few decades dared to adopt e.g. begin ... end again.

<comment><USER4> > The proof being that none of the more or less serious languages created in > the past few decades dared to adopt e.g. begin ... end again.

 _facepalm_ Except Ruby, OCaml, Erlang, Lua, etc.

Frankly, if verbosity is a significant limiting factor on your creativity, a) C is not the solution to your problem, and b) you weren't trying to solve any hard problems anyway.

Seriously, if you're doing anything really hard, stuff like thread management and algorithmic complexity is a way bigger limiting factor than minor syntactic differences.

<comment><USER5> Syntax limits everything, it only becomes more important as you're doing hard things. Being able to fit 10% more code on screen is a lot like being 10% smarter, which is the kind of thing you need to make the hard problems even possible.

<comment><USER6> What is a hard thing that requires better syntax?

I would argue that hard things require clarity, and syntax can often reduce clarity.

<comment><USER7> I think this is all somewhat related to how much you can keep in your head at once. More code -> less expression -> less that you can keep in your head -> you can solve smaller problems.

If a problem requires that you keep all of it in your head then being able to express that problem concisely will aid in solving it.

The poor mans solution is to reduce the scope: chop the problem into sub- problems that you can solve individually.

Divide and conquer is the most powerful tool in a programmers arsenal because it allows you to use the worst languages to solve some of the most complicated problems.

But there may be a subset of problems where that strategy no longer works and for those problems the more compact languages may have a very strong advantage.

<comment><USER8> It's a double-edged sword, though : your compact, clever solution is great when your write it but becomes unreadable when you (or worse, someone else) tries to maintain it. And then you have to understand both the hard problem _and_ the way it was solved in the first time.

<comment><USER5> The main way to make code genuinely shorter is to actually make it simpler; replacing logic with a higher-order function call (e.g. map rather than a loop) makes it more readable and maintainable, not less. Or if we're talking about meaningless syntactic clutter like the extra lines of begin/end, they don't make the code any clearer.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> I believe that Linus Torvalds said something[1] in the spirit of this article about how Git was only adopted by the community due to how arcane it looks.

[1] [http://typicalprogrammer.com/linus-torvalds-goes-off-on- linu...](http://typicalprogrammer.com/linus-torvalds-goes-off-on-linux-and- git/)

<comment><USER10> You must realize it's satire too.

</comment></comment><comment><USER11> A well known hoax. For that matters, the quoted source code is a part of Carl Shapiro's submission to IOCCC 1985 [1] which produces a maze. This alone is enough for debunking the story, right?

[1] [http://www.ioccc.org/1985/shapiro.c](http://www.ioccc.org/1985/shapiro.c)

</comment><comment><USER12> I must confess that for a moment you got me there.

[https://www.gnu.org/fun/jokes/unix- hoax.html](https://www.gnu.org/fun/jokes/unix-hoax.html)

<comment><USER13> It seems that the GNU version slightly differs from the OP. It includes a joke on IBM RS-6000 and their virtual machine, and have different spellings (Nichlaus vs. Niklaus, AT&&T vs. AT&T). I wonder which one precedes.

</comment></comment><comment><USER13> Wow, it's been a long time since I checked this joke for the last time! At that time I read the version that was translated into my mother tongue (Korean). Now I read this in its native form.

<comment><USER14> Do you have a link to the Korean translation? I've been studying Korean for the past year and would be curious to nibble on a text like this a little.

</comment></comment><comment><USER15> here is an interesting talk that will make you better see the doublespeak of this old hoax:

[http://media.ccc.de/browse/congress/2014/31c3_-_6574_-_en_-_...](http://media.ccc.de/browse/congress/2014/31c3_-_6574_-_en_- _saal_1_-_201412301245_-_why_are_computers_so_and_what_can_we_do_about_it_- _peter_sewell.html#video)

</comment><comment><USER16> Heck! I so wish this is true! It would have been the prank of the century; and even the centuries to come!

</comment><comment><USER17> Now if we could all get back to using real Languages like Fortran and PL1/G :-)

<comment><USER18> APL will solve all the world's programming problems in just one line. Then it will take the world to figure out what the hell it does.

<comment><USER19> But it's concise, and therefore elegant, so who cares?

</comment></comment></comment><comment><USER20> Truth is - UNIX/C and clones run the world :)</comment>


Private War: Erik Prince Has His Eye on Afghanistan's Rare Metals - <AUTHOR> https://www.buzzfeednews.com/article/aramroston/private-war-erik-prince-has-his-eye-on-afghanistans-rare <comment><USER2> This is everything that is wrong with America</comment>


Ask HN: Android developers, where did you learn? - <AUTHOR> I think about starting learning programming for android. Looking for decent guides, books, youtube channels.<p>Can you recommend some books/courses/blogs as learning resources in 2020? <comment><USER2> I also just started doing Android in my work (previously mainly doing backend development). I see that the best resource will be just the Android documentation itself [1]. I can't suggest any specific book, because book about Android get outdated very quickly. If you like an online course, Udacity offers some Android courses [2] that is made by Google. As an additional note, once you have passed the basic hello world application and understand the basic concept of simple activity, lifecycle and intent, you should explore Android Architecture Component [3] which is required if you want to write a bigger more complex application. Last, for youtube video just see Google I/O videos or any other Android conference video, once you want to dig deeper for more specific topics.

[1]: [https://developer.android.com/docs](https://developer.android.com/docs)

[2]: [https://www.udacity.com/course/developing-android-apps- with-...](https://www.udacity.com/course/developing-android-apps-with-kotlin-- ud9012)

[3]: [https://developer.android.com/topic/libraries/architecture](https://developer.android.com/topic/libraries/architecture)

</comment><comment><USER3> CodePath used to be an amazing resource. They had some of the best guides out there. It went beyond books and delved into practical libraries used in the real-world. I wish those guides were up to date :(</comment>


What I Learned from Working in Failed Platforms - <AUTHOR> http://developer.telerik.com/featured/what-i-learned-from-working-in-failed-platforms/ <comment><USER2> [https://news.ycombinator.com/item?id=10688893](https://news.ycombinator.com/item?id=10688893)</comment>


Why Facebook's new Reactions feature is a big deal - <AUTHOR> https://medium.com/@room404/why-facebook-s-new-reactions-feature-is-a-big-deal-456939b0ac2e <comment><USER2> Who needs NLP for comments when you have this kind of supervised learning going on with the classification that Reactions provides.</comment>


Rethinking relativity: Is time out of joint?  - <AUTHOR> http://www.newscientist.com/article/mg20427314.400-rethinking-relativity-is-time-out-of-joint.html

<comment><USER2> Science is just what we can't yet prove to be wrong through observation. In other words, what we believe about the universe is only true because it works within the limits of our observation. If we could observe better, we would find that what we believe is not true -- not perfectly true -- it's merely true enough.

This happens over and over again, yet people still believe science and theories are facts. They aren't really facts in the sense that they are perfect, they are facts in that there isn't something _more_ perfect -- yet.

We thought the world was flat, then we observed orbits. We thought orbits were round, then we found ellipses. We thought gravity was constant.

You know, when I think about constants, I think they are really just a number we put in there to compensate for the range of realities that we can't measure. The gravitational constant isn't really a constant, it's part of the fluid and movable function that comprises the portion of the numbers we can't observe yet. There is a lot of change going on in there that we can't detect or believe to be wrong. That 9.8 meters per second squared actually changes while the objects are moving, yet 9.8 is good enough.

That's what science is: good enough.

<comment><USER3> Would you assert that there is no final truth, or only that we can never know if we've found it?

<comment><USER2> There is a final truth, I believe. Doesn't mean the truth won't change. There's nothing in science that says something can't come from nothing, so something could just ... come to exist that would change everything.

I'm agnostic about human knowledge of truth.</comment></comment></comment>


How to grow your LinkedIn network to 10,000 contacts in 30 days - <AUTHOR> https://winatlinkedin.com/how-to-grow-linkedin-network/ <comment><USER2> Why would someone want to do this?

<comment><AUTHOR> To accelerate their network effect - the larger your network of 1st contacts (people you are directly connected to on LinkedIn) the easier it is to: find employment/new contracts, generate leads, raise your personal profile, get referrals, etc.</comment></comment>