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

I always thought the key to getting clear ice was to boil the water first so the oxygen goes out of solution.


This site has whole sections on "things that don't work" and "things that work, but not that well" based on experiments. Here's boiling water first:

https://www.alcademics.com/2017/10/boiled-versus-rested-wate...

(Works somewhat, but not well enough)


You might mean air, not oxygen. Air is mostly nitrogen. Water ice is 1/3rd oxygen atoms (or about 8/9ths by mass).

Thinking more, molecular oxygen, O2, dissolved in water is a thing and it does have better solubility than nitrogen so maybe you did mean molecular oxygen.

And yeah, we tried that, putting water in a vacuum chamber and pumping out the dissolved air. It didn't seem to make much difference.


Doesn't really work – the real trick is to make sure your ice is crystallizing directionally. The impurities are the last to crystallize, so this pushes them out.

Then you take your ice out of the container when it's 90% done, and your ice chunk is clear.


That isn’t the issue. The problem is an ice shell initially forms, then the water inside the shell needs to expand as it freezes but it has no where to expand. This creates internal stress and micro fractures and the resulting ice crackles due to internal stress. Clear ice requires a directional freeze.


Hm. This internal stress issue you describe might be a thing, but I'm pretty sure bubbles exsolving during freezing is also a thing. Most of the times I tried and failed to make clear ice there were obvious bubble exsolution trails.


I’ve been making clear ice for a decade. Even gone as far as an aquarium bubbler and nichrome wire setups. What you think are obvious bubbles are not actually bubbles.

Just put a double walled insulated cup in the freezer. The internal stress explanation accounts for 98% of the result when you think through how the crystal growth happened.


Sounds like we need an experiment. The best one I can think of is to freeze ice in presence of a tracer gas and then check if that gas is released upon melting. I'm not sure I could pull that off. Got any better ideas?


Just compare frozen boiled water and aerated tap water. Both will be cloudy when made in a tray and both will be clear when made in an insulated cup. It does make a minor difference, but it is unimportant.

Also notice the radial pattern that the internal fractures take. This is inconsistent with bubbles and perfectly consistent with internal stress due to expansion pressure.


I think the effect of boiling is negligible because air dissolves back into the water as the water cools. I don't understand your radial pattern argument. When I look closely at the lineations in the ice I see that the streaks are composed of individual spheroid voids. Not sure how fracture could do that.


You can pour water straight from the kettle into the trays and cover it.

https://www.dreamstime.com/stock-photo-ice-cubes-image179488...

In that photo I see a few gas bubbles, but it is dominated by radial expansion fractures and cloudy high pressure ice in the center. That ice will crack when put in water. Clear ice does not crack.


Interestingly freezing hot or boiled water can be quicker due to the Mpemba effect.

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


Faster freezing is bad when you're trying to make clear ice. It's also bad to put hot water in your freezer - you're bringing the temperature of everything else up and then it has to refreeze. That'll damage the quality of whatever food is in the freezer.


Have you tried using page queries? Page queries can accept arguments passed in via the createPage API. Here's some (admittedly hard to find) documentation about it: https://www.gatsbyjs.com/docs/page-query/#how-to-add-query-v...

The basic idea is your page context just contains identifiers for the content you need to display on the page and then the page query uses those identifiers to query for just those objects and request all the properties of those objects that the page needs.


That only helps when it’s coupled to the page. Doesn’t make a ton of sense in our use case as it’s just an arbitrary component. It would have to support queries based on component props, but that’s even more complexity in an existing nightmare.


Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

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

Search: