Hacker Newsnew | past | comments | ask | show | jobs | submit | broken-kebab's commentslogin

National security could be a valid concern. But Danish media leveraging DK gov't to rollback the reality could never be a success story. Those media are failing not because they are not in the US. Established American media have the same troubles and complains.


I'm ok with it. I think this situation is caused by the Baumol effect https://en.wikipedia.org/wiki/Baumol_effect

I think it's ok if the highly productive parts of society subsidize the crucial-but-low-productivity areas (healthcare, education, etc).

Otherwise this happens https://www.census.gov/library/visualizations/interactive/te... See all the important careers on the bottom right of the first graph. Then your people elect fascists because the media and education systems suck and they don't know any better.


Why is it the responsibility of American tech companies to subsidize Danish news and media industries? If it's really that important for national security, shouldn't the Danish government be setting up some kind of a state journalism fund to subsidize it themselves?

This is just a shakedown of American companies.


Denmark has one of the most comprehensive media subsidy systems in the world.

Google makes a lot of money off monopolizing advertising in Denmark. They are just playing hardball, they don’t think they can be replaced.


> The publishers say that their industry is bleeding out while they wait for a deal that may never come.

It sounds like their government needs to do even more subsidizing if they're really that reliant on US companies to pay their bills.


Yep, see the article

> Denmark isn’t just resisting U.S. tech; it is one of the few nations actively building its own sovereign alternatives for critical infrastructure.

> In Rogaczewski’s view, sovereign digitization is not just a defensive measure against Silicon Valley; it is the only way to maintain the welfare state in the 21st century.

It'll just take a while cause Google is so big.


In this context "journalism" usually refers not to a crowd of Mothers Teresas seeking to improve society in voluntary contradiction to their own market (or guild/class/whatever) interests, but a bunch of business entities which were born out of printed newspapers, feeling uncertain about their revenues after changes in technology of information delivery ruined their niche. And trying to leverage their established relations with politicians to extract more profit. It's not like Google is offending little pixies here. After all, there are youtube channels which have a societal role too, and search engines too I guess can make a similar claim.

Other commenter's note about national security issue is more on point but then I doubt that bailing out failing news platforms would make them as influential as they used to be in the bygone era.


The last days truly has come! The world is upside down, and I'm seeing people inserting their computers into their GPUs.


What I see is that antirez claims that absence of "safe" (as syntax) in C lang doesn't automatically mean that all of C code is unsafe (as property). There's no swapping of definitions as I see it.


I think there's a very clear switch of usage happening. Maybe it's hard to see so I'll try to point out exactly where it happens and how you can spot it.

First from antirez:

> You don't need much unsafe if you use Rust to replace a Python project, for instance. If there is lower level code, high performances needs, things change.

Use of the term `unsafe` here referring to the keyword / "blocks" of code. Note that this statement would be nonsensical if talking about `unsafe` as a property of code, certainly it would be inconsistent with the later unsafe since later it's claimed that C code is not inherently "unsafe" (therefor Rust would not be inherently "unsafe").

Kibwen staying on that definition here:

> For replacing a Python project with Rust, unsafe blocks will comprise 0% of your code. For replacing a C project with Rust, unsafe blocks will comprise about 5% of your code.

Here is the switch:

> A big amount of C code does not do anything unsafe as well

Complete shift to "unsafe" as being a property of code, no longer talking about the keyword or about blocks of code. You can spot it by just rewriting the sentences to use Rust instead of C.

You can say:

"A big amount of 'unsafe' Rust code does not do anything unsafe as well" "It is also wrong to believe 100% of the unsafe Rust code is basically unsafe."

I think that makes this conflation of terms clear, because we're now talking about the properties of the code within an "unsafe" block or globally in C. Note how clear it is in these sentences that the term `unsafe` is being swapped, we can see this by referring to "rust in unsafe blocks" explicitly.

This is just a change of definitions partway through the conversation.

p.s. @Dang can you remove my rate limit? It's been years, I'm a good boy now :)


Except that's a dishonest interpretation especially for someone of antirez's experience.


IMO the example shows exactly that splitting code in smaller pieces is way better than just commenting it.

It makes it easier for dev's brain to parse the code e.g. to understand what code really does, while fattier but commented version makes it harder but tries to replace it with information about original coder's intentions. Which is maybe important too but not as important as code itself.

Not to forget that it's too easy to change code and leave comments obsolete.


Splitting example is way too much indirection, but capturing what the code does in the code itself is a preference for me. In any high level language don't know why the middleground wasn't explored:

    var hasSymbol = getSymbol(symbolName) != null
    var replacementPending = !alreadyReplaced.contains(symbolName)

    if(hasSymbol && replacementPending){
      alreadyReplaced.add(symbolName);
      stringToReplace = stringToReplace.replace("$" + symbolName, translate(symbolName));
    }

Technically this performs worse because you lose short-circuiting, but in performance-sensitive contexts code styling is less a concern anyways. And I also wouldn't rely on short-cutting alone to avoid a really expensive operation or side-effect: at some point someone will fail to notice it.


As for the comments, I would probably write it like this:

    /* Symbol actually exists */
    if ((NULL != getSymbol (symbolName)
    /* and still to be added */
    &&  (!alreadyReplaced.contains (symbolName))
    {
        ...
Although in this specific case the comments seem like noise to me.

> Technically this performs worse because you lose short-circuiting

Not really, because optimizing compilers are a thing, when this thing is parsed into SSA, there won't be a difference.


The compiler would have to determine that these are pure calls which I wouldn't rely on if performance actually matters

I just tested a recent gcc at -O2 with a contrived example using strings in an unordered_set: a look-up always occurs if not relying on short-circuiting


True, I missed that the calls likely traverse translation units, because this is not how I write code.


I like your version, and it's certainly possible to split too much without any practical result just for the dogma. But wrt the particular example I can see what's going on with a glance over the split part, while I have to focus at the commented one. Comments themselves can be helpful, but they can also be misleading cause code and coder's thoughts are not guaranteed to be in harmony all the time.


I do not agree; I think the example that is not split is clearer and does not need comments to explain it (the variable names are helpful, although even if local variables use only one letter it still seems like clearly enough; for variables that are not local to that function, it does help to have a more descriptive names to understand them better). Comments and splitting can both be helpful in some circumstances, but neither is helpful for this one.


I like the idea, but a CLI utility dependent on Node.js is not a good thing frankly.


I agree. Apart from having to use npm (and its package repository being susceptible to security issues), I’d prefer something a lot simpler. Could’ve been a Rust program or a Go program (a single executable) that could be built locally or installed (using several different methods and offering a choice).


That ship sailed some time ago.


TL;DR Fecal matter from Vindolanda fort dated around 90 AD contains eggs of intestinal worms, and traces of antibodies to Giardia duodenalis.

Nothing of this is really news as not having parasitic worms is very recent development, and getting G. duodenalis with unsanitized water continues to be common today. Healthy immune system can deal with it, as it could in 90 AD, hence antibodies.

The story is an obvious attempt to produce as much words from as few facts as possible, and the headline is meaningless.


Words have become the canvas ads are painted upon.


It's Chromium-based, sure. But it blocks ads and does it well


Not really. You can use Brave completely ignoring crypto side, and it won't complain.


the crypto stuff is completely opt-in.


It could be a reasonable opinion, but unfortunate choice of words made it angry (and FWIW snobbish) towards wrong people.


apparently those living in basements are a protected class? English depends on idioms, you know.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: