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

It turns out when you usher the dissenters out of the room, you hear a lot less dissent.

It’s not like they were summarily executed. They are much freer now outside of corporate control to speak their minds as they please.

The only real question is if anyone deems them worth listening to.


I mean, I follow them.

Their problem domain is pretty niche and they're pretty technical on it so I don't doubt their traction is mostly academics.


I remember this. He went on vacation and since he wasn't available to login, code search indexing went down for a bit.

I remember one that isn't in the list. Paraphrasing:

"Jeff Dean has access to the priority above P1. He's only used it once. It's why February only has 28 days."


I also remember that but I think it was attributed to someone else. The site hosted several (internally famous person) facts, but none of them were as famous as Jeff Dean.

It also doesn't mean he can actually do it. There's no obvious mechanism by which this can be enforced without a law from Congress, and it's not entirely clear such a law would be Constitutional (they'd have to base it in the right of the federal government to regulate interstate commerce if they're going to base it in anything, which presupposes an interstate market for shelter, and there's a reasonable argument to be made that maybe that's not a thing; housing is a local concern, and home prices in Topeka don't impact me, a buyer in Boston, if I want to live in Boston).

Human beings tend to enjoy patterns. Being pushed out of a pattern engages a lot of survival instincts.

Counterpoint: airing petty grievances on the Internet has proven, time and again, to be a remarkably effective way of getting the grievance addressed by an otherwise inaccessible third party.

Evidence: just about every post on Hacker News about Google breaking that eventually attracts a personal followup from a Googler who reads HN.

If you're angry about not getting paid and your client has given you control over part of their public-facing persona, I can definitely see using that control to make it known that you are in a state of disunion with them. I can even see it being done with no harm to your reputation because other future potential clients know they will be able to pay you.


Complete nonsense. The number of people that complain about things online is in the billions. It is not remarkably effective.

Small claims court has recovered more money than social media posts.

> I can definitely see using that control to make it known that you are in a state of disunion with them.

This is what separates social media parasites from professionals

> I can even see it being done with no harm to your reputation because other future potential clients know they will be able to pay you.

Ah yes, when I look for professionals, I search people with petty online disagreements first. That way I know they take their pennies serious!


What is "NIH" in this context? "Not invented here?"

Without doubt.

Ah, cool. I wasn't sure what "here" could possibly mean when we're talking about a language that was part of the web standard.

AFAIK, CSS syntax is inspired by the syntax of STTS, and STTS intentionally didn't use XML because it's a pain in the ass to hand-write and hand-read. I cannot argue with that assessment.

So CSS's syntax was based on an existing syntax, but it happened to be a syntax that didn't catch fire (which is so often the history of such things): it made plenty of sense at the time when the devs were looking at the options and maybe went "Well, we know XSLT and... It sucks and is hard to use, so what alternatives are there?" And STTS was apparently billed as an XSLT that human beings could write and read.


"I'm creating my own version of something so I don't have to rely on an external source."

https://en.wikipedia.org/wiki/Not_invented_here


I imagine it's a difficult language to ride the saddle-point of capability and performance. A declarative language like that seems like it'd be easy to design a feature that, as a side-effect of existing at all, slows rendering globally by 5%.

IMO, browsers should throw their hands up and say "if the developers want to do that, it's not our problem" more often. The argument that people would migrate to some browser with a faster CSS engine is a bad one for the cases where it's impossible to handle bad code with good performance.

There are too many good features that aren't being added to CSS because browsers don't want to slow down on bad sites.


If a feature can't be used without the site using it becoming one of those bad sites then it's not very useful (that was absolutely the case with `:has` until the Safari team figured out a trick to implement it performantly - after which the other browser promptly adopted the same trick and implemented the feature).

The thing that makes me most anxious about CSS is the lack of composability in the language itself (in the sense that every selector is more-or-less globally applicable). This is both a feature and a bug; it makes it much easier to style the entire site coherently, but at the same time much trickier to release individual modular components of UI as libraries and be able to drop them into the world for consumers to use without those consumers worrying about name collisions in a global symbol space of class names.

Web components have helped here, but in practice I don't ever use them; I either use one global style.css file (for personal projects that fit in my brain alone) or I use a system that supports local CSS classes via a compilation-and-name-mangling step.


`@layer` is another recent CSS feature that helps a lot in this space. (I think it's a more exciting feature than Web Components with Shadow DOM.) It makes it easier to stack multiple levels of stylesheets from most generic/system-wide to most specific. You can import 3rd party stylesheets not written for `@layer` in mind into specific named layers.

Layers take care of things you'd used to use `!important` to try to hack around much more systematically based on the specificity of the `@layer` the CSS is coming from. (More specific layers override more general ones as if they were more "!important".)

Layers don't entirely save you from naming conflicts or CSS specifiers that are too broad, but Dev Tools give you increasing ways to isolate which layer a conflict is coming from, at least, and that can help you decide on ways to fix the conflict.

I think `@layer` is a closer hint to what the "CSS-native" approach to "CSS modules" is going to start to be than just CSS class munging at compile time.


> in the sense that every selector is more-or-less globally applicable

If I understand what you're saying, that's more about how you use (or don't use) combinators.


Which wouldn't be so bad if it were a language built of small atomic values and transformations atop those values, like most programming languages. Then you don't have to care that, say, an entire new language for flexible layout exists because you've written your layout core and transformers on top of those atoms and it works fine.

It's not. It's a declarative language where the declared intents are extremely high-level and can interact in surprising ways (credit where it's due: modern CSS has almost all those interactions well-defined and considered; it was much worse when the answer to how two pieces that were independently designed interacted was "However the browser feels like they should interact"). As a result, to really be deeply fluent in it you have to keep abreast of design trends (dialog boxes! scroll state! custom corner shapes!), and that's not every programmer's cup of tea.

(To be fair: there are really good tradeoffs here. Especially around accessibility: a declarative language where high-level intent is the main element is much easier to answer questions around, say, "How will a screen reader interpret this" than a low-level atoms-and-transforms language. Othewise, your screen reader has to be able to guess things like whether that set of SVG commands and transforms is supposed to be the corner of a dialog box or a very fancy letter 'C').


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

Search: