Hacker Newsnew | past | comments | ask | show | jobs | submit | alex_smart's commentslogin

> No print publication on the planet does this

At least in India, most popular newspapers actually do this nowadays. Several full page ads including on the front page have become the norm.

It is mostly a function of how little the reader is willing to pay for content. When the price point is too low (which for online content is too low), publishers make their money by other means. It is not rocket science.


A lot of print publications used to do it, and many still do.

Print magazines make most of their money from ad sales, not subscriptions. A typical ratio is 60:40 ads vs editorial. Magazines like Vogue go >70% ads, and I'm fairly sure old issues of Byte and other computer magazines were in that ballpark.

The difference in print is that the ads are targeted, and even welcome. Many of the ads in old computer magazines were price lists and mini-brochures, and pre-web that was the only way to get that information to customers.


You also have the paid articles where 'journalist' interview some company ceo or influencer that happened to have given them a substantial amount of money.

It’s worth nothing, to the point it makes people wonder why you even volunteer that information.


I know Jenkins is not fashionable these days, but the warnings-ng plugin is perfect for solving this in a tool-independent way. :chefskiss:

The way it works is - the underlying linter tool flags all the warnings, and the plugin helps you keep track of when any particular issue was introduced. You can add a quality gate to fail the build if any new issue was added in a merge request.


If that is the case, why did the trial absolve him of all crimes and why did get consecrated as a bishop by the king of Spain?


I'm guessing that his 1st person description of the human sacrifices carried out by the Mayan and establishing a connection between those and the need to erase the culture that enabled them and that he - wrongly or not, we can't know anymore - saw as enabled by those books had some weight there...

The Spanish crown didn't have in mind to destroy other people books, but then again, they also didn't have in mind that they casually, recurrently and nonchalantly offered human sacrifices to their "gods".

Probably the order of priorities for the Spanish crown was books < human sacrifices.

Strange times, those, eh?


It is also worth noting that he was absolved of all crimes and eventually consecrated as a bishop.


India’s problems have nothing to do with population and everything to do with complete collapse of all government institutions.


> Browser memories let ChatGPT remember useful details from your web browsing to provide better responses and suggestions, while maintaining privacy and user control. Users can opt-in during setup or in Settings > Personalization > Reference browser memories.

> As you browse in Atlas, web content is summarized on our servers. We apply safety and sensitive data filters that are designed to keep out personally identifiable information (like government IDs, SSNs, bank account numbers, online credentials, account recovery content, and addresses), and private data like medical records and financial information. We block summaries altogether on certain sensitive websites (like adult sites).

So the actual content of every page you visit is sent to ChatGPT servers. That is WAY more invasive than anything Chrome does afaik.


From the article, individual video segments were 2-6 MB in size and SQS and Kinesis have a 1MB limit for individual records so they couldn’t have used either service directly. At least not without breaking their segments into even smaller chunks.


You're right, I didn't pay attention there. Still seems that there a many solutions better suited than S3. Probably a classic case of "We need an MVP fast, let's optimize later".


Agreed, but this isn't always bad. Optimizing early with unclear requirements can kill time, which at an early stage is just delaying product launch.

Migrate/optimize later when you're actually reaching scale is a perfectly reasonable approach.

In fact, if you have a decent abstraction or standard in place (e.g. S3 API or repository pattern) you can swap it out in place.


It's an omz thing.


Why so much hate for modules? They seem to be almost universally disliked by everyone on this thread and I don't understand why.


Modules are weird. In Java world there exists consensus on dependency management via Maven-style repositories (Maven Central is the primary distribution channel) and all tools support it. You handle your dependency tree outside of your code and just import packages from libraries available on classpath. It’s possible to continue doing that that without using modules, so the case for using them is still unclear to many people. Where the actual hate may have come from is an old story with migration from Java 8 to Java 9, where modules hidden the access to certain internal APIs, breaking some libraries which relied on them, making that migration painful. Today their value is probably 0/10, but there’s no reason to hate.


The use case for modules is to have a unit of organizing code (deciding what is visible and accessible to who) at a higher level of abstraction than a package. It allows library authors to be much more explicit about what is the public API of their library.

Ever wrote "List" in Intellij and instead of importing "java.util.List" Intellij prompts you to choose between like twenty different options from all the libraries you have included in your classpath that have implemented a public class named "List"? Most likely 90% of the libraries did not even want to expose their internal "List" class to the world like that but they got leaked into your classpath just because java didn't have a way to limit visibility of classes beyond packages.


Yes, but at what cost? Many libraries can solve visibility problem with package level visibility. And modules cost a lot: dependency management was a non-goal for them, so anyone who wants to use module path instead of classpath, has to declare dependencies twice. It was a big mistake not to integrate modules with a de facto standard of Maven.


> Many libraries can solve visibility problem with package level visibility

The only way of doing this would be to put all classes in the same package. Any nontrivial library would have hundreds of classes. How is that a practical solution?


Well designed non-trivial libraries should be open for extension and thus should not hide most of the implementation details, leaving the risk of too tight coupling to users. E.g. if I‘m not 100% satisfied with some feature of a library, I should be able to create a slightly modified copy of implementation of some class, reusing all internal utilities, without forking it. So no, modules as means to reduce visibility are not as cool as you think. And given the specific example of the list, it’s possible to filter out irrelevant suggestions for auto-complete or auto-import in IDE settings.


So goalpost moved from “libraries can solve visibility problem with package level visibility” to “libraries should not try to solve the visibility problem because it is not even a problem at all”?


No, it has not. If you are software engineer you should understand the difference between what I actually said and what you quote from logical perspective. I said "many libraries", not "all". For majority of use cases package level visibility is sufficient and is more granular. Yes, many libraries have already migrated and include module-info, but they still are fully compatible with classpath and actively use more classic mechanisms for visibility control. How many projects do use modules? I haven't seen a single one yet.


To add to this, modules make it easy for external tools like GraalVM native-image to produce self-contained binaries that are smaller compared to the standard practice of distributing fat binaries (i.e. large JARs).


Directly or indirectly many (or most) projects ended up depending on something which was using an unsupported backdoor API because it provided a marginally useful capability. The module system restricted access to these APIs and everything stopped working, unless you added some magic command line arguments to gain access again.

So for most people, the initial impression of modules is negative, and then they just decided to rule the feature out completely. This has created a sea of useless criticism, and any constructive criticism is hardly observed. Improvements to module configuration (combine it with the classpath), would go a long way towards making modules "just work" without the naysayers getting in the way.


>Directly or indirectly many (or most) projects ended up depending on something which was using an unsupported backdoor API because it provided a marginally useful capability. The module system restricted access to these APIs and everything stopped working, unless you added some magic command line arguments to gain access again.

Is it even theoretically possible for a project like this to not run into these kind of issues? Like literally the project's goal is to enable library authors to be more explicit about their public API. So breaking use cases that use unsupported backdoor APIs very much seems like a predictable and expected result?


Early on there were things you couldn't do without using com.sun.* classes, so people got used to doing that. It's been many years since that was all fixed, though.


> It's been many years since that was all fixed, though.

AFAIK, there's still no replacement for sun.misc.Signal and sun.misc.SignalHandler, so I think "that was all fixed" is false.


They are only useful for a small group of people, and their addition broke/complicated lots of people's builds in non-trivial ways.


I have a company with ~20 developers only. And already I have an ArchUnit test stating that public classes within "com.companyname.module.somepackage.internal" cannot be used anywhere outside "com.companyname.module.somepackage".

Surely almost everyone who has worked in a large enough codebase and thought about large-scale modularity can see the use case for a unit of abstraction in java higher than a package?


Yes, in theory they are good. In practice they cause enormous amounts of pain and work for library maintainers with little benefit to them (often only downsides). So, many libraries don’t support them and they are very hard to adopt incrementally. I tried to convert a library I maintain to be a module and it was weeks of work which I then gave up and reverted. As one library author said to me “JPMS is for the JDK itself, ignore it in user code”.

Given how much of a coach and horses modules drove through backwards compatibility it also kind of gives the lie to the idea that that explains why so many other language features are so poorly designed.


They're fine, but they're incompatible with building fat-jars ro have single file deployment and dead to me because of that. Spring does some ugly jar-in-jar custom classloader stuff which I hate out of principle because it's spring.

Oracle hates that people build fat-jars and refuses to adress the huge benefit of single file deployables.


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

Search: