This makes sense but also seems very annoying to do? E.g let's say you are storing state in the URL, and now the user wants to save it to their profile. You need to upgrade the state from "encoded into the URL" to "stored in my database", which seems annoying.
To all people complaining about bugs:
1. It's easy to find flaws in hard, ambitious projects. All ambitious projects start out as WIPs.
2. It is much harder to do an ambitious project.
My guess is the true reason is that HN has many people who are scared of threats to their identity.
Take for example all the comments about how AI won't be good enough. My best guess at what is going on is HN people feel threatened by AI (they realize doing standard programming is nothing special), so they are forced to downplay it.
It's like the famous quote: "it is hard to convince a man of something when his job depends on not understanding it", or whatever the quote actually is.
Another example is when people bash (even technical) crypto posts with very generic crypto bad claims. I roughly expect someone who doesn't know anything about, e.g zkSNARKs, to comment generic crypto-bad claims. They don't have enough knowledge to actually engage with the article so they post unrelated criticism.
The last thing is Dunning-Kruger. The Dropbox story is a solid example of Dunning-Kruger at work.
Nothing you say is credible unless you tell me you have tried copilot. Without you having tried copilot and seen its capabilities we have no common ground. So get back to me once you have used it.
I claim copilot is capable of creating. When copilot writes an amazing lodash one liner in my code --that isn't regurgitating an existing lodash snippet, it's creating something new to fit my use case. This is undeniable and there is nothing to argue here. Copilot regularly looks at my code and writes new code that is highly specific to my existing code. It's honestly better than me at languages I don't know well (like C).
And yes, 0.1% of the time copilot is spitting out existing code verbatim; the other 99.9% of the time copilot is not overfitting and is synthesizing new code. Luckily most companies don't needs clean room implementations.
Copilot writes code that is adapted to my existing code base. This is quite obviously and undeniably not just regurgitation because my codebase is unique to me.
Lastly copilot is a better programmer (locally) than many of my peers. It can write better lodash one liners, amongst other things, and while that's embarrassing it's true.
IMO, all these concerns about licensing ignore a pretty important fact: Copilot is (in most cases) no different from a human.
If I read the code for, I don't know, some GPL-3 library and then write my own MIT-licensed version--that's totally fine.
A programmer can read strictly licensed code and then use that knowledge to write their own non-strictly licensed code.
Copilot is not different from a human. It has knowledge & it uses it. It isn't copy-and-pasting (there are 1/2 edge cases where it is; but for the most part it's new ideas).
It's the same thing as saying "Dall-E 2 is plagiarizing art".
When I write a quicksort algorithm, I don't give any attribute to the code I saw for the algorithm in some random library.
Fundamentally, there's no real difference between Copilot and a human.
I've watched Copilot write crazy lodash one-liners that were clearly contextual to my code.
I think what is fundamentally happening here is that older people / people of the last generation are realizing that just as sys admin jobs / etc. are going away, soon many rote coding jobs will be taken away since Copilot will automate them. And that's fine, but it is producing backlash which comes in the form of licensing issues.
Basically, there's no difference between Copilot and Dall-E and it's pretty clear that Dall-E has no licensing issues, thus Copilot should also be in the clear.
Rather than do the typical HN thing of commenting on something irrelevant (like the landing page), I'll comment on the actual thing being presented:
First, I really like that this leverages Typescript to its fullest. I'm a big fan of doing things like runtime reflection of compile time types.
However:
```
id: number & PrimaryKey & AutoIncrement = 0;
```
One thing that seems confusing is, (presumably) -- these compile time types are being translated into runtime type behavior. (I'm guessing by your Typescript transformer?). While this is very cool and concise, I suspect it could be super "magical".
There's something that scares me about Rome: it's lack of plugins.
I really like Babel because of its plugins. My project typecheck.macro, could not exist without Babel plugins.
How will Rome support compile time transformations like graphql.macro or typecheck.macro?
Compile time plugins allow JavaScript to evolve super rapidly & make the creation of frameworks that act as compilers instead of traditional frameworks possible.
The difference is not serving black or queer people isn't a moral judgement -- it's just discrimination (there isn't anything inherently wrong with being Black the same way there isn't anything wrong with being queer or Asian or Indian, those things aren't a choice unlike being a Nazi). At best, not serving minorities is a shitty moral judgement.
Not serving ICE is a more legitimate moral judgement because ICE has the option to change their behavior and ICE is genuinely bad.
Slippery slope is one of those silly things I see from free speech advocates. I tend not to see the bad impacts in real life because if the government isgoing to restrict free speech, they will do it regardless of what anti-hate speech laws currently exist.
A lot of people are making claims about a "loss" of free speech due to this change. I don't see how this is an issue.
Twitter's rules are impartial. I don't see how impartial rules can be exclusionary. Well I can to some degree, in the sense that impartial rules such as "no politics in esports" prevents people from protesting injustices, such as Hong Kong, but Twitter's rules are more about not actively promoting violence.
It is entirely possible that these impartial rules may disproportionately affect certain groups/political parties (white nationalists, Trump, etc.) -- this just means those parties need to get in step with baseline moral standards that simply claim actively promoting violence and exclusion is bad.
Also Twitter is a private company. They can choose who is able to use their platform or not. (At least I think that's how it works, maybe not).
As a man, I agree sharing emotions is important. Too many males in society don't have someone to cry with or listen to their problems.
On the other hand, I do worry about "emotional masturbation". Simply put, sometimes we indulge ourselves in sadness/fear/anger because it makes us feel something and feeling something is better/more exhilarating/exciting than feeling nothing at all.
For example, I have some insecurities. Sometimes I feel like talking about them may be pro-actively bad because I am indulging myself and making my insecurities occupy more mental space/brain power.
Are any people in agreement with me that Cloudflare's emphasis on neutrality is actually a bad thing?
I see several comments admiring how Cloudflare is willing to serve alt-right/nationalist/racist content in the name of avoiding censorship.
I never understood why this is a good thing. The argument seems to be that not-censoring things is valuable because who knows when Cloudflare censors something that is actually valuable/not racist or nationalist.
Considering tech companies tend to censor right-wing extremist content, I consider the probability of that happening to be very low.
There's nothing to memorize here, or there shouldn't be, because "filter" is a standard array function in JS that I imagine most JS developers have encountered.
Knowing how "filter" works is valuable because now you can use that knowledge in the future on any project that uses JS, unlike "_.compact" which is only applicable in projects that use lodash. You can be relatively confident that you can write "filter(elem => <some function>)" and that other developers will know what "filter" is doing.
The second part is more tricky, but still useful.
The !! operator is just two "!" operators. That's pretty normal too. The first "!" converts an object/number/whatever into the opposite of its boolean value. The second "!" negates the first boolean, thus turning the opposite of the boolean value into the object's original boolean value.
Even if figuring this out on your own is slightly more difficult, it gives you valuable insight into the language (JS is very dynamically-typed and the not operator can cast objects to booleans), which will help you write better/safer/more concise/clearer code in the future.
For me, the crux of the matter is that people use Antifa to claim that both the left and the right engage in equal amounts of violence or that both are equally morally bad/good.
I was pointing out that this isn't the case since Antifa uses several orders of magnitude less violence than its right-wing counterparts. Thus, antifa cannot be used to justify the statement that "the left and right are morally equivalent".
I never painted antifa in a romantic light, my point about sacrifices being made for the greater good was in reference to policies that help minorities at the cost of harming the majority.
I think there's too much backlash against big tech companies.
Yes FAANG companies have occasionally done bad things, but they contribute immense value. Gmail, Google Maps, Android, Amazon, AWS, etc. have provided immense value to billions of people.
I also think these companies are advancing state of the art software development, tons of open source software has been released Facebook, Google, etc. Google is doing cool things with AI, etc.
I suspect a lot of this action against big tech companies is the result of a politicized justice department that wants to take down "liberal elites". Why haven't we seen more action against other arguably even more harmful companies? (Larger companies, companies that destroy the environment, etc.)
I think people on HN are getting duped. In this case, their interests (enhanced consumer privacy) and Trump's interests (sticking it to the liberal elites), align on the surface, but the actual motivation of the Justice Department is much more insidious.
This person (yostrovs) is very clearly partisan. I have interacted with them in past threads and they have made bold claims such as people who oppose Trump's policies solely do so because they hate Trump and not because they could dislike Trump's policies. I wouldn't bother arguing with them.