frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Synadia and TigerBeetle Commit $512k USD to the Zig Software Foundation

https://www.synadia.com/blog/synadia-tigerbeetle-zig-foundation-pledge
193•derekcollison•2h ago•38 comments

Making a micro Linux distro (2023)

https://popovicu.com/posts/making-a-micro-linux-distro/
64•turrini•3h ago•17 comments

React vs. Backbone in 2025

https://backbonenotbad.hyperclay.com/
184•mjsu•6h ago•133 comments

Windows 10 Deadline Boosts Mac Sales

https://www.macrumors.com/2025/10/25/windows-10-deadline-boosts-mac-sales/
30•akyuu•35m ago•3 comments

The future of Python web services looks GIL-free

https://blog.baro.dev/p/the-future-of-python-web-services-looks-gil-free
69•gi0baro-dev•6d ago•23 comments

Unlocking free WiFi on British Airways

https://www.saxrag.com/tech/reversing/2025/06/01/BAWiFi.html
446•vinhnx•1d ago•104 comments

The Swift SDK for Android

https://www.swift.org/blog/nightly-swift-sdk-for-android/
609•gok•19h ago•241 comments

People with blindness can read again after retinal implant and special glasses

https://www.nbcnews.com/health/health-news/tiny-eye-implant-special-glasses-legally-blind-patient...
219•8bitsrule•4d ago•61 comments

Valetudo: Cloud replacement for vacuum robots enabling local-only operation

https://valetudo.cloud/
348•freetonik•5d ago•146 comments

First shape found that can't pass through itself

https://www.quantamagazine.org/first-shape-found-that-cant-pass-through-itself-20251024/
477•fleahunter•1d ago•133 comments

DNA reveals the real killers that brought down Napoleon's army

https://www.gavi.org/vaccineswork/dna-reveals-real-killers-brought-down-napoleons-army
42•janandonly•2h ago•42 comments

Key IOCs for Pegasus and Predator Spyware Removed with iOS 26 Update

https://iverify.io/blog/key-iocs-for-pegasus-and-predator-spyware-cleaned-with-ios-26-update
143•transpute•13h ago•87 comments

Context engineering is sleeping on the humble hyperlink

https://mbleigh.dev/posts/context-engineering-with-links/
136•mbleigh•2d ago•58 comments

Study: MRI contrast agent causes harmful metal buildup in some patients

https://www.ormanager.com/briefs/study-mri-contrast-agent-causes-harmful-metal-buildup-in-some-pa...
192•nikolay•19h ago•165 comments

Harnessing America's heat pump moment

https://www.heatpumped.org/p/harnessing-america-s-heat-pump-moment
189•ssuds•19h ago•404 comments

What is intelligence? (2024)

https://whatisintelligence.antikythera.org/
127•sva_•14h ago•81 comments

The State of Machine Learning Frameworks in 2019

https://thegradient.pub/state-of-ml-frameworks-2019-pytorch-dominates-research-tensorflow-dominat...
11•jxmorris12•3d ago•5 comments

I invited strangers to message me through a receipt printer

https://aschmelyun.com/blog/i-invited-strangers-to-message-me-through-a-receipt-printer/
253•chrisdemarco•6d ago•98 comments

Public Montessori programs strengthen learning outcomes at lower costs: study

https://phys.org/news/2025-10-national-montessori-early-outcomes-sharply.html
333•strict9•2d ago•199 comments

The persistence of tradition: the curious case of Henry Symeonis (2023)

https://blogs.bodleian.ox.ac.uk/archivesandmanuscripts/2023/12/13/the-persistence-of-tradition-th...
22•georgecmu•3d ago•0 comments

The geometry of mathematical methods

https://books.physics.oregonstate.edu/GMM/book.html
51•kalind•5d ago•3 comments

Code like a surgeon

https://www.geoffreylitt.com/2025/10/24/code-like-a-surgeon
203•simonw•1d ago•109 comments

Twake Drive – An open-source alternative to Google Drive

https://github.com/linagora/twake-drive
340•javatuts•1d ago•199 comments

Meet the real screen addicts: the elderly

https://www.economist.com/international/2025/10/23/meet-the-real-screen-addicts-the-elderly
217•johntfella•11h ago•220 comments

Diamond Thermal Conductivity: A New Era in Chip Cooling

https://spectrum.ieee.org/diamond-thermal-conductivity
44•rbanffy•4d ago•18 comments

Luau's performance

https://luau.org/performance
49•todsacerdoti•2d ago•10 comments

Euro cops take down cybercrime network with 49M fake accounts

https://www.itnews.com.au/news/euro-cops-take-down-cybercrime-network-with-49-million-fake-accoun...
116•ubutler•9h ago•60 comments

Why formalize mathematics – more than catching errors

https://rkirov.github.io/posts/why_lean/
204•birdculture•6d ago•69 comments

Fast TypeScript (Code Complexity) Analyzer

