skysight-inc/HackerNews huggingface dataset:
(8866128975287528)^3 + (-8778405442862239)^3 + (-2736111468807040)^3

If I command-space on OSX and put this into the search bar (which accepts math), I get exactly 30,000,000,000,000.
> If you're a tiny blog with a banner ad or two

I'm sure everyone is dreaming of having a "tiny blog"</irony>

Meanwhile in the real world, the European streamers and content creators, who make a living from their content, are looking on how to escape the EU so their content doesn't get filtered out.
Better Error Handling, in Go
Funny story, as part of a mega alliance we have had issues with a couple hosting providers blackholing our mumble servers.
We have so many new connections when big events happen that they auto-detect it as a DDOS.
I doubt it.

Parties and people who run for the European Parliament don't really have concrete policies or manifestos. In particular they can't run on a platform of repealing bad laws, because unlike in a real Parliament, they aren't allowed to do that. All they could do is politely ask the Commission to let them repeal the law, they'd be told no, that'd be the end of it.

So in practice EP politics are wafer thin and the only major differences between parties and politicians are to extent to which they are pro or anti EU. That's why the "Parliament" is stuffed with protest candidates from parties like UKIP. They can't actually do anything, they just make speeches and flame the rest of the MPs, but those MPs can't do anything either except egg on the Commission. So people tune out and don't care about European elections anymore.

There is some fear amongst the establishment now that the next EP elections will be different and people will send anti-EU candidates on a much larger scale than before. But not much fear, because the only thing these candidates can do is slow things down, and realistically even that won't happen because the EU frequently re-interprets its existing laws and treaties to give the Commission new powers on the fly. They'll just do more of that.
I’m not sure I understand how it is impossible to talk to the medical staff, even if the brother still holds power of attorney. They won’t tell her anything about her dads condition without it?

She doesn’t want to do it because her brother would freak out?
I'm not arguing with that (I would also add that language fragmentation is still a problem). But it does not justifies incorrect blanket statements like above.
> Get rich quick in case of success.

This is just betting. The probability of success is extremely low. Would be as wise as betting part of your salary each week in the lottery.
How does going to/from school work for children in Britain?

In the US, school generally school starts in the morning around the same time as or earlier than adult work time, so kids going to school are traveling at the same time as the work commute traffic.

The school day, though, is shorter than the work day so the kids come home while the adults are still at work, before the evening heavy traffic starts.

That introduces an asymmetry between the morning and evening work drives. The morning drive has a bunch of kids walking along the road. The evening drive does not.

This suggests that if you can only have one of those in daylight, it will probably be safer in the US to make that the morning one.
Maybe I am misunderstanding empathy, but the following paragraph sounds more like sympathy: "But when it comes to difficult conversations, I’ve found that empathy has a side-effect. I can get so focused on how the conversation might affect the other person’s feelings that I lose sight of why the conversation is needed in the first place."

In the above circumstance, I thought empathizing with the person would be understanding they (may) benefit from the information you're providing. Sympathizing with them would be reacting to their feelings, which seems to be the approach here.

Am I wrong?

An analogy could be made to a person who recently had a friend die. Sympathizing would be reacting to their sadness and feeling bad for them. Empathizing would be understanding how they're feeling and taking steps to support them (e.g. spending quality time with them).
This is addressed later in the article. The whole formula is: "3 numbers were inaccurate. I feel frustrated because I keep having to [deal with the consequences]. Would you be able to [double-check all calculations from now on]?"
Groovy has the safe dereference operator but no notion of non-nullable types.
At the risk of getting a lot of heat for this, I find this type of thinking more of a plague that has cast its ugly web on tech as a whole. An analogy would be anti-something drugs to damp down people who are hyper, might have ADHD and have so much energy and short attention span. As a society if we try to normalize all things and people we're only left with the mediocrity almost by definition and boring middle of the bell curve. This type of communication damps down powerful human interaction that a lot of us are capable of in favor of a much more passive style of communication and muted way of making a point so you don't offend anyone immediately. It's ok if they're offended later because they thought about what you said and read what NVC is and then found out what you "really" meant to tell them, but didn't have the audacity to say it. If we were to truly believe points made in NVC (dogmas?) that would probably be even worse as we would be modifying the way our brain was evolved to reason about things and may be making an un-natural change that may have drastically negative individual and societal impacts in the future.

If my manager tells me "You arrived ten minutes late to the meeting this morning" I would have to be an idiot to think next time he's not going to fire me if I'm late so this is more passive aggressive and nerve racking than if he just told me "don't be late or else!"
The problem is the balance of power in this equation.

You call your lawyer and ask them to sue (as an example) Google.

