HN user

pslam

1,397 karma
Posts0
Comments212
View on HN
No posts found.

The purpose it was originally intended to be used for doesn't make sense in a world where most new technology is just software, and software is incredibly easy to copy and duplicate.

The very first patent was to duplicate an existing process (the loom) and have a monopoly to produce it.

I keep hearing this argument from patent proponents, but patents have never in their history been ostensibly for good.

I am absolutely with you on this. I still think USB is an abomination, and the most modern incarnations only get worse — USB3 being essentially PCIe signaling but messed up because the USB committee got involved. They must ruin everything with their touch.

10/100 ethernet over a different cable and connector type would have worked out pretty nicely.

I2C in a Nutshell 7 years ago

The specific case I was thinking of was the host suffering an incident where it is not possible or practical for its software to know where it left off.

For example, you get a kernel panic, or soft-reset for some reason. When you recover, you now have a bus in an unknown state, possibly mid-transaction, and if you pick the wrong order in which to bring the bus back to idle, you might wedge it or accidentally cause a side-effect (e.g overwrite a byte in an EEPROM).

I2C in a Nutshell 7 years ago

Same. I really dislike I2C, but it's universal and it's been around for decades, and it's hard to avoid designs without it. I2C keeps causing these additional issues which the article doesn't touch on:

* No way to safely bring the bus back to idle from mid-transaction. By "safely" I mean not accidentally transmit an extra byte which could e.g overwrite EEPROM memory. There is no combination of transitioning the 2-wire bus from an arbitrary state back to idle which works in the general case. If it's important, you end up adding a dedicated reset wire.

* No safe, universal way to bring the bus from tristate, or low, to pulled-up. There are designs where this ends up being necessary. You end up with a spurious transaction, which may wedge the bus, or having to add a reset wire or buffer.

* The protocol is extremely hostile to devices with non-zero latency response. It's designed as a simple "Address this register and then immediately read out a byte in the next clock cycle". Works great for trivial devices, but for anything more complex it ends up needing a bank of register acting as a "proxy" to access the higher latency side of the chip. At this point I2C is an awesomely bad choice, but people keep doing this, because it's so universal.

If you cannot find a buyer who will take a cut of a $50MM valuation, then the company is in fact worthless. Liquidity is no barrier to this — there are plenty of financial instruments available to do this transaction, even if you can't actually transfer the asset itself. Taking on debt, for example.

Yes, it sucks, but forgive me if I don't shed a tear for someone who has to find a way to pay taxes on their $50M of assets. They absolutely do have options which aren't terrible.

If a "wealth tax" did pass, then expect countless startups who specialize in handling the arbitrage of this.

Update on AB5 7 years ago

Uber's defense fails The Duck Test. They are describing a job, people doing a job, people paying for a job, and people taking a cut of the profits. They just don't use those words.

I suspect if/when this gets to a higher court, the whole thing will come crashing down, because to allow Uber's weaselly redefinition of common terms, would be to allow other classes of employment to similarly become unprotected.

I have no idea about this guy, but in my experience, people like this always seem to be pleasant, creative types on the outside. Every now and then in conversation they hold weird viewpoints you just can't reconcile with their projected image, and wonder if you've misjudged them.

They usually turn out to have an underlying wonky or absent moral compass, and abusive personality traits.

The outward image is a confidence trick, and that's how they got where they are.

Yes, wearout rate definitely depends on temperature, but without reference to any actual data, this is what I mean by "no evidence".

Is it reducing 10 year lifespan to 9 years? 9.99 years? 5 years? Was it 50 year lifespan? It's pointless conjecture.

This article is actually describing how the Raspberry Pi 4 does NOT need a fan.

This is not the 1990s. It is perfectly acceptable and even advantageous to design for a high peak:normal load ratio, with thermal throttling. In this case, it allows for a compact, cheap, fanless design for the vast majority of users.

There is no evidence the heat dissipated will impact lifespan. It is common for the components picked out in particular (power supply, USB-C controllers) to be deliberately designed to run hot. They aren't made on the same process as the SoC.

I feel like there is a missing piece of the software/hardware design art here. There are many takes like this on the Raspberry Pi 4 design. Why only one ethernet? Why no fan? Why not more USB-C? Because it's $35 and because, perhaps, you aren't the target majority market. It's going to satisfy the vast majority of people, and those it doesn't have very simple and cheap ways to mod it so it does.

You are missing the entire point of the article if you continue to call these algorithms "AI". Inflating simple things like this to mean "AI" has led to the term being meaningless.

You are the example it is making.

Backpropagation, which most researchers will agree is an AI algorithm, is a "simple algorithm".

Back-propogation is not an "AI" algorithm.

You are ironically doing exactly what this article is about.

I have routinely created firmware written in Rust which are just a handful of KB. The issues people are having are related to system-integration, such as static linkage, can be mitigated in cases anyone really cares about, and will disappear over time.

An easy example with git would be to create a pair of read-only repositories: one public-facing which is cloned by the general public, and one with (potentially entirely) different contents which can be selectively pulled depending on the client.

There's a complication with the few appended trailing blocks being invalid data, but the format might allow it, and git doesn't verify its integrity recursively.

Marc Stevens quotes $500K, which is very much still a threat (even an order of magnitude more would be). Plenty of organizations would be willing to spend that much pocket change on a single attack.

The game-changer is it's chosen-prefix. A vendor can produce a pair of entirely different binaries with the same hash, but most importantly, they look and behave sane except for the last few blocks of the file. This is easily hidden, especially if the binary is encrypted.

It's not a stretch of the imagination to see how, for example, an IP camera vendor could do exactly this. Yes, it requires a nefarious/complicit vendor, or an insider who can pull this off undetected (not everyone has a fully automated build/release pipeline).

So it changes the threat model. SHAtter was waived by many because the threat model didn't convincingly apply to them. Example: git. That analysis needs to be repeated.

(All this assuming the attack described in the paper is correct and practical in real world implementation)

It is appalling that the top 3 comments (at time of writing this one) are victim-blaming. "They should get better jobs". "There's a high demand so they should go elsewhere". "They should have known before they went there".

Where have you been in the last few years, and how have you not learned anything about abusive practices which entrap people? These companies are basically abusive — they abuse their staff with long hours and low benefits, taking full advantage of the cool-factor to entangle them. As anyone who has the slightest empathy and has read anything in the news cycle in the last few years would know, people caught in this situation are often unaware they're being abused, blame themselves, and don't realize there is better elsewhere.

If you're one of the people who are, right now reading this, thinking "That's a load of BS these people are idiots and they deserve what they get", then I implore that you think again and realize you are essentially blaming the victim. That's almost never the right side to be on.

What we need to do is expose these companies for what they really. Put all these things out in the open and air them for all to see. Perhaps at some point we can have all the major studios unionized, and perhaps once their internal cultures become less toxic, their external one will likewise clear up a bit. Here's hoping.

It's just one part of the tooling, and doesn't solve program-correctness on its own. A formally verified toolchain is only really useful for projects which have pervasive mitigations against these kinds of errors. In other words, if you have a code base which has been verified to a high standard, you would also want a toolchain verified to a high standard.

In an ideal world you'd have a formally verified toolchain for a language without as many deficiencies as C, but here we are.

The story title is "AI powered Noise Cancellation" but the text never uses the term "AI" at all. It's deep (machine) learning. It doesn't need the useless marketing bonus term "AI" to make it better — it's already interesting enough without.

Sears falls into the "utter contempt" category, along with utter incompetence. It was obvious to every outside observer their model was busted. It was obvious how bad their stores were to anyone who went there to try to buy something. There was nothing sudden about it, really. I think many could see this happening more than 10 years ago.

Also, unlike IBM, Sears has very little of worth which would uniquely identify it as "Sears" after asset sale. It's all fungible land, rent, concrete store walls, and staff. They have many competitors with practically identical overlap in business. IBM is not like at all like this.

Businesses this big and old don't "sink" unless there is utter contempt for obvious changes in market conditions by the entire board, for a sustained amount of time. Even with utter contempt, it would take an enormous amount of time for them to implode. IBM isn't that stupid and they obviously understand something isn't working.

They're also roughly 100 years old (depending on definitions). They're reinvented and reshaped their business many times. "Two new broom handles, two new brushes" but it's still the same company, as they say. I'm afraid I find it ludicrous that IBM would actually end up in anything resembling financial failure.

Sure it is.

There are plenty of companies which can't easily be categorized as having significant negative effects to the world. You can work for a "bad" company but consciously constrain your work to a business unit which improves customers' lives.

What you're using is false equivalence. You know what the worst thing for the environment is? Being born. Why do people insist on living when everything is bad? Reject the notion that you're powerless to change things.

"They're all like this so it's impossible to do good" is an even more morally bankrupt position. It rejects personal responsibility and agency, places you as the victim, and allows you to continue to be a bad actor in the world.

You should change this.