https://ftaproject.dev/
39•hannofcart•10h ago•16 comments

How to make a Smith chart

https://www.johndcook.com/blog/2025/10/23/smith-chart/
148•tzury•22h ago•26 comments
Open in hackernews

Normalize.css

https://csstools.github.io/normalize.css/
56•Leftium•4d ago

Comments

reconnecting•9h ago
Actually, there are two normalizes. The first was: https://github.com/necolas/normalize.css
Leftium•8h ago
I chose to share the one that seemed more recent/maintained.

Brief history/explanation from: https://github.com/csstools/normalize.css/#differences-from-...

> Nicolas Gallagher and I started writing normalize.css together. I named and created the normalize.css repository with the help of Paul Irish and Ben Alman. I transferred the repository to Nicolas, who turned it into a “household” CSS library.

> Later, I resumed authorship of normalize.css with Luciano Battagliero. Together, we tagged, deprecated, and removed “opinionated” styles — styles developers often prefer but which do not fix bugs or “normalize” browser differences.

> Later, Nicolas resumed authorship and the issue of whether to include or omit the opinionated styles forced us to split.

Leftium•8h ago
And now there is a third variation, sanitize.css, which is the one I decided to use: https://github.com/csstools/sanitize.css

Used here: https://github.com/Leftium/news/blob/0d507aecd05dfe94853d278...

fouronnes3•9h ago
Obviously we can't break backwards compatibility, but why doesn't css have opt-in "use version" strings that could tell the browser: I want this set of defaults. Something like "use-defaults: system-ui;" or "use-defaults: none".
JimDabell•2h ago
You can always do something like:

    * {
        all: unset;
    }
But then you’d have to reimplement everything from browser defaults, which can get a bit tedious.

I agree, it would be nice to get a bit of a cleaned up set of defaults though, and you could polyfill it this way.

aetherspawn•8h ago
At some point I stopped caring about backwards compatibility, but I can’t put my finger on it.

Perhaps connectivity became so good that now as long as it works on evergreen, it’s good to go. We used to put a lot of effort into this stuff, but it feels like it’s been years since we even thought about it.

anilgulecha•8h ago
It's when IE 11 was deprecated, and everyone moved to well supported CSS and HTML5 browsers - modern Webkit/blink/Gecko browsers.
fred_•8h ago
The npm install text overflows horizontally for me on iPhone 16
defanor•8h ago
It does that in Firefox at certain window sizes, too, supporting its claim to consistency across major web browsers.
misiek08•6h ago
iP 15 Pro, Safari, same xD
maxloh•8h ago
I found Bootstrap's reboot.css to be a better maintained version of this.

More details here: https://getbootstrap.com/docs/5.3/content/reboot/

Code: https://github.com/twbs/bootstrap/blob/v5.3.8/dist/css/boots...

johnnypangs•8h ago
Ive always found this explanation helpful for why these are useful:

https://www.joshwcomeau.com/css/custom-css-reset/

chrismorgan•8h ago
This link is for the less-well-known normalize.css, https://github.com/csstools/normalize.css. It was last touched five years ago.

The better-known normalize.css is https://github.com/necolas/normalize.css. It was last touched seven years ago.

There’s a reason neither has seen more recent activity: they were mostly about making old browsers behave themselves, and they’re done. The stylesheets did have a little more to them, but it wasn’t what people actually cared about… and in some cases they were better off without them. I know I disagree with quite a few of their opinionated styles.

Those old browsers are now long obsolete—half of them can’t even talk TLS 1.2, which basically excludes them from the modern web—so almost all of these stylesheets is obsolete, and you don’t need them.

For the few pieces that might still have value, you would now prefer to use @layer or :where() for this kind of stylesheet, to make them behave more like user agent styles and avoid specificity conflicts.

rhdunn•7h ago
To add to this, HTML 5/LS have a section on rendering HTML elements [1]. That section provides default CSS rules that a conforming web browser must use. Therefore, modern browsers effectively have built-in normalize.css rules, providing a consistent web page default.

There may be some rules you want to change in a set of baseline rules such as margin/padding, image sizing, and fonts. But those would be things you would add on top of normalize.css anyway.

[1] https://html.spec.whatwg.org/multipage/rendering.html#render...

extra88•2h ago
Your link makes it very clear that those CSS rules are not required, that they are suggestions. However, all major browsers do use them.
assimpleaspossi•7h ago
In the nearly 25 years of running a web dev company, we never used such resets because it always felt like browsers had their built in settings, then one would have a reset to shift everything around one way, then we'd have settings to throw things another way and that's how it felt--like we were slamming things back and forth far too much.

Instead, we'd just set elements to what we wanted them to be which is what we'd have to do in most cases anyway, making any reset unnecessary.

chrismorgan•6h ago
This isn’t a reset, it’s normalising different browsers. There’s a pretty big difference between the two.
assimpleaspossi•6h ago
My point remains the same. And I'm not sure there is a difference between a reset and a normalizer.
Defletter•6h ago
Presumably, a reset is resetting to a browser's defaults, whereas a normaliser is about establishing a cross-browser default. I haven't done much web-dev in recent years, but I vividly remember the same page looking different in different browsers, particularly prior to HTML5.
Octoth0rpe•3h ago
> a reset is resetting to a browser's defaults

No, a browser's defaults are, well, its defaults. One doesn't reset to them.

I think the line between a normalizer and reset stylesheet is _very_ fine, if there even is a line. A normalizer is probably _slightly_ more opinionated than a reset stylesheet. In the end, the difference isn't really important. If you need a reset stylesheet, normalizer will probably do just as well.

CaptainOfCoit•5h ago
They more or less had the same goals, different ways of achieving them.

- CSS reset - completely reset all browser styles to be blank essentially, across different browsers, so then you'll build your styling on common ground

- CSS normalize - same idea of resetting to a baseline, but keeping some of the default styling but still make it consistent across browsers, so not stripping away everything

kuekacang•7h ago
Now ui libraries does its own reset. The no-nonsense blogger just use a few styling, and yeah, the default now is good enough.
simjnd•6h ago
I moved away from using Tailwind CSS, but still use their "preflight.css" [1]. It doesn't really care about backwards compatibility (IE stuff), but does a great job at unstyling everything so you have a clean cross-browser base to work with (button will look like text until you add your styling).

[1]: https://github.com/tailwindlabs/tailwindcss/blob/main/packag...

BrandoElFollito•5h ago
Could you write a few words why you moved away from TailwindCSS?

I am an amateur dev (I write open-source useful for me and possibly others) and I am prone to the "front-end diarrhea syndrome", where when I see something cooler, I jump on it and regret afterwards the time spent.

I am on TailwindCSS right now and I am afraid to learn the drawbacks, but one must be courageous in life.

alt187•4h ago
https://colton.dev/blog/tailwind-is-the-worst-of-all-worlds/

This is a pretty good post.

In general, I don't think `class` is a good place for styling.

pacha3000•4h ago
This is actually an awesome post, thank you for sharing
BrandoElFollito•3h ago
Thank you, this is a nice post. On the other hand, the author is happy to have HTML and CSS generated with JS, which is weird as well (I know - React).
chrisweekly•43m ago
It has some good points (and vanilla-extract IS awesome), but it's also a bit unfair, eg ignoring tailwind affordances like `apply`.

That said, for learning the "right" way to think about and use CSS, https://every-layout.dev is hands-down the best resource I've encountered in my 20+ years working with websites.

JimDabell•2h ago
I took a look thinking that this might actually be useful and somehow came away with an even lower opinion of Tailwind. It’s all like this:

    /*
      1. Add the correct height in Firefox.
      2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
      3. Reset the default border style to a 1px solid border.
    */
    
    hr {
      height: 0; /* 1 */
      color: inherit; /* 2 */
      border-top-width: 1px; /* 3 */
    }
Why can’t they do anything reasonably? It would be easy to put code comments against the actual code it is commenting, but instead they do this weird comment index up front.
zinekeller•1h ago
Because this is how Normalize.css was written (and I suspect this is Normalize.css-derived).
brazukadev•34m ago
that is how open source code used to be written before AI and it was appreciated, actually.
croemer•6h ago
Looks unmaintained, last release 2 years ago. The website points at v11 when the most recent release is v12. Has nothing changed in browsers to necessitate code changes?
ugur2nd•3h ago
Why is Normalize.css back in the spotlight after all this time?

My take on Normalize.css is how something so simple can have such a huge impact. It's astonishing.

jgalt212•3h ago
CSS is a monster, and it just keeps growing. If one wants to do something truly visually crazy / innovative / impressive, just use canvas. Didn't Google Docs abandon CSS and go straight with canvas? The feature creep in CSS is distasteful. The counter argument is if we keep adding features that will keep the LLMs at bay as they are not good at extrapolation and / or stuff they have not seen before. rant over.
robin_reala•47m ago
Seems way too much work to completely recreate an accessibility tree as well as the rendering framework.
microflash•3h ago
At this point, writing a reset is kind of rite of passage for a web developer.

Here’s mine[1] which I wrote while working on multilingual projects involving both Latin and non-Latin languages.

[1] https://github.com/Microflash/preset/blob/main/src/preset.cs...

inflames123•49m ago
sad
robin_reala•46m ago
Personally I prefer Sindre Sorhus’s modern-normalise, which is gradually deleting itself as browser compatibility issues are resolved: https://github.com/sindresorhus/modern-normalize
jszymborski•43m ago
Kind of a bummer it only targets the latest version of browsers. I get trying to remove cruft by not trying to support older versions, but if you only support the latest you're targetting a smaller % of browsers.
sholladay•45m ago
I always preferred to use sanitize.css, which is the same thing except it also makes sure everything looks pretty good.

https://csstools.github.io/sanitize.css/