skysight-inc/HackerNews huggingface dataset:
A good discussion of pros and cons of consolidation should be included. E.g. economies of scale are almost always more energy / environmentally friendly (efficient).

Lack of diversity, bad. Increased monopoly power, bad. Increased consolidation for following regulations, good.
Please sell me an alternative to gmail and gcalendar and docs.
It really doesn't. I can support diversity while also not being impressed by corporate PR. I'm not sure how they are actually related at all?
For most people, "climate" lawyer is synonymous with "pollution" lawyer.
> Firefox is the leading browser right now. Chrome isn't even close...

Source? Based on which criteria? If you have even the slightest belief in the wisdom of the crowds, you'll realize that there must be something really appealing in Chrome which has resulted in its 68% market share. Compare that to Firefox's 7%.[0]

[0]: https://netmarketshare.com/browser-market-share.aspx
People who can't recognize products on a shelf often can't use a touchscreen either. I live with a Boomer and he can't even use a Chromecast because he can't see his screen, let alone use screen readers or voice commands.
why is it being compared to pandas ? is it a data analysis library?
whoah! I didn't mean this to turn into a Brexit, get rid of the immigrants thing!
Less code is (in general, to certain limits) easier to understand and requires less maintenance.
I'm not arguing they did a great job, but Russia, China, Vietnam certainly tried - land reform is a good example.

Of course, the most "loyal" communists got the best land...
Using Ruby expertise to facilitate a fast media portal launch
It's not about finding the vaccine, or virus actually going away. Simply, by Jan 2021 people will be so sick and tired of hearing about COVID that they will say "fuck it" and carry on with their lives as usual. Me personally I'm close to that point already.
Indeed: https://github.com/qntm/fastjson
> I don’t have to care about how the underlying libraries work. I can treat them as a black box.

When I wrote haskell, the majority of the libraries did just work, and I didn't have to dig into their code to find bugs often.

When I wrote javascript, hundreds of the libraries I used did not just work. I usually had to care very much about their details because they were poorly implemented, full of bugs and incorrect abstractions, and often abandoned soon after.

I agree that there's benefits in reusing some well-socialized and well-implemented generic frameworks and abstractions.
It's not worth using generic abstractions that are not well understood, buggy, and don't match your needs closely. In that case, write your own.

More generic is not always better. Above, I'm arguing that it's important for code to be easier to reason about. If a generic abstraction helps with that, cool, but it's not always going to be the case.
9/11 will never happen again because the idea of a plane hijacking for ransom no longer exists in passengers' minds. If someone hijacks a plane now, the passengers assume the hijackers have suicidal intent and will curb stomp the hijackers to death or die trying. So in that regard I think TSA confiscating scissors and pen knives is just silly. A simple metal detector is sufficient for finding large weapons like guns.

On the other hand, terrorists' only option now is to just destroy the plane and kill all the passengers onboard. Cabin doors are locked, so this involves blowing up a bomb concealed somewhere (checked luggage, shoes, liquid explosives, etc). How do you propose we detect whether someone is trying to smuggle a bomb on a plane without something like the TSA? Just keep an eye out for nervous passengers and report them?

In other words, if we abolish the TSA tomorrow and replace it with metal detectors, what's to stop someone from bringing a few gallons of chemical explosives in their backpack, mixing them in the lavatory, and blowing up the plane? TSA has always caught when I accidentally left a full water bottle in my backpack.
You can also get the check mentioned in the article where they call somewhere and try to identify you with silly questions culled from public and private databases, not unlike some id checks you get from online banks. This can take forever as you're literally playing telephone.
In my 12 year professional career and 10 years of programming before that, I can't count how many times I thought something was an afternoon of programming and I was terribly terribly wrong.

Generally good advice to be conscious about taking dependencies, but it's also worth sanity checking that something is really "an afternoon of programming."
An autocrat himself is not rigging things, he assigns tasks to various people and holds them to account. For them it's safer to err on the side of caution, and for him it's better to reward the over-achievers than to be seen cutting slack to the under-achievers.
Nerd and power-user evangelists are the only reason FF ever had any market share to begin with. We installed it on everyone's computer we had access to. We did this because even non-nerds could tell it was better than the OS' default browser, out of the box.

Non-nerds can no longer tell it's better, so I stopped doing that. No longer worth the effort, might even end up adding to my friends-and-family tech support burden rather than reducing it. I still use it myself anywhere Safari's not available, but yeah, it's a power-user-only product now.

Chrome only did better with regular users because 1) it was OS-bundled, and 2) they could shove "try Chrome!" banners at the top of every Google property. I don't think the product itself is significantly more focused on normal users. Google's just got a way, way better platform for promotion. They can snap their fingers and get a million installs of something in a day, if they really want to. But fact is FF doesn't have that. What they did have was power users doing all their marketing for them. Not so much, these days.
> If you think that is a reason to abandon Mozilla

I have made no statement about abandoning or not abandoning Mozilla for corporate doublespeak. You're the second Mozilla employee that is putting words in my mouth in this thread. I think that is suggestive of what Mozilla has become.
Coordinate-based HTML/CSS implementation is too inconsistent across implementations and versions to be relied upon, especially with regard to fonts.

What are some good WYSIWYG vector standards, including the font department? It could be useful for a GUI markup standard also so that we can have platform-neutral GUI's and GUI's over HTTP.

The server side may still have a dynamic/flow layout engine, but calculated coordinates are sent to the client, keeping the client simpler and more predictable.
> literally anything you could ever want to use

...so but how's the quality of npm ecoshitstem? last time I heard you guys had some trouble in paradise, plus everything noteworthy is owned by either facebook or google, both having huge antitrust issues lately
Have you ever contacted an elected representative with your concerns that Google is a monopoly and that laws should be either enforced against them or re-written to abate that, in addition to changing your own behavior?

If not, why? What would make you do so?
Sample rates and when they matter
You're basically just regurgitating a recent Rich Hickey talk. Interested readers can probably find it on YouTube.

Rich is certainly a brighter individual than me, but some of his points are either him missing the point or being intentionally misleading.

For example, he discusses how Either types aren't true sum types because Either<A, B> isn't the same type as Either<B, A>. So he disparages people who say that Rust/Scala/Whatever have sum types. He's missing the point because 1) All Either implementations I've seen have the ability to swap the arguments to match another Either with the types backwards, so it's a sum type in practice, and 2) Clojure has none of it, so why criticize the typed languages by saying their type systems aren't perfect when your language's type system isn't helpful at all? Throw the baby out with the bath water?

To your specific point (which is also one of Hickey's), yes, it does kind of stink that loosening a requirement forces consumers to update their code. However, that minor downside does not mean that Optional is "not an improvement". It's still a HUGE improvement over Java's absurd handling of null (IIRC, Clojure is the same as Java there).

Also, maybe changing something to optional isn't really "loosening" the requirements. It's just changing the requirement. If the parameter changed to optional, don't you want to be alerted to that? Why is it optional now? What will it do if I pass None/null? Maybe I actually would prefer that to the way I called the old version.

It just never struck me as offensive to have to change my code when I upgrade a dependency. I have trouble sympathizing with that mindset.

Edit: And what is the Clojure alternative? You can loosen requirements, but really, you never had enforceable requirements anyway. Is it apples to apples to talk about a typed language loosening its contract?
Plus cross-platform video chat and nice (large) multimedia attachments.
I subscribe to Pocket Premium to support Firefox development because I think it's critical for it to continue existing, but I use Chrome as my daily driver because it's almost 2x faster on my Mac.

I give FF a try every few months and will happily switch if they ever manage to get it to having comparable performance to Chrome or Safari on my architecture.
>So much so that the only people on the job market who had it were these folks whom they were ousting. All of whom had found positions at competitors within a day or two.

If they were the only people anywhere who had the critical domain expertise, then how could there be any competitors to snap them up?

This story doesn't sound internally consistent to me.
I think when all this has run its course that the only thing that will remain will be Rust. So maybe that was worth it.
I agree.

> Of course, you might say, inevitably feature-creep will expand the list of things your parser needs to parse

If you've done your parser correctly, you'll be able to replace its implementation with the new dependency, with little to no need for extra refactoring in the rest of the codebase.
core business = C

outsource = O

Object = x

x ∉ C ↔ O(x)

If the symbols don't show up:

if-and-only-if x is not in C, O(x)
Poor ergonomics: I loosened a requirement. Nobody should have to change their code. Kotlin does this right.
It's a tough spot to be in, for sure.

Firefox used to have two major advantages, at least for me as a user rather than a developer: customisability and the respect for privacy. The former went under a bus with Quantum and has never recovered. The latter is still there, but the single biggest hole in it is the use of Google for search, so that's probably the first thing that many privacy-sensitive users are going to change.

I do still use Firefox as my primary browser, despite having reconsidered several times in recent years. However, as a dev I have all the others readily to hand, and I do find myself forced to use others because pages simply don't work in Firefox with noticeable frequency now. From the opposite angle, I also can't remember the last time a client specified Firefox compatibility for a new project. It's usually Chrome, iOS Safari if mobile is relevant, and maybe Edge in corporate settings now.

Unfortunately the vicious cycle of market share and compatibility has been established, and while I think we'll all end up worse off for it, I'm not sure there's much anyone can do about it at this point, at least not as long as most of the actual functionality in Firefox is (unsurprisingly) so similar to other browsers.
Tesla (TSLA) Announces a 5-for-1 Stock Split
Yeah benchmarks can be much more difficult to get right than it might seem at first glance. Good thing they didn't try to write their own benchmarking code, otherwise they might have fallen into those traps you just mentioned.

Luckily, they didn't, and instead pulled in the the `benchmark` library as a development dependency[1]. The author of said library works on V8, and already considered all those problems and much, much, more[2].

[1]: https://github.com/left-pad/left-pad/blob/master/perf/perf.j...

[2]: https://mathiasbynens.be/notes/javascript-benchmarking
Most of Ruby's life has been dedicated to web development.

The original use-case at birth of a language matters less, as programming languages are living things that evolve and mature, sometimes morphing into very different things than they were at the beginning.

Likewise Rust's current lifespan has almost entirely been dedicated to taking on C/C++ and their use-cases in systems programming and server applications. That's all that really matters here.
> E.g. economies of scale are almost always more energy / environmentally friendly (efficient).

This is just an argument for communism, and that does not work so well. Planning all the economy in a centralized way, private or public, is a bad idea.

Capitalism is build in the idea of many producers trying to get to many consumers. When you only have one or a few producers it stops being capitalism.
> As for mobile

What if they could co-operate with Librem 1,2,3,4,5... from Purism, and PinePhone, and FairPhone, etc

— there're they might find people who would be happy for Firefox on mobile? And Rust and high performance could be nice with a phone like PinePhone

Maybe people would be ok to pay some $ per year for FF on mobile, if they believe/know it won't track everything they read.
That would be a better jobs program. You’d employ the various purveyors of dog care products, vets and other services, some of which benefit society in a more meaningful way than a rent a cop.
I have used a Bialetti for the last twenty years and will not use anything else to make coffee. Forms meets function meets flavor.
The bike I ride depends on the day and why I’m riding. I’ve collected a few bikes over the years.

I have an old steel cross bike transformed into a grocery getter that’s outfitted with wide slick tires, a rear rack, and pannier bags that I use when I need to haul stuff around. I have a gravel bike with disc brakes, wide knobby tires, and a slightly more relaxed geometry for riding/exploring on gravel/dirt or rougher paved roads. I have a carbon “race” bike with deep section wheels and a pretty aggressive geometry for going fast on paved roads.

I sometimes get close to the “zen” feeling that I got when running ultra distances but it goes away pretty quickly when I’m doing anything but going in a straight line on flat roads with no traffic. As you can imagine this doesn’t happen often. Contrast that with trail running (most of what I did for ultras) where I was just rambling along in nature. It was much easier to look inward when running on the trails.
I merely a beginner and learn the language on the side.

Things that come to mind are (incomplete list):

- From trait

- derive

- traits you can implement to convert a data structure into a iterator

- Deref, Drop traits, MutexGuard

These things appear magical at first but make for very expressive abstractions.

In regards to web-dev: a framework that makes heavy use of traits and macros is Rocket.

As for material: when I’m learning I typically have The Book, Rust by Example and some tabs of the standard library open. Then just go by curiosity. Perhaps not the best approach?
I guess I'm missing something. Isn't that the whole point of the foundation? To give away its money in ways they find most impactful? They don't tells us how to distribute our charity dollars. It seems silly for us to tell them how to distribute theirs.
New Facebook homepage is not properly responsive [via Twitter]
Career and Resume Advice: Student Edition
I've worked in advertising and ad-click networks for over 9 years, and it's funny to read "Banned by Google"... Google supported the most scummiest of advertising/ tracking tactics themselves, that is until someone else started doing it.
Twitter rolling out reply-limiting feature to all users
Good. That will at least make sure that something good will come of all this.
Yeah that's not good design. Lowering a requirement should not make callers complying to a stricter one have to change anything. But, ohhh.. right only the type changed. so everybody stop what you're doing and start over.
There are definitely people like you are describing, but it's unfair to lump everyone who critisizes Mozilla, DDG, or any other privacy-focused company in with that crowd.

I will happily critisize Mozilla, DDG, etc when they come up short, but I will also happily celebrate their successes and continue to use and recommend their products as long as they don't stray too far. I want them to aim for perfection, but I completely recognize they will fall short.

There is a huge difference between critisism and condemnation.
I wish there was a term for these kinds of customers. "Cyber Karens", maybe?
There are no good alternatives in Typescript. Nobody claimed that there are no other languages with enums.
Which Drive book are you talking about? who's the author? Those books you mentioned seems interesting, I'll check out. If you have more on topic that you think are also worth recommend, please let me know.
This is part of the product. They are trying to do the impossible, embrace all customer configurations, and failing badly when it comes to the support.
There are a total of four detected cases, with no known ties to any obvious potential source of infection like overseas travel, border enforcement, isolation facilities or anything like that, after 102 days without any. Covid-19 cases don't just spontaneously generate - they had to catch it from someone. Which implies there is some unknown number of undetected infections out there spreading for an as-yet-undetermined amount of time during the 102-day period where no cases were detected. This is not a good sign and definitely calls into question the self-congratulation. I suspect their PM knows this.

(I've also heard claims that their testing numbers were quite low during the period when zero cases were reported. Didn't get any mainstream media coverage, but stuff which doesn't fit the narrative generally doesn't.)
Facial recognition use by South Wales Police ruled unlawful
I've seen so many errors around orderby/limit. which most people want at the end, but linq lets them define it, everywhere. (for a good reason) but this is probably the biggest problem with linq, it's a chain of operators that are ORDER dependant!!
It's pandering to identity politics. Biden explicitly said he was picking a female candidate. With the riots, picking a black female is a natural(but risky) extension.
Thoughts about Formality
Animal Farms: A porcine history of East Germany’s rise and fall
Article 18.1 or the ITU Radio Regulations (a binding treaty) states that

> No transmitting station may be established or operated by a private person or
by any enterprise without a licence issued in an appropriate form and in conformity with the provisions of these Regulations by or on behalf of the government of the country to which the station in question is subject (however, see Nos. 18.2, 18.8 and 18.11).

SpaceX cannot help establish, or help operate, these ground stations. Technically could they sell them in another country? Maybe, I don't think the ITU would accept that considering that have to have control over the software for routing purposes, and that they know exactly where the ground station is because of beam forming.

The Outer Space Treaty article 3 also states that

> States Parties to the Treaty shall carry on activities in the exploration and use of outer space, including the moon and other celestial bodies, in accordance with international law, including the Charter of the United Nations, in the interest of maintaining international peace and security and promoting international co- operation and understanding.

(Later incorporated against private entities in a different article).

It would not be much of a stretch to consider this a violation of this article as well.

It is slightly less clear cut than I remember though.
> Sadly, the changes also include a significant reduction in our workforce by approximately 250 people. These are individuals of exceptional professional and personal caliber who have made outstanding contributions to who we are today. To each of them, I extend my heartfelt thanks and deepest regrets that we have come to this point.

From TFA.
I strongly disagree, but this is why it's great we have a ton of languages! To me, forcing you to handle it is the exact point of an option type.

The type wasn't the only thing that changed, the possible values have changed. You may be getting more values than you were previously. This means that some of your assumptions may be incorrect. Of course your code needs to change.
https://twitter.com/dherman76/status/433320156496789504 exemplifies how Mozilla employs "corporate doublespeak" to compromise its core values:

> Excited to share the launch of @mozilla @firefox Tiles program, the first of our user-enhancing programs

To call advertisements "user-enhancing" is an affront and betrays values like privacy that Mozilla claims to espouse. There's no reason to believe, after missteps like embedding cliqz tracking or using update channels to push booking.com ads, Mozilla actually appreciates those values. At that point, it's no better on a privacy front than Chrome.

https://www.reddit.com/r/privacytoolsIO/comments/aax1r5/fire...
... and the installer would download very quickly on your mom's dial-up, unlike the full Mozilla Suite which was huge, and it was much lighter-weight, better-performing, and had better default features for people who didn't need all of Mozilla Suite, so you could install it on there so she'd stop getting 500 pop-unders and then ending up with a virus and ten "browser bars" you had to fix.

Otherwise, yes, you've nailed it.
I remember reading a study about the mental energy reserve that you speak of, or concentration, proving we have a limited amount, but the people who were informed of this fact were giving up sooner than those who didn't.
Authority is not equal to power.

Classic management theory is that their are three levers of power in an organization - relationship, expert, and role in that order.

No one is going to go the extra mile for a leader they don’t like or one they think is an idiot. Role power is the least effective.

I’ve left plenty of jobs because of a reorganization put me under a lead/manager that I didn’t like or respect or I thought they were an idiot.

Even if you don’t leave a company because they lean on their role power too much, people will “work to rule”.

I’ve had a lot more influence working at small companies by building relationships and demonstrating expertise.
I heard it from Jonathan Haidt.

Tweet: https://twitter.com/jonhaidt/status/1083018993991077888?lang...
Study: https://jamanetwork.com/journals/jama/fullarticle/2664031
John Carmack (https://twitter.com/ID_AA_Carmack/status/1293227109738061826):

> Just last night I was thinking about how it was possible that, given the relative trends, Mozilla’s greater legacy might turn out to be Rust, not Firefox.
HSTS Preload can mitigate the first visit requirement for enforcing TLS connections.

https://hstspreload.org/
Agreed. One has to learn to be realistic, and account for time spent thinking, debugging and testing when coding from scratch. left-pad is an afternoon project. SQLite connector may be a week project. Full JSON parser? Let's book a month to be safe.