skysight-inc/HackerNews huggingface dataset:
Ask HN: Distributed programming (computing) jobs?
I have experience in software engineering and I familiar with some distributed systems.
I started reading "Distributed Computing: Principles, Algorithms, and Systems" book
and I find it interesting so far. Also I found Seif Haridi YouTube channel is very helpful.
Overall it seems to be a very interesting topic in software engineering. However I'm sceptical about opportunities
in this field because I think it's very specific and based on my research there are a lot of companies that use
distributed systems in their products and only few of them develop distributed systems.
Also, I noticed that companies often use 'distributed-computing' term for their jobs where you will use Akka, Kafka and etc.,
and that makes it harder to find companies that develop distributed systems and platforms.
So I'd like to ask a few questions:

1. Do you know any companies that develop distributed systems (for example PROTOCOL LABS) ?
2. Is it hard to find a job for a beginner distributed programming engineer ?
3. What is the minimum knowledge required to get a job ?
4. What is your personal experience of being a distributed programming engineer ?
What is the future of distributed computing in your opinion ?

Once again, I'm not interested in jobs where I will use any distributed systems to build other products,
I want to be an engineer that takes part in distributed systems development.

Any information would be appreciated.
I am pretty sure that good ole Zbig is more of a part of the problem than the solution ;)
Has Apple compromised user privacy for other partners?
Don't forget the sell out when they finally jump the shark.
Yes definitely!

The biggest time sink when porting a package was to research a projects requirements and dependencies. To our surprise only a handful projects do this correctly.

If we could agree on a standard that captures the dependencies and requirements of a C++ project correctly it would be a huge win for the community.

Currently there is no buildsystem that enables users to describe the requirements of an project correctly.

We choose to support buck as a buildsystem mainly because it allows us to describe nicely the structure of a project. However like any other buildsystem it does not capture the full essence of a C++ project.

For instance there is no way to describe the set of compatible compiler and linker flags.

Many build systems evolved to be turing complete so we can write logic to handle various combination of options(eg. no-rtti) but this makes it really hard to reason about projects.

It turned out to be quite challenging to determine if two projects are compatible with each other - in fact it turned out to be as challenging as solving the halting problem. Is this really necessary?

I analyzed now over 300 c++ projects and I still haven't seen one project that truly needed a touring complete buildsystem to be build (Not even LLVM&Clang).

So yes - I'm convinced a metadata file as you suggested is the way to go.
>Any doctor who can be shown to have given addictive opioids to people that aren't terminally ill should be investigated.

Yep. Investigate all of us. High quality understanding of medicine right here..
Restful API testing tool – Hitchhiker v0.3, sync data automatically
I understand what you’re saying, however the only justification that is used for torture in modern Weatern states, is the procurement of time sensitive information. The prime example which comes up over and over is the Gestapo interrogating French resistance. The Gestapo realized that they had 24 to 48 hours to get information worth acting on. After that the organization would restructure to accommodate the loss of the member and their information.

It does not work. Over and over again people were willing to hold out for as long as it took, or they gave bad information, or they broke but had been given bad information themselves just in case. The result is that the Nazis had to continually treat every break in intelligence as suspect, run down every suspect, and of course that took too much time. You also can’t torture people in some kind of magical and unlimited way, torture takes time too.

The result is the torture just doesn’t work as well as the alternatives, some of which can work very quickly. Worst torture makes people lazy and unprofessional that laziness and unprofessional conduct spreads to the organization. The kind of people who could be skilled and practiced torturers make poor policemen, intelligence officers, and soldiers.

This argument is much more fully and cogently made in the book Torture and Democracy, and there has the benefit of being fully cited. The bottom line however is that for whatever use you could think to put torture to, they would be another tool with a better success rate. Torture is not a science, and the results are predictably poor compared to scientific approaches to interrogation.
>> Vulnerabilities happen from wrong function calls, yes, but also through using the wrong types of calls for the particular purpose.

> Which is detectable through static analysis of the type signatures -- at least to the point of ensuring that a threat assessment document includes a section on what they did there.

I don't think you read prior to replying. Type signatures are orthogonal to the purpose of code. Just because a call is made to XTS don't convey that disk encryption is used. That is the issue that you glossed over.

An IDE only has enough information to threat model an application correctly if it had enough information to write the application in the first place.
Need malware removed from macs
Anyone available to remove malware I have on my iPhone 6s, Macpro, etc. Devices not new, some old. Can pay, not much.
DIAL Open Source Center Seeks Program Leader
This is from nearly a month ago. It’s also outrage crap.
We all have stuff to hide, but shouldn't we agree that we shouldn't?
I'm a bad product manager. The % should round the value to a tenth and then concat.

