skysight-inc/HackerNews huggingface dataset:
>> but it only really matters if you explicitly upgrade to 2018

This is OK for programmers who already know Rust. But for new programmers coming to the language, it presents a very difficult challenge.

To give one anecdote, I was trying out Rust a few days ago. Just baby steps. I wanted to read a file. But since the try! the macro syntax is changed, almost every example I could find on the Internet was broken. Took me almost an hour to figure out what was going on. (I have programmed professionally for more than 10 years in Java, JS, Objective-C, PHP, Python and Go) Lost the interest to pursue it further.

Another time, I thought I would read some small projects in Rust from Github to improve my understanding of Rust. I wanted to checkout "programs" and not libraries. So I went on exploring Rust projects on Github and tried out 2-3 smallish programs. But because of Rust version incompatibilities, I was not able to get them to build and run. Now I accept, if I had been dogged enough, maybe I could have found out the exact version of Rust required for the programs. But it was too much work for a weekend afternoon where I just wanted to learn something new in 2-3 hours.

Rust community and senior Rust programmers might not accept this, but the Rust ecosystem has instability issues from a NewBie perspective.

Edit: Sorry the problem I was facing about was related to writing a file and "unwrap" and "?" syntax. Not the try! macro syntax. (I think that surfaced some other time.) I just checked my example after posting this comment. But still keeping the comment here as it shows struggle a Rust noob faces while learning the language.
Performance is largely irrelevant for the first teaching language. You can completely ignore OOP (unlike Java) if you want, although you probably should teach students about it at some point. Python doesn't have "no concept of types".

I have TA'd different intro classes that started with those languages, and Python IMHO makes a way better first language than C or Java. Start with it, introduce other languages and their concepts later. I've heard mixed things about starting with functional languages, but I think it can work too.
Haskell is lazy. a ++ b === (head a) : ((tail a) ++ b) (plus the base case)

It is only linear when you force it to evaluate, which ideally happens only once (amortized) in your program when the result is consumed. As long as you are careful, you don't get the bad quadratic performance that you'd get from something like eagerly appending a character to a string in a loop in Java. There are either gotchas, though, including relying on the compiler to do things in constant space that naively look linear, and also knowing when the compiler won't help you and you have to structure your computation manually.
I have some experience at porting ancient software to more modern languages, and I found it very satisfying.

Maintaining it as it is, without the authority to document and refactor it might not be as much fun though.
Her husband + her net worth is about 160M. Which is the same thing - you can't pay her enough to compensate her for the cessation of movement on the gravy train. If you're suggesting that having a wife who's been in congress for decades in no way helps her husband's endeavors, I have some wonderful Florida swampland for sale.
> Obviously, the total length of the sleeve cap must be equal to the total length in the armhole, otherwise these stripes would not be matching.

Not necessarily. The photograph only shows that the pattern lines up at the back, it doesn't show that it lines up at the front.
The current problem, right now, is massive deflation. And the fixed costs such as rent, debt, mortgages, utilities that need to be paid while many incomes go to 0.

The need is to get people and businesses over the hump, survive this crisis and get to the other side of it in tact.

Now we can can legislate half-measures like rent and mortgage "moratoriums" and such, but that is gumming up the entire financial flow. Much easier to subsidize these payments and let the money flow than adjudicate millions of little friction points, and have tenants and landlords battling each other through no fault of their own, creating bad credit records for missed payments etc. Unemployment benefits can help but even this solution is slow and messy.

A big problem in this whole situation, though, is bailout money is getting handed out. Just not in a uniform manner. And check out who gets "bailouts" and who gets small checks or "loans" (as if more debt is anything but trouble right now). The discrepancy between how different factions are helped, given the huge overall stimulus quantities, is a problem.
This is more of that "wet streets cause rain" logic we hear about...
>> even in the u.s., and our system is no less authoritarian than any other.

Of course is not true. You can't compare the US with NK or China. Proof is the simple fact that you could write that comment without being censored and/or thrown in a jail cell.
To put it simply to build a modern Java project you need the jdk + bazel + docker + maven + runtime classpath for a sub-set of npm's features (as far as I know you still can't include two versions of the same maven dependency).

For a Node project you just need node. npm is part of node, and yarn is optional. The repeatable builds was a real issue but that's been solved years ago.
It changes so fast that once you learn it, and then download a dependency, then look inside it to fix a bug, you discover that there's whole new syntaxes you never saw before. Or you want to use a dependency but can't because it uses nightly and you don't. Or it uses a different flavor of async io than your http client does, or, or, or etc.

Rust is a toy for elite home code poets. And what beautiful things they craft! Those of us who are paid to program don't have the luxury of playing with it on work time.
It is fun -- it requires an interesting blend of patience and impatience. Each individual step in the measurement process is slow, but those who are most successful at it are very hungry to get at reliable answers quickly.

Gravity is, by most measures, our oldest force, and while GR is a very successful theory, we know essentially nothing about the underlying mechanism. This is very much unlike the rest of the Standard Model, where we have very-successful quantum theories.
The early days of home computing – in pictures
This will put the interviewer in a very awkward position. Imagine the interviewer thinks you have a problem in area X, and they spell it out right there, "I think your expertise in X might be lacking," and then for all they know, they're walking into a discussion on whether X should be considered necessary for the job, with the very person they need to assess - a potential minefield.

Sure, you may be a reasonable person and have a reasonable answer for their concern, but they don't know it.
Caylent Best DevOps on Demand Software for Container Management
> Do you default to action, or default to inaction?

Why not just come out and ask "is it good to work here, or bad to work here?"
Actually, the original ASCII proposal did include an up arrow and a left arrow. The final version a few years later replaced these with ^ and _ respectively. Some companies adopted the original ASCII. When Smalltalk-80 was developed it replaced its own quirky character set with ASCII but used the up arrow to indicate return and left arrow assignment.

This made Squeak Smalltalk code look wrong, like "x _ x + 1", depending on the font you used and some people wanted to allow underscores in identifiers to make it easier to interface to other languages. So "x := x + 1" was added as an option and there have been some crusades to convert all older code to that.
Won't solve your problem as it seems more structural. But perhaps a tool could bring som clarity - check out Featmap (www.featmap.com).
> "Doxing" is a neologism that has evolved over its brief history. It comes from a spelling alteration of the abbreviation "docs" (for "documents") and refers to "compiling and releasing a dossier of personal information on someone".[9] Essentially, doxing is revealing and publicizing records of an individual, which were previously private or difficult to obtain.

The term dox derives from the slang "dropping dox" which, according to Wired writer Mat Honan, was "an old-school revenge tactic that emerged from hacker culture in 1990s". Hackers operating outside the law in that era used the breach of an opponent's anonymity as a means to expose opponents to harassment or legal repercussions.[9]

https://en.wikipedia.org/wiki/Doxing
Show HN: Neck Check – App that reminds you to fix posture and ends Text Neck
You have to market differently to different people. TFA is intended for devs who are forced to use javascript even though they prefer python 2. They would write a different article for skilled js developers.
The best sales technique for a candidate is for the candidate to do research and/or ask enough questions to find out what the problems the company is having. Then the candidate explains how he's going to fix those problems.

This works because that's the reason why the company is interviewing people - they have a problem they need to solve. Be that solution.
You can't test a theory with a single data point. There's too much randomness in what gets traction from /newest. That's why we allow reposts of stories that haven't gotten attention.

In addition to randomness, https://news.ycombinator.com/item?id=22271942 probably didn't get attention because there wasn't any context. It wasn't clear what the background to the project was, nor what was interesting or different about it. You did later post a comment explaining that a bit, but the comment was so unpleasant and bilious that it came across as trying to bully the reader into liking the post. You're not going to catch many flies that way! You also posted the comment a couple hours after submitting the article, by which time it would have fallen off the /newest page.

There's another factor which is actually a little interesting. More polished projects often do worse on HN because readers assume that they're being posted by companies for promotional reasons, and people find that boring. Since there really are a lot of such promotional submissions, it's understandable that readers pattern-match that way. More amateurish projects have an advantage here: they're more likely to be judged as authentic, which is intrinsically interesting. It's a lot more satisfying to relate to other humans and their work than to encounter a corporate facade. Especially for a project like a game, an HN thread is usually only very interesting if the creator is present.

Of course there's nothing wrong with professional, well-wrought work! The solution here is to add a comment to the thread giving the backstory of the project, and explaining what's different about it. That does two things: it gives people an explicit starting point to kick off from, but also it implicitly helps classify why the thing was posted. Titles make a big difference too, since that's your first and best chance to interest the reader.

Most importantly, that does look like a great project! We're always on the lookout for good submissions that fell through the cracks, and we often invite reposts. I'd be happy to do that with this one. If you want to, please email hn@ycombinator.com and we'll figure it out. But it would definitely be much better if one or both of the creators themselves were around to engage with readers—that would make the thread more alive. Assuming that the game is as you describe it, I think the community here would have a lot of fun with that, and your bored teenagers might get some good validation to keep creating.
I've never really understood the need some HN readers have, to insist on a date on anything that wasn't published relatively recently. Especially articles about things that do not change with time.

Maybe every post should have the article's date, so when I read old HN posts there is no room for confusion.
Neck Check helps remind you to use your phone with good posture to reduce neck pains and ultimately end Text Neck. The app takes advantage of sensors in your phone and notifications so you can be reminded to hold your phone at eye level while you are using it.
I was in eight grade when I came up with this idea during a school project about Text Neck. I was working on multiple iOS apps at the time, but as quarantining rolled up at the end of my senior year, I realized the importance of good posture now that everyone is on their phones. I decided it was the perfect time to bring this idea from 4 years ago to fruition. Here it is and I hope you like it.
Another link with all 3 seasons included: https://archive.org/details/ConnectionsByJamesBurke

p.s. Like many of you here, this show deeply influenced how I look at the world. This content should be shared far and wide.
> I wanted to read a file.

It's probably too late to help now but I recommend the official documentation[0] and book[1]. They both have examples.

[0]: https://doc.rust-lang.org/std/fs/struct.File.html

[1]: https://doc.rust-lang.org/stable/book/ch12-02-reading-a-file...
Fracking is expensive and dirty and benefits the worst types of people in the US.
Whataboutism is dropping a dead cat on the table in order to steer the conversation towards that cat. I did not steer the conversation to the US, I stayed on the topic of China, therefore it is by definition not whataboutism.

You seem to say that whataboutism is anything that mentions similar crimes committed by another party, implying that the actions of others are completely irrelevant. No. My criticism is not "China does no bad things". It is "China is not represented in a balanced manner and is not held to the same standards as other countries". Since the discussion is about standards, context absolutely matters.

> That's completely irrelevant. Do the people being repressed approve because that's all that matters [...] their families being raped

There you go with the "families being raped" thing. My point with the aprovals of Muslim countries is: maybe those allegations of rape are false?

Like I said: forced reeducation and deradicalization, yes. Rape/killing/concentration/genocide, no. The Gray Zone articles show that claims of the latter rest on shaky sources that are either circular, or funded by US interests and agendas.

We can debate whether forced reeducation and deradicalization is appropriate. But genocide/rape/murder/etc is false.
Only in the sense that Facebook allows my "friends" to "share" / give away my personal info to third parties as a condition of them playing whatever the new equivalent of Farmville is.

The number of people who are clueless to this is an ongoing, never-ending mind-boggle.
Github: https://github.com/ucsdsysnet/corundum

Reddit: https://www.reddit.com/r/FPGA/comments/ejd08o/corundum_opens...

IMHO, this is probably THE best FPGA network stack out there. It has no commercial IPs whatsoever, everything including MAC is simple and high-quality Verilog. The beauty is that it works on so many xilinx boards out of box.
Your paraphrasing of "novel" as "arcane" is in bad faith. It is also self evident that djikstra believes that learning computer science is good for writing software.
To stop the insufficiently motivated ones.
Twint – Twitter scraping tool written in Python
A lot of it was incorporated or duplicated in feedback control theory, but mostly in the context of industry, so it didn't really feed back (heh, sorry) into other, more academic, areas. And, on the other hand, it spun off into (IMO) fluffy "second-order" cybernetics and became a kind of toy philosophy.

I find it sad too. PID controllers are great but from my POV they're barely the first step.

However, another way to look at it is, you can study and apply "Intro to Cyb" and leapfrog into the future.
If you're on a Mac, you can have a look at The Archive: https://zettelkasten.de/the-archive/ which, as the domain indicates, is inspired by Zettelkasten, which [also inspired the "Evergreen Notes" idea][0].

[0]:https://notes.andymatuschak.org/z4SDCZQeRo4xFEQ8H4qrSqd68ucp...
Are you sure? Your comment contains a minor syntax error.

Should you have been unable to submit it, or should people not be able to view it, until you correct it?

>My answer usually is “are you sure? “.
^

Line 1:
Syntax error: "“" not allowed here.

JavaScript is quite forgiving, but that's usually okay. If something doesn't work it's usually not the end of the world.

In this case everyone correctly read your second opening quotation mark as a closing quotation mark.

This allows us to focus on what you're saying (functionality.)

If we couldn't figure out why you included some typos, we would just ignore that part and focus on the rest of your comment.

When someone replies with the nitpicking style it doesn't help anyone. (In fact my first version of this comment was downvoted, before I wrote out the rest of my explanation.)

I think all the leniency in front end JS is pretty good for the same reason. It lets us communicate, and the sandboxed client environment (browser security is built assuming web sites could be malicious) means that the stakes are quite low.
> There’s no concept of types

Python is strongly typed, and while it doesn't mandate static type checking, it has several AOT static type checkers available.

It's not Haskell, but then neither are most languages that mandate static type checking.
Man, this looks slick! And I loved your rant regarding collecting vs tagging/sorting, definitely can relate. I miss my CDs :)

It's a pity that most users are with dynamic IP and behind a NAT. This makes sharing directly with someone via BT impractical, so people still use email/messengers for that.
If it truly is evergreen content, the date is irrelevant. If it's something that will change with the next version of a piece of software, yes, the date is important. But all too often someone will skip an article written in 2014 even if it answers their question because it's "outdated."
I’m happy with the changes to rust and their pacing but I want to point out that merely asserting “you don’t have to use these features if you don’t want to” is disingenuous and particularly so for open source contributors (Steve did NOT say this but it was a common refrain in the discussion that Steve is contributing to). It threw me for a loop the first time that I saw the spread operator in an assignment in a project I was filing a PR for, and I thought I was on top of all the features.

Some changes that stand out to me: the try macro being deprecated was huge, and though the ? Operator is a thousand times nicer, that was a rather radical shift to the ecosystem where you could smell code from yesterday a mile way; I seem to remember try blocks were stabilized then removed but I seem to be mistaken on that count; async of course is a huge change and it absolutely does force you to use it since it’s a contagious language feature in pretty much all languages (I’m very disappointed with tokio on this count and have a feature I’ll probably file a PR for to help reduce this); the change allowing reusing the same variable name inside a match binding as the variable being assigned to was hugely beneficial but quickly broke backwards compatibility because of how nice it was to give up. I think the changes to std::error are also worth mentioning, they might be backwards compatible but they completely obviated an entire generation of crates and coding styles (I for one do not lament the death of quick error and co).

I feel a better metric for this might be to study the min rustc version to compile libraries, i.e. community adoption of new or breaking changes. If you take the releases from the top 250 crates in the past few years and see how many rustc versions back from whatever was stable at the time of release could compiled the release, that might give you a more data-oriented result.

Also, I think some of the real frustration might be from “core” crate breakage, such as the transition from tokio 0.1 to 0.3 and the ensuing mess or examples like gfx-rs that hundreds of other popular crates built on to get OpenGL support before they completely deprecated it and pivoted altogether such that not all are those crates left based on a dead-ended project but OpenGL users are all SOL (“just a little while longer!”) as the community-adopted alternative is wgpu which requires Vulcan/Metal/DirectX until the promised OpenGL support lands there.

I’m not complaining; NIH people generally get off easy with community deprecation of popular crates ;) and OSS developers are absolutely not beholden to anyone. But I imagine for developers plugged into the ecosystem, changes to extremely popular crates and changes to the language or standard library might result in a general annoyance that doesn’t distinguish between the two (and that’s also fair since the reason rust has a small standard library is so people use crates which can be more easily replaced or deprecated).
I wish Google would finally go with the kneejerk reaction of just unlisting all these sites from Google Search and News.
App install is a high bar, people won't do it to find out what your app does. The moment I just saw install buttons, I closed the tab.

Your website doesn't have to be the full experience, but it has to be enough to convince people the app is worth installing.
I'm not saying your experience is invalid, but the first 5 google results I get for "read a file Rust" all return working code (I didn't look beyond the first 5).
Are they (news firms) going to charge a fee to access RSS feeds at some point now?

That judgment seems to be absurd, especially if they only provided a snippet of the article for data discovery purpose.

I'm not sure that would help those news firms if they get blackholed from Google altogether.
Europe's not going to stop until the internet is totally burned to the ground, are they?
I’m sorry but their warning really is not very clear. They write:

“I understand that my contacts will be uploaded and saved on GalaxyCard, and that they will be used to calculate my eligibility and remind me of my bills.”

Note the use of ‘remind me of my bills’ at the end of that sentence. If this company truly wanted to be clear, they could have written that:

“I understand that my contacts will be uploaded and saved to GalaxyCard, where they will be used for two major reasons. First, they will be used to verify that I am eligible for this service. Second, if I am late to pay my bills, I understand that GalaxyCard will contact my contacts to tell them that I have not paid my bills.”

That is significantly more clear as it specifically states they will contact your contacts if you are late.
Hayatimda Yeni Dönem 11.04.2020
It's like an unpaid internship, smh

years of "it already works, dont fuck with it" policy and tech illiterate politicians.
One of the more memorable stories I read as a child was "A Bowl of Biskies Makes a Growing Boy" by Raymond F. Jones. In it, the intelligent, scientific teen with an aptitude for chemistry discovers the government is lacing breakfast cereals with drugs to quell the populace.

The boy discovers it, weans himself off the drug, and then eats mostly from the health food store to avoid it. But the government uses that store to round up anyone who discovers the truth, because it's a sign plain as day you have.

Stuff like this makes me think of that story. If anything, a motivated government could just train policeman on what patterns or clothing break camera recognition and stop people based on it. Or if you have an obscured plate, they don't need the camera if it's the law not to have it.

This really only works if we have pervasive but more or less harmless surveillance by benign or robotic actors. But this is kind of like that health food store in that all the technical solutions in the world can't stop a motivated agent. You have to eat somewhere, and you have to exist in more than just image recognition databases.