HNHacker News
TopNewBestAskShowJobs

zeroimpl

621 karma · joined January 11, 2018

submissionscomments
zeroimpl··on Let's Encrypt's New Root and Intermediate Certificates
Interesting, seems pretty similar to an Executive Summary which also would have been very useful here.
zeroimpl··on Commerce Department Prohibits WeChat and TikTok Transactions
grift: noun, a petty or small-scale swindle.

graft: noun, a shoot or twig inserted into a slit on the trunk or stem of a living plant, from which it receives sap.

Edit: Ugh nevermind I found more definitions of graft. Google only showed the plant/medical-related ones by default.

zeroimpl··on Why is Apple acting like an asshole?
Betas being available doesn’t solve the problem because you can’t submit updates compiled using beta versions.
zeroimpl··on Revisiting the spectacular failure that was the Bill Gates deposition
The question cleverly prevented that - it said "non-Microsoft browsers"
zeroimpl··on Revisiting the spectacular failure that was the Bill Gates deposition
The opening question here pre-supposes he was concerned. Unless the prior discussion had Gates explicitly saying he was concerned (which I assume it didn’t based on Gates asking about a document using the term), then it makes complete sense to me to respond with a question rather than an answer. I’d have probably gone with “When did I say I was concerned about non-Microsoft browsers in January 1996?”
zeroimpl··on Checked exceptions: Java’s biggest mistake (2014)
I've literally never seen somebody catch a SQLException and do nothing with it - you quickly learn that just doesn't work, and it would never pass a code review.

With respect to exposing implementation details:

If the caller is the one who passed in the connection, then it makes complete sense to throw a SQLException so the caller can deal with it.

If the connection was opened in your method, then yes you probably should wrap it, handle it properly and clean up the connnection, and then throw a different exception.

The only time it's ambiguous is if the connection came from an instance variable. That's often a poor design, but usually means it came indirectly from the caller and so it still makes sense to throw SQLException.

In general, SQLException works fairly well as a checked exception. If some code generates a SQLException, your transaction failed and you should generally abort it (or you can check the specific error code if you are prepared to handle anticipated failures such as a duplicate key error). If it generates any other exception, you can continue working with the database (such as saving the failure status to a table).

zeroimpl··on Mathematicians should stop naming things after each other
quicksort kind of proves that the names don't have to be particularly meaningful, just somewhat descriptive and unique. It's not like mergesort isn't quick.
zeroimpl··on Apple blocked Facebook's attempt to tell users about 30% App Store 'tax'
No, but the grocery store can choose to not sell any product which does this.
zeroimpl··on Apple blocked Facebook's attempt to tell users about 30% App Store 'tax'
That’s not the same thing at all. I’m saying that you bought the product from a grocery store, and the product itself contains information discouraging you from continuing to buy from the grocery store.

In the app case, you bought an IAP from Apple (I know it’s Facebook’s app, but that doesn’t change the fact that the transaction was executed by Apple) but somehow think it’s ok for there to be a note saying you can pay less if you buy it on your computer instead.

zeroimpl··on Apple blocked Facebook's attempt to tell users about 30% App Store 'tax'
If I buy a box of cookies from a grocery store for $3, should I expect a note in the box which says I can buy them directly from the manufacturer for only $2?
zeroimpl··on Apple ordered to not block Epic’s Unreal Engine, Fortnite to stay off App Store
What great features do Android users get as a result of being able to sideload apps which aren’t available on the App Store?

I believe the (weak) answer to the above is the answer to your question. Features are what matters to the majority of users. The ability to sideload apps itself is not.

zeroimpl··on Chromium devs want the browser to talk to devices directly via TCP,UDP
The “legitimate websites” that disrespect privacy and security almost always do that in a way transparent to the user (ignoring the cookie prompts, but I don’t think that’s a fair comparison). For example, news websites could try and access my location info, but they don’t because there’s a permission prompt which would appear.
zeroimpl··on Chromium devs want the browser to talk to devices directly via TCP,UDP
The only websites which would force you are:

- legitimate websites using this feature for valid purposes, such as to control devices on your local network

- targeted malware attacks trying to hack devices on your local network

I’m certain we will not start getting popups for this on any mainstream website.

So as long as this permissions thing is more than a simple yes/no dialog, I’m not worried.

zeroimpl··on Moreutils – Unix tools that nobody thought to write (2012)
I routinely operate on machines with gigabytes of memory, but rarely write pipelines which output gigabytes of data, so this has never been a concern for me. But even then, there’s still swap space which is effectively like using a temp file but lazier.

By the way, I think you’d be in even more trouble if you wrote:

    cat /dev/zero > a
zeroimpl··on Apple to kill Epic’s accounts on Friday the 28th
What on earth are you talking about?

My response was based on the OP suggesting the account closure was based purely on the App Store policy violation. I’m pretty sure it’s based on more than that, such as the fact that Epic is suing them in bad faith.

There’s probably a million app developers which have violated the policies in some manner at some point and yet very few get blacklisted by Apple.

zeroimpl··on Apple to kill Epic’s accounts on Friday the 28th
They are also being sued by Epic. Would you keep doing business with a company suing you?
zeroimpl··on Big Sur: “Warning: PHP is not recommended”
Apache is also preinstalled. I use it to host some PHP scripts on my local network. The annoying thing is that every OS upgrade causes all the configuration files to get reset so I need to fix it every time. But it's just small enough of an annoyance that I haven't migrated to installing my own.
zeroimpl··on SQLite 3.33
The idea of being able to update multiple tables in a single query this way is intriguing to me! But I like the fact that the Postgresql syntax makes it crystal clear which table is being updated.
zeroimpl··on SQLite 3.33
I wonder if they could just make this syntax work in Postgres:

    UPDATE inventory 
    SET quantity = inventory.quantity - daily.amt
    FROM
        (SELECT sum(quantity) AS amt, itemId FROM sales GROUP BY 2) daily USING( itemId );
Basically just allowing a ON/USING clause after the first FROM entry as if it was joining to the table being updated.

Otherwise it's kind of annoying when you end up joining to several tables in the update, but have to use the WHERE clause to join back to the main table.

zeroimpl··on I Love MDN, or the cult of the free in action
Employees paying might make sense if the employees were paid on some sort of commission basis. Then it’s in the employees personal interest to find ways to make themselves more efficient so as to maximize their own income. But for a salaried employee, there is not enough incentive for them to pay out of their own pockets.

Basically the statement you made that employees are paid based on value delivered is not really accurate in most cases.

zeroimpl··on Apple just kicked Fortnite off the App Store
I would prefer if businesses didn’t sell products at a loss. It just leads to dumb situations all over the place.
zeroimpl··on What's new in PHP 8?
I’ve never used Perl but I periodically mistake eq and = in bash scripts. It’s quite annoying since there’s no obvious indication that one is for numbers and one is for strings.
zeroimpl··on What's new in PHP 8?
> Right now PHP 8 is in feature freeze, meaning no new features can be added anymore.

> Starting with new features, remember that PHP 8 is still in active development, so this list will grow over time.

Something doesn't seem right here :)

zeroimpl··on 20GB leak of Intel data: whole Git repositories, dev tools, backdoor mentions
Were the files listed when going to http://server.com? No, the user had to:

1. Find the server via nmap

2. Guess at some URLs until the server finally responded with some hidden data.

While neither of those would require being an expert in the field, this is well beyond the realm of browsing public websites.

zeroimpl··on 20GB leak of Intel data: whole Git repositories, dev tools, backdoor mentions
It's a fictitious example. I didn't say there was no weapon, nor said it was definitely theft. The point is that submitting a GET request in a public setting does not mean no crime.

Coercion can be the difference between asking for money and theft. In the case of this intel data, it was clearly coerced from a server - it's not like it was linked on Google, they had to specially craft URLs to coerce the data out.

zeroimpl··on 20GB leak of Intel data: whole Git repositories, dev tools, backdoor mentions
That’s a very weak argument. If I’m walking down the street at night and somebody comes up to me and says “GET /money”, I may respond with an HTTP 200, but that doesn’t mean the person didn’t just steal from me.
zeroimpl··on You don’t need reproducible builds
It really depends. If I’m building a Java project, I’m pretty sure I’ve got a deterministic build just by running javac pointed at a source directory. If I want a reproducible build, I probably need to do a lot more:

- ensure timestamps of all files embedded in jar files is consistent

- ensure there is no BuildTime/BuildHost/BuildNumber variable of any kind being captured

- ensure the exact version of compiler is documented

- ensure exact versions of all dependencies in classpath is captured

zeroimpl··on New ‘Unpatchable’ Exploit Found in Apple’s Secure Enclave Chip
Software can be patched by hackers too, which is why you need hardware solutions for security in some cases.

How will your software solution guarantee that the code running is what you think it is?

zeroimpl··on The battle to invent the automatic rice cooker
Most of the time that I cook rice, I also need to cook something to go with it. So after I turn on the rice, I then start preparing for the rest of the meal or just tidying up the kitchen a bit. Usually by the time the rice boils, I’m still around. Once you turn down the heat, it doesn’t really matter if you leave it on for 20 or 30 minutes. (40 minutes would be kind of crunchy, but if you’re going to forget about it that long you probably weren’t hungry and shouldn’t have put rice on)

Also I use a glass pot which will stay quite warm for at least an hour after turning it off.

I used to have a rice cooker. But I gave it away to free up counter space. My stove has 4 elements, but counter space is precious.

The original article describes rice cookers were invented because cooking rice over a wood fire is very difficult. I’ve no argument with that. But cooking rice with a generic pot on a modern stove is trivial, and most people buy rice cookers because they’ve been taught to.

zeroimpl··on The battle to invent the automatic rice cooker
100%. The proper measuring of ingredients and timing is all that's required.

Take a look at the first line of the article:

    Cooking rice on a stovetop can be fraught. Add too much water and you end up with porridge.
Then take a look at this line shortly afterwards:

    These devices can seem all-knowing. So long as you add water and rice in the right proportions, it’s nearly impossible to mess up
So in other words, the device doesn't actually solve the most important problem... The timing isn't particularly important, as long as you remember to turn down the heat as soon as it starts boiling.
← PreviousPage 10 of 15Next →