This is a silly example, of course, but the real world isn't short on creativity/silliness.
Were they not digitized yet?!
Several earlier submissions of the same news:

https://news.ycombinator.com/item?id=15411533

https://news.ycombinator.com/item?id=15414884

https://news.ycombinator.com/item?id=15413036

https://news.ycombinator.com/item?id=15417137
Last year there were 29,000 categories that could be targeted. If an ad sales rep wanted to close a deal, how difficult would it be to add one more for recent burn victims, or people who recently bought a specific product?

From the links that m_ke posted, facebook already has ties to loyalty card information, so it's very possible that they didn't need to do any inference, they just had the data directly.

In any case, the main point is that facebook doesn't need to listen to what people are saying, it has a ton of other data streams that could explain the stories in the link.
Not sure about fat cells, but IIRC there has been some work in using algae to generate hydrocarbons from the air. I can't really see "fat in fat cells" being better than alternatives that skip some steps, though.
You're completely ignoring the power this gives Facebook.

This completely eliminates any opportunity for competition to enter the market. How likely is it that any future competitor will be able to get this same deal? How much money is Facebook paying to subsidize this internet? How about any links to information Facebook does not directly host?

This attitude is a surefire way to ensure our future is controlled by a select few. The solution IMO should be cheaper, lower bandwidth, options. No data caps, just less speed. Like ELP plans in the US.
> I've done all of these things since it's my job.

It's weird that this is your day job and yet you tell me that I should mark a certificate as "trusted" when we both explicitly acknowledged that the problem was with certificate pinning. You didn't answer this part: how long does it take you to manage to intercept Android HTTPS traffic for a brand-new, never-before-seen application that uses certificate pinning on your day job?

> I haven't tried Facebook, because I don't have any confidence in the surveillance hypothesis

Well then try it with Facebook. If this kind of thing is really your day job then it shouldn't take long, and you'd do everyone a favor by (a) showing that nothing is going on, and (b) teaching people how to do it themselves so that the myth doesn't keep spreading. People would appreciate it.

> Furthermore, this could be proven with some fair reliability using correlation only.

No, it can't. They don't need to be sending raw audio. They could just do some rudimentary speech recognition and send it along with some other routine data.

> Does the app access the microphone while sleeping? Nobody has presented anything _close_ to evidence.

I've personally logged it accessing the microphone when I've been scrolling on my news feed. Though I don't see why you'd believe me anyway.
you're weird, if you want a screen protector please buy one and not depend on a thin plastic film ...
I think it was a combination of react-router and react-router-redux, and something I was doing for SSR that led to the issue. The initial fix was just to delete the react-router-redux data from the store just before JSON.stringify'ing it.

There were a number of weird things that were specific to my usage, so I'm not sure that the vulnerability would be there in a "proper" setup.
Yes, it's probably just some hashing function mapped to words.

But they do map the entire earth, including oceans.
Your story is amazing, but it is an anecdote. The data found by researchers about the dangers of Halloween candy suggest that the risk is more or less non-existent. The point is not that people should think no one is out to get them, it is that they ignore real dangers because the media likes to talk about imaginary ones, and ignore real ones like pollution, which are not as exciting.
Moore's own words in full[1] are far more interesting, provocative, and well-written than this Guardian summary.

[1] - https://slovobooks.wordpress.com/2014/01/09/last-alan-moore-...
Even if it is, that still means you're doing it again.
Meeting Owl – 360-degree video conferencing camera
Duplicate? https://news.ycombinator.com/item?id=15411533
As we know it, however there were farms and stuff there first
It would be weird if that sort of coincidence never happened. Two incidents of this happening to you ever doesn’t sound like much. Maybe even a bit low.

If they really are using audio for ad targeting like they do with search history, then it should be easy enough to prove it by experiment.
How to start and run a software lifestyle business – Joe Albahari [video]
One important reason for equals/hashCode on data objects is that you can put them into sets, and have them uniqued correctly.

Also, do you really never need to call .equals on data objects?
Rewards cards / loyalty card are designed to incentivize you to spend more with the stores. Ostensibly reselling data is a lot less valuable than directly trying to convince you to shop more at their establishments
In Europe, wine, beer and cider are alcoholic beverages subject to special regulations and taxes. They are absolutely not considered as regular food. It’s true, however, that the regulations and taxes are usually lighter than for “hard” alcoholic beverages.
I'm the voyeur.. Wishing to see what kids post (of their kids). And coworkers. I have access to their cloud, dropbox, google, etc... But it's too hard and more importantly not their platform of choice to share.

So FBs other stuff like news is not why we have FB. It's like turning in the Today show and hearing Bryant Gumbel and Jane Pauley at 7am to see my family's news, only. A morning habit. But i dont have to hear the news. Five minutes and I'm done.
> Like the 'visitor pattern' -- does any pattern intro tell people that this exists only because Java and C++ have no multiple dispatch?

It's not exactly a secret. The Double Dispatch wikipedia page has a visitor section: https://en.wikipedia.org/wiki/Double_dispatch#Visitor_patter...

> Java, the language without verbs

Right. But in the C++ standard library, they use a version of the factory pattern (see make_shared) to allow for some optimizations and nicer syntax.

Separating some construction options from the class definition itself allows for more separation of concerns with no real loss to encapsulation.

> I don't understand 'patterns'.

I mostly agree that patterns help you work around language limitations. Though having names for concepts is generally helpful to help move the state of the art forward. There are "sidecar", "proxy", and "broker" patterns in system design. If we didn't have those, we'd have to reinvent prose every time we were describing those maneuvers to our coworkers and (even harder) strangers in the industry.
> having the compiler remind me the places I need to update (such as pattern matches)

What you're calling a reminder is not just a reminder; it's a requirement -- you are obligated to go update those places in your code before you can deploy/execute the code.

Which is the very definition of coupling.

This isn't just theoretical. I've encountered this pain again and again in my career. This kind of coupling is severe impedance. Even worse is when the coupling spans teams in an org. It is the difference between pushing a fix or business value out to production now versus having to coordinate across areas of your code base and/or architecture.

There is this feeling of control by enforcing every part of your code base play the same game. But when you break out of that, and realize it's a game. That you don't have to design your code such that it has to be updated altogether, then you realize that types are only encouraging you to do this unnecessary thing. You can design very powerful systems with complicated behavior with minimal coupling. Where you get to choose what parts of your code you update at any point in time.
What is the meaningful difference, in the context of tedunangst's post, between an entitlement that allows surreptitious recording of video and a backdoor that allows surreptitious recording of audio?
> The Liberal party is the conservative party. No Conservative party in Australia AFAIK.

You a little behind the times. That was true many years ago, in the Fraser years. Now it's "The The Liberal party is the conservative party. There is currently no 'John Stuart Mill' liberal party in Australia".
So the movie had a huge promotional campaign and nobody noticed or cared? It made $28 million on its opening weekend, 16% of its US gross. This isn't some unknown movie that built up in popularity as word about it spread around.
On the topic of having nothing to hide, the following description of how 'privacy' differs from 'secrecy' really opened my eyes to the importance of the whole privacy issue and why not having anything to hide isn't an excuse to give up your right to privacy: What you do in the bathroom is not a secret, but you still want to close the door—you still want your privacy.

Everyone knows what happens in the bathroom, but everyone also understands that you have a right to your privacy in there and they don't expect you to leave the door open (unless, of course, that's your thing).
Perhaps because everyone looks at the front of their card every day and in doing so, catches a glance of the expiration and card number. The front of most cards is also much less "busy" than the back, allowing for things to pop out.

Put these numbers on the back of the card, and I think they'd be fairly hard to find for first time buyers. So, to answer your question, maybe the solution is to bring the CVV to the front of the card? ...or does that defeat the purpose?
Startups and the art of the “one thing”
As a sometimes-user of F#, I’m quite happy not caring about a dead-end technology like UWP and .NET Native, thank you very much. I’m glad everyone else seems to agree about that, too.
Is Kotlin actually simpler than Scala? It seems to be less powerful in a lot of ways, but on the other hand, it looks like a lot of Kotlin's features are special-case things, whereas Scala's features are largely orthogonal and composable.

I haven't really used Kotlin much, so I may be wrong, but that's the impression I get.
> Java has scoped 'destruction' (called try-with-resources).

Java's try-with-resources (and Kotlin's equivalent, .use()) are a start, but C++'s (and Rust's) ownership model is stronger.

Java's model works fine when the resource doesn't have to escape the try block (and when you never forget to use the try block). But if you have a resource which might or might not escape the block (that is, its ownership might be to be passed to the caller, or to a separate long-living object), you have to do it manually, and if you're not very careful, you can have places where a stray exception leads to a resource leak. (Yes, this bit us recently at work, both the stray exception and the "another programmer didn't call .close()". Workaround for the later: finalize()...)

In "modern" C++ style (which avoids manual new/delete most of the time, instead using unique_ptr and similar), ownership transfer is easier to make reliable: you can move the ownership into the return value or into another object, without leaving any gaps where a stray exception could leak the resource. And the default is to have ownership, so less chance of leaks due to forgetting to use a try block. Rust makes it even easier to avoid such leaks (outside of reference cycles, unsafe code using raw pointers, and the "leak it on purpose" mem::forget function).
"It is possible that facebook has access to a stream of Target purchases" ...

