jkeisling/hacker-news-corpus-2007-2022 huggingface dataset:
My first guess would be respect for the company. Secondarily, plenty of results in google reveal that the policy (if somewhat unofficially) is that you can say you work at Apple on your blog, etc, but not really blog /about/ Working At Apple. Even if there's no official policy on it, it's just better taste to say "The thoughts of John Doe" and not represent oneself as "John Doe of Apple."

"There's a PR department for that."

All that said, there are plenty of writers/bloggers who work at Apple. Randsinrepose.com is a personal favorite, and contains the writing work of Michael Lopp who may be an engineering manager at the fruit company. This policy of sorts goes much further back than iPhone/Android or any other blog-hyped non-competition.
Are you aware of these square-hole adaptors being sold with standard drilling kits?
That's what I thought initially. But what if the client won't buy the basic option because it dosen't fit his needs, and can't afford the normal one? If the customer starts looking around for another service that offer a better aligned feature-price point, I might lose a conversion.

I'm not sold yet.
Perhaps they are used to using a driving licence instead of passport as general ID.

No perhaps about it. It seems to the average American, the word "drivers license" evokes "proof of identity" first and "proof of ability to drive a car" second, because they're using theirs as a general ID more often than for its original purpose.

It gets even funnier when American companies operate abroad and require "two photo IDs" in countries where everyone has a government-provided ID card.
I miss the point why we really need some sort of "identity providers" when it's we who possess our own identities.

It's the login-password pairs which are inconvenient (and, a lot of time, insecure) part out there. So, logically, the straight answer seem to be to get rid of this part in favor of something more usable, users can possess to prove their identities. For example, improving browser support for public-key crypto and key storage (think HTML5 <keygen> element). However, world has gone in a completely different direction, created "identity providers", who now actually possess users' identities (so you don't own your identity anymore), and, as a result, introduced more failure points to the auth process.

OpenID is neat and convenient when done right, but it was just a protocol invented to sign comments at other persons' blogs. It was never meant for personal identity management and architecturally lacks a lot of important points for that. XRIs may be considered some sort of solution for that (I-numbers are guaranteed to be persistent), but still feel somehow wrong.
The WSJ has some good journalism, but the editorials are often extremely disconnected from reality ( like the infamous "$120000 middle class family" bit). The Economist usually fills the articles with data, so you can disagree with the conclusion and still have a takeaway.
Virtru | https://virtru.com/how-it-works | Washington, D.C. | Fulltime | Javascript fullstack, Android, iOS, .NET

== Who we are ==

Everyone has a right to keep their digital content private and secure. We founded Virtru because we believe that exercising that right should be easy and convenient.
Virtru allows you to send end-to-end encrypted email using your existing email address and email provider with the flip of a switch.

Our browser extension for Chrome and Firefox allows you to send and receive encrypted email directly from Gmail, Yahoo, and Outlook.com. Our Android and iOS mobile apps and Outlook desktop plugin work with any provider that uses IMAP.
Our full time team of 16 is currently 50% engineers. We value automated testing, readable/maintainable code, documentation, and code reviews. We run in 2 week sprints and dedicate about 20% of total capacity to things the dev team thinks are important (technical debt, refactors, exploring a new technology, etc), while the rest goes to feature development and addressing bugs.

We are well capitalized with investments from Bessemer Venture Partners [0] and private investors.

== Current positions ==

- Full stack NodeJS/Javascript developer. Our backend runs on NodeJS (with dabbles of Python), our frontend uses Angular and Backbone (looking to consolidate!), and our browser extensions use our internal javascript framework to run in Chrome and Firefox.

- Android developer

- iOS/Mac OS developer

- .NET developer to support our Outlook desktop plugin

I work on the backend, so I can provide some details on that role. Our client facing API services are built on Express.js. We run in the AWS cloud and are looking for someone with deep experience deploying/maintaining services/infrastructure who can also help add new functionality to the application layer.
Some things we play with on the backend: NodeJS, ExpressJS, PassportJS, AWS (EC2, SQS, ElastiCache), CouchDB, Packer, Salt Stack, ELK stack (Elasticsearch, Logstash, Kibana), HAProxy 1.5, PagerDuty.

Some more information is listed here: https://www.virtru.com/careers.

== Get in touch ==

If you care about privacy and are interested in creating security products at a company which thinks that user experience is a first class citizen, please get in touch! Send a secure email (using Virtru!) to feedback@virtru.com with subject “HN who is hiring response” and tell us what interests you about Virtru. It would be great if you can provide some sample code that we can check out (github, bitbucket, etc).

If you have any questions, I’ll monitor this thread and/or you can email me directly (email in profile).
[0] http://www.bvp.com/portfolio/virtru
> About your first point : yes, go has exceptions, the so-called panics, but they are here for truly exceptional situations, those you can't recover for,

1) I recover from such errors in Java all the time. It's easy : execute finally's ("defers"), execute retry policy (go, incidentally, makes generic retry policies very fucking hard due to lack of generics. It is impossible to write a method "TryThreeTimes(method, timeout, params)" in Go.

2) It is extremely disappointing that after all the effort that Go forces on you for error handling there are still a dozen classes of errors (of the kind you find often) that can kill your program, even with error handling perfectly up to the Golang author's standards.

