skysight-inc/HackerNews huggingface dataset:
FWIW:

Every year I put in my resume at the lowest most junior software engineering role I can find at FAANG, but I never get passed the resume stage despite the fact that I have a bachelor/master in computer science and 2 years of working experience (1 in teaching web dev, 1 in software engineering). I guess it must be that I'm in Europe/European, it's tougher there? I applied for European places too.

I also applied to non-FAANG companies with its own issues (e.g. companies not replying or sending 40 hour code challenges), but it just hurts that I never got a test even by the companies I always wanted to work at when I was still at uni.

Because of that, I lost the whole "you're a new graduate!" thing and it made me directionless. Before Covid I applied for jobs for 1 year and failed. Then I got a job, which was amazing and I was really grateful for. Unfortunately, the founders felt I was too entrepreneurial and didn't stick enough to being just a programmer (note: I programmed 90% of the time) and had a big culture clash because of it, so I left. I can't work at a place where I know that I don't fit in the culture. Now I'm on the hunt again.

The whole process makes me feel inadequate while I know I'm not! I know a thing or two and have even way more to learn, that does not mean I'm inadequate. I was one of the most motivated students at uni, because I love an intellectual challenge and love working for a bright future. While I still cherish my love for intellectual challenges, I am not working for a bright future anymore. I don't see one.
Look, anyone should be able to see that this kind of de-platforming is way out of hand. As if tensions weren't high enough as they were in society already? It turns out, that building your own platform isn't good enough for the megacorps that set the tone nowadays, so if you build a competitive alternative, they send their digital mafia-torpedo to take you out.

Do these people think history will be kind to them when the pendulum swings back against their favor, or what? In my opinion, the people behind these decisions have a lot of bad stuff coming their way, and for good measure.

Perhaps after all, the game was rigged from the start.

https://www.youtube.com/watch?v=kAAlEoLRuTA
You should write an operating system, clearly Torvalds and the Microsoft and Apple kernel developers have not reached your level yet.
Just go to the Waga gate, walk in backwards, and say you’re leaving.

On a more serious note, I was surprised to learn how little travel there is between two countries right next to each other.
I loved the pictures you took, i just can’t wait to go to northern Pakistan
Why do you think there is a virology lab looking at zoonotic diseases in Wuhan? Is it not likely that a high prevalence of zoonotic disease there, historically, has led to specific interest? Why is the Durham county hospital causing all this coal miners black lung disease!

Why does the Liverpool school of tropical hygiene and medicine cause this huge spike in non indigenous malaria!

Seriously: the wuhan virology lab is there, because the problem is there.
I learned a couple of things during a brief teaching stint. First, no matter how much math your students learned in their high school and college courses, you should expect to re-teach the concepts that are needed for your lesson. It needn't be extensive, but your students will thank you for it.

Second, don't introduce more than one hard concept at once. Asymptotes can be reviewed with pure math functions such as polynomials, but that's as far as they got in high school math. Then there are the other "interesting" orders such as log(n) that can be introduced, and you can show graphically why they're useful.

Now you're ready to discuss the order of algorithms.

I'm not a computer scientist, but that's how I learned it, and while I don't remember all of the algorithms today, I still understand the derivations of their orders when I see them.
The easiest way to mitigate this is to require two-phase commits on any transaction above X% of the pool.

A flash loan requires that the funds be returned before the end of a transaction. If removing funds is a two-step process, then by definition you can’t use attack it with a flash loan.

Of course there’s always the possibility of someone with that much capital to stake attacking. But the number of participants with $50 million in funds lying around is a lot less than the number with $0. It drastically shrinks the attack surface.
Lots of people studying UX design but not actually using a lot of computer programs.
On the contrary, Junk folder is only useful if you go there regularly and check that non-junk mail didn't get there. Especially for services that have too much false positives, like gmail.

Otherwise you can just drop the mail you'd put there immediately on reception and not even store it.
_i_am_tld.cloudfront.net IN TXT "yes"
_i_am_tld.higashikawa.hokkaido.jp IN TXT "yes"
What I’m failing to articulate is that it seems like if you can reliably look ahead to detect a “weird” but technically valid result of the physics engine, you’ve also detected the flaw in the physics engine that led to that result. At that point you should just... fix the bug.

“Let’s monitor in real time for whether any possible combination of inputs could produce a technically valid but undesirable state” doesn’t sound any less complicated or more effective than finding bugs and fixing them.
Facial recognition tech can expose political orientation from [..] facial images
Wow! That's impressive. Did you just whip this up? :o)

I've got 500KLOC C++/Qt running under Windows and macOS. I wonder if Qt have any plans.
That was a very heart-warming story. I really love your story and your product (both amazing). Webflow helped me get back into coding. I will always be grateful for that. :)
I like the idea myself. Either everybody gets free speech or nobody does, the law can be amended to force accommodation of unpopular speech or it can be torn down so that everyone is equally silenced. I'm well passed letting millionaire sjw children do whatever they want.
> It's never fine.

It kind of is, though.

The idea is that the full algorithm is "automation plus some guy". Automation takes care of 99.9% of it, and some guy handles the 0.01% that's exceptional, falls through the cracks, and so on.

The problem is when you scale from 100,000 events per day to half a trillion, and your fallback is still basically "some guy". At ten failures a day, contacting The Guy means sending an email, and maybe sometimes it takes two. At a million failures a day, your only prayer of reaching The Guy is to get to the top of HN, or write a viral Twitter thread.

There are some things which are important enough that they can't be left up to this formula, and maybe you're thinking of those. I'm not, and I doubt the person you're replying to is either.
Beethoven worked as an organist before he began to go deaf, and pipe organs had wider range than modern pianos (as well as playing louder). Despite this he composed very little music for the pipe organ. This makes me think the increased range in his later compositions was just the natural tendency for composers to increase the complexity of their works as they gain experience.
This is a pretty biased take from that random person on Twitter that ArsTechnica is quoting (this is all sourced from just this person's tweets). The proposed bill has value in terms of gauging legislative support, inviting copycat bills, in terms of building momentum across states, and ultimately leading to a better piece of legislation that meaningfully protects citizens from big tech censorship. It doesn't have to be viable or "succeed" in the first iteration. You see this tactic (passing something that has no viability) all the time from legislators and activists that are left-leaning in states like California/Oregon/Washington, and now right-leaning states' politicians are adopting the same strategy as well.
This is like the awful paternalistic version of my thought. Ha. My guess is that there's a implied agreement, "keep to your promises about how Signal will be run and developed and eventually the loan will be forgiven altogether; try to burn me on those promises, like Zuck did, and that'll be a $100 million gamble." And sure, with inflation, the longer they're around, the less daunting the figure will be, but that may be the point, or the loan could be refreshed with more money that just keeps the prospect of repayment a perpetually serious prospect (it was doubled once already).
North Dakota should host it's citizen's speech.
This advice mostly makes sense to me now, but coming in as a newbie, I didn't know what either `Box` or `dyn` meant, and I didn't want to just cargo-cult copy-paste. A newcomer to the language has to deal with error handling right away, long before you need to know about either `Box` or `dyn`.

I sort of wish there was some official `Outcome` type defined as an alias of `Result<T, Box<dyn Error>>`:

fn main() -> OutCome<()> {
foo()?;
Ok(())
}

And then all the crates that offer their own `Result` types would have offered an `Outcome` insteaad: `io::Outcome`, `fmt::Outcome`, etc.

It's not that big a deal, eventually we'll all struggle through — but `Box<dyn Error>` is a bit confusing at first.
Like some kind of perverse blockchain, no site is ever removed, even though most phishing sites don't live long.
Is this an excerpt from your woefully unpublished startup culture fanfic novella? You can't just leave us hanging.
I have something with more general usefulness. It's called Java. I don't need a programming language to build my programming language.
I take 5k IU of Jarrow Formula D3.

What is the recommended amount of K2?
You could but I don't think it would be the best tool for it. When I think of Akka, I'm using it because I don't want to worry about which node in my cluster any given actor is on, I just want to be able to scale horizontally and messages are routed appropriately.

Akka embraces the "let it fail" mentality where as nodes go down (just as pods go down in Kuberentes), you don't have to worry about where your processes are running...they just are...somewhere.
The article is interesting in that it discusses the distinction between "classical AI" ( rule based ) versus modern AI ( ML ).

It gives example after example of how we repeatedly attempt to make classical AI work and it fails. The goal overall of the article seems to be to claim that ML is the correct path because hard logic based AI is too complex and will never work.

I think this is a bad view because it doesn't acknowledge that both are necessary.

It is painfully obvious that humans have an internal dialog, and that the subconscious also engages in a sort of thought process involving tokens as well.

There are clearly many possibilities that we consider as people. These possibilities follow something close to logic but heavily influenced by notions that have been built through a non-logical process ( our "beliefs" )

What is hopelessly inadequate is pure neural networks and/or trained ML. To ever approach anything similar to human thought we will have to use tokens.

Doing that is very difficult but not insanely so. Using the word insane implies that such a process is not guided by some predetermined logical system. I agree it is not fully logical, but not that it is insane.

The article is too dismissive of classical AI and seems to imply that those pursuing it are wasting our time.
https://developers.google.com/safe-browsing/v4/update-api#ch...

TL;DR is you download a chunk of SHA-256 hashes and check if the hash for your URL is there. There is of course the chance of collision but that is minuscule.
I want to give the deno folks a shoutout

I've been learning ES5 for work, and I wanted to get better at more modern JS while I was at it. I decided to write JS solutions for Advent of Code and had to choose between deno and node.

My preferred way of running an advent of code challenge is to pipe in the problem input. I ended up using deno cause it was a lot faster for me to figure out how to make that happen (as somebody who's only used browser-side JS)
Yes, but the point is, don’t sell it that way.
In over 30 years of programming, I have never had to debug a makefile. I think I would just retire if I ever had to.
Looks like a great extension, hoping they don't use it to steal my information since it has full access to Chrome!
I would also bet that the right kind of escalation leads directly to the desk of someone who will give them a refund.
I remember reading that Valve's internal structure nowadays is lords of fiefdoms even if they communicate externally that it's not. The only difference from other companies is that there's no org chart saying who the lords are, you have to discover that yourself.
Yeah, Dgraph is doing exactly this, building their own gateway as Caddy modules: https://twitter.com/caddyserver/status/1349434660107939841

> I'm impressed with how easy this was. I think I'm starting to understand why Caddy is not just a proxy, but a system for hosting apps.
Having it on a VM host bypasses a lot of bios delay.

Optane, at the time we bought it, was significantly faster than any consumer SSD.

With a Windows 10 install mounted on the Optane and installing it to a Optane hosted VM, the install takes four minutes if you have that file that answers the quetions Windows needs to install.
I learned to code as a kid and only met mathematicians who consider themselves programmers as an adult.

Some opinion, maybe unpopular:

Big O notation can be quite informally understood by normal people. It is academic people that make it and keep it challenging because it is how they understand the world. This is why interviews have stayed materially gruesome despite loud voices wishing it weren't so. It's the language of the people that rule this industry and you either learn it or leave. That said, we can change it too, if we want.
What is the name for this abhorrent trend, and how did it originate and become ubiquitous?
You can have that with a queueing system, too. As long as you don't ack the message before you're done processing it, the messages that are processing will be sent to the next available client on crash
No, blockchains are not the future, they are really the reason why one transaction can happen at a time in the whole world. Even Ethereum 2.0 will have shards which will do away with this anomaly. The only reason flash loans even work with no collateral is because you can be sure nothing else is running on the “world computer” while your transaction runs, so you can roll it back with no risk except gas fees.

Vitalik himself acknowledges this, the guy is quite honest and straightforward about its limitations: https://thenextweb.com/hardfork/2019/08/19/vitalik-buterin-e...

Vitalik Buterin: Using Ethereum is expensive, and its blockchain is ‘almost full’
He also said blockchain's 'problem' is that every computer verifies every transaction

Actually blockchains are a first-generation technology that do global consensus for every block, which literally means all transactions in the world must go through one computer in the world (the miner) although it’s a different one each time. And the situation is actually worse, since you don’t know who would mine the next block in advance, every transaction must be sent to every potential miner! Imagine if BitTorrent had every computer store and seed every movie instead of using DHT.

The ability to send or loan arbitrarily large amounts for a fixed fee is a symptom of centralization. In a fully distributed network, transaction fees would have to be proportional to transaction size!

Almost every other protocol on the Internet does not have such bottlenecks in its design. No one asks how many emails or websites can be served per second. Blockchain is trying to secure every transaction using the entire network! That is why so much electricity is wasted just to do 7 transactions per second.

The next generation of crypto will actually be able to power payments using embarrasingly parallel architecture. Until then, we have blockchain.

Ethereum is nicknamed the “world computer” for a reason. Gas fees are super high for small transactions like paying for coffee or voting in a secure election. Just one app KryptoKitties can clog up the entire network.

We built Intercoin apps on top of Ethereum (https://intercoin.org/applications) but we are not going to wait around for Ethereum 2.0 - which is blockchain also. Kik Messenger and others have long gotten off.
I'll tell you a mini story about a coffee shop I visited few days ago. That place was hidden in yelp search when I looked for 'coffee & tea' in my area (their yelp page existed). While I don't know the actual reason why this happened, I immediately discovered that coffee shop using google (as a double check). It gave me a charm because it reminded me a fact that if you have the 'right service', people will find out. Given this flow, I started to believe gatekeepers might begin losing their odds.
They force their own title bar so they can add an extra button and some icons to it. The extra button is part of the security UI so can't appear on the web page area.

Adding an extra always-visible toolbar/address bar is the alternative, although wastes screen real estate for all users all the time.

Overall, I would say on balance breaking native toolbars is less damaging to the average user than wasting 60px always...
Volley – Asynchronous video conversations for work
Because there's no certifying / accrediting body for HIPAA compliance--practices that comply with the law do not constitute a certification process--what you get is a letter from an unaccredited firm, not a certification. As such, sophisticated customers don't put that much stock in it.
It is a trade-off. Compared to a standard bar chart, this version makes it easier to judge partial cumulative sums of several adjacent bars.
The term "intellectual property" lumps together quite disparate concepts. It's not helpful to use it. And "theft" is a poor analogy.

I'd say society wouldn't change much if copyright were abolished. Probably for the better. Claiming authorship should still be protected in my opinion, see next point.

Trademark law gives some nice protections to consumers, so I'd vote for that one to stay.

Patent law? Ahhahaha where do I begin? To think that we rely on that crutch to develop medication makes my head hurt.
There were several teams, and it’s my understanding that some of them had paying clients, which is pretty controversial. I saw a bunch of social media posts that were veiled complaints about bringing paid clients into a such a serious situation.

With the possible exception of the other teams on the mountain, I think all the big mountain climbers are psyched that it was the Sherpas to do it.
Sure, a subset may struggle. That's beside the point. I'm most interested in giving people who, as I mentioned, have a basic fluency with functions of the real numbers the answer to why you drop constant multiples and everything but the most significant term. If I wanted to make sure everybody understood (which isn't even theoretically possible), I'd have to include the better part of a semester-long course in my explanation, and that defeats the purpose of having everything in a digestible format.
Sure but the point is it's built into Akka. If you're looking to replace an external queue system, Akka will replace most if not all of it's functionality.
More radical liberal bias controlling our vision of America
Xbox’s “instant on” feature could consume 4B kWh by 2025
As an America, I absolutely adore how friendly people are in the parts of Latin American I've been to. Is it fake or forced? It doesn't feel like it to me, but I barely speak the language, so I'm probably missing tons of subtext.
This is counting the number of bugs, but what about the severity?

https://curl.se/docs/CVE-2018-1000007.html is a logic bug that may cause sensitive headers to be sent to the wrong host on redirects. It's slightly obscure, but I can imagine what an exploit looks like.

https://curl.se/docs/CVE-2018-1000120.html is a memory bug that lets you write a single null byte out of bounds. That's a security issue, but exploiting it seems less straightforward. (Though maybe it is more dangerous than the other one on net? I don't know enough about these issues to say.)

It could be that Rust would prevent half the vulnerabilities yet prevent much less than half the danger caused by vulnerabilities.
I think this works, but only in cases where two things are true:

- the team is actually responsible for the date—often, there's massive asymmetric pressure to aim for less time
- if it's an actual deadline, the team has the autonomy to adjust scope to hit it

In my experience, the worst situations happen when estimates are treated like deadlines. An estimate has to have uncertainty. Without some way to manage uncertainty, you'd have to pad estimates out to like the 99th percentile to hit them consistently, but people read estimates as averages and push back against that. If teams are consistently going over estimates, it's a problem in how you do estimates, not how you're working. (Which is also why evaluating people's performance based on how well they hit estimates—which seems common on a lot of teams—is completely misguided. Estimating is a nice skill to have, but it matters far, far less than the quality of the work people actually do!)

On the other hand, a deadline is only a deadline if you're willing to adjust scope to hit it. If there is a real deadline and it looks like we might not hit it, the answer isn't "try to be more productive" (which is all that "work harder" actually means!). Instead, we should figure out how we can change what we're focusing on and what we're concretely building in order to still hit the underlying goal as well as possible with the time remaining. If we're working towards an estimate rather than a deadline, we might still adjust scope and focus, but the first step would be adjusting and sharing a new estimate.

But if the culture is that estimates are hard commitments and you can't adjust the scope or the timeline, the work environment is going to be absolutely miserable, people will get stressed out for no real reason and the quality of the work is going to suffer. People will do whatever it takes to technically achieve estimates, even if that means cutting corners everywhere, sweeping bugs under the carpet, not spending any time to iterate or improve on the system and indefinitely putting off engineering work that has a small cost now but gives a massive medium- to long-term benefit in productivity. A month or two into this process and you move towards a death march that burns everyone out and, on the time scale of months, accomplishes substantially less than a less aggressive approach would have.

I'm currently working with a team that has this problem to some extent—of course, the managers think of it as "accountability" and "a focus on delivery"—and in a bit over a year, they've built a codebase that already feels like a legacy mess, while accomplishing what would have been like eight months' worth of work with a better engineering approach. It's pretty frustrating to see and I'm trying to change things, but not sure whether I'm going about it effectively.
ID software is owned by Zenimax which makes a considerable sum from their franchises. There's a surprising long tail on the originals too.
You know what would definitively prove whether it would? Just do it!

I'm so tired of these "rewrite in rust" articles that have no code behind them. Spend the time and write a replacement for curl, ship it, and people will start using it instead of curl. In some years time, you can write a paper showing how many vulns your replacement had vs. rust. curl continues to be written in C because it has someone actually doing the work to write and update it. A theoretical rust replacement does not exist because no one is doing the hard work of writing and maintaining it.

It's like LibreSSL vs OpenSSL. Did LibreSSL end up being more secure? At least we can find out instead of just guessing about whether removing crappy code from OpenSSL would be a good idea.