skysight-inc/HackerNews huggingface dataset:
True, 1984 is not included in any Chinese textbook. Chinese education system is not the best. We have literature related classes from primary school to high school but they don't include many western works (well translation is one factor I can see). And the way teachers teach them is very very test orientated. We have a big test after highschool called Gaokao which is almost the only factor to decide which college you can go to. Many ppl spend their entire highschool prep for that one test. (There are schools specialized for students retaking this test after they failed the first time, and it takes 1 year to retake.)

During college there's no mandatory literature courses anymore but I was exposed to many western work during that time in my spare time. One reason was I was trying hard to learn English. But I can see many people dont have the incentives to read those even if those works are famous even in China. Many STEM college students in China start to prep for studying overseas once they step into college and all they care is GPA + a good Toefl/GRE score (and there are faster ways of getting good scores for those other than reading literature).

I dare to say many of those STEM students become the friends and coworkers you guys have in US today and they probably haven't "wasted" much time on pondering issues outside of STEM fields or getting their own lives to a better place.

Edit: not appearing in literature textbooks doesn't mean it's not famous or popular in mainland China. Haruki Murakami is also a very popular author whose work is not included in textbooks. He has a book called 1Q84 which was very popular and many Chinese got interested in 1984 because of it.
The results showed no association between vitamin D levels over a lifetime and the risk of fracture.

Actually, the paper says mostly the exact opposite: "There is high quality evidence that vitamin D plus calcium is associated with a statistically significant reduction in incidence of new non-vertebral fractures. "

The article focuses on the limited apparent benefits in the smaller populations and only on hip and vertebral fractures. Well, sure, I can see how an 80-year-old who has been D-deficient for a lifetime will not have his brittle bones suddenly cured by D or Ca suppementation.
And now you need every host to have an atomic clock too.

Maybe CRDTs would be better.
Ahh yes, optimizers with binaries can sometimes be a pain. Plots should be good though: I don't experience issues with it. Every once in awhile GR's download server goes down, so `]build GR` or `]build Plots` can help re-download the binary.
9bn? The universe is 13.8bn years old[1], and our solar system is 4.5[2]...

As to whether our evolution and development constitute progress, that's an interesting question. We are self-aware, which seems to be fairly uncommon among terrestrial organisms (or maybe we're bad at spotting it), and we have made some progress in not killing each other quite as much as we used to (though there are a lot more of us, so that may be a wash), and we're making sort of a mess of the planet lately. But I am at least semi-optimistic about our future.

1: https://en.wikipedia.org/wiki/Age_of_the_universe
2: https://en.wikipedia.org/wiki/Solar_System#Formation_and_evo...
...becoming a prime hacking target.
Is there any evidence that writing code in the demonstrated way produces higher quality? No? None at all!? Then why should I believe it? I might as well embrace healing and homeopathy too...

I'd rather write my code like its written in the Linux kernel. There is no evidence that that style is better either, but at least Linus has provided loads and loads of arguments in favor of it on a mailing list.
I believe `<main>` is not supported in IE11 - here is a resource that you can use to check HTML5 accessibility compatibility: https://www.html5accessibility.com/

The tricky thing about when you're talking about screen readers is that you now have to take into account browser support AND screen reader support, which can sometimes multiply the amount of test cases for things.
A windows 10 license is arguably more valuable than a windows 3.0 disk. Software depreciates with age just the same although for different reasons.
I'd like to see Uncle Bob do a point-by-point critique of this... "piece of work"
> Luckily we use a combination of mass transit and just walking places.

You certainly do not live in Michigan then.
The FAA Airworthiness Directive (2018-23-51) can be found at the address below (pdf). There is no mention of manually disconnecting the AofA sensors. The addition to the Airplane Flight Manual required by the AD explicitly says "do the existing AFM Runaway Stabilizer procedure above, ensuring that the STAB TRIM CUTOUT are set to CUTOUT and stay in the CUTOUT position for the remainder of the flight."

While I don't think pilot training is the only issue, we can't assume a crash was the most probable outcome following from the failure of the AofA indicator in question.

https://rgl.faa.gov/Regulatory_and_Guidance_Library/rgad.nsf...
I knew what car I wanted and had looked around online to figure out what was a great price vs an acceptable one price.

I called three dealerships in my area and confirmed if they still had the vehicles I’d seen in their inventory on their website. They did and wanted me to come down immediately. I gave my email address and asked if we could continue over email. I made clear I wanted to settle in the final out the door price and I would come ready to purchase.

All three sent me promotional material over email. When I inquired about the final out the door price, one ghosted me, and the other two stated I would have to come down because it depends. One of them finally emailed me again with a full quote and OTD price including all taxes.

I went into the dealership where the salesman kept playing a game of going back and forth with me and the sales managers office. You see, he could not offer the original OTD offer, as it did not include some paperwork fees, delivery fees, and one other item, that pushed the cost up by another $1200.

I told him I’d honor the OTD cost he quoted me. So he walks to his manager, comes back, goes back, comes back, with me flat out declining each time.

This went on for an hour until I left. I gave my final price and then just got up to leave. The sales person changed tactics and tried to get me to take another car which had another 10k miles for about $500 less, which I didn’t want.

I then spoke to one other dealer over the phone who called me back within a day with the OTD price for a new Civic. I went to the dealership, but oh no! They just sold that car. They want me to look at an Accord instead. I leave.
Of course, there are certain times like you said when you should 100% add a comment.

There’s nothing worse than going back to a codebase from a year ago and seeing a couple magic numbers and having no clue how they came to be, haha.
I have recently been to Morozov Tenements in Tver, Russia (originally built in 18xx for workers of Morozov textile factory there) and people still live like that to this day.
It's really hard to believe that that can be within a couple of hours travel time from Moscow.
https://nvdaily.ru/info/129950.html
You have to check, recheck, and check again with stealerships and then they purposely take forever to do things to wear you down and the slip B.S. back in to the paperwork, when called on it acting like it was an accident. I hate buying cars.
See my response here[0] on whether living in nature or on a factory farm is more more horrific. The gist is: each breeding pair of animals produces, on average, just two offspring who themselves live to reproduce. The implication is that the vast majority of animals ever born die of predation, starvation, or via exposure to the elements. Nature is a bloodbath.

[0]: https://news.ycombinator.com/item?id=18773106
It's not a direct comparison. I think it's a bit of a stretch. Of course, not having money means you can't afford housing in a good school district, but if you happen to be poor or have bad credit but live in a good district (or borrow a relatives address) you can still put that kid in the district school. Basically, it's not a direct result.
The most obvious difference is my _knowing_ someone with a bad score does not lower my score by loose association.

Kristol is a war hawk, like many of the other conservative in name Neo-Cons. Glad their influence is now on the wane. What China is doing is not good, in many cases, but it's their problem and they can sort them out like they did in '49 and '66-'67.

Somewhat more comparable is the German Schufa system --but it's till not the same.
(Refers to a 1918 grocery print ad in the Perth Amboy Evening News)
> probably a hell of a lot easier to maintain and manage than splitting the logic up among tens or hundreds of files

I'm only halfway through John Ousterhout's book Philosophy of Software Design but I think it agrees with you on this -- that smallness-of-file or smallness-of-function is not a target to shoot for because it prevents the things you build from being deep. That you should strive to build modules which have deep functionality and small interfaces and should contain their complexity within them so the users don't have to know that complexity.
My data flow for phone photos is as follows:

1. capture photo with iPhone

2a. iPhone syncs with iCloud

2b. Now and then, open Dropbox App to upload newest photos to Dropbox

3. Synology NAS pulls photos from Dropbox

4. Synology backups photos to several backup locations using Hyper Backup.

For DSLR photos, I just upload the RAW files to the NAS and it also backups automatically.
FDIC does not insure your account against fraud or "identity" theft, only against the bank's collapse.
Short functions help here.

If every function is just a few lines long, the comments are easier to keep synchronized, and if a function drops out of service, it should eventually be garbage collected with its now-irrelevant comments.
If you're going to be so negligent that you don't care to design your free product in such a way that it doesn't let people's money get stolen so easily, it's better not to release at all.

Complicated security vulnerabilities, I get. It's tough. But just the basic thought to inform someone that a message is not from the Electrum "team" would be nice.

It's unreasonable to expect everyone to read every bit source code of all open (or closed) source software they use.

If I were to use Linux for free, and in this imaginary world all of the sudden I had my banking credentials stolen from a similar lack of care, I think I'd be justifiably upset.

Should the people who lost money be thankful they got to use Electrum in the first place?
If you want to see actual code that flew to the Moon: https://github.com/chrislgarry/Apollo-11
People expect to be phished when opening emails in Gmail, they don't expect to have to distrust native app dialogs.
While I don't disagree with much of what you said, your characterization of schedule 1 generally is factually incorrect. There is still testing of schedule 1 substances; as of 2017 there were more than 590 researchers registered to study schedule 1 substances. Both THC and CBD have been approved for medicinal uses (Marinol and Epidiolex respectively).
'A comment is a failure to express yourself in code. If you fail, then write a comment; but try not to fail.' - https://twitter.com/unclebobmartin/status/870311898545258497...

And a bit more on the same from clean code: http://www.kyleblaney.com/software-blog/2012/6/29/comments-a...
The store is closely curated by Epic, and that - the quality of game selection - was their main pitch for the gamers.

It's still possible that they will exhaust a pool of good games and start listing random junk for $100 like Steam does, but that's not likely to happen that quickly.
I really like the idea of "sound" programming languages. Elm is a great example of a reasonably simple, very sound programming language that force you to handle all cases (short of a compiler bug, hardware failure, or an explicit fail the world statement, it basically cannot throw exceptions).

Unfortunately the odds of this ending up in a mainstream language this decade is pretty low: the extreme focus on terse code and DRY means the average dev balks at the verbosity (thus the coment in the linked piece of code being necessary). It's a shame, as it's objectively superior by many metrics.
The comment:code ratio is similar to some legacy enterprise C/C++ systems I've worked on.

I've been on Rails/React teams where comments were seen seen as a possible smell. Not talking about useless literal comments, just that their need was seen as pointing to possible bad design and that a well factored codebase was self-documenting -- ie. if you had to comment something, perhaps methods/vars were poorly named, SOLID principles were not adhered to, methods needed to be broken out, or it was just a sloppy approach. Even explaining design decisions was considered more in the domain of git messages and having nicely packaged atomic commits.

While I see that aspect of it, there's no getting around the constraints of the real world and that some problems are just difficult and much easier to grok with a user guide in plain english, so to speak. And mission critical stuff needs as many safeguards as possible.

That said, inaccurate comments can be dangerous and when your code is highly commented there is real danger things can get out of sync. If you're working on a 5000 line file that 100 developers have touched over a 20 year period... and no one has taken it upon themselves to do a recent comment audit, there be dragons.
Go uses tabs instead of spaces and Github displays them as 8 character width. It can get annoying and there are several extensions to change this behavior. Tab Size on Github [1] is the one I personally use.

[1] https://github.com/sindresorhus/tab-size-on-github
So you need good clocks (and timesync) and good entropy. Especially for the lexicographic sorting part, you'll need really good clocks. That's fine, if you can get them. But it's not enough, since you get no origin ID, 1ms is a very long time, and you can't sort events occurring in the same ms.
I found the same thing. Everyone wanted you to come in so they could play their games. Still not that bad if you’re just making a cash on the barrel purchase but I did have to visit dealers.
Yep. That's corruption.
WHY JAPAN IS a RARE HOLDOUT IN ASIA’S CASH-FREE FUTURE
The world needs clever people to work together to strive to create break-through solutions to big problems. The thing is, people don't do that unless they have some sort of Quixotic Challenge to bring them together.

