HN user

jacobr

5,743 karma

specialization is for insects

jacob@jacobrask.net https://github.com/jacobrask http://twitter.com/jacobrask

Gothenburg, Sweden.

Posts163
Comments496
View on HN
www.thelettersfromleo.com 8mo ago

From building websites to playing Bartók, Pope Leo XIV is reimagining the papacy

jacobr
1pts0
github.com 1y ago

Add PUT, PATCH, and DELETE to form method attribute

jacobr
4pts1
www.nature.com 1y ago

Evidence of dark oxygen production at the abyssal seafloor

jacobr
2pts0
solar.lowtechmagazine.com 2y ago

How to Downsize a Transport Network: The Chinese Wheelbarrow

jacobr
3pts0
en.wikipedia.org 2y ago

Disappearing Polymorph

jacobr
2pts0
thedailywtf.com 2y ago

Styling with Classy CSS (2006)

jacobr
123pts67
www.figma.com 2y ago

Harmony: Accessible UI Color Palette

jacobr
2pts0
en.wikipedia.org 3y ago

Death of Garry Hoy

jacobr
1pts0
emnudge.dev 3y ago

React Is Holding Me Hostage – A love and hate relationship

jacobr
2pts0
seldo.com 3y ago

The case for frameworks

jacobr
154pts88
en.wikipedia.org 3y ago

Therac-25

jacobr
7pts0
www.smithsonianmag.com 3y ago

In 1945, a Japanese Balloon Bomb Killed Six Americans in Oregon (2019)

jacobr
4pts1
www.w3.org 3y ago

CSS Nesting

jacobr
4pts2
techcrunch.com 3y ago

How Volvo is leaning on software to drive its next great safety revolution

jacobr
11pts2
enhance.dev 3y ago

Enhance – a web standards-based HTML framework

jacobr
3pts0
www.autoregex.xyz 4y ago

English to RegEx with Natural Language Processing

jacobr
6pts3
defensivecss.dev 4y ago

Defensive CSS

jacobr
377pts70
gist.github.com 4y ago

In defense of blocks for local scopes

jacobr
27pts18
libyear.com 4y ago

Libyear – a simple measure of software dependency freshness

jacobr
1pts0
github.com 4y ago

Decorators reach ECMAScript Stage 3

jacobr
4pts1
twitter.com 4y ago

How Europe is territorialized by Big Tech

jacobr
6pts0
www.sciencedirect.com 4y ago

Let’s agree about nice leaders

jacobr
1pts1
www.aeaweb.org 4y ago

Age and high-growth entrepreneurship

jacobr
148pts68
80000hours.org 4y ago

You have 80k hours in your career

jacobr
3pts0
simonhearne.com 5y ago

When network is faster than cache (2020)

jacobr
1pts0
jasonformat.com 5y ago

Islands Architecture

jacobr
3pts0
www.cnx-software.com 6y ago

ONiO.zero offers a RISC-V Microcontroller that runs without battery

jacobr
19pts7
www.npr.org 6y ago

Long-term stays are a growing part of Airbnb’s business

jacobr
1pts0
www.ekioh.com 6y ago

Full Google Mail in a clean room browser

jacobr
2pts0
github.com 6y ago

ES Modules Unflagged in Node.js

jacobr
4pts0

Any article about rebase is incomplete without the mention of `git commit --fixup fb2f677`. When committing you usually already know which commit you’re “fixing” so you specify that.

Then you run `git rebase -i --autosquash origin/main` instead and the commits are already in the right order.

"The concrete description of what is going on here is spread atom-thin across several websites, all of which expect you to know the terminology. Each of these websites provides you with a tiny piece of the puzzle and you are expected to combine it together on your own."

Oh how I unironically love these types of quests.

The "Cheap" Web 3 years ago

There's a shift though, just the last couple of years. Today all browsers support native modals with the dialog element, accordions with details/summary, everything but Firefox supports popovers (dropdowns, tooltips, menus, etc) in plain HTML.

I'd honestly love to be a beginner again learning modern HTML and CSS today, it's not bad at all.

Yes, the biggest drawback of Tailwind is React. Or specifically, relying on components as the mechanism for style composition.

Unfortunately none of that works with the feature in TFA because it’s not supported by Declarative Shadow DOM.

I hear you. I think Shadow DOM is very useful for a handful of roots on your page, encapsulating third-party widgets or DOM-heavy components like a nested navigation.

Custom Elements on the other hand are useful for attaching behavior to HTML, sort of like jQuery plugins.

Not at all sold on the frameworks promoting using Shadow DOM for every button or whatnot.

For example, encapsulating a third party widget, cookie banner or your main navigation. That way any CSS added inside the shadow DOM only affects those elements - you can safely write selectors like `h1` or `button` and they’ll only match what’s inside that same shadow root boundary.

Almost all examples of Shadow DOM uses Custom Elements, but that’s not required. I think this conflation harms adoption of Shadow DOM.

As an example of what you can use the Shadow DOM for - it works fine as the node to render a React app/component in. So if you need a couple of React components on a page to not affect each others style, you can do React.createRoot(myShadowRoot) and they’re fully encapsulated.

Isn't a shared BFF an oxymoron, considering that you typically build a BFF specifically for one client and its needs? Maybe you just have a backend :)

Tailwind and CSS in JS libraries that pre-compile to Atomic CSS solve the problems of bloated CSS files full of duplicated rules.

With Atomic CSS, the growth of CSS is tied to the number of unique styles used, not the amount of features developers are shipping.

For example, it’s common to reuse certain properties like flex everywhere. Rather than have these duplicated in stylesheets under different class names, we only pay that cost once. This is true for each property/value combination.

This is true in theory and when you stick to the very basic stateless utility classes. Check the CSS of any larger site using Tailwind and search for a CSS rule, you will see things like

    .opacity-100 {
        opacity:1
    }
    .hover\:opacity-100:hover {
        opacity:1
    }
    .group\:focus-within .group-focus-within\:opacity-100 {
        opacity:1
    }
 
and that's not counting media queries, dark mode, etc. In practice, the global CSS file that you load for every single page does grow for every feature you ship, since you use more of Tailwind.
Zero Trust SIM 4 years ago

It's definitely a trade-off between privacy/liberty and other benefits.

The spread of standardised time and clocks had a significant negative impact on individual liberty, and people would even sabotage clocks. They failed of course, as will the opposition against the cashless society, because cash is so much worse in most aspects.

If it's something you care a lot about, rather than going the way of the Luddites and opposing eSIM and electronic payments I would suggest focusing on using technology to find new solutions to the privacy/liberty problems.

Same background here.

I don’t believe in quitting cold turkey and I don’t think there’s anything available to fully replace all aspects of React. We’re instead gradually transitioning our internal ecosystem to use less React-specific stuff, positioning us to migrate (or not) in the next few years.

- Move from CSS-in-JS to vanilla CSS

- Avoid React-specific libraries, both developing them internally or when selecting third-party deps

- Keep business logic out of React components whenever possible

Etc

I think that would start to create some social nudging functions (i.e. payment for Healthcare) while being a bit more fair (i.e. service quality sometimes proportional to money put in).

An interesting definition of “fair” - in Sweden the principle is equal health care prioritized according to who needs or benefits most from the care, not how much you pay. If you see it from that point of view, tax is not a transaction where you pay for the services you receive. You pay for the society you receive, which includes people in general being more healthy, not just yourself.

If your goal is to increase RTK adoption, rather than being reactively defensive whenever someone writes something remotely negative about Redux, may I suggest focusing on the highly positive feedback you mention? Writing up case studies on how RTK helped solve concrete problems, instead of being summoned anytime someone is wrong about Redux on the internet…

Anyone judging Redux differently if it has a 15% or 45% market share is making decisions based on the wrong parameters anyway.

This is built on the Lexical framework, which is exactly what you suggest - vanilla JS with optional React bindings. OP's project is an additional React-specific layer on top of Lexical, and since it's concerned with rendering the editor UI it makes sense that it's UI rendering library specific.

Deno raises $21M 4 years ago

From my horizon the most significant adoption has been Netlify edge functions. So not exactly ship jumping, but adjacent and growing spaces.

Deno raises $21M 4 years ago

Another developer here who’s been around for the tech you mention.

The evolution has been 2 steps forward but 1 step back. It’s how many complex systems evolve and it’s fine. Just because you see that some problems/solutions resemble what you saw 10 years ago doesn’t mean nothing was improved along the way.