187 karma · joined November 7, 2020
Disclosure: I work at SambaNova and was part of the team that made this
“The photocurrent or the short-circuit current density (JSC) extracted from BTO is around 0.415 μA/cm2. … The JSC value from SBC555 is around 11.03 μA/cm2 and is about 25 times higher than measured in BTO. The open-circuit voltage (VOC) in the case of BTO was found to be around −0.007 V, as opposed to −0.058 V in SBC555.”
Here, BTO is the existing material and SBC555 is the new material from the paper. Multiplying JSC by VOC to get power density , we see that BTO yields 2.9 nW/cm^2, while SBC555 yields 639.74 nW/cm^2.
For reference, according to [2], we have that “typical external parameters of a crystalline silicon solar cell as shown are; Jsc ≈ 35 mA/cm2, Voc up to 0.65 V.” Notice the unit difference of mA/cm^2 here vs uA/cm^2 above. Multiplying these parameters yields 22,750,000 nW/cm^2. So we see that these cells are still approximately 100,000x worse at producing power than the current crystalline silicon cells.
[1] https://advances.sciencemag.org/content/7/23/eabe4206
[2] https://ocw.tudelft.nl/wp-content/uploads/solar_energy_secti...
Thank you for putting this so eloquently. This has basically been the sole tenet of my programming philosophy for several years, but I’ve never been able to put it into words before.
For instance, assuming C definitions, an integer and a file descriptor have the same content but probably should not be treated as the same type (I wouldn’t want arithmetic to type check against file descriptors…).
Another scenario: say I have a type “Foo” which contains an integer. In version 1 of my library, this integer must be even, but in version 2 I add support for odd integers, too. The Foo data type, from a content perspective, is unchanged. However, the invariants around it have changed and it’s therefore essential that it becomes a new type. Otherwise, someone might create a Foo containing an odd integer using the version 2 API and then pass it to a function from the version 1 API, resulting in bad things since the version 1 API believes Foo can never contain an odd integer.
[1] https://en.m.wikipedia.org/wiki/Uniform_continuity [2] https://en.m.wikipedia.org/wiki/Absolute_continuity
Even worse, you can add the line “set -e” inside the function explicitly re-enabling it and it still won’t change the outcome because errexit wasn’t technically unset!
This goes along with the article's discussion of how doctors, in general, choose to receive far less care than the typical patient when faced with terminal illness. This choice grants an opportunity to live authentically, in Sartre's parlance, for their last months as opposed to going out via the indignity of excessive treatment (e.g., life support machines).
[1] https://www.theatlantic.com/international/archive/2014/09/pa...
#!/bin/bash
set -e
(
echo "Start of Subshell"
(exit 1)
echo "This shouldn’t run, right?"
) || echo "Subshell failed"The increased eagle population, in turn, caused the island’s common murres to be displaced from their nests (fleeing eagles) an average of 602 minutes per day—vs. the average of 72 minutes in 2019. Consequently, 26% fewer common murres hatched this year compared with the decade average.
It’s fascinating to see the unintended impacts humans can have in an environment even when thinking of ourselves just as observers.