skysight-inc/HackerNews huggingface dataset:
I've not been a big fan of GitHub historically, but the pace of innovation since the MS acquisition is really impressive. I wonder how much of that is MS influence vs just MS funding.
> Although utf8 is currently an alias for utf8mb3, at some point utf8 will become a reference to utf8mb4. To avoid ambiguity about the meaning of utf8, consider specifying utf8mb4 explicitly for character set references instead of utf8.

https://dev.mysql.com/doc/refman/8.0/en/charset-unicode-utf8...

Can't fault a database vendor being conservative, but looks like this is planned. Maybe this will be a 9.0 thing.
- an accountant
- web hosting
- email service
- company phone
> But the compiler is like "hey! you used the result of this function as an index for this array! i must be in the range [0, 10)! I can use that information!"

As a developer who has seen lots of developers (including himself) make really dumb mistakes, this seems like a very strange statement.

Imagine if you hired a security guard to stand outside your house. One day, he sees you leave the house and forget to lock the door. So he reasons, "Oh, nothing important inside the house today -- guess I can take the day off", and walks off.
That's what a lot of these "I can infer X must be true" reasonings sounds like to me: they assume that developers don't make mistakes; and that all unwanted behavior is exactly the same.

So suppose we have code that does this:

int array[10];
int i = some_function();

/* Lots of stuff */
if ( i > 10 ) {
return -EINVAL;
}

array[i] = newval;

And then someone decides to add some optional debug logging, and forgets that `i` hasn't been sanitized yet:

int array[10];
int i = some_function();

logf("old value: %d\n", array[i]);

/* Lots of stuff */

if ( i > 10 ) {
return -EINVAL;
}

array[i] = newval;

Now reading `array[i]` if `i` > 10 is certainly UB; but in a lot of cases, it will be harmless; and in the worst case it will crash with a segfault.

But suppose a clever compiler says, "We've accessed array[i], so I can infer that i < 10, and get rid of the check entirely!" Now we've changed an out-of-bounds read into an out-of-bounds write, which has changed worst-case a DoS into a privilege escalation!

I don't know whether anything like this has ever happened, but 1) it's certainly the kind of thing allowed by the spec, 2) it makes C a much more dangerous language to deal with.
What would you say to people who claim that writing "secure C code" is impossible [not me but I'm curious what you all think]?
Have you ever used a high-level statically-typed language, e.g. haskell?
Can you please prioritize stability of your SaaS offering for paying customers? Our dev team and infra gets impacted seemingly every week with github outages, and it especially seems to correlate with delivery of new features. Thanks!
It seems this article is idolizing the ugliness of the site as being some some kind of contrarian user-centered design. User-centered doesn't have to mean ugly, though. There's a whole lot of middle ground between "default-styled page from 1995" and "2020 SaaS landing page with flashy illustrations that doesn't explain what it does".

You might remember http://motherfuckingwebsite.com/ vs. http://bettermotherfuckingwebsite.com/ from a few years back. Some minimal tweaks to typography/colors/spacing can make a big difference.
I used to love Pulumi - the experience of managing infra + k8s resources with Typescript's type system is really nice.

However, I've found their support responsiveness via Slack / GH issues to be poor enough to where I'm strongly considering removing it from our team's internal tooling setup.
It’s been somewhat fascinating to me over the past 12 years to watch both sides go absolutely insane with allegations of abuses of power, government overreach and all sort of political nastiness. Yet the answer from both never seems to be a re-evaluation of the systems we’ve put in place over the years that have allowed these things to come to pass, nor a questioning of whether the actors we align or malign should even have the powers they have in the first place or be so protected in those powers. Instead it’s an insistence that if only we get “the right person” in power and then tear away all the institutions that allowed the “wrong people” to challenge, delay or unseat that person then surely everything will work out perfectly forever and always.
lucky you!
All You Need to Know About Microgrids – Concept Explained
Out of curiosity, what do people think the social version of this?

I've noticed that certain people can say nearly anything and people will gush all over it, even when it's clearly foolish or someone else said the same thing just 10 minutes previous.
Large codebases can do this to you, but it’s all about finding manageable tasks for you to start understanding the codebase. As the saying goes: change it to understand it.
This was posted a couple hours ago and fell off the front page.

https://news.ycombinator.com/item?id=22866284
Facebook AI's Nevergrad, an evolutionary optimization library, adds new features
Yes, the project has gone a long way, as it's being used by what may be the two most prominent development environments for Go (VSCode and Jetbrains Goland).

GDB still has a lot of value if you're working with a non-amd64 architecture or want to dive into cgo parts of a codebase, but Delve is a great addition to your toolbelt!
You might want to try SoundHound then. It’s not cruft-free, but it’s quite usable.
Show HN: A user-centric Firebase alternative
In university a professor was explaining how Wolfram formulated Physics in the 80s through finite automata instead of Mathematics, that must be the NKS. Is it actually (at least theoretically ;)) possible to calculate something with it, so that results match for instance Newtonian Physics?
The only thing that Occam Razors well at this point is a lab accident. Also see https://news.ycombinator.com/item?id=22851693 for a list of reasons, with sources.
Thank you, it summarises it pretty well.
MS is back pretty strong.

It's also to note they attacking on two fronts, the open source and startup folks (VS code, github, typescrip, azure) , and the enterprise with communication, productivity tools and cloud infra (Teams, Office 365, Azure)

Owned.
They probably couldn't even if they wanted to, by this point there will be too much software out there depending on "utf8" meaning "MySQL's weird proprietary hacked-up version of UTF-8".

The only real solution is to hammer home the message that "utf8mb4" is what you put into MySQL if you want UTF-8.
In my opinion, this article seems to be biased with Halo effect.
This is a disturbing trend I've seen on the left. Any criticism of a foreign country is construed as racism, or talk around immigration policies. That's obviously conflating issues, and it serves to shut down conversation rather than promote it. I hope people stop being so woke and wake up to the harm they're causing with that kind of extreme attitude.
It's because America has the culture of reflecting back criticism with calling others racist, bigots etc.

Unfortunately everyone finds a way how to ignore proper criticism with it. Just like it's part of the politics it's part of the broader society.
AFAICT, it's not only "internal representation". .NET strings are defined as a sequence of UTF-16 units, including the definition of the Char type representing a single UTF-16 code unit. I can't imagine how such a change could be implemented (other than changing the internal representation but converting on all accesses which would be nonsense, I think).
Each Ethernet interface has a unique address; using them is widely regarded as a privacy violation.
> I suspect we'll see a change to WFH, not because workers like it, but because it is cheaper and production doesn't change (not to mention it quickly reveals whose "production" is really just physically presenting in an office)

I’m unconvinced and very skeptical that on the average across all people that transitioned to WFH due to COVID-19 there is “no change” in measurable productivity.
Probably served off this simulated laptop.
Hey Nat, thank you so much for this! We're a small team from India and we love Github but were always conflicted due to the pricing.

The new flat price of $4/user seems perfect for us. I've already moved one private repo to our org account.

Thanks again ^_^
I love his style parodies best of all, and I totally agree with you. I always bring those songs up if I'm arguing with someone about his musicianship.

"Close But No Cigar" is probably my favorite Cake song.
Worth a look if you want something uplifting. His work was simultaneously fun, childlike, insightful, insanely original, hilarious, timeless, and fresh. Few artists have been so purely enjoyable IMO.
Meat has the shortest shelf life of foods, so any impact on the food supply chain will be felt there first.

US Agriculture as a whole employs 22 million people. Of that, meet production is about 500,000. Fruits, vegetables, and grains take an order of magnitude more hands to make it to the table, so to speak.
There's security implications...
Why am I not surprised at who it is?
Not having to create separate usernames and passwords with yet another service (GitHub)
Does anyone have a good workflow for spanning go->cgo. I have found it very hard to code and debug in the space. I end up using gdb, but that lacks a lot of the go context and you cannot go into the c code with delve.
This article is not just whining, it is detailing the ways that SEO has impacted the internet, many of them not obvious to most people.
The quality of the site is not coming from the quality of web design (it's not that good).

It's the purity of the function that leads to good design. The function is to provide information for stock owners and potential investors, many of them are old people. The site is not trying to sell, influence or impress. Berkshire is selling nothing to consumers or visitors. Their subsidiaries that sell have their own websites.

Berkshire HQ has just 25 staffers. Their subsidiaries employ close to 400,000 people.
There's also a rig (a ring without "n"egatives): https://ncatlab.org/nlab/show/rig

I agree. Too cute for its own sake.
My last two roles had management expect you to be in the office because they had spent a lot of money on the rent/furnishing even though 50% of the companies roles could be done remote. Now Ill admit it is easier to walk over to someone's desk to ask a question then the endless are you free email/phone call tags before all this COVID-19
Case study: a certain pg essay and recent discussion on HN. ducks
Well Clojure is a language designed to be evaluated form by form if for example I wanted to evaluate an if statement in PHP's "REPL" then working out where that statement begins and ends is annoying compared to just sending an if expression in Clojure

In PHP once a function is defined I can't redefine it and then call it again to iteratively build that function

Just because your language has a repl doesn't mean you can get a quick feedback loop from it, in fact the more compile time constructs you have like classes and interfaces the harder it is, particularly if they're sticky with dependencies everywhere

Bret Victor's work I think really illustrates how little respect and investigation we do into feedback loops
There's not an official collaboration between the committee and the kernel developers (that I'm aware of), but we do have people on the committee who need to support Linux kernel development (such as GCC maintainers), so there is some level of indirect influence there.
Investment requires returns, which mean people have to consume the resulting product, be it goods or services.
Scientific Communication as Sequential Art
Elsewhere in the thread they say that their big customers earn them enough to keep the lights on.

I’m much happier with a sliding scale model than ad or spyware based models. The problem there is that my experiences have been that a lot of expensive scaling work that you might otherwise have deferred gets done for your biggest customers, and we don’t often get the revenue right to absorb that hit. More than once our biggest customers have ended up having the lowest margins, if you de-fuzz the math.
Should for-profit grave-digging be illegal too?
I'm sure toilet paper manufacturers are doing OK right now.

The growth in that sector is swallowed up by the overall hard-stop of the entire economy.
Basically, yes. Give me a choice between SAML and OIDC, and I'll choose OIDC every single time.
Before Netflix, Facebook, Twitter and cable TV it probably was.
> In many countries, child labor wasn't banned because of moral reasons, it was banned as an anti-competitive measure against un-mechanized factories.

OK, then child soldiers. Or chemical weapons. Pretty much anything outlawed by the Geneva Convention–all economical ways to wage wars, trumped by morality. Not as anti-competitive measures against killer robots.

> I've gone to many nice restaurants where they didn't charge me up front,

Restaurants also typically don't risk their lives for you, so not really relevant.

> You say that companies should expect profits to fall,

That's what I said.

> but do you expect the companies to drive themselves into the ground (thus leaving their employees unemployed) in an attempt to do a little to help?

That's not what I said. It helps if you stick to what I actually said.

> Most companies spend about 50% of their revenue on labor, and have a profit of less than five percent.

We're not talking about most companies. We're talking about big industrial PPE manufacturers like 3M, which reported net income of about $5b dollars in 2018, and because of accounting tricks,[1] probably under-reported their income. They have a profit margin of about 50% for at least the past five years.[2]

> That means that a 10% increase in labor costs (think overtime)

We're not talking about a uniform, across-the-board 10% increase in labour costs, we're talking about targeted cost increases specifically for PPE manufacture.

> they really can't afford to reduce their margins much, and remain an extant firm.

Based on the actually relevant numbers, it looks like they'll be just fine.

[1] https://www.forbes.com/sites/greatspeculations/2020/02/26/hi...

> You say we shouldn't gamble our lives on the continued decency of for-profit corporations, but I have more confidence in their ethics than those of the common man.

I'm just curious, who do you think makes up these for-profit corporations, some kind of special saints? As opposed to 'common' people?

[2] https://ycharts.com/companies/MMM/gross_profit_margin
Right and yet most everyone in this thread can agree that it wouldn’t be the most prudent use of it when there are other lives more at risk than yours.
They are at 1000+ watts peak, but unless your average speed is of 45mph in a city all the time, you're not pushing 1kw on average. More like 100-200 watts on average.
The Top Gun movie that's not yet released went through similar editing.

https://www.businessinsider.com/top-guns-maverick-appears-ch...
Is my comment not clear? They are not "readline shortcuts"; readline got them from Unix. GNU targeted Unix as the system to replace with free software and adopted its conventions.

Beside Ctrl-W and Ctrl-U, another convention from the Unix TTY found in readline is Ctrl-D.

getpass doesn't support editing at all; it runs the TTY in "cooked mode", just with echo disabled. The operating system kernel implements the rudimentary editing (Ctrl-W and Ctrl-U).
It goes to show that terminal fanatics still haven't find a simple solution to this problem even after 50 years.
It's not sarcasm at all.

Does one person with a million dollars in excess liquidity to spend on water represent a greater "need" than one million people with no liquidity to spare?

Would it be moral for that person to buy more than they need, solely to inflate prices? Would the resulting spot price in the market be in any way a meaningful gauge of the actual need?

Market prices are only one gauge, and they are pretty faulty, easily manipulated one at that.

Next up, you'll probably tell me that story points are a solid basis for predicting delivery times and making decisions about resource allocation.
SAML has been around longer and handles AuthN and AuthZ

OAuth only does AuthZ. I've always found OAuth more complicated because you have to combine it with other technologies to get AuthN
>After the first investigative project ran in 2012, the Chinese authorities had searched Bloomberg's news bureaus, delayed visas for reporters and ordered state-owned companies not to sign new leases for Bloomberg's primary product: its terminals.

That would make some sense, though it seems like they were pretty damn close.

So why not mention the 2012 article and set all this in its context?

The story here is "Once bitten twice shy", so why mash it up so badly I can't tell if they've been bitten already or they're hesitating after the bite.

And why open it all with quotes like "I was not a human being"?

It's like the intro to a story about sexism has been pasted in instead of the intro to the story about CCP censorship then someone hit publish without proofing it.
Do note that mtlynch is not saying that it's all the authors fault and Valve/HackerOne couldn't handle this better.

What you've written can be true as at the same time, what mtlynch has written is true too. Everyone could do better here.

But most likely, giving feedback to Valve/HackerOne via a Hacker News thread is likely to not be read. The feedback to the author is more likely to be read by the author themselves and other aspiring penetration testers.

So in the end, everyone could have done better.
Mostly sure!
Applying arbitrary iterated transformation rules on graphs is very, very cool.

But I don't think there's much in the way of existing theoretical math attacking this area.

Much will need to be invented / discovered.
Agreed. I cannot believe that GCP and AWS are so asleep at the wheel either. If I were them I would literally be throwing money at some of the GitHub folks to have them fix AWS or GCP.

And it was should have been rather obvious when GitHub released the beta of Actions a few years ago. Actions remains the most important thing GitHub has done, ever, in my opinion. It might take a few more years for people to fully realize what this could be. Hope GitHub doesn't screw it up!
Let them have a look at [1]

It shows a graph of the death rates for the past 3 years. This year is not a good year (to put it mildly)

If they're Dutch, then they know what the RIVM stands for. For others reading this, you can probably compare it best to the Dutch version of the CDC.

[1] https://www.rivm.nl/monitoring-sterftecijfers-nederland
> The entire point of abstraction is to create the separation that your code base seems to be lacking.

I think this appears to be the problem. The codebase appears to be very kludgey.

> This approach is necessary, but you won't really understand the code until you start debugging. Can you tell us more about the stack (and, ideally, the project itself) so that we can give you better tips? Sometimes understanding code is a lot easier with the right tools (IDE, debugger, etc.)

I think the architecture is essentially one of the reasons I am having so many problems. I'm not familiar with docker/apache solr/their custom database, etc. However, I think that's more of a tangential issue. It's more of a feeling of imposter syndrome as another poster said. For everyone else in the field it seems like this is effortless.

> I'm sure you can do it, but it's also important to figure out if you want to. If you work on multiple code bases, including your own, and you don't enjoy it, or the frustration you're feeling now is not healthy for you, then this might not be the right career for you.

It's not really frustration. So much more as feeling like I will never be good enough at this to be successful in this career.

> A lot of being a programmer is banging your head against a wall for many hours longer than a typical person would be willing to, until you finally get past an obstacle.

This is exactly my personality type, and my wife makes fun of me for you. Once I get my teeth into something I basically don't stop until I got it. It's actually created problems for me in other career fields, but it's seen as an asset for programmers. So I know on a personality level I have what it takes, but yeah... Just get the impression I'm not smart enough for this.
Thanks for the elaborate answer!

I wonder if you considered Dhall (https://dhall-lang.org/) that's declarative but at the same time has functions and other convenience factors.
You know, that's a very fair point. I suppose the actual surprising part is just how successful the CCP has been at this, which, as you say, requires participation. I do think it is worth highlighting that it is happening, because so many people still regard such statements as "conspiracy theory". I think I agree with you that the actual lever for combating it is pressuring our own institutions, though.

As an aside, your comment is nearly dead only 3 minute after posting.
Hi HN! I am building a Firebase alternative that has user management (creation, permissions, etc) baked in. It's great for if you just want to store data to each users profiles or want to let your users exchange data without having to build the security model and queries yourself.

This project is still early so any feedback will help shape the project going forward!
Well, his reasoning is sound enough - if his results are truly spectacular, it probably won’t matter that they weren’t published in peer reviewed venues.

At the same time, turning boring results into something fit for publishing can be very time consuming - more than the research itself, and at the opportunity cost of attacking juicier problems.

So if your goal is to utterly revolutionize a field, and you are very confident in your abilities to do so, it’s not the worst strategy in the world to just chase the ideas you’re most excited about and forgo the traditional bureaucratic paths.
No, gougers working completely independently can achieve a similar, regrettable end.
JavaScript:

https://www.ecma-international.org/ecma-262/5.1/#sec-2

> A conforming implementation of this Standard shall interpret characters in conformance with the Unicode Standard, Version 3.0 or later and ISO/IEC 10646-1 with either UCS-2 or UTF-16 as the adopted encoding form, implementation level 3. If the adopted ISO/IEC 10646-1 subset is not otherwise specified, it is presumed to be the BMP subset, collection 300. If the adopted encoding form is not otherwise specified, it presumed to be the UTF-16 encoding form.

https://www.ecma-international.org/ecma-262/5.1/#sec-4.3.16

> A String value is a member of the String type. Each integer value in the sequence usually represents a single 16-bit unit of UTF-16 text. However, ECMAScript does not place any restrictions or requirements on the values except that they must be 16-bit unsigned integers.
Everything is an abstraction. Everything is a protocol.

Keep expanding your knowledge.

Read the new pragmatic programmer.

It took me about 5 years to get over my imposter syndrome.

Dont get hung up over one project. I have written a lot of bad code and a lot of clever code. Both in the same project.

Being a good dev is a lot like being a good doctor. Study and practice, sometimes you will get it right, sometimes you won't.
Sure, let's force one of the most creative dude of this century back into the rigid pen others are allowed to play in, just in case he does something crazy and interesting.

What a lame idea, truly worthy of a mandarin.