Many, many things that we now take for granted have come directly or indirectly from Grand Challenges, and human nature is such that without Grand Challenges, clever people will keep their heads down and find better ways to layout pixels on screens, and darker ways to get people to click on ads.

Humankind needs these impossible, visionary efforts to pull itself forwards. The money isn't wasted - it gets spent on allowing people to do amazing things and to create technologies, many of which will only come into their own in the future.
Yeah, I totally agree with this. Staying as semantic as possible is the best way to go. With some very judicial use of ARIA I think you can improve the experience a little.
You might want to take a look at the reMarkable tablet [1].

Apparently it's quite hacker-friendly/open.

[1] https://remarkable.com/
Now Rust on the other hand ... (runs away).

In all seriousness though, Rust does get a little closer - it requires exhaustive matching (or explicit opt out) and deliberate error handling (or explicit opt out). There are still ways around it, but the happy path in Rust is handling errors.... well, maybe not happy. It is a little verbose.
I know a business coach who regularly asks his audience "Who here makes better burgers than McDonalds?". When half the audience raises their hand, he asks them why they don't outsell this giant company.

Functional programming advocats, especially for the "pure" ones like Haskell, always strike me as odd. It seems that all the beauty of those languages make people obsess over that beauty and purity while keeping them from being productive.

Meanwhile, people with simpler languages like Go just get stuff done that is useful and makes people happy. Now if I _ever_ came across a useful Haskell product, I'd be happy to test drive it, shouldn't be a problem by now with all the container technology. But the closest I ever came to using a functionally developed product was RabbitMQ (written in Erlang). That one was _such_ a pain to use and operate — must have been the developers still dreaming in the purity of its code instead of writing some installation docs. I moved on to Kafka later and didn't regret it a minute.

Rant off.
Bill Forsyth (who went on to make Local Hero) did a nice wee comedy set in Glasgow in the 1970s - That Sinking Feeling:

https://en.wikipedia.org/wiki/That_Sinking_Feeling
Not parent, but we also had several bad experiences test driving cars in the bay area. One common theme was that reps didn't want to let us see more than one vehicle. This happened at both the Toyota dealership in Palo Alto and the Hyundai dealership in Burlingame.

We shouldn't have been flagged as non-serious buyers because we have plenty of money to buy the cars we were looking at, live in an expensive town, and we weren't looking at fun-to-drive cars. We were about to have our first child and were going to buy a family car. And we drove onto the lot in a new car that we'd just purchased!

Nonetheless, the reps only wanted us to see one vehicle. Only after insisting did they let us see a second vehicle (and at the Hyundai dealership we were literally shown this one by the janitor, not a sales rep).

We were so turned off by the whole experience that we ended up buying our subsequent vehicles used from individuals. I'm sure I'll buy a new car again someday, but I don't look forward to the process.
Information-security can be oversimplified as one big "holy grail" problem unto itself - and when someone presents some software and proclaims it is "the" solution to that problem, but in fact has presented only a partial solution, then we call it "security theatre" and denounce it with extreme prejudice.

I believe the comment you replied to, may be making an analogous argument here about distributed systems.
Guidelines != Rules. This a direct quote, so I'd think it'd be disingenuous to lowercase it. Probably good that guidelines aren't rules, even though people confuse them more than I'd like.

edit: After I posted this I saw the title was lowercased and dumbed down. Unfortunate that the term 'guideline' has been misapplied again, making things worse, but at least there's some irony to get a chuckle at given the article's subject matter.
Do you think the person you replied to would really think their world view is based off the two paths you've listed? Also deferring to a video game for philosophical discussion....
And access to health care is strongly linked with employment.
this is how I wish all code looked.
I use NetBeans for PHP development for last 10 years, and never regretted it. It has plenty of features that save my time when it comes to code navigation, also since circa 2012 Java got considerably faster on Linux, so almost no lag is perceived. It's great news that Apache finally added PHP support back to it because I'm still on 8.2. As for other IDEs, sometimes I use Kate with Projects plugin (it allows to grep all filenames that are in version control) for quick edits. All KFramework-based tools feel much faster than Gnome or Java-based ones, but Kate has a set of show-stopper "not-a-bug" issues (like shitty tab handling) which make it inusable for uninterrupted, productive work.

P.S. Can't say much about Apache, but when I submitted a ticket to old NetBeans about high CPU usage in some version-control-related scenarios - that was back in 2013 - the ticket was closed and issue was fixed less than in a week. I never expected such agility from projects of this scale.
I'm not sure there are many cases where there should be long amounts of expressive code.

If you're doing something obvious, you should generally be able to program it concisely, in which case you have a high comment-to-code ratio because the amount of code is low. Sometimes this will be because you're importing an external library to do something, or because you're calling out to an internal library. Sometimes this will be because you found a straightforward implementation. If you're finding yourself writing hundreds of lines of code to do a single obvious task then chances are high you're implementing it poorly (and, specifically, in a way where your defect rate is likely proportional to the number of lines of code).

And if you're doing several obvious things, then the point of the code is not to explain what the code is doing, but why it's doing that. What is the business purpose of the code? Which customer cares about this edge case that you're handling, and under what circumstances can you stop handling it? Why did you decide that the common library wouldn't actually work here? If you're converting data from an awful legacy format, why are your ingesters / parsers for the legacy format designed in this way? If you're micro-optimizing for performance, why are the optimizations sound (i.e., why do they accomplish the same thing as the unoptimized version), how do they work, and why did you decide these spots need to be optimized? Each individual thing you do might be obvious on its own, but the arrangement of the whole thing needs comments for each step, which again gives you a high comment-to-code ratio.
does Haku have one of the popular web browsers ported to it (eg firefox or a webkit-based one)?

I searched but could not see it.

A desktop-oriented OS, should have, I assume, a browser that can work with the majority of the high-traffic commerce websites (eg ebay, amazon, etc).
It is rare to find code that comprehensively explains (without comments) why it exists, or often more importantly, why some superficially-equivalent code doesn’t exist there.

Comments when done correctly are vital.
I may be going on a limb here, but I have a sense of the same broken logic here as the ubiquitous argument of lost revenue[1].

To be clear, I don't argue the point of suppression and cultural standards affecting the scientific (or, not specifically, any other) thought, but using such simplistic way to quantify that effect.

[1] https://en.wikipedia.org/wiki/Lost_sales
Probably normal if it's not UHT milk. Also, depending on the time it takes to get it from the shelf in store and take it home (ideally < 2 hours, or < 1 hr on a hot day), it can spoil sooner.
How do you successfully express "We need to treat all transactions on February 29 as happening on February 28, see customer ticket #4321 for rationale" in code?
Bait & switch and fake feeling of emergency are the most common I've seen.

"Hurry, if you don't close the sale now on this vehicle it won't be there tomorrow."

...

"Oh, the vehicle you called for? Sorry we just sold the last, we only have the model with X and Y options right now. We could order the one you wanted but it won't be there until next month. Don't worry, I'll make you a deal, it will only cost you [original price * 1.5] and you will have all of those fancy useless options right now! We are friends here, you are lucky I don't offer that deal to just anybody."

That and trying to have you believe that paying cash for a used car will hurt you.

"Oh, you have $7k in your pockets for that used car we have on the lot? Keep your money! We offer such a low interest rate. Use that money for something you truly care about and leave with the car anyway! No, really... I would feel bad to take this money from you. Here, sign this and the car is yours." ... Loses all semblance of false friendship ... "Oh, you really want to pay cash? Alright. Let me call my supervisor and he will close the deal for you."