Vehemently disagree. I get that go's conventions line up with your own, but when they don't, it's irritating. For example, Dart is finally coming around on the "tall" style (https://github.com/dart-lang/dart_style/issues/1253). But why should people be forced to wait for a committee (or some other lofty institution) to change a style convention that then effects everyone using the language? What's the harm in letting people write their code in the "tall" style beforehand? Why must the formatter be so insistent about it?
When you are a solo dev, everything is acceptable. When you're in a group, this can cause friction and cause real problems if people are "so insistent" about their style.
Go is a programming language developed for teams. From its syntax to core library to language server to tooling, Go is made for teams, and to minimize thinking. It's opposite of Rust. It's devilishly simple, so you can't make mistakes most of the time.
Even the logo's expression is an homage to this.
So yes, Go's formatter should be this prescriptive. The other thing is, you can continue this conversation till the end of time, but you can't argue with the formatter. It'll always do its thing.
You are misunderstanding the argument: I am not against prescriptive formatters. By all means, enforce a style convention for your project, I have nothing against that, nor do I understand how you interpreted that from my comment. I am against prescriptive formatters that cannot be configured. This creates the absurd situation, as previously described, where one must appeal to 'The Committee' who decides the style convention for the entire world. This should not be necessary. Nor should you have to surround your code with formatter-disabling comments (assuming the language even supports that) to, for example, use the "tall" style, as previously mentioned. Nor should you have to literally fork the language or its tools to disable the formatter.
If something can be configured, this opens up infinite possibilities for discussions on how it should be configured. The fact that you even ASK if you should use the tall style means that you are considering the POSSIBILITY of using it that way.
Put it this way, if it is technically impossible to develop a car that have the color red, we would not be discussing or entertaining what color the next car should have. It would be red, end of story. It doesn't matter if we like red or not, it just has to be. end of story.
Hot take: stop being authoritarian with code styles, perchance? You are not so wise as to determine what is clean code for the entire world, and the ego required to believe that you are is beyond astounding. And we're still having these discussions despite unconfigurably prescriptive formatters. This idea that such formatters end these discussions is just demonstrably false... you are literally taking part in one of these discussions.
While I wish this were true, I very much doubt it, at least not until Zig has proper interfaces and gives up its weird hangup on anonymous functions. It's also extremely easy to effectively lose access to Zig features without cluttering your code. For example, say you want to use libevent in Zig: your event callbacks must use C calling conventions, meaning you lose access to try and errdefer, which are two of the most defining features of Zig. And while you can remedy this by having the callback invoke a Zig function, doing that just doubles every interaction between your Zig code and libevent, which is already cluttered because of the lack of anonymous functions.
These things aren't as important as compile times, but they are annoyances that will drive a non-zero amount of people away.
It seems you are proving Zig will not become very popular, but not Zig will not become more popular than Rust.
I agree that Zig will not become very popular. It needs certain programming experiences to master it. But I'm quite sure it will become more popular than Rust.
The last I heard, Rust had issues with freeing memory when it wouldn't need to, particularly with short-lived processes (like terminal programs) where the the Rust program would be freeing everything while the C version would just exit out and let the operating system do cleanup.
Rust has ManuallyDrop, which is exactly the functionality you’re describing. It works just fine for those types of programs. The speed of the two is going to be largely dependent on the amount of effort that has gone into optimizing either one, not on some theoretical performance bound. They’re both basically the same there. There are tons of examples of this in the wild at this point.
While there may very well be security concerns, other countries have handled this by simply banning the app on government devices (eg: https://www.gov.uk/government/news/tiktok-banned-on-uk-gover...). You needn't ban the app nationwide to address those concerns. What I believe is more likely is that, this isn't about national security or data privacy, which could be addressed far more effectively with subject-appropriate legislation (such as data privacy laws akin to GDPR), but rather that TikTok was banned over unfavourable speech. It is no secret that TikTok has been used as a platform of citizen journalism, particularly in regards to the Gaza War. Congressmen have admitted as much.
The concerns are about adversarial foreign governments being able to silently target messages to highly-influenced demographics en masse.
I swear I have heard zero people opposed to the ban who seem to even be vaguely aware of that aspect which is the entire actual issue, and instead are completely confused and think it’s about spyware or hacking. Whether or not you agree with the ban, we need to actually be discussing the same underlying issue.
The concerns are that US hegemony over the media narrative is crumbling. Young people, "highly-influenced" as you call them, sees that American bombs are dropped on refugees in Gaza and they don't think that is right. So just do what China itself does and remove everything that challenges the government-approved narrative. Banning TikTok is no different from banning publishers of books the government doesn't like.
Israel is god's gift to Chinese propaganda.Every single Palestinian death further erodes Western moral superiority.
It's like the Mai Lai massacre that never ends.
I am quite sure God does not operate through US JDAM missiles and billions of dollars' of ammunition. God doesn't operate the American media which doesn't report the Genocide.
If US was willing, this Gift could have ended long long ago. I am sure no other country was forcing US to vote against peace at UN.
I am opposed to the way Israel is handling the war and believe they are committing unspeakable atrocities against the Palestinian people. My Instagram reels are filled with content supporting those beliefs. To my knowledge, Instagram is still owned by Meta.
Banning TikTok has literally nothing to do with silencing pro-Palestinian content. For fuck’s sake, Trump is trying his best to bring it back while threatening to deport students who engage in pro-Palestinian activism.
It might have something to do with 90% of the justification as articulated by the bill's own authors and supporters, and especially in the arguments before the Supreme Court and their opinion upholding it, being about "content-neutral" goal of blocking the ability of China to spy on US data.
Even when TikTok themselves tried to argue that the primary reason was to prevent foreign control over a recommendation algorithm, the Supreme Court said "nope, Congress's primary motive was the data collection."
And you weak-minded simpletons have to be protected from those dangerous ideas for your own safety. We have to fill your heads with only good thoughts, the ones we select for you. I know this is the stated issue, people won't shut up about it. It's a bunch of bollocks. How China handles their media isn't a blueprint for how we should do it. I wouldn't trust this power in the hands of my parents who love me unconditionally, I sure as hell don't trust this power in the hands of the worst people alive right now. If you're a Republican substitute Nanci Pelosi / AOC.
> And you weak-minded simpletons have to be protected from those dangerous ideas for your own safety. We have to fill your heads with only good thoughts, the ones we select for you.
I'm sorry but I have yet to see a single person who makes this point admit that it's a form of speech suppression. This is classic First Amendment precedent. Just because the speaker is someone you don't like, or its content is anti-American (or what have you), doesn't mean it's not protected speech.
This has nothing to do with the speech. The speech is protected as always. You are free to say the same things on any platform you like: soapbox, print, a website, social media, anywhere.
What is being prohibited is an adversarial government having complete control over an entity that can decide which speech is delivered to which specific audience.
How I read your stance: You are not allowed to hear what they have to say. They have poison thoughts that will infect you and others around you. We must protect our children from poison thoughts.
We can either strive for an educated populace that can identify propaganda or we use propaganda ourselves on ourselves. Propaganda is winning.
Not sure what's hard to grasp about a country deciding it's a bad idea to allow adversarial nations to run psyops on its populace at-scale.
Your solution is to open the floodgates, allowing all manner of military/intel-grade psychological manipulation, bots, AI, etc. to be unleashed on our population, but try to educate the entire population to become professionals at identifying and resisting these tactics?
Seems absurd on its face. It's strange to see someone trying to make that sound like the reasonable option.
I'm engaging in curiosity to understand. I'd love to understand your position better. You wrote:
> What is being prohibited is an adversarial government having complete control over an entity that can decide which speech is delivered to which specific audience.
That seems to imply that certain voices or ideas must be excluded to prevent this control. Isn't that, at its core, a decision that some poisonous thoughts should not be allowed to reach certain people? If not, how do you see this distinction? Does freedom of speech not include freedom to hear what others may find objectionable?
What? Many people just don't think the First Amendment applies to foreign nations. (Why would it??) And that restrictions on corporate control/structure for the US-based parts are not speech issues (e.g. imagine if free speech was a defense against an anti-trust prosecution).
The simplest case for banning TikTok is simple reciprocity. China is no longer a market that needs the level of protectionism they currently have to develop. The second best is data privacy. Just a shame they won't apply the same to US companies yet. And then an additional reason is the one that's being used currently - risk of foreign influence. You'd hate to not ban it "because it hasn't happened yet" just for it to happen in the future. China keeping out US apps seems to have worked out great for their local industry, I'm hardly convinced it wouldn't also be a good thing for US citizens. And with the foreign-country thing tossing Constitutional issues out the window, go nuts.
Let's remind ourselves of what the First Amendment says:
> Congress shall make no law respecting an establishment of religion, or prohibiting the free exercise thereof; or abridging the freedom of speech, or of the press; or the right of the people peaceably to assemble, and to petition the Government for a redress of grievances.
The Constitution does not consider Freedom of Speech a positive right, one that can be granted to some but not others. It is a negative right against the government. It's about as broad and as absolute as you can get. This is why the right also applies to legal entities (eg: companies), even foreign legal entities. It is not limited to citizens, it is not limited to persons.
The First Amendment famously has limits, which have been tested and have held, repeatedly. These limits generally arise from conflict with other rights or societal good. On the latter point, obscenity is one of the most well-known exceptions. The government can and does make laws against it.
The idea that a foreign, adversarial government would have a Constitutional right to propagandize our citizenry at-scale is obviously not consistent with the societal good (or the "common defense", for that matter), so is outside of the First Amendment's scope/intent.
If you want to make an argument that it's not happening, that's one thing. But, your assertions about TikTok having some blanket "right" here are false.
> The idea that a foreign, adversarial government would have a Constitutional right to propagandize our citizenry at-scale is obviously not consistent with the societal good (or the "common defense", for that matter), so is outside of the First Amendment's scope/intent.
You seem oddly enthusiastic about giving your government the right to violate freedom of speech for entities you do not like, thus removing a platform used both as a platform for speech and for commerce, for 150 million Americans. It totally makes sense to violate the First Amendment over unproven and hypothetical fears of FYP algorithm misuse. Enjoy your slippery slope :)
Feel free to re-read my comments and address my actual statement, pointing out that your initial assertion is wrong. That, versus changing the subject.
>Enjoy your slippery slope
There's certainly a slippery slope here—and a strawman, but they ain't mine.
You just refuse to accept that entities that you do not like also have Freedom of Speech rights. You continue to believe that Freedom of Speech is a positive right to people, rather than a negative right against the government. You are therefore perfectly fine with preemptively suppressing the speech (and commerce) for over a hundred million American citizens, because you perceive a threat from the FYP algorithm, because you do not value the Freedom of Speech rights of entities you do not like. That is a slippery slope. If you don't want to recognise that either, that's your prerogative.
At this point, why even have a negative-right Freedom of Speech if you're just going to treat it like a positive right anyway? Ridiculous.
Yup, the composition of the Court has changed, thus its stance has changed. But if you choose to defer any and all thought to this Court, who consistently give the government wide latitude to do whatever it wants so long as it invokes the magic words "national security", that's your prerogative. It's a sad way to live though.
If we're parsing at a super detailed level "Congress shall make no law abridging the freedom of speech" seems even further away from the TikTok law, if anything.
"Apple has a first amendment right to be able to list any app it wants, regardless of source" seems like the only claim you could make. The Lamont case doesn't directly apply since the government isn't an intermediary between Apple and ByteDance saying "are you SURREEEE you want to get this app from them?" And the existence of restrictions on what you can send/receive through the mail make it clear that Lamont isn't a blanket "you can't regulate messages between people" restriction.
So is "hey Apple, don't list things that meet that criteria" different than "hey UPS, don't send things that meet this other criteria"?
AFAICT the Supreme Court didn't really consider it from this angle anyway and just looked at it as a regulation on corporate control, which also seems completely legitimate. Can the US gov't say "certain things require US-person-owned/controlled companies?" They do for other things already.
I think you're both conflating the concept of "free speech = good" with what forms of speech are, at this moment, permitted or forbidden by US law.
For someone who believes in the concept of free speech, the fact that US constitutional rights to free speech in practice almost certainly do not protect overseas business interests is really an embarrassing corner case. Even if you do genuinely consider national and foreign actors to be different kinds of entity, so that it could be ethically sound to protect one and not the other, there's a simple technical reason for constantly the distinction to be artificial: Free speech protection can be gained merely by funnelling the speech through an intermediary US citizen.
> Using "go tool" forces you to have a bunch of dependencies in your go.mod that can conflict with your software's real dependency requirements, when there's zero reason those matter. You shouldn't have to care if one of your developer tools depends on a different version of a library than you.
Heh, were the people who made 'go tool' the same people who made Maven? Would make sense :P
Except for most ordinary use cases. I guarantee you that, if someone downloads a compressed file, they'll find it infinitely easier to right click and select the "Extract here" option than whipping out some tar command. The linux-brain has people convinced that the layman would prefer the latter if only they would listen.
That's some windows-land programming right there. The idea that a file is something clickable, some icon with a title somewhere on the screen.
And typing 5 letters is clearly not infinitely harder than right-click and rummaging through 20 item menu to find the right action. The difference is actually infinitesimally small.
I'll hold your hand while I offer this groundbreaking revelation: the vast, vast majority of people are in Windows-land. We're even having issues with the younger generations who do everything on their phone and this don't really have any concept of file systems. Get out of your echo chamber. That means getting off of HN and start looking at how laymen use computers.
My echo chamber is Norton Commander or M602 on MS-DOS, thats how I grew up to understand what a files are and how to work with them. That's how laymen used computers back then and what was thought in schools.
Key property of these was that they had command line, so you could easily navigate and execute arbitrary commands on what you see, by typing them in.
The major reason people don't use command line interface on windows or smartphones and other appliances, is because it does not have anything remotely comparable pre-installed, so they're forced to use the inferior interface.
Apologies but you simply have not grasped the sheer difference in scale between now and then: the number of people who are reasonably competent with a terminal nowadays would absolutely dwarf the total number of people who owned computers then... and the former are an undeniably tiny minority in the total number of people who own computers now. You really, really need to get out of your bubble.
> The major reason people don't use command line interface on windows or smartphones and other appliances, is because it does not have anything remotely comparable pre-installed, so they're forced to use the inferior interface.
If you say so, but you'll have to forgive me if I don't hold my breath waiting for the CLI-smartphone revolution.
Embrace, extend, extinguish. it could take about a century, but every software company (hardware maybe next century) is in the process of being swallowed by free software. Thats not to say people can’t carve out a niche and have balling corporate retreats for a while.. until the sleeping giant wakes up and rolls over you.
Free software basically only exists because it’s subsidized by nonfree software. It also has no original ideas. Every piece of good free software is just a copy of something proprietary or some internal tool.
You've just made a pretty outrageous claim without evidence that would require a lot of effort on my part to refute, so I'll just go with: if you say so.