Hacker Newsnew | past | comments | ask | show | jobs | submit | expr-'s commentslogin

C++ FQA is rarely a good place to start for anything else than finding examples of biased writing.


I found that combining the C++ FAQ and the C++ FQA made me a much better C++ programmer when I was learning the language.

Sure, it's ranty and biased, but that's kind of the point.


Having a poorer eyesight is not going to make fonts comprised of ten or so square pixels (in a direction) a bigger joy to read. Reading off a low DPI display is not only slower, but it also tires out your eyes faster.


Ah, but having a 30+" screen a few feet from your face and upping the font size in fact does help. It's all about the distance, not about the number of pixels or the font size.

So the ideal (for me) is a large high res monitor sitting 3 or more feet away from me. The first hint you're on this path is when your arms start to be too short for reading books and when you are 100% sure that the gray squiggles on that chip used to have meaning.


Even before eyesight problems, it's recommended to have a screen at least at 65cm to avoid forcing eyes to accomodate, which is more or less our arm's length. iPhones are a pleague for eyesight, tablets are slightly better (except that we read them longer) and a huge screen, far away in the distance of the desktop is certainly a good solution.


The optimal viewing distance for reading is called the Harmon Distance. It's normally the distance from your knuckles to your elbow. Of course, vision problems and aging can require adjustments, but that's a good starting place.


> The optimal viewing distance for reading is called the Harmon Distance.

I’m not an expert here (I had to look up the Harmon Distance), but from what I understand from other reading about eye strain, this should be rephrased as:

“Reading gets less comfortable if the material is any closer than the Harmon Distance, with some variation depending on age and individual differences between people.”

In particular, there are two factors that make focusing at close distance uncomfortable: (1) you need to flex the ciliary muscles to focus the lens (this is called “accommodation”), and (2) you need to flex the medial rectus muscles to rotate the eyes inward to point at the same spot (this is called “convergence”).

Both sets of muscles start getting strained if you look at a very close object for a long time with no breaks.

Looking at further away objects, even all the way out to the horizon, isn’t really a problem though.


Interesting. I've been playing a bit with the Oculus Rift DK2, and if I understand things correctly[1], if/when they up the resolution one more "level" beyond the DK2, it should actually be possible to use for many kinds of work. UI design people will need to realize that mile-high letters on the horizon are better than thin lettering close to the head, first (I'm looking at you, Elite:Dangerous docking bulletin board etc).

[1] http://oculusrift-blog.com/oculus-rift-faq/492/

No anchors in the page, I'm referring to: "Will the Oculus Rift cause eye strain after extended use?

The Oculus Rift causes very little eye strain, particularly compared to other standard displays or headmounts.

Normally, when you take a break from using a monitor or TV, the idea is to give your eyes a chance to focus and converge on a distant plane. This is a natural position of rest for your eyes.

With the Oculus Rift, your eyes are actually focused and converged in the distance at all times. It’s a pretty neat optical feature."


I think a large screen with large text at a greater distance is far more comfortable. Is there a good source for any reason why closer would be better?


Do you really care about accessing sites with 10-year-old mobile devices using only stock apps (emphasis: long term)?


> a secure way for me to limit when and how you can use those

That would be having them access the file in a restricted environment (literally, guards and stuff). You can't have people accessing your secrets in the comforts of their own homes and at the same time not be able to reproduce them in some form – even if an exact duplicate of the original data would be infeasible to obtain.


I decided to give it a try on a low-spec Android tablet, running latest version of Firefox. Got coloured horizontal stripes instead of a proper picture for every BPG example – and not just once; I was unable to view the images on the tablet.

Not quite production-ready, I think.


Similar issue with Firefox/Android, the Lena BPG images are completely scrambled to hell.

Safari/iOS and Chrome/Android worked with no issue. Desktop Firefox also worked.


That depends. Individuals generally need not pay tax for selling their private property.


I'm not sure where you live, but this is not the case nearly everywhere in the US.


It's the case in most european countries, and I am sure also in lots of other places.


No, you're probably thinking of sales tax.


I disagree with the consensus.

It's their driver, it operates in a specific way, perhaps responding to possible device output. Using it with non-compatible parts advertising themselves as compatible and any resulting behaviour, including unwanted, is the responsibility of the user. To play it safe, don't use any drivers with incompatible hardware.


You'd be right if this weren't just a chip buried in a device. To properly implement that, we'd need to be able to safely scan and verify devices on the chip-level. That's not really an option. The end user is only ever going to be informed by the driver telling them it's invalid; in this case the notification is the silent crippling of the gizmo, with no feed back or diagnostics.

As many have noted, all that's needed is an alert for the user that the driver's incompatible. That way the user can take rectification measures, be it getting new compatible chips/devices, or using unofficial drivers.


Alerting the user from a driver is a bad, bad thing.

I believe it is not allowed by WHQL certified drivers.

(It's also non-trivial to do in a Windows kernel driver. You can't call MessageBox(), you can't process user input, you can't even get a context to draw on the screen. Basically you have to rely on a user-mode helper app that gets launched at boot time, which is one of the reasons you see so many device-tweaking utilities for graphics cards and sound cards).


Oh absolutely. To me, it's just choosing the lesser of two evils.

Like, I'd rather go to jail and be inconvenienced instead of shot on sight, but I feel both are overkill for a parking ticket.


That's reasonable, until they start deliberately destroying my property. Then its a civil case. Do we have any evidence either way, deliberate or accidental?


https://twitter.com/marcan42/status/525202516816842752

They figured out how to program the clones without programming their own chips. Looks freaking intentional to me, I don't know any reason to send commands to write to an eeprom and do a pre-image attack on a checksum just on opening a connection. Also explains why just the PID is changed, not the VID. It would have affected their chips if they tried changing the VID.


Just playing devil's advocate:

Do you have any evidence specifically that their driver destroyed your chip, or could there be reasonable doubt that your counterfeit chip died? For a class-action suit that a lot of people seem to be talking about, you would have to have evidence that this was what did your chip in. And getting enough people (who appear to be mostly end-users) to submit the necessary evidence could be quite the task (most probably will just assume the device croaked one day and toss it out).


It's very easy to spot, as the driver 'bricks' the chip by resetting it's PID.


well, the PID is not a physical thing. So for the average user, "the board just died on my one day". Getting wide-spread testing and evidence submitting would be challenging I think.


I don't see why that would be more challenging than any other class-action suit. Indeed, this looks easier, in that you have widespread media coverage and plenty of experts speaking out publicly. It's not a question of trying to find experts qualified to testify; here, you can pick from a bunch. The technology here is also much more straightforward than, say, an automobile, and there are successful class-action suits involving those all the time.


there isn't really any media coverage, other than the forum posts and HN. Also, using your automobile example, an average-joe consumer can take their car into a mechanic and have it tested for a recall/defect. The average-joe with an arduino is far more likely to toss the defective unit out, rather than try to spend a while troubleshooting a $40 board.

I just don't see a class-action really able to take off. Especially since we're talking about otherwise illegal counterfeit chips in the first place.


Ok. This looks like media coverage to me: http://www.zdnet.com/ftdi-admits-to-bricking-innocent-users-...

The line of argument "I, as some random anonymous person on the internet, can't see X" doesn't do much for me. Lots of people can't see lots of things, but most of the time that turns out to be about failures of knowledge or imagination, not evidence that that what they're talking about is impossible.

Further, I don't think it's really my job to make people see things. (Well, actually, it is, but I charge by the day for that.) If you don't see it, I can live with that.


Not entirely sure what your argument was here, you sort of drifted into the weeds a bit.

I think you meant to argue:

"There is one source of media coverage, although it's largely just twitter comments. And just because something is difficult to prove doesn't mean it's not provable."

Both are valid arguments.

I don't count ZDnet as a very credible source of news, and in this case, some googling seems to show they are practically the only "news site" running this story. Although, as pointed out, it's mostly just a paragraph followed by several twitter posts.

Secondly, the evidence thing is important if a case like this were to proceed. In order to sign onto the class action, you would have to prove you purchased an effected chip/board, and that this driver is what killed your product.

Two problems here:

1) You bought a counterfeit chip/board. It's unlikely any award will be levied for illegal/infringing products.

2) Users would have to show evidence they were effected. Even in the RedBull class action case that is settling now, you must prove you bought a RedBull during the time period the case covers (receipt or whatever). Again, you have a counterfeit product, which was illegal to sell/buy in the first place. Not to mention, getting average-joe to test his device, even if someone made a testing utility and freely distributed it, will be close to impossible. People who are technical and care may do it, but average-joe will assume his arduino went belly-up one day, and likely toss it in the garbage.