3) These errors happen often enough that it's not reasonable to kill the program if they happen, so you absolutely need to recover in daemons and the like. So any reasonably large Go program has to consider exception handling, recovery, and alternate method returns.

4) You also have the C++ problem : libraries should never, ever raise an exception ("panic"). But of course, they do (ok granted, the Go standard library is reasonably good about this, but the same cannot be said for github stuff)

5) Nobody actually does the error handling. You never see anything other than "return err" or "exit program with log message" in error branches anyway)

> I really think (and it looks like we strongly disagree on this point) it's one of Go's virtues to really distinguish between what's part of the problem you're trying to solve

Yeah we disagree here. I feel Go's error handling standard prevents me from focusing on the problem independently of what might go wrong, and this limits my abstract thinking. What makes this even more frustrating is that this is exactly the same problem C had.

> This is clearly not the way I work but that's a serious fault from developers if they do.

With the guarantee of quality developers, I'd develop nearly anything in C++. There is no problem in C++ if you have a really good team and there's just no beating the C++ language in too many departments (portability, abstraction, compiler quality, tooling, power, control of complexity in huge programs ...).

But the great failing of C++ is simple : it doesn't support junior programmers, or otherwise somewhat incompetent teams very well at all.

The question here is : does Go ? I don't know, but to me it's not looking good. I would argue that the damage that can be done by slightly incompetent programmers in Go far exceeds the damage that can be done in most other languages (ok, granted, maybe it's better than C++, but definitely worse than Java).
I think a pirate site that only distributed >5 year old content would get much more support. After 5 years the vast majority of works have already made most of their profits. Yet older and more obscure works are much harder to get without violating copyright. See the graphic on this page for example: http://www.theatlantic.com/technology/archive/2012/03/the-mi...

I think copyright should only last 10 to 15 years, but that's a battle that is never going to be won. If anything it will likely be extended indefinitely to protect Disney™ Corporation.
If no tv network will carry his remarks live, and no social network will give him a posting account, then he has no way of communicating with the American people and it seems pretty difficult to make the case that he is able to carry out his duties.

So I guess what I'm saying is: invoke the 25th amendment because he got kicked of Twitter.
> I don't understand what people don't get about the 1st amendment. A right to free speech, is set in stone in the US Constitution, a private company can enforce their own censorship, but having a company that wants to have the 1st amendment and is being forced to be shut down is not what the US is about.

Are you saying that Apple should be compelled to help Parler and amplify their speech/give them a platform?
clearly it’s more than that. these companies are more than just private companies they are social utilities. and might be regulated as such in the future. that’s my point.
That box was opened long ago.
Pretty sure that is exactly what will change.
The article itself explicitly generalizes the theory.
In a this ESPN article on Fabiano Caruana, they noted "In October 2018, Polar, a U.S.-based company that tracks heart rates, monitored chess players during a tournament and found that 21-year-old Russian grandmaster Mikhail Antipov had burned 560 calories in two hours of sitting and playing chess -- or roughly what Roger Federer would burn in an hour of singles tennis."

https://www.espn.com/espn/story/_/id/27593253/why-grandmaste...

https://en.wikipedia.org/wiki/Chess#1873%E2%80%931945:_Birth...
> You haven't given a reason for doing so.

You didn't see that HN thread about Amazon Prime shipments being delayed by as long as a month? :)
A nice perk for doing this is having higher confidence that the product you're getting isn't a fake knock off.
But could it help those who do not?
It really depends… tests in my city are 1-2 days right now I think, but priority cases like doctors will take the front of the queue and can happen all the time. Colleague of mine was tested and diagnosed (negative) within 4 hours, because her partner is a emergency doctor.
Some part of this signing amount is for domain name. about.me is valuable domain to have IMO.
In some instances it is more appropriate to link to a blog:

Don't abuse the text field in the submission form to add commentary to links. The text field is for starting discussions. If you're submitting a link, put it in the url field. If you want to add initial commentary on the link, write a blog post about it and submit that instead.

Personally, I think a comment explaining the motivation for linking to a blog rather than the original source, as dshankar provided, is sufficient to justify a blog link.
I agree that's the most interesting example, but I also think it falls completely under "office automation". It's not much more complicated to state with lxml (or curl + grep) than it is to state in text if you are fluent with your tools, but it's a bigger hurdle for the average Excel user.

But the example is not terribly useful for a programmer to use in a bigger project, because "put it in a CSV" is too loosely specified for further automation. You would at least need it to be in a specific character set, a specific encoding (html entities or not, BOM or not), specify what to do with invalid entries, the fact that some entries are required and some optional, etc. Even with this simplified example, specifying all these details if what takes time for a programmer, not typing out the code to do it.

Edit: Perhaps I should explain, the reason I'm thinking about this is because I am currently spending a lot of time making these sort of bite sized, well specified, and useful work for a junior developer to get up to speed with. It really is a lot of work.
If your wires take you 4 days you need to switch banks. I make regular international transfers and unless I miss business hours they are always in the receiving account the next morning.
Glad the tiger population are doing better!
Was a proud WWF supporter on saving tigers until I found out that their VP took out million salary($100k+) not exactly wellfare.
This felt similar to me to the academic world. I'm a lowly graduate student, but one thing I've been consistency surprised by is the way the most senior people in the field are often the nicest. Sure—there are assholes everywhere. But when you hear horror stories of a professor mistreating their advisees or writing horrid reviews or submitting trash papers, they are often the junior folk. Partly because this behavior doesn't pass muster in the community, and so people who act this way don't get tenure; partly because senior professors have tenure and thus less to lose by acting nice; and partly because, just as I think in the startup world, being nice actually carries large benefits. In fact, I might argue that recognizing the benefits of niceness—valuing future rewards, trusting other persons—requires intelligence, so that maybe nicer people are in fact more intelligent as well.

But maybe that is Berkson's paradox: I'm more likely to hear about mean or successful researchers, so they appear anti-correlated even if they are in truth independent.
>He comes from a culture where you are very blunt.

No we're not. Stop talking kak.
> From what I know, a symmetric key is more suitable to encrypting huge amounts of data.

Symmetric key encryption is more efficient, but the typical approach when using public key encryption with large files is to use symmetric key encryption, then encrypt the symmetric key with the public key, and then transmit that over the wire.

I imagine that the process used in this software is the following:

1. Generate symmetric key

2. Encrypt symmetric key using (known) public key (the private key remains on the malware owner's servers)

3. Delete the unencrypted symmetric key.

If these three steps are done before the user is told that their files have been held hostage, then by the time that they know they are infected, it's too late to do any analysis of the program, sniff memory, etc. (at best they'll be able to recover the public key and the encrypted symmetric key, which is useless without the corresponding private key). As soon as the ransom is paid, the malware owners will decrypt the symmetric key (using their private key), and send that back to the victim[0].

This could, of course, also use a different symmetric key for each file as well, in addition to the above.

[0] In theory, the malware owners don't even need to store anything per-victim, since the encrypted symmetric key can remain "safely" with the users the entire time. All they need to store is the single master private key.
There are a couple questions in the comments about LTS Haskell and related projects, I was thinking this might be a good summary. (tel's might be better, but I had already written this so I'll let others decide https://news.ycombinator.com/item?id=8834823)

Hackage is the core package server, comparable to RubyGems.

The Stackage (http://www.stackage.org/) project functions like a CI system for Hackage. Stackage builds and tests the group of packages that have opted in to it, ensuring that the latest versions all work together (when there's an incompatibility between packages, the authors of the packages are pinged to resolve the issue [1]).

When a build of all the packages succeeds, Stackage generates a "snapshot", a list of all the package versions used for that build (sort of like a Gemfile.lock/Podfile.lock, for the whole ecosystem). Developers can have Cabal (Haskell build tool) use the package versions from that list when installing new packages. This ensures that when you install a new package that it's compatible with the other packages you're currently using.

The issue with those snapshots (generated nightly) is that you'll want to get updates for your packages, but the snapshot generated N days from now might have packages that have made breaking API changes, making them incompatible with your application.

LTS Haskell attempts to fix that. It's based off a specific Stackage snapshot. For the duration of the LTS (currently 3 months), the major versions from that snapshot are locked down, but patches/bugfixes will continue to be released. This allows you to get bugfixes for your application while still getting the advantages of Stackage.

[1] As an example, when the language-ecmascript 0.17 package was released, the authors of the 2 packages that depended on language-ecmascript < 0.17 were pinged to update their packages: https://github.com/fpco/stackage/issues/390
Wow 185 req/s :) . Why do you even need more than a single modern cpu? All that cacheability.
Thanks for the link, Prose looks like it might be the perfect bridge between ease of editing and the control and flexibility that GitHub Pages provides. I'll give it a try.
How are low cost concerts and museums funded? Are donors sufficient? Is it the low cost of living and resulting reduction in staff costs? Is it sustainable in the long run?
Apple is like an upscale nightclub with high entrance fees and where a club soda costs $150. Facebook is like a cheap nightclub that gives you a club soda for free, but secretly takes pictures of you so it could sell them to whoever pays most. Google is a franchise that sells licenses to run branded nightclubs with cctv cameras on every corner and rfid chips in every club soda so it could get stats about your manner of drinking.
Instagram is cool and all the "cool" kids still flock to it (though TikTok is significantly gaining popularity). Whatsapp is a Facebook brand and yet doesn't raise any red flags with most people so that's another brand they could use.
Qualified immunity does not allow assault or murder.
Thank you so, sooo much for writing this illuminating feedback.

1) I just made the amount configurable. I had this feature implemented but disabled, because I didn't want people to stop to decide how much to ask for. One less thing to think about. That's how uploading to ptwi is 20-30 times quicker than Ks.

2) What would you suggest to improve this? Similar to (1) I didn't want people stopping to think about spam when creating the project. I had a version where the qrcode was in /prove and I didn't like the user flow. I also disliked it visually. I made three changes now that might help. Reduced the amount to $5 (I hope it's not too low), explained posting projects is anonymous and how it fights spam, and explained in /prove that making a project public will need to pay to prove the project isn't spam.

3) Maybe /project should include a link to a page that explains what cryptocurrency is and what money is. I'll add this.
> the argument for tenured faculty teaching courses is [...]

That's not the argument made in the link.
That Alexander started the substack under his real name only after leaving his job is a pretty big hint that it wasn’t about “demand[ing] that journalists pretend that his identity is secret”.
Was 'malware' an accident or a purposeful entry? (I read 'software', then did a double-take and read 'malware' instead...)
In terms of public relations (when it comes to the "unwashed masses"), Google has always been a very reactive company. This is at the core of some of their most intractable problems / failure to perform (e.g. "social").
Earl's on target here. If you spend five years obsessively learning the ins and outs of a particular language or technology, getting to know its strengths and weaknesses, and ideally at the end of that five year tenure, started contributing to advancing the state of the art of that language or technology, you'll likely be in the top 10% or more of that area.

I assumed that anyone who spent five years in an area would inevitably get to that point, but upon further reflection, it takes five years plus a passion for excellence and not being satisfied with "good enough". And that's something else companies look for --- they want 'A' players that are always looking to see how they can improve themselves, their environment, and help improve the people around them.

The good news is that in my experience there are many people who have come out of the military do have that ethos. So although I don't know you (Joshua) beyond looking at your electronic presence, I think you have a pretty good shot at becoming a world class expert. I definitely would encourage you to go for it!
Not working on firefox or safari on mac. This might be a problem?

http://game1-main.appspot.com/baked/game.min.js

http://game1-part2.appspot.com/media/music/level1.mp3
Another option is join the Marine Corps.
Palm and paper planners
Apple and low to mid level print shops
Apple and CDs
Netflix and DVD/Bluray (in progress...)
Amazon Kindle and paper books

This would be a fun list to really spend some time on
> I know the country was founded by criminals, but I didn't realize they still ran the place.

The head of state is still an inherited position
Corrected and thanks for the catch!
I built Notion as a little side-project. Just launched it a few days ago. The app is divided into various controversial social issues.

I have set up a backend that allows me to create/delete new topics within the app. If there is a demand for it, I might open-source the project to let anyone build their own anonymous app for any topic. "Anonymous app for sports" "Anonymous app for high school students" etc. Thoughts?
SEEKING WORK | Central Europe UTC+1 | REMOTE ONLY

I'm a senior full stack developer with over 10 years of experience working with enterprise solutions on premise and in cloud. My previous work experience as a system administrator gave me a strong understanding of enterprise infrastructure.

Recent work: Leading the re-engineering of a legacy B2B app to a cloud native app in AWS for a client in US. Responsible for software architecture, development and mentoring engineers of various experience levels, providing technical direction, optimizing cloud costs, coordinating efforts with other product leadership, and prioritization of work.

Tech stack: C#, Blazor, JS, React, Web API, Dapper, EF Core, MS SQL Server, Azure Pipelines/GitHub Actions, Docker, Linux

Cloud: Azure, AWS, Hetzner

Rate: $90-110/hr depending on project length

GitHub: https://github.com/Prokleta-Kuja

Email: hn [at] ica [dot] hr
You can not crash and still be shitty.

Your ticket purchasing process can be an immensely frustrating experience, dodging a horde of dark patterns coming at you from every direction.

Your check-in process may be a horrible user trap (you must check-in from home, and print a boarding pass there. Said check-in closes 4 hours before takeoff, and there's a 40 Eur fee if you do it at the airport) which the EU had to explicitly ban.

Your refund/rebooking process may be outright illegal, planning on passengers being unaware of their full rights.

In the end, your safety record may not come into play at all: I don't care if your planes crash or not, because I'm never, ever, boarding one again, and neither will anyone who listens to me.