It's not possible, it's simply true. In fact, this feature of the facebook ad platform is available to any advertiser on Facebook/Instagram/etc, whether you have $100 to spend or $100M.

You simply upload your customer's purchases to Facebook with data such as zip code, email, etc etc which Facebook then uses to optimize your advertising budget and find more customers similar to the ones you already have (the feature is called look-alike audiences).
Why Computers Should Be Hidden
I feel like you're missing his whole point, which is the use of superheroes as a kind of escapism from the complexities of life. Citing superficial similarities to mythical figures is just a way of sidestepping his actual arguments.
ISH: Integrated Sensor Hub

IE: Innovation Engine

There's also the PCU Package/Power Control Unit that no one talks about.
PCI-SIG Releases PCIe 4.0 Specs
I suppose that's a loss but thousands of people lost homes and everything they owned so I'm having a hard time caring.
What can we do to prevent this? Use another service? Make it more difficult to link information together with use of per-website generated emails, burner phones, etc? Just seems there is room for something to come along and change the game, just not too sure what that thing is.
zero days and the privilege escalation are a luxury.

bad code is often plaged with injection/sql injection. Which sandbox does an absolute NOTHING to protect you from. After all, it is all within the expected side effects of your code.
I work in Health IT, and I'll tell you the industry is at least a decade behind every other industry in part because of how paranoid CIOs are about letting researchers play with their data, even when the use cases are perfectly legal. The reason Health IT seems vibrant is because health systems are only now waking up from their stupor.*

Also many providers still avoid the cloud (despite proven PHI compliance) and run their own inefficient, in-house server farms with thousands of tech staff because of this irrational fear. This causes a number of problems:

- It assumes a hospital system is better at infrastructure security and maintenance than Amazon or Microsoft

- Server costs per project are stupidly expensive. A VM that goes for $10/mo in the cloud ends up costing $200/mo to whatever department that foots the bill.

- You can't deploy a VM or app with a click. Instead you need to file a demand, then someone needs to make sure they have the resources available, then someone needs to manually spin up a VM for you...

- You can't build services that dynamically scale: this ends up being a problem for computationally expensive ML work
- Tech spending on a hospital is overwhelmingly spend on maintenance and uptime rather than innovation or purchasing solutions

I could go on forever.

* This is also complicated by the fact that the industry isn't really incentivized to improve your health. Why run a predictive model and intervene to reduce your need for a stent when I make money from that operation?
At least the distraction now isn’t blood on the sands of the arena, or burning witches. Most people want to be distracted most of the time, with sports, sex, drugs, music, movies, tv, books, learning new things, family... it’s called living. We can’t all be joyless pricks like Moore, who haven’t learned even the simplest lessons or history.

“There can be no disputing matters of taste.”
There was a post about OpenFermion (I think?) yesterday. It’s a framework for simulating quantum computation of quantum states. They said it could help, one day, to do things like model chemical molecules before they exist. I’m not sure I am portraying the project well enough, but the site suggested quantum computers would allow such simulations and associated breakthroughs.

As for why cryptography is a killer research area for QC: that’s where some obvious fiscal incentives exist most obviously.
Java is commonly criticized for being too verbose, but I never understood why. I agree it is verbose, but verbosity isn't really that bad of a problem. Programs aren't harder to write, they aren't more bug prone, and they aren't harder to understand. On the contrary, high verbosity means less information per token, making it easier in my opinion to read.

A good example is the anonymous class. They are portly and wasteful of vertical space, often costing 5 lines when one would due. But, the amount thinking per line is greatly reduced. In order to visually afford anonymous classes, logic must be simplified or structured, commonly by splitting up a larger function in order to fit it on a single screen. An arguable misfeature of the language has a convenient side effect of forcing best practices.
> I'd go for passing creator functions around over defining factories

Just call them "factory closures" and everybody wins.
A fairly reliable and simple test is this: leave your phone around content for several hours of a different language and see if ads related to that language show up.

It's surprising to me that people here are still debating this. I believe it's been going on since the original iPhone came out after a friend told me a very specific product appeared for her on Facebook immediately after she spoke about it and went to go look it up on her phone.

I don't think Facebook would stop at any measure to get all the data they can from you if they can get away with it and frankly anyone who does is extremely naive. It's right there available to them. There has never been and may never again be a time when companies (particularly Facebook and Google) to obtain as much sensitive data as is available to them from us without our knowledge, without external oversight, and without repercussions due to the lack of legislation.