skysight-inc/HackerNews huggingface dataset:
The problem isn't even code generation. It's the fact that the C preprocessor adopts the most retarded model one can possibly think of, text replacement.

Read the paragraph following point 3. in the following link, and laugh or cry (your choice): https://man7.org/linux/man-pages/man3/pthread_cleanup_push.3...

Thinking in terms of strings of text instead of the abstract syntax tree is literally the roman numerals of computer science.
Tahnk you, this also bugged me. Why link the article when it's just a rehashing over a great video? Wouldn't it be better to just link the video? Whatever the article adds, it's very little. We're talking about an under 4 minute video that you can very quickly watch, no furth explanations needed (and the article provides none at that).
For someone who doesn't get it, the problem is then whether the correct extension is all the doors being opened. With 3 doors it's the same.

For me the most sensible explanation requires you to know that a dud door is always opened, thus the probability from the 2/3 is the one you are switching to.
This is an inner EU border, so similar to Phenix City[1] mentioned above.
Many people live and work on different sides of the border, but they just accept things as-is.

[1]: https://en.wikipedia.org/wiki/Phenix_City,_Alabama
“Today this changes. We've found that IETF QUIC significantly outperforms HTTP over TLS 1.3 over TCP. In particular, Google search latency decreases by over 2%. YouTube rebuffer time decreased by over 9%, while client throughput increased by over 3% on desktop and over 7% on mobile.“

This is the most sickening sentence for me. The myopic internal focus. ‘Look we’ve made our new thing a standard and look it makes our products run faster’. This is just blatant exploitation that’s occurring as there is too much centralised ownership. In my opinion this is predatory behaviour packaged up as open source good for all.
A union is just an organization which represents the interests of workers. If we don't want BS work rules, we don't have to have them. Instead, we could have things like:

1. abolition of non-compete agreements

2. ownership of code we write when we're not at work

3. standards for privacy and security enforced by working engineers and not by management

Maybe your list is different than mine, but if you can think of anything we might want that goes against the profit motive of corporations, a union (or a guild, or whatever you want to call it) is a proven way to get these things. The Writer's Guild of America guarantees the screenwriters of a movie are credited, for example -- imagine all software had a list of the people who made it!
A "startup" (according to Wikipedia and most others) is essentially a business in search of a business model (see Steve Blank's work in particular).

A small consulting business is not a startup, it's a small business that already has a perfectly fine business model. As soon as the founder picks up the phone and makes a few calls it's out of the "startup" search phase and is now started as a real business.
> it'd satisfy this problem for individuals.

No, it wouldn't, because that involves interacting with the public DNS hierarchy.

> you shouldn't need to buy a domain to do stuff locally on your own device [emphasis added]
If I were having a pint with Penrose, I'd take it a step crazier: what if the earlier universe is actually this one? And our universe ends up in a Big Bang, which begets a new universe, which is the one we are now in.
Typically the cooking surfaces in a commercial kitchen are installed under an absolutely enormousness hood that sucks a lot of air. That is sufficient to greatly contain smoke. Not sure what smells have to do with anything.
>When you can get a functional language to type check, it really does Just Work.

Not all functional languages have static typing.
Also type checking helps, but saying that if the types check out it just work it pushing it IMO.

No type checker will catch this error:

sqrt :: double -> double
sqrt x = x

sqrt 10
I don’t think this helps me understand it.

In the 1,000 doors problem, my odds of being right initially were something like 1/1000 and then it changes to something like 998/1000 or 999/1000 for switching, I can’t intuitively grasp exactly what the odds become of winning if I switch, I just know it’s high. Bringing it down to 3 doors doesn’t help me much — it’s still something like 1/2 or 1/3.
Thanks!
And thanks for the input. I'll add it to my todo list and fix it once I implement rest of the features.
Cheers~

edit: can you tell me which browser are you using?
Personally, I don't want unions because my job is awesome as it is - absurd salary, great benefits, interesting problems, etc. I don't really see what a union could give me, I don't need more money and I work reasonable hours. Also I've seen how unions can completely paralyze the hiring and firing process (ex. Ontario teachers union and their horrible standardized job interviews).
Well, for one example: Tesla Model 3 production was constrained based on the amount of paint their factory was consented to spray every day. When Model 3 production started climbing, customers were seeing very thin and uneven paint application, well below what's normal for a car in this price bracket, and often very light on critical areas like the sills. Owners in snow-bound places where Tesla is popular, such as Scandanavia, were reporting pain stripping within a few months of ownership.

I don't know about you, but my expectation for what is nominally a luxury car would be to have paint standards better than British Leyland in the 70s.
That regression is the only reason I'm sticking with WSL1 for the time beng.
Awesome. I have worked on similar software but on Windows. I like how it is fast
I appreciate the thrust of this argument. Reminds me a bit of keybase.io. Signatures as identity seems obvious in hindsight.
Not really.[1]

[1] https://www.chinabusinessreview.com/trade-union-law-and-coll...
Some unions negotiate practices regarding seniority for good and bad reasons. Others don't. A software workers union wouldn't necessarily do that, unless its membership voted for it. Which might make sense, because of rampant age discrimination - but there's nothing inherently tying that to promotion.
Admittedly, I did weaken a little when my friends told me about their experience at Caviar. It did feel like collective bargaining would have served them well. But yesterday I saw 1280 comments renewing my resolve¹. No, I will not build a big bomb and put it in the hands of a capricious mob.

It sort of reminds me of the Sierra Club in SF. I recall it being some sort of enviro org but now all they discuss is housing and all the outdoors guys are sad about it. I'm sure when your organization is parasitized and similarly subverted, you will feel sad too.

But not all the tears of your founding members will undo the harm done. No, better the bomb remain unbuilt².

¹ https://news.ycombinator.com/item?id=24702393

² And I went to the Chase Bank near Avalon Street in San Francisco the other day. Avalon Street wasn't called Avalon, originally. The story of how it became Avalon, how another became Peru, and yet another became Excelsior provides a nice backstop to any weakening of my resolve. Unions are a Brazen Bull.
That would definitely be helpful. This tool looks cool, but I need windows support.
> If techies want APIs to be uncopyrightable, the solution is to go to Congress and see a carve-out exception in statute.

By the same token, if we are rejecting judge made law that isn't expressly in the statute, if technies want APIs (or, for that matter, computer programs!) to be copyrightable, the solution is to go to Congress and get an explicit carve-in put in the statute. As it is, the only things explicitly included in copyright protection are:

--quote--

(1)literary works;
(2)musical works, including any accompanying words;
(3)dramatic works, including any accompanying music;
(4)pantomimes and choreographic works;
(5)pictorial, graphic, and sculptural works;
(6)motion pictures and other audiovisual works;
(7)sound recordings; and
(8)architectural works.

--end quote--

Now, certainly some computer programs include things that fall on that list as components, and some might arguably be described as being interactive forms of one or the other category.

But APIs, themselves, don't fall into any of those categories, so why would they need an explicit carve-out when they aren't carved-in in the first place?
Particles with mass decaying to massless is pretty fringe. To my knowledge, there are no mechanisms for electrons to decay (except for meeting a positron, I suppose).
You mean like the customer loyalty card at your supermarket? That's all about making your life better, right?

Google only ever shows you ads you want, never "unwanted content". Are you suggesting Google could do even better if they just knew a little more about you?
Happened to me in one of those definitely hipsterish places, I told them no and that it was bizzare, then barista told me: "all-right I'll call you Joe". My guess is that he already had a couple of John Does waiting or what.
We heard sonic booms routinely growing up in the 1990s in small-town Missouri, presumably from nearby air force bases. It was little more than a curiosity, and never enough to rattle windows or really affect anyone much beyond perhaps a brief startling.
I'm wondering how that NVME will work. The big push of the PS5 was that those built-in SSDs push a huge amount of data with their custom storage controller, allowing loading of assets in read time during gameplay.

I'm guessing the NVME will be for storing some game assets it can swap out for less frequently played games; but that data would still need to be transferred back to the onboard SSD when the game is loaded back up?
And then, for those in Australia that support that cultural heritage of labour unity, may their unions prosper.

If it will offer clarification, I speak in the context of America.
Yeah, the part that really did it for me was when he snapped off the top plate and there was an empty M.2 slot just sitting there.

Also, the blower fan is interesting. Though, like you said, there is a lot of stuff in there to push air through, plus dust filters (yay!), so it probably made sense to go with static pressure over pure volume of airflow.
No one is going to say 'I just went to the Tesla store'.
you don't want preprocessors. Of all the metaprogramming choices, the preprocessor (C or erlang) is the worst, since it operates on lexical forms, and is sort of its own DSL. Not only do you have to learn two languages for the benefit of one, but you're gonna have bugs and it's much harder to automated tools to do code analysis.

You could have lispish ast transforms (rust, julia, elixir)
You could have comptime (zig, elixir)

both of these are far nicer than preprocessor.
Estimating how much traffic needs to be handled and what kind of resources it would take to handle it are absolutely part of both of those questions, which in reality are the same interview problem because a System Design interview isn't a single question but rather a long series of guided questions that cover architecture, scaling, and a lot more.
Then I read about red light is specifically used in car dashboard lighting and airplane cockpits because it helps with night vision.

Given that there is a stream of not-red lights shining at me in the opposite lane, I've been skeptical of this claim since Nissan did it in the 300Z like 30 years ago. It's there to look cool, not be useful. There's a subtle design lesson in there as well, I'm just not sure what it is.
Yeah, but so what? Don't most organization have rules designed to allow them to function as an organization or solve specific problems they encounter? It's not like an Apple employee can freely blog about the unreleased product they're working on or simultaneously work with Samsung on a competing product.
I don't think so. I read the full blog series, and I am interested in some of the ideas.

It's just for "maintenance" tasks which are limited to 8-12 hours per week. Developers give a task (in a weekly meeting) an effort of low (2hrs), medium (4), or high (8) and choose which tasks they want to get done in the week. If a developer is knocking out 3+ high effort tasks in a week there is 1) a problem with estimating effort and/or 2) a problem with the developer spending way too much time on maintenance tasks. Either one can be addressed.

I am not sure if I would try these ideas out for myself, but I think most of the criticisms here on HN are addressed in the full blog series.
I guess it depends on the media center? Many have no back panel so they are not an enclosed space. In terms of airflow you can think of them as small server racks.
Why? It's just a matter of time and scale. It's impossible to email thousands of people a personalized message.

I still see it as an email from that person, assuming they wrote the template themselves. I would also expect to be able to reply directly to that person if I wanted to, though.
NASA has solved physics, though:

https://www.nasa.gov/X59

The Low-boom Flight Demonstration mission has two goals: 1) design and build a piloted, large-scale supersonic X-plane with technology that reduces the loudness of a sonic boom to that of a gentle thump; and 2) fly the X-plane over select U.S. communities to gather data on human responses to the low-boom flights and deliver that data set to U.S. and international regulators.

Using this data, new sound-based rules regarding supersonic flight over land can be written and adopted, which would open the doors to new commercial cargo and passenger markets to provide faster-than-sound air travel.
WSL2 & VSCode have completely replaced Virtualbox/Vagrant/SublimeText for me.

The WSL2 Linux VM runs on Hyper-V, BESIDE windows, not on top of it. So the VM is fast and i/o is fast.

VSCode has a WSL2 plugin which enables it to operate in client/server mode with server running in Linux and client on Windows (seamless to end user). The setup works really well.

I've tried the GUI approach described in this post but there's a noticeable latency in GUI apps running in the VM. Microsoft has announced a new approach they're trying out so let's see how that plays out.
Hopefully you're aware of some of the shortcomings of this plugin when operating in a multi-node cluster.

The plugin keeps a node-specific database of the messages that are to be delayed. If the node is unavailable or lost, so too are the messages the node was keeping for future publish.

Also, there is no visibility in to the messages that are awaiting delay. 10? 100? 5000? Your guess is as good as mine and you'll never be able to figure out what's in to-be-published pipeline.

Signed, someone who has dealt with these issues.
That is indeed what most places do: the names are a more recent thing. Of course, now you need to keep the paper receipt with the number on it, or a plastic number card that might or might not be returned to the counter, then train yourself to listen for an arbitrary number, even though your brain is already quite adept at hearing your name. For most people, most of the time, the first name is an upgrade. For edge cases, unfortunately, it's worse.

One restaurant I love approaches the problem by giving out name cards (brightly-colored paper, so disposable or cheaply replaceable) rather than numbers on the receipt, but the names are of famous personalities. I've been Dolly Parton, I've been Arnold Schwarzenegger, I've been Jackie Robinson, etc. They're fun because unlike numbers, they're easy to remember and can provoke conversation in a group, or fond thoughts when alone. Bravo to Twisted Root Burger Co for this approach!
I don't see how this is a matter of compensation. Companies want to hire the best engineers. Your friends seem to not fit that bill. If there is no pool of good engineers, companies will look elsewhere. I don't see the scenario where less competition is helping anybody here. Your friends should work on their skills.
I may be misunderstanding, but it appears that the code for the assignments is in a private GitHub repo that students of the class are invited to. Is there any other way to gain access?
I feel pretty much the same. 2 bachelors, 1 one year master, 1 two year master, some work experience.

Most software companies basically never responded back. The ones that did told me that I didn't have enough experience.

12 months later, I finally got a job, at some small startup that has its good and bad points. The first thing I'm noticing: university was felt much harder and I felt I was learning a lot more there.

I feel completely demotivated that most companies (and all big companies) weren't considering me when I applied to them (and probably still aren't). It crushed my motivation and now I am simply performing to expectations. It does mean my work is quite relaxing :)

Example:

At my work, I recently learned a bit more about React hooks. I knew they existed, but never used them and this time I learned a bit on using them.

In my final university course I learned how to perform Meltdown/Spectre, read security papers and even more advanced attacks.
Steam has a system where you see a score for recent and one for all time reviews.

Interestingly they only allow for recommend / not recommend instead of stars.
I Sell Usernames on the Internet
Straight up paid astroturfing is probably more lucrative and less obvious than affiliate links - It just requires more co-operation between the marketer and the salesman.
My answer to this dilemma is Thriverism: https://www.sonyasupposedly.com/thriverism/

Accompanying HN thread: https://news.ycombinator.com/item?id=24330086
The opening of the door seems irrelevant and only serves to confuse. There will always be a goat door to open, who cares if it gets opened prior to the choice? The choice you are being given is "keep one door" or "choose both of the other doors." That is functionally the choice because Monty always opens a goat door. The chance of the other two doors containing a car is not affected.
> Tech workers are in so much demand

> Also, barriers to entry in software are almost 0

One of these statements has to be false. I think it's the second one.

It's true that software has few regulatory or credential barriers. However not everyone is cut out for a career in tech. In fact very few are. This natural moat keeps the supply of workers lower than other industries, making unions less necessary.
I have no clue what you want to says with this
> Tech workers are in so much demand that they don't really suffer such a disparity of negotiating power

Nonsense. Adobe, Apple, Google, Intel, Intuit, Pixar, Lucasfilm and eBay all colluded with each other to keep tech worker compensation below its market rate[1].

Good luck negotiating a group health plan that an employer buys as a single employee.

> Given all that I personally think the downsides of unions in tech would be much higher than the upsides.

I would rather go with the facts, and not how you in particular feel about the issue.

The facts are that white collar employees that are union members have higher pay[2], better benefits, more time off, and report higher life satisfaction[3] compared to their non-union peers.

[1] https://en.wikipedia.org/wiki/High-Tech_Employee_Antitrust_L...

[2] https://www.bls.gov/opub/mlr/2013/04/art2full.pdf

[3] https://journals.sagepub.com/doi/10.1177/0160449X16643321
Ever since it came out I've asking myself why is it called "Windows subsystem for Linux"?! Isn't Linux that's actually running as a SUBsystem, since Windows is the host?!
One aspect of systems programming that doesn't get enough attention involves tracing memory leaks (with valgrind, massif, etc). While it may be challenging for you to create realistic examples, doing so would help expose students to challenges they'll face in the real world.
IMO one of the most prominent reasons - and one that I never see mentioned - that learning a language as an adult is more difficult is that the older you are, the more socially-unacceptable it becomes to point out grammatical and vocabulary errors. When you're a child, elders correcting you is so natural it scarcely even breaks the flow of conversation:

child: "Me and Tim went -"

adult: "Tim and I went."

child: "{pause} Tim and I went..."

As an adult, you simply do not get this kind of feedback. There's no chance in hell I would interrupt another adult to make the above correction. It's simply too disrespectful. And yet it is precisely this disrespectful interruption and correction that enables children to have tight feedback loops which result in fast, effective learning.
For anyone that doesn’t get it after this explanation or even the 1000 doors trick:

Try visualizing how you’d pseudocode this game - it literally didn’t click for me until right now, and now it seems much more intuitive.
Something like Dasher, maybe, with only syntactically valid alternatives displaying?

Somewhat akin to the “railway” syntax diagrams used in older programming manuals (still used in the SQLite manual).
Some people do things for reasons other than cash. For example I'll buy a TV that lasts rather than a new Vizio one each year because I cant be bothered and dont want to generate the waste.
Nope, that’s the easy part! You don’t avoid TCP issues altogether though, all the usual behaviours of TCP are still there with respect to packet loss, latency, jitter etc.
> Amazon automatically provides you with the cheapest version of the product you’re looking at,

Nice; thanks, Amazon.

> even if it’s potentially fake.

Yikes! Hope I don't get one of those!

> Most of the time you cannot even return these items!

That's just rubbish though, Amazon returns are so easy, if the price is only marginally lower elsewhere I'll order from Amazon just because - if necessary - returning is easy, third party or not.

I'm not sure if I get the point of it, if I can't tell if the product's a 'fake', aren't I happy? If I can (and I'm not happy with it anyway) I'll just send it back?
We built Checkout so you don't have to
if you don't give a preprocessor to people they will either hack it (see cpp being used for parsing .Xresources and affiliated) or write their custom preprocessor in an unholy mess of bash / python / ruby / cmake anyways.
Take Negative Covid-19 Tests Seriously, but Not Literally
> a crazy theory that a universe existed before the big bang, and that the heat death of the universe starts a new big bang.

I realize this isn't what Penrose is saying, but is it really that crazy that random fluctuations will create the conditions for a new big bang in a universe at thermal equilibrium?
> It’s important that Monty looked behind the doors before choosing which to open. This is where people’s intuition usually fails. If he had chosen a door at random — in a way that he risked possibly exposing a car, then the situation would be different. (In that case, there’s no advantage or harm in switching.)

This one took a second to rationalize. The reason it works is you have the same chance of winning overall (assuming you can safely choose the car if he opens the car by chance), it's just that the value of winning from switching vs. staying has been shifted into the probability of winning by default. The usual mental trick is to extend to 1,000,000 doors.

If you pick one door, then are told that all of the alternatives except one are the correct answer, you should obviously reason that the door you didn't choose is the correct answer, unless you got the 1/1,000,000 guess. Odds of winning if you switch are 999,999 / 1,000,000

If the host instead opens 999,998 doors randomly, you have a 999,998 / 1,000,000 chance of winning by default. The remaining two doors have equal chance of winning, giving you the same total odds of 999,999 / 1,000,000 no matter which you choose.

Which makes sense, because both situations are, more or less, being given 999,999 chances to guess the lucky door.