Let's be realistic. A handful of people in-the-know will care passionately, and do everything they can to further a claim. Several handfuls of people will care enough to do something if they believe they will get something in return (a payout). The rest will have no clue this is even a thing, and will simply throw away their "defective" device.

What FTI did was wrong. But there is no real recourse here.


Check other posts on this HN story; others have proven the drivers were deliberately malicious by analyzing either a USB stream or a driver disassembly (I haven't read enough to know which).


It was USB stream.

The problem isn't knowing the driver itself can cause a bricked chip and therefore bricked device.

The problem is Joe-Average isn't going to be able to prove it was this driver and not just a defective device/chip for another reason. Even with a free "testing" tool someone can make to check for the flipped PID bit, Joe-Average has no clue this is even going on, and is likely to just throw away his bricked device.


> reasonable doubt

Even if such existed (it does not), this standard is not applicable to a civil case, only to the criminal trials for destruction of property/malicious mischief that every single person involved should have to go through.


For counterfeit/illegal property? This seems reminiscent of the guy who bought cocaine from his dealer, found out it was cut with flour, then tried to file a police report. I'd think you've had a tough time convincing a judge that you genuinely believed the chip/board you bought from some shady seller on eBay based in China for pennies on the dollar was a legit product.

None-the-less, someone will try I'm sure. Then everyone can enjoy the $5 check they get in the mail 1 year later.


This has been thoroughly covered in an earlier thread[0]. The chips do not in themselves violate any law. To whatever extent there may be a trademark violation, that is between FTDI and whoever mislabeled them. None of this entitles FTDI to destroy anyone's property. That's a crime.

[0] https://news.ycombinator.com/item?id=8493849


What is the limit there, then? Would it be ok for the chip to, say, install spyware to look for my credit card data and steal money from me? That is also "unwanted behavior".

I would be ok if the driver simply refused to work. But making hardware unusable on purpose is too much.


Doing things not related to interacting with, or "driving", the hardware is the limit for a good device driver. For software in general, not all forms of spyware are illegal (but stealing money is, at least in my jurisdiction).

Whatever the code for changing the PID is, it (supposedly) would work as well for a malfunctioning but real product, as well as a counterfeit.


Since the "making the hardware unusable" step is just setting the PID to 0, the slope doesn't seem too slippery to me. If the manufacturers of the counterfeit chip had their own PID and Windows drivers, they wouldn't have used FTDI's. FTDI here is merely enforcing that chips which are not theirs don't use their PID.

I agree that their updated driver will probably continue to not work with these counterfeit chips, and while it shouldn't mess up the chips' functionality in Linux, fixing the PID in Linux is fairly straightforward.

In the case where the driver will continue to not work with these chips, "bricking" only refers to not resetting the PID which causes the device not to work in Linux as well.


They don't meaningfully own the PID and there are non-counterfeit chips using that PID for compatibility purposes.



Eurostat[1] would suggest that booze is, on average, cheaper in Sweden than in Finland.

[1]: http://epp.eurostat.ec.europa.eu/statistics_explained/index....


Cheers for looking up the stats. But I suppose there might be more to it than just "average price of booze". For instance, when I (in NL) need some quantity of (cheap) vodka for a party, it pays to get them from Germany where most hard liquor[0] is roughly half the price than it is in NL. Other stuff, like beer, is about the same.

[0] that isn't marked up for other reasons, such as Whiskey


The following is not a reason not to use Bing for others, but (just saying): almost none of these features work for me in Finland. Seriously, there was not even a calculator available a while back.


I doubt very much that the bulk of the text was written in (or near) 2005. Thus it tells very little of the state of C in 2005, but might otherwise prove to be mildly interesting read on the 80s.


Good catch. At the end:

Editor's note: Adapted with permission from Potentials. December 1983, pages 26-30. Copyright 1983 IEEE.

Edit: something's not right there. That's way too early. According to https://www.cs.princeton.edu/~bwk/bwkbib.html, it's 1988 and from BYTE.


Indeed, I found the quote "ANSI C is expected to be approved late in 1988."


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: