I have like 20 brands of foam earplugs in my drawer, 5 different pairs of custom silicone airplugs, unusual earplugs from Kickstarter like [1], and so on. What I'm saying is I know my way around the earplug block. Here's what I'd write for your categories:
Foam: The most effective, by far. I suspect many people wear them incorrectly and do not insert them far enough. You can use lube (they make special ear lube for stuff like hearing aids, although I think anything medical grade will do) if you have difficulty doing so. I have unusually small ear canals; the most comfortable and best I've found by a mile are Mack's Ultra Soft Foam Earplugs. These are much more comfortable than slim fit alternatives and also have very high attenuation.
Silicone: expensive (but they're reusable and last years), but the least fussy once you get them. They are moulded to your goddamn ear---it's a perfect, pressure-free fit every time and they go right in. Drawbacks include lesser attenuation and attenuation that isn't immediately at 100%---it takes a while for it to "seal". I abadoned these once moisture started to accumulate between my ear canal and the plug and I'd hear it as I moved and it became very annoying.
Wax: joke attenuations compared to foam, and bad compared to silicone. The most expensive long-term unless you're serious about reuse. Somewhat fussy and may fall out. Very comfortable (little insertion).
Foam + wax: this is what you really want if you care about maximum attenuation. My ear canals are slightly too short to comfortably insert an entire Mack's earplug, so I snip the ends off mine, lube them up, and insert them completely flush into my ear canal. Then, I take a wax plug and mould it on top. It's perfectly comfortable and it performs better than any other option I'm aware of. I tend to also wear a Bluetooth sleep mask and play rain sounds on 100% volume and it just comes through the double earplug situation to mask any very loud/spurious noise. To remove the flush-inserted earplugs, I use a pair of blunt tweezers.
When I used slim fit foam earplugs I'd routinely get ear infections. Switching to silicone fixed that, but suffered from the aforementioned issues. With the ultra soft earplugs + wax method I never get ear infections. I make sure to always insert a fresh pair (but I reuse the wax ones for a few days) and to always do so with clean hands. I think the infections are due to friction between the plug and the canal during insertion as well as plugs that are too large/exert too much pressure once expanded---the lube and very soft plug addresses those issues.
Oh well lube would make a huge difference, it's true. Some places require me to wear foam ones for health and safety reasons, and I always put water on them, for softness and a good seal. By calling the silicone ones fussy I just meant that they need washing, really (I am lazy). I buy big boxes of wax ones, they cost approximately nothing and come with a little storage container, and then I throw the current pair away after a week or two, mainly because they start to look gross (I suspect bacteria don't actually find paraffin wax hospitable).
How so?
I use the 3M yellow ones for many years and I find the pretty good. I buy like a box of 200 pairs and use them for a couple of times, so they are also pretty cheap.
Foam are indeed the best, but there's a lot of variation in sound blocking quality and ear comfort. Experimentation is needed to find what works for you.
White noise also helps without the need for ear plugs. Depends how loud the disturbances are.
They aren't that rare. And AI is expanding the niche because making parallel linear algebra go zoom zoom is compiler work. There's also a lot of quantum compiler work.
Ya, I almost got a quantum compiler job at Alibaba (they decided to go in a different direction), and a job with Microsoft working complied ML support for Julia also fell through (I passed the interview, but they couldn’t get the head count) before ultimately joining Google working on developer experiences.
Then there are the people building compilers accidentally, like in the <xyz>-as-code space. Infrastructure automation deal with grammars, symbol tables, (hopefully) module systems, IRs, and so forth. Only the output is very different.
And of course the toolchain space is larger than just compilers. Someone needs to maintain the assemblers, linkers, debuggers, core runtime libraries. If you are building a Linux distribution, someone has to figure out how the low-level pieces fit together. It's not strictly a compiler engineering role, but it's quite close. Pure compiler engineering roles (such as maintaining a specific register allocator) might be quite rare.
It's a small field, but probably not that obscure. Despite the efficiency gains from open-source compilers, I don't think it's shrinking.
I recently finished my PhD at the University of Copenhagen, where I worked on the functional array programming language Futhark (https://futhark-lang.org/). My research focused on Futhark’s type system---including sum types and rank polymorphism---and on adding support for parallel automatic differentiation. Right now, I’m a postdoc at VU Amsterdam, working on hardware verification. Specifically, proving leakage properties of functional hardware descriptions (functional in the Haskell sense) in a composable way.
I'm open to both academic and industry positions. I'm broadly interested in all things type systems/functional programming/compilers/language design. I can work in both the US and the EU without a visa.
I think the the essay is largely about exploring ideas deeply. And in much the same way a chef might stress that you must add the eggs one-by-one or whatever other culinary unfounded superstition they employ, your farm moron will stress always plowing east-to-west or something---both processes may yield a perfectly fine product, but neither has actually understood what's actually going on. They may be expert practitioners, but they are no experts.
The same holds for Accelerate, and I'm fairly sure also SaC and APL. DaCe even gets a special mention in the paper in section 10.5 stating that they specifically _do_ use BLAS bindings.
Futhark, SaC, and Accelerate have purely functional semantics. Futhark has something called "in-place updates" that operationally mutate the given array, but semantically they work as if a new array is created (and are statically guaranteed to work this way by the type system).
Foam: The most effective, by far. I suspect many people wear them incorrectly and do not insert them far enough. You can use lube (they make special ear lube for stuff like hearing aids, although I think anything medical grade will do) if you have difficulty doing so. I have unusually small ear canals; the most comfortable and best I've found by a mile are Mack's Ultra Soft Foam Earplugs. These are much more comfortable than slim fit alternatives and also have very high attenuation.
Silicone: expensive (but they're reusable and last years), but the least fussy once you get them. They are moulded to your goddamn ear---it's a perfect, pressure-free fit every time and they go right in. Drawbacks include lesser attenuation and attenuation that isn't immediately at 100%---it takes a while for it to "seal". I abadoned these once moisture started to accumulate between my ear canal and the plug and I'd hear it as I moved and it became very annoying.
Wax: joke attenuations compared to foam, and bad compared to silicone. The most expensive long-term unless you're serious about reuse. Somewhat fussy and may fall out. Very comfortable (little insertion).
Foam + wax: this is what you really want if you care about maximum attenuation. My ear canals are slightly too short to comfortably insert an entire Mack's earplug, so I snip the ends off mine, lube them up, and insert them completely flush into my ear canal. Then, I take a wax plug and mould it on top. It's perfectly comfortable and it performs better than any other option I'm aware of. I tend to also wear a Bluetooth sleep mask and play rain sounds on 100% volume and it just comes through the double earplug situation to mask any very loud/spurious noise. To remove the flush-inserted earplugs, I use a pair of blunt tweezers.
When I used slim fit foam earplugs I'd routinely get ear infections. Switching to silicone fixed that, but suffered from the aforementioned issues. With the ultra soft earplugs + wax method I never get ear infections. I make sure to always insert a fresh pair (but I reuse the wax ones for a few days) and to always do so with clean hands. I think the infections are due to friction between the plug and the canal during insertion as well as plugs that are too large/exert too much pressure once expanded---the lube and very soft plug addresses those issues.
[1] https://paxauris.com/
reply