skysight-inc/HackerNews huggingface dataset:
I like this kind of situation to be honest: as senior you can make it better (it is your job) and become a hero as well as demanding more pay, bonus etc. Become friendly with one of the c-levels, preferably the ceo and replace the cto (who sounds bad or at least not good enough) with yourself. That is what I would do (and did a few times).
A lot of good advice and great insights in this convo.

Adding my "Yes and" here, because your tip most closely matches my own.

> Thinking negative thoughts ... is a habit you can break.

### How you talk changes how you think. ###

At some point, exhausted by my own negativity, completely out of ideas, I decided to just fake being happy.

I labeled everything "phenomenal". Like a catch phrase. Followed by effusive positivity. Yes, it started out as mostly sarcastic.

Imagine my surprise when I woke up one day, said "I feel phenomenol!" and actually meant it.

My transition took about 3 years. It was so slow and subtle, I didn't realize it was actually happening.

I've since some stuff which validates my own experience.
> At any rate, my original comments seem to apply to countries like the US and UK that dominate in research.

Not really, at least not anymore. Depending on which metrics you choose to look at[1], China currently leads research output, and by a long stretch, over the US.

Meanwhile, within the EU Germany outperforms the UK by a considerable margin, and both India and Japan outperform the UK as well.

The UK fares even worse in papers-per-capita, ranking between the Czech Republic and Portugal.

[1] https://en.wikipedia.org/wiki/List_of_countries_by_number_of...

> Academics there have the power to stop serving paywall-and-overcharge academic publishing corporations. We know this, because they sometimes do, and those that do are often successful. But most choose not to.

Don't get me wrong, it's possible to overthrow the likes of Elsevier. The current push for public-access research is a significant step to eliminate the stranglehold these companies have on research output by abusing copyright laws. However, unlike the initial claim, this is no easy feat nor straight-forward.
I'm doing professional services of optimizing on-prem and cloud Postgres databases. It always surprises me how much companies tend to take cloud databases as automated and rely on them to do auto-tuning for everything.

Well they don't, and as soon as the product goes live and the amount of data slightly grows, the performance degrades exponentially.

* Never count on cloud databases to replace a DBA work.

* Don't take ORM optimizations for granted. They all suck at one point or another.

* If you can't afford an FTE, take short professional gigs from time to time to fix and boost performance.
There was a time when the number of characters was the sensible metric.
Having readable unicode in string literals is nice.
From what I've read about them, and how they are now, I highly doubt a future with yahoo would be an improvement.

They actually have quite an interesting history. From what I can remember, they refused to brand themselves as a tech company to avoid Microsofts wrath (Microsoft of course used to be a lot more aggressive with competition than we see today) and subsequently failed to attract the best engineers.
Are there any linters that detect these sorts of issues?
This doesn’t sound correct to me. The original statement is, Let ϕ(x) be a property provable about objects x of type T. Then ϕ(y) should be true for objects y of type S where S is a subtype of T. Here, objects of a base class are replaced with objects of derived classes.
They'll have to pry Sublime Text from my cold, dead fingers. I want to like Merge, but I find it's UI to be ugly and difficult. I'm still using Tower, but just got soaked for a very expensive upgrade to Kaleidoscope. UI aside, does Merge have a good diff tool built in?
The main target for coroutines was networking. And, given enough library sugar, they actually work decently enough there.

The other use case is generators and there the hard to remove allocation hurts a lot.
> Depending on which metrics you choose to look at[1], China currently leads research output, and by a long stretch, over the US.

Nobody who knows anything of the content of the research underlying those metrics takes this seriously.
> Understanding the way your storage works is crucial, yes. But you ensure people understand it not by asking "Explain ACID to me" but by asking to design a certain system and observing them figuring out requirements and asking questions. You then ask follow up question about consistency and reliability, you probably even can ask about benefits of using transactions but I wouldn't because there's plenty of databases that can be used reliably that don't have transactions.

Who has time for that? Interviewers design interview for themselves, not for the interviewees. It's basically a trivia game at this point of time. A prime example of "Everything is obvious once you know the answer" syndrome.
> Long, aggressive, and vague comments like this are very difficult to respond to because it's hard to understand what you are actually saying.

No it's not. It's just hard to argue that the details are wrong that way, despite the original article having no shortage of those details.
I have some nontechnical friends who deeply distrusted and disliked Google. But I always believed Google’s “don’t be evil” line. I’ve learned a lesson.
If they don’t like you, they will have no problem getting rid of you. So if you don’t like them, why not the same?
As interesting as anecdotal stories about pets are, spayed and neutered animals live substantially longer: male cats live 62% longer, females cats 39% longer, male dogs 18% longer, and female dogs live 23% longer. [1] The exact reasons are complex, with everything from decreased roaming behavior to lower cancer risk, but overall it is a beneficial practice. Really, unless you specifically feel you need to breed your animal, spaying or neutering is the way to go.

[1] https://www.banfield.com/en/about-banfield/newsroom/press-re...
> The author says, "I wouldn’t be able to explain from the top of my head what the ACID term means".
> I think there is a big difference between not knowing something off the top of your head and being completely unaware of it.

The next level is being aware that the “I” doesn't quite apply in most databases with their default transaction settings, true isolation/serialisability being sacrificed for performance, though the distinction rarely matters is can be significant.

> You don't necessarily have to understand how a B-tree works for an index to be effective.

How a b-tree operates can be safely kept as a black-box thing, the important level of detail that many miss in my experience is how compound indexes can (and more importantly, can't) be used. Others include that in most databases defining a foreign key relationship does not create a supporting index by default, and that careless use of functions in joining & filtering clauses often blocks index use. If you have a DB specialist on the team there is probably no need for other devs to be intimately aware of even these details, but they should at least be aware enough of their existence than they know to ask the local expert (or look things up elsewhere) to check their working when the issues might affect what they are working on.

As a bit of a local DB specialist who has met some bad ones, I should point out that it is important that we, and other local “exports”, be approachable so the other devs feel they can run things by us for verification/improvement.
Oh, I'M not negatively affected by always thinking about worst-case scenarios. It's the people AROUND me who are negatively affected. That's the issue. If I stopped thinking about worst-case scenarios, they would be so much happier talking with me. Natural version of me is like, "screw that."
Just say everything is O(2^N) and you’ll be technically correct most of the time. If the interviewer says that it’s wrong, they don’t know their fundamentals.
When I read the page I though "yeah right, dead honest but no slot for wanking!" :) But it's there, 852 hours for watching porn. If the guy started at age 14 that turns out to about 12.5 minutes per day.
To some degree the more competent the person in using ACID databases, the less likely they are to remember what 4 random words are hidden behind ACID. If someone uses a database that makes ACID guarantees there is no benefit to remembering what they are. It is just how the database works.

People only need to know about ACID if they are arguing about whether to use a database that doesn't implement it, or switching between databases some of which do and some of which don't provide strong ACID guarantees.
McDonald's was one of the prototypes of the fast food industry. There was absolutely technological progress in food preparation to be made when they did that. It seems silly to assume they wouldn't keep that up.
Free market reforms lead to unprecedented growth.

So what is the natural result of this success?

A clamp down on the reforms of course. The "free market" is obviously too much of a threat for the CCP to tolerate --- to the relief of the west.
Author is not completely wrong, but I don't like this attitude of celebrating ignorance. I agree we shouldn't judge others who happen not to know what we know, but IMO it's likely that knowing this concept at a deconstructed level will be helpful to most devs at some point in the future. The ones who don't know it won't even know it would have helped them, because that's how knowledge works. And that's why it's important to celebrate knowledge, not ignorance.
Cuckdown idiot.
Agreed. The only scenario in which I would consider this somewhat unethical is if you’re the person who created the situation in the first place.

On the flip side, if you’re the person who created the situation in the first place I would probably expect the company to replace you anyways.
I should be poor then. Because I absolutely, completely abhor pain in any form.
It's absolutely fine to leave. I interview people looking for roles shortly after taking a new job all the time. It's pretty common that the role they were brought on for was not as advertised or there were things like a mass exodus that materially alters their role. People understand that people want to leave bad situations. Be ready to give good reason for why you're leaving and to talk about lessons learned from the time you spent there and you'll be fine in interviews.
>Performance evaluation in academia is tied to the ability to post X papers in well respected established publications with a high impact factor

In the US at least, that evaluation is performed by faculty not by a system. If three schools (say MIT, Harvard, and Stanford) said 'we will no longer consider any work published in non-open source journals in the award of tenure' the system would flip very very quickly. Institutions could do the same with REF in the UK.

It is a system of social norms and conventions that are treated as inherent while also constantly shifting...but no one will admit are shifting or socially constructed.
You think that a Lenovo CEO will be completely unconcerned with a boycott of Lenovo products… because their competitors aren’t also being boycotted? Or just less concerned?

If you mean just “less concerned”, then even then, that means the boycott still has some value, right? So what is wrong with someone just boycotting one of two “bad” companies?

Just to transpose the logic to a different situation: say if someone gives $10 to a charity fundraiser, but they actually had $20 in their wallet, does that make their $10 donation less valuable? If this is not a fair comparison, please help me understand exactly what the relevant difference is.
From the context, (CFAA, a US law) "VPN to get access to content that is otherwise blocked in your country through an IP Block" wouldn't be referring to using a VPN to bypass blocks imposed by "your local government" or censorship-related issues, but rather circumventing blocks imposed by US-based content providers.

Hypothetical scenario: User outside the United States uses a VPN to access US Netflix content. In doing so, have circumvented Netflix access control mechanism and are accessing the Netflix's computer systems in an unauthorized manner. Unauthorized access to computer systems is a violation of the CFAA. Accordingly, the foreign user is potentially liable for felony criminal charges in the US, just the same as they had "hacked" any other computer system in the US.
> The world is such a rich place compared with the digital world where everything is abstracted and simplified.

So you think a post about paper grain is more interesting than a post about e.g. spinlocks or lock-free programming?
Remember when we thought Microsoft was evil, and Google was a force for good?
Just to play devil's advocates, our juniors LOVE putting everything in a transaction and locking up the client's legacy database.
Some MOBA history! An early derivative of DOTA, Heroes of Newerth (HoN), came out a bit before DOTA 2 and was at one time competing with LOL for the top DOTA clone. HoN had chosen a much closer to DOTA approach and was for its first 2 years almost an exact clone with a new snappy engine. All the DOTA purists went here and as a result, it was the most toxic video game community I've ever experienced. Great game but it had a very clear impact on one's mental health and attitude.
In the context of JavaScript it means some numeric keys are missing (between 0 and the highest numeric key).

This is an issue because JavaScript Arrays are not like arrays in other languages - they are dictionaries where the keys happen to be numeric. So it is possible for a numeric key not to be defined, which is different from it being defined but having "undefined" as a value.
A better question would be: ACID (after explaining it's meaning again) has competing concepts. Can you think of any?
This is really the least that I can ask for new hires. I don't mind if they want me to repeat what I have taught them because I have been there and know that been taught != fully understand and it takes a few practices to imprint that in one's brain.

But for God's sake please Google before asking any general question. Some questions are literally within the first 5 results of the first page.

Maybe I shouldn't blame them though, sometimes I did that too :/
Yeah I agree that there is no need to go overly academic in interviews. I wouldn't ask about the different O-Notations and what they mean.

But if I give a code sample that has three nested for loops over some array and doing string comparisons, the candidate should at least have a vague idea that this might be problematic and could better be solved using sets or maps.
That's true to some extent, but I am quite sure even the worldest-of-class engineers have tripped up on a question or two and went on to get a rejection. If such people truly are talented then they'll have no trouble getting hired elsewhere and the companies in question would be blissfully unaware what they missed out on.
It's important to stand up to lies and to speak against recognized propaganda for what it is, but how capable are we as a society even to recognize the propaganda and lies when we see them?

This comment looks ironic under the link to one of the most famous propagandist and liar in human history.

Solzhenitsyn's books are full of lies that were debunked thousands of times. Most of the numbers in his books were written for him by the CIA curators. He never had access to any documents that he could cite as a source, so he just copied the numbers from cheat sheets provided for him by CIA.

There're other numerous non-fitments in his books.

He was a weapon of American propaganda against USSR. He collaborated with CIA. It's ironic and pitiful that he's still referred to as some kind of truth-seeker.
A couple potential sources of efficiencies:

- more reliable bun-making machines that need a lower ratio of human oversight / bun produced.

- more automation in packaging the meat patties.
Are you implying Netflix is not a tech company?
Severe obesity increases the risk by more than a little.

https://www.cdc.gov/mmwr/volumes/70/wr/mm7010e4.htm

https://www.acpjournals.org/doi/10.7326/M20-3742
I know it's very early, but I wonder if the compile times could be faster with GCC Rust?
Microsoft did that in the late 90s onwards, technology == MS Office for an entire generation.

However the extent of ecosystem in the 80s and 90s is different to the extent today.
Dumb compared to what? A basket of goods curated by a government who have a vested interest in getting certain numbers out of the formula?
As a dog owner there's a good point mixed up with a lot of faulty assumptions in this article.

Some points I believe the author is wrong about:

If given a choice, Dogs prefer the exact lifestyle the author is deriding.
If you've ever had an outdoor dog on
a lot of land, that's free to roam, they run briefly occasionally, then return to the home/den to sleep most of of the day. And if the owner is around depending on the dogs personality they'll typically spend it around the owner.

This is what dogs prefer.

The author is using the human version of Maslow's hierarchy to claim that dogs need fulfilling work and meaning to exist.

Dogs don't need to be 'working' to live happy fulfilling lives. Feral dogs aren't wandering around herding or retrieving things.

Dogs are animals and as long as they have food, excercise, some other dogs to socialize with and the pack alpha is happy with them that is the peak of their Maslow hierarchy of needs.

Only humans need filling work to do to be happy. Every other animal in nature is happy to just survive day to day and have companionship and the ability to explore their environment.

----

This is the only thing I think the author is correct about:

Dogs are a lot of work. They require a lot of excercise. Dogs that are left in apartments all day with a 15 minute walk is borderline abuse.

No one tells dog owners this though.

Dogs need a lot of socializing.

I take mine to the Dog park for an hour at least socializing daily.

Alot of cities have bar/dog parks so the humans and the dogs can both socialize.

Doggy daycare is a great option as well when you're not going to be home and have to leave the dog alone.

Dogs are extremely simple:
If you can spend time with them and get them both excercise(mental and physical) and playtime with other dogs...that's the peak of what they need. Theyre not living an unfulfilling existence because they can't start that cappuccino stand they've always dreamed of.

However a lot of dog owners are not aware of this and treat their dog like furniture or clothing accessory and this is where the problems the author was talking about coming to play.
In my experience there is not much to know about the ACD parts of ACID, because they're just guaranties that are obvious to want and which will naturally make your life easier.

The I (Isolation) part is the one you'll need to understand whenever you scale up to a point where concurrency starts to become non trivial in your product, mainly because there are multiple levels of isolation, which each provides different guaranties, and you'll need to understand what level your database uses and what it means for your application.

As for the overall point of the article, it's just a question of scale. The more you scale the more you need to cut through the abstraction to understand what the hell is going on. Hire accordingly.
If a hiring manager assumes this rather than asks, good for them, I wouldn't want to have to report to them anyway.
Presto has been rebranded to Trino. Trino supports MATCH_RECOGNIZE from the SQL:2016 standard which is pretty cool. The only database engine that does that so far is Oracle.
> Bruce Schneier wrote it when Unicode came out btw: "Unicode is too complex to ever be secure".

It's astounding to me that there's room for such complexity in it. I thought it was just a lot of symbols. What other rules does Unicode have besides changing the order sometimes?
My only gripe with gRPC is that there is no way to integrate it into a foreign event loop. I'm a big fan of single threaded event driven architecture ( I mostly do embedded work)
There’s a number of these stories, such as the former board of (now-dead) Journal of Algorithms founding the ACM Transactions of Algorithms and the former board of (now-dead) Topology founding the Journal of Topology.

https://en.wikipedia.org/wiki/Elsevier#Resignation_of_editor...
How War with China Begins
> If you have an engineering position in which a high degree of CS competence is required and the candidate can't even make it past the initial layer of "regurgitating binary tree operations" then you have the wrong candidate.

Or you have a candidate who understands binary trees, can implement it but can't regurgitate binary tree operations from the top of their memory.
Now that is up to the skill of an interviewer how will they approach it.

Often you're time-limited and can't do actual code testing, and acronyms and buzzwords can be useful to do the initial filtering quickly. Of course, not expecting for candidates to reproduce what each letter means, but to show they've heard of it and have some idea what it's about.

> For the life of me I don't remember what SOLID is and I totally fail to parse any written explanation of liskov substitution principle but whenever I see code that violates those I immediately go "please don't do this, that'll cause problems in the future".

In my book this is a perfectly valid answer to that question, actually far better than just citing the book definition blindly. Interviews are all about trying to read between the lines, and often the whole impression of competence that candidate leaves to you is far more important than the actual answers.
> Previous guys somehow didn't know they should use transactions when updating/deleting stuff in the DB, because hey, it's just API you call, who cares of mambo-jumbo happening behind the curtains, right?

Sure, you're right, but I'd argue that transactions are is hardly "database internals". Transactions are day 2 of "using a database 101".

You don't have to know what ACID means or how transactions are implemented to use them correctly.

I'd rather hire a candidate that knows how to use transactions but has no idea what ACID is than one who knows what ACID means and how it's implemented but doesn't know when or why they should use transactions in real life. (Of course the second case is rare, but this is just an example).
Security Risks of Unicode (2000)
How do you avoid google classroom when the school demands you use google classroom?

This is the same principles as the Microsoft monopoly of the 90s and 00s, and that at least gives me hope
I love the last section of "Hiding Images in Plain Sight: The Physics Of Magic Windows"[0]

>I know what you're thinking. What about the hologram?!

>Does the math above imply that a hologram will always be created, or is this one cat hologram just an incredible coincidence?

>Well you see, I've discovered a truly marvelous proof of this, which this website's margin is unfortunately too narrow to contain :)

[0]: https://mattferraro.dev/posts/caustics-engineering
The single biggest contribution of the STL are not the data structures nor the algorithms. It is the design, the shared vocabulary and protocols. This is why I can replace almost any use of unordered_map with, say the corresponding abseil implementation with very little changes to the code.

Stepanov has always seen the STL as a starting point, not a finished library.
No, that's not the point: If a website states "you are not allowed to use this website with an ad blocker", then by accessing it anyway, you're suddenly a "hacker" before the law and could face severe legal consequences.
same here ... even further back I belonged to those people who congratulated their parents for joining facebook and whatsapp - so cringy. now I myself am using neither of those services any longer. feels good on one level but also futile on a deeper.