Hacker Newsnew | comments | show | ask | jobs | submit | Flimm's commentslogin

Yes, it is the language's fault. The language could have been better designed, here are some solutions:

1. Assignments in conditions could be required to be surrounded with an additional pair of parentheses, like this: `if ((x = true)) {}`. GCC with warnings already requires this for C.

2. The assignment operator could be something other than the equal signs, for example, it could be `:=`. Assignment is so different from mathematical equality and beginners to programming trip up on this all the time, it's a shame programming languages copy each other for familiarity and keep this bad design.

3. Assignments in conditions could be banned out right, like Python does.

reply


Sure, but detecting assignments inside conditionals is very easy and every compiler worth its salt gives warnings for them.

IMO, the really annoying language faults are the sort of thing that can't be fixed by a simple linter: object keys being converted to strings, the wonky pseudo-classy prototypal inheritance, dealing with libraries that abuse Function.toString or eval, etc.

reply


It broke the back button severely.

reply


I have no idea why anyone would downvote this.

-----


"The exemption already exists"... where? The rest of your comment only talks about how copyright is often unenforced in these cases, not that there exists an exemption.

-----


Sandworm is saying that the exemption exists de facto due to the structure of copyright, since copyright violations are generally civil, not criminal.

My Dad works in biotech and he's fond of telling me the same thing about patents, which are crucial to that industry. "Patents are basically a tax that we have to pay to the lawyer industry, because a patent only exists insofar as you legally defend it. If we don't pay those lawyers, then much bigger biomedical and pharmaceutical companies will just steal our research for their profit." Or, "When your lawyers are preparing a patent, they sit you down and you have to describe exactly what you did. Then you describe it again. Then again, more and more abstractly, until you have something at the level of 'an object with a screen which a person reads medical numbers from', and they write all of this down, so that if someone steals only 50% of your idea, hopefully one of the levels in the middle is abstract enough to stop them, but not so abstract that the judge throws it out."

Copyright describes some situations during which you can sue someone else. Having this perspective changes a lot of things. Copyleft licenses say, for example, "I won't sue you unless you threaten to possibly sue someone else, unless you threaten to possibly sue them for possibly suing someone else a la this very sentence." No wonder GPL is more convoluted than BSD, which merely has to say, "I promise not to sue you; in exchange you are promising not to sue me. Also don't erase the fact that I wrote this."

-----


> "The exemption already exists"... where?

17 U.S.C. § 1201, which is both named in the article and otherwise trivially googleable.

-----


But this "exemption" that "already exists" isn't a matter of statutory text, it's a claim that some people won't get sued in practice.

-----


What kind of answer are you looking to see wrt the question "where?"

-----


This only applies to BBC Arabic.

-----


Ah, shame.

-----


So it's wrong to say that one way is right and one way is wrong?

... ad nauseum

-----


Python 3 does not allow you to mix spaces and tabs. I don't know if Coffeescript is similarly strict.

I guess you've developed a habit where you're completely OK with having incorrect indentation a lot of the time, whereas I can't stand it. Just because it's easier to read for you doesn't make it easier for everyone, especially beginners.

-----


I can't stand incorrect indentation either, but my experience is that it regularly happens anyway, and I'd rather not have that break my code.

And "incorrect indentation" has a very different meaning when the indentation is purely for presentation: As illustrated above, some people like to use the indentation to call out specific aspects of the code. That may be "incorrect" from Python perspective, but it is a way of visually providing additional information that is not available to you if you use a language that requires a specific indenting style.

-----


I somehow missed the "no sign-up required" in the front page, because of the login link.

-----


You don't need a license to turn the TV on to play on your console for example.

-----


Yes you do. If the tv is not disabled from receiving terrestrial broadcasts, you need a license.

-----


If you buy a TV and plug it in but do not connect it to an aerial or satellite, you do not need a licence.

You need a TV licence to install or use a television receiver per the Communications Act 2003, Part 4, Section 363[1].

The definition of a "television receiver" in the Communications (Television Licensing) Regulations 2004[2] is:

"[…] any apparatus installed or used for the purpose of receiving (whether by means of wireless telegraphy or otherwise) any television programme service, whether or not it is installed or used for any other purpose."

And "receiving a television programme service" is

"receiving by any means any programme included in that service, where that programme is received at the same time (or virtually the same time) as it is received by members of the public by virtue of its being broadcast or distributed as part of that service."

TV Licensing have it more simply[3] as:

"If you watch or record programmes as they're being shown on TV or an online TV service, you need to be covered by a TV Licence. This is the case whether you use a TV, computer, tablet, mobile phone, games console, digital box, DVD/VHS recorder or any other device."

But:

"If you don't watch TV at all, or you only ever watch on demand or catch-up TV, you can tell us you don't need a TV Licence."

1. http://www.legislation.gov.uk/ukpga/2003/21/section/363

2. http://www.legislation.gov.uk/uksi/2004/692/regulation/9/mad...

3. http://www.tvlicensing.co.uk/check-if-you-need-one/topics/ho...

-----


Sometimes they'll do a follow up inspection to make sure. But yes, thanks for correcting this common misconception. Although I can see why people still think otherwise as the change in the law from what gress said wasn't shouted from the rooftops when it changed :)

-----


That's a myth. The current legislation [0] says you only need a license to watch programmes when "received at the same time (or virtually the same time)" as broadcast - it doesn't say anything about requiring one to have a device which can receive live broadcasts. If that's the case you would be required to have a TV license to own a PC, as they can also receive live broadcasts.

[0] - http://www.legislation.gov.uk/uksi/2004/692

-----


Apple is contractually forcing developers to not discuss the contract, in what way is that good for users?

Apple can still have a walled garden without contractually requiring developers to forgo their right to jailbreak their own device.

DRM does not benefit users at all. It is not necessary to have DRM to have a walled garden.

-----


"Good for users"? it's not the users' business to know details of contracts between developers & Apple.

Jailbreak away - but Apple rightfully disavows any predicted or unforeseen consequences, and won't work with anyone who won't work with what Apple considers sensible rules facilitating development & usage. If you're going to bring bags of weed seeds (or anything else which predictably cause problems) into my walled garden, get out of my garden.

DRM assures you can use your purchased products on the devices you want ... and that nobody else can, and that nobody is going to repackage apps to include malware.

-----


>"Good for users"? it's not the users' business to know details of contracts between developers & Apple.

Who are you to say what a user's business is? If someone is engaging in unethical conduct, it is their customers' right to know about it. How are consumers supposed to make informed decisions if they do not even know what they are funding?

-----


What is unethical? What are they funding? Why the emotive language? Who are you or the EFF to say that it is anybody's business to know about two other third parties agreements? What difference will it make to consumers to know what the contract stipulates?

-----


>What is unethical? What are they funding?

That's exactly what the consumer wants to know. They are funding whatever is stipulated in those contracts.

>Who are you or the EFF to say that it is anybody's business

I am me, and I say what is my business.

-----


Then work out a contract with the other two. If they don't agree to your terms, then it literally is not your business.

-----


Attempting to establishing a legal obligation to share information is pretty much that, I would think. Seems like that's the whole point of a democracy, no? To allow the people to make things their business?

I mean, if Apple doesn't want their contracts (which are enforced by democratic American law) to be the business of the American people, then maybe they should leave the country.

-----


"Attempting to establishing a legal obligation to share information is pretty much that, I would think. Seems like that's the whole point of a democracy, no? To allow the people to make things their business?" No! Absolutely not!!! How is that any different from the asinine mutterings of David Cameron over data encryption? Freedom of speech does not give you the right to no my, or anyone else's business. What about freedom of privacy?

"I mean, if Apple doesn't want their contracts (which are enforced by democratic American law) to be the business of the American people, then maybe they should leave the country." So you agree that the NSA is right to snoop on the citizens of the US? It's exactly the same thing.

-----


"I am me, and I say what is my business." Wow.

-----


"Apple is contractually forcing developers to not discuss the contract, in what way is that good for users?"

What way isn't it? To what end does an end user need to know what the content of an agreement between to third parties is?

"Apple can still have a walled garden without contractually requiring developers to forgo their right to jailbreak their own device."

"It is not necessary to have DRM to have a walled garden."

Where is the DRM in the App store? I ask because I genuinely don't know. I would like to know in simple terms as the EFF have a tendency to use emotive language that detracts from the point.

-----

More

Applications are open for YC Summer 2015

Guidelines | FAQ | Support | Lists | Bookmarklet | DMCA | Y Combinator | Apply | Contact

Search: