skysight-inc/HackerNews huggingface dataset:
> I'd rather get to value now by making something that just works(and is adequately tested) than engineer something thats future proof but takes longer to get out.

If you haven't read it, I highly recommend A Philosophy of Software Design by John Ousterhout. His talk is a great teaser for the book: https://www.youtube.com/watch?v=bmSAYlu0NcY

Here's the thing: a program properly written for the future does not take longer to get out. Not much, at least. What we instinctively think of as "future proof" is generally anything but: by anticipating some particular kind of change that may happen some time in the future, but in practice almost never does, we end up with more complex programs that are harder to modify when an actual (typically unforeseen) change comes our way.

The best way to future proof your program is to make it simpler, according to the requirement you are currently aware of. If you expect a particular change, sure, plan for it. But for the unexpected, just keep it simple. Because simple is easier to adapt, add to, or rewrite.

That said, the simplest solution is rarely the most obvious. Making thing simple does take a bit more time than rushing through the first thing that comes to mind. But it also pays off in a matter of weeks, so it's quite worth it.

And if you have a hard time assessing what "simple" means, SLoC is a surprisingly good metric (we have research that shows this). And mostly your modules should be deep: small APIs that hide significant implementations. I think of it as encapsulation on steroids.
> Infinitely many time intervals, however short, cannot have passed after finite time.

This isn't true, because we know from math that infinite series can converge to finite sums. In particular, 1/2 + 1/4 + 1/8 + 1/2^n does, in fact, converge to 1.
Getting Started Listening to Podcasts (2005)
Are those necessarily mutually exclusive? Plenty of campers in this category manage to LNT. The sort of stuff I'm talking about is driven by being an asshole, not by having slipped through the cracks of society - if anything, IME those genuinely down on their luck do better with trash and it's the cheap vacation people who are really bad about it.

That aside, that kind of behavior eliminates this sort of resource for everybody, including those who need it most. A sibling comment mentions a camp getting shut down by bad behavior of a few. Letting trash accumulate to the point where a camping spot is physically unusable is in the same category of behavior. If you're concerned about those who slip through the cracks of society, you should be concerned about commons-torching abuses that cut off their remaining options.
Alright, so you just used power at NYU and basically didn't do anything for five years... this reads almost as hilariously as the founder of Soylent who has an incredible blog post about "buying disposable clothing to save water" while living in an off-grid apt in San Francisco.

More theater than anything else.

https://www.metafilter.com/151777/Soylents-founder-Rob-Rhine...
I don't think I'm more productive than non-vim users, it's just my preference. To the point where it's actually painful to use an editor that doesn't support the vim bindings.

I like not having to use the mouse, that's more ergonomic for me. Some people have an ergonomic mouse, I just avoid using it. Different solution, not necessarily better or worse.
Cooking YouTubers have seem to be getting by with camp style cooking stoves on their countertops just fine for a long time… is the issue that propane is more likely to give of CO compared to methane? Or is it more so that people in blizzards are trying to use these stoves as heat sources in enclosed spaces for a long time?
Loved the article. I played around a but with Forth in the mid 80’s and my experience was very similar to the authors, eg astonishment that one could have a language/computing environment that was simple enough to understand in its entirety yet trivially extensible. Forth also makes complexity ridiculously hard, so you end up breaking down complex problems into simpler ones.

I never tried to build my own Forth, though.
I love using Firefox Focus app.

It is nice to have something a bit more privacy focused on mobile.
Have been getting $20-50/mo for sharing 15TB. Probably won't be worth it for the average developer with insane salary here, but I'm not complaining!
The people saying what's the point of the embargo has literally no idea what they are talking about.
The current dictators in Cuba are the SAME dictators who confiscated U.S citizen business, houses, industries and properties in Cuba in the 60's WITHOUT COMPENSATION and has constantly over the years treated Americans and the capitalism as the root of all evil. The cuban government is actively spying and making deals with Russia (btw the cuban government sided with Russia in the ucranian invasion) with China during Tiananmen's plaza massacre, with North Korea and a long etc.
You simply do not do business with thieves.
They are not a normal government, they are a mafia in control of an island and its citizens kidnaped. Lifting the embargo would be empowering them much more.
Huh? How do dividends depend on “stock to go up up up”? That’s opposite of my experience. How does EPS have anything to do with stock price? I think you have it all backwards.

Stock PICKing is speculative because we can’t predict the future. But that doesn’t mean that the future is unhinged from underlying fundamentals.
The Original Legend of Zelda as a VR First-Person Shooter
Does the article’s final code behave in a desired way? To my understanding, it simply catches rejections, but for-await block still waits for every promise in order, up until the rejected one. Your `finally` block gets called too late, unless I miss something obvious.

To make this loop early-cancellable on any out-of-order rejection, I’d create a helper generator and a “semaphore” promise, which would block the yield until there’s a next resolved value or any rejection.

const arr = []
arr.length = promises.length
let step, sem
function rearm() {
sem = new Promise(res => {step = res})
}
rearm()
promises.forEach((p, i) => {
p.then(v => step({i, v}))
.catch(e => step({i, e}))
})
async function* values() {
let next = 0
while (next < arr.length) {
if (arr[next]) {
yield arr[next++].v
continue
}
const {i, v, e} = await sem
rearm()
if (e) {
yield Promise.reject(e)
return
}
arr[i] = {v}
}
}
try {
for await (… of values()) {
…

I barely ever used js generators specifically, so this code is more like a concept (e.g. I suspect a race around rearm()), but you get the idea.
No one said 'roller coaster'. Part of quality software is saying 'no' to stuff, or having a coherent vision, not 'software by committee'.
There are recruiting companies that have been using AI bots for (at least) 3 years. I am not going to name names, but I have used one as a hiring manager in the past to fill openings.
This is my great frustration. They are trained to detect “narcissistic” patients, and having seen some of those training videos, I now understand that their treatment of patients who try and reference the literature is guided by that training. I have to pretend to be stupid and find weird “people hacks” because I can’t just come out and say, “here is a recent meta analysis in nejm that says x. Could you read that sometime in the next few weeks and see if it applies?” Often it’s not even recent research but common knowledge you can find in bio 101 textbooks or Wikipedia. But asking questions the wrong way, you can come across as “thinking you know more than the clinician” (you do!) so you have engage in bizarre kabuki theater and feign ignorance hoping they feel the urge to revisit their textbooks, or google it.
Also had pretty awful support, but Nvidia SHIELD wireless controller was also a wifi controller. It also had audio. No USB port though, iirc! I forget who, but I believe the whole thing was some 3rd party chip that did almost all the work on the chip, Nvidia was just like, the only name to ship it.

I'd love to see wifi start to make some kind of incursion into device/peripheral space. But there's not really a starting place is there? Bluetooth is typically point-to-point (albeit it has "mesh" capabilities too), wifi is typically point-to-network (even wifi-p2p is actually just negotiating an ad-hoc group, but functionally can be seen as point-to-point). But more so than the link layer, there's just not the support, the idea of how we'd peer/pair.
I've since read the case summary that's been linked and I've lost all my sympathy for her. The excess hours were over the course of 6 weeks or so and she also owed the company an additional $1100 on an advance to pay for her CPA courses. The advance was set to be forgiven at the rate of 1/24th of the total per month, which I interpreted as a sort of "we'll pay for your training and certification if you stay with us for 2 years" agreement. From the information I've seen, it didn't seem like they intended to pursue her for the rest of the advance until she brought the suit against them for dismissal and withholding her last paycheck to repay a portion of the advance.
This sounds like a recipe for an incredibly inconsistent interview process.

I know engineers love open, discussion-y interviews and senior interviewers like giving them, but the evidence just doesn't bare it out. "Work sample tests" and "Structured Interviews" are the most predictive of on-the-job success from the published research I've seen. No matter how much I'd prefer to have a freewheeling conversation as you describe, I have to bow to the evidence.
The high current is found to cause racism and transphobia in children. You are only allowed maximum of 4 12V@5A conductors in the kitchen, it's unfortunate but we need to take care of this health issue for you.
I never write unit tests. However I have written more than 1000 end-to-end system tests for one of the very large C++ libraries I am maintaining. And I am generating an additional 9000 regression tests from large customer examples using the library.

The result is that I haven’t had a single bug in production for 5+ years. One even one.

Worth it!
Someone told me once that Perl was write-only.
> It’s not bait them into talking about coding outside of work.

I've been to work for companies that say anything you build while employed at company belongs to them unless you go through the proper channels and layers of red tape to discuss the projects with them to ensure that anything you are working on does not involve any company IP. This could sound like baiting for a different direction than the other comments are alluding.
Other than the assholes, there is also the "I just found out about this 10 mins ago" guy. This guy doesn't have any questions and hasn't prepared.

This means when they ask him for feedback he'll say "Oh he was okay. Not very technical"

To solve for this guy, you need to have some very good questions about technical problems the company may be facing and then you need to be able to have insights on how they might solve this.

You essentially have to structure the interview for them. Give them the questions and then you answer and then you have to impress.

The aim should always be to impress and be liked unless you have someone who is out to prove you wrong. With those types you need to show technical superiority in addition. These types are usually small in number though.
You're forgetting the good developers who want to minimize the time spent dealing with issues or idiosyncrasies at the OS level.
If you’re interviewing for a junior position that would be fine. If you’re interviewing for something higher level that answer would definitely raise some red flags.

The point is to see if the experience you claim matches what you have actually done.
That is awfully close to just discriminating against candidates who have families or especially single parents. This level of gatekeeping that a programmer who decides to have a full life outside of work is inherently an inferior programmer is a really superficial way to look at it. Equation passion with "Is this person willing and able to spend 60 hours a week coding" is a disgusting attitude that should just completely end in this industry.

In my entire career the single most talented Programmer I ever knew was a single mother who logged off the computer every day after 8 hours period, and choose to spent her life with her kids.
Very Darwinian of you but it's not just a simple question, it's an oddly-presented survey whose directions are a little confusing and unlike any other survey you've ever taken. Proficiency on this task isn't really part of my dating criteria. I ultimately married a pretty smart person who utterly failed to understand it, but I had already learned to discount the "match percentage."

When such a large percentage of people blow it, I tend to blame the UX, not the individuals.
It's quite possible to target a statement at a male audience without a disclaimer and yet still not be guilty of misogyny.
The term was replaced by “advanced maternal age”. Same issues, new modern name.

It’s a bizarre cultural problem.
I’ve still never seen an interviewee that couldn’t pass fizzbuzz and I’ve interviewed a lot of folks, albeit mostly in the Bay Area. Not that I ever have asked fizzbuzz, but because the problems they attempt to solve are harder and already include similar concepts. Most do ok enough with those to easily pass fizzbuzz. Maybe I’ve been lucky.
If your function doesn't handle an exception, it throws it. If TS required you to say `throws` every time like in Java, that'd be repetitive like explicitly returning `| Exception`. Maybe it could detect if you're not catching in the outer event loop.

Idk though, I just use vanilla JS and don't find these safeguards necessary. Worst case, if I fail to handle something, my NodeJS express server will handle it by sending back a 500.
The secret there is to vocalise your thought process. Interview puzzles are as much about assessing the candidate's critical thinking skills as they are a filter for programming knowledge.
Probably an array of primary key id INTs which are allowed to bypass some check function. Add Alamedas account ID, gg.
I can see that being an issue, I guess it depends on how the question is asked. My current job, I was asked a variation of this question, it was, "What do you do outside of work other than coding?" Followed up with a, "we are curious as to how you turn off work." However, my employer is also big on not wanting us to burn out at slinging code.

Maybe it would be more appropriate to word it like that? Maybe not?
Will Forbes ever be penalized by Google?
I always wonder why Forbes ranks in Google so much when it's notoriously terrible content, and then I saw a Twitter thread today, which made me think about it again.

I know Forbes has a high DA, but everyone knows most of their content is a total joke -- usually by selfish, unpaid contributors, or worse, members of the paid Forbes Council, which anyone can join. There are no journalistic standards there either even content by their "reporters" is often factually wrong or misleading, saying they spoke to sources they didn't, etc.

Google has the "helpful content standards" guidelines, which their algorithm supposedly revolves around, and I understand the ranking signals pretty well. What I don't understand is why Google keeps ranking this site in spite of them totally violating and ignoring these guidelines.

Does domain authority trump everything this much?

And lately, I've noticed Forbes (and similar sites, like CapitalOne) are starting to target keywords that are in completely different niches, and almost immediately they outrank authoritative, dedicated niche sites with good content.

Can anyone help me understand why this is happening, AND more importantly, do you think Google will ever put their foot down on Forbes in the [near] future by penalizing them or something - like how Google blacklisted JC Penney back in the day?
How did those US citizens acquire their property?
I do the same. I think it's nice to have the old version readily available as reference instead of hidden in git.
Maybe this is a life pro tip for anyone entering a situation like this. Keep your own logs, and if they come after you because the AI said you slacked off, just point out all the times you answered a question from on-call during dinnertime or were pressured into commuting to an office so you could sit alone all day and talk on the telephone.
I think the asymmetry is a great rule that discourages the artist from just illogically and lazily flipping things.

Handedness in video game sprites is a great example of the weird dissonance created by mirroring.
!?

Edit: Time to move elsewhere, then. Honestly.
Back in the day agile was meant to let you program more. Then the process people came in and made it a tedious monstrosity. Then the management came in and made it unbearably oppressive.

We need a reboot and a flight back to utility. But it was so hard to pull off in the 90’s, I’m worried we never will recapture software development from the people who hate to program.
Or buy a social media company.
https://github.com/udem-dlteam/ribbit

And https://piumarta.com/software/maru/

Are two good examples. Maru is interesting in that it can implement a full-fat language/os/vm/compiler in under 2kloc

Bluebottle is another barbecues and up OS: https://github.com/btreut/a2
Oh wow, never noticed this. Thanks!
Yeah, but it goes to 11!
It’s true that only a minority of philosophers are white, and people are far less likely to be aware of philosophers outside their culture.

But there are less aggressive ways to say it.
> Both parties hope it's a match

Do they? I've come across many interview loops where I felt I was being put through the gauntlet to prove that I am unworthy.
Interviewing is a multifaceted process that depends on many variables. Unfortunately google and other similar companies influenced/contaminated so much the general idea of what an interview should look like that many, many people believe that a person writing in 15 minutes a sloppy solution for what's essentially an academic exercise is the gold standard for measuring someone's skills.

I have no problem solving exercises in interviews as long as we're talking about one session of at most one hour. I was contacted by recruiters of companies that expected me to go through many rounds of interviews that would span many weeks. lol

I always reply that I'm already employed, that for me their company is just like any other company and that working for them is not a privilege, it's just a job.
Doing a cross-continental medical comparison and blaming only one factor, among many, many others, that doesn't even differ very much does not remotely pass the sniff test for a study.

It's not religious faith, but you're going to need a lot more than a shoddy argument.

The argument, by the way, is so shoddy (by failing to be rigorous about both diagnosis methodology, and of differences in environment) that we could trivially use it to conclude that vaccines actually reduce incidences of autism, if we look at America as the undertreated high-autism, under-vaccinated baseline, and at Europe as the properly treated gold-standard... But I don't think that's what you're interested in exploring, no?

There may be a reason why this question attracts so many frauds, quacks, and fools. I postulate: the people who run well-made studies, that we can actually draw meaningful conclusions from aren't finding the answers that the frauds, quacks and fools like.
Alternatively, they could be terrible coders and looking to improve outside of work, whereas the question gleans no substantial information for those that don't code outside of work.
I hated interviewing SWEs at Google, and the way I got out with it while still doing my duty was to interview the patent lawyers! They always had one engineer interviewer and I was it. My stock answer for why I did it was, "Hey, who wouldn't enjoy torturing lawyers?"

Actually, I loved it. You might not be able to imagine this, but I actually like lawyers, as a rule.

Since Google insists on giving candidates a problem, I took a patent from a previous job that I was familiar with, and said, "OK, we're going to pretend I'm the inventor, and I'm going to describe this invention to you. Your job will be to write the first claim."

This is pretty similar to their actual job, at least on the patent prosecution side. They have to come up to speed on an unfamiliar technology quickly? Well, that's what patent lawyers do. Most of them did pretty well on the test, too. It was way fun.

Unlike in a SWE interview, I never heard anything after I gave my feedback (with a SWE, you would see what the other interviewers said). The only way I even heard if they were hired was to check a few months later. I didn't know if Legal even paid attention to me.

Years later, I joined Legal and found out they'd been hanging on my every word.
This. All the best places I have worked at in my career have basically followed this formula. And in fact these questions are fairly similar to the original YC application, with the exception that the question about your favorite tech stack was separate from the question about the coolest thing you've built.

In contrast, the places that have done tech interviews have generally been awful to work at. Less intelligent people, less interesting work, worse management, etc.
Keeping low latency for an online data service with more than 5 billion records can be a challenge. Features like query the database with natural language(https://ossinsight.io/explore).This makes it easier for users to access the data without having to know SQL. But the generate SQL could be pretty heavy(many Full table scan and index scan).
I don’t know. If you’re a jerk, you’re a jerk.
The harm is that the apple is acidic, damages tooth enamel over time, its nutrition value comes only from sugar (most of which is fructose), and it's not actually filling. Ask any fruitarian how soon after a meal of fruit they feel hungry again.

Seeing no harm in eating apples is like seeing no harm in eating candy. Sure, eating a piece of candy once is trivial -- but you're insisting on candy as a part of my diet, not as an incidental, rare snack. Eating candy only has downsides.
I would handle it like this :

Oh, congratulations!!! Do you know the sex of the baby yet? What an exciting time, I bet you have lots of preparation going on. I also have a child and (blah blah bit of history)

So we ask this question to get a bit of an idea about the candidates hobbies which tells us about them as a person, - are you outdoorsy or indoorsy? Are you a movie buff or a reader, or a rock climber or a painter or a poet? Or something even more interesting?! before you were so busy, how would you spend your non-work time?

That way:

Puts them at ease, shows you have empathy for their situation, find common ground, explain the reasoning for the question, gently nudge the conversation towards what we were looking for.

It’s not rocket science people it’s just conversation skills.
I hated Modula 2 when I looked at it, it was broken is some really irritating ways. Taking a quick look now, as I compose this

It's CaSe SeNsItIvE which is NUTS, it's one of the worst aspects of C
You have to specify every function you import from a module? That's NUTS too
Matching the names when you end a block... that actually sounds reasonable
Strings as Array of Char? No... not back to the insanity of C strings

I don't see any added features that make jumping to an even less supported language something appealing.
With the additional information, that appears to be the case. From the article, though, that wasn't clear to me at all. They left out a ton of details.
That’s a very good point very well put - I fully subscribe. At that stage the problem is players and catalogue - focus on those extremely hard, don’t misplace your limited efforts into solving a not yet existing issue.

Edit: typos
In what world is providing insight into an ethically questionable business comparable to revealing someone’s private home? Businesses are held to higher levels of accountability.