I expect the response would be something to the effect of "are you mad, rich or both? Because this is going to take a long time and be very expensive."
Maybe because in Java it's usually considered a very bad practice to halt your program. All the web containers that run your code will catch any error, to prevent bringing down the whole web service if only a small piece of it fails (for example, cannot serve one URL, but can others).

So instead, in Java, it's your responsibility to catch and correctly handle all the exceptions.

Also, variables in the last function (where exception was raised from) are unlikely to give me understanding of the bug, because it's usually thrown somewhere deep in others code, and also I'm more interested in _why_ it happened, not just _what_ happened.

We could dump all the variables in the stack trace, but I'm not sure I would like to read the whole dump of every variable in stack trace, that's just too much. I'd better write my code with proper logging, so I would be able to read the logs in order to understand not only _what_ happened, but _why_ it happened. With good logs you rarely even need to debug anything, I'd say 95% of the time it's pretty clear where to fix.
Ask HN: What is a good history of USENET and/or BBSs?
I have very fond memories of participating in discussions on USENET twenty-odd years ago and want to read more about it and the people behind it.

What books/articles/docs/hypertexts would you recommend?
> while AMP was supposedly "open", Google teams such as Gmail and Search would implement it however they wanted, and that no open governance would impact them at all

And that's exactly how any open standard works, isn't it?

Or were you expecting that some standard board would have power over Google (or any other company) and be able to dictate how Google (or any other company) can implement the standard or not?
This is so thoroughly untrue that I'm concerned that you're intentionally misrepresenting things.

In good faith I'll argue the following:

Just because you do not directly elect the commissioners does not mean that they are "unelected". You can make the case that a garbage worker is "elected", but that would be by civil servants (by way of interview) but that is a stretch beyond the pale and a straw man (in all but the most charitable perspectives).

You're right about the dwindling EU election turnout but this is largely fuelled by a lack of campaigning; most people don't even bother with EU politics because they're more concerned with their countries politics. The EU itself suffers from being uncharismatic and so open that it's a sea of information (which ends up seeming opaque because there's just /so/ much information). I suspect this will largely change with brexit as people are waking up to what the EU actually is. Largely in the UK for example everything that was a political failure was blamed on the EU and those lies are the foundation of what caused brexit.

The EU has many, many flaws, but characterising it as undemocratic is flatly incorrect.

> although the word Parliament means "the body of government that makes law"

Technically parliament is an ancient french word that means "speaking", (akin to parley) but that's a digression. What I largely meant was that while the parliament itself cannot draft law, however it is the only body that can give ascent to a draft-legislature to make it law.

That is not undemocratic, that is the definition of democracy with a sprinkling of civil service.
> What is the state of the art for building privacy conscious backends for applications like this?

This has actually become a core competency of Mozilla thanks to the infrastructure laid out for Firefox, which I think will be leveraged in their product strategy going forward.
Formal definition from my ancient copy of Sedgewick:

A function g(N) is said to be O(f(N)) if there exist constants c₀ and n₀ such that g(N) is less than c₀f(N) for all N > N₀.

Continuing: "Informally, this encapsulates the notion of “is proportional to” and frees the analyst from considering the details of particular machine characteristics. Furthermore, the statement that the running time of an algorithm is O(f(N)) is independent of the algorithm's input. Since we're interested in studying the algorithm, not the input or the implementation, the O-notation is a useful way to state upper bounds on running time which are independent of both inputs and implementation details."

I'll also repeat this bit from the end of the analysis chapter:

Perspective:

Many of the algorithms in this book have been subjected to detailed mathematical analysis and performance studies far too complex to be discussed here. Indeed, it is on the basis of such studies that we are able to recommend many of the algorithms we discuss.

Not all algorithms are worthy of such intense scrutiny; indeed during the design process, it is preferable to work with approximate performance indicators to guide the design process without extraneous detail. As the design becomes more refined, so must the analysis, and more sophisticated mathematical tools need to be applied. Often, the design process leads to detailed complexity studies that lead to "theoretical" algorithms rather far from any particular application. It is a common mistake to assume that rough analyses from complexity studies will translate immediately to efficient practical algorithms: this often leads to unpleasant surprises. On the other hand, computational complexity is a powerful tool for suggesting departures in design upon which important new methods can be based.

One should not use an algorithm without some indication of how it will perform. [...]
We Created a Gender-Inclusive Stock Photo Library
I think you (and probably the people adopting this form in talking to you, if it is coming across as patronizing or passive-aggressive) are mistaking the point.

This style of communication is not supposed to be a tool for more efficient (or deniable) emotional manipulation / control.

The “nonviolent communicator” is supposed to spend a lot of work up front thinking about what their real emotional needs are (which takes serious introspection, not just trivial rationalization), stripping judgment and generalization out of their observations, eliminating speculation about other people’s intent and state of mind, and coming up with requests instead of demands (in many cases those requests might be requests for additional data or possibilities), not backed by implicit threats if the request goes unmet. Ideally the non-violent communicator should be trying to drop their internal judgments and biases as well, not just leaving them unstated.

Someone who is adopting this kind of communication needs to be open to getting push-back on their comments and hearing that their demands are harming the emotional needs of the other person, open to considering alternative suggested remedies, etc.

The point is to accelerate mutual understanding of each-others’ feelings, promote empathy, and come up with some kind of outcome which is acceptable to both parties.
It seems to be blocking my location. I can't even ping it.
For TSMC and Foxconn it's the other way around. They are Taiwanese companies with significant business ties in the PRC.
Yeah, but messing with email is scary. Email is still an open platform and if Google gets complete control of it then there is no open platform that people actually use.
I've seen one dev manager (out of many) who failed code that threw NPEs. Every other one let them slide unabated. They are super common.
Show HN: Send company news in the new browser tab of your team members
Five months ago we built and launched [0] (mostly to see how chrome extensions worked) a funny idea. A lightweight tool to let companies send company announcements in all their coworkers' new tab.

Today we are releasing a new improved version of it: Sametab 2.0 [1]

It's a platform designed for communication that matters. It allows managers and leaders to easily broadcast important announcements within an organization. These announcements are visible (thanks to a Chrome Extension) to all the team members whenever they open a new browser tab.

The advantage here for companies is to aggregate the most important company news (now spread across emails, confluences pages, Slack messages, etc.) around a consolidated company newsfeed. Much like how Twitter consolidates user interests (spread across blogs, RSS, email newsletters) around a simplified timeline.

We would love your thoughts.

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

[1] https://sametab.com
There are a lot of these newsletters at the moment. I’m not sure how to differentiate them.

Does anyone have a list of the ones particularly worth following?
How many small-time Patreon-funded content creators have the time and money to take on a major media company in court?

Just because you could doesn't mean it's feasible from a financial point of view.
I can't change the link :/ I can't even delete it anymore. I
The comp packages at big tech companies are becoming insane.

In Seattle it's not unreasonable for a senior software engineer with some good connections to be making 200-250k.

With that comes life insurance, health insurance for your whole family, disability insurance, etc.

That's more in cash AND benefits than a doctor.
There's a reasonable expectation that a website may get updated. The same is not true for mail.
Just because it can serve some purpose for others doesn't have to take away from the meaning it has for you
And remove `Optional.get()`.
> edit: how the hell do I escape an asterisk?

It's best not to try; use numbers[0] for notes.

[0] like this.
Better save that, elections coming up...
Depending on where you live, you could claim the ad was binding, but now you have no email to refer to. You could probably make a screenshot, but OP has a point
- Upload filters will not be adequate. It is possible that compliance with the law is not possible at scale, and that's okay. Just jamming content on the Internet at scale and trusting automated systems to manage it has caused... a lot of problems for society as a whole. If Article 13 kills YouTube, that's a feature, not a bug.

- The strong safeguard is that the law enshrines that those are protected reasons to share things built on copyrighted content. i.e. "fair use".

When these "inevitably get caught in the crossfire", that is what courts are for. To sort it out fairly and justly, rather than you being abused by a YouTube algorithm.
Yes, you're thinking of https://github.com/kubernetes/kompose
Elm is an example of a language that literally can not produce NPEs. I use Rust on a daily basis and while it "technically" can produce one, I've never seen one.
This helps but isn't always sufficient, for example in conditionals where comparing property x of two different objects.

I like the solution proposed here.
I think this raises an interesting point, the raison d'etre for Walmart is providing value to customers above all other metrics, low prices, wide, but not infinite selection, and a modicum of convenience.

Conversely raison d'etre for Amazon is convenience, you can get anything, order it at any time, and have it within a couple days - it may not be the lowest price, or the best value you can buy - but it will end up being your first choice because of the low friction interactions Amazon offers.

As soon as interactions with Amazon start to exceed the combined convenience/value metric offered by other outlets, business will move to those other outlets - particularly more so for those with disposable income (particularly notable with the issue of counterfeit of fraudulent items).

As a note, while I don't fully disagree Walmart is one of the 'most successful social welfare institutions ever implemented' - I would never frame it in that context, because Walmart pushes the costs for the value it creates externally - in essence Walmart is subsidized indirectly by the state and its various welfare organs, it passes much of that subsidy back onto its customers - but like any indirect subsidy, its highly a highly inefficient way of going about this, and creates all sorts of undesired effects at the same time - for example, it undermines the whole point of many of the social welfare programs it benefits from thru indirect subsidy.
>As computing the NullPointerException message proposed here is a considerable overhead, this would slow down throwing NullPointerExceptions.

You could lower the overhead by not producing these messages if the exception is thrown frequently. It would be similar to the existing OmitStackTraceInFastThrow mechanism [0].

[0]: https://www.oracle.com/technetwork/java/javase/relnotes-1391...
> Legally speaking you're not allowed to insult anyone, wether as a n-word, nor as a nazi

This is absolutely false, at least in the US where Patreon is based. Out of curiosity where did you get the idea that insults are illegal (assuming you're talking about the Unites States)?
Google isn't the only one implementing AMP for email, nor are they the sole controller of what AMP implementations look like. It's an open spec. Yahoo, Outlook, and Mail.ru support it.
Windowlicker would be similarly nightmarish
Sure, I guess... What size businesses are you talking about? There are a lot of small websites that will go bankrupt (or, just close down) if this is passed, where there's a solo developer that has no time nor money to implement AI-powered filter to figure out if his users upload copyrighted content. If you're talking about Apple and Google, then sure--but the internet is mostly made up of extremely small, understaffed projects.

If companies catered to a lot more expensive to implement laws it's baffling to me why many, many websites don't work in Europe after they passed GDPR laws, then. I guess the fact that they can't use people's data however they please anymore doesn't make it worth it to serve webpages here..?
This is arguably more robust, because "foo.bar.quux.doTheThing()" is three potential null pointer exceptions in a row, and the code to do consecutive testing is ugly and verbose.
BBS: The Documentary

http://www.bbsdocumentary.com

https://en.wikipedia.org/wiki/BBS:_The_Documentary

https://archive.org/details/BBS.The.Documentary
The idiomatic way to use optional types is pattern matching (e.g. when in kotlin, switch in Swift). These pattern matching constructs tend to have a requirement that your cases are exhaustive. This makes it impossible to miss the None case.

However, they also tend to provide escape hatches for getting at the type directly, which defeats that and will still let you NPE.
Any ideas on why they use:

1. MessagePack (instead of, say, FlatBuffers – am I wrong to think that FlatBuffers are more efficient? (and the format was created by Google))

2. ELF binaries (instead of, say, taking a clean-sheet approach to executable formats)

Also, on ELF they say: "The loading position of the ELF is random and does not follow the v_addr specified in the ELF program header."

(They're talking about ASLR.) This just highlights for me that a more efficient format is possible, one that doesn't have a virtual address in its headers. Perhaps there are even bigger wins possible with a clean-sheet format.
This is it. A human being can identify the context. Taking Fountain as an example -- a photo of a urinal on a building merchant's website is an illustration of the product they're selling, not an infringement.

But the filter doesn't know about context, it just correlates two images... and you get "Comparison with copyrighted work 'Fountain', 75% match".

75% > 0%, so the filter says "non".
Steps to end-to-end encrypted photo storage and sharing
> I don't think that most people's conception of open source matches the FSF/OSI definitions.

To be honest, I'm still not sure what people think OSS is. I personally align heavily with the FSF model but that's mostly because I live in an industry (embedded) that obsesses over proprietary everything and thinks their shitty source code is the apex of valuable intellectual property (\rant) but I get that the story is very different on the other side where everyone is publishing Yet Another Javascript Library. Maybe this is all just a product of our environment?
That is why once they get 12-24 months under their belt and are attractive to other companies, you adjust their compensation to reflect that so that staying at their current job is attractive.

We have this huge problem in this industry where companies hire junior people, pay them below market (completely justified), but then don't bring them up to market rates once they are no longer junior. Fix your compensation and they won't (have as much reason to) jump ship.
Hey, thanks for the edits!

We thought Monterey would've had more options for Lyft / Uber than Carmel.

Yeah, I agree it's perplexing. And there's very little info online explaining why this could've happened.
> pushing low quality plastic products that don't last.

It also feels like it's killed any mid-tier options. Everything seems to be "cheap stuff made overseas", "same cheap stuff with a brand name wholly or mostly made overseas", and "expensive, but nice stuff".

E.g. go try to find a set of combination wrenches made in the USA for even triple the price of what you can get at Harbor flFreight.
Oops, your impression was pretty good because I swear I've seen people say that on HN before and rage quit after the first paragraph.
... until something that you are required to know (that was sent in the AMP part of the email) is not in the plaintext version of the email. Happened many times with HTML, and now there is another layer where that will happen.

Is people or the communication what stops working, and then the involved system, not a piece of software by itself.
The actual announcement:

https://gsuiteupdates.googleblog.com/2019/03/dynamic-email-i...