MurphyA/hacker-news huggingface dataset:
by Lanedo | 2025-07-22 18:54:45+00:00
It is not too surprising that many HTML or JS based watermarking schemes are very easy to remove, some even via a script. For watermarking schemes to be effective, the watermark payload needs to be embedded in the content. Here's one approach that works for images: https://github.com/tim-janik/imagewmark/

Another that works for audio content is: https://github.com/swesterfeld/audiowmark

Incidentally, the latter also supports applying the watermark payload to HLS segments.
by godelski | 2025-07-22 18:55:22+00:00
I'm having a different experience.

Aquarium: 60fps until 20k fish, where I hit 50fps. 30k at 34fps Blobs: maxed out resolution and number of blobs, still 60fps Field: 60fps at "lots" Fishtank: 60fps with 1k fish and sharks Spacerocks: 60fps on lots Sprites: 60fps on 10k

System: - FF 140.0.4 - Kernel: 6.12.37 - CPU: AMD Ryzen 9 5900X - NVIDIA 4080S (575.64) - 186 tabs open (mostly YouTube. >20 active)

I get a bit worse on my M2 Macbook Air (128 tabs), but pretty close results.

Maybe you need to open more tabs?
by NoGravitas | 2025-07-22 18:55:39+00:00
If you use a true proportional font, you give up aligning code elements other than basic indentation. For most people, that's too much to give up.

I do like quasi-proportional fonts like Iosevka Aile, where very wide or very narrow characters are allowed something more like their natural widths. I think, though I'm not sure, that the widths are worked out so that "Wl" (wide + narrow) is the same length as "xx" (2 x normal), for example. My experience using Iosevka Aile in Emacs is that things usually-but-not-always align like they're supposed to, which is a better trade-off than fully proportional fonts.
by zahlman | 2025-07-22 18:56:12+00:00
If you indefinitely grow the collection of packages that you have in use in permanent virtual environments, then yes your disk usage will and should grow indefinitely anyway.

There's not much point recycling contents from a package cache unless you currently don't have a venv using that package and also don't reasonably expect to have one in the near future.

And I'm saying this as the guy complaining all the time about things like the size of Numpy wheels.
by bayindirh | 2025-07-22 18:56:20+00:00
Oh, OK. I asked, because sometimes people doesn't like a certain aspect of a font and can't stand it, and need to switch. Also, I'm also the exact opposite of you. I can use a font I like for a decade without getting tired of it. Same for a good color scheme for my terminals / IDE.

So it was a genuine curiosity of me. Sorry if it sounded rude or accusatory or similar.
by nikkwong | 2025-07-22 18:56:28+00:00
What about the components on Blendful[0]? I agree that everything themed with Tailwind looks the same—but I think it's because the starter templates that are popularly used basically have the same look and feel, which is what this site is trying to escape from. Tailwind also has it's predefined color schemes, which enhance the stylistic lock-in.

Of course it's possible to break from the fray with Tailwind, but—I think generally speaking, it's fairly easy to build something that looks decently good, decently easy with Tailwind; and that's why people like it.

[0]: https://www.blendful.com
by jmuguy | 2025-07-22 18:56:58+00:00
It would be helpful to link to the Tailwind section about duplication https://tailwindcss.com/docs/styling-with-utility-classes#us...

As someone that used Tailwind for years at this point, you're right about why its so popular. To me it was just a better version of Bootstrap. Its defaults look nice, its color choices are nice. I would also mention that their docs are top notch and Tailwind UI makes it really to just copy and paste some decent looking basic components.

As someone that spends most of their time on backend, I just don't really care that much about CSS. I think that's something that's lost with all the bikeshedding about it to me its similar to higher level language vs something closer to the metal. So when people say "just use CSS" its like someone telling me I should write in C rather than Ruby. No thanks, I don't have to - why should I?
by xp84 | 2025-07-22 18:56:59+00:00
They actually knew how to code back then. I fancy myself someone who cares about performance and take a great effort to not do wasteful stupidity like those CSS animations for a decorative element, but compared to 80s programmers, I'm actually a complete fraud, because I do everything in interpreted languages that do 10,000 things behind the scenes for every line of code I write. I could never make an Atari computer or NES work.

There are of course a few who do, they all either work on embedded systems or making homebrew for retro computers. So much respect for that level of skill!
by kentlyons | 2025-07-22 18:57:31+00:00
For an overview of the psychology of how people understand things (and don't!) I highly recommend this paper. It highlights a lot of ways our brains take shortcuts in terms of actually understanding things. And that facts play only one particular role amongst many other factors.

Keil, F. C. (2006). Explanation and understanding. Annu. Rev. Psychol., 57(1), 227-254. https://pmc.ncbi.nlm.nih.gov/articles/PMC3034737/pdf/nihms26...
by davidmartinsu | 2025-07-22 18:57:39+00:00
Would love your feedback!

I built lovableprompts.app to help makers go from rough idea to Lovable prompt instantly, so they don’t get stuck at the start.

If you’ve built anything with vibe coding tools (like Lovable, Cursor, Bolt…), what’s the hardest part for you when starting a new project?

Is it writing the first prompt? Structuring the idea? Knowing what to build next? We’d love to hear what slows you down the most—so we can improve the tool.
by wredcoll | 2025-07-22 18:58:12+00:00
> Compression culture is refusing to do any work, demanding instead a mere summary of calculus or a novel

This sounds rather tautological. My intent was to give an example of compression that is an obvious good. If we re-define compression to exclude that, pretty quickly we've just reduced the definition to compression = bad things. Bad things are, you know, bad, by definition, so this gives us no guidance for our future decisions.

> more than reading a novel is the compression of writing the novel

I was just having a conversation over in the jutjusu post about how and why you make commits, when you squash them, when you reorder them, and so on.

What is a "pull request" if not a compression of the work I did to develop the required change? I even include a summary at the top so people don't have to read all of the actual code.
by ajkjk | 2025-07-22 18:58:35+00:00
This contempt is misplaced. It is obviously better in one sense to generate an animation on the fly using a short program instead of encoded its literal pixels in a much larger amount of data even after compression.

The ecosystem has largely moved towards that abstraction because it scales better for virtually every purpose, particularly for rendering in different formats.

Now web developers are brought up inside the abstraction and so don't even think to go outside of it by default. Which would be fine, except that the abstraction isn't designed very well: the browser is massively underpowered at building applications in an foolproof way. Part of that is historical cruft and part of it is (imo) a lack of vision--there should have been a (not-backwards-compatible) replacement for html/js/css years ago which solves its fundamental abstraction problems.

But anyway the present is still much better than the past. You must be nostalgic for the era when all monitors were the same size and websites weren't expected to do anything without reloading the page.
by vander_elst | 2025-07-22 18:59:16+00:00
I think the workflow in JJ is a bit different in this case, you can try to have a base commit `jj new -m 'base'`, then create an anonymous commit on top `jj new`, then make some changes in the anonymous commit and when you are ready to send out a PR/MR you squash `jj squash` or split `jj split` and squash what you need in the base commit.
by kevincox | 2025-07-22 18:59:19+00:00
Compatibility bugs are rare but definitely occur. If a key component of your workflow has bugs it can be hugely inconvenient. For example Slack Huddles blocks Firefox Firefox, if your team uses them regularly it is a big productivity loss.

It is also very annoying when the first step of every troubleshooting process is "Try using Google Chrome" and if it works the consider your problem solved.
by topaz0 | 2025-07-22 18:59:24+00:00
I'm old enough to ride with downtube shifters too, have for close to 20 years, do so roughly every day including for the past several years in a hilly city where I shift a lot, and I could not stand the brief stint (~year) I did with slow, unwieldy brake-lever shifters. I had to adjust those way more often and more precisely than I adjust my friction shifters, too.
by jack_h | 2025-07-22 18:59:59+00:00
As I’ve grown older and witnessed history in action I’ve begun to understand that reality is much, much more complicated than the simple narratives of history we lean on as a society.

Just think of how many different competing narratives are currently in existence surrounding this tumultuous point in history and realize that at some point some of these narratives will become dominant. Over time as the events leave social memory the key conclusions will likely be remembered but a lot of the reasoning behind them will not. As it exits living memory most of the nuance and context is lost. Over time we may change the narrative by reconsidering aspects that were forgotten, recontextualizing events based on modern concepts and concerns, misunderstanding what happened, or even surreptitiously “modifying” what happened for political ends. Or to put it more plainly, history is written by the victors and can be rewritten as time goes on and the victors change.
by honorable_coder | 2025-07-22 19:00:19+00:00
and managed from among the application servers that are greedily trying to store/retrieve this state? Not to mention you'll have to be in the business of defining, updating and managing the schema, ensuring that upgrades to the db don't break the application servers, etc, etc. The proxy server is the right design decision if you are truly trying to build something production worthy and you want it to scale.
by Varelion | 2025-07-22 19:00:28+00:00
I aspire to be one who cares about performance, but I would like to address:

"I do everything in interpreted languages that do 10,000 things behind the scenes for every line of code I write."

Is it even possible to create a modern website, or product, without this? How long would the development cycle take, if everything is to be written in C?

I'd wager that replicating a "minimalist styling" for a react-based website with a dozen or so components would take dozens of times longer to produce.
by GoldenMonkey | 2025-07-22 19:00:45+00:00
If you want to stay as a software developer. Lean into AI. As per bill gates. Lean into AI Engineering. Develop the models. This will be an in demand skill for 100 years.

Get that AI Engineering master's degree. Learn the math, the statistics, the models.

https://www.indiatoday.in/technology/news/story/bill-gates-s...
by wredcoll | 2025-07-22 19:00:51+00:00
50 years ago, people, on average, knew a lot more about maintaining cars. They had to since they broke down far more often.

30 years ago, people knew a lot more about maintaining personal computers.

Knowing more things is always good, but there's finite time in which to learn things so you have to choose between them, as you say, it seems pretty rational to select the more valuable ones.
by cyberax | 2025-07-22 19:01:07+00:00
Perhaps you shouldn't use ChatGPT without checking sources?

The purported 2025 number is actually: "Population for City of Austin Full and Limited Purpose Boundaries, 2023".

I indicated that the sources are different. And the conclusion at the very best is that Austin population had been flat for years. It's now growing back, and the prices will react with a lag of 2-3 years.
by xp84 | 2025-07-22 19:01:23+00:00
Citation needed for 'GIFs don't scale well' (in terms of dimensions. They certainly don't scale well when abused as idiotic versions of videos.)

Is this the frontend developer's version of "Postgres doesn't scale. Mongo is Webscale"?

Here's a 640x640 GIF. Scales just fine for me, to half-size or to 100px. I'm using a "Retina" screen. https://cdn-icons-gif.flaticon.com/6172/6172533.gif
by sfink | 2025-07-22 19:01:24+00:00
> So my comment is also in that context of using the same tag for things of wildly different importance and urgency.

Ah, ok. That's fair. I agree that the example comments ought to be considered different categories. That first one is a TODO that is for doing.

> And that would drive me to drink.

Is that a bad thing? It depends on what you're drinking.
by quibono | 2025-07-22 19:01:30+00:00
> he forced starvation to death upon Ukrainian population to subjugate them

I don't mean to defend the Soviet regime here but in the interest of discussion: the "to subjugate them" aspect is still somewhat contested [0]. I'm not sure whether it would even class as genocide according to the UN's own criteria.

From my understanding: the famine was definitely man-made, the question is more about whether it was intentional.

[0] https://en.wikipedia.org/wiki/Holodomor_genocide_question
by NickC25 | 2025-07-22 19:01:35+00:00
>As a matter of principle it just isn't possible to run a democracy where the government, in its official capacity, is working to shape the narrative.

You're not that naive...come on.

Of course it's possible to run a democracy when the government is working to shape the narrative. Every government regardless of their type tries to control narratives. That's sort of their whole thing....
by Timwi | 2025-07-22 19:01:38+00:00
It was not. A lot of the questions that would now be rejected for “subjectivity” were initially allowed, then at some point migrated to a separate instance, called “programmers.stackexchange.com” and deleted from the main site. Of course, over time, even that website lost the community and was later renamed to https://softwareengineering.stackexchange.com/ and became the same kind of hostile hellhole.

The fact that you added “for good reason” implies that you agree with the sentiment that the website shouldn't have a community that socializes, so I'm not surprised that you tuned it out and didn't notice it being driven off the website. From your perspective this may be a case of “good riddance”, but for many including myself, it was quite sad (and still is).
by wjholden | 2025-07-22 19:02:15+00:00
To the author: I love this idea, but your blog has two problems that made it less enjoyable for me to read. The first is the pull quotes. I find them confusing and unnecessary, especially when they repeat sentences in the preceding paragraph. The second is that I got stuck on the moving graphs while scrolling on my phone. I suggest making them smaller with a different background color or simply make them static images.
by kevincox | 2025-07-22 19:02:26+00:00
Bookmarks definitely sync with Firefox sync. I have the same bookmarks on all of my devices.

Extension settings can sync, I don't know exactly if it is opt-in or opt-out but some extensions do sync on desktop. The mobile situation is definitely different, mobile doesn't sync to desktop. I don't know if different mobile devices sync with each other (I only have one).
by dgb23 | 2025-07-22 19:02:38+00:00
If he is close and trusts you then this might work as well for you (has for me):

Don't start discussions with a concrete (recent) topic, but focus on fundamental things: Values, hopes, fears... Strengthen their argument. Tell them how you feel and why instead of making judgements.

The topical stuff is always under attack through misinformation, social media spam and propaganda. It's far more effective to honestly nurture human connection and focusing on core values. Without the fog of BS, people can see what's happening more easily themselves.
by artembugara | 2025-07-22 19:03:04+00:00
An absolute legend.

I missed my chance to listen to Black Sabbath in 2015 or 2016 during the Rock am Ring because the last day was cancelled.

I'm happy for what Ozzy did in his sixties and seventies, and what a way to go.

And let's not forget, the most likely reason he's been able to get this far with his lifestyle post-80s and 90s is Sharon
by toomuchtodo | 2025-07-22 19:03:41+00:00
Buc-ees have Superchargers, Tesla has had a partnership with them since 2021.

https://buc-ees.com/locations/?_sft_wpsl_store_category=tesl...

https://teslamotorsclub.com/tmc/threads/tesla-partnership-wi...

(love buc-ees, charge there whenever I can)
by dmitrygr | 2025-07-22 19:03:52+00:00
> cost of maintaining the iOS platform should be covered by the cost of selling the hardware

Let's get right to the crux of the issue here. Who are you to decide how apple should run their business and how they should recoup their R&D investments? A business is free to charge what it wants for what it makes. You are free to buy or not.

Should razors also be priced higher to be self-funding so that blades can be cheaper? Should airlines change their pricing structure? Who gave you a right to dictate how a business you do not own is run?
by like_any_other | 2025-07-22 19:04:15+00:00
> Say what you want about the previous era of corporate controlled news media, at least the journalists in that era tried to present the relevant facts to the viewer.

If you think this reduced bias, you couldn't be more wrong - it only made the bias harder to debunk. Deciding which facts are "relevant" is one easy way to bias reporting, but the much easier, much more effective way is deciding which stories are "relevant". Journalists have their own convictions and causes, motivating which incidents they cast as isolated and random, and get buried in the news, and which are part of a wider trend, a "conversation that we as a nation must have", etc., getting front-page treatment.

A typical example: And third, the failure of its findings to attract much notice, at least so far, suggests that scholars, medical institutions and members of the media are applying double standards to such studies. - https://www.economist.com/united-states/2024/10/27/the-data-... (unpaywalled: https://archive.md/Mwjb4)
by 0xbadcafebee | 2025-07-22 19:04:28+00:00
"Belief" doesn't actually mean "to believe", as in "I think A is true and B is false". "Belief" is the faith, trust, or alignment with in an idea planted in one's head. It has nothing to do with factual or true information. You can simultaneously know something is untrue, and have belief in it.

You can't change minds because "the mind" (in this context) is the personal identity and ego of an individual, of which their "tribe" is a huge part. Any information that conflicts with the narrative of their identity or tribe will be rejected, because it threatens their identity or tribe. To question one's identity causes a crisis which most people are not capable of dealing with. The more you attack those things, the stronger they will defend them.

The "culture war" is literally just that: one culture attacking another culture on its fundamental nature. This is like Christians vs Muslims. The only way to "win" that war is complete destruction. If you want the war to end without that, you're gonna have to stop fighting and come to some kind of truce.
by nikkwong | 2025-07-22 19:05:00+00:00
100% this. People have all of these highfalutin arguments about tailwind being the wrong abstraction/non idiomatic etc. But, as someone who writes a lot of CSS—not having to jump back and forth between a CSS file and a HTML file is a game changer. CSS files are just another thing to maintain, and a painful one at that, since CSS is mostly organized relatively arbitrarily. This is why Tailwind won; reducing the surface that developers have to maintain is a big deal.

There are simply so many decisions when choosing how to implement CSS in a project—where should we put the files, should they be component based or global, what preprocessor if any, etc etc. With Tailwind, you don't have to worry about any of that.
by bluetidepro | 2025-07-22 19:05:08+00:00
FWIW, no source on the cause yet. Only thing we know is from their official statement here:

> It is with more sadness than mere words can convey that we have to report that our beloved Ozzy Osbourne has passed away this morning. He was with his family and surrounded by love. We ask everyone to respect our family privacy at this time. Sharon, Jack, Kelly, Aimee and Louis

https://xcancel.com/OzzyOsbourne/status/1947731442622206170
by kennywinker | 2025-07-22 19:05:09+00:00
> Russia attacks Ukraine in an emperialistic power move, no one suggest Russia shouldn't exist.

But people do suggest russia should give back the territory they’ve taken by force. That’s most (if not all depending on your take) of israel.

Historically - in my opinion in the wake of ww2 a jewish state should have been carved out of germany, rather than england giving away land that wasn’t theirs to give away. So in a sense Germany as we know it should have ceased to exist.

Just as now, i believe for there to be peace in the region israel as we know it must cease to exist. Either by radically changing and becoming a place where palestinians and jews live together in peace and shared governance, or by giving up a huge chunk of land they stole in ‘48 to create two states.

Opinions, obviously.
by shmolyneaux | 2025-07-22 19:05:09+00:00
I don't really do much in the web ecosystem, but I'm surprised how many people have a strong dislike for tailwind. I've had a lot of success using it.

I'm really suspicious about the performance concerns brought up in the article. Does the author think that long strings are really such a huge issue for the size of the JS bundle or processing time in the browser?

From my experience it's much easier to refactor the styling of a page using tailwind than modifying CSS. Needing to name a bunch of classes in HTML to reference in CSS adds a lot of obfuscation and it can be difficult to come up with those names. When the structure of the HTML changes the CSS inevitably breaks. I find that it's easier to keep the styling working when using tailwind.

I think that the value of keeping styling DRY is overblown. The author gives an example of some tabs that all use `font-medium` and how bad it is to need to modify all the uses at once. This seems like a non-issue to me. If you see the web page you would immediately see the issue if you forgot to change anything. Alternatively, you can still use `@apply` and classes if you don't want to repeat yourself. Even further you probably want to create reusable components anyways.

Tailwind is very easy to debug. I've never had an issue understanding why styling wasn't working when using it. In CSS I found that getting the styling right was a constant struggle.

The author mentions the issue of setting the text to red and blue in the same class attribute. He compared it to using `!important` in CSS, which is so far from the truth. You can immediately see the issue if the color isn't what you want. Inspecting the element in the browser would immediately show you that you set the text to multiple colors.

Tailwind solves a bunch of problems for me. Components are more self-contained. The class names are much easier to remember that the underlying CSS. The set of attributes you can use are focused to a small set of usable features. Animations are much easier. Responsive designs are easier to create. Flexbox (the most useful part of CSS) is easier to use. I work with a number of older developers (very smart folks that just haven't done web development) and I have a much much easier time getting them proficient with tailwind than CSS.

I strongly believe that tailwind is better for individuals, better for teams, better for beginners, easier to set up, and easier to maintain. If you're already a CSS expert or if you have an existing design system I can imagine that you wouldn't want to pick up tailwind. But for most websites and most teams I expect tailwind is a great option.