skysight-inc/HackerNews huggingface dataset:
No, it’s a guest post. She added a note about it being a guest post now (it wasn’t there when I first read it)

Note that the Substack owner (Gayle) has an incentive to convince you that tech hiring is broken; She is the author of a famous book about how to master tech interviews. This anecdote about someone quitting a contract job 3 months in, putting a 4-5 month gap on their resume, and then wondering why they’re not immediately getting job offers from the first companies she applies to in the middle of a huge tech recession isn’t really a mystery. It’s presented as if the person is merely being unfairly rejected by bad interview processes. The implicit story is that you’re supposed to buy the Substack owner’s book about coding interviews to overcome this problem, but the anecdote author is going to have to tap her network and apply to a huge number of jobs to overcome her less than ideal resume.
I hope so, as I prefer what Pathfinder is doing a lot more. I first started getting interested in TTRPGs with 3.5e, and, to me, 5e has completely lost the feel of customisation that it had. They have finally released new races, but for the most part it's just sub-classes and "change the flavour text". PF 2e already has more ancestries and classes than 5e, and more fun ways of putting them together, and I absolutely love that. It makes the world feel more diverse, and really makes you feel like you can be what you want to be and find any class/race combo to fit your character idea as opposed to the opposite.

That said, I think PF will still have to reword quite a few spells, and possibly rename more than a few creatures and spells as well. Probably enough for a 2.5e, but I also wouldn't be surprised if they're working on it especially after this leak dropped.
My belief is there is no fundamental difference here. That is, learning is a form of compression. Learning concepts is just a more complex form of achieving that much greater (if lossy) compression levels. If the courts will see it the same way too, things will get truly interesting.
Coming to Kotlin from Python, these always get on my nerves. My brain hasn't adjusted to needing to call a function. And 'X to Y' just doesn't click for me. I guess I'll get used to it eventually
Regulating is how we got here. They put the screens in to serve backup cameras. Once you need to have a screen somewhere why not make it replace all the stuff?

Engineers love it because less moving parts, fewer parts. Software loves it because ship garbage now fix with updated version later. Designers love it because "clean lines and crap". Marketing loves it because high tech. Bean counters love it for all the above reasons.

The only thing (touch)screens aren't is cheaper and better but once everyone is mandated to have them that all goes out the window.
Why is code below recursive requestAnimationFrame ever executed?
I'm currently watching tutorials to build projects as I'm still not in a phase where I can carve a project that I want all on my own.
Currently, working on a snake game.

let speed = 2;
let lastPaintTime = 0;

//Game functions
function main(ctime) {
window.requestAnimationFrame(main);
if ((ctime - lastPaintTime) / 1000 < 1 / speed) {
return;
}
lastPaintTime = ctime;
gameEngine();
}

//Main logic starts here
window.requestAnimationFrame(main);

My confusion:
If condition should never be checked on this code. Because:

1) window.requestAnimationFrame(main): It calls main function.

2) At the very first line of main function, it again calls main function. So the control should go to main function and forever it should keep calling itself.

3) The if condition should never be checked.

But I asked chatGPT, and it says that if condition will be executed. https://imgur.com/a/eDRS8N5

It says that it doesn't immediately call the main function but schedule/queue it.

What's this behaviour called in Javascript language? Where can I read more about it. Is this common for every programming language?

Things I've read from chatGPT

requestAnimationFrame is a method that schedules a function to be called before the next repaint of the browser window. It does not immediately call the function, but rather adds it to a queue of functions to be called at a later time. This allows the browser to update the screen at a consistent frame rate, while also allowing other tasks to be performed in between frames.

When window.requestAnimationFrame(main) runs inside the main function, it calls web api which runs outside of main thread and places the callback in queue and then result is obtained, meanwhile parallely other code (code below "window.requestAnimationFrame(main)" are running and hence the "if" parts gets executed.
You can bring your own domain.
grape as in https://upload.wikimedia.org/wikipedia/commons/thumb/0/02/Bo... ?

« aujourd'hui, on préfère un coup de (phosphore) blanc »
What's the proper control to use for interacting with a navigation aid in the UK? Or are you saying that UK law forbids in-car maps?

These arguments always end up in this kind of hyper-specific realm where they seem to apply only to Tesla's particular design choices. But, in car maps are everywhere now (and, yes, Tesla's implementation is by far the best), and the natural way you use them is with touch. They absolutely make finding your way around easier and safer.
> Xiaomi sells their hardware at very attractive prices and people discover too late it's useless unless connected to servers in China.

It's even worse than that. Privacy-conscious people might try to buy from German brands like a Miele Scout SX3 or a MEDION MD19500. But both of them are just white-labeled Chinese products and use the 114.114.114.114 DNS resolver in Beijing.
If you prompt it correctly it seems to be able to solve most basic math problems you throw at it.
Here's a PNAS claiming human-level performance:
https://www.pnas.org/doi/full/10.1073/pnas.2123433119

There's a deluge of papers and research right now, so there's quite a bit of complexity to saying "pretty well".

However, let me say it this way:
Compared to other LLMs, recent OpenAI models score highly on logic and math exercises. Yes, there ARE better LLM's trained to do math computations (especially fine-tuned for certain problems), but I'd say ChatGPT is certainly impressive as a general text and code model.

The other side of the medallion of saying "pretty well" is this:
There is no other type of computational approach that is able to solve free-form logic or math queries in any capacity. There is no symbolic approach that can "extract" a math problem from text and then solve it - in code or otherwise, whereas LLMs are getting close to human performance on such (and related tasks).

So yeah. Pretty well is what I'd claim.
> If these bits are supposed to be as unpredictable as possible

That isn't the purpose of the embedded headlines. They are to show that the canary file was not created and signed two years ago and only just now posted to the website.

They serve the same purpose as what used to be used in movies and TV years ago for "kidnapping" story lines where a photo of the kidnapped person, holding up a current copy of some major newspaper, was sent to the person who was being asked to pay the ransom (or perform some other action) in order to secure release of the kidnapped individual. They show that the item in question is current and not prepared well in advance.
I think a massive number of 15-25 year olds think it's not only a reasonable career path, but their preferred career path. They don't expect to become middle class though, they expect to become rich and famous.
There used to be a very vibrant creator community, one in which most everyone earned a decent living.

However, we no longer have a community of people growing food, making clothes, building and fixing houses, making metal tools, shoeing horses, etc.

Cannot eat a blog post about food, cannot wear a photo of someone wearing expensive clothes, cannot live in a photo of a mansion.
Hi! I am the person that wrote this, and used GPT-3 and a few other writing tools to help me wordsmith it. All the points, however, is original work and not AI generated. I am not a native English speaker, so I have been using these tools to avoid awkward sentences/paragraphs. (Clearly this has not been the outcome I was hoping for)
You are correct that it is a convoluted scheme, but the goal of warrant canary users is to deliberately create a situation where their first amendment rights would be infringed by attempts to vigorously enforce the laws around NSL gag orders.

What isn't firmly tested in court is this specific application of the idea that the first amendment protects against compelled speech, although there have been other similar cases (see the Wiki article [1])

[1] https://en.wikipedia.org/wiki/Warrant_canary
I'm using dev_appserver.py, installed via brew somehow, which seems to still do the trick (I don't quite remember doing this, but something like https://stackoverflow.com/questions/40065497/cant-find-dev-a...)
It's better than nothing, but I would prefer more physical controls than a single volume knob
Touch screens are only the cheap route so long as you are required to have a backup camera.

If you're gonna spend the resources to put a screen in the cost conscious way to do that is to use it for everything you possibly can.

Look at 3rd world cars. No screens.
Comparing warrant canaries to sovereign citizens is disrespect almost to the degree of caricature.
The mistake is to assume that the interview process is “overlooking a good developer”

Interviews aren’t about accepting the first candidate who is qualified enough. Interviews are about interviewing a number of the best applicants and choosing the best one for the job.

You can be a great candidate, but if someone else is an even better candidate then you’re not getting the offer (unless the better candidate declines).

We really need to break this myth that interviews are a 1:1 challenge between the company and a single candidate.
It is largely considered bad and misleading style. Why would you ever hide that a variable is a srruct? Better to keep typedef only for basic types and for function pointers.
I do not at all agree with the "it's not a dream job" section.

Please name another career that pays you six figures out of college that doesn't involve several years of additional education, doesn't make you wear suits, is mostly non-life-threatening, is constantly in demand, and doesn't require special accreditations or certificates.

If you're spending more than your 40 working and aren't on call, then that is on you 90% of the time, in my experience. I have definitely worked more than 40 some weeks when I'm pushing through something, but there have been plenty of times where I worked less.

If you can't find advancement in your current role, then that's also on you. Not that this matters, as finding a new job in this industry is insanely easy relative to other professions, and they'll usually pay more for your skills.

IMO, you should ALWAYS be thinking about what you need to do to get to the next level, if career advancement is a priority. Everything you do should be in service to demonstrating capability in performing above your station and providing business value/revenue generation. Brag sheets and being vocal help a lot.

I am biased; I absolutely love what I do and wouldn't trade it for anything.
I need to write my own post on this but the gist:

1) In the long run, benefit accrues to value generation. The "best developer" turning out "amazing code" that misses the business goal is generating zero value. It's a hard fact to swallow.

Ideally you are someone who can both engineer good code and be at least a part of the brain trust that "aims" that code at value (solving biz problems and generating money.)

That sounds obvious but most people don't even think about that. My rule of thumb is that unless you are actively involved in that - ie acting as a product manager to some extent - you are likely under-delivering for yourself.

2) your biggest limitations are within yourself and you don't acknowledge them. That's the classic "I identify as X and therefore don't do Y" mindset, where Y is the thing that would "unlock" your next level. Like if you are "a C++ developer who isn't interested in talking to customers" then perversely, learning how to talk to customers (and not learning the next C++ standard) is the thing that will let you double your comp.

3) Your attitude determines your outcomes. People who assume all work situations are shit (assuming that bosses are always evil, coworkers are always stupid, etc) end up in precisely those situations. If you have a more positive expectation (eg want to give and receive loyalty, want the company to go above and beyond for you and to go above and beyond for the company) you can find those work relationships too. (Btw that applies outside work as well. If you believe all women are evil you end up an incel, etc)

4) Work is a team thing, and the people matter. How you are with people matters too. Whether people are looking forward to or dread meeting with you has a huge impact on your productivity and therefore your career. Also, there's a Darwinian element you should recognize. If your team succeeds, your colleagues get bonuses and grow and that should matter to you, not just whether that happens to yourself.

5) You get paid for impact in the long run. This is related to point number 1. Sometimes your impact isn't code but persuasion. I once convinced a company to shut down a line of business and focus on other things. The value of that is much greater than any code I wrote. To make such impact you need to (a) have original perspective/insight and (b) convey it to people who don't have that insight! If you are constantly frustrated because you are misunderstood, you need to make a conscious effort to learn how to persuade people in person and in writing. And to recognize that it's a slow and difficult process that most people fear and therefore fail to go the distance.

6) The concept of work life balance is misleading and too simple a frame for good outcomes. The homeless guy under a bridge has a great work-life balance (0 work) but his life sucks. On the flip side, some successful people work tons of hours and have a great life - because they enjoy their work and they enjoy the financial benefits.
But you can’t reasonably shop at Y shops.
This implies that the dangerous production is the fault of the government. It is the fault of those who want to produce it. They are making bad choices. A responsible government should not make it easy to make bad choices.
This is the version of containers where they are most useful - a clean, throwaway environment with exactly the one application or userspace you want to test inside it.

Unfortunately as a developer it's more fiddly than that.

You need to mount your code into it. Then if you try commit changes to your code, you're a different user, so the commit is now messed up. Also you lost your dotfiles, so none of your aliases or other shortcuts work when you're in the container. You might need to connect to other services which now need to run in their own containers, and then they all need to talk to each other. Before you know it there's a whole litany of commands you need to run and configuration files you need to put together just to get started in the morning. Imo using containers on development machines is a big step backwards for developer productivity.

Virtual environment is just... cd in the directory. Run magic incantation to set that directory as the canonical one for your current shell. The end. IDEs will pick it up automatically.

The Python virtual environment and package management experience is still worse than pretty much any other programming language, but for me it's far and away better than using containers on a development machine.
A lot of people who are against legalization make this argument that those who are for it ignore the negative consequences, but for large swathes of pro-legalization people, that's just not true. I know there are negative consequences, and I know that in a very small number of people marijuana can cause serious consequences (and in larger numbers of people, harder drugs like cocaine and heroin can cause more serious consequences).

But the fact that things can cause negative consequences is not sufficient reason to ban them. The obvious example here is alcohol - it is beyond clear from data that alcohol is incredibly harmful. It is beyond clear that it is more harmful than at least some banned substances (marijuana, LSD, MDMA). It is likely that it is more harmful than harder substances like cocaine, but with less data on those we can't say for sure.

So yes, there are negative consequences, but as a society we have decided that we allow people to do things that cause negative consequences (as evidenced by the legality of alcohol). There are limits on that, but with alcohol as a line by which to judge those limits, it's clear that to have any kind of coherent public policy, marijuana should be legal. Or, of course, alcohol could be made illegal. The point is that if you think that alcohol should be legal but other drugs should not, you're just engaging in hypocrisy.
Please elaborate. I have zero knowledge about rust, so I am wondering what you're referring to.
Do you have an army?
I was about to say the same thing. The article's premise is based on nothing. I've never heard a serious person say or believe that content creation would be a viable and stable career for the masses.

Even the 1%'s success is shaky. It's based on fashion, hysteria, playing engagement games and algorithms snowballing them into power. It cannot and will not ever work for a huge group, that's just not how attention is distributed. It's by definition winner-takes-all.
The 'coding interview' ain't what it used to be. Now companies (generally outside of FAANG) will have the recruiter (who is probably not technical) demand you complete a Leetcode exercise that they've picked seemingly at random, and your fate is decided by a timer and whether or not the green checkmark says your solution works. There is no back and forth with an engineer to gather facts or clarify the problem, there is no discussion of alternate solutions or positives and negatives to your chosen solution, there is no room to exercise industry or specialized knowledge at all.

Having read the blog entry it seems to me that this is what the author is lamenting, and I can empathize with that.
Right, no need to be bankist.
Hard disagree with this..

"Elegant code, best practices, smart solutions, design patterns — these are done for the sake of your fellow software engineers who will work on the codebase after you rather than helping you fulfill the purpose of bringing value"

The fact that business is about money is a truism. The other fact is that, good engineers care about that AND know that good engineering - which requires 'some' obsession with good code amongst other things - leads to faster iteration loops, less bugs, better maintenence, less incidents and SLA breaches. Do you know what they all equal? That's right, money.

Believe me, crappy, inconsistent over-complex spaghetti code and poor engineering practices can really really hurt a company.

As ever it's a balance of course. Every decent engineer understands the trade offs. For my part, I think about the business goals first and foremost and, to achieve those, I make sure my code is as simple, clear, testable etc as can be when realising those goals.

It's often a dereliction of duty as an engineer to just get the job done without reasonable consideration of good practices. Building up tech debt? Sure, I do it all the time. But sacrificing what I know to be a good practice just to deliver? No.
Getting rid of a stomach bug and writing some plug-ins for eagle I want to try and get it to work a bit more like raindrop.
Everyone has a test environment. Some places also have a production environment.
I appreciate the intent, C has become its own thing with its own set of conventions, and people still writing "C/C++" often reveal that they don't have a clue about either.

I think many C programmers might disagree with large parts of this, however. Some things that caught my eye that might be controversial:

> Wrap your structs in a typedef

The only reason to do this that's mentioned is "annoyance", which I think is a weak reason if you have the kind of problem for which you're considering to use C. The author already mentions that it has a weird interaction with forward declarations. It's my understanding that many C codebases don't do this, simply to be more explicit about what's a struct and what's not, and to avoid typedef explosion.

> the POSIX standard reserves the ‘_t’ postfix for its own typenames to prevent collisions with user types – make of that what you will ;)

IMO, that's not something to casually dismiss with a smiley. If it's reserved, don't do it.

> Typedef only creates a weak type alias not a proper new type (it’s really not much better than a preprocessor define), meaning there’s no warning when assigning to a different type from the same base type

The point is somewhat valid, but the author seems a bit confused about terminology here. It's not "a different type from the same base type", instead, it's a different name for the same type. The comparison with the preprocessor is unwarranted.

> Be (somewhat) afraid of pointers

Why? The following rant about RAII doesn't really give that many clues. Handles can have a performance penalty vs pointers -- or be a performance benefit, this really depends on the details.

Also, this is where it might have been helpful to go into different conventions about allocations, whether the caller or callee should allocate, etc.
What, exactly, do you mean by "periodic compliance reporting"?

If you mean reporting "we responded to X government subpoenas during this time," the whole point of a warrant canary is that the government can force you not to reveal that.

If your main concern is the instantaneous removal of the canary once they've actually been served an NSL or whatever, then a) that's assuming that such a canary is, in fact, removed the moment they respond to such a government action, and b) seems to be positing fairly exotic situations, which are unlikely to be pertinent for the vast majority of cases where such a canary is being used.
> What's the proper control to use for interacting with a navigation

1. Voice control

2. Pull over
The null hypothesis is what you legitimately need proof to refute.

That is not to say that the rule is applied correctly everywhere.
"Minimal" and "C++" do not belong in the same sentence :-)

That said, C++ Primer by Lippman, Lajoie, Moo is a good book for beginners. I think the latest edition covers upto C++11. You can then followup with Modern C++ Cookbook by Marius Bancila for newer features upto C++20.
UK Govt Car: Tracking SIM found in sealed part imported from China
Well at the end of the day, yours truly will be responsible to clean up that mess. Why would I do that?
Why would I consciously move into a situation that will be harmful to me?

Also, the project is in a great state with lots of options in regards to robots.
If you have multiple floors, just buy a second robot used for 60€

Why add any risk whatsoever just to save 60€? It makes no sense.
It's a downright terrible idea to do that.
>"tries to enact a positive change than otherwise"

Well there are whole bunch of countries ruined by your "enactment of a positive change" and millions of people killed. I do not see many opposite examples. As I already said you just advocate crime on a major scale.
Google announces official Android RISC-V support