skysight-inc/HackerNews huggingface dataset:
This is hardly a new argument. I personally remember Mac users complaining about the Microsoft Word/Mac 4 -> 5 transition back in the early 90s, when big gray pseudo-3D button bars invaded.

And you're right, Mac users are mainly the only ones to complain. That's because we do have a fairly consistent, unified experience and like it that way.

Which is why I don't use apps that don't play nice on the Mac. If I wanted inconsistent, I'd use another platform. Developers have to make their own choices, of course.

> but not because they are not "native".

This is incorrect, and contradicted by your next paragraph. On my work machine, I use two non-native apps because I have to (Chrome is installed but only used for troubleshooting Chrome-specific issues). My home mac has zero.

Adobe left a market gap for a few independent shops to step into on the graphics side, MS on the office app side. Here's hoping more do elsewhere. I like indies.
Disclaimer: virtual dom library author here

One does not simply "compile to the standard DOM" to get performance gains. A virtual dom is a binding abstraction, meaning it provides a "declarative" interface and then figures out at runtime what values have changed. This costs allocating memory for a virtual dom representation of the view. If you want to compile away the virtual DOM, then the compiler has to be aware of how data changes propagate through your model. Svelte, for example does this by tracking assignments in a flat component file, but since it doesn't introspect very deeply, if you put something like redux on top of it (or even if you simply assign a deep data structure), you're going to get a relatively inefficient redraw load (this is essentially the dirty-checking problem from angular 1). Yes, a compiler could in theory be smart about it, but it then needs to be deeply aware of the runtime semantics of the language to mount the reactive model on top of it, and this is far more complex than what you can do w/ just babel-style parsing.

I'm not aware of any js compiler today that is able do the level of language introspection required to be the elusive "sufficiently smart compiler"[1].

[1] https://wiki.c2.com/?SufficientlySmartCompiler
While it’s true that American hospitals do tend to have a lot of spare equipment and real estate, you’re exactly right that the reason is profit motive, _not_ providing healthcare. Real estate investments speak for themselves, while equipment upgrades are cooperative with regulation procedures that favor scarcity, often for the sake of profit.

Also, the American health industry does not have the labor force to facilitate a pandemic. The American Medical Association has kept it this way for a reason. The whole industry depends on scarcity. Nurses are one exception where low pay is favored. They are the peon workers of the industry but, because nurses are paid so little, there is a very limited amount of them as well.
The implementation of stdlib necessarily contains code which invokes implementation defined behavior, and the reason that the compiler implementation doesn't treat it in like manner is simply that it doesn't identify it as such or is prevented from doing so. So the treatment of libraries doesn't need to be consistent with that of user programs. Practices that ensure that such code is not optimized away include scattering the information needed to do so across multiple translation units, so that the compiler does not put them together.
Yeah. Everything was so much better back in the 90s........
DOM operations in this context is single threaded and definitely not deeply pipelined cached friendly code. I benchmark web code using cycles and instructions and I'm finding in practice that we're averaging in the order of 0.5-2 IPC in chrome for the web render process's main thread when running real world code. 152 IPC would be amazing!
5 times in the last 2 decades the world would end if rich people did not get free money.

Bailouts are on their way. An hour before payout, permaban everyone without explanation.
> hand a lot of money over to the top income earners

They just got their loan interest rates reduced. All with a nice excuse to cover for it.
Wait, so is it joining Microsoft? Or is it under Github, which is under Microsoft?

I don't fully understand the way it's governed from this article.
I occasionally forget that Microsoft bought GitHub. They certainly don't do anything here to remind me of that fact.

How separate from MS has GitHub been in day-to-day operations?
That’s not how it works. Limited liability is the foundation of modern capitalism. Without that, the world would be very different and a lot worse.
great answer. thanks for sharing!
An additional thing we've come up with today is purchasing future services for businesses we'll be using. Getting some cash flow to businesses who might be struggling over the next few months might help them stay afloat.

We're prioritizing by critical services we interact with first, and then going down the list.
Teachable acquired by Brazil-based Hotmart
VsCode, Typescript, Github, NPM.

And Microsoft doesn't even have to maintain the main runtime, Google does.
What a clever strategy!
It may not be the right thing to do, but it's going to happen anyway because the headlamp issue is out of control and not likely to get any better.
It's on there already. https://github.com/npm/ and https://github.com/npm/cli
Agreed - and note that this principle is in tension with the junior/intermediate (heck, even senior) urge to make things "easy to change" by just making everything abstract and configurable. ("See, now if we want to do it this other way in the future, we only have to flip this bit!")

I still haven't found a pithy way to describe the limitations of this principle. Obviously, frameworks are helpful and also fail this principle, so even this principle has exceptions. But are you going to be so arrogant to believe your abstract extensible change will be adopted by all your fellow teammates in the future?
This kind of consolidation is probably not good for everyone who depends on open source projects. Microsoft now owns a significant portion of software distribution.
Note that you won't get this feature at the free tier for non-EC2 instances.
Another SFU is https://github.com/pion/ion

Someone also built a CLI based conferencing solution https://github.com/dialup-inc/ascii :) stop wasting all those resources on X11!
Airlines couldn’t possibly prepare for this situation. It’s a black swan event which has no precedence. We are talking about more or less complete shut down of passenger flights, going from a time of prosperity and ever increasing demand which require fleet and personnel investment, into a complete halt of the industry (save for cargo).

This is like asking Google to prepare for operation of their datacenters for three months without electricity. It’s so unthinkable in a modern society that you simply can’t plan and set aside resources for that.
The penalties will also accrue even to people who aren't customers of the company. It may be harder to see when that occurs.

Google's speech model, for example, was bootstrapped on the audio collected from GOOG-411. Is the GDPR intended to prevent things like that? Then it's "intended" to hinder development of practical speech models the likes of which hadn't been seen from decades of research that lacked access to hundreds of hours of input from users asking real questions in real environments.
The current crash is 100% because of corona, not sure what proof you need?
try to anticipate where the code may have to change, and with what frequency. For example how likely is it that a modification to handle new file specification will be required, or how often would you have to integrate new authentication methods. how often would you need to give things a facelift to keep up with marketing trends.
My understanding was that it's a proposal to help people who'll be devastated by not being allowed to work. If we're trying to get people to stay home on a voluntary basis, yeah, I agree it won't help much there.
Thanks for linking to that graph. That's a great resource!

At 3 days that changes both how much we have to slow it down, and how quickly we need to start slowing it down.

Not to mention that if it's 15 days from infection to diagnosis then that's 5 doubling times. So by the time we realize we didn't do enough it's way too late to avoid a complete catastrophe.
Perhaps I am wrong but I get the feeling the 2020 stock market crash isn't over.
Part of GitHub (I work at GitHub and lead the Packages team)
Oculus Quest hasn’t even been on the market for a year yet, so give it some time. Also, the Quest is a bit more closed than other platforms, it isn’t clear how they will handle custom VR experiences yet.
Yeah, that would be my recommendation. Make a supply of parts that can take the autoclave and keep them around for emergencies. If you had to use them because you messed up the supply chain (didn't order enough), big fine. If you ordered but the supplier couldn't deliver, no fine.
Beyond having good testing, don't try to write it to be easy to change, write it to be good code.

You should try to express problems elegantly, and that will help make some changes easy. That's nice when that happens, and it does happen quite a bit. But many changes will still not be straightforward.

Generally, write the code to do what it's meant to do, and when it needs to change, rip it out and rewrite it.

It's shockingly easy to write something that's concrete and later realize "I need two of these" and then quickly factor out the common functionality.

Especially, don't kludge things. The problem with "easy to change" is it means "easy to kludge just one more feature on here." That won't remain easy to change. Refactor aggressively and your code still won't be easy to change, but it won't become a kludgey mess that's hard to change, either.
Let's assume they're just trying to get Google to follow the GDPR. How would the report look different, compared to 'wanting to hurt google'?
The no was for both and the premise of watching a fictional movie then applying that knowledge to an actual pandemic.
Optimise code for Deletion.

If it's easy to delete, then it's easy to replace.

And if it is easy to delete then it should be naturally loosely coupled.
Too many people make the mistake of assuming that a robot should solve the problem the same way that humans do.

You have to into the account the respective strengths and weaknesses of humans and robots.

I can easily best a robot at sensing the layout of my living room, but a robot can easily best me at perseverance.
There’s no way that ecigs are as harmful as cigs, so you might be waiting a long time.
Google will not pull out of Europe. As long as it can make a profit in Europe it will stay. There is a demand for many of the services it offers and it is well positioned to sell them, regardless of GDPR.
This is why we shouldn't suspend building codes to quickly build hospitals: https://www.cnn.com/2020/03/07/china/china-coronavirus-hotel...

Maybe other than increasing bed capacity, we should do a better job of teaching people how to reduce the chances of getting complications from things like the flu and giving them the resources and support to do so, this way we can reduce the need for hospital beds. I'm talking about the importance of bed rest, fluids, etc. and paid sick leave and access to video healthcare consultations. It is amazing to me how many people are out and about while ill.

In terms of increasing hospital beds- we can reuse some of the hotels that have temporarily shut for business, but more beds don't mean that we'll have enough health workers available to support the people in these beds. This brings us back to "reduce complications and don't fill the beds."
If Americans fail to elect Bernie Sanders, it will be hard to feel sorry for them, but I will do so. America is a very twisted society.
Is this a too big to fail kind of charity acquisition?
>I don't think Github is an evil organization.

its...getting there. There are good arguments to suggest new Microsoft is the same as old Microsoft and this might be one of them. Github frantically clawing for control of developers, while blindly enforcing things like ITAR are a classic Microsoft case of directionless middle management vying for government rent-seeking and free market capital at the same time.

Either MS fixes this quick, or FLOSS projects will rightly start hosting things elsewhere. free software is free as in speech, and in most cases this crap is interpreted as outright censorship.
The answer to your question is essentially the entire field of software architecture and to some degree even software engineering itself.

Thus there aren't many simple always-applicable tips. Every tip requires experience to know when you apply it. Any tip that doesn't require that experience ends up not accomplishing much.

Keeping things simple is good. But sometimes you do need some abstractions, scaffolding, and structure that sacrifices simplicity but enables the code to grow.

Tests are good. But sometimes code can be so heavily tested that changing the tests themselves is a large maintainence burden when the requirements change.

Abstraction and encapsulation are good. But both add complexity and raise the amount of code someone has to load into their head to understand what's actually happening.

Documentation is good. But writing good docs itself an artform, and docs that aren't maintained well can cause more harm than good.

The best advice I can give is to not seek out "tips". Just work with the best engineers you can find, write code, reflect on it, and trust that your experience and intuition will grow over time. There is no shortcut to mastery.
I disagree.

A company cannot regulate prices in France, USA or French.
A French company may regulate prices in the USA if the law allows it.

The provenance of a company has nothing to do about the market regulation of the buyer country of residence.

This is not a French ideology, this is a French law that is only applicable in France territory.
EU to Ban Entry to 26 Schengen Area Countries
It'll be the same thing after 2008. Some piddling reforms that do nothing to solve the enormous political and economic threat that our bloated financial system poses.
I understand some folks trepidation but where was npm going anyway?
This seems like a good outcome overall. NPM being such an important pillar in the software supply chain while having an unviable business model and largely being funded by VC money was never a good position to be in. There are problems with more of the software ecosystem consolidating with a single entity but it still feels like an improvement.
A lot of people say "You could write this X/Y block in one line" or "You can simplify this".

A lot of the times they don't mean simplify, they mean compact code.

I write verbose code, as explicit as possible. Sometimes it looks like it was written by someone just learning to program. And that's on purpose to make the code as easy to understand and change as possible.

TL:DR: Be skeptical about code "simplification" and don't fall on using fancy language features when if/else conditions do the job.
I agree that Github (and like every other company) must be forced to tell the reason for blocking people.

But the process being messed up is 100% up to the government, Github has nothing to do with it.
The question is where the limits of liability and rewards are. I don’t think the sky high executive salaries that have developed over the last decades are the foundation of modern capitalism.
If you actually believe that your competitor is evil, and their business is built on unethical behavior, then getting regulators to do something about it is a reasonable action even if it does benefit you as a company.
People like big vehicles; people like to sit up higher; small women especially like them because it makes them feel more powerful. Finally, Americans just don't care about fuel economy, or cornering ability, or having a vehicle that doesn't roll over easily.
Sister Mary Kenneth Keller: The First PhD in Computer Science in the US
In fairness to Microsoft, they did at least spend a little bit of time considering / working toward maintaining the runtime part, before deciding otherwise https://github.com/nodejs/node-chakracore/issues/628#issueco...
I can't speak to company internals, but I do know that Azure is powering GitHub Actions runners, and there have been a firehose of new features coming out of GitHub in the past year. I imagine its pretty core to their "Developers Developers Developers" strategy.
There's plenty of alternatives already so I don't see MS being able to do anything untowards. /shrugs, I'll panic only if something bad happens.
Remember that the dates referred to in this article are literally one week ago, so it’s not reasonable to treat this like a past event. It’s very much ongoing and the market will likely remain volatile.
Here's just one project trying to make a decentralized github. https://radicle.xyz/
My strategy is make small functions that do one thing then combine this small functions to create larger ones. When a new requirement is added to change the large functions you probably have to change just one or a few of the small functions but many of the smaller functions are unchanged.
Also when this new requirements are added you can reuse the smaller functions, most issues I had to fix is understanding code that evolved over time and ended up to be a giant function that does too many things , with many branches.

Also make the code easy to read and understand, have good naming convention for the small functions and variables, add comments if you have to do something unusual (like workarounds for weird quirks or bugs) so it makes sense 3 months later when you read the code again and you forgot most of it.
Maybe a better question is this: how do you write code that does the most possible to prevent a maintainer from screwing it up?

It sounds like the same thing, but acknowledging that mistakes happen no matter what and trying to focus on preventing them is something much more tractable that trying to come up with the perfect thing that can be understood right away.

For instance, I used to be a fan of long variable names that say exactly what they do. I still am, but only in certain situations. In fact, I'd argue that using very descriptive variable names in the wrong situations can actually make the code less maintainable, not more.

This takes us naturally to a discussion about what works, why it works, and under which circumstances it might not work (or actually hurt), which is probably a much more productive conversation than something along the lines of "how do you guys think the best way to code is?"
Today we've announced that we've signed an agreement to acquire NPM but we technically have not acquired them yet (referred to as "closed"). NPM is still their own company for now and that's why the language is future tense.
https://en.m.wikipedia.org/wiki/Embrace,_extend,_and_extingu...

Whelp, time to look for backup solutions for when Microsoft continues their strategy.

Even today there’s an article about github flagging (re shadow banning) a user with 10k+ lib users, and no response from them as to why the ban occurred.

Thinking of adding an “in case of emergency” link in my README for users in case of sudden service loss.
Show HN: Compare Covid Growth Rates Between Countries
Zero-net-carbon synthetic fuels if nothing else. Hydrocarbons will have their place in the future as well, but we have to start think of them as an energy storage medium rather than an energy source.
It's too difficult I guess. Police just want to sit at speed traps and give tickets for speeding, and ignore all other traffic infractions, because speeding is the easiest to enforce.
Reminds me about the lawsuits between Apple and Samsung early on in the smartphone era.
Yeah, income inequality is not a uniquely American problem. But it's still worth pointing out that even though $1k probably seems like a piddling amount to most readers of this site, it could still help a lot of people who are significantly less well-off.
No, NPM the company is being acquired by Github.
Rights of living creatures aren't inherent in their real being, they are interpretations of the reality. In their essence they are mental constructs developed in human minds, and in practice they are social agreements. All rights you can have are those you gave yourself and those other gave you and decided to respect. So in the "immanent" sense Fjolsvith doesn't have right to nutritious food.
I am glad that the npm team will finally have some adult supervision.

Meanwhile, I almost have my team switched to yarn.
GitHub employees have access to Microsoft internal tools and a Microsoft email address, so I don't think there's too much internal firewalling.
Possibly. Depends on what the cost-benefit tradeoff is.

Google tends to be a long-term-thinking-oriented company, and requiring them to silo internal data (under the rules of a third-party oversight, not their own rules) strikes at their ability to do R&D. They know that in the long-term, the survival of a technical company is hinged on what they deliver in the future, not what they're delivering now.
I worry that this is too much consolidation.
> I don't know the technical details of MinION.

Neither does OP.
I think he's trying to flatten the curve to minimize the bottom
Exactly! https://linux.slashdot.org/story/20/03/16/0137200/windows-su...
Free Coronavirus Book For Kids – Reassuring children around the world
> So consoles have entirely given up on the market and just become branded PCs?

In a way yes. Last generation you had "1/2 step" consoles, The PS4Pro and Xbox One X, which were mid generation upgrades. This generation is shifting even further towards bringing console gaming to what PC gaming is via Windows and Steam.

I have PC Games I own on steam, and as upgrade my PC components over time, I still own and play my library of steam based games. There is no concept of "backwards compatibility."

The belief is this is the last hard console generation, and instead overtime, their will be revisions to hardware that take advantage of leaps in technology.

As games come out that require more powerful hardware, those with "Xbox Series X" will have to opt to play games via streaming service.

So you can think of Xbox being the brand of a PC-like gaming experience created wholly by Microsoft. That is what their branding is trying to evoke.
How about some explanation? I understand why they’d do this but no explainatin is quite unfair and honestly dissapointing for the community
Yes of course, but as your parent says, if that is why, Github should just say so.
Thanks to Microsoft/GitHub for this acquisition. NPM is essential to the Javascript eco-system and it is hard to have a business model for just a registry. In the ruby eco-system the awesome Ruby Together https://rubytogether.org/ was started to run the registry. In this case one of the worlds most valuable companies will run it, which means it doesn't need a not-for-profit.

Regarding "trace a change from a GitHub pull request to the npm package version that fixed it" will there be an API to add a source in case the change was made outside of GitHub? Although I recognize that the vast majority of changes to npm packages happen on GitHub.
Less code, loose coupling. Do one thing and do it well. Keep the external API simple.

It's always easier to change a small thing instead of a large thing. So make a small thing, and only make it a big thing if you absolutely have to.

I think my favorite recent HN example of this was that article where Discord rewrote their "unread message count" service in Rust. They were able to make a huge change to a critical section slowly and incrementally because it was loosely coupled. The programming language they chose didn't matter, because it could just be changed. The implementation didn't matter because the consuming code didn't know about any implementation details. The change happened and all the other teams had to care about was that there weren't weird latency spikes anymore.